@font-face{font-family:Geist;src:url(/fonts/geist-latin-wght.woff2)format("woff2");font-weight:100 900;font-style:normal;font-display:swap}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;--font:"Geist", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;--serif:var(--font);--mono:ui-monospace, SFMono-Regular, Menlo, monospace;--ground:#f4f3f1;--canvas:var(--ground);--canvas-dot:#d9d7d2;--surface:#fff;--float:#fff;--raised:#f7f6f4;--panel:var(--surface);--sidebar:var(--surface);--hover:#1414140d;--fill-1:#1414140a;--fill-2:#1414140f;--fill-3:#14141417;--fill-4:#14141424;--active:#ebeae6;--border:#e6e5e1;--rule:#efeeeb;--control:#cfcdc8;--text:#141414;--text-2:#5f5d58;--text-3:#6d6b66;--primary:#141414;--primary-hover:#2e2e2e;--primary-ink:#fff;--accent:var(--primary);--accent-soft:var(--active);--select:var(--primary);--data:#1d5fbf;--link:#1d5fbf;--focus:#1d5fbf;--positive:#2e7d32;--negative:#c4242a;--danger:var(--negative);--pill-positive-bg:#dcfae5;--pill-positive-ink:#04250e;--pill-negative-bg:#ffedea;--pill-negative-ink:#831c1e;--pill-neutral-bg:#ecebe8;--pill-neutral-ink:#3d3c39;--scrim:#14141452;--edge:0 0 0 1px var(--border);--shadow-card:none;--shadow-card-hover:none;--shadow-float:0 12px 32px #0000001f, 0 0 0 1px #0000000f;--radius:4px;--radius-card:8px;--radius-control:6px;--radius-chip:4px;--topbar-h:52px;--sidebar-w:72px}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial;--ground:#121212;--canvas-dot:#2a2a2a;--surface:#1b1b1b;--float:#232323;--raised:#202020;--hover:#ffffff0f;--fill-1:#ffffff0a;--fill-2:#ffffff12;--fill-3:#ffffff1a;--fill-4:#ffffff26;--active:#2b2b2b;--border:#2b2b2b;--rule:#242424;--control:#4a4a4a;--text:#f0f0ee;--text-2:#b2b1ad;--text-3:#93918d;--primary:#f0f0ee;--primary-hover:#d6d6d3;--primary-ink:#141414;--data:#6ea4f2;--link:#8ab6f5;--focus:#6ea4f2;--positive:#4fbf73;--negative:#f0686d;--pill-positive-bg:#17291d;--pill-positive-ink:#6fd08f;--pill-negative-bg:#2e1a1c;--pill-negative-ink:#f58d91;--pill-neutral-bg:#2a2a2a;--pill-neutral-ink:#d4d3cf;--scrim:#0000008c;--shadow-float:0 12px 32px #00000080, 0 0 0 1px #ffffff14}}*{box-sizing:border-box}html,body,#root{height:100%;margin:0;overflow:hidden}body{font-family:var(--font);color:var(--text);background:var(--canvas);-webkit-font-smoothing:antialiased;font-feature-settings:"cv11" 1;font-size:14px}button{font:inherit;color:inherit;cursor:pointer;background:0 0;border:0;padding:0}input,textarea{font:inherit;color:inherit}[contenteditable]:focus,input:focus,textarea:focus{outline:none}[contenteditable][data-placeholder]:empty:before{content:attr(data-placeholder);color:var(--text-3);pointer-events:none}::selection{background:color-mix(in srgb, var(--data) 24%, transparent)}.icon-btn{border-radius:var(--radius-control);width:28px;height:28px;color:var(--text-2);place-items:center;display:grid;position:relative}.icon-btn:hover{background:var(--hover);color:var(--text)}.icon-btn.active{background:var(--active);color:var(--text)}.icon-btn:disabled{opacity:.35;pointer-events:none}button:focus-visible,a:focus-visible,[role=button]:focus-visible,[tabindex]:focus-visible{outline:2px solid var(--focus);outline-offset:2px}.num,time{font-variant-numeric:tabular-nums}.app{flex-direction:column;height:100%;display:flex}.app-main{flex:1;min-height:0;display:flex}.app-body{flex-direction:column;flex:1;min-width:0;display:flex;position:relative}.canvas-wrap{flex:1;min-height:0;display:flex;position:relative}.canvas-area{flex:1;min-width:0;position:relative}.loading{color:var(--text-2);place-items:center;gap:12px;font-size:13px;display:grid;position:absolute;inset:0}.spinner{border:2px solid var(--border);border-top-color:var(--accent);border-radius:50%;width:22px;height:22px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.topbar{height:var(--topbar-h);background:var(--ground);z-index:30;border-bottom:1px solid var(--border);flex-shrink:0;align-items:center;gap:12px;padding:0 12px 0 16px;font-size:14px;display:flex;position:relative}.logo{background:var(--primary);width:26px;height:26px;color:var(--primary-ink);border-radius:7px;flex-shrink:0;place-items:center;font-size:13px;font-weight:700;display:grid}.crumbs{align-items:center;gap:4px;min-width:0;display:flex}.crumb{border-radius:var(--radius-control);color:var(--text-2);white-space:nowrap;text-overflow:ellipsis;align-items:center;gap:8px;max-width:220px;padding:5px 8px;font-weight:500;display:inline-flex;overflow:hidden}.crumb:hover{background:var(--hover);color:var(--text)}.crumb.drop{background:var(--primary);color:var(--primary-ink);transition:background .12s}.crumb.current{color:var(--text)}.crumb.current:hover{background:0 0}.crumb-icon{color:#0000008c;border-radius:5px;flex-shrink:0;place-items:center;width:20px;height:20px;font-size:10px;display:inline-grid}.crumb-sep{color:var(--text);opacity:.3;flex-shrink:0}.topbar .saved{color:var(--text-2);white-space:nowrap;align-items:center;gap:6px;font-size:12px;display:inline-flex}.topbar-title .saved{font-size:12px}.topbar .saved.offline{color:var(--danger)}.topbar .saved .dot{background:var(--positive);border-radius:50%;width:6px;height:6px}.topbar .saved.syncing .dot{background:var(--text-3);animation:1s ease-in-out infinite pulse}.topbar .saved.offline .dot,.topbar .saved.loading .dot{background:currentColor}@keyframes pulse{50%{opacity:.15}}.topbar-gap{flex:1}.topbar-title{height:var(--topbar-h);align-items:center;gap:10px;max-width:40vw;display:flex;position:absolute;top:0;left:50%;transform:translate(-50%)}.topbar-title-icon{color:#0000008c;border-radius:6px;flex-shrink:0;place-items:center;width:24px;height:24px;font-size:12px;display:grid}.board-title-text{color:var(--text);letter-spacing:-.01em;border-radius:var(--radius-control);cursor:text;white-space:nowrap;text-overflow:ellipsis;min-width:0;margin:0;padding:3px 6px;font-size:16px;font-weight:650;overflow:hidden}.board-title-text:hover{background:var(--hover)}.board-title-text input{letter-spacing:-.01em;text-align:center;background:0 0;border:0;width:300px;font-size:16px;font-weight:650}.header-actions{align-items:center;gap:2px;display:flex}.header-btn{border-radius:var(--radius-control);color:var(--text-2);white-space:nowrap;align-items:center;gap:6px;padding:7px 10px;font-size:13px;font-weight:500;display:inline-flex}.header-btn>svg{opacity:.75}.header-btn:hover{background:var(--hover);color:var(--text)}.share-btn{border-radius:var(--radius-control);background:var(--primary);height:32px;color:var(--primary-ink);margin-left:6px;padding:0 14px;font-size:13px;font-weight:600}.share-btn:hover{background:var(--primary-hover)}.topbar-divider{background:var(--border);flex-shrink:0;width:1px;height:22px;margin:0 -6px}.topbar-actions{align-items:center;gap:2px;display:flex}.topbar-actions .icon-btn{width:32px;height:32px}.topbar-actions .icon-btn.drop{background:var(--accent-soft);color:var(--accent);box-shadow:inset 0 0 0 2px var(--accent)}.badge{background:var(--accent);min-width:16px;height:16px;color:var(--primary-ink);box-shadow:0 0 0 2px var(--surface);border-radius:8px;place-items:center;padding:0 4px;font-size:11px;font-weight:600;line-height:16px;display:grid;position:absolute;top:0;right:-1px}.sidebar{width:var(--sidebar-w);background:var(--ground);-webkit-user-select:none;user-select:none;z-index:25;border-right:1px solid var(--border);flex-direction:column;flex-shrink:0;align-items:stretch;padding:8px 0;display:flex;position:relative}.sidebar-tools{scrollbar-width:none;flex-direction:column;flex:1;align-items:center;gap:2px;display:flex;overflow:hidden auto}.sidebar-tools::-webkit-scrollbar{display:none}.tool{border-radius:var(--radius-control);width:56px;height:50px;color:var(--text-2);cursor:grab;touch-action:none;flex-direction:column;flex-shrink:0;justify-content:center;align-items:center;gap:4px;display:flex}.tool .tool-icon{width:28px;height:28px;color:var(--text);opacity:.85;border-radius:6px;place-items:center;display:grid}.tool.board .tool-icon,.tool.image .tool-icon{color:var(--text);opacity:.85;background:0 0}.tool:hover{background:var(--hover);color:var(--text)}.tool:hover .tool-icon{opacity:1}.tool.more{height:32px;color:var(--text-3)}.tool.active{background:var(--active)}.tool.on .tool-icon{background:var(--select);color:var(--primary-ink);opacity:1}.tool:active{cursor:grabbing}.tool span{white-space:nowrap;font-size:11px;font-weight:500;line-height:12px}.tool-sep{background:var(--border);flex-shrink:0;width:28px;height:1px;margin:5px 0}.tool-sep.strong{background:var(--border);margin:6px 0}.sidebar-bottom .tool{color:var(--text-3)}.sidebar-back{width:56px;height:32px;color:var(--text-3);border-radius:6px;place-items:center;margin:0 auto 4px;display:grid}.sidebar-back:hover{color:var(--text);background:var(--hover)}.sidebar-bottom{flex-direction:column;align-items:center;padding-top:6px;display:flex}.fmt-btn{border-radius:var(--radius-control);width:44px;height:36px;color:var(--text-2);place-items:center;font-size:13px;font-weight:700;display:grid}.fmt-btn:hover{background:var(--hover)}.fmt-btn.on{background:var(--select);color:var(--primary-ink)}.tool-ghost{pointer-events:none;z-index:1000;background:var(--surface);border-radius:var(--radius);box-shadow:var(--shadow-float);opacity:.92;align-items:center;gap:8px;padding:10px 14px;font-size:13px;font-weight:500;display:flex;position:fixed;transform:translate(-50%,-50%)}.side-pop{left:calc(var(--sidebar-w) + 4px);background:var(--float);box-shadow:var(--shadow-float);z-index:200;border-radius:8px;width:176px;padding:10px;position:fixed}.side-pop.wide{width:260px}.pop-tabs{gap:2px;margin:-2px -2px 8px;display:flex}.pop-tab{border-radius:var(--radius-control);color:var(--text-3);flex-direction:column;flex:1;align-items:center;gap:5px;padding:10px 4px 8px;font-size:11px;display:flex}.pop-tab.on{background:var(--active);color:var(--text);font-weight:600}.pop-tab .tab-glyph{background:var(--control);border-radius:2px;width:20px;height:15px}.pop-tab.on .tab-glyph{background:var(--primary)}.pop-tab .tab-glyph.strip{background:var(--surface);border:1.5px solid var(--primary);border-top-width:4px}.swatches{grid-template-columns:repeat(5,26px);justify-content:center;gap:7px;display:grid}.swatch{border-radius:var(--radius-chip);border:1px solid var(--fill-4);cursor:pointer;background:var(--surface);width:26px;height:20px;position:relative}.swatch:hover{transform:scale(1.1)}.swatch.on{outline:2px solid var(--primary);outline-offset:1px}.swatch.none{background:linear-gradient(135deg, transparent 45%, var(--negative) 45%, var(--negative) 55%, transparent 55%), var(--surface)}.swatch.strip-swatch{background:var(--surface);border-top:4px solid var(--c)}.swatch.checker{background:repeating-conic-gradient(var(--fill-3) 0 25%, var(--surface) 0 50%) 0 0 / 8px 8px}.pop-sep{background:var(--border);height:1px;margin:8px -8px}.pop-title{color:var(--text-2);margin:0 0 6px;font-size:12px;font-weight:600}.icon-grid{grid-template-columns:repeat(6,36px);gap:4px;display:grid}.icon-grid button{width:36px;height:36px;color:var(--text);border-radius:6px;place-items:center;display:grid}.icon-grid button:hover{background:var(--hover)}.icon-grid button.on{background:var(--active)}.canvas{background-color:var(--canvas);cursor:default;touch-action:none;-webkit-user-select:none;user-select:none;position:absolute;inset:0;overflow:hidden}.canvas.panning{cursor:grabbing}.canvas.space{cursor:grab}.world{transform-origin:0 0;width:0;height:0;position:absolute;top:0;left:0}.marquee{border:1px solid var(--text-2);background:var(--fill-2);pointer-events:none;z-index:999;position:absolute}.hint{color:var(--text-3);pointer-events:none;z-index:10;font-size:12px;position:absolute;bottom:18px;left:50%;transform:translate(-50%)}.el{border-radius:var(--radius);transition:left .18s cubic-bezier(.2,.8,.2,1),top .18s cubic-bezier(.2,.8,.2,1),box-shadow .12s,transform .12s;position:absolute}.el.card{background:var(--surface);box-shadow:var(--shadow-card);outline:1px solid var(--border);outline-offset:0}.el.card.selected{box-shadow:none;outline-color:#0000}.el.dragging{cursor:grabbing;pointer-events:none;transition:box-shadow .12s;box-shadow:none!important}.canvas .el.dragging:not(.line){visibility:hidden}.el.line,.el.line.dragging{transition:none;transform:none}.drag-clone{box-shadow:none!important}.drag-clone .c-column{box-shadow:var(--shadow-card)}.col-child{border-radius:var(--radius);outline:1px solid var(--border);transition:transform .16s,opacity .16s}.col-child.dragging{pointer-events:none}.el.selected:after,.col-child.selected:after{content:"";border:2px solid var(--select);pointer-events:none;z-index:4;animation:.1s ease-out select-in;position:absolute;inset:-2px}@keyframes select-in{0%{opacity:.4;inset:0}}.el.drop-target:before{content:none}.strip{border-radius:var(--radius) var(--radius) 0 0;pointer-events:none;z-index:2;height:5px;position:absolute;top:0;left:0;right:0}.handle{z-index:6;width:12px;height:12px;position:absolute}.handle.se{cursor:nwse-resize;background:linear-gradient(135deg, transparent 0 55%, var(--text-3) 55% 62%, transparent 62% 72%, var(--text-3) 72% 79%, transparent 79%);bottom:1px;right:1px}.handle.e{cursor:ew-resize;width:8px;height:auto;top:0;bottom:0;right:-4px}.handle.w{cursor:ew-resize;width:8px;height:auto;top:0;bottom:0;left:-4px}.handle.sw{cursor:nesw-resize;bottom:-2px;left:-2px}.handle.ne{cursor:nesw-resize;top:-2px;right:-2px}.handle.nw{cursor:nwse-resize;top:-2px;left:-2px}.handle.dot:after{content:"";background:var(--surface);border:1px solid var(--primary);border-radius:1px;position:absolute;inset:3px}.c-note{min-height:0;line-height:calc(20px * var(--fs,1));font-size:calc(14px * var(--fs,1));letter-spacing:-.1px;word-wrap:break-word;padding:24px 20px 14px 24px}.has-strip .c-note,.has-strip .c-todo,.has-strip .c-habit,.has-strip .c-link,.has-strip .c-comment{padding-top:24px}.c-note.center{text-align:center}.c-note.right{text-align:right}.c-note p{margin:0 0 10px}.c-note p:last-child{margin-bottom:0}.c-note ul,.c-note ol{margin:4px 0;padding-left:20px}.c-note h1,.c-note h2,.c-note h3{margin:0 0 6px;line-height:1.25}.c-note h1{font-family:var(--serif);font-size:calc(20px * var(--fs,1));line-height:calc(30px * var(--fs,1));letter-spacing:-.015em;font-weight:600}.c-note h2{font-size:calc(16px * var(--fs,1))}.c-note a{color:var(--link)}.c-note mark{color:#141414;background:#fff176;padding:0 2px}.c-note blockquote{border-left:3px solid color-mix(in srgb, currentColor 25%, transparent);margin:0 0 10px;padding-left:14px;font-style:italic}.c-note b+span,.c-note .label{color:inherit}.c-note code{font-family:var(--mono);background:var(--fill-2);border-radius:3px;padding:1px 4px;font-size:11.5px}.note-body{cursor:text}.note-body.readonly{cursor:inherit}.title:not(.filled){box-shadow:none!important;background:0 0!important}.title.filled .title-input{color:inherit;font-size:calc(21px * var(--fs,1));padding:22px 28px}.title-line{border-radius:0;height:5px;margin:0}.title-input{font-family:var(--serif);font-size:calc(20px * var(--fs,1));font-weight:600;line-height:calc(30px * var(--fs,1));text-align:center;color:var(--text);word-wrap:break-word;letter-spacing:-.015em;padding:19px 22px}.has-strip .title-input{padding-top:14px}.board-free{cursor:pointer;text-align:center;flex-direction:column;align-items:center;padding:9px 10px 10px;display:flex}.board-tile{color:#0000008c;border-radius:16px;flex-shrink:0;justify-content:center;align-items:center;width:72px;height:72px;font-size:36px;line-height:1;display:flex;position:relative}.board-badge{background:var(--negative);color:#fff;text-align:center;min-width:18px;height:18px;box-shadow:0 0 0 2px var(--surface);pointer-events:none;border-radius:9px;padding:0 5px;font-size:11px;font-weight:600;line-height:18px;position:absolute;top:-6px;right:-6px}.board-tile.empty-icon:after{content:"";background:#ffffff8c;border-radius:4px;width:18px;height:18px}.board-name{letter-spacing:-.1px;color:var(--text);text-overflow:ellipsis;white-space:nowrap;max-width:100%;margin-top:8px;font-size:15px;font-weight:600;line-height:20px;overflow:hidden}.board-name input{text-align:center;background:var(--hover);border-radius:var(--radius-chip);border:0;width:100%;padding:1px 4px;font-size:13px;font-weight:700}.board-stats{color:var(--text-2);margin-top:2px;font-size:12px}.board-row{background:var(--raised);border-radius:var(--radius);cursor:pointer;align-items:center;gap:16px;min-height:84px;padding:14px 16px;display:flex}.board-row .board-tile{border-radius:12px;width:56px;height:56px;font-size:28px}.board-row .board-name{text-align:left;margin:0;font-size:14px}.board-row .board-stats{text-align:left}.board-row .board-meta{flex:1;min-width:0}.c-image{border-radius:inherit;flex-direction:column;display:flex;overflow:hidden}.c-image img{object-fit:cover;pointer-events:none;flex:1;width:100%;height:100%;min-height:0;display:block}.image-empty{color:var(--text-2);border:1.5px dashed var(--border);border-radius:var(--radius);cursor:pointer;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:8px;margin:8px;font-size:12px;display:flex}.image-empty:hover{border-color:var(--text-2);color:var(--text)}.image-caption{color:var(--text-2);background:0 0;border:0;flex-shrink:0;width:100%;padding:7px 10px;font-size:11.5px}.c-link{align-items:flex-start;gap:14px;min-height:68px;padding:18px 20px 16px 24px;display:flex}.link-favicon{background:var(--hover);width:40px;height:40px;color:var(--text-2);border-radius:6px;flex-shrink:0;place-items:center;display:grid;overflow:hidden}.link-favicon img{width:18px;height:18px}.link-body{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.link-title{font-weight:600;font-size:calc(14px * var(--fs,1));line-height:calc(20px * var(--fs,1));letter-spacing:-.1px;background:0 0;border:0;width:100%;padding:0}.link-desc{font-size:calc(13px * var(--fs,1));color:var(--text-2);resize:none;background:0 0;border:0;width:100%;padding:0;line-height:1.4}.link-host{font-size:calc(12px * var(--fs,1));color:var(--text-3);white-space:nowrap;text-overflow:ellipsis;margin-top:2px;overflow:hidden}.c-link.center .link-body,.c-link.center .link-title,.c-link.center .link-desc{text-align:center}.c-link.right .link-body,.c-link.right .link-title,.c-link.right .link-desc{text-align:right}.c-link.center,.c-link.right{flex-direction:column;align-items:center;gap:10px}.c-link.right{align-items:flex-end}.c-link.center .link-body,.c-link.right .link-body{width:100%}.link-host a{color:inherit;text-decoration:none}.link-host a:hover{text-decoration:underline}.link-url-input{border:1px solid var(--control);border-radius:var(--radius-chip);width:100%;padding:6px 8px;font-size:12px}.c-todo{padding:20px 24px 18px}.todo-title{font-weight:700;font-size:calc(14px * var(--fs,1));background:0 0;border:0;width:100%;padding:0 0 6px}.todo-title:placeholder-shown:not(:focus){display:none}.c-todo.selected .todo-title:placeholder-shown,.c-habit.selected .todo-title:placeholder-shown{display:block}.todo-item{align-items:flex-start;gap:6px;padding:4px 0 6px;display:flex;position:relative}.todo-item input[type=text]{min-width:0;font-size:calc(14px * var(--fs,1));line-height:calc(20px * var(--fs,1));letter-spacing:-.1px;background:0 0;border:0;flex:1;padding:0}.todo-item.sub{padding-left:24px}.todo-main{flex-direction:column;flex:1;min-width:0;display:flex}.todo-main input[type=text]{width:100%}.todo-meta{flex-wrap:wrap;gap:4px;margin:2px 0 4px;display:flex}.pill{border-radius:var(--radius-chip);white-space:nowrap;padding:0 6px;font-size:11px;font-weight:500;line-height:16px}.pill.due{color:var(--pill-negative-ink);background:var(--pill-negative-bg)}.pill.tag{color:var(--pill-neutral-ink);background:var(--pill-neutral-bg)}.pill.who{color:var(--text-2);background:var(--accent-soft)}.pill.when{color:var(--text-2);background:var(--fill-2);align-items:center;gap:3px;display:inline-flex}.pill.when.today{color:var(--data);background:color-mix(in srgb, var(--data) 12%, transparent)}.todo-item.done input[type=text]{color:var(--text-3);text-decoration:line-through}.check{border:1px solid var(--text);background:var(--surface);width:16px;height:16px;color:var(--primary-ink);border-radius:3px;flex-shrink:0;place-items:center;margin-top:2px;transition:background .1s linear 50ms,border-color .1s linear 50ms;display:grid}.check.on{background:var(--primary)}.check.on svg{stroke-dasharray:24;animation:.15s linear tick-draw}@keyframes tick-draw{0%{stroke-dashoffset:24px}}.check{position:relative}.check:after{content:"";position:absolute;inset:-6px -4px}.todo-item .grab{opacity:0;color:var(--text-3);cursor:grab;touch-action:none;border-radius:4px;place-items:center;width:18px;height:18px;display:grid}.todo-item:hover .grab{opacity:1}.todo-item .grab:hover{background:var(--hover);color:var(--text)}.todo-item.lifting{opacity:.35}.todo-item.lifting .grab{opacity:1;cursor:grabbing}.todo-item.drop-before:before,.todo-item.drop-after:after{content:"";background:var(--accent);pointer-events:none;border-radius:1px;height:2px;position:absolute;left:0;right:0}.todo-item.drop-before:before{top:-1px}.todo-item.drop-after:after{bottom:-1px}.todo-add{color:var(--text-3);align-items:center;gap:8px;padding:4px 0 2px;font-size:12px;display:flex}.todo-add:hover{color:var(--text)}.habit-streak{width:30px;color:var(--text-3);font-variant-numeric:tabular-nums;flex-shrink:0;justify-content:flex-end;align-items:center;gap:2px;font-size:11px;font-weight:600;display:inline-flex}.habit-streak.on{color:var(--text)}.c-todo.center .todo-title,.c-todo.center .todo-item input[type=text]{text-align:center}.c-todo.right .todo-title,.c-todo.right .todo-item input[type=text]{text-align:right}.c-todo.center .todo-item,.c-todo.center .todo-add,.c-todo.center .todo-done-toggle,.c-todo.center .todo-meta{justify-content:center}.c-todo.right .todo-item,.c-todo.right .todo-add,.c-todo.right .todo-done-toggle,.c-todo.right .todo-meta{justify-content:flex-end}.c-todo.right .todo-item{flex-direction:row-reverse}.c-todo.right .todo-item.sub{padding-left:0;padding-right:24px}.c-column{height:100%;min-height:inherit;background:var(--surface);border-radius:var(--radius);flex-direction:column;gap:10px;min-height:80px;padding:0 10px 10px;display:flex}.c-column.drop-target{background:var(--surface)}.column-head{text-align:center;padding:18px 8px 10px}.c-column.left .column-head,.c-column.left .column-title{text-align:left}.c-column.right .column-head,.c-column.right .column-title{text-align:right}.column-title{font-weight:700;font-size:calc(15px * var(--fs,1));text-align:center;width:100%;color:var(--text);background:0 0;border:0;padding:0}.column-sub{font-size:calc(12px * var(--fs,1));color:var(--text-2);margin-top:3px}.column-body{flex-direction:column;gap:10px;min-height:30px;display:flex}.column-empty{border:1.5px dashed var(--control);border-radius:var(--radius);height:52px;color:var(--text-3);place-items:center;font-size:12px;display:grid}.col-child{background:var(--surface);box-shadow:var(--shadow-card);border-radius:3px;position:relative}.col-child.title,.col-child.board{box-shadow:none;outline:none}.col-child.dragging{opacity:.4}.col-gap{pointer-events:none;z-index:5;height:0;margin:-5px 0;position:relative}.col-gap.open:after{content:"";background:var(--primary);border-radius:2px;height:3px;position:absolute;top:-1.5px;left:0;right:0}.col-resize{cursor:nwse-resize;background:linear-gradient(135deg, transparent 0 55%, var(--control) 55% 62%, transparent 62% 72%, var(--control) 72% 79%, transparent 79%);z-index:6;width:12px;height:12px;position:absolute;bottom:0;right:0}.line-layer{pointer-events:none;position:absolute;top:0;left:0;overflow:visible}.line-hit{stroke:#0000;stroke-width:14px;fill:none;pointer-events:stroke;cursor:move}.line-path{fill:none;stroke-width:2px;stroke-linecap:round}.line-endpoint{fill:var(--surface);stroke:var(--primary);stroke-width:1.5px;cursor:crosshair;pointer-events:all}.line-label{background:var(--primary);color:var(--primary-ink);border-radius:var(--radius-chip);text-align:center;pointer-events:all;white-space:nowrap;border:0;min-width:24px;height:20px;padding:0 8px;font-size:12px;font-weight:600;line-height:20px;position:absolute;transform:translate(-50%,-50%)}.line-label::placeholder{color:color-mix(in srgb, var(--primary-ink) 70%, transparent)}.line-label.empty{background:color-mix(in srgb, var(--primary) 55%, transparent)}.c-comment{padding:18px 20px 14px 24px}.comment-head{align-items:center;gap:8px;margin-bottom:6px;font-size:12px;display:flex}.comment-avatar{background:var(--fill-3);width:22px;height:22px;color:var(--text);border-radius:50%;place-items:center;font-size:11px;font-weight:600;display:grid}.comment-author{font-weight:600}.comment-time{color:var(--text-2);margin-left:auto}.comment-text{font-size:calc(14px * var(--fs,1));resize:none;background:0 0;border:0;width:100%;padding:0;line-height:1.4}.c-comment.center .comment-text{text-align:center}.c-comment.right .comment-text{text-align:right}.ctx{z-index:300;background:var(--float);border-radius:var(--radius-card);box-shadow:var(--shadow-float);min-width:190px;padding:4px;font-size:13px;position:fixed}.ctx-item{text-align:left;width:100%;color:var(--text);border-radius:var(--radius-chip);align-items:center;gap:10px;padding:6px 10px;display:flex}.ctx-item:hover{background:var(--hover)}.ctx-item.danger:hover{background:var(--pill-negative-bg);color:var(--danger)}.ctx-item kbd{color:var(--text-2);gap:3px;margin-left:auto;font-family:inherit;font-size:11px;display:inline-flex}.ctx-item kbd span{background:var(--fill-2);border-radius:var(--radius-chip);padding:1px 5px}.ctx-item:disabled{opacity:.4;pointer-events:none}.ctx-sep{background:var(--border);height:1px;margin:4px 0}.ctx-meta{color:var(--text-2);align-items:center;gap:8px;padding:6px 12px 4px;font-size:11px;line-height:1.3;display:flex}.ctx-meta .comment-avatar{width:22px;height:22px}.zoom{background:var(--surface);border-radius:var(--radius-control);z-index:15;border:1px solid var(--border);align-items:center;padding:2px;display:flex;position:absolute;bottom:14px;right:14px}.zoom .icon-btn{width:30px;height:30px}.zoom-sep{background:var(--border);width:1px;height:18px;margin:0 4px}.zoom-value{text-align:center;min-width:50px;color:var(--text-2);font-variant-numeric:tabular-nums;padding:0 4px;font-size:12px;font-weight:500}.zoom-value:hover{color:var(--text)}.side-panel{background:var(--surface);border-left:1px solid var(--border);z-index:16;flex-direction:column;flex-shrink:0;width:320px;display:flex;position:relative}.side-panel.drop{background:var(--active)}.side-head{color:var(--text-2);align-items:center;gap:8px;padding:16px 12px 10px 16px;display:flex}.side-head h3{color:var(--text);flex:1;margin:0;font-size:14px;font-weight:700}.count-pill{color:var(--primary-ink);background:var(--accent);font-variant-numeric:tabular-nums;border-radius:9px;place-items:center;min-width:20px;height:18px;padding:0 6px;font-size:12px;font-weight:600;display:grid}.side-head .close{border-radius:4px;width:24px;height:24px;margin-left:4px}.side-sub{color:var(--text-2);margin:0;padding:0 16px 12px;font-size:12px;line-height:17px}.side-list{flex-direction:column;flex:1;gap:12px;padding:4px 16px 16px;display:flex;overflow:auto}.side-card{border-radius:var(--radius);cursor:grab;background:var(--surface);outline:1px solid var(--border);position:relative}.side-card .col-child{box-shadow:none}.side-card .card-actions{opacity:0;gap:4px;display:flex;position:absolute;top:6px;right:6px}.side-card:hover .card-actions{opacity:1}.mini-btn{background:var(--surface);border-radius:var(--radius-chip);color:var(--accent);border:1px solid var(--border);padding:3px 7px;font-size:11px;font-weight:600}.mini-btn.danger{color:var(--danger)}.side-empty{text-align:center;color:var(--text-2);margin:30px 16px;font-size:13px;line-height:1.5}.side-action{border:1.5px dashed var(--control);border-radius:var(--radius-control);height:48px;color:var(--text-3);flex-shrink:0;justify-content:center;align-items:center;gap:6px;font-size:12px;display:flex}.side-action:hover{border-color:var(--text-2);color:var(--text)}.side-action.danger:hover{border-color:var(--danger);color:var(--danger)}.search-backdrop{background:var(--scrim);z-index:400;justify-content:center;padding-top:12vh;display:flex;position:fixed;inset:0}.search{background:var(--float);width:540px;max-width:calc(100vw - 32px);box-shadow:var(--shadow-float);border-radius:8px;align-self:flex-start;overflow:hidden}.search-input{border-bottom:1px solid var(--border);color:var(--text-2);align-items:center;gap:10px;padding:12px 14px;display:flex}.search-input input{border:0;flex:1;font-size:15px}.search-results{max-height:50vh;padding:6px;overflow:auto}.search-row{border-radius:var(--radius-control);text-align:left;align-items:center;gap:12px;width:100%;padding:8px 10px;display:flex}.search-row:hover,.search-row.active{background:var(--hover)}.search-row .kind{background:var(--hover);width:28px;height:28px;color:var(--text-2);border-radius:6px;flex-shrink:0;place-items:center;display:grid}.search-row .main{flex:1;min-width:0}.search-row .main b{white-space:nowrap;text-overflow:ellipsis;font-size:13px;font-weight:600;display:block;overflow:hidden}.search-row .main small{color:var(--text-2);font-size:12px}.search-empty{text-align:center;color:var(--text-3);padding:24px;font-size:12px}.toast{background:var(--primary);color:var(--primary-ink);border-radius:var(--radius-control);z-index:500;box-shadow:var(--shadow-float);padding:8px 14px;font-size:13px;animation:.15s ease-out toast-in;position:fixed;bottom:60px;left:50%;transform:translate(-50%)}@keyframes toast-in{0%{opacity:0;transform:translate(-50%,8px)}}.toast.out{animation:.3s ease-out forwards toast-out}@keyframes toast-out{to{opacity:0;transform:translate(-50%,8px)}}.el.board.selected:after,.col-child.board.selected:after{display:none}.board-tile.selected{outline:2px solid var(--primary);outline-offset:2px}.el.board.selected .handle{display:none}.board-tile{outline-offset:3px;outline:2px solid #0000;transition:transform .15s cubic-bezier(.2,.8,.2,1),outline-color .15s}.el.drop-board .board-tile,.col-child.drop-board .board-tile{outline-color:var(--primary)}.col-child.drop-board{background:var(--raised)}.el.drop-card:after,.col-child.drop-card:after{content:"";border:2px solid var(--accent);background:var(--accent-soft);pointer-events:none;z-index:4;border-radius:5px;position:absolute;inset:-3px}.line-curve-handle{fill:var(--surface);stroke:var(--primary);stroke-width:1.5px;cursor:move;pointer-events:all}.login{background:var(--canvas);place-items:center;height:100%;display:grid}.login-card{background:var(--surface);width:400px;box-shadow:none;text-align:center;border:1px solid var(--border);border-radius:var(--radius-card);padding:44px 40px 32px}.login-logo{width:44px;height:44px;margin:0 auto;font-size:20px}.login-card h1{font-family:var(--serif);letter-spacing:-.02em;margin:20px 0 0;font-size:26px;font-weight:600;line-height:32px}.login-card p{color:var(--text-2);text-wrap:pretty;margin:10px 0 28px;font-size:14px;line-height:21px}.login-card small{border-top:1px solid var(--border);color:var(--text-2);margin-top:24px;padding-top:16px;font-size:12px;line-height:18px;display:block}.google-btn{border:1px solid var(--control);border-radius:var(--radius-control);background:var(--surface);width:100%;height:44px;color:var(--text);justify-content:center;align-items:center;gap:10px;font-size:14px;font-weight:600;text-decoration:none;transition:background .12s,box-shadow .12s;display:inline-flex}.google-btn:hover{background:var(--raised);box-shadow:none}.user-menu{margin-left:6px;position:relative}.avatar-btn{background:var(--primary);width:28px;height:28px;color:var(--primary-ink);border-radius:50%;place-items:center;font-size:12px;font-weight:600;display:grid;overflow:hidden}.avatar-btn img{object-fit:cover;width:100%;height:100%;display:block}.user-pop{background:var(--float);border-radius:var(--radius-card);width:220px;box-shadow:var(--shadow-float);z-index:400;padding:4px 0;position:absolute;top:calc(100% + 8px);right:0}.user-pop-head{border-bottom:1px solid var(--border);flex-direction:column;gap:2px;padding:10px 12px;display:flex}.user-pop-head b{font-size:13px}.user-pop-head small{color:var(--text-2);text-overflow:ellipsis;font-size:12px;overflow:hidden}.user-pop .ctx-item{text-decoration:none}.login-error{color:var(--danger);margin-top:12px;font-size:12.5px}.google-btn:disabled{opacity:.6;cursor:default}.side-pop.picker{width:332px;padding:10px 10px 6px}.icon-picker{flex-direction:column;gap:8px;display:flex}.icon-search{border:1px solid var(--control);border-radius:var(--radius-control);color:var(--text-3);align-items:center;gap:8px;padding:6px 10px;display:flex}.icon-search input{background:0 0;border:0;flex:1;font-size:13px}.icon-actions{gap:6px;display:flex}.icon-action{border-radius:var(--radius-control);border:1px solid var(--border);color:var(--text-2);align-items:center;gap:6px;padding:5px 10px;font-size:12px;display:inline-flex}.icon-action:hover{background:var(--hover);color:var(--text)}.icon-action.on{background:var(--primary);border-color:var(--primary);color:var(--primary-ink)}.icon-scroll{max-height:340px;margin:0 -4px;padding:0 4px 4px;overflow:auto}.icon-group-title{color:var(--text-2);margin:10px 0 4px;font-size:12px;font-weight:600}.icon-picker .icon-grid{grid-template-columns:repeat(8,36px)}.icon-empty{text-align:center;color:var(--text-3);padding:20px;font-size:12.5px}.icon-current{color:var(--text-2);align-items:center;gap:10px;padding:6px 4px 0;font-size:12px;display:flex}.icon-current img{object-fit:cover;border-radius:8px;width:36px;height:36px}.board-tile.has-image{overflow:hidden;background:var(--surface)!important}.board-icon-img{object-fit:cover;border-radius:inherit;width:100%;height:100%;display:block}.crumb-icon .board-icon-img{border-radius:3px}.tool-icon .board-icon-img{border-radius:7px}.canvas.previewing .world{pointer-events:none}.canvas.previewing .world>*{animation:.18s ease-out tpl-in}@keyframes tpl-in{0%{opacity:0;transform:translateY(6px)}}.header-btn.active{background:var(--accent-soft);color:var(--accent)}.tpl-panel{background:var(--float);width:300px;color:var(--text);border-radius:var(--radius-card);box-shadow:var(--shadow-float);z-index:17;-webkit-user-select:none;user-select:none;border:1px solid var(--border);flex-direction:column;font-size:13px;animation:.18s ease-out tpl-in;display:flex;position:absolute;bottom:60px;right:14px}.tpl-head{justify-content:space-between;align-items:center;padding:14px 10px 8px 18px;display:flex}.tpl-title{font-size:15px;font-weight:700}.tpl-back{color:var(--text);align-items:center;gap:2px;margin-left:-4px;padding:0;font-size:15px;font-weight:700;display:inline-flex}.tpl-close{color:var(--text-2);border-radius:4px;justify-content:center;align-items:center;width:26px;height:26px;display:inline-flex}.tpl-close:hover,.tpl-back:hover{color:var(--text)}.tpl-close:hover{background:var(--fill-2)}.tpl-list{flex-direction:column;padding:0 10px;display:flex}.tpl-list.scroll{scrollbar-width:thin;scrollbar-color:var(--border) transparent;min-height:230px;max-height:260px;overflow:auto}.tpl-item{text-align:left;width:100%;color:var(--text);border-radius:var(--radius-control);justify-content:space-between;align-items:center;gap:6px;padding:8px 10px;font-size:13px;line-height:1.25;display:flex}.tpl-item:hover{background:var(--fill-2)}.tpl-item.active{background:var(--fill-4)}.tpl-item.more{color:var(--text-2)}.tpl-badge{color:var(--text-2);border:1px solid var(--border);border-radius:var(--radius-chip);flex-shrink:0;padding:0 5px;font-size:11px;font-weight:500}.tpl-count{color:var(--text-2);align-items:center;gap:2px;font-weight:700;display:inline-flex}.tpl-section{color:var(--text-2);padding:2px 8px 4px;font-size:12px;font-weight:600}.tpl-empty{color:var(--text-2);padding:8px}.tpl-search{border-radius:var(--radius-control);background:var(--fill-2);height:34px;color:var(--text-2);align-items:center;gap:6px;margin:0 18px 10px;padding:0 10px;display:flex}.tpl-search input{min-width:0;color:var(--text);background:0 0;border:0;outline:0;flex:1;font-size:13px}.tpl-search input::placeholder{color:var(--text-3)}.tpl-foot{flex-direction:column;align-items:center;gap:10px;padding:14px 18px;display:flex}.tpl-use{border-radius:var(--radius-control);background:var(--primary);width:100%;height:36px;color:var(--primary-ink);font-size:14px;font-weight:700}.tpl-use:hover{background:var(--primary-hover)}.tpl-keep{color:var(--text-2);cursor:pointer;align-items:center;gap:6px;font-size:12px;display:inline-flex}.tpl-keep.disabled{color:var(--text-3);cursor:default}.tpl-keep input{accent-color:var(--primary);margin:0}.style-list{flex-direction:column;gap:4px;display:flex}.style-btn{border:1px solid var(--border);background:var(--surface);height:34px;color:var(--text);text-align:left;border-radius:6px;padding:0 10px;font-size:13px}.style-btn.h1{font-size:17px;font-weight:700}.style-btn.h2{font-size:15px;font-weight:600}.style-btn:hover{background:var(--hover)}.style-btn.on{background:var(--primary);border-color:var(--primary);color:var(--primary-ink)}.fs-small{--fs:.86}.fs-large{--fs:1.25}.fs-huge{--fs:1.6}.size-row{gap:4px;display:flex}.size-btn{border:1px solid var(--border);background:var(--surface);height:34px;color:var(--text);border-radius:6px;flex:1;place-items:center;font-weight:600;display:grid}.size-btn:hover{background:var(--hover)}.size-btn.on{background:var(--primary);border-color:var(--primary);color:var(--primary-ink)}.align-grid{grid-template-columns:repeat(3,1fr);gap:4px;display:grid}.align-btn{border:1px solid var(--border);background:var(--surface);height:34px;color:var(--text);border-radius:6px;place-items:center;display:grid}.align-btn:hover{background:var(--hover)}.align-btn:disabled{opacity:.35;pointer-events:none}.align-btn.on{background:var(--primary);border-color:var(--primary);color:var(--primary-ink)}[contenteditable=true],[contenteditable=plaintext-only],input,textarea{-webkit-user-select:text;user-select:text}:root{--t-inbox:var(--text-2);--t-today:var(--data);--t-evening:var(--text-2);--t-upcoming:var(--text-2);--t-anytime:var(--text-2);--t-someday:var(--text-2);--t-logbook:var(--text-2);--t-check:var(--primary)}.i-inbox{color:var(--t-inbox)}.i-today{color:var(--t-today)}.i-evening{color:var(--t-evening)}.i-upcoming{color:var(--t-upcoming)}.i-anytime{color:var(--t-anytime)}.i-someday{color:var(--t-someday)}.i-logbook{color:var(--t-logbook)}.tasks-page{background:var(--ground);flex:1;min-height:0;display:flex}.tasks-nav{background:var(--ground);border-right:1px solid var(--border);flex-direction:column;flex-shrink:0;width:248px;padding:16px 12px;display:flex;overflow-y:auto}.tasks-back{color:var(--text-2);border-radius:var(--radius-control);align-items:center;gap:8px;margin-bottom:12px;padding:8px 10px;font-size:13px;font-weight:500;display:flex}.tasks-back:hover{background:var(--hover);color:var(--text)}.tasks-nav-gap{height:8px}.tasks-nav-item{border-radius:var(--radius-control);width:100%;height:34px;color:var(--text);align-items:center;gap:10px;margin-bottom:2px;padding:0 10px;font-size:14px;font-weight:500;transition:background .12s;display:flex}.tasks-nav-item span:first-child{place-items:center;width:20px;display:grid}.tasks-nav-item:hover{background:var(--hover)}.tasks-nav-item.on{background:var(--active);font-weight:600}.tasks-nav-item.drop{background:var(--accent-soft);box-shadow:inset 0 0 0 2px var(--primary)}.tasks-nav-item .label{text-align:left;flex:1}.tasks-nav-item .count{color:var(--text-2);font-variant-numeric:tabular-nums;background:0 0;border-radius:9px;place-items:center;min-width:20px;height:18px;padding:0 6px;font-size:12px;font-weight:500;display:grid}.tasks-nav-item.on .count{color:var(--text-2);background:0 0}.tasks-nav-hint{color:var(--text-2);margin-top:auto;padding:16px 10px 4px;font-size:12px;line-height:1.45}.tasks-lists-btn{color:var(--text-2);flex-shrink:0}.tasks-lists-btn.on{color:var(--text)}.list-picker{z-index:300;background:var(--float);width:300px;max-height:min(480px,100dvh - 80px);box-shadow:var(--shadow-float);border-radius:8px;flex-direction:column;padding:12px 6px 6px;display:flex;position:fixed}.list-picker-head{justify-content:space-between;align-items:baseline;padding:0 10px;font-size:13px;display:flex}.list-picker-head span{color:var(--text-3);font-variant-numeric:tabular-nums;font-size:12px}.list-picker-sub{color:var(--text-3);margin:4px 10px 8px;font-size:12px;line-height:17px}.list-picker-scroll{min-height:0;overflow-y:auto}.list-picker-empty{color:var(--text-3);margin:12px 10px;font-size:12.5px}.list-picker-board{color:var(--text-3);padding:10px 10px 4px;font-size:12px;font-weight:600}.list-picker-row{border-radius:var(--radius-control);width:100%;height:32px;color:var(--text-2);text-align:left;align-items:center;gap:10px;padding:0 10px;font-size:13.5px;display:flex}.list-picker-row:hover{background:var(--hover)}.list-picker-row.on{color:var(--text)}.list-picker-check{border:1.5px solid var(--control);width:16px;height:16px;color:var(--primary-ink);border-radius:4px;flex-shrink:0;place-items:center;display:grid}.list-picker-row.on .list-picker-check{background:var(--t-check);border-color:var(--t-check)}.list-picker-title{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.list-picker-count{color:var(--text-3);font-variant-numeric:tabular-nums;font-size:12px}.tasks-main{flex:1;min-width:0;overflow-y:auto}.tasks-content{max-width:768px;margin:0 auto;padding:48px 64px 120px}.tasks-head{align-items:center;gap:12px;margin-bottom:22px;display:flex}.tasks-head-icon{place-items:center;display:grid}.tasks-head h1{letter-spacing:-.02em;color:var(--text);margin:0;font-size:24px;font-weight:650;line-height:32px}.tasks-head-date{color:var(--text-2);margin-left:auto;font-size:13px}.tasks-summary{color:var(--text-2);margin:-16px 0 22px 38px;font-size:13px}.tasks-seg{background:var(--fill-2);border-radius:var(--radius-control);margin-left:auto;padding:2px;display:flex}.tasks-seg button{border-radius:var(--radius-chip);color:var(--text-2);padding:4px 12px;font-size:13px}.tasks-seg button.on{background:var(--surface);color:var(--text);box-shadow:none;outline:1px solid var(--border);font-weight:500}.tasks-empty{text-align:center;flex-direction:column;align-items:center;gap:14px;padding:40px 24px 28px;display:flex}.tasks-empty>span{opacity:.35}.tasks-empty p{max-width:360px;color:var(--text-2);font-size:13.5px;line-height:1.5}.tasks-group{margin-top:30px}.tasks-group:first-of-type{margin-top:0}.tasks-group h3{color:var(--text);border-bottom:1px solid var(--border);align-items:baseline;gap:8px;margin-bottom:4px;padding:0 0 6px 8px;font-size:14px;font-weight:700;display:flex}.tasks-group.evening h3{color:var(--t-evening);align-items:center}.tasks-group.day{margin-top:22px}.tasks-group.day h3 .g-label{font-size:22px;line-height:1}.tasks-group h3 .g-sub{color:var(--text-2);font-size:13.5px;font-weight:500}.tasks-group h3 .g-add{width:22px;height:22px;color:var(--text-3);opacity:0;border-radius:5px;align-self:center;place-items:center;margin-left:auto;display:grid}.tasks-group h3:hover .g-add{opacity:1}.tasks-group h3 .g-add:hover{background:var(--fill-2);color:var(--text)}.tasks-group-hint{color:var(--text-2);padding:6px 8px 0 36px;font-size:12.5px}.task-row{border-radius:var(--radius-control);align-items:flex-start;gap:10px;padding:7px 8px;transition:background .1s;display:flex;position:relative}.task-row:hover{background:var(--hover)}.task-row:focus-within{background:var(--active)}.task-grip{color:var(--text-3);cursor:grab;opacity:0;padding:2px;position:absolute;top:9px;left:-18px}.task-row:hover .task-grip{opacity:1}.task-check{border:1.5px solid var(--control);background:var(--surface);width:18px;height:18px;color:var(--primary-ink);border-radius:50%;flex-shrink:0;place-items:center;margin-top:1px;transition:border-color .12s,background .12s;display:grid}.task-check:hover{border-color:var(--t-check)}.task-check.on{background:var(--t-check);border-color:var(--t-check)}.task-body{flex:1;min-width:0}.task-row input,.task-text{width:100%;color:var(--text);background:0 0;border:0;padding:0;font-size:14px;line-height:20px;display:block}.task-row input:focus{outline:none}.task-row.done input,.task-row.done .task-text{color:var(--text-3);text-decoration:line-through}.task-sub{align-items:center;gap:8px;min-width:0;display:flex}.task-sub:empty{display:none}.task-when-label{color:var(--text-2);background:var(--fill-2);border-radius:4px;flex-shrink:0;align-items:center;gap:3px;margin-top:3px;padding:0 6px;font-size:11px;font-weight:500;line-height:17px;display:inline-flex}.task-when-label.today{color:var(--data);background:color-mix(in srgb, var(--data) 12%, transparent)}.task-when-label.evening{color:var(--text-2);background:var(--fill-2)}.task-place{min-width:0;max-width:100%;color:var(--text-2);white-space:nowrap;text-overflow:ellipsis;align-items:center;gap:2px;margin-top:3px;font-size:12px;display:inline-flex;overflow:hidden}.task-place svg{opacity:0;flex-shrink:0}.task-place:hover{color:var(--text)}.task-place:hover svg{opacity:1}.task-btn{width:26px;height:26px;color:var(--text-3);opacity:0;border-radius:6px;flex-shrink:0;place-items:center;margin:-3px -2px 0 0;display:grid}.task-btn.on{color:var(--t-today);opacity:1}.task-btn.on.evening{color:var(--t-evening)}.task-row:hover .task-btn,.task-row:focus-within .task-btn{opacity:1}.task-btn:hover{background:var(--fill-2);color:var(--t-today)}.tasks-add{color:var(--text-3);border-radius:var(--radius-control);align-items:center;gap:10px;width:100%;padding:8px 10px;font-size:13.5px;display:flex}.tasks-add:hover{color:var(--text);background:var(--hover)}.tasks-archived{margin-bottom:26px}.tasks-archived h3{border-bottom:1px solid var(--border);align-items:center;gap:7px;margin-bottom:4px;padding:0 0 6px 8px;font-size:14px;font-weight:700;display:flex}.tasks-archived h3 svg{color:var(--t-logbook)}.tasks-archived h3 span{color:var(--text-3);font-size:12.5px;font-weight:500}.task-row.static:hover{background:0 0}:root{--t-habits:var(--text-2);--t-goals:var(--text-2)}.i-habits{color:var(--t-habits)}.i-goals{color:var(--t-goals)}.task-row .habit-streak{margin-top:2px}.task-check.habit-today{border-radius:50%}.task-check.habit-today:hover{border-color:var(--positive)}.task-check.habit-today.on{background:var(--positive);border-color:#43a047}.habit-block{border-bottom:1px solid var(--border);padding:14px 10px 16px}.habit-block:first-of-type{padding-top:0}.habit-block-head{align-items:flex-start;gap:10px;display:flex}.habit-block-head .task-check{margin-top:4px}.habit-block-head input{width:100%;color:var(--text);background:0 0;border:0;padding:0;font-size:16px;font-weight:600;line-height:24px;display:block}.habit-block-head input:focus{outline:none}.habit-sched{color:var(--text-2);white-space:nowrap;margin-top:3px;font-size:11.5px}.habit-stats{flex-shrink:0;gap:14px;margin-top:2px;display:flex}.habit-stat{color:var(--text-3);align-items:baseline;gap:3px;display:inline-flex}.habit-stat svg{align-self:center}.habit-stat b{color:var(--text);font-variant-numeric:tabular-nums;font-size:17px}.habit-stat small{font-size:11px}.habit-stat.hot{color:var(--t-habits)}.habit-block-more{opacity:1}.habit-block-week{grid-template-columns:repeat(7,1fr);gap:6px;margin:12px 0 14px 26px;display:grid}.habit-day{color:var(--text-2);border-radius:8px;flex-direction:column;align-items:center;gap:4px;padding:6px 0 8px;display:flex}.habit-day:hover{background:var(--hover)}.habit-day small{color:var(--text-3);font-size:11px}.habit-day span{border:2px solid var(--control);border-radius:50%;place-items:center;width:30px;height:30px;font-size:13px;font-weight:600;display:grid}.habit-day.off span{border-style:dashed;border-color:var(--border);color:var(--text-3)}.habit-day.today small{color:var(--data);font-weight:700}.habit-day.done span{background:var(--positive);border:2px solid var(--positive);color:var(--primary-ink)}.heatmap-months,.heatmap-grid{gap:2px;display:grid}.heatmap-months{color:var(--text-2);margin-bottom:2px;font-size:11px}.heatmap-months span{white-space:nowrap}.heatmap-grid{grid-template-rows:repeat(7,auto);grid-auto-flow:column}.heatmap-grid span{aspect-ratio:1;background:var(--fill-2);border-radius:2px}.heatmap-grid .off,.heatmap-grid .before{background:var(--hover)}.heatmap-grid .missed{background:var(--fill-3)}.heatmap-grid .done{background:var(--positive)}.heatmap-grid .future{background:0 0}.habit-daypick{grid-template-columns:repeat(7,1fr);gap:3px;padding:2px 2px 8px;display:grid}.habit-daypick button{border-radius:var(--radius-control);height:28px;color:var(--text-3);background:var(--fill-2);font-size:12px;font-weight:600}.habit-daypick button.on{background:var(--active);color:var(--text)}.when-opt.danger:hover{background:var(--negative)}.when-menu{z-index:500;background:var(--float);width:252px;color:var(--text);border-radius:var(--radius-card);box-shadow:var(--shadow-float);padding:8px;font-size:13px;position:fixed}.when-input{border-radius:var(--radius-control);background:var(--fill-3);width:100%;color:var(--text);border:0;margin-bottom:6px;padding:7px 9px;font-size:13px}.when-input::placeholder{color:var(--text-3)}.when-input:focus{outline:2px solid var(--focus)}.when-head{color:var(--text-2);text-align:center;padding:2px 0 6px;font-size:12px;font-weight:600}.when-opt{border-radius:var(--radius-control);text-align:left;width:100%;color:inherit;cursor:pointer;align-items:center;gap:9px;padding:6px 8px;display:flex}.when-opt:hover:not(:disabled){background:var(--fill-3);color:var(--text)}.when-opt.on,.when-opt.typed{background:var(--fill-3);font-weight:600}.when-opt.typed.none{color:var(--text-3);background:0 0;font-weight:400}.when-opt kbd{color:var(--text-3);margin-left:auto;font-family:inherit;font-size:11px}.when-opt:hover kbd{color:var(--text)}.when-cal{border-top:1px solid var(--border);border-bottom:1px solid var(--border);grid-template-columns:repeat(7,1fr);gap:2px;margin:4px 0;padding:6px 2px;display:grid}.when-cal-head{text-align:center;color:var(--text-3);padding:2px 0 4px;font-size:11px;font-weight:600}.when-day{border-radius:var(--radius-control);height:28px;color:var(--text);font-variant-numeric:tabular-nums;place-items:center;font-size:12.5px;display:grid}.when-day:hover:not(:disabled){background:var(--fill-3);color:var(--text)}.when-day:disabled{color:var(--control);cursor:default}.when-day.today{color:var(--t-today)}.when-day.first{color:var(--text-2);font-size:11px;font-weight:700}.when-day.on{background:var(--primary);color:var(--primary-ink);font-weight:700}.when-sep{background:var(--fill-3);height:1px;margin:4px 0}.repeat-help{color:var(--text-2);padding:0 6px 6px;font-size:12px;line-height:1.45}.repeat-check{place-items:center;width:14px;display:grid}.repeat-period{color:var(--text-3);margin-left:auto;font-size:11px}.when-opt:hover .repeat-period{color:var(--text)}.todo-item .todo-when{width:22px;height:20px;color:var(--text-3);opacity:0;border-radius:4px;flex-shrink:0;place-items:center;margin-right:-6px;transition:opacity .1s;display:grid}.todo-item:hover .todo-when,.todo-item:focus-within .todo-when{opacity:1}.todo-item .todo-when:hover{background:var(--fill-2);color:var(--text)}.pill.when{cursor:pointer}.pill.when:hover{filter:brightness(.95)}.pill.when.today.evening{color:var(--text-2);background:var(--fill-2)}.todo-done-toggle{width:100%;color:var(--text-3);align-items:center;gap:5px;margin-top:4px;padding:2px 0;font-size:11.5px;display:flex}.todo-done-toggle:hover{color:var(--text)}.todo-item.leaving,.task-row.leaving{animation:1.2s linear forwards done-leave}@keyframes done-leave{0%,55%{opacity:1}to{opacity:0}}.todo-repeat{border-radius:var(--radius-chip);color:var(--pill-neutral-ink);background:var(--pill-neutral-bg);align-items:center;gap:4px;margin-bottom:6px;padding:0 7px;font-size:11px;font-weight:600;line-height:18px;display:inline-flex}.todo-repeat span{opacity:.85;font-weight:500}.todo-repeat:hover{background:var(--fill-3)}@media (width<=1024px){.side-panel{width:280px}.board-title-text{font-size:15px}.header-btn .label{display:none}.header-btn{padding:6px 8px}}@media (height<=520px) and (width>=641px){:root{--sidebar-w:72px}.sidebar{padding:4px 0}.tool{gap:0;width:48px;height:auto;padding:3px 0}.tool span{display:none}.tool .tool-icon{width:30px;height:30px}.tool-sep{margin:3px 0}.fmt-btn{height:30px}.sidebar-back{height:24px;margin-bottom:2px}.sidebar-bottom{padding-top:2px}.side-pop{max-height:calc(100dvh - var(--topbar-h) - 16px);overflow:auto}}@media (width<=768px){:root{--bottombar-h:68px}.app{height:100dvh}.app-main{flex-direction:column-reverse}.sidebar{width:100%;height:calc(var(--bottombar-h) + env(safe-area-inset-bottom,0px));border-right:0;border-top:1px solid var(--border);padding:0 4px env(safe-area-inset-bottom,0px);flex-direction:row;align-items:center}.sidebar-tools{scrollbar-width:none;-webkit-overflow-scrolling:touch;flex-direction:row;flex:1;gap:0;height:100%;overflow:auto hidden}.sidebar-tools::-webkit-scrollbar{display:none}.sidebar-bottom{border-left:1px solid var(--border);flex-direction:row;padding:0}.tool{flex-shrink:0;gap:2px;width:60px;height:auto;padding:5px 0 4px}.tool .tool-icon{width:34px;height:34px}.tool span{font-size:10.5px}.tool-sep{flex-shrink:0;width:1px;height:34px;margin:0 4px}.sidebar-back{flex-shrink:0;width:40px;height:44px;margin:0 2px 0 0}.fmt-btn{flex-shrink:0;width:42px;height:42px}.side-pop{max-width:none;max-height:calc(100dvh - var(--bottombar-h) - var(--topbar-h) - 24px);overflow:auto}.side-pop.picker{width:auto}.icon-picker .icon-grid{grid-template-columns:repeat(auto-fill,36px);justify-content:center}.icon-scroll{max-height:40vh}.topbar{padding:0 6px 0 8px}.topbar .desktop-only{display:none}.crumb{max-width:110px}.topbar{gap:6px}.topbar .saved .label,.topbar-title-icon,.header-actions .header-btn:not(:first-child),.share-btn{display:none}.topbar-title{gap:4px;min-width:0;max-width:none;position:static;transform:none}.board-title-text{font-size:15px}.board-title-text input{width:40vw;font-size:15px}.topbar-divider{margin:0}.side-panel{z-index:40;width:100%;box-shadow:var(--shadow-float);position:absolute;inset:0}.zoom{bottom:8px;right:8px}.zoom-value{min-width:42px}.hint{display:none}.tpl-panel{width:auto;bottom:54px;left:8px;right:8px}.tpl-list.scroll{min-height:0;max-height:38vh}.search-backdrop{padding-top:6vh}.tasks-page{flex-direction:column}.tasks-content{padding:20px 14px 80px}.tasks-head h1{font-size:22px}.task-grip{display:none}.search-results{max-height:60vh}.login-card{width:auto;margin:16px;padding:28px 22px 22px}.ctx{max-width:calc(100vw - 16px)}.toast{bottom:calc(var(--bottombar-h) + 16px + env(safe-area-inset-bottom,0px));text-align:center;max-width:calc(100vw - 32px)}.user-pop{width:min(220px,100vw - 16px)}}@media (pointer:coarse){.task-btn,.todo-item .todo-when{opacity:1}.ctx kbd{display:none}.ctx-item{min-height:40px}.handle{width:22px;height:22px}.handle.se{background-position:100% 100%;background-repeat:no-repeat;background-size:12px 12px;bottom:0;right:0}.col-resize{background-position:100% 100%;background-repeat:no-repeat;background-size:12px 12px;width:22px;height:22px}.todo-item .grab,.side-card .card-actions{opacity:1}.line-endpoint,.line-curve-handle{r:8}.zoom .icon-btn{width:36px;height:36px}.canvas.space{cursor:default}}.app.m-app{height:100dvh;overflow:hidden}html:has(.m-app){overscroll-behavior:none;background:var(--ground)}html:has(.m-app) body{overscroll-behavior:none;background:var(--ground)}.m-app>.app-body{min-height:0}.m-header{height:calc(52px + env(safe-area-inset-top,0px));padding:env(safe-area-inset-top,0px) max(4px, env(safe-area-inset-right,0px)) 0 max(4px, env(safe-area-inset-left,0px));background:var(--ground);z-index:30;border-bottom:1px solid var(--border);flex-shrink:0;align-items:center;gap:4px;display:flex;position:relative}.m-header-back,.m-editor-head .m-header-back{width:44px;height:44px;color:var(--text);border-radius:50%;flex-shrink:0;place-items:center;display:grid}.m-header-back:active{background:var(--fill-2)}.m-header-title{text-align:left;cursor:pointer;letter-spacing:-.015em;min-width:0;color:var(--text);flex:1;justify-content:flex-start;align-self:stretch;align-items:center;gap:7px;margin:0;font-size:17px;font-weight:650;display:flex}h1.m-header-title{cursor:default}.m-header-title:first-child{padding-left:12px}.m-header-back+.m-header-title{margin-left:-6px}.m-header-icon{color:#0000008c;border-radius:5px;flex-shrink:0;place-items:center;width:20px;height:20px;display:inline-grid}.m-header-text{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.m-header-dot{background:var(--positive);border-radius:50%;flex-shrink:0;width:6px;height:6px}.m-header-dot.offline{background:var(--danger)}.m-header-dot.syncing,.m-header-dot.loading{background:var(--text-3)}.m-header-actions{flex-shrink:0;align-items:center;display:flex}.m-header-actions .icon-btn{width:44px;height:44px}.m-header-actions .badge{font-variant-numeric:tabular-nums;min-width:16px;height:16px;box-shadow:0 0 0 2px var(--ground);padding:0 4px;font-size:10.5px;line-height:16px;top:5px;left:27px;right:auto}.m-header-actions .icon-btn.active .badge{box-shadow:0 0 0 2px var(--active)}.m-header-actions .icon-btn{color:var(--text)}.m-tabbar{padding:0 env(safe-area-inset-right,0px) env(safe-area-inset-bottom,0px) env(safe-area-inset-left,0px);background:var(--ground);border-top:1px solid var(--border);z-index:30;flex-shrink:0;grid-template-columns:repeat(5,minmax(0,1fr));display:grid}.m-tab{min-width:0;height:54px;color:var(--text-3);letter-spacing:-.01em;-webkit-tap-highlight-color:transparent;flex-direction:column;justify-content:center;align-items:center;gap:3px;font-size:11px;font-weight:500;display:flex}.m-tab.on{color:var(--text);font-weight:650}.m-tab.on svg{stroke-width:2.4px}.m-tab:active .m-tab-icon{transform:scale(.92)}.m-tab:focus-visible{outline:2px solid var(--focus);outline-offset:-4px;border-radius:var(--radius-control)}.m-tab-icon{place-items:center;transition:transform .12s ease-out;display:grid;position:relative}.m-tab-label{text-overflow:ellipsis;white-space:nowrap;max-width:100%;overflow:hidden}.m-tab .badge{font-variant-numeric:tabular-nums;min-width:16px;height:16px;box-shadow:0 0 0 2px var(--ground);padding:0 4px;font-size:10.5px;font-weight:600;line-height:16px;top:-6px;left:13px;right:auto}.m-app .tasks-page{flex-direction:column}.m-seg{margin:10px max(12px, env(safe-area-inset-right,0px)) 0 max(12px, env(safe-area-inset-left,0px));background:var(--fill-2);border-radius:10px;flex-shrink:0;grid-template-columns:repeat(6,minmax(0,1fr));gap:2px;padding:3px;display:grid}.m-seg-item{min-width:0;height:48px;color:var(--text-2);letter-spacing:-.02em;-webkit-tap-highlight-color:transparent;border-radius:7px;flex-direction:column;justify-content:center;align-items:center;gap:3px;font-size:10.5px;font-weight:500;display:flex}.m-seg-item.on{background:var(--surface);color:var(--text);font-weight:650}.m-seg-item .label{text-overflow:ellipsis;white-space:nowrap;max-width:100%;overflow:hidden}.m-seg-icon{place-items:center;display:grid;position:relative}.m-seg-icon .count{font-variant-numeric:tabular-nums;min-width:15px;height:15px;color:var(--primary-ink);background:var(--primary);border-radius:8px;padding:0 4px;font-size:10px;font-weight:600;line-height:15px;position:absolute;top:-6px;left:10px}@media (width<=359px){.m-seg-item{letter-spacing:-.03em;font-size:9.5px}}.m-app .tasks-head.page{display:none}.m-app .tasks-content{padding:18px max(16px, env(safe-area-inset-right,0px)) 32px max(16px, env(safe-area-inset-left,0px))}.m-board{flex-direction:column;flex:1;min-height:0;display:flex;position:relative}.m-board-scroll{-webkit-overflow-scrolling:touch;min-height:0;padding:14px max(12px, env(safe-area-inset-right,0px)) 88px max(12px, env(safe-area-inset-left,0px));flex:1;overflow:hidden auto}.m-empty{text-align:center;color:var(--text-2);margin:20vh 24px 0;font-size:13px;line-height:1.6}.m-list{flex-direction:column;gap:12px;display:flex}.m-row{touch-action:pan-y;align-items:stretch;min-width:0;display:flex}.m-row-card{background:var(--surface);cursor:pointer;outline:1px solid var(--border);outline-offset:-1px;border-radius:8px;flex:1;min-width:0;position:relative;overflow:hidden}.m-row-card .col-child{border-radius:0}.m-row-card.heading{box-shadow:none;background:0 0;outline:none;overflow:visible}.m-heading .title-input{padding:8px 4px 4px}.m-heading.has-strip .title-input{padding-top:8px}.m-heading.filled .title-input{padding:16px 18px}.m-heading .title-line{border-radius:3px}.m-heading.editing .title-input{background:var(--surface);box-shadow:inset 0 0 0 1.5px var(--primary);cursor:text;border-radius:6px;outline:none}.m-row-card .c-image img{max-height:220px}.m-reorder-gap{border:1.5px dashed var(--border);background:var(--fill-1);border-radius:8px}.m-row-floating{z-index:1000;pointer-events:none;position:fixed;transform:scale(1.03)}.m-row-floating .m-row-card,.m-row-floating .col-child{box-shadow:0 16px 28px #00000047}.m-column{padding:12px 14px 14px}.m-column-head{justify-content:space-between;align-items:baseline;gap:10px;padding-bottom:8px;font-size:14px;font-weight:650;display:flex}.m-column-title-input{min-width:0;font:inherit;border:1.5px solid var(--primary);background:var(--surface);border-radius:6px;outline:none;flex:1;margin:-3px -6px;padding:2px 6px}.m-column-sub{color:var(--text-2);white-space:nowrap;font-size:12px;font-weight:500}.m-column-empty{border:1.5px dashed var(--border);text-align:center;color:var(--text-3);border-radius:6px;padding:14px;font-size:12px}.m-column-children{flex-direction:column;gap:8px;display:flex}.m-column-child{cursor:pointer;touch-action:pan-y}.m-column-child .col-child.image{overflow:hidden}.m-reveal>.m-row-card,.m-reveal>.col-child{animation:1.8s ease-out m-reveal}@keyframes m-reveal{0%,45%{box-shadow:0 0 0 2px var(--text)}to{box-shadow:0 0 0 2px #0000}}.m-fab{right:max(16px, env(safe-area-inset-right,0px));background:var(--accent);width:56px;height:56px;color:var(--primary-ink);box-shadow:var(--shadow-float);z-index:40;border-radius:50%;place-items:center;display:grid;position:absolute;bottom:16px}.m-fab:active{background:var(--primary-hover)}.m-sheet-grid{grid-template-columns:repeat(3,1fr);gap:10px;display:grid}.m-sheet-item{border-radius:var(--radius-card);background:var(--fill-2);flex-direction:column;justify-content:center;align-items:center;gap:7px;min-height:76px;font-size:13px;font-weight:500;display:flex}.m-sheet-item:active{background:var(--fill-3)}.m-sheet-icon{color:var(--text)}.m-editor{z-index:70;background:var(--canvas);flex-direction:column;display:flex;position:fixed;inset:0}.m-editor-head{height:calc(52px + env(safe-area-inset-top,0px));padding:env(safe-area-inset-top,0px) max(4px, env(safe-area-inset-right,0px)) 0 max(4px, env(safe-area-inset-left,0px));background:var(--ground);border-bottom:1px solid var(--border);flex-shrink:0;align-items:center;gap:4px;display:flex}.m-editor-title{text-align:center;flex:1;font-size:14px;font-weight:700}.m-editor-head .icon-btn{flex-shrink:0;width:44px;height:44px}.m-editor-body{-webkit-overflow-scrolling:touch;min-height:0;padding:16px 14px calc(24px + env(safe-area-inset-bottom,0px));flex:1;overflow-y:auto}.m-editor-card{background:var(--surface);outline:1px solid var(--border);outline-offset:-1px;border-radius:8px;position:relative;overflow:hidden}.m-editor-card .c-image img{max-height:50vh}.m-editor-colors{margin-top:18px}.m-editor-colors-label{color:var(--text-2);margin:0 0 8px;font-size:12px;font-weight:600}.settings-backdrop{background:var(--scrim);z-index:450;justify-content:center;align-items:flex-start;padding:10vh 16px 16px;display:flex;position:fixed;inset:0}.settings{background:var(--float);border-radius:var(--radius-card);width:560px;max-width:100%;max-height:80vh;box-shadow:var(--shadow-float);overflow-y:auto}.settings-head{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:10px 10px 10px 18px;display:flex}.settings-head h2{margin:0;font-size:16px;font-weight:650}.settings-section{padding:14px 18px 18px}.settings-section h3{align-items:center;gap:6px;margin:0 0 6px;font-size:14px;font-weight:600;display:flex}.settings-hint{color:var(--text-2);margin:0 0 12px;font-size:13px}.settings code{font-family:var(--mono);font-size:11.5px}.settings input{border:1px solid var(--control);border-radius:var(--radius-control);min-width:0;height:32px;font:inherit;color:var(--text);background:var(--surface);flex:1;padding:0 10px;font-size:13px}.settings input:focus{border-color:var(--focus);outline:none}.settings .btn-primary,.settings .btn-secondary,.settings .btn-danger{border-radius:var(--radius-control);white-space:nowrap;flex-shrink:0;align-items:center;gap:6px;height:32px;padding:0 12px;font-size:13px;font-weight:500;display:inline-flex}.settings .btn-primary{background:var(--accent);color:var(--primary-ink)}.settings .btn-primary:disabled{opacity:.5;cursor:default}.settings .btn-secondary{border:1px solid var(--control);color:var(--text);background:var(--surface)}.settings .btn-danger{border:1px solid color-mix(in srgb, var(--negative) 35%, transparent);color:var(--danger);background:var(--surface)}.settings .btn-danger:hover{background:var(--pill-negative-bg)}.token-form,.token-secret{gap:8px;display:flex}.token-created{border-radius:var(--radius-control);background:var(--pill-positive-bg);flex-direction:column;gap:8px;margin-top:12px;padding:10px 12px;font-size:12.5px;display:flex}.token-secret input{font-family:var(--mono);font-size:12px}.settings-error{color:var(--danger);margin-top:10px;font-size:12.5px}.token-list{border-top:1px solid var(--border);margin-top:14px}.token-row{border-bottom:1px solid var(--border);align-items:center;gap:12px;padding:10px 0;display:flex}.token-row.revoked{opacity:.55}.token-info{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.token-info b{font-size:13px}.token-info small{color:var(--text-2);font-size:12px}.token-list>.settings-hint{margin:10px 0 0}@media (width<=700px){.settings-backdrop{padding-top:6vh}.settings input{height:40px;font-size:16px}.settings .btn-primary,.settings .btn-secondary,.settings .btn-danger{height:40px}}.hk-page,.c-habit{--hk-surface:var(--surface);--hk-border:var(--border);--hk-text:var(--text);--hk-text-2:var(--text-2);--hk-empty:var(--fill-2)}.hk-toolbar{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:14px;display:flex}.hk-spacer{flex:1}.hk-new{border-radius:var(--radius-control);background:var(--text);color:var(--primary-ink);align-items:center;gap:6px;height:32px;padding:0 12px;font-size:13px;font-weight:500;display:inline-flex}.hk-link{color:var(--text-2);border-radius:var(--radius-control);align-items:center;gap:5px;padding:6px 8px;font-size:13px;display:inline-flex}.hk-link:hover,.hk-link.on{background:var(--fill-2)}.hk-chips{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.hk-chips button{border-radius:var(--radius-control);color:var(--text-2);background:0 0;height:28px;padding:0 10px;font-size:13px}.hk-chips button.on{background:var(--active);color:var(--text);font-weight:600}.hk-chips input{border-radius:var(--radius-control);border:1px dashed var(--control);width:120px;color:inherit;background:0 0;outline:none;padding:4px 8px;font-size:13px}.hk-list{flex-direction:column;gap:12px;display:flex}.hk-card{background:var(--hk-surface);color:var(--hk-text);border:1px solid var(--hk-border);border-radius:var(--radius-card);cursor:pointer;box-shadow:none;padding:14px 16px 12px}.c-habit{padding:14px 12px 10px}.c-habit .todo-title{padding:0 4px 8px}.c-habit .hk-list{gap:8px}.c-habit .hk-card{border-radius:var(--radius-control);padding:9px 11px}.c-habit .hk-card-head{gap:10px;margin-bottom:0}.hk-card-add{color:var(--text-3);align-items:center;gap:5px;margin:6px 0 0;padding:5px 4px;font-size:13px;display:flex}.hk-card-add:hover{color:var(--text)}.hk-card.archived{opacity:.6}.hk-card-head,.hk-detail-head{align-items:center;gap:12px;margin-bottom:10px;display:flex}.hk-glyph{border-radius:0;flex:none;place-items:center;width:28px;height:28px;font-size:18px;display:grid}.hk-title{flex:1;min-width:0}.hk-title h2,.hk-title h3{text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:15px;font-weight:600;overflow:hidden}.hk-title h2{font-size:18px}.hk-title p{color:var(--hk-text-2,var(--text-2));text-overflow:ellipsis;white-space:nowrap;margin:2px 0 0;font-size:13px;overflow:hidden}.hk-streak{color:var(--hk-text-2);font-variant-numeric:tabular-nums;align-items:center;gap:3px;font-size:13px;font-weight:600;display:inline-flex}.hk-streak.on{color:var(--hk-c)}.hk-check{border-radius:var(--radius-card);width:40px;height:40px;color:var(--hk-c);background:linear-gradient(to top, color-mix(in srgb, var(--hk-c) 45%, transparent) var(--hk-p), color-mix(in srgb, var(--hk-c) 14%, transparent) var(--hk-p));flex:none;place-items:center;transition:transform .1s;display:grid}.hk-check:active{transform:scale(.92)}.hk-check.on{background:var(--hk-c);color:#fff}.hk-check small{font-size:11px;font-weight:600}.hk-check.lg{border-radius:10px;width:52px;height:52px}.task-row .hk-check{border-radius:var(--radius-control);width:22px;height:22px;margin-top:1px}.task-row .hk-check svg{width:13px;height:13px}.task-row .hk-check small{font-size:8px}.hk-page .heatmap-grid span,.c-habit .heatmap-grid span,.hk-sheet .heatmap-grid span{background:var(--hk-empty);border-radius:3px}.hk-page .heatmap-grid .future,.c-habit .heatmap-grid .future,.hk-sheet .heatmap-grid .future{background:0 0}.hk-backdrop{z-index:600;background:var(--scrim);justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.hk-sheet{background:var(--float);width:min(460px,100vw - 32px);max-height:calc(100vh - 48px);color:var(--text);box-shadow:var(--shadow-float);border:1px solid var(--border);border-radius:12px;padding:16px 18px 20px;overflow-y:auto}.hk-sheet.wide{width:min(560px,100vw - 32px)}.hk-grab,.sheet-bar{display:none}@media (width<=768px),(pointer:coarse) and (width<=820px){.hk-backdrop{cursor:pointer;align-items:flex-end;transition:background-color .18s ease-in}.hk-backdrop.leaving{background-color:#0000}.hk-sheet,.hk-sheet.wide{width:100%;max-height:min(92dvh, calc(100dvh - env(safe-area-inset-top,0px) - 16px));overscroll-behavior:contain;cursor:auto;padding:0 max(18px, env(safe-area-inset-right,0px)) calc(20px + env(safe-area-inset-bottom,0px)) max(18px, env(safe-area-inset-left,0px));border-width:1px 0 0;border-radius:14px 14px 0 0;transition:transform .2s ease-out;animation:.22s ease-out hk-up}.hk-sheet.pulling{transition:none}.hk-backdrop.leaving .hk-sheet{transition:transform .18s ease-in;transform:translateY(100%)}.sheet-bar{z-index:3;background:var(--float);touch-action:none;cursor:grab;align-items:center;gap:8px;min-height:52px;margin:0 -18px 4px;padding:10px 6px 0 18px;display:flex;position:sticky;top:0}.hk-grab{background:var(--fill-4);border-radius:3px;width:36px;height:5px;margin-left:-18px;display:block;position:absolute;top:6px;left:50%}.sheet-title{letter-spacing:-.015em;flex:1;min-width:0;margin:0;font-size:17px;font-weight:650}.sheet-bar:not(:has(.sheet-x,.sheet-title)){min-height:22px}.sheet-x{width:44px;height:44px;color:var(--text);border-radius:50%;flex-shrink:0;place-items:center;margin-left:auto;display:grid;position:relative}.sheet-x:before{content:"";background:var(--fill-2);border-radius:50%;width:30px;height:30px;position:absolute}.sheet-x svg{position:relative}.sheet-x:active:before{background:var(--fill-3)}.hk-sheet .settings,.hk-sheet .search{width:auto;max-width:none;max-height:none;box-shadow:none;background:0 0;border-radius:0;margin:0 -18px;overflow:visible}.hk-sheet .search-results{max-height:none}.hk-sheet[data-testid=search-sheet]{height:min(92dvh, calc(100dvh - env(safe-area-inset-top,0px) - 16px))}}@media (width<=768px) and (prefers-reduced-motion:reduce),(pointer:coarse) and (width<=820px) and (prefers-reduced-motion:reduce){.hk-sheet,.hk-sheet.wide{transition:none;animation:none}}@keyframes hk-up{0%{opacity:0;transform:translateY(40px)}}.hk-sheet .icon-btn{color:inherit}.hk-sheet .task-place{color:var(--text-2)}.hk-stats{grid-template-columns:repeat(4,1fr);gap:8px;margin-bottom:14px;display:grid}.hk-stats>div{background:var(--fill-2);border-radius:var(--radius-card);flex-direction:column;gap:2px;padding:10px;display:flex}.hk-stats svg{color:var(--text-2)}.hk-stats b{font-variant-numeric:tabular-nums;font-size:20px;font-weight:600}.hk-stats small{color:var(--text-2);font-size:12px}.hk-heat-wrap{margin-bottom:14px}.hk-cal-head{justify-content:space-between;align-items:center;margin-bottom:6px;font-weight:600;display:flex}.hk-cal-grid{text-align:center;grid-template-columns:repeat(7,1fr);gap:4px;display:grid}.hk-cal-grid small{color:var(--text-2);font-size:11px}.hk-day{aspect-ratio:1;border-radius:var(--radius-control);background:var(--fill-2);max-height:44px;color:inherit;font-size:13px;position:relative}.hk-day.off{color:var(--text-3)}.hk-day.today{box-shadow:inset 0 0 0 2px var(--data)}.hk-day.sel{box-shadow:inset 0 0 0 2px var(--hk-c)}.hk-day.done{color:#fff;font-weight:700}.hk-day:disabled{opacity:.3}.hk-day sup{font-size:9px;position:absolute;top:2px;right:4px}.hk-stepper{justify-content:center;align-items:center;gap:12px;margin:12px 0 4px;display:flex}.hk-stepper span{color:var(--text-2);flex:1;font-size:13px}.hk-stepper b{text-align:center;min-width:48px;font-size:16px}.hk-stepper b small{color:var(--text-2);font-weight:500}.hk-meta{color:var(--text-2);flex-wrap:wrap;align-items:center;gap:4px;margin:8px 0 14px;font-size:12.5px;display:flex}.hk-actions{flex-wrap:wrap;gap:8px;display:flex}.hk-actions button{border-radius:var(--radius-control);background:var(--fill-2);color:inherit;align-items:center;gap:6px;padding:8px 12px;font-size:13px;display:inline-flex}.hk-actions button:disabled{opacity:.35}.hk-actions .danger{color:var(--negative)}.hk-actions .danger.armed{background:var(--negative);color:#fff}.hk-sheet-head{justify-content:space-between;align-items:center;margin-bottom:12px;font-weight:600;display:flex}.hk-save{border-radius:var(--radius-control);background:var(--primary);color:var(--primary-ink);padding:6px 14px;font-weight:500}.hk-save:disabled{opacity:.4}.hk-form{flex-direction:column;gap:8px;display:flex}.hk-form>label{color:var(--text-2);align-items:center;gap:5px;margin-top:8px;font-size:12px;font-weight:600;display:flex}.hk-form input:not([type=time]),.hk-form textarea{background:var(--fill-2);width:100%;color:inherit;border-radius:var(--radius-control);font:inherit;resize:vertical;border:none;outline:none;padding:10px 12px}.hk-form .hk-chips input{border-radius:999px;width:140px;padding:4px 10px}.hk-name-row{align-items:center;gap:10px;display:flex}.hk-name-row input{font-size:16px;font-weight:600}.hk-form .icon-picker{background:var(--surface);color:var(--text);border-radius:var(--radius-card);border:1px solid var(--border);max-height:300px}.hk-colors{grid-template-columns:repeat(8,1fr);gap:8px;display:grid}.hk-colors button{aspect-ratio:1;border-radius:50%}.hk-colors button.on{box-shadow:0 0 0 2px var(--float), 0 0 0 4px var(--text)}.hk-goal{align-items:center;gap:10px;display:flex}.hk-goal b{text-align:center;min-width:24px;font-size:17px}.hk-goal span{color:var(--text-2)}.hk-seg{background:var(--fill-2);border-radius:var(--radius-card);gap:2px;padding:3px;display:inline-flex}.hk-seg button{border-radius:var(--radius-control);color:var(--text-2);padding:6px 12px;font-size:13px}.hk-seg button.on{background:var(--fill-4);color:var(--text)}.hk-sheet .habit-daypick{padding:0}.hk-reminder{align-items:center;gap:8px;display:flex}.hk-reminder input[type=time]{background:var(--fill-2);color:inherit;border-radius:var(--radius-control);border:none;padding:6px 8px}.hk-reminder .habit-daypick{flex:1}.hk-sheet .hk-link{color:var(--text-2);align-self:flex-start}@media (width<=768px){.hk-stats{grid-template-columns:repeat(2,1fr)}.hk-new{padding:9px 14px}}.gk-ring{flex:none;place-items:center;display:inline-grid;position:relative}.gk-ring svg{position:absolute;inset:0}.gk-ring b{font-variant-numeric:tabular-nums;place-items:center;font-weight:700;display:grid;position:relative}.gk-sub{flex-wrap:wrap;align-items:center;gap:4px 8px;display:flex}.gk-cat{border-radius:var(--radius-chip);background:var(--fill-3);padding:0 6px;font-size:12px;font-weight:500}.gk-left{align-items:center;gap:4px;display:inline-flex}.gk-left.late{color:var(--negative);font-weight:600}.gk-card.achieved .gk-left{color:var(--positive);font-weight:600}.gk-card.archived{opacity:.6}.gk-parts{grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:7px 16px;margin-top:2px;display:grid}.gk-part{grid-template-columns:auto 1fr auto;align-items:center;gap:2px 6px;min-width:0;font-size:13px;display:grid}.gk-part.gone{opacity:.5}.gk-part-icon{place-items:center;display:inline-grid}.gk-part-label{text-overflow:ellipsis;white-space:nowrap;font-weight:500;overflow:hidden}.gk-part-detail{color:var(--hk-text-2,var(--text-2));font-variant-numeric:tabular-nums;white-space:nowrap;font-size:12px}.gk-part .gk-bar{grid-column:1/-1}.gk-bar{background:var(--hk-empty,var(--fill-3));border-radius:3px;height:4px;display:block;overflow:hidden}.gk-bar>span{border-radius:3px;height:100%;transition:width .4s;display:block}.gk-more{color:var(--hk-text-2,var(--text-2));align-self:end;font-size:12px}.gk-count{font-variant-numeric:tabular-nums;opacity:.7;margin-left:4px}.hk-chips button svg{vertical-align:-1px}.gk-cats,.gk-summary{margin:-4px 0 12px}@media (width>=900px){.gk-page .gk-list{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}}.gk-detail-head{margin-bottom:6px}.gk-detail-head .gk-sub{color:var(--text-2);margin-top:3px;font-size:12.5px}.gk-detail-head .gk-cat{background:var(--fill-3);color:var(--text)}.gk-why{border-radius:var(--radius-card);background:var(--fill-1);color:var(--text);white-space:pre-wrap;margin:4px 0 6px;padding:10px 12px;font-size:13.5px;line-height:1.45}.gk-h{color:var(--text-2);align-items:center;gap:6px;margin:16px 0 8px;font-size:12px;font-weight:600;display:flex}.gk-h span{margin-left:auto;font-weight:500}.gk-milestones{flex-direction:column;gap:4px;display:flex}.gk-ms,.gk-ms-add{border-radius:var(--radius-control);background:var(--fill-1);align-items:center;gap:6px;min-height:40px;padding:4px 6px 4px 8px;display:flex}.gk-ms-add{border:1px dashed var(--border);color:var(--text-2);background:0 0}.gk-ms .icon-btn{opacity:.55;flex:none;width:26px;height:26px}.gk-ms .icon-btn:hover:not(:disabled){opacity:1}.gk-ms .icon-btn:disabled{opacity:.15}.gk-ms-check{border:2px solid color-mix(in srgb, var(--hk-c) 70%, transparent);color:#fff;border-radius:50%;flex:none;place-items:center;width:22px;height:22px;display:grid}.gk-ms.done .gk-ms-check{background:var(--hk-c);border-color:var(--hk-c)}.gk-ms input.gk-ms-title,.gk-ms-add input:not([type=date]){min-width:0;color:inherit;font:inherit;background:0 0;border:none;outline:none;flex:1;padding:4px 2px;font-size:14px}.gk-ms-text{overflow-wrap:anywhere;cursor:text;flex:1;min-width:0;padding:6px 2px;font-size:14px;line-height:1.3}.gk-ms.done .gk-ms-text,.gk-ms.done .gk-ms-title{color:var(--text-3);text-decoration:line-through}.gk-ms-due{color:var(--text-2);cursor:pointer;white-space:nowrap;border-radius:7px;flex:none;align-items:center;gap:4px;padding:3px 6px;font-size:12px;display:inline-flex;position:relative}.gk-ms-due:hover{background:var(--fill-2)}.gk-ms-due.late{color:var(--negative)}.gk-ms-due input{opacity:0;cursor:pointer;position:absolute;inset:0}.gk-mini{border-radius:var(--radius-control);background:var(--primary);color:var(--primary-ink);flex:none;padding:5px 12px;font-size:12.5px;font-weight:500}.gk-mini:disabled{opacity:.35}.gk-links{flex-direction:column;gap:6px;display:flex}.gk-link{border-radius:var(--radius-card);background:var(--fill-1);grid-template-columns:auto 1fr auto auto auto;align-items:center;gap:4px 10px;padding:8px 8px 8px 10px;display:grid}.gk-link.gone{opacity:.55}.gk-link .gk-bar{background:var(--fill-2);grid-column:1/-1}.gk-link .icon-btn{opacity:.6;width:26px;height:26px}.gk-h-end{align-items:center;gap:8px;display:inline-flex}.gk-weight{opacity:.7;align-items:center;gap:2px;font-size:12px;font-weight:500;display:inline-flex}.gk-weight:focus-within{opacity:1}.gk-weight input{background:var(--fill-2);width:3.2em;color:inherit;font:inherit;font-variant-numeric:tabular-nums;text-align:center;-moz-appearance:textfield;border:1px solid #0000;border-radius:6px;padding:2px 4px}.gk-weight input::-webkit-inner-spin-button{-webkit-appearance:none}.gk-weight input::-webkit-outer-spin-button{-webkit-appearance:none}.gk-weight input:focus{border-color:currentColor;outline:none}.gk-link-pct{font-variant-numeric:tabular-nums;font-size:13px;font-weight:650}.gk-picker-text{flex-direction:column;min-width:0;display:flex}.gk-picker-text b{text-overflow:ellipsis;white-space:nowrap;font-size:13.5px;font-weight:600;overflow:hidden}.gk-picker-text small{color:var(--text-2);text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.gk-picker{border-radius:var(--radius-card);background:var(--fill-1);border:1px solid var(--border);flex-direction:column;gap:8px;padding:10px;display:flex}.gk-picker-head{justify-content:space-between;align-items:center;gap:8px;display:flex}.gk-picker-opts{color:var(--text-2);flex-wrap:wrap;align-items:center;gap:8px;font-size:12.5px;display:flex}.gk-picker input,.gk-metric-form input,.gk-metric-setup input,.gk-date-row input{background:var(--fill-2);color:inherit;border-radius:var(--radius-control);font:inherit;border:none;outline:none;min-width:0;padding:8px 10px;font-size:13.5px}.gk-picker-opts input{width:72px}.gk-picker-list{flex-direction:column;gap:2px;max-height:220px;display:flex;overflow-y:auto}.gk-picker-row{border-radius:var(--radius-control);color:inherit;text-align:left;align-items:center;gap:10px;padding:7px 8px;display:flex}.gk-picker-row:hover{background:var(--fill-2)}.gk-picker-row .gk-picker-text{flex:1}.gk-empty-line{color:var(--text-2);margin:6px 4px;font-size:12.5px}.gk-metric{flex-direction:column;gap:10px;display:flex}.gk-metric-nums{grid-template-columns:repeat(3,1fr);gap:8px;display:grid}.gk-metric-nums>div{background:var(--fill-2);border-radius:var(--radius-card);flex-direction:column;padding:8px 10px;display:flex}.gk-metric-nums small{color:var(--text-2);font-size:12px}.gk-metric-nums b{font-variant-numeric:tabular-nums;font-size:19px;font-weight:600}.gk-metric-nums em{color:var(--text-2);font-size:12px;font-style:normal;font-weight:500}.gk-chart{border-radius:var(--radius-card);background:var(--fill-1);width:100%;height:130px;display:block}.gk-chart-target{stroke:var(--control);stroke-dasharray:4 4;vector-effect:non-scaling-stroke}.gk-chart-label{fill:var(--text-3);font-size:9px}.gk-metric-form,.gk-metric-setup{align-items:center;gap:6px;display:flex}.gk-metric-form input[type=number]{width:120px}.gk-metric-form input[type=date]{width:132px}.gk-metric-form input:not([type]),.gk-metric-setup input{flex:1}.gk-metric-setup span{color:var(--text-2)}.gk-log{flex-direction:column;display:flex}.gk-log-row{border-bottom:1px solid var(--rule);font-variant-numeric:tabular-nums;grid-template-columns:70px auto 1fr auto;align-items:center;gap:10px;padding:3px 0;font-size:13px;display:grid}.gk-log-row span,.gk-log-row small{color:var(--text-2)}.gk-log-row small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.gk-log-row .icon-btn{opacity:.5;width:24px;height:24px}.hk-actions .gk-achieve{background:color-mix(in srgb, var(--hk-c) 85%, transparent);color:#fff;font-weight:600}.gk-date-row{align-items:center;gap:6px;display:flex}@media (width<=768px){.gk-metric-form{flex-wrap:wrap}.gk-metric-form input:not([type]){flex-basis:100%;order:3}.gk-metric-form input[type=number]{flex:1}.gk-ms .icon-btn{width:30px;height:30px}}:root{--t-schedule:var(--text-2)}.i-schedule{color:var(--t-schedule)}.tasks-nav .i-today{color:var(--text-2)}.tasks-content:has(>.hk-page){max-width:1056px}.tasks-content:has(>.gk-page){max-width:1168px}.tasks-content.wide{max-width:1180px;padding:40px 40px 120px}.sk-page{--sk-line:var(--hk-border);--sk-soft:var(--fill-2)}.sk-day,.sk-month,.sk-wcol{color:var(--hk-text)}.sk-toolbar{margin-bottom:8px}.sk-seg{margin-left:0}.sk-refresh.spin svg{animation:.9s linear infinite sk-spin}@keyframes sk-spin{to{transform:rotate(360deg)}}.sk-nav{flex-wrap:wrap;align-items:center;gap:4px;margin-bottom:16px;display:flex}.sk-nav h2{font-variant-numeric:tabular-nums;min-width:0;margin:0 6px;font-size:18px;font-weight:600}.sk-nav .icon-btn{color:var(--text-2)}.sk-today{border-radius:var(--radius-control);border:1px solid var(--control);color:inherit;margin-left:6px;padding:4px 10px;font-size:13px}.sk-error{border-radius:var(--radius-control);background:var(--pill-negative-bg);color:var(--pill-negative-ink);margin:0 0 12px;padding:8px 12px;font-size:12.5px}.sk-hint{margin-top:14px}.sk-item{border-radius:var(--radius-control);cursor:pointer;align-items:center;gap:10px;min-width:0;padding:8px 10px;display:flex}.sk-item:hover{background:var(--sk-soft)}.sk-item[draggable=true]{cursor:grab}.sk-item.done .sk-title{opacity:.55;text-decoration:line-through}.sk-body{flex-direction:column;flex:1;min-width:0;display:flex}.sk-title{text-overflow:ellipsis;align-items:center;gap:5px;font-size:14px;line-height:1.3;display:flex;overflow:hidden}.sk-meta{color:var(--hk-text-2);white-space:nowrap;text-overflow:ellipsis;font-size:12px;overflow:hidden}.sk-moon{color:var(--t-evening);flex-shrink:0}.sk-item.deadline .sk-meta,.sk-item.deadline.compact .sk-title{color:var(--negative)}.sk-check{--sk-c:var(--t-check);border:1.5px solid color-mix(in srgb, var(--sk-c) 70%, transparent);color:#fff;background:0 0;border-radius:6px;flex-shrink:0;place-items:center;width:20px;height:20px;padding:0;display:grid}.sk-check.habit{background:conic-gradient(var(--sk-c) var(--sk-p), transparent 0);border-radius:50%}.sk-check.habit.on{background:var(--sk-c);border-color:var(--sk-c)}.sk-check.milestone{color:var(--sk-c);border-radius:50%}.sk-check.milestone.on{background:color-mix(in srgb, var(--sk-c) 18%, transparent)}.sk-bar{border-radius:2px;flex-shrink:0;align-self:stretch;width:4px;min-height:20px;margin:0 8px}.sk-goal-dot{flex-shrink:0;place-items:center;width:20px;display:grid}.sk-item.goal .sk-title{font-weight:600}.sk-item.event{background:color-mix(in srgb, var(--sk-c) 9%, transparent);margin:2px 0}.sk-item.event:hover{background:color-mix(in srgb, var(--sk-c) 16%, transparent)}.sk-agenda{flex-direction:column;gap:6px;display:flex}.sk-day{background:var(--hk-surface);border:1px solid var(--hk-border);border-radius:var(--radius-card);padding:10px 8px 8px}.sk-day.past{opacity:.75}.sk-day h3{align-items:baseline;gap:8px;margin:0 6px 4px;font-size:14px;display:flex}.sk-daynum{font-variant-numeric:tabular-nums;min-width:26px;font-size:22px;font-weight:600}.sk-day.today .sk-daynum{color:var(--data)}.sk-dayname{font-weight:600}.sk-daysub{color:var(--hk-text-2);font-size:13px;font-weight:400}.sk-free{color:var(--hk-text-2);margin:2px 10px 6px;font-size:13px}.sk-habits{flex-wrap:wrap;gap:6px;padding:6px 6px 2px;display:flex}.sk-habit{border-radius:var(--radius-control);background:color-mix(in srgb, var(--sk-c) 12%, transparent);cursor:pointer;align-items:center;gap:6px;max-width:100%;padding:4px 10px 4px 5px;font-size:13px;display:inline-flex}.sk-habit span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.sk-habit .sk-check{width:18px;height:18px}.sk-month{border-top:1px solid var(--sk-line);border-left:1px solid var(--sk-line);border-radius:var(--radius-card);background:var(--hk-surface);grid-template-columns:repeat(7,minmax(0,1fr));display:grid;overflow:hidden}.sk-wd{color:var(--hk-text-2);border-right:1px solid var(--sk-line);border-bottom:1px solid var(--sk-line);padding:6px 8px;font-size:12px;font-weight:500}.sk-cell{border-right:1px solid var(--sk-line);border-bottom:1px solid var(--sk-line);cursor:pointer;flex-direction:column;gap:1px;min-width:0;min-height:112px;padding:4px;display:flex}.sk-cell.out{background:var(--sk-soft)}.sk-cell.out .sk-cell-num{opacity:.45}.sk-cell.over{box-shadow:inset 0 0 0 2px var(--accent);background:var(--accent-soft)}.sk-cell-num{font-variant-numeric:tabular-nums;border-radius:50%;place-items:center;width:24px;height:24px;margin:0 0 2px 2px;font-size:12.5px;font-weight:500;display:grid}.sk-cell.today .sk-cell-num{background:var(--data);color:var(--primary-ink)}.sk-item.compact{border-radius:var(--radius-chip);gap:5px;padding:2px 5px}.sk-item.compact .sk-title{white-space:nowrap;font-size:12px;display:block}.sk-item.compact .sk-check{border-radius:4px;width:13px;height:13px}.sk-item.compact .sk-check.habit,.sk-item.compact .sk-check.milestone{border-radius:50%}.sk-item.compact .sk-check svg{width:9px;height:9px}.sk-item.compact .sk-bar{width:3px;min-height:14px;margin:0 2px}.sk-item.compact .sk-goal-dot{width:13px}.sk-item.compact .sk-goal-dot svg{width:12px;height:12px}.sk-time{color:var(--hk-text-2);font-variant-numeric:tabular-nums;flex-shrink:0;font-size:11px}.sk-more{color:var(--hk-text-2);padding:0 6px;font-size:11px}.sk-habit-sum{flex-wrap:wrap;gap:3px;margin-top:auto;padding:2px 5px;display:flex}.sk-habit-sum i{width:7px;height:7px;box-shadow:inset 0 0 0 1.5px var(--sk-c);border-radius:50%}.sk-habit-sum i.done{background:var(--sk-c)}.sk-week{grid-template-columns:repeat(7,minmax(0,1fr));gap:8px;display:grid}.sk-wcol{background:var(--hk-surface);border:1px solid var(--hk-border);border-radius:var(--radius-card);flex-direction:column;gap:2px;min-width:0;min-height:360px;padding:6px 4px;display:flex}.sk-wcol.over{box-shadow:inset 0 0 0 2px var(--accent);background:var(--accent-soft)}.sk-wcol h4{color:var(--hk-text-2);align-items:baseline;gap:6px;margin:0 0 6px;padding:0 6px;font-size:12px;font-weight:500;display:flex}.sk-wcol h4 b{color:var(--hk-text);font-variant-numeric:tabular-nums;font-size:18px;font-weight:600}.sk-wcol.today h4 b{color:var(--data)}.sk-wcol .sk-habits{gap:4px;margin-top:auto;padding:6px 2px 0}.sk-wcol .sk-habit{padding:2px 8px 2px 3px;font-size:12px}.sk-sheet-title{align-items:center;gap:8px;min-width:0;font-size:16px;display:flex}.sk-swatch{border-radius:4px;flex-shrink:0;width:12px;height:12px}.sk-form{margin-bottom:14px}.sk-quick{flex-wrap:wrap;gap:6px;display:flex}.sk-quick button{border-radius:var(--radius-control);background:var(--fill-2);color:inherit;padding:6px 12px;font-size:13px}.sk-when-row{gap:8px;display:flex}.sk-when-row input{background:var(--fill-2);min-width:0;color:inherit;border-radius:var(--radius-control);font:inherit;border:none;flex:1;padding:10px 12px}.sk-actions .primary{background:var(--primary);color:var(--primary-ink);font-weight:650}.sk-event-info p{align-items:flex-start;gap:8px;margin:0 0 10px;font-size:13.5px;display:flex}.sk-event-info svg{color:var(--text-2);flex-shrink:0;margin-top:2px}.sk-desc{white-space:pre-wrap;color:var(--text-2);max-height:40vh;overflow-y:auto}.settings-note{color:var(--positive);margin-top:10px;font-size:12.5px}.cal-row{gap:10px}.cal-color{cursor:pointer;border-radius:5px;flex-shrink:0;width:16px;height:16px;position:relative;overflow:hidden}.cal-color input{opacity:0;cursor:pointer;position:absolute;inset:0}.cal-err{color:var(--danger)}.cal-toggle input,.cal-check input{width:auto;height:auto;accent-color:var(--accent);flex:none}.cal-check{align-items:center;gap:8px;margin:6px 0;font-size:13px;display:flex}.cal-sub{color:var(--text-2);margin:22px 0 6px;font-size:13px;font-weight:600}.cal-refresh,.cal-actions{margin-top:10px}.cal-actions{flex-wrap:wrap;gap:8px;display:flex}.cal-refresh,.cal-actions button,.cal-connect,#settings-calendars>.btn-secondary{align-items:center;gap:6px;text-decoration:none;display:inline-flex!important}.cal-feed-opts{flex-wrap:wrap;gap:16px;margin-top:8px;display:flex}#settings-calendars button:disabled{opacity:.5;cursor:not-allowed}@media (width<=768px){.tasks-content.wide{padding:16px 10px 80px}.sk-nav h2{font-size:17px}.sk-filters{width:100%;margin-top:6px}.sk-month{border-radius:12px;margin-bottom:12px}.sk-wd{text-align:center;padding:6px 0;font-size:11px}.sk-cell{align-items:center;min-height:54px;padding:4px 0}.sk-cell-num{margin:0}.sk-cell.sel .sk-cell-num{box-shadow:inset 0 0 0 1.5px var(--accent)}.sk-cell.today.sel .sk-cell-num{box-shadow:0 0 0 2px var(--hk-surface), 0 0 0 3.5px var(--data)}.sk-dots{flex-wrap:wrap;justify-content:center;gap:3px;max-width:40px;display:flex}.sk-dots i{border-radius:50%;width:6px;height:6px}.sk-dots i.done{opacity:.35}.sk-dots i.hb{box-shadow:inset 0 0 0 1.5px var(--t-habits);background:0 0}.sk-dots i.hb.done{background:var(--t-habits);opacity:1}.sk-item{padding:9px 8px}.sk-check{width:22px;height:22px}}.sk-check.task{color:var(--primary-ink);border-color:var(--control)}.sk-filters button{color:var(--text-3);box-shadow:inset 0 0 0 1px var(--border);background:0 0}.sk-filters button.on{background:var(--active);color:var(--text);box-shadow:none}.hk-chips button:hover:not(.on){background:var(--hover);color:var(--text)}.sk-check.task.on{background:var(--primary);border-color:var(--primary)}
