:root{--accent:#6d5dfc;--accent-soft:color-mix(in srgb, var(--accent) 12%, transparent);--accent-line:color-mix(in srgb, var(--accent) 35%, transparent);--bg:#fff;--bg2:#f7f7f8;--side:#f7f7f8;--hover:#f0f0f3;--active:#e9e9ee;--line:#e8e8ec;--line2:#f1f1f4;--text:#1b1b1f;--text2:#4a4a55;--muted:#8b8b96;--card:#fff;--shadow:0 1px 2px #1010180f, 0 1px 1px #1010180a;--shadow-lg:0 12px 32px #10101824, 0 2px 6px #1010180f;--danger:#e5484d;--ok:#30a46c;--warn:#f76b15;--row:36px;--pad:10px;--radius:8px;--fs:13.5px;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}[data-theme=dark]{--bg:#16161a;--bg2:#1c1c21;--side:#131316;--hover:#23232a;--active:#2a2a33;--line:#2c2c34;--line2:#222229;--text:#ececf1;--text2:#b4b4bf;--muted:#7c7c88;--card:#1f1f25;--shadow:0 1px 2px #0006;--shadow-lg:0 16px 40px #0000008c;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}[data-density=compact]{--row:30px;--pad:7px}[data-density=spacious]{--row:44px;--pad:13px}[data-font=sm]{--fs:12.5px}[data-font=lg]{--fs:15px}*{box-sizing:border-box}html,body{background:var(--bg);color:var(--text);margin:0}body{font:var(--fs)/1.45 Inter, ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif;-webkit-font-smoothing:antialiased}button{font:inherit;color:inherit;cursor:pointer;background:0 0;border:0;padding:0}input,select,textarea{font:inherit;color:inherit}::selection{background:var(--accent-soft)}h1{letter-spacing:-.01em;align-items:center;gap:10px;margin:0;font-size:1.35em;font-weight:650;display:flex}h3{align-items:center;gap:8px;margin:20px 0 8px;font-size:1em;font-weight:600;display:flex}h4{text-transform:uppercase;letter-spacing:.06em;color:var(--muted);align-items:center;gap:8px;margin:22px 0 8px;font-size:.78em;font-weight:600;display:flex}kbd{color:var(--muted);border:1px solid var(--line);border-radius:4px;margin-left:auto;padding:0 4px;font:11px ui-monospace,monospace}.muted{color:var(--muted)}.small{font-size:.88em}.grow{flex:1;min-width:0}.spacer{flex:1}.loading{color:var(--muted);padding:40px}:focus-visible{outline:2px solid var(--accent);outline-offset:1px;border-radius:4px}.app{height:100vh;display:flex;overflow:hidden}.sidebar{background:var(--side);border-right:1px solid var(--line);flex-direction:column;flex:none;gap:1px;width:248px;padding:10px 8px;display:flex;overflow-y:auto}.brand{align-items:center;gap:8px;padding:4px 8px 12px;font-weight:650;display:flex}.brand-mark{background:linear-gradient(135deg, var(--accent), color-mix(in srgb, var(--accent) 50%, #ff7ab6));border-radius:6px;width:22px;height:22px}.me{border-radius:var(--radius);align-items:center;gap:8px;margin-bottom:6px;padding:6px 8px;display:flex}.me:hover{background:var(--hover)}.nav-btn{text-align:left;white-space:nowrap;text-overflow:ellipsis;width:100%;color:var(--text2);border-radius:7px;align-items:center;gap:9px;padding:6px 9px;display:flex;overflow:hidden}.nav-btn:hover{background:var(--hover);color:var(--text)}.nav-btn.active{background:var(--active);color:var(--text);font-weight:550}.nav-section{color:var(--muted);text-transform:uppercase;letter-spacing:.06em;align-items:center;padding:16px 9px 5px;font-size:.75em;font-weight:600;display:flex}.nav-section .icon{margin-left:auto}.proj-icon{color:#fff;border-radius:5px;flex:none;justify-content:center;align-items:center;width:18px;height:18px;font-size:9.5px;font-weight:700;display:inline-flex}.nav-sub{padding-left:22px;font-size:.94em}.side-bottom{flex-direction:column;gap:1px;margin-top:auto;padding-top:10px;display:flex}.badge{background:var(--accent);color:#fff;border-radius:9px;margin-left:auto;padding:0 6px;font-size:11px;font-weight:600}.timer-chip{border-radius:var(--radius);background:var(--accent-soft);border:1px solid var(--accent-line);align-items:center;gap:8px;margin:6px 0;padding:8px 10px;font-size:.92em;display:flex}.timer-chip .clock{font-variant-numeric:tabular-nums;color:var(--accent);font-weight:600}.timer-chip .what{text-overflow:ellipsis;white-space:nowrap;cursor:pointer;flex:1;min-width:0;overflow:hidden}.main{flex-direction:column;flex:1;min-width:0;display:flex;overflow:hidden}.head{background:var(--bg);border-bottom:1px solid var(--line);flex:none;padding:12px 20px 0}.head-top{align-items:center;gap:10px;min-height:30px;display:flex}.crumb{color:var(--muted);font-size:.92em}.tabs{scrollbar-width:none;align-items:flex-end;gap:2px;margin-top:10px;display:flex;overflow-x:auto}.tab{color:var(--muted);white-space:nowrap;border-bottom:2px solid #0000;align-items:center;gap:6px;padding:7px 10px 9px;display:flex;position:relative}.tab:hover{color:var(--text)}.tab.active{color:var(--text);border-bottom-color:var(--text);font-weight:550}.tab input{border:1px solid var(--accent);background:var(--bg);border-radius:4px;width:110px;padding:0 4px}.toolbar{border-bottom:1px solid var(--line);background:var(--bg);flex-wrap:wrap;flex:none;align-items:center;gap:6px;padding:8px 20px;display:flex}.content{flex:1;position:relative;overflow:auto}.page{max-width:1040px;padding:22px 28px 60px}.btn{border:1px solid var(--line);background:var(--card);color:var(--text2);box-shadow:var(--shadow);white-space:nowrap;border-radius:7px;align-items:center;gap:6px;padding:4px 10px;font-size:.93em;display:inline-flex}.btn:hover{background:var(--hover);color:var(--text)}.btn:disabled{opacity:.5;cursor:default}.btn.on{border-color:var(--accent-line);background:var(--accent-soft);color:var(--accent)}.btn.primary{background:var(--accent);border-color:var(--accent);color:#fff}.btn.primary:hover{filter:brightness(1.08)}.btn.danger{color:var(--danger)}.btn.ghost{box-shadow:none;background:0 0;border-color:#0000}.icon{color:var(--muted);border-radius:6px;padding:4px;display:inline-flex}.icon:hover{background:var(--hover);color:var(--text)}.icon:disabled{opacity:.3}.link{color:var(--accent);text-align:left}.link:hover{text-decoration:underline}.search{border:1px solid var(--line);background:var(--bg2);border-radius:7px;outline:none;width:180px;padding:4px 9px}.search:focus{border-color:var(--accent);background:var(--bg)}.seg{background:var(--bg2);border:1px solid var(--line);border-radius:7px;gap:2px;padding:2px;display:flex}.seg button{color:var(--muted);white-space:nowrap;border-radius:5px;flex:1;padding:3px 8px;font-size:.9em}.seg button.on{background:var(--card);color:var(--text);box-shadow:var(--shadow)}.swatches{flex-wrap:wrap;gap:6px;display:flex}.swatch{border:2px solid #0000;border-radius:50%;width:22px;height:22px}.swatch.on{border-color:var(--text)}.inline{text-overflow:ellipsis;background:0 0;border:1px solid #0000;border-radius:6px;outline:none;width:100%;min-width:0;padding:3px 6px}.inline:hover{background:var(--hover)}.inline:focus{border-color:var(--accent);background:var(--bg)}.inline.num{width:76px}.inline.tiny{width:46px}.inline.h2{padding:2px 6px;font-size:1.35em;font-weight:650}.date-wrap{display:inline-flex;position:relative}.date{color:var(--text2);cursor:pointer;background:0 0;border:0;border-radius:6px;width:118px;padding:3px 4px;font-size:.9em}.date:hover{background:var(--hover)}.date.empty{color:#0000}.date.empty:hover,.date.empty:focus{color:var(--muted)}.date-wrap[data-empty]:before{content:attr(data-empty);color:var(--muted);pointer-events:none;font-size:.9em;position:absolute;top:50%;left:6px;transform:translateY(-50%)}.date-wrap[data-empty]:hover:before,.date-wrap[data-empty]:focus-within:before{display:none}.overdue .date,.overdue{color:var(--danger)!important}[data-theme=dark] .date::-webkit-calendar-picker-indicator{filter:invert(.8)}.cell-btn{white-space:nowrap;border-radius:6px;align-items:center;gap:6px;max-width:100%;min-height:24px;padding:2px 6px;display:inline-flex}.cell-btn:hover{background:var(--hover)}.status-pill{color:var(--text2);align-items:center;gap:6px;font-size:.9em;font-weight:500;display:inline-flex}.prio-btn{align-items:center;gap:6px;font-size:.9em;display:inline-flex}.assign-empty{border:1.5px dashed var(--line);border-radius:50%;width:22px;height:22px;display:inline-block}.assign-empty:not(:empty){width:auto;color:var(--muted);border:0}.tag{background:var(--bg2);border:1px solid var(--line);color:var(--text2);white-space:nowrap;border-radius:5px;align-items:center;gap:3px;padding:0 6px;font-size:.8em;display:inline-flex}.type{background:var(--bg2);color:var(--text2);white-space:nowrap;border:1px solid var(--line);border-radius:5px;padding:1px 6px;font-size:.76em;font-weight:600}.type-epic{color:#7e22ce;background:#f3e8ff;border-color:#e9d5ff}.type-feature{color:#0369a1;background:#e0f2fe;border-color:#bae6fd}.type-story{color:#15803d;background:#dcfce7;border-color:#bbf7d0}.type-bug{color:#b91c1c;background:#fee2e2;border-color:#fecaca}.type-task{color:#a16207;background:#fef3c7;border-color:#fde68a}[data-theme=dark] .type-epic{color:#d8b4fe;background:#3b1d5c;border-color:#4c2a75}[data-theme=dark] .type-feature{color:#7dd3fc;background:#0c3450;border-color:#134563}[data-theme=dark] .type-story{color:#86efac;background:#0f3b22;border-color:#165030}[data-theme=dark] .type-bug{color:#fca5a5;background:#4a1414;border-color:#5e1c1c}[data-theme=dark] .type-task{color:#fcd34d;background:#3d2e06;border-color:#52400c}.sprint-chip{color:var(--accent);background:var(--accent-soft);border-radius:5px;padding:0 6px;font-size:.85em}.avatar{color:#fff;box-shadow:0 0 0 2px var(--bg);border-radius:50%;flex:none;justify-content:center;align-items:center;font-weight:600;display:inline-flex}.avatars{display:inline-flex}.avatars .avatar+.avatar{margin-left:-6px}.picker{min-width:0;display:inline-flex;position:relative}.popover{z-index:60;background:var(--card);border:1px solid var(--line);box-shadow:var(--shadow-lg);text-align:left;min-width:220px;max-height:380px;color:var(--text);border-radius:10px;padding:5px;font-weight:400;animation:.12s ease-out pop;position:absolute;top:calc(100% + 4px);left:0;overflow:auto}.popover.wide{min-width:260px;padding:10px}@keyframes pop{0%{opacity:0;transform:translateY(-4px)scale(.98)}}.pop-search{border:1px solid var(--line);background:var(--bg);border-radius:6px;outline:none;width:100%;margin-bottom:4px;padding:5px 8px}.pop-row{cursor:pointer;text-align:left;white-space:nowrap;border-radius:6px;align-items:center;gap:8px;width:100%;padding:6px 8px;display:flex}.pop-row:hover,.pop-row.on{background:var(--hover)}.pop-label{color:var(--muted);text-transform:uppercase;letter-spacing:.05em;margin:10px 2px 5px;font-size:.75em;font-weight:600}.pop-label:first-child{margin-top:0}.pop-sep{background:var(--line);height:1px;margin:5px 0}.check{border:1.5px solid color-mix(in srgb, var(--muted) 70%, transparent);color:#fff;border-radius:50%;flex:none;justify-content:center;align-items:center;width:17px;height:17px;transition:all .12s;display:inline-flex}.check:hover{border-color:var(--ok);background:color-mix(in srgb, var(--ok) 12%, transparent)}.check.on{background:var(--ok);border-color:var(--ok)}.check.ghost{cursor:default;border-style:dashed}.list{padding:6px 14px 120px}.group-head{background:var(--bg);z-index:2;align-items:center;gap:8px;padding:14px 8px 6px;font-weight:600;display:flex;position:sticky;top:0}.row{min-height:var(--row);border-radius:7px;align-items:center;gap:8px;padding:0 8px;display:flex;position:relative}.row:hover{background:var(--hover)}.row.dragging{opacity:.35}.row.drop-before{box-shadow:inset 0 2px 0 var(--accent)}.row.done .title,.row.done .grow{color:var(--muted);text-decoration:line-through}.row .hover-only{opacity:0;transition:opacity .1s}.row:hover .hover-only{opacity:1}.indent{flex:none}.twisty{color:var(--muted);justify-content:center;width:16px;display:inline-flex}.title-wrap{flex:auto;min-width:140px;max-width:640px}.title{font-weight:500}.split .row .title{min-width:150px}.count{color:var(--muted);background:var(--bg2);border-radius:9px;padding:0 6px;font-size:.8em}.add-row{min-height:var(--row);color:var(--muted);text-align:left;border-radius:7px;align-items:center;gap:8px;width:100%;padding:0 10px;display:flex}.add-row:hover{background:var(--hover);color:var(--text)}.row.quick{background:var(--accent-soft)}.row-meta{flex:none;align-items:center;gap:4px;display:flex}.table-wrap{padding:0 0 120px}.grid{border-collapse:separate;border-spacing:0;table-layout:fixed;width:max-content;min-width:100%}.grid th{text-align:left;color:var(--muted);border-bottom:1px solid var(--line);border-right:1px solid var(--line2);-webkit-user-select:none;user-select:none;white-space:nowrap;background:var(--bg);z-index:3;height:34px;padding:0 10px;font-size:.86em;font-weight:500;position:sticky;top:0}.grid th .th{cursor:grab;align-items:center;gap:4px;height:100%;display:flex}.grid th.drop{box-shadow:inset 2px 0 0 var(--accent)}.grid th .resize{cursor:col-resize;z-index:4;width:7px;position:absolute;top:0;bottom:0;right:-3px}.grid th .resize:hover,.grid th .resize.on{background:var(--accent);opacity:.6}.grid td{border-bottom:1px solid var(--line2);border-right:1px solid var(--line2);height:var(--row);white-space:nowrap;padding:0 4px;overflow:hidden}.grid td:first-child,.grid th:first-child{padding-left:20px}.grid tr:hover td{background:var(--hover)}.grid tr.done .inline{color:var(--muted);text-decoration:line-through}.grid th.add-col{cursor:default;min-width:44px}.title-cell{align-items:center;gap:6px;display:flex}.add-field{flex-direction:column;gap:6px;padding:4px;display:flex}.add-field input,.add-field select{border:1px solid var(--line);background:var(--bg);border-radius:6px;padding:5px 8px}.board{align-items:flex-start;gap:12px;min-height:100%;padding:14px 20px 40px;display:flex}.column{background:var(--bg2);border:1px solid #0000;border-radius:12px;flex:none;width:286px;padding:8px;transition:border-color .1s,background .1s}.column.over{border-color:var(--accent);background:var(--accent-soft)}.col-head{align-items:center;gap:8px;padding:4px 6px 10px;font-weight:600;display:flex}.col-head .muted{font-weight:400}.dot{border-radius:50%;flex:none;width:9px;height:9px}.card{background:var(--card);border:1px solid var(--line);padding:var(--pad) 12px;cursor:pointer;box-shadow:var(--shadow);border-radius:10px;margin-bottom:8px;transition:box-shadow .12s,transform .12s}.card:hover{box-shadow:var(--shadow-lg)}.card.dragging{opacity:.35}.card.drop-before{box-shadow:0 -3px 0 var(--accent)}.card.done .card-title{color:var(--muted);text-decoration:line-through}.card-top{align-items:center;gap:6px;display:flex}.card-title{margin:4px 0 8px;font-weight:500;line-height:1.35}.card-meta{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.card-progress{background:var(--line);border-radius:2px;height:3px;margin:0 0 8px;overflow:hidden}.card-progress>div{background:var(--ok);height:100%}.add-card{text-align:left;width:100%;color:var(--muted);border-radius:8px;padding:7px 8px}.add-card:hover{background:var(--hover);color:var(--text)}.card-input{border:1px solid var(--accent);background:var(--card);border-radius:10px;outline:none;width:100%;padding:10px}.panel{border-left:1px solid var(--line);background:var(--bg);flex:none;width:520px;max-width:48vw;padding:14px 24px 60px;animation:.14s ease-out slide;overflow-y:auto;box-shadow:-8px 0 30px #0000000d}@keyframes slide{0%{opacity:.6;transform:translate(16px)}}.panel-head{align-items:center;gap:4px;font-size:.9em;display:flex}.panel-title{align-items:center;gap:8px;margin:12px 0 14px;display:flex}.props{grid-template-columns:110px 1fr;align-items:center;gap:2px 10px;display:grid}.props>label{color:var(--muted);align-items:center;gap:6px;min-height:30px;font-size:.92em;display:flex}.props>:not(label){justify-self:start;max-width:100%}.body{border:1px solid var(--line);resize:vertical;background:var(--bg);border-radius:10px;outline:none;width:100%;min-height:120px;margin-top:16px;padding:12px;line-height:1.55}.body:focus,.comment-box:focus{border-color:var(--accent)}.sub{border-radius:6px;align-items:center;gap:8px;padding:4px 6px;display:flex}.sub:hover{background:var(--hover)}.sub.done .link{color:var(--muted);text-decoration:line-through}.time-row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.comment{gap:10px;padding:8px 0;display:flex}.comment-box{border:1px solid var(--line);resize:vertical;background:var(--bg);border-radius:10px;outline:none;width:100%;min-height:64px;margin-top:6px;padding:10px}.recur{align-items:center;gap:4px;font-size:.92em;display:inline-flex}.recur select{background:0 0;border:0;border-radius:5px;padding:2px}.recur select:hover{background:var(--hover)}.dep{border-radius:6px;align-items:center;gap:8px;padding:3px 6px;display:flex}.dep:hover{background:var(--hover)}.bucket h3{margin-top:24px}.bucket.overdue h3{color:var(--danger)}.bucket .row{cursor:pointer}.note{cursor:pointer;border-radius:8px;align-items:center;gap:10px;padding:10px;display:flex}.note:hover{background:var(--hover)}.note.read{opacity:.55}.note:not(.read){background:var(--accent-soft)}.settings section{max-width:620px;margin-bottom:26px}.set-row{align-items:center;gap:8px;padding:3px 0;display:flex}.set-row input[type=color]{cursor:pointer;background:0 0;border:0;width:24px;height:24px;padding:0}.chips{flex-wrap:wrap;gap:6px;margin-bottom:6px;display:flex}.plain-select{border:1px solid var(--line);background:var(--bg);border-radius:6px;padding:3px 6px}.plain-input{border:1px solid var(--line);background:var(--bg);color:inherit;font:inherit;border-radius:6px;padding:3px 6px}.empty{text-align:center;padding:50px 20px}.empty-title{margin-bottom:6px;font-weight:600}.overlay{z-index:80;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#0a0a1459;justify-content:center;align-items:flex-start;padding-top:12vh;display:flex;position:fixed;inset:0}.palette{background:var(--card);width:600px;box-shadow:var(--shadow-lg);border:1px solid var(--line);border-radius:14px;overflow:hidden}.palette input{border:0;border-bottom:1px solid var(--line);background:0 0;outline:none;width:100%;padding:16px 18px;font-size:1.1em}.pal-row{cursor:pointer;align-items:center;gap:10px;padding:9px 18px;display:flex}.pal-row.sel{background:var(--accent-soft)}.toast{color:#fff;z-index:90;box-shadow:var(--shadow-lg);background:#1d1d22;border-radius:10px;padding:9px 16px;position:fixed;bottom:18px;left:50%;transform:translate(-50%)}.gantt{min-height:100%;display:flex}.g-left{border-right:1px solid var(--line);background:var(--bg);z-index:4;flex:none;width:320px;position:sticky;left:0}.g-head{border-bottom:1px solid var(--line);background:var(--bg);z-index:3;height:72px;position:sticky;top:0}.g-left .g-head{color:var(--muted);align-items:flex-end;padding:0 12px 6px;font-size:.86em;display:flex}.g-row{height:var(--row);border-bottom:1px solid var(--line2);white-space:nowrap;align-items:center;gap:6px;padding:0 8px;display:flex;overflow:hidden}.g-row:hover,.g-row.hl{background:var(--hover)}.g-row .g-title{text-overflow:ellipsis;cursor:pointer;flex:1;overflow:hidden}.g-row .g-title:hover{color:var(--accent)}.g-right{flex:none;position:relative}.g-scale{height:26px;display:flex;position:relative}.g-scale>div{height:26px;color:var(--muted);border-left:1px solid var(--line);white-space:nowrap;padding:5px 6px;font-size:.78em;position:absolute;top:0;overflow:hidden}.g-scale.top>div{color:var(--text2);font-weight:600}.g-grid{pointer-events:none;position:absolute;inset:72px 0 0}.g-grid .wk{background:var(--bg2);position:absolute;top:0;bottom:0}.g-grid .ln{border-left:1px solid var(--line2);position:absolute;top:0;bottom:0}.g-today{background:var(--danger);z-index:2;pointer-events:none;width:2px;position:absolute;top:26px;bottom:0}.g-today:before{content:"Today";color:var(--danger);background:var(--bg);border-radius:3px;padding:0 3px;font-size:10px;font-weight:600;position:absolute;top:0;left:4px}.g-sprint{height:17px;color:var(--accent);background:color-mix(in srgb, var(--accent) 12%, transparent);border-left:2px solid var(--accent);white-space:nowrap;text-overflow:ellipsis;box-sizing:border-box;border-radius:0 4px 4px 0;padding:0 6px;font-size:10.5px;line-height:17px;position:absolute;top:53px;overflow:hidden}.g-lane{height:var(--row);border-bottom:1px solid var(--line2);position:relative}.g-lane:hover,.g-lane.hl{background:color-mix(in srgb, var(--hover) 60%, transparent)}.g-lane .ghost{border:1.5px dashed var(--accent-line);pointer-events:none;border-radius:6px;height:50%;position:absolute;top:25%}.g-lane .hint{color:var(--muted);pointer-events:none;opacity:0;padding-left:8px;font-size:.8em;position:absolute;top:50%;transform:translateY(-50%)}.g-lane:hover .hint{opacity:1}.bar{background:var(--c);color:#fff;white-space:nowrap;cursor:grab;height:64%;box-shadow:var(--shadow);-webkit-user-select:none;user-select:none;z-index:1;border-radius:6px;align-items:center;padding:0 10px;font-size:.82em;font-weight:500;display:flex;position:absolute;top:18%}.bar.dragging{cursor:grabbing;box-shadow:var(--shadow-lg);z-index:3}.bar .bar-label{text-overflow:ellipsis;pointer-events:none;overflow:hidden}.bar .bar-fill{pointer-events:none;background:#ffffff38;border-radius:6px 0 0 6px;position:absolute;top:0;bottom:0;left:0}.bar .h{cursor:ew-resize;width:8px;position:absolute;top:0;bottom:0}.bar .h.l{left:-2px}.bar .h.r{right:-2px}.bar .h:hover{background:#ffffff59;border-radius:4px}.bar .link-dot{background:var(--bg);border:2px solid var(--c);cursor:crosshair;opacity:0;border-radius:50%;width:10px;height:10px;margin-top:-5px;position:absolute;top:50%;right:-14px}.bar:hover .link-dot,.bar .link-dot.on{opacity:1}.bar.summary{cursor:default;border-radius:3px;height:30%;padding:0;top:35%}.bar.summary:before,.bar.summary:after{content:"";border:5px solid #0000;border-top-color:var(--c);position:absolute;bottom:-5px}.bar.summary:before{border-left-color:var(--c);left:-1px}.bar.summary:after{border-right-color:var(--c);right:-1px}.bar.milestone{border-radius:3px;padding:0;transform:rotate(45deg)scale(.75);width:16px!important}.bar.drop-target{outline:2px solid var(--accent);outline-offset:2px}.g-tip{z-index:90;color:#fff;pointer-events:none;white-space:nowrap;background:#1d1d22;border-radius:6px;padding:4px 8px;font-size:12px;position:fixed}.g-arrows{pointer-events:none;z-index:2;position:absolute;top:52px;left:0;overflow:visible}.g-arrows path{fill:none;stroke:var(--muted);stroke-width:1.5px}.g-arrows path.bad{stroke:var(--danger)}.g-arrows path.hit{stroke:#0000;stroke-width:10px;pointer-events:stroke;cursor:pointer}.g-arrows path.hit:hover+path{stroke:var(--danger)}.split{height:100%;display:flex}.split>.left{flex:1;min-width:0;overflow:auto}.split>.right{border-left:1px solid var(--line);background:var(--bg2);flex:none;width:340px;padding:14px;overflow:auto}.sprint-card{background:var(--card);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:12px;margin-bottom:10px;padding:12px;transition:border-color .1s}.sprint-card.over{border-color:var(--accent);background:var(--accent-soft)}.sprint-card.current{border-color:var(--accent-line)}.sprint-card .sc-head{align-items:center;gap:8px;font-weight:600;display:flex}.cap{grid-template-columns:74px 1fr 86px;align-items:center;gap:4px 8px;margin-top:8px;font-size:.85em;display:grid}.meter{background:var(--line);border-radius:3px;height:6px;overflow:hidden}.meter>div{background:var(--ok);border-radius:3px;height:100%}.meter.over>div{background:var(--danger)}.level-pick{gap:4px;display:flex}.sprint-head{flex-wrap:wrap;align-items:center;gap:14px;padding:16px 20px 0;display:flex}.stat{background:var(--bg2);border:1px solid var(--line);border-radius:10px;flex-direction:column;min-width:110px;padding:10px 14px;display:flex}.stat b{font-size:1.4em;font-weight:650}.stat span{color:var(--muted);font-size:.8em}.chart-card{background:var(--card);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:12px;padding:14px}.chart-card svg text{fill:var(--muted);font-size:10.5px}.legend{color:var(--muted);gap:14px;margin-top:6px;font-size:.82em;display:flex}.legend i{vertical-align:middle;border-radius:2px;width:14px;height:3px;margin-right:5px;display:inline-block}.sidebar{overflow-x:hidden}.sidebar .popover{width:226px;min-width:0}.row-meta .status-btn{justify-content:flex-start;width:118px}.row-meta>.picker:first-child .cell-btn{justify-content:center;width:30px}.panel{z-index:50;width:min(560px,94vw);max-width:none;box-shadow:var(--shadow-lg);position:fixed;top:0;bottom:0;right:0}.tab{flex:none}.head-top h1{white-space:nowrap}.tabs{flex-wrap:wrap;overflow:visible}.main{z-index:2;position:relative;overflow:visible}.sidebar{z-index:1;position:relative}@media (width<=900px){.sidebar{width:196px}.sidebar kbd{display:none}.row-meta .status-btn{width:32px}.row-meta .status-pill span,.row-meta .date-wrap{display:none}.head,.toolbar{padding-left:12px;padding-right:12px}}.popover{z-index:200;position:fixed;top:0;bottom:auto;left:0}.popover.up{top:0;bottom:auto}.sidebar .popover{width:auto}body>.popover.wide{min-width:260px}.list .row,.split .row{border-bottom:1px solid var(--line2);border-radius:0}.list .row:hover,.split .row:hover{border-radius:0}.row{overflow:hidden}.row .title,.split .row .title,.title-wrap{min-width:60px}.title-wrap{flex:1 1 0}.row-meta{gap:6px;margin-left:8px}.row-meta>.picker,.row-meta>.date-wrap,.row-meta>span{flex:none}.row-meta>.picker>.cell-btn,.row-meta>.meta-slot>.picker>.cell-btn{overflow:hidden}.row-meta>.meta-slot{border-radius:6px;display:inline-flex}.meta-slot.dragging{opacity:.35}.meta-slot.drop{box-shadow:inset 2px 0 0 var(--accent)}.row-meta .sprint-slot{width:104px;display:flex}.row-meta .sprint-slot .picker{width:100%}.row-meta .sprint-slot .cell-btn{width:100%;overflow:hidden}.sprint-chip{text-overflow:ellipsis;white-space:nowrap;vertical-align:middle;max-width:100%;display:inline-block;overflow:hidden}.row-meta .person-slot .cell-btn{justify-content:center;width:36px}.row-meta .est-slot{text-align:right;white-space:nowrap;width:52px}.g-right{cursor:grab}.g-right.panning,.g-right.panning *{-webkit-user-select:none;user-select:none;cursor:grabbing!important}.grid tr.fresh td{background:color-mix(in srgb, var(--accent) 5%, transparent)}.grid tr.draft td{background:var(--accent-soft)}.new-tag{color:var(--accent);font-size:10.5px;font-weight:600}.date{white-space:nowrap;width:124px;height:26px;overflow:hidden}.date::-webkit-datetime-edit{white-space:nowrap}.date-empty{color:var(--muted);text-align:left;border-radius:6px;min-width:40px;height:26px;padding:3px 6px;font-size:.88em}.date-empty:hover{background:var(--hover);color:var(--text)}.row .date-empty,.row-meta .date-empty{width:124px}.date-dash{opacity:.5}.recur-pop{width:620px;max-width:96vw}.recur-grid{grid-template-columns:1fr 230px;gap:16px;display:grid}.recur-row{flex-wrap:wrap;align-items:center;gap:6px;margin:8px 0;display:flex}.recur-check{align-items:center;gap:6px;margin:6px 0;font-size:.92em;display:flex}.weekdays{gap:4px;display:flex}.weekdays button{border:1px solid var(--line);border-radius:50%;width:28px;height:28px;font-size:.85em}.weekdays button.on{background:var(--accent);color:#fff;border-color:var(--accent)}.recur-foot{border-top:1px solid var(--line);align-items:center;gap:8px;margin-top:10px;padding-top:10px;display:flex}.mini-cal{flex-direction:column;gap:10px;display:flex}.mc-title{margin-bottom:4px;font-size:.88em;font-weight:600}.mc-grid{text-align:center;grid-template-columns:repeat(7,1fr);gap:2px;display:grid}.mc-h{color:var(--muted);font-size:10px}.mc-d{border-radius:6px;height:24px;font-size:11px}.mc-d:hover{background:var(--hover)}.mc-d.hit{background:var(--accent-soft);color:var(--accent);font-weight:600}.mc-d.anchor{box-shadow:inset 0 0 0 1.5px var(--accent);font-weight:700}.mc-d.today{color:var(--danger)}.icon.more{opacity:.45}.row:hover .icon.more,tr:hover .icon.more{opacity:1}.grid th .th{cursor:pointer}.ms-label{color:var(--text2);white-space:nowrap;pointer-events:none;white-space:nowrap;pointer-events:none;font-size:.82em;position:absolute;top:50%;transform:translateY(-50%)}.dash{max-width:1240px}.dash-head{flex-wrap:wrap;align-items:flex-end;gap:8px;margin-bottom:14px;display:flex}.widget{background:var(--card);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:12px;min-height:120px;padding:12px 14px}.widget.wide{grid-column:1/-1}.widget.dragging{opacity:.4}.widget-head{align-items:center;gap:6px;margin-bottom:8px;display:flex}.widget .row{border-bottom:1px solid var(--line2);border-radius:0}.week-strip{grid-template-columns:repeat(7,1fr);gap:6px;display:grid}.wk-day{background:var(--bg2);border-radius:8px;flex-direction:column;min-width:0;min-height:90px;padding:6px;display:flex}.week-strip{height:100%}.wk-list{flex:1;min-height:0;overflow-y:auto}.wk-count{color:var(--muted);background:var(--card);border-radius:999px;margin-left:6px;padding:0 6px;font-size:10.5px}.wk-day.today{box-shadow:inset 0 0 0 1.5px var(--accent)}.wk-name{color:var(--muted);margin-bottom:4px;font-size:.78em;font-weight:600}.wk-item{background:var(--card);border:1px solid var(--line);white-space:nowrap;text-overflow:ellipsis;cursor:pointer;border-radius:5px;margin-bottom:3px;padding:2px 5px;font-size:.78em;overflow:hidden}.bar-row{border-bottom:1px solid var(--line2);align-items:center;gap:8px;padding:6px 0;display:flex}.time-bars{align-items:flex-end;gap:8px;height:96px;margin-bottom:6px;display:flex}.time-bars>div{height:100%;color:var(--muted);flex-direction:column;flex:1;justify-content:flex-end;align-items:center;gap:3px;font-size:10.5px;display:flex}.time-bars .tb{background:var(--accent);border-radius:4px 4px 0 0;width:100%;max-width:26px;min-height:2px}.props select,.props .plain-select{min-width:0;max-width:100%}.panel{overflow-x:hidden}.cap{grid-template-columns:70px 1fr 96px}.cap .inline.tiny{width:44px}.side-wrap{z-index:3;flex:none;display:flex;position:relative}.side-wrap .sidebar{width:var(--side-w,248px)}.side-resize{cursor:col-resize;z-index:5;width:6px;position:absolute;top:0;bottom:0;right:-3px}.side-resize:hover{background:var(--accent-line)}.app.side-collapsed .side-wrap{display:none}.side-toggle{z-index:40;background:var(--card);border:1px solid var(--line);box-shadow:var(--shadow);color:var(--text2);border-radius:8px;padding:6px;display:none;position:fixed;top:10px;left:10px}.app.side-collapsed .side-toggle{display:inline-flex}.app.side-collapsed .head{padding-left:56px}.drawer-scrim{z-index:45;background:#00000059;position:fixed;inset:0}.row{border-bottom:1px solid var(--line2);border-radius:0}.row.quick,.add-row{border-bottom:0}@media (width<=760px){.side-wrap{z-index:50;box-shadow:var(--shadow-lg);transition:transform .18s;position:fixed;top:0;bottom:0;left:0;transform:translate(-100%)}.app.drawer-open .side-wrap{transform:none}.app.side-collapsed .side-wrap{display:flex}.side-resize{display:none}.side-toggle{display:inline-flex}.head{padding:10px 12px 0 54px!important}.head-top h1{font-size:1.1em}.crumb{display:none}.tabs{flex-wrap:nowrap;overflow-x:auto}.toolbar{gap:4px;padding:6px 10px}.toolbar .search{width:120px}.page{padding:14px 12px 60px}.list{padding:4px 4px 100px}.row-meta .prio-btn,.row-meta .date-wrap,.row-meta .date-empty,.row-meta>.picker:first-child{display:none}.row-meta .status-btn{width:30px}.row-meta .status-pill span{display:none}.title-wrap{min-width:0}.panel{width:100vw;padding:12px 14px 60px}.props{grid-template-columns:90px 1fr}.week-strip{grid-template-columns:repeat(7,minmax(70px,1fr));overflow-x:auto}.split{flex-direction:column;height:auto}.split>.right{border-left:0;border-top:1px solid var(--line);width:auto}.g-left{width:180px}.sprint-head{padding:12px 12px 0}.recur-grid{grid-template-columns:1fr}.palette{width:94vw}.board{padding:10px}.column{width:82vw}}.app.side-collapsed .content>.page{padding-top:54px}@media (width<=760px){.content>.page{padding-top:54px}}.tabs>.picker{flex:none;min-width:auto}a.btn{text-decoration:none}.bar.done{opacity:.8}.g-row .g-title{cursor:text}.g-row .g-title .inline{padding:2px 4px}.g-row .g-title.done .inline{color:var(--muted);text-decoration:line-through}.g-row .cell-btn{padding:1px 3px}.g-row .g-title{flex:auto;min-width:90px}@media (width<=760px){.g-row .type,.g-row .icon.more{display:none}.g-left{width:200px}}.settings{max-width:820px}.set-hero{background:linear-gradient(135deg, var(--accent-soft), transparent 70%), var(--card);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:14px;align-items:center;gap:14px;margin-bottom:18px;padding:18px;display:flex}.proj-icon.big{background:var(--accent);border-radius:12px;width:44px;height:44px;font-size:15px}.key-field{color:var(--muted);text-transform:uppercase;letter-spacing:.05em;flex-direction:column;width:90px;font-size:.75em;display:flex}.key-field .inline{color:var(--text);letter-spacing:.04em;font-size:1.3em;font-weight:650}.set-card{background:var(--card);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:14px;margin-bottom:16px;padding:6px 16px 12px;max-width:none!important}.set-card-head{border-bottom:1px solid var(--line2);flex-wrap:wrap;align-items:baseline;gap:12px;margin-bottom:4px;padding:6px 0 8px;display:flex}.set-card-head h3{margin:6px 0}.set-item{border-bottom:1px solid var(--line2);border-radius:0;align-items:center;gap:10px;padding:6px 4px;display:flex}.set-item:hover{background:var(--hover)}.set-item.dragging{opacity:.4}.set-item .inline{flex:1;min-width:80px;font-weight:500}.set-item .grip{cursor:grab}.set-add{align-items:center;gap:8px;padding:8px 4px 2px;display:flex}.color-dot{width:18px;height:18px;box-shadow:0 0 0 2px var(--bg), 0 0 0 3px var(--line);border-radius:50%;flex:none}.small-seg button{padding:2px 8px;font-size:.8em}.set-inline-add .add-field{flex-flow:wrap;align-items:center;padding:10px 0 0}.set-inline-add .add-field .pop-label{display:none}.set-inline-add .add-field input:first-of-type{flex:1;min-width:160px}.danger-card{border-color:color-mix(in srgb, var(--danger) 30%, var(--line))}.nav-edit{border:1px solid var(--accent);background:var(--bg);border-radius:5px;outline:none;flex:1;min-width:0;padding:1px 5px}.inline.h1-edit{letter-spacing:-.01em;field-sizing:content;width:auto;min-width:120px;max-width:520px;padding:2px 6px;font-size:1.35em;font-weight:650}.g-legend{flex-wrap:wrap;align-content:flex-end;gap:4px 12px;font-size:.78em!important;display:flex!important}.g-legend span{cursor:help;white-space:nowrap;align-items:center;gap:5px;display:inline-flex}.g-legend i{display:inline-block}.lg-bar{background:var(--accent);border-radius:3px;width:16px;height:8px}.lg-sum{background:var(--accent);width:16px;height:4px;position:relative}.lg-sum:before,.lg-sum:after{content:"";border:3px solid #0000;border-top-color:var(--accent);position:absolute;top:3px}.lg-sum:before{left:-1px}.lg-sum:after{right:-1px}.lg-ms{background:var(--accent);border-radius:1px;width:8px;height:8px;transform:rotate(45deg)}.lg-arrow{border-top:1.5px solid var(--muted);width:14px;height:0;position:relative}.lg-arrow:after{content:"";border:3.5px solid #0000;border-left-color:var(--muted);position:absolute;top:-4.5px;right:-2px}.sum-label{color:var(--muted);font-weight:500}.type-userstory{color:#15803d;background:#dcfce7;border-color:#bbf7d0}[data-theme=dark] .type-userstory{color:#86efac;background:#0f3b22;border-color:#165030}.gantt{width:max-content;min-width:100%}.g-legend{grid-template-columns:1fr 1fr;align-content:center;gap:2px 8px;overflow:hidden;padding:6px 10px!important;font-size:.74em!important;display:grid!important}.history{flex-direction:column;display:flex}.hist-row{border-bottom:1px solid var(--line2);align-items:center;gap:8px;padding:7px 4px;display:flex}.hist-row .btn{opacity:.6}.hist-row:hover .btn{opacity:1}.nowrap{white-space:nowrap}.btn.small{padding:2px 7px;font-size:.82em}@media (width<=760px){.widget{grid-column:auto!important}}.widget{flex-direction:column;transition:box-shadow .15s,border-color .15s,height .12s;display:flex;position:relative}.widget-body{flex:1;min-height:0;overflow:auto}.widget .grip{color:var(--muted);cursor:grab;border-radius:4px;margin-left:-4px;padding:2px;display:inline-flex}.widget .grip:hover{background:var(--hover);color:var(--text)}.widget.placeholder{border:2px dashed var(--accent);background:var(--accent-soft);box-shadow:none}.widget.placeholder>*{opacity:.35}.widget.shifting{box-shadow:inset 3px 0 0 var(--accent-line), inset -3px 0 0 var(--accent-line), var(--shadow)}.w-seg button{padding:1px 7px;font-size:.75em}.widget .w-seg,.widget-head .icon{opacity:.55}.widget:hover .w-seg,.widget:hover .widget-head .icon{opacity:1}.w-resize{cursor:nwse-resize;border-right:2px solid var(--muted);border-bottom:2px solid var(--muted);opacity:.5;border-radius:0 0 6px;width:14px;height:14px;position:absolute;bottom:3px;right:3px}.w-resize:hover{opacity:1;border-color:var(--accent)}.cal-wrap{min-height:100%;display:flex}.cal-main{flex:1;min-width:0;padding:10px 16px 30px}.cal-bar{align-items:center;gap:6px;margin-bottom:10px;display:flex}.cal-title{margin-left:6px;font-size:1.1em}.cal-grid{border-top:1px solid var(--line);border-left:1px solid var(--line);grid-template-columns:repeat(7,minmax(0,1fr));display:grid}.cal-head{color:var(--muted);border-right:1px solid var(--line);border-bottom:1px solid var(--line);background:var(--bg2);padding:6px 8px;font-size:.78em;font-weight:600}.cal-day{border-right:1px solid var(--line);border-bottom:1px solid var(--line);flex-direction:column;gap:3px;min-width:0;min-height:116px;padding:4px;transition:background .1s;display:flex}.cal-day.tall{min-height:420px}.cal-day.weekend{background:var(--bg2)}.cal-day.out{opacity:.5}.cal-day.over{background:var(--accent-soft);box-shadow:inset 0 0 0 2px var(--accent)}.cal-num{color:var(--text2);align-items:center;padding:0 2px;font-size:.82em;display:flex}.cal-num span{border-radius:50%;justify-content:center;align-items:center;width:22px;height:22px;display:inline-flex}.cal-day.today .cal-num span{background:var(--accent);color:#fff;font-weight:600}.cal-add{opacity:0;margin-left:auto}.cal-day:hover .cal-add{opacity:1}.cal-chip{background:var(--card);border:1px solid var(--line);border-left:3px solid var(--accent);cursor:grab;min-width:0;box-shadow:var(--shadow);border-radius:5px;align-items:center;gap:4px;padding:2px 5px;font-size:.8em;display:flex}.cal-chip:hover{border-color:var(--accent-line)}.cal-chip.done{opacity:.55;border-left-color:var(--ok)}.cal-chip.done .cal-text{text-decoration:line-through}.cal-chip.late{border-left-color:var(--danger)}.cal-text{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.cal-more{color:var(--accent);text-align:left;padding:0 4px;font-size:.78em}.cal-input{border:1px solid var(--accent);background:var(--bg);border-radius:5px;outline:none;width:100%;padding:2px 5px;font-size:.82em}.cal-side{border-left:1px solid var(--line);background:var(--bg2);flex:none;width:240px;padding:12px}.cal-chip.side{margin-bottom:5px}@media (width<=760px){.cal-side{display:none}.cal-day{min-height:80px}.cal-chip .cal-text{font-size:.9em}}.row.sel,.grid tr.sel td{background:var(--accent-soft)!important}.grid .sel-col{width:36px;padding:0 0 0 14px!important}.bulk-bar{z-index:70;background:var(--card);border:1px solid var(--line);box-shadow:var(--shadow-lg);border-radius:12px;flex-wrap:wrap;align-items:center;gap:6px;max-width:94vw;padding:7px 10px;animation:.12s ease-out pop;display:flex;position:fixed;bottom:18px;left:50%;transform:translate(-50%)}.bulk-bar>b{margin-right:6px}.bulk-bar .cell-btn{border:1px solid var(--line);background:var(--bg)}.bulk-date{border:1px solid var(--line);color:var(--text2);border-radius:6px;align-items:center;gap:4px;padding:1px 6px;display:inline-flex}.bulk-date input{background:0 0;border:0;width:118px;height:24px}.filter-pop{min-width:520px}.f-group{flex-direction:column;gap:6px;display:flex}.f-group.nested{background:var(--bg2);border:1px solid var(--line);border-radius:8px;flex:1;padding:8px}.f-row{align-items:flex-start;gap:6px;display:flex}.f-join{width:56px;color:var(--muted);flex:none;padding-top:4px;font-size:.86em}.f-rule{flex-wrap:wrap;align-items:center;gap:4px;display:flex}.f-actions{gap:4px;margin-top:2px;display:flex}.chip-toggle{border:1px solid var(--line);cursor:pointer;border-radius:16px;align-items:center;gap:5px;padding:3px 10px;font-size:.88em;display:inline-flex}.chip-toggle.on{border-color:var(--accent-line);background:var(--accent-soft);color:var(--accent)}.chip-toggle input{display:none}.rule{border:1px solid var(--line);background:var(--bg2);border-radius:10px;margin:8px 0;padding:8px 10px}.rule.off{opacity:.55}.rule-head{align-items:center;gap:6px;display:flex}.rule-head .inline{font-weight:600}.rule-line{flex-wrap:wrap;align-items:center;gap:6px;padding:3px 0 3px 22px;display:flex}.rule-line>b{width:40px;color:var(--muted);font-size:.85em}.recipes{z-index:30;background:var(--card);border:1px solid var(--line);box-shadow:var(--shadow-lg);border-radius:10px;min-width:360px;padding:5px;position:absolute;bottom:100%;left:0}.int-block{border-bottom:1px solid var(--line2);padding:8px 0}.int-block:last-child{border-bottom:0}.code{background:var(--bg2);border:1px solid var(--line);white-space:pre-wrap;word-break:break-all;border-radius:8px;padding:8px 10px;font-size:.78em}.cal-chip.seg-start{border-top-right-radius:0;border-bottom-right-radius:0;margin-right:-5px}.cal-chip.seg-mid{background:var(--accent-soft);border-left-width:1px;border-radius:0;margin:0 -5px}.cal-chip.seg-end{background:var(--accent-soft);border-left-width:1px;border-top-left-radius:0;border-bottom-left-radius:0;margin-left:-5px}.cal-chip.seg-mid .cal-text,.cal-chip.seg-end .cal-text{opacity:.55}.col-head.movable{cursor:grab;border-radius:6px}.col-head.movable:hover{background:var(--hover)}.col-grip{opacity:0;margin-left:-4px}.col-head:hover .col-grip{opacity:1}.col-head.col-drop{box-shadow:inset 3px 0 0 var(--accent);background:var(--accent-soft)}.kb-focus{background:var(--hover);box-shadow:inset 3px 0 0 var(--accent)!important}.card.kb-focus{box-shadow:0 0 0 2px var(--accent)!important}.shortcuts{flex-direction:column;width:640px;max-height:80vh;display:flex}.sc-head{border-bottom:1px solid var(--line);flex-wrap:wrap;align-items:center;gap:8px;padding:12px 16px;display:flex}.sc-body{padding:4px 16px 12px;overflow:auto}.sc-row{border-bottom:1px solid var(--line2);align-items:center;gap:8px;padding:5px 0;display:flex}.kbd-btn{border:1px solid #0000;border-radius:6px;gap:4px;padding:2px 4px;display:inline-flex}.kbd-btn:hover{border-color:var(--line)}.kbd-btn kbd{margin:0;padding:1px 6px;font-size:12px}.kbd-btn.rec{border-color:var(--accent);color:var(--accent);padding:3px 8px;font-size:.85em}.kbd-btn.clash kbd{border-color:var(--danger);color:var(--danger)}.capture{width:620px}.capture-box{resize:vertical;background:0 0;border:0;outline:none;width:100%;min-height:150px;padding:14px 16px;font-size:1.02em;line-height:1.6}.capture-preview{border-top:1px solid var(--line2);flex-direction:column;gap:4px;padding:6px 16px 10px;display:flex}.capture-preview .tag{margin-left:6px}.sort-badge{color:var(--accent);align-items:center;gap:1px;margin-left:4px;font-size:.85em;font-weight:600;display:inline-flex}.parent-select{max-width:100%;color:var(--text2);background:0 0;border:0}.parent-select:hover{background:var(--hover)}.body-wrap{border:1px solid var(--line);background:var(--bg);border-radius:10px;min-height:120px;margin-top:16px;padding:8px 10px}.body-wrap:focus-within{border-color:var(--accent-line)}.blocks{cursor:text;min-height:100px;position:relative}.blk{align-items:flex-start;gap:6px;display:flex;position:relative}.blk-input,.blk-view{resize:none;min-width:0;line-height:1.55;font:inherit;color:inherit;white-space:pre-wrap;word-break:break-word;background:0 0;border:0;outline:none;flex:1;min-height:26px;padding:3px 2px;overflow:hidden}.blk-view{cursor:text}.blk-view a{color:var(--accent)}.blk-view code,.blk-view pre{background:var(--bg2);border-radius:4px;padding:0 4px;font-family:ui-monospace,monospace;font-size:.9em}.blk-input::placeholder{color:var(--muted);opacity:.7}.blk-h1 .blk-input,.blk-h1 .blk-view{margin-top:6px;font-size:1.5em;font-weight:700}.blk-h2 .blk-input,.blk-h2 .blk-view{margin-top:4px;font-size:1.25em;font-weight:650}.blk-h3 .blk-input,.blk-h3 .blk-view{font-size:1.08em;font-weight:600}.blk-mark{text-align:center;width:16px;color:var(--text2);flex:none;padding-top:3px}.blk-mark.num{text-align:right;font-variant-numeric:tabular-nums;width:22px}.blk-check{accent-color:var(--accent);margin-top:7px}.blk-input.done,.blk-view.done{color:var(--muted);text-decoration:line-through}.blk-quote{border-left:3px solid var(--text2);color:var(--text2);padding-left:10px}.blk-code .blk-input,.blk-code .blk-view{background:var(--bg2);border-radius:6px;padding:8px 10px;font-family:ui-monospace,monospace;font-size:.88em}.blk-code .blk-view pre{white-space:pre-wrap;background:0 0;margin:0;padding:0}.blk-divider{cursor:pointer;padding:6px 0}.blk-divider hr{border:0;border-top:1px solid var(--line);margin:0}.blk-divider:focus{outline:none}.blk-divider:focus hr{border-color:var(--accent)}.blk-menu{z-index:20;background:var(--card);border:1px solid var(--line);box-shadow:var(--shadow-lg);border-radius:10px;width:280px;margin:2px 0 6px 18px;padding:5px;position:relative}.sort-grip{color:var(--muted);cursor:grab;border-radius:4px;padding:2px;display:inline-flex}.sort-grip:hover{background:var(--hover);color:var(--text)}.sort-row.dragging{opacity:.4}.sort-row.drop{box-shadow:inset 0 2px 0 var(--accent)}.wl-grid{border-top:1px solid var(--line);border-left:1px solid var(--line);width:max-content;margin:0 16px;display:grid}.wl-grid>div{border-right:1px solid var(--line2);border-bottom:1px solid var(--line2)}.wl-h{color:var(--muted);background:var(--bg2);z-index:2;white-space:nowrap;padding:6px 8px;font-size:.78em;font-weight:600;position:sticky;top:0}.wl-h.day{text-align:center;padding:6px 2px}.wl-h.we{opacity:.6}.wl-h.today{color:var(--accent)}.wl-name{cursor:pointer;background:var(--bg);z-index:1;align-items:center;gap:8px;padding:6px 10px;font-weight:500;display:flex;position:sticky;left:0}.wl-name:hover{background:var(--hover)}.wl-cell{font-variant-numeric:tabular-nums;justify-content:center;align-items:center;min-height:38px;font-size:.82em;font-weight:600;display:flex}.wl-cell.we{background:var(--bg2)}.wl-cell.ok{background:color-mix(in srgb, var(--ok) 16%, transparent);color:var(--ok)}.wl-cell.full{color:#a16207;background:#e2a40038}.wl-cell.over{background:color-mix(in srgb, var(--danger) 18%, transparent);color:var(--danger)}.wl-cell.total{background:var(--bg);justify-content:flex-end;padding-right:8px;font-weight:600}.wl-person.over .wl-name{box-shadow:inset 3px 0 0 var(--accent);background:var(--accent-soft)}.wl-item-name{color:var(--text2);white-space:nowrap;text-overflow:ellipsis;cursor:pointer;background:var(--bg);padding:4px 10px 4px 34px;font-size:.82em;position:sticky;left:0;overflow:hidden}.wl-item-name:hover{color:var(--accent)}.wl-lane{min-height:26px;position:relative}.wl-bar{background:var(--accent-soft);border:1px solid var(--accent-line);height:20px;color:var(--accent);cursor:grab;white-space:nowrap;border-radius:5px;margin-left:2px;padding:1px 6px;font-size:.74em;position:absolute;top:3px;overflow:hidden}.avatar.more-avatars{background:var(--bg2);color:var(--text2);border:1px solid var(--line);box-shadow:0 0 0 2px var(--bg)}.sprint-charts{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:14px;padding:14px 20px 0;display:grid}.sprint-charts>.chart-card:first-child{grid-column:1/-1}.chart-card{min-width:0;overflow:hidden}.velo{align-items:flex-end;gap:10px;height:150px;margin-top:10px;display:flex}.velo-col{flex-direction:column;flex:1;align-items:center;gap:2px;min-width:0;height:100%;display:flex}.velo-bars{flex:1;justify-content:center;align-items:flex-end;width:100%;display:flex}.velo-total{background:var(--line);border-radius:5px 5px 0 0;align-items:flex-end;width:70%;max-width:34px;display:flex;overflow:hidden}.velo-done{background:var(--accent);width:100%}.velo-name{white-space:nowrap;text-overflow:ellipsis;max-width:100%;overflow:hidden}.ins-table{border-collapse:collapse;width:100%;font-size:.92em}.ins-table th{text-align:left;color:var(--muted);border-bottom:1px solid var(--line);white-space:nowrap;padding:6px 8px;font-size:.85em;font-weight:500}.ins-table td{border-bottom:1px solid var(--line2);white-space:nowrap;padding:8px}.ins-table .bad{color:var(--danger);font-weight:600}.ins-table .good{color:var(--ok);font-weight:600}.ins-table .warn{color:#b7791f;font-weight:600}.ins-bar{background:var(--line);vertical-align:middle;border-radius:3px;width:60px;height:6px;margin-right:8px;display:inline-block;overflow:hidden}.ins-bar>span{background:var(--accent);height:100%;display:block}.flag-tag{background:color-mix(in srgb, var(--danger) 10%, transparent);color:var(--danger);border-color:color-mix(in srgb, var(--danger) 25%, transparent)}.progress{color:var(--muted);font-variant-numeric:tabular-nums;align-items:center;gap:5px;font-size:.78em;display:inline-flex}.progress-bar{background:var(--line);border-radius:2px;width:34px;height:4px;overflow:hidden}.progress-bar>span{background:var(--ok);height:100%;display:block}.tag-chips{cursor:pointer;gap:4px;display:inline-flex}.tag-chips .tag:hover{border-color:var(--accent-line);color:var(--accent)}.add-tag{opacity:0;border-style:dashed}.row:hover .add-tag{opacity:1}.card-title,.title,.g-title,.cal-text,.blk-view,.panel-title .inline{overflow-wrap:anywhere;word-break:break-word}.card-title{-webkit-line-clamp:4;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}@media (width<=760px){.g-left{width:130px}.g-row .avatars,.g-row .picker{display:none}.dash .recur-row{flex-wrap:wrap}.dash .recur-row select,.dash .recur-row input{width:100%!important}.dash-head{align-items:flex-start}}.ai-col{width:300px}.ai-last{-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:-4px 0 8px;display:-webkit-box;overflow:hidden}.review-box{border:1px solid var(--accent-line);background:var(--accent-soft);border-radius:10px;margin:8px 0;padding:8px 10px}.review-box.compact{margin:6px 0 0;padding:6px 8px}.review-box.state-submitted{background:#e2a4001a;border-color:#e2a40080}.review-box.state-approved{border-color:color-mix(in srgb, var(--ok) 40%, transparent);background:color-mix(in srgb, var(--ok) 8%, transparent)}.review-box.state-changes{border-color:color-mix(in srgb, var(--danger) 35%, transparent);background:color-mix(in srgb, var(--danger) 6%, transparent)}.review-head{align-items:center;gap:6px;font-size:.9em;display:flex}.review-actions{flex-wrap:wrap;gap:6px;margin-top:6px;display:flex}.files{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.file-thumb img{object-fit:cover;border:1px solid var(--line);border-radius:6px;width:72px;height:54px;display:block}.file-chip{border:1px solid var(--line);color:var(--text2);border-radius:6px;align-items:center;gap:4px;padding:3px 8px;font-size:.85em;text-decoration:none;display:inline-flex}.file-add{border:1px dashed var(--line);color:var(--muted);border-radius:6px;padding:4px 10px;font-size:.85em}.file-add:hover{border-color:var(--accent);color:var(--accent)}.worklog{border-left:2px solid var(--line);flex-direction:column;gap:2px;margin-left:8px;padding-left:10px;display:flex}.wl-entry{gap:8px;padding:5px 0;display:flex}.wl-entry.k-result .wl-text{background:var(--bg2);border-radius:8px;padding:6px 8px}.wl-entry.k-missed .wl-text{color:var(--danger)}.wl-text{white-space:pre-wrap;overflow-wrap:anywhere;font-size:.92em}.wl-img,.blk-img{border:1px solid var(--line);border-radius:8px;max-width:100%;max-height:260px;margin-top:4px;display:block}.token-once{border:1px solid var(--accent-line);background:var(--accent-soft);border-radius:10px;margin:8px 0;padding:10px}.gallery{grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:12px;display:grid}.gal-card{flex-direction:column;gap:4px;display:flex}.gal-card .btn{align-self:flex-start;margin-top:auto}.fc-bars{align-items:flex-end;gap:10px;height:200px;margin-top:12px;display:flex}.fc-col{flex-direction:column;flex:1;align-items:center;gap:3px;min-width:0;height:100%;display:flex}.fc-pair{flex:1;justify-content:center;align-items:flex-end;gap:3px;width:100%;display:flex}.fc-demand{background:var(--accent);border-radius:4px 4px 0 0;width:40%;max-width:26px}.fc-demand.over{background:var(--danger)}.fc-cap{background:var(--ok);opacity:.75;border-radius:4px 4px 0 0;align-items:flex-start;width:40%;max-width:26px;display:flex;overflow:hidden}.fc-hire{background:#e2a400;width:100%}.tour{z-index:300;pointer-events:none;position:fixed;inset:0}.tour-dim{pointer-events:auto;background:#0a0a1473;position:fixed;inset:0}.tour-hole{outline:2px solid var(--accent);border-radius:10px;transition:all .25s;animation:1.6s ease-in-out infinite tour-pulse;position:fixed;box-shadow:0 0 0 9999px #0a0a1473}@keyframes tour-pulse{0%,to{outline-offset:0}50%{outline-offset:5px}}.tour-card{background:var(--card);border:1px solid var(--line);width:340px;max-width:calc(100vw - 24px);box-shadow:var(--shadow-lg);pointer-events:auto;border-radius:12px;padding:12px 14px;transition:top .25s,left .25s;animation:.18s ease-out pop;position:fixed}.tour-card p{margin:6px 0 10px;line-height:1.5}.tour-top{align-items:center;margin-bottom:4px;display:flex}.tour-actions{gap:6px;display:flex}.tour-dots{gap:4px;margin-bottom:8px;display:flex}.tour-dots span{background:var(--line);border-radius:50%;width:6px;height:6px}.tour-dots span.on{background:var(--accent);border-radius:3px;width:16px}.faq details{border-bottom:1px solid var(--line2);padding:8px 2px}.faq summary{cursor:pointer;font-weight:500}.faq p{color:var(--text2);margin:6px 0 2px}.sidebar>*,.side-bottom>*{flex-shrink:0}.nav-toggle{text-align:left;cursor:pointer;width:100%}.side-row{align-items:center;gap:2px;display:flex}.side-row .nav-btn{width:auto}.side-row>.nav-btn:first-child{flex:1}.side-row .picker .nav-btn{gap:0;font-size:0}.side-row .picker .nav-btn svg{font-size:initial}.item-chip{border:1px solid var(--accent-line);background:var(--accent-soft);color:var(--accent);border-radius:6px;align-items:center;gap:5px;margin:0 2px;padding:0 6px;font-size:.88em;display:inline-flex}.item-chip span{color:var(--text2)}.item-chip.done span{text-decoration:line-through}.item-chip.missing{opacity:.6;border-style:dashed}.g-budget{background:var(--bg);border-top:1px solid var(--line);z-index:5;display:flex;position:sticky;bottom:0}.g-budget-label{background:var(--bg);width:320px;color:var(--muted);border-right:1px solid var(--line);z-index:1;flex:none;padding:7px 12px;font-size:.78em;position:sticky;left:0}.g-budget-cell{border-left:1px solid var(--line2);height:22px;color:var(--text2);justify-content:center;align-items:center;gap:6px;font-size:.8em;display:flex;position:absolute;top:4px}.g-budget-cell b{color:var(--accent)}@media (width<=760px){.g-budget-label{width:130px}}.lanes{padding:8px 0 40px}.lane>summary{cursor:pointer;border-top:1px solid var(--line);align-items:center;gap:8px;padding:8px 20px;list-style:none;display:flex;position:sticky;left:0}.lane>summary:before{content:"▸";color:var(--muted);transition:transform .15s}.lane[open]>summary:before{transform:rotate(90deg)}.board.board-lane{min-height:0;padding-top:4px}.wip-over{color:var(--danger);font-weight:600}.approval{border-bottom:1px solid var(--line2);gap:8px;padding:8px 0;display:flex}.approval.a-approved .tag{color:var(--ok)}.approval.a-changes .tag,.approval.a-rejected .tag{color:var(--danger)}.sign-box{border:1px solid var(--accent-line);background:var(--accent-soft);border-radius:8px;margin-top:6px;padding:8px}.good{color:var(--ok)}.role-grid{align-items:center;gap:0;display:grid;overflow-x:auto}.role-grid>div{border-bottom:1px solid var(--line2);padding:6px 4px}.role-head{align-items:center;gap:2px;font-size:.85em;font-weight:600;display:flex}.role-head .inline{font-weight:600}.role-cap{color:var(--text2)}.role-cell{text-align:center}.hist-row .grow{overflow-wrap:anywhere;word-break:break-word;min-width:0}.history,.page{min-width:0}.page{overflow-wrap:anywhere}.chart-card,.ins-table{max-width:100%}.page>table.ins-table,.chart-card>table{display:block;overflow-x:auto}@media (width<=900px){.team-row{flex-wrap:wrap}.team-row>.grow{flex-basis:100%}.list .row-meta .date-wrap,.list .row-meta .date-empty,.list .row-meta .prio-btn{display:none}.split>.right{width:260px}}@media (width<=760px){.dash-head{flex-direction:column}.widget{min-width:0}.split .row-meta .sprint-slot{display:none}.ins-table{font-size:.82em}.toolbar .seg{flex-wrap:wrap}}.tpl-name{width:100%;margin:4px 0 8px;font-size:1.5em;font-weight:650}.tpl-tree{border:1px solid var(--line);border-radius:8px;padding:4px 6px 8px;overflow-x:auto}.tpl-row{grid-template-columns:22px minmax(200px,1fr) 96px 76px 56px 240px 110px 118px 132px;align-items:center;gap:6px;min-width:1080px;padding:3px 0;display:grid}.tpl-when select{min-width:150px}.tpl-head{color:var(--text2);text-transform:uppercase;letter-spacing:.03em;border-bottom:1px solid var(--line2);font-size:.78em}.tpl-item{border-bottom:1px solid var(--line2)}.tpl-item.root .tpl-title{font-weight:650}.tpl-title,.tpl-row .inline.num{width:100%}.tpl-when{align-items:center;gap:4px;min-width:0;display:flex}.tpl-when select{flex:1;min-width:150px}.tpl-day{background:var(--hover);white-space:nowrap;color:var(--text2);border-radius:4px;padding:1px 5px;font-size:.75em}.tpl-actions{justify-content:flex-end;gap:0;display:flex}.tpl-more{flex-direction:column;gap:6px;max-width:760px;padding-bottom:8px;display:flex}.tpl-grid{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:12px;margin-bottom:16px;display:grid}.tpl-line{align-items:center;gap:4px;margin-bottom:4px;display:flex}.tpl-line .inline{flex:1;min-width:0}.tpl-line input[type=color]{background:0 0;border:0;width:26px;height:22px;padding:0}.link-btn{text-align:left;font:inherit;color:inherit;cursor:pointer;text-overflow:ellipsis;white-space:nowrap;background:0 0;border:0;min-width:0;padding:0;overflow:hidden}.link-btn:hover{text-decoration:underline}.use-tpl{flex-direction:column;gap:4px;min-width:260px;padding:4px;display:flex}.tpl-list-row{flex-wrap:nowrap}.tpl-name-cell{flex-direction:column;align-items:flex-start;min-width:0;display:flex}.tpl-name-cell .link-btn{max-width:100%;font-weight:500}.tpl-tags{flex-shrink:0;gap:4px;display:flex}.tpl-row-actions{flex-shrink:0;align-items:center;gap:4px;display:flex}@media (width<=760px){.tpl-tags{display:none}}.qa-wrap{min-width:0;display:inline-block;position:relative}.qa-wrap.grow{flex:1}.qa-wrap>input.inline,.qa-wrap>input.card-input{width:100%}.qa-list{min-width:220px}.qa-list .pop-row{text-align:left;align-items:center;gap:8px;width:100%;display:flex}.qa-list .pop-row.active{background:var(--hover)}.qa-keys{border-top:1px solid var(--line2);padding:4px 8px 2px;font-size:.72em}.qa-bar{flex-wrap:wrap;align-items:center;gap:3px;padding:3px 0 2px;font-size:11px;line-height:1.3;display:flex}.qa-chip{border:1px solid var(--line);background:var(--bg);color:var(--text2);cursor:pointer;border-radius:4px;padding:0 5px;font-size:11px}.qa-chip:hover{background:var(--hover);color:var(--text)}.qa-chip b{color:var(--accent);font-weight:600}.qa-preview{flex-wrap:wrap;gap:3px;margin-left:4px;display:inline-flex}.qa-set{background:color-mix(in srgb, var(--accent) 12%, transparent);color:var(--text);border-radius:4px;padding:0 5px}.brand{gap:4px}.ws-btn{cursor:pointer;width:100%;font:inherit;color:var(--text);background:0 0;border:0;border-radius:6px;align-items:center;gap:8px;min-width:0;padding:4px 6px;font-weight:650;display:flex}.ws-btn:hover{background:var(--hover)}.ws-name{text-overflow:ellipsis;white-space:nowrap;text-align:left;overflow:hidden}.ws-mark{color:#fff;border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;font-weight:700;line-height:1;display:inline-flex}.ws-form{min-width:240px}.ws-colors{flex-wrap:wrap;gap:4px;padding:4px 8px;display:flex}.ws-color{cursor:pointer;border:2px solid #0000;border-radius:50%;width:18px;height:18px;padding:0}.ws-color.on{border-color:var(--text)}.today-grid{grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:12px;display:grid}.today-head{align-items:center;gap:8px;margin-bottom:6px;display:flex}.today-row{border:0;border-bottom:1px solid var(--line2);text-align:left;width:100%;font:inherit;color:inherit;cursor:pointer;background:0 0;align-items:center;gap:8px;padding:5px 2px;display:flex}.today-row:hover{background:var(--hover)}.today-row .title{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.pop-label.overdue{color:var(--danger)}.proj-row{position:relative}.proj-row.dragging{opacity:.4}.proj-row.drop-before:before,.proj-row.drop-after:after{content:"";background:var(--accent);z-index:2;border-radius:2px;height:2px;position:absolute;left:8px;right:8px}.proj-row.drop-before:before{top:-1px}.proj-row.drop-after:after{bottom:-1px}.proj-nav{cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:6px;display:flex}.proj-label{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.proj-grip{width:12px;color:var(--text3,#aaa);opacity:0;cursor:grab;flex-shrink:0;margin-left:-10px;display:inline-flex}.proj-grip.blank{cursor:default}.proj-nav:hover .proj-grip:not(.blank){opacity:1}.proj-star{color:var(--text3,#aaa);opacity:0;cursor:pointer;background:0 0;border:0;padding:2px;display:inline-flex}.proj-nav:hover .proj-star,.proj-star.on{opacity:1}.proj-star.on{color:#f5b301}.proj-star.on svg{fill:#f5b301}.icon-kit-btn{cursor:pointer;background:0 0;border:0;border-radius:6px;padding:0;display:inline-flex}.icon-kit-btn:hover{box-shadow:0 0 0 2px var(--hover)}.proj-icon.rollup{background:linear-gradient(135deg,#6d5dfc,#0ea5e9 60%,#10b981)}.proj-emoji{font-size:12px;line-height:1}.proj-icon.big .proj-emoji{font-size:24px}.is-rollup .proj-label{font-weight:600}.rollup-tag{cursor:pointer;background:linear-gradient(135deg,#6d5dfc22,#0ea5e922);border:0}.icon-grid{grid-template-columns:repeat(7,30px);gap:2px;padding:4px 6px;display:grid}.icon-cell{cursor:pointer;width:30px;height:28px;color:var(--text);background:0 0;border:0;border-radius:6px;justify-content:center;align-items:center;display:inline-flex}.icon-cell:hover,.icon-cell.on{background:var(--hover)}.proj-search{border:1px solid var(--line);color:var(--text2);border-radius:6px;align-items:center;gap:6px;margin:2px 8px 4px;padding:3px 8px;display:flex}.proj-search input{min-width:0;font:inherit;color:var(--text);background:0 0;border:0;outline:none;flex:1;font-size:12.5px}.proj-find{color:var(--text3,#999);font:inherit;cursor:pointer;background:0 0;border:0;align-items:center;gap:6px;padding:2px 14px;font-size:12px;display:flex}.proj-find:hover{color:var(--text)}@media (width>=1280px){.page.settings{columns:2;column-gap:18px;max-width:1500px}.page.settings>*{break-inside:avoid}.page.settings>.set-hero,.page.settings>.wide-card{column-span:all}}.add-field2{min-width:330px;padding:2px}.kind-grid{grid-template-columns:1fr 1fr;gap:1px;padding:0 4px;display:grid}.kind-cell{cursor:pointer;font:inherit;color:var(--text);text-align:left;background:0 0;border:0;border-radius:6px;align-items:center;gap:8px;padding:5px 8px;font-size:13px;display:flex}.kind-cell:hover{background:var(--hover)}.kind-cell svg{color:var(--text2)}.kind-settings{flex-direction:column;gap:6px;padding:2px 6px 6px;display:flex}.formula-box{min-height:60px;font-family:ui-monospace,Consolas,monospace;font-size:12.5px}.chip-code{background:var(--hover);cursor:pointer;border-radius:4px;margin:2px 3px 0 0;padding:0 4px;font-size:11px;display:inline-block}.formula-preview{background:var(--hover);border-radius:6px;padding:4px 8px}.rollup-form{flex-direction:column;gap:6px;display:flex}.rollup-form label{align-items:center;gap:8px;font-size:13px;display:flex}.pop-search-row{border:1px solid var(--line);color:var(--text2);border-radius:6px;align-items:center;gap:6px;margin:4px 6px;padding:4px 8px;display:flex}.pop-search-row input{font:inherit;color:var(--text);background:0 0;border:0;outline:none;flex:1;font-size:13px}.prop-panel{min-width:280px}.prop-head{justify-content:space-between;align-items:center;display:flex}.prop-row{cursor:grab;border-radius:6px;align-items:center;gap:8px;padding:3px 8px;font-size:13px;display:flex}.prop-row:hover{background:var(--hover)}.prop-row.dragging{opacity:.4}.computed{color:var(--text);font-variant-numeric:tabular-nums}.computed.num{text-align:right;padding-right:6px;display:block}.computed.err{color:var(--danger);cursor:help}.rel-chip{text-overflow:ellipsis;white-space:nowrap;max-width:140px;overflow:hidden}.calc-row td{border-top:1px solid var(--line);background:var(--bg)}.calc-btn{text-align:right;width:100%;font:inherit;cursor:pointer;color:var(--text);white-space:nowrap;background:0 0;border:0;padding:2px 6px;font-size:12px}.calc-hint{opacity:0;color:var(--text2)}.calc-row:hover .calc-hint{opacity:1}.row-gutter{opacity:0;flex-shrink:0;width:54px;margin-left:-6px;display:inline-flex}.list .row:hover .row-gutter{opacity:1}.gutter-btn{width:18px;height:22px;color:var(--text3,#999);cursor:pointer;background:0 0;border:0;border-radius:4px;justify-content:center;align-items:center;padding:0;display:inline-flex}.gutter-btn:hover{background:var(--hover);color:var(--text)}.gutter-btn.grip{cursor:grab}.list .row.quick{padding-left:38px}.free-grid{display:grid;position:relative}.free-grid.dragging{background-image:linear-gradient(to right, var(--line2) 1px, transparent 1px);background-size:calc(16.6667% + 2px) 100%}.widget.free{height:auto;min-height:0}.widget.free.lifted{border-color:var(--accent);z-index:3;opacity:.92;box-shadow:0 10px 30px #0000002e}.free-ghost{border:2px dashed var(--accent);background:color-mix(in srgb, var(--accent) 8%, transparent);border-radius:12px}.free-grid .grip{cursor:grab;touch-action:none}@media (width<=760px){.free-grid{flex-direction:column;display:flex}.widget.free{min-height:220px}}.every-head{flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:6px;display:flex}.every-head h1{margin:0}.ws-filter{flex-wrap:wrap;gap:4px;display:flex}.ws-chip{border:1px solid var(--line);background:var(--card);font:inherit;cursor:pointer;color:var(--text);border-radius:999px;align-items:center;gap:5px;padding:2px 9px 2px 4px;font-size:12px;display:inline-flex}.ws-chip.off{opacity:.45;text-decoration:line-through}.every-tabs{margin-bottom:12px;padding:0}.every-line{border-bottom:1px solid var(--line2);align-items:center;gap:8px;min-width:0;padding:4px 2px;display:flex}.every-line .check{flex-shrink:0}.ws-dot{border-radius:50%;flex-shrink:0;width:8px;height:8px}.every-title{text-align:left;font:inherit;color:inherit;cursor:pointer;text-overflow:ellipsis;white-space:nowrap;background:0 0;border:0;min-width:0;padding:0;overflow:hidden}.every-title:hover{text-decoration:underline}.every-date{font:inherit;color:var(--text2);background:0 0;border:0;width:118px;font-size:12px}.kpi-row{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:10px;display:grid}.kpi{border:1px solid var(--line);border-top:3px solid;border-radius:10px;padding:8px 10px}.kpi-ws{align-items:center;gap:6px;margin-bottom:4px;font-weight:600;display:flex}.kpi-nums{gap:12px;font-size:13px;display:flex}.kpi-nums b{font-size:18px}.kpi-nums .bad b{color:var(--danger)}.week-strip{grid-template-columns:repeat(7,minmax(0,1fr));gap:6px;height:100%;display:grid}.week-day{border:1px solid var(--line2);border-radius:8px;min-height:80px;padding:4px;overflow:auto}.week-day.today{border-color:var(--accent)}.cal-chip{background:var(--hover);text-overflow:ellipsis;white-space:nowrap;cursor:grab;border-left:3px solid;border-radius:4px;margin-top:3px;padding:1px 5px;font-size:12px;overflow:hidden}.cal-chip.late{color:var(--danger)}.every-cal{border-left:1px solid var(--line2);border-top:1px solid var(--line2);grid-template-columns:repeat(7,minmax(0,1fr));display:grid}.cal-dow{color:var(--text2);border-right:1px solid var(--line2);border-bottom:1px solid var(--line2);padding:4px 6px;font-size:12px}.cal-cell{border-right:1px solid var(--line2);border-bottom:1px solid var(--line2);min-height:112px;padding:4px;overflow:hidden}.cal-cell.out{background:var(--bg);opacity:.6}.cal-cell.today .cal-num{background:var(--accent);color:#fff;border-radius:999px;padding:0 6px;display:inline-block}.cal-cell.over{background:color-mix(in srgb, var(--accent) 10%, transparent)}.cal-num{font-size:12px;font-weight:600}.every-tl{border:1px solid var(--line);border-radius:10px;max-height:calc(100vh - 220px);overflow:auto}.tl-head,.tl-row{display:flex}.tl-head{background:var(--card);z-index:2;border-bottom:1px solid var(--line);position:sticky;top:0}.tl-label{background:var(--card);z-index:1;border:0;border-right:1px solid var(--line2);text-align:left;width:260px;font:inherit;text-overflow:ellipsis;white-space:nowrap;cursor:pointer;color:inherit;flex-shrink:0;padding:4px 8px;font-size:13px;position:sticky;left:0;overflow:hidden}.tl-day{text-align:center;color:var(--text2);flex-shrink:0;padding:2px 0;font-size:10px;line-height:1.2}.tl-day.today{color:var(--accent);font-weight:700}.tl-day.wknd{background:var(--bg)}.tl-group{background:var(--bg);border-left:3px solid;align-items:center;gap:6px;padding:6px 8px;font-weight:600;display:flex;position:sticky;left:0}.tl-row{border-bottom:1px solid var(--line2);height:30px}.tl-track{background-image:linear-gradient(to right, var(--line2) 1px, transparent 1px);flex-shrink:0;position:relative}.tl-now{background:var(--accent);opacity:.5;width:2px;position:absolute;top:0;bottom:0}.tl-bar{color:#fff;cursor:grab;touch-action:none;border-radius:5px;align-items:center;height:20px;margin-left:2px;padding:0 6px;font-size:11.5px;display:flex;position:absolute;top:5px;overflow:hidden}.tl-bar.late{box-shadow:inset 0 0 0 2px var(--danger)}.tl-bar.dragging{opacity:.8;cursor:grabbing}.tl-bar-text{text-overflow:ellipsis;white-space:nowrap;pointer-events:none;overflow:hidden}.tl-end{cursor:ew-resize;width:8px;position:absolute;top:0;bottom:0;right:0}.every-list{grid-template-columns:repeat(auto-fill,minmax(380px,1fr));gap:12px;display:grid}.load-row{align-items:center;gap:8px;margin:6px 0;display:flex}.load-name{white-space:nowrap;align-items:center;gap:6px;width:140px;display:flex;overflow:hidden}.load-bar{background:var(--hover);border-radius:5px;flex:1;height:10px;overflow:hidden}.load-bar span{height:100%;display:block}.overrun{border-top:2px dashed var(--danger);cursor:pointer;z-index:1;height:4px;position:absolute;top:calc(50% - 2px)}.overrun:after{content:"";border-right:2px solid var(--danger);height:12px;position:absolute;top:-7px;right:-1px}.overrun.before:after{border-right:0;border-left:2px solid var(--danger);left:-1px;right:auto}.overrun:hover{border-top-style:solid}.widget-head{min-width:0}.widget-head b{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.widget-head>.spacer{display:none}.widget.free .widget-head .w-seg,.widget.free .widget-head>.icon{opacity:0;flex-shrink:0;transition:opacity .12s}.widget.free:hover .widget-head .w-seg,.widget.free:hover .widget-head>.icon{opacity:1}.invite-link{background:var(--hover);border-radius:8px;flex-wrap:wrap;align-items:center;gap:8px;margin:8px 0;padding:8px 10px;display:flex}.invite-link code{word-break:break-all;flex:1;min-width:200px;font-size:11.5px}.cal-chip.gcal{color:var(--text2);cursor:pointer;background:0 0;border-left-color:#9aa0a6;text-decoration:none;display:block}.g-out{background:var(--hover);border-radius:8px;flex-direction:column;gap:2px;margin-top:8px;padding:8px 10px;display:flex}.btn.disabled{opacity:.5;pointer-events:none}@media (width>=1280px){.page.settings>h1,.page.settings>p{column-span:all}.page.settings>.set-card:has(.team-row){column-span:all}.page.settings>.set-card:has(.role-grid){column-span:all}}.team-row label.small{white-space:nowrap}.overlay.qv{justify-content:center;align-items:center;padding:3vh 3vw;display:flex}.qv-box{background:var(--card);border-radius:12px;flex-direction:column;width:min(1200px,100%);height:100%;display:flex;overflow:hidden;box-shadow:0 20px 60px #00000059}.qv-head{border-bottom:1px solid var(--line);align-items:center;gap:8px;padding:8px 12px;display:flex}.qv-head b{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.qv-body{background:var(--bg);flex:1;justify-content:center;align-items:center;min-height:0;display:flex}.qv-body img{object-fit:contain;max-width:100%;max-height:100%}.qv-body iframe{background:#fff;border:0;width:100%;height:100%}.qv-btn{cursor:pointer;opacity:.6;vertical-align:baseline;background:0 0;border:0;padding:0 3px;font-size:12px}.qv-btn:hover{opacity:1}.file-drop{min-height:100%;position:relative}.file-drop.over:after{content:"";border:2px dashed var(--accent);background:color-mix(in srgb, var(--accent) 6%, transparent);pointer-events:none;z-index:5;border-radius:12px;position:absolute;inset:0}.file-drop-hint{background:var(--accent);color:#fff;z-index:50;pointer-events:none;border-radius:10px;align-items:center;gap:10px;padding:12px 18px;font-weight:600;display:flex;position:fixed;top:45%;left:50%;transform:translate(-50%,-50%)}.toast{background:var(--text);color:var(--bg);z-index:60;border-radius:8px;padding:8px 14px;font-size:13px;position:fixed;bottom:24px;left:50%;transform:translate(-50%)}.files-view{padding:4px 0 40px}.file-gallery{grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:12px;display:grid}.file-card{border:1px solid var(--line);background:var(--card);border-radius:10px;flex-direction:column;display:flex;overflow:hidden}.file-preview{background:var(--bg);cursor:zoom-in;border:0;justify-content:center;align-items:center;height:130px;padding:0;display:flex;overflow:hidden}.file-preview img{object-fit:cover;width:100%;height:100%}.file-ext{color:var(--text2);flex-direction:column;align-items:center;gap:4px;font-size:11px;display:flex}.file-meta{flex-direction:column;gap:2px;min-width:0;padding:8px 10px;display:flex}.file-name{text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:600;overflow:hidden}.file-meta .link-btn{text-overflow:ellipsis;white-space:nowrap;max-width:100%;overflow:hidden}.bar.critical{box-shadow:0 0 0 2px var(--danger)}.lg-crit{width:14px;height:8px;box-shadow:0 0 0 2px var(--danger);border-radius:3px;margin-right:4px;display:inline-block}.baseline-bar{opacity:.7;pointer-events:auto;background:#9aa0a6;border-radius:2px;height:4px;position:absolute;bottom:3px}.baseline-bar.late{background:var(--danger);opacity:.5}.lg-base{vertical-align:middle;background:#9aa0a6;border-radius:2px;width:14px;height:4px;margin-right:4px;display:inline-block}.btn.on{background:color-mix(in srgb, var(--accent) 14%, transparent);border-color:var(--accent)}.files-cell{align-items:center;gap:3px;min-height:22px;display:inline-flex}.fc-item{border:1px solid var(--line);background:var(--bg);cursor:zoom-in;width:24px;height:24px;color:var(--text2);border-radius:4px;justify-content:center;align-items:center;padding:0;display:inline-flex;overflow:hidden}.fc-item img{object-fit:cover;width:100%;height:100%}.fc-add{border:1px dashed var(--line);width:20px;height:20px;color:var(--text3,#999);cursor:pointer;opacity:0;background:0 0;border-radius:4px;justify-content:center;align-items:center;padding:0;display:inline-flex}tr:hover .fc-add,.props .fc-add{opacity:1}.card-cover{object-fit:cover;cursor:zoom-in;border-radius:8px 8px 0 0;width:calc(100% + 20px);height:120px;margin:-10px -10px 8px;display:block}.rating{display:inline-flex}.rating button{cursor:pointer;color:var(--line);background:0 0;border:0;padding:0 1px}.rating button.on{color:#f5b301}.rating button.on svg{fill:#f5b301}.cell-btn.money{font-variant-numeric:tabular-nums}.progress-cell{align-items:center;gap:6px;width:100%;font-size:12px;display:inline-flex}.progress-track{background:var(--hover);border-radius:3px;flex:1;min-width:40px;height:6px;overflow:hidden}.progress-track span{background:var(--ok);height:100%;display:block}.every-tabs{flex-wrap:nowrap;overflow-x:auto}@media (width<=760px){.tl-label,.tl-head>.tl-label{width:140px}}.proj-star:focus-visible,.proj-grip:focus-visible,.icon-kit-btn:focus-visible{opacity:1;outline:2px solid var(--accent)}.danger-row{color:var(--danger)}.cell-edit{opacity:0}td:hover .cell-edit{opacity:.7}.ext-img{margin:4px 0}@media (width<=900px){.app:not(.side-hidden) .sidebar{width:200px!important}}.proj-more{color:var(--text3,#aaa);opacity:0;cursor:pointer;background:0 0;border:0;padding:2px;display:inline-flex}.proj-nav:hover .proj-more,.proj-more:focus-visible{opacity:1}.ctx-menu{z-index:200;min-width:210px}.panel-nav{gap:0;margin-right:6px;display:inline-flex}.panel-head .icon.on{color:var(--accent)}.panel-reopen{z-index:40;border:1px solid var(--line);background:var(--card);width:26px;height:40px;color:var(--text2);cursor:pointer;box-shadow:var(--shadow);border-right:0;border-radius:8px 0 0 8px;justify-content:center;align-items:center;display:flex;position:fixed;top:64px;right:0}.panel-reopen:hover{color:var(--accent);width:32px}.prop-label{cursor:grab;align-items:center;gap:2px;display:flex;position:relative}.prop-grip{opacity:0;color:var(--text3,#aaa);flex-shrink:0;margin-left:-14px}.prop-label:hover .prop-grip{opacity:1}.prop-label.dragging{opacity:.4}.props-foot{align-items:center;gap:10px;margin:2px 0 6px;display:flex}.psec{position:relative}.psec.dragging{opacity:.4}.psec-grip{opacity:0;cursor:grab;color:var(--text3,#aaa);display:inline-flex;position:absolute;top:14px;left:-18px}.psec:hover>.psec-grip{opacity:1}.pop-row.reorderable{padding-left:20px;position:relative}.opt-grip{opacity:0;color:var(--text3,#aaa);cursor:grab;position:absolute;top:50%;left:4px;transform:translateY(-50%)}.pop-row.reorderable:hover .opt-grip{opacity:1}.pop-row.dragging{opacity:.4}.learn-card{padding-top:14px;transition:transform .12s,box-shadow .12s;position:relative}.learn-card:hover{box-shadow:var(--shadow-lg);transform:translateY(-2px)}.learn-icon{color:#fff;border-radius:12px;justify-content:center;align-items:center;width:40px;height:40px;margin-bottom:8px;display:inline-flex;box-shadow:0 4px 12px #0000001f}.comment.assigned{background:color-mix(in srgb, var(--accent) 6%, transparent);border-radius:8px}.comment.resolved{opacity:.7}.comment-assign{background:var(--hover);border-radius:4px;align-items:center;gap:6px;margin-left:6px;padding:1px 6px;font-size:11.5px;display:inline-flex}.color-switch{color:var(--text2);align-items:center;gap:8px;margin:0 2px 8px;font-size:.88em;display:flex}.switch{background:var(--line);cursor:pointer;border:0;border-radius:9px;flex:none;width:30px;height:17px;padding:0;transition:background .12s;position:relative}.switch:after{content:"";background:#fff;border-radius:50%;width:13px;height:13px;transition:left .12s;position:absolute;top:2px;left:2px;box-shadow:0 1px 2px #00000040}.switch.on{background:var(--accent)}.switch.on:after{left:15px}.color-rule{flex-wrap:wrap;align-items:center;gap:4px;padding:3px 2px}.swatches{gap:2px;display:inline-flex}.swatches .ws-color{width:14px;height:14px}.grid .sel-col{position:relative}.row-add{background:var(--hover);width:16px;height:16px;color:var(--text2);cursor:pointer;border:0;border-radius:4px;justify-content:center;align-items:center;padding:0;display:none;position:absolute;top:50%;left:-2px;transform:translateY(-50%)}.grid tr:hover .row-add{display:inline-flex}.insert-row td{background:color-mix(in srgb, var(--accent) 5%, transparent)}.locked-note{color:var(--text2);background:var(--hover);align-items:center;gap:6px;padding:4px 24px;font-size:12px;display:flex}.tab-drag{display:inline-flex}.tab-drag.dragging{opacity:.4}.tab-drag.drop{box-shadow:inset 2px 0 0 var(--accent)}.sprint-tabs{margin:10px 0 2px}.timesheet th,.timesheet td{text-align:center}.timesheet td:first-child,.timesheet th:first-child{text-align:left;min-width:280px}.timesheet .today{background:color-mix(in srgb, var(--accent) 6%, transparent)}.ts-cell{text-align:center;width:54px;font:inherit;background:0 0;border:1px solid #0000;border-radius:4px;padding:2px}.ts-cell:hover,.ts-cell:focus{border-color:var(--line);background:var(--card);outline:none}.ts-total{font-weight:600}.ts-sum td{border-top:1px solid var(--line);font-weight:600}.pop-seg{color:var(--text2);justify-content:space-between;align-items:center;gap:10px;padding:4px 8px;font-size:12px;display:flex}.pop-seg .seg button{padding:2px 8px;font-size:12px}.time-cell{white-space:nowrap;align-items:center;gap:6px;display:inline-flex}.time-play{background:color-mix(in srgb, var(--text2) 22%, transparent);width:20px;height:20px;color:var(--card,#fff);cursor:pointer;border:0;border-radius:50%;flex:none;place-items:center;padding:0;display:inline-grid}.time-play:hover{background:var(--accent)}.time-play.on{background:var(--danger,#e5484d)}.time-play.big{width:26px;height:26px}.time-total{font:inherit;cursor:pointer;color:var(--text);font-variant-numeric:tabular-nums;background:0 0;border:0;border-radius:4px;padding:2px 4px}.time-total:hover{background:var(--hover,#0000000d)}.time-total.on{color:var(--danger,#e5484d);font-weight:600}.time-add{color:var(--text3,#999)}.row:hover .time-add,tr:hover .time-add{color:var(--text2)}.popover.time-pop{width:400px}.time-box{flex-direction:column;gap:8px;padding:4px;display:flex}.time-head{justify-content:space-between;align-items:baseline;display:flex}.time-form{border:1px solid var(--line);border-radius:8px;flex-direction:column;gap:8px;padding:8px;display:flex}.time-dur{align-items:center;gap:8px;display:flex}.time-dur input{font:inherit;background:0 0;border:0;outline:none;flex:1;padding:6px 2px;font-size:14px}.time-live{color:var(--danger,#e5484d);font-variant-numeric:tabular-nums;font-weight:600}.time-when{align-items:center;gap:6px;display:flex}.time-when input[type=date]{width:132px}.time-when select{flex:1;min-width:0}.time-when input,.time-when select{font:inherit;border:1px solid var(--line);background:var(--card);color:var(--text);border-radius:6px;padding:3px 6px;font-size:13px}.time-note{font:inherit;border:1px solid var(--line);background:var(--card);color:var(--text);border-radius:6px;padding:5px 8px;font-size:13px}.time-actions{justify-content:flex-end;display:flex}.time-entries{flex-direction:column;gap:2px;max-height:240px;display:flex;overflow:auto}.time-person{text-align:left;width:100%;font:inherit;cursor:pointer;color:var(--text);background:0 0;border:0;align-items:center;gap:6px;padding:4px 2px;display:flex}.time-entry{border:1px solid var(--line);border-radius:6px;align-items:center;gap:8px;margin-left:20px;padding:5px 8px;font-size:12px;display:flex}.time-cell.idle .time-play{opacity:0}.card:hover .time-cell.idle .time-play,.row:hover .time-cell.idle .time-play{opacity:1}.card .time-cell .time-total{padding:0 2px;font-size:11.5px}.review-tag{padding:0 5px;font-size:10.5px}.mine-note{background:color-mix(in srgb, var(--accent) 8%, transparent);align-items:center;gap:8px;display:flex}.feature-grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:6px 14px;margin-top:8px;display:grid}.proj-caret{width:16px;height:16px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:4px;flex:none;place-items:center;padding:0;display:inline-grid}.proj-caret:hover{background:var(--hover);color:var(--text)}.proj-caret svg{transition:transform .12s}.proj-caret.open svg{transform:rotate(90deg)}.level-presets{flex-direction:column;gap:4px;max-height:260px;margin-bottom:8px;display:flex;overflow:auto}.level-preset{text-align:left;border:1px solid var(--line);background:var(--card);cursor:pointer;font:inherit;color:var(--text);border-radius:8px;flex-direction:column;align-items:flex-start;gap:3px;padding:6px 8px;display:flex}.level-preset:hover{border-color:var(--accent)}.level-preset.on{border-color:var(--accent);background:color-mix(in srgb, var(--accent) 7%, transparent)}.level-chips{flex-wrap:wrap;gap:3px;display:flex}.level-chips .tag{font-size:10.5px}.ws-logo{object-fit:contain;border:1px solid var(--line);background:#fff;padding:1px}.ws-logo-row{align-items:center;gap:8px;padding:4px 8px;display:flex}.ws-logo-preview{object-fit:contain;border:1px solid var(--line);background:#fff;border-radius:6px;width:36px;height:36px}.cover{border-radius:12px;height:150px;margin:0 0 12px;position:relative}.head>.cover{height:120px;margin:0 0 8px}.cover-actions{opacity:0;gap:6px;transition:opacity .12s;display:flex;position:absolute;bottom:10px;right:12px}.cover:hover .cover-actions,.cover-actions:focus-within{opacity:1}.cover-add{height:24px;margin-bottom:2px;display:flex}.cover-add>.picker{opacity:0;transition:opacity .12s}.page:hover>.cover-add>.picker,.head:hover>.cover-add>.picker,.cover-add>.picker:focus-within,.cover-actions.on{opacity:1}.cover.repositioning{cursor:grab;outline:2px solid var(--accent)}.cover.repositioning:active{cursor:grabbing}.cover-hint{color:#fff;pointer-events:none;background:#0000008c;border-radius:6px;padding:4px 10px;font-size:12px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.cover-swatches{grid-template-columns:repeat(4,1fr);gap:6px;padding:4px 6px 8px;display:grid}.cover-swatch{border:1px solid var(--line);cursor:pointer;border-radius:6px;height:34px}.cover-swatch:hover{outline:2px solid var(--accent)}.sc-tabs{margin:6px 0 4px}.sc-tabs button{padding:2px 10px;font-size:12px}.sc-items{flex-direction:column;gap:2px;max-height:280px;display:flex;overflow-y:auto}.sc-item{cursor:grab;border-radius:6px;align-items:center;gap:6px;padding:4px 6px;font-size:12.5px;display:flex}.sc-item:hover{background:var(--hover)}.sc-item.done .grow{color:var(--muted);text-decoration:line-through}.sc-item .grow{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.plan-folded{border:0;border-left:1px solid var(--line);background:var(--bg2);width:30px;color:var(--muted);cursor:pointer;font:inherit;flex-direction:column;flex:none;align-items:center;gap:8px;padding-top:12px;font-size:12px;display:flex}.plan-folded:hover{color:var(--text);background:var(--hover)}.plan-folded span{writing-mode:vertical-rl}.sc-caret{flex:none;place-items:center;width:16px;height:16px;padding:0;display:inline-grid}.sc-item .check{flex:none}.sc-item .cell-btn{padding:0}.sc-actions{gap:2px;display:none}.sc-item:hover .sc-actions{display:inline-flex}.sc-actions .icon{width:20px;height:20px}.sc-sub{cursor:pointer;padding-left:28px}.sc-item .type{background:currentColor;border:0;border-radius:50%;flex:none;width:9px;height:9px;padding:0;font-size:0}.est-text{white-space:nowrap;font-variant-numeric:tabular-nums}.inline.est-input{width:80px}.person-hours{flex-wrap:wrap;gap:4px 10px;display:flex}.person-hours .ph{align-items:center;gap:4px;display:inline-flex}.person-hours .est-input{width:70px}.space-chip{white-space:nowrap;text-overflow:ellipsis;background:color-mix(in srgb, var(--chip) 12%, transparent);max-width:140px;color:var(--text2);border-radius:999px;flex:none;align-items:center;gap:5px;padding:1px 7px 1px 6px;font-size:11.5px;display:inline-flex;overflow:hidden}.space-chip:before{content:"";background:var(--chip);border-radius:50%;flex:none;width:7px;height:7px}.hidden-cols{flex-wrap:wrap;gap:4px;padding:2px 4px 8px;display:flex}.computed.over{color:var(--danger);font-weight:600}.signin{--nt-navy:#243f4f;--nt-teal:#9bb9ba;--nt-text:#4a5f6b;--nt-muted:#7a8c96;--nt-line:#e3eaec;--nt-ring:0 0 0 3px #9bb9ba8c;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;min-height:100vh;color:var(--nt-text);background:radial-gradient(900px 520px at 50% -8%,#9bb9ba40,#0000 70%),#f4f7f8;flex-direction:column;justify-content:center;align-items:center;gap:18px;padding:32px 16px;font-family:ui-sans-serif,-apple-system,Segoe UI,Roboto,sans-serif;font-size:15px;line-height:1.5;display:flex}.signin-card{border:1px solid var(--nt-line);background:#fff;border-radius:16px;flex-direction:column;align-items:stretch;gap:14px;width:100%;max-width:420px;padding:36px;display:flex;box-shadow:0 10px 30px #243f4f14}.signin-logo{align-self:center;width:auto;height:44px;margin-bottom:6px}.signin h1{color:var(--nt-navy);text-align:center;margin:0;font-size:22px;font-weight:600;line-height:1.25;display:block}.signin-sub{color:var(--nt-text);text-align:center;margin:-6px 0 0;font-size:14.5px}.signin-sub b{color:var(--nt-navy);word-break:break-all;font-weight:600}.signin-note{color:var(--nt-muted);margin:0;font-size:14px}.signin-note a{color:var(--nt-navy);font-weight:600}.signin-form{flex-direction:column;gap:12px;display:flex}.signin-field{color:var(--nt-navy);flex-direction:column;gap:6px;font-size:14px;font-weight:500;display:flex}.signin-field input{color:#1b2b35;height:44px;font:inherit;background:#fff;border:1px solid #cbd6da;border-radius:10px;outline:none;padding:0 12px;font-size:15px;font-weight:400}.signin-field input:focus{border-color:var(--nt-teal);box-shadow:var(--nt-ring)}.signin-btn{border:1px solid var(--nt-navy);background:var(--nt-navy);color:#fff;width:100%;height:44px;font:inherit;cursor:pointer;border-radius:10px;justify-content:center;align-items:center;gap:8px;font-size:15px;font-weight:600;display:inline-flex}.signin-btn:hover:not(:disabled){background:#1c3341}.signin-btn.ghost{color:var(--nt-navy);background:#fff;border-color:#cbd6da}.signin-btn.ghost:hover:not(:disabled){background:#f4f7f8}.signin-btn:disabled{opacity:.55;cursor:not-allowed}.signin-btn[aria-busy]{opacity:.85;cursor:progress}.signin-google{color:#1f2a30;background:#fff;border:1px solid #cbd6da;border-radius:10px;justify-content:center;align-items:center;gap:10px;height:44px;font-size:15px;font-weight:600;text-decoration:none;display:flex}.signin-google:hover{background:#f8fafb;border-color:#b7c6cb}.signin-google.busy{pointer-events:none;opacity:.75}.signin-or{color:var(--nt-muted);align-items:center;gap:12px;font-size:13px;display:flex}.signin-or:before,.signin-or:after{content:"";border-top:1px solid var(--nt-line);flex:1}.signin-link{color:var(--nt-navy);font:inherit;text-decoration:underline;-webkit-text-decoration-color:var(--nt-teal);text-decoration-color:var(--nt-teal);text-underline-offset:3px;cursor:pointer;background:0 0;border:0;border-radius:6px;align-self:center;padding:2px 4px;font-size:14px;font-weight:500}.signin-link:hover{-webkit-text-decoration-color:var(--nt-navy);text-decoration-color:var(--nt-navy)}.signin-error{color:#b42318;background:#fef3f2;border:1px solid #fecdca;border-radius:10px;padding:10px 12px;font-size:14px}.signin-sent-icon{width:56px;height:56px;color:var(--nt-navy);background:#9bb9ba47;border-radius:50%;align-self:center;place-items:center;display:grid}.signin-spin{border:2px solid #ffffff73;border-top-color:#fff;border-radius:50%;width:16px;height:16px;animation:.7s linear infinite signin-spin}.signin-spin.dark{border-color:#243f4f40;border-top-color:var(--nt-navy)}@keyframes signin-spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.signin-spin{animation-duration:2s}}.signin :is(button,a):focus-visible{box-shadow:var(--nt-ring);outline:none}.signin-foot{color:var(--nt-muted);text-align:center;flex-direction:column;align-items:center;gap:2px;font-size:13px;display:flex}@media (width<=480px){.signin{justify-content:flex-start;padding:20px 10px}.signin-card{padding:24px}}.tabbar{display:none}@media (width<=760px){.tabbar{z-index:30;background:color-mix(in srgb, var(--card) 94%, transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-top:1px solid var(--line);padding:4px 6px calc(4px + env(safe-area-inset-bottom));justify-content:space-around;align-items:center;display:flex;position:fixed;bottom:0;left:0;right:0}.tabbar>button{color:var(--muted);flex-direction:column;flex:1;justify-content:center;align-items:center;gap:2px;min-height:48px;padding:4px 0;font-size:10.5px;display:flex}.tabbar>button.on{color:var(--accent)}.tabbar .tab-new{background:var(--accent);color:#fff;width:46px;height:46px;min-height:0;box-shadow:0 6px 16px color-mix(in srgb, var(--accent) 40%, transparent);border-radius:50%;flex:none}.tab-icon{display:inline-flex;position:relative}.dot-count{background:var(--danger);color:#fff;text-align:center;border-radius:8px;min-width:16px;height:16px;padding:0 4px;font-size:10px;font-weight:600;line-height:16px;position:absolute;top:-5px;left:13px}.main{padding-bottom:calc(60px + env(safe-area-inset-bottom))}.toast{bottom:calc(76px + env(safe-area-inset-bottom));max-width:92vw}.side-toggle,.app.side-collapsed .side-toggle{display:none!important}.head{padding-left:12px!important}.content>.page,.app.side-collapsed .content>.page{padding-top:calc(14px + env(safe-area-inset-top))}.side-wrap .sidebar{width:min(86vw,320px);padding-top:calc(10px + env(safe-area-inset-top));padding-bottom:calc(70px + env(safe-area-inset-bottom))}.sidebar .nav-btn{padding-top:8px;padding-bottom:8px;font-size:15px}.panel{z-index:35;padding-top:calc(12px + env(safe-area-inset-top))}.list .row-gutter,.list .row .add-tag,.list .row .icon.more,.panel-reopen{display:none}.list .row .indent{width:calc(var(--d,0) * 12px)!important}.list .row .type{background:currentColor;border-radius:50%;flex:none;width:8px;min-width:0;height:8px;padding:0;font-size:0}.list .row{min-height:44px}.title-wrap{min-width:0;overflow:hidden}.list .row .title-wrap{flex:auto}.list .row>.spacer,.list .row .progress-bar{display:none}.list .row .progress{flex:none}.title-btn{text-align:left;text-overflow:ellipsis;white-space:nowrap;width:100%;color:inherit;font:inherit;padding:6px 0;font-weight:500;display:block;overflow:hidden}.inbox-bar .btn,.notify-set .btn{min-height:36px}}.inbox-bar{align-items:center;gap:8px;margin:14px 0 8px;display:flex}.notify-set{border:1px solid var(--line);background:var(--card);border-radius:12px;flex-direction:column;gap:8px;margin-top:12px;padding:12px 14px;display:flex}.notify-row{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.notify-row.indent{gap:6px;padding-left:26px}.notify-row .grow{min-width:180px}.notify-hint{background:var(--accent-soft);border-radius:8px;padding:8px 10px;font-size:13px}.notify-kinds{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:4px 12px;font-size:13.5px;display:grid}.notify-kinds label{align-items:center;gap:6px;display:flex}.popover.share-pop{width:380px;max-height:70vh;left:auto;right:0;overflow:auto}.popover.share-pop .set-card{box-shadow:none;border:0;margin:0;padding:0}.tg{border:1px solid var(--line);background:var(--card);border-radius:8px;overflow:hidden}.tg-err{color:var(--danger);padding:6px 10px}.tg-head{border-bottom:1px solid var(--line);background:var(--bg2);display:grid}.tg-day-head{border-left:1px solid var(--line);min-width:0;padding:6px;font-size:.82em}.tg-day-head.today b,.tg-day-head.today span{color:var(--accent)}.tg-allday{flex-direction:column;gap:2px;min-height:4px;margin-top:4px;display:flex}.tg-due,.tg-chip{background:var(--card);border:1px dashed var(--line);white-space:nowrap;text-overflow:ellipsis;cursor:pointer;border-radius:4px;padding:1px 5px;font-size:.78em;overflow:hidden}.tg-chip{background:var(--accent-soft);border-style:solid}.tg-body{max-height:640px;overflow-y:auto}.tg-grid{display:grid;position:relative}.tg-hours div{color:var(--muted);text-align:right;box-sizing:border-box;padding-right:6px;font-size:.7em;transform:translateY(-6px)}.tg-col{border-left:1px solid var(--line);cursor:crosshair;-webkit-user-select:none;user-select:none;position:relative}.tg-col.weekend{background:var(--bg2)}.tg-slot{border-bottom:1px solid var(--line);box-sizing:border-box}.tg-slot:nth-child(odd){border-bottom-style:solid}.tg-now{background:var(--danger);z-index:3;pointer-events:none;height:2px;position:absolute;left:0;right:0}.tg-ev{z-index:2;background:var(--accent);color:#fff;cursor:pointer;box-shadow:var(--shadow);box-sizing:border-box;border-radius:6px;flex-direction:column;padding:2px 6px;font-size:.76em;display:flex;position:absolute;overflow:hidden}.tg-ev b{white-space:nowrap;text-overflow:ellipsis;font-weight:600;overflow:hidden}.tg-ev span{opacity:.85;white-space:nowrap}.tg-ev.timeblock{background:color-mix(in srgb, var(--accent) 22%, var(--card));color:var(--text);border-left:3px solid var(--accent)}.tg-ev.ro{background:color-mix(in srgb, #9aa0a6 35%, var(--card));color:var(--text)}.tg-ev.declined{opacity:.45;text-decoration:line-through}.tg-ev.draft{background:var(--accent-soft);color:var(--accent);border:1px dashed var(--accent);pointer-events:none}.ev-editor{background:var(--card);box-shadow:var(--shadow-lg);border-radius:12px;flex-direction:column;gap:9px;width:min(560px,94vw);max-height:82vh;padding:14px 16px;display:flex;overflow-y:auto}.ev-head{align-items:center;gap:8px;display:flex}.ev-title{border:none;border-bottom:1px solid var(--line);color:inherit;background:0 0;outline:none;padding:4px 0;font-size:1.15em;font-weight:600}.ev-row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.ev-row input[type=date],.ev-row input[type=time]{border:1px solid var(--line);background:var(--bg);color:inherit;border-radius:6px;padding:3px 6px}.ev-people{align-items:flex-start}.ev-people-list{flex-wrap:wrap;flex:1;gap:4px;display:flex}.ev-person{border:1px solid var(--line);cursor:pointer;border-radius:999px;align-items:center;gap:4px;padding:2px 8px;font-size:.82em;display:inline-flex}.ev-person.on{border-color:var(--accent);background:var(--accent-soft)}.ev-person input{display:none}.ev-resp{color:var(--muted);font-size:.85em}.ev-resp.accepted{color:var(--ok)}.ev-resp.declined{color:var(--danger)}.ev-wide{box-sizing:border-box;width:100%}.ev-msg{color:var(--danger)}.ev-actions{border-top:1px solid var(--line);align-items:center;gap:6px;padding-top:10px;display:flex}.cal-sync{border-top:1px solid var(--line);flex-direction:column;gap:7px;margin-top:12px;padding-top:10px;display:flex}.cal-sync h4{margin:0}.cal-sync-list{flex-wrap:wrap;gap:4px 12px;display:flex}.danger-text{color:var(--danger)}.proposals{border:1px solid var(--accent-line,var(--line));background:var(--accent-soft);border-radius:10px;margin-bottom:14px;padding:10px 12px}.proposals h3{margin:0 0 4px}.proposal{background:var(--card);border:1px solid var(--line);border-radius:8px;flex-direction:column;gap:5px;margin-top:8px;padding:8px 10px;display:flex}.proposal-head{align-items:center;gap:6px;display:flex}.proposal-args{background:var(--bg2);border-radius:6px;max-height:160px;padding:6px;font-size:11px;overflow:auto}.agent-card{border:1px solid var(--line);border-radius:8px;flex-direction:column;gap:6px;margin-top:8px;padding:8px 10px;display:flex}.agent-grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:6px 14px;display:grid}.agent-grid label{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.agent-key{word-break:break-all;font-size:11px}.routine-stats{flex-wrap:wrap;gap:10px;margin:4px 0 14px;display:flex}.routine-stats>div{border:1px solid var(--line);border-radius:8px;flex-direction:column;min-width:84px;padding:6px 12px;display:flex}.routine-stats b{font-size:1.15em}.routine-stats span{color:var(--muted);font-size:.8em}.routine-group{align-items:center;gap:8px;display:flex}.routine-row{gap:8px}.routine-row.paused>.grow{color:var(--muted);text-decoration:line-through;-webkit-text-decoration-color:var(--line);text-decoration-color:var(--line)}.routine-actions{opacity:.35;gap:2px;display:flex}.routine-row:hover .routine-actions{opacity:1}.mode-chip{border:1px solid var(--line);white-space:nowrap;text-align:center;border-radius:10px;width:62px;padding:1px 8px;font-size:11px}.mode-auto-job{color:#2f6fbf;border-color:#8bb8f0}.mode-hybrid{color:#a07415;border-color:#e7c27a}.mode-manual{color:#3b8a32;border-color:#a9d6a1}.mode-unset{color:var(--muted)}.gantt-ghost{opacity:.32;pointer-events:none;border-style:dashed!important}.cal-ghost{opacity:.45;background:0 0;border-style:dashed}.qa-bar{white-space:nowrap;scrollbar-width:none;overflow-x:auto;flex-wrap:nowrap!important}.qa-bar::-webkit-scrollbar{display:none}.qa-chip{padding:0 4px}.qa-chip .qa-l{color:var(--muted);margin-left:2px}.qa-def{color:var(--accent);border-style:dashed}.qa-preview{margin-left:4px}.routine-ctl{flex-wrap:wrap;align-items:center;gap:4px;margin-top:4px;display:flex}.rt-note{border-radius:8px;padding:0 6px;font-size:11px}.rt-note.paused{background:var(--hover);color:var(--muted)}.rt-note.waiting{color:#8a6200;background:#fff4d6}.rt-note.delayed{color:#2f6fbf;background:#e8f1ff}.sop-links{gap:4px;margin-left:6px;display:inline-flex}.sop-links a.tag{text-decoration:none}.routine-tabs{margin:4px 0 0}.routine-table{flex-direction:column;display:flex}.rt-row{border-bottom:1px solid var(--line2);grid-template-columns:34px minmax(220px,2.4fr) 92px minmax(110px,1.2fr) minmax(120px,1fr) 62px 104px 82px 52px 100px;align-items:center;gap:6px;padding:3px 4px;display:grid}.rt-head{background:var(--bg);z-index:1;position:sticky;top:0}.rt-group{align-items:center;gap:8px;padding:12px 4px 4px;display:flex}.rt-title{flex-direction:column;min-width:0;display:flex}.rt-title .grow,.rt-rule{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.rt-est{width:56px}.rt-who{align-items:center;gap:4px;display:flex}select.mode-chip{width:88px;padding:1px 4px}.rtl{border-top:1px solid var(--line2);font-size:12px;display:grid;overflow-x:auto}.rtl>div{border-bottom:1px solid var(--line2);align-items:center;min-height:24px;padding:3px 4px;display:flex}.rtl-h{background:var(--bg);justify-content:center;position:sticky;top:0}.rtl-h.now,.rtl-cell.now{background:var(--accent-soft)}.rtl-g{grid-column:1/-1;font-weight:600;padding-top:10px!important}.rtl-name{white-space:nowrap;text-overflow:ellipsis;cursor:pointer;gap:6px;overflow:hidden}.rtl-cell{justify-content:center}.rtl-dot{background:var(--muted);opacity:.45;color:#fff;border-radius:6px;justify-content:center;align-items:center;min-width:10px;height:10px;padding:0 2px;font-size:9px;display:inline-flex}.rtl-dot.first{opacity:1}.rtl-dot.mode-auto-job{background:#2f6fbf}.rtl-dot.mode-hybrid{background:#c48a12}.rtl-dot.mode-manual{background:#3b8a32}.rtl-cell.wl.ok{background:#e7f6e7}.rtl-cell.wl.near{background:#fff1cc}.rtl-cell.wl.over{background:#fde0de}.routine-row.paused .rt-title>.grow{color:var(--muted);text-decoration:line-through;-webkit-text-decoration-color:var(--line);text-decoration-color:var(--line)}[data-recent]{box-shadow:inset 3px 0 0 var(--accent);background-image:linear-gradient(var(--accent-soft), var(--accent-soft))}[data-flash]{animation:2.4s ease-out newflash}@keyframes newflash{0%{background-color:#ffe58a}to{background-color:#0000}}.nav-subhead{text-transform:uppercase;letter-spacing:.04em;color:var(--muted);padding:8px 12px 2px;font-size:10.5px}tr.draft .qa-bar{z-index:6;background:var(--bg);border:1px solid var(--line2);border-radius:4px;min-width:620px;padding:2px 4px;position:absolute;top:100%;left:0}.routine-badge{background:var(--accent-soft);color:var(--accent);border:1px solid #0000;border-radius:999px;align-items:center;gap:4px;margin-left:8px;padding:1px 8px;font-size:11px;font-weight:600;text-decoration:none;display:inline-flex}.routine-badge:hover{border-color:var(--accent)}.routine-badge.paused,.routine-badge.done{background:var(--hover,#eee);color:var(--muted)}.routine-badge.waiting{color:#8a5a00;background:#fff4db}.routine-badge.delayed{color:#2952a3;background:#e8f0ff}.routine-row[data-focus]{outline:2px solid var(--accent);outline-offset:-2px;border-radius:6px}.routine-mark{color:var(--accent);white-space:nowrap;text-overflow:ellipsis;flex-shrink:0;align-items:center;gap:4px;max-width:100%;font-size:11px;text-decoration:none;display:inline-flex;overflow:hidden}.routine-mark:hover{text-decoration:underline}.routine-mark.paused,.routine-mark.done{color:var(--muted)}.routine-mark.waiting{color:#8a5a00}.routine-mark.delayed{color:#2952a3}.type-cell{align-items:center;display:inline-flex;position:relative}.routine-mark.corner{background:var(--bg,#fff);width:16px;height:16px;box-shadow:0 0 0 1px var(--border,#ddd);z-index:1;border-radius:50%;justify-content:center;position:absolute;top:-7px;right:-9px}.repeat-cell{flex-direction:column;gap:4px;min-width:0;display:flex}.repeat-cell .routine-ctl{flex-wrap:wrap;align-items:center;gap:4px;display:flex}.tags-cell{flex-wrap:wrap;align-items:center;gap:6px;min-width:0;display:flex}.wl-bar.ghost{opacity:.45;border-style:dashed}.routine-summary{padding:6px 0 2px}.routine-summary .routine-stats{margin:4px 0 6px}.routine-summary p{max-width:980px;margin:0 0 4px}.space-note{margin:4px 0 2px}.r-state{align-items:center;gap:6px;display:inline-flex}.jr-wrap{overflow-x:auto}.jr-table{border-collapse:collapse;font-size:12px}.jr-table th{text-align:left;border-bottom:1px solid var(--line2);white-space:nowrap;padding:4px 6px;font-weight:600}.jr-table td{border-bottom:1px solid var(--line2);vertical-align:top;padding:4px 6px}.jr-table td:first-child{min-width:150px}.jr-cell{max-width:110px;font-size:12px}.jr-cell.inherit{color:var(--muted)}.jr-cell.none{color:var(--danger)}.jr-pick{align-items:center;gap:4px;max-width:180px;display:inline-flex}.jr-pick-label{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.page.settings>.set-card:has(.jr-table){column-span:all}.jr-grip{cursor:grab;color:var(--muted);width:18px}.jr-table tr.dragging{opacity:.4}.jr-table tr.drop-here td{border-top:2px solid var(--accent,#7c5cff)}.jr-names{color:var(--text2,inherit);padding:1px 2px}
