:root{--bg: #0f1312;--bg-deep: #0a0d0c;--surface: #161b1a;--surface-2: #1d2423;--surface-3: #242c2a;--line: #262e2c;--line-strong: #38433f;--cal-work: #0f1312;--cal-off: #1c2321;--text: #e7ebe9;--text-dim: #939d99;--text-faint: #6b7570;--accent: #e0a458;--accent-soft: #e0a4581f;--accent-line: #e0a45855;--accent-ink: #1a1206;--danger: #e5646b;--danger-soft: #e5646b1a;--ok: #5fbf95;--r-panel: 10px;--r-ctl: 6px;--r-pill: 999px;--font-sans: "Geist", "Segoe UI Variable Text", "Segoe UI", system-ui, -apple-system, "Helvetica Neue", sans-serif;--font-mono: "Geist Mono", "Cascadia Mono", "JetBrains Mono", ui-monospace, "SFMono-Regular", Consolas, monospace;--shadow-panel: 0 12px 32px -18px rgb(0 0 0 / .75);--shadow-lift: 0 18px 40px -20px rgb(0 0 0 / .85);--ease: cubic-bezier(.16, 1, .3, 1);--w-props: 420px}:root{color-scheme:dark}:root[data-theme=light]{color-scheme:light;--bg: #f4f5f3;--bg-deep: #e9ece9;--surface: #ffffff;--surface-2: #f1f3f0;--surface-3: #e7eae6;--line: #dee2de;--line-strong: #c2c9c3;--cal-work: #ffffff;--cal-off: #e4e8e3;--text: #171c1a;--text-dim: #57615c;--text-faint: #7e8783;--accent: #a3641a;--accent-soft: #a3641a14;--accent-line: #a3641a4d;--accent-ink: #fff8ee;--danger: #b3363d;--danger-soft: #b3363d12;--ok: #2f7d5a;--shadow-panel: 0 10px 26px -18px rgb(23 28 26 / .28);--shadow-lift: 0 16px 34px -18px rgb(23 28 26 / .34)}*{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;background:var(--bg);color:var(--text);font-family:var(--font-sans);font-size:calc(14px * var(--font-scale, 1));line-height:1.5;-webkit-font-smoothing:antialiased;overscroll-behavior:none}button,input,textarea,select{font:inherit;color:inherit}:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:var(--r-ctl)}::selection{background:var(--accent-line);color:var(--text)}.app{display:flex;flex-direction:column;height:100%;min-height:100dvh}.topbar{display:flex;align-items:center;gap:14px;height:52px;padding:0 14px;border-bottom:1px solid var(--line);background:var(--surface)}.brand{display:flex;align-items:center;gap:9px;font-weight:600;letter-spacing:-.015em;white-space:nowrap}.brand-mark{width:22px;height:22px;display:grid;place-items:center;border-radius:var(--r-ctl);background:var(--accent);color:var(--accent-ink)}.crumbs{display:flex;align-items:center;gap:6px;min-width:0;color:var(--text-dim)}.crumbs button{background:none;border:0;padding:2px 4px;color:var(--text-dim);cursor:pointer;border-radius:var(--r-ctl);max-width:30ch;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.crumbs button:hover{color:var(--text);background:var(--surface-2)}.crumbs .sep{color:var(--text-faint)}.crumbs .current{color:var(--text);font-weight:550}.spacer{flex:1}.search{position:relative;display:flex;align-items:center}.search>svg{position:absolute;left:9px;color:var(--text-faint);pointer-events:none}.search input{width:210px;padding:6px 10px 6px 30px;background:var(--surface-2);border:1px solid var(--line);border-radius:var(--r-ctl);transition:width .25s var(--ease),border-color .15s}.search input:focus{width:280px;border-color:var(--accent-line);outline:none}.search input::placeholder{color:var(--text-faint)}.btn{display:inline-flex;align-items:center;gap:6px;padding:6px 11px;background:var(--surface-2);border:1px solid var(--line);border-radius:var(--r-ctl);cursor:pointer;transition:background .15s,border-color .15s,transform .08s;white-space:nowrap}.btn:hover{background:var(--surface-3);border-color:var(--line-strong)}.btn:active{transform:scale(.98)}.btn[disabled]{opacity:.45;cursor:not-allowed}.btn-primary{background:var(--accent);border-color:var(--accent);color:var(--accent-ink);font-weight:560}.btn-primary:hover{background:var(--accent);filter:brightness(1.07);border-color:var(--accent)}.btn-ghost{background:transparent;border-color:transparent;color:var(--text-dim)}.btn-ghost:hover{background:var(--surface-2);color:var(--text);border-color:transparent}.btn-danger{color:var(--danger);border-color:var(--line)}.btn-danger:hover{background:var(--danger-soft);border-color:var(--danger)}.btn-icon{padding:6px}.workspace{min-height:0;position:relative;display:grid;grid-template-rows:minmax(0,1fr);overflow:hidden}.workspace-map{grid-template-columns:1fr}.workspace-timeline,.workspace-board{grid-template-columns:minmax(0,1fr) var(--w-props)}.map{position:relative;background:radial-gradient(1100px 620px at 50% 8%,#ffffff06,transparent 70%),var(--bg-deep);overflow:hidden;cursor:grab;min-height:0}.map.dragging{cursor:grabbing}.map svg{display:block;width:100%;height:100%;touch-action:none}.map-hint{position:absolute;left:16px;bottom:14px;color:var(--text-faint);font-size:calc(12px * var(--font-scale, 1));pointer-events:none;display:flex;gap:14px}.map-hint kbd{font-family:var(--font-mono);font-size:calc(11px * var(--font-scale, 1));padding:1px 5px;border:1px solid var(--line-strong);border-radius:4px;background:var(--surface)}.edge{stroke:var(--line-strong);fill:none}.node{cursor:pointer}.node-ring{fill:none;stroke-width:1.5}.node-body{transition:filter .18s var(--ease)}.node:hover .node-body{filter:brightness(1.25)}.node-label{font-family:var(--font-sans);font-weight:560;fill:var(--text);pointer-events:none;paint-order:stroke}.node-count-board{color:var(--accent);cursor:pointer}.node-count-board:hover{color:var(--text)}.node-count text{font-family:var(--font-mono);font-size:calc(10.5px * var(--font-scale, 1));font-weight:600;fill:var(--text)}.node-late circle{fill:var(--danger)}.node-late text{font-family:var(--font-mono);font-size:calc(10px * var(--font-scale, 1));font-weight:700;fill:#fff}.board{display:grid;grid-template-rows:auto 1fr;min-height:0;min-width:0;background:var(--bg)}.columns{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;background:var(--line);min-height:0;min-width:0}.column{display:grid;grid-template-rows:auto 1fr;background:var(--bg);min-height:0}.column.over{background:var(--surface)}.column.over .column-head{color:var(--accent)}.column.over .column-body{background:var(--accent-soft);box-shadow:inset 0 0 0 1px var(--accent-line)}.column-head{display:flex;align-items:center;gap:7px;padding:9px 11px 7px;color:var(--text-dim);font-size:calc(12px * var(--font-scale, 1));letter-spacing:.02em;border-bottom:1px solid var(--line)}.column-head .count{font-family:var(--font-mono);font-size:calc(11px * var(--font-scale, 1));color:var(--text-faint)}.column-head .wip-over{color:var(--danger)}.column-body{padding:8px;display:flex;flex-direction:column;gap:8px;overflow-y:auto;min-height:0}.column-body>*{flex:0 0 auto}.card{position:relative;display:grid;grid-template-columns:5px 1fr;gap:0;background:var(--surface);border:1px solid var(--line);border-radius:var(--r-panel);overflow:hidden;cursor:grab;transition:border-color .15s,box-shadow .18s var(--ease),transform .08s}.card:hover{border-color:var(--line-strong);box-shadow:var(--shadow-panel)}.card.selected{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent-line)}.card.dragging{opacity:.22;filter:grayscale(1);border-style:dashed}.card.ghost{box-shadow:var(--shadow-lift);cursor:grabbing}.time-gutter{position:relative;background:var(--tf-gutter, transparent)}.card-main{padding:9px 10px 9px 8px;min-width:0}.card-top{display:flex;align-items:flex-start;gap:8px}.card-top .icon-chip{margin-right:5px}.icon-chip{flex:none;width:26px;height:26px;display:grid;place-items:center;border-radius:var(--r-ctl);margin-top:1px}.card-title{flex:1;min-width:0;margin:2px 0 .5em;font-weight:500;line-height:1.35;overflow-wrap:anywhere}.card.done .card-title{color:var(--text-dim)}.card-meta{display:flex;align-items:center;flex-wrap:wrap;gap:5px 9px;margin-top:7px;font-size:calc(11.5px * var(--font-scale, 1));color:var(--text-dim)}.card-meta .m{display:inline-flex;align-items:center;gap:4px}.card-meta .m.late{color:var(--danger)}.card-meta .mono{font-family:var(--font-mono);font-size:calc(11px * var(--font-scale, 1))}.tag{padding:1px 7px;border-radius:var(--r-pill);background:var(--surface-2);border:1px solid var(--line);color:var(--text-dim);font-size:calc(11px * var(--font-scale, 1))}.prio{width:5px;height:5px;border-radius:var(--r-pill);background:var(--text-faint)}.prio.p3{background:var(--accent)}.prio.p4{background:var(--danger)}.subs{margin-top:8px;border-top:1px solid var(--line);padding-top:7px}.subs-collapsed{display:flex;align-items:center;gap:6px;margin-top:7px;color:var(--text-faint);font-size:calc(11.5px * var(--font-scale, 1))}.subs-bar{flex:1;height:2px;border-radius:var(--r-pill);background:linear-gradient(to right,var(--ok) var(--done, 0%),var(--line) var(--done, 0%))}.sub{display:flex;align-items:flex-start;gap:7px;padding:3px 0;color:var(--text-dim);font-size:calc(12.5px * var(--font-scale, 1));cursor:pointer}.sub:hover{color:var(--text)}.sub.done{color:var(--text-faint);text-decoration:line-through}.sub-box{flex:none;margin-top:2px;width:13px;height:13px;border:1px solid var(--line-strong);border-radius:3px;display:grid;place-items:center}.sub.done .sub-box{background:var(--ok);border-color:var(--ok);color:var(--bg)}.card-video{margin-top:8px;border-radius:var(--r-ctl);overflow:hidden;border:1px solid var(--line)}.collapsed-label{writing-mode:vertical-rl;margin:12px auto 0;color:var(--text-dim);font-size:calc(12px * var(--font-scale, 1));letter-spacing:.08em}.props{display:grid;grid-template-rows:auto 1fr auto;border-left:1px solid var(--line-strong);min-height:0;min-width:0}.props-col{display:contents}.props-head{display:flex;align-items:center;gap:10px;padding:10px 12px;border-bottom:1px solid var(--line)}.props-body{overflow-y:auto;padding:12px;display:flex;flex-direction:column;gap:14px;min-height:0}.props-foot{display:flex;gap:8px;align-items:center;padding:10px 12px;border-top:1px solid var(--line)}.modal{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);width:min(430px,calc(100vw - 32px));max-height:min(86dvh,720px);display:grid;grid-template-rows:auto 1fr auto;background:var(--surface);border:1px solid var(--line-strong);border-radius:var(--r-panel);box-shadow:var(--shadow-lift);z-index:51;animation:pop .18s var(--ease)}@keyframes pop{0%{transform:translate(-50%,calc(-50% + 8px));opacity:0}}.modal-head{display:flex;align-items:center;gap:10px;padding:12px 14px;border-bottom:1px solid var(--line)}.modal-body{overflow-y:auto;padding:14px;display:flex;flex-direction:column;gap:14px;min-height:0}.todo-actions{display:flex;gap:8px;flex-wrap:wrap}.muted-note.error{color:var(--danger)}.modal-foot{display:flex;gap:8px;align-items:center;padding:10px 14px;border-top:1px solid var(--line)}.btn-danger-ghost{color:var(--danger);border-color:transparent;background:transparent}.btn-danger-ghost:hover{background:var(--danger-soft);border-color:var(--danger)}.purge-bar{display:flex;gap:10px;align-items:center;flex-wrap:wrap;padding:12px 14px;border-top:2px solid var(--danger);background:var(--danger-soft);color:var(--danger)}.purge-bar>svg{flex:none}.purge-text{display:flex;flex-direction:column;gap:2px;min-width:220px;flex:1}.purge-text strong{font-size:.92rem}.purge-text span{font-size:.82rem;opacity:.85;line-height:1.45}.purge-text code{font-family:ui-monospace,Menlo,Consolas,monospace;font-weight:700;letter-spacing:.04em}.purge-input{width:11ch;flex:none;padding:6px 9px;font-family:ui-monospace,Menlo,Consolas,monospace;letter-spacing:.08em;text-align:center;border:1px solid var(--danger);border-radius:8px;background:var(--surface);color:var(--text)}.drawer-scrim{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000073;animation:fade .18s var(--ease);z-index:40}.drawer{position:fixed;top:0;right:0;bottom:0;width:min(520px,100vw);background:var(--surface);border-left:1px solid var(--line);box-shadow:var(--shadow-lift);display:grid;grid-template-rows:auto 1fr auto;animation:slide-in .24s var(--ease);z-index:41}@keyframes fade{0%{opacity:0}}@keyframes slide-in{0%{transform:translate(18px);opacity:0}}@media(prefers-reduced-motion:reduce){.drawer,.drawer-scrim{animation:none}*{transition-duration:.01ms!important}}.drawer-head{display:flex;align-items:center;gap:10px;padding:12px 14px;border-bottom:1px solid var(--line)}.drawer-body{overflow-y:auto;padding:14px;display:flex;flex-direction:column;gap:16px}.drawer-foot{display:flex;gap:8px;align-items:center;padding:10px 14px;border-top:1px solid var(--line)}.field{display:flex;flex-direction:column;gap:6px}.field>label{font-size:calc(12px * var(--font-scale, 1));color:var(--text-dim)}.field input,.field textarea,.field select{padding:7px 9px;background:var(--surface-2);border:1px solid var(--line);border-radius:var(--r-ctl);width:100%}.field input:focus,.field textarea:focus,.field select:focus{outline:none;border-color:var(--accent-line)}.field input::placeholder,.field textarea::placeholder{color:var(--text-faint)}.field .hint{font-size:calc(11.5px * var(--font-scale, 1));color:var(--text-faint)}.field .err{font-size:calc(11.5px * var(--font-scale, 1));color:var(--danger)}.field textarea{resize:vertical;min-height:74px}.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:12px}.title-input{font-size:calc(17px * var(--font-scale, 1));font-weight:600;letter-spacing:-.01em;background:transparent!important;border-color:transparent!important;padding-left:0!important}.title-input:focus{border-bottom-color:var(--accent-line)!important}.picker-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.swatch{width:22px;height:22px;border-radius:var(--r-ctl);border:1px solid rgb(255 255 255 / .14);cursor:pointer;padding:0}.swatch.on{box-shadow:0 0 0 2px var(--bg),0 0 0 3px var(--accent)}.icon-picker{background:var(--surface-2);border:1px solid var(--line);border-radius:var(--r-ctl);overflow:hidden}.icon-picker .menu-search{margin:0;background:transparent;border:0;border-bottom:1px solid var(--line);border-radius:0}.icon-picker .menu-search:focus{outline:0;background:var(--surface-3)}.icon-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(34px,1fr));gap:5px;max-height:168px;overflow-y:auto;padding:7px}.icon-none{grid-column:1 / -1;padding:6px 2px}.icon-pick{height:32px;display:grid;place-items:center;border:1px solid transparent;border-radius:var(--r-ctl);background:transparent;color:var(--text-dim);cursor:pointer}.icon-pick:hover{background:var(--surface-3);color:var(--text)}.icon-pick.on{border-color:var(--accent);color:var(--accent)}.yt{position:relative;aspect-ratio:16 / 9;background:#000;border-radius:var(--r-ctl);overflow:hidden}.yt img,.yt iframe{width:100%;height:100%;display:block;border:0;object-fit:cover}.yt-play{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;background:linear-gradient(to top,#0000008c,#0000000d);border:0;cursor:pointer;padding:0;color:#fff}.yt-play span{width:46px;height:46px;border-radius:var(--r-pill);display:grid;place-items:center;background:#0000009e;border:1px solid rgb(255 255 255 / .28);transition:transform .15s var(--ease),background .15s}.yt-play:hover span{transform:scale(1.08);background:#000000c7}.yt-out{position:absolute;top:6px;right:6px;display:inline-flex;align-items:center;gap:5px;padding:3px 8px;font-size:calc(11px * var(--font-scale, 1));color:#fff;background:#000000a8;border:1px solid rgb(255 255 255 / .22);border-radius:var(--r-pill);text-decoration:none}.yt-out:hover{background:#000000d9}.yt-title{position:absolute;left:0;right:0;bottom:0;padding:16px 8px 6px;font-size:calc(11.5px * var(--font-scale, 1));color:#fff;background:linear-gradient(to top,rgb(0 0 0 / .8),transparent);pointer-events:none;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.bulkbar{position:absolute;left:50%;bottom:18px;transform:translate(-50%);display:flex;align-items:center;gap:8px;padding:8px 10px;background:var(--surface-2);border:1px solid var(--line-strong);border-radius:var(--r-panel);box-shadow:var(--shadow-lift);z-index:30;animation:rise .2s var(--ease)}@keyframes rise{0%{transform:translate(-50%,10px);opacity:0}}.bulkbar .n{font-family:var(--font-mono);font-size:calc(12px * var(--font-scale, 1));color:var(--accent)}.bulkbar select{padding:5px 8px;background:var(--surface);color:var(--text);border:1px solid var(--line);border-radius:var(--r-ctl)}.empty{display:grid;place-items:center;gap:10px;padding:40px 20px;text-align:center;color:var(--text-faint)}.empty h3{margin:0;font-size:calc(14px * var(--font-scale, 1));font-weight:550;color:var(--text-dim)}.empty p{margin:0;font-size:calc(12.5px * var(--font-scale, 1));max-width:34ch}.skeleton{border-radius:var(--r-panel);background:linear-gradient(90deg,var(--surface) 25%,var(--surface-3) 37%,var(--surface) 63%);background-size:400% 100%;animation:sheen 1.4s ease-in-out infinite}@keyframes sheen{0%{background-position:100% 0}to{background-position:0 0}}@media(prefers-reduced-motion:reduce){.skeleton{animation:none}}.toast{position:fixed;left:50%;bottom:18px;transform:translate(-50%);padding:9px 14px;background:var(--surface-2);border:1px solid var(--line-strong);border-left:3px solid var(--danger);border-radius:var(--r-panel);box-shadow:var(--shadow-lift);z-index:60;max-width:80ch}.login{min-height:100dvh;display:grid;grid-template-columns:1fr;place-items:center;background:radial-gradient(900px 500px at 50% 0%,#ffffff08,transparent 70%),var(--bg-deep);padding:24px}.login form{width:min(340px,100%);display:flex;flex-direction:column;gap:14px;padding:22px;background:var(--surface);border:1px solid var(--line);border-radius:var(--r-panel);box-shadow:var(--shadow-panel)}.login h1{margin:0;font-size:calc(18px * var(--font-scale, 1));letter-spacing:-.02em}.login .sub{margin:0;color:var(--text-dim);font-size:calc(12.5px * var(--font-scale, 1))}@media(max-width:1180px){:root{--w-props: 360px}.search input{width:150px}.search input:focus{width:200px}}@media(max-width:900px){.workspace-board{grid-template-columns:minmax(0,1fr);grid-template-rows:minmax(320px,1fr) auto;overflow-y:auto}.props{border-left:0;border-top:1px solid var(--line)}.columns{grid-template-columns:repeat(4,minmax(160px,1fr));overflow-x:auto}}.spin{animation:spin .9s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){.spin{animation-duration:2.4s}}.muted-note{color:var(--text-faint);font-size:calc(12px * var(--font-scale, 1))}.column.over .drop-hint{border-color:var(--accent-line);color:var(--accent)}.drop-hint{border:1px dashed var(--line);border-radius:var(--r-panel);padding:14px 8px;text-align:center;color:var(--text-faint);font-size:calc(12px * var(--font-scale, 1))}.badge-state{padding:1px 7px;border-radius:var(--r-pill);background:var(--accent-soft);border:1px solid var(--accent-line);color:var(--accent);font-size:calc(10.5px * var(--font-scale, 1));letter-spacing:.01em}.node-add circle{fill:var(--surface-2);stroke:var(--line-strong);stroke-width:1}.node-add g{color:var(--text-dim)}.node-add{opacity:0;transition:opacity .15s var(--ease);cursor:pointer}.node:hover .node-add{opacity:1}.node-add:hover circle{fill:var(--accent);stroke:var(--accent)}.node-add:hover g{color:var(--accent-ink)}.switch{display:inline-flex;padding:2px;gap:2px;background:var(--surface-2);border:1px solid var(--line);border-radius:var(--r-ctl)}.switch button{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;background:transparent;border:0;border-radius:4px;color:var(--text-dim);cursor:pointer;white-space:nowrap;transition:background .15s,color .15s}.switch button:hover{color:var(--text);background:var(--surface-3)}.switch button.on{background:var(--accent);color:var(--accent-ink);font-weight:550}.path{display:flex;align-items:center;gap:3px;min-width:0}.path-sep{color:var(--text-faint);flex:none}.seg{position:relative;display:flex;align-items:center;min-width:0}.seg-main{display:inline-flex;align-items:center;gap:6px;padding:4px 7px;background:none;border:0;color:var(--text-dim);border-radius:var(--r-ctl);cursor:pointer;min-width:0}.seg-main:hover{color:var(--text);background:var(--surface-2)}.seg-main.current{color:var(--text);font-weight:550}.seg-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:20ch}.seg-more{display:grid;place-items:center;width:20px;height:22px;background:none;border:0;color:var(--text-faint);border-radius:var(--r-ctl);cursor:pointer}.seg-more:hover,.seg-more.on{color:var(--accent);background:var(--surface-2)}.seg-menu{position:absolute;top:calc(100% + 5px);left:0;min-width:190px;max-height:320px;overflow-y:auto;padding:4px;background:var(--surface);border:1px solid var(--line-strong);border-radius:var(--r-panel);box-shadow:var(--shadow-lift);z-index:45;animation:pop-down .14s var(--ease)}@keyframes pop-down{0%{transform:translateY(-4px);opacity:0}}.seg-menu button{display:flex;align-items:center;gap:8px;width:100%;padding:6px 8px;background:none;border:0;border-radius:var(--r-ctl);color:var(--text-dim);cursor:pointer;text-align:left}.seg-menu button:hover{background:var(--surface-2);color:var(--text)}.node.dimmed{opacity:.24}.node.near{opacity:.62}.node{transition:opacity .3s var(--ease)}.node-inactive{filter:grayscale(1)}.node-inactive .node-label{fill:var(--text-faint)}.node-inactive:not(.dimmed):not(.near){opacity:.62}.rel-inactive{filter:grayscale(1);opacity:.45}.rel-edge,.rel-label{transition:opacity .3s var(--ease)}.map-tools{position:absolute;right:14px;top:14px;display:flex;gap:4px}.map-tools .btn{width:42px;height:14px;padding:0;gap:0;display:grid;place-items:center}.tl{display:grid;grid-template-rows:auto 1fr auto;min-height:0;min-width:0;background:var(--bg)}.tl-toolbar{display:flex;align-items:center;gap:10px;padding:9px 12px;border-bottom:1px solid var(--line);flex-wrap:wrap}.tl-title{display:inline-flex;align-items:center;gap:7px;font-weight:600}.tl-scroll{overflow:auto;min-height:0}.tl-canvas{position:relative}.tl-head{position:sticky;top:0;z-index:3;display:flex;background:var(--surface);border-bottom:1px solid var(--line)}.tl-corner{position:sticky;left:0;z-index:4;flex:none;padding:6px 10px;background:var(--surface);border-right:1px solid var(--line);color:var(--text-dim);font-size:calc(12px * var(--font-scale, 1));display:flex;align-items:flex-end}.tl-axis{position:relative;height:calc(44px * var(--font-scale, 1));flex:none}.tl-months{position:relative;height:calc(18px * var(--font-scale, 1))}.tl-months span{position:absolute;top:0;font-size:calc(11px * var(--font-scale, 1));color:var(--text-faint);padding-left:6px;border-left:1px solid var(--line);white-space:nowrap;overflow:hidden}.tl-days{position:relative;height:calc(26px * var(--font-scale, 1))}.tl-day{position:absolute;top:0;display:grid;place-items:center;height:calc(26px * var(--font-scale, 1));font-size:calc(10.5px * var(--font-scale, 1));color:var(--text-faint)}.tl-day i{font-style:normal;font-size:calc(9px * var(--font-scale, 1));opacity:.7}.tl-day b{font-weight:500;font-family:var(--font-mono)}.tl-day.weekend{color:var(--text-faint);opacity:.55}.tl-day.today{color:var(--accent)}.tl-day.today b{font-weight:700}.tl-rows{position:relative}.tl-grid-lines{position:absolute;top:0;bottom:0;pointer-events:none}.tl-grid-lines i{position:absolute;top:0;bottom:0;border-left:1px solid var(--line);opacity:.5}.tl-grid-lines i.weekend{background:var(--surface-2);opacity:.45}.tl-today{position:absolute;top:0;bottom:0;width:0;border-left:1px solid var(--accent);opacity:.75}.tl-row{position:relative;display:flex;align-items:center;border-bottom:1px solid var(--line)}.tl-row.on{background:var(--accent-soft)}.tl-label{position:sticky;left:0;z-index:2;flex:none;display:flex;align-items:center;gap:7px;height:100%;padding:0 10px;background:var(--bg);border-right:1px solid var(--line);cursor:pointer;font-size:calc(12.5px * var(--font-scale, 1))}.tl-row.on .tl-label{background:var(--surface-2)}.tl-label span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tl-track{position:relative;flex:1;height:100%}.tl-bar{position:absolute;top:50%;transform:translateY(-50%);height:20px;display:flex;align-items:center;gap:5px;padding:0 5px;border:1px solid;border-radius:var(--r-ctl);cursor:pointer;overflow:hidden;font-size:calc(11.5px * var(--font-scale, 1));color:var(--text)}.tl-bar:hover{filter:brightness(1.25)}.tl-bar.on{box-shadow:0 0 0 2px var(--accent-line)}.tl-bar.done{opacity:.5}.tl-bar-label{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tl-lane{display:block;border-bottom:1px solid var(--line-strong)}.tl-lane.dragging{opacity:.55}.tl-lane-head{position:sticky;left:0;z-index:2;display:flex;align-items:center;gap:7px;padding:5px 10px;background:var(--surface-2);border-right:1px solid var(--line);font-size:calc(12px * var(--font-scale, 1));font-weight:550}.tl-lane-head .count{font-family:var(--font-mono);font-size:calc(11px * var(--font-scale, 1));color:var(--text-faint)}.tl-lane-dot{width:8px;height:8px;border-radius:var(--r-pill);flex:none}.tl-grip{display:grid;place-items:center;color:var(--text-faint);cursor:grab}.tl-grip.off{opacity:.3;cursor:default}.tl-lane-rows{position:relative}.tl-undated{border-top:1px solid var(--line);padding:9px 12px;background:var(--surface);max-height:22dvh;overflow-y:auto}.tl-undated h4{margin:0 0 7px;font-size:calc(12px * var(--font-scale, 1));font-weight:550;color:var(--text-dim)}.tl-chips{display:flex;flex-wrap:wrap;gap:6px}.tl-chip{display:inline-flex;align-items:center;gap:6px;max-width:30ch;padding:4px 9px;background:var(--surface-2);border:1px solid var(--line);border-radius:var(--r-pill);color:var(--text-dim);cursor:pointer;font-size:calc(12px * var(--font-scale, 1))}.tl-chip:hover{border-color:var(--line-strong);color:var(--text)}.tl-chip.on{border-color:var(--accent);color:var(--text)}.tl-chip span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@media(max-width:1180px){.switch button span{display:none}.seg-label{max-width:12ch}}@media(max-width:900px){.workspace-timeline{grid-template-columns:minmax(0,1fr);grid-template-rows:1fr auto}.workspace-timeline .props{border-left:0;border-top:1px solid var(--line);max-height:44dvh}.path{display:none}}.rowsize{display:inline-flex;align-items:center;gap:7px;padding:3px 9px;background:var(--surface-2);border:1px solid var(--line);border-radius:var(--r-ctl);color:var(--text-dim)}.rowsize input[type=range]{width:88px;accent-color:var(--accent)}.rowsize .mono{font-family:var(--font-mono);font-size:calc(11px * var(--font-scale, 1));min-width:2ch;text-align:right}.drop-line{position:relative;height:2px;margin:-3px 2px;border-radius:var(--r-pill);background:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.drop-line:before{content:"";position:absolute;left:-3px;top:-3px;width:8px;height:8px;border-radius:var(--r-pill);background:var(--accent)}.tl.dragging,.tl.dragging *{cursor:grabbing!important;-webkit-user-select:none;user-select:none}.tl-bar{cursor:grab;touch-action:none}.tl-bar.busy{opacity:.85;box-shadow:0 0 0 2px var(--accent-line)}.tl-bar.allday{border-radius:5px}.tl-bar.timed{border-radius:var(--r-pill);padding:0 7px;color:var(--accent-ink);font-family:var(--font-mono);font-size:calc(10.5px * var(--font-scale, 1));letter-spacing:-.01em}.tl-bar.timed .tl-time{white-space:nowrap;overflow:hidden;mix-blend-mode:luminosity;color:#0b0f0e}.tl-handle{position:absolute;top:0;bottom:0;width:5px;cursor:ew-resize;opacity:0;background:var(--accent);transition:opacity .12s var(--ease)}.tl-handle.left{left:-1px;border-radius:4px 0 0 4px}.tl-handle.right{right:-1px;border-radius:0 4px 4px 0}.tl-bar:hover .tl-handle{opacity:.85}.tl-timed-dot{width:5px;height:5px;border-radius:var(--r-pill);background:var(--accent);flex:none}.tl-time-outside{position:absolute;top:50%;transform:translateY(-50%);font-family:var(--font-mono);font-size:calc(10.5px * var(--font-scale, 1));color:var(--text-dim);white-space:nowrap;pointer-events:none}.hist-group{display:inline-flex;gap:4px}.hist{position:relative;display:inline-flex;align-items:center;border:1px solid var(--line);border-radius:var(--r-ctl);background:var(--surface-2)}.hist .btn-ghost{border-radius:var(--r-ctl) 0 0 var(--r-ctl);padding:6px 7px}.hist-more{display:grid;place-items:center;width:22px;align-self:stretch;padding:0;background:none;border:0;border-left:1px solid var(--line);color:var(--text-faint);cursor:pointer;border-radius:0 var(--r-ctl) var(--r-ctl) 0}.hist-more:hover:not(:disabled),.hist-more.on{color:var(--accent);background:var(--surface-3)}.hist-more:disabled{opacity:.35;cursor:not-allowed}.hist-menu{position:absolute;top:calc(100% + 5px);right:0;width:330px;max-height:380px;overflow-y:auto;padding:4px;background:var(--surface);border:1px solid var(--line-strong);border-radius:var(--r-panel);box-shadow:var(--shadow-lift);z-index:46;animation:pop-down .14s var(--ease)}.hist-head{padding:6px 8px 8px;color:var(--text-faint);font-size:calc(11.5px * var(--font-scale, 1));border-bottom:1px solid var(--line);margin-bottom:4px}.hist-item{display:block;width:100%;padding:7px 8px;background:none;border:0;border-radius:var(--r-ctl);text-align:left;cursor:pointer;color:var(--text-dim)}.hist-item:hover{background:var(--surface-2);color:var(--text)}.hist-item-head{display:flex;align-items:baseline;gap:7px}.hist-label{font-size:calc(10.5px * var(--font-scale, 1));padding:1px 6px;border-radius:var(--r-pill);background:var(--accent-soft);border:1px solid var(--accent-line);color:var(--accent);white-space:nowrap}.hist-title{font-weight:550;color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.hist-lines{display:flex;flex-direction:column;gap:1px;margin-top:4px;font-family:var(--font-mono);font-size:calc(10.5px * var(--font-scale, 1));color:var(--text-faint)}.zoom{display:inline-flex;align-items:center;gap:2px;padding:2px;background:var(--surface-2);border:1px solid var(--line);border-radius:var(--r-ctl)}.zoom button{display:grid;place-items:center;width:22px;height:22px;background:none;border:0;border-radius:4px;color:var(--text-dim);cursor:pointer}.zoom button:hover:not(:disabled){background:var(--surface-3);color:var(--text)}.zoom button:disabled{opacity:.35;cursor:not-allowed}.zoom .mono{font-family:var(--font-mono);font-size:calc(11px * var(--font-scale, 1));color:var(--text-faint);min-width:3ch;text-align:center}.tl-label .tl-grip{opacity:0;transition:opacity .12s var(--ease)}.tl-row:hover .tl-label .tl-grip{opacity:1}.tl-label-text{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;cursor:pointer}.tl-row.reordering{opacity:.35}.tl-row.reordering .tl-label{background:var(--surface-3)}.tl-newrow{border-bottom:0}.tl-newrow .tl-label{color:var(--text-faint);border-top:1px dashed var(--line-strong);cursor:default}.tl-newtrack{border-top:1px dashed var(--line-strong);cursor:copy}.tl-newtrack:hover{background:var(--accent-soft)}.tl-track{cursor:copy}.tl-bar{cursor:grab}.bell{position:relative;display:inline-flex}.bell-btn{position:relative}.bell-btn.has{color:var(--accent)}.bell-badge{position:absolute;top:-2px;right:-3px;min-width:15px;height:15px;padding:0 4px;display:grid;place-items:center;border-radius:var(--r-pill);background:var(--accent);color:var(--accent-ink);border:1.5px solid var(--surface);font-family:var(--font-mono);font-size:calc(9.5px * var(--font-scale, 1));font-weight:700;line-height:1}.bell-badge.late{background:var(--danger);color:#fff}.bell-menu{position:absolute;top:calc(100% + 5px);right:0;width:340px;max-height:400px;overflow-y:auto;padding:4px;background:var(--surface);border:1px solid var(--line-strong);border-radius:var(--r-panel);box-shadow:var(--shadow-lift);z-index:47;animation:pop-down .14s var(--ease)}.bell-head{padding:6px 8px 8px;color:var(--text-faint);font-size:calc(11.5px * var(--font-scale, 1));border-bottom:1px solid var(--line);margin-bottom:4px}.bell-item{border-radius:var(--r-ctl);padding:2px}.bell-item:hover{background:var(--surface-2)}.bell-item+.bell-item{margin-top:2px}.bell-item-main{display:flex;align-items:flex-start;gap:8px;width:100%;padding:6px;background:none;border:0;border-radius:var(--r-ctl);text-align:left;cursor:pointer;color:var(--text)}.bell-text{display:flex;flex-direction:column;gap:2px;min-width:0}.bell-title{font-weight:550;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.bell-meta{font-size:calc(11.5px * var(--font-scale, 1));color:var(--text-faint)}.bell-meta.late{color:var(--danger)}.bell-actions{display:flex;align-items:center;gap:4px;padding:0 6px 5px 40px}.bell-snooze{padding:2px 8px;background:var(--surface-2);border:1px solid var(--line);border-radius:var(--r-pill);color:var(--text-dim);font-size:calc(11px * var(--font-scale, 1));cursor:pointer}.bell-snooze:hover{border-color:var(--accent);color:var(--accent)}.bell-snooze-icon{color:var(--text-faint);margin-left:2px}.tl-toolbar{--accent: #9d8a66;--accent-soft: #9d8a6618;--accent-line: #9d8a6647;--accent-ink: #15120c}:root[data-theme=light] .tl-toolbar{--accent: #7a6539;--accent-soft: #7a653914;--accent-line: #7a653945;--accent-ink: #fdfaf3}.tl-toolbar .switch button.on{background:transparent;color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent);font-weight:500}.tl-toolbar .switch button.on:hover{background:var(--accent-soft)}.tl-toolbar .btn-primary{background:transparent;border-color:var(--accent);color:var(--accent);font-weight:500}.tl-toolbar .btn-primary:hover{background:var(--accent-soft);border-color:var(--accent);filter:none}.modal-wide{width:min(620px,calc(100vw - 32px))}.modal-wide .search input{width:170px}.modal-wide .search input:focus{width:200px}.arch-item{display:flex;align-items:center;gap:10px;padding:7px 8px;border-radius:var(--r-ctl)}.arch-item:hover{background:var(--surface-2)}.arch-text{display:flex;flex-direction:column;gap:2px;flex:1;min-width:0}.arch-title{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.arch-meta{font-size:calc(11.5px * var(--font-scale, 1));color:var(--text-faint)}.toast.info{display:flex;align-items:center;border-left-color:var(--ok)}.btn-done{border-color:var(--ok);color:var(--ok);white-space:nowrap}.btn-done:hover:not(:disabled){background:color-mix(in srgb,var(--ok) 14%,transparent);border-color:var(--ok)}.btn-done:disabled{opacity:.4}.celebrate{position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:90}.celebrate canvas{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%}.celebrate-stamp{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%) rotate(-11deg);padding:10px 26px;border:9px solid var(--accent);border-radius:8px;color:var(--accent);font-size:clamp(56px,13vw,190px);font-weight:800;letter-spacing:.06em;animation:stamp-in .45s cubic-bezier(.2,1.6,.4,1) both,stamp-out .5s ease-in 1.3s both}@keyframes stamp-in{0%{transform:translate(-50%,-50%) rotate(-11deg) scale(3);opacity:0}}@keyframes stamp-out{to{opacity:0;transform:translate(-50%,-50%) rotate(-11deg) scale(1.15)}}.celebrate-check{position:absolute;top:50%;left:50%;width:clamp(240px,44vw,560px);height:auto;transform:translate(-50%,-50%);color:var(--ok);stroke-dasharray:120;animation:check-draw .65s ease-out both,stamp-out .6s ease-in 1.25s both}@keyframes check-draw{0%{stroke-dashoffset:120;opacity:.2}to{stroke-dashoffset:0;opacity:1}}@media(prefers-reduced-motion:reduce){.celebrate-stamp,.celebrate-check{animation-duration:.01ms,.01ms}}.btn.armed{background:var(--danger);border-color:var(--danger);color:#fff;font-weight:550;animation:armed-pulse 1.1s ease-in-out infinite}.btn.armed:hover{background:var(--danger);filter:brightness(1.08)}@keyframes armed-pulse{50%{box-shadow:0 0 0 3px color-mix(in srgb,var(--danger) 26%,transparent)}}@media(prefers-reduced-motion:reduce){.btn.armed{animation:none}}.celebrate-flash{position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(circle at 50% 50%,rgb(255 250 240 / .85),rgb(255 220 160 / .28) 35%,transparent 62%);animation:flash-out .55s ease-out both}@keyframes flash-out{0%{opacity:1}to{opacity:0}}@media(prefers-reduced-motion:reduce){.celebrate-flash{display:none}}.status-dot{width:9px;height:9px;border-radius:2.5px;flex:none;display:inline-block}.statsel{position:relative;display:inline-flex}.statsel-btn{display:inline-flex;align-items:center;gap:7px;padding:5px 9px;background:var(--surface-2);border:1px solid var(--line);border-radius:var(--r-ctl);color:var(--text);cursor:pointer;white-space:nowrap}.statsel-btn:hover{border-color:var(--line-strong)}.statsel-btn svg{color:var(--text-faint)}.statsel-menu{position:absolute;top:calc(100% + 5px);left:0;min-width:190px;padding:4px;background:var(--surface);border:1px solid var(--line-strong);border-radius:var(--r-panel);box-shadow:var(--shadow-lift);z-index:48;animation:pop-down .14s var(--ease)}.statsel-menu button{display:flex;align-items:center;gap:8px;width:100%;padding:6px 8px;background:none;border:0;border-radius:var(--r-ctl);color:var(--text-dim);cursor:pointer;text-align:left}.statsel-menu button:hover{background:var(--surface-2);color:var(--text)}.statsel-menu button.on{color:var(--text);font-weight:550}.card.late{background:color-mix(in srgb,var(--danger) 9%,var(--surface));border-color:color-mix(in srgb,var(--danger) 38%,var(--line))}.card.late:hover{border-color:color-mix(in srgb,var(--danger) 58%,var(--line))}.card.late.selected{border-color:var(--accent)}.tl-bar.late{outline:1.5px dashed var(--danger);outline-offset:2px}.tag-badge{display:inline-flex;align-items:center;gap:4px;padding:1px 7px;border:1px solid;border-radius:var(--r-pill);font-size:calc(11px * var(--font-scale, 1));line-height:1.5;white-space:nowrap;max-width:22ch;overflow:hidden;text-overflow:ellipsis}.tag-badge.clickable{cursor:pointer}.tag-badge.clickable:hover{filter:brightness(1.25)}.tag-badge.on{box-shadow:inset 0 0 0 1px currentColor;font-weight:600}.tag-x{display:grid;place-items:center;width:13px;height:13px;margin-right:-3px;padding:0;background:none;border:0;border-radius:var(--r-pill);color:inherit;cursor:pointer;opacity:.65}.tag-x:hover{opacity:1;background:currentColor;color:var(--surface)}.tagedit{position:relative}.tagedit-current{display:flex;flex-wrap:wrap;align-items:center;gap:5px;min-height:30px;padding:5px 7px;background:var(--surface-2);border:1px solid var(--line);border-radius:var(--r-ctl);cursor:pointer}.tagedit-add{display:inline-flex;align-items:center;gap:5px;padding:2px 8px;background:none;border:1px dashed var(--line-strong);border-radius:var(--r-pill);color:var(--text-faint);font-size:calc(11px * var(--font-scale, 1));cursor:pointer}.tagedit-add:hover{border-color:var(--accent);color:var(--accent)}.tagedit-menu{position:absolute;top:calc(100% + 5px);left:0;right:0;z-index:6000;padding:5px;background:var(--surface);border:1px solid var(--line-strong);border-radius:var(--r-panel);box-shadow:var(--shadow-lift);animation:pop-down .14s var(--ease)}.tagedit-list{max-height:230px;overflow-y:auto}.tag-row{display:flex;align-items:center;gap:4px;padding:2px;border-radius:var(--r-ctl)}.tag-row:hover{background:var(--surface-2)}.tag-row.editing{display:block;padding:7px;background:var(--surface-2)}.tag-row.editing input{width:100%;margin-bottom:6px}.tag-check{display:flex;align-items:center;gap:7px;flex:1;min-width:0;padding:4px 6px;background:none;border:0;color:var(--text-dim);cursor:pointer;text-align:left}.tag-count{font-family:var(--font-mono);font-size:calc(10.5px * var(--font-scale, 1));color:var(--text-faint)}.tag-colors{gap:4px;margin-bottom:6px}.tag-colors .swatch{width:17px;height:17px}.tag-row-actions{display:flex;align-items:center;gap:6px}.tagedit-new{display:flex;flex-direction:column;gap:6px;padding:7px 6px 4px;border-top:1px solid var(--line);margin-top:4px}.tagedit-new input{padding:6px 8px;background:var(--surface-2);border:1px solid var(--line);border-radius:var(--r-ctl)}.filterbar{position:relative;display:inline-flex;align-items:center;gap:4px}.filter-menu{position:absolute;top:calc(100% + 6px);right:0;width:340px;max-height:70dvh;overflow-y:auto;padding:10px;background:var(--surface);border:1px solid var(--line-strong);border-radius:var(--r-panel);box-shadow:var(--shadow-lift);z-index:6000;animation:pop-down .14s var(--ease)}.filter-menu section{margin-bottom:12px}.filter-menu h4{margin:0 0 6px;font-size:calc(11.5px * var(--font-scale, 1));font-weight:550;color:var(--text-faint);letter-spacing:.02em}.filter-wrap{display:flex;flex-wrap:wrap;gap:5px}.filter-dates{display:flex;gap:8px;margin-bottom:6px}.filter-dates label{display:flex;align-items:center;gap:5px;font-size:calc(11.5px * var(--font-scale, 1));color:var(--text-dim)}.filter-dates input{padding:4px 6px;background:var(--surface-2);border:1px solid var(--line);border-radius:var(--r-ctl)}.filter-foot{display:flex;align-items:center;gap:8px;padding-top:4px}.chip{display:inline-flex;align-items:center;gap:5px;padding:3px 9px;background:var(--surface-2);border:1px solid var(--line);border-radius:var(--r-pill);color:var(--text-dim);font-size:calc(11.5px * var(--font-scale, 1));cursor:pointer}.chip:hover{border-color:var(--line-strong);color:var(--text)}.chip.on{border-color:var(--accent);color:var(--accent);background:var(--accent-soft)}.pick-area{margin-left:auto;font-size:calc(10.5px * var(--font-scale, 1));color:var(--text-faint)}.props .field>.switch,.props .field>.statsel,.props .field>.tagedit{align-self:flex-start;max-width:100%}.props .field>.statsel{min-width:0}.props .field>.tagedit{width:100%}.statsel-btn{max-width:100%;min-width:0}.statsel-btn>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.props .grid-2 .statsel-menu{left:0;right:0;min-width:0;width:auto;max-width:none}.props .statsel-menu{max-width:calc(var(--w-props) - 28px)}.props .statsel-menu button>span:first-of-type{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.props-body{overflow-x:hidden}.props .field,.props .grid-2>.field{min-width:0}.menu-search{width:100%;margin-bottom:5px;padding:5px 8px;background:var(--surface-2);border:1px solid var(--line);border-radius:var(--r-ctl);font-size:calc(12px * var(--font-scale, 1))}.menu-search::placeholder{color:var(--text-faint)}.menu-group+.menu-group{margin-top:4px;border-top:1px solid var(--line);padding-top:4px}.menu-group-head{display:flex;align-items:center;gap:6px;padding:5px 8px 3px;font-size:calc(10.5px * var(--font-scale, 1));letter-spacing:.04em;text-transform:uppercase;color:var(--text-faint)}.menu-group button{padding-left:20px}.props-sec{display:flex;flex-direction:column;gap:10px;padding:12px;background:var(--surface);border:1px solid var(--line);border-radius:var(--r-ctl)}.props-sec+.props-sec{margin-top:10px}.props-sec-head{display:flex;align-items:center;gap:6px;margin:0;padding-bottom:8px;border-bottom:1px solid var(--line);font-size:calc(11px * var(--font-scale, 1));font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--text-faint)}.props-sec-head svg{color:var(--accent)}.props-sec-note{margin-left:auto;font-variant-numeric:tabular-nums;letter-spacing:0;text-transform:none}.media{display:flex;flex-direction:column;gap:7px}.media-drop{display:flex;flex-direction:column;align-items:center;gap:7px;padding:18px 10px;text-align:center;color:var(--text-faint);background:var(--surface-2);border:1px dashed var(--line-strong);border-radius:var(--r-ctl);cursor:pointer;transition:border-color .15s,background .15s,color .15s}.media-drop p{margin:0;font-size:calc(11.5px * var(--font-scale, 1));line-height:1.4}.media-drop:hover{color:var(--text-dim);border-color:var(--accent)}.media-drop.over{color:var(--accent);border-color:var(--accent);background:color-mix(in srgb,var(--accent) 10%,var(--surface-2))}.media-drop.busy{cursor:progress}.media-drop.static{cursor:default}.media-drop.static:hover{color:var(--text-faint);border-color:var(--line-strong)}.media-shot{position:relative;border-radius:var(--r-ctl);overflow:hidden}.media-shot img{display:block;width:100%;max-height:220px;object-fit:cover}.media-drop-x{position:absolute;top:6px;right:6px;display:grid;place-items:center;width:24px;height:24px;color:#fff;background:#0000009e;border:1px solid rgb(255 255 255 / .24);border-radius:var(--r-ctl);cursor:pointer}.media-drop-x:hover{background:#000000d1}.media-src{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.media-url{display:flex;align-items:center;gap:6px;padding-left:8px;background:var(--surface-2);border:1px solid var(--line);border-radius:var(--r-ctl);color:var(--text-faint)}.media-url input{flex:1;min-width:0;background:transparent;border:0;padding-left:0}@keyframes tf-spin{to{transform:rotate(360deg)}}.spin{animation:tf-spin .9s linear infinite}.prio-icon{display:inline-flex;flex:none;align-items:center}.switch.compact button{padding:4px 7px}.card.lite .card-main{padding-bottom:10px}.card-main{display:flex;flex-direction:column}.card-main>*+*{margin-top:8px}.card-main>.card-top+*{margin-top:4px}.card-main>.card-top+.card-shot,.card-main>.card-top+.card-video{margin-top:2px}.card.lite .card-title{white-space:normal}.card-shot{border-radius:var(--r-ctl);overflow:hidden}.card-shot img{display:block;width:100%;max-height:132px;object-fit:cover}.props{background:var(--bg);background-image:linear-gradient(var(--rail-tint),var(--rail-tint))}:root{--rail-tint: rgb(255 255 255 / .012)}:root[data-theme=light]{--rail-tint: rgb(23 28 26 / .016)}.props-head,.props-foot{background:var(--surface);border-color:var(--line-strong)}.board{background:var(--bg-deep);box-shadow:inset 10px 0 14px -14px #000000d9,inset -10px 0 14px -14px #000000d9}.column{background:var(--bg-deep)}.media-add{display:inline-flex;align-items:center;gap:6px;align-self:flex-start;padding:5px 9px;font-size:calc(11.5px * var(--font-scale, 1));color:var(--text-faint);background:transparent;border:1px dashed var(--line-strong);border-radius:var(--r-ctl);cursor:pointer;transition:color .15s,border-color .15s}.media-add:hover{color:var(--accent);border-color:var(--accent)}.media-shot .yt{border-radius:0}.card.drop-media{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-line)}.card.drop-media *{pointer-events:none}.media-add.over{color:var(--accent);border-style:solid;border-color:var(--accent);background:var(--accent-soft)}.media-add.busy{cursor:progress}.zoomable{cursor:zoom-in}.viewer{position:fixed;top:0;right:0;bottom:0;left:0;z-index:90;display:grid;grid-template-rows:minmax(0,1fr) auto;background:#000000e0;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);animation:pop .16s var(--ease)}.viewer-stage{position:relative;display:grid;place-items:center;overflow:hidden;min-height:0;cursor:grab;touch-action:none}.viewer-stage:active{cursor:grabbing}.viewer-stage img{max-width:min(94vw,100%);max-height:100%;transform-origin:center;will-change:transform;-webkit-user-select:none;user-select:none;-webkit-user-drag:none}.viewer-bar{display:flex;align-items:center;justify-content:center;gap:4px;padding:10px}.viewer-bar button{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-width:34px;height:32px;padding:0 9px;color:#e7ebe9;background:#ffffff14;border:1px solid rgb(255 255 255 / .16);border-radius:var(--r-ctl);cursor:pointer}.viewer-bar button:hover{background:#ffffff2e}.viewer-pct{font-family:var(--font-mono);font-size:calc(12px * var(--font-scale, 1));min-width:62px}.viewer-sep{width:1px;height:20px;margin:0 5px;background:#ffffff2e}.workspace-map{grid-template-columns:minmax(0,1fr) var(--w-props)}.workspace-moodboard,.workspace-immediate{grid-template-columns:1fr}.node-state circle{stroke-width:1.4}.node-board circle{fill:var(--surface);stroke:var(--line-strong)}.node-board{color:var(--accent);cursor:pointer}.node-board:hover circle{stroke:var(--accent)}.node .edge.linking,.edge.linking{stroke:var(--accent);stroke-dasharray:4 4}.node-free-board .node-label{font-style:italic}.immediate{overflow:auto;padding:18px clamp(16px,5vw,56px) 60px;background:var(--bg)}.state-picker{display:grid;grid-template-columns:1fr 1fr;gap:6px}.state-opt{display:inline-flex;align-items:center;gap:6px;padding:7px 9px;font:inherit;font-size:calc(12.5px * var(--font-scale, 1));background:var(--surface-2);color:var(--text-dim);border:1px solid var(--line);border-radius:var(--r-ctl);cursor:pointer;text-align:left}.state-opt:hover{color:var(--text);border-color:var(--line-strong)}.readiness{margin-top:12px;padding:10px;background:var(--surface-2);border:1px solid var(--line);border-radius:var(--r-ctl)}.readiness h4{display:flex;align-items:center;gap:6px;margin:0 0 7px;font-size:calc(11.5px * var(--font-scale, 1));font-weight:600;color:var(--text-dim);text-transform:uppercase;letter-spacing:.06em}.readiness ul{list-style:none;margin:0;padding:0;display:grid;gap:3px}.readiness li{font-size:calc(12.5px * var(--font-scale, 1));color:var(--text-dim)}.readiness li b{font-family:var(--font-mono);color:var(--text);margin-right:5px}.readiness li.warn b{color:var(--accent)}.readiness-deps{margin-top:9px;font-size:calc(12px * var(--font-scale, 1));color:var(--text-dim)}.readiness-deps>span{display:inline-flex;align-items:center;gap:5px}.readiness-deps ul{margin-top:5px}.readiness-deps li{display:flex;gap:8px;align-items:baseline}.readiness-deps button{background:none;border:0;padding:0;cursor:pointer;color:var(--accent);font:inherit;font-size:calc(12px * var(--font-scale, 1));text-align:left}.readiness-deps .c{font-family:var(--font-mono);color:var(--text-faint)}.cluster-jump{display:flex;gap:8px}.cluster-jump .btn{flex:1;justify-content:center}.cluster-jump .n{margin-left:5px;font-family:var(--font-mono);font-size:calc(11px * var(--font-scale, 1));color:var(--accent)}.cluster-counts{display:flex;flex-wrap:wrap;gap:10px;margin:9px 0 0;font-size:calc(11.5px * var(--font-scale, 1));color:var(--text-dim)}.cluster-counts .late{color:var(--danger)}.dep-warn{display:flex;align-items:flex-start;gap:7px;margin:0 0 10px;padding:8px 9px;background:var(--danger-soft);border:1px solid var(--danger);border-radius:var(--r-ctl);font-size:calc(12px * var(--font-scale, 1));color:var(--text)}.dep-block+.dep-block{margin-top:10px}.dep-head{display:flex;align-items:center;justify-content:space-between;font-size:calc(11.5px * var(--font-scale, 1));color:var(--text-dim);text-transform:uppercase;letter-spacing:.06em}.dep-list{list-style:none;margin:4px 0 0;padding:0;display:grid;gap:3px}.dep-ref{display:flex;align-items:center;gap:4px}.dep-ref.done .t{color:var(--text-faint);text-decoration:line-through}.dep-open{flex:1;min-width:0;display:flex;align-items:center;gap:7px;padding:5px 7px;background:var(--surface-2);border:1px solid var(--line);border-radius:var(--r-ctl);color:var(--text);font:inherit;font-size:calc(12.5px * var(--font-scale, 1));cursor:pointer;text-align:left}.dep-open:hover{border-color:var(--line-strong)}.dep-open .dot{width:7px;height:7px;border-radius:50%;flex:0 0 auto}.dep-open .t{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dep-open .s,.dep-open .c{font-size:calc(11px * var(--font-scale, 1));color:var(--text-faint)}.dep-picker{margin-top:6px;padding:7px;background:var(--surface-2);border:1px solid var(--line);border-radius:var(--r-ctl)}.dep-picker ul{list-style:none;margin:6px 0 0;padding:0;max-height:210px;overflow:auto}.dep-picker li button{width:100%;display:flex;align-items:center;gap:7px;padding:5px 6px;background:none;border:0;border-radius:4px;color:var(--text);font:inherit;font-size:calc(12.5px * var(--font-scale, 1));cursor:pointer;text-align:left}.dep-picker li button:hover{background:var(--surface-3)}.dep-picker li button .dot{width:7px;height:7px;border-radius:50%}.dep-picker li button .c{margin-left:auto;font-size:calc(11px * var(--font-scale, 1));color:var(--text-faint)}.dep-picker li.hint{padding:6px;font-size:calc(12px * var(--font-scale, 1));color:var(--text-faint)}.badge-blocked,.badge-parked{font-family:var(--font-mono);font-size:calc(9.5px * var(--font-scale, 1));letter-spacing:.08em;padding:1px 5px;border-radius:var(--r-pill);text-transform:uppercase}.badge-blocked{background:var(--danger-soft);color:var(--danger);border:1px solid var(--danger)}.badge-parked{background:var(--surface-3);color:var(--text-dim);border:1px solid var(--line-strong)}.badge-wait{display:inline-flex;align-items:center;gap:4px;min-width:0;max-width:100%;padding:1px 3px 1px 6px;border-radius:var(--r-pill);background:var(--accent-soft);color:var(--accent);border:1px solid var(--accent-line);font-size:calc(11px * var(--font-scale, 1))}.badge-wait-text{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.badge-wait-clear{display:grid;place-items:center;flex:none;width:16px;height:16px;padding:0;border:0;border-radius:50%;background:transparent;color:inherit;cursor:pointer}.badge-wait-clear:hover{background:var(--surface-2);color:var(--danger)}.card-deps{display:grid;gap:3px;margin-top:7px}.card-dep{font-size:calc(11.5px * var(--font-scale, 1));line-height:1.4;color:var(--text-dim);overflow-wrap:anywhere}.card-dep>svg{vertical-align:-1px;margin-right:4px}.card-dep.wait>svg,.card-dep.wait .card-dep-label{color:var(--danger)}.card-next{display:inline-flex;align-items:center;gap:3px;margin-left:auto;min-width:0;color:var(--text-dim)}.card-next>svg{flex:none;color:var(--accent)}.card-dep-label{font-weight:600;margin-right:4px}.card-dep-label:after{content:":"}.card-dep-ref{color:var(--text);cursor:pointer;text-decoration:underline;text-decoration-color:var(--line-strong);text-underline-offset:2px}.card-dep-ref:hover,.card-dep-ref:focus-visible{text-decoration-color:currentColor;outline:none}.card.done:not(.dragging):not(.ghost),.card.blocked:not(.dragging):not(.ghost){opacity:.62;filter:grayscale(.85);background:var(--surface-2)}.card.done:not(.dragging):not(.ghost):hover,.card.done:not(.dragging):not(.ghost):focus-visible,.card.blocked:not(.dragging):not(.ghost):hover,.card.blocked:not(.dragging):not(.ghost):focus-visible{opacity:.92;filter:grayscale(.4)}.props .field.wait-field{display:flex;flex-direction:row;align-items:center;gap:4px}.props .field.wait-field input{flex:1;min-width:0;width:auto}.wait-since{margin:4px 0 0;font-size:calc(11px * var(--font-scale, 1));color:var(--text-faint)}.moodboard{display:flex;flex-direction:column;min-height:0;background:var(--bg)}.mb-bar,.mb-settings,.mb-foot{flex:0 0 auto}.mb-bar{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:8px 12px;border-bottom:1px solid var(--line);background:var(--surface)}.mb-bar .spacer{flex:1}.mb-picker{max-width:280px;background:var(--surface-2);color:var(--text);border:1px solid var(--line);border-radius:var(--r-ctl);padding:6px 8px;font:inherit;font-size:calc(12.5px * var(--font-scale, 1))}.mb-add{display:flex;gap:2px}.mb-add label{cursor:pointer}.mb-zoom{font-family:var(--font-mono);font-size:calc(11.5px * var(--font-scale, 1));min-width:54px;justify-content:center}.btn.on{color:var(--accent)}.mb-pen{display:flex;align-items:center;gap:5px}.pen-color{width:15px;height:15px;padding:0;border-radius:50%;border:1px solid var(--line-strong);cursor:pointer}.pen-color.on{box-shadow:0 0 0 2px var(--bg),0 0 0 3px var(--accent)}.mb-pen input[type=range]{width:84px}.mb-settings{display:flex;gap:18px;flex-wrap:wrap;align-items:center;padding:9px 12px;background:var(--surface-2);border-bottom:1px solid var(--line);font-size:calc(12px * var(--font-scale, 1));color:var(--text-dim)}.mb-settings label{display:inline-flex;align-items:center;gap:8px}.mb-settings b{font-family:var(--font-mono);color:var(--text)}.mb-settings .hint{margin:0;color:var(--text-faint)}.mb-stage{position:relative;flex:1 1 auto;min-height:0;overflow:hidden}.mb-stage.dropping{outline:2px dashed var(--accent);outline-offset:-8px}.mb-dropzone{position:absolute;top:0;right:0;bottom:0;left:0;z-index:6;display:flex;align-items:center;justify-content:center;gap:10px;background:color-mix(in srgb,var(--bg) 78%,transparent);color:var(--accent);font-size:calc(14px * var(--font-scale, 1));pointer-events:none}.mb-save-error{position:absolute;right:14px;bottom:14px;z-index:7;display:flex;align-items:center;gap:10px;padding:8px 12px;font-size:calc(12.5px * var(--font-scale, 1));background:var(--surface);color:var(--danger);border:1px solid var(--danger);border-radius:var(--r-panel);box-shadow:var(--shadow-panel)}.mb-foot{display:flex;align-items:center;gap:14px;padding:6px 12px;border-top:1px solid var(--line);background:var(--surface);font-size:calc(11.5px * var(--font-scale, 1));color:var(--text-faint)}.mb-foot .spacer{flex:1}.mb-name{width:180px;background:var(--surface-2);color:var(--text);border:1px solid var(--line);border-radius:var(--r-ctl);padding:4px 7px;font:inherit;font-size:calc(12px * var(--font-scale, 1))}.bcanvas{position:absolute;top:0;right:0;bottom:0;left:0;overflow:hidden;touch-action:none;background:radial-gradient(circle at 1px 1px,var(--line) 1px,transparent 0) 0 0 / 24px 24px,var(--bg-deep)}.bcanvas.drawing{cursor:crosshair}.bcanvas-vectors{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}.bcanvas-vectors .bi-connector,.bcanvas-vectors .bi-freehand,.bcanvas-vectors .bi-shape{pointer-events:auto}.bcanvas.drawing .bcanvas-vectors{pointer-events:none}.bi-connector.selected line:first-of-type,.bi-freehand.selected path,.bi-shape.selected path{filter:drop-shadow(0 0 3px var(--accent))}.bcanvas-stroke{opacity:.95}.bcanvas-link{stroke:var(--accent);stroke-width:1.6;stroke-dasharray:5 4}.bcanvas-snap{fill:var(--accent);stroke:var(--bg);stroke-width:1.5}.bcanvas-marquee{fill:var(--accent-soft);stroke:var(--accent);stroke-width:1;stroke-dasharray:4 3;vector-effect:non-scaling-stroke}.bcanvas-selection{fill:none;stroke:var(--accent);stroke-width:1;stroke-dasharray:3 3;vector-effect:non-scaling-stroke}.bcanvas-items{position:absolute;top:0;left:0;transform-origin:0 0;width:0;height:0}.bitem{position:absolute;overflow:hidden;border-radius:6px}.bitem.selected{outline:1px solid var(--accent);outline-offset:2px}.bcanvas-handles{position:absolute;pointer-events:none}.bcanvas-handles .handle{position:absolute;width:9px;height:9px;background:var(--surface);border:1.5px solid var(--accent);border-radius:2px;pointer-events:auto}.handle.nw{left:-5px;top:-5px;cursor:nwse-resize}.handle.ne{right:-5px;top:-5px;cursor:nesw-resize}.handle.se{right:-5px;bottom:-5px;cursor:nwse-resize}.handle.sw{left:-5px;bottom:-5px;cursor:nesw-resize}.bi-text{width:100%;height:100%;padding:8px 10px;white-space:pre-wrap;word-break:break-word;overflow:hidden;background:var(--surface);border:1px solid var(--line);border-radius:6px}.bi-text-edit{width:100%;height:100%;padding:8px 10px;resize:none;background:var(--surface);color:var(--text);border:1px solid var(--accent);border-radius:6px;font-family:inherit}.bi-text-edit:focus{outline:none}.bi-placeholder{color:var(--text-faint)}.bi-image{width:100%;height:100%;object-fit:contain;display:block}.bi-pdf{width:100%;height:100%;position:relative;background:var(--surface);border:1px solid var(--line);border-radius:6px;display:flex;align-items:flex-start;justify-content:center;overflow:hidden}.bi-pdf canvas{max-width:100%}.bi-pdf-bar{position:absolute;left:0;right:0;bottom:0;display:flex;align-items:center;justify-content:center;gap:8px;padding:4px;background:color-mix(in srgb,var(--surface) 88%,transparent);border-top:1px solid var(--line);font-size:calc(11px * var(--font-scale, 1));color:var(--text-dim)}.bi-pdf-bar button,.bi-pdf-bar a{background:none;border:0;color:var(--text-dim);cursor:pointer;display:inline-flex;align-items:center;padding:2px}.bi-pdf-bar button:disabled{opacity:.35;cursor:default}.bi-pdf-bar button:hover:not(:disabled),.bi-pdf-bar a:hover{color:var(--accent)}.bi-link-card,.bi-link{display:flex;flex-direction:column;gap:3px;justify-content:center;width:100%;height:100%;padding:9px 11px;text-decoration:none;background:var(--surface);border:1px solid var(--line);border-radius:6px;color:var(--text);font-size:calc(13px * var(--font-scale, 1));overflow:hidden}.bi-link-card .t{display:flex;align-items:center;gap:6px;font-weight:550}.bi-link-card .d{font-size:calc(11.5px * var(--font-scale, 1));color:var(--text-dim)}.bi-link-card .u{font-size:calc(11px * var(--font-scale, 1));color:var(--text-faint);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.bi-link-card:hover{border-color:var(--accent-line)}.bi-task,.bi-cluster{display:grid;grid-template-columns:auto 1fr;grid-template-rows:auto auto;gap:2px 8px;align-content:center;width:100%;height:100%;padding:8px 10px;background:var(--surface);border:1px solid var(--line);border-radius:6px;font-size:calc(13px * var(--font-scale, 1))}.bi-task .icon,.bi-cluster .icon{grid-row:1 / span 2;align-self:center;width:26px;height:26px;border-radius:6px;display:inline-flex;align-items:center;justify-content:center}.bi-task .t,.bi-cluster .t{font-weight:550;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.bi-task .meta,.bi-cluster .meta{display:flex;align-items:center;gap:6px;font-size:calc(11px * var(--font-scale, 1));color:var(--text-dim)}.bi-task .meta .dot{width:7px;height:7px;border-radius:50%}.bi-task .meta .blocked{color:var(--danger);font-weight:600}.bi-task .meta .due{font-family:var(--font-mono)}.bi-missing{display:flex;align-items:center;justify-content:center;gap:7px;width:100%;height:100%;padding:8px;background:var(--surface-2);border:1px dashed var(--line-strong);border-radius:6px;color:var(--text-faint);font-size:calc(12px * var(--font-scale, 1));text-align:center}.mb-menu-scrim{position:absolute;top:0;right:0;bottom:0;left:0;z-index:8}.mb-menu{position:absolute;z-index:9;list-style:none;margin:0;padding:4px;min-width:180px;background:var(--surface);border:1px solid var(--line-strong);border-radius:var(--r-panel);box-shadow:var(--shadow-lift)}.mb-menu button{width:100%;display:flex;align-items:center;gap:8px;padding:7px 9px;background:none;border:0;border-radius:var(--r-ctl);color:var(--text);font:inherit;font-size:calc(12.5px * var(--font-scale, 1));cursor:pointer;text-align:left}.mb-menu button:hover{background:var(--surface-2)}.mb-menu button.danger{color:var(--danger)}.keep-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(288px,1fr));gap:12px;align-items:start}.keep{position:relative;display:flex;flex-direction:column;gap:6px;padding:10px 11px 6px;background:var(--surface);border:1px solid var(--line);border-left:3px solid var(--keep-accent, var(--line-strong));border-radius:var(--r-panel);box-shadow:var(--shadow-panel)}.keep.tinted,.keep-detail.tinted{--keep-tint: 20%;background:color-mix(in srgb,var(--keep-accent) var(--keep-tint),var(--surface));border-color:color-mix(in srgb,var(--keep-accent) 35%,var(--line));border-left-color:var(--keep-accent)}:root[data-theme=light] .keep.tinted,:root[data-theme=light] .keep-detail.tinted{--keep-tint: 14%}.keep:hover{border-color:var(--line-strong);border-left-color:var(--keep-accent)}.keep.tinted:hover{border-color:color-mix(in srgb,var(--keep-accent) 55%,var(--line))}.keep.dragging{opacity:.35}.keep.over{outline:2px dashed var(--accent);outline-offset:2px}.keep.done{opacity:.6}.keep.done .keep-title{text-decoration:line-through;color:var(--text-dim)}.keep.waiting{opacity:.78}.keep.recheck{opacity:1;border-color:var(--accent)}.keep-head{display:flex;align-items:center;gap:7px}.keep-icon{flex:0 0 auto;width:26px;height:26px;padding:0;display:inline-flex;align-items:center;justify-content:center;background:color-mix(in srgb,var(--keep-accent, var(--surface-3)) 18%,transparent);color:var(--keep-accent, var(--text-dim));border:0;border-radius:var(--r-ctl);cursor:pointer}.keep-title{flex:1;min-width:0;background:none;border:0;padding:0;color:var(--text);font:inherit;font-size:calc(14px * var(--font-scale, 1));font-weight:600}.keep-title:focus{outline:none}.keep-pin{background:none;border:0;padding:2px;cursor:pointer;color:var(--text-faint);display:inline-flex}.keep-pin:hover{color:var(--text)}.keep-pin.on{color:var(--accent)}.keep-body{width:calc(100% + 8px);resize:none;overflow-y:auto;min-height:calc(2em * var(--keep-text-lh, 1.45) + 4px);background:none;border:0;padding:2px 4px;margin:-2px -4px;color:var(--text-dim);font:inherit;font-size:var(--keep-text-size, calc(13px * var(--font-scale, 1)));line-height:var(--keep-text-lh, 1.45)}.keep-body:focus{outline:none;color:var(--text)}.keep-body::placeholder{color:var(--text-faint)}.keep-checks{list-style:none;margin:2px 0 0;padding:0;display:grid;gap:2px}.keep-check{display:flex;align-items:center;gap:6px}.keep-check.done .keep-check-text{color:var(--text-faint);text-decoration:line-through}.keep-box{flex:0 0 auto;width:15px;height:15px;padding:0;border:1.5px solid var(--line-strong);border-radius:4px;background:transparent;color:var(--accent-ink);cursor:pointer;display:inline-flex;align-items:center;justify-content:center}.keep-box[aria-pressed=true]{background:var(--ok);border-color:var(--ok)}.keep-check-text{flex:1;min-width:0;background:none;border:0;padding:1px 0;color:var(--text);font:inherit;font-size:var(--keep-check-size, calc(13px * var(--font-scale, 1)));line-height:var(--keep-text-lh, 1.45)}.keep-check-text:focus{outline:none}.keep-when{display:inline-flex;align-items:center;gap:3px;padding:1px 5px;border-radius:var(--r-pill);background:var(--surface-2);border:1px solid var(--line);color:var(--text-dim);font-family:var(--font-mono);font-size:calc(10px * var(--font-scale, 1));cursor:pointer}.keep-when.late{color:var(--danger);border-color:var(--danger)}.keep-when-edit{background:var(--surface-2);color:var(--text);border:1px solid var(--accent-line);border-radius:var(--r-ctl);padding:1px 4px;font:inherit;font-size:calc(11px * var(--font-scale, 1))}.keep-row-btn{background:none;border:0;padding:2px;cursor:pointer;color:var(--text-faint);opacity:0;display:inline-flex}.keep-check:hover .keep-row-btn{opacity:1}.keep-row-btn:hover{color:var(--text)}.keep-add-check{display:flex;align-items:center;gap:6px;color:var(--text-faint)}.keep-add-check input{flex:1;min-width:0;background:none;border:0;padding:2px 0;color:var(--text);font:inherit;font-size:calc(13px * var(--font-scale, 1))}.keep-add-check input:focus{outline:none}.keep-meta{display:flex;flex-wrap:wrap;gap:5px}.keep-meta .chip{display:inline-flex;align-items:center;gap:4px;padding:1px 7px;border-radius:var(--r-pill);background:var(--surface-2);border:1px solid var(--line);color:var(--text-dim);font-size:calc(11px * var(--font-scale, 1))}.keep-meta .chip.late{color:var(--danger);border-color:var(--danger)}.keep-meta .chip.wait{color:var(--accent);border-color:var(--accent-line)}.keep-recheck{display:flex;align-items:center;gap:6px;flex-wrap:wrap;padding:6px 8px;font-size:calc(12px * var(--font-scale, 1));background:var(--accent-soft);border:1px solid var(--accent-line);border-radius:var(--r-ctl)}.keep-panel{display:flex;flex-wrap:wrap;gap:6px;padding:8px;margin-top:2px;min-width:0;max-width:100%;box-sizing:border-box;background:var(--surface-2);border:1px solid var(--line);border-radius:var(--r-ctl)}.keep-panel .search{flex:1 0 100%;display:flex;align-items:center;gap:6px;padding:4px 7px;background:var(--surface);border:1px solid var(--line);border-radius:var(--r-ctl);color:var(--text-faint)}.keep-panel .search input{flex:1;min-width:0;background:none;border:0;color:var(--text);font:inherit;font-size:calc(12px * var(--font-scale, 1))}.keep-panel .search input:focus{outline:none}.keep-icons .icon-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(28px,1fr));gap:3px;max-height:168px;overflow:auto;width:100%}.keep-more{display:grid;grid-template-columns:1fr;gap:8px}.keep-more .field>span{font-size:calc(11px * var(--font-scale, 1));color:var(--text-dim)}.keep-more .field{min-width:0}.keep-more input,.keep-more select{width:100%;min-width:0;box-sizing:border-box;background:var(--surface);color:var(--text);border:1px solid var(--line);border-radius:var(--r-ctl);padding:5px 7px;font:inherit;font-size:calc(12px * var(--font-scale, 1))}.keep-foot{display:flex;align-items:center;gap:2px;margin-top:2px;padding-top:5px;border-top:1px solid var(--line)}.keep-foot .spacer{flex:1}.keep-foot>button{background:none;border:0;padding:4px;border-radius:var(--r-ctl);color:var(--text-faint);cursor:pointer;display:inline-flex;align-items:center}.keep-foot>button:hover{color:var(--text);background:var(--surface-2)}.keep-foot>button.on{color:var(--accent)}.keep-check-all{gap:5px!important;font:inherit;font-size:calc(11.5px * var(--font-scale, 1));padding:4px 8px!important}.keep-check-all[aria-pressed=true]{color:var(--ok)!important}.keep-danger{background:none;border:0;padding:4px;border-radius:var(--r-ctl);color:var(--text-faint);cursor:pointer;display:inline-flex;align-items:center;font:inherit;font-size:calc(11.5px * var(--font-scale, 1));gap:5px}.keep-danger:hover{color:var(--danger);background:var(--danger-soft)}.keep-simple{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:start;gap:8px;padding:10px 10px 10px 11px;cursor:pointer;transition:box-shadow .15s var(--ease)}.keep-simple:hover{box-shadow:var(--shadow-lift)}.keep-simple:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.keep-simple .keep-icon{cursor:inherit}.keep-text{display:grid;gap:3px;min-width:0;padding-top:4px}.keep-t{font-size:calc(14px * var(--font-scale, 1));font-weight:600;line-height:1.3;color:var(--text);overflow-wrap:anywhere}.keep-n{font-size:calc(12.5px * var(--font-scale, 1));line-height:1.4;color:var(--text-dim);overflow-wrap:anywhere}.keep.done .keep-t{text-decoration:line-through;color:var(--text-dim)}.md{display:grid;gap:5px;min-width:0}.md p{margin:0;overflow-wrap:anywhere}.md h1,.md h2,.md h3{margin:0;line-height:1.3;font-weight:700;color:var(--text)}.md h1{font-size:1.15em}.md h2{font-size:1.08em}.md h3{font-size:1em}.md ul,.md ol{margin:0;display:grid;gap:2px}.md ul{padding-left:1.35em}.md ol{padding-left:2.2em}.md li{overflow-wrap:anywhere}.md li>p{margin:0}.md li.md-task{list-style:none;margin-left:-1.35em;display:flex;gap:5px}.md-task-mark{flex:0 0 auto;color:var(--text-faint)}.md blockquote{margin:0;padding:1px 0 1px 8px;border-left:2px solid var(--line-strong);color:var(--text-dim)}.md code{font-family:var(--font-mono);font-size:.92em;background:var(--surface-2);border-radius:var(--r-ctl);padding:0 3px}.md pre{margin:0;padding:6px 8px;overflow-x:auto;background:var(--surface-2);border-radius:var(--r-ctl)}.md pre code{background:none;padding:0}.md hr{margin:2px 0;border:0;border-top:1px solid var(--line)}.md a{color:var(--accent);text-decoration:underline}.md del{color:var(--text-faint)}.md-clamp{max-height:calc(var(--md-clamp, 3) * 1.45em);overflow:hidden}.md-cut{-webkit-mask-image:linear-gradient(to bottom,#000 calc(100% - 1.6em),transparent);mask-image:linear-gradient(to bottom,#000 calc(100% - 1.6em),transparent)}.md-inline{display:inline}.md-inline code{font-size:.92em}.keep-body-view,.keep-check-view{cursor:text;border-radius:var(--r-ctl);padding:2px 4px;margin:-2px -4px;color:var(--text-dim);font-size:var(--keep-text-size, calc(13px * var(--font-scale, 1)));line-height:var(--keep-text-lh, 1.45)}.keep-check-view{color:var(--text);padding:1px 0;margin:0;font-size:var(--keep-check-size, calc(13px * var(--font-scale, 1)))}.keep-body-view:hover,.keep-check-view:hover{background:var(--surface-2)}.keep-body-view:focus-visible,.keep-check-view:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.keep-solve{display:inline-flex;align-items:center;gap:4px;padding:4px 9px;border-radius:var(--r-pill);background:var(--surface);border:1px solid var(--line-strong);color:var(--text-dim);font:inherit;font-size:calc(11.5px * var(--font-scale, 1));font-weight:600;white-space:nowrap;cursor:pointer}.keep-solve:hover{color:var(--ok);border-color:var(--ok);background:color-mix(in srgb,var(--ok) 12%,var(--surface))}.keep-solve[aria-pressed=true]{background:var(--ok);border-color:var(--ok);color:var(--accent-ink)}.keep-detail{width:min(1120px,calc(100vw - 32px));max-height:min(90dvh,830px);grid-template-rows:1fr;border-left:3px solid var(--keep-accent, var(--line-strong))}.keep-detail-body{gap:8px;padding:12px 14px 8px}.keep-detail .keep-title{font-size:calc(16px * var(--font-scale, 1))}.keep-detail.done .keep-title{text-decoration:line-through;color:var(--text-dim)}.keep-close{background:none;border:0;padding:2px;cursor:pointer;color:var(--text-faint);display:inline-flex}.keep-close:hover{color:var(--text)}.bsel-toolbar{position:absolute;z-index:7;display:flex;align-items:center;gap:3px;padding:4px 6px;background:var(--surface);border:1px solid var(--line-strong);border-radius:var(--r-panel);box-shadow:var(--shadow-lift)}.bsel-toolbar>button{background:none;border:0;padding:4px;border-radius:var(--r-ctl);color:var(--text-dim);cursor:pointer;display:inline-flex;align-items:center}.bsel-toolbar>button:hover{color:var(--text);background:var(--surface-2)}.bsel-toolbar>button.on{color:var(--accent-ink);background:var(--accent)}.bsel-toolbar select{background:var(--surface-2);color:var(--text);border:1px solid var(--line);border-radius:var(--r-ctl);padding:3px 5px;font:inherit;font-size:calc(11.5px * var(--font-scale, 1))}.bsel-toolbar .bsel-color{width:14px;height:14px;padding:0;border-radius:50%;border:1px solid var(--line-strong)}.bsel-toolbar .bsel-color.on{box-shadow:0 0 0 2px var(--surface),0 0 0 3px var(--accent)}.bsel-toolbar .bsel-label{color:var(--text-faint);display:inline-flex;padding:0 2px}.bsel-toolbar .bsel-num{font-family:var(--font-mono);font-size:calc(11px * var(--font-scale, 1));color:var(--text-dim);min-width:22px;text-align:center}.mb-picker-modal{position:fixed;top:0;right:0;bottom:0;left:0;z-index:40}.mb-picker-modal .scrim{position:absolute;top:0;right:0;bottom:0;left:0;background:color-mix(in srgb,var(--bg-deep) 62%,transparent)}.mb-picker-modal .box{position:absolute;left:50%;top:14vh;transform:translate(-50%);width:min(520px,92vw);max-height:62vh;display:flex;flex-direction:column;background:var(--surface);border:1px solid var(--line-strong);border-radius:var(--r-panel);box-shadow:var(--shadow-lift);overflow:hidden}.mb-picker-modal header{display:flex;align-items:center;gap:8px;padding:9px 10px;border-bottom:1px solid var(--line)}.mb-picker-modal .search{flex:1;display:flex;align-items:center;gap:7px;padding:6px 9px;background:var(--surface-2);border:1px solid var(--line);border-radius:var(--r-ctl);color:var(--text-faint)}.mb-picker-modal .search input{flex:1;min-width:0;background:none;border:0;color:var(--text);font:inherit;font-size:calc(13px * var(--font-scale, 1))}.mb-picker-modal .search input:focus{outline:none}.mb-picker-modal ul{list-style:none;margin:0;padding:6px;overflow:auto}.mb-picker-modal li.hint{padding:12px;color:var(--text-faint);font-size:calc(12.5px * var(--font-scale, 1))}.mb-picker-modal li button{width:100%;display:flex;align-items:center;gap:8px;padding:7px 9px;background:none;border:0;border-radius:var(--r-ctl);color:var(--text);font:inherit;font-size:calc(13px * var(--font-scale, 1));cursor:pointer;text-align:left}.mb-picker-modal li button:hover{background:var(--surface-2)}.mb-picker-modal li .dot{width:8px;height:8px;border-radius:50%;flex:0 0 auto}.mb-picker-modal li .t{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mb-picker-modal li .s,.mb-picker-modal li .c{font-size:calc(11px * var(--font-scale, 1));color:var(--text-faint)}.mb-tools{flex-wrap:nowrap}.mb-tools .tool{display:inline-flex;align-items:stretch}.mb-tools .tool.split button:first-child{border-radius:var(--r-pill) 0 0 var(--r-pill);padding-right:6px}.mb-tools .tool.split .caret{padding:0 4px;border-radius:0 var(--r-pill) var(--r-pill) 0;margin-left:-1px;color:var(--text-faint)}.mb-tools .tool.split .caret:hover,.mb-tools .tool.split .caret.on{color:var(--text)}.mb-settings .btn-icon{margin-left:auto}.mb-zoom{cursor:pointer}.mb-menu{max-height:calc(100% - 16px);overflow:auto}.mb-menu li.sep{height:1px;margin:4px 6px;background:var(--line)}.mb-menu li.heading{padding:6px 9px 2px;font-size:calc(10.5px * var(--font-scale, 1));text-transform:uppercase;letter-spacing:.06em;color:var(--text-faint)}.mb-menu button{gap:9px}.mb-menu button .ico{width:14px;display:inline-flex;justify-content:center;color:var(--text-dim);flex:0 0 auto}.mb-menu button.checked .ico{color:var(--accent)}.mb-menu button .lbl{flex:1}.mb-menu button kbd{font-family:var(--font-mono);font-size:calc(10.5px * var(--font-scale, 1));color:var(--text-faint);background:none;border:0;padding:0;white-space:nowrap}.mb-menu button:disabled{opacity:.4;cursor:default}.mb-menu button:disabled:hover{background:none}.mb-pop{position:absolute;z-index:9;padding:8px;background:var(--surface);border:1px solid var(--line-strong);border-radius:var(--r-panel);box-shadow:var(--shadow-lift);display:flex;flex-direction:column;gap:8px}.shape-grid{display:grid;grid-template-columns:repeat(6,32px);gap:3px}.shape-grid button{width:32px;height:32px;display:inline-flex;align-items:center;justify-content:center;background:none;border:1px solid transparent;border-radius:var(--r-ctl);color:var(--text-dim);cursor:pointer}.shape-grid button:hover{background:var(--surface-2);color:var(--text)}.shape-grid button.on{border-color:var(--accent);color:var(--accent)}.sticky-colors{display:grid;grid-template-columns:repeat(8,22px);gap:4px}.sticky-colors .swatch{width:22px;height:22px;border-radius:4px;border:1px solid rgb(0 0 0 / .15);cursor:pointer;padding:0}.sticky-colors .swatch.on{box-shadow:0 0 0 2px var(--bg),0 0 0 3.5px var(--accent)}.mb-minimap{position:absolute;right:12px;bottom:12px;z-index:6;background:color-mix(in srgb,var(--surface) 92%,transparent);border:1px solid var(--line-strong);border-radius:var(--r-panel);box-shadow:var(--shadow-panel);cursor:crosshair}.mb-minimap .mm-view{fill:var(--accent-soft);stroke:var(--accent);stroke-width:1.2}.mb-frames{position:absolute;right:12px;top:12px;bottom:12px;z-index:6;width:240px;display:flex;flex-direction:column;background:var(--surface);border:1px solid var(--line-strong);border-radius:var(--r-panel);box-shadow:var(--shadow-panel)}.mb-frames header{display:flex;align-items:center;gap:7px;padding:8px 8px 8px 12px;border-bottom:1px solid var(--line);font-size:calc(12.5px * var(--font-scale, 1))}.mb-frames header .count{color:var(--text-faint);font-family:var(--font-mono);font-size:calc(11px * var(--font-scale, 1))}.mb-frames header .spacer{flex:1}.mb-frames .hint{padding:12px;margin:0;font-size:calc(12px * var(--font-scale, 1));color:var(--text-faint)}.mb-frames ol{list-style:none;margin:0;padding:6px;overflow:auto}.mb-frames li{display:flex;align-items:center;border-radius:var(--r-ctl)}.mb-frames li:hover,.mb-frames li.on{background:var(--surface-2)}.mb-frames li .go{flex:1;display:flex;align-items:center;gap:8px;min-width:0;padding:7px 8px;background:none;border:0;color:var(--text);font:inherit;font-size:calc(12.5px * var(--font-scale, 1));text-align:left;cursor:pointer}.mb-frames li .n{font-family:var(--font-mono);font-size:calc(10.5px * var(--font-scale, 1));color:var(--text-faint);width:16px}.mb-frames li .t{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mb-frames li .c{font-size:calc(10.5px * var(--font-scale, 1));color:var(--text-faint);font-family:var(--font-mono)}.mb-frames li input{flex:1;min-width:0;background:var(--surface-2);color:var(--text);border:1px solid var(--accent);border-radius:var(--r-ctl);padding:2px 5px;font:inherit;font-size:calc(12px * var(--font-scale, 1))}.mb-frames li .del{opacity:0}.mb-frames li:hover .del{opacity:1}.mb-find{position:absolute;left:50%;top:10px;transform:translate(-50%);z-index:7;display:flex;align-items:center;gap:4px;padding:4px 6px 4px 10px;background:var(--surface);border:1px solid var(--line-strong);border-radius:var(--r-pill);box-shadow:var(--shadow-panel);color:var(--text-dim)}.mb-find input{width:220px;background:none;border:0;color:var(--text);font:inherit;font-size:calc(13px * var(--font-scale, 1))}.mb-find input:focus{outline:none}.mb-find .n{font-family:var(--font-mono);font-size:calc(11px * var(--font-scale, 1));color:var(--text-faint);min-width:40px;text-align:right}.moodboard.presenting .mb-bar,.moodboard.presenting .mb-foot,.moodboard.presenting .mb-settings{display:none}.moodboard.presenting .bframe-title{opacity:0}.mb-present{position:absolute;left:50%;bottom:14px;transform:translate(-50%);z-index:7;display:flex;align-items:center;gap:8px;padding:4px 8px;background:color-mix(in srgb,var(--surface) 90%,transparent);border:1px solid var(--line-strong);border-radius:var(--r-pill);box-shadow:var(--shadow-panel);font-size:calc(12.5px * var(--font-scale, 1));color:var(--text-dim)}.mb-help,.mb-bulk{width:min(760px,92vw)}.mb-help header,.mb-bulk header{display:flex;align-items:center;gap:8px;padding:10px 10px 10px 14px;border-bottom:1px solid var(--line)}.mb-help header .spacer,.mb-bulk header .spacer,.mb-bulk .row .spacer{flex:1}.mb-help .cols{display:grid;grid-template-columns:1fr 1fr;gap:6px 22px;padding:12px 16px 16px;max-height:70vh;overflow:auto}.mb-help h4{margin:8px 0 4px;font-size:calc(11.5px * var(--font-scale, 1));text-transform:uppercase;letter-spacing:.06em;color:var(--text-faint)}.mb-help table{border-collapse:collapse;width:100%;font-size:calc(12.5px * var(--font-scale, 1))}.mb-help td{padding:3px 0;vertical-align:top}.mb-help td:first-child{width:46%}.mb-help kbd{font-family:var(--font-mono);font-size:calc(11px * var(--font-scale, 1));color:var(--text);background:var(--surface-2);border:1px solid var(--line-strong);border-radius:4px;padding:1px 5px}.mb-bulk .hint{margin:0;padding:10px 14px 0;font-size:calc(12px * var(--font-scale, 1));color:var(--text-faint)}.mb-bulk textarea{margin:10px 14px;min-height:200px;resize:vertical;background:var(--surface-2);color:var(--text);border:1px solid var(--line);border-radius:var(--r-ctl);padding:8px 10px;font:inherit;font-size:calc(13px * var(--font-scale, 1))}.mb-bulk textarea:focus{outline:none;border-color:var(--accent)}.mb-bulk .row{display:flex;align-items:center;gap:10px;padding:0 14px 14px}.bcanvas{background:var(--bg-deep)}.bcanvas-grid{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}.bcanvas-grid .grid-dot{fill:var(--line-strong)}.bcanvas-grid .grid-line{stroke:var(--line);stroke-width:1}.bcanvas-frames,.bcanvas-items{position:absolute;top:0;left:0;transform-origin:0 0;width:0;height:0}.bframe{position:absolute}.bframe-body{position:absolute;top:0;right:0;bottom:0;left:0;border:1.5px solid var(--line-strong);border-radius:4px;background:color-mix(in srgb,var(--surface) 35%,transparent)}.bframe.selected .bframe-body{border-color:var(--accent)}.bframe.locked .bframe-body{border-style:dashed}.bframe-title{position:absolute;left:0;bottom:100%;transform-origin:0 100%;padding:2px 6px 4px;font-size:calc(13px * var(--font-scale, 1));font-weight:600;color:var(--text-dim);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;cursor:move;-webkit-user-select:none;user-select:none}.bframe.selected .bframe-title{color:var(--accent)}.bframe-title input{background:var(--surface);color:var(--text);border:1px solid var(--accent);border-radius:4px;padding:1px 5px;font:inherit;font-size:calc(13px * var(--font-scale, 1));width:220px}.bitem.t-shape{overflow:visible;border-radius:0}.bitem.t-shape.selected{outline:none}.bitem.t-sticky{border-radius:2px}.bitem.snap-target{outline:2px solid var(--accent);outline-offset:3px}.bitem.hl,.bframe.hl .bframe-body{outline:2px solid var(--ok);outline-offset:3px}.bitem.ghost{pointer-events:none}.bitem.locked{cursor:default}.bcanvas-vectors .hl path:first-child{filter:drop-shadow(0 0 4px var(--ok))}.bcanvas-vectors .erasing{opacity:.25}.bi-badge{position:absolute;top:2px;z-index:2;transform-origin:0 0;display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;border-radius:4px;background:color-mix(in srgb,var(--surface) 88%,transparent);color:var(--text-dim);border:1px solid var(--line)}.bi-badge.lock{left:2px}.bi-badge.link{right:2px;transform-origin:100% 0;color:var(--accent);text-decoration:none}.bi-badge.link:hover{background:var(--accent);color:var(--accent-ink)}.bi-sticky{width:100%;height:100%;padding:12px;display:flex;align-items:center;justify-content:center;box-shadow:0 2px 6px #00000038,inset 0 -1px #0000000f;font-family:inherit}.bi-sticky-text{width:100%;max-height:100%;white-space:pre-wrap;word-break:break-word;overflow:hidden;line-height:1.25}.bi-sticky-edit{width:100%;height:100%;resize:none;border:0;padding:0;font-family:inherit;line-height:1.25}.bi-sticky-edit:focus{outline:none}.bi-shape-box{position:relative;width:100%;height:100%}.bi-shape-box svg{position:absolute;top:0;right:0;bottom:0;left:0;display:block}.bi-shape-text,.bi-shape-edit{position:absolute;top:0;right:0;bottom:0;left:0;margin:10%;display:flex;align-items:center;justify-content:center;white-space:pre-wrap;word-break:break-word;overflow:hidden;line-height:1.25;text-align:center}.bi-shape-edit{display:block;resize:none;border:0;padding:0;font-family:inherit;width:80%;height:80%}.bi-shape-edit:focus{outline:none}.bi-conn-label{display:flex;justify-content:center;align-items:center;height:100%}.bi-conn-label span{max-width:100%;padding:2px 7px;border-radius:4px;font-size:calc(12px * var(--font-scale, 1));font-weight:500;background:var(--bg-deep);color:var(--text);border:1px solid var(--line);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.bcanvas-guide{stroke:var(--danger);stroke-width:1;stroke-dasharray:4 3;vector-effect:non-scaling-stroke}.bcanvas-creating{fill:var(--accent-soft);stroke:var(--accent);stroke-width:1;stroke-dasharray:5 3;vector-effect:non-scaling-stroke}.bcanvas-eraser{fill:var(--danger-soft);stroke:var(--danger);stroke-width:1;vector-effect:non-scaling-stroke}.handle.n{left:50%;top:-5px;margin-left:-4.5px;cursor:ns-resize}.handle.s{left:50%;bottom:-5px;margin-left:-4.5px;cursor:ns-resize}.handle.e{right:-5px;top:50%;margin-top:-4.5px;cursor:ew-resize}.handle.w{left:-5px;top:50%;margin-top:-4.5px;cursor:ew-resize}.handle.rotate{left:-26px;bottom:-26px;width:14px;height:14px;border-radius:50%;cursor:grab;background:var(--surface);border:1.5px solid var(--accent)}.handle.rotate:after{content:"";position:absolute;left:9px;top:-6px;width:8px;height:8px;border-top:1.5px solid var(--accent);border-right:1.5px solid var(--accent);border-radius:0 6px 0 0}.bcanvas-handles .dot{position:absolute;width:11px;height:11px;border-radius:50%;pointer-events:auto;background:#3b82f6;border:2px solid var(--bg);box-shadow:0 0 0 1px #3b82f6;cursor:crosshair;opacity:.85}.bcanvas-handles .dot:hover{transform:scale(1.3);opacity:1}.dot.top{left:50%;top:-24px;margin-left:-5.5px}.dot.bottom{left:50%;bottom:-24px;margin-left:-5.5px}.dot.left{left:-24px;top:50%;margin-top:-5.5px}.dot.right{right:-24px;top:50%;margin-top:-5.5px}.bcanvas-handles .dims{position:absolute;left:50%;top:100%;margin-top:8px;transform:translate(-50%);padding:1px 6px;border-radius:4px;font-family:var(--font-mono);font-size:calc(10.5px * var(--font-scale, 1));background:var(--surface);color:var(--text-dim);border:1px solid var(--line);white-space:nowrap}.bcanvas-endpoints{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}.bcanvas-endpoints .endpoint{position:absolute;width:12px;height:12px;margin:-6px 0 0 -6px;border-radius:50%;background:var(--surface);border:2px solid var(--accent);pointer-events:auto;cursor:move}.bcanvas-label-edit{position:absolute;transform:translate(-50%,-50%);z-index:5;width:180px;background:var(--surface);color:var(--text);border:1px solid var(--accent);border-radius:4px;padding:3px 7px;font:inherit;font-size:calc(12px * var(--font-scale, 1));text-align:center}.bsel-toolbar{flex-wrap:nowrap}.bsel-toolbar .grp{display:flex;align-items:center;gap:1px;padding:0 4px;position:relative}.bsel-toolbar .grp+.grp{border-left:1px solid var(--line)}.bsel-toolbar button.open{background:var(--surface-2);color:var(--text)}.bsel-toolbar select{max-width:120px}.bsel-chip{display:inline-block;width:8px;height:8px;border-radius:2px;margin-left:3px;border:1px solid var(--line-strong);vertical-align:middle;background:repeating-linear-gradient(45deg,transparent 0 2px,var(--line-strong) 2px 3px)}.bsel-rect{display:inline-block;width:15px;height:10px;border:1.6px solid currentColor;border-radius:2px}.bsel-pop{position:absolute;left:0;top:100%;margin-top:6px;z-index:12;display:flex;flex-direction:column;gap:6px;padding:8px;min-width:200px;background:var(--surface);border:1px solid var(--line-strong);border-radius:var(--r-panel);box-shadow:var(--shadow-lift)}.bsel-swatches{display:flex;flex-wrap:wrap;gap:4px;max-width:200px}.bsel-swatches.wide{max-width:210px}.bsel-color.none{background:none!important;position:relative}.bsel-color.none:after{content:"";position:absolute;left:2px;right:2px;top:50%;height:1.5px;background:var(--danger);transform:rotate(-45deg)}.bsel-row{display:flex;align-items:center;gap:4px;font-size:calc(11.5px * var(--font-scale, 1));color:var(--text-dim)}.bsel-row>span:first-child{min-width:70px}.bsel-row .sep{width:1px;height:16px;background:var(--line);margin:0 3px}.bsel-row input[type=range]{flex:1;min-width:90px}.bsel-row button{padding:4px 5px}.bsel-dash{display:inline-block;width:18px;border-top:2px solid currentColor}.bsel-dash.dashed{border-top-style:dashed}.bsel-dash.dotted{border-top-style:dotted}.cal{display:grid;grid-template-rows:auto 1fr auto;min-height:0;min-width:0;background:var(--bg)}.cal-toolbar{display:flex;align-items:center;gap:10px;padding:9px 12px;border-bottom:1px solid var(--line);flex-wrap:wrap}.cal-title{display:inline-flex;align-items:center;gap:7px;font-weight:600}.cal-month{color:var(--text-dim);font-size:calc(12.5px * var(--font-scale, 1));white-space:nowrap}.cal-nav{display:inline-flex;align-items:center;gap:3px}.cal-nav button{font:500 11.5px/1 var(--font-mono);font-size:calc(11.5px * var(--font-scale, 1));color:var(--text-dim);background:var(--surface);border:1px solid var(--line-strong);border-radius:var(--r-ctl);padding:6px 7px;cursor:pointer;transition:color .12s,border-color .12s}.cal-nav button:hover{color:var(--text);border-color:var(--accent-line)}.cal-nav .cal-today{display:inline-flex;align-items:center;gap:5px;padding:6px 10px;margin:0 5px;color:var(--text)}.cal-scroll{overflow:auto;min-height:0}.cal-inner{position:relative;display:grid;grid-template-columns:48px max-content}.cal-corner{position:sticky;left:0;top:0;z-index:5;background:var(--surface-2);border-right:1px solid var(--line-strong);border-bottom:1px solid var(--line-strong)}.cal-head{position:sticky;top:0;z-index:4;background:var(--surface-2);border-bottom:1px solid var(--line-strong)}.cal-daynames{position:relative}.cal-dayname{position:absolute;top:0;bottom:0;display:flex;flex-direction:column;justify-content:center;gap:2px;padding:0 8px;background:var(--cal-work);border-left:1px solid var(--line);overflow:hidden;white-space:nowrap}.cal-dayname.today{padding-right:46px}.cal-dayname-row{display:flex;align-items:baseline;gap:6px;min-width:0}.cal-dayname em{font-style:normal;font-family:var(--font-mono);font-size:calc(9.5px * var(--font-scale, 1));letter-spacing:.06em;text-transform:uppercase;color:var(--text-faint);flex:none}.cal-dayname b{font-size:calc(13px * var(--font-scale, 1));font-weight:600;flex:none}.cal-dayname u{text-decoration:none;font-size:calc(10.5px * var(--font-scale, 1));color:var(--text-dim);overflow:hidden;text-overflow:ellipsis;min-width:0}.cal-holiday{font-style:normal;font-size:calc(10px * var(--font-scale, 1));line-height:1.25;color:var(--accent);overflow:hidden;text-overflow:ellipsis}.cal-dayname.off{background:var(--cal-off)}.cal-dayname.today em{color:var(--accent)}.cal-dayname.today b{color:var(--accent);font-weight:700}.cal-allday{position:relative;background:var(--cal-work);overflow:hidden}.cal-allday-col{position:absolute;top:0;bottom:0;background:var(--cal-work);border-left:1px solid var(--line)}.cal-allday-col.off{background:var(--cal-off)}.cal-allday-col.today{background-image:linear-gradient(var(--accent-soft),var(--accent-soft));box-shadow:inset 1px 0 0 var(--accent-line),inset -1px 0 0 var(--accent-line)}.cal-band-split{position:absolute;left:0;right:0;height:0;border-top:1px dashed var(--line-strong);pointer-events:none}.cal-band-more{position:absolute;transform:translate(-100%);font-style:normal;font-family:var(--font-mono);font-size:calc(9.5px * var(--font-scale, 1));height:17px;line-height:calc(15px * var(--font-scale, 1));padding:0 5px;color:var(--text-dim);background:var(--surface-2);border:1px solid var(--line);border-radius:var(--r-pill);pointer-events:none}.cal-gutter{position:sticky;left:0;z-index:3;background:var(--surface-2);border-right:1px solid var(--line-strong)}.cal-hour{position:absolute;right:6px;transform:translateY(-50%);font-family:var(--font-mono);font-size:calc(10.5px * var(--font-scale, 1));color:var(--text-faint)}.cal-body{position:relative}.cal-col{position:absolute;top:0;bottom:0;background:var(--cal-work);border-left:1px solid var(--line)}.cal-col.off{background:var(--cal-off)}.cal-col.today{background-image:linear-gradient(var(--accent-soft),var(--accent-soft))}.cal-lines{position:absolute;top:0;bottom:0;left:0;pointer-events:none}.cal-lines b{position:absolute;left:0;right:0;border-top:1px solid var(--line)}.cal-night{position:absolute;left:0;right:0;background:var(--bg-deep);border-block:1px solid var(--line)}.cal-block{position:absolute;display:flex;flex-direction:column;justify-content:flex-start;gap:1px;overflow:hidden;padding:2px 5px;border:1px solid;border-radius:6px;font:inherit;font-size:calc(11.5px * var(--font-scale, 1));line-height:1.2;color:var(--text);text-align:left;cursor:pointer}.cal-block:hover{filter:brightness(1.2);z-index:5000}.cal-block.on{box-shadow:0 0 0 2px var(--accent-line)}.cal-block.done{opacity:.5}.cal-block.done .cal-block-title{text-decoration:line-through}.cal-block.late{box-shadow:inset 0 0 0 1px var(--danger)}.cal-block.deadline:before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:var(--danger)}.cal-block-title{display:flex;align-items:flex-start;gap:4px;white-space:normal;overflow-wrap:anywhere;-webkit-hyphens:auto;hyphens:auto;font-weight:500}.cal-block-title svg{flex:none;margin-top:1px}.cal-block-time{font-size:calc(10px * var(--font-scale, 1));color:var(--text-dim)}.cal-band{position:absolute;height:36px;display:flex;align-items:center;gap:5px;padding:2px 6px;border:1px solid;border-radius:4px;font:inherit;font-size:calc(11px * var(--font-scale, 1));line-height:calc(15px * var(--font-scale, 1));color:var(--text);overflow:hidden;cursor:pointer}.cal-band span{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;overflow-wrap:anywhere}.cal-band.on{box-shadow:0 0 0 2px var(--accent-line)}.cal-band.done{opacity:.5;text-decoration:line-through}.cal-band.late{box-shadow:inset 0 0 0 1px var(--danger)}.cal-now{position:absolute;height:0;border-top:4px solid var(--danger);z-index:4000;pointer-events:none}.cal-now:before{content:"";position:absolute;left:-4px;top:-5px;width:8px;height:8px;border-radius:var(--r-pill);background:var(--danger)}.cal-now-time{position:absolute;right:100%;top:0;transform:translateY(-50%);margin-right:7px;padding:1px 4px;border-radius:3px;background:var(--bg);box-shadow:0 0 0 1px var(--bg);color:var(--danger);font-size:calc(10px * var(--font-scale, 1));font-weight:600;white-space:nowrap}.cal-undated{border-top:1px solid var(--line);padding:9px 12px;background:var(--surface);max-height:22dvh;overflow-y:auto}.cal-undated-head{display:flex;align-items:center;flex-wrap:wrap;gap:6px 10px;margin-bottom:7px}.cal-undated-head h4{margin:0}.cal-undated-filter{display:flex;flex-wrap:wrap;gap:4px}.cal-undated h4{margin:0 0 7px;font-size:calc(12px * var(--font-scale, 1));font-weight:550;color:var(--text-dim)}.cal-chips{display:flex;flex-wrap:wrap;gap:6px;min-height:26px;align-items:center}.cal-undated-empty{color:var(--text-faint);font-size:calc(11.5px * var(--font-scale, 1))}.cal-undated.drop-hot{outline:1px dashed var(--accent);outline-offset:-3px}.bsel-toolbar button{background:none;border:0;padding:4px 5px;border-radius:var(--r-ctl);color:var(--text-dim);cursor:pointer;display:inline-flex;align-items:center;gap:4px;font:inherit;font-size:calc(11.5px * var(--font-scale, 1));line-height:1}.bsel-toolbar button:hover{color:var(--text);background:var(--surface-2)}.bsel-toolbar button.on{color:var(--accent-ink);background:var(--accent)}.bsel-toolbar button:disabled{opacity:.4;cursor:default}.bsel-toolbar button.bsel-color{padding:0;width:16px;height:16px;border:1px solid var(--line-strong)}.bsel-toolbar button.bsel-color.on{box-shadow:0 0 0 2px var(--surface),0 0 0 3px var(--accent)}.bsel-color.token,.pen-color.token{background-image:linear-gradient(135deg,var(--text) 50%,var(--surface) 50%);border-color:var(--text-dim)}.pen-color.token,.bsel-color.token{background-color:transparent!important}.bi-text{background:transparent;border-color:transparent;line-height:1.35}.bcanvas.tool-select .bitem.t-text:hover .bi-text{border-color:var(--line-strong)}.bi-text-edit{background:color-mix(in srgb,var(--surface) 70%,transparent);line-height:1.35}.bcanvas.tool-select .bitem:not(.locked):not(.ghost):hover{outline:1px solid var(--accent-line);outline-offset:2px;cursor:move}.bcanvas.tool-select .bitem.selected:hover{outline-color:var(--accent)}.bcanvas.tool-select .bframe:not(.locked):hover .bframe-body{border-color:var(--accent-line)}.bitem{transition:box-shadow .12s ease,outline-color .12s ease}.bitem.selected.t-sticky .bi-sticky{box-shadow:0 6px 16px #00000047,inset 0 -1px #0000000f}.bi-sticky{font-weight:500}.bi-sticky-text,.bi-sticky-edit{letter-spacing:.005em}.mb-nav{position:absolute;right:12px;bottom:12px;z-index:6;display:flex;align-items:center;gap:1px;padding:3px;background:color-mix(in srgb,var(--surface) 94%,transparent);border:1px solid var(--line-strong);border-radius:var(--r-pill);box-shadow:var(--shadow-panel)}.mb-nav button{background:none;border:0;padding:6px 7px;border-radius:var(--r-pill);color:var(--text-dim);cursor:pointer;display:inline-flex;align-items:center;font:inherit;font-size:calc(11.5px * var(--font-scale, 1))}.mb-nav button:hover{color:var(--text);background:var(--surface-2)}.mb-nav button.on{color:var(--accent)}.mb-nav button.pct{font-family:var(--font-mono);min-width:52px;justify-content:center}.mb-nav .sep{width:1px;height:16px;background:var(--line);margin:0 3px}.mb-minimap{bottom:54px}.mb-save-error{bottom:54px;right:250px}.mb-onboard{position:absolute;left:50%;top:42%;transform:translate(-50%,-50%);max-width:460px;padding:22px 26px;text-align:center;pointer-events:none;color:var(--text-dim);font-size:calc(13.5px * var(--font-scale, 1));background:color-mix(in srgb,var(--surface) 55%,transparent);border:1px dashed var(--line-strong);border-radius:var(--r-panel)}.mb-onboard p{margin:0 0 12px}.mb-onboard p.hint{margin:12px 0 0;font-size:calc(12px * var(--font-scale, 1));color:var(--text-faint)}.mb-onboard ul{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;justify-content:center;gap:8px 14px}.mb-onboard li{display:inline-flex;align-items:center;gap:6px;color:var(--text)}.mb-onboard kbd{font-family:var(--font-mono);font-size:calc(11px * var(--font-scale, 1));color:var(--text);background:var(--surface-2);border:1px solid var(--line-strong);border-radius:4px;padding:1px 6px}.mb-confirm{width:min(420px,92vw);padding:18px 20px}.mb-confirm h3{margin:0 0 8px;font-size:calc(15px * var(--font-scale, 1))}.mb-confirm p{margin:0 0 16px;color:var(--text-dim);font-size:calc(13px * var(--font-scale, 1))}.mb-confirm .row{display:flex;justify-content:flex-end;gap:8px}.mb-menu button{padding:6px 9px}.mb-menu button .ico svg{display:block}.cal-ev{position:absolute;display:flex;flex-direction:column;gap:1px;overflow:hidden;border-radius:6px;padding:2px 5px;border:1px solid transparent;font:inherit;font-size:calc(11.5px * var(--font-scale, 1));line-height:1.2;color:var(--text);text-align:left;cursor:pointer}.cal-ev:hover{filter:brightness(1.15);z-index:5000}.cal-ev.free{background-image:repeating-linear-gradient(135deg,rgb(255 255 255 / .05) 0 5px,transparent 5px 10px)}.cal-ev.declined{opacity:.45}.cal-ev.declined .cal-block-title{text-decoration:line-through}.cal-grip{position:absolute;left:0;right:0;bottom:0;height:6px;cursor:ns-resize}.cal-grip:hover{background:#ffffff2e}.cal-block{cursor:grab;touch-action:none}.cal-block.busy{opacity:.75}.cal.dragging,.cal.dragging *{cursor:grabbing!important;-webkit-user-select:none;user-select:none}.cal-band.event{border-radius:0 4px 4px 0;border-width:0 0 0 3px}.cal-err{color:var(--danger)}.cal-picker{position:relative}.cal-menu{position:absolute;top:calc(100% + 6px);left:0;z-index:6000;width:288px;padding:10px;background:var(--surface);border:1px solid var(--line-strong);border-radius:var(--r-panel);box-shadow:var(--shadow-lift)}.cal-menu-head{margin:0 0 8px;font-size:calc(12px * var(--font-scale, 1));color:var(--text-dim);font-family:var(--font-mono);overflow:hidden;text-overflow:ellipsis}.cal-menu-note{margin:0 0 8px;font-size:calc(12.5px * var(--font-scale, 1));color:var(--text-dim)}.cal-menu-cta{width:100%;justify-content:center;margin-bottom:8px}.cal-menu-list{list-style:none;margin:0 0 8px;padding:0;max-height:40dvh;overflow-y:auto}.cal-menu-list li{display:flex;align-items:center;gap:2px}.cal-drop-ghost{position:absolute;z-index:5;pointer-events:none;display:flex;align-items:flex-start;padding:2px 4px;border:1px dashed var(--accent);border-radius:6px;background:var(--accent-soft);color:var(--accent);font-size:calc(10.5px * var(--font-scale, 1))}.cal-remind{position:absolute;z-index:4;display:grid;place-items:center;width:15px;height:15px;padding:0;background:none;border:0;color:var(--accent);cursor:pointer;filter:drop-shadow(0 0 2px var(--bg))}.cal-remind:hover{transform:scale(1.25)}.cal-band.dim{border-color:transparent}.cal-ev.dim .cal-block-title,.cal-ev.dim .cal-block-time,.cal-band.dim span{color:var(--text-faint);font-weight:400}.cal-ev.dim .cal-ev-bar,.cal-band.dim .cal-bar{opacity:.35;width:3px}.cal-ev.dim{padding-left:7px}.cal-menu-dim{flex:none;display:grid;place-items:center;width:26px;height:26px;background:none;border:0;border-radius:var(--r-ctl);color:var(--text-faint);cursor:pointer}.cal-menu-dim:hover:not(:disabled){background:var(--surface-2);color:var(--text)}.cal-menu-dim.on{color:var(--accent)}.cal-menu-dim:disabled{opacity:.3;cursor:default}.cal-menu-item{display:flex;align-items:center;gap:8px;width:100%;padding:5px 6px;background:none;border:0;border-radius:var(--r-ctl);color:var(--text-dim);font:inherit;font-size:calc(13px * var(--font-scale, 1));text-align:left;cursor:pointer}.cal-menu-item:hover{background:var(--surface-2);color:var(--text)}.cal-menu-item.on{color:var(--text)}.cal-menu-box{flex:none;width:15px;height:15px;display:grid;place-items:center;border:1px solid var(--line-strong);border-radius:4px;color:var(--accent)}.cal-menu-dot{flex:none;width:8px;height:8px;border-radius:var(--r-pill)}.cal-menu-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cal-menu-actions{display:flex;gap:6px;border-top:1px solid var(--line);padding-top:8px}.cal-menu-target{display:flex;flex-direction:column;gap:4px;padding:8px 0;border-top:1px solid var(--line);font-size:calc(11px * var(--font-scale, 1));color:var(--text-faint)}.cal-menu-target select{width:100%}.cal-pop{position:fixed;z-index:6000;display:flex;flex-direction:column;max-height:min(72dvh,720px);padding:12px 14px;background:var(--surface);border:1px solid var(--line-strong);border-radius:var(--r-panel);box-shadow:var(--shadow-lift);font-size:calc(13px * var(--font-scale, 1))}.cal-pop header{display:flex;align-items:center;gap:7px;margin-bottom:8px}.cal-pop-dot{flex:none;width:8px;height:8px;border-radius:var(--r-pill)}.cal-pop-map{color:inherit;text-decoration:underline;text-underline-offset:2px}.cal-pop-desc a{color:var(--accent);text-decoration:underline;overflow-wrap:anywhere}.cal-pop-map:hover{color:var(--accent)}.cal-pop-cal{flex:1;font-family:var(--font-mono);font-size:calc(11px * var(--font-scale, 1));color:var(--text-faint);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cal-pop h4{margin:0 0 4px;font-size:calc(15px * var(--font-scale, 1));font-weight:600}.cal-pop-time{margin:0 0 10px;font-size:calc(12.5px * var(--font-scale, 1));color:var(--text-dim)}.cal-pop-row{display:flex;align-items:center;gap:7px;margin:0 0 6px;color:var(--text-dim);font-size:calc(12.5px * var(--font-scale, 1))}.cal-pop-org{font-family:var(--font-mono);font-size:calc(11.5px * var(--font-scale, 1))}.cal-pop-desc{flex:1 1 auto;min-height:0;margin:8px 0;padding:8px 10px;background:var(--surface-2);border-radius:var(--r-ctl);color:var(--text-dim);font-size:calc(12.5px * var(--font-scale, 1));overflow-y:auto;overscroll-behavior:contain;white-space:pre-wrap;overflow-wrap:anywhere}.cal-pop-actions{display:flex;gap:6px;margin-top:10px;flex:none}.cal-pop-note{margin:8px 0 0;font-size:calc(11.5px * var(--font-scale, 1));color:var(--text-faint)}.bi-sticky-text,.bi-sticky-edit{word-break:normal;overflow-wrap:normal}.cal-ev.past,.cal-block.past,.cal-band.past{filter:grayscale(.45);opacity:.68}.cal-ev.past:hover,.cal-block.past:hover,.cal-band.past:hover{filter:none;opacity:.9}.cal-ev{padding-left:10px}.cal-ev-bar{position:absolute;left:0;top:0;bottom:0;width:6px}.cal-band.event{padding-left:11px;border-width:0}.cal-band .cal-bar{position:absolute;left:0;top:0;bottom:0;width:6px;border-radius:4px 0 0 4px}.cal-todaytag{position:absolute;right:7px;top:50%;transform:translateY(-50%);font-style:normal;font-family:var(--font-mono);font-size:calc(9px * var(--font-scale, 1));letter-spacing:.06em;text-transform:uppercase;color:var(--accent-ink);background:var(--accent);border-radius:var(--r-pill);padding:1px 5px}.cal-dayname.today{background-image:linear-gradient(var(--accent-soft),var(--accent-soft));box-shadow:inset 1px 0 0 var(--accent-line),inset -1px 0 0 var(--accent-line)}.cal-col.today{box-shadow:inset 1px 0 0 var(--accent-line),inset -1px 0 0 var(--accent-line)}.node-plate{fill:var(--surface)}.rel-edge{fill:none;stroke-width:1.7;stroke-linecap:round;transition:opacity .15s var(--ease),stroke-width .15s var(--ease)}.rel.hot .rel-edge{stroke-width:2.6}.rel-hit{fill:none;stroke:transparent;stroke-width:16;cursor:pointer}.rel-label{font-family:var(--font-sans);font-size:calc(10.5px * var(--font-scale, 1));fill:var(--text-dim);pointer-events:none;paint-order:stroke;stroke:var(--bg-deep);stroke-width:3px;stroke-linejoin:round}.rel-del{cursor:pointer;color:var(--text-dim)}.rel-del circle{fill:var(--surface-2);stroke:var(--line-strong);stroke-width:1}.rel-del:hover circle{fill:var(--danger);stroke:var(--danger)}.rel-del:hover{color:#fff}.rel-list{display:flex;flex-direction:column;gap:6px}.rel-row{display:grid;grid-template-columns:1fr auto;gap:6px 8px;align-items:center;padding:6px 8px;border:1px solid var(--line);border-radius:8px;background:var(--surface-2)}.rel-row .rel-name{display:flex;align-items:center;gap:6px;font-size:calc(12.5px * var(--font-scale, 1));min-width:0}.rel-row .rel-name b{font-weight:560;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rel-row .rel-area{color:var(--text-faint);font-size:calc(11px * var(--font-scale, 1))}.rel-row input{grid-column:1 / -1;font-size:calc(11.5px * var(--font-scale, 1));padding:3px 6px}.rel-empty{color:var(--text-faint);font-size:calc(12px * var(--font-scale, 1))}.props-toggle{display:inline-flex;align-items:center;gap:7px;font-size:calc(12.5px * var(--font-scale, 1));color:var(--text);cursor:pointer}.font-scale .mono{min-width:5ch}.cal-ad-stripe{position:absolute;top:0;bottom:0;width:6px;z-index:1;border-radius:3px;opacity:.85;pointer-events:none}.cal-ad-labels{position:absolute;z-index:3500;display:flex;flex-direction:column;align-items:flex-start;gap:3px}.cal-ad-chip{display:flex;align-items:center;gap:5px;max-width:100%;padding:2px 7px 2px 5px;background:var(--surface);border:1px solid var(--line-strong);border-left-width:3px;border-radius:var(--r-pill);font:inherit;font-size:calc(10.5px * var(--font-scale, 1));line-height:1.5;color:var(--text-dim);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;box-shadow:var(--shadow-lift);cursor:pointer}.cal-ad-chip:hover{color:var(--text);border-color:var(--accent-line)}.cal-ad-chip i{flex:none;width:6px;height:6px;border-radius:50%}.cal-ad-chip span{overflow:hidden;text-overflow:ellipsis}.cal-ad-rest{font-style:normal;font-family:var(--font-mono);font-size:calc(9.5px * var(--font-scale, 1));padding:1px 5px;border-radius:var(--r-pill);color:var(--text-faint);background:var(--surface-2);border:1px solid var(--line)}.bell-icon{display:inline-grid;place-items:center;transform-origin:50% 15%}.bell-icon.nudge-swing{animation:bell-swing .85s var(--ease, ease-out)}.bell-icon.nudge-shake{animation:bell-shake .6s ease-in-out}.bell-icon.nudge-jump{animation:bell-jump .7s ease-out}.bell-icon.nudge-wobble{animation:bell-wobble .8s ease-in-out}.bell-icon.nudge-tick{animation:bell-tick .5s ease-out}@keyframes bell-swing{0%,to{transform:rotate(0)}15%{transform:rotate(15deg)}35%{transform:rotate(-12deg)}55%{transform:rotate(8deg)}75%{transform:rotate(-4deg)}}@keyframes bell-shake{0%,to{transform:translate(0)}20%{transform:translate(-3px)}40%{transform:translate(3px)}60%{transform:translate(-2px)}80%{transform:translate(2px)}}@keyframes bell-jump{0%,to{transform:translateY(0) scale(1)}25%{transform:translateY(-4px) scale(1.08,.94)}50%{transform:translateY(0) scale(.94,1.06)}70%{transform:translateY(-2px) scale(1)}}@keyframes bell-wobble{0%,to{transform:rotate(0) scale(1)}25%{transform:rotate(-9deg) scale(1.1)}50%{transform:rotate(7deg) scale(1.04)}75%{transform:rotate(-4deg) scale(1.02)}}@keyframes bell-tick{0%,to{transform:rotate(0)}20%{transform:rotate(-14deg)}40%{transform:rotate(0)}60%{transform:rotate(-10deg)}80%{transform:rotate(0)}}@media(prefers-reduced-motion:reduce){.bell-icon[class*=nudge-]{animation:none}}.attachments .att-toggle{margin-left:4px}.attachments.drop-over{outline:2px dashed var(--accent);outline-offset:4px;border-radius:10px}.att-icons{display:flex;flex-wrap:wrap;gap:6px}.att-chip{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;padding:0;cursor:pointer;background:var(--surface-2);border:1px solid var(--line);border-radius:9px;color:var(--text-dim);transition:background .15s,color .15s,border-color .15s}.att-chip:hover{background:var(--surface-3);color:var(--text)}.att-chip.is-cover,.att-list li.is-cover .att-open{border-color:var(--accent);color:var(--accent)}.att-list{display:grid;gap:6px;margin:0;padding:0;list-style:none}.att-list li{display:grid;grid-template-columns:1fr auto;align-items:center;gap:2px 8px;padding:6px 8px;background:var(--surface-2);border:1px solid var(--line);border-radius:9px}.att-open{display:flex;align-items:center;gap:7px;min-width:0;background:none;border:0;padding:0;cursor:pointer;color:var(--text);font:inherit;text-align:left}.att-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.att-meta{grid-column:1;font-size:calc(11px * var(--font-scale, 1));color:var(--text-faint);display:flex;align-items:center;gap:6px}.att-cover-tag{padding:0 5px;border-radius:5px;text-transform:uppercase;letter-spacing:.04em;background:color-mix(in srgb,var(--accent) 18%,transparent);color:var(--accent)}.att-actions{grid-row:1 / span 2;grid-column:2;display:flex;gap:2px}.calbtn{position:relative;display:flex;flex-direction:column;gap:5px;min-width:0}.calbtn-row{display:flex}.calbtn-main{border-top-right-radius:0;border-bottom-right-radius:0;min-width:0}.calbtn-main>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.calbtn-main.on{color:var(--accent);border-color:color-mix(in srgb,var(--accent) 40%,var(--line))}.calbtn-arrow{border-top-left-radius:0;border-bottom-left-radius:0;border-left:0;padding-left:7px;padding-right:7px}.calbtn-menu{right:0;left:auto}.calbtn-dot{width:8px;height:8px;border-radius:50%;flex:none}.calbtn-note{margin-left:auto;font-size:calc(10.5px * var(--font-scale, 1));color:var(--text-faint)}.calbtn-remove{margin-top:4px;border-top:1px solid var(--line)!important;border-radius:0!important;color:var(--danger)!important}.calbtn-msg{display:flex;align-items:flex-start;gap:5px;font-size:calc(11px * var(--font-scale, 1));line-height:1.35}.calbtn-msg svg{flex:none;margin-top:1px}.calbtn-warn{color:var(--accent)}.calbtn-err{color:var(--danger)}.live-stale{display:inline-flex;align-items:center;gap:6px;align-self:flex-start;justify-self:start;width:fit-content;margin:0 0 8px;padding:3px 9px;border-radius:999px;cursor:pointer;font-size:calc(11px * var(--font-scale, 1));line-height:1.7;color:var(--accent);background:color-mix(in srgb,var(--accent) 12%,transparent);border:1px solid color-mix(in srgb,var(--accent) 35%,transparent)}.live-stale:hover{background:color-mix(in srgb,var(--accent) 20%,transparent)}:root{--bg: #141a1a;--bg-deep: #111717;--surface: #1d2525;--surface-2: #242e2d;--surface-3: #2d3937;--line: #33403d;--line-strong: #52645e;--text: #edf3ef;--text-dim: #b1bfb8;--text-faint: #94a79d;--r-panel: 16px;--r-ctl: 9px;--w-props: 376px;--shadow-panel: 0 4px 16px -8px #07100f66;--shadow-lift: 0 20px 60px -20px #07100f99}:root[data-theme=light]{--bg: #f3f5f1;--bg-deep: #eaf0e9;--surface: #ffffff;--surface-2: #f0f4ee;--surface-3: #e5ece3;--line: #dce4d9;--line-strong: #b6c5b5;--text: #23332b;--text-dim: #53675a;--text-faint: #607567;--shadow-panel: 0 4px 18px -10px #344c3726;--shadow-lift: 0 20px 60px -20px #344c374d}body{font-size:calc(15px * var(--font-scale, 1))}button,input,select,textarea{-webkit-tap-highlight-color:transparent}button{touch-action:manipulation}button:disabled{cursor:not-allowed}input,textarea{accent-color:var(--accent)}input::placeholder,textarea::placeholder{color:var(--text-faint);opacity:1}button:focus-visible,a:focus-visible,summary:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid var(--accent);outline-offset:3px}.btn{min-height:38px;padding:8px 12px;font-size:calc(13px * var(--font-scale, 1));font-weight:550}.btn-icon{min-width:38px;justify-content:center;padding:8px}.btn svg{flex-shrink:0}.count,.n,.nav-count{font-variant-numeric:tabular-nums}.app{height:100dvh;min-height:0;overflow:hidden}.workspace-content{flex:1 1 auto;min-width:0;min-height:0;position:relative;outline:none}.workspace{height:100%;min-width:0;overflow:hidden;position:relative}.workspace-map,.workspace-timeline{grid-template-columns:minmax(0,1fr);grid-template-rows:minmax(0,1fr)}.workspace-map.has-props,.workspace-timeline.has-props{grid-template-columns:minmax(0,1fr) var(--w-props)}.workspace-board{grid-template-columns:minmax(0,1fr);grid-template-rows:minmax(0,1fr);overflow:hidden}.workspace-board.has-props{grid-template-columns:minmax(0,1fr) var(--w-props)}.app-header{position:relative;z-index:20;background:var(--surface);min-width:0}.topbar{height:55px;padding:0 28px;gap:32px;border-bottom:0}.brand{font-size:calc(21px * var(--font-scale, 1));letter-spacing:-.04em;gap:11px}.brand-mark{width:36px;height:36px;border-radius:11px}.global-search{flex:1;max-width:430px;margin-left:auto}.global-search input,.global-search input:focus{width:100%;min-width:0;height:42px;padding:9px 70px 9px 40px;background:var(--bg);border-color:var(--line);font-size:calc(14px * var(--font-scale, 1));transition:border-color .18s}.global-search>svg{left:14px}.global-search kbd{position:absolute;right:10px;color:var(--text-faint);border:1px solid var(--line);border-radius:5px;padding:1px 5px;font-size:calc(11px * var(--font-scale, 1))}.search-clear{position:absolute;right:4px;display:grid;place-items:center;width:34px;height:34px;background:none;border:0;cursor:pointer;color:var(--text-dim)}.header-actions{display:flex;align-items:center;gap:10px}.header-actions .btn-icon.on{color:var(--accent);background:var(--accent-soft)}.new-task{height:42px;padding-inline:16px}.app-tools{position:relative}.app-tools summary{list-style:none}.app-tools summary::-webkit-details-marker{display:none}.app-tools[open] summary{background:var(--surface-2);color:var(--text)}.app-tools-menu{position:absolute;right:0;top:calc(100% + 10px);width:260px;padding:16px;display:grid;gap:10px;background:var(--surface);border:1px solid var(--line);border-radius:14px;box-shadow:var(--shadow-lift);z-index:6000}.tools-label{font-size:calc(12px * var(--font-scale, 1));color:var(--text-faint)}.tools-group{display:grid;gap:10px}.tools-sep{height:1px;background:var(--line);margin:2px 0}.tools-toggle{position:relative}.tools-toggle[aria-pressed=true]{color:var(--accent)}.tools-toggle-on{margin-left:auto}.tools-theme{display:flex;align-items:center;justify-content:space-between;font-size:calc(13px * var(--font-scale, 1));border-top:1px solid var(--line);padding-top:10px}.navigation-row{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:0 28px;border-bottom:1px solid var(--line)}.main-nav{display:flex;gap:5px}.main-nav button{position:relative;display:flex;align-items:center;justify-content:center;gap:8px;min-height:52px;padding:0 16px;background:none;border:0;color:var(--text-dim);font-size:calc(13px * var(--font-scale, 1));font-weight:550;cursor:pointer;transition:background .18s,color .18s;white-space:nowrap}.main-nav button:first-child{margin-right:16px}.main-nav button:first-child:after{content:"";position:absolute;right:-10px;height:22px;width:1px;background:var(--line)}.main-nav button:hover{color:var(--text);background:var(--surface-2)}.main-nav button.active{color:var(--accent)}.main-nav button.active:before{content:"";position:absolute;inset:auto 14px 0;height:3px;background:var(--accent);border-radius:3px 3px 0 0}.nav-count{background:var(--surface-2);color:var(--text-dim);border-radius:6px;min-width:22px;padding:1px 5px;font-size:calc(11px * var(--font-scale, 1))}.active .nav-count{background:var(--accent-soft);color:var(--accent)}.nav-short{display:none}.nav-caption{color:var(--text-faint);font-size:calc(12px * var(--font-scale, 1));white-space:nowrap}.context-bar{display:flex;align-items:center;gap:12px;padding:8px 28px;min-height:50px;border-bottom:1px solid var(--line);background:var(--bg)}.context-bar .path{display:flex;flex:0 1 auto;min-width:0}.context-bar .context-spacer{flex:1}.seg-main,.seg-more{min-height:32px}.seg-more{min-width:28px}.skip-link{position:fixed;top:-80px;left:20px;padding:12px 18px;color:var(--accent-ink);background:var(--accent);border-radius:8px;z-index:100}.skip-link:focus{top:12px}.immediate{padding:38px max(28px,calc((100% - 1320px)/2)) 48px}.keep-grid{grid-template-columns:repeat(auto-fill,minmax(min(100%,285px),1fr));gap:16px}.keep-simple{grid-template-columns:32px minmax(0,1fr);gap:12px;padding:18px;border-radius:14px;box-shadow:var(--shadow-panel);min-height:140px}.keep.tinted,.keep-detail.tinted,:root[data-theme=light] .keep.tinted,:root[data-theme=light] .keep-detail.tinted{--keep-tint: 5%}.keep-simple:hover{box-shadow:var(--shadow-panel);border-color:var(--keep-accent)}.keep-simple .keep-icon{width:32px;height:32px;border-radius:9px}.keep-text{padding-top:4px;gap:6px}.keep-simple .keep-t{font-size:calc(15px * var(--font-scale, 1));line-height:1.5;font-weight:600;overflow-wrap:anywhere}.keep-simple .keep-n{font-size:calc(13px * var(--font-scale, 1));line-height:1.55}.keep-solve{grid-column:2;justify-self:end;min-height:34px;margin-top:6px;font-size:calc(12px * var(--font-scale, 1));padding:6px 11px;border-radius:8px;background:transparent}.keep.waiting,.keep.done{opacity:1}.keep.done{background:var(--surface-2)}.keep-detail-body{padding:24px;gap:14px}.keep-detail .keep-title{font-size:calc(22px * var(--font-scale, 1));line-height:1.4}.keep-detail{--keep-text-size: calc(13px * var(--font-scale, 1));--keep-text-lh: 1.45}.keep-close{min-width:38px;min-height:38px;align-items:center;justify-content:center}.keep-foot{padding-top:14px;margin-top:10px;border-top:1px solid var(--line)}.keep-foot>button{min-height:38px;min-width:38px;justify-content:center}.keep-check{min-height:38px}.keep-row-btn{opacity:1;min-height:28px;min-width:28px}.keep-detail{--keep-check-size: calc(14px * var(--font-scale, 1))}.board{background:var(--bg);box-shadow:none}.columns{gap:16px;padding:16px 20px 20px;background:var(--bg);overflow-x:auto;grid-template-columns:repeat(4,minmax(240px,1fr))}.columns.done-folded{grid-template-columns:repeat(3,minmax(240px,1fr)) 48px}.column{background:var(--surface-2);border-radius:14px;border:1px solid var(--line);overflow:hidden}.column-head{font-size:calc(13px * var(--font-scale, 1));font-weight:600;padding:10px 12px;border-bottom:0}.column-head .count{color:var(--text-dim);border-radius:5px;background:var(--surface);padding:2px 6px;font-size:calc(12px * var(--font-scale, 1))}.column-body{padding:0 10px 12px;gap:12px}.card{border-radius:11px;grid-template-columns:3px minmax(0,1fr);box-shadow:var(--shadow-panel)}.card-main{padding:14px 12px}.card-title{font-size:calc(15px * var(--font-scale, 1));line-height:1.5;letter-spacing:-.01em;font-weight:550}.card-meta{font-size:calc(12px * var(--font-scale, 1));gap:7px 10px}.card-top .icon-chip{margin-right:0}.props{background:var(--surface);background-image:none}.props-head{gap:6px;padding:14px;flex-wrap:nowrap}.props-head>*{min-width:0}.props-head .icon-chip,.props-head .btn-icon{flex:none}.props-head .statsel{flex:0 1 auto}.props-head .statsel-btn,.props-head .btn-done{min-width:0;overflow:hidden}.props-head .statsel-btn>span,.props-head .btn-done{white-space:nowrap}.props-body{padding:20px;gap:20px}.props-foot{padding:14px 20px}.props-sec{border-radius:0;border:0;padding:0}.props-sec-head{font-size:calc(13px * var(--font-scale, 1));text-transform:none;letter-spacing:0}.field>label,.field .hint{font-size:calc(13px * var(--font-scale, 1))}.field input,.field select{min-height:40px}.field textarea{min-height:96px;line-height:1.6}.grid-2{gap:14px}.title-input{font-size:calc(20px * var(--font-scale, 1))}.empty{color:var(--text-dim);padding:32px 22px}.empty h3{color:var(--text);font-size:calc(17px * var(--font-scale, 1));letter-spacing:-.02em}.empty p{font-size:calc(14px * var(--font-scale, 1));line-height:1.65;max-width:45ch;margin-inline:auto;text-wrap:pretty}.modal-head,.modal-foot{padding:16px 20px}.modal-body{padding:20px;gap:18px}.modal,.drawer{max-width:100%}.bulkbar{max-width:calc(100% - 24px);flex-wrap:wrap}.toast{max-width:calc(100vw - 32px);font-size:calc(14px * var(--font-scale, 1))}.map{background:radial-gradient(circle at 1px 1px,var(--line) 1px,transparent 0) 0 0 / 24px 24px,var(--bg)}.map-hint{padding:8px 12px;background:var(--surface);border:1px solid var(--line);border-radius:8px}.cal-toolbar,.tl-toolbar{padding:12px 20px;gap:10px;background:var(--surface)}.cal-title,.tl-title{font-size:calc(16px * var(--font-scale, 1))}.view-options,.view-options-content{display:contents}.view-options-toggle{display:none}.cal-toolbar .switch button,.tl-toolbar .switch button{min-height:34px}.cal-nav button{min-width:30px;min-height:34px}.cal-undated,.tl-undated{padding:12px 20px;max-height:25dvh;overflow-y:auto}.tl-chip{min-height:32px;font-size:calc(12px * var(--font-scale, 1))}.cal-dayname b{font-size:calc(13px * var(--font-scale, 1))}.mb-bar{padding:12px 18px}.mb-picker{min-height:38px;font-size:calc(14px * var(--font-scale, 1))}.mb-foot{min-height:34px}.login{background:var(--bg)}.login form{width:min(440px,calc(100vw - 40px));padding:36px;border-radius:24px;box-shadow:var(--shadow-lift)}.login h1{font-size:calc(30px * var(--font-scale, 1));line-height:1.2;letter-spacing:-.04em;text-wrap:balance}.login .sub{font-size:calc(15px * var(--font-scale, 1));line-height:1.6}.login .btn{min-height:46px;justify-content:center}@media(max-width:1250px){.nav-caption{display:none}.topbar{gap:22px}.main-nav button{padding-inline:12px}}@media(max-width:1000px){.workspace-board,.workspace-board.has-props,.workspace-map.has-props,.workspace-timeline.has-props{grid-template-columns:minmax(0,1fr)}.workspace .props{position:absolute;top:0;right:0;bottom:0;width:min(420px,100%);max-height:none;z-index:15;border-left:1px solid var(--line);border-top:0;box-shadow:var(--shadow-lift)}.bell-menu{right:0;max-width:calc(100vw - 24px)}}@media(max-width:700px){.app{padding-bottom:calc(68px + env(safe-area-inset-bottom))}.topbar{height:auto;min-height:116px;padding:12px 16px;gap:12px;flex-wrap:wrap}.brand{font-size:calc(20px * var(--font-scale, 1));flex:1}.brand-mark{width:32px;height:32px}.header-actions{gap:4px}.new-task{width:42px;padding:0;justify-content:center}.new-task>span{display:none}.global-search{order:3;flex-basis:100%;max-width:none}.global-search input,.global-search input:focus{font-size:calc(16px * var(--font-scale, 1));height:42px}.global-search kbd,.navigation-row{display:none}.context-bar{padding:6px 12px;gap:4px;flex-wrap:wrap}.context-bar .path{flex-basis:100%;font-size:calc(12px * var(--font-scale, 1))}.seg-label{max-width:15ch}.seg-main{padding-inline:3px}.seg-more{min-width:26px}.seg-menu{position:fixed;left:12px;right:12px;top:164px;width:auto;max-height:50dvh}.immediate{padding:24px 16px}.keep-grid{grid-template-columns:1fr;gap:12px}.keep-simple{min-height:0;padding:16px;gap:8px 12px}.keep-solve{min-height:40px}.keep-detail{width:calc(100vw - 20px);max-height:calc(100dvh - 24px)}.keep-detail-body{padding:18px}.keep-detail .keep-title{font-size:calc(20px * var(--font-scale, 1))}.keep-check{flex-wrap:wrap}.keep-detail{--keep-text-size: calc(16px * var(--font-scale, 1));--keep-check-size: calc(16px * var(--font-scale, 1))}.keep-when-edit{max-width:100%}.keep-panel input,.keep-more input,.keep-more select{font-size:calc(16px * var(--font-scale, 1));min-width:0}.keep-box{width:26px;height:26px;flex-shrink:0}.keep-foot>button{min-height:44px}.columns{gap:12px;padding:12px;grid-template-columns:repeat(4,minmax(260px,84vw));scroll-snap-type:x proximity}.columns.done-folded{grid-template-columns:repeat(3,minmax(260px,84vw)) 48px}.column{scroll-snap-align:center}.column-head{min-height:52px}.workspace .props{width:100%;box-shadow:none}.props-body{padding:18px}.field input,.field select,.field textarea{font-size:calc(16px * var(--font-scale, 1))}.props-head .btn{min-height:44px}.props-sec-head{font-size:calc(14px * var(--font-scale, 1))}.grid-2{grid-template-columns:minmax(0,1fr)}.modal{max-height:calc(100dvh - 24px)}.modal-head,.modal-foot{padding:12px 16px;flex-wrap:wrap}.modal-body{padding:16px}.modal-foot .btn,.drawer-foot .btn{white-space:normal}.cal-toolbar,.tl-toolbar{padding:10px 12px;gap:8px}.cal-toolbar .cal-nav{flex-wrap:wrap}.view-options-toggle{display:inline-flex}.view-options-content{display:none}.view-options-content.expanded{display:flex;flex:1 1 100%;flex-wrap:wrap;gap:8px;padding:10px;background:var(--bg);border-radius:10px}.cal-nav button{min-width:28px;min-height:36px}.cal-toolbar .switch,.tl-toolbar .switch{max-width:100%;flex-wrap:wrap}.cal-toolbar .switch button,.tl-toolbar .switch button{min-height:38px}.cal-undated,.tl-undated{padding:10px 12px;max-height:18dvh}.cal-pop{max-width:calc(100vw - 24px)}.cal-menu,.filter-menu{position:fixed;top:180px;left:12px;right:12px;width:auto;max-width:none;max-height:55dvh;overflow:auto}.mb-bar{padding:8px;gap:6px}.mb-picker{max-width:100%;flex:1;min-width:100px}.mb-foot{flex-wrap:wrap;gap:6px}.mb-settings{gap:10px;max-height:22dvh;overflow:auto}.mb-floating-toolbar{max-width:calc(100% - 16px)}.map-hint{max-width:calc(100% - 24px);left:12px;flex-wrap:wrap;gap:4px 10px;font-size:calc(11px * var(--font-scale, 1))}.toast{bottom:calc(82px + env(safe-area-inset-bottom))}.bell-menu{position:fixed;top:62px;left:12px;right:12px;width:auto;max-height:65dvh}.bulkbar{bottom:8px}.login form{padding:26px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.01ms!important}}.immediate-board{display:flex;flex-direction:column;padding:20px 24px;overflow:hidden;min-height:0}.notes-columns{--note-col-min: calc(300px * var(--font-scale, 1));--note-col-min-dimmed: calc(150px * var(--font-scale, 1))}.notes-columns{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(var(--note-col-min),1fr);gap:12px;overflow-x:auto;flex:1;min-height:0;padding-bottom:8px;scroll-snap-type:x proximity}.note-column{--column-accent: var(--line-strong);min-width:0;min-height:0;display:flex;flex-direction:column;background:var(--surface-2);border:1px solid var(--line);border-top:3px solid var(--column-accent);border-radius:14px;scroll-snap-align:start}.note-column.tinted{background:color-mix(in srgb,var(--column-accent) 7%,var(--surface-2));border-color:color-mix(in srgb,var(--column-accent) 30%,var(--line));border-top-color:var(--column-accent)}:root[data-theme=light] .note-column.tinted{background:color-mix(in srgb,var(--column-accent) 5%,var(--surface-2))}.notes-columns{--focus-dim-ratio: .4}.notes-columns:has(>.note-column.dimmed){display:flex}.notes-columns:has(>.note-column.dimmed)>.note-column{flex:1 1 0;min-width:var(--note-col-min)}.notes-columns:has(>.note-column.dimmed)>.note-column.dimmed{flex-grow:var(--focus-dim-ratio);min-width:var(--note-col-min-dimmed)}.note-column.dimmed{filter:grayscale(1);opacity:.55;transition:flex-grow .35s var(--ease),opacity .2s var(--ease),filter .2s var(--ease)}.note-column.dimmed:hover,.note-column.dimmed:focus-within{filter:none;opacity:1}.immediate-board.dragging .note-column.dimmed{filter:none;opacity:.85}.note-column.dimmed .note-column-head h2{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.note-column-head{display:flex;align-items:center;gap:8px;padding:8px 10px 6px;min-height:48px}.note-column-head h2{font-size:calc(14px * var(--font-scale, 1));font-weight:650;margin:0;overflow-wrap:anywhere;min-width:0}.note-column-head .icon-chip{margin-top:0;background:var(--surface-3);color:var(--text-dim)}.note-column-count{min-width:20px;padding:1px 5px;font-size:calc(11px * var(--font-scale, 1));font-variant-numeric:tabular-nums;text-align:center;background:var(--surface);border-radius:6px;color:var(--text-dim)}.note-column-count small{font-size:calc(10px * var(--font-scale, 1));color:var(--text-faint);margin-left:1px}.note-column-count i{font-style:normal;color:var(--text-faint);margin:0 1px}.column-editor{display:grid;gap:8px;width:100%;padding-bottom:4px}.column-editor-row{display:flex;align-items:center;gap:6px;min-width:0}.column-editor-row input{flex:1;min-width:0}.column-editor-swatches{display:flex;flex-wrap:wrap;gap:5px}.column-editor .icon-picker .menu-search{width:100%;box-sizing:border-box;padding:7px 9px;font-size:calc(13px * var(--font-scale, 1));color:var(--text)}.column-editor .icon-grid{max-height:120px}.column-add-note{display:flex;gap:6px;margin:0 10px 8px}.column-add-note>*{opacity:.3;transition:opacity .12s var(--ease)}.column-add-note:hover>*{opacity:.6}.column-add-note:focus-within>*,.column-add-note.filled>*{opacity:1}.column-add-note .split-grip{opacity:1}.column-add-note input,.column-editor-row input,.add-column-form input,.notes-selection select,.cluster-notes-add input{width:100%;min-width:0;padding:7px 9px;font-size:calc(13px * var(--font-scale, 1));border:1px solid var(--line);border-radius:8px;background:var(--surface);color:var(--text)}.column-add-note .btn{background:var(--surface);min-height:34px;min-width:34px}.note-column-body{display:flex;flex-direction:column;gap:7px;min-height:80px;overflow-y:auto;padding:0 10px 10px;overscroll-behavior-y:contain;flex:1 1 auto}.note-section-active{flex:0 0 var(--immediate-split, 170px);min-height:44px;max-height:62%;padding-bottom:4px}.note-column-body.drop-active{outline:1px solid var(--accent);outline-offset:-1px;border-radius:10px;background:color-mix(in srgb,var(--accent) 6%,transparent)}.column-add-note.column-split{position:relative;border-top:1px solid var(--line-strong);padding-top:8px;margin-top:2px}.split-grip{position:absolute;left:0;right:0;top:-5px;height:13px;cursor:row-resize;touch-action:none;border-radius:3px}.split-grip:hover,.split-grip:focus-visible{background:color-mix(in srgb,var(--accent) 45%,transparent);outline:none}.immediate-board.splitting,.immediate-board.splitting *{cursor:row-resize!important;-webkit-user-select:none;user-select:none}.immediate-board.splitting .column-add-note.column-split{border-top-color:var(--accent)}.keep-stage{align-self:flex-start}.keep-stage button{min-height:30px}.column-empty-slim{flex:1 1 auto;min-height:40px;padding:6px;color:var(--text-faint);opacity:.55}.note-column-body>*{flex-shrink:0}.column-note{padding:7px 8px 7px 10px;gap:4px;border-radius:10px;box-shadow:none;cursor:grab;user-select:none;-webkit-user-select:none;touch-action:manipulation;outline-offset:-1px}.column-note:active{cursor:grabbing}.column-note:focus-visible{outline:2px solid var(--accent)}.column-note.selected{outline:2px solid var(--accent);background:var(--accent-soft)}.column-note.dragging{opacity:.35}.note-main{display:flex;align-items:flex-start;gap:8px;min-width:0}.note-main .keep-icon{margin-top:1px}.note-main .keep-text{flex:1;min-width:0;display:flex;flex-direction:column;gap:1px}.note-main .keep-t{font-size:calc(13px * var(--font-scale, 1));font-weight:600;line-height:1.35;overflow-wrap:anywhere}.note-main .keep-n{font-size:calc(12px * var(--font-scale, 1));line-height:1.4;color:var(--text-dim);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.column-note.done .keep-t{text-decoration:line-through;color:var(--text-dim)}.note-solve{flex:none;width:24px;height:24px;display:grid;place-items:center;border:1px solid var(--line-strong);border-radius:7px;background:transparent;color:var(--text-faint);cursor:pointer;padding:0}.note-solve:hover{border-color:var(--ok);color:var(--ok)}.column-note.done .note-solve{background:var(--ok);border-color:var(--ok);color:#fff}.note-footer{display:flex;flex-wrap:wrap;align-items:center;gap:8px;padding-left:26px}.note-state{display:inline-flex;align-items:center;gap:3px;font-size:calc(11px * var(--font-scale, 1));color:var(--text-dim)}.note-state.late{color:var(--danger)}.note-state-clear{display:inline-flex;align-items:center;justify-content:center;width:15px;height:15px;margin-left:2px;padding:0;border:0;border-radius:50%;background:none;cursor:pointer;color:var(--text-faint);opacity:0;transition:opacity .12s var(--ease)}.keep:hover .note-state-clear,.note-state-clear:focus-visible,.chip.wait .note-state-clear{opacity:1}.note-state-clear:hover{color:var(--danger);background:var(--surface-2)}@media(hover:none){.note-state-clear{opacity:1}}.column-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:120px;border:1px dashed var(--line-strong);border-radius:10px;padding:16px 12px;color:var(--text-faint);text-align:center}.column-empty p{font-size:calc(13px * var(--font-scale, 1));color:var(--text-dim);margin:8px 0 3px}.column-empty span{font-size:calc(12px * var(--font-scale, 1));max-width:25ch}.note-column.late{border-color:var(--danger);box-shadow:inset 0 0 0 1px var(--danger)}.note-column.late{border-top-color:var(--danger)}.note-column-head{position:relative}.note-column-late{position:absolute;left:50%;transform:translate(-50%);display:inline-flex;align-items:center;color:var(--danger);pointer-events:auto}.note-column.drop-active{border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent)}.immediate-board.dragging,.immediate-board.dragging *{cursor:grabbing!important}.note-drag-preview{display:grid;grid-template-columns:auto 1fr;gap:3px 8px;align-items:center;padding:10px 14px;background:var(--surface);color:var(--text);border:2px solid var(--accent);border-radius:10px;box-shadow:var(--shadow-lift);max-width:280px;font-size:calc(13px * var(--font-scale, 1))}.note-drag-preview span{grid-column:2;font-size:calc(11px * var(--font-scale, 1));color:var(--text-dim)}.notes-selection{display:flex;align-items:center;flex-wrap:wrap;gap:10px;border:1px solid var(--accent-line);background:var(--accent-soft);padding:8px 12px;border-radius:10px;margin-bottom:12px}.notes-selection strong{font-size:calc(13px * var(--font-scale, 1))}.notes-selection select{width:auto;max-width:240px}.add-column-form{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:14px}.add-column-form input{flex:1;max-width:340px}.notes-filter-info{display:flex;align-items:center;gap:10px;font-size:calc(13px * var(--font-scale, 1));margin-bottom:10px;color:var(--text-dim)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}@media(max-width:700px){.immediate-board{padding:14px 12px 4px}.column-note{padding:9px 10px}.note-solve{width:30px;height:30px}.column-add-note input,.column-editor-row input,.add-column-form input,.notes-selection select,.cluster-notes-add input{font-size:calc(16px * var(--font-scale, 1))}.notes-selection{gap:8px;padding:8px}.notes-selection select{max-width:145px}.notes-selection .btn,.notes-selection strong{font-size:calc(12px * var(--font-scale, 1))}}.column-note.pinned.tinted{--keep-tint: 42%}:root[data-theme=light] .column-note.pinned.tinted{--keep-tint: 30%}.column-note.pinned:not(.tinted){background:color-mix(in srgb,var(--column-accent) 24%,var(--surface));border-color:color-mix(in srgb,var(--column-accent) 45%,var(--line));border-left-color:var(--column-accent)}:root[data-theme=light] .column-note.pinned:not(.tinted){background:color-mix(in srgb,var(--column-accent) 16%,var(--surface))}.note-pin{flex:none;color:var(--accent);margin-top:6px}.note-slot{display:flex;flex-direction:column;gap:7px}.note-slot.waiting-start{margin-top:auto;padding-top:20px}.note-section-active:has(.note-slot.waiting-start){padding-bottom:10px}.column-note.waiting{opacity:.6}.column-note.waiting .keep-t{color:var(--text-dim)}.note-drop-line{position:relative;flex:none;height:3px;margin:-2px 2px;border-radius:2px;background:var(--accent);box-shadow:0 0 0 2px var(--accent-soft)}.note-drop-line:before{content:"";position:absolute;left:-5px;top:-3px;width:9px;height:9px;border-radius:50%;background:var(--accent)}.assistant-fab{position:fixed;right:20px;bottom:20px;z-index:6000;width:52px;height:52px;border-radius:50%;border:0;background:var(--accent);color:var(--accent-ink);display:grid;place-items:center;box-shadow:var(--shadow-lift);cursor:pointer}.assistant-fab:hover{filter:brightness(1.08)}@media(min-width:1001px){body:has(.workspace.has-props) .assistant-fab,body:has(.workspace.has-props) .assistant-panel{right:calc(var(--w-props) + 20px)}}body:has(.workspace-moodboard) .assistant-fab{right:calc(var(--mb-nav-width, 260px) + 26px);bottom:60px}body:has(.workspace-moodboard) .assistant-panel{right:calc(var(--mb-nav-width, 260px) + 26px);bottom:124px}.assistant-fab[aria-expanded=true]{background:var(--surface-3);color:var(--text)}.assistant-panel{position:fixed;right:20px;bottom:84px;z-index:6000;width:min(420px,calc(100vw - 32px));height:min(640px,calc(100dvh - 120px));display:flex;flex-direction:column;background:var(--surface);border:1px solid var(--line);border-radius:var(--r-panel);box-shadow:var(--shadow-lift);overflow:hidden}.assistant-head{display:flex;align-items:center;gap:8px;padding:8px 8px 8px 14px;border-bottom:1px solid var(--line)}.assistant-head strong{font-size:calc(14px * var(--font-scale, 1))}.assistant-head-icon{color:var(--accent)}.assistant-model{font-size:calc(11px * var(--font-scale, 1));color:var(--text-faint);padding:1px 6px;border:1px solid var(--line);border-radius:999px}.assistant-context{font-size:calc(11px * var(--font-scale, 1));color:var(--text-dim);padding:6px 14px;background:var(--surface-2);border-bottom:1px solid var(--line);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.assistant-log{flex:1;min-height:0;overflow-y:auto;padding:12px 14px;display:flex;flex-direction:column;gap:10px}.assistant-hint{font-size:calc(12.5px * var(--font-scale, 1));line-height:1.5;color:var(--text-dim)}.assistant-hint code{font-size:calc(11px * var(--font-scale, 1));overflow-wrap:anywhere}.assistant-warning{display:block;color:var(--danger)}.assistant-warning>svg{vertical-align:-2px;margin-right:6px}.assistant-msg{max-width:92%;padding:8px 11px;border-radius:12px;font-size:calc(13.5px * var(--font-scale, 1));line-height:1.45;white-space:pre-wrap;overflow-wrap:anywhere}.assistant-msg.user{align-self:flex-end;background:var(--accent-soft);border:1px solid var(--accent-line);border-bottom-right-radius:4px}.assistant-msg.assistant{align-self:flex-start;background:var(--surface-2);border:1px solid var(--line);border-bottom-left-radius:4px}.assistant-tools{display:flex;flex-wrap:wrap;gap:4px;margin-bottom:6px}.assistant-tool{display:inline-flex;align-items:center;gap:4px;font-size:calc(11px * var(--font-scale, 1));padding:2px 7px;border-radius:999px;background:var(--surface);border:1px solid var(--line);color:var(--text-dim)}.assistant-tool.ok{border-color:var(--ok);color:var(--ok)}.assistant-tool.err{border-color:var(--danger);color:var(--danger)}.assistant-error{display:flex;align-items:center;gap:4px;color:var(--danger);font-size:calc(12px * var(--font-scale, 1));margin-top:4px}.assistant-typing{display:inline-flex;gap:3px;padding:4px 0}.assistant-typing i{width:6px;height:6px;border-radius:50%;background:var(--text-faint);animation:assistant-dot 1s infinite ease-in-out}.assistant-typing i:nth-child(2){animation-delay:.15s}.assistant-typing i:nth-child(3){animation-delay:.3s}@keyframes assistant-dot{0%,80%,to{opacity:.3;transform:translateY(0)}40%{opacity:1;transform:translateY(-3px)}}.assistant-composer{display:flex;gap:6px;align-items:flex-end;padding:10px 12px;border-top:1px solid var(--line);background:var(--surface-2)}.assistant-composer textarea{flex:1;resize:none;min-height:38px;max-height:120px;padding:9px 10px;font:inherit;font-size:calc(13.5px * var(--font-scale, 1));line-height:1.4;border:1px solid var(--line);border-radius:9px;background:var(--surface);color:var(--text)}.assistant-composer .btn{flex:none}@media(max-width:700px){.assistant-fab{right:12px;bottom:76px;width:48px;height:48px}.assistant-panel{right:0;left:0;bottom:0;width:100vw;height:min(80dvh,640px);border-radius:16px 16px 0 0}.assistant-composer textarea{font-size:calc(16px * var(--font-scale, 1))}}.period-pick{display:flex;gap:6px;flex-wrap:wrap}.period-pick select{flex:1 1 8ch;min-width:8ch}.period-pick input{flex:0 0 7ch;width:7ch}.suggest{position:relative;flex:1 1 auto;min-width:0;display:flex}.suggest>input{width:100%;min-width:0}.suggest-list{position:fixed;z-index:6000;margin:0;padding:4px;list-style:none;max-height:128px;overflow-y:auto;overscroll-behavior:contain;background:var(--surface);border:1px solid var(--line-strong);border-radius:var(--r-ctl);box-shadow:var(--shadow-lift)}.suggest-list li{display:block}.suggest-list button{display:flex;align-items:baseline;gap:6px;width:100%;min-height:36px;padding:6px 8px;background:none;border:0;border-radius:7px;color:var(--text);font:inherit;font-size:calc(12.5px * var(--font-scale, 1));text-align:left;cursor:pointer}.suggest-list button:hover,.suggest-list button.on{background:var(--surface-2)}.suggest-title{flex:1 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.suggest-hint{flex:none;color:var(--text-faint);font-size:calc(11px * var(--font-scale, 1))}.cal-agenda{flex:1;min-height:0;overflow-x:auto;overflow-y:hidden;padding:12px 16px 8px;display:grid;grid-auto-flow:column;gap:8px 16px;align-items:stretch}.cal-agenda{scrollbar-width:auto;scrollbar-color:var(--line-strong) var(--surface-2)}.cal-agenda::-webkit-scrollbar{height:12px}.cal-agenda::-webkit-scrollbar-track{background:var(--surface-2);border-radius:6px}.cal-agenda::-webkit-scrollbar-thumb{background:var(--line-strong);border-radius:6px;border:3px solid var(--surface-2)}.cal-agenda::-webkit-scrollbar-thumb:hover{background:var(--text-faint)}.ag-day{position:relative;min-width:0;min-height:0;overflow-y:auto;padding:4px 12px 6px;border-right:1px solid var(--line)}.ag-day:last-child{border-right:0}.ag-day.today:before{content:"";position:absolute;inset:auto 0 0 0;top:calc(26px + 13px * var(--font-scale, 1));background:var(--accent-soft);pointer-events:none}.ag-day>*{position:relative}.ag-day h3{position:sticky;top:0;z-index:2;margin:0 0 8px;padding:4px 0;background:var(--bg);font-size:calc(13px * var(--font-scale, 1));font-weight:600;color:var(--text-dim)}.ag-day.today h3{color:var(--accent)}.ag-empty{display:flex;align-items:center;gap:6px;margin:0;color:var(--text-faint);font-size:calc(12.5px * var(--font-scale, 1))}.ag-slots{display:flex;flex-direction:column}.ag-slot{display:grid;grid-template-columns:minmax(0,3fr) minmax(0,2fr);gap:12px;align-items:start}.ag-slots.single .ag-slot{grid-template-columns:minmax(0,1fr)}.ag-col{display:flex;flex-direction:column;gap:4px;min-width:0}.ag-row{display:flex;flex-direction:column;gap:2px;padding:6px 10px;min-width:0;background:var(--surface);border:1px solid var(--line);border-left:3px solid var(--line-strong);border-radius:10px;color:var(--text);font:inherit;text-align:left;cursor:pointer}.ag-row:hover{background:var(--surface-2)}.ag-row.task{border-style:solid}.ag-row.allday{border-left-style:dashed}.ag-time{color:var(--text-dim);font-size:calc(11.5px * var(--font-scale, 1));font-variant-numeric:tabular-nums}.ag-title{display:flex;align-items:flex-start;gap:6px;min-width:0;font-size:calc(13px * var(--font-scale, 1));overflow-wrap:anywhere}.ag-title svg{flex:none;margin-top:2px}.ag-hint{font-size:calc(11px * var(--font-scale, 1));color:var(--text-faint);overflow-wrap:anywhere}.ag-day.past{opacity:.45}.ag-day.past h3{color:var(--text-faint)}.ag-row.past{opacity:.45}.ag-row.past:hover{opacity:.8}.ag-allday{display:flex;flex-wrap:wrap;gap:5px;margin-bottom:6px}.ag-chip{display:inline-flex;align-items:baseline;gap:6px;max-width:100%;padding:3px 8px;background:var(--surface);border:1px solid var(--line);border-left:3px solid var(--line-strong);border-radius:8px;color:var(--text);font:inherit;font-size:calc(12px * var(--font-scale, 1));cursor:pointer}.ag-chip:hover{background:var(--surface-2)}.ag-chip.muted{opacity:.5;background:none}.ag-chip-title{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ag-chip-hint{color:var(--text-faint);font-size:calc(10.5px * var(--font-scale, 1))}.ag-sep{border:0;border-top:1px solid var(--line);margin:4px 0 8px}.ag-col.muted .ag-row{opacity:.55;background:none}.ag-col.muted .ag-row:hover{opacity:.85;background:var(--surface)}.field label{display:flex;align-items:center;gap:8px}.field-reset{margin-left:auto;display:inline-flex;align-items:center;gap:3px;padding:1px 5px;background:none;border:0;border-radius:6px;color:var(--text-faint);font:inherit;font-size:calc(10.5px * var(--font-scale, 1));cursor:pointer}.field-reset:hover{color:var(--danger);background:var(--surface-2)}.keep-bottom{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding-top:10px;border-top:1px solid var(--line)}.keep-bottom .keep-danger{margin-left:10px}.keep-column-pick{display:flex;align-items:center;gap:6px;min-width:0}.keep-column-pick .icon-chip{margin-top:0}.keep-column-pick select{flex:1 1 auto;min-width:0}.keep-head{gap:10px}.keep-head .keep-pin+.keep-pin{margin-left:4px}.keep-bottom .spacer{flex:1 1 auto}.keep-stage{align-self:center}.keep-look{display:flex;flex-direction:column;gap:6px}.keep-swatches{display:flex;flex-wrap:wrap;gap:5px}.keep-more{display:flex;flex-direction:column;gap:12px}.keep-more-sec{display:flex;flex-direction:column;gap:6px}.keep-more-sec h5{display:flex;align-items:center;gap:5px;margin:0;font-size:calc(11px * var(--font-scale, 1));font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--text-faint)}.keep-more-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.keep-more-row label{display:flex;flex-direction:column;gap:3px;min-width:0}.keep-more-row label>span:first-child{display:flex;align-items:center;gap:4px;font-size:calc(11px * var(--font-scale, 1));color:var(--text-dim)}.keep-more-row label>span.keep-label-strong{font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--text-faint)}.keep-more-row input,.keep-more-row select{width:100%;min-width:0}.keep-more-hint{margin:0;font-size:calc(11px * var(--font-scale, 1));color:var(--text-faint)}.keep-more-clear{align-self:flex-start;display:inline-flex;align-items:center;gap:4px;padding:2px 6px;background:none;border:0;border-radius:6px;color:var(--text-faint);font:inherit;font-size:calc(11px * var(--font-scale, 1));cursor:pointer}.keep-more-clear:hover{color:var(--danger);background:var(--surface-2)}@media(max-width:560px){.keep-more-row{grid-template-columns:minmax(0,1fr)}}.info-tip{display:inline-grid;place-items:center;width:15px;height:15px;flex:none;border-radius:50%;background:var(--surface-3);color:var(--text-faint);cursor:help}.info-tip:hover{color:var(--text);background:var(--surface-2)}.keep-detail-body{display:flex;flex-direction:column;overflow:hidden}.keep-detail-body>.keep-head,.keep-detail-body>.keep-meta,.keep-detail-body>.keep-bottom,.keep-detail-body>.keep-foot{flex:none}.keep-detail-body>.keep-cols{flex:1 1 auto;min-height:0}.keep-cols{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;min-height:0;overflow-y:auto}.keep-col{display:flex;flex-direction:column;gap:8px;min-width:0}.keep-col-when{padding-left:16px;border-left:1px solid var(--line);color:var(--text-dim)}.keep-col-when input,.keep-col-when select{background:var(--surface-2)}@media(max-width:860px){.keep-cols{grid-template-columns:minmax(0,1fr)}.keep-col-when{padding-left:0;border-left:0;border-top:1px solid var(--line);padding-top:12px}}.ag-slot{position:relative}.ag-now{position:relative;z-index:3;display:flex;align-items:center;gap:6px;height:0;margin:3px 0;border-top:4px solid var(--danger);pointer-events:none}.ag-now:before{content:"";position:absolute;left:-4px;top:-5px;width:8px;height:8px;border-radius:var(--r-pill);background:var(--danger)}.ag-now.inside{position:absolute;left:0;right:0;margin:0}.ag-now span{position:absolute;right:100%;margin-right:7px;padding:0 3px;background:var(--bg);border-radius:3px;color:var(--danger);font-weight:600;font-size:calc(10px * var(--font-scale, 1));white-space:nowrap}.global-search{position:relative}.global-hits{position:absolute;top:calc(100% + 6px);left:0;z-index:6000;min-width:100%;width:max(100%,520px);max-width:min(720px,calc(100vw - 32px));margin:0;padding:4px;list-style:none;max-height:198px;overflow-y:auto;overscroll-behavior:contain;background:var(--surface);border:1px solid var(--line-strong);border-radius:var(--r-panel);box-shadow:var(--shadow-lift)}.global-hits li{display:block}.global-hits button{display:grid;grid-template-columns:20px minmax(0,1fr) auto auto;align-items:center;gap:8px;width:100%;min-height:34px;padding:6px 8px;background:none;border:0;border-radius:8px;color:var(--text);font:inherit;font-size:calc(12.5px * var(--font-scale, 1));text-align:left;cursor:pointer}.global-hits button:hover,.global-hits button.on{background:var(--surface-2)}.hit-mark{display:inline-flex;align-items:center;justify-content:flex-end;width:20px}.global-hits svg{position:static;flex:none;width:auto;pointer-events:none}.hit-title{min-width:0;color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.hit-kind{color:var(--text-faint);font-size:calc(10px * var(--font-scale, 1));text-transform:uppercase;letter-spacing:.04em;white-space:nowrap}.hit-hint{display:inline-flex;align-items:center;gap:5px;max-width:24ch;color:var(--text);font-size:calc(11.5px * var(--font-scale, 1));overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.props-empty{display:grid;place-items:center;padding:24px;color:var(--text-faint);text-align:center}.props-empty p{margin:0;max-width:24ch;font-size:calc(12.5px * var(--font-scale, 1))}.area-clusters{list-style:none;margin:0 0 8px;padding:0;display:flex;flex-direction:column;gap:2px}.area-clusters .btn{width:100%;justify-content:flex-start}.dt-field{display:flex;align-items:center;gap:4px;min-width:0;flex-wrap:wrap}.dt-field .dt-date{flex:1 1 132px;min-width:132px}.tp{position:relative;display:inline-flex;align-items:center;flex:0 0 auto}.dt-field .tp-input,.tp-input{width:4.6em;min-width:0;padding-right:16px;font-variant-numeric:tabular-nums;text-align:center}.tp-toggle{position:absolute;right:2px;display:inline-flex;align-items:center;background:none;border:0;padding:2px;cursor:pointer;color:var(--text-faint)}.tp-toggle:hover:not(:disabled){color:var(--text)}.tp-toggle:disabled{opacity:.4;cursor:default}.tp-pop{position:absolute;z-index:40;top:calc(100% + 4px);right:0;display:flex;gap:2px;padding:3px;background:var(--surface);border:1px solid var(--line-strong);border-radius:var(--r-ctl);box-shadow:0 8px 24px #00000059}.tp-col{display:flex;flex-direction:column;gap:1px}.tp-hours{max-height:186px;overflow-y:auto;scrollbar-width:thin}.tp-item{background:none;border:0;border-radius:var(--r-ctl);cursor:pointer;padding:5px 10px;color:var(--text-dim);font-variant-numeric:tabular-nums;font-size:calc(12px * var(--font-scale, 1))}.tp-item:hover{background:var(--surface-3);color:var(--text)}.tp-item.on{background:var(--accent);color:var(--accent-ink)}.keep-check .dt-field{gap:2px}.keep-check .dt-field input{background:var(--surface-2);color:var(--text);border:1px solid var(--accent-line);border-radius:var(--r-ctl);padding:1px 3px;font:inherit;font-size:calc(11px * var(--font-scale, 1))}.keep-check .tp-input{padding-right:14px}.keep-meta{margin-bottom:6px}.keep-check,.keep-add-check{gap:10px}.keep-more-row.keep-wait-row{grid-template-columns:minmax(0,1.7fr) minmax(0,1.5fr) minmax(0,.9fr)}@media(max-width:900px){.keep-more-row.keep-wait-row{grid-template-columns:minmax(0,1fr)}}.focus-editor{display:grid;gap:12px}.focus-rules{list-style:none;margin:0;padding:0;display:grid;gap:8px}.focus-rule{display:flex;flex-wrap:wrap;align-items:center;gap:8px;padding:8px;background:var(--surface-2);border:1px solid var(--line);border-radius:var(--r-ctl)}.focus-rule select{min-width:120px}.focus-rule label{display:inline-flex;align-items:center;gap:4px;color:var(--text-dim);font-size:calc(12px * var(--font-scale, 1))}.focus-rule>button:last-child{margin-left:auto}.focus-times{display:inline-flex;align-items:center;gap:4px}.focus-times i{font-style:normal;color:var(--text-faint)}.focus-days{display:inline-flex;gap:2px}.focus-day{min-width:28px;padding:3px 0;cursor:pointer;background:var(--surface);border:1px solid var(--line);border-radius:6px;color:var(--text-faint);font:inherit;font-size:calc(11.5px * var(--font-scale, 1))}.focus-day.on{background:var(--accent);border-color:var(--accent);color:var(--accent-ink);font-weight:650}.focus-now{display:flex;align-items:center;gap:6px;margin:0;color:var(--text-dim);font-size:calc(12.5px * var(--font-scale, 1))}.focus-options{display:grid;gap:8px;padding-top:10px;border-top:1px solid var(--line)}.focus-options label{display:flex;align-items:center;gap:8px;color:var(--text-dim);font-size:calc(12.5px * var(--font-scale, 1))}.focus-options input[type=range]{flex:1;max-width:220px}.immediate-layout{display:flex;gap:14px;flex:1;min-height:0;min-width:0}.immediate-layout>.notes-columns{flex:1;min-width:0}.plan-panel{flex:0 0 320px;display:flex;flex-direction:column;gap:10px;min-height:0;padding:10px;overflow-y:auto;background:var(--surface-2);border:1px solid var(--line);border-radius:14px}.plan-panel-head{display:flex;align-items:center;gap:7px;color:var(--text-dim)}.plan-panel-head strong{color:var(--text);font-size:calc(13px * var(--font-scale, 1))}.plan-day header{display:flex;align-items:center;gap:6px;margin-bottom:4px}.plan-day h3{margin:0;font-size:calc(11.5px * var(--font-scale, 1));font-weight:650;text-transform:uppercase;letter-spacing:.04em;color:var(--text-faint)}.plan-count{margin-left:auto;padding:0 5px;border-radius:6px;background:var(--surface);color:var(--text-faint);font-size:calc(10.5px * var(--font-scale, 1));font-variant-numeric:tabular-nums}.plan-day.muted{opacity:.62}.plan-day.muted:hover,.plan-day.muted:focus-within{opacity:1}.plan-day.drop-active,.plan-grid.drop-active{outline:2px dashed var(--accent);outline-offset:3px;border-radius:10px}.plan-today{display:flex;flex-direction:column;min-height:0}.plan-list,.plan-untimed{list-style:none;margin:0;padding:0;display:grid;gap:4px;min-height:26px}.plan-list>li{display:flex;align-items:center;gap:5px;min-width:0}.plan-when{flex:0 0 auto;color:var(--text-faint);font-family:var(--font-mono);font-size:calc(10px * var(--font-scale, 1))}.plan-empty{padding:5px 7px;border:1px dashed var(--line);border-radius:8px;color:var(--text-faint);font-size:calc(11.5px * var(--font-scale, 1))}.plan-card{flex:1;display:flex;align-items:center;gap:6px;padding:4px 7px;min-width:0;background:var(--surface);border:1px solid var(--line);border-left:3px solid var(--keep-accent, var(--line-strong));border-radius:8px;cursor:grab;font-size:calc(12.5px * var(--font-scale, 1))}.plan-card.in-grid{position:absolute;overflow:hidden;align-items:flex-start;padding:3px 6px;font-size:calc(11.5px * var(--font-scale, 1));box-shadow:var(--shadow-soft)}.plan-card.dragging{opacity:.4}.plan-card.done .plan-title{text-decoration:line-through;color:var(--text-faint)}.plan-card.waiting{border-style:dashed}.plan-title{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.plan-icon{color:var(--text-faint);display:inline-flex}.plan-meta{display:inline-flex;align-items:center;gap:3px;color:var(--text-faint);font-size:calc(10.5px * var(--font-scale, 1))}.plan-check{flex:0 0 auto;width:14px;height:14px;padding:0;border:1.5px solid var(--line-strong);border-radius:4px;background:transparent;color:var(--accent-ink);cursor:pointer;display:inline-flex;align-items:center;justify-content:center}.plan-check[aria-pressed=true]{background:var(--ok);border-color:var(--ok)}.plan-drop{padding:0;border:0;background:none;color:var(--text-faint);cursor:pointer;opacity:0;display:inline-flex}.plan-card:hover .plan-drop,.plan-drop:focus-visible{opacity:1}.plan-drop:hover{color:var(--danger)}@media(hover:none){.plan-drop{opacity:1}}.plan-resize{position:absolute;left:0;right:0;bottom:0;height:6px;cursor:ns-resize;touch-action:none}.plan-card.in-grid:hover .plan-resize{background:var(--accent);opacity:.35}.plan-grid{flex:1;min-height:0;overflow-y:auto}.plan-grid-box{--plan-lane: 86px;position:relative}.plan-night{position:absolute;left:0;right:0;background:var(--surface-3);opacity:.5}.plan-hour{position:absolute;left:0;right:0;border-top:1px solid var(--line);color:var(--text-faint);font-family:var(--font-mono);font-size:calc(9.5px * var(--font-scale, 1))}.plan-hour span{position:absolute;top:1px;left:2px}.plan-around-lane{position:absolute;top:0;bottom:0;left:22px;width:60px}.plan-event,.plan-task{position:absolute;left:0;right:0;overflow:hidden;display:flex;align-items:flex-start;gap:2px;padding:1px 3px;border-radius:5px;background:var(--surface-3);color:var(--text-faint);font-size:calc(9.5px * var(--font-scale, 1));line-height:1.2}.plan-task{border:1px dashed var(--line-strong);background:none}.plan-untimed{margin-bottom:6px}.task-modal{width:min(620px,calc(100vw - 32px));max-height:max(70dvh,min(900px,88dvh));padding:0;overflow:hidden;grid-template-rows:minmax(0,1fr)}.task-modal{width:min(920px,calc(100vw - 32px))}.task-modal .props{border-left:0;min-height:0;overflow:hidden}.task-modal .props-body{overflow-y:auto}.task-modal .props-body{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;align-items:start}.task-modal .props-col{display:flex;flex-direction:column;gap:20px;min-width:0}.task-modal .props-col-settings{padding-left:20px;border-left:1px solid var(--line)}@media(max-width:760px){.task-modal .props-body{grid-template-columns:minmax(0,1fr)}.task-modal .props-col-settings{padding-left:0;border-left:0}}.task-modal-close{position:absolute;top:8px;right:8px;z-index:2}.task-modal .props-head{padding-right:44px}.column-note.task-note{border-style:dashed;background:none}.column-note.task-note:hover{background:var(--surface-2)}.task-origin{color:var(--text-faint)}.plan-ghost{position:absolute;z-index:5;pointer-events:none;left:var(--plan-lane);right:0;display:flex;align-items:flex-start;padding:2px 4px;border:1px dashed var(--accent);border-radius:6px;background:var(--accent-soft);color:var(--accent);font-size:calc(10.5px * var(--font-scale, 1))}.keep.planned:after{content:"";position:absolute;top:6px;right:6px;width:5px;height:5px;border-radius:50%;background:var(--accent)}.keep.planned{position:relative}.plan-drag{padding:5px 9px;border-radius:8px;background:var(--surface);border:1px solid var(--accent);color:var(--text);font-size:calc(12.5px * var(--font-scale, 1))}@media(max-width:900px){.immediate-layout.with-plan{flex-direction:column}.plan-panel{flex:0 0 auto;max-height:60vh}}.pwa-bar{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:7px clamp(12px,3vw,20px);padding-top:calc(7px + env(safe-area-inset-top));background:var(--accent-soft);border-bottom:1px solid var(--accent-line);color:var(--text);font-size:calc(12.5px * var(--font-scale, 1))}.pwa-bar svg{flex:none;color:var(--accent)}.pwa-bar span{flex:1;min-width:0}.pwa-bar .btn{min-height:44px}.pwa-bar-offline{background:var(--danger-soft);border-bottom-color:var(--danger)}.pwa-bar-offline svg{color:var(--danger)}.install-hint{position:relative;margin:6px 4px 2px;padding:10px 28px 10px 10px;background:var(--surface-2);border:1px solid var(--line-strong);border-radius:var(--r-ctl);color:var(--text-dim);font-size:calc(12px * var(--font-scale, 1));line-height:1.5}.install-hint p{margin:0}.install-hint b{color:var(--text)}.install-hint svg{vertical-align:-2px}.install-hint-close{position:absolute;top:4px;right:4px}.mobile-nav{position:fixed;bottom:0;left:0;right:0;z-index:30;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));padding:4px max(4px,env(safe-area-inset-right)) calc(4px + env(safe-area-inset-bottom)) max(4px,env(safe-area-inset-left));background:var(--surface);border-top:1px solid var(--line)}.mobile-nav button{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;min-height:52px;min-width:0;padding:5px 2px;background:none;border:0;border-radius:10px;color:var(--text-dim);font:inherit;font-size:calc(10.5px * var(--font-scale, 1));cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent}.mobile-nav button span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%}.mobile-nav button.active{background:var(--accent-soft);color:var(--accent)}.mobile-nav .nav-count{position:absolute;top:2px;right:calc(50% - 22px);min-width:16px;padding:0 3px;font-size:calc(9px * var(--font-scale, 1))}.column-pager{display:flex;align-items:center;justify-content:center;gap:6px;padding:0 4px 8px;flex:0 0 auto}.column-pager button{display:inline-flex;align-items:center;gap:6px;min-height:44px;padding:5px 9px;background:var(--surface-2);border:1px solid var(--line);border-radius:var(--r-pill);color:var(--text-faint);font:inherit;font-size:calc(11.5px * var(--font-scale, 1));cursor:pointer;touch-action:manipulation}.column-pager button.on{background:color-mix(in srgb,var(--column-accent) 16%,var(--surface-2));border-color:var(--column-accent);color:var(--text)}.column-pager button span{max-width:14ch;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@media(max-width:700px){.app{min-height:100dvh;padding-bottom:calc(60px + env(safe-area-inset-bottom))}.topbar{padding-top:calc(12px + env(safe-area-inset-top))}.notes-columns{grid-auto-columns:100%;gap:0;scroll-snap-type:x mandatory;overscroll-behavior-x:contain}.note-column{scroll-snap-align:center;border-radius:12px}.notes-columns:has(>.note-column.dimmed){display:grid}.notes-columns:has(>.note-column.dimmed)>.note-column,.notes-columns:has(>.note-column.dimmed)>.note-column.dimmed{flex:none;min-width:0}.assistant-fab{display:none}.assistant-panel{bottom:calc(60px + env(safe-area-inset-bottom));height:min(72dvh,560px);border-radius:16px 16px 0 0}.column-note,.card{touch-action:manipulation}.keep-box,.note-solve,.keep-row-btn,.props-head .btn-icon,.keep-close{min-width:44px;min-height:44px}.keep-box{width:44px;height:44px}.workspace .props-empty{display:none}.workspace .props:not(.props-empty),.immediate-layout.with-plan .plan-panel{position:fixed;left:0;right:0;bottom:0;top:auto;width:auto;max-width:none;height:min(86dvh,720px);max-height:86dvh;z-index:40;padding-bottom:env(safe-area-inset-bottom);background:var(--surface);border:1px solid var(--line-strong);border-bottom:0;border-radius:18px 18px 0 0;box-shadow:var(--shadow-lift);transition:transform .18s var(--ease);animation:sheet-up .22s var(--ease)}.immediate-layout.with-plan .plan-panel{flex:none}.workspace-map,.workspace-map.has-props,.workspace-timeline,.workspace-timeline.has-props{grid-template-columns:minmax(0,1fr);grid-template-rows:minmax(0,1fr)}.props-head[data-sheet-grip],.plan-panel-head[data-sheet-grip]{position:relative;padding-top:18px;touch-action:none;cursor:grab;-webkit-user-select:none;user-select:none}.props-head[data-sheet-grip]:before,.plan-panel-head[data-sheet-grip]:before{content:"";position:absolute;top:7px;left:50%;transform:translate(-50%);width:40px;height:4px;border-radius:2px;background:var(--line-strong)}@keyframes sheet-up{0%{transform:translateY(100%)}to{transform:none}}}@media(prefers-reduced-motion:reduce){.workspace .props,.immediate-layout.with-plan .plan-panel{animation:none}}.offline-card{width:min(440px,calc(100vw - 40px));display:flex;flex-direction:column;gap:14px;padding:36px;background:var(--surface);border:1px solid var(--line);border-radius:24px;box-shadow:var(--shadow-lift);text-align:left}.offline-card h1{display:flex;align-items:center;gap:9px;margin:0;font-size:calc(24px * var(--font-scale, 1));letter-spacing:-.03em}.offline-card h1 svg{color:var(--danger)}.offline-card .sub{margin:0;color:var(--text-dim);font-size:calc(14px * var(--font-scale, 1));line-height:1.6}.offline-card .btn{align-self:flex-start;min-height:44px}@media(max-width:700px){.cal-toolbar{padding:8px 10px;gap:6px;row-gap:6px}.cal-title{flex:0 0 auto}.cal-nav-compact{flex:1 1 auto;min-width:0}.cal-nav-compact button{min-height:44px;min-width:44px}.cal-nav-compact .cal-today{flex:1;justify-content:center}.cal-toolbar .switch{flex:1 1 auto;min-width:0}.cal-toolbar .switch button{flex:1;min-height:44px;padding-inline:4px}.cal-nav-jumps{display:flex;flex-wrap:wrap;gap:4px}.cal-nav-jumps button{min-height:44px;min-width:44px}}.cal-undated-toggle{display:inline-flex;align-items:center;gap:7px;min-height:44px;padding:0;background:none;border:0;color:inherit;font:inherit;cursor:pointer;touch-action:manipulation}.cal-undated-toggle svg{transition:transform .15s var(--ease)}.cal-undated-toggle svg.open{transform:rotate(180deg)}@media(max-width:700px){.cal-undated.collapsed{max-height:none;padding-block:0}.cal-undated.collapsed .cal-undated-head{margin:0}}@media(prefers-reduced-motion:reduce){.cal-undated-toggle svg{transition:none}}.assistant-rules{padding:4px 14px 0;border-bottom:1px solid var(--line);background:var(--surface-2)}.assistant-rules-toggle{background:none;border:0;padding:2px 0 6px;cursor:pointer;color:var(--text-dim);font:inherit;font-size:calc(11px * var(--font-scale, 1))}.assistant-rules-check{display:flex;align-items:center;gap:6px;margin:0 0 8px;color:var(--text-dim);font-size:calc(11.5px * var(--font-scale, 1));cursor:pointer}.assistant-rules-text{width:100%;margin:0 0 8px;padding:6px 8px;resize:vertical;font:inherit;font-size:calc(12.5px * var(--font-scale, 1));border:1px solid var(--line);border-radius:8px;background:var(--surface);color:var(--text)}.column-note.freelo-note{border-style:dashed;background:none}.column-note.freelo-note:hover{background:var(--surface-2)}.column-note.freelo-note.foreign{opacity:.62}.column-note.freelo-note.foreign:hover,.column-note.freelo-note.foreign:focus-within{opacity:1}.column-add-note.column-add-locked{min-height:8px}.column-add-note.column-add-locked.column-split{min-height:12px}.freelo-filter-row{margin:0 10px 6px}.freelo-filter{display:flex;min-width:120px}.freelo-filter>.statsel-btn{flex:1;min-width:0;justify-content:space-between}.freelo-filter>.statsel-btn>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.freelo-filter .statsel-menu{left:0;right:0;min-width:0;max-height:15rem;overflow-y:auto}.freelo-filter .statsel-menu button{justify-content:space-between;gap:8px}.freelo-filter .statsel-menu button>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.freelo-filter .statsel-menu button>i{font-style:normal;color:var(--text-faint);flex:none;font-size:calc(11px * var(--font-scale, 1))}.plan-card.from-freelo{border-style:dashed}.plan-card.from-freelo.foreign{opacity:.68}.plan-card.from-freelo.foreign:hover{opacity:1}.plan-check.plan-check-off{border-style:dashed;opacity:.4}.freelo-modal{width:70vw;max-width:70vw;height:70dvh;max-height:70dvh}.freelo-body{display:grid;grid-template-columns:minmax(0,1fr) 38rem;gap:18px;align-items:start;overflow:hidden}.freelo-main{min-width:0;overflow-y:auto;max-height:100%;padding-right:4px}.freelo-side{min-width:0;overflow-y:auto;max-height:100%;display:flex;flex-direction:column;gap:12px;padding-left:16px;border-left:1px solid var(--line)}.freelo-open{justify-content:center}.freelo-head{align-items:flex-start}.freelo-head-text{display:flex;flex-direction:column;gap:2px;flex:1;min-width:0}.freelo-kicker{display:inline-flex;align-items:center;gap:4px;text-transform:uppercase;letter-spacing:.09em;font-size:calc(10px * var(--font-scale, 1));color:var(--text-faint)}.freelo-title{margin:0;font-size:calc(19px * var(--font-scale, 1));line-height:1.3;font-weight:600;color:var(--text);overflow-wrap:anywhere;text-transform:uppercase;letter-spacing:.025em}.freelo-chips{display:flex;flex-wrap:wrap;gap:6px;margin-top:6px}.freelo-chip{display:inline-flex;align-items:center;gap:4px;padding:2px 9px;border-radius:var(--r-pill, 999px);border:1px solid var(--line);background:var(--surface-2);color:var(--text-dim);font-size:calc(11.5px * var(--font-scale, 1));max-width:22rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.freelo-chip.project{border-color:var(--accent);color:var(--accent);background:var(--accent-soft)}.freelo-chip.due{color:var(--text)}.freelo-chip.late{border-color:var(--danger);color:var(--danger);background:var(--danger-soft)}.freelo-chip.mine{border-color:var(--ok);color:var(--ok)}.freelo-chip.foreign{opacity:.75}.freelo-block+.freelo-block{margin-top:22px}.freelo-block-title{display:flex;align-items:center;gap:6px;margin:0 0 8px;padding-bottom:5px;border-bottom:1px solid var(--line);text-transform:uppercase;letter-spacing:.09em;font-size:calc(10.5px * var(--font-scale, 1));font-weight:600;color:var(--text-faint)}.freelo-block-title>i{font-style:normal;margin-left:auto;letter-spacing:0;padding:0 6px;border-radius:999px;background:var(--surface-3);color:var(--text-dim)}.freelo-subtasks{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:4px}.freelo-subtasks>li{display:flex;align-items:center;gap:8px;min-width:0;padding:4px 2px;border-bottom:1px solid var(--line)}.freelo-subtasks>li:last-child{border-bottom:0}.freelo-subtask-mark{flex:none;width:15px;height:15px;border-radius:4px;border:1px solid var(--line-strong);display:grid;place-items:center;color:var(--ok)}.freelo-subtasks>li.done .freelo-subtask-mark{border-color:var(--ok)}.freelo-subtasks>li.done .freelo-subtask-name{text-decoration:line-through;color:var(--text-faint)}.freelo-subtask-name{flex:1;min-width:0;overflow-wrap:anywhere}.freelo-thread{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:12px}.freelo-post{display:flex;gap:10px;min-width:0}.freelo-avatar{flex:none;width:26px;height:26px;border-radius:50%;display:grid;place-items:center;background:var(--surface-3);color:var(--text-dim);font-size:calc(12px * var(--font-scale, 1));font-weight:600}.freelo-post-body{flex:1;min-width:0;background:var(--surface-2);border:1px solid var(--line);border-radius:var(--r-panel, 10px);padding:8px 10px}.freelo-post-body>header{display:flex;align-items:baseline;gap:8px;margin-bottom:4px}.freelo-post-body>header>time{color:var(--text-faint);font-size:calc(11px * var(--font-scale, 1))}@media(max-width:1500px){.freelo-body{grid-template-columns:minmax(0,1fr) 26rem}.freelo-row{grid-template-columns:7rem minmax(0,1fr)}}@media(max-width:860px){.freelo-modal{width:calc(100vw - 32px);max-width:calc(100vw - 32px)}.freelo-body{grid-template-columns:minmax(0,1fr);overflow-y:auto}.freelo-main,.freelo-side{overflow:visible;max-height:none}.freelo-side{padding-left:0;border-left:0;border-top:1px solid var(--line);padding-top:12px}}.freelo-rows{display:flex;flex-direction:column;gap:8px}.freelo-row{display:grid;grid-template-columns:8.5rem minmax(0,1fr);gap:10px;align-items:baseline;min-width:0}.freelo-row-label{display:inline-flex;align-items:center;gap:4px;text-transform:uppercase;letter-spacing:.07em;color:var(--text-faint);font-size:calc(9.5px * var(--font-scale, 1))}.freelo-row-value{min-width:0;overflow-wrap:anywhere;color:var(--text);font-size:calc(13px * var(--font-scale, 1))}.freelo-html{line-height:1.6;overflow-wrap:anywhere}.freelo-html>:first-child{margin-top:0}.freelo-html>:last-child{margin-bottom:0}.freelo-html p{margin:0 0 .6em}.freelo-html b,.freelo-html strong{font-weight:650;color:var(--text)}.freelo-html i,.freelo-html em{font-style:italic}.freelo-html u,.freelo-html ins{text-decoration:underline}.freelo-html s,.freelo-html strike,.freelo-html del{text-decoration:line-through;opacity:.7}.freelo-html h1,.freelo-html h2,.freelo-html h3,.freelo-html h4,.freelo-html h5,.freelo-html h6{margin:1em 0 .4em;font-weight:650;line-height:1.3;color:var(--text)}.freelo-html h1{font-size:calc(17px * var(--font-scale, 1))}.freelo-html h2{font-size:calc(15.5px * var(--font-scale, 1))}.freelo-html h3,.freelo-html h4,.freelo-html h5,.freelo-html h6{font-size:calc(14px * var(--font-scale, 1))}.freelo-html code{background:var(--surface-3);border-radius:4px;padding:0 4px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.92em}.freelo-html pre>code{background:none;padding:0}.freelo-html hr{border:0;border-top:1px solid var(--line);margin:.9em 0}.freelo-html ul{list-style:disc;margin:0 0 .6em;padding-left:1.4em}.freelo-html ol{list-style:decimal;margin:0 0 .6em;padding-left:1.6em}.freelo-html li{margin:.15em 0}.freelo-html ul ul{list-style:circle}.freelo-html blockquote{margin:0 0 .6em;padding-left:.8em;border-left:3px solid var(--line-strong);color:var(--text-dim)}.freelo-html pre{background:var(--surface-2);padding:8px;border-radius:6px;overflow-x:auto}.freelo-html table{border-collapse:collapse;width:100%}.freelo-html th,.freelo-html td{border:1px solid var(--line);padding:4px 6px;text-align:left}.freelo-html a{color:var(--accent)}.freelo-comments{margin-top:14px;display:flex;flex-direction:column;gap:10px}.freelo-comment{border-top:1px solid var(--line);padding-top:8px}.freelo-comment>header{display:flex;gap:8px;align-items:baseline;margin-bottom:4px}.freelo-search{display:flex;align-items:center;gap:6px}.freelo-search>svg{color:var(--text-faint);flex:none}.freelo-search input{flex:1;min-width:0}.freelo-projects{list-style:none;margin:0;padding:4px;display:flex;flex-direction:column;gap:2px;flex:none;min-height:7.5rem;max-height:15rem;overflow-y:auto;border:1px solid var(--line);border-radius:var(--r-panel, 10px);background:var(--surface-2)}.freelo-projects>li{min-width:0}.freelo-project{display:flex;align-items:center;gap:8px;padding:5px 8px;border-radius:7px;cursor:pointer;color:var(--text-dim)}.freelo-project:hover{background:var(--surface-3);color:var(--text)}.freelo-project.on{color:var(--text)}.freelo-project input{flex:none}.freelo-project-name{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.freelo-project-owner{display:inline-flex;align-items:center;gap:3px;flex:none;color:var(--text-faint);font-size:calc(11px * var(--font-scale, 1))}.muted-note.error{display:inline-flex;align-items:center;gap:5px}.keep-recheck-days{display:flex;gap:6px;min-width:0}.keep-recheck-days>input[type=number]{width:3.6rem;flex:none}.keep-recheck-days>.keep-recheck-date{flex:1;min-width:7.5rem}.m-sheet-scrim{position:fixed;top:0;right:0;bottom:0;left:0;z-index:6100;border:0;padding:0;background:#050707a6}.m-sheet{position:fixed;left:0;right:0;bottom:0;z-index:6101;max-height:86dvh;overflow-y:auto;overscroll-behavior:contain;background:var(--surface);color:var(--text);border-radius:20px 20px 0 0;box-shadow:var(--shadow-lift);padding-bottom:env(safe-area-inset-bottom);transition:transform .16s ease;animation:m-sheet-in .18s ease-out}@keyframes m-sheet-in{0%{transform:translateY(40%);opacity:.4}to{transform:none;opacity:1}}.m-sheet-head{position:sticky;top:0;z-index:1;display:flex;align-items:center;gap:8px;padding:18px 10px 8px 16px;background:var(--surface);touch-action:none}.m-sheet-grip{position:absolute;top:7px;left:50%;width:40px;height:5px;margin-left:-20px;border-radius:3px;background:var(--line-strong)}.m-sheet-head h2{flex:1;min-width:0;margin:0;font-size:calc(17px * var(--font-scale, 1));font-weight:650;line-height:1.3;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.m-sheet-head .btn{min-height:44px;font-weight:600;color:var(--accent)}.m-sheet-body{display:flex;flex-direction:column;gap:12px;padding:4px 16px 20px}.m-sheet-label{margin:6px 0 -4px;font-size:calc(12px * var(--font-scale, 1));font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--text-dim)}.m-sheet-opts{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.m-sheet-opts .btn{min-height:40px}.m-sheet-opts .cal-nav-jumps{display:flex;flex-wrap:wrap;gap:6px}.m-sheet-opts .cal-nav-jumps button{min-width:44px;min-height:40px}.m-seg{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:2px;padding:3px;border-radius:12px;background:var(--bg)}.m-seg button{min-height:42px;border:0;border-radius:9px;background:none;color:var(--text-dim);font:inherit;font-size:calc(14px * var(--font-scale, 1));font-weight:600}.m-seg button.on{background:var(--accent);color:var(--accent-ink)}.m-chips{display:flex;flex-wrap:wrap;gap:8px}.m-chip{display:inline-flex;align-items:center;gap:7px;min-height:40px;padding:0 14px;border:1px solid var(--line);border-radius:999px;background:none;color:var(--text);font:inherit;font-size:calc(14px * var(--font-scale, 1))}.m-chip i{width:9px;height:9px;border-radius:50%}.m-chip.on{border-color:var(--accent);background:var(--accent-soft);font-weight:650}.m-actions{display:flex;flex-direction:column;margin:4px -16px 0;border-top:1px solid var(--line)}.m-actions>button{display:flex;align-items:center;gap:14px;min-height:52px;padding:0 18px;border:0;border-bottom:1px solid var(--line);background:none;color:var(--text);font:inherit;font-size:calc(15px * var(--font-scale, 1));text-align:left}.m-actions>button svg{color:var(--text-dim);flex:none}.m-action-hint{margin-left:auto;font-size:calc(13px * var(--font-scale, 1));color:var(--text-dim)}.m-actions>.m-danger,.m-actions>.m-danger svg{color:var(--danger)}.m-actions>.m-danger.armed{background:var(--danger-soft);font-weight:650}.m-fab{position:fixed;right:16px;bottom:calc(82px + env(safe-area-inset-bottom));z-index:60;display:inline-flex;align-items:center;gap:8px;height:56px;padding:0 20px 0 16px;border:0;border-radius:18px;background:var(--accent);color:var(--accent-ink);font:inherit;font-size:calc(15px * var(--font-scale, 1));font-weight:650;box-shadow:0 8px 22px #0007;cursor:pointer}.m-fab:disabled{opacity:.6}.m-workspace-board:has(.props) .m-fab{display:none}.m-workspace-board{display:flex;flex-direction:column;min-height:0}.m-board{flex:1;min-height:0;display:flex;flex-direction:column}.m-tabs-row{display:flex;align-items:center;gap:4px;padding-right:6px;border-bottom:1px solid var(--line);background:var(--bg)}.m-tabs{flex:1;min-width:0;display:flex;overflow-x:auto;scrollbar-width:none}.m-tabs::-webkit-scrollbar{display:none}.m-tabs button{flex:1 0 auto;display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:48px;padding:0 10px;border:0;border-bottom:3px solid transparent;background:none;color:var(--text-dim);font:inherit;font-size:calc(14px * var(--font-scale, 1));font-weight:550;white-space:nowrap}.m-tabs button.on{color:var(--text);font-weight:700;border-bottom-color:var(--accent)}.m-count{min-width:20px;padding:1px 6px;border-radius:10px;background:var(--surface-3);color:var(--text-dim);font-size:calc(12px * var(--font-scale, 1));font-weight:650;text-align:center}.m-tabs button.on .m-count{background:var(--accent);color:var(--accent-ink)}.m-list{flex:1;min-height:0;overflow-y:auto;display:flex;flex-direction:column;gap:8px;padding:12px 12px 150px}.m-empty{display:flex;flex-direction:column;align-items:center;gap:10px;padding:48px 16px;color:var(--text-dim)}.m-empty i{width:12px;height:12px;border-radius:50%}.m-hint{margin:6px 4px 0;font-size:calc(12px * var(--font-scale, 1));color:var(--text-faint);text-align:center}.m-swipe{position:relative;border-radius:var(--r-card, 12px)}.m-swipe-under{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;gap:6px;padding:0 18px;border-radius:inherit;font-weight:650;color:var(--to);background:color-mix(in srgb,var(--to) 14%,var(--surface))}.m-swipe-under.right{justify-content:flex-start}.m-swipe-under.left{justify-content:flex-end}.m-swipe-under.ready{background:color-mix(in srgb,var(--to) 32%,var(--surface))}.m-swipe-card{position:relative;touch-action:pan-y;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none}.m-swipe-card.settling{transition:transform .17s ease}.m-swipe-card .card{margin:0}.m-cal-bar{display:flex;align-items:center;flex-wrap:nowrap;gap:6px;padding:6px 6px 6px 16px}.m-cal-month{flex:1;min-width:0;font-size:calc(17px * var(--font-scale, 1));font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.m-cal-month:first-letter{text-transform:uppercase}.m-cal-bar .cal-nav button{min-height:40px;min-width:40px}.m-cal-tune{width:44px;height:44px}.m-agenda{flex:1;min-height:0;display:flex;flex-direction:column}.m-week{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:2px;padding:6px 8px 8px;border-bottom:1px solid var(--line);background:var(--surface-2);touch-action:pan-y}.m-week button{display:flex;flex-direction:column;align-items:center;gap:2px;min-height:54px;padding:5px 0;border:0;border-radius:14px;background:none;color:var(--text);font:inherit}.m-week-wd{font-size:calc(11px * var(--font-scale, 1));font-weight:550;text-transform:uppercase;letter-spacing:.04em;color:var(--text-dim)}.m-week-n{font-size:calc(17px * var(--font-scale, 1));font-weight:650}.m-week-dot{width:5px;height:5px;border-radius:50%}.m-week-dot.busy{background:var(--text-faint)}.m-week button.today .m-week-n{color:var(--accent)}.m-week button.on{background:var(--accent);color:var(--accent-ink)}.m-week button.on .m-week-wd,.m-week button.on .m-week-n{color:var(--accent-ink)}.m-week button.on .m-week-dot.busy{background:var(--accent-ink)}.m-ag-list{flex:1;min-height:0;overflow-y:auto;padding-bottom:150px}.m-ag-head{position:sticky;top:0;z-index:2;display:flex;align-items:baseline;justify-content:space-between;gap:8px;margin:0;padding:14px 16px 8px;background:var(--bg);font-size:calc(15px * var(--font-scale, 1));font-weight:700}.m-ag-head span:first-letter{text-transform:uppercase}.m-ag-head small{font-size:calc(12px * var(--font-scale, 1));font-weight:500;color:var(--text-dim)}.m-ag-day.today .m-ag-head span{color:var(--accent)}.m-overdue{margin:0 16px 10px;border:1px solid color-mix(in srgb,var(--danger) 40%,transparent);border-radius:12px;background:var(--danger-soft);overflow:hidden}.m-overdue-head{display:flex;align-items:center;gap:10px;width:100%;min-height:46px;padding:0 12px;border:0;background:none;color:var(--danger);font:inherit;font-weight:650;text-align:left}.m-overdue-head span{flex:1}.m-overdue ul{list-style:none;margin:0;padding:0 12px 6px}.m-overdue li button{display:grid;grid-template-columns:4px 1fr;gap:10px;width:100%;padding:8px 0;border:0;border-top:1px solid var(--line);background:none;color:var(--text);font:inherit;text-align:left}.m-ag-chips{display:flex;flex-wrap:wrap;gap:6px;padding:0 16px 10px}.m-ag-chip{display:inline-flex;align-items:center;gap:6px;max-width:100%;min-height:32px;padding:0 12px;border:1px solid var(--line);border-radius:999px;background:var(--surface-2);color:var(--text);font:inherit;font-size:calc(13px * var(--font-scale, 1));font-weight:550}.m-ag-chip i{width:7px;height:7px;border-radius:50%;flex:none}.m-ag-chip.muted{opacity:.6}.m-ag-rows{list-style:none;margin:0;padding:0 16px}.m-ag-row{display:grid;grid-template-columns:46px 4px minmax(0,1fr);gap:10px;width:100%;min-height:56px;padding:10px 0;border:0;border-bottom:1px solid var(--line);background:none;color:var(--text);font:inherit;text-align:left}.m-ag-time{display:flex;flex-direction:column;font-size:calc(13px * var(--font-scale, 1));line-height:1.35;color:var(--text)}.m-ag-time small{color:var(--text-faint);font-size:inherit}.m-ag-bar{width:4px;border-radius:2px;align-self:stretch}.m-ag-text{display:flex;flex-direction:column;gap:2px;min-width:0}.m-ag-title{display:flex;align-items:center;gap:6px;font-size:calc(15px * var(--font-scale, 1));font-weight:600;line-height:1.3}.m-ag-meta{font-size:calc(13px * var(--font-scale, 1));color:var(--text-dim);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.m-ag-row.muted{opacity:.6}.m-ag-row.past{opacity:.5}.m-now{position:relative;height:0;list-style:none}.m-now i{position:absolute;left:50px;right:0;top:-1px;height:2px;background:var(--danger)}.m-now i:before{content:"";position:absolute;left:-4px;top:-3px;width:8px;height:8px;border-radius:50%;background:var(--danger)}.m-ag-empty{margin:0;padding:0 16px 12px;font-size:calc(13px * var(--font-scale, 1));color:var(--text-faint)}.m-ag-more{display:block;margin:18px auto 0;min-height:44px}@media(max-width:700px){.topbar.topbar-mobile{min-height:56px;padding:6px 6px 6px 12px;gap:2px}.topbar-mobile .brand{flex:1;min-width:0}.topbar-mobile .global-search{order:3;flex-basis:100%;margin-top:2px}.topbar-mobile .header-actions .btn-icon{width:44px;height:44px}.m-scope{flex:1;min-width:0}.m-scope .path{font-size:calc(17px * var(--font-scale, 1));font-weight:650;flex-wrap:nowrap;overflow:hidden}.m-scope .seg-main{min-height:44px;padding-inline:4px}.m-scope .seg-label{max-width:16ch}.m-scope .seg-menu{top:58px}}@media(max-width:700px){.m-scope .path{display:flex}.m-filter .filterbar>.btn:first-child{width:44px;height:44px;padding:0;justify-content:center;font-size:0;gap:0;border-color:transparent;background:none}.m-filter .filterbar>.btn:first-child.btn-primary{background:var(--accent-soft);color:var(--accent)}.m-filter .filterbar>.btn:first-child svg{width:20px;height:20px}.m-filter .filter-menu{top:60px}.m-tabs button{padding:0 6px;gap:5px}}@media(max-width:700px){.m-cal-bar .cal-nav-compact{flex:none;display:flex;gap:4px}.m-cal-bar .cal-nav-compact .cal-today{flex:none;width:auto;padding:0 12px}}.column-tabs{flex:0 0 auto;border-bottom:1px solid var(--line);margin:-14px -12px 8px;background:var(--bg)}.column-tabs button.on{border-bottom-color:var(--column-accent)}.column-tabs button.on .m-count{background:var(--column-accent);color:var(--accent-ink)}@media(max-width:700px){.note-column{background:none;border:0;border-radius:0;overflow-y:auto;overscroll-behavior-y:contain;padding-bottom:150px}.note-column.tinted{background:none}.note-column-head .icon-chip,.note-column-head h2{display:none}.note-column-head{min-height:0;padding:0 0 4px;justify-content:flex-end}.note-section-active{flex:none;max-height:none}.note-column-body{overflow:visible;min-height:0;padding:0 2px 8px;flex:none}.note-slot.waiting-start{margin-top:12px;padding-top:8px}.split-grip{display:none}.column-add-note.column-split{margin-top:10px;padding-top:28px}.column-add-note.column-split:before{content:"Zásobník sloupce";position:absolute;left:2px;top:8px;font-size:calc(12px * var(--font-scale, 1));font-weight:600;letter-spacing:.05em;text-transform:uppercase;color:var(--text-dim)}.column-add-note.column-add-locked.column-split:before{content:none}.column-empty{min-height:0;padding:18px 12px}.column-empty-slim{display:none}}@media(max-width:700px){.notes-columns{scrollbar-width:none}.notes-columns::-webkit-scrollbar{display:none}}.m-map-switch{position:absolute;top:10px;left:12px;z-index:20;display:inline-flex;padding:3px;border-radius:12px;background:var(--surface-2);border:1px solid var(--line);box-shadow:var(--shadow-lift)}.m-map-switch button{min-height:38px;padding:0 14px;border:0;border-radius:9px;background:none;color:var(--text-dim);font:inherit;font-size:calc(14px * var(--font-scale, 1));font-weight:600}.m-map-switch button.on{background:var(--accent);color:var(--accent-ink)}.m-structure{position:relative;height:100%;overflow-y:auto;padding:62px 0 150px}.m-struct-area{margin-bottom:6px}.m-struct-head{display:flex;align-items:center;gap:10px;width:100%;min-height:52px;padding:6px 16px;border:0;background:none;color:var(--text);font:inherit;text-align:left;position:sticky;top:0;z-index:1;background:var(--bg)}.m-struct-head .m-struct-name{flex:1;min-width:0;font-size:calc(16px * var(--font-scale, 1));font-weight:700}.m-struct-head.on,.m-struct-row.on{background:var(--accent-soft)}.m-struct-late{font-size:calc(12px * var(--font-scale, 1));font-weight:600;color:var(--danger)}.m-structure ul{list-style:none;margin:0;padding:0 8px 0 16px}.m-structure li{display:flex;align-items:center;border-bottom:1px solid var(--line)}.m-structure li.inactive{opacity:.55}.m-struct-row{flex:1;min-width:0;display:flex;align-items:center;gap:12px;min-height:60px;padding:8px 4px 8px 8px;border:0;border-radius:10px;background:none;color:var(--text);font:inherit;text-align:left}.m-struct-icon{flex:none;display:grid;place-items:center;width:24px}.m-struct-text{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.m-struct-row .m-struct-name{font-size:calc(15px * var(--font-scale, 1));font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.m-struct-meta{font-size:calc(13px * var(--font-scale, 1));color:var(--text-dim);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.m-struct-meta b{color:var(--danger);font-weight:600}.m-struct-state{flex:none;display:inline-flex;align-items:center;gap:4px;font-size:calc(12px * var(--font-scale, 1));font-weight:600}.m-struct-go{flex:none;width:44px;height:44px;color:var(--text-dim)}@media(max-width:700px){.workspace-map{position:relative}.map-hint{display:none}.map-tools{top:10px;right:12px}.map-tools .btn{width:44px;height:44px}.map-tools .btn svg{width:18px;height:18px}}@media(max-width:700px){.m-scope{display:flex;align-items:center;gap:0}.m-scope .path>:not(:last-child){display:none}.m-scope .path{flex:1;min-width:0}.m-scope .seg-label{max-width:22ch}.m-scope-up{flex:none;width:40px;height:44px;margin-left:-8px}}@media(max-width:700px){.note-column>*{flex-shrink:0}}.board.has-notes{grid-template-rows:auto auto 1fr}.cluster-notes{border-bottom:1px solid var(--line);padding:8px 20px 10px;display:flex;flex-direction:column;gap:8px;min-width:0}.cluster-notes.collapsed{padding-bottom:8px}.cluster-notes-head{display:flex;align-items:center;gap:12px;flex-wrap:wrap;min-width:0}.cluster-notes-toggle{display:inline-flex;align-items:center;gap:6px;border:0;background:none;padding:2px 0;color:var(--text);font-weight:600;font-size:calc(13px * var(--font-scale, 1));cursor:pointer}.cluster-notes-chevron{color:var(--text-faint);transition:transform .15s var(--ease)}.cluster-notes.collapsed .cluster-notes-chevron{transform:rotate(-90deg)}.cluster-notes-count{min-width:18px;padding:0 6px;border-radius:9px;background:var(--surface-2);color:var(--text-dim);font-size:calc(11px * var(--font-scale, 1));font-weight:600;text-align:center}.cluster-notes-filters{display:flex;gap:4px;flex-wrap:wrap}.cluster-notes-list{display:flex;gap:8px;overflow-x:auto;padding-bottom:2px;align-items:stretch;scrollbar-width:thin}.cluster-note.keep{flex:0 0 240px;flex-direction:row;align-items:flex-start;gap:8px;padding:8px 10px;cursor:pointer;min-width:0}.cluster-note-text{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.cluster-note .keep-t{font-size:calc(13px * var(--font-scale, 1));font-weight:600;line-height:1.35;overflow-wrap:anywhere;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.cluster-note.done .keep-t{text-decoration:line-through;color:var(--text-dim)}.cluster-note.done .note-solve{background:var(--ok);border-color:var(--ok);color:#fff}.cluster-note-meta{display:flex;flex-wrap:wrap;gap:4px 8px;font-size:calc(11px * var(--font-scale, 1));color:var(--text-dim)}.cluster-note-meta>span{display:inline-flex;align-items:center;gap:3px}.cluster-note-meta .late{color:var(--danger)}.cluster-notes-empty{align-self:center;color:var(--text-faint);font-size:calc(12px * var(--font-scale, 1));padding:4px 0}.cluster-notes-add{flex:0 0 220px;display:flex;align-items:center;gap:4px}.cluster-notes-add input{flex:1;min-width:0}.cluster-notes-tab{border-bottom:0;padding:0}.cluster-notes-tab .cluster-notes-list{flex-direction:column;overflow:visible}.cluster-notes-tab .cluster-note.keep,.cluster-notes-tab .cluster-notes-add{flex:0 0 auto}.cluster-notes-tab .cluster-notes-empty{align-self:flex-start}.column-editor-cluster{display:flex;flex-direction:column;gap:3px;font-size:calc(11px * var(--font-scale, 1));color:var(--text-dim)}.column-editor-cluster select{width:100%;min-width:0}.note-cluster{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@media(max-width:700px){.cluster-notes{padding:8px 12px 10px}.cluster-note.keep{flex-basis:78vw}.cluster-notes-add{flex-basis:70vw}}.copy-link{display:inline-flex;align-items:center;justify-content:center;color:var(--text-dim);text-decoration:none;cursor:pointer}.card>.copy-link,.keep>.copy-link{position:absolute;z-index:2;top:6px;right:6px;width:24px;height:24px;border-radius:7px;background:var(--surface);border:1px solid var(--line-strong);box-shadow:var(--shadow-panel);opacity:0;pointer-events:none;transition:opacity .12s var(--ease)}.card>.copy-link{top:32px;right:9px;width:22px;height:22px}.keep>.copy-link{top:7px;right:38px}.card:hover>.copy-link,.keep:hover>.copy-link,.copy-link:focus-visible{opacity:1;pointer-events:auto}.copy-link:hover{color:var(--accent);border-color:var(--accent)}.card.dragging>.copy-link,.card.ghost>.copy-link,.keep.dragging>.copy-link{display:none}@media(hover:none){.card>.copy-link,.keep>.copy-link{display:none}}.link-flash{animation:link-flash 2.4s var(--ease)}@keyframes link-flash{0%,30%{box-shadow:0 0 0 3px var(--accent),0 0 24px var(--accent-line)}to{box-shadow:0 0 0 1px var(--accent-line)}}@media(prefers-reduced-motion:reduce){.link-flash{animation:none;outline:3px solid var(--accent)}}.link-menu-layer{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000}.props-resizer{position:absolute;z-index:6;top:0;bottom:0;right:var(--w-props);width:10px;transform:translate(50%);cursor:col-resize;touch-action:none;outline:none}.props-resizer:after{content:"";position:absolute;top:0;bottom:0;left:50%;width:2px;transform:translate(-50%);background:transparent;transition:background .12s var(--ease)}.props-resizer:hover:after,.props-resizer.dragging:after,.props-resizer:focus-visible:after{background:var(--accent)}body:has(.props-resizer.dragging){cursor:col-resize;-webkit-user-select:none;user-select:none}body:has(.props-resizer.dragging) iframe{pointer-events:none}@media(max-width:1000px){.props-resizer{display:none}}.column-backlog{grid-template-rows:auto auto 1fr}.column-glyph{color:var(--text-faint);flex:none}.column-tools{padding:0 10px 10px}.column-tools select{width:100%;min-height:34px;padding:5px 8px;background:var(--surface);border:1px solid var(--line);border-radius:var(--r-ctl)}.column-backlog .drop-hint{padding:14px 12px;line-height:1.45}.column.foldable .column-head{cursor:pointer}.column-fold{display:inline-flex;align-items:center;gap:4px;padding:0;border:0;background:none;color:inherit;font:inherit;cursor:pointer}.column-fold svg{color:var(--text-faint);opacity:0;transition:opacity .12s var(--ease)}.column.foldable .column-head:hover .column-fold svg,.column-fold:focus-visible svg{opacity:1}@media(hover:none){.column-fold svg{opacity:1}}.column-folded{display:flex;min-width:0}.column-unfold{flex:1;display:flex;flex-direction:column;align-items:center;gap:10px;padding:12px 0;border:0;background:none;color:var(--text-dim);font:inherit;font-size:calc(13px * var(--font-scale, 1));font-weight:600;cursor:pointer}.column-unfold:hover{color:var(--text);background:var(--surface)}.column-unfold-label{writing-mode:vertical-rl;letter-spacing:.03em}.column-unfold .count{color:var(--text-dim);border-radius:5px;background:var(--surface);padding:2px 6px;font-size:calc(12px * var(--font-scale, 1));font-weight:600}.column-folded.over{background:var(--accent-soft);box-shadow:inset 0 0 0 1px var(--accent-line)}
