@epoch-agent/server 0.3.2 → 0.5.0

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/dist/index.d.ts CHANGED
@@ -4684,7 +4684,11 @@ declare function collectWorkspaceDiff(opts: WorkspaceDiffOptions): Promise<WireW
4684
4684
  * 开五分钟。取而代之的是 {@link PickOptions.signal}:HTTP 请求断开(用户关了
4685
4685
  * 标签页)就杀掉那个子进程,否则那个框会永远留在别人屏幕上;
4686
4686
  * 3. **同一进程只许一个框**({@link pickNativeDirectory} 的单飞闸)。两个框叠在
4687
- * 一台机器上,用户答的那一个未必是浏览器还等着的那一个。
4687
+ * 一台机器上,用户答的那一个未必是浏览器还等着的那一个;
4688
+ * 4. **框要开在最上层**(2026-09-06)。按下「浏览目录」的时候前台是**浏览器**,
4689
+ * 而这个服务在后台 —— Windows 的前台锁于是不让它抢前台,那个框开在浏览器
4690
+ * **后面**,用户看到的是「点了没反应」。判据和量法全文在
4691
+ * {@link win32PickScript} 上(macOS 那一支的同形状问题记在那儿的 📮)。
4688
4692
  */
4689
4693
  /** 这台机器上能不能弹的四件事,全是**事实**不是结论 —— 判据在下面那个函数上 */
4690
4694
  interface NativePickerFacts {
package/dist/index.js CHANGED
@@ -1449,6 +1449,8 @@ function config(ctx, res, lang) {
1449
1449
  ...runtime.config.budget?.maxCostUsd !== void 0 ? { maxCostUsd: runtime.config.budget.maxCostUsd } : {},
1450
1450
  ...runtime.config.brand !== void 0 ? { brand: runtime.config.brand } : {},
1451
1451
  ...runtime.config.sidebarMenu !== void 0 ? { sidebarMenu: runtime.config.sidebarMenu } : {},
1452
+ ...runtime.config.blankCards !== void 0 ? { blankCards: runtime.config.blankCards } : {},
1453
+ ...runtime.config.blankGreeting !== void 0 ? { blankGreeting: runtime.config.blankGreeting } : {},
1452
1454
  provider: runtime.providerInfo,
1453
1455
  tools: runtime.tools,
1454
1456
  diagnostics: (lang && runtime.diagnosticsIn?.(lang)) ?? runtime.diagnosticList,
@@ -2718,6 +2720,34 @@ async function setProviderKey(ctx, req, res, type, lang) {
2718
2720
  envPath: written.envPath
2719
2721
  });
2720
2722
  }
2723
+ async function setDefaultModel(ctx, req, res, lang) {
2724
+ if (ctx.runtime.providerInfo !== null) {
2725
+ return sendError(
2726
+ res,
2727
+ 409,
2728
+ "provider-available",
2729
+ t("web.model_default_has_provider", void 0, lang)
2730
+ );
2731
+ }
2732
+ const body = await readJsonBody(req, void 0, lang);
2733
+ if (!body.ok) return sendError(res, body.status, "bad-body", body.message);
2734
+ const raw = asRecord(body.value)["model"];
2735
+ const model = typeof raw === "string" ? raw.trim() : "";
2736
+ if (model === "") {
2737
+ return sendError(res, 400, "bad-request", t("web.model_default_empty", void 0, lang));
2738
+ }
2739
+ const report = ctx.runtime.settings.write({ key: "model", layer: "user", value: model });
2740
+ if (!report.ok) {
2741
+ const failure = settingWriteFailure(report);
2742
+ return sendError(
2743
+ res,
2744
+ failure.status,
2745
+ failure.code,
2746
+ t(failure.key, { path: failure.path }, lang)
2747
+ );
2748
+ }
2749
+ sendJson(res, 200, toWireSettingsWrite(report));
2750
+ }
2721
2751
  async function addRole(ctx, req, res, lang) {
2722
2752
  if (ctx.lanExposed) {
2723
2753
  return sendError(
@@ -2943,9 +2973,9 @@ function toWireRow(control, def) {
2943
2973
  allowlistApplies: control.needsAllowlist(def.permission)
2944
2974
  };
2945
2975
  }
2946
- function defaultsOf() {
2976
+ function defaultsOf(ctx) {
2947
2977
  return {
2948
- maxTurns: SCHEDULE_DEFAULTS.maxTurns,
2978
+ maxTurns: ctx.runtime.config.maxTurns,
2949
2979
  timeoutMs: SCHEDULE_DEFAULTS.timeoutMs,
2950
2980
  allowTools: SCHEDULE_DEFAULT_ALLOWLIST.allowTools,
2951
2981
  allowOperations: SCHEDULE_DEFAULT_ALLOWLIST.allowOperations,
@@ -2959,7 +2989,7 @@ async function listSchedules(ctx, res, lang) {
2959
2989
  const payload = {
2960
2990
  schedules: control.list().map((def) => toWireRow(control, def)),
2961
2991
  capability: { backend: capability.backend, canRegister: capability.canRegister },
2962
- defaults: defaultsOf(),
2992
+ defaults: defaultsOf(ctx),
2963
2993
  recentRuns: control.recentRuns(RECENT_RUNS_LIMIT)
2964
2994
  };
2965
2995
  sendJson(res, 200, payload);
@@ -3394,12 +3424,76 @@ function nativePickerCommands(platform, prompt) {
3394
3424
  function win32PickScript(prompt) {
3395
3425
  return [
3396
3426
  "Add-Type -AssemblyName System.Windows.Forms",
3427
+ "Add-Type -AssemblyName System.Drawing",
3428
+ "$epochOwner = New-Object System.Windows.Forms.Form",
3429
+ "$epochOwner.FormBorderStyle = 'None'",
3430
+ "$epochOwner.ShowInTaskbar = $false",
3431
+ "$epochOwner.TopMost = $true",
3432
+ "$epochOwner.StartPosition = 'Manual'",
3433
+ "$epochOwner.Size = New-Object System.Drawing.Size 1, 1",
3434
+ "$epochOwner.Location = New-Object System.Drawing.Point -32000, -32000",
3435
+ "$epochOwner.Show()",
3436
+ "$epochOwner.Activate()",
3437
+ "try {",
3438
+ "Add-Type -Namespace EpochPick -Name Win -MemberDefinition @'",
3439
+ '[DllImport("user32.dll")] public static extern IntPtr GetWindow(IntPtr h, uint cmd);',
3440
+ '[DllImport("user32.dll")] public static extern bool SetWindowPos(IntPtr h, IntPtr after, int x, int y, int cx, int cy, uint flags);',
3441
+ '[DllImport("user32.dll")] public static extern void SwitchToThisWindow(IntPtr h, bool useAltTab);',
3442
+ '[DllImport("user32.dll")] public static extern int GetWindowLong(IntPtr h, int i);',
3443
+ '[DllImport("user32.dll")] public static extern IntPtr GetForegroundWindow();',
3444
+ '[DllImport("user32.dll")] public static extern uint GetWindowThreadProcessId(IntPtr h, IntPtr pid);',
3445
+ '[DllImport("user32.dll")] public static extern bool AttachThreadInput(uint idAttach, uint idAttachTo, bool fAttach);',
3446
+ '[DllImport("user32.dll")] public static extern bool SetForegroundWindow(IntPtr h);',
3447
+ '[DllImport("user32.dll")] public static extern bool BringWindowToTop(IntPtr h);',
3448
+ '[DllImport("kernel32.dll")] public static extern uint GetCurrentThreadId();',
3449
+ "static bool Raise(IntPtr h) {",
3450
+ " IntPtr fg = GetForegroundWindow();",
3451
+ " uint fgThread = GetWindowThreadProcessId(fg, IntPtr.Zero);",
3452
+ " uint me = GetCurrentThreadId();",
3453
+ " bool attached = false;",
3454
+ " if (fgThread != 0 && fgThread != me) { attached = AttachThreadInput(me, fgThread, true); }",
3455
+ " bool okPos = SetWindowPos(h, new IntPtr(-1), 0, 0, 0, 0, 3);",
3456
+ " BringWindowToTop(h);",
3457
+ " bool okFg = SetForegroundWindow(h);",
3458
+ " SwitchToThisWindow(h, true);",
3459
+ " if (attached) { AttachThreadInput(me, fgThread, false); }",
3460
+ " return okPos && okFg;",
3461
+ "}",
3462
+ "public static void RaiseSoon(IntPtr owner) {",
3463
+ " System.Threading.Thread t = new System.Threading.Thread(delegate() {",
3464
+ ' string note = "dialog window never appeared";',
3465
+ " for (int i = 0; i < 400; i++) {",
3466
+ " System.Threading.Thread.Sleep(30);",
3467
+ " IntPtr dlg = GetWindow(owner, 6);",
3468
+ " if (dlg == IntPtr.Zero) { continue; }",
3469
+ " bool ok = false;",
3470
+ " for (int k = 0; k < 4; k++) {",
3471
+ " Raise(owner);",
3472
+ " ok = Raise(dlg) || ok;",
3473
+ " System.Threading.Thread.Sleep(120);",
3474
+ " }",
3475
+ ' note = "raised hwnd=" + dlg.ToInt64() + " ok=" + ok + " dlgEx=0x" + GetWindowLong(dlg, -20).ToString("X") + " ownerEx=0x" + GetWindowLong(owner, -20).ToString("X") + " isFg=" + (GetForegroundWindow() == dlg);',
3476
+ " break;",
3477
+ " }",
3478
+ ' string dbg = System.Environment.GetEnvironmentVariable("EPOCH_PICK_DEBUG");',
3479
+ " if (!string.IsNullOrEmpty(dbg)) {",
3480
+ ' try { System.IO.File.AppendAllText(System.IO.Path.Combine(System.IO.Path.GetTempPath(), "epoch-pick-debug.log"), System.DateTime.Now.ToString("HH:mm:ss.fff") + " " + note + System.Environment.NewLine); } catch { }',
3481
+ " }",
3482
+ " });",
3483
+ " t.IsBackground = true;",
3484
+ " t.Start();",
3485
+ "}",
3486
+ "'@",
3487
+ "[EpochPick.Win]::RaiseSoon($epochOwner.Handle)",
3488
+ "} catch { }",
3397
3489
  "$d = New-Object System.Windows.Forms.FolderBrowserDialog",
3398
3490
  `$d.Description = ${asPowerShellString(prompt)}`,
3399
3491
  "$d.ShowNewFolderButton = $true",
3400
- "if ($d.ShowDialog() -ne [System.Windows.Forms.DialogResult]::OK) { exit 1 }",
3492
+ "$epochResult = $d.ShowDialog($epochOwner)",
3493
+ "$epochOwner.Close()",
3494
+ "if ($epochResult -ne [System.Windows.Forms.DialogResult]::OK) { exit 1 }",
3401
3495
  "[Convert]::ToBase64String([System.Text.Encoding]::UTF8.GetBytes($d.SelectedPath))"
3402
- ].join("; ");
3496
+ ].join("\n");
3403
3497
  }
3404
3498
  function asAppleScriptString(text) {
3405
3499
  return `"${text.replace(/\\/g, "\\\\").replace(/"/g, '\\"')}"`;
@@ -4194,7 +4288,9 @@ function splitPath(pathname) {
4194
4288
  async function handleApi(opts, req, res, method, segments, lang) {
4195
4289
  const { ctx } = opts;
4196
4290
  const [, resource, first, second, detail, tail] = segments;
4197
- if (resource === "config" && isRead(method)) return config(ctx, res, lang);
4291
+ if (resource === "config" && first === void 0 && isRead(method)) {
4292
+ return config(ctx, res, lang);
4293
+ }
4198
4294
  if (resource === "events" && method === "GET") return openStream(opts, req, res);
4199
4295
  if (resource === "sessions") {
4200
4296
  return handleSessions(opts, req, res, method, first, second, detail, lang);
@@ -4274,6 +4370,9 @@ async function handleApi(opts, req, res, method, segments, lang) {
4274
4370
  if (resource === "providers" && first !== void 0 && second === "key" && method === "POST") {
4275
4371
  return setProviderKey(ctx, req, res, first, lang);
4276
4372
  }
4373
+ if (resource === "config" && first === "model" && method === "POST") {
4374
+ return setDefaultModel(ctx, req, res, lang);
4375
+ }
4277
4376
  if (resource === "workspaces" && first === "dirs" && isRead(method)) {
4278
4377
  return browseWorkspaceDirs(ctx, res, req.url, lang);
4279
4378
  }
@@ -0,0 +1 @@
1
+ :root{--font-sans:-apple-system, BlinkMacSystemFont, "SF Pro Text", "Segoe UI Variable Text", "Segoe UI", "PingFang SC", "Hiragino Sans GB", "Source Han Sans SC", "Microsoft YaHei", sans-serif;--font-mono:ui-monospace, "SF Mono", SFMono-Regular, Menlo, Monaco, "Cascadia Mono", Consolas, monospace;--fs-eyebrow:11.5px;--fs-micro:11px;--fs-data:12px;--fs-sm:13px;--fs-body:14px;--fs-lg:16px;--fs-title:21px;--lh-tight:1.3;--lh-body:1.65;--lh-code:1.55;--tracking-title:-.021em;--tracking-lg:-.012em;--s1:4px;--s2:8px;--s3:12px;--s4:16px;--s5:20px;--s6:24px;--s8:32px;--s10:40px;--s12:48px;--r-sm:8px;--r:10px;--r-md:12px;--r-lg:14px;--r-xl:18px;--r-pill:999px;--ctl-h:32px;--ctl-h-sm:28px;--ctl-pad-x:10px;--h-header:52px;--w-sidebar:268px;--w-inspector:384px;--w-drawer-peek:44px;--w-gutter:34px;--w-read:712px;--w-panel:920px;--w-menu-max:360px;--w-form-label:72px;--pad-center:max(var(--s6), calc((100% - var(--w-panel)) / 2));--w-column:calc(var(--w-gutter) + var(--w-read));--w-frame:calc(var(--w-column) + var(--w-gutter));--dur-fast:.14s;--dur:.22s;--dur-slow:.42s;--ease:cubic-bezier(.25, .1, .25, 1);--ease-out:cubic-bezier(.16, 1, .3, 1);--z-drawer:28;--z-toast:30;--z-menu:40;--z-modal:55;--scrim:#00000061}[data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg-canvas:#fafbfe;--bg-chrome:#f1f2f8;--bg-card:#fff;--bg-code:#f3f4fa;--bg-raise:#0000000b;--bg-active:#00000016;--bg-inverse:#1d1d1f;--ctl-bg:#fff;--ctl-bd:#00000024;--ctl-bd-hover:#00000042;--ctl-chevron:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%23656b7a' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");--ink:#191c24;--ink-muted:#4d5261;--ink-faint:#656b7a;--ink-inverse:#fff;--bd-muted:#0000000f;--bd-base:#0000001b;--bd-strong:#0000002e;--success:#0f7530;--warning:#a94c00;--danger:#ce0013;--info:#006a9b;--add:#0f7530;--add-bg:#34c7591f;--del:#ce0013;--del-bg:#ff3b301a;--tk-comment:#5a6875;--tk-keyword:#9b2393;--tk-string:#c41a16;--tk-number:#1c00cf;--tk-fn:#2f6870;--tk-type:#4b21b0;--teal:#0a746f;--hue-1:#0a6cd8;--hue-2:#5b52d8;--hue-3:#9333c4;--hue-4:#c2185b;--hue-5:#b45309;--hue-6:#0f766e;--accent:#0067e6;--accent-hover:#005ed6;--accent-press:#0051bd;--accent-ink:#fff;--accent-soft:color-mix(in srgb, var(--accent) 12%, transparent);--shadow-card:0 1px 2px #1118270a, 0 4px 12px -6px #1118270f;--shadow-pop:0 0 0 .5px #1118271a, 0 2px 8px #1118270f, 0 16px 40px -10px #11182742;--shadow-dock:0 0 0 .5px #11182717, 0 -2px 8px #1118270d, 0 -16px 40px -18px #11182738;--shadow-control:0 .5px 1px #11182712, 0 1px 2.5px #1118270f;--shadow-seg:0 0 0 .5px #1118270a, 0 1px 3px #1118271c;--wash:10%;--wash-warning:linear-gradient(color-mix(in srgb, var(--warning) var(--wash), transparent) 0 100%);--wash-info:linear-gradient(color-mix(in srgb, var(--info) var(--wash), transparent) 0 100%);--grad-accent:linear-gradient(180deg, var(--accent-hover) 0%, var(--accent-press) 100%);--glow-1:radial-gradient(900px 520px at 88% -8%, #0067e60d, transparent 70%);--glow-2:radial-gradient(760px 460px at 4% 104%, #5b52d80a, transparent 70%)}[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg-chrome:#0e1217;--bg-canvas:#131820;--bg-card:#1b212a;--bg-code:#0b0e13;--bg-raise:#fff1;--bg-active:#ffffff1f;--ctl-bg:#ffffff09;--ctl-bd:#ffffff26;--ctl-bd-hover:#ffffff47;--ctl-chevron:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%238b93a3' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");--bg-inverse:#f5f5f7;--ink:#f2f4f8;--ink-muted:#a3aab8;--ink-faint:#8b93a3;--ink-inverse:#1d1d1f;--bd-muted:#ffffff12;--bd-base:#ffffff1f;--bd-strong:#fff3;--success:#30d158;--warning:#ff9f0a;--danger:#ff4e41;--info:#64d2ff;--add:#30d158;--add-bg:#30d1581c;--del:#ff4e41;--del-bg:#ff453a1f;--tk-comment:#7c8896;--tk-keyword:#ff7ab2;--tk-string:#ff8170;--tk-number:#d9c97c;--tk-fn:#67b7a4;--tk-type:#dabaff;--teal:#66d4cf;--hue-1:#4aa3ff;--hue-2:#9b93ff;--hue-3:#cf8bf3;--hue-4:#ff6b9d;--hue-5:#f0a44a;--hue-6:#5ecfc4;--accent:#1e8eff;--accent-hover:#369dff;--accent-press:#4aa5ff;--accent-ink:#0e1217;--accent-soft:color-mix(in srgb, var(--accent) 22%, transparent);--shadow-card:0 1px 2px #0000005c, 0 4px 12px -6px #0006;--shadow-pop:0 0 0 .5px #ffffff1f, 0 18px 44px -10px #000000c2;--shadow-dock:0 0 0 .5px #ffffff1a, 0 -16px 40px -18px #000000b3;--shadow-control:0 1px 2px #00000057;--shadow-seg:0 0 0 .5px #ffffff14, 0 1px 3px #0006;--wash:18%;--glow-1:radial-gradient(900px 520px at 88% -8%, #1e8eff0f, transparent 70%);--glow-2:radial-gradient(760px 460px at 4% 104%, #5ecfc40a, transparent 70%)}[data-permission=plan]{--permission:var(--info)}[data-permission=default]{--permission:var(--teal)}[data-permission=acceptEdits]{--permission:var(--warning)}[data-permission=bypass]{--permission:var(--danger)}*{box-sizing:border-box}[hidden]{display:none!important}html,body,#root{height:100%;margin:0}body{background:var(--bg-canvas);color:var(--ink);font-family:var(--font-sans);font-size:var(--fs-body);line-height:var(--lh-body);-webkit-font-smoothing:antialiased}button,input,textarea,select{font:inherit;color:inherit}:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:var(--r-sm)}*{scrollbar-width:thin;scrollbar-color:var(--bd-base) transparent}::-webkit-scrollbar{width:13px;height:13px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-corner{background:0 0}::-webkit-scrollbar-thumb{background:var(--bd-strong);border-radius:var(--r-pill);background-clip:content-box;border:4px solid #0000}::-webkit-scrollbar-thumb:hover{background:color-mix(in srgb, var(--ink) 42%, transparent);background-clip:content-box}.app{grid-template-columns:var(--w-sidebar) minmax(0, 1fr) var(--w-inspector);grid-template-rows:minmax(0,1fr);height:100%;display:grid}.app[data-inspector=closed]{grid-template-columns:var(--w-sidebar) minmax(0, 1fr)}.sidebar{background:var(--bg-chrome);border-right:1px solid var(--bd-muted);grid-template-rows:auto minmax(0,1fr) auto auto;grid-template-columns:minmax(0,1fr);min-width:0;display:grid}.sidebar__head{align-items:center;gap:var(--s2);height:var(--h-header);padding:0 var(--s3);border-bottom:1px solid var(--bd-muted);display:flex}.brandslot{text-overflow:ellipsis;white-space:nowrap;max-width:96px;font-size:var(--fs-sm);color:var(--ink-muted);flex:none;overflow:hidden}.ssearch{min-width:0;height:28px;padding:0 var(--s2);border-radius:var(--r-sm);background:var(--bg-raise);color:var(--ink-faint);transition:background-color var(--dur-fast) var(--ease), box-shadow var(--dur-fast) var(--ease);flex:1;align-items:center;gap:6px;display:flex}.ssearch:hover{background:var(--bg-active)}.ssearch:focus-within{background:var(--bg-raise);box-shadow:0 0 0 2px var(--accent), 0 0 0 5px var(--accent-soft);color:var(--ink-muted)}.ssearch input{min-width:0;font-size:var(--fs-sm);color:var(--ink);background:0 0;border:none;outline:none;flex:1}.ssearch input::placeholder{color:var(--ink-faint)}.ssearch input::-webkit-search-cancel-button{appearance:none}.sidebar__scroll{padding:var(--s3) var(--s3) var(--s4);overflow-y:auto}.actions{padding-bottom:var(--s3);border-bottom:1px solid var(--bd-muted);flex-direction:column;gap:1px;display:flex}.newsession__err{margin:var(--s1) 0 0;padding:0 var(--s2);font-size:var(--fs-micro);color:var(--danger);line-height:1.5}.section{margin-top:var(--s4)}.section__title{margin:0 0 var(--s1);padding:0 var(--s2);font-size:var(--fs-eyebrow);color:var(--ink-faint);align-items:center;gap:6px;font-weight:600;display:flex}.section__count{font-variant-numeric:tabular-nums}.section__note{margin:calc(-1 * var(--s1)) 0 var(--s1);padding:0 var(--s2);font-size:var(--fs-eyebrow);color:var(--ink-faint);line-height:1.45}.slist{flex-direction:column;gap:1px;margin:0;padding:0;list-style:none;display:flex}.slist__empty{margin:var(--s4) 0 0;padding:0 var(--s2);font-size:var(--fs-sm);color:var(--ink-faint)}.slist--nested{margin:1px 0 var(--s2);padding-left:var(--s3);border-left:1px solid var(--bd-muted);margin-left:calc(var(--s2) + 7px)}.space:not([data-open]) .slist--nested{display:none}.srowbox{border-radius:var(--r);color:var(--ink-muted);grid-template-columns:minmax(0,1fr) auto;align-items:center;display:grid;position:relative}.srowbox:hover{background:var(--bg-raise);color:var(--ink)}.srowbox:has(.srow[aria-current=true]){background:var(--accent-soft);color:var(--ink)}.srowbox:has(.srow[aria-current=true]) .srow__meta{color:var(--ink-muted)}.srow{align-items:center;gap:var(--s2);text-align:left;border-radius:var(--r);width:100%;padding:7px var(--s2);cursor:pointer;color:inherit;background:0 0;border:none;grid-template-columns:auto minmax(0,1fr) auto;display:grid}.srow__more{border-radius:var(--r-sm);cursor:pointer;width:24px;height:24px;color:var(--ink-faint);background:0 0;border:none;flex:none;justify-content:center;align-items:center;margin-right:2px;display:inline-flex}.srowbox:hover .srow__more,.srow__more:hover,.srow__more:focus-visible{color:var(--ink)}.srowbox:has(.srow[aria-current=true]) .srow__more{color:var(--ink)}.srow__more:hover{background:var(--bg-active)}.srow__more[aria-expanded=true]{background:var(--bg-active);color:var(--ink)}.srow__dot{border-radius:var(--r-pill);background:var(--ink-faint);width:5px;height:5px}.srow[data-state=running] .srow__dot{background:var(--warning);animation:pulse 1.6s var(--ease) infinite}.srow[data-state=awaiting] .srow__dot{background:var(--danger)}.srow__label{font-size:var(--fs-sm);text-overflow:ellipsis;white-space:nowrap;line-height:1.45;overflow:hidden}.srow__meta{font-family:var(--font-mono);font-size:var(--fs-micro);color:var(--ink-faint);font-variant-numeric:tabular-nums}.srow__spin{border-radius:var(--r-pill);border:1.5px solid var(--bd-strong);border-top-color:var(--ink-muted);flex:none;width:11px;height:11px;animation:.7s linear infinite spin}.srow__pill{font-size:var(--fs-micro);border-radius:var(--r-pill);white-space:nowrap;background:var(--danger);color:var(--ink-inverse);flex:none;padding:0 7px;line-height:1.6}.srename{align-items:center;gap:var(--s2);width:100%;padding:6px calc(var(--s2) - 1px);border:1px solid var(--bd-strong);border-radius:var(--r);background:var(--bg-canvas);grid-template-columns:auto minmax(0,1fr) auto;display:grid}.srename:focus-within{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent), 0 0 0 4px var(--accent-soft)}.srename__input{min-width:0;font-family:inherit;font-size:var(--fs-sm);color:var(--ink);background:0 0;border:none;outline:none;padding:0;line-height:1.45}.srename__go{cursor:pointer;color:var(--ink-faint);background:0 0;border:none;flex:none;justify-content:center;align-items:center;padding:0;display:inline-flex}.srename__go:hover,.srename__go:focus-visible{color:var(--ink)}.srename__err{margin:var(--s1) 0 0;font-size:var(--fs-micro);color:var(--danger);grid-column:1/-1;line-height:1.5}.srowmenu__ask{margin:var(--s1) var(--s2) var(--s1);font-size:var(--fs-sm);color:var(--ink);font-weight:500;line-height:1.5}.srowmenu__what{margin:0 var(--s2) var(--s2);font-size:var(--fs-micro);color:var(--ink-faint);line-height:1.6}.srowmenu__exits{justify-content:flex-end;gap:var(--s2);padding:0 var(--s1) var(--s1);display:flex}.spacehead{border-radius:var(--r);color:var(--ink-muted);grid-template-columns:minmax(0,1fr) auto;align-items:center;display:grid}.spacehead:hover{background:var(--bg-raise);color:var(--ink)}.sprow{align-items:center;gap:var(--s2);text-align:left;border-radius:var(--r);width:100%;padding:6px var(--s2);cursor:pointer;color:inherit;background:0 0;border:none;display:flex}.sprow__add{border-radius:var(--r-sm);cursor:pointer;width:24px;height:24px;color:var(--ink-faint);background:0 0;border:none;flex:none;justify-content:center;align-items:center;margin-right:2px;display:inline-flex}.spacehead:hover .sprow__add,.sprow__add:hover,.sprow__add:focus-visible{color:var(--ink)}.sprow__add:hover{background:var(--bg-active)}.sprow__add:disabled{cursor:default;color:var(--ink-faint);background:0 0}.sprow__caret{opacity:.6;transition:rotate var(--dur-fast) var(--ease);flex:none;display:flex}.space[data-open] .sprow__caret{rotate:90deg}.sprow__folder{opacity:.75;flex:none;display:flex}.sprow__name{min-width:0;font-size:var(--fs-sm);text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.sprow__n{font-family:var(--font-mono);font-size:var(--fs-micro);font-variant-numeric:tabular-nums;color:var(--ink-faint);flex:none}.sidebar__foot{border-top:1px solid var(--bd-muted);padding:var(--s3) var(--s5) var(--s4);gap:var(--s3);flex-direction:column;display:flex}.sidebar__end{border-top:1px solid var(--bd-muted);padding:var(--s3)}.hostnav{flex-direction:column;gap:1px;max-height:40vh;margin:0 0 1px;padding:0;list-style:none;display:flex;overflow-y:auto}.hostnav__label{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.meter{flex-direction:column;gap:6px;display:flex}.meter__row{align-items:baseline;gap:var(--s2);font-family:var(--font-mono);font-size:var(--fs-data);font-variant-numeric:tabular-nums;color:var(--ink-muted);display:flex}.meter__row b{color:var(--ink);font-weight:500}.meter__row>:first-child{white-space:nowrap;flex:none}.meter__row>:last-child{margin-left:auto}.diag{flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex}.diag li{gap:var(--s2);font-size:var(--fs-data);color:var(--ink-muted);overflow-wrap:anywhere;grid-template-columns:auto minmax(0,1fr);line-height:1.45;display:grid}.diag li[data-level=warn] .diag__sign{color:var(--warning)}.diag li[data-level=failed] .diag__sign{color:var(--danger)}.main{background:var(--glow-1), var(--glow-2), var(--bg-canvas);grid-template-rows:auto minmax(0,1fr) auto;grid-template-columns:minmax(0,1fr);min-width:0;display:grid;position:relative}.topbar{z-index:2;align-items:center;gap:var(--s3);height:var(--h-header);padding:0 var(--s5);background:var(--bg-canvas);border-bottom:1px solid var(--bd-muted);display:flex;position:absolute;inset:0 0 auto}.topbar__title{letter-spacing:var(--tracking-lg);text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:15px;font-weight:600;line-height:1.3;overflow:hidden}.topbar__facts{align-items:center;gap:var(--s3);font-family:var(--font-mono);font-size:var(--fs-data);color:var(--ink-muted);margin-left:auto;display:flex}.path{min-width:0;display:inline-flex}.path i{color:var(--ink-faint);text-overflow:ellipsis;white-space:nowrap;font-style:normal;overflow:hidden}.path b{color:var(--ink);white-space:nowrap;font-weight:400}.conn{font-family:var(--font-mono);font-size:var(--fs-micro);border:1px solid var(--bd-base);border-radius:var(--r-pill);color:var(--ink-muted);white-space:nowrap;align-items:center;gap:6px;padding:2px 9px 2px 7px;display:inline-flex}.conn:before{content:"";border-radius:var(--r-pill);background:currentColor;width:5px;height:5px}.conn[data-conn=open]{color:var(--success);border-color:color-mix(in oklab, var(--success) 34%, transparent)}.conn[data-conn=connecting],.conn[data-conn=reconnecting]{color:var(--warning);border-color:color-mix(in oklab, var(--warning) 34%, transparent)}.conn[data-conn=connecting]:before,.conn[data-conn=reconnecting]:before{animation:pulse 1.2s var(--ease) infinite}.conn[data-conn=closed]{color:var(--danger);border-color:color-mix(in oklab, var(--danger) 40%, transparent)}.banner{align-items:flex-start;gap:var(--s3);padding:var(--s3) var(--s6);background:var(--del-bg);color:var(--danger);font-size:var(--fs-sm);border-bottom:1px solid color-mix(in oklab, var(--danger) 24%, transparent);display:flex}.banner p{margin:0}.banner__hint{color:var(--ink-muted);margin-top:2px}.banner button{margin-left:auto}.thread{scrollbar-gutter:stable both-edges;padding:calc(var(--h-header) + var(--s8)) var(--s6) var(--s10);overflow-y:auto}.main:has(>.bannerslot>.banner){padding-top:var(--h-header)}.main:has(>.bannerslot>.banner) .thread{padding-top:var(--s8)}.thread__column{max-width:var(--w-read);margin:0 auto}.composer-region{width:100%;max-width:calc(var(--w-frame) + 2 * var(--s6));padding:0 calc(var(--s6) + var(--w-gutter)) var(--s5);background:var(--bg-canvas);margin:0 auto;position:relative}.composer{background:var(--bg-card);border:1px solid var(--bd-base);border-radius:var(--r-xl);box-shadow:var(--shadow-control);transition:border-color var(--dur) var(--ease), box-shadow var(--dur) var(--ease);grid-template-rows:auto auto;display:grid}.composer-region:has(.dock) .dock{z-index:1;inset:auto calc(var(--s6) + var(--w-gutter)) var(--s5);position:absolute}.composer-region:has(.crossbar) .composer{border-top-left-radius:0;border-top-right-radius:0}.composer-region:has(.crossbar) .crossbar{border-radius:var(--r-xl) var(--r-xl) 0 0;border-bottom:none;margin-bottom:-1px}.composer-region:has(.autobar) .composer{border-top-left-radius:0;border-top-right-radius:0}.composer-region:has(.autobar) .autobar{border-radius:var(--r-xl) var(--r-xl) 0 0;border-bottom:none;margin-bottom:-1px}.composer:focus-within{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent), 0 0 0 4px var(--accent-soft)}.composer[aria-disabled=true]{opacity:.72}.composer__input{resize:none;padding:var(--s3) var(--s4) var(--s2);background:0 0;border:none;outline:none;min-height:62px;line-height:1.6}.composer__input::placeholder{color:var(--ink-faint)}.composer__bar{align-items:center;gap:var(--s2);padding:0 var(--s2) var(--s2) var(--s3);display:flex}.composer__hint{font-family:var(--font-mono);font-size:var(--fs-micro);color:var(--ink-faint);margin-left:auto}.composer__bar .btn--primary{margin-left:auto}.composer__hint+.btn--primary{margin-left:0}.composer__usage{align-items:baseline;gap:var(--s1);text-overflow:ellipsis;white-space:nowrap;min-width:0;font-family:var(--font-mono);font-size:var(--fs-micro);font-variant-numeric:tabular-nums;color:var(--ink-faint);display:inline-flex;overflow:hidden}.composer__usage-scope{font-family:var(--font-sans)}.composer__usage b{color:var(--ink-muted);font-weight:500}.xchip{align-items:center;gap:var(--s1);padding:3px var(--s2) 3px 3px;border-radius:var(--r);background:var(--bg-active);font-size:var(--fs-data);color:var(--ink);white-space:nowrap;display:inline-flex}.xchip__x{border-radius:var(--r-sm);cursor:pointer;width:18px;height:18px;color:var(--ink-muted);background:0 0;border:none;place-items:center;padding:0;display:grid}.xchip__x:hover{background:var(--bg-raise);color:var(--ink)}.composer__reject{padding:0 var(--s3) var(--s2);font-size:var(--fs-micro);color:var(--warning);max-height:6.5rem;margin:0;list-style:none;overflow-y:auto}.composer__oversize{padding:0 var(--s3) var(--s2);font-size:var(--fs-micro);color:var(--danger);margin:0}.composer__rejects{align-items:flex-start;display:flex}.composer__rejects .composer__reject{flex:1;min-width:0}.composer__notice-head{color:var(--ink-faint)}.composer__reject[data-tone=ok]{color:var(--ink-muted)}.composer__notice-spin{vertical-align:-1px;border-radius:var(--r-pill);border:1.5px solid var(--bd-strong);border-top-color:var(--ink-muted);width:9px;height:9px;margin-inline-end:var(--s1);animation:.7s linear infinite spin;display:inline-block}.cmdpalette{z-index:1;inset:auto calc(var(--s6) + var(--w-gutter)) auto;margin:0 0 var(--s2);padding:var(--s1);background:var(--bg-card);border:1px solid var(--bd-base);border-radius:var(--r-lg);max-height:15rem;box-shadow:var(--shadow-pop);list-style:none;position:absolute;bottom:calc(100% + 4px);overflow-y:auto}.cmdpalette__row{align-items:baseline;gap:var(--s2);padding:var(--s1) var(--s2);border-radius:var(--r-sm);cursor:pointer;display:flex}.cmdpalette__row[data-active=on]{background:var(--accent-soft)}.cmdpalette__row[data-active=on] .cmdpalette__desc,.cmdpalette__row[data-active=on] .cmdpalette__hint,.cmdpalette__row[data-active=on] .refopt__meta{color:var(--ink-muted)}.cmdpalette__name{font-family:var(--font-mono);color:var(--ink);white-space:nowrap}.cmdpalette__hint{font-family:var(--font-mono);font-size:var(--fs-micro);color:var(--ink-faint);white-space:nowrap}.cmdpalette__desc{font-size:var(--fs-micro);color:var(--ink-faint);text-overflow:ellipsis;white-space:nowrap;margin-left:auto;overflow:hidden}.cmdpalette__group{padding:var(--s1) var(--s2);font-size:var(--fs-micro);color:var(--ink-faint);letter-spacing:.04em}.refopt__title{color:var(--ink);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.refopt__meta{font-size:var(--fs-micro);color:var(--ink-faint);white-space:nowrap;margin-left:auto}.userimgs{gap:var(--s1);margin-bottom:var(--s2);flex-wrap:wrap;display:flex}.userimgs__item{min-width:0;margin:0}.userimgs__img{object-fit:contain;border:1px solid var(--bd-base);border-radius:var(--r-md);background:var(--bg-raise);max-width:min(320px,100%);max-height:240px;display:block}.userimgs__fallback{font-size:var(--fs-micro);color:var(--ink-faint)}.refcards{gap:var(--s1);margin-bottom:var(--s2);flex-direction:column;display:flex}.refcard{align-items:baseline;gap:var(--s2);padding:var(--s1) var(--s2);border:1px solid var(--bd-base);border-radius:var(--r-md);background:var(--bg-raise);display:flex}.refcard__label{font-family:var(--font-mono);font-size:var(--fs-micro);color:var(--ink-faint);white-space:nowrap}.refcard__title{color:var(--ink);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.refcard__count{font-size:var(--fs-micro);color:var(--ink-faint);white-space:nowrap;margin-left:auto}.refcard__note{font-size:var(--fs-micro);color:var(--warning);white-space:normal}.shots{gap:var(--s2);padding:var(--s3) var(--s4) 0;flex-wrap:wrap;display:flex}.shot{box-sizing:border-box;border:1px solid var(--bd-base);border-radius:var(--r);background:var(--bg-code);flex:none;width:64px;height:64px;margin:0;position:relative;overflow:hidden}.shot__img{object-fit:cover;width:100%;height:100%;display:block}.shot__x{border-radius:var(--r-pill);color:#fff;cursor:pointer;width:18px;height:18px;transition:background var(--dur-fast) var(--ease);background:#0000008c;border:none;place-items:center;padding:0;display:grid;position:absolute;top:3px;right:3px}.shot__x:hover{background:var(--danger)}.shot__size{color:#fff;font-family:var(--font-mono);text-align:center;background:#0009;margin:0;padding:1px 4px;font-size:10px;line-height:1.4;position:absolute;inset:auto 0 0}.shot--reading{width:auto;max-width:200px;padding:0 var(--s2);color:var(--ink-muted);font-size:var(--fs-micro);animation:pulse 1.4s var(--ease) infinite;background:0 0;border-style:dashed;align-items:center;gap:6px;display:flex}.shot__name{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.shot__note{color:var(--ink-faint);opacity:.8;flex:none}.shot__spin{border:1.5px solid var(--bd-strong);border-top-color:var(--ink-faint);border-radius:var(--r-pill);flex:none;width:10px;height:10px;animation:.8s linear infinite spin}.composer__reject-x{margin:0 var(--s3) var(--s2) 0;border-radius:var(--r-pill);color:var(--ink-faint);cursor:pointer;background:0 0;border:none;flex:none;padding:1px;display:flex}.composer__reject-x:hover{color:var(--danger);background:var(--bg-raise)}.dropzone{z-index:2;pointer-events:none;background:color-mix(in oklab, var(--bg-canvas) 72%, transparent);place-items:center;display:grid;position:absolute;inset:0}.dropzone__box{align-items:center;gap:var(--s2);padding:var(--s3) var(--s5);background:var(--bg-raise);border:1px dashed color-mix(in oklab, var(--permission) 60%, var(--bd-strong));border-radius:var(--r-lg);color:var(--ink-muted);box-shadow:var(--shadow-pop);display:flex}.composer__foot{align-items:center;gap:var(--s3);padding:var(--s2) var(--s1) 0;font-size:var(--fs-micro);color:var(--ink-faint);display:flex}.fact{align-items:center;gap:var(--s1);text-overflow:ellipsis;white-space:nowrap;min-width:0;display:inline-flex;overflow:hidden}.fact[data-perm]{color:var(--permission)}.fact--toggle,.fact--menu,.fact--link{padding:1px var(--s2);color:inherit;border:1px solid var(--bd-muted);border-radius:var(--r-pill);cursor:pointer;background:0 0}.fact--toggle:hover:not(:disabled),.fact--link:hover{color:var(--ink);background:var(--bg-raise)}.fact--menu:hover:not(:disabled){background:var(--bg-raise)}.fact--menu[aria-expanded=true]{background:var(--bg-raise);border-color:var(--bd-strong)}.fact--toggle:disabled,.fact--menu:disabled{cursor:progress;opacity:.6}.fact--toggle[data-on]{color:var(--permission);border-color:var(--permission);background:var(--bg-raise)}.fact--plan{color:var(--permission)}.fact--toggle,.fact--menu,.fact--err{flex-shrink:0}.fact--err{color:var(--danger)}.inspector{background:var(--bg-chrome);border-left:1px solid var(--bd-muted);grid-template-rows:auto minmax(0,1fr);grid-template-columns:minmax(0,1fr);min-width:0;display:grid}.tabs{height:var(--h-header);padding:0 var(--s3);border-bottom:1px solid var(--bd-muted);scrollbar-width:none;align-items:center;gap:2px;display:flex;overflow-x:auto}.tabs::-webkit-scrollbar{display:none}.tab{border-radius:var(--r-sm);cursor:pointer;height:28px;color:var(--ink-muted);font-size:var(--fs-sm);transition:background var(--dur-fast) var(--ease);background:0 0;border:none;flex:none;align-items:center;gap:5px;padding:0 10px;display:flex}.tab__label{white-space:nowrap}.tab:hover:not([aria-selected=true]){background:var(--bg-raise);color:var(--ink)}.tab[aria-selected=true]{background:var(--bg-active);color:var(--ink);font-weight:500}.tab__n{font-size:var(--fs-micro);font-variant-numeric:tabular-nums;background:color-mix(in srgb, var(--ink) 12%, transparent);border-radius:var(--r-pill);text-align:center;min-width:16px;padding:0 5px}.inspector__body{padding:var(--s4);overflow-y:auto}.inspector__panel[hidden]{display:none}.ipane__head{margin-bottom:var(--s3);align-items:center;gap:2px;display:flex}.ipane__title{font-size:var(--fs-body);letter-spacing:var(--tracking-lg);color:var(--ink);margin:0;font-weight:600}.patches{gap:var(--s4);flex-direction:column;display:flex}.patches .diff__body{max-height:none}.patches__locate{margin-top:var(--s1);align-self:flex-end}.patches__item{flex-direction:column;display:flex}.iempty{padding:var(--s6) var(--s4);text-align:center;flex-direction:column;align-items:center;gap:6px;display:flex}.iempty__sign{color:var(--bd-strong);place-items:center;display:grid}.iempty__sign .i{width:26px;height:26px}.iempty__title{font-size:var(--fs-sm);color:var(--ink-muted);margin:0;font-weight:500}.iempty__hint{max-width:260px;font-size:var(--fs-data);color:var(--ink-faint);margin:0;line-height:1.65}.empty{color:var(--ink-faint);font-size:var(--fs-sm);text-align:center;padding:var(--s4) var(--s3)}.btn{background:var(--bg-card);border:1px solid var(--bd-base);border-radius:var(--r);padding:5px var(--s3);font-size:var(--fs-sm);cursor:pointer;white-space:nowrap;box-shadow:var(--shadow-control);transition:background var(--dur-fast) var(--ease), border-color var(--dur-fast) var(--ease), transform var(--dur-fast) var(--ease);align-items:center;gap:6px;font-weight:500;display:inline-flex}.btn:hover:not(:disabled){border-color:var(--bd-strong);background:color-mix(in srgb, var(--ink) 4%, var(--bg-card))}.btn:active:not(:disabled){transform:scale(.97)}.btn:disabled{color:var(--ink-faint);cursor:not-allowed;box-shadow:none}.btn--primary{background:var(--grad-accent);color:var(--accent-ink);box-shadow:0 .5px 1px #0000001f, 0 1px 3px color-mix(in srgb, var(--accent) 34%, transparent);border-color:#0000;font-weight:500}.btn--primary:hover:not(:disabled){background:var(--accent-hover);border-color:#0000}.btn--primary:active:not(:disabled){background:var(--accent-press)}.btn--primary:disabled{background:var(--bg-active);color:var(--ink-faint)}.btn--danger{color:var(--danger);border-color:color-mix(in oklab, var(--danger) 30%, transparent)}.btn--danger:hover:not(:disabled){border-color:var(--danger);background:var(--del-bg)}.btn--ghost{color:var(--ink-muted);box-shadow:none;background:0 0;border-color:#0000}.btn--ghost:hover:not(:disabled){background:var(--bg-raise);color:var(--ink);border-color:#0000}.btn--icon{padding:6px}.btn--row{width:100%;padding:7px var(--s2);justify-content:flex-start;display:flex}.btn--row kbd{margin-left:auto}.navgroup{flex-direction:column;gap:1px;display:flex}.navgroup__mark{color:var(--ink-faint);margin-left:auto;display:flex}.navgroup__head[aria-disabled=true]{cursor:default}.navgroup__sub{margin:0 0 0 calc(var(--s2) + 9px);padding:0 0 0 var(--s2);border-left:1px solid var(--bd-muted);flex-direction:column;gap:1px;list-style:none;display:flex}.navgroup__sub .btn--row{padding:5px var(--s2);font-size:var(--fs-data);color:var(--ink-muted)}.navgroup__sub .btn--row[aria-current=true]{background:var(--accent-soft);color:var(--ink);font-weight:500}.btn__dot{border-radius:var(--r-pill);background:var(--danger);width:5px;height:5px;margin-left:auto}.btn__spin{border-radius:var(--r-pill);border:1.5px solid var(--bd-strong);border-top-color:var(--ink-muted);flex:none;width:11px;height:11px;animation:.7s linear infinite spin}.btn--row .btn__spin{margin-left:auto}.btn--row .btn__spin+.btn__dot{margin-left:0}.btn--sm{padding:3px var(--s2);font-size:var(--fs-data)}.btn small{font-family:var(--font-mono);font-size:var(--fs-micro);color:var(--ink-faint)}.btn--primary small{color:var(--accent-ink)}.fatal{max-width:560px;padding:0 var(--s4);margin:15vh auto}.fatal h1{color:var(--danger);font-size:var(--fs-title)}.crossbar{align-items:center;gap:var(--s2);margin-bottom:var(--s2);padding:7px var(--s3) 7px var(--s4);background:var(--bg-card);border:1px solid color-mix(in oklab, var(--danger) 38%, transparent);border-radius:var(--r);font-size:var(--fs-sm);animation:shell-in var(--dur-slow) var(--ease);display:flex}.crossbar__sign{color:var(--danger);display:flex}.crossbar__who{text-overflow:ellipsis;white-space:nowrap;flex:auto;min-width:0;font-weight:500;overflow:hidden}.crossbar__cold,.crossbar__age,.crossbar__more,.crossbar>.btn{flex:none}.crossbar__cold{padding:1px var(--s2);font-size:var(--fs-micro);color:var(--ink-faint);border:1px solid var(--bd-base);border-radius:var(--r-pill)}.crossbar__age{font-family:var(--font-mono);font-size:var(--fs-micro);font-variant-numeric:tabular-nums;color:var(--ink-faint)}.crossbar__more{font-family:var(--font-mono);font-size:var(--fs-micro);color:var(--ink-faint)}.autobar{align-items:center;gap:var(--s2);margin-bottom:var(--s2);padding:7px var(--s3) 7px var(--s4);background:var(--bg-card);border:1px solid color-mix(in oklab, var(--warning) 38%, transparent);border-radius:var(--r);font-size:var(--fs-sm);animation:shell-in var(--dur-slow) var(--ease);display:flex}.autobar__sign{color:var(--warning);display:flex}.autobar__who{text-overflow:ellipsis;white-space:nowrap;flex:auto;min-width:0;font-weight:500;overflow:hidden}.autobar__rule{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-family:var(--font-mono);font-size:var(--fs-micro);color:var(--ink-muted);flex:0 auto;overflow:hidden}.autobar__more,.autobar>.btn{flex:none}.autobar__more{font-family:var(--font-mono);font-size:var(--fs-micro);color:var(--ink-faint);font-variant-numeric:tabular-nums}.autobar[data-kind=running]{border-color:var(--bd-base)}.autobar__spin{border-radius:var(--r-pill);border:1.5px solid var(--bd-strong);border-top-color:var(--ink-muted);flex:none;width:11px;height:11px;animation:.7s linear infinite spin}.toasts{right:calc(var(--s6) + var(--w-gutter));z-index:var(--z-toast);align-items:flex-end;gap:var(--s2);padding-bottom:var(--s3);pointer-events:none;flex-direction:column;display:flex;position:absolute;bottom:100%}.toast{align-items:center;gap:var(--s2);max-width:380px;padding:var(--s2) var(--s2) var(--s2) var(--s3);background:var(--bg-card);border:1px solid var(--bd-muted);border-radius:var(--r-lg);box-shadow:var(--shadow-pop);font-size:var(--fs-sm);pointer-events:auto;animation:shell-in var(--dur-slow) var(--ease-out);display:flex}.toast__sign{font-family:var(--font-mono);color:var(--success)}.toast[data-tone=error] .toast__sign{color:var(--danger)}.toast__who{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.toast__stat{font-family:var(--font-mono);font-size:var(--fs-micro);font-variant-numeric:tabular-nums;color:var(--ink-faint);white-space:nowrap;flex:none}.toast>.btn{flex:none}.dock{background:var(--bg-card);border:1px solid var(--bd-base);border-radius:var(--r-xl);box-shadow:var(--shadow-pop);animation:shell-in var(--dur-slow) var(--ease-out);overflow:hidden}.dock[data-kind=permission]{border-color:color-mix(in oklab, var(--warning) 42%, transparent);background-color:var(--bg-card);background-image:var(--wash-warning)}.dock[data-kind=plan],.dock[data-kind=question]{border-color:color-mix(in oklab, var(--info) 42%, transparent);background-color:var(--bg-card);background-image:var(--wash-info)}.dock__head{align-items:center;gap:var(--s2);padding:var(--s3) var(--s4) var(--s2);font-size:var(--fs-sm);display:flex}.dock__sign{font-family:var(--font-mono);display:flex}.dock[data-kind=permission] .dock__sign{color:var(--warning)}.dock[data-kind=plan] .dock__sign,.dock[data-kind=question] .dock__sign{color:var(--info)}.dock__title{font-weight:500}.dock__queue{font-family:var(--font-mono);font-size:var(--fs-micro);color:var(--ink-faint);margin-left:auto}.dock__body{padding:0 var(--s4) var(--s3)}.facts{gap:5px var(--s3);font-size:var(--fs-data);grid-template-columns:auto minmax(0,1fr);max-height:34vh;margin:0;display:grid;overflow-y:auto}.facts dt{font-size:var(--fs-data);color:var(--ink-faint);padding-top:1px}.facts dd{font-family:var(--font-mono);overflow-wrap:anywhere;min-width:0;margin:0;line-height:1.5}.facts__scroll{max-height:18vh;overflow-y:auto}.facts__more{width:fit-content;padding:0 var(--s1);font-family:var(--font-sans);font-size:var(--fs-micro);color:var(--ink-muted);background:var(--bg-card);border:1px solid var(--bd-muted);border-radius:var(--r-sm);margin-left:auto;line-height:1.6;display:block}.facts dd em{color:var(--ink-muted);font-style:normal}.dock__foot{gap:var(--s2);padding:var(--s3) var(--s4);border-top:1px solid var(--bd-muted);background:color-mix(in oklab, var(--bg-card) 60%, var(--bg-canvas));flex-wrap:wrap;display:flex}.dock__exits{justify-content:flex-end;gap:var(--s2);flex-wrap:wrap;margin-left:auto;display:flex}.dock__plan{max-height:34vh;padding-right:var(--s2);margin-bottom:var(--s3);overflow-y:auto}.dock__note{align-items:center;gap:var(--s2);font-size:var(--fs-data);color:var(--ink-muted);display:flex}.dock__note input{background:var(--bg-code);border:1px solid var(--bd-base);border-radius:var(--r);min-width:0;padding:6px var(--s2);font-size:var(--fs-data);flex:1}.dock__note input:focus{border-color:color-mix(in oklab, var(--permission) 55%, var(--bd-strong))}.qtabs{gap:var(--s1);margin-bottom:var(--s3);flex-wrap:wrap;display:flex}.qtabs__tab{min-width:0;padding:4px var(--s2);border:1px solid var(--bd-base);border-radius:var(--r-pill);color:var(--ink-muted);font:inherit;font-size:var(--fs-data);cursor:pointer;transition:background var(--dur-fast) var(--ease), border-color var(--dur-fast) var(--ease);background:0 0;align-items:center;gap:6px;display:flex}.qtabs__tab:hover{background:var(--bg-raise)}.qtabs__tab[aria-selected=true]{background:var(--bg-active);border-color:var(--bd-strong);color:var(--ink)}.qtabs__ord{font-family:var(--font-mono);font-size:var(--fs-micro);color:var(--ink-faint)}.qtabs__name{overflow-wrap:anywhere;min-width:0}.qtabs__tab[data-answered] svg{color:var(--success)}.question__list{gap:var(--s3);flex-direction:column;max-height:46vh;display:flex;overflow-y:auto}.question__item{padding:var(--s2) var(--s3) var(--s3);border:1px solid var(--bd-base);border-radius:var(--r);overflow-wrap:anywhere;min-width:0;margin:0}.question__legend{width:100%;color:var(--ink);font-weight:500;line-height:var(--lh-body);margin-bottom:10px;padding:0}.question__option{gap:2px var(--s2);cursor:pointer;grid-template-columns:auto minmax(0,1fr);padding:3px 0;display:grid}.question__option>input{grid-row:1;align-self:center;margin:0}.question__label{overflow-wrap:anywhere;grid-column:2}.question__option>small{color:var(--ink-faint);line-height:var(--lh-body);overflow-wrap:anywhere;grid-column:2}.question__free{gap:var(--s1);margin-top:var(--s3);font-size:var(--fs-data);color:var(--ink-muted);flex-direction:column;display:flex}.question__free input{background:var(--bg-code);border:1px solid var(--bd-base);border-radius:var(--r);width:100%;min-width:0;padding:6px var(--s2)}@keyframes pulse{50%{opacity:.3}}@keyframes spin{to{rotate:360deg}}@keyframes shell-in{0%{opacity:0;transform:translateY(6px)}}.sidebar,.inspector{animation:shell-in var(--dur-slow) var(--ease) backwards}.inspector{animation-delay:60ms}.drawer-scrim{z-index:var(--z-drawer);background:var(--scrim);overscroll-behavior:contain;animation:drawer-scrim-in var(--dur) var(--ease);opacity:var(--drawer-progress,1);transition:opacity var(--drawer-settle,0s) var(--ease);position:fixed;inset:0}@keyframes drawer-in-left{0%{transform:translate(-100%)}}@keyframes drawer-in-right{0%{transform:translate(100%)}}@keyframes drawer-scrim-in{0%{opacity:0}}@media (width<=1180px){.app,.app[data-inspector=open],.app[data-inspector=closed]{grid-template-columns:var(--w-sidebar) minmax(0, 1fr)}.inspector{display:none}.app[data-drawer=inspector] .inspector{width:min(var(--w-inspector), calc(100vw - var(--w-drawer-peek)));z-index:calc(var(--z-toast) - 1);box-shadow:var(--shadow-pop);animation:drawer-in-right var(--dur) var(--ease);translate:var(--drawer-drag,0px) 0;transition:translate var(--drawer-settle,0s) var(--ease);display:grid;position:fixed;inset-block:0;inset-inline-end:0}.tab__label{display:none}}@media (width<=860px){.app,.app[data-inspector=open],.app[data-inspector=closed]{grid-template-columns:minmax(0,1fr)}.sidebar{display:none}.app[data-drawer=sidebar] .sidebar{width:min(var(--w-sidebar), 86vw);z-index:calc(var(--z-toast) - 1);box-shadow:var(--shadow-pop);animation:drawer-in-left var(--dur) var(--ease);translate:var(--drawer-drag,0px) 0;transition:translate var(--drawer-settle,0s) var(--ease);touch-action:pan-y pinch-zoom;display:grid;position:fixed;inset-block:0;inset-inline-start:0}.thread{padding:calc(var(--h-header) + var(--s5)) var(--s4) var(--s8)}.main:has(>.bannerslot>.banner) .thread{padding-top:var(--s5)}.topbar,.composer-region{padding-inline:var(--s4)}}.topbar__nav{flex:none}.topbar__nav .i{transform:scaleX(-1)}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:1ms!important;animation-duration:1ms!important;animation-iteration-count:1!important}}:where(select,input[type=date],input[type=time],input[type=datetime-local],input[type=month],input[type=week],input[type=number]){appearance:none;box-sizing:border-box;height:var(--ctl-h);padding:0 var(--ctl-pad-x);border:1px solid var(--ctl-bd);border-radius:var(--r);background:var(--ctl-bg);color:var(--ink);font-size:var(--fs-sm);min-width:0;transition:border-color var(--dur-fast) var(--ease), background var(--dur-fast) var(--ease);line-height:1}:where(select){padding-right:calc(var(--ctl-pad-x) * 2 + 14px);background-image:var(--ctl-chevron);background-repeat:no-repeat;background-position:right var(--ctl-pad-x) center;cursor:pointer}:where(input[type=date],input[type=time],input[type=datetime-local])::-webkit-calendar-picker-indicator{width:14px;height:14px;margin-left:var(--s1);opacity:.45;cursor:pointer;transition:opacity var(--dur-fast) var(--ease);padding:0}:where(input[type=date],input[type=time],input[type=datetime-local])::-webkit-calendar-picker-indicator:hover{opacity:.85}:where(input[type=number])::-webkit-inner-spin-button{appearance:none;margin:0}:where(input[type=number])::-webkit-outer-spin-button{appearance:none;margin:0}:where(select,input[type=date],input[type=time],input[type=number]):hover:not(:disabled){border-color:var(--ctl-bd-hover)}:where(select,input[type=date],input[type=time],input[type=number]):disabled{opacity:.55;cursor:default}:where(select,input[type=date],input[type=time],input[type=datetime-local],input[type=month],input[type=week],input[type=number]):focus-visible{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft);outline:none}:where(input[type=checkbox],input[type=radio]){accent-color:var(--accent);cursor:pointer;width:15px;height:15px;margin:0}:where(input[type=checkbox],input[type=radio]):disabled{cursor:default;opacity:.55}:where(input[type=range]){accent-color:var(--accent);cursor:pointer}.app[data-view=settings],.app[data-view=auto],.app[data-view=diff]{--w-navcol:216px;grid-template-columns:var(--w-sidebar) var(--w-navcol) minmax(0, 1fr)}.app[data-view=cap]{grid-template-columns:var(--w-sidebar) minmax(0, 1fr)}.navcol{background:var(--bg-chrome);border-right:1px solid var(--bd-muted);grid-template-rows:auto minmax(0,1fr);grid-template-columns:minmax(0,1fr);min-width:0;display:grid}.navcol__head{align-items:center;gap:var(--s2);height:var(--h-header);padding:0 var(--s2) 0 var(--s4);border-bottom:1px solid var(--bd-muted);font-size:16px;font-weight:500;display:flex}.navcol__back{margin-left:auto}.navcol__list{padding:var(--s3) var(--s2);flex-direction:column;gap:1px;margin:0;list-style:none;display:flex;overflow-y:auto}.navcol__list button{align-items:center;gap:var(--s2);text-align:left;border-radius:var(--r);width:100%;padding:7px var(--s2);cursor:pointer;color:var(--ink-muted);font-size:var(--fs-sm);background:0 0;border:none;grid-template-columns:18px minmax(0,1fr) auto;display:grid}.navcol__list button:hover{background:var(--bg-raise);color:var(--ink)}.navcol__list button[aria-current=true]{background:var(--accent-soft);color:var(--ink);font-weight:500}.navcol__sign{color:var(--ink-faint);text-align:center}.navcol__list button[aria-current=true] .navcol__sign{color:var(--ink-muted)}.navcol__n{font-family:var(--font-mono);font-size:var(--fs-micro);font-variant-numeric:tabular-nums;color:var(--ink-faint)}.navcol__list button[aria-current=true] .navcol__n{color:var(--ink-muted)}.panelcol{background:var(--bg-canvas);grid-template-rows:auto minmax(0,1fr);grid-template-columns:minmax(0,1fr);min-width:0;display:grid}.app[data-view=settings] .panelcol,.app[data-view=cap] .panelcol{background:var(--bg-chrome)}.panelcol__head{align-items:center;gap:var(--s3);height:var(--h-header);padding-block:0;padding-inline:var(--pad-center) max(var(--s3), var(--pad-center));border-bottom:1px solid var(--bd-muted);display:flex}.panelcol__title{letter-spacing:var(--tracking-lg);margin:0;font-size:16px;font-weight:600;line-height:1.3}.panelcol__n{font-family:var(--font-mono);font-size:var(--fs-micro);font-variant-numeric:tabular-nums;color:var(--ink-faint)}.panelcol__nav{transform:scaleX(-1)}.panelcol__body{overflow-y:auto}.panelcol__inner{padding-block:var(--s6) var(--s12);padding-inline:var(--pad-center)}.panelcol__lede{margin:0 0 var(--s8);max-width:var(--w-read);color:var(--ink-muted);font-size:var(--fs-sm)}.panelcol__lede code,.field__hint code,.note-block code{font-family:var(--font-mono);background:var(--bg-code);border:1px solid var(--bd-muted);border-radius:var(--r-sm);padding:1px 4px;font-size:.9em}.setgroup{margin-bottom:var(--s6);padding:0 var(--s4) var(--s3);background:var(--bg-card);border:1px solid var(--bd-muted);border-radius:var(--r-lg);box-shadow:var(--shadow-card)}.setgroup__title{padding:var(--s3) 0;border-bottom:1px solid var(--bd-muted);font-size:var(--fs-sm);color:var(--ink);margin:0;font-weight:600}.field{gap:var(--s2);padding:var(--s3) 0;border-bottom:1px solid var(--bd-muted);display:grid}.setgroup>:last-child{border-bottom:none}.setgroup>.setgroup__title:last-child,.setgroup>.field:last-child{padding-bottom:0}.field__head{align-items:center;gap:var(--s2);display:flex}.field__name,.field__label{font-size:var(--fs-sm);font-weight:500}.field__label[data-req]:after{content:attr(data-req);border-radius:var(--r-sm);background:var(--bg-active);color:var(--ink-muted);font-size:var(--fs-micro);vertical-align:1px;margin-inline-start:var(--s2);padding:1px 5px;font-weight:500}.field__hint{max-width:var(--w-read);color:var(--ink-muted);font-size:var(--fs-hint,var(--fs-data));margin:0;line-height:1.6}.field__ctl{align-items:center;gap:var(--s2);flex-wrap:wrap;display:flex}.why>summary{cursor:pointer;width:fit-content;font-family:var(--font-mono);font-size:var(--fs-micro);color:var(--ink-faint)}.chain{margin:var(--s2) 0 0;gap:3px var(--s3);font-family:var(--font-mono);font-size:var(--fs-micro);color:var(--ink-faint);grid-template-columns:auto auto minmax(0,1fr);display:grid}.chain dt{white-space:nowrap}.chain dd{overflow-wrap:anywhere;margin:0}.chain__win{color:var(--success);white-space:nowrap}.chain [data-win]{color:var(--ink)}.cmd{padding:5px var(--s3);border-radius:var(--r);background:var(--bg-code);border:1px solid var(--bd-muted);font-family:var(--font-mono);font-size:var(--fs-data);color:var(--ink);overflow-wrap:anywhere}.seg{background:var(--bg-active);border-radius:var(--r);border:none;gap:2px;padding:2px;display:inline-flex}.seg button{padding:4px var(--s3);cursor:pointer;color:var(--ink-muted);font-size:var(--fs-data);white-space:nowrap;transition:background var(--dur-fast) var(--ease), color var(--dur-fast) var(--ease);background:0 0;border:none;border-radius:6px;font-weight:500}.seg button:hover:not([aria-pressed=true]){color:var(--ink)}.seg button[aria-pressed=true]{background:var(--bg-card);color:var(--ink);box-shadow:var(--shadow-seg)}.note-block{margin:var(--s3) 0 0;max-width:var(--w-read);padding:2px 0 2px var(--s3);border-left:2px solid var(--bd-base);font-size:var(--fs-data);color:var(--ink-faint);line-height:1.65}.note-block[data-tone=warn]{border-left-color:var(--warning)}.note-block[data-tone=danger]{border-left-color:var(--danger)}.note-block p{margin:0}.note-block p+p,.note-block ul+p,.note-block p+ul{margin-top:var(--s2)}.note-block>details>summary{cursor:pointer;width:fit-content;color:var(--ink-faint)}.note-block>details[open]>summary{margin-bottom:var(--s2)}@media (width<=1080px){.app[data-view=settings],.app[data-view=auto],.app[data-view=diff]{grid-template-columns:var(--w-navcol) minmax(0, 1fr)}.app[data-view=settings] .sidebar,.app[data-view=auto] .sidebar,.app[data-view=diff] .sidebar{display:none}}@media (width<=860px){.app[data-view=cap]{grid-template-columns:minmax(0,1fr)}}@media (width<=760px){.app[data-view=settings],.app[data-view=auto],.app[data-view=diff]{grid-template-columns:minmax(0,1fr)}.navcol{display:none}}.cap__back{margin-right:var(--s2);margin-left:calc(var(--s2) * -1);padding:5px var(--s2);border-radius:var(--r-sm);color:var(--accent);font-size:var(--fs-sm);white-space:nowrap;cursor:pointer;transition:background var(--dur-fast) var(--ease), transform var(--dur-fast) var(--ease);background:0 0;border:none;flex:none;align-items:center;gap:2px;font-weight:500;display:inline-flex}.cap__back:hover{background:var(--accent-soft)}.cap__back:active{transform:scale(.97)}.cap__back .i{transform:scaleX(-1)}.cap__title{align-items:center;gap:2px;display:inline-flex}.cap__search{width:260px;padding:0 var(--s2);background:var(--bg-raise);border-radius:var(--r-sm);color:var(--ink-faint);border:none;align-items:center;gap:6px;margin-left:auto;display:flex}.cap__search:focus-within{box-shadow:0 0 0 2px var(--accent), 0 0 0 5px var(--accent-soft)}.cap__search input{width:100%;font-size:var(--fs-sm);color:var(--ink);background:0 0;border:none;outline:none;padding:5px 0}.cap__search input::-webkit-search-cancel-button{appearance:none}.cap__pane{padding-block:var(--s6) var(--s12);padding-inline:var(--pad-center)}.cap__lede{margin:0 0 var(--s6);max-width:var(--w-read);font-size:var(--fs-sm);line-height:var(--lh-body);color:var(--ink-muted)}.cap__lede code,.cap__foot code,.cap__gnote code{font-family:var(--font-mono);color:var(--ink);font-size:.9em}.cap__group{margin-bottom:var(--s8)}.cap__ghead{align-items:baseline;gap:2px var(--s3);margin-bottom:var(--s4);grid-template-columns:minmax(0,1fr) auto;display:grid}.cap__gtitle{font-size:var(--fs-lg);letter-spacing:var(--tracking-lg);color:var(--ink);grid-column:1;margin:0;font-weight:600;line-height:1.3}.cap__gnote{max-width:var(--w-read);font-size:var(--fs-data);color:var(--ink-faint);grid-column:1;margin:0;line-height:1.6}.cap__trust{padding:3px var(--s2);border-radius:var(--r-pill);font-size:var(--fs-micro);flex:none;grid-area:1/2/span 2;align-self:center;align-items:center;gap:4px;font-weight:500;display:inline-flex}.cap__trust[data-trust=on]{background:var(--success);color:var(--ink-inverse)}.cap__trust[data-trust=off]{background:var(--warning);color:var(--ink-inverse)}.cap__foot{margin:var(--s3) 0 0;font-size:var(--fs-sm);line-height:var(--lh-body);color:var(--ink-faint)}.cap__gacts{align-items:flex-start;gap:var(--s2);margin-bottom:var(--s3);flex-wrap:wrap;display:flex}.cap__gacts>.mcpadd,.cap__gacts>.mcpcfg,.cap__gacts>.cap__foot{flex-basis:100%;margin:0}.mcpadd__bar,.roleadd__bar{margin:0 0 var(--s3);display:flex}.cap__gacts>.mcpadd__bar,.cap__gacts>.mcpcfg__bar{margin-bottom:0}:is(.cap__gacts:has(>.mcpadd)>.mcpcfg__bar,.cap__gacts:has(>.mcpcfg)>.mcpadd__bar){flex-basis:100%}.mcpadd,.roleadd{gap:var(--s3);margin:0 0 var(--s3);padding:var(--s3);border-radius:var(--r-lg);background:var(--bg-raise);max-width:var(--w-read);align-content:start;display:grid}.mcpadd__title,.roleadd__title{font-size:var(--fs-lg);letter-spacing:var(--tracking-lg);margin:0}.mcpadd label,.roleadd label{gap:var(--s1);display:grid}.mcpadd input[type=text],.mcpadd select,.roleadd input[type=text],.roleadd input[type=number]{box-sizing:border-box;height:var(--ctl-h);padding:0 var(--ctl-pad-x);border:1px solid var(--ctl-bd);border-radius:var(--r);background-color:var(--ctl-bg);color:var(--ink);font:inherit;font-size:var(--fs-sm);transition:border-color var(--dur-fast) var(--ease), background-color var(--dur-fast) var(--ease)}.mcpadd textarea,.roleadd textarea{box-sizing:border-box;padding:var(--s2) var(--ctl-pad-x);border:1px solid var(--ctl-bd);border-radius:var(--r);background:var(--ctl-bg);color:var(--ink);font:inherit;font-size:var(--fs-sm);transition:border-color var(--dur-fast) var(--ease)}.mcpadd input:hover:not(:disabled,:focus-visible),.mcpadd select:hover:not(:disabled,:focus-visible),.mcpadd textarea:hover:not(:disabled,:focus-visible),.roleadd input:hover:not(:disabled,:focus-visible),.roleadd textarea:hover:not(:disabled,:focus-visible){border-color:var(--ctl-bd-hover)}.mcpadd input:focus-visible,.mcpadd select:focus-visible,.mcpadd textarea:focus-visible,.roleadd input:focus-visible,.roleadd textarea:focus-visible{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent), 0 0 0 4px var(--accent-soft);outline:none}.mcpadd textarea,.roleadd__mono{font-family:var(--font-mono);font-size:var(--fs-data);resize:vertical}.roleadd textarea{resize:vertical;line-height:var(--lh-body)}.mcpadd__error,.roleadd__error{align-items:flex-start;gap:var(--s2);padding:var(--s2);border:1px solid color-mix(in oklab, var(--danger) 35%, var(--bd-base));border-radius:var(--r);background:color-mix(in oklab, var(--danger) 12%, transparent);font-size:var(--fs-data);margin:0;line-height:1.6;display:flex}.mcpadd__error svg,.roleadd__error svg{color:var(--danger);flex:none;margin-top:2px}.mcpadd__act,.roleadd__act{gap:var(--s2);display:flex}.mcpcfg__bar{margin:0 0 var(--s3);display:flex}.mcpcfg{gap:var(--s3);margin:0 0 var(--s3);padding:var(--s3);border-radius:var(--r-lg);background:var(--bg-raise);align-content:start;display:grid}.mcpcfg__title{font-size:var(--fs-lg);letter-spacing:var(--tracking-lg);margin:0}.mcpcfg__path{align-items:center;gap:var(--s2);font-size:var(--fs-data);flex-wrap:wrap;margin:0;display:flex}.mcpcfg__path-label{color:var(--ink-muted)}.mcpcfg__path code{font-family:var(--font-mono);font-size:var(--fs-data);color:var(--ink);word-break:break-all}.mcpcfg__dirty{border:1px solid color-mix(in oklab, var(--warning) 35%, var(--bd-base));border-radius:var(--r-sm);background:color-mix(in oklab, var(--warning) 12%, transparent);font-size:var(--fs-micro);color:var(--ink);padding:2px 6px}.mcpcfg__note{font-size:var(--fs-data);color:var(--ink-muted);margin:0}.mcpcfg__editor{border:1px solid var(--bd-base);border-radius:var(--r);background:var(--bg-card);grid-template-columns:auto minmax(0,1fr);height:22rem;display:grid;overflow:hidden}.mcpcfg__editor:focus-within{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent), 0 0 0 4px var(--accent-soft)}.mcpcfg__gutter{padding:var(--s2) var(--s2) var(--s2) var(--s3);border-right:1px solid var(--bd-muted);background:var(--bg-code);color:var(--ink-faint);font-family:var(--font-mono);font-size:var(--fs-data);line-height:var(--lh-code);text-align:right;-webkit-user-select:none;user-select:none;flex-direction:column;display:flex;overflow:hidden}.mcpcfg__code{position:relative;overflow:hidden}.mcpcfg__hl,.mcpcfg__ta{padding:var(--s2);font-family:var(--font-mono);font-size:var(--fs-data);line-height:var(--lh-code);white-space:pre;tab-size:2;border:0;margin:0;position:absolute;inset:0}.mcpcfg__hl{pointer-events:none;color:var(--ink);overflow:hidden}.mcpcfg__ta{color:#0000;caret-color:var(--ink);resize:none;background:0 0;overflow:auto}.mcpcfg__ta:focus-visible{outline:none}.mcpcfg__issues{gap:var(--s1);padding:var(--s2);border:1px solid color-mix(in oklab, var(--warning) 35%, var(--bd-base));border-radius:var(--r);background:color-mix(in oklab, var(--warning) 12%, transparent);font-size:var(--fs-data);margin:0;line-height:1.6;list-style:none;display:grid}.mcpcfg__issues li{align-items:flex-start;gap:var(--s2);display:flex}.mcpcfg__issues svg{color:var(--warning);flex:none;margin-top:2px}.mcpcfg__error{gap:var(--s2);padding:var(--s2);border:1px solid color-mix(in oklab, var(--danger) 35%, var(--bd-base));border-radius:var(--r);background:color-mix(in oklab, var(--danger) 12%, transparent);font-size:var(--fs-data);line-height:1.6;display:grid}.mcpcfg__error p{align-items:flex-start;gap:var(--s2);margin:0;display:flex}.mcpcfg__error svg{color:var(--danger);flex:none;margin-top:2px}.mcpcfg__receipt{align-items:flex-start;gap:var(--s2);font-size:var(--fs-data);color:var(--ink-muted);margin:0;line-height:1.6;display:flex}.mcpcfg__receipt svg{color:var(--success);flex:none;margin-top:2px}.mcpcfg__applied{font-size:var(--fs-data);line-height:1.6}.mcpcfg__applied p{margin:0 0 var(--s1);color:var(--ink-muted)}.mcpcfg__applied ul{gap:var(--s1);margin:0;padding:0;list-style:none;display:grid}.mcpcfg__applied li{align-items:baseline;gap:var(--s2);flex-wrap:wrap;display:flex}.mcpcfg__applied code{font-family:var(--font-mono);font-size:var(--fs-data)}.mcpcfg__applied li[data-action=removed] code{color:var(--ink-faint);text-decoration:line-through}.mcpcfg__why{color:var(--ink-muted)}.mcpcfg__act{gap:var(--s2);display:flex}@media (width<=1080px){.cap__search{display:none}}.cards{gap:var(--s3);grid-template-columns:repeat(auto-fill,minmax(316px,1fr));display:grid}.cards--vary{align-items:start}.card{gap:var(--s2);background:var(--bg-card);border:1px solid var(--bd-base);border-radius:var(--r-lg);box-shadow:var(--shadow-card);transition:border-color var(--dur-fast) var(--ease), box-shadow var(--dur-fast) var(--ease);flex-direction:column;padding:18px;display:flex}.card:hover{border-color:var(--bd-strong);box-shadow:0 1px 3px #0000000d,0 6px 16px -10px #00000038}.card__head{align-items:center;gap:var(--s2);display:flex}.card__ava{border-radius:var(--r);background-color:var(--bg-active);width:36px;height:36px;color:var(--ink);font-family:var(--font-mono);font-size:var(--fs-data);text-transform:lowercase;flex:none;place-items:center;font-weight:500;display:grid}.card__ava[data-hue="1"]{background-color:color-mix(in oklab, var(--hue-1) 14%, var(--bg-card))}.card__ava[data-hue="2"]{background-color:color-mix(in oklab, var(--hue-2) 14%, var(--bg-card))}.card__ava[data-hue="3"]{background-color:color-mix(in oklab, var(--hue-3) 14%, var(--bg-card))}.card__ava[data-hue="4"]{background-color:color-mix(in oklab, var(--hue-4) 14%, var(--bg-card))}.card__ava[data-hue="5"]{background-color:color-mix(in oklab, var(--hue-5) 14%, var(--bg-card))}.card__ava[data-hue="6"]{background-color:color-mix(in oklab, var(--hue-6) 14%, var(--bg-card))}.card__id{flex-direction:column;min-width:0;display:flex}.card__name{font-family:var(--font-mono);font-size:var(--fs-body);color:var(--ink);font-weight:600;line-height:1.35}.card__nameline{align-items:baseline;gap:var(--s2);min-width:0;display:flex}.card__src{font-size:var(--fs-micro);color:var(--ink-faint)}.card__call{background:var(--accent);color:var(--accent-ink);border-color:#0000;flex:none;font-weight:500;box-shadow:0 .5px 1px #0000001f}.card__call,.card__takeover,.card__open{border-radius:var(--r-pill);padding:4px 14px}.card__call:hover:not(:disabled){background:var(--accent-hover);border-color:#0000}.card__call:active:not(:disabled){background:var(--accent-press)}.card__call:disabled{background:var(--bg-active);color:var(--ink-faint);box-shadow:none}.card__badge{padding:2px var(--s2);border-radius:var(--r-pill);font-size:var(--fs-micro);font-variant-numeric:tabular-nums;background:var(--bg-active);color:var(--ink-muted);flex:none}.card__badge[data-tone=ok]{background:var(--success);color:var(--ink-inverse)}.card__badge[data-tone=danger]{background:var(--danger);color:var(--ink-inverse)}.card__badge[data-tone=warn]{background:var(--warning);color:var(--ink-inverse)}.card__desc{font-size:var(--fs-sm);line-height:var(--lh-body);color:var(--ink-muted);-webkit-line-clamp:3;line-clamp:3;overflow-wrap:anywhere;-webkit-box-orient:vertical;margin:0;display:-webkit-box;overflow:hidden}.card__desc[data-open]{-webkit-line-clamp:none;line-clamp:none;display:block;overflow:visible}.card__more{color:var(--accent);font:inherit;font-size:var(--fs-data);cursor:pointer;background:0 0;border:none;align-self:flex-start;margin:0;padding:0;font-weight:500}.card__more:hover{text-decoration:underline}.card__desc code{font-family:var(--font-mono);color:var(--ink);font-size:.9em}.card__foot{justify-content:flex-end;align-items:center;gap:var(--s2);border-top:1px solid var(--bd-muted);flex-wrap:wrap;margin-top:auto;padding-top:14px;display:flex}.card__meta{align-items:baseline;gap:2px var(--s2);flex-wrap:wrap;margin:0;display:flex}.card__stat{font-size:var(--fs-micro);color:var(--ink-faint)}.card__stat+.card__stat:before{content:"·";margin-right:var(--s2);color:var(--bd-strong)}.card__stat b{font-family:var(--font-mono);font-variant-numeric:tabular-nums;color:var(--ink-muted);font-weight:500}.card__takeover,.card__open{background:var(--bg-raise);color:var(--ink);border-color:#0000}.card__takeover:hover:not(:disabled),.card__open:hover:not(:disabled){background:var(--bg-active);border-color:#0000}.card__tools>summary{cursor:pointer;width:fit-content;font-family:var(--font-mono);font-size:var(--fs-micro);color:var(--ink-faint)}.card__hint{margin:var(--s2) 0 0;font-size:var(--fs-micro);color:var(--ink-faint);line-height:1.7}.card__hint code{font-family:var(--font-mono);color:var(--ink-muted)}.card__notice{padding:var(--s2) var(--s3);border-radius:var(--r);background:color-mix(in oklab, var(--warning) 9%, transparent);font-size:var(--fs-micro);color:var(--ink-muted);gap:6px;margin:0;line-height:1.7;display:flex}.card__nsign{color:var(--warning);flex:none}.card__notice[data-tone=error]{background:var(--del-bg)}.card__notice[data-tone=error] .card__nsign{color:var(--danger)}.card__notice code{font-family:var(--font-mono);color:var(--ink)}.card--conn .card__foot{justify-content:flex-start}.card--conn[data-state=failed]{border-color:color-mix(in oklab, var(--danger) 32%, var(--bd-base))}.card--conn[data-state=login]{border-color:color-mix(in oklab, var(--warning) 38%, var(--bd-base))}.chips{margin-top:var(--s2);flex-wrap:wrap;gap:4px;display:flex}.chip{border-radius:var(--r-sm);background:var(--bg-code);border:1px solid var(--bd-muted);font-family:var(--font-mono);font-size:var(--fs-micro);color:var(--ink-muted);padding:2px 6px}.chip[data-cut]{color:var(--ink-faint);opacity:.7;text-decoration:line-through}.card__skillnames{margin-top:var(--s2);flex-wrap:wrap;gap:4px;display:flex}.card__skill{border-radius:var(--r-sm);background:var(--bg-raise);font-family:var(--font-mono);font-size:var(--fs-micro);color:var(--ink-faint);padding:2px 6px}.card__act{align-items:center;gap:var(--s2);flex-wrap:wrap;display:flex}.card__spin{border-radius:var(--r-pill);border:1.5px solid var(--bd-strong);border-top-color:var(--ink-muted);flex:none;width:11px;height:11px;animation:.7s linear infinite spin}.card__foot>.card__hint{flex-basis:100%;margin-top:0}.slots{background:var(--bg-card);border:1px solid var(--bd-base);border-radius:var(--r-lg);box-shadow:var(--shadow-card);flex-direction:column;margin:0;padding:0;list-style:none;display:flex;overflow:hidden}.slot{align-items:center;gap:var(--s3);padding:var(--s3) var(--s4);background:var(--bg-card);grid-template-columns:minmax(0,220px) minmax(0,1fr) auto;display:grid}.slots[data-act] .slot{grid-template-columns:minmax(0,220px) minmax(0,1fr) auto auto}.slot__act{justify-content:flex-end;justify-self:end;align-items:center;gap:var(--s2);flex-wrap:wrap;display:flex}.slots[data-kind=connector] .slot{grid-template-columns:minmax(0,1fr) auto}.slot+.slot{border-top:1px solid var(--bd-muted)}.slot__path{font-family:var(--font-mono);font-size:var(--fs-data);overflow-wrap:anywhere}.slot__path i{color:var(--ink-faint);font-style:normal}.slot__path b{color:var(--ink);font-weight:500}.slot__desc{font-size:var(--fs-sm);color:var(--ink-muted);line-height:1.6}.slot__desc b,.skill__ask{color:var(--ink);font-weight:500}.skill__err{margin-left:var(--s2);color:var(--danger);font-weight:500}.slot__stat{font-family:var(--font-mono);font-size:var(--fs-micro);font-variant-numeric:tabular-nums;color:var(--ink-faint);white-space:nowrap}.slot__stat[data-residency]:not([data-residency=indexed]){font-variant-numeric:normal;font-family:inherit;font-style:italic}.locked{padding:var(--s4);border:1px dashed color-mix(in oklab, var(--warning) 40%, var(--bd-base));border-radius:var(--r-lg);background:color-mix(in oklab, var(--warning) 5%, transparent)}.locked__line{margin:0 0 var(--s2);font-size:var(--fs-sm);color:var(--ink);font-weight:500}.locked__why{margin:0 0 var(--s2);max-width:var(--w-read);font-size:var(--fs-sm);line-height:var(--lh-body);color:var(--ink-muted)}.locked__why code{font-family:var(--font-mono);color:var(--ink);font-size:.9em}.locked__act{align-items:center;gap:var(--s2);margin-top:var(--s3);flex-wrap:wrap;display:flex}@media (width<=760px){.slot,.slots[data-act] .slot{grid-template-columns:minmax(0,1fr) auto}.slot__desc{grid-column:1/-1}}.skillbody{gap:var(--s3);max-width:var(--w-read);flex-direction:column;display:flex}.skillbody__head{align-items:center;gap:var(--s3);display:flex}.skillbody__name{font-family:var(--font-mono);font-size:var(--fs-sm);color:var(--ink);font-weight:500}.skillbody__note,.skillbody__size{font-size:var(--fs-micro);color:var(--ink-faint);margin:0;line-height:1.7}.skillbody__size{padding-top:var(--s2);border-top:1px solid var(--bd-muted);font-variant-numeric:tabular-nums}.skimport__entry{margin-bottom:var(--s3);justify-content:flex-end;display:flex}.skimport{gap:var(--s4);flex-direction:column;min-width:0;display:flex}.skimport>.cap__lede{margin-bottom:0}.skimport__head{align-items:center;gap:var(--s3);display:flex}.skimport__back{margin-left:calc(var(--s3) * -1)}.skimport__title{font-size:var(--fs-sm);color:var(--ink);font-weight:600}.skimport__form{align-items:center;gap:var(--s2);flex-wrap:wrap;max-width:560px;display:flex}.skimport__path{flex:1;min-width:220px}.skimport__pick{background:var(--bg-raise);color:var(--ink);border-color:#0000}.skimport__pick:hover:not(:disabled){background:var(--bg-active);border-color:#0000}.skimport__browse{background:var(--bg-card);border:1px solid var(--bd-muted);border-radius:var(--r-lg);padding:var(--s3);gap:var(--s2);flex-direction:column;display:flex}.skimport__crumb{justify-content:space-between;align-items:center;gap:var(--s3);font-family:var(--font-mono);font-size:var(--fs-data);color:var(--ink-muted);overflow-wrap:anywhere;display:flex}.skimport__dirs{flex-direction:column;max-height:240px;margin:0;padding:0;list-style:none;display:flex;overflow-y:auto}.skimport__dir{text-align:left;border-radius:var(--r);width:100%;padding:4px var(--s2);font:inherit;font-size:var(--fs-sm);color:var(--ink);cursor:pointer;background:0 0;border:0;display:block}.skimport__dir:hover:not(:disabled),.skimport__dir:focus-visible:not(:disabled){background:var(--bg-raise)}.skimport__dir:disabled{color:var(--ink-faint);cursor:default}.skimport__hidden{align-items:center;gap:var(--s2);font-size:var(--fs-micro);color:var(--ink-faint);cursor:pointer;display:flex}.skimport__hidden:hover{color:var(--ink)}.skimport__omitted{padding:4px var(--s2);font-size:var(--fs-micro);color:var(--ink-faint)}.skimport__result{gap:var(--s3);flex-direction:column;display:flex}.skimport__count{font-size:var(--fs-sm);color:var(--ink);margin:0;font-weight:600}.slot[data-conflict=refuse]{background:color-mix(in oklab, var(--danger) 8%, transparent)}.slot[data-conflict=shadowed]{background:color-mix(in oklab, var(--warning) 10%, transparent)}.skimport__warn{color:var(--ink);font-weight:500}.skimport__act{justify-content:flex-end;gap:var(--s2);display:flex}.skimport__names{gap:var(--s2);font-family:var(--font-mono);font-size:var(--fs-data);color:var(--ink);flex-wrap:wrap;margin:0;padding:0;list-style:none;display:flex}.skimport__issues{background:color-mix(in oklab, var(--warning) 8%, transparent);border:1px solid color-mix(in oklab, var(--warning) 22%, transparent);border-radius:var(--r-lg);padding:var(--s3)}.skimport__issues-head{margin:0 0 var(--s2);font-size:var(--fs-sm);color:var(--ink);font-weight:600}.skimport__issues ul{flex-direction:column;gap:4px;margin:0;padding:0;list-style:none;display:flex}.skimport__issues li{gap:var(--s2);font-size:var(--fs-sm);color:var(--ink-muted);overflow-wrap:anywhere;line-height:1.6;display:flex}.skimport__issues code{font-family:var(--font-mono);font-size:var(--fs-data);color:var(--ink-faint);flex:none}.skills__removed{margin-bottom:var(--s12)}.plug{gap:var(--s4);flex-direction:column;display:flex}.plug__sec{gap:var(--s2);flex-direction:column;display:flex}.plug__head{font-size:var(--fs-sm);color:var(--ink-muted);margin:0;font-weight:600}.plug__restart{gap:var(--s2);flex-direction:column;display:flex}.plug__restart-head{align-items:center;gap:var(--s2);margin:0;display:flex}.plug__counts{margin-left:var(--s2);color:var(--ink-faint);font-style:normal}.plug__err{margin-left:var(--s2);color:var(--danger);font-weight:500}.plug__warn{color:var(--ink);font-weight:500}.plug__ask{font-weight:500}.plug__tag{padding:1px var(--s2);border-radius:var(--r-sm);background:var(--bg-raise);font-size:var(--fs-data);color:var(--ink-muted);white-space:nowrap}.plug__tag+.plug__tag{margin-left:var(--s1)}.slot[data-state=pending],.slot[data-state=stale]{background:color-mix(in oklab, var(--warning) 10%, transparent)}.slot[data-state=off]{background:color-mix(in oklab, var(--danger) 8%, transparent)}.plug__prev{gap:var(--s3);flex-direction:column;display:flex}.plug__prev-head{align-items:center;gap:var(--s3);font-size:var(--fs-sm);color:var(--ink-muted);display:flex}.plug__result{gap:var(--s3);flex-direction:column;display:flex}.plug__title{font-size:var(--fs-sm);color:var(--ink);margin:0;font-weight:600}.plug__facts{gap:var(--s1) var(--s3);font-size:var(--fs-sm);grid-template-columns:max-content minmax(0,1fr);margin:0;display:grid}.plug__facts dt{color:var(--ink-faint)}.plug__facts dd{color:var(--ink);overflow-wrap:anywhere;margin:0}.plug__brings{font-size:var(--fs-sm);color:var(--ink);margin:0;font-weight:600}.plug__inv{padding:var(--s3) var(--s4);gap:var(--s2);background:var(--bg-card);border:1px solid var(--bd-muted);border-radius:var(--r-lg);font-size:var(--fs-sm);color:var(--ink);overflow-wrap:anywhere;flex-direction:column;margin:0;list-style:none;display:flex}.plug__danger{margin:0 calc(-1 * var(--s2));padding:var(--s1) var(--s2);border-left:2px solid var(--danger);background:color-mix(in oklab, var(--danger) 8%, transparent)}.plug__pending-hint{font-size:var(--fs-sm);color:var(--ink-muted);margin:0}.plug__act{justify-content:flex-end;gap:var(--s2);display:flex}.plug__top{justify-content:flex-end;align-items:flex-start;gap:var(--s3);display:flex}.plug__add{flex-shrink:0}.plugadd{gap:var(--s3);flex-direction:column;display:flex}.plugadd__head{align-items:center;gap:var(--s2);display:flex}.plugadd__title{font-size:var(--fs-sm)}.plugadd__tabs{gap:var(--s3);border-bottom:1px solid var(--bd-muted);display:flex}.plugadd__tab{padding:var(--s2) 0;font:inherit;font-size:var(--fs-sm);color:var(--ink-muted);cursor:pointer;background:0 0;border:0;border-bottom:2px solid #0000;margin-bottom:-1px}.plugadd__tab:hover,.plugadd__tab:focus-visible{color:var(--ink)}.plugadd__tab[data-on]{color:var(--ink);border-bottom-color:var(--ink);font-weight:600}.plugadd__pane{gap:var(--s3);flex-direction:column;display:flex}.plugadd__form{align-items:center;gap:var(--s2);flex-wrap:wrap;max-width:560px;display:flex}.plugadd__path{flex:1;min-width:220px}.plugadd__pick{background:var(--bg-raise);color:var(--ink);border-color:#0000}.plugadd__pick:hover:not(:disabled){background:var(--bg-active)}.plugadd__browse{background:var(--bg-card);border:1px solid var(--bd-muted);border-radius:var(--r-lg);padding:var(--s3);gap:var(--s2);flex-direction:column;display:flex}.plugadd__crumb{justify-content:space-between;align-items:center;gap:var(--s3);font-family:var(--font-mono);font-size:var(--fs-data);color:var(--ink-muted);overflow-wrap:anywhere;display:flex}.plugadd__dirs{flex-direction:column;max-height:240px;margin:0;padding:0;list-style:none;display:flex;overflow-y:auto}.plugadd__dir{text-align:left;border-radius:var(--r);width:100%;padding:4px var(--s2);font:inherit;font-size:var(--fs-sm);color:var(--ink);cursor:pointer;background:0 0;border:0;display:block}.plugadd__dir:hover:not(:disabled),.plugadd__dir:focus-visible:not(:disabled){background:var(--bg-raise)}.plugadd__dir:disabled{color:var(--ink-faint);cursor:default}.plugadd__omitted{padding:4px var(--s2);font-size:var(--fs-micro);color:var(--ink-faint)}.plugadd__hidden{align-items:center;gap:var(--s2);font-size:var(--fs-micro);color:var(--ink-faint);cursor:pointer;display:flex}.seccards{gap:var(--s3);margin-bottom:var(--s10);grid-template-columns:repeat(auto-fit,minmax(190px,1fr));display:grid}.seccard{padding:var(--s3) var(--s4);background:var(--bg-card);border:1px solid var(--bd-muted);border-radius:var(--r-lg);box-shadow:var(--shadow-card);align-content:start;gap:3px;display:grid}.seccard__k{font-size:var(--fs-micro);color:var(--ink-faint)}.seccard__v{font-size:var(--fs-sm);color:var(--ink);font-weight:500}.seccard[data-tone] .seccard__v:before{content:"";width:6px;height:6px;margin-right:var(--s2);border-radius:var(--r-pill);vertical-align:.1em;background:currentColor;display:inline-block}.seccard__d{font-size:var(--fs-micro);color:var(--ink-faint);overflow-wrap:anywhere;line-height:1.5}.seccard[data-tone=ok] .seccard__v{color:var(--success)}.seccard[data-tone=lock] .seccard__v{color:var(--info)}.seccard[data-tone=warn] .seccard__v{color:var(--warning)}.layer{font-family:var(--font-mono);font-size:var(--fs-micro);color:var(--ink-faint);border:1px solid var(--bd-muted);border-radius:var(--r-pill);white-space:nowrap;margin-left:auto;padding:1px 8px}.layer[data-layer=managed]{color:var(--danger);border-color:color-mix(in oklab, var(--danger) 38%, transparent)}.layer[data-layer=cli]{color:var(--warning);border-color:color-mix(in oklab, var(--warning) 38%, transparent)}.lockline{font-size:var(--fs-data);color:var(--danger);align-items:baseline;gap:6px;margin:0;display:flex}.rules{flex-direction:column;gap:1px;display:flex}.rule{align-items:center;gap:var(--s3);padding:6px var(--s2);border-radius:var(--r-sm);font-family:var(--font-mono);font-size:var(--fs-data);grid-template-columns:46px minmax(0,1fr) auto;display:grid}.rule:hover{background:var(--bg-raise)}.rule__verdict{font-family:var(--font-mono);font-size:var(--fs-micro)}.rule[data-verdict=deny] .rule__verdict{color:var(--danger)}.rule[data-verdict=ask] .rule__verdict{color:var(--warning)}.rule[data-verdict=allow] .rule__verdict{color:var(--success)}.rule__pattern{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.rule__src{font-size:var(--fs-micro);color:var(--ink-faint)}.audit{margin-top:var(--s3);flex-direction:column;gap:1px;display:flex}.audit__row,.audit__head{align-items:center;gap:var(--s3);padding:6px var(--s2);border-radius:var(--r-sm);font-family:var(--font-mono);font-size:var(--fs-data);grid-template-columns:76px 116px 84px minmax(0,1fr) 52px auto;display:grid}.audit__head{font-size:var(--fs-micro);color:var(--ink-faint)}.audit__row:hover{background:var(--bg-raise)}.audit__at,.audit__type{color:var(--ink-faint);font-size:var(--fs-micro)}.audit__tool,.audit__target{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.audit__code{font-size:var(--fs-micro);color:var(--ink-faint);white-space:nowrap}.audit__outcome{font-family:var(--font-mono);font-size:var(--fs-micro)}.audit__row[data-outcome=granted] .audit__outcome{color:var(--ink-muted)}.audit__row[data-outcome=denied] .audit__outcome{color:var(--danger)}.approvals{margin-top:var(--s3);flex-direction:column;gap:1px;display:flex}.approval{align-items:center;gap:var(--s3);padding:6px var(--s2);border-radius:var(--r-sm);font-family:var(--font-mono);font-size:var(--fs-data);grid-template-columns:84px 116px minmax(0,1fr) 68px 76px auto;display:grid}.approval:hover{background:var(--bg-raise)}.approval__decision{font-family:var(--font-sans);font-size:var(--fs-micro)}.approval[data-decision=deny] .approval__decision{color:var(--danger)}.approval[data-decision=allow-session] .approval__decision,.approval[data-decision=allow-always] .approval__decision{color:var(--ink-muted)}.approval__tool,.approval__target{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.approval__scope,.approval__at{font-size:var(--fs-micro);color:var(--ink-faint);white-space:nowrap}.approval__scope{font-family:var(--font-sans)}.approval__revoke{justify-self:end}.sec__trust{padding:3px var(--s2);border-radius:var(--r-pill);font-size:var(--fs-micro);white-space:nowrap;align-items:center;gap:4px;margin-left:auto;font-weight:500;display:inline-flex}.sec__trust[data-trust=on]{color:var(--success)}.sec__trust[data-trust=off]{color:var(--warning)}.sec__files{margin:var(--s2) 0 0;font-family:var(--font-mono);font-size:var(--fs-data);color:var(--ink-muted);flex-direction:column;gap:2px;padding:0;list-style:none;display:flex}.sec__foot{margin:var(--s3) 0 0;font-size:var(--fs-sm);line-height:var(--lh-body);color:var(--ink-faint)}.slots[data-kind=root] .slot{grid-template-columns:minmax(0,320px) minmax(0,1fr)}.slots[data-kind=space] .slot,.slots[data-kind=policy] .slot{grid-template-columns:minmax(0,1fr) minmax(0,260px) auto}.locked__act .cmd{flex:auto}.permrow{align-items:center;gap:var(--s2);flex:0 0 100%;display:flex}.permrow__when{width:3em;font-size:var(--fs-micro);color:var(--ink-faint);flex:none}.permrow__note{font-size:var(--fs-micro);color:var(--ink-muted)}.timeline{margin:0;padding:0;list-style:none}.ev__body{min-width:0;padding-bottom:var(--s6)}.ev[data-kind=user] .ev__body{padding-bottom:var(--s5);justify-content:flex-end;display:flex}.said{background:var(--bg-chrome);border-radius:var(--r-lg);padding:var(--s2) var(--s4);white-space:pre-wrap;overflow-wrap:anywhere;border:none;min-width:0;max-width:78%}.think{padding-left:var(--s3);border-left:2px solid var(--bd-base);color:var(--ink-muted);font-size:var(--fs-sm);margin:0}.think__label{margin:0 0 var(--s1);font-family:var(--font-mono);font-size:var(--fs-micro);color:var(--ink-faint)}.think__text{white-space:pre-wrap;margin:0;line-height:1.7}.prose{overflow-wrap:anywhere}.prose__chunk{display:contents}.prose>:first-child,.prose__chunk:first-child>:first-child{margin-top:0}.prose>:last-child,.prose__chunk:last-child>:last-child{margin-bottom:0}.prose p{margin:0 0 var(--s3)}.prose h2,.prose h3{margin:var(--s6) 0 var(--s2);font-weight:600;line-height:var(--lh-tight);letter-spacing:-.01em}.prose h2{font-size:var(--fs-lg)}.prose h3{font-size:var(--fs-body);color:var(--ink-muted)}.prose h1,.prose h4,.prose h5,.prose h6{margin:var(--s6) 0 var(--s2);font-size:var(--fs-body);font-weight:600;line-height:var(--lh-tight)}.prose ul,.prose ol{margin:0 0 var(--s3);padding-left:1.35em}.prose li{margin-bottom:var(--s1)}.prose li::marker{color:var(--ink-faint);font-family:var(--font-mono);font-size:.85em}.prose strong{font-weight:600}.prose a{color:var(--accent);text-underline-offset:3px;-webkit-text-decoration-color:color-mix(in srgb, var(--accent) 40%, transparent);text-decoration-color:color-mix(in srgb, var(--accent) 40%, transparent)}.prose a:hover{-webkit-text-decoration-color:var(--accent);text-decoration-color:var(--accent)}.prose blockquote{margin:0 0 var(--s3);padding-left:var(--s3);border-left:2px solid var(--bd-base);color:var(--ink-muted)}.prose hr{margin:var(--s5) 0;border:none;border-top:1px solid var(--bd-muted)}.prose :not(pre)>code{font-family:var(--font-mono);background:var(--bg-code);border:1px solid var(--bd-muted);border-radius:var(--r-sm);padding:1px 4px;font-size:.89em}.prose table{width:100%;margin:0 0 var(--s3);border-collapse:collapse;font-size:var(--fs-sm)}.prose th,.prose td{text-align:left;padding:6px var(--s3) 6px 0;border-bottom:1px solid var(--bd-muted)}.prose th{font-family:var(--font-mono);font-size:var(--fs-micro);color:var(--ink-faint);white-space:nowrap;font-weight:500}.prose[data-live] .prose__chunk:last-child>:last-child:after{content:"";background:var(--ink-muted);width:7px;height:1em;margin-left:2px;animation:1.05s steps(2,start) infinite blink;display:inline-block;translate:0 2px}@keyframes blink{50%{opacity:0}}.code{margin:0 0 var(--s3);background:var(--bg-code);border:1px solid var(--bd-muted);border-radius:var(--r);overflow:hidden}.code__head{align-items:center;gap:var(--s2);padding:5px var(--s2) 5px var(--s3);border-bottom:1px solid var(--bd-muted);font-family:var(--font-mono);font-size:var(--fs-micro);color:var(--ink-faint);display:flex}.code__lang{color:var(--ink-faint)}.code__copy{color:var(--ink-faint);cursor:pointer;font-family:inherit;font-size:inherit;border-radius:var(--r-sm);background:0 0;border:none;align-items:center;margin-left:auto;padding:4px;display:flex}.code__copy:hover{color:var(--ink);background:var(--bg-raise)}.code pre{padding:var(--s3);font-family:var(--font-mono);font-size:var(--fs-data);line-height:var(--lh-code);margin:0;overflow-x:auto}.tk-c{color:var(--tk-comment);font-style:italic}.tk-k{color:var(--tk-keyword)}.tk-s{color:var(--tk-string)}.tk-n{color:var(--tk-number)}.tk-f{color:var(--tk-fn)}.tk-p{color:var(--ink-muted)}.tools{gap:var(--s1);flex-direction:column;display:flex}.tool{background:var(--bg-card);border:1px solid var(--bd-base);border-radius:var(--r);box-shadow:var(--shadow-card);overflow:hidden}.tool__head{align-items:center;gap:var(--s2);padding:4px var(--s3);display:flex}.tool__fold{color:inherit;font:inherit;cursor:pointer;background:0 0;border:none;flex:none;align-items:center;gap:6px;padding:0;display:flex}.tool__fold:disabled{cursor:default}.tool__fold:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:var(--r-sm)}.tool__fold svg{color:var(--ink-faint)}.tool__name{font-family:var(--font-mono);font-size:var(--fs-data);font-weight:500}.tool__sig{font-family:var(--font-mono);font-size:var(--fs-data);color:var(--ink-muted);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.tool__stat{font-family:var(--font-mono);font-size:var(--fs-micro);font-variant-numeric:tabular-nums;color:var(--ink-faint);white-space:nowrap;margin-left:auto}.tool[data-status=pending] .tool__stat{color:var(--warning)}.tool[data-status=error] .tool__stat{color:var(--danger)}.tool__body{padding:var(--s1) var(--s3) var(--s2)}.tool__args{margin:0 0 var(--s2);gap:3px var(--s3);font-family:var(--font-mono);font-size:var(--fs-micro);grid-template-columns:auto minmax(0,1fr);display:grid}.tool__args dt{color:var(--ink-faint)}.tool__args dd{color:var(--ink-muted);overflow-wrap:anywhere;margin:0}.tool__args summary{cursor:pointer}.tool__args pre{margin:var(--s1) 0 0;white-space:pre-wrap;overflow-wrap:anywhere}.tool__out{padding:var(--s2) var(--s3);background:var(--bg-code);border-radius:var(--r-sm);font-family:var(--font-mono);font-size:var(--fs-micro);color:var(--ink-muted);white-space:pre-wrap;overflow-wrap:anywhere;max-height:110px;margin:0;line-height:1.65;overflow-y:auto}.tool__out[data-live]{color:var(--ink-faint);max-height:72px}.tool__more{padding:var(--s2) 0 0;color:var(--ink-muted);cursor:pointer;font-family:var(--font-mono);font-size:var(--fs-micro);background:0 0;border:none}.tool__more:hover{color:var(--ink)}.tool__art{margin:var(--s2) 0 0;font-size:var(--fs-micro);color:var(--ink-muted)}.tool__art img{border:1px solid var(--bd-muted);border-radius:var(--r-sm);max-width:100%;display:block}.tool__art-audio{width:100%;display:block}.tool__art-dl{align-items:baseline;gap:var(--s2);padding:var(--s2) var(--s3);background:var(--bg-code);border:1px solid var(--bd-base);border-radius:var(--r-sm);color:var(--ink);font-family:var(--font-mono);font-size:var(--fs-data);transition:background var(--dur-fast) var(--ease), border-color var(--dur-fast) var(--ease);text-decoration:none;display:flex}.tool__art-dl:hover{background:var(--bg-raise);border-color:var(--bd-strong)}.tool__art-dl-name{overflow-wrap:anywhere;min-width:0}.tool__art-dl-type{font-size:var(--fs-micro);color:var(--ink-faint);flex:none;margin-left:auto}.tool__art-cap{gap:var(--s1);margin-top:var(--s2);flex-direction:column;display:flex}.tool__art-fact{align-items:center;gap:6px;margin:0;display:flex}.tool__art-badge{border-radius:var(--r-pill);font-size:var(--fs-micro);border:1px solid #0000;flex:none;padding:1px 7px;font-weight:500}.tool__art[data-admission=in] .tool__art-badge{color:var(--success);background:var(--add-bg)}.tool__art[data-admission=out] .tool__art-badge{color:var(--ink-muted);background:var(--bg-active)}.tool__art[data-admission=unknown] .tool__art-badge{color:var(--warning);border-color:var(--bd-base)}.tool__art-tokens{font-family:var(--font-mono);font-variant-numeric:tabular-nums;color:var(--ink-faint)}.tool__art-note{color:var(--ink-faint);margin:0;line-height:1.6}.tool__art-sum{color:var(--ink-faint);overflow-wrap:anywhere;margin:0;line-height:1.6}.diff{background:var(--bg-card);border:1px solid var(--bd-base);border-radius:var(--r);box-shadow:var(--shadow-card);margin:0;overflow:hidden}.diff__head{align-items:center;gap:var(--s2);padding:7px var(--s2) 7px var(--s3);border-bottom:1px solid var(--bd-muted);font-family:var(--font-mono);font-size:var(--fs-data);display:flex}.diff__path{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.diff__stat{font-size:var(--fs-micro);font-variant-numeric:tabular-nums;white-space:nowrap;margin-left:auto}.diff__stat b{color:var(--add);font-weight:500}.diff__stat i{color:var(--del);font-style:normal}.diff__stat--opaque{color:var(--ink-muted)}.diff__note{padding:var(--s2) var(--s3);border-top:1px solid var(--bd-muted);font-size:var(--fs-micro)}.diff__body{font-family:var(--font-mono);font-size:var(--fs-micro);max-height:300px;line-height:1.7;overflow:auto}.dl{white-space:pre;grid-template-columns:30px 30px max-content;width:max-content;min-width:100%;display:grid}.dl__n{text-align:right;padding-right:var(--s2);color:var(--ink-faint);opacity:.6;font-variant-numeric:tabular-nums;-webkit-user-select:none;user-select:none}.dl__t{padding-right:var(--s3)}.dl--add{background:var(--add-bg)}.dl--add .dl__t{color:var(--add)}.dl--del{background:var(--del-bg)}.dl--del .dl__t{color:var(--del)}.dl--ctx .dl__t{color:var(--ink-muted)}.dl--gap{background:var(--bg-code);color:var(--ink-faint)}.todo{border:1px solid var(--bd-base);border-radius:var(--r);background:var(--bg-raise);padding:var(--s3) var(--s4)}.todo__head{align-items:baseline;gap:var(--s2);margin:0 0 var(--s2);font-size:var(--fs-sm);color:var(--ink);font-weight:500;display:flex}.todo__n{font-family:var(--font-mono);font-size:var(--fs-micro);font-variant-numeric:tabular-nums;color:var(--ink-faint);font-weight:400}.todo__list{flex-direction:column;gap:3px;margin:0;padding:0;list-style:none;display:flex}.todo__item{font-size:var(--fs-sm);color:var(--ink-muted);padding-left:20px;line-height:1.65;position:relative}.todo__item:before{font-family:var(--font-mono);font-size:var(--fs-data);color:var(--ink-faint);position:absolute;left:0}.todo__item[data-st=completed]{color:var(--ink-faint)}.todo__item[data-st=completed]:before{content:"✓";color:var(--success)}.todo__item[data-st=in_progress]{color:var(--ink);font-weight:500}.todo__item[data-st=in_progress]:before{content:"▸";color:var(--warning)}.todo__item[data-st=pending]:before{content:"·"}.todo__item[data-st=cancelled]{color:var(--ink-faint);text-decoration:line-through;-webkit-text-decoration-color:var(--bd-strong);text-decoration-color:var(--bd-strong)}.todo__item[data-st=cancelled]:before{content:"×"}.todo__why{font-size:var(--fs-micro);color:var(--ink-faint);border:1px solid var(--bd-muted);border-radius:var(--r-sm);margin-left:4px;padding:0 4px;text-decoration:none;display:inline-block}.mhead{align-items:center;gap:var(--s2);margin-bottom:var(--s3);display:flex}.mhead__ava{border-radius:var(--r-sm);background:var(--bg-active);border:1px solid var(--bd-base);width:22px;height:22px;font-family:var(--font-mono);letter-spacing:-.02em;color:var(--ink-muted);flex:none;place-items:center;font-size:10px;display:grid}.mhead__lines{flex-direction:column;gap:1px;min-width:0;display:flex}.mhead__name{align-items:center;gap:var(--s2);font-family:var(--font-mono);font-size:var(--fs-data);color:var(--ink);display:flex}.mhead__sub{font-family:var(--font-mono);font-size:var(--fs-micro);font-variant-numeric:tabular-nums;color:var(--ink-faint)}.mhead__sub b{color:var(--ink-muted);font-weight:500}.src-chip{font-family:var(--font-sans);font-size:var(--fs-micro);color:var(--ink-faint);border:1px solid var(--bd-muted);border-radius:var(--r-sm);padding:0 4px}.fold__bar{align-items:center;gap:var(--s2);width:100%;padding:var(--s1) var(--s2);margin:var(--s1) 0;border:1px dashed var(--bd-muted);border-radius:var(--r);color:var(--ink-faint);font:inherit;font-size:var(--fs-micro);text-align:left;cursor:pointer;background:0 0;display:flex}.fold__bar:hover{background:var(--bg-raise);color:var(--ink-muted)}.turnfoot{align-items:center;gap:var(--s3);padding:var(--s1) 0 var(--s6);border-bottom:1px solid var(--bd-muted);margin-bottom:var(--s6);flex-wrap:wrap;display:flex}.turnfoot__acts{gap:var(--s1);flex-wrap:wrap;display:flex}.turnfoot__acts .btn--icon{padding:7px}.turnfoot__facts{font-family:var(--font-mono);font-size:var(--fs-micro);font-variant-numeric:tabular-nums;color:var(--ink-faint);margin:0 0 0 auto}.turnfoot__facts b{color:var(--ink-muted);font-weight:500}.turnfoot__facts code{font-family:var(--font-mono)}.unknown{border:1px dashed var(--bd-strong);border-radius:var(--r-sm);color:var(--ink-faint);padding:0 4px}.est{font-family:var(--font-sans);font-size:var(--fs-micro);color:var(--warning);border:1px solid color-mix(in oklab, var(--warning) 40%, transparent);border-radius:var(--r-sm);padding:0 4px}.est--warn{color:var(--danger);border-color:color-mix(in oklab, var(--danger) 42%, transparent)}.ctxline{font-family:var(--font-sans);font-size:var(--fs-micro);color:var(--ink-faint);border:1px solid var(--bd-muted);border-radius:var(--r-sm);padding:0 4px}.ctxline--off{color:var(--danger);border-color:color-mix(in oklab, var(--danger) 42%, transparent)}.livestat{align-items:center;gap:var(--s2);padding:var(--s1) 0 var(--s6);font-family:var(--font-mono);font-size:var(--fs-micro);font-variant-numeric:tabular-nums;color:var(--ink-faint);display:flex}.livestat__dot{border-radius:var(--r-pill);background:var(--warning);width:6px;height:6px;animation:pulse 1.5s var(--ease) infinite}.livestat__queued{color:var(--warning)}.livestat__stop{margin-left:auto}.livestat .btn--icon{padding:7px}.livestat .btn--icon:disabled{cursor:progress;opacity:.6}.note{align-items:baseline;gap:var(--s2);font-size:var(--fs-sm);color:var(--ink-muted);margin:0;display:flex}.note__sign{font-family:var(--font-mono);color:var(--ink-faint)}.note[data-tone=error],.note[data-tone=error] .note__sign{color:var(--danger)}.rewind{margin-top:var(--s2);padding:var(--s3);border:1px solid color-mix(in oklab, var(--danger) 32%, var(--bd-base));border-radius:var(--r);background:var(--bg-raise);font-size:var(--fs-sm);flex-basis:100%}.rewind__head,.rewind__hint,.rewind__warn,.rewind__err{margin:0 0 var(--s2)}.rewind__hint{color:var(--ink-faint);font-size:var(--fs-micro)}.rewind__warn{color:var(--warning)}.rewind__err{color:var(--danger)}.rewind__files{margin:0 0 var(--s3);flex-direction:column;gap:2px;padding:0;list-style:none;display:flex}.rewind__files li,.rewind__files label{align-items:center;gap:var(--s2);min-width:0;display:flex}.rewind__files label{cursor:pointer;width:100%}.rewind__files code{font-family:var(--font-mono);font-size:var(--fs-micro);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.rewind__act{min-width:3em;color:var(--ink-muted);font-size:var(--fs-micro);flex:none}.rewind__files--conflict .rewind__act{color:var(--warning)}.rewind__drift{color:var(--ink-faint);font-size:var(--fs-micro);white-space:nowrap}.rewind__scope{margin:0 0 var(--s3);border:none;flex-direction:column;gap:2px;padding:0;display:flex}.rewind__scope legend{margin-bottom:var(--s1);color:var(--ink-faint);font-size:var(--fs-micro);padding:0}.rewind__scope label{align-items:center;gap:var(--s2);cursor:pointer;display:flex}.rewind__scope label[data-off]{color:var(--ink-faint);cursor:not-allowed}.rewind__scope em{color:var(--ink-faint);font-size:var(--fs-micro);font-style:normal}.rewind__confirm{align-items:flex-start;gap:var(--s2);margin-bottom:var(--s3);color:var(--warning);cursor:pointer;display:flex}.rewind__acts{justify-content:flex-end;gap:var(--s2);display:flex}.rewind__done{margin:0 0 var(--s3);color:var(--ink-muted);flex-direction:column;gap:2px;padding:0;list-style:none;display:flex}.rewound{padding:var(--s3) 0 var(--s6);margin-top:var(--s3);border-top:1px dashed color-mix(in oklab, var(--danger) 38%, var(--bd-base));font-size:var(--fs-sm)}.rewound__head{color:var(--ink);margin:0}.rewound__lines{margin:var(--s1) 0 0;color:var(--ink-muted);font-size:var(--fs-micro);flex-direction:column;gap:2px;padding:0;list-style:none;display:flex}.pathlink{font:inherit;color:var(--accent);cursor:pointer;-webkit-text-decoration:underline dotted color-mix(in oklab, var(--accent) 45%, transparent);text-decoration:underline dotted color-mix(in oklab, var(--accent) 45%, transparent);text-underline-offset:2px;word-break:break-all;text-align:left;background:0 0;border:none;margin:0;padding:0}.pathlink:hover{-webkit-text-decoration:underline solid var(--accent);text-decoration:underline solid var(--accent)}.pathlink:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:2px}.agroup+.agroup{margin-top:var(--s6);padding-top:var(--s5);border-top:1px solid var(--bd-muted)}.agroup__title{margin:0 0 var(--s1);font-size:var(--fs-body);letter-spacing:var(--tracking-lg);color:var(--ink);align-items:center;gap:6px;font-weight:600;display:flex}.agroup__n{font-family:var(--font-mono);font-size:var(--fs-micro);font-variant-numeric:tabular-nums;color:var(--ink-faint);background:var(--bg-active);border-radius:var(--r-sm);padding:0 5px;font-weight:400}.alist{margin:0 0 var(--s3);gap:var(--s1);flex-direction:column;padding:0;list-style:none;display:flex}.aitem{align-items:center;gap:var(--s1);grid-template-columns:minmax(0,1fr) auto;display:grid}.arow{align-items:center;gap:0 var(--s2);text-align:left;border-radius:var(--r);width:100%;padding:var(--s2);cursor:pointer;color:inherit;transition:background var(--dur-fast) var(--ease), border-color var(--dur-fast) var(--ease);background:0 0;border:1px solid #0000;grid-template-rows:auto auto;grid-template-columns:auto minmax(0,1fr) auto;text-decoration:none;display:grid}.arow:hover{background:var(--bg-raise);border-color:var(--bd-base)}.arow--flat{cursor:default}.arow--flat:hover{background:0 0;border-color:#0000}.arow__i{color:var(--ink-faint);grid-row:1/3}.arow__name{font-family:var(--font-mono);font-size:var(--fs-data);color:var(--ink);overflow-wrap:anywhere}.arow__dir{color:var(--ink-faint);font-style:normal}.arow__meta{font-family:var(--font-mono);font-size:var(--fs-micro);color:var(--ink-faint);grid-column:2}.arow__meta b{color:var(--add);font-weight:500}.arow__go{color:var(--ink-faint);grid-area:1/3/3;justify-self:end}.aitem__locate{flex:none;padding:4px}.inspector[data-mode=list] .preview,.inspector[data-mode=preview]>.tabs,.inspector[data-mode=preview]>.inspector__body{display:none}.inspector[data-mode=preview]{grid-template-rows:minmax(0,1fr)}.preview{grid-template-rows:auto auto minmax(0,1fr) auto;min-height:0;display:grid}.preview__head{align-items:center;gap:var(--s2);height:var(--h-header);padding:0 var(--s3);border-bottom:1px solid var(--bd-muted);display:flex}.preview__path{flex:1;min-width:0}.preview__ro{font-size:var(--fs-micro);color:var(--ink-faint);border:1px solid var(--bd-muted);border-radius:var(--r-sm);flex:none;padding:0 4px}.preview__meta{padding:var(--s2) var(--s4);font-family:var(--font-mono);font-size:var(--fs-micro);color:var(--ink-faint);border-bottom:1px solid var(--bd-muted);margin:0}.preview__body{padding:var(--s3) var(--s4);overflow:auto}.preview__code{font-family:var(--font-mono);font-size:var(--fs-data);line-height:var(--lh-code);color:var(--ink-muted);white-space:pre;margin:0}.preview__note{padding:var(--s2) var(--s4);border-top:1px solid var(--bd-muted);border-radius:0;margin:0}.preview__media{background-image:linear-gradient(45deg, var(--bg-chrome) 25%, transparent 25%), linear-gradient(-45deg, var(--bg-chrome) 25%, transparent 25%), linear-gradient(45deg, transparent 75%, var(--bg-chrome) 75%), linear-gradient(-45deg, transparent 75%, var(--bg-chrome) 75%);background-position:0 0,0 6px,6px -6px,-6px 0;background-size:12px 12px;max-width:100%;max-height:50vh;display:block}.preview__pdf{border:1px solid var(--bd-muted);border-radius:var(--r2);background:var(--bg-base);width:100%;height:70vh;display:block}.preview__acts{align-items:center;gap:var(--s2);padding:var(--s3) var(--s4);border-top:1px solid var(--bd-muted);flex-wrap:wrap;display:flex}.preview__acts .preview__note{border-top:none;flex:1 0 100%;padding:0}.tgroup__title{gap:var(--s2);min-width:0}.tgroup__id{font-family:var(--font-mono);font-size:var(--fs-micro);color:var(--ink-faint);background:var(--bg-active);border-radius:var(--r-sm);flex:none;padding:0 5px}.tgroup__kind{font-size:var(--fs-micro);color:var(--ink-muted);background:var(--bg-raise);border-radius:var(--r-sm);flex:none;padding:0 5px}.tgroup__cmd{min-width:0;font-family:var(--font-mono);font-size:var(--fs-data);color:var(--ink);text-overflow:ellipsis;white-space:nowrap;flex:1;font-weight:400;overflow:hidden}.tmeta{align-items:center;gap:var(--s1) var(--s2);margin:0 0 var(--s2);font-size:var(--fs-micro);font-variant-numeric:tabular-nums;color:var(--ink-faint);flex-wrap:wrap;display:flex}.tmeta>*+:before{content:"·";margin-right:var(--s2);color:var(--bd-muted)}.tmeta b{color:var(--ink-muted);font-weight:500}.tmeta b[data-state=running]{color:var(--success)}.tmeta b[data-state=failed]{color:var(--danger)}.tout{margin:0 0 var(--s2);padding:var(--s2) var(--s3);background:var(--bg-code);border-radius:var(--r-sm);font-family:var(--font-mono);font-size:var(--fs-micro);line-height:var(--lh-code);color:var(--ink-muted);white-space:pre;max-height:260px;overflow:auto}.input{box-sizing:border-box;height:var(--ctl-h);background:var(--ctl-bg);color:inherit;border:1px solid var(--ctl-bd);border-radius:var(--r);padding:0 var(--ctl-pad-x);font-size:var(--fs-sm);min-width:0;transition:border-color var(--dur-fast) var(--ease), background var(--dur-fast) var(--ease)}.input:hover:not(:disabled,:focus-visible){border-color:var(--ctl-bd-hover)}.input--mono{font-family:var(--font-mono);font-size:var(--fs-data)}.input--wide{flex:1;min-width:200px;max-width:420px}.input:focus-visible{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft);outline:none}.setwrite{gap:var(--s2);margin-top:var(--s2);padding:var(--s3);background:var(--bg-raise);border:1px solid var(--bd-muted);border-radius:var(--r);flex-basis:100%;display:grid}.setwrite__line{align-items:center;gap:var(--s2);flex-wrap:wrap;display:flex}.setwrite__label{font-size:var(--fs-data);color:var(--ink-muted)}.setwrite__value,.setwrite__layer,.setwrite__where{grid-template-columns:var(--w-form-label) minmax(0, 1fr);align-items:center;gap:var(--s2);display:grid}.setwrite__field{align-items:center;gap:var(--s2);min-width:0;display:flex}.setwrite__layer{justify-items:start}.setwrite__where{margin:0}.setwrite__dirty{padding:1px var(--s2);border:1px solid var(--warning);border-radius:var(--r-sm);color:var(--warning);font-size:var(--fs-eyebrow);white-space:nowrap}.setwrite__actions{gap:var(--s2);margin-left:auto;display:flex}.setwrite__blocked{gap:var(--s1);color:var(--warning);font-size:var(--fs-data);align-items:center;display:flex}.setwrite__foot{margin-top:var(--s1);padding-top:var(--s2);border-top:1px solid var(--bd-muted)}.setwrite__receipt{margin:var(--s2) 0 0;font-size:var(--fs-data);color:var(--ink-muted);gap:2px;line-height:1.65;display:grid}.setwrite__receipt code{font-family:var(--font-mono);overflow-wrap:anywhere;font-size:.9em}.setctx{gap:var(--s2);margin-top:var(--s3);display:grid}.setctx__line{font-size:var(--fs-sm);line-height:var(--lh-body);color:var(--ink)}.setctx__yaml{margin:var(--s2) 0 0;padding:var(--s2) var(--s3);background:var(--bg-code);border:1px solid var(--bd-muted);border-radius:var(--r);overflow-x:auto}.setctx__yaml code{font-family:var(--font-mono);font-size:var(--fs-data);line-height:var(--lh-code);color:var(--ink);white-space:pre}.setbudget{margin-top:var(--s4);padding-top:var(--s4);border-top:1px solid var(--bd-muted)}.setbudget__title{font-size:var(--fs-sm);color:var(--ink);margin:0;font-weight:600}.setbudget__rows{gap:var(--s2);grid-template-columns:minmax(0,auto) max-content minmax(3rem,1fr);margin:0;padding:0;list-style:none;display:grid}.setbudget__row{grid-column:1/-1;grid-template-columns:subgrid;font-size:var(--fs-micro);align-items:center;row-gap:2px;display:grid}.setbudget__label{color:var(--ink);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.setbudget__n{font-family:var(--font-mono);font-size:var(--fs-data);color:var(--ink-muted);text-align:end}.setbudget__bar{border-radius:var(--r-pill);background:var(--bd-muted);height:6px;display:block;overflow:hidden}.setbudget__bar i{border-radius:inherit;background:var(--ink-faint);height:100%;display:block}.setbudget__detail{color:var(--ink-faint);grid-column:1/-1}.setbudget__act{gap:var(--s1);margin-top:var(--s3);justify-items:start;display:grid}.setbudget__done{margin:var(--s2) 0 0;font-size:var(--fs-micro);color:var(--ink)}.settools{margin-top:var(--s3);flex-direction:column;gap:1px;display:flex}.settool,.settools__head{align-items:center;gap:var(--s3);padding:6px var(--s2);border-radius:var(--r-sm);font-size:var(--fs-data);grid-template-columns:144px 160px minmax(0,1fr) 196px 48px;display:grid}.settools__head{font-size:var(--fs-micro);color:var(--ink-faint)}.settool:hover{background:var(--bg-raise)}.settool__name,.settool__src,.settool__desc{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.settool__name{font-family:var(--font-mono)}.settool__src{font-family:var(--font-mono);font-size:var(--fs-micro);color:var(--ink-faint)}.settool__desc{color:var(--ink-muted)}.settool__gate{align-items:baseline;gap:var(--s2);min-width:0;font-size:var(--fs-micro);display:flex}.settool__verdict{font-family:var(--font-mono);white-space:nowrap}.settool__by{font-family:var(--font-mono);color:var(--ink-faint);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.settool__cond{margin:-3px 0 -3px -4px}.settool__calls,.settools__head>:nth-child(5){text-align:right}.settool__calls{font-family:var(--font-mono);font-size:var(--fs-micro);color:var(--ink-muted)}.settool[data-calls="0"] .settool__calls{color:var(--ink-faint)}.settool[data-verdict=deny] .settool__verdict{color:var(--danger)}.settool[data-verdict=ask] .settool__verdict{color:var(--warning)}.settool[data-verdict=allow] .settool__verdict{color:var(--success)}.settool[data-verdict=depends] .settool__verdict{color:var(--ink-muted)}.settool[data-verdict=none] .settool__verdict{color:var(--ink-faint)}@media (width<=1180px){.settool,.settools__head{grid-template-columns:minmax(0,1fr) 96px 176px 48px}.settool__desc,.settools__head>:nth-child(3){display:none}}.spend{gap:var(--s4);margin-top:var(--s3);display:grid}.spend__hero{gap:var(--s4) var(--s10);flex-wrap:wrap;align-items:flex-start;display:flex}.spend__stat{gap:2px;display:grid}.spend__stat-n{font-size:var(--fs-title);letter-spacing:var(--tracking-title);font-weight:600;line-height:var(--lh-tight);color:var(--ink);font-variant-numeric:tabular-nums}.spend__stat-k{align-items:center;gap:var(--s1);font-size:var(--fs-micro);color:var(--ink-faint);display:flex}.spend__line{font-size:var(--fs-sm);line-height:var(--lh-body);color:var(--ink)}.spend__rows{gap:var(--s2);max-width:var(--w-read);grid-template-columns:minmax(0,auto) max-content minmax(3rem,1fr);margin:0;padding:0;list-style:none;display:grid}.spend__row{grid-column:1/-1;grid-template-columns:subgrid;font-size:var(--fs-micro);align-items:center;row-gap:2px;display:grid}.spend__label{color:var(--ink);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.spend__n{font-family:var(--font-mono);font-size:var(--fs-data);color:var(--ink-muted);text-align:end}.spend__bar{border-radius:var(--r-pill);background:var(--bd-muted);height:6px;display:block;overflow:hidden}.spend__bar i{border-radius:inherit;background:var(--ink-faint);height:100%;display:block}.spend__row[data-tier=cheap] .spend__bar i{background:var(--success)}.spend__detail{color:var(--ink-faint);grid-column:1/-1}.spendturns{margin-top:var(--s3);flex-direction:column;display:flex}.spendturn,.spendturns__head{align-items:center;gap:2px var(--s3);padding:var(--s2);border-radius:var(--r-sm);font-size:var(--fs-data);grid-template-columns:64px minmax(0,1fr) 88px 96px;display:grid}.spendturns__head{font-size:var(--fs-micro);color:var(--ink-faint)}.spendturn+.spendturn{border-top:1px solid var(--bd-muted)}.spendturn:hover{background:var(--bg-raise)}.spendturn__tokens,.spendturn__usd,.spendturns__head>:nth-child(3),.spendturns__head>:nth-child(4){text-align:end}.spendturn__idx{font-size:var(--fs-micro);color:var(--ink-faint)}.spendturn__model{font-family:var(--font-mono);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.spendturn__tokens,.spendturn__usd{font-family:var(--font-mono);color:var(--ink-muted)}.spendturn__meta{font-size:var(--fs-micro);color:var(--ink-faint);grid-column:1/-1}.menu{z-index:var(--z-menu);min-width:216px;max-width:min(var(--w-menu-max), calc(100vw - var(--s4)));padding:var(--s1);overflow-wrap:anywhere;background:var(--bg-card);overscroll-behavior:contain;border:1px solid var(--bd-muted);border-radius:var(--r-lg);box-shadow:var(--shadow-pop);animation:pop-in var(--dur-fast) var(--ease-out);position:fixed;overflow-y:auto}.menu__item{align-items:center;gap:var(--s2);text-align:left;border-radius:var(--r);width:100%;padding:7px var(--s2);cursor:pointer;font-size:var(--fs-sm);color:var(--ink-muted);background:0 0;border:none;display:flex}.menu__item:hover{background:var(--bg-raise);color:var(--ink)}.menu__item:disabled{cursor:default;opacity:.45}.menu__item:disabled:hover{color:var(--ink-muted);background:0 0}.menu__item--tall{padding:var(--s2);align-items:flex-start}.menu:has(.menu__item--tall){min-width:264px}.menu__lines{flex-direction:column;gap:2px;min-width:0;display:flex}.menu__lines b{color:var(--ink);font-weight:500}.menu__lines i{font-style:normal;font-size:var(--fs-micro);color:var(--ink-faint);line-height:1.5}.menu__item[data-danger]{color:var(--danger)}.menu__item[data-danger]:hover{background:color-mix(in oklab, var(--danger) 12%, transparent);color:var(--danger)}.menu__item[data-unavailable] .menu__lines b{text-decoration:line-through}.menu__tick{visibility:hidden;color:var(--permission);opacity:1;flex:none;margin-top:2px}.menu__item[aria-checked=true] .menu__tick{visibility:visible}.menu__sep{height:1px;margin:var(--s1) 0;background:var(--bd-muted);border:none}.menu__search{align-items:center;gap:var(--s2);padding:6px var(--s2);border-radius:var(--r-sm);color:var(--ink-faint);display:flex}.menu__search:focus-within{box-shadow:0 0 0 2px var(--accent), 0 0 0 5px var(--accent-soft)}.menu__search input{min-width:0;font-size:var(--fs-sm);color:var(--ink);background:0 0;border:none;outline:none;flex:1}.menu__search input::placeholder{color:var(--ink-faint)}.menu__search input::-webkit-search-cancel-button{appearance:none}.menu__lock{gap:var(--s2);margin:var(--s1) 0 0;padding:var(--s2);border-top:1px solid var(--bd-muted);font-size:var(--fs-micro);color:var(--ink-faint);grid-template-columns:auto minmax(0,1fr);line-height:1.6;display:grid}.menu__lock .i{margin-top:2px}.menu__lock[data-tone=warn] .i{color:var(--warning)}.menu__lock p{margin:0}.menu__lock p+p{margin-top:var(--s1)}.tip__btn{border-radius:var(--r-sm);width:22px;height:22px;color:var(--ink-faint);cursor:help;transition:color var(--dur-fast) var(--ease), background var(--dur-fast) var(--ease);background:0 0;border:none;flex:none;justify-content:center;align-items:center;padding:0;display:inline-flex}.tip__btn .i{width:14px;height:14px}.tip__btn:hover,.tip__btn[aria-expanded=true]{background:var(--bg-raise);color:var(--ink)}.tip__pop{z-index:var(--z-menu);max-width:300px;padding:var(--s2) var(--s3);border-radius:var(--r);background:var(--bg-card);box-shadow:var(--shadow-pop);color:var(--ink-muted);font-size:var(--fs-data);pointer-events:none;overflow-wrap:anywhere;line-height:1.55;position:fixed}.dirpick{flex-direction:column;display:flex}.dirpick__bar{align-items:center;gap:var(--s2);padding:var(--s2) var(--s3);border-bottom:1px solid var(--bd-muted);display:flex}.dirpick__back{align-items:center;gap:var(--s1);color:var(--ink-faint);font-size:var(--fs-micro);cursor:pointer;background:0 0;border:0;flex:none;padding:0;display:inline-flex}.dirpick__back:hover,.dirpick__back:focus-visible{color:var(--ink)}.dirpick__where{color:var(--ink-faint);font-family:var(--font-mono);font-size:var(--fs-micro);text-align:left;text-overflow:ellipsis;white-space:nowrap;direction:rtl;flex:1;overflow:hidden}.dirpick__here{align-items:center;gap:var(--s1);padding:2px var(--s2);border:1px solid var(--bd-muted);border-radius:var(--r-sm);color:var(--ink-muted);font-size:var(--fs-micro);white-space:nowrap;cursor:pointer;background:0 0;flex:none;display:inline-flex}.dirpick__here:hover,.dirpick__here:focus-visible{border-color:var(--bd-strong);color:var(--ink)}.dirpick__here:disabled{cursor:default;opacity:.55}.dirpick__row{align-items:stretch;display:flex}.dirpick__pick{align-items:center;gap:var(--s2);padding:var(--s2) var(--s3);color:inherit;font-size:var(--fs-body);text-align:left;cursor:pointer;background:0 0;border:0;flex:1;display:flex;overflow:hidden}.dirpick__name{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.dirpick__tag{padding:0 var(--s1);border-radius:var(--r-sm);background:var(--bg-raise);color:var(--ink-faint);font-size:var(--fs-eyebrow);flex:none}.dirpick__use{padding:0 var(--s3);color:var(--ink-faint);cursor:pointer;background:0 0;border:0;flex:none;align-items:center;display:flex}.dirpick__pick:hover,.dirpick__use:hover,.dirpick__pick:focus-visible,.dirpick__use:focus-visible{background:var(--bg-raise)}.dirpick__pick:disabled,.dirpick__use:disabled{cursor:default}.dirpick__row[data-unreadable] .dirpick__pick,.dirpick__row[data-unreadable] .dirpick__use{color:var(--ink-faint);opacity:.55}.dirpick__row[data-unreadable] .dirpick__pick:hover,.dirpick__row[data-unreadable] .dirpick__use:hover{background:0 0}.dirpick__hidden{align-items:center;gap:var(--s2);padding:var(--s2) var(--s3);border-bottom:1px solid var(--bd-muted);color:var(--ink-faint);font-size:var(--fs-micro);cursor:pointer;display:flex}.dirpick__hidden:hover{color:var(--ink)}.dirpick__manual{gap:var(--s1);padding:var(--s2) var(--s3) var(--s3);flex-direction:column;display:flex}.dirpick__label{color:var(--ink-faint);font-size:var(--fs-micro)}.dirpick__entry{gap:var(--s2);display:flex}.dirpick__entry .input{min-width:0;font-family:var(--font-mono);font-size:var(--fs-micro);flex:1;overflow:hidden}.dirpick__note{margin:var(--s1) 0 0;color:var(--ink-faint);font-size:var(--fs-eyebrow);line-height:1.5}.mpick{gap:var(--s2);flex-direction:column;display:flex;container:mpick/inline-size}.mpick__row{grid-template-columns:var(--w-form-label) minmax(0, 1fr);align-items:center;gap:var(--s2);display:grid}.mpick__label{font-size:var(--fs-micro);color:var(--ink-faint);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.mpick__ctl{align-items:center;gap:var(--s2);min-width:0;display:flex}.mpick__sel{flex:1;min-width:0}.mpick__redo{flex:none}.mpick__key{box-sizing:border-box;min-width:0;height:var(--ctl-h);background:var(--ctl-bg);color:inherit;border:1px solid var(--ctl-bd);border-radius:var(--r);padding:0 var(--ctl-pad-x);font-family:var(--font-mono);font-size:var(--fs-data);transition:border-color var(--dur-fast) var(--ease);flex:1}.mpick__key:hover:not(:focus-visible){border-color:var(--ctl-bd-hover)}.mpick__key:focus-visible{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft);outline:none}.mpick__keynote{margin:0 0 0 calc(var(--w-form-label) + var(--s2));font-size:var(--fs-micro);line-height:var(--lh-body);color:var(--ink-faint);overflow-wrap:anywhere}.mpick__ctl--combo{position:relative}.mpick__combo{box-sizing:border-box;min-width:0;height:var(--ctl-h);background:var(--ctl-bg);border:1px solid var(--ctl-bd);border-radius:var(--r);transition:border-color var(--dur-fast) var(--ease);flex:1;align-items:center;display:flex}.mpick__combo:hover:not(:focus-within){border-color:var(--ctl-bd-hover)}.mpick__input{min-width:0;color:inherit;padding:0 var(--ctl-pad-x);font-family:var(--font-mono);font-size:var(--fs-data);background:0 0;border:none;flex:1;align-self:stretch}.mpick__input:focus{outline:none}.mpick__combo:focus-within{box-shadow:0 0 0 2px var(--accent), 0 0 0 5px var(--accent-soft)}.mpick__caret{color:var(--ink-faint);padding:0 var(--s2);cursor:pointer;background:0 0;border:none;flex:none;align-items:center;display:flex}.mpick__caret:hover:not(:disabled){color:var(--ink)}.mpick__caret:disabled{opacity:.5;cursor:default}.mpick__pop{z-index:var(--z-menu);background:var(--bg-card);border:1px solid var(--bd-base);border-radius:var(--r);min-height:0;box-shadow:var(--shadow-pop);flex-direction:column;display:flex;position:fixed;overflow:hidden}.mpick__list{min-height:0;padding:var(--s1);overscroll-behavior:contain;flex-direction:column;flex:0 auto;max-height:168px;margin:0;list-style:none;display:flex;overflow-y:auto}.mpick__opt{border-radius:var(--r-sm);padding:4px var(--s2);font-family:var(--font-mono);font-size:var(--fs-data);cursor:pointer;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.mpick__opt[data-active]{background:var(--bg-active)}.mpick__note{padding:var(--s2);border-top:1px solid var(--bd-muted);font-size:var(--fs-micro);color:var(--ink-faint);line-height:var(--lh-body);margin:0}.mpick__say{align-items:flex-start;gap:var(--s2);padding:var(--s2);border-radius:var(--r-sm);font-size:var(--fs-micro);line-height:var(--lh-body);color:var(--ink-muted);background:color-mix(in oklab, var(--ink-faint) 8%, transparent);overflow-wrap:anywhere;margin:0;display:flex}.mpick__say[data-tone=warn]{color:var(--ink);background:color-mix(in oklab, var(--warning) 14%, transparent)}.mpick__say .i{flex:none;margin-top:2px}.mpick__go{margin-left:var(--s2);vertical-align:middle;flex:none}@container mpick (width<=420px){.mpick__row{grid-template-columns:minmax(0,1fr);align-items:stretch;gap:2px}.mpick__keynote{margin-left:0}}.blank{max-width:62ch;padding:var(--s12) 0;margin:0 auto}.blank__title{letter-spacing:var(--tracking-title);margin:0;font-size:26px;font-weight:600;line-height:1.25}.blank__eyebrow{margin:0 0 var(--s2);font-size:var(--fs-eyebrow);color:var(--ink-faint);font-weight:600}.blank__lede{margin:var(--s3) 0 0;font-size:var(--fs-sm);color:var(--ink-muted);line-height:1.5}.blank__cards{gap:var(--s3);margin:var(--s6) 0 0;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));padding:0;list-style:none;display:grid}.blankcard{gap:var(--s1);width:100%;height:100%;padding:var(--s4);text-align:left;cursor:pointer;background:var(--bg-card);border:1px solid var(--bd-base);border-radius:var(--r-lg);box-shadow:var(--shadow-card);transition:background var(--dur-fast) var(--ease), border-color var(--dur-fast) var(--ease);flex-direction:column;display:flex}.blankcard__head{gap:var(--s2);align-items:center;display:flex}.blankcard__title{font-weight:600}.blankcard:hover{background:var(--bg-raise);border-color:var(--bd-strong)}.blankcard svg{flex-shrink:0}.blankcard[data-hue="1"] svg{color:var(--hue-1)}.blankcard[data-hue="2"] svg{color:var(--hue-2)}.blankcard[data-hue="3"] svg{color:var(--hue-3)}.blankcard[data-hue="4"] svg{color:var(--hue-4)}.blankcard[data-hue="5"] svg{color:var(--hue-5)}.blankcard[data-hue="6"] svg{color:var(--hue-6)}.blankcard__sub{color:var(--ink-muted);font-size:12px;line-height:1.4}.app[data-view=diff]{--w-navcol:264px}.navcol__sign[data-status=added]{color:var(--add)}.navcol__sign[data-status=deleted]{color:var(--del)}.wsdiff__path{align-items:baseline;min-width:0;display:flex}.wsdiff__dir{text-overflow:ellipsis;white-space:nowrap;min-width:0;color:var(--ink-faint);overflow:hidden}.wsdiff__name{color:inherit;flex-shrink:0}.wsdiff__title{min-width:0;overflow:hidden}.wsdiff__root{gap:var(--s1);text-overflow:ellipsis;white-space:nowrap;min-width:0;color:var(--ink-faint);font-family:var(--font-mono);font-size:var(--fs-micro);align-items:center;display:inline-flex;overflow:hidden}.wsdiff__reload{flex-shrink:0;margin-left:auto}.wsdiff__inner{gap:var(--s4);padding:var(--s5) var(--s5) var(--s12);flex-direction:column;display:flex}@media (width<=760px){.app[data-view=diff]{grid-template-rows:auto minmax(0,1fr)}.app[data-view=diff] .navcol{border-right:none;border-bottom:1px solid var(--bd-muted);grid-template-rows:auto minmax(0,40vh);display:grid}}.auto__pane{gap:var(--s4);max-width:920px;padding:var(--s6) var(--s6) var(--s12);align-content:start;display:grid}.auto__toolbar{justify-content:flex-end;display:flex}.auto__empty-state{gap:var(--s2);max-width:var(--w-read);padding:var(--s12) var(--s4);text-align:center;justify-items:center;margin:0 auto;display:grid}.auto__empty{color:var(--ink);font-size:var(--fs-lg);letter-spacing:var(--tracking-lg)}.auto__hint{color:var(--ink-muted);font-size:var(--fs-sm)}.auto__tpl-title{margin:var(--s4) 0 0;color:var(--ink-muted);font-size:var(--fs-sm);font-weight:500}.auto__tpl{gap:var(--s2);text-align:start;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));width:100%;margin:0;padding:0;list-style:none;display:grid}.tplcard{gap:var(--s1);padding:var(--s3);border:1px solid var(--bd-muted);border-radius:var(--r-lg);background:var(--bg-card);grid-template-rows:auto 1fr auto auto;display:grid}.tplcard__name{color:var(--ink);font-size:var(--fs-sm);font-weight:500}.tplcard__desc{color:var(--ink-muted);font-size:var(--fs-data);line-height:1.5}.tplcard__facts{gap:var(--s2);margin-bottom:var(--s1);color:var(--ink-faint);font-size:var(--fs-micro);flex-wrap:wrap;display:flex}.tplcard__perm{padding:1px var(--s2);border:1px solid var(--bd-base);border-radius:var(--r-pill)}.auto__tasks{gap:var(--s3);display:grid}.auto__list,.auto__runs{gap:var(--s2);margin:0;padding:0;list-style:none;display:grid}.task{align-items:start;gap:var(--s1) var(--s4);padding:var(--s3) var(--s4);border:1px solid var(--bd-muted);border-radius:var(--r-lg);background:var(--bg-card);transition:background var(--dur-fast) var(--ease);grid-template-columns:minmax(0,1fr) auto;display:grid}.task:hover{background:color-mix(in oklab, var(--bg-card) 92%, var(--ink))}.task:not([data-enabled]){opacity:.55}.task[data-danger]{border-color:color-mix(in oklab, var(--danger) 32%, var(--bd-base))}.task__main{gap:var(--s2);align-items:baseline;display:flex}.task__name{min-width:0;color:var(--ink);text-overflow:ellipsis;white-space:nowrap;flex:1;font-weight:590;overflow:hidden}.task__perm,.task__host{border-radius:var(--r-pill);background:var(--bg-active);color:var(--ink-muted);font-size:var(--fs-micro);padding:1px 7px}.task__perm[data-danger]{background:color-mix(in oklab, var(--danger) 14%, transparent);color:color-mix(in oklab, var(--danger) 78%, var(--ink))}.task__facts{gap:var(--s3);color:var(--ink-muted);font-size:var(--fs-data);font-variant-numeric:tabular-nums;flex-wrap:wrap;display:flex}.task__trigger{color:var(--ink)}.task__next{font-family:var(--font-mono);font-variant-numeric:tabular-nums}.task__last [data-tone=ok]{color:var(--success)}.task__last [data-tone=warn]{color:var(--warning)}.task__last [data-tone=error]{color:var(--danger)}.task__acts{grid-area:1/2/span 2;align-self:center;gap:2px;display:flex}@media (width<=760px){.task{grid-template-columns:minmax(0,1fr)}.task__acts{margin-top:var(--s1);flex-wrap:wrap;grid-area:auto/1}}.run{gap:var(--s1);padding:var(--s2) var(--s4);border:1px solid var(--bd-muted);border-left:2px solid var(--bd-base);border-radius:var(--r-lg);background:var(--bg-card);display:grid}.run[data-tone=ok]{border-left-color:var(--success)}.run[data-tone=warn]{border-left-color:var(--warning)}.run[data-tone=error]{border-left-color:var(--danger)}.run__head{gap:var(--s2);font-size:var(--fs-data);flex-wrap:wrap;align-items:baseline;display:flex}.run__sign{color:var(--bd-strong);align-self:center;display:inline-flex}.run[data-tone=ok] .run__sign{color:var(--success)}.run[data-tone=warn] .run__sign{color:var(--warning)}.run[data-tone=error] .run__sign{color:var(--danger)}.run__name{color:var(--ink);font-weight:590}.run__status,.run__manual,.run__at,.run__meta{color:var(--ink-muted);font-variant-numeric:tabular-nums}.run__toggle{margin-left:auto}.run__reason{color:var(--ink-muted);font-family:var(--font-mono);font-size:var(--fs-data);overflow-wrap:anywhere}.run__pending{gap:var(--s1);margin-top:var(--s1);padding:var(--s2) var(--s3);border:1px solid color-mix(in oklab, var(--warning) 32%, var(--bd-base));border-radius:var(--r);background:color-mix(in oklab, var(--warning) 8%, transparent);display:grid}.run__pending-head{color:var(--ink);font-size:var(--fs-data);font-weight:590}.run__pending-list{gap:var(--s1);font-size:var(--fs-data);margin:0;padding:0;list-style:none;display:grid}.run__rule{margin-left:var(--s2);color:var(--ink-muted);font-family:var(--font-mono)}.run__rule[data-muted]{font-family:inherit;font-style:italic}.run__fixed{color:var(--success);font-size:var(--fs-data)}.auto__replay{max-height:60vh;margin-top:var(--s1);padding:var(--s2) 0;border-top:1px solid var(--bd-muted);overflow-y:auto}.auto__running{gap:var(--s2);padding:var(--s3) var(--s4);border:1px solid var(--bd-base);border-radius:var(--r-lg);background:var(--bg-raise);display:grid}.auto__running-head{gap:var(--s2);color:var(--ink);font-size:var(--fs-sm);align-items:center;font-weight:590;display:flex}.auto__running-dur{color:var(--ink-muted);font-variant-numeric:tabular-nums;font-weight:400;font-family:var(--font-mono)}.auto__spin{border-radius:var(--r-pill);border:1.5px solid var(--bd-strong);border-top-color:var(--ink-muted);flex:none;width:11px;height:11px;animation:.7s linear infinite spin}.auto__lastrun{gap:var(--s2);padding:var(--s3) var(--s4);border:1px solid color-mix(in oklab, var(--info) 30%, var(--bd-base));border-radius:var(--r-lg);background:color-mix(in oklab, var(--info) 7%, transparent);display:grid}.auto__lastrun-head{gap:var(--s2);color:var(--ink);font-size:var(--fs-sm);justify-content:space-between;align-items:baseline;font-weight:590;display:flex}.autoform{gap:var(--s4);max-width:var(--w-read);grid-template-columns:minmax(0,1fr);align-content:start;display:grid}.autoform__title{font-size:var(--fs-lg);letter-spacing:var(--tracking-lg);margin:0}.autoform label,.autoform__field{gap:var(--s1);grid-template-columns:minmax(0,1fr);display:grid}.autoform label>input[type=text],.autoform label>input[type=number],.autoform label>input[type=date],.autoform label>input[type=time],.autoform label>select,.autoform__field>input[type=text],.autoform__pick{box-sizing:border-box;height:var(--ctl-h);padding:0 var(--ctl-pad-x);border:1px solid var(--ctl-bd);border-radius:var(--r);background-color:var(--ctl-bg);color:var(--ink);font:inherit;font-size:var(--fs-sm);transition:border-color var(--dur-fast) var(--ease), background-color var(--dur-fast) var(--ease)}.autoform label>textarea{box-sizing:border-box;padding:var(--s2) var(--ctl-pad-x);border:1px solid var(--ctl-bd);border-radius:var(--r);background:var(--ctl-bg);color:var(--ink);font:inherit;font-size:var(--fs-sm);transition:border-color var(--dur-fast) var(--ease)}.autoform label>input:hover:not(:disabled,:focus-visible),.autoform label>select:hover:not(:disabled,:focus-visible),.autoform label>textarea:hover:not(:disabled,:focus-visible),.autoform__field>input:hover:not(:disabled,:focus-visible),.autoform__pick:hover:not(:disabled){border-color:var(--ctl-bd-hover)}.autoform label>input:disabled,.autoform label>select:disabled,.autoform label>textarea:disabled,.autoform__field>input:disabled{opacity:.55;cursor:default}.autoform__pick{gap:var(--s2);cursor:pointer;text-align:left;align-items:center;width:100%;display:flex}.autoform__pick[disabled]{cursor:default;opacity:.55}.autoform__pickval{white-space:nowrap;text-align:left;text-overflow:ellipsis;direction:rtl;flex:1;min-width:0;overflow:hidden}.autoform__pickval[data-empty]{color:var(--ink-faint)}.autoform label>input:focus-visible,.autoform label>select:focus-visible,.autoform label>textarea:focus-visible,.autoform__field>input:focus-visible,.autoform__pick:focus-visible{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent), 0 0 0 4px var(--accent-soft);outline:none}.autoform textarea{font-family:var(--font-mono);font-size:var(--fs-data);resize:vertical}.autoform__row{gap:var(--s3);flex-wrap:wrap;align-items:start;display:flex}.autoform__row>label{flex:160px}.autoform__trigger,.autoform__allow{gap:var(--s2);padding:var(--s3);border:1px solid var(--bd-muted);border-radius:var(--r-lg);background:var(--bg-raise);margin:0;display:grid}.autoform__allow[data-off]>label{opacity:.5}.autoform__allow[data-off]>label input:disabled,.autoform__allow[data-off]>label select:disabled,.autoform__allow[data-off]>label textarea:disabled{opacity:1}.autoform__days,.autoform__months{gap:var(--s1);border:0;margin:0;padding:0;display:grid}.autoform__days{gap:var(--s2);flex-wrap:wrap;align-items:center;display:flex}.autoform__chk,.autoform__ack{gap:var(--s2);font-size:var(--fs-data);align-items:center;display:flex!important}.autoform__ops{gap:var(--s2);flex-wrap:wrap;display:flex}.autoform__ack{padding:var(--s2) var(--s3);border:1px solid color-mix(in oklab, var(--danger) 32%, var(--bd-base));border-radius:var(--r);background:color-mix(in oklab, var(--danger) 8%, transparent)}.autoform__err{color:var(--danger);font-size:var(--fs-data)}.autoform__foot{gap:var(--s2);padding-top:var(--s3);border-top:1px solid var(--bd-muted);flex-wrap:wrap;align-items:center;display:flex}.autoform__blocked{gap:var(--s1);color:var(--warning);font-size:var(--fs-data);align-items:center;display:flex}.fgroup{padding:0 var(--s4) var(--s4);background:var(--bg-card);border:1px solid var(--bd-muted);border-radius:var(--r-lg);box-shadow:var(--shadow-card);grid-template-columns:minmax(0,1fr);display:grid}.fgroup__title{padding:var(--s3) 0;font-size:var(--fs-sm);color:var(--ink);margin:0;font-weight:600}.fgroup__note{margin:0 0 var(--s3);padding-bottom:var(--s3);border-bottom:1px solid var(--bd-muted);color:var(--ink-faint);font-size:var(--fs-data);line-height:var(--lh-tight,1.45)}.fgroup__title:not(:has(+.fgroup__note)){padding-bottom:var(--s3);margin-bottom:var(--s3);border-bottom:1px solid var(--bd-muted)}.fgroup__body{gap:var(--s4);grid-template-columns:minmax(0,1fr);display:grid}.fgroup[data-tone=warn]{border-color:color-mix(in oklab, var(--warning) 38%, var(--bd-muted));background:color-mix(in oklab, var(--warning) 4%, var(--bg-card))}.fgroup[data-tone=warn] .fgroup__title{color:var(--warning)}.fgroup[data-tone=warn] .fgroup__note{border-bottom-color:color-mix(in oklab, var(--warning) 24%, var(--bd-muted))}.fgroup{--fs-hint:var(--fs-micro)}.goal__phase{align-items:center;gap:var(--s2);margin:0 0 var(--s2);font-size:var(--fs-sm);color:var(--ink);font-weight:500;display:flex}.goal__sign{color:var(--ink-muted);flex:none;display:flex}.goal__phase[data-tone=warn],.goal__phase[data-tone=warn] .goal__sign{color:var(--warning)}.goal__phase[data-tone=done],.goal__phase[data-tone=done] .goal__sign{color:var(--success)}.goal__rounds{font-family:var(--font-mono);font-size:var(--fs-micro);font-variant-numeric:tabular-nums;color:var(--ink-faint);cursor:help;flex:none;margin-inline-start:auto}.goal__objective{margin:0 0 var(--s3);font-size:var(--fs);color:var(--ink);white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.6}.goal__block{gap:var(--s1);margin:0 0 var(--s3);padding:var(--s2) var(--s3);background:var(--bg-card);border-inline-start:2px solid var(--warning);border-radius:var(--r-sm);font-size:var(--fs-sm);color:var(--ink);overflow-wrap:anywhere;flex-direction:column;line-height:1.55;display:flex}.goal__code{font-family:var(--font-mono);font-size:var(--fs-micro);color:var(--warning);background:var(--bg-active);border-radius:var(--r-sm);align-self:flex-start;padding:0 5px}.goal__evidence{gap:var(--s1);margin:0 0 var(--s3);padding:var(--s2) var(--s3);background:var(--bg-card);border-inline-start:2px solid var(--success);border-radius:var(--r-sm);font-size:var(--fs-sm);color:var(--ink);overflow-wrap:anywhere;flex-direction:column;line-height:1.55;display:flex}.goal__label{font-size:var(--fs-micro);color:var(--ink-faint)}.goal__acts{gap:var(--s2);margin:var(--s2) 0 0;flex-wrap:wrap;display:flex}.goal__form{gap:var(--s2);margin-top:var(--s3);padding-top:var(--s3);border-top:1px solid var(--bd-muted);flex-direction:column;display:flex}.goal__field{gap:var(--s1);flex-direction:column;display:flex}.goal__field--inline{flex-flow:wrap;align-items:center}.goal__text,.goal__num{padding:6px var(--s2);font:inherit;font-size:var(--fs-sm);color:var(--ink);background:var(--ctl-bg);border:1px solid var(--ctl-bd);border-radius:var(--r);transition:border-color var(--dur-fast) var(--ease), background var(--dur-fast) var(--ease);line-height:1.55}.goal__text:hover:not(:disabled,:focus-visible),.goal__num:hover:not(:disabled,:focus-visible){border-color:var(--ctl-bd-hover)}.goal__text{box-sizing:border-box;resize:vertical;width:100%}.goal__num{width:7ch;height:var(--ctl-h-sm);box-sizing:border-box;padding:0 var(--s2);font-variant-numeric:tabular-nums}.goal__text:focus-visible,.goal__num:focus-visible{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent), 0 0 0 4px var(--accent-soft);outline:none}.goal__text:disabled,.goal__num:disabled{opacity:.6;cursor:progress}.goal__hint{min-width:0;font-size:var(--fs-micro);color:var(--ink-faint);flex:auto}.i{fill:none;stroke:currentColor;stroke-width:1.5px;stroke-linecap:square;stroke-linejoin:miter;vertical-align:-3px;flex:none;width:16px;height:16px}.i--sm{stroke-width:1.7px;width:14px;height:14px}.i--lg{stroke-width:1.4px;width:18px;height:18px}details>summary:has(>.i){align-items:center;gap:var(--s2);list-style:none;display:flex}details>summary:has(>.i)::-webkit-details-marker{display:none}details>summary>.i{transition:rotate var(--dur-fast) var(--ease)}details[open]>summary>.i{rotate:90deg}.diag__sign,.banner__sign,.navcol__sign{justify-content:center;align-items:center;font-family:inherit;display:inline-flex}.diag__sign,.banner__sign{align-self:start;margin-top:3px}kbd{border-radius:var(--r-sm);background:var(--bg-active);min-width:18px;height:18px;font-family:var(--font-sans);letter-spacing:.07em;text-indent:.07em;color:var(--ink-muted);flex:none;justify-content:center;align-items:center;padding:0 6px;font-size:11.5px;font-weight:500;line-height:1;display:inline-flex}kbd .i{stroke-width:1.8px;vertical-align:0;width:12px;height:12px}.btn--primary kbd{background:color-mix(in oklab, var(--ink-inverse) 12%, transparent);color:color-mix(in oklab, var(--ink-inverse) 62%, transparent)}.btn--danger kbd{background:color-mix(in oklab, var(--danger) 14%, transparent);color:color-mix(in oklab, var(--danger) 75%, var(--ink-muted))}