:root{--bg:#faf8f5;--bg-side:#f5f2ee;--surface:#fff;--hover:#0000000a;--border:#e6e3df;--border-input:#988e82;--text:#202020;--text-2:#4a4a4a;--text-3:#6b6b6b;--accent:#c43b2e;--accent-hover:#a83226;--on-accent:#fff;--success:#217c42;--danger:#c6392f;--av-1:#c43b2e;--av-2:#4a6fa5;--av-3:#b548ba;--av-4:#2e836f;--av-5:#9d6c17;--av-6:#815ce6;--av-7:#317e9e;--av-8:#d13d73;--p1:#d1453b;--p2:#c26e00;--p3:#226ee0;--p4:#8a8a8a;--ref-bg:#eef3fc;--ref-text:#1f5fc4;--r-md:6px;--r-btn:8px;--r-lg:12px;--side-w:264px;--side-w-mini:60px;--top-h:52px;--fs-xs:12px;--fs-sm:13px;--fs-md:14px;--fs-lg:16px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:var(--fs-md);color:var(--text);background:var(--bg);line-height:1.45}body{margin:0}*{box-sizing:border-box}.ellipsis{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.brand{white-space:nowrap;align-items:center;gap:8px;font-weight:700;display:flex}.brand-mark{background:var(--accent);width:24px;height:24px;color:var(--on-accent);border-radius:7px;place-items:center;font-size:13px;font-weight:800;display:grid}.field{flex-direction:column;gap:6px;display:flex}.field>span{font-size:var(--fs-sm);color:var(--text-2);font-weight:600}.input{border:1px solid var(--border-input);border-radius:var(--r-btn);background:var(--surface);min-height:36px;color:var(--text);font:inherit;padding:7px 10px}.input:focus{border-color:var(--accent);box-shadow:0 0 0 2px color-mix(in srgb, var(--accent) 22%, transparent);outline:none}.btn{border:1px solid var(--border);border-radius:var(--r-btn);background:var(--surface);min-height:36px;color:var(--text);font:inherit;cursor:pointer;justify-content:center;align-items:center;padding:6px 14px;font-weight:600;text-decoration:none;display:inline-flex}.btn-primary{border-color:var(--accent);background:var(--accent);color:var(--on-accent)}.btn-primary:hover{border-color:var(--accent-hover);background:var(--accent-hover)}.btn-lg{min-height:44px;font-size:var(--fs-lg)}.btn[disabled]{opacity:.5;cursor:not-allowed}.icon-btn{border-radius:var(--r-btn);cursor:pointer;background:0 0;border:0;place-items:center;width:34px;height:34px;display:inline-grid}.icon-btn:hover{background:var(--hover)}.avatar{background:var(--av-1);color:#fff;border-radius:50%;place-items:center;width:24px;height:24px;font-size:11px;font-weight:700;display:inline-grid}.avatar.c2{background:var(--av-2)}.avatar.c3{background:var(--av-3)}.avatar.c4{background:var(--av-4)}.avatar.c5{background:var(--av-5)}.avatar.c6{background:var(--av-6)}.avatar.c7{background:var(--av-7)}.avatar.c8{background:var(--av-8)}.avatar-lg{width:40px;height:40px;font-size:16px}.avatar.sq{background:var(--av-2);border-radius:6px;width:22px;height:22px}.menu{z-index:30;border:1px solid var(--border);border-radius:var(--r-lg);background:var(--surface);min-width:220px;padding:4px;position:absolute;top:calc(100% + 4px);right:0;box-shadow:0 8px 24px #0000001f}.menu-meta{font-size:var(--fs-xs);color:var(--text-3);padding:6px 10px 4px}.menu-meta b{font-size:var(--fs-md);color:var(--text)}.menu-sep{background:var(--border);height:1px;margin:4px 0}.menu-item{border-radius:var(--r-btn);width:100%;min-height:32px;color:var(--text);font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;padding:5px 10px;display:flex}.menu-item:hover{background:var(--hover)}.login{justify-content:center;align-items:center;min-height:100dvh;padding:32px 16px;display:flex}.login-form{border:1px solid var(--border);border-radius:var(--r-lg);background:var(--surface);flex-direction:column;gap:16px;width:100%;max-width:380px;padding:32px;display:flex}.login-form h1{margin:0;font-size:20px}.form-error{color:var(--danger);margin:0}.form-notice{color:var(--text-2);margin:0}.form-link{color:var(--text-2);font-size:var(--fs-sm);align-self:flex-end;margin-top:-8px}.form-back{align-self:flex-start;margin:0}.form-hint{color:var(--text-2);font-size:var(--fs-sm);margin:-8px 0 0}.form-hint.ok{color:var(--success)}.shell{grid-template-columns:var(--side-w) minmax(0, 1fr);grid-template-rows:var(--top-h) minmax(0, 1fr);min-height:100dvh;display:grid}.topbar{z-index:20;border-bottom:1px solid var(--border);background:var(--bg);grid-column:1/-1;align-items:center;gap:8px;padding:0 12px 0 16px;display:flex;position:sticky;top:0}.topbar-space{color:var(--text-2);display:none}.profile{margin-left:auto;position:relative}.sidebar{top:var(--top-h);height:calc(100dvh - var(--top-h));border-right:1px solid var(--border);background:var(--bg-side);padding:12px 8px;position:sticky;overflow-y:auto}.side-space{align-items:center;gap:8px;min-height:40px;padding:6px 8px;font-weight:650;display:flex}.main{min-width:0}.nav-item{border-radius:var(--r-btn);min-height:34px;color:var(--text);align-items:center;padding:6px 8px;text-decoration:none;display:flex}.nav-item:hover{background:var(--hover)}.nav-item[aria-current=page]{background:var(--hover);font-weight:600}.nav-sec{margin:12px 0}.nav-label{color:var(--text-3);padding:6px 8px;font-size:11px;font-weight:600}.nav-team{gap:8px;font-weight:600}.nav-team:hover{background:0 0}.nav-sub{padding-left:38px}button.nav-item{width:100%;color:var(--text-2);font:inherit;text-align:left;cursor:pointer;background:0 0;border:0}.sidebar .only-tablet{display:none}.tabs{border-bottom:1px solid var(--border);gap:4px;margin-bottom:16px;display:flex;overflow-x:auto}.tab-link{color:var(--text-2);white-space:nowrap;border-bottom:2px solid #0000;padding:8px 12px;text-decoration:none}.tab-link[aria-current=page]{border-bottom-color:var(--accent);color:var(--text);font-weight:600}.row-head{min-height:0;font-size:var(--fs-xs);color:var(--text-3);padding-top:8px;padding-bottom:8px}.stage:before{content:"";background:var(--st,var(--text-3));border-radius:50%;width:8px;height:8px;margin-right:8px;display:inline-block}.st-grey{--st:#6c6c6c}.st-blue{--st:#1f63c9}.st-violet{--st:#6d4bc4}.st-orange{--st:#ab5600}.st-teal{--st:#0f7976}.st-green{--st:#227c3d}.row.stage-row{flex-direction:row;align-items:center;gap:8px;min-height:52px;padding:6px 8px 6px 4px}.row.stage-row .row-control{justify-content:center;width:auto;min-width:64px}.row.stage-row.dragging{background:var(--hover)}.drag-handle{cursor:grab;touch-action:none;color:var(--text-3)}.stage-name{border-radius:var(--r-md);min-height:36px;font:inherit;color:var(--text);background:0 0;border:1px solid #0000;padding:6px 8px;font-weight:550}.stage-name:hover{border-color:var(--border)}.stage-name:focus{border-color:var(--border-input);outline:none}.color-picker{position:relative}.swatch{background:var(--st,var(--text-3));border-radius:50%;width:14px;height:14px;display:block}.swatch-btn[aria-pressed=true]{box-shadow:inset 0 0 0 2px var(--st)}.palette{z-index:10;border:1px solid var(--border);border-radius:var(--r-btn);background:var(--surface);gap:2px;padding:4px;display:flex;position:absolute;top:calc(100% + 4px);left:0;box-shadow:0 4px 16px #0000001f}.stage-new{padding-left:16px}.stage-new .input{flex:1 1 0;min-width:0}.tabbar{display:none}.menu-up{top:auto;bottom:calc(100% + 4px)}a.menu-item{align-items:center;text-decoration:none}.page{max-width:780px;margin:0 auto;padding:24px 16px 48px}.page-head{align-items:center;gap:12px;min-height:40px;margin-bottom:16px;display:flex}.page-head h1{margin:0;font-size:22px}.page-head .btn{margin-left:auto}.rows{border:1px solid var(--border);border-radius:var(--r-lg);background:var(--surface);overflow:hidden}.row{border-bottom:1px solid var(--border);align-items:center;gap:16px;min-height:56px;padding:12px 16px;display:flex}.row:last-child{border-bottom:0}.row-label{overflow-wrap:anywhere;flex:1 1 0;min-width:0;font-weight:550}.row-hint{font-size:var(--fs-xs);color:var(--text-3);margin-top:2px;font-weight:400;display:block}.row-control{justify-content:flex-end;min-width:0;display:flex}.row-control .input{width:280px;max-width:100%}.row-two{overflow-wrap:anywhere;flex-direction:column;align-items:flex-end}.row-two .muted{font-size:var(--fs-sm)}.input-at{align-items:center;width:280px;max-width:100%;display:flex;position:relative}.input-at>span{color:var(--text-3);position:absolute;left:12px}.input-at .input{width:100%;padding-left:28px}.input[readonly]{border-color:var(--border);background:var(--bg)}.row-warning{border-bottom:1px solid var(--border);color:var(--text-2);font-size:var(--fs-sm);background:#fdf3e1;margin:0;padding:10px 16px}.page>.form-error,.page>.form-notice,.page>.muted{margin:12px 0}.status{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);max-width:780px;margin:48px auto;padding:24px 16px}.status h1{margin:0 0 16px;font-size:28px;font-weight:700}.status ul{margin:0;padding:0;list-style:none}.status li+li{margin-top:8px}.muted{color:var(--text-3)}.good{color:var(--success)}.bad{color:var(--danger)}.error-state{text-align:center;flex-direction:column;align-items:center;gap:12px;display:flex}.error-state h2{font-size:var(--fs-lg);margin:0}.es-actions{flex-wrap:wrap;justify-content:center;gap:8px;display:flex}.req{font:var(--fs-xs) ui-monospace, monospace;color:var(--text-3);overflow-wrap:anywhere}.btn-text{background:0 0;border-color:#0000}.btn-text:hover{background:var(--hover)}.btn-sm{min-height:28px;font-size:var(--fs-sm);padding:2px 8px}.modal{border-radius:var(--r-lg);background:var(--surface);width:calc(100% - 32px);max-width:510px;color:var(--text);border:0;padding:0;box-shadow:0 12px 40px #0000002e}.modal::backdrop{background:#00000052}.modal-head{align-items:center;gap:8px;padding:16px 16px 12px 20px;display:flex}.modal-head h2{font-size:var(--fs-lg);flex:1;margin:0}.modal-body{flex-direction:column;gap:12px;padding:0 20px 16px;display:flex}.modal-foot{border-top:1px solid var(--border);justify-content:flex-end;gap:8px;padding:12px 20px 16px;display:flex}.textarea{resize:vertical;min-height:96px}.req-line{font-size:var(--fs-xs);color:var(--text-3);overflow-wrap:anywhere;flex-wrap:wrap;align-items:center;gap:4px 8px;margin:0;display:flex}.toast{z-index:30;border-radius:var(--r-btn);color:#fff;background:#202020;margin:0;padding:10px 16px;position:fixed;bottom:24px;left:50%;transform:translate(-50%)}@media (width<=1023px){.shell{grid-template-columns:var(--side-w-mini) minmax(0, 1fr)}.sidebar .nav-tree{display:none}.sidebar .only-tablet{display:flex}.side-space .ellipsis{display:none}}@media (width<=767px){.shell{grid-template-columns:minmax(0,1fr)}.sidebar{display:none}.topbar-space{display:inline}.login{align-items:stretch;padding:0}.login-form{border:0;border-radius:0;max-width:none;padding:48px 20px}.input{min-height:44px;font-size:var(--fs-lg)}.status{margin:16px}.row{flex-direction:column;align-items:stretch;gap:8px}.row-control,.row-control .input,.input-at{width:100%}.row-control{justify-content:flex-start}.row-two{align-items:flex-start}.main{padding-bottom:64px}.tabbar{z-index:20;height:56px;padding:0 8px env(safe-area-inset-bottom);border-top:1px solid var(--border);background:var(--bg);justify-content:space-around;display:flex;position:fixed;bottom:0;left:0;right:0}.tab{min-width:72px;color:var(--text-2);font:inherit;font-size:var(--fs-xs);cursor:pointer;background:0 0;border:0;justify-content:center;align-items:center;font-weight:600;text-decoration:none;display:inline-flex}.tab[aria-current=page]{color:var(--accent)}}.dead-end{text-align:center}.dead-end h1{font-size:22px}.dead-end .btn{text-decoration:none}.crumbs,.meta{font-size:var(--fs-sm);color:var(--text-3);margin:0 0 8px}.profile-head{align-items:center;gap:16px;margin-bottom:8px;display:flex}.profile-head .row-two{align-items:flex-start;display:flex}.row-button{width:100%;font:inherit;color:inherit;text-align:left;cursor:pointer;background:0 0;border-top:0;border-left:0;border-right:0}.row-button:hover{background:var(--hover)}.profile-exit{margin-top:24px}.section-title{font-size:var(--fs-sm);color:var(--text-2);margin:24px 0 8px;font-weight:600}.crumbs a{color:inherit}.seg{border:1px solid var(--border);background:var(--bg-side);border-radius:999px;margin-bottom:16px;padding:2px;display:inline-flex}.seg button{color:var(--text-2);font:inherit;font-size:var(--fs-sm);cursor:pointer;background:0 0;border:0;border-radius:999px;padding:4px 12px}.seg button[aria-pressed=true]{background:var(--surface);color:var(--text);font-weight:600;box-shadow:0 1px 2px #00000014}.table{border:1px solid var(--border);border-radius:var(--r-lg);border-collapse:separate;border-spacing:0;background:var(--surface);width:100%;font-size:var(--fs-sm)}.table th{color:var(--text-2);text-align:left;font-weight:600}.table th,.table td{border-bottom:1px solid var(--border);padding:10px 12px}.table tr:last-child td{border-bottom:0}.two{flex-direction:column;min-width:0;display:flex}.two>:last-child{font-size:var(--fs-xs);color:var(--text-3)}.table a{color:var(--text);font-weight:600;text-decoration:none}a.row{color:var(--text);text-decoration:none}.dot-status{white-space:nowrap;color:var(--text-3);align-items:center;gap:6px;display:inline-flex}.dot-status:before{content:"";background:var(--text-3);border-radius:50%;width:8px;height:8px}.dot-status.on:before{background:var(--success)}.dot-status.wait:before{background:#ab5600}.invitation-actions{flex-wrap:wrap;align-items:center;gap:4px 8px}.notice{border-radius:var(--r-lg);color:#8a5a12;background:#fbf1e3;margin:0 0 16px;padding:12px 16px}.page-actions{margin-top:24px}.row-check input{width:20px;height:20px;accent-color:var(--accent)}.btn-danger{color:var(--danger)}.modal-list{color:var(--text-2);margin:0;padding-left:20px}.btn-danger-fill{border-color:var(--danger);background:var(--danger);color:var(--on-accent)}.only-phone{display:none}@media (width<=767px){.page:has(.page-actions){padding-bottom:80px}.hide-phone{display:none}.only-phone{display:block}a.row,.row-button,.row-check{flex-direction:row;align-items:center}a.row .row-control,.row-button .row-control,.row-check .row-control{width:auto}.page-actions{border-top:1px solid var(--border);background:var(--bg);margin:0;padding:12px 16px;position:fixed;bottom:56px;left:0;right:0}.page-actions .btn{flex:1;width:100%;min-height:44px}.modal{border-radius:var(--r-lg) var(--r-lg) 0 0;width:100%;max-width:none;max-height:92dvh;margin:auto 0 0}.toast{bottom:calc(72px + env(safe-area-inset-bottom))}}.field>label{font-size:var(--fs-sm);color:var(--text-2);font-weight:600}.chips{border:1px solid var(--border-input);border-radius:var(--r-btn);background:var(--surface);cursor:text;flex-wrap:wrap;gap:6px;min-height:36px;padding:4px 6px;display:flex}.chips:focus-within{border-color:var(--accent);box-shadow:0 0 0 2px color-mix(in srgb, var(--accent) 22%, transparent)}.chips input{min-width:160px;color:var(--text);font:inherit;background:0 0;border:0;outline:none;flex:1}.chip{background:var(--bg-side);font-size:var(--fs-sm);overflow-wrap:anywhere;border-radius:999px;align-items:center;gap:2px;padding:2px 4px 2px 8px;display:inline-flex}.chip.bad{background:color-mix(in srgb, var(--danger) 14%, transparent);color:var(--danger)}.chip button{min-width:24px;min-height:24px;color:inherit;font:inherit;cursor:pointer;background:0 0;border:0}.field-error,.field-hint{color:var(--danger);font-size:var(--fs-sm);margin:0}.field-hint{color:var(--text-2)}.modal .seg{align-self:flex-start;margin-bottom:0}.invite-who{flex-direction:column;gap:2px;margin:0;display:flex}.invite-projects{flex-direction:column;max-height:200px;margin-top:4px;display:flex;overflow-y:auto}.invite-projects .check{align-items:center;gap:8px;min-height:36px;padding:4px 0;display:flex}.head-actions{gap:8px;margin-left:auto;display:flex}.page-head .head-actions .btn{margin-left:0}.page-head:has(+.stats-line){margin-bottom:4px}.stats-line{font-size:var(--fs-sm);color:var(--text-3);margin:0 0 20px}.empty-title{color:var(--text-2);margin:24px 0 8px;font-weight:600}.task{border-bottom:1px solid var(--border);align-items:flex-start;gap:12px;padding:9px 8px;display:flex}.task-check{--pc:var(--p4);border:1.5px solid var(--pc);color:#0000;cursor:pointer;background:0 0;border-radius:50%;flex:none;place-items:center;width:18px;height:18px;margin-top:2px;padding:0;font-size:11px;display:grid}.task-check.p1{--pc:var(--p1);border-width:2px}.task-check.p2{--pc:var(--p2);border-width:2px}.task-check.p3{--pc:var(--p3);border-width:2px}.task-check:hover:not([disabled]){color:var(--pc)}.task-check[disabled]{cursor:default}.task.done .task-check{border-color:var(--pc);background:var(--pc);color:#fff}.task.done .task-title{color:var(--text-3);text-decoration:line-through}.task-body{flex:auto;min-width:0}.task-title{overflow-wrap:anywhere}.task-meta{font-size:var(--fs-xs);color:var(--text-3);margin-top:2px}.task-side{flex:none}.add-row{width:100%;color:var(--text-3);font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;align-items:center;gap:12px;padding:9px 8px;display:flex}.add-row:hover{color:var(--accent)}.project-section{margin-top:20px}.group-title{border-bottom:1px solid var(--border);min-height:32px;font-size:var(--fs-sm);align-items:center;gap:6px;padding:4px 2px;font-weight:700;display:flex}.group-title .gt-name{font-size:inherit;font-weight:inherit;overflow-wrap:anywhere;margin:0}.group-title .count{color:var(--text-3);font-weight:500}.gt-menu{margin-left:auto;position:relative}.gt-menu .menu{font-size:var(--fs-md);font-weight:400}.gt-menu .icon-btn{width:28px;height:28px;color:var(--text-3)}.section-form{flex-wrap:wrap;gap:8px;margin-top:20px;display:flex}.section-form .input{flex:200px;min-width:0}.add-section{margin-top:12px}.add-plus{width:18px;color:var(--accent);text-align:center;font-size:18px;line-height:1}.fab{right:16px;bottom:calc(72px + env(safe-area-inset-bottom));z-index:20;background:var(--accent);width:52px;height:52px;color:var(--on-accent);cursor:pointer;border:0;border-radius:50%;font-size:26px;line-height:1;position:fixed;box-shadow:0 6px 18px #0003}@media (width<=767px){.fab.only-phone{place-items:center;display:grid}.gt-menu .icon-btn{width:36px;height:36px}}.toast-row{align-items:center;gap:12px;display:flex}.toast-action{color:#ff9e94;font:inherit;cursor:pointer;background:0 0;border:0;padding:0;font-weight:600}@media (width<=767px){.page:has(.fab){padding-bottom:140px}}button.task-title{width:100%;color:inherit;font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;padding:0;display:block}.task-meta{flex-wrap:wrap;gap:2px 12px;display:flex}.card-panel{border:0;border-left:1px solid var(--border);background:var(--surface);width:min(520px,100%);max-width:none;height:100dvh;max-height:none;color:var(--text);margin:0 0 0 auto;padding:16px 20px 24px;box-shadow:-8px 0 32px #0000001f}.card-panel::backdrop{background:#00000029}.card-panel.card-full{border-left:0;width:100%;padding-left:max(20px,50% - 380px);padding-right:max(20px,50% - 380px)}.card-tools{align-items:center;gap:2px;margin-left:auto;display:flex}.card-menu{position:relative}.history-day{font-size:var(--fs-sm);color:var(--text-3);margin:16px 0 4px;font-weight:600}.history-list{margin:0;padding:0;list-style:none}.history-item{border-bottom:1px solid var(--border);overflow-wrap:anywhere;gap:10px;padding:8px 0;display:flex}.history-change{color:var(--text-2);font-size:var(--fs-sm)}.card-head{justify-content:space-between;align-items:center;gap:8px;margin-bottom:8px;display:flex}.card-title{overflow-wrap:anywhere;width:100%;margin:0 0 12px;font-size:20px;font-weight:600}.input-bare{border-radius:var(--r-md);color:inherit;background:0 0;border:1px solid #0000;margin-left:-6px;padding:4px 6px;font-family:inherit}.input-bare:hover,.input-bare:focus{border-color:var(--border);outline:none}.card-fields{flex-direction:column;display:flex}.card-field{border-bottom:1px solid var(--border);align-items:center;gap:12px;min-height:40px;display:flex}.card-field.extra-empty{display:none}.card-key{width:132px;font-size:var(--fs-sm);color:var(--text-3);flex:none}.field-val{border-radius:var(--r-md);min-width:0;min-height:36px;color:inherit;font:inherit;text-align:left;background:0 0;border:0;flex:auto;align-items:center;gap:8px;padding:0 6px;display:flex}button.field-val{cursor:pointer}button.field-val:hover{background:var(--hover)}.input-inline,.input-date{width:auto;padding:4px 8px}.flag.p1{color:var(--p1)}.flag.p2{color:var(--p2)}.flag.p3{color:var(--p3)}.flag.p4{color:var(--p4)}.field-val .btn-text{white-space:nowrap}.more-fields{margin-top:8px}.picker{max-width:360px}.picker-list{max-height:50dvh;overflow-y:auto}.picker-group{font-size:var(--fs-xs);color:var(--text-3);padding:8px 8px 4px}.picker-row{border-radius:var(--r-md);width:100%;min-height:40px;color:inherit;font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;align-items:center;gap:8px;padding:4px 8px;display:flex}.picker-row:hover:not([disabled]){background:var(--hover)}.picker-row[disabled]{opacity:.5;cursor:default}.picker-row .grow{flex:auto;min-width:0}.picker-row .faint{color:var(--text-3);font-size:var(--fs-xs)}.picker-box{border:1.5px solid var(--border-input);border-radius:4px;place-items:center;width:18px;height:18px;font-size:12px;display:grid}.picker-box.on{border-color:var(--accent);background:var(--accent);color:var(--on-accent)}.picker-empty{padding:8px}@media (width<=767px){.card-panel{width:100%;padding:12px 16px calc(24px + env(safe-area-inset-bottom));border-left:0}.card-field.extra{display:none}.card-field{min-height:44px}.card-key{width:112px}.picker-row{min-height:44px}}.row-head.stage-row{padding-left:16px;padding-right:24px}.group-title.overdue,.stat-danger{color:var(--danger)}.mark-co{color:var(--accent)}.due-btn{color:inherit;font:inherit;cursor:pointer;background:0 0;border:0;padding:0}.due-btn:hover{color:var(--accent);text-decoration:underline}.today-empty .muted{margin:0 0 8px}.swipe{touch-action:pan-y;position:relative;overflow:hidden}.swipe-under{color:#fff;justify-content:space-between;align-items:center;padding:0 16px;font-weight:600;display:none;position:absolute;inset:0}.swipe-under.close{background:var(--success);display:flex}.swipe-under.move{background:var(--accent);display:flex}.swipe-under.close span:last-child,.swipe-under.move span:first-child{visibility:hidden}.swipe-row{background:var(--surface);position:relative}.quick-dates{flex-direction:column;display:flex}.quick-date{border-radius:var(--r-md);min-height:40px;color:var(--text);font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;justify-content:space-between;gap:12px;padding:8px;display:flex}.quick-date:hover,.quick-date.on{background:var(--hover)}.quick-hint{color:var(--text-3)}.task-list.with-cols{overflow-x:auto}.with-cols>.task,.with-cols>.add-row{min-width:max-content}.with-cols .task-body{min-width:200px}.with-cols .task-side{width:24px}.task-col{width:132px;min-width:0;font-size:var(--fs-sm);color:var(--text-2);flex:none;display:flex}.task-head{padding-top:4px;padding-bottom:4px}.task-head .task-col{font-size:var(--fs-xs);color:var(--text-3);display:block}.tab-actions{justify-content:flex-end;margin-bottom:12px;display:flex}.type-tiles{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.type-tile{border:1px solid var(--border);border-radius:var(--r-md);cursor:pointer;align-items:center;gap:8px;min-height:44px;padding:8px 10px;display:flex}.type-tile.on{border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent)}.field-input{flex:auto;width:100%;min-width:0}.field-val.period{flex-wrap:wrap}@media (width<=767px){.task-head,.task-col{display:none}.type-tiles{grid-template-columns:repeat(2,minmax(0,1fr))}}.option-row{align-items:center;gap:8px;margin-bottom:8px;display:flex}.option-row .input{flex:1;min-width:0}@media (width>=768px){.due-modal{max-width:340px}}.due-modal .modal-body{gap:8px}.due-modal.popover{margin:0;position:fixed}.due-modal.popover::backdrop{background:0 0}.month-cal{border-top:1px solid var(--border);padding-top:8px}.month-head{font-size:var(--fs-sm);text-align:center;align-items:center;gap:6px;margin-bottom:4px;font-weight:650;display:flex}.month-grid{text-align:center;grid-template-columns:repeat(7,minmax(0,1fr));gap:2px;display:grid}.month-grid .wd{color:var(--text-3);padding:2px 0;font-size:11px}.month-grid button{height:32px;color:var(--text);font:inherit;font-size:var(--fs-sm);cursor:pointer;background:0 0;border:0;border-radius:999px}.month-grid button:hover{background:var(--hover)}.month-grid button.out{color:var(--text-3)}.month-grid button.today{color:var(--accent);font-weight:700}.month-grid button.sel{background:var(--accent);color:#fff}.due-row{border-top:1px solid var(--border);font-size:var(--fs-sm);justify-content:space-between;align-items:center;gap:12px;padding-top:8px;display:flex}.due-row+.due-row{border-top:0;padding-top:0}.due-note{font-size:var(--fs-xs);margin:0}.weekdays{justify-content:space-between;gap:4px;display:flex}.weekdays button{border:1px solid var(--border);width:34px;height:34px;color:var(--text);font:inherit;font-size:var(--fs-sm);cursor:pointer;background:0 0;border-radius:999px}.weekdays button:hover{background:var(--hover)}.weekdays button[aria-pressed=true]{border-color:var(--accent);background:var(--accent);color:#fff}.kb-section{margin-top:20px}.kb-access{min-width:0;color:var(--text-3);overflow-wrap:anywhere;font-weight:500}.kb-empty{color:var(--text-2);flex-direction:column;gap:4px;margin:12px 2px;display:flex}.kb-personal{margin-top:32px}.page-tools{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:6px;margin:-8px 0 12px;display:flex}.view-menu{position:relative}.view-menu>.btn .count{color:var(--text-3);margin-left:6px}.view-panel{width:320px;max-height:min(70vh,640px);padding:10px 12px;overflow-y:auto}.view-panel-head{justify-content:space-between;align-items:center;margin-bottom:6px;display:flex}.view-row{font-size:var(--fs-sm);color:var(--text-2);grid-template-columns:130px 1fr;align-items:center;gap:8px;margin:6px 0;display:grid}.view-group{border:0;border-top:1px solid var(--border);margin:10px 0 0;padding:8px 0 0}.view-group legend,.view-label{font-size:var(--fs-xs);color:var(--text-3);margin-bottom:4px;padding:0;font-weight:600;display:block}.view-check{min-height:28px;font-size:var(--fs-sm);align-items:center;gap:6px;display:flex}.view-chips{flex-wrap:wrap;gap:4px;margin-bottom:4px;display:flex}.view-chip{background:var(--hover)}.view-add{padding-left:0}.view-filter{gap:6px;display:grid}.view-range{grid-template-columns:1fr 1fr;gap:6px;display:grid}.view-filter-actions{gap:6px;display:flex}.view-foot{border-top:1px solid var(--border);justify-content:flex-end;margin-top:10px;padding-top:8px;display:flex}.view-subgroup{padding-left:16px}.group-title.sub{color:var(--text-2);border-bottom:0}.group-title.sub .gt-name{font-size:inherit}.empty-filter .muted{margin:0}@media (width<=767px){.page-tools{justify-content:flex-start;margin-top:0}.view-panel{border-radius:var(--r-lg) var(--r-lg) 0 0;z-index:60;width:auto;max-height:80vh;position:fixed;inset:auto 0 0}.view-row{grid-template-columns:1fr;gap:2px}}.agents-mcp{margin-bottom:20px}.copy-field{align-items:center;gap:8px;min-width:0;display:flex}.copy-field code{border:1px solid var(--border);border-radius:var(--r-btn);background:var(--bg-side);overflow-wrap:anywhere;min-width:0;font-size:var(--fs-sm);flex:1;padding:8px 10px}.command{border-radius:var(--r-btn);background:var(--bg-side);font-size:var(--fs-sm);white-space:pre-wrap;overflow-wrap:anywhere;margin:0 0 4px;padding:10px 12px}.text-block{margin:16px 0}.text-empty{margin:0}.text-body .tiptap{overflow-wrap:anywhere;outline:none}.text-block.is-edit .text-body .tiptap{min-height:160px}.text-body .tiptap>:first-child{margin-top:0}.text-body h2{margin:20px 0 8px;font-size:18px}.text-body h3{font-size:var(--fs-lg);margin:16px 0 6px}.text-body p{margin:0 0 8px}.text-body ul,.text-body ol{margin:0 0 8px;padding-left:22px}.text-body blockquote{border-left:3px solid var(--border);color:var(--text-2);margin:0 0 8px;padding-left:12px}.text-body a{color:var(--accent)}.text-body ul[data-type=taskList]{padding-left:0;list-style:none}.text-body ul[data-type=taskList] li{gap:8px;display:flex}.text-body ul[data-type=taskList] li>label{flex:none;margin-top:2px}.text-body ul[data-type=taskList] li>div{flex:1}.text-body .tableWrapper{margin:0 0 8px;overflow-x:auto}.text-body table{border-collapse:collapse}.text-body th,.text-body td{border:1px solid var(--border);vertical-align:top;min-width:80px;padding:4px 8px}.text-body th{background:var(--bg-side);text-align:left}.text-body th p,.text-body td p{margin:0}.text-body .selectedCell{background:color-mix(in srgb, var(--accent) 10%, transparent)}.editor-bar{z-index:5;border:1px solid var(--border);border-radius:var(--r-lg);background:var(--surface);margin:0 0 8px;padding:4px;position:sticky;top:-16px}.editor-buttons{flex-wrap:wrap;align-items:center;gap:2px;display:flex}.editor-buttons .icon-btn[aria-pressed=true]{background:var(--hover);color:var(--accent)}.editor-sep{background:var(--border);width:1px;height:20px;margin:0 4px}.link-form{flex-wrap:wrap;align-items:center;gap:6px;padding:6px 2px 2px;display:flex}.link-form .input{flex:200px}.link-form .form-error{flex-basis:100%;margin:0}.btn-link{color:inherit;font:inherit;cursor:pointer;background:0 0;border:0;padding:0;font-weight:600;text-decoration:underline}.tag{background:var(--bg-side);color:var(--text-2);font-size:var(--fs-xs);border-radius:999px;flex:none;align-self:center;padding:2px 8px}@media (width<=767px){.text-block.is-edit{flex-direction:column;display:flex}.text-block.is-edit .editor-bar{order:2;margin:8px 0 0;top:auto;bottom:-24px}.editor-bar .menu{top:auto;bottom:calc(100% + 4px)}}.card-tools>.btn{margin-right:4px}.page:has(.board){max-width:none}.view-switch{margin:0 auto 0 0}.board{scroll-snap-type:x proximity;align-items:flex-start;gap:12px;padding-bottom:16px;display:flex;overflow-x:auto}.board-col{border-radius:var(--r-lg);background:var(--bg-side);scroll-snap-align:start;flex:0 0 272px;padding:8px}.board-col.is-over{outline:2px solid var(--accent);outline-offset:-2px}.board-col-head{font-size:var(--fs-sm);align-items:center;gap:8px;padding:4px 4px 8px;font-weight:650;display:flex}.board-col-head .col-name{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.board-col-head .count{color:var(--text-3);font-weight:400}.board-col.is-empty .board-col-head{color:var(--text-3)}.board-col .add-row{min-height:34px;font-size:var(--fs-sm);padding:6px 8px}.bcard{border:1px solid var(--border);border-radius:var(--r-lg);background:var(--surface);color:var(--text);cursor:grab;touch-action:pan-x pan-y;margin-bottom:8px;padding:10px 12px;position:relative}.bcard:hover{border-color:var(--border-input)}.bcard.is-ghost{opacity:.4}.bcard.is-dragging{cursor:grabbing;width:256px;box-shadow:0 8px 24px #00000029}.bcard-row{align-items:flex-start;gap:8px;display:flex}.bcard-check{pointer-events:none;flex:none}.bcard-title{min-width:0;color:inherit;font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;padding:0}.bcard.done .bcard-title{color:var(--text-3);text-decoration:line-through}.bcard-meta{font-size:var(--fs-xs);color:var(--text-3);flex-wrap:wrap;align-items:center;gap:6px;margin-top:6px;display:flex}.bcard-meta .due{white-space:nowrap}.bcard-avatar{margin-left:auto}.bcard-move{margin-top:8px;display:none}.bcard:focus-within .bcard-move{display:block}@media (pointer:coarse){.bcard-move{display:block}}@media (width<=767px){.board{margin:0 -16px;padding:0 16px 16px}.board-col{flex-basis:84vw}.bcard-move{display:block}.board-menu{border-radius:var(--r-lg) var(--r-lg) 0 0;z-index:60;max-height:70vh;position:fixed;inset:auto 0 0;overflow-y:auto}}.page:has(.cal){max-width:none}.cal-bar{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:12px;display:flex}.cal-bar h2{min-width:150px;font-size:var(--fs-lg);text-align:center;margin:0 4px}.cal-modes{margin-left:auto}.cal{border-top:1px solid var(--border);border-left:1px solid var(--border);border-radius:var(--r-lg);background:var(--surface)}.cal>.cal-row:first-child>:first-child{border-top-left-radius:var(--r-lg)}.cal>.cal-row:first-child>:last-child{border-top-right-radius:var(--r-lg)}.cal>.cal-row:last-child>:first-child{border-bottom-left-radius:var(--r-lg)}.cal>.cal-row:last-child>:last-child{border-bottom-right-radius:var(--r-lg)}.cal-row{grid-template-columns:repeat(7,minmax(0,1fr));display:grid}.cal-head{border-right:1px solid var(--border);border-bottom:1px solid var(--border);background:var(--bg-side);color:var(--text-3);font-size:var(--fs-xs);padding:6px 8px;font-weight:600}.cal-cell{border-right:1px solid var(--border);border-bottom:1px solid var(--border);min-width:0;min-height:108px;padding:6px 0;position:relative}.cal-week .cal-cell{min-height:180px}.cal-cell.out{background:var(--bg-side)}.cal-cell.is-over{outline:2px solid var(--accent);outline-offset:-2px}.cal-date{min-width:22px;height:22px;color:var(--text-2);font-size:var(--fs-xs);border-radius:999px;place-items:center;margin:0 6px 4px;font-weight:600;display:inline-grid}.cal-cell.out .cal-date{color:var(--text-3)}.cal-cell.today .cal-date{background:var(--accent);color:var(--on-accent)}.cal-item,.cal-gap{min-height:22px;margin:0 6px 3px;display:block}.cal-item{border-left:3px solid var(--st,var(--border-input));border-radius:var(--r-md);background:var(--bg-side);font-size:var(--fs-xs);cursor:grab;touch-action:pan-x pan-y;padding:2px 6px}.cal-item:hover{background:var(--hover)}.cal-span{border-radius:0;margin-left:0;margin-right:-1px}.cal-span.is-start{border-radius:var(--r-md) 0 0 var(--r-md);margin-left:6px}.cal-span.is-end{border-radius:0 var(--r-md) var(--r-md) 0;margin-right:6px}.cal-span.is-start.is-end{border-radius:var(--r-md)}.cal-span:not(.is-start){border-left-color:#0000}.cal-item.is-ghost{opacity:.4}.cal-item.is-dragging{cursor:grabbing;width:180px;padding:4px 8px;box-shadow:0 8px 24px #00000029}.cal-line{white-space:nowrap;gap:8px;display:flex}.cal-title{width:100%;min-width:0;color:var(--text);font:inherit;text-align:left;white-space:nowrap;text-overflow:ellipsis;cursor:inherit;background:0 0;border:0;flex:auto;padding:0;display:block;overflow:hidden}.cal-item.done .cal-title{color:var(--text-3);text-decoration:line-through}.cal-time{color:var(--text-3);margin-right:4px}.cal-time+.cal-time,.cal-title>.cal-time:last-child{margin-right:0}.cal-meta{color:var(--text-3);flex-wrap:wrap;gap:2px 8px;display:flex}.cal-line .cal-meta{flex-wrap:nowrap;flex:0 auto;min-width:0;overflow:hidden}.cal-wrap .cal-title{white-space:normal;overflow-wrap:anywhere}.cal-more-wrap{margin:0 6px;position:relative}.cal-more{border-radius:var(--r-md);color:var(--text-3);font-size:var(--fs-xs);cursor:pointer;background:0 0;border:0;padding:1px 4px}.cal-more:hover{background:var(--hover);color:var(--text)}.cal-menu{max-height:320px;left:0;right:auto;overflow-y:auto}.cal-row>:nth-child(n+6) .cal-menu{left:auto;right:0}.cal-days .cal-cell{border:0;min-height:0;padding:0 0 8px}.cal-days .cal-item{font-size:var(--fs-md);margin:6px 0 0;padding:8px 10px}.files-block{margin:16px 0}.files-head{justify-content:space-between;align-items:center;gap:8px;display:flex}.files-head .block-title{font-size:var(--fs-sm);color:var(--text-3);margin:0;font-weight:600}.files-list{flex-direction:column;gap:8px;margin:8px 0 0;padding:0;list-style:none;display:flex}.file-item{align-items:center;gap:10px;min-width:0;display:flex}.file-preview img{object-fit:cover;border:1px solid var(--border);border-radius:var(--r-md);width:56px;height:56px;display:block}.file-icon{border:1px solid var(--border);border-radius:var(--r-md);flex:none;place-items:center;width:56px;height:56px;display:grid}.file-name{min-width:0;color:inherit;flex:auto}.file-size{font-size:var(--fs-sm);flex:none}.card-parent{font-size:var(--fs-xs);overflow-wrap:anywhere;text-align:left;margin-bottom:4px;display:block}.card-block{margin:16px 0}.add-sub{gap:8px;padding:6px 0;display:flex}.add-sub .input{flex:1;min-width:0}@media (width<=767px){.card-cycle.only-phone{padding:12px 16px calc(12px + env(safe-area-inset-bottom));border-top:1px solid var(--border);background:var(--surface);gap:8px;margin:16px -16px 0;display:flex;position:sticky;bottom:0}.card-cycle .btn{flex:1;justify-content:center;min-height:44px}}.mention{border-radius:var(--r-md);background:var(--ref-bg);color:var(--ref-text);white-space:nowrap;padding:0 3px;font-weight:550}.mention-list{z-index:50;border:1px solid var(--border);border-radius:var(--r-lg);background:var(--surface);max-height:320px;padding:4px;position:fixed;overflow-y:auto;box-shadow:0 8px 24px #00000024}.mention-list .picker-row.is-active{background:var(--hover)}.mention-list .picker-row.is-faint .grow{color:var(--text-3)}
