:root{--fs-7:10px;--fs-8:11px;--fs-9:12px;--fs-10:12px;--fs-11:13px;--fs-12:14px;--fs-12-5:14.5px;--fs-13:15px;--fs-14:16px;--fs-15:17px;--fs-16:18px;--fs-17:19px;--fs-18:20px;--fs-20:21px;--fs-21:22px;--fs-22:23px;--fs-23:24px}html[data-font=large]{--fs-7:11px;--fs-8:12px;--fs-9:13px;--fs-10:13px;--fs-11:14px;--fs-12:15px;--fs-12-5:15.5px;--fs-13:16px;--fs-14:17px;--fs-15:18px;--fs-16:19px;--fs-17:20px;--fs-18:21px;--fs-20:22px;--fs-21:23px;--fs-22:24px;--fs-23:25px}:root{color-scheme:light;--bg:#fff;--sidebar:#f8f8f8;--subtle:#f5f5f5;--hover:#f0f0f0;--selected:#e8e8e8;--ink:#3b3b3b;--secondary:#5a5a5a;--muted:#616161;--line:#e5e5e5;--strong-line:#cecece;--accent:#005fb8;--accent-hover:#0258a8;--accent-soft:#e5f1fb;--green:#2e7d4f;--amber:#b58300;--red:#c72e2e;--shadow:0 20px 80px #20202e24;--side-w:226px;--frozen:606px;--task-cols:302px 86px 76px 60px 82px;--day-w:25px;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Noto Sans CJK KR,Apple SD Gothic Neo,Malgun Gothic,sans-serif;color:var(--ink);font-size:var(--fs-12);font-synthesis:none}:root[data-theme=light]{color-scheme:light}:root[data-theme=dark]{--bg:#1f1f1f;--sidebar:#181818;--subtle:#232323;--hover:#2a2d2e;--selected:#37373d;--ink:#cccccc;--secondary:#a8a8a8;--muted:#9d9d9d;--line:#2b2b2b;--strong-line:#3c3c3c;--accent:#0078d4;--accent-hover:#026ec1;--accent-soft:#1f3a52;--green:#89d185;--amber:#cca700;--red:#f14c4c;--shadow:0 20px 80px #0006;color-scheme:dark}*{box-sizing:border-box}body{margin:0;background:var(--bg);-webkit-font-smoothing:antialiased}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.45}button{background:none;border:0}input,select,textarea{background:var(--bg)}a{color:var(--accent)}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--accent);outline-offset:3px}h1,h2,h3,p{margin:0}h1{font-size:var(--fs-21);font-weight:650;letter-spacing:-.7px}h2{font-size:var(--fs-16);font-weight:650;letter-spacing:-.4px}h3{font-size:var(--fs-13);font-weight:600}.ico{width:16px;height:16px;stroke:currentColor;fill:none;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}.muted{color:var(--muted)}.secondary{color:var(--secondary)}.small{font-size:var(--fs-11)}.tiny{font-size:var(--fs-10)}.mono{font-variant-numeric:tabular-nums;letter-spacing:-.15px}.ellipsis{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.row{display:flex;align-items:center;gap:8px}.spread{justify-content:space-between}.grow{flex:1;min-width:0}.dot{width:7px;height:7px;border-radius:50%;background:currentColor;display:inline-block;flex-shrink:0}.separator{height:16px;width:1px;background:var(--line);margin:0 4px}kbd{font:var(--fs-10) ui-monospace,monospace;padding:2px 4px;border:1px solid var(--strong-line);border-radius:4px;color:var(--muted);line-height:1.2}.btn{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:31px;padding:6px 10px;border:1px solid var(--strong-line);border-radius:6px;background:var(--bg);font-size:var(--fs-11);white-space:nowrap;line-height:1.5;font-weight:500}.btn:hover{background:var(--hover)}.btn.primary{background:var(--accent);border-color:var(--accent);color:#fff}.btn.primary:hover{background:var(--accent-hover)}.btn.ghost{background:transparent;border-color:transparent;color:var(--secondary)}.btn.ghost:hover{background:var(--hover)}.btn.danger{color:var(--red)}.btn .ico{width:14px;height:14px}.ib{display:inline-flex;justify-content:center;align-items:center;width:28px;height:28px;padding:4px;color:var(--secondary);border-radius:5px}.ib:hover{background:var(--hover);color:var(--ink)}.pill{display:inline-flex;align-items:center;gap:5px;padding:2px 6px;border:1px solid var(--line);border-radius:4px;font-size:var(--fs-10);color:var(--secondary);white-space:nowrap}.pill.example{background:var(--subtle);font-size:var(--fs-9);padding:1px 4px;color:var(--muted)}.avatar{--person:#7c739c;width:22px;height:22px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;color:var(--person);background:color-mix(in srgb,var(--person) 13%,var(--bg));font-size:var(--fs-9);font-weight:600;flex-shrink:0;border:1px solid color-mix(in srgb,var(--person) 18%,var(--bg))}.avatar.large{width:29px;height:29px;font-size:var(--fs-10)}.avatar-stack{display:flex;padding-right:6px}.avatar-stack .avatar{margin-right:-6px;border:2px solid var(--bg);width:25px;height:25px}.status{display:inline-flex;align-items:center;gap:6px;font-size:var(--fs-11);white-space:nowrap;color:var(--secondary)}.statusmark{width:13px;height:13px;border:1.8px solid var(--state);border-radius:50%;display:inline-flex;justify-content:center;align-items:center;flex-shrink:0;color:var(--state)}.statusmark.doing{background:conic-gradient(var(--state) 0 180deg,transparent 180deg)}.statusmark.verify{background:conic-gradient(var(--state) 0 280deg,transparent 280deg)}.statusmark.done{background:var(--state);border-color:var(--state);color:var(--bg)}.statusmark.done .ico{width:9px;height:9px;stroke-width:2.5}.statusmark.blocked{border-style:dashed}.empty{padding:52px 22px;text-align:center;color:var(--muted);display:flex;flex-direction:column;align-items:center;gap:10px}.empty>.ico{width:26px;height:26px;color:var(--muted);margin-bottom:4px}.empty strong{font-size:var(--fs-14);color:var(--secondary);font-weight:550}.empty .btn{margin-top:5px}.scroll{overflow:auto;scrollbar-width:thin;scrollbar-color:var(--strong-line) transparent}.sidebar{position:fixed;inset:0 auto 0 0;width:var(--side-w);background:var(--sidebar);border-right:1px solid var(--line);display:flex;flex-direction:column;padding:13px 11px 8px;z-index:40}.workspace-name{padding:1px 6px 16px;display:flex;align-items:center;gap:9px}.brandmark{height:28px;width:28px;border-radius:8px;color:#fff;background:#005fb8;display:grid;place-items:center;font-size:var(--fs-16);font-weight:600}.brandmark .ico{width:18px;height:18px}.brandtitle{font-size:var(--fs-14);letter-spacing:-.3px;font-weight:700}.brand-sub{font-size:var(--fs-10);color:var(--muted);margin-top:2px}.quickbar{display:flex;gap:6px;margin-bottom:17px}.quick-search{flex:1;border:1px solid var(--strong-line);border-radius:6px;background:var(--bg);padding:6px 8px;display:flex;align-items:center;gap:7px;font-size:var(--fs-11);color:var(--muted)}.quickbar .btn{padding:5px 7px;min-height:31px}.navlink{width:100%;display:flex;align-items:center;gap:9px;text-align:left;border-radius:5px;padding:6px 9px;margin:1px 0;font-size:var(--fs-12);color:var(--secondary)}.navlink>.ico{color:var(--muted);width:15px;height:15px}.navlink:hover{background:var(--hover);color:var(--ink)}.navlink.active{background:var(--selected);color:var(--ink);font-weight:550}.navlink.active>.ico{color:var(--accent)}.navlink .count{margin-left:auto;color:var(--muted);font-size:var(--fs-10)}.navsection{display:flex;align-items:center;justify-content:space-between;color:var(--muted);font-size:var(--fs-10);font-weight:550;padding:16px 9px 6px}.navsection .ib{width:18px;height:18px}.fav{font-size:var(--fs-11);gap:10px;padding:6px 10px}.fav .dot{width:6px;height:6px}.sidebar-projects{max-height:240px;overflow:auto;scrollbar-width:thin}.sidebar-bottom{margin-top:auto;padding-top:19px}.local-indicator{margin:3px 8px 9px;padding:8px 0;border-top:1px solid var(--line);color:var(--muted);font-size:var(--fs-10);line-height:1.8}.local-indicator .row{gap:6px;color:var(--secondary);margin-bottom:2px}.local-indicator .ico{width:12px;height:12px}.profile-switch{display:flex;align-items:center;gap:8px;width:100%;padding:7px;border-top:1px solid var(--line);text-align:left}.profile-switch:hover{background:var(--hover)}.profile-switch .ico{margin-left:auto;width:13px;height:13px;color:var(--muted)}.profile-switch .small{font-weight:550}.profile-switch .tiny{color:var(--muted);margin-top:2px}.shell{margin-left:var(--side-w);min-height:100vh;display:flex;flex-direction:column;min-width:0}.topbar{height:45px;border-bottom:1px solid var(--line);padding:0 28px;display:flex;align-items:center;justify-content:space-between;gap:15px;flex-shrink:0}.crumb{display:flex;align-items:center;gap:10px;color:var(--muted);font-size:var(--fs-11);min-width:0}.crumb strong{color:var(--ink);font-weight:550;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.crumb>.ico{width:14px;height:14px;color:var(--secondary)}.top-actions{display:flex;align-items:center;gap:10px;flex-shrink:0}.top-actions .version{color:var(--muted);font-size:var(--fs-10)}.mobile-menu{display:none}.main{flex:1;min-width:0}.page-head{padding:20px 28px 14px;display:flex;align-items:center;justify-content:space-between;gap:20px}.page-description{color:var(--muted);font-size:var(--fs-11);margin-top:7px;line-height:1.7}.head-right{display:flex;align-items:center;gap:12px}.tabs{display:flex;align-items:center;gap:22px;padding:0 28px;border-bottom:1px solid var(--line);min-height:33px}.tab{position:relative;height:33px;padding:0;color:var(--muted);display:inline-flex;align-items:center;gap:6px;font-size:var(--fs-11)}.tab:hover{color:var(--ink)}.tab.active{color:var(--ink);font-weight:550}.tab.active:after{content:"";position:absolute;bottom:-1px;left:0;right:0;height:2px;background:var(--ink)}.tab .count{background:var(--hover);padding:1px 4px;border-radius:4px;font-size:var(--fs-9);color:var(--muted);min-width:17px;text-align:center}.toolbar{min-height:44px;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:7px 28px;border-bottom:1px solid var(--line);flex-wrap:wrap}.filter-controls,.view-controls{display:flex;align-items:center;gap:7px;flex-wrap:wrap}.select-wrap{display:inline-flex;align-items:center;gap:5px;border:1px solid var(--line);border-radius:5px;padding-left:7px;color:var(--secondary);height:28px;background:var(--bg)}.select-wrap>.ico{width:12px;height:12px;color:var(--muted)}.select-wrap select{border:none;max-width:160px;font-size:var(--fs-10);color:var(--secondary);height:25px;cursor:pointer;padding:0 5px 0 0;outline-offset:1px}.segment{display:flex;padding:2px;border:1px solid var(--line);border-radius:6px;background:var(--subtle);gap:2px}.segment button{display:flex;align-items:center;justify-content:center;gap:5px;padding:4px 7px;border-radius:4px;font-size:var(--fs-10);color:var(--muted);min-height:23px}.segment button .ico{width:12px;height:12px}.segment button.active{background:var(--bg);color:var(--ink);box-shadow:0 0 0 1px var(--line),0 1px 2px #00000008}.range{font-size:var(--fs-11);font-weight:500;white-space:nowrap}.search-inline{height:28px;display:flex;align-items:center;gap:7px;border:1px solid var(--line);border-radius:5px;padding:0 8px}.search-inline .ico{width:12px;height:12px;color:var(--muted)}.search-inline input{border:0;font-size:var(--fs-10);width:127px;outline:none;padding:0}.footer-note{padding:9px 28px;color:var(--muted);font-size:var(--fs-10);display:flex;align-items:center;justify-content:space-between;gap:12px;line-height:1.7}.footer-note .row{gap:6px}.footer-note .ico{width:12px;height:12px}.storage-alert{padding:9px 28px;background:var(--accent-soft);color:var(--accent);font-size:var(--fs-11)}.mobile-nav{display:none}.work-scroll{max-height:calc(100vh - 238px);min-height:280px;border-bottom:1px solid var(--line)}.work-grid{width:100%}.work-grid.timeline{min-width:calc(var(--frozen) + var(--day-count)*var(--day-w));width:calc(var(--frozen) + var(--day-count)*var(--day-w))}.task-row,.work-header{display:grid;grid-template-columns:var(--task-cols);min-width:var(--frozen);height:42px}.timeline .task-row,.timeline .work-header{grid-template-columns:var(--task-cols) calc(var(--day-w)*var(--day-count))}.work-grid:not(.timeline) .task-row,.work-grid:not(.timeline) .work-header{grid-template-columns:minmax(340px,1fr) 150px 110px 95px 140px;min-width:840px}.cell{display:flex;align-items:center;padding:0 12px;border-bottom:1px solid var(--line);background:var(--bg);min-width:0;font-size:var(--fs-11)}.timeline .cell{position:sticky;z-index:3}.timeline .c1{left:0;padding-left:27px}.timeline .c2{left:302px}.timeline .c3{left:388px}.timeline .c4{left:464px}.timeline .c5{left:524px;border-right:1px solid var(--strong-line);box-shadow:3px 0 5px -5px #20202f50}.c1{gap:8px;padding-left:28px}.c2{gap:6px;color:var(--secondary);font-size:var(--fs-10)}.c2 .avatar{width:19px;height:19px;font-size:var(--fs-8)}.c3{padding:0 7px}.c4{font-size:var(--fs-10);color:var(--secondary);justify-content:center}.c5{font-size:var(--fs-10);color:var(--secondary);white-space:nowrap;padding-left:8px}.task-btn{width:100%;height:100%;display:flex;align-items:center;gap:9px;padding:0;text-align:left;min-width:0}.task-btn:hover .task-title{color:var(--accent)}.task-code{font-size:var(--fs-9);color:var(--muted);font-variant-numeric:tabular-nums;flex-shrink:0;width:46px;letter-spacing:-.2px}.task-title{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;line-height:1.5;min-width:0}.task-row:hover .cell{background:var(--subtle)}.task-row.is-done .task-title{color:var(--secondary)}.task-row .late{color:var(--red)}.percent{display:inline-flex;gap:5px;align-items:center}.progress-track{height:3px;width:32px;border-radius:2px;background:var(--hover);overflow:hidden}.progress-track>i{display:block;height:100%;background:var(--accent);border-radius:2px}.work-header{height:51px;position:sticky;top:0;z-index:15}.work-header .cell{background:var(--subtle);font-size:var(--fs-10);color:var(--muted);font-weight:400;border-bottom:1px solid var(--strong-line)}.work-header .c1{font-size:var(--fs-10)}.work-header .c2,.work-header .c3{justify-content:center}.project-group{height:34px;display:grid;grid-template-columns:var(--frozen) 1fr;min-width:840px}.timeline .project-group{min-width:0;grid-template-columns:var(--frozen) calc(var(--day-w)*var(--day-count))}.group-title{display:flex;align-items:center;gap:8px;padding:0 16px 0 25px;background:var(--subtle);border-bottom:1px solid var(--line);font-size:var(--fs-11);position:sticky;left:0;z-index:4;border-right:1px solid var(--line)}.group-title>.ib{width:16px;height:21px;margin-left:-3px}.group-title>.ib .ico{width:12px;height:12px}.group-title>.name{font-weight:550;text-align:left;padding:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.group-title .counter{color:var(--muted);font-size:var(--fs-10);margin-left:4px}.group-title .add{margin-left:auto;width:22px;height:22px}.group-rest{background:var(--subtle);border-bottom:1px solid var(--line)}.timeline-head{height:51px;background:var(--subtle);border-bottom:1px solid var(--strong-line);position:relative;overflow:hidden}.months{height:23px;display:flex;border-bottom:1px solid var(--line);font-size:var(--fs-9);color:var(--secondary)}.month{padding:5px 8px;border-right:1px solid var(--line);white-space:nowrap;overflow:hidden}.days{display:flex;height:28px}.day{width:var(--day-w);height:28px;display:flex;align-items:center;justify-content:center;font-size:var(--fs-9);color:var(--muted);flex-shrink:0}.day.current span{display:inline-flex;background:var(--accent);color:#fff;width:19px;height:19px;align-items:center;justify-content:center;border-radius:5px}.day.weekend{background:var(--hover)}.timecell{position:relative;border-bottom:1px solid var(--line);background:repeating-linear-gradient(to right,transparent 0,transparent calc(var(--day-w) - 1px),var(--line) calc(var(--day-w) - 1px),var(--line) var(--day-w));overflow:hidden}.timecell .weekend-shade{position:absolute;top:0;bottom:0;background:color-mix(in srgb,var(--hover) 70%,transparent);width:calc(var(--day-w)*2);z-index:0}.today-line{position:absolute;left:var(--today-x);top:0;bottom:0;border-left:1px dashed var(--accent);opacity:.7;z-index:2;pointer-events:none}.ganttbar{--project:#7d78a8;position:absolute;top:11px;height:19px;min-width:4px;border:1px solid color-mix(in srgb,var(--project) 40%,var(--bg));border-radius:4px;color:var(--project);background:color-mix(in srgb,var(--project) 12%,var(--bg));padding:0 6px;z-index:1;text-align:left;font-size:var(--fs-9);overflow:hidden;white-space:nowrap}.ganttbar:hover{filter:brightness(.94);box-shadow:0 0 0 2px color-mix(in srgb,var(--project) 10%,transparent)}.ganttbar>i{position:absolute;inset:0 auto 0 0;background:color-mix(in srgb,var(--project) 16%,transparent);pointer-events:none}.ganttbar>span{position:relative}.out-range{position:absolute;top:14px;left:10px;font-size:var(--fs-9);color:var(--muted);display:flex;gap:4px;align-items:center}.out-range .ico{width:10px;height:10px}.projects-table{padding:0 28px;overflow:auto}.p-head,.p-row{display:grid;grid-template-columns:minmax(310px,1.8fr) 115px 150px 145px 110px 30px;align-items:center;gap:16px;min-width:970px}.p-head{height:32px;color:var(--muted);font-size:var(--fs-10);border-bottom:1px solid var(--line)}.p-row{min-height:74px;border-bottom:1px solid var(--line)}.p-row:hover{background:var(--subtle)}.p-title{display:flex;align-items:center;gap:13px;text-align:left;padding:8px 0;min-width:0}.project-icon{--project:#8170b2;display:flex;align-items:center;justify-content:center;width:32px;height:32px;flex-shrink:0;border-radius:8px;color:var(--project);background:color-mix(in srgb,var(--project) 10%,var(--bg));border:1px solid color-mix(in srgb,var(--project) 15%,var(--bg))}.p-name{font-size:var(--fs-12);font-weight:550;margin-bottom:5px}.p-desc{font-size:var(--fs-10);color:var(--muted);max-width:100%;line-height:1.7;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}.project-stat{display:flex;flex-direction:column;gap:8px}.project-stat .progress-track{width:100px}.project-empty-tip{margin:23px 28px;border:1px dashed var(--strong-line);padding:18px;border-radius:7px;display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:var(--fs-11);color:var(--muted)}.report-policy{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:9px 28px;background:var(--subtle);border-bottom:1px solid var(--line);font-size:var(--fs-11);color:var(--secondary)}.report-policy .ico{color:var(--green);width:14px;height:14px}.report-policy strong{font-weight:500;color:var(--ink)}.coverage{padding:13px 28px;display:flex;align-items:center;gap:9px;flex-wrap:wrap;border-bottom:1px solid var(--line)}.coverage-caption{font-size:var(--fs-10);color:var(--muted);margin-right:6px}.member-chip{display:flex;align-items:center;gap:6px;padding:5px 7px;border:1px solid var(--line);border-radius:6px;font-size:var(--fs-10);color:var(--secondary);background:var(--bg)}.member-chip:hover,.member-chip.active{background:var(--accent-soft);border-color:color-mix(in srgb,var(--accent) 20%,var(--line))}.member-chip .chip-status{color:var(--muted);font-size:var(--fs-9);margin-left:3px}.member-chip .chip-status.saved{color:var(--green)}.member-chip .avatar{width:19px;height:19px;font-size:var(--fs-8)}.report-wrap{padding:0 28px 20px;overflow:auto}.report-head,.report-row{display:grid;grid-template-columns:235px minmax(240px,1.2fr) minmax(210px,1fr) minmax(160px,.72fr);gap:24px;min-width:960px}.report-head{height:33px;align-items:center;font-size:var(--fs-10);color:var(--muted);border-bottom:1px solid var(--line)}.report-group{display:flex;align-items:center;gap:8px;min-height:34px;border-bottom:1px solid var(--line);font-size:var(--fs-11);font-weight:550;min-width:960px}.report-group .pill{margin-left:2px;font-weight:400;font-size:var(--fs-9)}.report-row{border-bottom:1px solid var(--line);padding:14px 0 15px;align-items:start}.report-task{display:flex;flex-direction:column;gap:10px}.report-task-title{font-size:var(--fs-11);line-height:1.7;text-align:left;padding:0;color:var(--ink)}.report-task-title:hover{color:var(--accent)}.report-task .row{font-size:var(--fs-10);flex-wrap:wrap;color:var(--muted)}.report-body{font-size:var(--fs-11);line-height:1.9;overflow-wrap:anywhere;color:var(--secondary)}.report-entry{margin-bottom:13px}.report-entry:last-child{margin-bottom:0}.entry-head{display:flex;align-items:center;gap:6px;color:var(--muted);font-size:var(--fs-9);line-height:1.3;margin-bottom:6px}.entry-head .ib{width:17px;height:17px;margin-left:auto}.entry-head .ib .ico{width:11px;height:11px}.issue-text{border-left:2px solid color-mix(in srgb,var(--amber) 50%,var(--bg));padding-left:9px;color:var(--amber)}.report-empty-cell{font-size:var(--fs-10);color:var(--muted);line-height:1.8}.report-missing{padding:10px 28px 15px;font-size:var(--fs-10);line-height:1.8;color:var(--muted)}.calendar-top{display:flex;align-items:center;gap:8px}.calendar-month{font-size:var(--fs-17);font-weight:600;letter-spacing:-.4px;margin-right:10px;min-width:129px}.calendar-content{display:grid;grid-template-columns:minmax(0,1fr) 268px;min-height:620px}.calendar-main{min-width:0;padding:0 0 0 16px}.calendar-legend{display:flex;gap:5px;flex-wrap:wrap}.toggle-filter{font-size:var(--fs-10);display:inline-flex;align-items:center;gap:5px;border:1px solid var(--line);border-radius:5px;padding:5px 7px;color:var(--muted)}.toggle-filter.on{color:var(--secondary);background:var(--subtle)}.toggle-filter.off{opacity:.5;text-decoration:line-through}.toggle-filter .dot{width:6px;height:6px}.calendar-weekdays{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));height:35px;align-items:center;color:var(--muted);font-size:var(--fs-10);text-align:right}.calendar-weekdays>span{padding-right:13px}.sun{color:var(--red)}.sat{color:#7381a3}.month-week{position:relative;min-height:114px;border-top:1px solid var(--line)}.date-backgrounds{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;grid-template-columns:repeat(7,minmax(0,1fr))}.date-bg{border-right:1px solid var(--line);position:relative;min-width:0;background:var(--bg)}.date-bg.weekend{background:var(--subtle)}.date-bg.selected{background:color-mix(in srgb,var(--accent) 4%,var(--bg))}.date-bg.outside{opacity:.58}.date-bg:hover{background:var(--subtle)}.date-select{width:100%;height:100%;position:absolute;top:0;right:0;bottom:0;left:0;text-align:right;padding:0}.date-number{position:absolute;top:7px;right:8px;width:23px;height:23px;display:flex;align-items:center;justify-content:center;font-size:var(--fs-10);border-radius:5px}.date-number.today{background:var(--accent);color:#fff}.date-number.selected:not(.today){color:var(--accent);background:var(--accent-soft)}.day-add{position:absolute;top:6px;left:6px;opacity:0;width:24px;height:24px;z-index:2}.date-bg:hover .day-add,.day-add:focus-visible{opacity:1}.month-events{position:relative;display:grid;grid-template-columns:repeat(7,minmax(0,1fr));grid-auto-rows:23px;column-gap:0;row-gap:3px;padding-top:36px;pointer-events:none;padding-bottom:7px}.cal-event{--event:#79729c;pointer-events:auto;position:relative;margin:0 3px;min-width:0;display:flex;align-items:center;gap:5px;padding:0 5px;border:1px solid color-mix(in srgb,var(--event) 20%,var(--bg));border-left:2px solid var(--event);border-radius:4px;background:color-mix(in srgb,var(--event) 9%,var(--bg));color:color-mix(in srgb,var(--event) 85%,var(--ink));font-size:var(--fs-9);white-space:nowrap;text-align:left;overflow:hidden}.cal-event:hover{filter:brightness(.96)}.cal-event .ico{width:10px;height:10px}.cal-event .who{margin-left:auto;opacity:.8;font-size:var(--fs-8);flex-shrink:0}.cal-event .label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cal-more{pointer-events:auto;text-align:left;color:var(--muted);font-size:var(--fs-9);padding:3px 6px;overflow:hidden;white-space:nowrap}.cal-more:hover{color:var(--accent)}.calendar-inspector{border-left:1px solid var(--line);padding:22px 18px;background:var(--bg)}.inspector-date{font-size:var(--fs-16);letter-spacing:-.4px;font-weight:550;margin-bottom:5px}.inspector-caption{font-size:var(--fs-10);color:var(--muted);line-height:1.7}.inspector-group{margin-top:26px}.inspector-group h3{font-size:var(--fs-10);color:var(--muted);font-weight:500;margin-bottom:12px}.agenda-card{padding:12px 10px;border:1px solid var(--line);border-radius:6px;margin-bottom:8px;text-align:left;width:100%;display:block;background:var(--bg)}.agenda-card:hover{background:var(--subtle);border-color:var(--strong-line)}.agenda-type{display:flex;align-items:center;gap:5px;font-size:var(--fs-9);color:var(--muted);margin-bottom:7px}.agenda-type .ico{width:11px;height:11px}.agenda-title{font-size:var(--fs-11);line-height:1.65;color:var(--ink);margin-bottom:9px;overflow-wrap:anywhere}.agenda-foot{display:flex;align-items:center;gap:5px;font-size:var(--fs-9);color:var(--muted)}.agenda-foot .avatar{width:17px;height:17px;font-size:var(--fs-8)}.agenda-foot .period{margin-left:auto;font-size:var(--fs-8)}.calendar-inspector .add-event{margin-top:17px;width:100%}.calendar-hint{font-size:var(--fs-9);line-height:1.9;color:var(--muted);margin-top:20px}.week-calendar{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));min-height:588px}.week-day{border-right:1px solid var(--line);min-width:0;padding:0 5px 18px}.week-day.weekend{background:var(--subtle)}.week-day-header{display:flex;flex-direction:column;align-items:center;gap:8px;padding:14px 0 15px;border-bottom:1px solid var(--line);margin:0 -5px 12px;color:var(--muted);font-size:var(--fs-10)}.week-day-header button{font-size:var(--fs-18);font-weight:500;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:7px}.week-day-header button.today{background:var(--accent);color:#fff}.week-day-header button.selected:not(.today){background:var(--accent-soft);color:var(--accent)}.week-event{display:block;width:100%;border:1px solid var(--line);border-radius:5px;padding:8px 6px;margin-bottom:7px;background:var(--bg);text-align:left;font-size:var(--fs-10);border-top:2px solid var(--event)}.week-event:hover{background:var(--hover)}.week-event .agenda-type{font-size:var(--fs-8);gap:3px;flex-wrap:wrap}.week-event .agenda-title{font-size:var(--fs-10);line-height:1.7}.week-event .agenda-foot{font-size:var(--fs-8)}dialog{border:1px solid var(--strong-line);border-radius:10px;background:var(--bg);color:var(--ink);padding:0;box-shadow:var(--shadow);width:560px;max-width:calc(100vw - 28px);max-height:calc(100dvh - 50px);overflow:auto}dialog::backdrop{background:#15152130;-webkit-backdrop-filter:blur(1px);backdrop-filter:blur(1px)}dialog.drawer{position:fixed;inset:0 0 0 auto;margin:0;width:620px;max-width:100vw;max-height:100dvh;height:100dvh;border-radius:0;border:0;border-left:1px solid var(--strong-line);overflow:auto}dialog.drawer::backdrop{background:#1616201b;-webkit-backdrop-filter:none;backdrop-filter:none}.dialog-head{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:14px 18px;border-bottom:1px solid var(--line)}.dialog-head h2{font-size:var(--fs-14)}.dialog-subtitle{font-size:var(--fs-10);color:var(--muted);margin-top:5px;line-height:1.8}.dialog-body{padding:18px}.dialog-foot{display:flex;align-items:center;justify-content:flex-end;gap:7px;padding:12px 18px;border-top:1px solid var(--line);background:var(--subtle);position:sticky;bottom:0;z-index:3}.dialog-foot .foot-left{margin-right:auto;color:var(--muted);font-size:var(--fs-10);line-height:1.7}.field{display:flex;flex-direction:column;gap:6px;margin-bottom:13px;min-width:0}.field>span,.field>label{font-size:var(--fs-11);color:var(--secondary);font-weight:500}.field input:not([type=checkbox]):not([type=radio]),.field select,.field textarea{border:1px solid var(--strong-line);border-radius:5px;padding:6px 9px;min-height:32px;font-size:var(--fs-12);width:100%;line-height:1.65;resize:vertical}.field textarea{min-height:74px}.field .title-input{font-size:var(--fs-17)!important;letter-spacing:-.4px;font-weight:550}.field small{font-size:var(--fs-10);color:var(--muted);line-height:1.8;font-weight:400}.field-row{display:grid;grid-template-columns:1fr 1fr;gap:14px}.field-row.three{grid-template-columns:1fr 1fr 1fr}.field.error input,.field.error textarea{border-color:var(--red)}.form-error{color:var(--red);font-size:var(--fs-11);line-height:1.8;margin:0 0 10px;min-height:0}.form-error:empty{display:none}.form-note{display:flex;align-items:flex-start;gap:7px;padding:8px 11px;border:1px solid var(--line);border-radius:6px;font-size:var(--fs-10);line-height:1.9;color:var(--secondary);margin-bottom:15px;background:var(--subtle)}.form-note .ico{width:13px;height:13px;margin-top:3px;color:var(--accent)}.color-picker{display:flex;gap:9px}.color-choice{width:25px;height:25px;border-radius:50%;position:relative;display:flex;align-items:center;justify-content:center;cursor:pointer;background:var(--c)}.color-choice input{-webkit-appearance:none;-moz-appearance:none;appearance:none;position:absolute;top:0;right:0;bottom:0;left:0;margin:0;border-radius:50%;cursor:pointer}.color-choice input:checked{outline:2px solid var(--c);outline-offset:3px}.color-choice .ico{width:13px;height:13px;stroke:#fff;opacity:0;pointer-events:none}.color-choice:has(input:checked) .ico{opacity:1}.checkrow{display:flex;align-items:center;gap:8px;font-size:var(--fs-11);color:var(--secondary);margin:0 0 12px}.checkrow input{accent-color:var(--accent)}.drawer-title{font-size:var(--fs-22);line-height:1.5;letter-spacing:-.6px;font-weight:550;margin-bottom:14px;overflow-wrap:anywhere}.task-meta{display:grid;grid-template-columns:1fr 1fr;gap:11px 20px;padding:14px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin-bottom:16px}.meta-item{display:flex;align-items:center;gap:8px;font-size:var(--fs-11);min-width:0}.meta-label{width:52px;color:var(--muted);font-size:var(--fs-10);flex-shrink:0}.description{font-size:var(--fs-12);color:var(--secondary);line-height:1.9;white-space:pre-wrap;overflow-wrap:anywhere}.drawer .tabs{padding:0 22px;margin-top:18px}.activity-item{border-left:1px solid var(--line);padding:0 0 20px 19px;margin-left:10px;position:relative}.activity-item:before{content:"";position:absolute;left:-4px;top:6px;width:7px;height:7px;background:var(--strong-line);border:2px solid var(--bg);border-radius:50%}.activity-item .row{font-size:var(--fs-10);color:var(--muted);margin-bottom:9px}.activity-item .activity-text{font-size:var(--fs-12);line-height:1.9;white-space:pre-wrap;color:var(--secondary);overflow-wrap:anywhere}.activity-item .issue-text{margin-top:9px;font-size:var(--fs-11);line-height:1.8}.activity-item .small-plan{font-size:var(--fs-10);margin-top:10px;color:var(--accent);line-height:1.8}.activity-item .ib{width:20px;height:20px}.drawer-section-title{font-size:var(--fs-11);color:var(--muted);font-weight:500;margin-bottom:18px}.plan-card{padding:11px;border:1px solid var(--line);border-radius:6px;margin-bottom:8px}.plan-card p{font-size:var(--fs-11);color:var(--secondary);line-height:1.9;margin-top:7px;white-space:pre-wrap;overflow-wrap:anywhere}.plan-card .row{font-size:var(--fs-10);color:var(--muted)}.setting-card{border:1px solid var(--line);border-radius:7px;margin:0 0 14px;padding:13px}.setting-card h3{margin-bottom:7px;font-size:var(--fs-12)}.setting-card p{font-size:var(--fs-11);color:var(--secondary);line-height:1.9;margin-bottom:13px}.setting-card .row{flex-wrap:wrap}.user-option{display:flex;align-items:center;gap:12px;width:100%;text-align:left;border:1px solid var(--line);border-radius:6px;padding:10px;margin:6px 0}.user-option:hover{background:var(--hover)}.user-option.active{background:var(--accent-soft);border-color:var(--accent)}.user-option .ico{margin-left:auto;color:var(--accent)}.user-option .small{font-weight:500}.user-option .tiny{margin-top:3px;color:var(--muted)}.command-box{width:570px;margin-top:15vh}.command-search{display:flex;align-items:center;gap:11px;padding:15px;border-bottom:1px solid var(--line)}.command-search input{border:0;font-size:var(--fs-14);width:100%;outline:none}.command-search .ico{color:var(--muted)}.command-results{padding:8px;max-height:420px;overflow:auto}.command-label{font-size:var(--fs-10);color:var(--muted);padding:10px 9px 7px}.command-item{display:flex;align-items:center;gap:9px;width:100%;text-align:left;padding:9px 10px;border-radius:5px;font-size:var(--fs-11)}.command-item:hover,.command-item:focus{background:var(--hover)}.command-item .detail{font-size:var(--fs-9);color:var(--muted);margin-left:auto;white-space:nowrap}.command-foot{padding:11px 18px;border-top:1px solid var(--line);font-size:var(--fs-10);color:var(--muted)}.audit-item{padding:12px 0;border-bottom:1px solid var(--line);font-size:var(--fs-11)}.audit-item .row{font-size:var(--fs-10);color:var(--muted);margin-bottom:8px}.audit-item details{font-size:var(--fs-10);color:var(--secondary);line-height:1.9;margin-top:7px}.audit-item summary{cursor:pointer;color:var(--accent)}.audit-item pre{white-space:pre-wrap;overflow-wrap:anywhere;background:var(--subtle);padding:10px;border-radius:5px;font-family:inherit;font-size:var(--fs-10);line-height:1.9;max-height:250px;overflow:auto}.toast{position:fixed;bottom:23px;left:calc(var(--side-w) + (100vw - var(--side-w))/2);transform:translate(-50%,15px);opacity:0;pointer-events:none;border:1px solid var(--strong-line);background:var(--bg);color:var(--ink);padding:12px 17px;border-radius:8px;box-shadow:0 8px 35px #1a1a2820;font-size:var(--fs-11);line-height:1.8;z-index:200;max-width:min(550px,calc(100vw - 35px));transition:transform .18s,opacity .18s}.toast.show{opacity:1;transform:translate(-50%)}@media (min-width:1700px){:root{--side-w:236px;--frozen:670px;--task-cols:350px 90px 82px 62px 86px;--day-w:29px}.timeline .c2{left:350px}.timeline .c3{left:440px}.timeline .c4{left:522px}.timeline .c5{left:584px}}@media (max-width:1250px){:root{--side-w:205px}.page-head,.topbar,.toolbar{padding-left:22px;padding-right:22px}.calendar-content{grid-template-columns:minmax(0,1fr) 228px}.calendar-inspector{padding:20px 13px}.cal-event .who{display:none}.filter-controls{gap:5px}.search-inline input{width:90px}.top-actions .version{display:none}.report-policy{font-size:var(--fs-10)}.report-policy .muted,.head-right .small{display:none}}@media (max-width:1000px){.calendar-content{grid-template-columns:1fr}.calendar-inspector{border-left:0;border-top:1px solid var(--line);display:block;padding:20px}.calendar-inspector .inspector-group{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:18px}.calendar-inspector .inspector-group h3{grid-column:1/-1;margin-bottom:2px}.calendar-inspector .agenda-card{margin:0}.calendar-inspector .add-event{width:auto}.calendar-main{padding:0 12px}.week-calendar{min-height:480px}.calendar-inspector .calendar-hint{margin-top:12px}.head-right .avatar-stack,.head-right .separator{display:none}.work-scroll{max-height:calc(100dvh - 262px)}}@media (max-width:760px){:root{--side-w:0px}.sidebar{transform:translate(-100%);width:226px;transition:transform .18s;box-shadow:10px 0 40px #0001}.sidebar.mobile-open{transform:none;z-index:90}.shell{margin-left:0;padding-bottom:59px}.mobile-menu{display:inline-flex}.topbar{height:49px;padding:0 14px}.top-actions{gap:3px}.top-actions .version,.top-actions .help-button{display:none}.crumb{font-size:var(--fs-10);gap:7px}.crumb>.crumb-team{display:none}.page-head{padding:21px 16px 16px;align-items:flex-start;gap:8px}h1{font-size:var(--fs-20)}.page-description{font-size:var(--fs-10);max-width:260px}.head-right{gap:5px}.head-right .btn{padding:6px 8px;font-size:var(--fs-10)}.head-right .desktop-only{display:none}.tabs{padding:0 16px;gap:23px}.toolbar{padding:10px 16px;gap:9px;align-items:flex-start}.filter-controls,.view-controls{gap:5px}.select-wrap select{max-width:132px}.search-inline{display:none}.footer-note{padding:11px 16px;font-size:var(--fs-9);align-items:flex-start;flex-wrap:wrap}.footer-note .desktop-only{display:none}.work-scroll{max-height:calc(100dvh - 316px);min-height:280px}.work-grid:not(.timeline) .task-row,.work-grid:not(.timeline) .work-header{grid-template-columns:minmax(220px,1fr) 82px 70px 50px 72px;min-width:540px}.c1{padding-left:16px;gap:6px}.task-code{display:none}.cell{padding-left:8px;padding-right:8px}.task-title{font-size:var(--fs-10)}.project-group{grid-template-columns:350px 1fr;min-width:540px}.group-title{padding-left:14px}.c2{font-size:var(--fs-9)}.c2 .avatar{width:16px;height:16px;font-size:var(--fs-7)}.c3 .status{font-size:var(--fs-10)}.mobile-nav{position:fixed;bottom:0;left:0;right:0;height:57px;border-top:1px solid var(--line);display:flex;background:var(--bg);z-index:60;padding-bottom:env(safe-area-inset-bottom)}.mobile-nav button{display:flex;flex:1;flex-direction:column;align-items:center;justify-content:center;gap:4px;font-size:var(--fs-9);color:var(--muted);padding:6px 0}.mobile-nav button.active{color:var(--accent);background:var(--subtle)}.mobile-nav button .ico{width:17px;height:17px}.calendar-month{font-size:var(--fs-15);margin:0;min-width:112px}.calendar-content{min-height:0}.calendar-main{padding:0 7px}.calendar-top{gap:3px}.calendar-top>.btn{padding:5px 7px;font-size:var(--fs-10)}.calendar-legend{gap:4px}.toggle-filter{font-size:var(--fs-9);padding:4px 5px}.calendar-weekdays{height:28px;font-size:var(--fs-9)}.calendar-weekdays>span{padding-right:7px}.month-week{min-height:98px}.month-events{grid-auto-rows:20px;row-gap:3px;padding-top:32px}.cal-event{padding:0 3px;gap:3px;font-size:var(--fs-8);margin:0 2px}.cal-event .ico{display:none}.date-number{font-size:var(--fs-9);right:4px;top:5px;width:21px;height:21px}.day-add{display:none}.cal-more{font-size:var(--fs-8);padding:3px}.calendar-inspector{padding:19px 16px}.calendar-inspector .inspector-group{grid-template-columns:1fr 1fr;gap:7px}.agenda-title{font-size:var(--fs-10)}.agenda-foot .period{font-size:var(--fs-8)}.agenda-card{padding:10px 8px}.calendar-hint{font-size:var(--fs-9)}.week-calendar{overflow:auto;min-width:650px;min-height:400px}.calendar-main:has(.week-calendar){overflow:auto}.week-day{min-width:0}.report-policy{padding:10px 16px;line-height:1.8}.coverage{padding:12px 16px;gap:6px}.coverage-caption{width:100%;margin-bottom:3px}.member-chip{font-size:var(--fs-9);padding:4px 5px}.member-chip .chip-status{font-size:var(--fs-8)}.member-chip .avatar{width:16px;height:16px;font-size:var(--fs-7)}.report-wrap{padding:0 16px 16px}.report-head{display:none}.report-group{min-width:0;min-height:43px;margin-top:2px}.report-row{min-width:0;display:grid;grid-template-columns:1fr;gap:15px;padding:15px 0 20px}.report-task{gap:7px;padding-bottom:10px;border-bottom:1px dashed var(--line)}.report-task-title{font-size:var(--fs-12);font-weight:500}.report-body:before{content:attr(data-label);display:block;font-size:var(--fs-10);font-weight:550;color:var(--ink);margin-bottom:9px}.report-body{font-size:var(--fs-11)}.report-empty-cell{font-size:var(--fs-10)}.report-missing{padding:0 16px 15px;font-size:var(--fs-9)}.projects-table{padding:0 16px}.p-head{display:none}.p-row{min-width:0;grid-template-columns:1fr 100px 28px;gap:6px;min-height:105px;padding:10px 0}.p-title{grid-column:1/-1;padding:1px 0 4px}.p-row .p-status{font-size:var(--fs-10)}.p-row .p-lead,.p-row .p-date{display:none}.project-stat{flex-direction:row;align-items:center;gap:5px;font-size:var(--fs-9);justify-content:flex-end}.project-stat .progress-track{width:40px}.p-desc{font-size:var(--fs-9)}.p-name{font-size:var(--fs-12)}.project-empty-tip{margin:20px 16px;padding:13px;align-items:flex-start;flex-direction:column;font-size:var(--fs-10)}.dialog-body{padding:18px}.dialog-head{padding:15px 18px}.dialog-foot{padding:13px 18px}.field-row.three{grid-template-columns:1fr 1fr}.field-row.three>.field:last-child{grid-column:1/-1}.field input,.field textarea,.field select{font-size:var(--fs-13)!important}.task-meta{gap:13px 14px}.drawer-title{font-size:var(--fs-20)}.dialog-foot .foot-left{font-size:var(--fs-9);max-width:130px}.toast{bottom:69px;left:50%;font-size:var(--fs-10);width:max-content}.page-head:has(.calendar-month){padding-bottom:14px}.command-box{margin-top:8vh}.storage-alert{padding:9px 16px;font-size:var(--fs-10)}}@media (max-width:760px){.timeline .cell,.timeline .group-title{position:static}}@media (prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}@media print{.sidebar,.topbar,.toolbar,.tabs,.coverage,.mobile-nav,.footer-note,.head-right,.report-policy,.report-missing,.toast{display:none!important}.shell{margin:0}.page-head{padding:10px 0 18px}.report-wrap{padding:0;overflow:visible}.report-head,.report-row{min-width:0;grid-template-columns:20% 30% 26% 20%;gap:1%}.report-group{min-width:0;break-after:avoid}.report-row{break-inside:avoid}.entry-head .ib{display:none}.report-head,.report-body,.report-task-title{font-size:var(--fs-9)}.report-body:before{display:none}body{background:#fff;color:#222}}:root{--side-w:224px;--accent:#005fb8;--accent-hover:#0258a8;--accent-soft:#e5f1fb;--line:#e5e5e5;--secondary:#5a5a5a;--muted:#616161}:root[data-theme=dark]{--accent:#0078d4;--accent-hover:#026ec1;--accent-soft:#1f3a52;--line:#2b2b2b;--secondary:#a8a8a8;--muted:#9d9d9d}html{scrollbar-gutter:stable}body{overflow-x:hidden}.main{min-height:0}.topbar{height:46px}.page-head{padding-top:21px;padding-bottom:17px}h1{font-size:var(--fs-23);letter-spacing:-.8px}.page-description{font-size:var(--fs-11)}.brand-sub{letter-spacing:.05px}.avatar-stack{padding:0;gap:0}.avatar-button{padding:0;margin-left:-4px;border:2px solid var(--bg);border-radius:50%;height:28px;width:28px;display:grid;place-items:center;position:relative}.avatar-button .avatar{margin:0;width:25px;height:25px;border:1px solid var(--line)}.avatar-button:first-child{margin-left:0}.avatar-button:hover,.avatar-button.selected{z-index:1;outline:2px solid var(--accent);outline-offset:1px}.head-right{gap:13px}.local-indicator{font-size:var(--fs-10)}.prototype-badge{font-size:var(--fs-10);display:inline-flex;align-items:center;gap:6px;color:var(--muted);border:1px solid var(--line);padding:4px 7px;border-radius:5px}.prototype-badge .dot{width:5px;height:5px;background:#0078d4}.view-tabs{display:flex;align-items:center;border-bottom:1px solid var(--line);gap:26px;padding:0 28px;min-height:36px}.view-tab{height:36px;display:flex;align-items:center;gap:7px;font-size:var(--fs-12);color:var(--muted);position:relative}.view-tab .ico{width:14px;height:14px}.view-tab:hover{color:var(--ink)}.view-tab.active{color:var(--ink);font-weight:600}.view-tab.active:after{position:absolute;content:"";height:2px;left:0;right:0;bottom:-1px;background:var(--accent)}.view-helper{margin-left:auto;color:var(--muted);font-size:var(--fs-10);display:flex;align-items:center;gap:6px}.view-helper .ico{width:12px;height:12px}.work-toolbar{min-height:46px}.work-toolbar .search-inline input{width:135px}.work-toolbar .select-wrap{height:29px}.filter-count{font-size:var(--fs-10);color:var(--muted);white-space:nowrap}.clear-filters{font-size:var(--fs-10);color:var(--accent);padding:5px}.mini-legend{display:flex;gap:14px;align-items:center;color:var(--muted);font-size:var(--fs-10)}.mini-legend .row{gap:5px}.mini-legend .ico{width:12px;height:12px}.smallselect{border:1px solid var(--line);border-radius:5px;background:var(--bg);padding:5px 7px;font-size:var(--fs-10);color:var(--secondary)}.board-scroll{overflow-x:auto;overflow-y:hidden;padding:16px 20px 0;background:var(--bg);scrollbar-width:thin;min-height:350px;max-height:850px}.board-grid{display:flex;gap:16px;min-width:100%;height:100%;align-items:stretch;padding-bottom:12px}.board-column{flex:1 0 205px;min-width:205px;display:flex;flex-direction:column;min-height:0;max-width:none;border-radius:8px}.board-col-head{padding:0 2px 13px;display:flex;align-items:center;gap:8px;font-size:var(--fs-12);font-weight:600;flex-shrink:0}.board-col-head .count{font-size:var(--fs-10);color:var(--muted);font-weight:450;margin-left:2px}.board-col-head .ib{width:23px;height:23px}.board-col-head .ico,.board-col-head .statusmark{width:13px;height:13px}.board-cards{overflow-y:auto;scrollbar-width:thin;scrollbar-color:var(--line) transparent;padding:2px 2px 28px;flex:1;min-height:200px;border-radius:7px;transition:background .1s;outline:1px dashed transparent}.board-column.dragover .board-cards{background:var(--accent-soft);outline-color:var(--accent)}.kanban-card{border:1px solid var(--strong-line);border-color:color-mix(in srgb,var(--strong-line) 72%,var(--bg));border-radius:8px;background:var(--bg);margin-bottom:8px;padding:11px 10px 9px;box-shadow:0 1px 2px #00000004;transition:border-color .13s,box-shadow .13s,transform .13s;position:relative;overflow:hidden}.kanban-card:hover{border-color:color-mix(in srgb,var(--accent) 40%,var(--strong-line));box-shadow:0 3px 12px #26213708}.kanban-card[draggable=true]{cursor:grab}.kanban-card.dragging{opacity:.34;transform:scale(.98)}.kanban-card.done-card{background:var(--subtle)}.card-top{display:flex;align-items:center;justify-content:space-between;gap:6px;margin-bottom:8px;font-size:var(--fs-9);color:var(--muted)}.card-project{display:flex;gap:5px;align-items:center;min-width:0}.card-project>span:last-child{white-space:nowrap;text-overflow:ellipsis;overflow:hidden;max-width:132px}.card-project .dot{width:5px;height:5px}.card-code{font-variant-numeric:tabular-nums;font-size:var(--fs-9)}.card-open{display:block;width:100%;text-align:left;padding:0;line-height:1.7;font-weight:550;font-size:var(--fs-12-5);letter-spacing:-.16px}.card-open:hover{color:var(--accent)}.done-card .card-open{color:var(--secondary)}.card-subrow{display:flex;gap:6px;align-items:center;margin-top:10px;min-height:20px}.category-tag{color:var(--secondary);background:var(--subtle);border:1px solid var(--line);border-radius:4px;padding:2px 5px;font-size:var(--fs-9);line-height:1.2;white-space:nowrap}.priority-bars{height:13px;display:inline-flex;align-items:flex-end;gap:2px;padding:1px 0}.priority-bars i{display:block;width:2px;border-radius:1px;background:var(--muted);opacity:.35}.priority-bars i:nth-child(1){height:4px}.priority-bars i:nth-child(2){height:7px}.priority-bars i:nth-child(3){height:10px}.priority-bars.high i,.priority-bars.urgent i{opacity:1}.priority-bars.urgent i{background:var(--red)}.priority-bars.normal i:nth-child(-n+2),.priority-bars.low i:first-child{opacity:1}.card-progress{margin-left:auto;font-size:var(--fs-9);color:var(--muted);font-variant-numeric:tabular-nums}.card-blocker{font-size:var(--fs-9);line-height:1.65;color:var(--amber);display:flex;gap:5px;align-items:flex-start;margin-top:9px;padding:6px 7px;border-radius:4px;background:color-mix(in srgb,var(--amber) 7%,var(--bg))}.card-blocker .ico{width:11px;height:11px;flex-shrink:0;margin-top:2px}.card-footer{display:flex;align-items:center;gap:6px;margin-top:10px;padding-top:7px;border-top:1px solid var(--line);min-height:28px}.card-footer .avatar{width:21px;height:21px;font-size:var(--fs-8)}.card-date{font-size:var(--fs-9);color:var(--muted);display:flex;align-items:center;gap:4px;white-space:nowrap}.card-date .ico{width:11px;height:11px}.card-date.late{color:var(--red)}.card-footer .ib{width:22px;height:22px;padding:4px;margin:-2px 0}.card-footer .ib .ico{width:12px;height:12px}.card-footer .readonly{font-size:var(--fs-8);color:var(--muted);margin-left:auto;opacity:.65}.board-add{display:flex;align-items:center;gap:6px;width:100%;padding:10px 6px;font-size:var(--fs-10);color:var(--muted);border-radius:5px;text-align:left}.board-add .ico{width:12px;height:12px}.board-add:hover{background:var(--hover);color:var(--ink)}.board-empty{font-size:var(--fs-10);color:var(--muted);text-align:center;border:1px dashed var(--line);padding:35px 8px;border-radius:7px;margin:2px 0 10px}.status-option{display:flex;gap:10px;width:100%;align-items:center;text-align:left;padding:12px;border-radius:6px;font-size:var(--fs-12)}.status-option:hover{background:var(--hover)}.status-option.active{background:var(--accent-soft)}.status-option .checkico{margin-left:auto;color:var(--accent)}.status-option .checkico .ico{width:14px;height:14px}.list-scroll{overflow:auto;scrollbar-width:thin;min-height:280px}.task-table{width:100%;border-collapse:separate;border-spacing:0;table-layout:fixed;min-width:980px}.task-table thead{position:sticky;top:0;z-index:4}.task-table th{font-size:var(--fs-10);font-weight:450;color:var(--muted);text-align:left;background:var(--subtle);border-bottom:1px solid var(--line);height:34px;padding:0 12px;white-space:nowrap}.task-table td{font-size:var(--fs-11);padding:0 12px;height:41px;border-bottom:1px solid var(--line);color:var(--secondary);vertical-align:middle}.task-table tr:hover td{background:var(--subtle)}.task-table th:first-child,.task-table td:first-child{padding-left:28px}.task-table .lt-name{color:var(--ink)}.lt-task{display:flex;align-items:center;gap:9px;max-width:100%;text-align:left;padding:5px 0}.lt-task .ellipsis{font-size:var(--fs-11);font-weight:500}.lt-task .task-code{font-size:var(--fs-9);min-width:45px}.lt-project{display:flex;align-items:center;gap:6px;font-size:var(--fs-10)}.lt-status-button{font-size:var(--fs-10);padding:3px 5px;border-radius:5px;margin-left:-5px}.lt-status-button:hover{background:var(--hover)}.lt-status-button .status{font-size:var(--fs-10)}.lt-progress{display:flex;align-items:center;gap:8px;font-size:var(--fs-10)}.lt-progress .progress-track{width:44px}.lt-group td{background:var(--subtle)!important;height:32px;font-size:var(--fs-11);color:var(--ink)}.lt-group button{display:flex;gap:8px;align-items:center;text-align:left;font-weight:550;padding:3px 0}.lt-group .ico{width:12px;height:12px}.lt-group .counter{font-weight:400;font-size:var(--fs-10);color:var(--muted);margin-left:3px}.lt-dates{font-size:var(--fs-10)!important;font-variant-numeric:tabular-nums;white-space:nowrap}.lt-dates.late{color:var(--red)}.lt-person{display:flex;align-items:center;gap:7px;font-size:var(--fs-10)}.unscheduled-tag{font-size:var(--fs-9);border:1px dashed var(--strong-line);border-radius:4px;padding:3px 6px;color:var(--muted)}.gantt-scroll{overflow:auto;scrollbar-width:thin;min-height:300px;position:relative}.gantt-grid{--label-width:426px;--gday:38px;width:calc(var(--label-width) + var(--gday) * var(--gcount));min-width:100%;position:relative}.gg-head{display:flex;position:sticky;top:0;height:61px;background:var(--subtle);z-index:16;border-bottom:1px solid var(--strong-line)}.gg-left{width:var(--label-width);min-width:var(--label-width);position:sticky;left:0;background:var(--bg);z-index:6;display:grid;grid-template-columns:minmax(0,1fr) 66px 50px;border-right:1px solid var(--strong-line);align-items:center}.gg-head .gg-left{background:var(--subtle);color:var(--muted);font-size:var(--fs-10);z-index:20}.gg-left>div{padding:0 9px;overflow:hidden;min-width:0}.gg-left>div:first-child{padding-left:25px}.gg-left>.gg-owner{padding:0 4px;font-size:var(--fs-9);display:flex;align-items:center;gap:4px}.gg-owner .avatar{width:19px;height:19px;font-size:var(--fs-8)}.gg-titlebutton{display:flex;align-items:center;gap:8px;text-align:left;width:100%;padding:0;font-size:var(--fs-11);color:var(--ink)}.gg-titlebutton .statusmark{width:11px;height:11px}.gg-titlebutton .task-code{font-size:var(--fs-8);min-width:42px}.gg-head-time{flex:1;min-width:0}.gg-months{height:28px;display:flex;border-bottom:1px solid var(--line);font-size:var(--fs-10);color:var(--secondary)}.gg-months>div{flex-shrink:0;padding:7px 9px;border-right:1px solid var(--line)}.gg-days{height:32px;display:flex;align-items:stretch}.gg-day{width:var(--gday);flex-shrink:0;text-align:center;font-size:var(--fs-9);color:var(--muted);display:flex;align-items:center;justify-content:center;gap:3px}.gg-day small{font-size:var(--fs-8);opacity:.7}.gg-day.today>span{color:#fff;background:var(--accent);width:21px;height:21px;border-radius:5px;display:grid;place-items:center}.gg-day.weekend{background:var(--hover)}.gg-row{height:45px;display:flex;border-bottom:1px solid var(--line)}.gg-row:hover .gg-left{background:var(--subtle)}.gg-percent{font-size:var(--fs-10);color:var(--muted);font-variant-numeric:tabular-nums;text-align:right}.gg-lane{position:relative;width:calc(var(--gday)*var(--gcount));min-width:0;flex-shrink:0;background-image:repeating-linear-gradient(to right,transparent 0,transparent calc(var(--gday) - 1px),var(--line) calc(var(--gday) - 1px),var(--line) var(--gday))}.gg-weekend{position:absolute;top:0;bottom:0;pointer-events:none;background:color-mix(in srgb,var(--line) 40%,transparent)}.gg-today{position:absolute;top:0;bottom:0;width:1px;background:var(--accent);opacity:.45;pointer-events:none;z-index:2}.gg-group{height:36px;display:flex;background:var(--subtle);border-bottom:1px solid var(--line)}.gg-group .gg-left{background:var(--subtle);grid-template-columns:1fr;z-index:7}.gg-group button{display:flex;align-items:center;gap:8px;font-size:var(--fs-11);font-weight:550;width:100%;text-align:left;padding:0}.gg-group .ico{width:12px;height:12px}.gg-group .count{font-size:var(--fs-10);color:var(--muted);font-weight:400}.gg-group-tail{background:var(--subtle);flex:1;font-size:var(--fs-9);color:var(--muted);display:flex;align-items:center;padding-left:10px}.gg-bar{height:23px;position:absolute;top:10px;border:1px solid color-mix(in srgb,var(--project) 48%,var(--bg));background:color-mix(in srgb,var(--project) 15%,var(--bg));border-radius:5px;color:var(--project);z-index:3;overflow:visible;touch-action:none;min-width:12px;outline-offset:3px;display:flex;align-items:center;padding:0;cursor:pointer}.gg-bar.editable{cursor:grab}.gg-bar.done{opacity:.64}.gg-fill{position:absolute;left:0;top:0;bottom:0;border-radius:4px;background:color-mix(in srgb,var(--project) 18%,transparent);pointer-events:none;max-width:100%}.gg-bar-label{font-size:var(--fs-9);padding:0 8px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;pointer-events:none;position:relative;width:100%;display:block}.gg-bar-label>.ico{width:9px;height:9px;margin-right:4px;vertical-align:middle}.gg-resize{position:absolute;top:-2px;bottom:-2px;width:9px;z-index:6;cursor:ew-resize;display:flex;align-items:center;justify-content:center}.gg-resize.left{left:-3px}.gg-resize.right{right:-3px}.gg-resize:after{content:"";display:block;width:2px;height:12px;border-radius:2px;background:var(--project);opacity:0}.gg-bar:hover .gg-resize:after,.gg-bar.drag-active .gg-resize:after{opacity:.7}.gg-bar.drag-active{z-index:14;box-shadow:0 4px 14px #40346a26;cursor:grabbing}.gg-offrange{font-size:var(--fs-9);color:var(--muted);display:flex;align-items:center;gap:5px;position:absolute;top:15px;left:9px}.gg-offrange .ico{width:10px;height:10px}.gg-conflict{position:absolute;top:7px;bottom:7px;width:7px;background:var(--amber);opacity:.75;border-radius:3px;z-index:4;pointer-events:none}.gantt-statusbar{padding:10px 28px;border-top:1px solid var(--line);font-size:var(--fs-10);color:var(--muted);display:flex;align-items:center;gap:12px;flex-wrap:wrap}.gantt-statusbar .row{gap:5px}.gantt-statusbar .dot{width:6px;height:6px}.drag-tooltip{position:fixed;z-index:300;background:var(--ink);color:var(--bg);padding:8px 11px;border-radius:6px;font-size:var(--fs-10);box-shadow:0 3px 20px #0003;pointer-events:none;max-width:260px;line-height:1.7}.unscheduled-row .gg-left{background:var(--subtle)}.unscheduled-row .gg-lane{background:var(--subtle);display:flex;align-items:center;padding-left:12px;font-size:var(--fs-10);color:var(--muted)}.undo-button{color:var(--accent);font-size:var(--fs-11);font-weight:550;margin-left:14px;padding:4px 6px;border-radius:4px}.undo-button:hover{background:var(--accent-soft)}.drawer{width:600px}.drawer .dialog-body{padding:25px 26px}.drawer-title{line-height:1.6;font-size:var(--fs-22);letter-spacing:-.6px}.drawer-code{color:var(--muted);font-size:var(--fs-10)}.task-meta{background:var(--subtle);border:1px solid var(--line);border-radius:7px;padding:15px;gap:17px 20px}.detail-status{border:1px solid var(--line);border-radius:5px;display:flex;align-items:center;gap:7px;padding:4px 6px;margin:-4px 0;background:var(--bg);font-size:var(--fs-11)}.detail-status .ico{width:10px;height:10px;color:var(--muted)}.detail-summary{padding:20px 0 12px;font-size:var(--fs-12);line-height:1.9;color:var(--secondary)}.richtext{font-size:inherit;line-height:1.9;overflow-wrap:anywhere;min-width:0}.richtext p{margin:0 0 8px;white-space:pre-wrap}.richtext p:last-child{margin-bottom:0}.richtext h4{font-size:var(--fs-12);color:var(--ink);font-weight:600;margin:16px 0 9px}.richtext .text-table-wrap{overflow:auto;margin:10px 0 14px;max-width:100%;border:1px solid var(--line);border-radius:6px}.richtext table{border-collapse:collapse;width:100%;font-size:var(--fs-11);table-layout:auto;min-width:0}.richtext th{background:var(--subtle);color:var(--secondary);font-weight:550;text-align:left;padding:7px 9px;border-bottom:1px solid var(--line)}.richtext td{padding:7px 9px;border-bottom:1px solid var(--line);border-right:1px solid var(--line)}.richtext td:last-child{border-right:0}.richtext tr:last-child td{border-bottom:0}.richtext .text-check{display:flex;align-items:flex-start;gap:7px;margin:5px 0}.text-check-box{display:inline-flex;align-items:center;justify-content:center;width:13px;height:13px;border:1px solid var(--strong-line);border-radius:3px;margin-top:4px;flex-shrink:0;color:var(--accent)}.text-check-box.checked{background:var(--accent-soft);border-color:var(--accent)}.text-check-box .ico{width:10px;height:10px}.richtext .text-bullet{padding-left:13px;position:relative;margin:4px 0}.text-bullet:before{position:absolute;left:1px;top:10px;width:3px;height:3px;border-radius:50%;content:"";background:var(--muted)}.activity-rich{font-size:var(--fs-11);color:var(--secondary);margin-top:14px}.activity-item .richtext{line-height:1.9}.editor-field{display:block}.editor-label{display:flex;align-items:center;justify-content:space-between;margin-bottom:7px;gap:7px;font-size:var(--fs-11);color:var(--secondary)}.editor-tools{display:flex;gap:2px;align-items:center}.editor-tools button{font-size:var(--fs-9);display:flex;align-items:center;gap:4px;padding:4px 5px;color:var(--muted);border:1px solid transparent;border-radius:4px}.editor-tools button:hover{background:var(--hover);border-color:var(--line);color:var(--ink)}.editor-tools .ico{width:11px;height:11px}.editor-preview{padding:12px;border:1px solid var(--line);border-radius:6px;background:var(--bg);font-size:var(--fs-11);min-height:110px;margin-bottom:0}.editor-preview[hidden]{display:none}.field-help{font-size:var(--fs-9);color:var(--muted);margin-top:5px}.textonly-note{display:flex;align-items:center;gap:5px;font-size:var(--fs-9);color:var(--muted);margin:0 0 16px}.textonly-note .ico{width:11px;height:11px}.blocker-note{padding:10px 12px;border:1px solid color-mix(in srgb,var(--amber) 28%,var(--line));background:color-mix(in srgb,var(--amber) 6%,var(--bg));border-radius:5px;margin-top:14px;font-size:var(--fs-11);color:var(--amber);display:flex;gap:7px;align-items:center}.help-steps{display:flex;flex-direction:column;gap:10px}.help-step{display:flex;gap:12px;align-items:flex-start;padding:14px;border:1px solid var(--line);border-radius:7px}.step-number{height:23px;min-width:23px;background:var(--accent-soft);color:var(--accent);display:grid;place-items:center;border-radius:5px;font-size:var(--fs-11);font-weight:600}.help-step strong{font-size:var(--fs-12);display:block;font-weight:550;margin:2px 0 5px}.help-step p{font-size:var(--fs-11);color:var(--secondary);line-height:1.8}.login-preview{padding:34px 34px 32px;text-align:center}.login-brand{display:flex;justify-content:center;align-items:center;gap:9px;margin-bottom:25px;font-size:var(--fs-16);font-weight:650}.login-preview h2{font-size:var(--fs-22);letter-spacing:-.5px;margin-bottom:10px}.login-preview p{font-size:var(--fs-11);color:var(--muted);line-height:1.9}.google-button{width:100%;height:43px;border:1px solid var(--strong-line);border-radius:7px;margin:25px 0 16px;display:flex;align-items:center;justify-content:center;gap:10px;font-size:var(--fs-12);font-weight:500;background:var(--bg)}.google-button:hover{background:var(--hover)}.google-mark{width:18px;height:18px;display:inline-block}.login-demo-note{padding:12px;border:1px solid var(--line);background:var(--subtle);border-radius:6px;color:var(--secondary);font-size:var(--fs-10);line-height:1.9;text-align:left}.settings-metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:12px}.metric-mini{border:1px solid var(--line);border-radius:6px;padding:13px 10px;background:var(--subtle)}.metric-mini strong{font-size:var(--fs-17);font-weight:550;display:block;color:var(--ink);margin-top:6px}.metric-mini span{font-size:var(--fs-9);color:var(--muted)}.embedded-cal-top{padding:10px 28px;display:flex;align-items:center;gap:8px;border-bottom:1px solid var(--line);font-size:var(--fs-11)}.embedded-cal-top .calendar-legend{margin-left:auto}.report-body .richtext{font-size:var(--fs-11)}.report-body .richtext th,.report-body .richtext td{padding:5px 6px;font-size:var(--fs-10)}.activity-item .small-plan>.richtext{display:inline}.modal-callout{margin:0 0 18px;padding:12px;border:1px solid var(--line);background:var(--subtle);border-radius:5px;color:var(--secondary);font-size:var(--fs-11);line-height:1.9}@media (min-width:1700px){:root{--side-w:224px}.board-column{min-width:226px}.gantt-grid{--label-width:470px}.card-open{font-size:var(--fs-13)}}@media (max-width:1250px){.board-scroll{padding:17px 18px 0}.board-grid{gap:12px}.board-column{min-width:208px}.view-tabs{padding:0 22px}.view-helper{display:none}.gantt-grid{--label-width:385px;--gday:34px}.gg-left{grid-template-columns:minmax(0,1fr) 57px 43px}.gg-titlebutton .task-code{display:none}.work-toolbar .search-inline input{width:100px}.head-right .small{display:none}.card-open{font-size:var(--fs-12)}.head-right .avatar-stack{display:flex}}@media (max-width:760px){html{scrollbar-gutter:auto}:root{--side-w:0px}.page-head{padding:20px 16px 17px}.page-head h1{font-size:var(--fs-21)}.page-head .head-right .avatar-stack{display:none}.page-description{max-width:330px;font-size:var(--fs-10)}.view-tabs{padding:0 16px;gap:24px;min-height:42px}.view-tab{font-size:var(--fs-11);gap:5px}.view-tab .ico{width:13px;height:13px}.view-tabs .grow{display:none}.work-toolbar{padding:10px 16px;gap:10px}.work-toolbar .filter-controls{width:100%;flex-wrap:nowrap;overflow-x:auto;padding-bottom:2px}.work-toolbar .select-wrap{flex-shrink:0}.work-toolbar .select-wrap select{max-width:104px;font-size:var(--fs-10)}.work-toolbar .filter-count,.work-toolbar .search-inline{display:none}.work-toolbar .view-controls{width:100%}.work-toolbar .view-controls:empty{display:none}.board-scroll{padding:16px 14px 0;scroll-snap-type:x proximity;min-height:350px}.board-grid{gap:13px}.board-column{flex:0 0 286px;min-width:286px;scroll-snap-align:start}.board-col-head{font-size:var(--fs-12)}.kanban-card{padding:14px}.card-open{font-size:var(--fs-13)}.card-project>span:last-child{max-width:185px}.card-code,.card-date,.category-tag,.card-progress,.card-blocker{font-size:var(--fs-10)}.card-footer .readonly{font-size:var(--fs-9)}.prototype-badge{display:none}.top-actions .btn{min-height:30px;font-size:var(--fs-10)}.topbar .top-actions>.ib[data-action=theme]{display:none}.list-scroll{max-height:none}.task-table td:first-child,.task-table th:first-child{padding-left:16px}.gantt-grid{--label-width:254px;--gday:34px}.gg-left{grid-template-columns:minmax(0,1fr) 30px}.gg-left>.gg-owner{justify-content:center}.gg-owner .owner-name,.gg-percent,.gg-head-percent{display:none}.gg-left>div:first-child{padding-left:14px}.gg-titlebutton{gap:6px;font-size:var(--fs-10)}.gg-bar-label{font-size:var(--fs-8);padding:0 6px}.gantt-statusbar{padding:9px 16px;font-size:var(--fs-9);gap:8px}.gantt-statusbar .desktop-only{display:none}.gantt-scroll{min-height:320px}.embedded-cal-top{padding:9px 16px;flex-wrap:wrap}.embedded-cal-top .calendar-legend{margin-left:0;width:100%;margin-top:6px;gap:6px}.drawer{width:100vw;max-width:100vw}.drawer .dialog-body{padding:19px 18px}.drawer-title{font-size:var(--fs-20)}.task-meta{padding:13px;gap:16px 12px}.drawer .task-meta .meta-item{font-size:var(--fs-11)}.editor-tools button{font-size:var(--fs-9)}.view-tabs:has(.view-helper){justify-content:flex-start}.view-helper{display:none}.footer-note span{font-size:var(--fs-9);line-height:1.8}.login-preview{padding:28px 23px}.settings-metrics{gap:5px}.metric-mini{padding:10px 7px}.settings-metrics strong{font-size:var(--fs-15)}.gantt-scroll .gg-left{position:sticky}.top-actions .version{display:none}}.gg-months>div{white-space:nowrap;overflow:hidden;text-overflow:clip}.toast.show:has(.undo-button){pointer-events:auto}@media (max-width:760px){.board-scroll{scroll-padding-inline:14px}}.issue-strip{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:14px 28px;border-bottom:1px solid var(--line)}.issue-strip-caption{font-size:var(--fs-10);color:var(--muted);margin-right:4px}.owner-chip{display:flex;align-items:center;gap:7px;padding:6px 9px;border:1px solid var(--line);border-radius:7px;font-size:var(--fs-10);color:var(--secondary);background:var(--bg)}.owner-chip:hover,.owner-chip.active{background:var(--accent-soft);border-color:color-mix(in srgb,var(--accent) 24%,var(--line))}.owner-chip .avatar{width:19px;height:19px;font-size:var(--fs-8)}.owner-chip .oc-num{font-variant-numeric:tabular-nums;font-weight:600;color:var(--ink);font-size:var(--fs-11)}.owner-chip .oc-zero{color:var(--muted);font-weight:400}.owner-chip .oc-hot{color:var(--red);font-size:var(--fs-9)}.owner-chip .oc-late{color:var(--amber);font-size:var(--fs-9)}.issue-scroll{overflow:auto;scrollbar-width:thin;min-height:320px}.issue-board{display:flex;gap:15px;padding:19px 24px 12px;align-items:stretch;min-width:100%;height:100%}.issue-column{flex:1 0 258px;min-width:258px;display:flex;flex-direction:column;min-height:0;border-radius:8px}.issue-col-head{display:flex;align-items:center;gap:8px;padding:0 3px 12px;font-size:var(--fs-12);font-weight:600;flex-shrink:0}.issue-col-head .count{font-size:var(--fs-10);color:var(--muted);font-weight:450}.issue-col-head .avatar{width:21px;height:21px;font-size:var(--fs-9)}.issue-col-head .ib{width:23px;height:23px;margin-left:auto}.issue-col-head .ib .ico{width:13px;height:13px}.issue-cards{flex:1;min-height:180px;overflow-y:auto;scrollbar-width:thin;padding:2px 2px 24px;border-radius:7px;outline:1px dashed transparent;transition:background .1s}.issue-column.dragover .issue-cards{background:var(--accent-soft);outline-color:var(--accent)}.issue-card{position:relative;border:1px solid color-mix(in srgb,var(--strong-line) 72%,var(--bg));border-left:3px solid var(--sev);border-radius:8px;background:var(--bg);margin-bottom:8px;padding:10px 10px 8px;box-shadow:0 1px 2px #00000004;transition:border-color .13s,box-shadow .13s,transform .13s}.issue-card:hover{box-shadow:0 3px 12px #2621370a;border-color:color-mix(in srgb,var(--sev) 45%,var(--strong-line))}.issue-card[draggable=true]{cursor:grab}.issue-card.dragging{opacity:.34;transform:scale(.98)}.issue-card.is-closed{background:var(--subtle)}.issue-card.is-closed .card-open{color:var(--secondary)}.issue-card .card-top{margin-bottom:9px}.sev-tag{display:inline-flex;align-items:center;gap:4px;font-size:var(--fs-9);padding:1px 5px;border-radius:4px;color:var(--sev);background:color-mix(in srgb,var(--sev) 11%,var(--bg));border:1px solid color-mix(in srgb,var(--sev) 26%,var(--bg));white-space:nowrap}.state-tag{display:inline-flex;align-items:center;gap:5px;font-size:var(--fs-9);padding:2px 6px;border-radius:4px;color:var(--st);background:color-mix(in srgb,var(--st) 10%,var(--bg));border:1px solid color-mix(in srgb,var(--st) 24%,var(--bg));white-space:nowrap}.state-tag .dot{width:5px;height:5px}.issue-link{display:flex;align-items:center;gap:5px;font-size:var(--fs-9);color:var(--muted);margin-top:9px;min-width:0}.issue-link .ico{width:10px;height:10px;flex-shrink:0}.issue-card .card-footer{margin-top:11px;padding-top:9px;gap:7px}.issue-due{display:inline-flex;align-items:center;gap:4px;font-size:var(--fs-9);color:var(--muted);white-space:nowrap}.issue-due .ico{width:11px;height:11px}.issue-due.late{color:var(--red)}.issue-due.soon{color:var(--amber)}.issue-chipnum{font-size:var(--fs-9);color:var(--muted);display:inline-flex;align-items:center;gap:3px}.issue-chipnum .ico{width:11px;height:11px}.shared-mark{font-size:var(--fs-8);color:var(--accent);border:1px solid color-mix(in srgb,var(--accent) 30%,var(--line));border-radius:4px;padding:1px 4px}.issue-empty{font-size:var(--fs-10);color:var(--muted);text-align:center;border:1px dashed var(--line);padding:30px 8px;border-radius:7px;margin:2px 0 10px}.issue-table{width:100%;border-collapse:separate;border-spacing:0;table-layout:fixed;min-width:1020px}.issue-table thead{position:sticky;top:0;z-index:4}.issue-table th{font-size:var(--fs-10);font-weight:450;color:var(--muted);text-align:left;background:var(--subtle);border-bottom:1px solid var(--line);height:34px;padding:0 12px;white-space:nowrap}.issue-table td{font-size:var(--fs-11);padding:0 12px;height:40px;border-bottom:1px solid var(--line);color:var(--secondary);vertical-align:middle}.issue-table tr:hover td{background:var(--subtle)}.issue-table th:first-child,.issue-table td:first-child{padding-left:28px}.issue-title-btn{display:flex;align-items:center;gap:9px;text-align:left;padding:5px 0;width:100%;min-width:0}.issue-title-btn .ellipsis{font-size:var(--fs-11);font-weight:500;color:var(--ink)}.issue-title-btn:hover .ellipsis{color:var(--accent)}.issue-table .code,.mini-issue .code{font-size:var(--fs-9);color:var(--muted);font-variant-numeric:tabular-nums;flex-shrink:0;width:52px}.issue-head-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:10px 0 18px}.issue-meta{display:grid;grid-template-columns:1fr 1fr;gap:15px 20px;background:var(--subtle);border:1px solid var(--line);border-radius:7px;padding:15px;margin-bottom:18px}.issue-body-box{font-size:var(--fs-12);color:var(--secondary);line-height:1.9;padding:4px 0 16px}.issue-actions{display:flex;gap:7px;flex-wrap:wrap;margin:0 0 20px}.result-box{border-left:3px solid var(--st);background:color-mix(in srgb,var(--st) 7%,var(--bg));border-radius:6px;padding:11px 13px;margin-bottom:18px;font-size:var(--fs-11);line-height:1.8;color:var(--secondary)}.result-box strong{display:block;color:var(--st);font-size:var(--fs-10);margin-bottom:5px;font-weight:600}.share-box{border:1px solid var(--line);border-radius:7px;padding:13px;margin-bottom:20px}.share-box h3{font-size:var(--fs-11);color:var(--muted);font-weight:500;margin-bottom:11px;display:flex;align-items:center;gap:6px}.share-box h3 .ico{width:12px;height:12px}.share-list{display:flex;gap:6px;flex-wrap:wrap}.share-person{display:inline-flex;align-items:center;gap:6px;font-size:var(--fs-10);border:1px solid var(--line);border-radius:20px;padding:3px 9px 3px 3px;color:var(--secondary);background:var(--bg)}.share-person .avatar{width:19px;height:19px;font-size:var(--fs-8)}.share-person.on{background:var(--accent-soft);border-color:color-mix(in srgb,var(--accent) 26%,var(--line));color:var(--accent)}.comment-item{border-left:1px solid var(--line);padding:0 0 20px 18px;margin-left:9px;position:relative}.comment-item:before{content:"";position:absolute;left:-4px;top:5px;width:7px;height:7px;background:var(--strong-line);border:2px solid var(--bg);border-radius:50%}.comment-item.mine:before{background:var(--accent)}.comment-item .row{font-size:var(--fs-10);color:var(--muted);margin-bottom:8px}.comment-item .ib{width:20px;height:20px}.comment-body{font-size:var(--fs-11);line-height:1.9;color:var(--secondary)}.comment-form{border:1px solid var(--line);border-radius:7px;padding:11px;margin-top:6px;background:var(--bg)}.comment-form textarea{width:100%;border:0;resize:vertical;min-height:62px;font-size:var(--fs-11);line-height:1.8;outline:none;background:var(--bg);padding:2px}.comment-form .row{margin-top:9px;justify-content:flex-end;gap:8px}.comment-form .hint{margin-right:auto;font-size:var(--fs-9);color:var(--muted);line-height:1.7}.event-item{display:flex;gap:9px;align-items:flex-start;font-size:var(--fs-10);color:var(--secondary);padding:7px 0;border-bottom:1px solid var(--line);line-height:1.7}.event-item .avatar{width:17px;height:17px;font-size:var(--fs-7);margin-top:2px}.event-item .when{margin-left:auto;color:var(--muted);white-space:nowrap}.event-item .reason{display:block;color:var(--muted)}.task-issue-box{border:1px solid color-mix(in srgb,var(--amber) 26%,var(--line));border-radius:7px;padding:12px 13px;margin:18px 0 4px}.task-issue-box h3{font-size:var(--fs-11);font-weight:500;color:var(--secondary);margin-bottom:11px;display:flex;align-items:center;gap:7px}.task-issue-box h3 .ico{width:13px;height:13px;color:var(--amber)}.task-issue-box h3 .btn{margin-left:auto;min-height:26px;padding:4px 8px;font-size:var(--fs-10)}.mini-issue{display:flex;align-items:center;gap:8px;width:100%;text-align:left;padding:8px 7px;border-radius:5px;font-size:var(--fs-11);border-left:2px solid var(--sev)}.mini-issue:hover{background:var(--hover)}.mini-issue .ellipsis{min-width:0;color:var(--ink)}.report-issue-chip{display:flex;align-items:center;gap:6px;width:100%;text-align:left;font-size:var(--fs-10);padding:5px 6px;border-radius:4px;margin-bottom:5px;border-left:2px solid var(--sev);background:color-mix(in srgb,var(--sev) 6%,var(--bg))}.report-issue-chip:hover{background:color-mix(in srgb,var(--sev) 13%,var(--bg))}.card-issue-badge{display:inline-flex;align-items:center;gap:3px;font-size:var(--fs-9);color:var(--amber);padding:1px 5px;border-radius:4px;background:color-mix(in srgb,var(--amber) 9%,var(--bg));border:1px solid color-mix(in srgb,var(--amber) 25%,var(--bg))}.card-issue-badge .ico{width:10px;height:10px}.gg-issue{position:absolute;top:5px;width:9px;height:9px;border-radius:50%;background:var(--red);border:2px solid var(--bg);z-index:5;cursor:pointer}.gg-issue.hold{background:var(--amber)}.my-issues{margin:0 28px 18px;border:1px solid var(--line);border-radius:8px;padding:14px 16px}.my-issues h3{font-size:var(--fs-11);font-weight:600;display:flex;align-items:center;gap:7px;margin-bottom:10px}.my-issues h3 .ico{width:13px;height:13px;color:var(--red)}.my-issues h3 .muted{font-weight:400}.my-issues .grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:6px 14px}.proj-issues{margin:0 28px 18px;border:1px solid var(--line);border-radius:8px;padding:14px 16px}.proj-issues h3{font-size:var(--fs-11);font-weight:600;margin-bottom:10px;display:flex;gap:7px;align-items:center}.proj-owner-row{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:10px}.notif-btn{position:relative}.notif-badge{position:absolute;top:2px;right:2px;min-width:14px;height:14px;padding:0 3px;border-radius:7px;background:var(--red);color:#fff;font-size:var(--fs-8);font-weight:600;display:grid;place-items:center;line-height:1}.notif-item{display:flex;gap:10px;align-items:flex-start;width:100%;text-align:left;padding:11px 10px;border-radius:6px;border:1px solid var(--line);margin-bottom:7px;font-size:var(--fs-11)}.notif-item:hover{background:var(--hover)}.notif-item.unread{border-left:3px solid var(--accent);background:color-mix(in srgb,var(--accent) 5%,var(--bg))}.notif-item .kind{font-size:var(--fs-9);color:var(--muted);margin-bottom:3px}.notif-item .when{margin-left:auto;font-size:var(--fs-9);color:var(--muted);white-space:nowrap}.notif-item .avatar{width:21px;height:21px;font-size:var(--fs-8);margin-top:1px}@media (max-width:1250px){.issue-board{padding:16px 18px 0}.issue-column{min-width:238px}.issue-strip{padding:12px 22px}.my-issues,.proj-issues{margin:0 22px 16px}}@media (max-width:760px){.issue-strip{padding:11px 16px;gap:6px;flex-wrap:nowrap;overflow-x:auto}.issue-strip-caption{display:none}.owner-chip{flex-shrink:0;font-size:var(--fs-9)}.issue-board{padding:15px 14px 0;gap:12px;scroll-snap-type:x proximity}.issue-column{flex:0 0 282px;min-width:282px;scroll-snap-align:start}.issue-table td:first-child,.issue-table th:first-child{padding-left:16px}.issue-meta{grid-template-columns:1fr;gap:12px;padding:13px}.comment-item{padding-left:14px}.my-issues,.proj-issues{margin:0 16px 14px}.my-issues .grid{grid-template-columns:1fr}}.navlink,.quick-search,.profile-switch,.navlink:hover{text-decoration:none}.profile-switch .small,.profile-switch .tiny{display:block}.profile-switch>span:nth-child(2){min-width:0;flex:1}.topbar-slot{display:flex;align-items:center;gap:7px}.topbar-slot:empty{display:none}@media (max-width: 560px){.topbar-slot .btn{padding-left:8px;padding-right:8px}.topbar-slot .btn .btn-label{display:none}}.notif-wrap{position:relative;display:inline-flex}.notif-panel{position:absolute;top:calc(100% + 8px);right:0;width:360px;max-width:calc(100vw - 24px);background:var(--bg);border:1px solid var(--strong-line);border-radius:10px;box-shadow:var(--shadow);z-index:120;display:flex;flex-direction:column;overflow:hidden}.notif-panel-head{display:flex;align-items:center;gap:8px;padding:10px 13px;border-bottom:1px solid var(--line)}.notif-panel-head strong{font-size:var(--fs-12)}.notif-panel-head .btn{padding:4px 7px;min-height:26px;font-size:var(--fs-10)}.notif-list{padding:8px;max-height:380px;overflow:auto}.notif-list .empty{padding:26px 12px}.notif-state{padding:18px 10px;text-align:center}.notif-item .kind,.notif-item .notif-text{display:block}.notif-item .notif-text{line-height:1.7;overflow-wrap:anywhere}.notif-item>.grow{min-width:0}.notif-panel-foot{padding:8px 13px;border-top:1px solid var(--line);background:var(--subtle);line-height:1.8}.profile-wrap{position:relative}.profile-menu{position:absolute;bottom:calc(100% + 6px);left:0;right:0;background:var(--bg);border:1px solid var(--strong-line);border-radius:8px;box-shadow:var(--shadow);padding:6px;z-index:120}.profile-menu-head{padding:7px 9px 8px;border-bottom:1px solid var(--line);margin-bottom:6px;overflow-wrap:anywhere}.profile-menu-item{display:flex;align-items:center;gap:8px;width:100%;text-align:left;padding:6px 9px;border-radius:5px;font-size:var(--fs-11);color:var(--secondary)}.profile-menu-item:hover{background:var(--hover);color:var(--ink)}.profile-menu-item .ico{width:13px;height:13px;color:var(--muted)}.profile-menu-item .tiny{margin-left:auto}.sidebar-backdrop{display:none}.auth-page{min-height:100dvh;display:grid;place-items:center;padding:24px 14px;background:var(--subtle)}.auth-card{width:460px;max-width:100%;background:var(--bg);border:1px solid var(--strong-line);border-radius:10px;box-shadow:var(--shadow)}.auth-card .login-preview{padding:38px 34px 32px}.auth-card .form-error{margin:0 0 12px}.auth-actions{display:flex;justify-content:center;gap:7px;margin-top:20px}.navsection .navsection-title{flex:1;min-width:0;justify-content:flex-start;gap:5px;padding:0;min-height:0;font:inherit;color:inherit;text-align:left}.navsection .navsection-chevron{margin-left:-5px}.navsection .navsection-chevron .ico{width:12px;height:12px}.sidebar-projects .navsection.project-group-head{padding:10px 9px 3px;font-size:var(--fs-14);font-weight:600;color:var(--secondary)}.sidebar-projects>.project-year-group:first-child .navsection.project-group-head{padding-top:2px}.sidebar-projects .navsection.project-group-head.kind{padding:5px 9px 2px 15px;font-size:var(--fs-13);color:var(--muted);font-weight:550}.sidebar{overflow:hidden}.sidebar>.workspace-name,.sidebar>.quickbar,.sidebar>.navlink,.sidebar>.navsection,.sidebar>.sidebar-bottom{flex:none}.sidebar>.sidebar-projects.sidebar-fill{flex:1 1 auto;min-height:0;max-height:none;overflow-y:auto}.sidebar>.sidebar-projects:not(.sidebar-fill){flex:0 1 auto;min-height:0;max-height:min(240px,30vh);overflow-y:auto}@media (max-width: 760px){.sidebar-backdrop{display:block;position:fixed;top:0;right:0;bottom:0;left:0;z-index:80;background:#15152130;border:0}.notif-panel{position:fixed;top:54px;right:8px;left:8px;width:auto}.auth-card .login-preview{padding:28px 23px}}.sidebar-projects,.sidebar,.scroll,.board-cards,.issue-scroll,.list-scroll,.gantt-scroll,.inspector-scroll,dialog,.command-results{scrollbar-color:var(--strong-line) transparent}:root{--side-w: 250px}@media (min-width: 1700px){:root{--side-w: 250px}}@media (max-width: 760px){:root{--side-w: 0px}.sidebar{width:250px}}.sidebar-projects>.project-year-group+.project-year-group{margin-top:8px;border-top:1px solid var(--line)}.sidebar-projects .project-kind-group{margin:2px 0 4px 12px;padding-left:6px;border-left:1px dashed var(--strong-line)}.sidebar-projects .navsection.project-group-head.kind{padding-left:6px}.sidebar-projects .project-kind-group .navlink.fav{padding-left:16px}.gg-bar{background:color-mix(in srgb,var(--project) 12%,var(--bg))}.gg-fill{background:var(--project);border-radius:4px 0 0 4px}.gg-bar.done .gg-fill{border-radius:4px}.gg-bar-label{color:var(--ink);font-weight:550}.gg-bar.done{opacity:1;background:var(--project);border-color:var(--project)}.gg-bar.overdue{border-color:var(--red);border-width:1.5px}.gantt-grid{--label-width: 420px;--owner-max: 170px}.gg-left{grid-template-columns:minmax(0,1fr) fit-content(var(--owner-max)) 52px}.gg-left>.gg-owner{padding:0 8px 0 6px;gap:6px;line-height:1.35;justify-content:flex-end;max-width:var(--owner-max)}.gg-owner .owner-name{min-width:0;white-space:normal;overflow-wrap:anywhere;word-break:keep-all;overflow:hidden;max-height:2.7em}.gg-owner-avatars{display:inline-flex;align-items:center;flex-shrink:0}.gg-owner-avatars .avatar+.avatar{margin-left:-7px;border:1.5px solid var(--bg)}.gg-head-percent{white-space:nowrap;text-align:right}.gg-head .gg-left>div:nth-child(2){white-space:nowrap;text-align:right}.gg-head-time{cursor:grab;touch-action:pan-y;-webkit-user-select:none;user-select:none}.gg-head-time.dragging{cursor:grabbing}.gg-head .gg-left>.gg-head-first{display:flex;align-items:center;gap:6px;padding-left:8px}.gg-head-nav{display:inline-flex;align-items:center;gap:1px;flex-shrink:0}.gg-head-nav .ib{width:21px;height:21px;padding:3px}.gg-head-nav .ico{width:12px;height:12px}@media (min-width: 1700px){.gantt-grid{--label-width: 470px;--owner-max: 190px}}@media (max-width: 1250px){.gantt-grid{--label-width: 372px;--owner-max: 140px}.gg-left{grid-template-columns:minmax(0,1fr) fit-content(var(--owner-max)) 46px}.gg-left>.gg-owner{padding:0 6px 0 5px;gap:5px}}@media (max-width: 760px){.gantt-grid{--label-width: 254px;--owner-max: 30px}.gg-left{grid-template-columns:minmax(0,1fr) 30px}.gg-left>.gg-owner{padding:0 2px;gap:0;justify-content:center}.gg-head .gg-left>.gg-head-first{padding-left:6px}}.progress-track{height:5px;border-radius:3px;background:color-mix(in srgb,var(--strong-line) 55%,var(--bg))}.progress-track>i{border-radius:3px;min-width:0}.progress-track.is-done>i{background:var(--green)!important}.card-subrow>.progress-track{width:34px;margin-left:auto}.card-subrow>.progress-track+.card-progress{margin-left:6px}.md-mention{color:var(--accent);background:var(--accent-soft);border-radius:4px;padding:0 3px;font-weight:550;white-space:nowrap}.editor-count{font-size:var(--fs-9);color:var(--muted);font-variant-numeric:tabular-nums;white-space:nowrap}.editor-count.over{color:var(--red)}.saving-tag{display:inline-flex;align-items:center;gap:4px;font-size:var(--fs-9);color:var(--accent);border:1px solid color-mix(in srgb,var(--accent) 28%,var(--line));background:var(--accent-soft);border-radius:4px;padding:1px 5px;white-space:nowrap}.md-blocked{font-size:var(--fs-9);color:var(--muted);border:1px dashed var(--strong-line);border-radius:4px;padding:2px 5px;display:inline-block}.richtext ul.md-list{list-style:none;margin:6px 0;padding:0}.richtext ol.md-list{list-style:decimal;margin:6px 0;padding-left:20px}.richtext ol.md-list>li.text-bullet{padding-left:0}.richtext ol.md-list>li.text-bullet:before{display:none}.richtext li.text-check:before{display:none}.richtext li.text-check{padding-left:0}.richtext .md-quote{margin:8px 0;padding:4px 0 4px 11px;border-left:2px solid var(--strong-line);color:var(--muted)}.richtext .md-code{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.92em;background:var(--subtle);border:1px solid var(--line);border-radius:4px;padding:1px 4px}.richtext .md-pre{background:var(--subtle);border:1px solid var(--line);border-radius:6px;padding:10px 12px;overflow:auto;margin:10px 0;line-height:1.8}.richtext .md-pre .md-code{background:none;border:0;padding:0}.richtext .md-hr{border:0;border-top:1px solid var(--line);margin:14px 0}.lt-issues{font-size:var(--fs-10);color:var(--muted);font-variant-numeric:tabular-nums}.date-holiday{position:absolute;top:9px;right:34px;left:6px;text-align:right;font-size:var(--fs-9);line-height:1.6;color:var(--red);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;pointer-events:none}.week-day-holiday{max-width:100%;font-size:var(--fs-9);line-height:1.6;color:var(--red);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.inspector-holiday{font-size:var(--fs-10);line-height:1.7;color:var(--red);margin-bottom:4px}@media (max-width: 1250px){.date-holiday{font-size:var(--fs-8);right:32px}}@media (max-width: 760px){.date-holiday{top:7px;right:27px;left:3px;font-size:var(--fs-8)}.week-day-holiday{font-size:var(--fs-8)}}@media (min-width: 1001px){.calendar-content>.calendar-inspector{position:relative;overflow:hidden;padding:0}.calendar-inspector>.inspector-scroll{position:absolute;top:0;right:0;bottom:0;left:0;overflow-y:auto;overscroll-behavior:contain;padding:22px 18px;scrollbar-width:thin;scrollbar-color:var(--line) transparent}}@media (min-width: 1001px) and (max-width: 1250px){.calendar-inspector>.inspector-scroll{padding:20px 13px}}:root{--hier-0: 12px;--hier-step: 20px;--hier-1: calc(var(--hier-0) + var(--hier-step));--hier-2: calc(var(--hier-0) + var(--hier-step) * 2)}@media (max-width: 760px){:root{--hier-0: 8px;--hier-step: 12px}}.task-table.lt-grouped>tbody>tr.lt-group>td{padding:0!important}.task-table.lt-grouped>tbody>tr.lt-group>td>button{width:100%;height:32px;padding:0 12px 0 var(--hier-0)}.task-table.lt-grouped>tbody>tr.lt-group>td>button:hover{background:var(--hover)}.task-table.lt-grouped>thead>tr>th:first-child,.task-table.lt-grouped>tbody>tr:not(.lt-group):not(.lt-substatus)>td:first-child{padding-left:var(--hier-2)}.lt-substatus td{background:color-mix(in srgb,var(--subtle) 50%,var(--bg))!important;height:27px;font-size:var(--fs-10);color:var(--muted);padding:0!important}.lt-substatus td>button{display:flex;align-items:center;gap:7px;width:100%;height:27px;text-align:left;padding:0 12px 0 var(--hier-1);color:inherit;font-size:inherit}.lt-substatus td>button:hover{background:var(--hover)}.lt-substatus td>button>.ico{width:11px;height:11px}.lt-substatus .statusmark{width:9px;height:9px}.lt-substatus .counter{font-size:var(--fs-9);color:var(--muted);margin-left:3px}.gantt-grid.gg-grouped .gg-group .gg-left>div{padding:0}.gantt-grid.gg-grouped .gg-group .gg-left>div>button{width:100%;height:36px;padding:0 10px 0 var(--hier-0)}.gantt-grid.gg-grouped .gg-group .gg-left>div>button:hover{background:var(--hover)}.gantt-grid.gg-grouped .gg-row>.gg-left>div:first-child{padding-left:var(--hier-2)}.gg-substatus{height:28px;display:flex;background:color-mix(in srgb,var(--subtle) 50%,var(--bg));border-bottom:1px solid var(--line)}.gg-substatus .gg-left{background:color-mix(in srgb,var(--subtle) 50%,var(--bg));grid-template-columns:1fr;z-index:7}.gg-substatus .gg-left>div{display:flex;align-items:center;padding:0;font-size:var(--fs-10);color:var(--muted)}.gg-substatus .gg-left>div>button{display:flex;align-items:center;gap:7px;width:100%;height:28px;text-align:left;padding:0 10px 0 var(--hier-1);color:inherit;font-size:inherit}.gg-substatus .gg-left>div>button:hover{background:var(--hover)}.gg-substatus .gg-left>div>button>.ico{width:11px;height:11px}.gg-substatus .statusmark{width:9px;height:9px}.gg-substatus .count{font-size:var(--fs-9);color:var(--muted)}.gg-substatus .gg-group-tail{background:color-mix(in srgb,var(--subtle) 50%,var(--bg))}.card-blocker.row-blocker{display:inline-flex;align-items:center;max-width:100%;min-width:0;margin-top:2px;padding:1px 5px;line-height:1.5;font-size:var(--fs-9)}.card-blocker.row-blocker>.ico{margin-top:0}.card-blocker.row-blocker>.ellipsis{min-width:0;font-size:inherit;font-weight:450;color:inherit}.gg-titlecell.has-blocker{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:1px}.gg-row.has-blocker{height:auto;min-height:58px}.gg-row.has-blocker .gg-bar{top:calc(50% - 11.5px)}.sub-mark{flex-shrink:0;color:var(--muted);font-size:var(--fs-10);line-height:1;opacity:.8}.task-table tr.task-sub .lt-task,.gg-row.task-sub .gg-titlebutton{padding-left:var(--hier-step)}.subtask-badge{flex-shrink:0;color:var(--secondary);background:var(--subtle);border:1px solid var(--line);border-radius:4px;padding:1px 5px;font-size:var(--fs-9);font-weight:450;line-height:1.5;white-space:nowrap}.kanban-card .card-parent{display:flex;align-items:center;gap:4px;min-width:0;margin-bottom:3px;font-size:var(--fs-9);color:var(--muted)}.issue-form .scope-segment{width:100%;gap:3px}.issue-form .scope-segment button{flex:1 1 0;min-width:0;white-space:nowrap;font-size:var(--fs-11);min-height:29px;padding:5px 8px}.issue-form .scope-segment button.active{font-weight:550}.issue-form .field select{width:100%;max-width:100%;min-width:0;text-overflow:ellipsis}.issue-form .task-field{min-width:0}.issue-form .task-full{color:var(--secondary);white-space:normal;overflow-wrap:anywhere}@media (max-width: 760px){.issue-form .scope-segment button{font-size:var(--fs-10);padding:5px 3px;letter-spacing:-.2px}.issue-form .scope-row{grid-template-columns:1fr}}.drawer-section-title.issue-history-toggle{display:flex;align-items:center;gap:6px;width:100%;text-align:left;padding:5px 0;margin:0;border-radius:4px}.drawer-section-title.issue-history-toggle:hover,.drawer-section-title.issue-history-toggle:focus-visible{color:var(--ink)}.drawer-section-title.issue-history-toggle .ico{width:13px;height:13px;flex-shrink:0;color:var(--muted)}.issue-history-list{margin-top:8px}.comment-replies{margin-left:27px;padding-left:13px;border-left:2px solid var(--line)}.comment-replies .comment-item{border-left:0;margin-left:0;padding-left:12px;padding-bottom:16px}.comment-replies .comment-item:before{content:none}.comment-actions{margin-top:6px}.comment-reply-link{padding:2px 6px;margin-left:-6px;border-radius:4px;font-size:var(--fs-10);color:var(--muted);background:none;border:0;cursor:pointer}.comment-reply-link:hover,.comment-reply-link:focus-visible{color:var(--accent)}.comment-reply-link[aria-expanded=true]{color:var(--accent)}.comment-form.comment-reply-form{margin-top:9px}.comment-form.comment-reply-form textarea{min-height:48px}@media (max-width: 760px){.comment-replies{margin-left:14px;padding-left:9px}}.comment-edited{font-size:var(--fs-10);color:var(--muted)}.comment-form.comment-edit-form{margin-top:6px}.comment-form.comment-edit-form textarea{min-height:60px}.quick-log{border:1px solid var(--line);border-radius:7px;background:var(--subtle);padding:12px;margin-bottom:18px}.quick-log .quick-log-row{display:flex;flex-wrap:wrap;align-items:flex-start;gap:12px}.quick-log .quick-log-main{flex:1 1 250px;min-width:0;margin-bottom:0}.quick-log .quick-log-main textarea{min-height:62px}.quick-log .quick-log-side{flex:0 0 auto;display:flex;flex-wrap:wrap;align-items:flex-end;gap:9px}.quick-log .quick-log-side .field{margin-bottom:0}.quick-log .quick-log-date{width:132px}.quick-log .quick-log-md-row{display:flex;align-items:center;gap:6px}.quick-log .quick-log-md-row input{width:68px}.quick-log .quick-log-pct{font-size:var(--fs-10);color:var(--muted);white-space:nowrap}.quick-log .quick-log-save{min-height:32px}.quick-log .quick-log-hint{font-size:var(--fs-10);color:var(--muted);line-height:1.8;margin-top:9px}.quick-log .form-error{margin:9px 0 0}@media (max-width: 760px){.quick-log .quick-log-side{flex:1 1 100%}}.task-form .scope-segment{width:100%;gap:3px}.task-form .scope-segment button{flex:1 1 0;min-width:0;white-space:nowrap;font-size:var(--fs-11);min-height:29px;padding:5px 8px}.task-form .scope-segment button.active{font-weight:550}.task-form .assignee-picker{display:flex;flex-wrap:wrap;gap:6px}.task-form .assignee-picker .member-chip{font-size:var(--fs-11)}.task-form .assignee-picker .member-chip:disabled{cursor:default;opacity:1}.task-form .assignee-readonly{min-height:29px;color:var(--secondary);font-size:var(--fs-11)}@media (max-width: 760px){.task-form .scope-segment button{font-size:var(--fs-10);padding:5px 3px;letter-spacing:-.2px}.task-form .scope-row{grid-template-columns:1fr}}.task-form .hold-row{margin-top:2px}.task-form .hold-hint{margin:4px 0 0;font-size:var(--fs-10)}@media (max-width: 760px){.task-form .hold-row{grid-template-columns:1fr}}.task-form .parent-field select:disabled{cursor:not-allowed;color:var(--muted)}.task-form .parent-extend-hint{color:var(--amber)}.report-sheet{overflow:visible}.report-summary{display:flex;align-items:center;gap:8px;min-height:30px;font-size:var(--fs-10);color:var(--muted)}.report-summary .pill{font-weight:400;font-size:var(--fs-9)}.report-summary-stat{white-space:nowrap}.report-head.report-cols,.report-row.report-cols{min-width:0;row-gap:0;column-gap:16px;align-items:start;grid-template-columns:minmax(104px,.7fr) minmax(150px,1fr) minmax(92px,.55fr) 72px minmax(180px,1.6fr) minmax(150px,1.3fr) minmax(130px,1.05fr)}.report-head.report-cols{position:sticky;top:0;z-index:3;background:var(--bg)}.report-head.report-cols>span{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.report-row.report-cols{border-top:1px solid var(--line);border-bottom:0;padding:13px 0 14px}.report-row.report-cols>*{padding:0;border:0;border-radius:0;background:none;align-self:start}.report-head.report-cols+.report-row.report-cols{border-top:0}.report-sheet>.report-row.report-cols:last-child{border-bottom:1px solid var(--line)}.report-row.report-cols:hover{background:var(--hover)}.report-cols .report-entry{margin-bottom:10px;padding:0;border:0;border-radius:0;background:none}.report-cols .report-entry:last-child{margin-bottom:0}.report-cols .report-entry+.report-entry{padding-top:10px;border-top:1px solid var(--line)}.report-cols .entry-head>.report-entry-day{font-size:var(--fs-9);font-weight:650;color:var(--secondary);padding:1px 5px}.report-cols .entry-head>.report-entry-md{font-size:var(--fs-9);font-weight:650;color:var(--secondary);padding:1px 5px;border-color:var(--strong-line)}.report-summary .report-summary-md{font-weight:650;color:var(--ink)}.report-cell-body{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.report-head.report-cols.report-grid-cols,.report-row.report-cols.report-grid-cols{column-gap:0;grid-template-columns:minmax(132px,.95fr) repeat(7,minmax(104px,1fr)) minmax(140px,1.15fr)}.report-head.report-cols.report-grid-cols>*,.report-row.report-cols.report-grid-cols>*{min-width:0;padding:0 8px;border-left:1px solid var(--line)}.report-head.report-cols.report-grid-cols>*:first-child,.report-row.report-cols.report-grid-cols>*:first-child{padding-left:0;border-left:0}.report-grid-day{font-size:var(--fs-10)}.report-cols.report-grid-cols>.is-weekend{background:var(--subtle)}.report-grid-lead{font-size:var(--fs-10);color:var(--secondary);line-height:1.6}.report-grid-name{font-weight:650;color:var(--ink);overflow-wrap:anywhere}.report-grid-lead .pill{font-size:var(--fs-9)}.report-grid-md,.report-grid-none{display:block;margin-top:3px;font-size:var(--fs-9);color:var(--muted);white-space:nowrap}.report-grid-none{color:var(--amber)}.report-grid-cell{font-size:var(--fs-10);color:var(--secondary);line-height:1.55;overflow-wrap:anywhere}.report-grid-blank{display:block;color:var(--muted);opacity:.35}.report-grid-project{font-size:var(--fs-9);color:var(--muted);line-height:1.5;margin-bottom:1px}.report-grid-item-head{gap:4px;flex-wrap:wrap;margin-bottom:4px}.report-grid-task{font-size:var(--fs-10);font-weight:650;color:var(--ink);max-width:100%}.report-grid-item-head>.avatar{width:17px;height:17px;font-size:var(--fs-7)}.report-grid-rev{font-size:var(--fs-7);color:var(--muted)}.report-grid-acts{display:flex;align-items:center;gap:2px;margin-left:auto}.report-grid-acts .ib{width:20px;height:20px}.report-grid-acts .ib .ico{width:12px;height:12px}.report-grid-text{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;line-clamp:3;overflow:hidden;cursor:pointer;border-radius:4px}.report-grid-text.is-open{display:block;overflow:visible}.report-grid-text:hover{background:var(--hover)}.report-grid-note{margin-top:6px;font-size:var(--fs-9);line-height:1.7}@media (max-width: 1250px){.report-head.report-cols,.report-row.report-cols{column-gap:12px;grid-template-columns:minmax(88px,.65fr) minmax(120px,1fr) minmax(78px,.5fr) 64px minmax(150px,1.6fr) minmax(130px,1.3fr) minmax(110px,1.05fr)}.report-head.report-cols.report-grid-cols,.report-row.report-cols.report-grid-cols{grid-template-columns:minmax(112px,.9fr) repeat(7,minmax(92px,1fr)) minmax(120px,1.1fr)}}@media (max-width: 1000px){.report-sheet{overflow:auto}.report-head.report-cols{position:static}.report-head.report-cols,.report-row.report-cols{min-width:820px}.report-head.report-cols.report-grid-cols,.report-row.report-cols.report-grid-cols{min-width:1040px}.report-cols.report-grid-cols>*:first-child{position:sticky;left:0;z-index:2;background:var(--bg);padding-right:10px;border-right:1px solid var(--line)}}@media (max-width: 760px){.report-sheet{overflow:visible}.report-head.report-cols{display:none}.report-row.report-cols{min-width:0;row-gap:10px;column-gap:12px;grid-template-columns:minmax(0,1fr) auto;padding:15px 0 20px;border-top:0;border-bottom:1px solid var(--line)}.report-sheet>.report-row.report-cols:last-child{border-bottom:0}.report-row.report-cols:hover{background:none}.report-sheet.report-grid{overflow:auto}.report-head.report-cols.report-grid-cols{display:grid;position:static}.report-head.report-cols.report-grid-cols,.report-row.report-cols.report-grid-cols{min-width:1040px;row-gap:0;column-gap:0;grid-template-columns:minmax(112px,.9fr) repeat(7,minmax(92px,1fr)) minmax(120px,1.1fr)}.report-row.report-cols.report-grid-cols{padding:13px 0 14px;border-top:1px solid var(--line);border-bottom:0}.report-head.report-cols.report-grid-cols>*,.report-row.report-cols.report-grid-cols>*{grid-column:auto;grid-row:auto;margin-top:0;padding:0 8px;border-left:1px solid var(--line);border-bottom:0}.report-cols.report-grid-cols>*:first-child{position:sticky;left:0;z-index:2;background:var(--bg);padding-left:0;padding-right:10px;border-left:0;border-right:1px solid var(--line)}.report-sheet.report-grid>.report-row.report-cols:last-child{border-bottom:1px solid var(--line)}}@media print{.report-sheet{overflow:visible}.report-head.report-cols{position:static}.report-head.report-cols,.report-row.report-cols{min-width:0;row-gap:0;column-gap:1%;grid-template-columns:12% 15% 9% 0 23% 20% 15%}.report-row.report-cols:hover{background:none}.report-head.report-cols.report-grid-cols,.report-row.report-cols.report-grid-cols{min-width:0;column-gap:0;grid-template-columns:13% repeat(7,9.4%) 21%}.report-cols.report-grid-cols>*:first-child{position:static}.report-cols.report-grid-cols>.is-weekend{background:none}.report-grid-acts{display:none}.report-grid-text{display:block;overflow:visible}}.wl-lines{display:flex;flex-direction:column;gap:12px}.wl-line{border:1px solid var(--line);border-radius:8px;padding:12px 13px 2px}.wl-line-head{display:flex;align-items:center;gap:8px;margin-bottom:8px}.wl-line-no{font-size:var(--fs-9);color:var(--muted)}.wl-line-head .grow{flex:1}.wl-line-head .ib{width:22px;height:22px}.wl-line-head .ib .ico{width:12px;height:12px}.wl-add{margin-top:10px}.wl-plan{border-top:1px solid var(--line);padding-top:18px;margin-top:5px}.wl-effort-row{display:flex;align-items:center;gap:8px}.wl-effort-input{max-width:96px}.wl-effort-md{font-size:var(--fs-10);color:var(--secondary);white-space:nowrap}.wl-targets{border-top:1px solid var(--line);padding-top:14px;margin-top:12px;margin-bottom:0}.wl-targets-head{display:flex;align-items:center;gap:6px}.wl-targets-head .ico{width:13px;height:13px;color:var(--muted)}.wl-targets-all{min-height:22px;padding:2px 6px;font-size:var(--fs-10)}.issue-lanes{display:flex;flex-direction:column;padding:19px 24px 18px}.issue-lane{border-radius:8px;padding-bottom:4px}.issue-lane+.issue-lane{border-top:1px solid var(--line);padding-top:16px}.issue-lane .issue-col-head{padding-bottom:10px}.issue-lane .issue-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,252px),1fr));gap:10px;align-items:start;flex:none;min-height:0;overflow:visible;padding:2px 2px 8px}.issue-lane .issue-card{margin-bottom:0}.issue-lane .issue-empty{grid-column:1 / -1;margin:0;padding:15px 8px}.issue-lane.dragover .issue-cards{background:var(--accent-soft);outline:1px dashed var(--accent)}@media (max-width: 1250px){.issue-lanes{padding:16px 18px}}@media (max-width: 760px){.issue-lanes{padding:14px}}.issue-strip .owner-chip.active{border-color:var(--accent);color:var(--ink);font-weight:550;box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--accent) 26%,transparent)}.issue-strip .owner-chip.active .oc-num{color:var(--accent)}.ma-grid{display:grid;grid-template-columns:minmax(140px,1fr) 112px 64px 124px 104px;align-items:center;gap:12px}.ma-cell{min-width:0;justify-self:start}.ma-head{padding:2px 11px 6px;font-size:var(--fs-10);color:var(--muted)}.ma-head .ma-cell{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.setting-card .user-option.ma-grid{display:grid}.user-option.ma-grid .ico{margin-left:0}.ma-who{display:flex;align-items:center;gap:9px}.ma-name{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.ma-me{flex-shrink:0}.ma-role .select-wrap{width:100%;padding-left:5px;gap:4px}.ma-role .select-wrap select{flex:1;min-width:0;max-width:none}.ma-status,.ma-display,.ma-actions{display:flex;align-items:center;gap:7px}.ma-actions{justify-content:flex-end}.ma-none{color:var(--muted);font-size:var(--fs-10)}@media (max-width: 760px){.ma-head{display:none}.setting-card .user-option.ma-grid{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.ma-row:after{content:"";order:3;flex-basis:100%;height:0}.ma-who{order:1;flex:1 1 auto}.ma-status{order:2;flex:0 0 auto;margin-left:auto}.ma-role{order:4;flex:0 1 auto;min-width:96px}.ma-display{order:5}.ma-actions{order:6;margin-left:auto}}
