harness-wingman 0.9.3 → 0.9.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/apps/cli/dist/main.js +53 -8
- package/apps/panel/dist/assets/index-2n853qZ8.css +1 -0
- package/apps/panel/dist/assets/index-AK2vZUEt.js +344 -0
- package/apps/panel/dist/index.html +2 -2
- package/package.json +2 -2
- package/apps/panel/dist/assets/index-CmiVDhjE.css +0 -1
- package/apps/panel/dist/assets/index-Dct9L9-w.js +0 -344
package/apps/cli/dist/main.js
CHANGED
|
@@ -618,6 +618,10 @@ var init_render = __esm({
|
|
|
618
618
|
"packages/i18n/dist/catalog/en/render.js"() {
|
|
619
619
|
"use strict";
|
|
620
620
|
render_default = {
|
|
621
|
+
"panel.render.originExec": "Codex CLI \xB7 exec",
|
|
622
|
+
"panel.render.originCli": "Codex CLI",
|
|
623
|
+
"panel.render.originDesktop": "Codex Desktop",
|
|
624
|
+
"panel.render.originSource": "Source: session_meta.originator / source",
|
|
621
625
|
"panel.render.projectsPageTitle": "Project overview",
|
|
622
626
|
"panel.render.projectsPageHint": "Goals, progress and decisions across your coding apps.",
|
|
623
627
|
"panel.render.controlsPageHint": "Manage tools, preferences and how you return to a session.",
|
|
@@ -746,9 +750,6 @@ var init_render = __esm({
|
|
|
746
750
|
"panel.render.sourceClickToExpandThePanel": "{p0} \xB7 {p1}{p2}\nSource: {p3}; click to expand the panel",
|
|
747
751
|
"panel.render.compactPillSource": "{p0} \xB7 {p1}{p2}\nSource: {p3}",
|
|
748
752
|
"panel.render.project": "Project",
|
|
749
|
-
"panel.render.inTheLiveStream": "In the live stream",
|
|
750
|
-
"panel.render.events": "events",
|
|
751
|
-
"panel.render.entries": "entries",
|
|
752
753
|
"panel.render.residentTok": "Resident {p0} tok",
|
|
753
754
|
"panel.render.residentTotal": "Resident total",
|
|
754
755
|
"panel.render.totalResidentTokensOfEnabledItems": "Total = resident tokens of enabled items across all slots; ",
|
|
@@ -1176,12 +1177,17 @@ var init_render = __esm({
|
|
|
1176
1177
|
"panel.render.branchCurrentPointsSource": "Source: currentPoints within this top-level node subtree",
|
|
1177
1178
|
"panel.render.noCurrentBranchProvided": "No current branch provided",
|
|
1178
1179
|
"panel.render.currentTaskLabel": "Current task",
|
|
1180
|
+
"panel.render.morePoints": "{count} more items",
|
|
1181
|
+
"panel.render.oneMorePoint": "{count} more item",
|
|
1179
1182
|
"panel.render.sourceFirstScreenCurrentPointsLength": "Source: firstScreen.currentPoints.length",
|
|
1180
1183
|
"panel.render.parallel": "Parallel",
|
|
1181
1184
|
"panel.render.thePlanHasNoStepMarked": "The plan has no step marked in progress",
|
|
1182
1185
|
"panel.render.recentActivityLabel": "Recent activity",
|
|
1183
1186
|
"panel.render.thePlanHasNoSteps": "The plan has no steps",
|
|
1184
1187
|
"panel.render.planTree": "Plan tree",
|
|
1188
|
+
"panel.render.fullRecord": "Full record",
|
|
1189
|
+
"panel.render.completedMilestones": "{count} completed \xB7 Latest: {name}",
|
|
1190
|
+
"panel.render.completedMilestonesSource": "Source: completed or cancelled top-level plan.nodes; latest in document order",
|
|
1185
1191
|
"panel.render.sessionsNotLinkedToAStep": "Sessions not linked to a step",
|
|
1186
1192
|
"panel.render.sourcePlanLastGood": "Source: plan.lastGood",
|
|
1187
1193
|
"panel.render.lastReadableVersion": "Last readable version",
|
|
@@ -1887,6 +1893,10 @@ var init_render2 = __esm({
|
|
|
1887
1893
|
"packages/i18n/dist/catalog/zh/render.js"() {
|
|
1888
1894
|
"use strict";
|
|
1889
1895
|
render_default2 = {
|
|
1896
|
+
"panel.render.originExec": "Codex CLI \xB7 exec",
|
|
1897
|
+
"panel.render.originCli": "Codex CLI",
|
|
1898
|
+
"panel.render.originDesktop": "Codex \u684C\u9762\u7248",
|
|
1899
|
+
"panel.render.originSource": "\u6765\u6E90:session_meta.originator / source",
|
|
1890
1900
|
"panel.render.projectsPageTitle": "\u9879\u76EE\u603B\u89C8",
|
|
1891
1901
|
"panel.render.projectsPageHint": "\u96C6\u4E2D\u67E5\u770B\u5404\u4E2A\u7F16\u7A0B\u5DE5\u5177\u4E2D\u7684\u76EE\u6807\u3001\u8FDB\u5EA6\u548C\u5F85\u51B3\u4E8B\u9879\u3002",
|
|
1892
1902
|
"panel.render.controlsPageHint": "\u7BA1\u7406\u5DE5\u5177\u3001\u504F\u597D\u8BBE\u7F6E\uFF0C\u4EE5\u53CA\u8FD4\u56DE\u4F1A\u8BDD\u7684\u65B9\u5F0F\u3002",
|
|
@@ -2015,9 +2025,6 @@ var init_render2 = __esm({
|
|
|
2015
2025
|
"panel.render.sourceClickToExpandThePanel": "{p0} \xB7 {p1}{p2}\n\u6765\u6E90:{p3};\u70B9\u51FB\u5C55\u5F00\u9762\u677F",
|
|
2016
2026
|
"panel.render.compactPillSource": "{p0} \xB7 {p1}{p2}\n\u6765\u6E90:{p3}",
|
|
2017
2027
|
"panel.render.project": "\u9879\u76EE",
|
|
2018
|
-
"panel.render.inTheLiveStream": "\u5B9E\u51B5\u6D41\u5185",
|
|
2019
|
-
"panel.render.events": "\u4E8B\u4EF6",
|
|
2020
|
-
"panel.render.entries": "\u6761",
|
|
2021
2028
|
"panel.render.residentTok": "\u5E38\u9A7B {p0} tok",
|
|
2022
2029
|
"panel.render.residentTotal": "\u5E38\u9A7B\u5408\u8BA1",
|
|
2023
2030
|
"panel.render.totalResidentTokensOfEnabledItems": "\u5408\u8BA1 = \u5404\u69FD\u4F4D\u542F\u7528\u6761\u76EE\u7684\u5E38\u9A7B token \u4E4B\u548C;",
|
|
@@ -2445,12 +2452,17 @@ var init_render2 = __esm({
|
|
|
2445
2452
|
"panel.render.branchCurrentPointsSource": "\u6765\u6E90:currentPoints \u4E2D\u5C5E\u4E8E\u8BE5\u9876\u5C42\u8282\u70B9\u5B50\u6811\u7684\u5F53\u524D\u70B9",
|
|
2446
2453
|
"panel.render.noCurrentBranchProvided": "\u5C1A\u672A\u63D0\u4F9B\u6240\u5728\u5206\u652F",
|
|
2447
2454
|
"panel.render.currentTaskLabel": "\u5F53\u524D\u4EFB\u52A1",
|
|
2455
|
+
"panel.render.morePoints": "\u8FD8\u6709 {count} \u9879",
|
|
2456
|
+
"panel.render.oneMorePoint": "\u8FD8\u6709 {count} \u9879",
|
|
2448
2457
|
"panel.render.sourceFirstScreenCurrentPointsLength": "\u6765\u6E90:firstScreen.currentPoints.length",
|
|
2449
2458
|
"panel.render.parallel": "\u5E76\u884C",
|
|
2450
2459
|
"panel.render.thePlanHasNoStepMarked": "\u8BA1\u5212\u672A\u6807\u8BB0\u8FDB\u884C\u4E2D\u6B65\u9AA4",
|
|
2451
2460
|
"panel.render.recentActivityLabel": "\u6700\u8FD1\u6D3B\u52A8",
|
|
2452
2461
|
"panel.render.thePlanHasNoSteps": "\u8BA1\u5212\u6CA1\u6709\u6B65\u9AA4",
|
|
2453
2462
|
"panel.render.planTree": "\u8BA1\u5212\u6811",
|
|
2463
|
+
"panel.render.fullRecord": "\u5B8C\u6574\u8BB0\u5F55",
|
|
2464
|
+
"panel.render.completedMilestones": "\u5DF2\u5B8C\u6210 {count} \u9879 \xB7 \u6700\u8FD1:{name}",
|
|
2465
|
+
"panel.render.completedMilestonesSource": "\u6765\u6E90:plan.nodes \u4E2D\u5DF2\u5B8C\u6210\u6216\u5DF2\u53D6\u6D88\u7684\u9876\u5C42\u8282\u70B9;\u6700\u8FD1\u9879\u6309\u6587\u6863\u987A\u5E8F",
|
|
2454
2466
|
"panel.render.sessionsNotLinkedToAStep": "\u672A\u5173\u8054\u5230\u6B65\u9AA4\u7684\u4F1A\u8BDD",
|
|
2455
2467
|
"panel.render.sourcePlanLastGood": "\u6765\u6E90:plan.lastGood",
|
|
2456
2468
|
"panel.render.lastReadableVersion": "\u4E0A\u6B21\u53EF\u89E3\u6790\u7248\u672C",
|
|
@@ -16741,6 +16753,25 @@ var init_protocol3 = __esm({
|
|
|
16741
16753
|
}
|
|
16742
16754
|
});
|
|
16743
16755
|
|
|
16756
|
+
// packages/adapter-codex/dist/session-origin.js
|
|
16757
|
+
function describeSessionOrigin(originator, source) {
|
|
16758
|
+
if (!originator)
|
|
16759
|
+
return void 0;
|
|
16760
|
+
const raw = source ? `${originator} / ${source}` : originator;
|
|
16761
|
+
let key = "other";
|
|
16762
|
+
if (originator === "codex_exec") {
|
|
16763
|
+
key = source === "exec" ? "exec" : "cli";
|
|
16764
|
+
} else if (originator === "codex_work_desktop" || originator === "Codex Desktop") {
|
|
16765
|
+
key = "desktop";
|
|
16766
|
+
}
|
|
16767
|
+
return { key, raw };
|
|
16768
|
+
}
|
|
16769
|
+
var init_session_origin = __esm({
|
|
16770
|
+
"packages/adapter-codex/dist/session-origin.js"() {
|
|
16771
|
+
"use strict";
|
|
16772
|
+
}
|
|
16773
|
+
});
|
|
16774
|
+
|
|
16744
16775
|
// packages/adapter-codex/dist/protocol-user.js
|
|
16745
16776
|
import { homedir as homedir13 } from "node:os";
|
|
16746
16777
|
import { join as join22, resolve as resolve10 } from "node:path";
|
|
@@ -16773,6 +16804,7 @@ var dist_exports3 = {};
|
|
|
16773
16804
|
__export(dist_exports3, {
|
|
16774
16805
|
HOOK_EVENTS: () => HOOK_EVENTS,
|
|
16775
16806
|
createAdapter: () => createAdapter3,
|
|
16807
|
+
describeSessionOrigin: () => describeSessionOrigin,
|
|
16776
16808
|
feedbackSignals: () => feedbackSignalsCodex,
|
|
16777
16809
|
installProtocolCodex: () => installProtocolCodex,
|
|
16778
16810
|
installProtocolCodexUser: () => installProtocolCodexUser,
|
|
@@ -16805,6 +16837,7 @@ var init_dist6 = __esm({
|
|
|
16805
16837
|
init_plugin_tools();
|
|
16806
16838
|
init_protocol3();
|
|
16807
16839
|
init_scan2();
|
|
16840
|
+
init_session_origin();
|
|
16808
16841
|
init_protocol_user2();
|
|
16809
16842
|
}
|
|
16810
16843
|
});
|
|
@@ -17361,6 +17394,8 @@ function parseSessionMeta(payload, timestamp) {
|
|
|
17361
17394
|
assignString(line, "cwd", optionalString(payload?.cwd));
|
|
17362
17395
|
assignString(line, "cliVersion", optionalString(payload?.cli_version));
|
|
17363
17396
|
assignString(line, "modelProvider", optionalString(payload?.model_provider));
|
|
17397
|
+
assignString(line, "originator", optionalString(payload?.originator));
|
|
17398
|
+
assignString(line, "source", optionalString(payload?.source));
|
|
17364
17399
|
return line;
|
|
17365
17400
|
}
|
|
17366
17401
|
function parseTurnContext(payload, timestamp) {
|
|
@@ -19335,7 +19370,7 @@ function resolveWingmanVersion({ defined, moduleUrl = import.meta.url, readPacka
|
|
|
19335
19370
|
return void 0;
|
|
19336
19371
|
}
|
|
19337
19372
|
function wingmanVersion() {
|
|
19338
|
-
const defined = false ? void 0 : "0.9.
|
|
19373
|
+
const defined = false ? void 0 : "0.9.4";
|
|
19339
19374
|
return resolveWingmanVersion({
|
|
19340
19375
|
defined,
|
|
19341
19376
|
readPackage: (url) => JSON.parse(readFileSync17(url, "utf8"))
|
|
@@ -20067,12 +20102,14 @@ function createNarrativeService(options = {}) {
|
|
|
20067
20102
|
const infos = [...sessions.values()].map((session) => {
|
|
20068
20103
|
const user = overlayEntries[`${harness}:${session.id}`];
|
|
20069
20104
|
const lastActivity = lastActivityOf(session);
|
|
20105
|
+
const state = deriveCached(harness, session, configuredPlugins, configuredMcpServers);
|
|
20070
20106
|
return {
|
|
20071
20107
|
id: session.id,
|
|
20108
|
+
...state.origin === void 0 ? {} : { origin: state.origin },
|
|
20072
20109
|
label: session.projectResolution?.isHome ? t("narrative.homeDirectory") : session.label ?? shortSessionId(session.id),
|
|
20073
20110
|
...session.cwd === void 0 ? {} : { cwd: session.cwd },
|
|
20074
20111
|
lastActivity,
|
|
20075
|
-
waiting:
|
|
20112
|
+
waiting: state.waiting !== null,
|
|
20076
20113
|
ended: isEnded(session, nowIso),
|
|
20077
20114
|
archived: user?.archived === true,
|
|
20078
20115
|
archivedHasNewActivity: user?.archived === true && user.archivedAt !== void 0 && Date.parse(lastActivity) > Date.parse(user.archivedAt),
|
|
@@ -20296,6 +20333,7 @@ function createNarrativeService(options = {}) {
|
|
|
20296
20333
|
id: session.id,
|
|
20297
20334
|
label,
|
|
20298
20335
|
ended: info?.ended ?? false,
|
|
20336
|
+
...state?.origin === void 0 ? {} : { origin: state.origin },
|
|
20299
20337
|
...state?.skillsUsed === void 0 ? {} : { skillsUsed: state.skillsUsed },
|
|
20300
20338
|
title: attachedTitle !== void 0 ? { text: attachedTitle, source: "plan.md \u6B65\u9AA4" } : planInstruction !== void 0 ? { text: truncate(planInstruction, DETAIL_LIMIT), source: "\u8BA1\u5212\u6240\u5C5E\u6307\u4EE4" } : instructionTitle !== void 0 ? { text: truncate(instructionTitle, DETAIL_LIMIT), source: "\u6700\u65B0\u6307\u4EE4" } : { text: label, source: "\u5DE5\u4F5C\u76EE\u5F55" },
|
|
20301
20339
|
user: {
|
|
@@ -21040,9 +21078,16 @@ function derive(harness, session, nowIso, configuredPlugins, configuredMcpServer
|
|
|
21040
21078
|
const skillsUsed = harness === "cc" ? observedSkills(lines2) : [];
|
|
21041
21079
|
const mcpUsed = harness === "cc" ? observedMcpServers(lines2, configuredMcpServers) : [];
|
|
21042
21080
|
const pluginsUsed = harness === "codex" ? observedPlugins(codexLines, configuredPlugins) : [];
|
|
21081
|
+
const meta = session.codexLines.find((line) => line.kind === "session_meta");
|
|
21043
21082
|
return {
|
|
21044
21083
|
harness,
|
|
21045
21084
|
sessionId: session.id,
|
|
21085
|
+
...harness !== "codex" || !meta?.originator ? {} : {
|
|
21086
|
+
origin: {
|
|
21087
|
+
originator: meta.originator,
|
|
21088
|
+
...meta.source === void 0 ? {} : { source: meta.source }
|
|
21089
|
+
}
|
|
21090
|
+
},
|
|
21046
21091
|
transcriptPath: session.transcriptPath ?? null,
|
|
21047
21092
|
...skillsUsed.length === 0 ? {} : { skillsUsed },
|
|
21048
21093
|
...mcpUsed.length === 0 ? {} : { mcpUsed },
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
:root{color-scheme:dark;--page: #0d0d0d;--surface: #1a1a19;--pill: #050505;--ink: #ffffff;--ink2: #c3c2b7;--muted: #898781;--hairline: rgba(255, 255, 255, .1);--grid: #2c2c2a;--s1: #3987e5;--s2: #d95926;--s3: #199e70;--s4: #c98500;--s5: #d55181;--warn: #fab219;--bad: #e5534b;--fs-1: 18px;--fs-2: 14px;--fs-3: 12px}*{box-sizing:border-box;margin:0;padding:0}body{background:var(--page);color:var(--ink);font-family:system-ui,-apple-system,Segoe UI,PingFang SC,Microsoft YaHei,sans-serif;min-height:100vh;display:flex;flex-direction:column;align-items:center;padding:28px 16px 48px}.wrap{display:flex;width:100%;max-width:100%;min-width:0;flex-direction:column;align-items:center}.pill{display:flex;max-width:min(100%,640px);min-width:0;align-items:center;gap:10px;background:var(--pill);border:1px solid var(--hairline);border-radius:999px;padding:10px 18px;cursor:pointer;-webkit-user-select:none;user-select:none;box-shadow:0 8px 30px #0000008c;transition:transform .15s ease}.pill:hover{transform:scale(1.03)}.dot{width:8px;height:8px;border-radius:50%;background:var(--s1);animation:pulse 1.6s infinite;flex:none}@keyframes pulse{0%,to{opacity:1}50%{opacity:.35}}.dot.quiet{animation:none;background:var(--muted);opacity:.6}.dot.live{background:var(--s3);box-shadow:0 0 8px #199e70cc}.pill .t1{font-size:13px;font-weight:600;flex:none}.pill .t2{flex:1 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px;color:var(--ink2)}.pill .chev{color:var(--muted);font-size:11px;flex:none}.dot.wait{background:var(--warn);box-shadow:0 0 8px #fab219cc;animation:pulse 1.2s infinite}.pill.waiting{border-color:#fab2198c}.pill.waiting .t2{color:var(--warn)}.panel{display:none;width:min(700px,94vw);background:var(--surface);border:1px solid var(--hairline);border-radius:20px;padding:20px 22px 16px;box-shadow:0 18px 60px #0009;transform-origin:top center}.open .panel{display:block;animation:drop .22s ease}.open .pill{display:none}.panel-region{display:contents}@keyframes drop{0%{opacity:0;transform:scale(.92) translateY(-8px)}to{opacity:1;transform:none}}.head{display:flex;align-items:center;gap:10px;margin-bottom:12px;flex-wrap:wrap}.head .title{font-size:15px;font-weight:700}.head .meta{font-size:12px;color:var(--muted)}.badge{font-size:10px;letter-spacing:.1em;color:var(--warn);border:1px solid var(--warn);border-radius:4px;padding:2px 6px}.collapse{margin-left:auto;background:none;border:1px solid var(--hairline);color:var(--ink2);border-radius:8px;padding:4px 10px;font-size:12px;cursor:pointer}.collapse:hover{border-color:var(--muted)}.tabs{display:flex;gap:4px;background:var(--pill);border:1px solid var(--hairline);border-radius:10px;padding:3px;width:max-content;margin-bottom:6px}.tab{border:none;background:none;color:var(--muted);font-size:12.5px;padding:5px 14px;border-radius:8px;cursor:pointer;font-family:inherit}.tab.act{background:var(--surface);color:var(--ink);font-weight:600;border:1px solid var(--hairline)}.now{background:var(--pill);border:1px solid var(--hairline);border-radius:12px;padding:10px 14px;margin:8px 0 10px}.now .ntask{font-size:14px;font-weight:700;display:flex;align-items:center;gap:8px}.now .ntask .muted{color:var(--muted);font-weight:400}.now .ndoing{font-size:12px;color:var(--ink2);margin-top:5px}.now .ndoing b{color:var(--ink);font-weight:600}.now .nquote{font-size:11.5px;color:var(--muted);margin-top:5px;line-height:1.6}.now .nwait{font-size:12px;color:var(--warn);border:1px solid rgba(250,178,25,.55);border-radius:8px;padding:5px 9px;margin-bottom:8px;animation:pulse 1.2s infinite}.taskflow{margin:8px 0 10px;font-size:var(--fs-2);line-height:1.55}.box{background:var(--pill);border:1px solid var(--hairline);border-radius:12px;padding:12px}.box+.box,.ask-line+.box,.fold{margin-top:16px}.box>*+*{margin-top:8px}.ask-box.active{border-color:var(--warn);color:var(--warn)}.ask-text{font-size:var(--fs-2);font-weight:650}.ask-meta{display:flex;align-items:center;flex-wrap:wrap;gap:6px 8px;font-size:var(--fs-3)}.ask-generic{font-size:var(--fs-3)}.ask-meta button{margin-left:auto;border:1px solid currentColor;border-radius:8px;background:transparent;color:inherit;cursor:pointer;font:inherit;padding:4px 8px}.ask-line{display:flex;align-items:baseline;gap:8px;color:var(--muted);font-size:var(--fs-3)}.wfheading{display:flex;align-items:baseline;gap:12px}.wfheading :where(.wftitle){flex:1;min-width:0}.wfheading :where(.task-status){flex-shrink:0}.wftitle{font-size:var(--fs-1);font-weight:650}.wfgoal,.wflead{display:flex;align-items:baseline;gap:8px;color:var(--ink2)}.wfsteps[data-expanded=false]{max-height:3.1em;-webkit-line-clamp:unset}.wfsteps[data-expanded=true]{max-height:none}.wflabel{display:inline-block;margin-right:8px;color:var(--muted);font-size:var(--fs-3);flex:none}.wfsource{color:var(--muted);font-size:var(--fs-3)}.wfsteps{margin-top:5px}.wfstep{display:flex;gap:7px;align-items:baseline}.wfstep.completed{color:var(--muted)}.wfstep.in_progress{font-weight:600}.wfrecent{display:flex;flex-wrap:wrap;gap:4px 8px}.wfrecent-step{color:var(--ink2)}.wfproject,.wfproject-details{display:flex;align-items:baseline;flex-wrap:wrap;gap:4px 6px;color:var(--ink2)}.wfcurrent{display:flex;align-items:baseline;min-width:0;gap:6px}.wfproject-node{padding:1px 7px}.wfproject-link{border:1px solid var(--hairline);border-radius:999px;background:transparent;color:var(--ink2);cursor:pointer;font:inherit;font-size:var(--fs-3);padding:2px 8px}.wfverify{display:flex;align-items:center;flex-wrap:wrap;gap:6px;color:var(--ink2)}.wfverify-sep{color:var(--muted)}.wfverify-action{border:1px solid var(--hairline);border-radius:999px;background:transparent;color:var(--ink2);cursor:pointer;font:inherit;font-size:var(--fs-3);padding:2px 8px}.wfverify-error{margin-top:5px}.fold>summary{display:flex;align-items:baseline;gap:8px;cursor:pointer;list-style:none}.fold>summary::-webkit-details-marker{display:none}.fold>summary:before{content:"▸";color:var(--muted);font-size:var(--fs-3);flex:none}.fold[open]>summary:before{content:"▾"}.fold>summary .wflabel{min-width:5em;margin-right:0}.fold-summary{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--ink2);font-size:var(--fs-2)}.fold-body{margin-top:8px;padding:8px 12px;border-left:1px solid var(--hairline);color:var(--ink2);overflow-wrap:anywhere}.protocol-foot{margin-top:16px;color:var(--muted);font-size:var(--fs-3)}.protocol-foot button{margin-left:8px;border:0;padding:0;background:transparent;color:inherit;font:inherit;text-decoration:underline;cursor:pointer}.evidencegroup+.evidencegroup{margin-top:6px}.vtabs{display:flex;gap:22px;border-bottom:1px solid var(--grid);margin-bottom:4px}.vtab{background:none;border:none;font-family:inherit;font-size:13px;color:var(--muted);padding:8px 2px;cursor:pointer;border-bottom:2px solid transparent;margin-bottom:-1px}.vtab.act{color:var(--ink);font-weight:700;border-bottom-color:var(--s1)}.vtab .vcnt{font-size:11px;color:var(--muted);font-weight:400;font-variant-numeric:tabular-nums}.pane{display:none}.pane.act{display:block}.td{padding:8px 0;border-top:1px dashed var(--grid);font-size:13px}.td:first-child{border-top:none}.tdr{display:flex;align-items:center;gap:9px}.tdr[data-act]{cursor:pointer}.mk{width:16px;flex:none;text-align:center;font-size:12px;color:var(--s3)}.mk.doing{color:var(--s1)}.td .tdc{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.td.done .tdr{color:var(--muted)}.td.done .tdc{text-decoration:line-through}.td.todo .tdr{color:var(--muted)}.td .tdc b{font-weight:700}.ag{font-size:10px;color:var(--s1);border:1px solid rgba(57,135,229,.5);border-radius:999px;padding:0 8px;flex:none}.loc{margin-left:auto;flex:none;font-size:10.5px;font-family:inherit;color:var(--ink2);background:none;border:1px solid var(--grid);border-radius:7px;padding:2px 8px;cursor:pointer}.loc:hover{border-color:var(--muted)}.trace{margin:8px 0 2px 24px;border-left:2px solid var(--grid);padding-left:14px}.tr{display:flex;align-items:center;gap:8px;padding:5px 0;font-size:12px;color:var(--ink2);cursor:pointer}.tr .ic{width:8px;height:8px;border-radius:50%;background:var(--s3);flex:none;margin-left:-19px;border:2px solid var(--surface)}.tr.bad .ic{background:var(--bad)}.tr.run .ic{background:var(--s1)}.tr .trlabel{flex:none}.tr .dur,.trs .dur{margin-left:auto;color:var(--muted);font-size:10.5px;font-variant-numeric:tabular-nums;flex:none;white-space:nowrap}.failchip{font-size:10px;color:var(--bad);border:1px solid var(--bad);border-radius:999px;padding:0 7px;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.steps{margin-left:6px;padding:2px 0 4px}.trs{display:flex;align-items:center;gap:8px;padding:3px 0;font-size:11.5px;color:var(--muted)}.trs .cmd{font-family:ui-monospace,SF Mono,Menlo,Consolas,monospace;font-size:11px;color:var(--ink2);flex:none}.trs .sdetail{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.trs.bad .cmd{color:var(--bad)}.rawsec .rawhead{background:none;border:none;font-family:inherit;font-size:11px;letter-spacing:.14em;color:var(--muted);padding:0;cursor:pointer}.rawsec .rawhead:hover{color:var(--ink2)}.rawsec .rawbody{display:none}.rawsec .rawbody.open{display:block;margin-top:8px}.ubox{max-height:220px;overflow-y:auto;border:1px solid var(--grid);border-radius:8px;padding:2px 10px}.urow{display:flex;align-items:center;gap:8px;padding:5px 0;font-size:11.5px;border-top:1px dashed var(--grid);color:var(--ink2)}.urow:first-child{border-top:none}.urow .utime{color:var(--muted);font-size:10.5px;font-variant-numeric:tabular-nums;flex:none}.urow .unums{color:var(--muted);font-variant-numeric:tabular-nums;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.urow .utot{margin-left:auto;color:var(--ink);font-variant-numeric:tabular-nums;flex:none}.urow .ucost{color:var(--s3);font-variant-numeric:tabular-nums;flex:none}.sessions-empty,.session-notice{margin-top:8px;padding:7px 10px;border:1px solid var(--grid);border-radius:6px;color:var(--ink2);font-size:11px}.session-notice{display:flex;gap:8px;cursor:pointer}.session-notice-close{margin-left:auto;color:var(--ink3)}.session-chip-group{margin-top:8px}.old-sessions{margin:6px 0}.schips{display:flex;flex-wrap:wrap;gap:6px;padding:8px 0 2px}.schip{display:inline-flex;align-items:center;gap:5px;background:none;border:1px solid var(--grid);border-radius:999px;padding:2px 10px;font-family:inherit;font-size:11px;color:var(--ink2);cursor:pointer}.schip:hover{border-color:var(--ink2)}.schip.act{color:var(--ink);border-color:var(--ink2);font-weight:600}.schip.ended{opacity:.55}.schip .sdot{width:6px;height:6px;border-radius:50%;background:var(--s1);flex:none}.schip .sdot.wait{background:var(--warn);animation:pulse 1.2s infinite}.schip .snew{padding:0 5px;border:1px solid var(--s1);border-radius:999px;color:var(--s1);font-size:9px;font-weight:700}.schip.has-session-origin{max-width:100%}.session-chip-title{min-width:4em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.wftitle.has-session-origin,.session-title-with-origin{display:flex;align-items:baseline;gap:6px;min-width:0}.chip.session-origin{font-size:11px;font-weight:400;line-height:1.4;color:var(--muted);border:1px solid var(--hairline);border-radius:4px;padding:1px 5px;flex:0 1 auto;min-width:0;max-width:16em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.feedbacksignal{margin:8px 0 2px;border:1px solid rgba(250,178,25,.4);border-radius:8px;padding:5px 9px;color:var(--warn);font-size:12px}.suggslot:empty{display:none}.suggslot{border-top:1px solid var(--grid);padding:8px 0 2px}.sugg{display:flex;align-items:center;gap:8px;padding:5px 0;font-size:12px;color:var(--ink2)}.sugg .sugtext{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sugg.r-waiting-timeout .sugtext{color:var(--warn)}.sugg .sugbtn,.sugg .sugdismiss{background:none;border:1px solid var(--grid);border-radius:6px;padding:1px 8px;font-family:inherit;font-size:11px;color:var(--ink2);cursor:pointer;flex:none}.sugg .sugbtn{color:var(--ink);border-color:var(--ink2);margin-left:auto}.sugg .sugbtn:hover{background:var(--grid)}.sugg .sugdismiss{color:var(--muted)}.sugg .sugbtn+.sugdismiss{margin-left:0}.sugg .sugdismiss:only-of-type{margin-left:auto}.sugg .sugdismiss:hover{color:var(--ink2)}.tr.waitrow{cursor:default}.tr.waitrow .trlabel{color:var(--warn)}.sec{border-top:1px solid var(--grid);padding:13px 0}.sec.first{border-top:none;padding-top:2px}.sec .label{font-size:11px;letter-spacing:.14em;color:var(--muted);margin-bottom:8px;display:flex;align-items:center;gap:8px}.tier{font-size:10px;letter-spacing:0;color:var(--ink2);border:1px solid var(--grid);border-radius:999px;padding:1px 8px;font-weight:400}.sec .headline{font-size:13px;color:var(--ink2);margin-bottom:10px}.sec .headline b{color:var(--ink);font-weight:700}.stack{display:flex;height:16px;margin-bottom:10px}.seg{margin-right:2px;cursor:default}.seg:last-child{margin-right:0}.seg:first-child{border-radius:4px 0 0 4px}.seg:last-child{border-radius:0 4px 4px 0}.seg:hover{filter:brightness(1.18)}.legend{display:grid;grid-template-columns:1fr 1fr;gap:5px 18px}@media(max-width:560px){.legend{grid-template-columns:1fr}}.lrow{display:flex;align-items:center;gap:7px;font-size:12.5px;color:var(--ink2);min-width:0}.sw{width:10px;height:10px;border-radius:3px;flex:none}.lrow .nat,.gtitle .nat{font-size:10.5px;color:var(--muted);border:1px solid var(--grid);border-radius:4px;padding:0 5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.lrow .v{margin-left:auto;color:var(--ink);font-variant-numeric:tabular-nums;flex:none}.lrow .cnt{color:var(--muted);font-size:10.5px;flex:none}.lrow.na,.lrow.na .v{color:var(--muted)}.grp{margin-bottom:10px}.grp:last-child{margin-bottom:0}.gtitle{font-size:11.5px;color:var(--muted);margin-bottom:4px;display:flex;align-items:center;gap:7px}.gdot{width:8px;height:8px;border-radius:2px;flex:none}.crow{display:flex;align-items:center;gap:10px;padding:6px 0;font-size:12.5px;border-top:1px dashed var(--grid)}.cname{color:var(--ink);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.offrow .cname{color:var(--muted)}.chip{font-size:10px;color:var(--muted);border:1px solid var(--grid);border-radius:999px;padding:1px 7px;flex:none}.statechip{font-size:10px;border-radius:999px;padding:1px 7px;flex:none}.statechip.off{color:var(--warn);border:1px solid var(--warn)}.statechip.invocation:not(.off){color:var(--s3);border:1px solid var(--grid)}.statechip.nofile{color:var(--muted);border:1px dashed var(--grid)}.ctok{margin-left:auto;color:var(--muted);font-size:11.5px;font-variant-numeric:tabular-nums;flex:none}.crow.emptyrow{color:var(--muted);font-size:12px}.livenone{font-size:12.5px;color:var(--muted);border:1px dashed var(--grid);border-radius:8px;padding:10px 12px;margin-bottom:8px;line-height:1.7}.livenone:last-child{margin-bottom:0}.livenone code{color:var(--ink2);background:var(--pill);border:1px solid var(--grid);border-radius:4px;padding:1px 5px}.tier.none{color:var(--muted);border-style:dashed}.conn{font-size:10px;letter-spacing:0;font-weight:400;border-radius:999px;padding:1px 8px;border:1px solid var(--grid);color:var(--muted)}.conn.open{color:var(--s3);border-color:var(--s3)}.conn.retrying{color:var(--warn);border-color:var(--warn)}.conn.replay{color:var(--warn);border-style:dashed}.demobtn{margin-left:auto;background:none;border:1px dashed var(--warn);color:var(--warn);border-radius:6px;padding:2px 8px;font-size:10.5px;letter-spacing:0;cursor:pointer;font-family:inherit}.demobtn:hover:not(:disabled){border-style:solid}.demobtn:disabled{opacity:.5;cursor:default}.feed{max-height:240px;overflow-y:auto;border:1px solid var(--grid);border-radius:8px;padding:2px 10px}.lvrow{display:flex;align-items:center;gap:8px;padding:5px 0;font-size:12px;border-top:1px dashed var(--grid)}.lvrow:first-child{border-top:none}.lvtime{color:var(--muted);font-size:11px;font-variant-numeric:tabular-nums;flex:none}.lvname{color:var(--ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.lvrow.own .lvname{font-weight:600}.lvrow.other{opacity:.45}.lvharness{margin-left:auto;font-size:10px;color:var(--muted);border:1px solid var(--grid);border-radius:4px;padding:0 5px;flex:none}.lvrow.own .lvharness{color:var(--ink2);border-color:var(--hairline)}.mockchip{font-size:9px;letter-spacing:.08em;color:var(--warn);border:1px solid var(--warn);border-radius:4px;padding:0 4px;flex:none}.labr{margin-left:auto;display:flex;align-items:center;gap:8px}.sharelink{background:none;border:1px solid var(--grid);color:var(--muted);border-radius:6px;padding:2px 8px;font-size:10.5px;letter-spacing:0;cursor:pointer;font-family:inherit}.sharelink:hover{color:var(--ink2);border-color:var(--muted)}.sharebox{max-height:320px;overflow:auto;border:1px solid var(--grid);border-radius:8px;background:var(--pill);padding:6px 8px;font-family:ui-monospace,SF Mono,Menlo,Consolas,monospace;font-size:11px;line-height:1.5}.shline{display:flex;gap:7px;align-items:flex-start;padding:1px 0}.shdel{flex:none;background:none;border:1px solid var(--grid);color:var(--muted);border-radius:4px;font-size:9px;line-height:1.3;padding:0 4px;margin-top:1px;cursor:pointer}.shdel:hover{color:var(--s2);border-color:var(--s2)}.shtext{color:var(--ink2);white-space:pre-wrap;word-break:break-all}.btn:disabled{opacity:.45;cursor:default}.btn:disabled:hover{filter:none}.empty-state{display:flex;flex-direction:column;align-items:center}.empty-card{width:min(460px,94vw);background:var(--surface);border:1px solid var(--hairline);border-radius:16px;padding:28px 26px;text-align:center}.empty-title{font-size:15px;font-weight:700;margin-bottom:8px}.empty-detail{font-size:12px;color:var(--warn);margin-bottom:8px;word-break:break-all}.empty-hint{font-size:12.5px;color:var(--muted);line-height:1.7}.empty-hint code{color:var(--ink2);background:var(--pill);border:1px solid var(--grid);border-radius:4px;padding:1px 5px}#tip{position:fixed;display:none;pointer-events:none;z-index:9;background:#050505;border:1px solid var(--hairline);border-radius:8px;padding:6px 10px;font-size:12px;color:var(--ink);max-width:300px;box-shadow:0 8px 24px #00000080;white-space:pre-line;line-height:1.5}.toggle{width:30px;height:17px;border-radius:999px;background:var(--grid);position:relative;cursor:pointer;flex:none;transition:background .15s;border:none;padding:0}.toggle:after{content:"";position:absolute;top:2px;left:2px;width:13px;height:13px;border-radius:50%;background:var(--ink2);transition:left .15s}.toggle.on{background:var(--s1)}.toggle.on:after{left:15px;background:#fff}.cc-feature{flex-wrap:wrap}.cc-feature .cname{flex:1;min-width:140px}.cc-feature-help{flex-basis:100%;min-width:0}.cc-warning{color:var(--muted);margin-left:6px}.cc-feature-help>summary{width:fit-content;color:var(--ink2);font-size:13px;cursor:pointer}.cc-help-body{max-width:68ch;color:var(--ink2);font-size:13px;line-height:1.7;overflow-wrap:anywhere}.cc-help-body p{margin:10px 0 0}.cc-status{flex-basis:100%;font-size:11px;color:var(--muted)}.cc-status.blocked{color:var(--warn)}.cc-segments{display:inline-flex;border:1px solid var(--grid);border-radius:6px;overflow:hidden}.cc-segments button{padding:4px 7px;font:inherit;font-size:11px;color:var(--muted);background:none;border:none;cursor:pointer}.cc-segments button+button{border-left:1px solid var(--grid)}.cc-segments button[aria-pressed=true]{background:var(--s1);color:#fff}.cc-feature button:disabled{opacity:.45;cursor:not-allowed}.cc-disable-all{padding:3px 7px;font-size:11px}.cright{display:flex;align-items:center;gap:8px;flex:none}.cfgnote{font-size:11px;color:var(--muted);padding:5px 0 2px;border-top:1px dashed var(--grid);line-height:1.6}.licbar{display:block;width:100%;text-align:left;font-size:12px;font-family:inherit;color:var(--warn);background:none;border:1px solid var(--warn);border-radius:8px;padding:6px 10px;margin-bottom:10px;cursor:pointer}.licbar.expired{color:var(--s2);border-color:var(--s2)}.licbar:hover{filter:brightness(1.12)}.licrow{display:flex;align-items:stretch;gap:8px;margin-bottom:10px}.licrow .licbar{flex:1;margin-bottom:0}.licimport{flex:none;font-size:11px;font-family:inherit;color:var(--muted);background:none;border:1px solid var(--grid);border-radius:8px;padding:6px 10px;cursor:pointer}.licimport:hover{color:var(--ink2);border-color:var(--muted)}.licfoot{margin-top:12px;text-align:center}.licfootlink{font-size:11px;font-family:inherit;color:var(--muted);background:none;border:none;padding:2px 4px;cursor:pointer;text-decoration:underline;text-decoration-color:var(--grid);text-underline-offset:3px}.licfootlink:hover{color:var(--ink2)}.feedbackfoot{display:flex;align-items:center;justify-content:center;gap:8px;flex-wrap:wrap;padding:0 18px 16px;color:var(--muted);font-size:10.5px;line-height:1.45;text-align:center}.feedbackfoot a{color:var(--ink2);text-underline-offset:2px}.feedbackfoot a:hover{color:var(--ink)}.feedbacklink{font-weight:650}.lictrial{margin:-2px 0 8px;text-align:right}.lictrial .licfootlink{text-decoration:none}#drop{position:fixed;inset:0;z-index:40;display:none;align-items:center;justify-content:center;background:#000000a6;border:2px dashed var(--s1);color:var(--ink);font-size:15px;pointer-events:none}.overlay{position:fixed;inset:0;z-index:20;display:flex;align-items:center;justify-content:center;padding:20px}.scrim{position:absolute;inset:0;background:#0009}.modal{position:relative;width:min(560px,94vw);max-height:86vh;overflow-y:auto;background:var(--surface);border:1px solid var(--hairline);border-radius:16px;padding:16px 18px;box-shadow:0 18px 60px #0009;animation:drop .18s ease}.mhead{display:flex;align-items:center;gap:8px;margin-bottom:10px}.mtitle{font-size:14px;font-weight:700}.mclose{margin-left:auto;background:none;border:1px solid var(--hairline);color:var(--ink2);border-radius:8px;padding:2px 8px;font-size:12px;cursor:pointer}.mclose:hover{border-color:var(--muted)}.mnote{font-size:11px;color:var(--warn);border:1px dashed var(--warn);border-radius:8px;padding:8px 10px;margin-bottom:10px;line-height:1.6}.msec{border-top:1px solid var(--grid);padding:10px 0}.mlabel{font-size:11px;letter-spacing:.1em;color:var(--muted);margin-bottom:6px}.mtext{font-size:12.5px;color:var(--ink2);line-height:1.7;word-break:break-all}.mtext.muted{color:var(--muted)}.mtext code,.mpath{color:var(--ink2);background:var(--pill);border:1px solid var(--grid);border-radius:4px;padding:1px 5px;font-size:11px;word-break:break-all}.mfile{display:flex;align-items:center;gap:8px;padding:4px 0;font-size:12px;flex-wrap:wrap}.mkind{font-size:10px;border-radius:4px;padding:1px 6px;flex:none;border:1px solid var(--grid);color:var(--ink2)}.mkind.create{color:var(--s3);border-color:var(--s3)}.mkind.modify{color:var(--s4);border-color:var(--s4)}.mkind.delete{color:var(--s2);border-color:var(--s2)}.mlines{margin-left:auto;font-size:11px;color:var(--muted);font-variant-numeric:tabular-nums;flex:none}.mref{display:flex;gap:8px;padding:4px 0;font-size:12px;align-items:baseline;flex-wrap:wrap}.mctx{color:var(--muted);font-size:11.5px;line-height:1.5}.merror{font-size:12px;color:var(--warn);border:1px solid var(--warn);border-radius:8px;padding:8px 10px;margin-bottom:8px;white-space:pre-wrap;word-break:break-all}.mact{display:flex;gap:8px;justify-content:flex-end;margin-top:12px}.btn{border-radius:8px;padding:6px 14px;font-size:12.5px;cursor:pointer;font-family:inherit}.btn.ghost{background:none;border:1px solid var(--hairline);color:var(--ink2)}.btn.ghost:hover{border-color:var(--muted)}.btn.primary{background:var(--s1);border:1px solid var(--s1);color:#fff;font-weight:600}.btn.primary:hover{filter:brightness(1.1)}.projects{display:grid;gap:12px;padding:12px 14px 16px}.project-shell{min-width:0}.projects-empty,.project-empty{color:var(--muted);font-size:12px;padding:8px 0}.project-card{border:1px solid var(--hairline);border-radius:12px;padding:12px;background:var(--surface)}.project-toolbar{display:flex;align-items:center;flex-wrap:wrap;gap:12px}.project-organization{display:flex;align-items:center;gap:6px}.project-organization button{color:var(--muted);background:transparent;border:0;cursor:pointer;font-size:12px;padding:4px}.project-organization button:disabled{opacity:.35;cursor:default}.project-organization button[aria-pressed=true]{color:var(--ink2)}.project-row{display:flex;align-items:center;gap:10px;min-height:36px;cursor:pointer}.project-row-layout{display:flex;align-items:center;gap:12px;overflow-x:auto}.project-row-layout>.project-row{flex:1;min-width:min-content}.project-row-actions{display:flex;flex:none;align-items:center;gap:6px;white-space:nowrap}.project-row>span{white-space:nowrap}.project-row-name{flex:none;font-weight:600}.project-row-goal,.project-row-task{flex:1;width:0;min-width:0;overflow:hidden;text-overflow:ellipsis;color:var(--muted)}.project-row-action{flex:none;min-width:max-content;font-size:12px;border:1px solid var(--hairline);border-radius:4px;padding:3px 6px}.project-row-action[data-kind=ended]{color:var(--muted)}.project-row-action[data-kind=decision],.project-row-action[data-kind=checkpoint]{color:var(--warn)}.project-row:focus-visible{outline:2px solid var(--ink2);outline-offset:4px}.projects-toggle,.project-collapse{color:var(--muted);background:transparent;border:0;font-size:12px;padding:6px 0;cursor:pointer}.project-collapse{display:block;margin-left:auto}.project-progress{display:grid;gap:7px;margin-top:12px;font-size:12px}.project-progress>div{display:flex;align-items:baseline;flex-wrap:wrap;gap:5px}.project-branches,.project-current-points{flex:1;min-width:0;display:grid;gap:5px}.project-branch{display:flex;align-items:baseline;gap:5px}.project-branches .fold,.project-current-points .fold{margin-top:0}.project-action{margin-top:14px;padding:10px 0;border-block:1px solid var(--hairline);font-size:12px}.project-action[data-kind=decision],.project-action[data-kind=checkpoint]{color:var(--warn)}.project-action-title{font-weight:650}.project-action-title>span{margin-left:6px;font-weight:400}.project-action-item{display:flex;align-items:baseline;flex-wrap:wrap;gap:7px;margin-top:8px}.project-tech{margin-top:14px;color:var(--muted);font-size:11px}.project-tech>summary,.project-plan-help>summary,.project-node-children>summary{cursor:pointer}.project-tech>summary{margin-bottom:7px}.project-node-children>summary{color:var(--muted);font-size:11px}.project-plan-help{margin-top:7px}.project-plan-help pre{white-space:pre-wrap}.project-action button:focus-visible,.project-tech summary:focus-visible,.project-node-children summary:focus-visible{outline:2px solid var(--s1);outline-offset:3px}.project-card.unavailable,.project-last-good{background:color-mix(in srgb,var(--surface) 88%,var(--grid))}.project-card-head{display:flex;justify-content:space-between;gap:12px;align-items:baseline}.project-title{font-size:15px;font-weight:700}.project-source{margin-left:7px;color:var(--muted);font-size:10.5px}.project-branch .project-source{flex:none;white-space:nowrap}.project-presence{color:var(--muted);font-size:11px;margin-top:4px}.project-memory-warning,.anatomy-refresh-warning{color:var(--warn);font-size:11px}.project-memory-warning{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:8px}.project-memory-warning button{color:inherit;background:transparent;border:0;cursor:pointer}.project-root,.project-meta,.project-counts,.project-facts{color:var(--muted);font-size:11px;overflow-wrap:anywhere}.project-meta{margin-top:4px}.project-protocols{display:grid;gap:6px;margin-top:8px}.project-protocol-row{display:flex;align-items:center;flex-wrap:wrap;gap:5px}.project-protocol-chip,.project-protocol-copy{border:1px solid var(--hairline);border-radius:999px;color:var(--ink2);font-family:inherit;font-size:10.5px;padding:2px 7px}.project-protocol-chip.plan_present,.project-protocol-chip.session_wrote_plan{border-color:var(--s3);color:var(--s3)}.project-protocol-chip.installed_not_loaded{border-color:var(--warn);color:var(--warn)}.project-protocol-note{color:var(--muted);font-size:10px;overflow-wrap:anywhere}.project-protocol-copy{background:transparent;cursor:pointer;padding-inline:6px}.project-protocol-copy:hover{border-color:var(--s1)}.project-goal,.project-section,.project-counts,.project-facts,.project-complete,.project-l0,.project-error,.project-last-good{margin-top:10px}.project-label{color:var(--ink2);font-size:11px;font-weight:650;margin-right:8px}.project-l0,.project-error{border:1px solid var(--hairline);border-radius:8px;padding:8px 10px;font-size:12px}.project-error{color:var(--warn);border-color:var(--warn)}.project-complete{color:var(--s3);font-size:12px;font-weight:650}.project-points{display:flex;flex-wrap:wrap;gap:6px;margin-top:5px}.project-checkpoints{margin-top:5px}.project-checkpoint{font-size:12px;font-weight:400}.project-crumb{border:1px solid var(--hairline);border-radius:999px;background:transparent;color:var(--ink2);cursor:pointer;font-family:inherit;font-size:11px;padding:3px 8px}.project-crumb:hover{border-color:var(--s1)}.project-node-text,.project-crumb,.project-checkpoint{display:-webkit-box;min-width:0;max-width:100%;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;overflow-wrap:anywhere}.project-node-text{flex:1}.project-facts-group+.project-facts-group{margin-top:4px}.project-facts-toggle{border:0;background:transparent;color:inherit;cursor:pointer;font:inherit;padding:0;text-align:left}.project-facts-items{display:grid;gap:3px;margin:4px 0 0 14px}.task-filters{display:grid;gap:7px;padding:12px 14px 0}.task-filter-group{display:flex;align-items:center;flex-wrap:wrap;gap:5px;color:var(--muted);font-size:10.5px}.task-filter-chip,.task-badge,.task-status{border:1px solid var(--hairline);border-radius:999px;background:transparent;color:var(--ink2);font-family:inherit;font-size:10.5px;padding:2px 7px}.task-filter-chip{cursor:pointer}.task-filter-chip:hover,.task-filter-chip.act{border-color:var(--s1);color:var(--s1)}.task-filter-summary,.task-hidden{color:var(--muted);font-size:11px}.task-filter-summary{padding:7px 14px 0}.task-hidden{margin:5px 0 0 19px}.task-card-list{display:grid;grid-template-columns:minmax(0,1fr);gap:8px;margin-top:12px}.task-card{display:block;width:100%;border:0;border-radius:12px;background:#262624;color:var(--ink);cursor:pointer;font-family:inherit;padding:16px 40px 16px 16px;text-align:left}.task-card:hover{background:#2d2d2a}.task-card-head{display:grid;grid-template-columns:92px minmax(0,1fr);align-items:baseline;gap:14px}.task-card-meta{display:flex;align-items:center;flex-wrap:wrap;gap:8px 18px;margin:9px 0 0 106px}.task-title{min-width:0;font-size:15px;font-weight:550;line-height:1.65;overflow-wrap:anywhere}.task-status.waiting{border-color:var(--warn);color:var(--warn)}.task-status.active,.task-status.complete{border-color:var(--s3);color:var(--s3)}.task-status.ended{color:var(--muted)}.task-card .task-badge,.task-card .task-status{border:0;padding:0;font-size:12px;line-height:1.6}.task-card .task-badge{color:#aaa9a2}.task-card .task-status.active{color:var(--ink2)}.task-card .task-status.active:before,.task-card .task-status.waiting:before{content:"";display:inline-block;width:6px;height:6px;margin:0 7px 1px 0;border-radius:50%;background:#9ab6a4}.task-card .task-status.waiting:before{background:var(--warn)}.task-card .task-status.complete{color:#aab9af}.task-skills{display:block;margin-top:6px;color:var(--muted);font-size:10.5px}.task-card-wrap{position:relative}.task-menu-button{position:absolute;top:6px;right:7px;width:28px;height:26px;border:1px solid transparent;border-radius:7px;background:transparent;color:var(--muted);cursor:pointer;font:700 17px / 1 inherit}.task-menu-button:hover,.task-menu-button[aria-expanded=true]{border-color:var(--hairline);color:var(--ink)}.task-menu{display:grid;gap:7px;max-width:100%;margin-top:5px;padding:8px;border:1px solid var(--hairline);border-radius:9px;background:color-mix(in srgb,var(--surface) 92%,var(--grid))}.task-menu label{display:grid;grid-template-columns:auto minmax(0,1fr);gap:7px;align-items:center;color:var(--muted);font-size:10.5px}.task-menu input{min-width:0;border:1px solid var(--hairline);border-radius:6px;background:var(--surface);color:var(--ink);font:inherit;padding:5px 7px}.task-menu-actions{display:flex;flex-wrap:wrap;gap:6px}.return-target-option,.return-settings-dismiss,.task-menu-actions button,.task-resume-command button,.task-unhide,.task-hidden-toggle{border:1px solid var(--hairline);border-radius:999px;background:transparent;color:var(--ink2);cursor:pointer;font:inherit;font-size:10.5px;padding:3px 8px}.task-resume-command{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:6px;align-items:center}.task-resume-command code{min-width:0;overflow-wrap:anywhere;white-space:pre-wrap}.task-return-result,.task-resume-note,.task-resume-unavailable,.task-error{grid-column:1 / -1;color:var(--muted);font-size:10.5px;overflow-wrap:anywhere}.task-error{margin-top:5px;color:var(--warn)}.session-archived{margin-top:8px}.session-archived-row{display:flex;align-items:center;flex-wrap:wrap;gap:8px;padding:6px 0}.task-hidden-group{margin-top:6px}.task-hidden-toggle{color:var(--muted)}.project-organization .task-menu-button{position:static}.project-root-block{border-top:1px solid var(--hairline);padding-top:16px;margin-top:16px}.project-root-block>.project-card-head .project-title{font-size:14px}.project-archived{display:grid;gap:8px;margin-top:12px}.project-archived>.task-hidden-toggle{justify-self:start}.project-archived>.project-card,.project-archived>.project-shell{min-width:0}.task-card-hidden{opacity:.58}.task-unhide{margin-top:5px}@media(max-width:560px){.task-menu label{grid-template-columns:1fr}}.project-tree,.project-tree ul{list-style:none;margin:5px 0 0;padding-left:17px}.project-tree{padding-left:0}.project-plan-toolbar{display:flex;align-items:center;justify-content:space-between;gap:8px}.project-node-heading{flex:1;min-width:0}.project-node-detail{display:block;color:var(--muted);font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.project-node{margin:4px 0;font-size:12px}.project-node-line{display:flex;gap:7px;align-items:baseline}.project-node.in_progress>.project-node-line{color:var(--s3)}.project-node.completed,.project-node.cancelled,.project-node.collapsed{color:var(--muted)}.project-mark{width:12px;flex:none;text-align:center}.project-verify{color:var(--muted);font-size:11px;margin:3px 0 0 19px}.project-session-wrap,.task-card-wrap{margin:5px 0 6px 19px}.project-last-good{opacity:.72;border-radius:8px;padding:8px}html.island,html.island body{background:transparent}html.island body{padding:8px 0 12px;overflow:hidden}html.island .pill{box-shadow:0 2px 6px #0000008c}html.island .panel{box-shadow:0 2px 6px #0009}html.island #app{display:flex;flex-direction:column;width:100%;height:calc(100vh - 20px)}html.island[data-island-edge=bottom] #app{justify-content:flex-end}html.island[data-island-edge=left] .wrap{align-items:flex-start;padding-left:8px}html.island[data-island-edge=right] .wrap{align-items:flex-end;padding-right:8px}html.island-compact body{padding:8px 0}html.island-compact #app{height:calc(100vh - 16px)}html.island-compact .pill{height:32px;max-width:min(100%,360px);gap:8px;padding:0 12px;cursor:default}html.island-compact .pill:hover{transform:none}html.island-tab-mode body{padding:0}html.island-tab-mode #app{height:100vh}.island-tab{width:6px;height:64px;border:0;border-radius:3px;padding:0;flex:none;cursor:pointer;background:var(--muted);opacity:.6}.island-tab.live{background:var(--s3);opacity:1}.island-tab.wait{background:var(--warn);opacity:1}.island-tab.pulse{animation:pulse 1.2s 1}.island-tab:focus-visible{outline:1px solid var(--ink);outline-offset:-1px}.island-transition-tab{position:fixed;pointer-events:none}html.island[data-island-edge=left] .wrap:not(.open),html.island[data-island-edge=right] .wrap:not(.open){min-height:64px;justify-content:center}html.island .pill.island-edge-left{--island-edge-offset: calc(-100% - 8px) }html.island .pill.island-edge-right{--island-edge-offset: calc(100% + 8px) }html.island .pill.island-reveal{transform:translate(0);opacity:1;transition:transform .2s ease-out,opacity .2s ease-out}html.island .pill.island-retract{transform:translate(var(--island-edge-offset));opacity:0;transition:transform .15s ease-in,opacity .15s ease-in}html.island .pill.island-prepare{transform:translate(var(--island-edge-offset));opacity:0;transition:none}html.island .pill.island-motion-reduced{transform:none;transition:opacity 80ms linear}html.island .pill.island-motion-reduced.island-prepare{transition:none}@media(prefers-reduced-motion:reduce){html.island .pill.island-reveal,html.island .pill.island-retract{transform:none;transition:opacity 80ms linear}html.island .pill.island-prepare{transition:none}}html.island .open .panel{height:calc(100vh - 20px);overflow-y:auto}html.island .scrim{border-radius:20px}.return-target-options{display:flex;flex-wrap:wrap;gap:6px}.return-target-option.act{color:var(--s1);border-color:var(--s1);background:var(--surface)}.return-target-option:hover,.return-settings-dismiss:hover{color:var(--ink)}.return-target-option:focus-visible,.return-settings-dismiss:focus-visible{outline:2px solid var(--s1);outline-offset:2px}.return-target-option:disabled{opacity:.6;cursor:default}[data-expand-text]{display:-webkit-box;min-width:0;max-width:100%;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;overflow-wrap:anywhere}[data-expand-text][data-expanded=true]{-webkit-line-clamp:unset;white-space:normal;overflow:visible}.ask-line>[data-expand-text],.wfgoal>[data-expand-text],.wflead>[data-expand-text]{flex:1}.wftitle.has-session-origin>[data-expand-text],.session-title-with-origin>.task-title{flex:0 1 auto;min-width:4em}.expand{border:0;background:transparent;color:var(--s1);cursor:pointer;font:inherit;font-size:11px;padding:2px 4px}.expand[hidden]{display:none}.expand:focus-visible{outline:2px solid var(--s1);outline-offset:2px}.project-branch>.expand{flex:none;white-space:nowrap}.protocol-banner{display:flex;align-items:center;flex-wrap:wrap;gap:8px;border-color:var(--hairline);color:var(--ink2);font-size:var(--fs-3)}.protocol-banner small{color:var(--muted);font-size:var(--fs-3)}.protocol-banner.highlighted{outline:2px solid var(--ink2);outline-offset:2px}.taskflow .task-status{color:var(--ink2);border-color:var(--hairline)}.panel:has(.taskflow) .head .dot,.panel:has(.taskflow) .schip .sdot{background:var(--muted)}.panel:has(.taskflow) .schip .snew,.panel:has(.taskflow) .head .badge{color:var(--muted);border-color:var(--muted)}.panel:has(.taskflow) .vtab.act{border-bottom-color:var(--muted)}.ask-box .task-return-result{font-size:var(--fs-3)}.taskflow .mk,.taskflow .ag,.taskflow .expand,.taskflow .mockchip,.taskflow .failchip,.taskflow .trs.bad .cmd,.taskflow .tr.waitrow .trlabel,.taskflow .task-error{color:var(--ink2)}.taskflow .box .muted,.taskflow .fold .muted{color:var(--muted)}.taskflow .tr .ic{background:var(--muted)}.taskflow .mockchip,.taskflow .ag,.taskflow .failchip,.taskflow .project-crumb:hover,.taskflow .project-protocol-copy:hover,.protocol-banner .project-protocol-copy:hover{border-color:var(--muted)}.taskflow .cfgnote,.taskflow .ag,.taskflow .mockchip,.taskflow .task-error,.taskflow .statechip,.taskflow .mk,.taskflow .tr,.taskflow .tr .dur,.taskflow .trs,.taskflow .trs .cmd,.taskflow .trs .dur,.taskflow .failchip,.taskflow .expand,.taskflow .livenone,.taskflow .project-crumb,.taskflow .project-protocol-copy,.taskflow .project-protocol-note{font-size:var(--fs-3)}.taskflow button:focus-visible,.taskflow summary:focus-visible,.protocol-banner button:focus-visible,.protocol-foot button:focus-visible{outline:2px solid var(--ink2);outline-offset:3px}.lang{font-size:12px;color:inherit;background:transparent;border:0}.project-card.compact>.task-error,.project-card.compact>.project-error{flex-basis:100%}.page-heading{margin:24px 0 22px}.page-heading h2{margin:0 0 6px;color:var(--ink);font-size:24px;font-weight:600;letter-spacing:-.025em;line-height:1.3}.page-heading p{margin:0;color:#aaa9a2;font-size:13px;line-height:1.65}.panel .sec>.label{font-size:13px;letter-spacing:0;font-weight:500}.panel .configure-section{border-top:0;padding-top:0}.panel .configure-section>.grp{margin:12px 0;padding:14px 16px;border:1px solid var(--hairline);border-radius:12px;background:#20201e}.panel .configure-section>details.grp>summary{flex-wrap:wrap;gap:6px 10px}.panel .configure-section>details.grp>summary .wflabel{color:var(--ink);font-size:14px;font-weight:500}.panel .configure-section .fold-summary{flex-basis:100%;margin:3px 0 0 14px;color:#aaa9a2;font-size:12px}.panel .gtitle{margin-bottom:9px;color:var(--ink2);font-size:13px}.panel .crow{gap:8px;padding:11px 0;border-top-style:solid;line-height:1.5}.panel .cfgnote{color:#aaa9a2;font-size:12px;line-height:1.65}.panel .usage-section{padding:16px 18px;border:1px solid var(--hairline);border-radius:12px;background:#20201e}.panel .usage-section .livenone{border:0;padding:0;margin:12px 0 0}.panel .sec .headline{margin:14px 0 18px}.panel .sec .headline b{display:block;margin-top:4px;font-size:22px;font-weight:500;letter-spacing:-.025em}.panel .legend{gap:13px 22px;padding:10px 0}.panel .lrow{flex-wrap:wrap}.panel .lrow .nat{order:5;flex-basis:calc(100% - 17px);border:0;padding:0 0 0 17px;white-space:normal}.panel .context-detail .sec{margin-top:0;border:0}.panel .feedback-reason>summary{cursor:pointer;padding:6px 0 10px;color:#aaa9a2;font-size:12px}.panel .feedback-reason .cfgnote{margin-bottom:12px;overflow-wrap:anywhere}.panel .projects-tools{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:10px;margin-bottom:18px}.panel .task-filters{margin-bottom:0}.panel .project-row-layout{align-items:flex-start;flex-wrap:nowrap;overflow:visible}.panel .project-row-layout>.project-row{display:grid;grid-template-columns:fit-content(40%) minmax(0,1fr) auto;flex:1;min-width:0;gap:3px 12px}.panel .project-row>span:not(.project-row-action){min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;overflow-wrap:anywhere}.panel .project-row-name{grid-column:1;grid-row:1;font-size:15px}.panel .project-row-action{grid-column:3;grid-row:1 / 3;align-self:start;min-width:max-content;overflow:visible}.panel .project-row-goal,.panel .project-row-task{width:auto;font-size:13px}.panel .project-row-goal{grid-column:2;grid-row:1;color:var(--ink2)}.panel .project-row-task{grid-column:1 / 3;grid-row:2}.panel .project-row-actions{margin-left:auto;white-space:normal;flex-wrap:wrap}.panel .projects{gap:8px}.panel .projects-tools{margin-bottom:10px}.panel .project-goal{margin-top:9px;color:var(--ink2);font-size:14px;line-height:1.6}.panel .project-title{font-size:19px}.panel .project-action{padding:14px;border:0;border-radius:8px;background:#292927;font-size:13px}.panel .project-action[data-kind=decision],.panel .project-action[data-kind=checkpoint]{background:#fab21912}.panel .project-progress{gap:12px;margin-block:18px}.panel .project-progress>div>.project-label:first-child{flex-basis:100%}.panel .project-section{margin-top:18px;padding-top:16px;border-top:1px solid var(--hairline)}.panel .project-tech>summary{padding:12px 0;font-size:12px}.modal{padding:24px;border-radius:18px;line-height:1.6}.modal .mhead{margin-bottom:20px}.modal .mtitle{font-size:20px;font-weight:600;letter-spacing:-.02em}.modal .msec{padding:16px 0}.modal .mlabel{font-size:12px;letter-spacing:0}.modal .mtext{font-size:13px;overflow-wrap:anywhere}.modal .mact{position:sticky;bottom:-24px;padding:16px 0;background:var(--surface);border-top:1px solid var(--hairline);flex-wrap:wrap}.modal button:focus-visible,.modal input:focus-visible,.modal textarea:focus-visible{outline:2px solid #a8c7ff;outline-offset:3px}html:not(.island) .panel{width:min(780px,calc(100vw - 32px))}.panel{padding:24px 26px 18px;line-height:1.55}.panel .head{gap:10px;padding-bottom:18px;margin-bottom:18px;border-bottom:1px solid var(--hairline)}.panel .head .title{font-size:19px;font-weight:600;letter-spacing:-.02em}.panel .head .dot{animation:none}.panel .lang{margin-left:auto;font-size:13px;padding:7px 5px}.panel .collapse{margin-left:4px;padding:7px 11px}.panel .tabs{width:100%;max-width:100%;overflow-x:auto;background:none;border:0;padding:0;gap:6px;margin-bottom:18px}.panel .tab{flex:none;border:1px solid transparent;padding:8px 13px;font-size:13px;color:var(--ink2)}.panel .tab.act{background:#292927;border-color:#41413c;color:var(--ink)}.panel .vtabs{gap:26px;margin-bottom:16px}.panel .vtab{padding:9px 1px;font-size:13px}.panel .pane{min-width:0}.panel button,.panel select,.empty-state button{font-family:inherit}.panel button:focus-visible,.panel summary:focus-visible,.panel select:focus-visible,.panel a:focus-visible,.empty-state summary:focus-visible{outline:2px solid #a8c7ff;outline-offset:3px}.task-empty{padding:38px 20px 42px;text-align:center}.empty-eyebrow{color:var(--ink2);font-size:13px}.task-empty h2{margin:12px 0;color:#f1f1ef;font-size:26px;font-weight:500;line-height:1.3;letter-spacing:-.025em}.task-empty p{max-width:430px;margin:0 auto;color:#aaa9a2;font-size:14px;line-height:1.7;text-wrap:pretty}.empty-action{margin-top:24px;border:1px solid transparent;border-radius:9px;background:#a8c7ff;color:#112340;padding:10px 16px;font-size:13px;font-weight:500;cursor:pointer}.empty-action.secondary{margin-top:18px;color:#b2b1aa;background:none;font-weight:400}.empty-action:hover{filter:brightness(1.12)}.panel-detail{border-top:1px solid var(--hairline);margin-top:0;font-size:13px}.panel-detail>summary{padding:13px 2px;color:var(--ink2);gap:10px;line-height:1.5}.panel-detail>summary>span:first-of-type{flex-shrink:0}.panel-detail>summary .fold-summary{font-size:12px;color:#a4a39c;margin-left:auto;text-align:right}.panel-detail .fold-body{padding:4px 4px 16px;overflow-wrap:anywhere}.panel-detail .sessions-empty{border:0;padding:0;margin:10px 0}.connection-meta,.connection-command{color:var(--ink2);font-size:12px}.connection-command{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin-top:14px}.connection-command>span:first-child{flex-basis:100%}.connection-command code{flex:1;min-width:0;white-space:pre-wrap;overflow-wrap:anywhere}.connection-command button,.protocol-link button{color:var(--ink2);border:1px solid var(--hairline);border-radius:7px;padding:5px 9px;background:none;cursor:pointer}.protocol-link{padding-top:12px}.protocol-link button{font-size:12px;border:0;padding-left:0}.protocol-detail .protocol-banner,.protocol-detail .protocol-foot{margin:0;border:0;padding:6px 0}.panel-footer{display:flex;flex-wrap:wrap;align-items:baseline;gap:0 20px;margin-top:24px;padding-top:10px;border-top:1px solid var(--hairline)}.panel .suggestions-section{margin:20px 0;border-top:1px solid var(--hairline);padding-top:18px}.panel .suggestions-section h3{margin:0;color:var(--ink);font-size:15px;font-weight:500}.panel .suggestions-section>p{margin:6px 0 12px;color:#aaa9a2;font-size:12px;line-height:1.65}.panel .suggestions-section .suggslot{border:0;padding:0}.panel .suggestions-section .sugg{flex-wrap:wrap;padding:10px 0;font-size:13px;line-height:1.6}.panel .suggestions-section .sugg+.sugg{border-top:1px solid var(--hairline)}.panel .suggestions-section .sugtext{flex:1 1 280px;white-space:normal;overflow:visible;overflow-wrap:anywhere}.panel .suggestions-section .sugbtn,.panel .suggestions-section .sugdismiss{min-height:28px;font-size:12px}.panel .suggestions-section .sugactions{display:inline-flex;flex:none;gap:8px;margin-left:auto}.panel-footer .licfoot{margin:0;text-align:left}.panel-footer .help-detail{border:0;margin-left:auto}.panel-footer .help-detail[open]{flex-basis:100%}.help-detail .feedbackfoot{margin:0;padding:4px 0;text-align:left;align-items:flex-start;font-size:12px;line-height:1.65}.help-detail .feedbackfoot>span{color:#aaa9a2}.panel .taskflow{margin-top:10px}.panel .box{background:#20201e;border-radius:12px;padding:16px 18px}.panel .ask-box.active{background:#fab2190b}.panel .wftitle{font-size:21px;line-height:1.4;font-weight:600}.panel .wfgoal,.panel .wflead{margin-top:12px;line-height:1.6}.panel .taskflow>.fold>summary{padding-top:12px;padding-bottom:12px}.panel .taskflow>.fold{margin-top:0;border-bottom:1px solid var(--hairline)}.panel .taskflow>.box+.fold{margin-top:16px}.panel .project-card{background:#20201e;border-color:var(--hairline);border-radius:12px}.panel .project-title{font-weight:600;line-height:1.5}.panel .project-card:not(.compact){padding:18px}.panel .project-card.compact{padding:9px 14px}.panel .sec>.label{color:var(--ink2);line-height:1.6}.panel .livenone,.panel .emptyrow{line-height:1.65}.panel-detail code,.panel .livenone code{white-space:pre-wrap;overflow-wrap:anywhere}.panel :is(.td,.urow,.crow,.lvrow,.cfgnote){border-top-style:solid;border-color:var(--hairline)}.panel :is(.statechip.nofile,.tier.none,.conn.replay,.demobtn){border-style:solid;border-color:var(--hairline)}.panel .livenone{border:0;padding:10px 0}.panel .task-menu{border:0;border-radius:12px;background:#292927;padding:12px}.task-card-wrap:has(>.expand:not([hidden]))>.task-card{border-bottom-left-radius:0;border-bottom-right-radius:0}.task-card-wrap>.expand:not([hidden]){display:block;width:100%;margin:0;padding:0 16px 12px;border-radius:0 0 12px 12px;background:#262624;color:var(--ink2);text-align:right;font-size:12px}@media(max-width:640px){.panel .project-row-layout{flex-wrap:wrap}.panel .project-row-layout>.project-row{flex-basis:100%}}@media(max-width:520px){.schip.has-session-origin .snew{display:none}.task-card-head{grid-template-columns:minmax(0,1fr);gap:5px}.task-card-meta{margin-left:0}.panel .suggestions-section .sugtext{flex-basis:100%}.panel .crow{flex-wrap:wrap}.panel .crow .cname{white-space:normal;overflow-wrap:anywhere}.panel .crow .ctok{flex-basis:100%}.panel .project-row-layout>.project-row{grid-template-columns:minmax(0,1fr)}.panel .project-row-layout{flex-wrap:wrap}.panel .project-row-layout>.project-row{flex-basis:100%}.panel .project-row-action{grid-column:1;grid-row:auto;justify-self:start}.panel .project-row-goal,.panel .project-row-task{grid-column:1;grid-row:auto}.modal{padding:18px}.panel{padding:18px 16px 14px}.panel .head{gap:6px}.panel .head .badge{flex-basis:auto;font-size:9px}.panel .tabs{gap:2px}.panel .tab{padding:7px 9px;font-size:12px}.task-empty{padding:28px 8px 32px}.task-empty h2{font-size:23px}.panel .box{padding:14px}.panel .wftitle{font-size:19px}.panel .project-card:not(.compact){padding:14px}.panel-detail>summary{flex-wrap:wrap}.panel-detail>summary .fold-summary{white-space:normal}}@media(max-width:380px){.chip.session-origin{max-width:6em}}
|