:root{--bg: #EEF1F4;--surface: #FFFFFF;--surface-2: #F5F7FA;--well: #E6EAEF;--fg: #1B2230;--fg-2: #4F5A6B;--mute: #8D97A6;--line: #E1E6EC;--line-2: #CBD3DC;--grid: #E6EAEF;--accent: #2F8F6E;--accent-fg: #FFFFFF;--accent-tint: #E6F3EE;--ink: #1B2230;--ink-fg: #FFFFFF;--r: 12px;--r-lg: 16px;--pill: 999px;--shadow: 0 1px 2px rgba(27, 34, 48, .05), 0 8px 24px rgba(27, 34, 48, .06);--shadow-lift: 0 2px 4px rgba(27, 34, 48, .06), 0 14px 32px rgba(27, 34, 48, .1);--shadow-pop: 0 4px 8px rgba(27, 34, 48, .06), 0 24px 48px rgba(27, 34, 48, .14);--sans: "Manrope", system-ui, -apple-system, "Segoe UI", sans-serif;--mono: var(--sans);--cell: 56px;--fs: 1.08;--fast: .12s;--base: .18s;--slow: .36s;--ease: cubic-bezier(.2, .8, .2, 1);--t-fast: var(--fast);--t: var(--base);--t-slow: var(--slow);color-scheme:light}:root[data-accent=blue]{--accent: #2A5F94;--accent-tint: #E8F0F9}:root[data-accent=red]{--accent: #B5423A;--accent-tint: #F8E9E7}:root[data-accent=beige]{--accent: #9A7B4F;--accent-tint: #F4EEE4}:root[data-accent=orange]{--accent: #C4651E;--accent-tint: #FBEDE1}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{font-family:var(--sans);font-size:calc(14px * var(--fs));line-height:1.45;color:var(--fg);background:var(--bg);-webkit-font-smoothing:antialiased;overflow:hidden}button,input,textarea,select{font:inherit;color:inherit}button{cursor:pointer;border:0;background:none;padding:0}select{background:var(--surface)}textarea{resize:none}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}::selection{background:var(--accent-tint)}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-thumb{background:var(--line-2);border-radius:var(--pill);border:2px solid transparent;background-clip:padding-box}::-webkit-scrollbar-track{background:transparent}svg{display:block}kbd{font-family:var(--mono);font-size:calc(10.5px * var(--fs));color:var(--mute);background:var(--well);padding:1px 6px;border-radius:5px}body.dragging,body.dragging *{-webkit-user-select:none!important;user-select:none!important;cursor:grabbing!important}.app{height:100%;display:flex;flex-direction:column;position:relative;overflow:clip;padding-top:60px}.content{flex:1;min-height:0;overflow-y:auto;padding:8px 28px 80px;scrollbar-gutter:stable}.content.narrow{width:100%;padding-left:max(28px,calc((100% - 760px)/2));padding-right:max(28px,calc((100% - 760px)/2))}.content::-webkit-scrollbar{width:12px}.content::-webkit-scrollbar-thumb{background:var(--line-2);border-radius:var(--pill);border:4px solid var(--bg)}.content::-webkit-scrollbar-track{background:transparent}.page-label{font-size:calc(13.5px * var(--fs));color:var(--mute);font-weight:600;padding:4px 6px 14px}.page-row{display:flex;align-items:center;gap:2px;padding-bottom:8px}.page-row .page-label{padding:0 6px}.crumb-row{padding:0 0 14px}.chrome{position:fixed;top:0;left:0;right:0;height:60px;z-index:70;display:flex;align-items:center;padding:0 28px;pointer-events:none;transform:translateY(calc(-100% - 40px));transition:transform var(--base) var(--ease)}.chrome.shown{transform:none}body.nav-open .chrome{transform:translateY(calc(-100% - 40px))!important}.chrome .brand{display:none}.chrome .tabs{pointer-events:auto;position:absolute;left:50%;top:12px;transform:translate(-50%);display:flex;gap:2px;padding:4px;background:var(--surface);border-radius:var(--pill);box-shadow:var(--shadow)}.chrome .tab{padding:7px 16px;font-size:calc(13px * var(--fs));color:var(--mute);font-weight:600;border-radius:var(--pill);display:flex;align-items:center;transition:background var(--fast),color var(--fast);white-space:nowrap}.chrome .tab:hover{color:var(--fg);background:var(--surface-2)}.chrome .tab.active{color:var(--ink-fg);background:var(--ink)}.chrome .tab .dot{width:5px;height:5px;border-radius:50%;background:var(--accent);margin-left:7px;flex:none}.chrome-right{pointer-events:auto;margin-left:auto;display:flex;align-items:center;gap:2px;background:var(--surface);border-radius:var(--pill);box-shadow:var(--shadow);padding:3px}.chrome .ib{color:var(--fg-2)}.chrome .ib:hover,.chrome .ib.active{background:var(--well);color:var(--fg)}.search{display:flex;align-items:center;gap:6px;padding:0 10px;height:34px;border-radius:var(--pill);color:var(--mute);transition:background var(--fast),color var(--fast)}.search:hover,.search:focus-within,.search.on{background:var(--well);color:var(--fg)}.search input{width:0;border:none;outline:none;background:transparent;font-size:calc(13px * var(--fs));color:var(--fg);transition:width var(--base) var(--ease);padding:0}.search:focus-within input,.search.on input{width:160px}.search input::placeholder{color:var(--mute)}.search .clear{display:grid;place-items:center;color:var(--mute);width:18px;height:18px;border-radius:50%}.search .clear:hover{color:var(--fg);background:var(--line)}.bar{height:60px;flex:none;display:flex;align-items:center;gap:4px;padding:0 28px}.bar .spacer{flex:1}.bar .right{display:flex;align-items:center;gap:2px}.ib{width:34px;height:34px;display:grid;place-items:center;color:var(--fg-2);border-radius:var(--pill);transition:background var(--fast),color var(--fast)}.ib:hover{background:#1b22300f;color:var(--fg)}.ib svg{width:16px;height:16px}.ib.primary{background:var(--accent);color:var(--accent-fg);margin-left:6px}.ib.primary:hover{background:var(--ink);color:var(--ink-fg)}.ib.sm{width:26px;height:26px}.ib.cooling{opacity:.35;cursor:default}.ib:disabled{opacity:.3;cursor:default}.btn{display:inline-flex;align-items:center;gap:6px;padding:9px 18px;font-size:calc(13px * var(--fs));font-weight:700;border-radius:var(--pill);border:1px solid var(--line-2);background:var(--surface);color:var(--fg);transition:background var(--fast),border-color var(--fast),color var(--fast),opacity var(--fast)}.btn:hover{border-color:var(--fg)}.btn:disabled{opacity:.3;cursor:not-allowed}.btn.primary{background:var(--accent);color:var(--accent-fg);border-color:var(--accent)}.btn.primary:hover{background:var(--ink);border-color:var(--ink);color:var(--ink-fg)}.btn.primary:disabled{background:var(--accent);border-color:var(--accent);color:var(--accent-fg)}.btn.ghost{border-color:transparent;background:transparent;color:var(--mute)}.btn.ghost:hover{color:var(--fg);border-color:transparent}.btn.danger{color:var(--fg);border-color:var(--line-2)}.btn.danger:hover{background:var(--ink);color:var(--ink-fg);border-color:var(--ink)}.btn.sm{padding:6px 12px;font-size:calc(12.5px * var(--fs))}.crumbs{display:flex;align-items:center;font-size:calc(13.5px * var(--fs));min-width:0;flex-wrap:nowrap;overflow:hidden}.crumbs .c{display:inline-block;vertical-align:middle;padding:5px 8px;color:var(--mute);white-space:nowrap;max-width:240px;overflow:hidden;text-overflow:ellipsis;border-radius:8px;font-weight:500;flex:none;transition:color var(--fast),background var(--fast)}.crumbs button.c:hover{color:var(--fg);background:#1b22300d}.crumbs .c.cur{color:var(--fg);font-weight:700;max-width:560px;flex:0 1 auto;min-width:60px}.crumbs .c.muted{color:var(--mute);font-weight:500}.crumbs .crumb{display:inline-flex;align-items:center;min-width:0}.crumbs .sep{padding:0 2px;color:var(--line-2)}.start-wrap{display:flex;justify-content:center;padding:18px 0 26px}.start{display:inline-flex;align-items:center;gap:10px;padding:12px 30px;background:var(--accent);color:var(--accent-fg);font-size:calc(14px * var(--fs));font-weight:700;border-radius:var(--pill);box-shadow:var(--shadow);transition:background var(--fast),transform var(--fast) var(--ease),box-shadow var(--fast)}.start:hover{background:var(--ink);transform:translateY(-1px);box-shadow:var(--shadow-lift)}.start:active{transform:none}.start svg{width:14px;height:14px}.list{display:flex;flex-direction:column;gap:8px}.row{display:flex;align-items:center;gap:16px;padding:15px 18px;cursor:pointer;position:relative;background:var(--surface);border-radius:var(--r);box-shadow:var(--shadow);transition:transform var(--fast),box-shadow var(--fast),opacity var(--slow) var(--ease);animation:rise var(--base) var(--ease) both}.row:hover{transform:translateY(-1px);box-shadow:var(--shadow-lift)}.row:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.row.prio{opacity:var(--fade, 1)}.list.fading:hover .row.prio{opacity:min(1,calc(var(--fade, 1) + .25))}.list.fading .row.prio:hover,.list.fading .row.prio:hover+.row.prio,.list.fading .row.prio:has(+.row.prio:hover){opacity:1}.row.dragging{opacity:.35!important}.row.drop-before:before,.row.drop-after:after{content:"";position:absolute;left:18px;right:18px;height:3px;background:var(--accent);border-radius:var(--pill)}.row.drop-before:before{top:0}.row.drop-after:after{bottom:0}.row .rank{font-family:var(--mono);font-size:calc(12px * var(--fs));color:var(--mute);width:22px;flex:none}.row .body{flex:1;min-width:0;display:flex;align-items:baseline;gap:12px}.row .rtitle{font-size:calc(15px * var(--fs));font-weight:600;letter-spacing:-.01em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.row .rtitle.empty{color:var(--mute);font-style:italic;font-weight:500}.row .rpath{font-size:calc(12.5px * var(--fs));color:var(--mute);font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:inline-flex;align-items:center;gap:7px}.row .body .rpath:before{content:"";width:7px;height:7px;border-radius:50%;background:var(--accent);opacity:.9;flex:none}.row .rpath b{color:var(--fg-2);font-weight:600}.row .pin{color:var(--accent);display:inline-flex;flex:none}.row .pin svg{width:11px;height:11px}.row .score{font-family:var(--mono);font-size:calc(12px * var(--fs));color:var(--mute);width:44px;text-align:right;flex:none}.row .took{font-size:calc(12.5px * var(--fs));font-weight:500;color:var(--mute);flex:none}.row .took.over{color:var(--fg)}.row .folder{color:var(--mute);display:inline-flex;flex:none}.row .folder.done{color:var(--accent)}.row .folder.pick{color:var(--accent);width:30px;height:30px;margin:-5px 0 -5px -7px;border-radius:8px;align-items:center;justify-content:center;transition:background var(--fast),transform var(--fast) var(--ease)}.row .folder.pick:hover{background:var(--accent-tint);transform:scale(1.08)}.row .folder.pick svg{width:17px;height:17px}.row .name{font-size:calc(15px * var(--fs));font-weight:600;letter-spacing:-.01em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0;max-width:100%;padding:4px 8px;margin:-4px -8px;border-radius:8px;text-align:left;transition:background var(--fast)}.row .name:hover,.row .name:focus-visible{background:var(--accent-tint)}.row .name-in{font-size:calc(15px * var(--fs));font-weight:600;letter-spacing:-.01em;width:min(100%,380px);padding:4px 8px;margin:-4px -8px;border:0;border-radius:8px;background:var(--well);outline:none;box-shadow:inset 0 0 0 2px var(--accent)}.row .quiet{font-size:calc(12.5px * var(--fs));font-weight:500;color:var(--mute);min-width:52px;text-align:right;flex:none}.row .quiet:before{display:none}.row .rpath.reason{flex:0 1 auto;min-width:0;max-width:45%}.row:has(.reason) .body{flex:1 1 auto;min-width:45%}.row .rpath.reason:before{display:none}.row.add{background:transparent;box-shadow:none;color:var(--mute);padding:9px 18px;font-size:calc(13px * var(--fs));font-weight:600}.row.add:hover{color:var(--fg);transform:none;background:#1b22300a}.section-label{font-size:calc(12.5px * var(--fs));font-weight:700;color:var(--mute);padding:20px 6px 8px}.section-label.muted{font-weight:500}.empty-state{padding:64px 0;text-align:center;color:var(--mute);font-size:calc(13.5px * var(--fs));line-height:1.8}.hint-keys{display:inline-block;margin-top:10px;font-size:calc(12px * var(--fs));color:var(--mute)}@keyframes rise{0%{opacity:0;transform:translateY(4px)}to{opacity:var(--fade, 1);transform:none}}@keyframes fade{0%{opacity:0}to{opacity:1}}@keyframes pop{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:none}}.fade-in{animation:fade var(--base) ease-out both}.ctx{position:fixed;z-index:1000;min-width:210px;background:var(--surface);border-radius:var(--r);padding:6px;box-shadow:var(--shadow-pop);animation:pop var(--fast) ease-out both}.ctx-item{display:flex;align-items:center;gap:10px;width:100%;text-align:left;padding:8px 10px;font-size:calc(13px * var(--fs));font-weight:500;border-radius:8px;transition:background var(--fast)}.ctx-item svg{width:14px;height:14px;color:var(--mute)}.ctx-item:hover{background:var(--surface-2);color:var(--fg)}.ctx-item:hover svg{color:var(--accent)}.ctx-item.danger:hover svg{color:var(--fg)}.ctx-item .hint{margin-left:auto;color:var(--mute);font-size:calc(11px * var(--fs));padding-left:14px;font-family:var(--mono)}.ctx-sep{height:1px;background:var(--line);margin:6px 4px}.quick{position:fixed;z-index:1000;width:320px;background:var(--surface);padding:4px 14px 6px;border-radius:var(--r);box-shadow:var(--shadow-pop),0 0 0 2px var(--accent);animation:pop var(--fast) ease-out both}.quick input{width:100%;border:0;outline:none;padding:9px 0;background:transparent;font-size:calc(14px * var(--fs));font-weight:500}.quick-target{display:flex;align-items:center;gap:4px;padding:0 0 4px;font-size:calc(12px * var(--fs));color:var(--mute)}.quick-target .sep{color:var(--line-2)}.quick-target select{-moz-appearance:none;appearance:none;-webkit-appearance:none;border:none;background:transparent;padding:2px 6px;font-size:calc(12px * var(--fs));color:var(--fg-2);font-weight:600;cursor:pointer;max-width:150px;text-overflow:ellipsis;border-radius:6px}.quick-target select:hover,.quick-target select:focus{background:var(--well);color:var(--fg);outline:none}.pop{position:fixed;z-index:1001;width:300px;background:var(--surface);border-radius:var(--r);padding:14px;box-shadow:var(--shadow-pop);animation:pop var(--fast) ease-out both;display:flex;flex-direction:column;gap:10px}.pop .pop-label{font-size:calc(12.5px * var(--fs));font-weight:700;color:var(--fg-2)}.pop .pop-msg{font-size:calc(13.5px * var(--fs));line-height:1.45}.pop input{width:100%;border:0;border-bottom:1px solid var(--line);outline:none;padding:7px 0;background:transparent;transition:border-color var(--fast)}.pop input:focus{border-color:var(--accent)}.pop .pop-actions{display:flex;justify-content:flex-end;gap:6px}.toast{position:fixed;left:50%;bottom:72px;transform:translate(-50%);z-index:900;background:var(--ink);color:var(--ink-fg);padding:8px 8px 8px 16px;border-radius:var(--pill);font-size:calc(13px * var(--fs));font-weight:600;animation:toast 2s var(--ease) both;white-space:nowrap;display:flex;align-items:center;gap:12px;box-shadow:var(--shadow-pop)}.toast>span:only-child{padding-right:8px}.toast button{background:#ffffff24;color:var(--ink-fg);padding:5px 12px;border-radius:var(--pill);font-weight:700;font-size:calc(12.5px * var(--fs));transition:background var(--fast)}.toast button:hover{background:var(--accent)}@keyframes toast{0%{opacity:0;transform:translate(-50%,10px)}10%{opacity:1;transform:translate(-50%)}85%{opacity:1}to{opacity:0}}.task{flex:1;min-height:0;display:flex;flex-direction:column;padding:0}.task .head{display:flex;flex-direction:column;align-items:center;text-align:center;gap:4px;padding:4px 28px 14px;transition:padding var(--slow) var(--ease)}.task.closed .head{padding-top:14vh}.task h1{margin:0;max-width:760px;overflow-wrap:anywhere;font-size:calc(20px * var(--fs));font-weight:700;letter-spacing:-.015em;line-height:1.25;transition:font-size var(--base) var(--ease)}.task.closed h1{margin-left:auto;margin-right:auto}.task.closed h1{font-size:calc(26px * var(--fs))}.task .desc{margin:0;font-size:calc(13.5px * var(--fs));color:var(--fg-2);max-width:70ch;line-height:1.55;white-space:pre-wrap}.canvas-toggle{display:inline-flex;align-items:center;gap:6px;margin-top:12px;padding:7px 14px 7px 10px;font-size:calc(12.5px * var(--fs));font-weight:600;color:var(--fg-2);background:var(--surface);border-radius:var(--pill);box-shadow:var(--shadow);transition:background var(--fast),color var(--fast),box-shadow var(--fast),transform var(--fast) var(--ease)}.canvas-toggle:hover{color:var(--fg);box-shadow:var(--shadow-lift);transform:translateY(-1px)}.canvas-toggle svg{width:14px;height:14px}.canvas-toggle.has:not(.on):after{content:"";width:6px;height:6px;border-radius:50%;background:var(--accent);margin-left:2px}.task.open .canvas-toggle{margin-top:8px}.timer{display:inline-flex;align-items:center;gap:8px;font-family:var(--mono);font-size:calc(13px * var(--fs));font-weight:500;color:var(--fg);padding:6px 12px;border-radius:var(--pill);font-variant-numeric:tabular-nums;transition:background var(--fast),color var(--fast)}.timer:hover{background:#1b22300f}.timer svg{width:12px;height:12px;opacity:.6}.timer .st{font-family:var(--sans);font-size:calc(11px * var(--fs));color:var(--mute);font-weight:600}.timer.paused{color:var(--mute)}.timer.over{color:var(--accent-fg);background:var(--ink)}.timer.over .st{color:var(--accent-fg);opacity:.7}.timer.done{color:var(--accent)}.waiting-chip{display:inline-flex;align-items:center;gap:6px;font-size:calc(12.5px * var(--fs));font-weight:600;color:var(--fg-2);padding:6px 12px;border-radius:var(--pill);background:var(--well);transition:background var(--fast),color var(--fast)}.waiting-chip:hover{background:var(--ink);color:var(--ink-fg)}.waiting-chip svg{width:13px;height:13px}.canvas-wrap{flex:1;min-height:0;position:relative;margin:0 28px;background:var(--surface);border-radius:var(--r-lg);box-shadow:var(--shadow);animation:rise var(--base) var(--ease) both}.canvas-outer{position:absolute;top:0;right:0;bottom:0;left:0;overflow:auto;border-radius:var(--r-lg);-webkit-user-select:none;user-select:none;padding:8px}.cell-target{position:absolute;background:var(--accent-tint);box-shadow:inset 0 0 0 2px var(--accent);border-radius:6px;pointer-events:none;z-index:1;animation:pop var(--fast) ease-out both}.canvas-sized{position:relative}.canvas-grid{position:absolute;left:0;top:0;transform-origin:0 0;background-image:linear-gradient(to right,var(--grid) 1px,transparent 1px),linear-gradient(to bottom,var(--grid) 1px,transparent 1px);background-size:var(--cell) var(--cell);background-position:-1px -1px}.canvas-hint{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;color:var(--mute);font-size:calc(13px * var(--fs));pointer-events:none}.zoomctl{position:absolute;right:14px;bottom:12px;display:flex;align-items:center;background:var(--surface);border-radius:var(--pill);box-shadow:var(--shadow);padding:2px;opacity:0;transition:opacity var(--base);z-index:5}.canvas-wrap:hover .zoomctl{opacity:1}.zoomctl button{height:26px;min-width:26px;padding:0 8px;display:grid;place-items:center;color:var(--fg-2);font-family:var(--mono);font-size:calc(11px * var(--fs));border-radius:var(--pill)}.zoomctl button:hover{background:var(--well);color:var(--fg)}.zoomctl .pct{min-width:46px}.foot{min-height:44px;display:flex;align-items:center;flex-wrap:wrap;gap:6px;padding:10px 28px 14px;flex:none}.task.closed .foot{justify-content:center;padding-top:18px}.tag{font-size:calc(12px * var(--fs));color:var(--mute);background:var(--well);padding:4px 10px;border-radius:var(--pill);font-weight:500;white-space:nowrap}.tag b{color:var(--fg-2);font-family:var(--mono);font-size:calc(11.5px * var(--fs));font-weight:500}.tag.p{background:var(--accent-tint);color:var(--accent)}.node{position:absolute;background:var(--surface);border:1px solid var(--line);border-radius:var(--r);display:flex;flex-direction:column;overflow:visible;box-shadow:var(--shadow);cursor:grab;transition:left .08s,top .08s,width .08s,height .08s,border-color var(--fast),box-shadow var(--fast)}.node:hover{border-color:var(--line-2);box-shadow:var(--shadow-lift)}.node.live{transition:none;border-color:var(--accent);box-shadow:var(--shadow-pop);z-index:5;cursor:grabbing}.node.editing{border-color:var(--accent);cursor:text}.node .x{position:absolute;top:6px;right:6px;width:18px;height:18px;display:grid;place-items:center;color:var(--mute);background:var(--surface);border-radius:50%;opacity:0;transition:opacity var(--fast),background var(--fast),color var(--fast);z-index:4}.node:hover .x{opacity:1}.node .x:hover{background:var(--well);color:var(--fg)}.node .x svg{width:11px;height:11px}.node img{width:100%;height:100%;object-fit:cover;display:block;pointer-events:none;border-radius:calc(var(--r) - 1px)}.node .img-empty{height:100%;display:grid;place-items:center;color:var(--mute);font-size:calc(12px * var(--fs))}.node .check{flex:1;min-height:0;overflow:auto;padding:8px 8px 6px;display:flex;flex-direction:column;gap:1px}.node .ci{display:flex;align-items:flex-start;gap:8px;padding:4px 4px 4px 5px;border-radius:6px;min-height:26px;flex:none}.node .ci .box{margin-top:2px}.node .ci:hover{background:var(--surface-2)}.node .ci .box{width:15px;height:15px;border-radius:4px;border:1.5px solid var(--line-2);display:grid;place-items:center;color:var(--accent-fg);flex:none;transition:background var(--fast),border-color var(--fast)}.node .ci .box:hover{border-color:var(--accent)}.node .ci.done .box{background:var(--accent);border-color:var(--accent)}.node .ci .box svg{width:10px;height:10px}.node .ci .txt{flex:1;min-width:0;font-size:calc(13.5px * var(--fs));line-height:1.4;overflow-wrap:anywhere;cursor:text}.node .ci .txt.empty{color:var(--mute)}.node .ci.done .txt{text-decoration:line-through;color:var(--accent)}.node .ci input{flex:1;min-width:0;border:0;border-bottom:1px solid var(--accent);outline:none;background:transparent;font-size:calc(13.5px * var(--fs));padding:0 0 1px;font-family:inherit}.node .ci .rm{width:18px;height:18px;border-radius:50%;display:grid;place-items:center;color:var(--mute);opacity:0;flex:none;transition:opacity var(--fast),background var(--fast),color var(--fast)}.node .ci:hover .rm{opacity:1}.node .ci .rm:hover{background:var(--well);color:var(--fg)}.node .ci .rm svg{width:10px;height:10px}.node .ci-add{align-self:flex-start;flex:none;display:inline-flex;align-items:center;margin:2px 0 0 3px;padding:4px 8px;color:var(--mute);border-radius:var(--pill);opacity:.45;transition:opacity var(--fast),background var(--fast),color var(--fast)}.node:hover .ci-add{opacity:1}.node .ci-add:hover{background:var(--well);color:var(--fg)}.node .ci-add svg{width:12px;height:12px}.rt{flex:1;min-height:0;overflow:auto;padding:8px 12px 10px;outline:none;font-size:calc(13px * var(--fs));line-height:1.55;cursor:text;-webkit-user-select:text;user-select:text;border-radius:0 0 var(--r) var(--r)}.rt:empty:before{content:attr(data-placeholder);color:var(--mute);pointer-events:none}.rt p,.rt div{margin:0}.rt ul,.rt ol{margin:2px 0;padding-left:18px}.rt h1{margin:6px 0 2px;font-size:calc(17px * var(--fs));line-height:1.25;font-weight:700;letter-spacing:-.015em}.rt h2{margin:6px 0 2px;font-size:calc(15px * var(--fs));line-height:1.3;font-weight:700;letter-spacing:-.01em}.rt h3{margin:4px 0 2px;font-size:calc(13.5px * var(--fs));font-weight:700}.rt h4{margin:4px 0 2px;font-size:calc(12.5px * var(--fs));font-weight:700;color:var(--fg-2)}.rt h5,.rt h6{margin:4px 0 2px;font-size:calc(12px * var(--fs));font-weight:700;color:var(--mute)}.rt a{color:var(--accent)}.rt blockquote{margin:4px 0;padding-left:10px;border-left:2px solid var(--line-2);color:var(--fg-2)}.rt pre{margin:4px 0;padding:6px 8px;background:var(--well);border-radius:8px;font-family:var(--mono);font-size:calc(12px * var(--fs));white-space:pre-wrap}.rt code{font-family:var(--mono);font-size:calc(12px * var(--fs));background:var(--well);padding:0 4px;border-radius:5px}.node .rt{cursor:grab;-webkit-user-select:none;user-select:none;scrollbar-width:thin;scrollbar-color:var(--line-2) transparent}.node .rt::-webkit-scrollbar{width:6px;height:6px}.node .rt::-webkit-scrollbar-thumb{background:var(--line-2);border-radius:3px}.node.live .rt{cursor:grabbing}.node .pt{flex:1;min-height:0;overflow:auto;padding:8px 12px 10px;font-family:var(--mono);font-size:calc(12.5px * var(--fs));line-height:1.55;white-space:pre-wrap;word-break:break-word;cursor:grab}.node .pt .ph{color:var(--mute);font-family:var(--sans)}.node.live .pt{cursor:grabbing}.node .pt-edit{flex:1;min-height:0;width:100%;border:none;outline:none;padding:8px 12px 10px;background:transparent;font-family:var(--mono);font-size:calc(12.5px * var(--fs));line-height:1.55;resize:none;border-radius:0 0 var(--r) var(--r)}.edge{position:absolute;z-index:3}.edge:after{content:"";position:absolute;background:var(--accent);opacity:0;transition:opacity var(--fast);border-radius:var(--pill)}.edge.n{left:10px;right:10px;top:-5px;height:10px;cursor:ns-resize}.edge.s{left:10px;right:10px;bottom:-5px;height:10px;cursor:ns-resize}.edge.w{top:10px;bottom:10px;left:-5px;width:10px;cursor:ew-resize}.edge.e{top:10px;bottom:10px;right:-5px;width:10px;cursor:ew-resize}.edge.n:after,.edge.s:after{left:50%;top:4px;width:28px;height:3px;transform:translate(-50%)}.edge.w:after,.edge.e:after{top:50%;left:4px;width:3px;height:28px;transform:translateY(-50%)}.edge:hover:after{opacity:1}.corner{position:absolute;width:16px;height:16px;z-index:4}.corner.nw{left:-6px;top:-6px;cursor:nwse-resize}.corner.se{right:-6px;bottom:-6px;cursor:nwse-resize}.corner.ne{right:-6px;top:-6px;cursor:nesw-resize}.corner.sw{left:-6px;bottom:-6px;cursor:nesw-resize}.corner:after{content:"";position:absolute;left:50%;top:50%;width:9px;height:9px;margin:-4.5px 0 0 -4.5px;border-radius:50%;background:var(--surface);border:2px solid var(--accent);opacity:0;transition:opacity var(--fast)}.corner:hover:after{opacity:1}.node:has(.corner.nw:hover) .edge.n:after,.node:has(.corner.nw:hover) .edge.w:after,.node:has(.corner.ne:hover) .edge.n:after,.node:has(.corner.ne:hover) .edge.e:after,.node:has(.corner.se:hover) .edge.s:after,.node:has(.corner.se:hover) .edge.e:after,.node:has(.corner.sw:hover) .edge.s:after,.node:has(.corner.sw:hover) .edge.w:after{opacity:1}.pad-trigger{position:absolute;left:0;right:0;bottom:0;height:30px;z-index:40;display:flex;justify-content:center;align-items:flex-end;pointer-events:none}.pad-trigger button{pointer-events:none;width:48px;height:24px;border-radius:var(--pill) var(--pill) 0 0;background:var(--ink);color:var(--ink-fg);display:grid;place-items:center;opacity:0;transform:translateY(6px);transition:opacity var(--base),transform var(--base),background var(--fast)}.pad-trigger button svg{width:14px;height:14px}.pad-trigger button.near,.pad-trigger button:focus-visible{pointer-events:auto;opacity:1;transform:none}.pad-trigger button:hover{background:var(--accent)}.notepad{position:absolute;top:0;right:0;bottom:0;left:0;z-index:50;background:var(--surface);transform:translateY(100%);transition:transform var(--slow) var(--ease);display:flex;flex-direction:column;visibility:hidden}.notepad.open{transform:none;visibility:visible}.notepad .pad-top{height:52px;flex:none;position:relative;display:flex;align-items:flex-start;justify-content:center}.notepad .pad-top .ptitle{position:absolute;left:28px;top:18px;font-size:calc(12.5px * var(--fs));color:var(--mute);font-weight:600}.notepad .pad-top .pcount{position:absolute;right:28px;top:19px;font-family:var(--mono);font-size:calc(11px * var(--fs));color:var(--mute)}.notepad .pad-top button{width:48px;height:24px;border-radius:0 0 var(--pill) var(--pill);background:var(--ink);color:var(--ink-fg);display:grid;place-items:center;opacity:0;transition:opacity var(--base),background var(--fast)}.notepad .pad-top button svg{width:14px;height:14px}.notepad .pad-top:hover button,.notepad .pad-top button:focus-visible{opacity:1}.notepad .pad-top button:hover{background:var(--accent)}.notepad textarea{flex:1;width:min(86ch,100% - 56px);margin:0 auto 24px;padding:20px 4px;border:none;outline:none;background:transparent;font-family:var(--mono);font-size:calc(14px * var(--fs));line-height:1.8;color:var(--fg);overflow-y:scroll}.notepad textarea::placeholder{color:var(--mute)}.editor{display:flex;flex-direction:column;gap:22px;background:var(--surface);border-radius:var(--r-lg);box-shadow:var(--shadow);padding:22px 26px 24px}.editor .title-in{width:100%;border:0;border-bottom:1px solid var(--line);outline:none;background:transparent;font-size:calc(20px * var(--fs));font-weight:700;letter-spacing:-.015em;padding:7px 0;transition:border-color var(--fast)}.editor .title-in:focus{border-color:var(--accent)}.editor .title-in::placeholder,.editor .desc-in::placeholder{color:var(--mute)}.editor .desc-in{width:100%;border:0;border-bottom:1px solid var(--line);outline:none;background:transparent;font-size:calc(14px * var(--fs));line-height:1.5;color:var(--fg-2);min-height:40px;padding:7px 0;margin-top:4px;transition:border-color var(--fast)}.editor .desc-in:focus{border-color:var(--accent)}.editor .fields{display:flex;flex-direction:column;gap:20px}.field{display:flex;flex-direction:column;gap:8px}.field>label{font-size:calc(12.5px * var(--fs));color:var(--mute);font-weight:600}.slider{display:flex;flex-direction:column;gap:8px;-webkit-user-select:none;user-select:none;outline:none}.slider:focus-visible .track{box-shadow:0 0 0 2px var(--accent)}.slider .sl-head{display:flex;align-items:baseline;gap:8px;font-size:calc(12.5px * var(--fs))}.slider .sl-head .k{color:var(--mute);font-weight:600}.slider .sl-head .v{color:var(--fg);font-weight:700}.slider .sl-head .v.unset{color:var(--mute);font-weight:500}.slider .track{position:relative;height:24px;background:var(--well);border-radius:var(--pill);cursor:pointer;touch-action:none}.slider .fill{position:absolute;left:0;top:0;bottom:0;z-index:1;background:var(--accent);border-radius:var(--pill);transition:width var(--base) var(--ease)}.slider .dot{position:absolute;top:50%;width:4px;height:4px;margin:-2px 0 0 -2px;border-radius:50%;background:var(--line-2)}.slider .thumb{position:absolute;z-index:2;top:3px;width:18px;height:18px;margin-left:-9px;border-radius:50%;background:var(--surface);box-shadow:0 1px 3px #1b223047;transition:left var(--base) var(--ease)}.slider.unset .thumb{opacity:0}.slider.unset .fill{width:0!important}.slider.live .thumb,.slider.live .fill{transition:none}.slider .ends{display:flex;justify-content:space-between;font-size:calc(11px * var(--fs));color:var(--mute)}.est{display:flex;gap:6px;align-items:center;flex-wrap:wrap}.est input{width:64px;padding:6px 0;border:0;border-bottom:1px solid var(--line);outline:none;background:transparent;font-family:var(--mono);font-size:calc(13px * var(--fs));margin-right:6px;transition:border-color var(--fast)}.est input:focus{border-color:var(--accent)}.est .chip{font-family:var(--mono);font-size:calc(11.5px * var(--fs));color:var(--fg-2);background:var(--well);padding:4px 9px;border-radius:var(--pill);transition:background var(--fast),color var(--fast)}.est .chip:hover,.est .chip.on{background:var(--ink);color:var(--ink-fg)}.toggle{display:flex;align-items:center;gap:10px;cursor:pointer;-webkit-user-select:none;user-select:none;color:var(--fg-2);font-size:calc(13px * var(--fs));font-weight:500}.toggle .sw{width:32px;height:18px;border-radius:var(--pill);background:var(--line-2);position:relative;transition:background var(--base);flex:none}.toggle .sw:after{content:"";position:absolute;top:2px;left:2px;width:14px;height:14px;border-radius:50%;background:var(--surface);transition:transform var(--base) var(--ease)}.toggle.on .sw{background:var(--accent)}.toggle.on .sw:after{transform:translate(14px)}.commit-bar{display:flex;align-items:center;gap:8px;padding-top:4px}.commit-bar .btn:last-child{margin-left:auto}.where{position:relative;margin-bottom:-6px}.where-btn{display:inline-flex;align-items:center;gap:2px;padding:4px 8px;margin-left:-8px;font-size:calc(12.5px * var(--fs));color:var(--mute);font-weight:500;border-radius:8px;transition:background var(--fast),color var(--fast);max-width:100%}.where-btn:hover{background:#1b22300d;color:var(--fg)}.where-btn .seg{white-space:nowrap}.where-btn .seg.last{color:var(--fg-2);font-weight:600}.where-btn .sep{color:var(--line-2);padding:0 5px}.where-btn .caret{display:inline-flex;margin-left:2px}.where-btn .caret svg{width:12px;height:12px}.picker{position:absolute;left:-8px;top:100%;z-index:30;width:340px;background:var(--surface);border-radius:var(--r);box-shadow:var(--shadow-pop);animation:pop var(--fast) ease-out both;overflow:hidden}.picker input{width:100%;border:none;border-bottom:1px solid var(--line);outline:none;padding:10px 14px;font-size:calc(13px * var(--fs))}.picker-list{max-height:320px;overflow:auto;padding:6px}.picker-row{display:flex;align-items:center;gap:8px;width:100%;text-align:left;padding:7px 10px;font-size:calc(13px * var(--fs));color:var(--fg-2);border-radius:8px;transition:background var(--fast)}.picker-row:hover{background:var(--surface-2);color:var(--fg)}.picker-row.k-folder{font-weight:600;color:var(--fg)}.picker-row.k-root{font-weight:600;color:var(--fg-2)}.picker-row.current{color:var(--accent)}.picker-row .ic{display:inline-flex;color:var(--mute)}.picker-row .ic svg{width:14px;height:14px}.picker-row .lbl{flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.picker-row .hint{font-size:calc(11px * var(--fs));color:var(--mute)}.picker-empty{padding:12px;font-size:calc(12.5px * var(--fs));color:var(--mute)}.settings{display:flex;flex-direction:column;gap:12px;max-width:640px}.settings section{background:var(--surface);border-radius:var(--r-lg);box-shadow:var(--shadow);padding:22px 24px}.settings h2{font-size:calc(14px * var(--fs));font-weight:700;margin:0 0 4px}.settings p{color:var(--mute);font-size:calc(13px * var(--fs));margin:0 0 14px;max-width:60ch;line-height:1.5}.settings p code{font-family:var(--mono);color:var(--fg);padding:1px 6px;background:var(--well);border-radius:6px;font-size:calc(12px * var(--fs))}.formula-input{width:100%;font-family:var(--mono);font-size:calc(15px * var(--fs));padding:12px 14px;background:var(--bg);border:0;border-radius:10px;outline:none;color:var(--fg);transition:box-shadow var(--fast)}.formula-input:focus{box-shadow:0 0 0 2px var(--accent)}.formula-input.bad{box-shadow:0 0 0 2px var(--fg)}.err{font-family:var(--mono);font-size:calc(12px * var(--fs));color:var(--fg);margin-top:8px}.ok{font-family:var(--mono);font-size:calc(12px * var(--fs));color:var(--mute);margin-top:8px}.tpl-list{display:flex;flex-direction:column;margin-top:6px}.tpl{display:flex;align-items:center;gap:12px;padding:10px 0;border-bottom:1px solid var(--line)}.tpl:last-of-type{border-bottom:0}.tpl .tname{font-weight:700;font-size:calc(13.5px * var(--fs));min-width:110px}.tpl code{display:block;font-family:var(--mono);font-size:calc(11.5px * var(--fs));color:var(--mute);flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tpl.current .tname:after{content:"current";font-family:var(--mono);font-size:calc(10.5px * var(--fs));color:var(--accent);margin-left:10px;font-weight:400}.sample{width:100%;border-collapse:collapse;font-size:calc(13px * var(--fs));margin-top:8px}.sample th,.sample td{text-align:left;padding:8px 0;border-bottom:1px solid var(--line)}.sample th{color:var(--mute);font-weight:600;font-size:calc(12px * var(--fs))}.sample td{color:var(--fg-2)}.sample td:last-child,.sample th:last-child{text-align:right;font-family:var(--mono)}.sample td:last-child b{color:var(--accent);font-weight:500}.inrow{display:flex;gap:10px;align-items:center;margin-top:14px}.inrow input{flex:1;background:var(--bg);border:0;border-radius:10px;padding:9px 12px;outline:none;transition:box-shadow var(--fast)}.inrow input:focus{box-shadow:0 0 0 2px var(--accent)}.dist{display:flex;flex-direction:column;gap:12px}.dist-rows{display:flex;flex-direction:column}.dist-row{display:flex;align-items:center;gap:12px;padding:8px 0;border-bottom:1px solid var(--line)}.dist-row select{flex:1;min-width:0;border:0;background:var(--bg);border-radius:10px;padding:8px 10px;font-size:calc(13px * var(--fs));outline:none}.dist-row select:focus{box-shadow:0 0 0 2px var(--accent)}.dist-row .rest-label{flex:1;font-size:calc(13px * var(--fs));color:var(--fg-2);font-weight:600;padding:6px 0}.dist-row .share{width:40px;text-align:right;font-family:var(--mono);font-size:calc(12px * var(--fs));color:var(--mute)}.points{display:inline-flex;align-items:center;background:var(--well);border-radius:var(--pill);padding:2px}.points button{width:26px;height:24px;color:var(--fg-2);font-size:calc(15px * var(--fs));border-radius:var(--pill)}.points button:hover{background:var(--surface);color:var(--fg)}.points .n{min-width:30px;text-align:center;font-family:var(--mono);font-weight:500}.dist-preview{margin-top:4px}.dist-preview .section-label{padding:12px 0 6px}.dist-prev-row{display:flex;gap:12px;align-items:baseline;padding:6px 0;font-size:calc(13px * var(--fs));border-bottom:1px solid var(--line)}.dist-prev-row .rank{width:16px;color:var(--mute);font-family:var(--mono);font-size:calc(12px * var(--fs));text-align:right}.dist-prev-row .t{flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dist-prev-row .b{font-size:calc(11.5px * var(--fs));color:var(--accent);font-family:var(--mono)}.accents{display:flex;gap:10px;flex-wrap:wrap}.swatch{display:inline-flex;align-items:center;gap:8px;padding:6px 12px 6px 6px;border-radius:var(--pill);background:var(--bg);font-size:calc(12.5px * var(--fs));font-weight:600;color:var(--fg-2);transition:background var(--fast),color var(--fast),box-shadow var(--fast)}.swatch i{width:20px;height:20px;border-radius:50%;display:block;flex:none}.swatch:hover{background:var(--well);color:var(--fg)}.swatch.on{background:var(--surface);color:var(--fg);box-shadow:0 0 0 2px var(--accent)}@media(prefers-reduced-motion:reduce){*,*:before,*:after{transition:none!important;animation:none!important}}@media(max-width:640px){.bar,.task .head{padding-left:16px;padding-right:16px}.canvas-wrap,.foot{margin-left:16px;margin-right:16px}.chrome{padding:0 16px}.chrome .tab{padding:7px 12px}.row .rpath{display:none}}.sync-status{display:flex;align-items:center;gap:10px;font-size:calc(13px * var(--fs));color:var(--fg-2);min-height:28px}.sync-dot{width:8px;height:8px;border-radius:50%;background:var(--line-2);flex:none}.sync-dot.ok{background:var(--accent)}.sync-dot.syncing{background:var(--mute)}.sync-dot.error,.sync-dot.unconfigured{background:var(--fg)}.sync-status .btn{margin-left:auto}input[type=range]{accent-color:var(--accent)}.volume{display:inline-flex;align-items:center;gap:8px}.volume .vol{width:120px}.volume .pct{font-family:var(--mono);font-size:calc(12px * var(--fs));color:var(--mute);min-width:36px}.admin{margin-top:18px;padding-top:16px;border-top:1px solid var(--line)}.admin-head{display:flex;align-items:flex-start;gap:16px}.admin-head h3{font-size:calc(13px * var(--fs));font-weight:700;margin:0 0 4px}.admin-head p{margin-bottom:0}.admin-head .btn{flex:none;margin-top:2px}.smap{display:flex;flex-direction:column;margin-top:4px}.smap-group .section-label{padding:14px 0 4px}.smap-row{display:grid;grid-template-columns:150px minmax(0,1fr);gap:4px 14px;padding:9px 0;border-bottom:1px solid var(--line);align-items:start}.smap-row .ev b{display:block;font-size:calc(13px * var(--fs));font-weight:600}.smap-row .ev span{display:block;font-size:calc(11.5px * var(--fs));color:var(--mute);line-height:1.35}.cues{display:flex;flex-direction:column;gap:4px;min-width:0}.cue{display:flex;align-items:center;gap:8px;min-width:0}.cue select{flex:1;min-width:0;border:0;background:var(--bg);border-radius:10px;padding:6px 8px;font-size:calc(12.5px * var(--fs));outline:none;text-transform:capitalize}.cue select:focus{box-shadow:0 0 0 2px var(--accent)}.cue input[type=range]{width:84px;flex:none}.cue .when{width:62px;flex:none;border:0;background:var(--bg);border-radius:8px;padding:5px 6px;font-family:var(--mono);font-size:calc(11.5px * var(--fs));outline:none}.cue-actions{display:flex;gap:6px;align-items:center}.cue-actions .quiet{font-size:calc(11.5px * var(--fs));color:var(--mute)}.smap-status{font-size:calc(12.5px * var(--fs));color:var(--fg-2)}.smap-status.ok{color:var(--accent)}.smap-empty{font-size:calc(13px * var(--fs));color:var(--mute)}.smap-empty code{font-family:var(--mono);color:var(--fg);padding:1px 6px;background:var(--well);border-radius:6px;font-size:calc(12px * var(--fs))}.studio-wrap{flex:1;min-height:0;display:flex;flex-direction:column;padding:0 28px 20px}.studio-wrap .page-row{flex:none}.studio-wrap .page-hint{font-size:calc(12.5px * var(--fs));color:var(--mute);margin-left:8px}.studio{flex:1;width:100%;min-height:0;border:0;border-radius:var(--r-lg);box-shadow:var(--shadow);background:var(--ink)}.sync-dot.local{background:var(--line-2)}.sync-dot.adopt,.sync-dot.unsaved{background:var(--fg)}.auth{height:100%;display:grid;place-items:center;padding:24px;background:var(--bg)}.auth-card{width:min(380px,100%);background:var(--surface);border-radius:var(--r-lg);box-shadow:var(--shadow-lift);padding:32px 32px 26px;display:flex;flex-direction:column;gap:12px}.auth .wordmark{font-size:calc(22px * var(--fs));font-weight:800;letter-spacing:-.02em}.auth .lede{color:var(--mute);font-size:calc(13.5px * var(--fs));line-height:1.5;margin:-4px 0 8px}.auth input{background:var(--bg);border:0;border-radius:10px;padding:11px 12px;font-size:calc(14px * var(--fs));outline:none;transition:box-shadow var(--fast)}.auth input:focus{box-shadow:0 0 0 2px var(--accent)}.auth .btn.primary{justify-content:center;padding:11px 14px;margin-top:4px}.auth-links{display:flex;gap:16px;font-size:calc(12.5px * var(--fs));padding-top:4px}.auth-links button{color:var(--fg-2);font-weight:600;transition:color var(--fast)}.auth-links button:hover{color:var(--fg)}.auth-err{font-size:calc(13px * var(--fs));color:var(--fg);background:var(--well);padding:8px 12px;border-radius:10px;line-height:1.45}.auth-note{font-size:calc(13px * var(--fs));color:var(--accent);font-weight:600;line-height:1.45}.account{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:10px}.account .who{font-weight:600;font-size:calc(13.5px * var(--fs))}.badge{font-family:var(--mono);font-size:calc(10.5px * var(--fs));color:var(--accent);background:var(--accent-tint);padding:2px 8px;border-radius:var(--pill)}.modes{display:flex;gap:8px;flex-wrap:wrap}.mode{display:flex;flex-direction:column;gap:3px;text-align:left;padding:10px 14px;border-radius:var(--r);background:var(--bg);flex:1 1 150px;transition:background var(--fast),box-shadow var(--fast)}.mode b{font-size:calc(13px * var(--fs))}.mode span{font-size:calc(11.5px * var(--fs));color:var(--mute);line-height:1.35}.mode:hover{background:var(--well)}.mode.on{background:var(--surface);box-shadow:0 0 0 2px var(--accent)}.mode.bad span{color:var(--fg)}.modes.small .mode{flex:1 1 110px;padding:8px 12px}.formulas{display:flex;flex-direction:column;gap:10px}.formulas p{margin:0}.admin-section h3{font-size:calc(13px * var(--fs));font-weight:700;margin:0 0 4px}.scratch-in{width:100%;border:0;border-bottom:1px solid var(--line-2);background:transparent;font-size:calc(15px * var(--fs));padding:10px 4px;outline:none;margin-bottom:14px;transition:border-color var(--fast)}.scratch-in:focus{border-color:var(--accent)}.scratch-in::placeholder{color:var(--mute)}.notes{display:flex;flex-wrap:wrap;align-items:flex-start;padding:4px 0}.note{display:inline-flex;align-items:center;gap:4px;max-width:100%;padding:6px 10px 6px 4px;margin:4px 0;border-left:1px solid var(--line-2);animation:rise var(--base) var(--ease) both}.note:first-child{border-left-color:transparent}.note .txt{font-size:calc(14px * var(--fs));line-height:1.45;color:var(--fg);white-space:pre-wrap;overflow-wrap:anywhere;padding:0 4px}.note .ack,.note .stage{width:24px;height:24px;border-radius:50%;display:grid;place-items:center;color:var(--mute);opacity:.4;flex:none;transition:opacity var(--fast),background var(--fast),color var(--fast)}.note:hover .ack,.note:hover .stage,.note .ack:focus-visible,.note .stage:focus-visible{opacity:1}.note .ack:hover{background:var(--accent-tint);color:var(--accent)}.note .stage:hover{background:var(--well);color:var(--fg)}.note svg{width:13px;height:13px}.nav-trigger{position:fixed;left:0;top:0;bottom:0;width:30px;z-index:60;display:flex;align-items:center;justify-content:flex-start;pointer-events:none}.nav-trigger button{pointer-events:none;width:24px;height:48px;border-radius:0 var(--pill) var(--pill) 0;background:var(--ink);color:var(--ink-fg);display:grid;place-items:center;opacity:0;transform:translate(-6px);transition:opacity var(--base),transform var(--base),background var(--fast)}.nav-trigger button svg{width:14px;height:14px}.nav-trigger button.near,.nav-trigger button:focus-visible{pointer-events:auto;opacity:1;transform:none}.nav-trigger button:hover{background:var(--accent)}.nav-edge{position:absolute;top:0;bottom:0;right:0;width:40px;display:flex;align-items:center;justify-content:flex-end}.nav-edge button{width:24px;height:48px;border-radius:var(--pill) 0 0 var(--pill);background:var(--ink);color:var(--ink-fg);display:grid;place-items:center;opacity:0;transition:opacity var(--base),background var(--fast)}.nav-edge button svg{width:14px;height:14px}.nav-edge:hover button,.nav-edge button:focus-visible{opacity:1}.nav-edge button:hover{background:var(--accent)}.keys{display:flex;flex-direction:column}.key-row{display:flex;align-items:center;gap:12px;padding:8px 0;border-bottom:1px solid var(--line);font-size:calc(13px * var(--fs))}.key-row .klabel{flex:1;min-width:0;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.key-row .kprefix,.key-fresh code{font-family:var(--mono);font-size:calc(12px * var(--fs));color:var(--fg-2)}.key-row .kwhen{font-size:calc(12px * var(--fs));color:var(--mute);white-space:nowrap}.key-fresh{margin-top:12px;padding:12px 14px;background:var(--well);border-radius:var(--r);display:flex;flex-wrap:wrap;align-items:center;gap:10px}.key-fresh .muted{font-size:calc(12.5px * var(--fs));color:var(--mute);width:100%}.key-fresh code{flex:1;min-width:0;word-break:break-all;color:var(--fg);font-size:calc(13px * var(--fs));-webkit-user-select:all;user-select:all}.settings .muted{color:var(--mute)}.search.off{display:none}.nav-head{padding-right:44px}.nav-collapse{font-size:calc(12px * var(--fs));font-weight:600;color:var(--mute);padding:4px 8px;border-radius:6px;transition:background var(--fast),color var(--fast)}.nav-collapse:hover{background:var(--well);color:var(--fg)}.node .check{overflow:hidden;gap:0}.node .ci-list{flex:1;min-height:0;overflow-y:auto;display:flex;flex-direction:column;gap:1px;scrollbar-width:thin}.node .ci-list::-webkit-scrollbar{width:6px}.node .ci-list::-webkit-scrollbar-thumb{background:var(--line-2);border-radius:3px}.nav-row.task .wait{display:inline-block;margin-right:6px;color:var(--mute);vertical-align:-1px}.nav-row.task .wait svg{width:11px;height:11px}.node .pt a,.node .ci a,.rt a{color:var(--accent);text-decoration:underline;text-underline-offset:2px;cursor:pointer}.navigator{position:fixed;top:0;left:0;bottom:0;width:clamp(280px,33.333vw,100% - 40px);z-index:65;background:var(--surface);box-shadow:var(--shadow-pop);transform:translate(calc(-100% - 24px));transition:transform var(--slow) var(--ease),visibility 0s linear var(--slow);display:flex;flex-direction:column;visibility:hidden}.navigator.open{transform:none;visibility:visible;transition:transform var(--slow) var(--ease)}.nav-head{display:flex;align-items:center;justify-content:space-between;padding:14px 12px 6px 20px;font-size:calc(12.5px * var(--fs));font-weight:700;color:var(--mute);flex:none}.nav-tree{flex:1;overflow-y:auto;padding:0 40px 14px 10px}.nav-row{display:flex;align-items:center;gap:2px;min-height:30px}.nav-row .twist{width:22px;height:22px;display:grid;place-items:center;color:var(--mute);border-radius:6px;flex:none;transition:background var(--fast),color var(--fast)}.nav-row .twist:hover{background:var(--well);color:var(--fg)}.nav-row .twist svg{width:12px;height:12px}.nav-row .name{flex:1;min-width:0;display:flex;align-items:center;gap:8px;text-align:left;padding:5px 8px;border-radius:8px;font-size:calc(13.5px * var(--fs));font-weight:600;color:var(--fg);overflow:hidden;white-space:nowrap;text-overflow:ellipsis;transition:background var(--fast)}.nav-row .name:hover{background:var(--surface-2)}.nav-row.cur .name{background:var(--well)}.nav-row .name svg{width:15px;height:15px;color:var(--accent);flex:none}.nav-row .name .lbl{min-width:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}button.nav-row.task{display:block;width:100%;min-width:0;padding:0;text-align:left;overflow:hidden}.nav-row.task .name{display:block;font-weight:500;font-size:calc(13px * var(--fs));color:var(--fg-2);padding-left:32px}.nav-kids{padding-left:14px}.nav-empty{padding:5px 8px 5px 32px;font-size:calc(12px * var(--fs));color:var(--mute)}.reward{position:fixed;top:0;right:0;bottom:0;left:0;z-index:800;display:grid;place-items:center;pointer-events:none}.reward-ring{position:absolute;width:180px;height:180px;border-radius:50%;border:2px solid var(--accent);opacity:0;animation:bloom 1.5s var(--ease) both}.reward-ring.two{animation-delay:.18s}.reward-text{position:relative;display:flex;flex-direction:column;align-items:center;gap:2px;animation:reward-text 2.2s var(--ease) both}.reward-text b{font-size:calc(30px * var(--fs));font-weight:800;letter-spacing:-.02em;color:var(--fg)}.reward-text span{font-size:calc(12px * var(--fs));color:var(--accent);font-weight:700;letter-spacing:.08em;text-transform:uppercase}@keyframes bloom{0%{transform:scale(.5);opacity:.6}to{transform:scale(2);opacity:0}}@keyframes reward-text{0%{opacity:0;transform:translateY(8px) scale(.96)}15%{opacity:1;transform:none}75%{opacity:1}to{opacity:0;transform:translateY(-6px)}}.writer{position:fixed;top:0;right:0;bottom:0;left:0;z-index:70;background:var(--surface);display:flex;flex-direction:column;animation:fade var(--base) ease-out both}.wr-page{flex:1;min-height:0;margin-top:96px;position:relative;z-index:2;overflow-y:auto;cursor:text;transition:opacity var(--base);scrollbar-width:thin;scrollbar-color:var(--line-2) transparent}.wr-page.fading{opacity:0}.wr-page::-webkit-scrollbar{width:10px}.wr-page::-webkit-scrollbar-thumb{background:var(--line-2);border-radius:5px;border:3px solid var(--surface);background-clip:padding-box}.wr-editor{position:relative;width:min(72ch,100% - 56px);min-height:40vh;margin:0 auto;padding:10vh 0 40vh;outline:none;font-size:calc(15px * var(--fs));line-height:1.8;caret-color:var(--accent);overflow-wrap:anywhere}.writer.focus .wr-editor{padding-top:24vh}.writer.focus .wr-editor>:not(.zen-focused){display:none}.wr-editor.is-empty:before{content:"Write";position:absolute;color:var(--mute);pointer-events:none}.wr-editor p{margin:0 0 .9em}.wr-editor h1,.wr-editor h2,.wr-editor h3,.wr-editor h4,.wr-editor h5,.wr-editor h6{margin:1.4em 0 .5em;line-height:1.3;font-weight:700}.wr-editor>:first-child{margin-top:0}.wr-editor h1{font-size:calc(22px * var(--fs));letter-spacing:-.02em}.wr-editor h2{font-size:calc(20px * var(--fs));letter-spacing:-.015em}.wr-editor h3{font-size:calc(17px * var(--fs))}.wr-editor h4{font-size:calc(15px * var(--fs))}.wr-editor h5{font-size:calc(13px * var(--fs));color:var(--fg-2)}.wr-editor h6{font-size:calc(12px * var(--fs));color:var(--mute);letter-spacing:.06em;text-transform:uppercase}.wr-editor ul,.wr-editor ol{margin:0 0 .9em;padding-left:1.5em}.wr-editor li{margin:.15em 0}.wr-editor li::marker{color:var(--fg-2)}.wr-editor blockquote{margin:0 0 .9em;padding:.1em 0 .1em 1.1em;border-left:2px solid var(--accent);color:var(--fg-2)}.wr-editor pre{margin:0 0 .9em;padding:10px 14px;background:var(--well);border-radius:var(--r);white-space:pre-wrap;font-size:calc(14px * var(--fs))}.wr-editor code{background:var(--well);padding:0 5px;border-radius:6px}.wr-editor a{color:var(--accent);text-decoration:underline;text-underline-offset:2px}.ctx:has(.ctx-grid){min-width:0}.ctx-grid{display:grid;grid-template-columns:repeat(6,34px);gap:2px}.ctx-cell{width:34px;height:34px;display:grid;place-items:center;border-radius:8px;color:var(--fg-2);transition:background var(--fast),color var(--fast)}.ctx-cell:hover{background:var(--accent-tint);color:var(--accent)}.ctx-cell.on{background:var(--well);color:var(--accent)}.ctx-cell svg{width:16px;height:16px}.tour{position:fixed;right:24px;bottom:24px;z-index:60;width:300px;background:var(--surface);border-radius:var(--r-lg);box-shadow:var(--shadow-pop);padding:16px 18px 14px;animation:pop var(--base) var(--ease) both}.tour-dots{display:flex;gap:4px;margin-bottom:10px}.tour-dots i{width:6px;height:6px;border-radius:50%;background:var(--line-2);transition:background var(--base)}.tour-dots i.past{background:var(--accent);opacity:.4}.tour-dots i.on{background:var(--accent)}.tour p{margin:0 0 12px;font-size:calc(13.5px * var(--fs));line-height:1.5;color:var(--fg)}.tour-row{display:flex;align-items:center;gap:6px}.tour-row .btn.primary{margin-left:auto}.marquee{position:absolute;border:1px solid var(--accent);background:var(--accent-tint);opacity:.7;pointer-events:none;z-index:6}.node.selected{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-tint),var(--shadow)}.node.selected.live{box-shadow:0 0 0 2px var(--accent-tint),var(--shadow-pop)}.auth-card.pay .btn{justify-content:center;padding:11px 14px}.auth-card.pay .btn.primary{margin-top:4px}.auth-card.pay .auth-links{justify-content:space-between;align-items:center}.auth-card.pay .who{color:var(--mute);font-size:calc(12.5px * var(--fs));overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.plan-row{justify-content:space-between;font-size:calc(13px * var(--fs));color:var(--fg-2);margin-top:10px}.settings p a{color:var(--accent);font-weight:600}@keyframes tpulse{0%{box-shadow:0 0 0 0 var(--accent)}to{box-shadow:0 0 0 14px transparent}}.timer.pulse{animation:tpulse .9s var(--ease) both}.wr-editor ::selection,.wr-editor::selection{background:transparent}.wr-hl{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1;pointer-events:none}.wr-hl .hl{position:absolute;background:var(--accent-tint);border-radius:4px}.settings .sections{display:flex;flex-wrap:wrap;gap:8px 22px;margin-top:12px}.settings .sizes{display:flex;gap:6px}.settings .sizes .chip{font-size:calc(12.5px * var(--fs));color:var(--fg-2);background:var(--well);padding:6px 12px;border-radius:var(--pill);transition:background var(--fast),color var(--fast)}.settings .sizes .chip:hover{color:var(--fg)}.settings .sizes .chip.on{background:var(--ink);color:var(--ink-fg)}.park-in{width:160px;padding:7px 10px;border:0;border-radius:8px;background:var(--bg);outline:none;transition:box-shadow var(--fast)}.park-in:focus{box-shadow:0 0 0 2px var(--accent)}.quick-line{display:flex;align-items:center;gap:6px}.quick-line input{flex:1;min-width:0}.editor .desc-btn{display:inline-flex;align-items:center;gap:6px;margin-top:10px;padding:6px 12px 6px 10px;border-radius:var(--pill);color:var(--fg-2);background:var(--well);font-weight:600;transition:background var(--fast),color var(--fast)}.editor .desc-btn:hover{background:var(--line);color:var(--fg)}.editor .desc-btn svg{width:14px;height:14px}.wr-hl .hl.pinned{background:var(--well)}.wr-editor .zen-comment,.rt .zen-comment{background:var(--well);border-radius:4px;padding:.06em .12em;margin:0 -.12em;box-decoration-break:clone;-webkit-box-decoration-break:clone;cursor:pointer}.wr-note{position:fixed;z-index:4;display:flex;align-items:flex-end;gap:4px;width:280px;padding:6px 8px;border-radius:var(--r);background:var(--surface);box-shadow:var(--shadow-pop);animation:pop var(--base) var(--ease) both}.wr-note textarea{flex:1;min-width:0;border:0;outline:none;background:transparent;resize:none;line-height:1.45;max-height:160px;padding:5px 0}.wr-note textarea::placeholder{color:var(--mute)}.wr-note button{width:28px;height:28px;flex:none;display:grid;place-items:center;border-radius:8px;color:var(--mute);transition:background var(--fast),color var(--fast)}.wr-note button:hover{background:var(--well);color:var(--fg)}.wr-note button svg{width:14px;height:14px}.node.k-sketch .sk{width:100%;height:100%;display:block;touch-action:none;border-radius:calc(var(--r) - 1px)}.node.k-sketch.editing,.node.k-sketch.editing .sk{cursor:crosshair}.node .sk-tools{position:absolute;left:6px;top:-30px;display:flex;gap:1px;background:var(--ink);padding:3px;border-radius:var(--pill);z-index:6;box-shadow:var(--shadow-pop)}.node[data-top="1"] .sk-tools{top:auto;bottom:-30px}.node .sk-tools button{width:26px;height:22px;display:grid;place-items:center;color:#fffc;border-radius:var(--pill);transition:background var(--fast),color var(--fast)}.node .sk-tools button:hover,.node .sk-tools button.on{color:#fff;background:var(--accent)}.node .sk-tools button svg{width:12px;height:12px}.node .sk-tools .sep{width:1px;background:#ffffff40;margin:4px 3px}.node .sk-empty{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;color:var(--mute);pointer-events:none}.folder-canvas{display:flex;flex-direction:column;align-items:center;margin-top:22px}.folder-canvas.open{height:62vh;min-height:320px;align-items:stretch}.folder-canvas.open .canvas-toggle{align-self:center;margin-bottom:12px}.folder-canvas .canvas-wrap{margin:0}.wr-note-text{flex:1;min-width:0;line-height:1.45;padding:5px 0;white-space:pre-wrap;overflow-wrap:anywhere}.chrome .ib{position:relative}.chrome .ib .dot{position:absolute;top:6px;right:6px;width:6px;height:6px;border-radius:50%;background:var(--accent)}.chrome .ib.active{background:var(--ink);color:var(--ink-fg)}.canvas-stack{flex:1;min-height:0;display:flex;flex-direction:column}.canvas-tabs{display:flex;gap:4px;margin:0 28px 8px;flex:none;overflow-x:auto;scrollbar-width:none}.canvas-tabs::-webkit-scrollbar{display:none}.ctab{display:inline-flex;align-items:center;gap:6px;padding:5px 12px;border-radius:var(--pill);font-size:calc(12.5px * var(--fs));font-weight:600;color:var(--fg-2);background:var(--surface);box-shadow:var(--shadow);white-space:nowrap;transition:background var(--fast),color var(--fast)}.ctab:hover{color:var(--fg)}.ctab.on{background:var(--ink);color:var(--ink-fg)}.ctab.has:after{content:"";width:5px;height:5px;border-radius:50%;background:var(--accent)}.folder-canvas .canvas-tabs{margin-left:0;margin-right:0}@media(max-width:720px){.canvas-tabs{margin-left:16px;margin-right:16px}}.tag,.tag.p{color:var(--accent);background:transparent;border:1px solid var(--accent)}.tag b{color:var(--accent)}.wr-page{margin-top:0}.wr-editor{padding-top:14vh}.writer.focus .wr-editor{padding-top:24vh;padding-bottom:20px}.wr-unfocus-row{display:flex;justify-content:center;padding-bottom:40vh}.wr-unfocus{width:42px;height:42px;border-radius:50%;background:var(--surface);color:var(--ink);border:1px solid var(--line-2);display:grid;place-items:center;box-shadow:var(--shadow);transition:background var(--fast),color var(--fast),border-color var(--fast)}.wr-unfocus:hover{background:var(--ink);color:var(--ink-fg);border-color:var(--ink)}.wr-unfocus svg{width:18px;height:18px}.wr-exit{position:absolute;top:18px;z-index:3;width:36px;height:36px;border-radius:var(--pill);background:var(--surface);color:var(--fg-2);box-shadow:var(--shadow);display:grid;place-items:center;opacity:.7;transition:opacity var(--fast),background var(--fast),color var(--fast)}.wr-exit.tl{left:18px}.wr-exit.tr{right:18px}.wr-exit:hover{opacity:1;background:var(--ink);color:var(--ink-fg)}.wr-exit svg{width:16px;height:16px}.wr-top{position:fixed;top:14px;left:50%;z-index:3;transform:translate(-50%,-10px);opacity:0;pointer-events:none;transition:opacity var(--base),transform var(--base) var(--ease)}.wr-top .wr-tools{display:flex;align-items:center;gap:1px;padding:4px;border-radius:var(--pill);background:var(--ink);box-shadow:var(--shadow-pop);white-space:nowrap}.wr-sel{position:fixed;z-index:3;transform:translate(-50%,calc(-100% - 10px));display:flex;align-items:center;gap:1px;padding:4px;border-radius:var(--pill);background:var(--ink);box-shadow:var(--shadow-pop);animation:fade var(--base) ease-out both;white-space:nowrap}.wr-sel button,.wr-tools button{min-width:30px;height:30px;padding:0 8px;display:grid;place-items:center;color:#ffffffd1;font-size:calc(12px * var(--fs));font-weight:700;border-radius:var(--pill);background:transparent;box-shadow:none;animation:none;transition:background var(--fast),color var(--fast)}.wr-sel button:hover,.wr-tools button:hover{color:#fff;background:#ffffff24}.wr-tools button.on{color:#fff;background:var(--accent)}.wr-sel button svg,.wr-tools button svg{width:15px;height:15px}.wr-sel .sep,.wr-tools .sep{width:1px;height:18px;background:#ffffff40;margin:0 4px}.wr-note{width:360px}.wr-note textarea{max-height:240px;overflow-y:auto}.subtabs{display:flex;gap:4px;padding:0 0 14px 2px}.subtab{padding:6px 14px;border-radius:var(--pill);font-size:calc(13px * var(--fs));font-weight:600;color:var(--mute);transition:background var(--fast),color var(--fast)}.subtab:hover{color:var(--fg)}.subtab.on{background:var(--ink);color:var(--ink-fg)}.row.staged{background:transparent;box-shadow:none;outline:1.5px dashed var(--line-2);outline-offset:-1.5px}.row.staged:hover{box-shadow:none;outline-color:var(--fg-2)}.row.staged:focus-visible{outline:2px solid var(--accent)}.shaping{display:inline-flex;align-items:center;gap:2px;flex:none;margin:-6px -8px -6px 0}.shaping .shape{width:30px;height:30px;border-radius:var(--pill);display:grid;place-items:center;color:var(--line-2);transition:background var(--fast),color var(--fast)}.shaping .shape svg{width:15px;height:15px}.shaping .shape:hover,.shaping .shape.open{background:var(--well);color:var(--fg)}.shaping .shape.set{color:var(--accent)}.shaping .shape.commit{margin-left:4px;color:var(--line-2)}.shaping .shape.commit.ready{background:var(--ink);color:var(--ink-fg)}.shaping .shape.commit.ready:hover{background:var(--accent)}.shaping .shape.commit:disabled{cursor:default}.row .pin{color:var(--accent);display:inline-flex;flex:none;width:26px;height:26px;margin:-4px 0;border-radius:var(--pill);align-items:center;justify-content:center;transition:background var(--fast),color var(--fast)}.row .pin:hover{background:var(--ink);color:var(--ink-fg)}.shape-pop{width:auto;padding:12px 14px;cursor:default}.dial{display:flex;flex-direction:column;align-items:center;gap:4px;-webkit-user-select:none;user-select:none}.dial svg{cursor:pointer;touch-action:none}.dial .face{fill:var(--well);stroke:none}.dial .tick{stroke:var(--line-2);stroke-width:1.5;stroke-linecap:round}.dial .tick.major{stroke:var(--fg-2);stroke-width:2}.dial .hand{stroke:var(--accent);stroke-width:3;stroke-linecap:round;transition:all var(--base) var(--ease)}.dial.live .hand{transition:none}.dial.unset .hand{stroke:var(--line-2)}.dial .pin{fill:var(--ink)}.dial .dial-value{font-size:calc(15px * var(--fs));font-weight:700}.dial .dial-turns{font-size:calc(11px * var(--fs));color:var(--mute)}.folder-canvas{margin:0 0 20px}.folder-canvas.open{margin-bottom:26px}.lbar{display:flex;flex-direction:column;gap:10px;-webkit-user-select:none;user-select:none;outline:none;width:260px}.lbar .lb-head{display:flex;align-items:baseline;gap:8px;font-size:calc(12.5px * var(--fs))}.lbar .lb-head .k{color:var(--mute);font-weight:600}.lbar .lb-head .v{color:var(--fg);font-weight:700}.lbar .lb-head .v.unset{color:var(--mute);font-weight:500}.lbar .track{position:relative;height:24px;background:var(--well);border-radius:var(--pill);cursor:pointer;touch-action:none}.lbar .fill{position:absolute;left:0;top:0;bottom:0;z-index:1;background:var(--accent);border-radius:var(--pill);transition:width var(--base) var(--ease)}.lbar.nofill .fill,.lbar.unset .fill{display:none}.lbar .dot{position:absolute;top:50%;width:4px;height:4px;margin:-2px 0 0 -2px;border-radius:50%;background:var(--line-2)}.lbar .rest{position:absolute;top:50%;width:8px;height:8px;margin:-4px 0 0 -4px;border-radius:50%;border:1.5px solid var(--line-2);background:var(--surface)}.lbar .thumb{position:absolute;z-index:2;top:3px;width:18px;height:18px;margin-left:-9px;border-radius:50%;background:var(--surface);box-shadow:0 1px 3px #1b223047;transition:left var(--base) var(--ease)}.lbar.unset .thumb{background:var(--line-2);box-shadow:none;width:12px;height:12px;top:6px;margin-left:-6px}.lbar.live .thumb,.lbar.live .fill{transition:none}.lbar:focus-visible .track{box-shadow:0 0 0 2px var(--accent)}.dial .wash{fill:var(--accent);fill-opacity:.22;stroke:none;pointer-events:none}.dial .dial-value{margin-top:2px}.shape-pop .scope{display:flex;flex-direction:column;gap:8px;width:300px}.shape-pop .scope-in{width:100%;border:0;border-radius:8px;background:var(--well);padding:8px 10px;font-size:calc(13.5px * var(--fs));line-height:1.45;outline:none;resize:none;box-shadow:inset 0 0 0 2px transparent;transition:box-shadow var(--fast)}.shape-pop .scope-in:focus{box-shadow:inset 0 0 0 2px var(--accent)}.shape-pop .scope .btn{align-self:flex-end}.park-pop .pop-actions{justify-content:flex-end}.task .head .shape-row{display:flex;justify-content:center;margin:2px 0 6px}.task .head .shape-row .shaping{margin:0;padding:6px 10px;gap:4px;border-radius:var(--pill);outline:1.5px dashed var(--line-2);outline-offset:-1.5px}.row.drop-in{outline:2px solid var(--accent);outline-offset:-2px;background:var(--accent-tint)}.row.staged .shaping{margin-right:-8px}.ctx-item .sub{margin-left:auto;padding-left:14px;display:inline-flex;color:var(--mute)}.ctx-item .sub svg{width:12px;height:12px}.chat{position:fixed;top:0;right:0;bottom:0;left:0;z-index:72;background:var(--bg);display:flex;flex-direction:column;animation:fade var(--base) ease-out both}.chat-top{flex:none;display:flex;align-items:center;gap:8px;padding:12px 16px 6px}.chat-tabs{flex:1;min-width:0;display:flex;align-items:center;gap:4px;overflow-x:auto;scrollbar-width:none;padding:2px}.chat-tabs::-webkit-scrollbar{display:none}.chat-tab{display:inline-flex;align-items:center;gap:4px;max-width:220px;padding:5px 6px 5px 12px;border-radius:var(--pill);font-size:calc(12.5px * var(--fs));font-weight:600;color:var(--fg-2);background:var(--surface);box-shadow:var(--shadow);cursor:pointer;white-space:nowrap;flex:none;transition:background var(--fast),color var(--fast)}.chat-tab:hover{color:var(--fg)}.chat-tab.on{background:var(--ink);color:var(--ink-fg)}.chat-tab .lbl{min-width:0;overflow:hidden;text-overflow:ellipsis}.chat-tab.working .lbl:before{content:"";display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--accent);margin-right:7px;vertical-align:middle;animation:breathe 1.6s ease-in-out infinite}.chat-tab .x{width:20px;height:20px;border-radius:50%;display:grid;place-items:center;color:inherit;opacity:.55;transition:opacity var(--fast),background var(--fast)}.chat-tab .x:hover{opacity:1;background:#7f7f7f40}.chat-tab .x svg{width:9px;height:9px}.chat-new{flex:none}.chat-right{flex:none;display:flex;gap:2px}.chat-main{flex:1;min-height:0;display:flex;flex-direction:column;position:relative}.chat .thread{flex:1}.chat-min{position:fixed;right:22px;bottom:22px;z-index:71;width:48px;height:48px;border-radius:50%;background:var(--ink);color:var(--ink-fg);display:grid;place-items:center;box-shadow:var(--shadow-pop);animation:rise var(--base) var(--ease) both;transition:background var(--fast),transform var(--fast) var(--ease)}.chat-min:hover{background:var(--accent);transform:translateY(-1px)}.chat-min svg{width:20px;height:20px}.chat-min .dot{position:absolute;top:4px;right:4px;width:10px;height:10px;border-radius:50%;background:var(--accent);border:2px solid var(--bg);animation:breathe 1.6s ease-in-out infinite}.chat .prose{font-size:calc(15px * var(--fs))}.chat .prose code,.chat .prose pre code{font-family:var(--sans)}.chat .thread{position:relative;flex:1;min-height:0;overflow-y:auto;padding:26px 28px 200px;scrollbar-gutter:stable}.chat .thread::-webkit-scrollbar{width:12px}.chat .thread::-webkit-scrollbar-thumb{border:4px solid var(--bg)}.chat .thread-inner{width:min(760px,100%);margin:0 auto;display:flex;flex-direction:column;gap:26px}.chat .hello{height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;color:var(--mute);padding-bottom:12vh;text-align:center}.chat .hello b{font-size:22px;font-weight:800;letter-spacing:-.02em;color:var(--fg)}.chat .hello span{font-size:13.5px}.chat .msg{animation:rise var(--base) var(--ease) both;min-width:0}.chat .msg.user{align-self:flex-end;max-width:min(78%,620px);display:flex;flex-direction:column;align-items:flex-end;gap:6px}.chat .msg.user .bubble{background:var(--surface);border-radius:var(--r-lg);box-shadow:var(--shadow);padding:11px 16px;font-size:14.5px;line-height:1.5;white-space:pre-wrap;overflow-wrap:anywhere}.chat .msg.user .state{display:inline-flex;align-items:center;gap:6px;font-size:11.5px;font-weight:600;color:var(--mute);padding:0 4px}.chat .msg.user .state.queued{color:var(--fg-2)}.chat .msg.user .state.folded{color:var(--accent)}.chat .msg.user .state .ib{width:18px;height:18px;color:var(--mute)}.chat .msg.user .state .ib svg{width:10px;height:10px}.chat .msg.assistant{display:flex;flex-direction:column;gap:10px}.chat .activity{display:flex;flex-direction:column;gap:4px}.chat .status-line{display:flex;align-items:center;gap:9px;min-height:26px;font-size:13.5px;font-weight:600;color:var(--fg-2)}.chat .status-line .pulse{width:8px;height:8px;border-radius:50%;background:var(--accent);animation:breathe 1.6s ease-in-out infinite;flex:none}@keyframes breathe{0%,to{transform:scale(.75);opacity:.45}50%{transform:scale(1);opacity:1}}.chat .status-line .txt{background:linear-gradient(90deg,var(--mute) 0%,var(--mute) 35%,var(--fg) 50%,var(--mute) 65%,var(--mute) 100%);background-size:240% 100%;-webkit-background-clip:text;background-clip:text;color:transparent;animation:shimmer 2.2s linear infinite}@keyframes shimmer{0%{background-position:120% 0}to{background-position:-120% 0}}.chat .status-swap{position:relative;display:inline-grid}.chat .status-swap>*{grid-area:1 / 1}.chat .work-toggle{display:inline-flex;align-items:center;gap:6px;align-self:flex-start;padding:5px 10px 5px 8px;margin-left:-8px;font-size:12.5px;font-weight:600;color:var(--mute);border-radius:var(--pill);transition:background var(--fast),color var(--fast)}.chat .work-toggle:hover{background:#1b22300d;color:var(--fg)}.chat .work-toggle svg{width:14px;height:14px;transition:transform var(--base) var(--ease)}.chat .work-toggle.open svg.caret{transform:rotate(90deg)}.chat .steps{display:flex;flex-direction:column;gap:2px;padding:4px 0 2px 2px;border-left:2px solid var(--line);margin-left:3px;animation:fade var(--base) ease-out both}.chat .step{display:flex;align-items:flex-start;gap:9px;padding:5px 10px;font-size:13px;color:var(--fg-2);border-radius:8px;min-width:0}.chat .step.child{margin-left:22px}.chat .step .ic{width:16px;height:16px;display:grid;place-items:center;color:var(--mute);flex:none;margin-top:2px}.chat .step .ic svg{width:14px;height:14px}.chat .step.running .ic{color:var(--accent)}.chat .step.error .ic{color:var(--fg)}.chat .step .body{flex:1;min-width:0;display:flex;flex-direction:column;gap:3px}.chat .step .line{display:flex;align-items:baseline;gap:6px;min-width:0}.chat .step .verb{color:var(--mute);font-weight:500;flex:none}.chat .step .what{font-weight:600;color:var(--fg);min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chat .step a.what{color:var(--fg);text-decoration:none}.chat .step a.what:hover{color:var(--accent)}.chat .step .note{color:var(--mute);font-size:12px;flex:none;max-width:40%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chat .step .problem{font-size:12.5px;color:var(--fg-2);line-height:1.4}.chat .step .links{display:flex;flex-wrap:wrap;gap:4px}.chat .step .links a{font-size:11.5px;font-weight:600;color:var(--fg-2);background:var(--well);padding:2px 8px;border-radius:var(--pill);text-decoration:none;max-width:220px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;transition:background var(--fast),color var(--fast)}.chat .step .links a:hover{background:var(--ink);color:var(--ink-fg)}.chat .step .brief{font-size:12.5px;color:var(--mute);white-space:pre-wrap;max-height:5.4em;overflow:hidden;line-height:1.4}.chat .thought{margin:2px 0 0 8px;padding:8px 12px;font-size:12.5px;line-height:1.55;color:var(--fg-2);background:var(--surface-2);border-radius:10px;white-space:pre-wrap;overflow-wrap:anywhere;max-height:320px;overflow-y:auto}.chat .thought-toggle{align-self:flex-start;font-size:12px;font-weight:600;color:var(--mute);padding:3px 8px;margin-left:2px;border-radius:6px;transition:background var(--fast),color var(--fast)}.chat .thought-toggle:hover{background:#1b22300d;color:var(--fg)}.chat .warning{display:flex;align-items:center;gap:8px;font-size:12.5px;font-weight:600;color:var(--fg);background:var(--well);padding:7px 12px;border-radius:10px}.chat .warning svg{width:14px;height:14px;flex:none}.chat .err{font-size:13px;color:var(--fg);background:var(--well);padding:8px 12px;border-radius:10px}.chat .stopped{font-size:12.5px;color:var(--mute);font-weight:600}.chat .prose{font-size:15px;line-height:1.65;overflow-wrap:anywhere;min-width:0}.chat .prose>:first-child{margin-top:0}.chat .prose>:last-child{margin-bottom:0}.chat .prose p{margin:0 0 .85em}.chat .prose h1,.chat .prose h2,.chat .prose h3,.chat .prose h4{margin:1.3em 0 .45em;line-height:1.3;font-weight:700;letter-spacing:-.01em}.chat .prose h1{font-size:20px}.chat .prose h2{font-size:17.5px}.chat .prose h3{font-size:15.5px}.chat .prose h4{font-size:14px;color:var(--fg-2)}.chat .prose ul,.chat .prose ol{margin:0 0 .85em;padding-left:1.4em}.chat .prose li{margin:.2em 0}.chat .prose li::marker{color:var(--fg-2)}.chat .prose li>p{margin:0}.chat .prose blockquote{margin:0 0 .85em;padding:.1em 0 .1em 1em;border-left:2px solid var(--accent);color:var(--fg-2)}.chat .prose a{color:var(--accent);text-decoration:underline;text-underline-offset:2px;text-decoration-color:color-mix(in srgb,var(--accent) 40%,transparent)}.chat .prose a:hover{text-decoration-color:var(--accent)}.chat .prose code{font-family:var(--sans);font-size:.86em;background:var(--well);padding:1px 5px;border-radius:5px}.chat .prose pre{margin:0 0 .9em;padding:12px 14px;background:var(--surface);border-radius:var(--r);box-shadow:var(--shadow);overflow-x:auto}.chat .prose pre code{background:none;padding:0;font-size:12.5px;line-height:1.55}.chat .prose table{border-collapse:collapse;margin:0 0 .9em;font-size:13.5px;display:block;max-width:100%;overflow-x:auto}.chat .prose th,.chat .prose td{text-align:left;padding:7px 12px;border-bottom:1px solid var(--line);vertical-align:top}.chat .prose th{color:var(--mute);font-weight:600;font-size:12.5px}.chat .prose hr{border:0;border-top:1px solid var(--line);margin:1.2em 0}.chat .prose strong{font-weight:700}.chat .prose.live>:last-child:not(pre):not(table):not(ul):not(ol):after{content:"";display:inline-block;width:7px;height:7px;margin-left:4px;border-radius:50%;background:var(--accent);vertical-align:middle;animation:breathe 1.2s ease-in-out infinite}.chat .sources{display:flex;flex-wrap:wrap;align-items:baseline;gap:2px 14px;padding-top:2px;font-size:12.5px;color:var(--mute)}.chat .sources .lbl{font-weight:700;margin-right:2px}.chat .sources a{color:var(--mute);text-decoration:underline;text-underline-offset:3px;text-decoration-color:var(--line-2);max-width:320px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;transition:color var(--fast)}.chat .sources a:hover{color:var(--fg);text-decoration-color:var(--fg)}.chat .composer{position:absolute;left:0;right:0;bottom:0;padding:28px 28px 22px;background:linear-gradient(to bottom,transparent,var(--bg) 38%);pointer-events:none}.chat .composer-box{pointer-events:auto;position:relative;width:min(760px,100%);margin:0 auto;background:var(--surface);border-radius:24px;box-shadow:var(--shadow-lift);padding:8px 8px 8px 10px;display:flex;flex-direction:column;gap:4px;overflow:hidden;transition:box-shadow var(--base)}.chat .composer-row{display:flex;align-items:flex-end;gap:6px}.chat .composer-box.over{box-shadow:var(--shadow-lift),0 0 0 2px var(--accent)}.chat .composer-box:focus-within{box-shadow:var(--shadow-lift),0 0 0 2px var(--accent-tint)}.chat .composer-box textarea{flex:1;min-width:0;border:0;outline:0;background:transparent;font-size:15px;line-height:1.5;padding:9px 0;min-height:40px;max-height:220px;overflow-y:auto;field-sizing:content}.chat .composer-box textarea::placeholder{color:var(--mute)}.chat .composer-box .send{flex:none;width:38px;height:38px;border-radius:50%;background:var(--ink);color:var(--ink-fg);display:grid;place-items:center;transition:background var(--fast),transform var(--fast) var(--ease),opacity var(--fast)}.chat .composer-box .send:hover{background:var(--accent)}.chat .composer-box .send:disabled{opacity:.25;cursor:default;background:var(--ink)}.chat .composer-box .send.stop{background:var(--well);color:var(--fg)}.chat .composer-box .send.stop:hover{background:var(--ink);color:var(--ink-fg)}.chat .composer-box .send svg{width:16px;height:16px}.chat .composer-hint{pointer-events:none;text-align:center;font-size:11.5px;color:var(--mute);padding-top:8px;min-height:24px}.chat .composer-hint.on{pointer-events:auto}@media(prefers-reduced-motion:reduce){.chat .status-line .txt{color:var(--fg-2);background:none}}@media(max-width:760px){.chat .thread{padding:22px 16px 190px}.chat .composer{padding:24px 12px 14px}.chat .msg.user{max-width:88%}.chat .thread-inner{padding-top:34px}}.chat .steps.live{border-left:0;margin-left:17px;padding:0 0 4px;gap:0}.chat .steps.live .step{padding:3px 10px;font-size:12.5px}.chat .steps.live .step .ic{width:14px;height:14px;margin-top:1px}.chat .steps.live .step .ic svg{width:12px;height:12px}.chat .step.can-open{cursor:pointer}.chat .step.can-open:hover{background:#1b22300a}.chat .step.can-open .what:after{content:"";display:inline-block;width:5px;height:5px;border-radius:50%;background:var(--line-2);margin-left:8px;vertical-align:middle}.chat .step.can-open.more .what:after,.chat .step.can-open:hover .what:after{background:var(--accent)}.chat .step .brief{max-height:none}.chat .settings-foot{display:flex;justify-content:flex-end}.chat .prose ::selection,.chat .prose::selection{background:transparent}.chat .ask-layer{position:absolute;left:0;top:0;width:100%;height:0;overflow:visible;pointer-events:none}.chat .ask-mark{position:absolute;mix-blend-mode:multiply;background:var(--accent-tint);border-radius:6px;box-shadow:0 0 0 1px color-mix(in srgb,var(--accent) 18%,transparent)}.chat .ask-btn{position:absolute;pointer-events:auto;width:32px;height:32px;border-radius:50%;background:var(--ink);color:var(--ink-fg);display:grid;place-items:center;box-shadow:var(--shadow-pop);transform:translate(-50%,-100%);animation:fade var(--base) ease-out both;transition:background var(--fast)}.chat .ask-btn:hover{background:var(--accent)}.chat .ask-btn svg{width:15px;height:15px}.chat .ask-pop{position:absolute;pointer-events:auto;z-index:4;width:min(420px,100%);transform:translate(-50%,-100%);background:var(--surface);border-radius:var(--r);box-shadow:var(--shadow-pop);padding:10px 10px 10px 14px;display:flex;align-items:center;gap:8px;animation:fade var(--fast) ease-out both}.chat .ask-pop input{flex:1;min-width:0;border:0;outline:0;background:transparent;font-size:14px;padding:6px 0}.chat .ask-pop input::placeholder{color:var(--mute)}.chat .ask-pop .send{flex:none;width:32px;height:32px;border-radius:50%;background:var(--ink);color:var(--ink-fg);display:grid;place-items:center;transition:background var(--fast),opacity var(--fast)}.chat .ask-pop .send:hover{background:var(--accent)}.chat .ask-pop .send:disabled{opacity:.25;background:var(--ink)}.chat .ask-pop .send svg{width:14px;height:14px}.chat .prose .chips{display:flex;flex-wrap:wrap;gap:8px;margin:4px 0 1em}.chat .prose .chip{display:inline-flex;align-items:center;gap:10px;max-width:100%;padding:7px 8px 7px 14px;font-size:13px;font-weight:600;color:var(--fg);background:var(--surface);border-radius:var(--pill);box-shadow:var(--shadow);cursor:pointer;-webkit-user-select:none;user-select:none;transition:transform var(--fast) var(--ease),box-shadow var(--fast)}.chat .prose .chip:hover{transform:translateY(-1px);box-shadow:var(--shadow-lift)}.chat .prose .chip:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.chat .prose .chip .chip-label{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chat .prose .chip .chip-meta{font-size:11.5px;font-weight:500;color:var(--mute);white-space:nowrap}.chat .prose .chip .chip-act{flex:none;width:24px;height:24px;border-radius:50%;background:var(--accent);color:var(--accent-fg);display:grid;place-items:center;font-size:16px;line-height:1;transition:background var(--fast)}.chat .prose .chip .chip-act:before{content:"+";margin-top:-1px}.chat .prose .chip[data-kind=choices] .chip-act:before{content:"→";font-size:13px}.chat .prose .chip:hover .chip-act{background:var(--ink)}.chat .prose .chip.done{cursor:default;color:var(--fg-2);box-shadow:none;background:var(--well)}.chat .prose .chip.done:hover{transform:none}.chat .prose .chip.done .chip-act{background:var(--line-2);color:var(--surface)}.chat .prose .chip.done .chip-act:before{content:"✓";font-size:12px}.chat .msg-actions{display:flex;gap:2px;margin:-4px 0 0 -8px;opacity:0;transition:opacity var(--base)}.chat .msg.assistant:hover .msg-actions,.chat .msg-actions:focus-within{opacity:1}.chat .msg-actions .ib{width:30px;height:30px;color:var(--mute)}.chat .msg-actions .ib svg{width:14px;height:14px}.chat .msg-actions .ib:hover{color:var(--fg)}.chat .prose pre{position:relative}.chat .prose pre .copy-code{position:absolute;top:8px;right:8px;font-family:var(--sans);font-size:11.5px;font-weight:700;color:var(--mute);background:var(--surface-2);padding:3px 9px;border-radius:var(--pill);cursor:pointer;opacity:0;transition:opacity var(--fast),color var(--fast),background var(--fast)}.chat .prose pre:hover .copy-code,.chat .prose pre .copy-code:focus-visible{opacity:1}.chat .prose pre .copy-code:hover{color:var(--fg);background:var(--well)}.chat .jump{position:absolute;left:50%;bottom:120px;transform:translate(-50%);z-index:6;width:36px;height:36px;border-radius:50%;background:var(--surface);color:var(--fg-2);box-shadow:var(--shadow-lift);display:grid;place-items:center;animation:rise var(--base) var(--ease) both;transition:background var(--fast),color var(--fast)}.chat .jump:hover{background:var(--ink);color:var(--ink-fg)}.chat .jump svg{width:16px;height:16px}.chat .composer-box .attach{flex:none;width:36px;height:38px;color:var(--mute)}.chat .composer-box .attach:hover{color:var(--fg);background:#1b22300f}.chat .attachments{display:flex;flex-wrap:wrap;gap:8px;padding:6px 4px 2px 8px}.chat .thumb{position:relative;width:64px;height:64px;border-radius:10px;overflow:hidden;background:var(--well);box-shadow:var(--shadow)}.chat .thumb img{width:100%;height:100%;object-fit:cover;display:block}.chat .thumb .rm{position:absolute;top:3px;right:3px;width:20px;height:20px;border-radius:50%;background:var(--ink);color:var(--ink-fg);display:grid;place-items:center;opacity:0;transition:opacity var(--fast),background var(--fast)}.chat .thumb .rm svg{width:9px;height:9px}.chat .thumb:hover .rm,.chat .thumb .rm:focus-visible{opacity:1}.chat .thumb .rm:hover{background:var(--accent)}.chat .msg.user .pictures{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:6px}.chat .msg.user .pictures a{display:block;border-radius:var(--r);overflow:hidden;box-shadow:var(--shadow);background:var(--well)}.chat .msg.user .pictures img{display:block;max-width:260px;max-height:220px;width:auto;height:auto;object-fit:cover}.settings .key-in{flex:1;min-width:0;max-width:380px;border:0;border-radius:8px;background:var(--well);padding:8px 12px;font-size:calc(13px * var(--fs));outline:none;box-shadow:inset 0 0 0 2px transparent;transition:box-shadow var(--fast)}.settings .key-in:focus{box-shadow:inset 0 0 0 2px var(--accent)}.settings .rules-in{width:100%;max-width:60ch;border:0;border-radius:8px;background:var(--well);padding:9px 12px;font-size:calc(13px * var(--fs));line-height:1.5;outline:none;resize:vertical;box-shadow:inset 0 0 0 2px transparent;transition:box-shadow var(--fast)}.settings .rules-in:focus{box-shadow:inset 0 0 0 2px var(--accent)}.ctx-sub{animation:fade var(--fast) ease-out both}.ctx-item.open{background:var(--surface-2);color:var(--fg)}.ctx-item.open svg{color:var(--accent)}.row.staged .name.empty{color:var(--mute);font-style:italic;font-weight:500}.task h1.renameable{cursor:text;padding:4px 10px;margin:-4px -10px;border-radius:8px;transition:background var(--fast)}.task h1.renameable:hover{background:var(--accent-tint)}.task h1.renameable.empty{color:var(--mute);font-style:italic;font-weight:500}.task .head .title-in{width:min(100%,640px);text-align:center;font-size:calc(20px * var(--fs));font-weight:700;letter-spacing:-.015em;padding:4px 10px;margin:0}.row.grab{cursor:pointer}.crumbs .crumb.drop-in .c{background:var(--accent-tint);color:var(--fg);box-shadow:inset 0 0 0 2px var(--accent)}:root,:root[data-theme=srl-light]{--bg: #F2F3F6;--surface: #FFFFFF;--surface-2: #F6F7F9;--well: #E9EBF0;--fg: #1A1A1A;--fg-2: #4B5160;--mute: #8A91A0;--line: #E3E6EC;--line-2: #CDD2DB;--grid: #E9EBF0;--accent: #D80B0B;--accent-fg: #FFFFFF;--accent-tint: #FBE9E9;--ink: #112337;--ink-fg: #FFFFFF;color-scheme:light}:root[data-theme=srl-dark]{--bg: #0F1420;--surface: #1A2130;--surface-2: #212A3B;--well: #2A3446;--fg: #F2F4F8;--fg-2: #B9C2D0;--mute: #7E8A9E;--line: #2A3446;--line-2: #3A4658;--grid: #232C3D;--accent: #FF3B3B;--accent-fg: #FFFFFF;--accent-tint: #3A1E24;--ink: #F2F4F8;--ink-fg: #0F1420;--shadow: 0 1px 2px rgba(0, 0, 0, .3), 0 8px 24px rgba(0, 0, 0, .35);--shadow-lift: 0 2px 4px rgba(0, 0, 0, .35), 0 14px 32px rgba(0, 0, 0, .45);--shadow-pop: 0 4px 8px rgba(0, 0, 0, .4), 0 24px 48px rgba(0, 0, 0, .55);color-scheme:dark}:root[data-theme=pemf-light]{--bg: #F1F3F8;--surface: #FFFFFF;--surface-2: #F5F7FB;--well: #E7EBF3;--fg: #1C2230;--fg-2: #4F5868;--mute: #8590A2;--line: #E1E6EE;--line-2: #C9D1DD;--grid: #E7EBF3;--accent: #0E30F1;--accent-fg: #FFFFFF;--accent-tint: #E6EAFE;--ink: #112337;--ink-fg: #FFFFFF;color-scheme:light}:root[data-theme=pemf-dark]{--bg: #0B1020;--surface: #161D30;--surface-2: #1D2539;--well: #262F46;--fg: #EEF1F8;--fg-2: #B6BFD2;--mute: #7B86A0;--line: #262F46;--line-2: #364159;--grid: #1F2840;--accent: #527EFF;--accent-fg: #FFFFFF;--accent-tint: #1E2A55;--ink: #EEF1F8;--ink-fg: #0B1020;--shadow: 0 1px 2px rgba(0, 0, 0, .3), 0 8px 24px rgba(0, 0, 0, .35);--shadow-lift: 0 2px 4px rgba(0, 0, 0, .35), 0 14px 32px rgba(0, 0, 0, .45);--shadow-pop: 0 4px 8px rgba(0, 0, 0, .4), 0 24px 48px rgba(0, 0, 0, .55);color-scheme:dark}:root[data-theme=oasis-light]{--bg: #F6F3EE;--surface: #FFFFFF;--surface-2: #FAF7F2;--well: #EDE8E0;--fg: #0F172A;--fg-2: #4B5563;--mute: #6C727A;--line: #E8E2D9;--line-2: #D6CFC4;--grid: #EDE8E0;--accent: #E87900;--accent-fg: #FFFFFF;--accent-tint: #FDEEDC;--ink: #0F172A;--ink-fg: #FFFFFF;color-scheme:light}:root{--paper: var(--surface);--canvas: var(--bg);--line-strong: var(--line-2);--ink-2: var(--fg-2);--muted: var(--mute);--faint: var(--line-2);--accent-2: var(--accent);--accent-soft: var(--accent-tint);--accent-line: var(--accent-tint);--good: var(--accent);--good-soft: var(--accent-tint);--warn: var(--fg-2);--warn-soft: var(--well);--bad: var(--fg);--bad-soft: var(--well);--radius: var(--r);--radius-lg: var(--r-lg);--shadow-sm: var(--shadow);--shadow-lg: var(--shadow-pop);--ring: 0 0 0 2px var(--accent-tint);--tap: var(--fast) var(--ease);--quick: var(--fast) var(--ease);--settle: var(--slow) var(--ease);--drift: var(--slow) var(--ease);--font: var(--sans)}.folder-head{display:flex;align-items:center;gap:12px;padding:4px 0 18px}.folder-logo{width:44px;height:44px;border-radius:10px;object-fit:contain;background:var(--surface);box-shadow:var(--shadow);padding:4px;flex:none}.folder-mark{width:44px;height:44px;border-radius:10px;display:grid;place-items:center;color:var(--accent);background:var(--accent-tint);flex:none}.folder-mark svg{width:20px;height:20px}.folder-title{flex:1;min-width:0}.name.h{font-size:calc(22px * var(--fs));font-weight:700;letter-spacing:-.015em;padding:4px 10px;margin:-4px -10px;border-radius:8px;text-align:left;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;transition:background var(--fast)}.name.h:hover{background:var(--accent-tint)}.title-in{font-size:calc(22px * var(--fs));font-weight:700;letter-spacing:-.015em;width:min(100%,520px);padding:4px 10px;margin:-4px -10px;border:0;border-radius:8px;background:var(--well);outline:none;box-shadow:inset 0 0 0 2px var(--accent)}.row .row-logo{width:22px;height:22px;object-fit:contain;border-radius:5px}.row.tpl-row .folder.done{color:var(--accent)}.page-hint{font-size:calc(12.5px * var(--fs));color:var(--mute);margin-left:8px}.content:has(.dash-full){display:flex;flex-direction:column}.dash-full{flex:1;min-height:0;display:flex;flex-direction:column;height:calc(100vh - 140px)}.dash-full .canvas-wrap,.folder-canvas .canvas-wrap{margin:0}.doc .doc-bar{display:flex;align-items:center;gap:6px;padding:0 0 10px}.doc .doc-bar .spacer{flex:1}.doc .doc-page{background:var(--surface);border-radius:var(--r-lg);box-shadow:var(--shadow);min-height:50vh;padding:28px 0 40px;cursor:text;animation:rise var(--base) var(--ease) both}.doc .wr-editor.read{padding:0;min-height:0}.doc .doc-empty{color:var(--mute);text-align:center;padding:18vh 0;font-size:calc(13.5px * var(--fs))}.tpl-band{display:flex;align-items:center;gap:12px;padding:10px 14px;margin-bottom:12px;border-radius:var(--r);background:var(--accent-tint);color:var(--fg);font-size:calc(13px * var(--fs));line-height:1.45}.tpl-band svg{width:16px;height:16px;color:var(--accent);flex:none}.tpl-band span{flex:1}.tpl-band .btn{flex:none}.doc.is-template .doc-page{box-shadow:var(--shadow),inset 0 0 0 2px var(--accent-tint)}.pop.tpl-form{width:360px;max-height:80vh;overflow-y:auto}.tpl-field{display:flex;flex-direction:column;gap:4px}.tpl-field>span{font-size:calc(12px * var(--fs));font-weight:600;color:var(--mute)}.pop .tpl-field input{border:0;background:var(--well);border-radius:8px;padding:8px 10px}.pop .tpl-field input:focus{box-shadow:inset 0 0 0 2px var(--accent)}.pop-msg.muted{color:var(--mute);font-size:calc(12.5px * var(--fs))}.people{display:flex;flex-direction:column;gap:6px}.person{border-radius:var(--r);background:var(--bg);overflow:hidden}.person.off{opacity:.6}.person-row{display:flex;align-items:center;gap:10px;width:100%;text-align:left;padding:10px 12px;font-size:calc(13.5px * var(--fs))}.person-row .twist{width:18px;height:18px;display:grid;place-items:center;color:var(--mute)}.person-row .twist svg{width:12px;height:12px}.person-row .who{font-weight:600}.person-row .muted{color:var(--mute);font-size:calc(12.5px * var(--fs));flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.person-body{padding:4px 12px 14px 40px;animation:fade var(--base) ease-out both}.grants{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:8px 22px}.grant-col{display:flex;flex-direction:column;gap:8px}.grant-col .section-label{padding:6px 0 2px}.toggle.fixed{opacity:.55;cursor:default}.settings .people .row.add{margin-top:4px}.app.boot{background:var(--bg)}.content.tool{padding-left:28px;padding-right:28px}.tool-legacy{font-family:var(--sans)}.search-dock{position:fixed;left:50%;bottom:0;z-index:60;transform:translate(-50%,100%);opacity:0;padding-bottom:16px;transition:transform var(--slow) var(--ease),opacity var(--fast);pointer-events:none}.search-dock.near{transform:translate(-50%);opacity:1;pointer-events:auto}.search-dock-btn{display:flex;align-items:center;gap:9px;height:36px;padding:0 14px;background:var(--surface);border-radius:var(--pill);box-shadow:var(--shadow-pop);color:var(--fg-2);font-size:calc(13px * var(--fs));font-weight:600;transition:background var(--fast),color var(--fast),transform var(--fast) var(--ease)}.search-dock-btn:hover{color:var(--fg);transform:translateY(-1px)}.search-dock-btn svg{width:14px;height:14px}.palette-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:70;background:#1b22302e;animation:fade var(--fast) ease-out both}.palette{position:fixed;left:max(16px,calc(50vw - 340px));top:14vh;z-index:71;width:min(680px,calc(100vw - 32px));max-height:68vh;display:flex;flex-direction:column;background:var(--surface);border-radius:var(--r-lg);box-shadow:var(--shadow-pop);overflow:hidden;animation:pop var(--base) var(--ease) both}.palette-input{display:flex;align-items:center;gap:10px;padding:13px 14px;border-bottom:1px solid var(--line);color:var(--mute)}.palette-input input{flex:1;border:0;background:transparent;font-size:calc(15px * var(--fs));color:var(--fg);outline:none}.palette-input input::placeholder{color:var(--mute)}.palette-input .icon-btn{width:26px;height:26px;border-radius:50%;display:grid;place-items:center;color:var(--mute)}.palette-input .icon-btn:hover{background:var(--well);color:var(--fg)}.palette-results{flex:1;overflow-y:auto;padding:6px}.palette-hint{padding:26px 18px;text-align:center;color:var(--mute);font-size:calc(13px * var(--fs))}.palette-group{padding:4px 0}.palette-group-label{padding:6px 10px 4px;font-size:calc(10.5px * var(--fs));font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--mute)}.palette-item{display:flex;align-items:center;gap:11px;width:100%;padding:8px 10px;border-radius:8px;text-align:left;transition:background var(--fast)}.palette-item.active{background:var(--accent-tint)}.palette-icon{flex:none;color:var(--mute)}.palette-item.active .palette-icon{color:var(--accent)}.palette-text{min-width:0;flex:1;display:flex;flex-direction:column}.palette-title{font-size:calc(13.5px * var(--fs));font-weight:600;color:var(--fg);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.palette-sub{font-size:calc(12px * var(--fs));color:var(--mute);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.palette-crumb{flex:none;max-width:42%;font-size:calc(11.5px * var(--fs));color:var(--mute);text-align:right;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.palette-crumb .sep{margin:0 4px;opacity:.6}.palette-foot{display:flex;gap:16px;padding:9px 14px;border-top:1px solid var(--line);font-size:calc(11.5px * var(--fs));color:var(--mute)}.palette-foot kbd{margin-right:3px}.spinner{width:14px;height:14px;border:2px solid var(--line-2);border-top-color:var(--accent);border-radius:50%;animation:spin .8s linear infinite}.chat-unconfigured{display:flex;align-items:center;gap:8px;margin:12px 28px 0;padding:8px 12px;border-radius:10px;background:var(--well);font-size:calc(12.5px * var(--fs));font-weight:600;color:var(--fg)}.chat-unconfigured svg{width:14px;height:14px;flex:none}.node .ref{flex:1;min-height:0;display:flex;align-items:center;gap:10px;padding:8px 12px;cursor:pointer;overflow:hidden}.node .ref .ref-ic{width:28px;height:28px;border-radius:8px;display:grid;place-items:center;background:var(--accent-tint);color:var(--accent);flex:none}.node .ref .ref-ic svg{width:14px;height:14px}.node .ref .ref-name{flex:1;min-width:0;font-size:calc(13.5px * var(--fs));font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.node .ref .ref-sub{display:none;font-size:calc(11.5px * var(--fs));color:var(--mute);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:45%}.node .ref.wide .ref-sub{display:block}.node.k-link:hover .ref-name,.node.k-doc:hover .ref-name,.node.k-folder:hover .ref-name{color:var(--accent)}.node .node-name{position:absolute;left:10px;bottom:4px;font-size:calc(10.5px * var(--fs));font-weight:600;color:var(--mute);pointer-events:none;max-width:calc(100% - 20px);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.settings .integrations h2{font-size:calc(14px * var(--fs));font-weight:700;margin:0 0 4px}.settings .integrations>p{color:var(--mute);font-size:calc(13px * var(--fs));margin:0 0 8px;max-width:60ch}.tool-logo{object-fit:contain;border-radius:4px;display:block}.ib .tool-logo{width:18px;height:18px}.tool-rows{display:flex;flex-direction:column}.tool-row{display:flex;align-items:center;gap:10px;padding:8px 0;border-bottom:1px solid var(--line)}.tool-row:last-child{border-bottom:0}.tool-mark-cell{width:32px;height:32px;border-radius:8px;display:grid;place-items:center;background:var(--accent-tint);color:var(--accent);flex:none}.tool-mark-cell svg{width:16px;height:16px}.tool-row .tool-name{flex:1;font-weight:600;font-size:calc(13.5px * var(--fs))}:root[data-theme=srl-dark] .wr-sel button,:root[data-theme=srl-dark] .wr-tools button,:root[data-theme=srl-dark] .node .sk-tools button,:root[data-theme=pemf-dark] .wr-sel button,:root[data-theme=pemf-dark] .wr-tools button,:root[data-theme=pemf-dark] .node .sk-tools button{color:#0f1420c7}:root[data-theme=srl-dark] .wr-sel button:hover,:root[data-theme=srl-dark] .wr-tools button:hover,:root[data-theme=srl-dark] .node .sk-tools button:hover,:root[data-theme=pemf-dark] .wr-sel button:hover,:root[data-theme=pemf-dark] .wr-tools button:hover,:root[data-theme=pemf-dark] .node .sk-tools button:hover{color:#0f1420;background:#0f14201f}:root[data-theme=srl-dark] .wr-tools button.on,:root[data-theme=srl-dark] .node .sk-tools button.on,:root[data-theme=pemf-dark] .wr-tools button.on,:root[data-theme=pemf-dark] .node .sk-tools button.on{color:var(--accent-fg);background:var(--accent)}:root[data-theme=srl-dark] .wr-sel .sep,:root[data-theme=srl-dark] .wr-tools .sep,:root[data-theme=srl-dark] .node .sk-tools .sep,:root[data-theme=pemf-dark] .wr-sel .sep,:root[data-theme=pemf-dark] .wr-tools .sep,:root[data-theme=pemf-dark] .node .sk-tools .sep{background:#0f142040}:root[data-theme=srl-dark] .toast button,:root[data-theme=pemf-dark] .toast button{background:#0f14201f}:root[data-theme=srl-dark] .toast button:hover,:root[data-theme=pemf-dark] .toast button:hover{background:var(--accent);color:var(--accent-fg)}.chat-key{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:6px 0 14px}.chat-key.compact{margin:2px 0 0}.chat-key-preview{font-family:var(--mono);font-size:calc(12px * var(--fs));padding:4px 10px;border-radius:var(--pill);background:var(--well);color:var(--fg)}.chat-key-preview.none{color:var(--mute)}.canvas-grid .edges{position:absolute;left:0;top:0;overflow:visible;pointer-events:none;z-index:1}.edges .edge-hit{fill:none;stroke:transparent;stroke-width:14px;pointer-events:stroke;cursor:pointer}.edges .edge-line{fill:none;stroke:var(--accent);stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;opacity:.85;transition:stroke-width var(--fast),opacity var(--fast)}.edges .edge-g:hover .edge-line{opacity:1}.edges .edge-g.on .edge-line{opacity:1;stroke-width:3px;filter:drop-shadow(0 0 3px var(--accent-tint))}.edges .edge-line.pending{stroke-dasharray:6 5;opacity:.9;animation:edge-flow .6s linear infinite}@keyframes edge-flow{to{stroke-dashoffset:-11}}.edges .arrow-head{fill:var(--accent)}.edges .edge-label{pointer-events:auto;cursor:pointer}.edges .edge-label rect{fill:var(--surface);stroke:var(--accent);stroke-width:1px}.edges .edge-label text{font-family:var(--sans);font-size:11.5px;font-weight:600;fill:var(--fg)}.canvas-grid .node{z-index:2}.canvas-grid .node.live{z-index:5}.node .handle{position:absolute;width:9px;height:9px;border-radius:50%;background:var(--accent);border:2px solid var(--surface);box-shadow:0 0 0 1px var(--accent-tint);z-index:6;opacity:.8;cursor:crosshair;transition:opacity var(--fast),transform var(--fast) var(--ease)}.node .handle.n{left:50%;top:-5px;margin-left:-4.5px}.node .handle.s{left:50%;bottom:-5px;margin-left:-4.5px}.node .handle.w{top:50%;left:-5px;margin-top:-4.5px}.node .handle.e{top:50%;right:-5px;margin-top:-4.5px}.node .handle.offer{opacity:.45;background:var(--line-2)}.node:hover .handle,.canvas-wrap.connecting .node .handle{opacity:1}.node .handle:hover,.node.target:hover .handle{background:var(--accent);transform:scale(1.35)}.node.target{cursor:crosshair}.node.target:hover{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-tint),var(--shadow-lift)}.canvas-wrap.connecting .canvas-outer{cursor:crosshair}.connect-hint{position:absolute;left:50%;bottom:14px;transform:translate(-50%);padding:6px 14px;border-radius:var(--pill);background:var(--ink);color:var(--ink-fg);font-size:calc(12px * var(--fs));font-weight:600;box-shadow:var(--shadow-pop);z-index:6;animation:pop var(--fast) ease-out both;pointer-events:none}.node .embed-box{flex:1;min-height:0;position:relative;border-radius:calc(var(--r) - 1px);overflow:hidden;background:var(--well)}.node .embed-box iframe{width:100%;height:100%;border:0;display:block}.node .embed-shield{position:absolute;top:0;right:0;bottom:0;left:0;cursor:grab}.node.frame-live .embed-box{box-shadow:inset 0 0 0 2px var(--accent)}.node.live .embed-shield{cursor:grabbing}.zoomctl{opacity:1}.node .x{opacity:.55}.canvas-wrap.fill{flex:1;min-height:0}.doc-canvas{display:flex;flex-direction:column;flex:1;min-height:0;height:calc(100vh - 150px)}.doc-canvas .canvas-wrap{margin:0}.row.drop-before{box-shadow:0 -3px 0 0 var(--accent),var(--shadow)}.row.drop-after{box-shadow:0 3px 0 0 var(--accent),var(--shadow)}.ak-keys{display:flex;flex-direction:column;gap:6px}.ak-key{border-radius:var(--r);background:var(--bg);overflow:hidden}.ak-row{display:flex;align-items:center;gap:10px;padding:10px 12px;font-size:calc(13.5px * var(--fs));min-width:0}.ak-name{font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ak-prefix{font-family:var(--mono);font-size:calc(12px * var(--fs));color:var(--fg-2);flex:none}.ak-when{color:var(--mute);font-size:calc(12.5px * var(--fs));flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ak-revoke{flex:none;opacity:0;transition:opacity var(--fast)}.ak-key:hover .ak-revoke,.ak-revoke:focus-visible{opacity:1}.ak-fresh{padding:0 12px 12px;display:flex;flex-direction:column;gap:6px;animation:fade var(--base) ease-out both}.ak-mono{display:flex;align-items:center;gap:8px;background:var(--well);border-radius:8px;padding:6px 6px 6px 12px;min-width:0}.ak-mono code{font-family:var(--mono);font-size:calc(12.5px * var(--fs));color:var(--fg);flex:1;min-width:0;overflow-wrap:anywhere;-webkit-user-select:all;user-select:all}.ak-mono .ib{flex:none}.ak-note{font-size:calc(12.5px * var(--fs));color:var(--accent);font-weight:600}.ak-empty{color:var(--mute);font-size:calc(13px * var(--fs));padding:6px 12px}.ak .ak-keys .row.add{margin-top:4px}.ak-connect{margin-top:6px}.ak-connect .section-label{padding-left:0}.ak-lines{list-style:none;margin:10px 0 0;padding:0;display:flex;flex-direction:column;gap:8px;font-size:calc(13px * var(--fs));color:var(--fg-2);line-height:1.5}.ak-lines b{color:var(--fg);font-weight:600}.ak-lines code{font-family:var(--mono);font-size:calc(12px * var(--fs));color:var(--fg);background:var(--well);padding:1px 6px;border-radius:6px;overflow-wrap:anywhere}.chrome{transform:none;transition:none}.chrome .search.always input{width:150px}.chrome .search.always{background:var(--well);color:var(--fg)}.wr-top.shown{transform:translate(-50%);opacity:1;pointer-events:auto}.wr-tools button.word{font-size:calc(11.5px * var(--fs));padding:0 9px}.palette-scopes{display:flex;gap:2px;padding:8px 10px 4px;overflow-x:auto;scrollbar-width:none;border-bottom:1px solid var(--line)}.palette-scopes::-webkit-scrollbar{display:none}.palette-scopes .subtab{padding:5px 11px;font-size:calc(12px * var(--fs));white-space:nowrap}.palette-sub mark{background:var(--accent-tint);color:var(--fg);border-radius:3px;padding:0 2px}.palette-icon svg{width:15px;height:15px}.doc .doc-bar .doc-kind{width:28px;height:28px;border-radius:8px;display:grid;place-items:center;background:var(--accent-tint);color:var(--accent);flex:none;margin-right:4px}.doc .doc-bar .doc-kind svg{width:15px;height:15px}.content.wide{padding-left:28px;padding-right:28px}.tpl-band.tags-band{align-items:flex-start}.tpl-band.tags-band span{font-family:var(--mono);font-size:calc(12px * var(--fs));line-height:1.6}.wr-editor figure{margin:12px 0}.wr-editor figure.media img,.wr-editor figure.media video,.wr-editor img,.wr-editor video{max-width:100%;height:auto;border-radius:10px;display:block}.wr-editor figure.embed{position:relative;width:100%;aspect-ratio:16 / 9;border-radius:10px;overflow:hidden;background:var(--well)}.wr-editor figure.embed iframe{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;border:0}.wr-editor .embed-blocked{padding:10px 12px;border-radius:8px;background:var(--well);color:var(--mute);font-size:calc(12.5px * var(--fs))}.wr-editor table{border-collapse:collapse;margin:8px 0;font-size:calc(13px * var(--fs))}.wr-editor td,.wr-editor th{border:1px solid var(--line-2);padding:4px 8px;text-align:left}.wr-editor th{background:var(--well);font-weight:600}.row .prog{display:inline-block;width:64px;height:5px;border-radius:var(--pill);background:var(--well);overflow:hidden;margin-left:4px;vertical-align:middle}.row .prog i{display:block;height:100%;background:var(--accent);border-radius:var(--pill)}.row .prog.done{background:var(--accent)}.pr-view ::selection{background:var(--accent-tint)}.pr-band{display:flex;align-items:center;gap:12px;margin:0 0 24px;padding:10px 14px;border-radius:var(--r);background:var(--surface-2);font-size:calc(12.5px * var(--fs));line-height:1.4;color:var(--fg-2);cursor:default}.pr-band .pr-bar{flex:1;min-width:60px;height:4px;border-radius:2px;background:var(--well);overflow:hidden}.pr-band .pr-fill{height:100%;border-radius:2px;background:var(--accent);transition:width var(--base) var(--ease)}.pr-band .pr-count{display:inline-flex;align-items:center;gap:5px;white-space:nowrap;font-weight:700;color:var(--fg);font-variant-numeric:tabular-nums}.pr-band .pr-count svg{width:14px;height:14px}.pr-band .pr-pct{white-space:nowrap;color:var(--mute);font-variant-numeric:tabular-nums;min-width:3.2em;text-align:right}.pr-band.done .pr-count{color:var(--accent)}.pr-band .pr-reset{padding:4px 10px;border-radius:var(--pill);font-size:calc(12.5px * var(--fs));font-weight:600;color:var(--mute);white-space:nowrap;transition:background var(--fast),color var(--fast)}.pr-band .pr-reset:hover{background:var(--well);color:var(--fg)}.pr-html{cursor:text}.pr-html>li{margin-left:1.5em}.pr-step{display:flex;align-items:flex-start;gap:10px;margin:0 -8px .5em;padding:5px 8px;border-radius:var(--r);cursor:pointer;transition:background var(--fast)}.pr-step:hover{background:var(--surface-2)}.pr-step.inert{cursor:default}.pr-step.inert:hover{background:transparent}.pr-step .pr-box{width:18px;height:18px;margin-top:calc(.9em - 9px);border-radius:50%;border:1.5px solid var(--line-2);background:var(--surface);display:grid;place-items:center;color:var(--accent-fg);flex:none;transition:background var(--fast),border-color var(--fast)}.pr-step:hover .pr-box,.pr-step .pr-box:hover{border-color:var(--accent)}.pr-step.inert:hover .pr-box{border-color:var(--line-2)}.pr-step .pr-box:disabled{cursor:default}.pr-step .pr-box:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.pr-step.done .pr-box{background:var(--accent);border-color:var(--accent)}.pr-step .pr-box svg{width:11px;height:11px}.pr-step .pr-words{flex:1;min-width:0;overflow-wrap:anywhere}.pr-step .pr-words>:last-child{margin-bottom:0}.pr-step.done .pr-words{text-decoration:line-through;color:var(--accent)}.pr-step.done .pr-words a{color:inherit}.pr-branch{margin:0 0 .9em}.pr-q{margin:0 0 .5em;font-weight:700}.pr-chips{display:flex;flex-wrap:wrap;gap:6px;margin:0 0 .9em}.pr-chip{display:inline-flex;align-items:center;gap:6px;padding:5px 12px;border-radius:var(--pill);font-size:calc(12.5px * var(--fs));font-weight:600;line-height:1.4;color:var(--fg-2);background:var(--surface);box-shadow:var(--shadow);white-space:nowrap;transition:background var(--fast),color var(--fast)}.pr-chip:hover{color:var(--fg)}.pr-chip.on{background:var(--ink);color:var(--ink-fg)}.pr-chip:disabled{cursor:default}.pr-chip:disabled:hover{color:var(--fg-2)}.pr-chip.on:disabled:hover{color:var(--ink-fg)}.pr-chip:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.pr-option{transition:opacity var(--base) var(--ease)}.pr-option.dim{opacity:.45}.pr-hint{margin:0 0 .5em;color:var(--mute);font-size:calc(12.5px * var(--fs))}.pr-figure{display:inline-block;margin:0 0 .9em;padding:4px 12px;border-radius:var(--pill);background:var(--well);color:var(--fg-2);font-size:calc(12.5px * var(--fs));font-weight:600;line-height:1.4;font-variant-numeric:tabular-nums;cursor:default}.pr-video{position:relative;aspect-ratio:16 / 9;margin:0 0 .9em;border-radius:var(--r);overflow:hidden;background:var(--well)}.pr-video iframe,.pr-video video{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;border:0;display:block}.pr-image{margin:0 0 .9em}.pr-image img{display:block;max-width:100%;height:auto;border-radius:var(--r)}.sh{display:flex;flex-direction:column;height:var(--sh-height, calc(100vh - 170px) );min-height:240px;min-width:0}.sh-tools{display:flex;align-items:center;gap:6px;padding:0 0 8px;flex:none}.sh-tools .btn svg{width:14px;height:14px}.sh-file{display:none}.sh-fbar{display:flex;align-items:center;gap:10px;height:36px;flex:none;margin-bottom:8px;padding:0 8px 0 12px;background:var(--surface);border-radius:var(--r);box-shadow:var(--shadow)}.sh-ref{font-family:var(--mono);font-size:calc(12px * var(--fs));font-weight:700;color:var(--mute);min-width:34px;flex:none}.sh-fin{flex:1;min-width:0;height:100%;border:0;outline:none;background:transparent;font-size:calc(13px * var(--fs));color:var(--fg);padding:0}.sh-fin::placeholder{color:var(--mute)}.sh-fin:read-only{color:var(--fg-2)}.sh-scroll{flex:1;min-height:0;overflow:auto;position:relative;background:var(--surface);border-radius:var(--r-lg);box-shadow:var(--shadow);font-size:calc(13px * var(--fs));line-height:1.4;scrollbar-gutter:stable}.sh-scroll:focus,.sh-scroll:focus-visible{outline:none}.sh-scroll:focus-within .sh-cell.cur{box-shadow:inset 0 0 0 2px var(--accent)}.sh-space{flex:none}.sh-head{position:sticky;top:0;z-index:3;display:flex;height:46px;background:var(--surface-2);border-bottom:1px solid var(--line-2);width:max-content}.sh-col{position:relative;flex:none;display:flex;flex-direction:column;justify-content:center;align-items:stretch;padding:4px 8px;border-right:1px solid var(--line);min-width:0;transition:background var(--fast)}.sh-col.on{background:var(--accent-tint)}.sh-letter{font-family:var(--mono);font-size:calc(10.5px * var(--fs));font-weight:700;letter-spacing:.04em;color:var(--mute);text-align:left;line-height:1.2;padding:0 2px;border-radius:4px;transition:color var(--fast)}.sh-letter:hover{color:var(--accent)}.sh-colname{font-size:calc(12.5px * var(--fs));font-weight:700;color:var(--fg-2);text-align:left;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;padding:1px 2px;margin:0 -2px;border-radius:4px;transition:background var(--fast),color var(--fast)}.sh-colname:hover{background:var(--accent-tint);color:var(--fg)}.sh-colname-in{font-size:calc(12.5px * var(--fs));font-weight:700;color:var(--fg);width:100%;min-width:0;border:0;outline:none;border-radius:4px;background:var(--well);padding:1px 4px;margin:0 -2px;box-shadow:inset 0 0 0 2px var(--accent)}.sh-grip{position:absolute;top:0;right:-4px;bottom:0;width:8px;cursor:col-resize;z-index:1}.sh-grip:after{content:"";position:absolute;top:8px;bottom:8px;left:3px;width:2px;border-radius:var(--pill);background:var(--accent);opacity:0;transition:opacity var(--fast)}.sh-grip:hover:after{opacity:1}body.sh-resizing,body.sh-resizing *{cursor:col-resize!important;-webkit-user-select:none!important;user-select:none!important}.sh-gut{position:sticky;left:0;z-index:2;flex:none;width:48px;display:flex;align-items:flex-start;justify-content:flex-end;padding:5px 8px 5px 4px;font-family:var(--mono);font-size:calc(11px * var(--fs));font-weight:600;color:var(--mute);background:var(--surface-2);border-right:1px solid var(--line-2);border-bottom:1px solid var(--line);transition:background var(--fast),color var(--fast)}.sh-gut.near{color:var(--fg-2)}.sh-gut.on{background:var(--accent-tint);color:var(--accent)}button.sh-gut:hover{color:var(--fg)}.sh-corner{z-index:4;border-bottom:0}.sh-row{display:flex;align-items:stretch;width:max-content}.sh-cell{position:relative;flex:none;padding:5px 8px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);white-space:pre-wrap;overflow-wrap:anywhere;min-height:30px;cursor:cell;-webkit-user-select:none;user-select:none;color:var(--fg);transition:background var(--fast)}.sh-cell.num{text-align:right;font-variant-numeric:tabular-nums}.sh-cell.err{color:var(--accent);font-weight:700}.sh-cell.in{background:var(--accent-tint)}.sh-cell.cur{box-shadow:inset 0 0 0 2px var(--line-2);z-index:1}.sh-cell.f:after{content:"";position:absolute;top:3px;right:3px;width:5px;height:5px;border-radius:50%;background:var(--accent);opacity:.4;pointer-events:none}.sh-cell.editing{padding:0;box-shadow:inset 0 0 0 2px var(--accent);background:var(--surface);z-index:2}.sh-cell.editing:after{display:none}.sh-edit{display:block;width:100%;min-height:30px;padding:5px 8px;border:0;outline:none;background:transparent;color:var(--fg);font:inherit;line-height:inherit;white-space:pre-wrap;overflow-wrap:anywhere;overflow:hidden;text-align:left}.sh.read .sh-cell,.sh.read .sh-colname{cursor:default}.sh.read .sh-colname:hover{background:transparent;color:var(--fg-2)}@media(max-width:720px){.sh-tools{flex-wrap:wrap}}@keyframes page-in{0%{opacity:0}to{opacity:1}}@keyframes card-in{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}@keyframes tab-underline{0%{transform:scaleX(.4);opacity:0}to{transform:none;opacity:1}}@keyframes row-in{0%{opacity:0;background:var(--good-soft);transform:translateY(-4px)}60%{background:var(--good-soft)}to{opacity:1;background:transparent;transform:none}}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes panel-in{0%{transform:translate(26px);opacity:0}to{transform:none;opacity:1}}@keyframes slide{0%{transform:translate(-100%)}to{transform:translate(320%)}}@keyframes line-in{0%{opacity:0;transform:translateY(3px)}to{opacity:1;transform:none}}@keyframes pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.45;transform:scale(.82)}}@keyframes fullscreen-in{0%{opacity:0;transform:scale(.985)}to{opacity:1;transform:none}}@keyframes bulk-in{0%{opacity:0;transform:translate(-50%,12px)}to{opacity:1;transform:translate(-50%)}}@keyframes toast-in{0%{opacity:0;transform:translate(14px)}to{opacity:1;transform:none}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes shimmer{0%{background-position:100% 0}to{background-position:-100% 0}}@keyframes palette-in{0%{opacity:0;transform:translate(-50%,-10px) scale(.985)}to{opacity:1;transform:translate(-50%) scale(1)}}@keyframes row-focus{0%,55%{background:var(--accent-soft)}to{background:transparent}}.tool-legacy *{box-sizing:border-box}.tool-legacy body{overflow:hidden}.tool-legacy h1,.tool-legacy h2,.tool-legacy h3,.tool-legacy h4{margin:0;font-weight:600;letter-spacing:-.011em}.tool-legacy a{color:var(--accent);text-decoration:none}.tool-legacy a:hover{text-decoration:underline}.tool-legacy button,.tool-legacy input,.tool-legacy select,.tool-legacy textarea{font:inherit;color:inherit}.tool-legacy ::selection{background:var(--accent-tint)}.tool-legacy :focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:4px}.tool-legacy *{scrollbar-width:thin;scrollbar-color:var(--line-strong) transparent}.tool-legacy *::-webkit-scrollbar{width:10px;height:10px}.tool-legacy *::-webkit-scrollbar-thumb{background:var(--line-strong);border-radius:8px;border:3px solid var(--surface)}.tool-legacy *::-webkit-scrollbar-track{background:transparent}.tool-legacy .app{display:flex;flex-direction:column;height:100vh;height:100dvh}.tool-legacy .topbar{position:sticky;top:0;z-index:40;display:flex;align-items:center;gap:14px;height:56px;padding:0 22px;background:color-mix(in srgb,var(--surface) 82%,transparent);-webkit-backdrop-filter:saturate(180%) blur(14px);backdrop-filter:saturate(180%) blur(14px);border-bottom:1px solid var(--line)}.tool-legacy .topbar .brand{display:flex;align-items:center;gap:9px;font-weight:650;letter-spacing:-.02em;color:var(--ink);cursor:pointer;background:none;border:0;padding:4px 6px;margin-left:-6px;border-radius:8px;transition:background var(--tap)}.tool-legacy .topbar .brand:hover{background:var(--well)}.tool-legacy .brand-mark{width:19px;height:19px;border-radius:6px;background:var(--accent);box-shadow:inset 0 0 0 1px #0000000f,0 1px 3px #3061d54d}.tool-legacy .crumbs{display:flex;align-items:center;gap:7px;color:var(--muted);font-size:13px;min-width:0}.tool-legacy .crumbs .sep{color:var(--faint)}.tool-legacy .crumbs button{background:none;border:0;padding:3px 6px;border-radius:6px;color:var(--ink-2);cursor:pointer;transition:background var(--tap),color var(--tap);white-space:nowrap}.tool-legacy .crumbs button:hover{background:var(--well);color:var(--ink)}.tool-legacy .crumbs .current{color:var(--ink);font-weight:550;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tool-legacy .topbar-right{margin-left:auto;display:flex;align-items:center;gap:8px}.tool-legacy .page{flex:1;min-height:0;overflow-y:auto;animation:page-in var(--settle) backwards}.tool-legacy .wrap{max-width:1380px;margin:0 auto;padding:28px 24px 64px}.tool-legacy .wrap.narrow{max-width:1020px}.tool-legacy .eyebrow{font-size:11px;font-weight:600;letter-spacing:.09em;text-transform:uppercase;color:var(--faint)}.tool-legacy .page-title{font-size:30px;letter-spacing:-.028em;margin:7px 0 6px;background:linear-gradient(180deg,var(--fg),var(--fg-2));-webkit-background-clip:text;background-clip:text;color:transparent}.tool-legacy .lede{color:var(--muted);font-size:14.5px;line-height:1.6;max-width:64ch}.tool-legacy .section-head{display:flex;align-items:baseline;justify-content:space-between;gap:16px;margin:30px 0 12px}.tool-legacy .section-head h2{font-size:15px;letter-spacing:-.01em}.tool-legacy .card-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:16px}.tool-legacy .card{position:relative;display:flex;flex-direction:column;gap:10px;padding:22px;text-align:left;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);cursor:pointer;transition:transform var(--quick),box-shadow var(--quick),border-color var(--quick);animation:card-in var(--settle) both;overflow:hidden}.tool-legacy .card:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(120% 80% at 100% 0%,var(--card-accent, var(--accent)) 0%,transparent 62%);opacity:0;transition:opacity var(--drift);pointer-events:none}.tool-legacy .card:before{content:"";position:absolute;inset:0 0 auto 0;height:2.5px;background:var(--card-accent, var(--accent));transform:scaleX(0);transform-origin:left;transition:transform var(--settle)}.tool-legacy .card:hover{transform:translateY(-3px);box-shadow:var(--shadow);border-color:var(--line-strong)}.tool-legacy .card:hover:before{transform:scaleX(1)}.tool-legacy .card:hover:after{opacity:.05}.tool-legacy .card:active{transform:translateY(0);transition-duration:60ms}.tool-legacy .card-title-row{display:flex;align-items:center;gap:11px}.tool-legacy .card-dot{width:11px;height:11px;border-radius:3.5px;flex:none;background:var(--card-accent, var(--accent));box-shadow:0 0 0 3px color-mix(in srgb,var(--card-accent, var(--accent)) 14%,transparent)}.tool-legacy .card h3{font-size:16.5px;letter-spacing:-.016em}.tool-legacy .card-title-row,.tool-legacy .card p,.tool-legacy .card-stats{position:relative;z-index:1}.tool-legacy .card p{margin:0;color:var(--muted);font-size:13px;line-height:1.55}.tool-legacy .card-stats{display:flex;gap:16px;margin-top:auto;padding-top:12px;border-top:1px solid var(--line);color:var(--muted);font-size:12.5px}.tool-legacy .card-stats strong{color:var(--ink);font-weight:600;font-variant-numeric:tabular-nums}.tool-legacy .card.disabled{cursor:default;opacity:.72}.tool-legacy .card.disabled:hover{transform:none;box-shadow:var(--shadow-sm);border-color:var(--line)}.tool-legacy .card.disabled:hover:before{opacity:0}.tool-legacy .btn{display:inline-flex;align-items:center;justify-content:center;gap:7px;height:32px;padding:0 13px;background:var(--surface);border:1px solid var(--line-strong);border-radius:8px;color:var(--ink);font-size:13px;font-weight:500;cursor:pointer;white-space:nowrap;transition:background var(--tap),border-color var(--tap),transform var(--tap),box-shadow var(--tap)}.tool-legacy .btn:hover:not(:disabled){background:var(--surface-2);border-color:var(--line-2)}.tool-legacy .btn:active:not(:disabled){transform:scale(.985);background:var(--well)}.tool-legacy .btn:disabled{opacity:.5;cursor:not-allowed}.tool-legacy .btn.primary{background:var(--ink);border-color:var(--ink);color:var(--ink-fg);box-shadow:0 1px 2px #12161e2e}.tool-legacy .btn.primary:hover:not(:disabled){background:color-mix(in srgb,var(--ink) 88%,var(--accent));border-color:var(--ink)}.tool-legacy .btn.accent{background:var(--accent);border-color:var(--accent);color:var(--ink-fg);box-shadow:0 1px 3px #3061d559}.tool-legacy .btn.accent:hover:not(:disabled){background:color-mix(in srgb,var(--accent) 85%,var(--fg))}.tool-legacy .btn.danger{color:var(--bad);border-color:var(--line-2)}.tool-legacy .btn.danger:hover:not(:disabled){background:var(--bad-soft)}.tool-legacy .btn.ghost{border-color:transparent;background:transparent}.tool-legacy .btn.ghost:hover:not(:disabled){background:var(--well);border-color:transparent}.tool-legacy .btn.sm{height:27px;padding:0 9px;font-size:12.5px;border-radius:7px}.tool-legacy .icon-btn{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;border:1px solid transparent;background:transparent;border-radius:8px;color:var(--muted);cursor:pointer;transition:background var(--tap),color var(--tap)}.tool-legacy .icon-btn:hover{background:var(--well);color:var(--ink)}.tool-legacy .field{display:flex;flex-direction:column;gap:5px}.tool-legacy .field label{font-size:12px;font-weight:550;color:var(--ink-2)}.tool-legacy .field .hint{font-size:11.5px;color:var(--faint)}.tool-legacy .input,.tool-legacy .select,.tool-legacy .textarea{width:100%;height:34px;padding:0 11px;background:var(--surface);border:1px solid var(--line-strong);border-radius:8px;transition:border-color var(--tap),box-shadow var(--tap)}.tool-legacy .textarea{height:auto;padding:9px 11px;resize:vertical;line-height:1.6}.tool-legacy .input:hover,.tool-legacy .select:hover,.tool-legacy .textarea:hover{border-color:var(--line-2)}.tool-legacy .input:focus,.tool-legacy .select:focus,.tool-legacy .textarea:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.tool-legacy .input::placeholder,.tool-legacy .textarea::placeholder{color:var(--faint)}.tool-legacy .select{-webkit-appearance:none;-moz-appearance:none;appearance:none;padding-right:30px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath d='M3 4.5 6 7.5 9 4.5' stroke='%237b828e' stroke-width='1.4' fill='none' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 10px center}.tool-legacy .checkbox{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--ink-2);cursor:pointer;-webkit-user-select:none;user-select:none;padding:3px 0}.tool-legacy .checkbox input{width:15px;height:15px;accent-color:var(--accent);cursor:pointer;margin:0}.tool-legacy .search{position:relative;flex:1;min-width:220px}.tool-legacy .search svg{position:absolute;left:10px;top:50%;transform:translateY(-50%);color:var(--faint);pointer-events:none}.tool-legacy .search input{width:100%;height:34px;padding:0 62px 0 32px;background:var(--surface-2);border:1px solid transparent;border-radius:8px;transition:background var(--tap),border-color var(--tap),box-shadow var(--tap)}.tool-legacy .search input:hover{background:var(--well)}.tool-legacy .search input:focus{outline:none;background:var(--surface);border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.tool-legacy .search kbd{position:absolute;right:9px;top:50%;transform:translateY(-50%);font-family:var(--font);font-size:11px;color:var(--faint);background:var(--surface);border:1px solid var(--line);border-radius:5px;padding:1px 5px;pointer-events:none}.tool-legacy .search .clear{position:absolute;right:7px;top:50%;transform:translateY(-50%)}.tool-legacy .tabs{display:flex;gap:2px;border-bottom:1px solid var(--line);margin-bottom:18px}.tool-legacy .tab{position:relative;background:none;border:0;padding:9px 13px 11px;color:var(--muted);font-size:13.5px;font-weight:500;cursor:pointer;border-radius:8px 8px 0 0;transition:color var(--tap),background var(--tap);display:flex;align-items:center;gap:7px}.tool-legacy .tab:hover{color:var(--ink);background:var(--surface-2)}.tool-legacy .tab.active{color:var(--ink);font-weight:600}.tool-legacy .tab.active:after{content:"";position:absolute;left:10px;right:10px;bottom:-1px;height:2px;background:var(--ink);border-radius:2px 2px 0 0;animation:tab-underline var(--quick) both}.tool-legacy .pill{display:inline-flex;align-items:center;justify-content:center;min-width:19px;height:19px;padding:0 6px;background:var(--well);border-radius:999px;font-size:11px;font-weight:600;color:var(--ink-2);font-variant-numeric:tabular-nums}.tool-legacy .tab.active .pill{background:var(--ink);color:var(--ink-fg)}.tool-legacy .stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(132px,1fr));gap:1px;background:var(--line);border:1px solid var(--line);border-radius:var(--radius-lg);overflow:hidden;margin-bottom:20px;box-shadow:var(--shadow-sm)}.tool-legacy .stat{background:var(--surface);padding:14px 16px;transition:background var(--quick)}.tool-legacy .stat:hover{background:var(--surface-2)}.tool-legacy .stat .k{font-size:11.5px;color:var(--muted);margin-bottom:4px}.tool-legacy .stat .v{font-size:22px;font-weight:640;letter-spacing:-.026em;font-variant-numeric:tabular-nums}.tool-legacy .toolbar{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:14px}.tool-legacy .toolbar .spacer{flex:1}.tool-legacy .filter-chip{display:inline-flex;align-items:center;gap:6px;height:30px;padding:0 10px;background:var(--surface);border:1px solid var(--line-strong);border-radius:999px;font-size:12.5px;color:var(--ink-2);cursor:pointer;transition:background var(--tap),border-color var(--tap),color var(--tap);white-space:nowrap}.tool-legacy .filter-chip:hover{background:var(--surface-2)}.tool-legacy .filter-chip.on{background:var(--ink);border-color:var(--ink);color:var(--ink-fg)}.tool-legacy .table-wrap{border:1px solid var(--line);border-radius:var(--radius-lg);overflow:auto;background:var(--surface);box-shadow:var(--shadow-sm)}.tool-legacy table.data{width:100%;border-collapse:separate;border-spacing:0;font-size:13px}.tool-legacy table.data th{position:sticky;top:0;z-index:2;background:var(--surface-2);border-bottom:1px solid var(--line);padding:9px 12px;text-align:left;font-size:11.5px;font-weight:600;letter-spacing:.02em;color:var(--muted);white-space:nowrap;-webkit-user-select:none;user-select:none}.tool-legacy table.data th.sortable{cursor:pointer;transition:color var(--tap),background var(--tap)}.tool-legacy table.data th.sortable:hover{color:var(--ink);background:var(--well)}.tool-legacy table.data th .arrow{margin-left:4px;color:var(--ink)}.tool-legacy table.data td{padding:9px 12px;border-bottom:1px solid var(--line);vertical-align:middle}.tool-legacy table.data tbody tr{cursor:pointer;transition:background var(--tap),box-shadow var(--tap)}.tool-legacy table.data tbody tr:hover{background:var(--surface-2)}.tool-legacy table.data tbody tr.selected{background:var(--accent-soft);box-shadow:inset 2.5px 0 0 var(--accent)}.tool-legacy table.data tbody tr.checked{background:var(--accent-tint)}.tool-legacy table.data tbody tr:last-child td{border-bottom:0}.tool-legacy tr.row-new{animation:row-in var(--drift) both}.tool-legacy .cell-primary{font-weight:550;color:var(--ink)}.tool-legacy .cell-sub{color:var(--muted);font-size:12px}.tool-legacy .cell-mono{font-family:var(--sans);font-size:12px}.tool-legacy .cell-empty{color:var(--faint)}.tool-legacy .col-check{width:34px;padding-right:0!important}.tool-legacy .col-check input{width:14px;height:14px;accent-color:var(--accent);cursor:pointer;margin:0;display:block}.tool-legacy .trunc{display:block;max-width:220px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tool-legacy .badge{display:inline-flex;align-items:center;gap:5px;height:20px;padding:0 8px;border-radius:999px;font-size:11.5px;font-weight:550;white-space:nowrap;background:var(--well);color:var(--ink-2)}.tool-legacy .badge.new{background:var(--well);color:var(--ink-2)}.tool-legacy .badge.vetted{background:var(--good-soft);color:var(--good)}.tool-legacy .badge.contacted{background:var(--accent-soft);color:var(--accent)}.tool-legacy .badge.qualified{background:var(--accent-tint);color:var(--accent)}.tool-legacy .badge.won{background:var(--well);color:var(--fg)}.tool-legacy .badge.rejected{background:var(--bad-soft);color:var(--bad)}.tool-legacy .tag{display:inline-flex;align-items:center;height:20px;padding:0 7px;background:var(--well);border-radius:5px;font-size:11.5px;color:var(--ink-2)}.tool-legacy .score{display:inline-flex;align-items:center;gap:6px;font-variant-numeric:tabular-nums;font-size:12px;color:var(--muted)}.tool-legacy .score .bar{width:34px;height:4px;background:var(--well);border-radius:2px;overflow:hidden}.tool-legacy .score .bar i{display:block;height:100%;background:var(--ink);border-radius:2px;transition:width var(--settle)}.tool-legacy .panel-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#14181f29;z-index:50;animation:fade-in var(--quick) both}.tool-legacy .panel{position:fixed;top:0;right:0;bottom:0;width:min(460px,100vw);z-index:51;background:var(--surface);border-left:1px solid var(--line);box-shadow:var(--shadow-lg);display:flex;flex-direction:column;animation:panel-in var(--settle) both}.tool-legacy .panel-head{display:flex;align-items:flex-start;gap:12px;padding:18px 18px 14px;border-bottom:1px solid var(--line)}.tool-legacy .panel-head h3{font-size:17px;letter-spacing:-.016em}.tool-legacy .panel-body{flex:1;overflow-y:auto;padding:16px 18px 28px}.tool-legacy .panel-foot{display:flex;gap:8px;padding:12px 18px;border-top:1px solid var(--line);background:var(--surface-2)}.tool-legacy .detail-row{display:grid;grid-template-columns:92px 1fr;gap:12px;padding:7px 0;border-bottom:1px solid var(--line);align-items:start}.tool-legacy .detail-row:last-child{border-bottom:0}.tool-legacy .detail-row .k{color:var(--muted);font-size:12px;padding-top:2px}.tool-legacy .detail-row .v{min-width:0;word-break:break-word}.tool-legacy .inline-edit{width:100%;border:1px solid transparent;background:transparent;border-radius:6px;padding:3px 6px;margin:-3px -6px;transition:background var(--tap),border-color var(--tap)}.tool-legacy .inline-edit:hover{background:var(--surface-2);border-color:var(--line)}.tool-legacy .inline-edit:focus{outline:none;background:var(--surface);border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.tool-legacy .split{display:grid;grid-template-columns:340px 1fr;gap:18px;align-items:start}@media(max-width:1000px){.tool-legacy .split{grid-template-columns:1fr}}.tool-legacy .box{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-sm)}.tool-legacy .box-head{display:flex;align-items:center;gap:10px;padding:12px 15px;border-bottom:1px solid var(--line)}.tool-legacy .box-head h3{font-size:13.5px}.tool-legacy .box-body{padding:15px;display:flex;flex-direction:column;gap:13px}.tool-legacy .progress{height:3px;background:var(--well);border-radius:2px;overflow:hidden}.tool-legacy .progress i{display:block;height:100%;background:var(--accent);border-radius:2px;transition:width var(--settle)}.tool-legacy .progress.indeterminate i{width:34%!important;animation:slide 1.5s ease-in-out infinite}.tool-legacy .console{height:420px;overflow-y:auto;padding:12px 15px;font-family:var(--sans);font-size:12px;line-height:1.65;background:var(--surface-2);border-radius:0 0 var(--radius) var(--radius)}.tool-legacy .console .line{display:flex;gap:10px;padding:1px 0;animation:line-in .26s both}.tool-legacy .console .time{color:var(--faint);flex:none;font-variant-numeric:tabular-nums}.tool-legacy .console .msg{min-width:0;word-break:break-word}.tool-legacy .console .line.good .msg{color:var(--good)}.tool-legacy .console .line.warn .msg{color:var(--warn)}.tool-legacy .console .line.error .msg{color:var(--bad)}.tool-legacy .console .line.info .msg{color:var(--ink-2)}.tool-legacy .live-dot{width:7px;height:7px;border-radius:50%;background:var(--good);flex:none;animation:pulse 1.6s ease-in-out infinite}.tool-legacy .job-row{display:flex;align-items:center;gap:10px;padding:10px 15px;border-bottom:1px solid var(--line);cursor:pointer;transition:background var(--tap)}.tool-legacy .job-row:last-child{border-bottom:0}.tool-legacy .job-row:hover{background:var(--surface-2)}.tool-legacy .job-row.active{background:var(--accent-soft)}.tool-legacy .job-row .q{font-weight:550;font-size:13px}.tool-legacy .job-row .meta{font-size:11.5px;color:var(--muted)}.tool-legacy .kb{display:grid;grid-template-columns:232px 288px 1fr;gap:0;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;background:var(--surface);box-shadow:var(--shadow-sm);flex:1;min-height:320px}.tool-legacy .wrap.kb-page{display:flex;flex-direction:column;height:100%;padding-bottom:22px}@media(max-width:1080px){.tool-legacy .kb{grid-template-columns:250px 1fr}.tool-legacy .kb .kb-tree{display:none}}@media(max-width:720px){.tool-legacy .kb{grid-template-columns:1fr}.tool-legacy .kb .kb-editor,.tool-legacy .kb.has-doc .kb-list{display:none}.tool-legacy .kb.has-doc .kb-editor{display:flex}}.tool-legacy .kb-col{display:flex;flex-direction:column;min-width:0;min-height:0;border-right:1px solid var(--line)}.tool-legacy .kb-col:last-child{border-right:0}.tool-legacy .kb-col-head{display:flex;align-items:center;gap:6px;padding:10px 12px;border-bottom:1px solid var(--line);background:var(--surface-2);min-height:44px}.tool-legacy .kb-col-head .t{font-size:11.5px;font-weight:600;letter-spacing:.05em;text-transform:uppercase;color:var(--muted)}.tool-legacy .kb-scroll{flex:1;overflow-y:auto;padding:6px}.tool-legacy .tree-item{display:flex;align-items:center;gap:7px;width:100%;padding:6px 8px;border:0;background:none;border-radius:7px;color:var(--ink-2);font-size:13px;text-align:left;cursor:pointer;transition:background var(--tap),color var(--tap)}.tool-legacy .tree-item:hover{background:var(--well);color:var(--ink)}.tool-legacy .tree-item.active{background:var(--accent-soft);color:var(--accent);font-weight:550}.tool-legacy .tree-item .caret{width:14px;flex:none;color:var(--faint);transition:transform var(--quick)}.tool-legacy .tree-item .caret.open{transform:rotate(90deg)}.tool-legacy .tree-item .count{margin-left:auto;font-size:11px;color:var(--faint);font-variant-numeric:tabular-nums}.tool-legacy .tree-item .name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tool-legacy .doc-item{display:block;width:100%;padding:9px 10px;border:0;background:none;border-radius:8px;text-align:left;cursor:pointer;transition:background var(--tap)}.tool-legacy .doc-item:hover{background:var(--well)}.tool-legacy .doc-item.active{background:var(--accent-soft)}.tool-legacy .doc-item .t{font-size:13px;font-weight:550;color:var(--ink);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tool-legacy .doc-item .x{font-size:11.5px;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;margin-top:2px}.tool-legacy .doc-item .d{font-size:11px;color:var(--faint);margin-top:3px}.tool-legacy .editor{display:flex;flex-direction:column;height:100%;min-width:0;min-height:0}.tool-legacy .editor.is-fullscreen{position:fixed;top:0;right:0;bottom:0;left:0;z-index:65;height:100vh;background:var(--surface);animation:fullscreen-in var(--settle) both}.tool-legacy .editor.is-fullscreen .editor-title,.tool-legacy .editor.is-fullscreen .editor-meta{padding-left:max(24px,calc((100vw - 900px)/2));padding-right:max(24px,calc((100vw - 900px)/2))}.tool-legacy .editor.is-fullscreen .rt-content{margin:0 auto;padding-left:24px;padding-right:24px}.tool-legacy .editor.is-fullscreen .rt-toolbar{padding-left:max(20px,calc((100vw - 940px)/2));padding-right:max(20px,calc((100vw - 940px)/2))}.tool-legacy .editor-title{width:100%;border:0;padding:18px 22px 6px;font-size:20px;font-weight:620;letter-spacing:-.02em;background:transparent}.tool-legacy .editor-title:focus{outline:none}.tool-legacy .editor-title[readonly]{cursor:default}.tool-legacy .mode-flag{color:var(--faint)}.tool-legacy .rt-readonly .rt-content{padding-top:26px;caret-color:transparent}.tool-legacy .editor-meta{display:flex;align-items:center;gap:10px;padding:0 22px 12px;font-size:11.5px;color:var(--faint);border-bottom:1px solid var(--line)}.tool-legacy .editor-body{flex:1;width:100%;min-height:0;border:0;padding:16px 22px 28px;font-family:var(--sans);font-size:13px;line-height:1.75;resize:none;background:transparent}.tool-legacy .editor-body:focus{outline:none}.tool-legacy .saved-flag{color:var(--good);animation:fade-in var(--quick) both}.tool-legacy .empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;padding:56px 24px;text-align:center;color:var(--muted)}.tool-legacy .empty h3{font-size:15px;color:var(--ink)}.tool-legacy .empty p{margin:0;font-size:13px;max-width:42ch}.tool-legacy .bulkbar{position:fixed;left:50%;bottom:22px;transform:translate(-50%);z-index:45;display:flex;align-items:center;gap:10px;padding:9px 12px;background:var(--ink);color:var(--ink-fg);border-radius:11px;box-shadow:var(--shadow-lg);animation:bulk-in var(--settle) both}.tool-legacy .bulkbar .n{font-size:13px;font-weight:550;padding-right:4px}.tool-legacy .bulkbar .btn{background:color-mix(in srgb,var(--ink-fg) 12%,transparent);border-color:color-mix(in srgb,var(--ink-fg) 20%,transparent);color:var(--ink-fg)}.tool-legacy .bulkbar .btn:hover:not(:disabled){background:color-mix(in srgb,var(--ink-fg) 20%,transparent);border-color:color-mix(in srgb,var(--ink-fg) 30%,transparent)}.tool-legacy .toast-stack{position:fixed;right:18px;bottom:18px;z-index:80;display:flex;flex-direction:column;gap:8px}.tool-legacy .toast{display:flex;align-items:center;gap:9px;padding:10px 14px;background:var(--ink);color:var(--ink-fg);border-radius:9px;font-size:13px;box-shadow:var(--shadow-lg);animation:toast-in var(--settle) both;max-width:380px}.tool-legacy .toast.bad{background:var(--bad)}.tool-legacy .spinner{width:14px;height:14px;border:2px solid var(--line-strong);border-top-color:var(--ink);border-radius:50%;animation:spin .7s linear infinite;flex:none}.tool-legacy .skeleton{background:linear-gradient(90deg,var(--surface-2) 25%,var(--well) 37%,var(--surface-2) 63%);background-size:400% 100%;animation:shimmer 1.3s ease-in-out infinite;border-radius:6px}.tool-legacy .linklike{background:none;border:0;padding:0;color:var(--accent);cursor:pointer;font-size:inherit}.tool-legacy .linklike:hover{text-decoration:underline}.tool-legacy .search-dock{position:fixed;left:50%;bottom:0;z-index:60;transform:translate(-50%,100%);opacity:0;padding-bottom:16px;transition:transform var(--settle),opacity var(--quick);pointer-events:none}.tool-legacy .search-dock.near{transform:translate(-50%);opacity:1;pointer-events:auto}.tool-legacy .search-dock-btn{display:flex;align-items:center;gap:9px;height:38px;padding:0 14px;background:var(--surface);border:1px solid var(--line-strong);border-radius:999px;box-shadow:var(--shadow-lg);color:var(--ink-2);font-size:13px;cursor:pointer;transition:background var(--tap),border-color var(--tap),transform var(--tap)}.tool-legacy .search-dock-btn:hover{background:var(--surface-2);border-color:var(--line-2);transform:translateY(-1px)}.tool-legacy .search-dock-btn:active{transform:translateY(0)}.tool-legacy .search-dock-btn kbd{font-family:var(--font);font-size:11px;color:var(--faint);background:var(--well);border-radius:5px;padding:2px 6px}.tool-legacy .palette-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:70;background:#14181f33;-webkit-backdrop-filter:blur(1.5px);backdrop-filter:blur(1.5px);animation:fade-in var(--quick) both}.tool-legacy .palette{position:fixed;left:50%;top:14vh;z-index:71;width:min(680px,calc(100vw - 32px));max-height:68vh;display:flex;flex-direction:column;background:var(--surface);border:1px solid var(--line);border-radius:14px;box-shadow:var(--shadow-lg);overflow:hidden;transform:translate(-50%);animation:palette-in var(--settle) both}.tool-legacy .palette-input{display:flex;align-items:center;gap:10px;padding:13px 14px;border-bottom:1px solid var(--line);color:var(--faint)}.tool-legacy .palette-input input{flex:1;border:0;background:transparent;font-size:15px;color:var(--ink)}.tool-legacy .palette-input input:focus{outline:none}.tool-legacy .palette-input input::placeholder{color:var(--faint)}.tool-legacy .palette-results{flex:1;overflow-y:auto;padding:6px}.tool-legacy .palette-hint{padding:26px 18px;text-align:center;color:var(--muted);font-size:13px}.tool-legacy .palette-group{padding:4px 0}.tool-legacy .palette-group-label{padding:6px 10px 4px;font-size:10.5px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--faint)}.tool-legacy .palette-item{display:flex;align-items:center;gap:11px;width:100%;padding:8px 10px;border:0;background:none;border-radius:8px;text-align:left;cursor:pointer;transition:background var(--tap)}.tool-legacy .palette-item.active{background:var(--accent-soft)}.tool-legacy .palette-icon{flex:none;color:var(--muted)}.tool-legacy .palette-item.active .palette-icon{color:var(--accent)}.tool-legacy .palette-text{min-width:0;flex:1;display:flex;flex-direction:column}.tool-legacy .palette-title{font-size:13.5px;font-weight:550;color:var(--ink);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tool-legacy .palette-sub{font-size:12px;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tool-legacy .palette-crumb{flex:none;max-width:42%;font-size:11.5px;color:var(--faint);text-align:right;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tool-legacy .palette-crumb .sep{margin:0 4px;opacity:.6}.tool-legacy .palette-foot{display:flex;gap:16px;padding:9px 14px;border-top:1px solid var(--line);background:var(--surface-2);font-size:11.5px;color:var(--muted)}.tool-legacy .palette-foot kbd{font-family:var(--font);font-size:11px;background:var(--surface);border:1px solid var(--line);border-radius:4px;padding:1px 5px;margin-right:3px}.tool-legacy tr.row-focus{animation:row-focus 2.4s ease-out both}.tool-legacy .rt{display:flex;flex-direction:column;flex:1;min-height:0}.tool-legacy .rt-toolbar{display:flex;align-items:center;gap:4px;flex-wrap:wrap;padding:8px 14px;border-bottom:1px solid var(--line);background:linear-gradient(180deg,var(--surface),var(--surface-2));position:sticky;top:0;z-index:3}.tool-legacy .rt-group{display:flex;align-items:center;gap:2px;padding-right:6px;margin-right:2px;border-right:1px solid var(--line)}.tool-legacy .rt-group:last-of-type{border-right:0}.tool-legacy .rt-btn{display:inline-flex;align-items:center;justify-content:center;min-width:28px;height:28px;padding:0 7px;background:transparent;border:1px solid transparent;border-radius:7px;color:var(--ink-2);font-size:13px;cursor:pointer;transition:background var(--tap),color var(--tap),border-color var(--tap)}.tool-legacy .rt-btn:hover:not(:disabled){background:var(--well);color:var(--ink)}.tool-legacy .rt-btn.on{background:var(--accent-soft);border-color:var(--accent-line);color:var(--accent)}.tool-legacy .rt-btn:disabled{opacity:.35;cursor:not-allowed}.tool-legacy .rt-select{height:28px;padding:0 8px;border:1px solid var(--line-strong);border-radius:7px;background:var(--surface);font-size:12.5px;cursor:pointer}.tool-legacy .rt-surface{flex:1;overflow-y:auto;overscroll-behavior:contain;min-height:0}.tool-legacy .rt-surface::-webkit-scrollbar-thumb{background:var(--line-strong);border:3px solid var(--surface)}.tool-legacy .rt-content{padding:22px 26px 60px;outline:none;font-size:14.5px;line-height:1.72;color:var(--ink-2);max-width:78ch}.tool-legacy .rt-content:focus{outline:none}.tool-legacy .rt-content h1,.tool-legacy .rt-content h2,.tool-legacy .rt-content h3{color:var(--ink);line-height:1.3;margin:1.5em 0 .5em}.tool-legacy .rt-content h1{font-size:24px;letter-spacing:-.022em}.tool-legacy .rt-content h2{font-size:19px;letter-spacing:-.018em}.tool-legacy .rt-content h3{font-size:16px}.tool-legacy .rt-content>*:first-child{margin-top:0}.tool-legacy .rt-content p{margin:0 0 .85em}.tool-legacy .rt-content ul,.tool-legacy .rt-content ol{margin:0 0 .9em;padding-left:1.4em}.tool-legacy .rt-content li{margin-bottom:.25em}.tool-legacy .rt-content li>p{margin:0}.tool-legacy .rt-content a{color:var(--accent);text-decoration:underline;text-underline-offset:2px}.tool-legacy .rt-content blockquote{margin:1em 0;padding:2px 0 2px 16px;border-left:2.5px solid var(--line-strong);color:var(--muted)}.tool-legacy .rt-content code{font-family:var(--sans);font-size:.88em;background:var(--well);border-radius:4px;padding:1px 5px}.tool-legacy .rt-content pre{background:var(--ink);color:var(--ink-fg);border-radius:10px;padding:14px 16px;overflow-x:auto;margin:1em 0}.tool-legacy .rt-content pre code{background:none;color:inherit;padding:0;font-size:12.5px}.tool-legacy .rt-content hr{border:0;border-top:1px solid var(--line);margin:1.8em 0}.tool-legacy .rt-content img{max-width:100%;border-radius:10px;margin:.6em 0}.tool-legacy .rt-content table{border-collapse:collapse;width:100%;margin:1em 0;overflow:hidden;border-radius:8px}.tool-legacy .rt-content table td,.tool-legacy .rt-content table th{border:1px solid var(--line);padding:7px 10px;vertical-align:top}.tool-legacy .rt-content table th{background:var(--surface-2);font-weight:600;text-align:left}.tool-legacy .rt-content .selectedCell{background:var(--accent-soft)}.tool-legacy .rt-content iframe,.tool-legacy .rt-content div[data-youtube-video] iframe{max-width:100%;aspect-ratio:16 / 9;height:auto;border:0;border-radius:10px;background:var(--well)}.tool-legacy .rt-content p.is-editor-empty:first-child:before{content:attr(data-placeholder);float:left;height:0;color:var(--faint);pointer-events:none}.tool-legacy .rt-source,.tool-legacy .html-embed-source{width:100%;flex:1;min-height:220px;border:0;padding:16px 20px;font-family:var(--sans);font-size:12.5px;line-height:1.7;resize:vertical;background:var(--surface-2)}.tool-legacy .rt-source:focus,.tool-legacy .html-embed-source:focus{outline:none}.tool-legacy .rt-loading{height:240px;margin:16px}.tool-legacy .html-embed{margin:1.1em 0;border:1px solid var(--line);border-radius:10px;overflow:hidden;background:var(--surface)}.tool-legacy .html-embed.ProseMirror-selectednode{border-color:var(--accent);box-shadow:var(--ring)}.tool-legacy .html-embed-bar{display:flex;align-items:center;gap:6px;padding:5px 8px 5px 12px;background:var(--surface-2);border-bottom:1px solid var(--line)}.tool-legacy .html-embed-label{font-size:11px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--faint)}.tool-legacy .html-embed-render{padding:12px}.tool-legacy .html-embed-render iframe{max-width:100%;border:0;border-radius:8px}.tool-legacy .html-embed-render:empty:before{content:"Nothing to show yet. Click “Edit HTML”.";color:var(--faint);font-size:12.5px}.tool-legacy .embed-blocked{padding:10px 12px;background:var(--warn-soft);color:var(--warn);border-radius:8px;font-size:12.5px}.tool-legacy .legacy-note{display:flex;align-items:center;gap:8px;padding:8px 22px;background:var(--warn-soft);color:var(--warn);font-size:12.5px;border-bottom:1px solid var(--line)}.tool-legacy .integration{padding:18px 20px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);transition:border-color var(--quick),box-shadow var(--quick);animation:card-in var(--settle) both}.tool-legacy .integration:hover{border-color:var(--line-strong)}.tool-legacy .integration.on{border-color:var(--accent-line)}.tool-legacy .integration-head{display:flex;gap:12px}.tool-legacy .integration-title{display:flex;align-items:center;gap:9px;flex-wrap:wrap}.tool-legacy .integration-title h3{font-size:15px;letter-spacing:-.012em}.tool-legacy .integration-blurb{margin:6px 0 0;color:var(--muted);font-size:13px;line-height:1.55;max-width:66ch}.tool-legacy .integration-caveat{margin:10px 0 0;padding:8px 11px;background:var(--warn-soft);color:var(--warn);border-radius:8px;font-size:12.5px}.tool-legacy .integration-fields{display:flex;flex-direction:column;gap:10px;margin-top:14px}.tool-legacy .integration-saved{display:flex;align-items:center;gap:10px;margin-top:14px;font-size:12.5px;color:var(--muted)}.tool-legacy .integration-saved code{font-family:var(--sans);background:var(--well);border-radius:6px;padding:3px 8px;color:var(--ink-2)}.tool-legacy .integration-result{display:flex;align-items:flex-start;gap:8px;margin-top:12px;padding:9px 11px;border-radius:8px;font-size:12.5px;line-height:1.5;animation:fade-in var(--quick) both}.tool-legacy .integration-result.ok{background:var(--good-soft);color:var(--good)}.tool-legacy .integration-result.bad{background:var(--bad-soft);color:var(--bad)}.tool-legacy .integration-actions{display:flex;align-items:center;gap:8px;margin-top:14px;padding-top:14px;border-top:1px solid var(--line)}.tool-legacy .dossier-text{margin:10px 0 0;padding:12px 14px;max-height:440px;overflow:auto;white-space:pre-wrap;word-break:break-word;font-family:var(--sans);font-size:11.5px;line-height:1.6;color:var(--ink-2);background:var(--surface-2);border:1px solid var(--line);border-radius:8px}.tool-legacy .note{padding:13px 15px;background:var(--surface-2);border:1px solid var(--line);border-radius:var(--radius);color:var(--muted);font-size:13px;line-height:1.6}.tool-legacy .note strong{color:var(--ink-2)}.tool-legacy code{font-family:var(--sans);font-size:.9em;background:var(--well);border-radius:4px;padding:1px 5px}@media(prefers-reduced-motion:reduce){.tool-legacy *,.tool-legacy *:before,.tool-legacy *:after{animation-duration:1ms!important;animation-iteration-count:1!important;transition-duration:1ms!important}}
