termbeam 1.22.4 → 1.23.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.
Files changed (67) hide show
  1. package/CHANGELOG.md +11 -0
  2. package/README.md +4 -2
  3. package/package.json +2 -2
  4. package/public/assets/{_basePickBy-Q45O29Rp.js → _basePickBy-DyywFBt7.js} +1 -1
  5. package/public/assets/{_baseUniq-DveOFRWk.js → _baseUniq-8tmjrEbB.js} +1 -1
  6. package/public/assets/{arc-BxuxWgHK.js → arc-CHQhvBsi.js} +1 -1
  7. package/public/assets/{architectureDiagram-Q4EWVU46-ByQ5j_Jw.js → architectureDiagram-Q4EWVU46-MEcrgEqw.js} +1 -1
  8. package/public/assets/{blockDiagram-DXYQGD6D-DrElm25z.js → blockDiagram-DXYQGD6D-EtZXyKmn.js} +1 -1
  9. package/public/assets/{c4Diagram-AHTNJAMY-BATf25U2.js → c4Diagram-AHTNJAMY-BuvkD-Hg.js} +1 -1
  10. package/public/assets/channel-a7jr0in8.js +1 -0
  11. package/public/assets/{chunk-4BX2VUAB-BksLrXVs.js → chunk-4BX2VUAB-m4pupC7U.js} +1 -1
  12. package/public/assets/{chunk-4TB4RGXK-D5KX6fMH.js → chunk-4TB4RGXK-C-BdMhbz.js} +1 -1
  13. package/public/assets/{chunk-55IACEB6-DLtS129C.js → chunk-55IACEB6-BhvwRyIq.js} +1 -1
  14. package/public/assets/{chunk-EDXVE4YY-CtqMCguR.js → chunk-EDXVE4YY-BqButrNC.js} +1 -1
  15. package/public/assets/{chunk-FMBD7UC4-BkeSsxqP.js → chunk-FMBD7UC4-54Zrs_SG.js} +1 -1
  16. package/public/assets/{chunk-OYMX7WX6-Dl4p17KI.js → chunk-OYMX7WX6-Zxqgp5PC.js} +1 -1
  17. package/public/assets/{chunk-QZHKN3VN-CBMUqRwi.js → chunk-QZHKN3VN-BOkHXJLa.js} +1 -1
  18. package/public/assets/{chunk-YZCP3GAM-D4sWv3YN.js → chunk-YZCP3GAM-BFo64bhH.js} +1 -1
  19. package/public/assets/classDiagram-6PBFFD2Q-DHBlyv18.js +1 -0
  20. package/public/assets/classDiagram-v2-HSJHXN6E-DHBlyv18.js +1 -0
  21. package/public/assets/clone-D-YD4Hfu.js +1 -0
  22. package/public/assets/{cose-bilkent-S5V4N54A-BW1nNLLk.js → cose-bilkent-S5V4N54A-CdRKoWQm.js} +1 -1
  23. package/public/assets/{dagre-KV5264BT-CDXKs5yo.js → dagre-KV5264BT-CqYqJqNz.js} +1 -1
  24. package/public/assets/{diagram-5BDNPKRD-DfSZsVAD.js → diagram-5BDNPKRD-KXbdPm8R.js} +1 -1
  25. package/public/assets/{diagram-G4DWMVQ6-CIKqapDb.js → diagram-G4DWMVQ6-BjcXJ3-Q.js} +1 -1
  26. package/public/assets/{diagram-MMDJMWI5-CWwOGFbE.js → diagram-MMDJMWI5-Da91D4Jv.js} +1 -1
  27. package/public/assets/{diagram-TYMM5635-CAMd8OZP.js → diagram-TYMM5635-CilekWFu.js} +1 -1
  28. package/public/assets/{erDiagram-SMLLAGMA-BCpXZJei.js → erDiagram-SMLLAGMA-COlP9qIO.js} +1 -1
  29. package/public/assets/{flowDiagram-DWJPFMVM-DpRY38iu.js → flowDiagram-DWJPFMVM-BebPntFK.js} +1 -1
  30. package/public/assets/{ganttDiagram-T4ZO3ILL-DJrwFHlO.js → ganttDiagram-T4ZO3ILL-C-JweidK.js} +1 -1
  31. package/public/assets/{gitGraphDiagram-UUTBAWPF-CpEmQcDN.js → gitGraphDiagram-UUTBAWPF-CmtVcokM.js} +1 -1
  32. package/public/assets/{graph-C-meUi4Z.js → graph-DGYmOqb_.js} +1 -1
  33. package/public/assets/index-Bap8dJMF.js +463 -0
  34. package/public/assets/index-CTMMjkRB.css +32 -0
  35. package/public/assets/{infoDiagram-42DDH7IO-sXN9f7L8.js → infoDiagram-42DDH7IO-JWuRQxiM.js} +1 -1
  36. package/public/assets/{ishikawaDiagram-UXIWVN3A-D_2gGEMI.js → ishikawaDiagram-UXIWVN3A-Buhn0bpg.js} +1 -1
  37. package/public/assets/{journeyDiagram-VCZTEJTY-CUv-hh0I.js → journeyDiagram-VCZTEJTY-CKm_djiT.js} +1 -1
  38. package/public/assets/{kanban-definition-6JOO6SKY-Cx3Plwl2.js → kanban-definition-6JOO6SKY-C_Sj08cN.js} +1 -1
  39. package/public/assets/{layout-CpGcFwHw.js → layout-BQRZ4_Il.js} +1 -1
  40. package/public/assets/{linear-Bw9XpXJW.js → linear-wWmlfvSH.js} +1 -1
  41. package/public/assets/{mindmap-definition-QFDTVHPH-Swj4jh3Z.js → mindmap-definition-QFDTVHPH-CwCTVEhc.js} +1 -1
  42. package/public/assets/{pieDiagram-DEJITSTG-Ck2h10zd.js → pieDiagram-DEJITSTG-C6ng_7H-.js} +1 -1
  43. package/public/assets/{quadrantDiagram-34T5L4WZ-B1ZrruGm.js → quadrantDiagram-34T5L4WZ-tAb9lK_2.js} +1 -1
  44. package/public/assets/{requirementDiagram-MS252O5E-B8JKwgDX.js → requirementDiagram-MS252O5E-DO7a12OA.js} +1 -1
  45. package/public/assets/{sankeyDiagram-XADWPNL6-b442XRH8.js → sankeyDiagram-XADWPNL6-DjRA6Gx_.js} +1 -1
  46. package/public/assets/{sequenceDiagram-FGHM5R23-DY9IFA-F.js → sequenceDiagram-FGHM5R23-DmTXUCCq.js} +1 -1
  47. package/public/assets/{stateDiagram-FHFEXIEX-IGjwW9Pw.js → stateDiagram-FHFEXIEX-cpBtM_eo.js} +1 -1
  48. package/public/assets/stateDiagram-v2-QKLJ7IA2-xe4-E4yV.js +1 -0
  49. package/public/assets/{timeline-definition-GMOUNBTQ-B0JwGAT7.js → timeline-definition-GMOUNBTQ-BOPg9ppv.js} +1 -1
  50. package/public/assets/{vennDiagram-DHZGUBPP-DKLiidvh.js → vennDiagram-DHZGUBPP-C1wYmABu.js} +1 -1
  51. package/public/assets/{wardley-RL74JXVD-C1HnYfXI.js → wardley-RL74JXVD-BsEwEn5-.js} +1 -1
  52. package/public/assets/{wardleyDiagram-NUSXRM2D-BhbO6L2Q.js → wardleyDiagram-NUSXRM2D-Dt0kKYbS.js} +1 -1
  53. package/public/assets/{xychartDiagram-5P7HB3ND-CSZSmQ9N.js → xychartDiagram-5P7HB3ND-CqzYOgsH.js} +1 -1
  54. package/public/index.html +2 -2
  55. package/public/sw.js +1 -1
  56. package/src/server/index.js +107 -9
  57. package/src/server/preferences.js +280 -0
  58. package/src/server/routes.js +10 -1
  59. package/src/server/sessions.js +73 -6
  60. package/src/server/websocket.js +43 -22
  61. package/public/assets/channel-RrT8pJmM.js +0 -1
  62. package/public/assets/classDiagram-6PBFFD2Q-BaJ5lA7J.js +0 -1
  63. package/public/assets/classDiagram-v2-HSJHXN6E-BaJ5lA7J.js +0 -1
  64. package/public/assets/clone-BFbWnZ1G.js +0 -1
  65. package/public/assets/index-CK9vCujh.css +0 -32
  66. package/public/assets/index-Do67tk4s.js +0 -463
  67. package/public/assets/stateDiagram-v2-QKLJ7IA2-2xQCbec6.js +0 -1
@@ -170,6 +170,18 @@ class SessionManager {
170
170
  log.warn(`Invalid initialCommand rejected: ${typeof initialCommand}`);
171
171
  throw new Error('initialCommand must be a string');
172
172
  }
173
+ // Defense-in-depth length cap on initialCommand. The command is written
174
+ // verbatim to the user's own PTY's stdin (which the shell then
175
+ // interprets) — this is BY DESIGN, since `initialCommand` is the
176
+ // documented way for an authenticated session owner to script their own
177
+ // shell on launch (see /api/sessions and Workspaces in
178
+ // packages/site/.../configuration.md). The cap mitigates pathological
179
+ // inputs (megabyte-scale strings, infinite-loop chunks). 8 KiB easily
180
+ // covers legitimate scripts (longest typical: a multi-step setup line).
181
+ if (initialCommand !== null && initialCommand.length > 8192) {
182
+ log.warn(`Oversized initialCommand rejected: ${initialCommand.length} chars`);
183
+ throw new Error('initialCommand too long (max 8192 chars)');
184
+ }
173
185
 
174
186
  const id = crypto.randomBytes(16).toString('hex');
175
187
  if (!color) {
@@ -184,12 +196,6 @@ class SessionManager {
184
196
  env: { ...process.env, TERM: 'xterm-256color', TERMBEAM_SESSION: '1' },
185
197
  });
186
198
 
187
- // Send initial command once the shell is ready
188
- if (initialCommand) {
189
- log.debug(`Scheduling initialCommand for session ${id} (${initialCommand.length} chars)`);
190
- setTimeout(() => ptyProcess.write(initialCommand + '\r'), 300);
191
- }
192
-
193
199
  const session = {
194
200
  pty: ptyProcess,
195
201
  name,
@@ -209,12 +215,66 @@ class SessionManager {
209
215
  _altScanTail: '',
210
216
  _lastCols: cols,
211
217
  _lastRows: rows,
218
+ _initialCommand: initialCommand || null,
219
+ _initialCommandSent: false,
212
220
  };
213
221
 
222
+ // Send the initial command only AFTER the shell has fully painted
223
+ // its first prompt. Slow shells (zsh + oh-my-zsh + powerlevel10k)
224
+ // emit the prompt incrementally over 1-2s; writing into a partial
225
+ // prompt can drop keystrokes (especially with p10k instant prompt,
226
+ // which paints a fake prompt and then swaps in the real one).
227
+ //
228
+ // Strategy: fire IDLE_MS after the LAST observed PTY chunk. When
229
+ // output goes quiet the shell has finished painting and is ready for
230
+ // input. The idle timer is reset on every onData, so the write is
231
+ // pushed out as long as the shell keeps producing bytes.
232
+ //
233
+ // Hard fallback at HARD_FALLBACK_MS catches shells that never emit
234
+ // anything we can detect — better to fire the command than never to.
235
+ if (initialCommand) {
236
+ // Don't log the command content — initialCommand can contain
237
+ // secrets (tokens in `npm publish --otp=…`, env exports, etc).
238
+ // Length is enough to confirm "we got something" in audit trails.
239
+ log.info(`Queuing initialCommand for session ${id} (${initialCommand.length} chars)`);
240
+ const IDLE_MS = 600;
241
+ const HARD_FALLBACK_MS = 3500;
242
+ let idleTimer = null;
243
+ let hardFallback = null;
244
+ const send = () => {
245
+ if (session._initialCommandSent) return;
246
+ session._initialCommandSent = true;
247
+ if (idleTimer) clearTimeout(idleTimer);
248
+ if (hardFallback) clearTimeout(hardFallback);
249
+ idleTimer = null;
250
+ hardFallback = null;
251
+ log.info(`Writing initialCommand to session ${id}`);
252
+ ptyProcess.write(initialCommand + '\r');
253
+ };
254
+ hardFallback = setTimeout(send, HARD_FALLBACK_MS);
255
+ session._initialCommandResetIdle = () => {
256
+ if (session._initialCommandSent) return;
257
+ if (idleTimer) clearTimeout(idleTimer);
258
+ idleTimer = setTimeout(send, IDLE_MS);
259
+ };
260
+ // Expose timers so onExit can clear them — otherwise an early
261
+ // shell exit leaves the hard-fallback setTimeout pinned for
262
+ // ~3.5s and may try to write to a torn-down PTY.
263
+ session._initialCommandTimers = () => ({ idleTimer, hardFallback });
264
+ }
265
+
214
266
  ptyProcess.onData((data) => {
215
267
  session.lastActivity = Date.now();
216
268
  session.scrollbackBuf += data;
217
269
 
270
+ // Reset the initialCommand idle timer on every PTY chunk. The
271
+ // command is fired IDLE_MS after the LAST chunk (the shell is
272
+ // quiet → prompt fully painted → safe to type). Hard fallback in
273
+ // create() catches shells that emit nothing observable.
274
+ if (session._initialCommandResetIdle) {
275
+ session._initialCommandResetIdle();
276
+ }
277
+
218
278
  // Silence-based notification: only active when the shell has a direct
219
279
  // child process (session._hasDirectChild). This handles interactive
220
280
  // agents (Copilot CLI, Claude Code) that stay running but spawn
@@ -366,6 +426,13 @@ class SessionManager {
366
426
  ptyProcess.onExit(({ exitCode }) => {
367
427
  clearInterval(session._childMonitor);
368
428
  clearTimeout(session._silenceTimer);
429
+ // If the shell exited before initialCommand fired, drop the
430
+ // pending timers so we don't try to write to a dead PTY.
431
+ if (session._initialCommandTimers) {
432
+ const { idleTimer, hardFallback } = session._initialCommandTimers();
433
+ if (idleTimer) clearTimeout(idleTimer);
434
+ if (hardFallback) clearTimeout(hardFallback);
435
+ }
369
436
  log.info(`Session "${name}" (${id}) exited (code ${exitCode})`);
370
437
  for (const ws of session.clients) {
371
438
  if (ws.readyState === 1) ws.send(JSON.stringify({ type: 'exit', code: exitCode }));
@@ -28,6 +28,23 @@ function sanitizeForReplay(buf) {
28
28
  return buf;
29
29
  }
30
30
 
31
+ // Build an atomic replay payload for an attaching client: sanitized scrollback
32
+ // followed by an alt-screen-enter sequence when the session is currently in
33
+ // alt-screen. Sent as a single `replay` message so the client can reset its
34
+ // terminal state once and write this snapshot, instead of appending it on top
35
+ // of preserved xterm.js content (which caused duplicated lines on reconnect).
36
+ function buildReplayPayload(session) {
37
+ let payload = '';
38
+ if (session.scrollbackBuf && session.scrollbackBuf.length > 0) {
39
+ payload += sanitizeForReplay(session.scrollbackBuf);
40
+ }
41
+ if (session.inAltScreen) {
42
+ const mode = session.altScreenMode || '1049';
43
+ payload += `\x1b[?${mode}h`;
44
+ }
45
+ return payload;
46
+ }
47
+
31
48
  function recalcPtySize(session) {
32
49
  const now = Date.now();
33
50
  let activeCols = Infinity;
@@ -163,17 +180,15 @@ function setupWebSocket(wss, { auth, sessions, copilotService }) {
163
180
  ws._pendingResize = true;
164
181
  } else {
165
182
  session.clients.add(ws);
166
- if (session.scrollbackBuf.length > 0) {
167
- ws.send(
168
- JSON.stringify({ type: 'output', data: sanitizeForReplay(session.scrollbackBuf) }),
169
- );
183
+ // Send sanitized scrollback (and any alt-screen re-entry) as a single
184
+ // `replay` snapshot. Client treats `replay` as an authoritative full
185
+ // state and resets its terminal before writing — preventing duplicate
186
+ // lines on reconnect when the xterm.js instance is preserved.
187
+ const payload = buildReplayPayload(session);
188
+ if (payload.length > 0) {
189
+ ws.send(JSON.stringify({ type: 'replay', data: payload }));
170
190
  }
171
- // After replaying scrollback (which has alt-screen sequences
172
- // stripped by sanitizeForReplay), re-enter alt-screen so xterm.js
173
- // uses the correct buffer before SIGWINCH triggers the app to repaint.
174
191
  if (session.inAltScreen) {
175
- const mode = session.altScreenMode || '1049';
176
- ws.send(JSON.stringify({ type: 'output', data: `\x1b[?${mode}h` }));
177
192
  ws._needsRedraw = true;
178
193
  }
179
194
  }
@@ -375,26 +390,32 @@ function setupWebSocket(wss, { auth, sessions, copilotService }) {
375
390
  // just add the client and replay scrollback — no SIGWINCH,
376
391
  // no duplicate prompt from slow themes like oh-my-posh.
377
392
  const sizeChanged = cols !== attached._lastCols || rows !== attached._lastRows;
378
- if (sizeChanged) {
393
+ // If the session ran an initialCommand (workspace auto-boot,
394
+ // saved-default new session, agent launch), its output lives
395
+ // in scrollbackBuf — wiping it here is what makes the user
396
+ // see an "empty" terminal with no `ll` output. Preserve and
397
+ // replay it; the cosmetic price is a single re-rendered
398
+ // prompt under the original wrapped one.
399
+ if (sizeChanged && !attached._initialCommandSent) {
379
400
  attached.scrollbackBuf = '';
380
401
  attached.clients.add(ws);
381
402
  recalcPtySize(attached);
403
+ } else if (sizeChanged) {
404
+ attached.clients.add(ws);
405
+ const payload = buildReplayPayload(attached);
406
+ if (payload.length > 0) {
407
+ ws.send(JSON.stringify({ type: 'replay', data: payload }));
408
+ }
409
+ recalcPtySize(attached);
382
410
  } else {
383
411
  attached.clients.add(ws);
384
- if (attached.scrollbackBuf.length > 0) {
385
- ws.send(
386
- JSON.stringify({
387
- type: 'output',
388
- data: sanitizeForReplay(attached.scrollbackBuf),
389
- }),
390
- );
412
+ // Single atomic `replay` snapshot (scrollback + optional alt-screen
413
+ // re-entry). Client resets its terminal before applying it.
414
+ const payload = buildReplayPayload(attached);
415
+ if (payload.length > 0) {
416
+ ws.send(JSON.stringify({ type: 'replay', data: payload }));
391
417
  }
392
- // After replaying scrollback (which has alt-screen sequences
393
- // stripped), re-enter alt-screen so xterm.js uses the correct
394
- // buffer before SIGWINCH triggers the TUI to repaint.
395
418
  if (attached.inAltScreen) {
396
- const mode = attached.altScreenMode || '1049';
397
- ws.send(JSON.stringify({ type: 'output', data: `\x1b[?${mode}h` }));
398
419
  // Force SIGWINCH so the TUI repaints into the alt buffer
399
420
  recalcPtySize(attached);
400
421
  const targetCols = attached._lastCols || cols;
@@ -1 +0,0 @@
1
- import{aq as o,ar as n}from"./index-Do67tk4s.js";const t=(r,a)=>o.lang.round(n.parse(r)[a]);export{t as c};
@@ -1 +0,0 @@
1
- import{s as a,c as s,a as e,C as t}from"./chunk-4TB4RGXK-D5KX6fMH.js";import{_ as i}from"./index-Do67tk4s.js";import"./chunk-FMBD7UC4-BkeSsxqP.js";import"./chunk-YZCP3GAM-D4sWv3YN.js";import"./chunk-55IACEB6-DLtS129C.js";import"./chunk-EDXVE4YY-CtqMCguR.js";var u={parser:e,get db(){return new t},renderer:s,styles:a,init:i(r=>{r.class||(r.class={}),r.class.arrowMarkerAbsolute=r.arrowMarkerAbsolute},"init")};export{u as diagram};
@@ -1 +0,0 @@
1
- import{s as a,c as s,a as e,C as t}from"./chunk-4TB4RGXK-D5KX6fMH.js";import{_ as i}from"./index-Do67tk4s.js";import"./chunk-FMBD7UC4-BkeSsxqP.js";import"./chunk-YZCP3GAM-D4sWv3YN.js";import"./chunk-55IACEB6-DLtS129C.js";import"./chunk-EDXVE4YY-CtqMCguR.js";var u={parser:e,get db(){return new t},renderer:s,styles:a,init:i(r=>{r.class||(r.class={}),r.class.arrowMarkerAbsolute=r.arrowMarkerAbsolute},"init")};export{u as diagram};
@@ -1 +0,0 @@
1
- import{b as r}from"./_baseUniq-DveOFRWk.js";var e=4;function a(o){return r(o,e)}export{a as c};
@@ -1,32 +0,0 @@
1
- ._backdrop_barei_1{display:flex;align-items:center;justify-content:center;min-height:100vh;background:var(--bg);padding:1rem}._card_barei_10{background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:2.5rem 2rem;width:100%;max-width:360px;display:flex;flex-direction:column;align-items:center;gap:1.5rem;animation:_fade-in_barei_1 .3s ease}._logo_barei_24{font-size:1.5rem;font-weight:700;color:var(--text);display:flex;align-items:center;gap:.5rem;-webkit-user-select:none;user-select:none}._logoIcon_barei_34{font-size:1.75rem}._form_barei_38{width:100%;display:flex;flex-direction:column;gap:.75rem}._input_barei_45{width:100%;padding:.65rem .85rem;background:var(--bg);color:var(--text);border:1px solid var(--border);border-radius:8px;font-size:.95rem;outline:none;transition:border-color .15s;box-sizing:border-box}._input_barei_45:focus{border-color:var(--accent)}._button_barei_62{width:100%;padding:.65rem;background:var(--accent);color:var(--bg);border:none;border-radius:8px;font-size:.95rem;font-weight:600;cursor:pointer;transition:opacity .15s,transform .1s}._button_barei_62:hover:not(:disabled){opacity:.9}._button_barei_62:active:not(:disabled){transform:scale(.98)}._button_barei_62:disabled{opacity:.6;cursor:not-allowed}._error_barei_90{color:var(--danger);font-size:.85rem;text-align:center;margin:0}._banner_1u733_1{display:flex;align-items:center;justify-content:center;gap:.75rem;padding:calc(.55rem + env(safe-area-inset-top,0px)) 1rem .55rem;background:var(--accent);color:var(--bg);font-size:.82rem;font-weight:500;animation:_slide-down_1u733_1 .25s ease}._updating_1u733_14{background:var(--accent);opacity:.9}._error_1u733_19{background:#d32f2f}._success_1u733_23{background:#2e7d32}._text_1u733_27{flex:1;text-align:center}._actionBtn_1u733_32{background:#fff3;border:1px solid rgba(255,255,255,.35);color:var(--bg);font-size:.78rem;font-weight:600;cursor:pointer;padding:.25rem .65rem;border-radius:5px;transition:background .15s,opacity .15s;white-space:nowrap}._actionBtn_1u733_32:hover{background:#ffffff59}._spinner_1u733_51{display:inline-block;animation:_spin_1u733_51 1s linear infinite}._dismiss_1u733_56{background:transparent;border:none;color:var(--bg);font-size:1rem;cursor:pointer;opacity:.7;padding:.15rem .35rem;border-radius:4px;transition:opacity .15s;line-height:1}._dismiss_1u733_56:hover{opacity:1}@keyframes _slide-down_1u733_1{0%{transform:translateY(-100%);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes _spin_1u733_51{0%{transform:rotate(0)}to{transform:rotate(360deg)}}._banner_eu3dd_1{display:flex;align-items:center;justify-content:center;gap:.75rem;padding:calc(.55rem + env(safe-area-inset-top,0px)) 1rem .55rem;color:#fff;font-size:.82rem;font-weight:500;animation:_slide-down_eu3dd_1 .25s ease}._warning_eu3dd_13{background:#e65100}._error_eu3dd_17{background:#d32f2f}._text_eu3dd_21{flex:1;text-align:center}._dismiss_eu3dd_26{background:transparent;border:none;color:#fff;font-size:1rem;cursor:pointer;opacity:.7;padding:.15rem .35rem;border-radius:4px;transition:opacity .15s;line-height:1}._dismiss_eu3dd_26:hover{opacity:1}@keyframes _slide-down_eu3dd_1{0%{transform:translateY(-100%);opacity:0}to{transform:translateY(0);opacity:1}}._wrapper_18qrw_1{position:relative;overflow:hidden;border-radius:12px}._deleteBackground_18qrw_7{position:absolute;top:0;right:0;bottom:0;width:80px;background:var(--danger);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;border-radius:0 12px 12px 0;color:#fff;font-size:12px;font-weight:600;-webkit-user-select:none;user-select:none;cursor:pointer;border:none;padding:0;transition:background .15s}._deleteBackground_18qrw_7:active{background:#c0392b}._card_18qrw_34{position:relative;display:flex;flex-direction:column;gap:8px;padding:16px;background:var(--surface);border:1px solid var(--border);border-radius:12px;touch-action:pan-y;-webkit-user-select:none;user-select:none;cursor:pointer;z-index:1;transition:border-color .15s}._card_18qrw_34:hover{border-color:var(--accent)}._topRow_18qrw_55{display:flex;align-items:center;justify-content:space-between;gap:8px}._nameGroup_18qrw_62{display:flex;align-items:center;gap:8px;min-width:0}._colorDot_18qrw_69{width:10px;height:10px;border-radius:50%;flex-shrink:0}._name_18qrw_62{font-size:17px;font-weight:600;color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}._pidBadge_18qrw_85{font-size:12px;color:var(--text-secondary);background:var(--bg);padding:2px 8px;border-radius:4px;white-space:nowrap;flex-shrink:0}._statusGroup_18qrw_95{display:flex;align-items:center;gap:6px;flex-shrink:0}._statusDot_18qrw_102{width:8px;height:8px;border-radius:50%;background:var(--text-muted)}._statusDot_18qrw_102[data-connected=true]{background:var(--success)}._activityTime_18qrw_113{font-size:12px;color:var(--text-secondary);white-space:nowrap}._subtitle_18qrw_119{display:flex;flex-wrap:wrap;gap:4px 12px;font-size:13px;color:var(--text-secondary);overflow:hidden}._subtitleItem_18qrw_128{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}._subtitleBranch_18qrw_134{display:inline-flex;align-items:center;gap:4px;white-space:nowrap;flex-shrink:0}._subtitleBranch_18qrw_134 svg{flex-shrink:0}._detailsRow_18qrw_147{display:flex;flex-wrap:wrap;gap:6px 16px;font-size:13px;color:var(--text-secondary)}._detailItem_18qrw_155{display:inline-flex;align-items:center;gap:4px;white-space:nowrap}._detailItem_18qrw_155 svg{flex-shrink:0}._gitRow_18qrw_167{display:flex;flex-wrap:wrap;gap:4px 10px;font-size:12px}._gitBadge_18qrw_174{display:inline-flex;align-items:center;gap:4px;background:var(--bg);padding:2px 8px;border-radius:4px;color:var(--text-secondary);white-space:nowrap}._gitBadge_18qrw_174 svg{flex-shrink:0}._statusClean_18qrw_189{color:var(--success)}._statusDirty_18qrw_193{color:var(--danger)}._connectHint_18qrw_198{align-self:flex-end;font-size:13px;font-weight:600;color:var(--accent)}@media(pointer:coarse){._connectHint_18qrw_198{font-size:14px}}._container_l3nk6_1{display:flex;flex-direction:column;min-height:0;flex:1;overflow:hidden}._pathInput_l3nk6_9{width:100%;box-sizing:border-box;padding:.55rem .7rem;font-size:.9rem;background:var(--bg);color:var(--text);border:1px solid var(--border);border-radius:8px;margin-bottom:.4rem;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;min-height:2.5rem}._pathInput_l3nk6_9:focus{outline:none;border-color:var(--accent)}._pathInput_l3nk6_9::placeholder{color:var(--text-muted)}._breadcrumb_l3nk6_35{display:flex;align-items:center;flex-wrap:wrap;gap:.15rem;font-size:.8rem;color:var(--text-secondary);padding:.4rem .6rem;background:var(--bg);border-radius:6px;border:1px solid var(--border-subtle);min-height:2rem;flex-shrink:0}._breadcrumbSegment_l3nk6_50{background:transparent;border:none;color:var(--accent);cursor:pointer;padding:.1rem .2rem;border-radius:3px;font-size:.8rem;transition:background .1s}._breadcrumbSegment_l3nk6_50:hover{background:var(--surface)}._breadcrumbSep_l3nk6_65{color:var(--text-muted);-webkit-user-select:none;user-select:none}._list_l3nk6_70{flex:1;min-height:0;max-height:40vh;overflow-y:auto;display:flex;flex-direction:column;gap:2px;padding:.25rem;background:var(--bg);border-radius:8px;border:1px solid var(--border-subtle);margin:.5rem 0}._entry_l3nk6_85{display:flex;align-items:center;gap:.5rem;padding:.4rem .6rem;border-radius:6px;border:none;background:transparent;color:var(--text);font-size:.82rem;cursor:pointer;text-align:left;width:100%;transition:background .1s}._entry_l3nk6_85:hover{background:var(--surface)}._entryIcon_l3nk6_105{flex-shrink:0;font-size:.9rem}._entryName_l3nk6_110{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}._fileEntry_l3nk6_116{color:var(--text-dim);cursor:default}._fileEntry_l3nk6_116:hover{background:transparent}._actions_l3nk6_125{display:flex;gap:.5rem;justify-content:flex-end;flex-shrink:0;padding-top:.5rem}._selectBtn_l3nk6_133{padding:.45rem 1rem;background:var(--accent);color:var(--bg);border:none;border-radius:8px;font-size:.85rem;font-weight:600;cursor:pointer;transition:opacity .15s}._selectBtn_l3nk6_133:hover{opacity:.9}._selectBtn_l3nk6_133:disabled{opacity:.6;cursor:not-allowed}._cancelBtn_l3nk6_154{padding:.45rem 1rem;background:transparent;color:var(--text-secondary);border:1px solid var(--border);border-radius:8px;font-size:.85rem;cursor:pointer;transition:border-color .15s,color .15s}._cancelBtn_l3nk6_154:hover{border-color:var(--text-secondary);color:var(--text)}._loading_l3nk6_172{display:flex;align-items:center;justify-content:center;padding:2rem;color:var(--text-dim);font-size:.85rem}._error_l3nk6_181{color:var(--danger);font-size:.82rem;text-align:center;padding:1rem}._badge_c2uf6_1{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;border-radius:6px;overflow:hidden;line-height:1}._badge_c2uf6_1 svg{display:block}._dot_c2uf6_15{border-radius:50%}._sm_c2uf6_19{width:20px;height:20px}._sm_c2uf6_19 svg{width:20px;height:20px}._sm_c2uf6_19 ._dot_c2uf6_15{width:8px;height:8px}._md_c2uf6_34{width:28px;height:28px}._md_c2uf6_34 svg{width:28px;height:28px}._md_c2uf6_34 ._dot_c2uf6_15{width:10px;height:10px}._overlay_1vya2_1{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--overlay-bg);z-index:200;animation:_fade-in_1vya2_1 .15s ease}._content_1vya2_9{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);width:90%;max-width:440px;max-height:85dvh;overflow-y:auto;background:var(--surface);border:1px solid var(--border);border-radius:16px;padding:1.5rem;z-index:201;box-shadow:0 8px 24px #0006;animation:_fade-in_1vya2_1 .2s ease}._title_1vya2_27{font-size:1.15rem;font-weight:700;color:var(--text);margin:0 0 1.25rem}._form_1vya2_34{display:flex;flex-direction:column;gap:1rem}._field_1vya2_40{display:flex;flex-direction:column;gap:.3rem}._label_1vya2_46{font-size:.78rem;color:var(--text-secondary);font-weight:500;text-transform:uppercase;letter-spacing:.03em}._input_1vya2_54{padding:.55rem .75rem;background:var(--bg);color:var(--text);border:1px solid var(--border);border-radius:8px;font-size:.9rem;outline:none;transition:border-color .15s;width:100%;box-sizing:border-box}._input_1vya2_54:focus{border-color:var(--accent)}._select_1vya2_71{cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23888' d='M2 4l4 4 4-4'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .6rem center;padding-right:2rem}._dirRow_1vya2_81{display:flex;gap:.5rem}._dirRow_1vya2_81 ._input_1vya2_54{flex:1}._browseBtn_1vya2_90{padding:.55rem .85rem;background:var(--surface);color:var(--text-secondary);border:1px solid var(--border);border-radius:8px;font-size:.82rem;cursor:pointer;white-space:nowrap;transition:border-color .15s,color .15s}._browseBtn_1vya2_90:hover{border-color:var(--accent);color:var(--text)}._colorPicker_1vya2_109{display:flex;gap:.5rem;flex-wrap:wrap}._colorDot_1vya2_115{width:28px;height:28px;border-radius:50%;border:2px solid transparent;cursor:pointer;transition:border-color .15s,transform .1s}._colorDot_1vya2_115:hover{transform:scale(1.15)}._colorDotActive_1vya2_130{border-color:var(--text)}._actions_1vya2_134{display:flex;gap:.5rem;justify-content:flex-end;margin-top:.5rem}._cancelBtn_1vya2_141{padding:.55rem 1rem;background:transparent;color:var(--text-secondary);border:1px solid var(--border);border-radius:8px;font-size:.88rem;cursor:pointer;transition:border-color .15s,color .15s}._cancelBtn_1vya2_141:hover{border-color:var(--text-secondary);color:var(--text)}._submitBtn_1vya2_159{min-width:100px;padding:.55rem 1.25rem;background:var(--accent);color:var(--bg);border:none;border-radius:8px;font-size:.88rem;font-weight:600;cursor:pointer;transition:opacity .15s}._submitBtn_1vya2_159:hover:not(:disabled){opacity:.9}._submitBtn_1vya2_159:disabled{opacity:.6;cursor:not-allowed}._sessionTypeTabs_1vya2_183{display:flex;gap:0;margin-bottom:16px;border:1px solid var(--border);border-radius:8px;overflow:hidden}._sessionTypeTab_1vya2_183{flex:1;padding:10px 16px;background:none;border:none;color:var(--text-secondary);font-size:14px;font-weight:500;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:6px;transition:background .15s,color .15s}._sessionTypeTab_1vya2_183:hover{background:var(--surface-hover, rgba(255, 255, 255, .04))}._sessionTypeTabActive_1vya2_214{background:var(--accent);color:var(--bg)}._sessionTypeTabActive_1vya2_214:hover{background:var(--accent)}._modelSelect_1vya2_223{cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23888' d='M2 4l4 4 4-4'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .6rem center;padding-right:2rem}@keyframes _spin_1vya2_1{0%{transform:rotate(0)}to{transform:rotate(360deg)}}._resumeLink_1vya2_244{background:none;border:none;color:var(--accent);font-size:.85rem;cursor:pointer;padding:.3rem 0;font-family:inherit;text-align:left;transition:opacity .15s}._resumeLink_1vya2_244:hover{opacity:.8}@media(pointer:coarse){._content_1vya2_9{top:30%;transform:translate(-50%,-30%)}}._agentGrid_1vya2_269{display:grid;grid-template-columns:repeat(auto-fill,minmax(100px,1fr));gap:.5rem}._agentCard_1vya2_275{display:flex;flex-direction:column;align-items:center;gap:.3rem;padding:.65rem .5rem;background:var(--bg);border:1px solid var(--border);border-radius:8px;cursor:pointer;transition:border-color .15s,background .15s}._agentCard_1vya2_275:hover:not(:disabled){border-color:var(--accent);background:var(--surface)}._agentCard_1vya2_275:disabled{opacity:.5;cursor:not-allowed}._agentIcon_1vya2_300{font-size:1.25rem;line-height:1}._agentName_1vya2_305{font-size:.78rem;font-weight:500;color:var(--text);text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}._agentVersion_1vya2_316{font-size:.65rem;color:var(--text-secondary)}._page_s2fln_1{position:fixed;top:0;right:0;bottom:0;left:0;z-index:200;background:var(--bg);display:flex;flex-direction:column;animation:_slide-in_s2fln_1 .2s ease;padding-top:env(safe-area-inset-top,0)}._header_s2fln_12{display:flex;align-items:center;gap:12px;padding:16px;padding-left:max(16px,env(safe-area-inset-left,0));flex-shrink:0}._backBtn_s2fln_21{background:none;border:none;color:var(--accent);font-size:22px;cursor:pointer;padding:4px 8px;border-radius:8px;line-height:1}._backBtn_s2fln_21:hover{background:var(--surface)}._title_s2fln_36{font-size:20px;font-weight:700;color:var(--text);margin:0}._searchWrap_s2fln_43{position:relative;padding:0 16px 12px;padding-left:max(16px,env(safe-area-inset-left,0));padding-right:max(16px,env(safe-area-inset-right,0));flex-shrink:0}._searchInput_s2fln_51{width:100%;box-sizing:border-box;padding:10px 36px 10px 14px;background:var(--surface);border:1px solid var(--border);border-radius:10px;color:var(--text);font-size:15px;font-family:inherit;outline:none;transition:border-color .15s}._searchInput_s2fln_51:focus{border-color:var(--accent)}._searchInput_s2fln_51::placeholder{color:var(--text-muted)}._clearBtn_s2fln_73{position:absolute;right:26px;top:50%;transform:translateY(-50%);background:none;border:none;color:var(--text-muted);font-size:14px;cursor:pointer;padding:4px 8px}._tabs_s2fln_86{display:flex;gap:6px;padding:0 16px 12px;padding-left:max(16px,env(safe-area-inset-left,0));flex-shrink:0;overflow-x:auto}._tab_s2fln_86{padding:6px 14px;border-radius:20px;border:1px solid var(--border);background:transparent;color:var(--text-secondary);font-size:13px;font-family:inherit;cursor:pointer;white-space:nowrap;transition:background .15s,border-color .15s,color .15s}._tab_s2fln_86:hover{background:var(--surface)}._tabActive_s2fln_115{background:var(--accent);border-color:var(--accent);color:#fff}._list_s2fln_121{flex:1;overflow-y:auto;padding:0 16px;padding-left:max(16px,env(safe-area-inset-left,0));padding-right:max(16px,env(safe-area-inset-right,0));padding-bottom:max(20px,var(--safe-bottom));display:flex;flex-direction:column;gap:8px}._emptyState_s2fln_133{display:flex;align-items:center;justify-content:center;padding:48px 20px;color:var(--text-muted);font-size:15px;text-align:center}._card_s2fln_143{display:flex;flex-direction:column;gap:8px;padding:14px 16px;background:var(--surface);border:1px solid var(--border);border-radius:10px;cursor:pointer;color:var(--text);font:inherit;text-align:left;width:100%;transition:border-color .15s,background .15s}._card_s2fln_143:hover:not(:disabled){border-color:var(--accent)}._card_s2fln_143:active:not(:disabled){transform:scale(.98)}._card_s2fln_143:disabled{opacity:.5;cursor:not-allowed}._cardTop_s2fln_174{display:flex;align-items:center;gap:8px}._cardIcon_s2fln_180{font-size:18px;flex-shrink:0;line-height:1}._cardSummary_s2fln_186{font-size:14px;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0}._cardMeta_s2fln_196{display:flex;flex-wrap:wrap;gap:2px 0;font-size:12px;color:var(--text-secondary);line-height:1.4}._metaItem_s2fln_205{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:180px}._metaItem_s2fln_205+._metaItem_s2fln_205:before{content:" · ";color:var(--text-muted)}._spinner_s2fln_217{font-size:16px;color:var(--accent);animation:_spin_s2fln_217 .8s linear infinite;flex-shrink:0}._timeFilters_s2fln_224{display:flex;gap:6px;padding:0 16px 12px;padding-left:max(16px,env(safe-area-inset-left,0));flex-shrink:0;overflow-x:auto}._timeChip_s2fln_233{padding:5px 12px;border-radius:16px;border:1px solid var(--border);background:transparent;color:var(--text-secondary);font-size:12px;font-family:inherit;cursor:pointer;white-space:nowrap;transition:background .15s,border-color .15s,color .15s}._timeChip_s2fln_233:hover{background:var(--surface)}._timeChipActive_s2fln_253{background:var(--surface);border-color:var(--accent);color:var(--text)}._folderFilter_s2fln_259{padding:0 16px 12px;padding-left:max(16px,env(safe-area-inset-left,0));padding-right:max(16px,env(safe-area-inset-right,0));flex-shrink:0}._folderSelect_s2fln_266{width:100%;padding:8px 28px 8px 12px;background:var(--surface);border:1px solid var(--border);border-radius:8px;color:var(--text);font-size:13px;font-family:inherit;outline:none;-webkit-appearance:none;-moz-appearance:none;appearance:none;cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23888' d='M2 4l4 4 4-4'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 10px center}._folderSelect_s2fln_266:focus{border-color:var(--accent)}._resultCount_s2fln_288{padding:0 16px 8px;padding-left:max(16px,env(safe-area-inset-left,0));font-size:12px;color:var(--text-muted);flex-shrink:0}@keyframes _slide-in_s2fln_1{0%{transform:translate(100%)}to{transform:translate(0)}}@keyframes _spin_s2fln_217{0%{transform:rotate(0)}to{transform:rotate(360deg)}}._choiceOverlay_s2fln_316{position:fixed;top:0;right:0;bottom:0;left:0;z-index:300;background:#00000080;display:flex;align-items:center;justify-content:center;padding:20px;animation:_fade-in_s2fln_1 .15s ease}._choiceDialog_s2fln_328{background:var(--bg);border:1px solid var(--border);border-radius:14px;padding:24px;max-width:340px;width:100%;animation:_scale-in_s2fln_1 .15s ease}._choiceTitle_s2fln_338{font-size:17px;font-weight:700;color:var(--text);margin:0 0 4px}._choiceDesc_s2fln_345{font-size:13px;color:var(--text-secondary);margin:0 0 18px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}._choiceOptions_s2fln_354{display:flex;flex-direction:column;gap:10px}._choiceBtn_s2fln_360{display:flex;align-items:center;gap:12px;padding:14px 16px;background:var(--surface);border:1px solid var(--border);border-radius:10px;cursor:pointer;color:var(--text);font:inherit;text-align:left;width:100%;transition:border-color .15s,background .15s}._choiceBtn_s2fln_360:hover:not(:disabled){border-color:var(--accent);background:var(--surface)}._choiceBtn_s2fln_360:active:not(:disabled){transform:scale(.98)}._choiceBtn_s2fln_360:disabled{opacity:.5;cursor:not-allowed}._choiceBtnIcon_s2fln_392{font-size:20px;flex-shrink:0;line-height:1}._choiceBtnLabel_s2fln_398{font-size:14px;font-weight:600}._choiceBtnHint_s2fln_403{font-size:12px;color:var(--text-secondary);margin-left:auto}._choiceSpinner_s2fln_409{text-align:center;color:var(--accent);font-size:13px;margin-top:12px;animation:_spin_s2fln_217 .8s linear infinite}@keyframes _fade-in_s2fln_1{0%{opacity:0}to{opacity:1}}@keyframes _scale-in_s2fln_1{0%{transform:scale(.95);opacity:0}to{transform:scale(1);opacity:1}}._bar_r5zbt_1{display:flex;flex-direction:column;gap:8px;padding:8px 16px 12px;border-bottom:1px solid var(--border);background:var(--bg)}._searchRow_r5zbt_10{display:flex;gap:8px;align-items:center}._searchInput_r5zbt_16{flex:1;min-height:36px;padding:8px 12px;font-size:14px;border:1px solid var(--border);border-radius:8px;background:var(--surface, #1e1e1e);color:var(--text)}._searchInput_r5zbt_16:focus{outline:2px solid var(--accent);outline-offset:-1px}._clearBtn_r5zbt_32{min-height:36px;padding:6px 10px;font-size:12px;color:var(--text-dim);background:transparent;border:1px solid var(--border);border-radius:8px;cursor:pointer}._chips_r5zbt_43{display:flex;flex-wrap:wrap;gap:6px}._chip_r5zbt_43{display:inline-flex;align-items:center;gap:4px;padding:6px 10px;min-height:32px;font-size:12px;color:var(--text);background:transparent;border:1px solid var(--border);border-radius:999px;cursor:pointer;white-space:nowrap}._chipActive_r5zbt_64{background:#388bfd40;border-color:#388bfdb3}._chipGroup_r5zbt_69{position:relative}._chipMenu_r5zbt_73{position:absolute;top:calc(100% + 4px);left:0;z-index:30;min-width:180px;max-height:280px;overflow-y:auto;padding:4px;background:var(--surface, #252526);border:1px solid var(--border);border-radius:8px;box-shadow:0 4px 12px #00000059}._chipMenuItem_r5zbt_88{display:block;width:100%;padding:8px 10px;min-height:36px;text-align:left;font-size:13px;color:var(--text);background:transparent;border:none;border-radius:6px;cursor:pointer}._chipMenuItem_r5zbt_88:hover{background:#ffffff0f}._chipMenuItemActive_r5zbt_106{background:#388bfd40}._page_f3o43_1{min-height:100vh;min-height:100dvh;background:var(--bg);display:flex;flex-direction:column}._page_f3o43_1:has([data-update-banner]) ._header_f3o43_11{padding-top:20px}._page_f3o43_1:has([data-update-banner]) ._headerBtn_f3o43_15{top:16px}._page_f3o43_1:has([data-update-banner]) ._themeBtn_f3o43_19{top:16px}._header_f3o43_11{position:relative;padding:calc(20px + env(safe-area-inset-top,0px)) 16px 12px;border-bottom:1px solid var(--border);text-align:center}._title_f3o43_30{font-size:22px;font-weight:700;color:var(--text);margin:0}._accent_f3o43_37{color:var(--accent)}._tagline_f3o43_41{font-size:13px;color:var(--text-secondary);margin:4px 0 0}._headerBtn_f3o43_15{position:absolute;top:calc(16px + env(safe-area-inset-top,0px));display:flex;align-items:center;justify-content:center;width:32px;height:32px;background:none;border:1px solid var(--border);border-radius:8px;color:var(--text-dim);cursor:pointer;transition:border-color .15s,color .15s;padding:0}._headerBtn_f3o43_15:hover{border-color:var(--accent);color:var(--text)}._shareBtn_f3o43_71{right:96px}._refreshBtn_f3o43_75{right:56px}._themeBtn_f3o43_19{position:absolute;top:calc(16px + env(safe-area-inset-top,0px));right:16px}._themePanel_f3o43_85{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);width:240px;max-height:min(420px,60vh);display:flex;flex-direction:column;background:var(--surface);border:1px solid var(--border);border-radius:12px;z-index:1000;box-shadow:0 12px 40px #0006;animation:_themePickerFadeIn_f3o43_1 .15s ease}._themePanelHeader_f3o43_102{display:flex;align-items:center;justify-content:space-between;padding:.6rem .75rem;border-bottom:1px solid var(--border);flex-shrink:0}._themePanelTitle_f3o43_111{font-size:.85rem;font-weight:600;color:var(--text)}._themePanelClose_f3o43_117{background:none;border:none;color:var(--text-dim);font-size:.85rem;cursor:pointer;padding:.15rem .35rem;border-radius:4px;line-height:1;transition:color .15s,background .15s}._themePanelClose_f3o43_117:hover{color:var(--text);background:var(--border)}._themePanelList_f3o43_136{overflow-y:auto;padding:.35rem;flex:1}@keyframes _themePickerFadeIn_f3o43_1{0%{opacity:0}to{opacity:1}}._themeRow_f3o43_151{position:relative;display:flex;align-items:center;width:100%;height:36px;border-radius:6px;overflow:hidden;cursor:pointer;border:2px solid transparent;background:none;padding:0;transition:border-color .15s}._themeRow_f3o43_151:hover{border-color:var(--border, #555)}._themeRowActive_f3o43_170,._themeRowActive_f3o43_170:hover{border-color:var(--accent, #58a6ff)}._themeBar_f3o43_175{position:absolute;top:0;right:0;bottom:0;left:0;display:flex}._themeLabel_f3o43_181{position:relative;z-index:1;padding:0 10px;font-size:.82rem;font-weight:500;color:#fff;text-shadow:0 1px 3px rgba(0,0,0,.7)}._content_f3o43_191{flex:1;overflow-y:auto}._sessionsList_f3o43_196{display:flex;flex-direction:column;padding:16px;padding-bottom:calc(82px + var(--safe-bottom));gap:12px}._emptyState_f3o43_204{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.75rem;padding:4rem 1rem;color:var(--text-dim);text-align:center}._emptyIcon_f3o43_215{font-size:2.5rem;opacity:.5}._emptyText_f3o43_220{font-size:.95rem}._emptyHint_f3o43_224{font-size:.82rem;color:var(--text-muted)}._emptyHintButton_f3o43_229{background:none;border:none;cursor:pointer;padding:4px 8px;text-decoration:underline;text-underline-offset:2px}._emptyHintButton_f3o43_229:hover,._emptyHintButton_f3o43_229:focus-visible{color:var(--text-primary)}._hubFooter_f3o43_243{position:fixed;bottom:var(--safe-bottom);left:0;right:0;padding:4px calc(16px + env(safe-area-inset-left,0px)) 4px calc(16px + env(safe-area-inset-right,0px));background:var(--bg);display:flex;gap:10px;z-index:50}._newSessionBtn_f3o43_256{flex:1;padding:14px;background:var(--accent);color:#fff;border:none;border-radius:12px;font-size:15px;font-weight:600;cursor:pointer;box-shadow:0 2px 8px #0078d44d;transition:transform .15s,opacity .15s;text-align:center}._newSessionBtn_f3o43_256:hover{opacity:.92}._newSessionBtn_f3o43_256:active{transform:scale(.98)}._resumeBtn_f3o43_281{padding:14px 20px;background:var(--surface);color:var(--text);border:1px solid var(--border);border-radius:12px;font-size:15px;font-weight:600;cursor:pointer;transition:transform .15s,border-color .15s;text-align:center;white-space:nowrap}._resumeBtn_f3o43_281:hover{border-color:var(--accent)}._resumeBtn_f3o43_281:active{transform:scale(.98)}._refreshSpin_f3o43_305{animation:_spin_f3o43_1 .6s linear}@keyframes _spin_f3o43_1{to{transform:rotate(360deg)}}/**
2
- * Copyright (c) 2014 The xterm.js authors. All rights reserved.
3
- * Copyright (c) 2012-2013, Christopher Jeffrey (MIT License)
4
- * https://github.com/chjj/term.js
5
- * @license MIT
6
- *
7
- * Permission is hereby granted, free of charge, to any person obtaining a copy
8
- * of this software and associated documentation files (the "Software"), to deal
9
- * in the Software without restriction, including without limitation the rights
10
- * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
11
- * copies of the Software, and to permit persons to whom the Software is
12
- * furnished to do so, subject to the following conditions:
13
- *
14
- * The above copyright notice and this permission notice shall be included in
15
- * all copies or substantial portions of the Software.
16
- *
17
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
18
- * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
19
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
20
- * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
21
- * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
22
- * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
23
- * THE SOFTWARE.
24
- *
25
- * Originally forked from (with the author's permission):
26
- * Fabrice Bellard's javascript vt100 for jslinux:
27
- * http://bellard.org/jslinux/
28
- * Copyright (c) 2011 Fabrice Bellard
29
- * The original design remains. The terminal itself
30
- * has been extended to include xterm CSI codes, among
31
- * other features.
32
- */.xterm{cursor:text;position:relative;user-select:none;-ms-user-select:none;-webkit-user-select:none}.xterm.focus,.xterm:focus{outline:none}.xterm .xterm-helpers{position:absolute;top:0;z-index:5}.xterm .xterm-helper-textarea{padding:0;border:0;margin:0;position:absolute;opacity:0;left:-9999em;top:0;width:0;height:0;z-index:-5;white-space:nowrap;overflow:hidden;resize:none}.xterm .composition-view{background:#000;color:#fff;display:none;position:absolute;white-space:nowrap;z-index:1}.xterm .composition-view.active{display:block}.xterm .xterm-viewport{background-color:#000;overflow-y:scroll;cursor:default;position:absolute;right:0;left:0;top:0;bottom:0}.xterm .xterm-screen{position:relative}.xterm .xterm-screen canvas{position:absolute;left:0;top:0}.xterm .xterm-scroll-area{visibility:hidden}.xterm-char-measure-element{display:inline-block;visibility:hidden;position:absolute;top:0;left:-9999em;line-height:normal}.xterm.enable-mouse-events{cursor:default}.xterm.xterm-cursor-pointer,.xterm .xterm-cursor-pointer{cursor:pointer}.xterm.column-select.focus{cursor:crosshair}.xterm .xterm-accessibility:not(.debug),.xterm .xterm-message{position:absolute;left:0;top:0;bottom:0;right:0;z-index:10;color:transparent;pointer-events:none}.xterm .xterm-accessibility-tree:not(.debug) *::selection{color:transparent}.xterm .xterm-accessibility-tree{-webkit-user-select:text;user-select:text;white-space:pre}.xterm .live-region{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}.xterm-dim{opacity:1!important}.xterm-underline-1{text-decoration:underline}.xterm-underline-2{text-decoration:double underline}.xterm-underline-3{text-decoration:wavy underline}.xterm-underline-4{text-decoration:dotted underline}.xterm-underline-5{text-decoration:dashed underline}.xterm-overline{text-decoration:overline}.xterm-overline.xterm-underline-1{text-decoration:overline underline}.xterm-overline.xterm-underline-2{text-decoration:overline double underline}.xterm-overline.xterm-underline-3{text-decoration:overline wavy underline}.xterm-overline.xterm-underline-4{text-decoration:overline dotted underline}.xterm-overline.xterm-underline-5{text-decoration:overline dashed underline}.xterm-strikethrough{text-decoration:line-through}.xterm-screen .xterm-decoration-container .xterm-decoration{z-index:6;position:absolute}.xterm-screen .xterm-decoration-container .xterm-decoration.xterm-decoration-top-layer{z-index:7}.xterm-decoration-overview-ruler{z-index:8;position:absolute;top:0;right:0;pointer-events:none}.xterm-decoration-top{z-index:2;position:relative}._pane_1kw18_1{flex:1;position:relative;overflow:hidden;min-height:0}._terminalContainer_1kw18_8{width:100%;height:100%;-webkit-touch-callout:none;-webkit-user-select:none;user-select:none;touch-action:none}._terminalContainer_1kw18_8 .xterm-screen>*{pointer-events:none}@media(max-width:640px){._terminalContainer_1kw18_8 .xterm-viewport{scrollbar-width:none}._terminalContainer_1kw18_8 .xterm-viewport::-webkit-scrollbar{width:0;display:none}}._scrollToBottom_1kw18_42{position:absolute;bottom:12px;right:12px;width:44px;height:44px;border-radius:50%;border:1px solid var(--border);background:var(--surface);color:var(--text);font-size:20px;cursor:pointer;display:flex;align-items:center;justify-content:center;opacity:.8;transition:opacity .2s;z-index:10}._scrollToBottom_1kw18_42:hover{opacity:1}._exitOverlay_1kw18_66{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;background:var(--overlay-bg, rgba(0, 0, 0, .6));z-index:5}._exitMessage_1kw18_76{color:var(--text-secondary);font-size:1.1rem;padding:1rem 2rem;background:var(--surface);border-radius:8px;border:1px solid var(--border)}._reconnectingBar_1kw18_86{position:absolute;top:0;left:0;right:0;display:flex;align-items:center;justify-content:center;gap:.5rem;padding:.35rem 0;background:var(--surface);border-bottom:1px solid var(--border);color:var(--text-secondary);font-size:.85rem;z-index:5;animation:_slideDown_1kw18_1 .2s ease}@keyframes _slideDown_1kw18_1{0%{transform:translateY(-100%)}to{transform:translateY(0)}}._reconnectingDot_1kw18_113{width:8px;height:8px;border-radius:50%;background:var(--text-secondary);animation:_pulse_1kw18_1 1.2s ease-in-out infinite}@keyframes _pulse_1kw18_1{0%,to{opacity:.3}50%{opacity:1}}._reconnectOverlay_1kw18_132{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;background:var(--overlay-bg, rgba(0, 0, 0, .6));z-index:5;animation:_fadeIn_1kw18_1 .2s ease}@keyframes _fadeIn_1kw18_1{0%{opacity:0}to{opacity:1}}._reconnectContent_1kw18_152{display:flex;flex-direction:column;align-items:center;gap:1rem;padding:1.5rem 2rem;background:var(--surface);border-radius:12px;border:1px solid var(--border)}._reconnectMessage_1kw18_163{color:var(--text-secondary);font-size:1.1rem}._reconnectActions_1kw18_168{display:flex;gap:.75rem}._reconnectBtn_1kw18_173{padding:.5rem 1.25rem;border-radius:8px;border:1px solid var(--border);background:var(--surface);color:var(--text);font-size:.9rem;cursor:pointer;text-decoration:none;transition:background .15s,border-color .15s}._reconnectBtn_1kw18_173:hover{background:var(--border)}._chatToggle_1kw18_192{position:absolute;bottom:12px;left:12px;width:44px;height:44px;border-radius:50%;border:1px solid var(--border);background:var(--surface);color:var(--text);font-size:16px;cursor:pointer;display:flex;align-items:center;justify-content:center;opacity:.85;transition:opacity .2s,background .15s;z-index:10;font-family:monospace}._chatToggle_1kw18_192:hover{opacity:1;background:var(--border)}._chatContainer_1kw18_221{width:100%;height:100%;overflow:hidden;background:var(--bg);display:flex;flex-direction:column}._chatEmpty_1kw18_230{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;height:100%;color:var(--text-secondary);font-size:14px}._chatInputBar_1kw18_241{flex-shrink:0;padding:8px 16px;padding-bottom:calc(8px + env(safe-area-inset-bottom,0px));border-top:1px solid var(--border);background:var(--bg)}._chatInputField_1kw18_249{width:100%;box-sizing:border-box;padding:10px 16px;border:1px solid var(--border);border-radius:12px;background:var(--surface);color:var(--text);font-size:14px;font-family:inherit;outline:none;transition:border-color .15s}._chatInputField_1kw18_249:focus{border-color:var(--accent)}._chatInputField_1kw18_249::placeholder{color:var(--text-dim)}._agentContainer_ccbef_5{display:flex;flex-direction:column;height:100vh;height:100dvh;background:var(--bg);color:var(--text);overflow:hidden}._chatPanel_ccbef_15{flex:1;overflow-y:auto;overflow-x:hidden;padding:24px;scroll-behavior:smooth;overscroll-behavior:contain}._chatPanelInner_ccbef_24{max-width:900px;margin:0 auto;width:100%}._inputArea_ccbef_30{position:sticky;bottom:0;border-top:1px solid var(--border);padding:16px 24px calc(16px + env(safe-area-inset-bottom,0px));background:var(--bg);z-index:10}._inputAreaInner_ccbef_39{max-width:900px;margin:0 auto;width:100%}._messageList_ccbef_47{display:flex;flex-direction:column;gap:0;align-items:stretch;width:100%}@keyframes _messageIn_ccbef_1{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}._userMessage_ccbef_68{max-width:min(60ch,90%);padding-bottom:16px;align-self:flex-end;align-items:center;gap:10px;display:flex;animation:_messageIn_ccbef_1 .2s ease-out}._userBubble_ccbef_78{border-radius:12px;background:var(--bgColor-muted, #161b22);padding:16px 24px;color:var(--fgColor-default, var(--text));flex-direction:column;gap:10px;min-width:0;max-width:100%;display:flex;overflow:hidden}._userBubbleText_ccbef_91{white-space:pre-wrap;overflow-wrap:break-word;font-size:14px;line-height:1.5;margin-bottom:0}._userAvatar_ccbef_99{padding-top:12px;flex-shrink:0;align-self:flex-start;color:var(--fgColor-muted, #8b949e);display:flex;align-items:center;justify-content:center}._assistantMessage_ccbef_111{align-items:flex-start;gap:8px;padding-inline:6px 8px;flex-direction:row;display:flex;padding-bottom:8px;animation:_messageIn_ccbef_1 .2s ease-out}._userContent_ccbef_122{min-width:0;max-width:80%;display:flex;flex-direction:column;align-items:flex-end}._assistantBody_ccbef_130{min-width:0;flex:1}._messageMeta_ccbef_135{font-size:11px;color:var(--text-dim);margin-top:4px;-webkit-user-select:none;user-select:none}._userMessage_ccbef_68 ._messageMeta_ccbef_135{text-align:right}._assistantAvatar_ccbef_146{width:20px;height:20px;flex-shrink:0;display:flex;align-items:center;justify-content:center;color:var(--fgColor-muted, #8b949e);margin-top:2px}._assistantContent_ccbef_157{flex:1;min-width:0;padding:2px 0;line-height:1.65;font-size:14px;color:var(--text);word-wrap:break-word;overflow-wrap:break-word}._markdownWrapper_ccbef_168{padding:0 8px;line-height:1.65;font-size:14px;color:var(--text);word-wrap:break-word;overflow-wrap:break-word}._markdownWrapper_ccbef_168 pre{overflow-x:auto;-webkit-overflow-scrolling:touch;max-width:100%}._markdownWrapper_ccbef_168 h1,._markdownWrapper_ccbef_168 h2,._markdownWrapper_ccbef_168 h3,._assistantContent_ccbef_157 h1,._assistantContent_ccbef_157 h2,._assistantContent_ccbef_157 h3{font-weight:600;margin-top:16px;margin-bottom:8px;line-height:1.3}._markdownWrapper_ccbef_168 h1,._assistantContent_ccbef_157 h1{font-size:1.4em}._markdownWrapper_ccbef_168 h2,._assistantContent_ccbef_157 h2{font-size:1.2em}._markdownWrapper_ccbef_168 h3,._assistantContent_ccbef_157 h3{font-size:1.05em}._markdownWrapper_ccbef_168 p,._assistantContent_ccbef_157 p{margin:8px 0}._markdownWrapper_ccbef_168 p:first-child,._assistantContent_ccbef_157 p:first-child{margin-top:0}._markdownWrapper_ccbef_168 p:last-child,._assistantContent_ccbef_157 p:last-child{margin-bottom:0}._markdownWrapper_ccbef_168 ul,._markdownWrapper_ccbef_168 ol,._assistantContent_ccbef_157 ul,._assistantContent_ccbef_157 ol{padding-left:24px;margin:8px 0}._markdownWrapper_ccbef_168 li,._assistantContent_ccbef_157 li{margin:4px 0}._markdownWrapper_ccbef_168 strong,._assistantContent_ccbef_157 strong{font-weight:600}._markdownWrapper_ccbef_168 a,._assistantContent_ccbef_157 a{color:var(--accent);text-decoration:none;text-underline-offset:2px}._markdownWrapper_ccbef_168 a:hover,._assistantContent_ccbef_157 a:hover{text-decoration:underline}._markdownWrapper_ccbef_168 code,._assistantContent_ccbef_157 code{background:#6e768133;padding:2px 6px;border-radius:4px;font-size:13px;font-family:SF Mono,Fira Code,Cascadia Code,Consolas,monospace}._markdownWrapper_ccbef_168 pre code,._assistantContent_ccbef_157 pre code{background:none;padding:0;border-radius:0;font-size:inherit}._markdownWrapper_ccbef_168 blockquote,._assistantContent_ccbef_157 blockquote{border-left:3px solid var(--border);padding-left:12px;margin:8px 0;color:var(--text-secondary)}._markdownWrapper_ccbef_168 table,._assistantContent_ccbef_157 table{border-collapse:collapse;margin:8px 0;font-size:13px}._markdownWrapper_ccbef_168 th,._markdownWrapper_ccbef_168 td,._assistantContent_ccbef_157 th,._assistantContent_ccbef_157 td{border:1px solid var(--border);padding:8px 12px}._markdownWrapper_ccbef_168 th,._assistantContent_ccbef_157 th{background:#7f7f7f1a;font-weight:600}._toolCallBlock_ccbef_305{margin:8px 0;border:1px solid var(--border);border-radius:8px;overflow:hidden}._toolCallHeader_ccbef_312{display:flex;align-items:center;gap:8px;padding:8px 12px;cursor:pointer;background:var(--surface);border:none;width:100%;text-align:left;color:var(--text);font-size:13px;font-weight:500;transition:background .15s;-webkit-user-select:none;user-select:none}._toolCallHeader_ccbef_312:hover{background:color-mix(in srgb,var(--surface) 80%,var(--text) 5%)}._toolCallIcon_ccbef_333{font-size:16px;flex-shrink:0;line-height:1}._toolCallLabel_ccbef_339{font-size:13px;font-weight:500;color:var(--text);flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}._toolCallChevron_ccbef_350{width:14px;height:14px;color:var(--text-dim);transition:transform .15s ease;flex-shrink:0;transform:rotate(0)}._toolCallChevronExpanded_ccbef_359{transform:rotate(90deg)}._toolCallContent_ccbef_363{padding:12px;border-top:1px solid var(--border);background:var(--bg);max-height:400px;overflow-y:auto;font-size:13px;line-height:1.5;color:var(--text-secondary)}._toolCallCollapsed_ccbef_374{display:none}._codeBlock_ccbef_380{background:#161b22;border-radius:8px;overflow:hidden;margin:12px 0}[data-theme=light] ._codeBlock_ccbef_380{background:#f6f8fa;border:1px solid var(--border)}._codeHeader_ccbef_392{display:flex;align-items:center;justify-content:space-between;padding:6px 12px;background:#1c2128;border-bottom:1px solid rgba(255,255,255,.06)}[data-theme=light] ._codeHeader_ccbef_392{background:#00000008;border-bottom-color:var(--border)}._codeHeader_ccbef_392 span{font-size:12px;font-weight:500;color:var(--text-dim);text-transform:lowercase;font-family:SF Mono,Fira Code,Cascadia Code,Consolas,monospace}._codePre_ccbef_414{padding:12px;margin:0;font-size:13px;line-height:1.5;font-family:SF Mono,Fira Code,Cascadia Code,Consolas,monospace;color:#d4d4d4;overflow-x:auto;-webkit-overflow-scrolling:touch}[data-theme=light] ._codePre_ccbef_414{color:#24292f}._copyButton_ccbef_429{background:none;border:none;color:var(--text-dim);cursor:pointer;font-size:12px;padding:2px 6px;border-radius:4px;transition:color .15s,background .15s;flex-shrink:0}._copyButton_ccbef_429:hover{color:var(--text);background:#ffffff14}[data-theme=light] ._copyButton_ccbef_429:hover{background:#0000000f;color:#24292f}._toolContainer_ccbef_455{box-sizing:border-box;max-width:100%;position:relative}._toolHeader_ccbef_461{border-radius:6px;align-items:center;gap:8px;row-gap:4px;min-width:0;min-height:28px;color:var(--fgColor-muted, var(--text-secondary));padding:0 8px 0 6px;background-color:transparent;border:none;flex-flow:row;flex:1;display:flex;position:relative;cursor:pointer;width:100%;transition:background-color .15s}._toolHeader_ccbef_461:hover{background-color:var(--bgColor-muted, rgba(110, 118, 129, .1))}._toolChevron_ccbef_485{flex-shrink:0;transition:transform .2s;transform-origin:50%;will-change:transform;color:var(--fgColor-muted, var(--text-dim));display:flex;align-items:center}._toolChevronOpen_ccbef_495{transform:rotate(90deg)}._toolLeadingIcon_ccbef_499{width:16px;flex-shrink:0;justify-content:center;align-items:center;display:flex;color:var(--fgColor-muted, var(--text-dim))}._toolTitle_ccbef_508{font-weight:500;font-size:12px;color:var(--fgColor-muted, var(--text-secondary));white-space:nowrap;text-overflow:ellipsis;overflow:hidden;text-align:start;flex:0 auto}._toolAction_ccbef_519{font-weight:500;font-size:13px;color:var(--fgColor-muted, var(--text-secondary));white-space:nowrap}._toolDetail_ccbef_526{font-family:var(--fontStack-monospace, "SF Mono", "SFMono-Regular", "Consolas", monospace);font-size:12px;font-weight:300;color:var(--fgColor-muted, var(--text-dim));overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0}._toolPath_ccbef_538{font-family:var(--fontStack-monospace, "SFMono-Regular", "Consolas", monospace);font-weight:300;font-size:12px;color:var(--fgColor-muted, var(--text-dim));overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0}._toolDuration_ccbef_550{font-size:11px;color:var(--fgColor-muted, var(--text-dim));background:#6e76811f;padding:1px 6px;border-radius:4px;flex-shrink:0;white-space:nowrap}._toolContent_ccbef_560{margin-left:30px;margin-top:4px;margin-bottom:8px;border:1px solid var(--borderColor-default, var(--border));border-radius:6px;overflow:hidden}._toolContentInner_ccbef_569{padding:8px 12px;font-size:12px;font-family:var(--fontStack-monospace, "SFMono-Regular", "Consolas", monospace);max-height:300px;overflow-y:auto;overflow-x:auto;-webkit-overflow-scrolling:touch;background:var(--bgColor-default, var(--bg))}._toolContentInner_ccbef_569 pre{margin:0;white-space:pre-wrap;word-break:break-word;font-family:inherit;font-size:12px;line-height:1.5}._toolContentCollapsed_ccbef_589{display:none}._showMoreButton_ccbef_593{margin-top:4px;background:none;border:none;color:var(--accent);cursor:pointer;font-size:12px;padding:2px 0}._subAgentMeta_ccbef_605{font-size:12px;color:var(--fgColor-muted, var(--text-dim));display:flex;align-items:center;gap:2px;flex-wrap:wrap;min-width:0;overflow:hidden}._subAgentMetaDot_ccbef_616{color:var(--fgColor-muted, var(--text-dim))}._subAgentRunning_ccbef_620{font-size:11px;font-weight:500;color:var(--accent);background:color-mix(in srgb,var(--accent) 12%,transparent);padding:1px 6px;border-radius:4px;flex-shrink:0}._inputContainer_ccbef_632{display:flex;flex-direction:row;gap:8px;align-items:flex-end}._inputTextarea_ccbef_639{flex:1;resize:none;border:1px solid var(--border);border-radius:12px;padding:12px 16px;min-height:44px;max-height:200px;font-size:14px;line-height:1.45;color:var(--text);background:var(--surface);outline:none;font-family:inherit;transition:border-color .15s,box-shadow .15s}._inputTextarea_ccbef_639::placeholder{color:var(--text-muted)}._inputTextarea_ccbef_639:focus{border-color:var(--accent);box-shadow:0 0 0 2px color-mix(in srgb,var(--accent) 20%,transparent)}._sendButton_ccbef_667{width:40px;height:40px;border-radius:50%;background:var(--accent);color:#fff;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:background .15s,transform .1s,opacity .15s}._sendButton_ccbef_667:hover{background:var(--accent-hover)}._sendButton_ccbef_667:active{transform:scale(.93)}._sendButton_ccbef_667:disabled{opacity:.3;pointer-events:none}._stopButton_ccbef_698{width:40px;height:40px;border-radius:50%;background:var(--danger);color:#fff;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:background .15s,transform .1s}._stopButton_ccbef_698:hover{background:var(--danger-hover)}._stopButton_ccbef_698:active{transform:scale(.93)}._emptyState_ccbef_725{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:80px 24px;text-align:center}._emptyIcon_ccbef_735{font-size:48px;opacity:.4}._emptyTitle_ccbef_740{font-size:18px;font-weight:600;color:var(--text);margin:12px 0 4px}._emptyHint_ccbef_747{font-size:14px;color:var(--text-secondary);max-width:400px;line-height:1.5;text-align:center}._systemMessage_ccbef_757{display:flex;justify-content:center;animation:_messageIn_ccbef_1 .2s ease-out}._systemContent_ccbef_763{color:var(--text-dim);font-size:13px;text-align:center;padding:6px 12px}._errorMessage_ccbef_770{display:flex;flex-direction:row;align-items:flex-start;gap:10px;animation:_messageIn_ccbef_1 .2s ease-out}._errorContent_ccbef_778{background:#dc26261a;border:1px solid rgba(220,38,38,.25);border-radius:8px;padding:10px 14px;font-size:14px;line-height:1.55;color:var(--text)}[data-theme=light] ._errorContent_ccbef_778{background:#dc26260f;border-color:#dc262633}._streamingCursor_ccbef_795{display:inline-block;animation:_agent-cursor-blink_ccbef_1 .8s step-end infinite;color:var(--accent);font-weight:600}@keyframes _agent-cursor-blink_ccbef_1{50%{opacity:0}}._rawTerminalContainer_ccbef_808{flex:1;overflow:hidden}._hidden_ccbef_813{display:none}._scrollAnchor_ccbef_819{height:1px;width:100%}._chatPanelWrapper_ccbef_824{flex:1;min-height:0;display:flex;flex-direction:column;overflow:hidden}._sessionPicker_ccbef_834{padding:16px;max-width:900px;margin:0 auto}._sessionPickerTitle_ccbef_839{font-size:16px;font-weight:600;margin-bottom:12px;color:var(--text)}._sessionItem_ccbef_845{display:flex;align-items:center;gap:12px;padding:10px 12px;border-radius:8px;cursor:pointer;transition:background .15s;border:1px solid transparent}._sessionItem_ccbef_845:hover{background:var(--surface);border-color:var(--border)}._sessionItemIcon_ccbef_859{font-size:16px;flex-shrink:0;color:var(--text-dim)}._sessionItemTitle_ccbef_864{font-weight:500;font-size:14px;color:var(--text)}._sessionItemMeta_ccbef_869{font-size:12px;color:var(--text-dim)}._sessionHeader_ccbef_876{padding:16px 0;border-bottom:1px solid var(--border);margin-bottom:16px}._sessionTitle_ccbef_881{font-size:20px;font-weight:600;color:var(--text)}._sessionMeta_ccbef_886{font-size:13px;color:var(--text-secondary);margin-top:4px;display:flex;align-items:center;gap:8px;flex-wrap:wrap}._sessionMetaBadge_ccbef_895{background:#6e768126;padding:2px 8px;border-radius:4px;font-size:12px}@media(max-width:768px){._chatPanel_ccbef_15{padding:16px 12px}._chatPanelInner_ccbef_24{max-width:100%}._userBubble_ccbef_78{padding:12px 16px}._inputArea_ccbef_30{padding:10px 12px calc(10px + env(safe-area-inset-bottom,0px))}._emptyState_ccbef_725{padding:48px 16px}._toolDetail_ccbef_526,._toolPath_ccbef_538,._toolTitle_ccbef_508{overflow-x:auto;-webkit-overflow-scrolling:touch;text-overflow:unset;scrollbar-width:none}._toolDetail_ccbef_526::-webkit-scrollbar,._toolPath_ccbef_538::-webkit-scrollbar,._toolTitle_ccbef_508::-webkit-scrollbar{display:none}}@media(max-width:480px){._chatPanel_ccbef_15{padding:12px 8px}._userBubble_ccbef_78{padding:10px 14px}._inputArea_ccbef_30{padding:8px 8px calc(8px + env(safe-area-inset-bottom,0px))}._inputTextarea_ccbef_639{font-size:16px;padding:8px 12px;border-radius:10px;min-height:40px}._sendButton_ccbef_667,._stopButton_ccbef_698{width:36px;height:36px}._codeBlock_ccbef_380{border-radius:6px;margin:6px 0}._codePre_ccbef_414{padding:10px 12px;font-size:12px}._emptyState_ccbef_725{padding:32px 12px}._emptyTitle_ccbef_740{font-size:16px}._emptyHint_ccbef_747{font-size:13px}}._diffContainer_1glfd_3{border-radius:8px;overflow:hidden;font-family:SF Mono,Fira Code,Cascadia Code,monospace;font-size:13px;line-height:20px;background:#0d111780}._hunkHeader_1glfd_12{background:#388bfd1a;color:var(--text-dim);padding:4px 10px;font-size:12px}._diffTable_1glfd_19{border-collapse:collapse;border-spacing:0;width:100%}._colNum_1glfd_26{width:44px}._colContent_1glfd_29{width:100%}._diffTable_1glfd_19 td{padding:0;vertical-align:top}._diffContainer_1glfd_3 ._diffTable_1glfd_19 td{border:none;padding:0}._lineNum_1glfd_45{min-width:44px;padding:0 8px;text-align:center;color:#8b949e99;-webkit-user-select:none;user-select:none;font-size:12px;white-space:nowrap}._lineContent_1glfd_56{width:100%}._lineContentInner_1glfd_60{display:flex;padding:0 8px 0 0}._lineMarker_1glfd_65{flex-shrink:0;width:20px;text-align:center;-webkit-user-select:none;user-select:none;font-weight:600}._lineText_1glfd_73{flex:1;min-width:0;white-space:pre-wrap;word-break:break-all}._lineNumAdd_1glfd_81{background-color:#2ea04366;color:#3fb950cc}._lineContentAdd_1glfd_85{background-color:#2ea04326}._lineContentAdd_1glfd_85 ._lineMarker_1glfd_65{color:#3fb950}._lineNumDel_1glfd_93{background-color:#f8514966;color:#f85149cc}._lineContentDel_1glfd_97{background-color:#f8514926}._lineContentDel_1glfd_97 ._lineMarker_1glfd_65{color:#f85149}._showAllBtn_1glfd_107{display:flex;align-items:center;justify-content:center;gap:4px;width:100%;padding:6px 0;border:none;background:#388bfd14;color:var(--text-dim);font-size:12px;cursor:pointer;font-family:inherit}._showAllBtn_1glfd_107:hover{background:#388bfd26;color:var(--text-secondary)}._showAllArrow_1glfd_125{font-size:14px;line-height:1}._rawDiff_1glfd_130{padding:8px 12px;font-size:13px;font-family:monospace;white-space:pre-wrap}@media(max-width:768px){._diffContainer_1glfd_3{font-size:12px;line-height:18px}._lineNum_1glfd_45{min-width:32px;padding:0 4px;font-size:11px}._colNum_1glfd_26{width:32px}._lineMarker_1glfd_65{width:16px}}@media(max-width:480px){._lineNum_1glfd_45:first-child,._colNum_1glfd_26:first-child{display:none}}._container_mmoc5_3{display:flex;flex-direction:column;height:100%;background:var(--bg);color:var(--text);overflow:hidden;overscroll-behavior:none}._statusBar_mmoc5_15{display:flex;align-items:center;gap:6px;padding:6px 16px;font-size:12px;color:var(--text-dim);border-bottom:1px solid var(--border);flex-shrink:0}._metaBar_mmoc5_28{display:flex;align-items:center;gap:12px;padding:4px 16px;font-size:11px;color:var(--text-dim);border-bottom:1px solid var(--border);flex-shrink:0;overflow-x:auto}._metaItem_mmoc5_40{display:flex;align-items:center;gap:4px;white-space:nowrap}._terminalBtn_mmoc5_47{margin-left:auto;display:flex;align-items:center;justify-content:center;width:26px;height:26px;border-radius:6px;border:1px solid var(--border);background:transparent;color:var(--text-secondary);cursor:pointer;transition:background .15s,color .15s;flex-shrink:0}._terminalBtn_mmoc5_47:hover{background:var(--surface);color:var(--text)}._terminalBtn_mmoc5_47 svg{width:14px;height:14px}._modelSelect_mmoc5_75{margin-left:auto;background:var(--surface);color:var(--text-secondary);border:1px solid var(--border);border-radius:4px;padding:2px 6px;font-size:11px;outline:none;cursor:pointer}._modelSelect_mmoc5_75:disabled{opacity:.4;cursor:default}._statusDot_mmoc5_92{width:6px;height:6px;border-radius:50%;flex-shrink:0}._statusDot_mmoc5_92[data-status=idle]{background:#3fb950}._statusDot_mmoc5_92[data-status=thinking],._statusDot_mmoc5_92[data-status=streaming]{background:#d29922;animation:_pulse_mmoc5_1 1.5s infinite}._statusDot_mmoc5_92[data-status=disconnected]{background:#f85149}._messages_mmoc5_113{flex:1;min-height:0;overflow-y:auto;overflow-x:hidden;padding:16px;scroll-behavior:smooth;overscroll-behavior:contain}._messagesInner_mmoc5_123{max-width:900px;margin:0 auto;display:flex;flex-direction:column;gap:0}._userMsg_mmoc5_133{max-width:min(60ch,90%);padding-bottom:16px;align-self:flex-end;display:flex;align-items:center;gap:10px;animation:_messageIn_mmoc5_1 .2s ease-out}._userBubble_mmoc5_143{border-radius:12px;background:var(--surface);padding:12px 20px;font-size:14px;line-height:1.5;white-space:pre-wrap;overflow-wrap:break-word;min-width:0}._userAvatar_mmoc5_154{flex-shrink:0;align-self:flex-start;display:flex;align-items:center;justify-content:center;padding-top:8px}._avatarCircle_mmoc5_165{width:24px;height:24px;border-radius:50%;background:var(--surface);display:flex;align-items:center;justify-content:center;flex-shrink:0;color:var(--text-secondary)}._avatarCircle_mmoc5_165 svg{width:14px;height:14px}._assistantMsg_mmoc5_184{display:flex;align-items:flex-start;padding-inline:6px 8px;padding-bottom:8px;animation:_messageIn_mmoc5_1 .2s ease-out}._assistantContent_mmoc5_192{flex:1;min-width:0;padding:2px 0;line-height:1.65;font-size:14px;color:var(--text);word-wrap:break-word;overflow-wrap:break-word}._markdownWrapper_mmoc5_203{padding:0 8px;line-height:1.65;font-size:14px;color:var(--text);word-wrap:break-word;overflow-wrap:break-word}._markdownWrapper_mmoc5_203 pre{overflow-x:auto;-webkit-overflow-scrolling:touch;max-width:100%}._markdownWrapper_mmoc5_203 h1,._markdownWrapper_mmoc5_203 h2,._markdownWrapper_mmoc5_203 h3,._assistantContent_mmoc5_192 h1,._assistantContent_mmoc5_192 h2,._assistantContent_mmoc5_192 h3{font-weight:600;margin-top:16px;margin-bottom:8px;line-height:1.3}._markdownWrapper_mmoc5_203 h1,._assistantContent_mmoc5_192 h1{font-size:1.4em}._markdownWrapper_mmoc5_203 h2,._assistantContent_mmoc5_192 h2{font-size:1.2em}._markdownWrapper_mmoc5_203 h3,._assistantContent_mmoc5_192 h3{font-size:1.05em}._markdownWrapper_mmoc5_203 p,._assistantContent_mmoc5_192 p{margin:8px 0}._markdownWrapper_mmoc5_203 p:first-child,._assistantContent_mmoc5_192 p:first-child{margin-top:0}._markdownWrapper_mmoc5_203 p:last-child,._assistantContent_mmoc5_192 p:last-child{margin-bottom:0}._markdownWrapper_mmoc5_203 ul,._markdownWrapper_mmoc5_203 ol,._assistantContent_mmoc5_192 ul,._assistantContent_mmoc5_192 ol{padding-left:24px;margin:8px 0}._markdownWrapper_mmoc5_203 li,._assistantContent_mmoc5_192 li{margin:4px 0}._markdownWrapper_mmoc5_203 strong,._assistantContent_mmoc5_192 strong{font-weight:600}._markdownWrapper_mmoc5_203 a,._assistantContent_mmoc5_192 a{color:var(--accent);text-decoration:none}._markdownWrapper_mmoc5_203 a:hover,._assistantContent_mmoc5_192 a:hover{text-decoration:underline}._markdownWrapper_mmoc5_203 code,._assistantContent_mmoc5_192 code{background:#6e768133;padding:2px 6px;border-radius:4px;font-size:13px;font-family:SF Mono,Fira Code,Cascadia Code,Consolas,monospace}._markdownWrapper_mmoc5_203 pre code,._assistantContent_mmoc5_192 pre code{background:none;padding:0;border-radius:0;font-size:inherit}._markdownWrapper_mmoc5_203 blockquote,._assistantContent_mmoc5_192 blockquote{border-left:3px solid var(--border);padding-left:12px;margin:8px 0;color:var(--text-secondary)}._markdownWrapper_mmoc5_203 table,._assistantContent_mmoc5_192 table{border-collapse:collapse;margin:8px 0;font-size:13px}._markdownWrapper_mmoc5_203 th,._markdownWrapper_mmoc5_203 td,._assistantContent_mmoc5_192 th,._assistantContent_mmoc5_192 td{border:1px solid rgba(110,118,129,.2);padding:8px 12px}._markdownWrapper_mmoc5_203 th,._assistantContent_mmoc5_192 th{background:#7f7f7f1a;font-weight:600}._taskBlock_mmoc5_336{margin:8px 0;border-radius:6px;overflow:hidden}._taskHeader_mmoc5_342{display:flex;align-items:center;gap:6px;padding:6px 8px;cursor:pointer;color:var(--text-secondary);border-radius:6px;transition:background-color .15s;-webkit-user-select:none;user-select:none}._taskHeader_mmoc5_342:hover{background-color:var(--surface)}._taskLabel_mmoc5_358{font-weight:500;font-size:13px;color:var(--text-secondary);white-space:nowrap}._taskName_mmoc5_365{font-size:13px;color:var(--text-secondary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0}._taskChevron_mmoc5_375{flex-shrink:0;transition:transform .2s;color:var(--text-dim);display:flex;align-items:center}._taskChevronOpen_mmoc5_383{transform:rotate(90deg)}._taskContent_mmoc5_387{margin-left:28px;padding-bottom:8px}._taskPrompt_mmoc5_392{border-left:3px solid var(--accent);padding:10px 14px;margin-bottom:10px;font-size:13px;color:var(--text-secondary);line-height:1.5;background:color-mix(in srgb,var(--accent) 8%,transparent);border-radius:0 6px 6px 0}._taskResult_mmoc5_403{font-size:14px;line-height:1.6;color:var(--text);padding:8px 4px 0;border-top:1px solid var(--border);margin-top:8px}._taskRunning_mmoc5_413{display:flex;align-items:center;gap:6px;padding:4px 0}._toolBlock_mmoc5_420{max-width:100%;position:relative}._toolHeader_mmoc5_425{border-radius:6px;align-items:center;gap:8px;row-gap:4px;min-width:0;min-height:28px;color:var(--text-secondary);padding:0 8px 0 6px;background-color:transparent;border:none;flex-flow:row;flex:1;display:flex;position:relative;cursor:pointer;width:100%;transition:background-color .15s}._toolHeader_mmoc5_425:hover{background-color:var(--surface)}._toolChevron_mmoc5_449{flex-shrink:0;transition:transform .2s;transform-origin:50%;will-change:transform;color:var(--text-dim);display:flex;align-items:center}._toolChevronOpen_mmoc5_459{transform:rotate(90deg)}._toolIcon_mmoc5_463{width:16px;flex-shrink:0;justify-content:center;align-items:center;display:flex;color:var(--text-dim)}._toolName_mmoc5_472{font-weight:500;font-size:12px;color:var(--text-secondary);white-space:nowrap;text-overflow:ellipsis;overflow:hidden;text-align:start;flex:0 auto}._toolAction_mmoc5_483{font-weight:500;font-size:13px;color:var(--text-secondary);white-space:nowrap}._toolDetail_mmoc5_490{font-family:var(--fontStack-monospace, "SF Mono", "SFMono-Regular", "Consolas", monospace);font-size:12px;font-weight:300;color:var(--text-dim);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0}._toolPath_mmoc5_502{font-family:var(--fontStack-monospace, "SFMono-Regular", "Consolas", monospace);font-weight:300;font-size:12px;color:var(--text-dim);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0}._toolDuration_mmoc5_514{font-size:11px;color:var(--text-dim);background:#6e76811f;padding:1px 6px;border-radius:4px;flex-shrink:0;white-space:nowrap}._toolRunning_mmoc5_524{font-size:11px;font-weight:400;color:var(--text-dim);padding:1px 6px;flex-shrink:0}._toolContent_mmoc5_532{margin-left:30px;margin-top:4px;margin-bottom:8px;border:1px solid var(--border);border-radius:6px;overflow:hidden}._toolContentCollapsed_mmoc5_541{display:none}._toolContentInner_mmoc5_545{padding:8px 12px;font-size:12px;font-family:var(--fontStack-monospace, "SFMono-Regular", "Consolas", monospace);max-height:300px;overflow-y:auto;overflow-x:auto;-webkit-overflow-scrolling:touch;background:var(--bg)}._toolContentDiff_mmoc5_557{padding:0;max-height:none;overflow:visible}._toolContentInner_mmoc5_545>pre,._toolContentInner_mmoc5_545>div>pre{margin:0;white-space:pre-wrap;word-break:break-word;font-family:inherit;font-size:12px;line-height:1.5}._reasoningBlock_mmoc5_576{font-size:12px;color:var(--text-dim);margin-bottom:8px;background:#6e768114;border-radius:6px;border-left:3px solid var(--accent);overflow:hidden}._reasoningSummary_mmoc5_586{cursor:pointer;padding:6px 10px;font-style:italic;-webkit-user-select:none;user-select:none;list-style:none}._reasoningSummary_mmoc5_586::-webkit-details-marker{display:none}._reasoningContent_mmoc5_598{padding:0 10px 8px;white-space:pre-wrap;line-height:1.5}._chatKeybar_mmoc5_606{display:none;flex-shrink:0;border-top:1px solid var(--border);padding:4px 8px;gap:4px;overflow-x:auto;-webkit-overflow-scrolling:touch}._chatKeybar_mmoc5_606 button{background:var(--surface);border:1px solid var(--border);color:var(--text-secondary);padding:4px 10px;border-radius:6px;font-size:12px;white-space:nowrap;cursor:pointer;flex-shrink:0;-webkit-tap-highlight-color:transparent}._chatKeybar_mmoc5_606 button:active{background:var(--border)}._inputBar_mmoc5_635{flex-shrink:0;padding:8px 16px;padding-bottom:calc(8px + var(--safe-bottom));background:var(--bg)}._inputBarKeyboardOpen_mmoc5_642{padding-bottom:4px}._inputContainer_mmoc5_646{max-width:900px;margin:0 auto;width:100%;border:1px solid var(--border);border-radius:12px;background:var(--surface);transition:border-color .15s,box-shadow .15s;display:flex;flex-direction:column;overflow:hidden}._inputContainerFocused_mmoc5_661{border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 20%,transparent)}._input_mmoc5_635{flex:1;resize:none;border:none;padding:12px 14px 4px;background:transparent;color:var(--text);font-size:14px;line-height:1.5;font-family:inherit;outline:none;min-height:44px;max-height:200px}._input_mmoc5_635::placeholder{color:var(--text-dim)}._input_mmoc5_635:disabled{opacity:.5}._inputActions_mmoc5_689{display:flex;align-items:center;justify-content:flex-end;gap:4px;padding:4px 8px 8px}._sendBtn_mmoc5_697{width:32px;height:32px;border-radius:8px;border:none;background:transparent;color:var(--text-dim);cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:color .15s,background .15s}._sendBtn_mmoc5_697:hover{background:var(--bgColor-muted, rgba(110, 118, 129, .1));color:var(--text)}._sendBtn_mmoc5_697:disabled{opacity:.3;pointer-events:none}._stopBtn_mmoc5_724{width:32px;height:32px;border-radius:8px;border:none;background:transparent;color:var(--danger, #f85149);cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:background .15s}._stopBtn_mmoc5_724:hover{background:#f851491a}._micBtn_mmoc5_743{width:32px;height:32px;border-radius:8px;border:none;background:transparent;color:var(--text-dim);cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:color .15s,background .15s}._micBtn_mmoc5_743:hover{background:var(--bgColor-muted, rgba(110, 118, 129, .1));color:var(--text)}._micBtnRecording_mmoc5_765{color:var(--danger, #f85149);background:#f8514926;animation:_micPulse_mmoc5_1 1s ease-in-out infinite}@keyframes _micPulse_mmoc5_1{0%,to{opacity:1;background:#f8514926}50%{opacity:.6;background:#f851494d}}._empty_mmoc5_785{display:flex;flex-direction:column;align-items:center;gap:12px;padding:60px 24px;text-align:center}._emptyIcon_mmoc5_794{font-size:48px;opacity:.4}._emptyTitle_mmoc5_799{font-size:18px;font-weight:600;color:var(--text);margin:12px 0 4px}._emptyHint_mmoc5_806{font-size:14px;color:var(--text-secondary);max-width:400px;line-height:1.5}._systemMsg_mmoc5_815{display:flex;justify-content:center;animation:_messageIn_mmoc5_1 .2s ease-out}._systemContent_mmoc5_821{color:var(--text-dim);font-size:13px;text-align:center;padding:6px 12px}._cursor_mmoc5_830{display:inline-block;animation:_blink_mmoc5_1 .8s step-end infinite;color:var(--accent);font-weight:600}._inputRequest_mmoc5_839{margin:12px 0 12px 28px;padding:16px;border:1px solid var(--border);border-radius:8px;background:var(--surface)}._inputRequestQuestion_mmoc5_847{font-weight:500;font-size:14px;margin-bottom:10px;color:var(--text)}._inputRequestChoices_mmoc5_854{display:flex;flex-direction:column;gap:6px;margin-bottom:8px}._inputRequestChoice_mmoc5_854{padding:8px 14px;border:1px solid var(--border);border-radius:6px;background:var(--bg);color:var(--text);cursor:pointer;text-align:left;font-size:13px;transition:background .15s}._inputRequestChoice_mmoc5_854:hover{background:var(--surface)}._inputRequestFreeform_mmoc5_877{display:flex;gap:8px}._inputRequestInput_mmoc5_882{flex:1;padding:8px 12px;border:1px solid var(--border);border-radius:6px;background:var(--bg);color:var(--text);font-size:13px;outline:none}._inputRequestSend_mmoc5_893{padding:8px 16px;border-radius:6px;background:var(--accent);color:#fff;border:none;cursor:pointer;font-size:13px}._inputRequestSend_mmoc5_893:disabled{opacity:.4;cursor:default}._thinking_mmoc5_910{display:flex;align-items:flex-start;padding-inline:6px 8px;padding-bottom:8px}._thinkingDots_mmoc5_917{display:inline-flex;gap:4px;align-items:center}._thinkingDot_mmoc5_917{width:6px;height:6px;border-radius:50%;background:var(--accent);animation:_dotPulse_mmoc5_1 1.4s ease-in-out infinite}._thinkingDot_mmoc5_917:nth-child(2){animation-delay:.2s}._thinkingDot_mmoc5_917:nth-child(3){animation-delay:.4s}._scrollAnchor_mmoc5_940{height:1px;width:100%}@keyframes _blink_mmoc5_1{50%{opacity:0}}@keyframes _pulse_mmoc5_1{0%,to{opacity:1}50%{opacity:.4}}@keyframes _dotPulse_mmoc5_1{0%,to{transform:scale(.5);opacity:.4}50%{transform:scale(1);opacity:1}}@keyframes _messageIn_mmoc5_1{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@media(max-width:768px){._messages_mmoc5_113{padding:12px}._inputBar_mmoc5_635{padding:4px 8px}._input_mmoc5_635{font-size:16px;padding:10px 12px 4px}._userMsg_mmoc5_133{max-width:90%}._empty_mmoc5_785{padding:48px 16px}._chatKeybar_mmoc5_606{display:flex}._toolDetail_mmoc5_490,._toolPath_mmoc5_502,._taskName_mmoc5_365{overflow-x:auto;-webkit-overflow-scrolling:touch;text-overflow:unset;scrollbar-width:none}._toolDetail_mmoc5_490::-webkit-scrollbar,._toolPath_mmoc5_502::-webkit-scrollbar,._taskName_mmoc5_365::-webkit-scrollbar{display:none}}@media(max-width:480px){._messages_mmoc5_113{padding:12px 8px}._inputBar_mmoc5_635{padding:4px 8px}._input_mmoc5_635{font-size:16px;padding:10px 12px 4px}._empty_mmoc5_785{padding:32px 12px}._emptyTitle_mmoc5_799{font-size:16px}._emptyHint_mmoc5_806{font-size:13px}}._tabBar_16ypp_1{display:flex;align-items:center;gap:2px;padding:0 8px;height:38px;background:var(--surface);border-bottom:1px solid var(--border);flex-shrink:0;overflow:hidden}._tabBarInline_16ypp_13{flex:1;display:flex;align-items:center;min-width:0;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none;gap:2px;padding:0 4px;height:100%}._tabBarInline_16ypp_13::-webkit-scrollbar{display:none}@media(max-width:640px){._tabBar_16ypp_1{display:none}}@media(pointer:coarse){._addBtnLabel_16ypp_37{display:none}}._tabScroller_16ypp_42{display:flex;align-items:center;gap:2px;overflow-x:auto;overflow-y:hidden;flex:1;min-width:0;scrollbar-width:none}._tabScroller_16ypp_42::-webkit-scrollbar{display:none}._tab_16ypp_1{position:relative;display:flex;align-items:center;gap:6px;padding:4px 10px;border-radius:6px;cursor:pointer;white-space:nowrap;-webkit-user-select:none;user-select:none;font-size:12px;font-weight:500;color:var(--text-dim);transition:background .15s,color .15s;border-left:3px solid transparent;flex-shrink:0;height:30px;-webkit-tap-highlight-color:transparent}._tab_16ypp_1:hover{background:var(--border);color:var(--text)}._tabActive_16ypp_84{color:var(--text);font-weight:600;background:var(--bg)}._tabSplit_16ypp_90{background:#0078d41a;color:var(--text)}._colorDot_16ypp_95{width:8px;height:8px;border-radius:50%;flex-shrink:0}._copilotIcon_16ypp_102{color:#a855f6;flex-shrink:0;line-height:1;display:flex;align-items:center}._tabName_16ypp_110{max-width:100px;overflow:hidden;text-overflow:ellipsis}._tabActivity_16ypp_116{font-size:10px;color:var(--text-muted);flex-shrink:0}._closeBtn_16ypp_122{display:none;align-items:center;justify-content:center;background:none;border:none;width:18px;height:18px;border-radius:4px;font-size:14px;line-height:1;color:var(--text-muted);cursor:pointer;padding:0;transition:background .15s,color .15s}._tab_16ypp_1:hover ._closeBtn_16ypp_122,._tabActive_16ypp_84 ._closeBtn_16ypp_122{display:flex}._closeBtn_16ypp_122:hover{color:var(--danger);background:transparent}._addBtn_16ypp_37{display:flex;align-items:center;justify-content:center;gap:4px;padding:0 10px;height:28px;border-radius:6px;font-size:13px;color:var(--text-dim);flex-shrink:0;white-space:nowrap;transition:background .15s,color .15s}._addBtn_16ypp_37:hover{background:var(--bg);color:var(--text)}._statusDot_16ypp_173{width:6px;height:6px;border-radius:50%;flex-shrink:0;margin-left:4px}._unreadDot_16ypp_181{width:6px;height:6px;border-radius:50%;background:var(--accent);flex-shrink:0;animation:_pulse_16ypp_1 1.5s ease-in-out infinite}@keyframes _pulse_16ypp_1{0%,to{opacity:1}50%{opacity:.3}}._preview_pobdq_1{position:absolute;top:100%;left:50%;transform:translate(-50%);z-index:100;margin-top:6px;padding:8px 10px;background:var(--surface);border:1px solid var(--border);border-radius:6px;box-shadow:0 4px 16px #0006;min-width:220px;max-width:360px;pointer-events:none;animation:_fade-in_pobdq_1 .15s ease-out}._lines_pobdq_19{font-family:Cascadia Code,Fira Code,Menlo,Consolas,monospace;font-size:11px;line-height:1.4;color:var(--text-secondary);white-space:pre;overflow:hidden;text-overflow:ellipsis}._empty_pobdq_29{color:var(--text-dim);font-style:italic;font-family:inherit;font-size:12px}._touchBar_12i99_1{position:fixed;bottom:var(--keyboard-height, 0px);left:0;right:0;z-index:50;height:75px;padding:3px 4px 4px;transition:bottom .15s ease-out;background:linear-gradient(to bottom,var(--bg) 0%,var(--surface) 100%);display:flex;flex-direction:column;gap:4px;justify-content:center;user-select:none;-webkit-user-select:none;touch-action:none;overscroll-behavior:none}[data-keyboard-open] ._touchBar_12i99_1{background:transparent;bottom:var(--keyboard-height, 0px)}._row_12i99_33{display:grid;grid-template-columns:repeat(8,1fr);gap:4px;padding:0 2px}._keyBtn_12i99_40{min-width:0;height:32px;background:var(--key-bg);color:var(--text);border:1px solid var(--key-border);border-radius:6px;font-size:13px;font-weight:500;display:flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:inset 0 1px #ffffff14,0 1px 0 var(--key-shadow),0 2px 3px #0000008c,0 3px 6px #0006;-webkit-tap-highlight-color:transparent;font-family:inherit;transition:background .08s}._special_12i99_63,._modifier_12i99_69{background:var(--key-special-bg);font-size:12px;font-weight:600}._modifier_12i99_69._active_12i99_75{background:var(--accent, #0078d4);box-shadow:0 1px #0003,0 0 10px #0078d480}._iconBtn_12i99_82{font-size:16px}._keyEnter_12i99_86{grid-column:span 2;background:var(--accent, #0078d4);color:#fff;font-size:20px}._keyDanger_12i99_93{background:#5c2222;color:#f87171}._flash_12i99_98{background:var(--accent, #0078d4)!important;color:#fff!important}._micBtn_12i99_103{transition:transform .2s ease,border-radius .2s ease,width .2s ease;position:relative}._recording_12i99_111{background:#dc2626!important;color:#fff!important;transform:scale(2);border-radius:50%;aspect-ratio:1;z-index:10;animation:_micRipple_12i99_1 1s ease-out infinite;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1px}._micDot_12i99_126{display:block;width:6px;height:6px;border-radius:50%;background:#fff;animation:_micDotBlink_12i99_1 1s ease-in-out infinite}._lockHint_12i99_135{position:absolute;bottom:calc(100% + 6px);left:50%;opacity:.7;animation:_lockHintBounce_12i99_1 1.2s ease-in-out infinite;filter:drop-shadow(0 1px 3px rgba(0,0,0,.4))}@keyframes _micDotBlink_12i99_1{0%,to{opacity:1}50%{opacity:.3}}@keyframes _lockHintBounce_12i99_1{0%,to{transform:translate(-50%) translateY(0);opacity:.5}50%{transform:translate(-50%) translateY(-4px);opacity:1}}._micLocked_12i99_166{animation:_micLockedPulse_12i99_1 1.5s ease-in-out infinite;transform:scale(2);border-radius:50%;aspect-ratio:1}@keyframes _micRipple_12i99_1{0%{box-shadow:0 0 #dc262680}70%{box-shadow:0 0 0 22px #dc262600}to{box-shadow:0 0 #dc262600}}@keyframes _micLockedPulse_12i99_1{0%,to{box-shadow:0 0 0 4px #dc26264d}50%{box-shadow:0 0 0 8px #dc262626}}@media(orientation:landscape)and (max-height:500px){._touchBar_12i99_1{height:48px;padding:4px}._keyBtn_12i99_40{height:28px;font-size:12px}}._searchBar_1su33_1{position:absolute;top:calc(40px + env(safe-area-inset-top,0px));right:0;z-index:50;display:flex;align-items:center;gap:6px;padding:6px 12px;background:var(--surface, #1e1e2e);border-bottom:1px solid var(--border, #333);box-shadow:0 2px 8px #0000004d;animation:_slide-down_1su33_1 .15s ease}._input_1su33_16{flex:1;min-width:0;padding:6px 10px;border:1px solid var(--border, #444);border-radius:4px;background:var(--input-bg, #111);color:var(--text, #ccc);font-size:13px;outline:none;font-family:inherit}._input_1su33_16:focus{border-color:var(--accent, #4a9eff)}._btn_1su33_33{background:none;border:1px solid var(--border, #444);border-radius:4px;color:var(--text, #ccc);cursor:pointer;padding:4px 8px;font-size:13px;line-height:1}._btn_1su33_33:hover{background:var(--border, #333)}._btnActive_1su33_48{background:var(--accent, #4a9eff);color:#fff;border-color:var(--accent, #4a9eff)}._indicator_1su33_54{font-size:12px;color:var(--text-muted, #666);white-space:nowrap}@keyframes _slide-down_1su33_1{0%{transform:translateY(-100%)}to{transform:translateY(0)}}._overlay_153fc_1{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--overlay-bg);z-index:200;animation:_fadeIn_153fc_1 .15s ease-out}._content_153fc_9{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:24px;width:min(380px,calc(100vw - 32px));max-height:85dvh;overflow-y:auto;z-index:201;animation:_slideUp_153fc_1 .15s ease-out}._title_153fc_25{font-size:1.1rem;font-weight:600;color:var(--text);margin:0 0 8px}._description_153fc_32{font-size:.85rem;color:var(--text-secondary);margin:0 0 20px}._label_153fc_38{display:block;font-size:.8rem;color:var(--text-secondary);margin-bottom:6px}._input_153fc_45{width:100%;padding:10px 12px;background:var(--bg);border:1px solid var(--border);border-radius:6px;color:var(--text);font-size:1rem;font-family:inherit;outline:none;box-sizing:border-box}._input_153fc_45:focus{border-color:var(--accent)}._input_153fc_45::-webkit-inner-spin-button,._input_153fc_45::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}._input_153fc_45[type=number]{-moz-appearance:textfield}._actions_153fc_73{display:flex;justify-content:flex-end;gap:8px;margin-top:20px}._cancelBtn_153fc_80{padding:8px 16px;background:transparent;border:1px solid var(--border);border-radius:6px;color:var(--text-secondary);cursor:pointer;font-size:.9rem;transition:border-color .15s}._cancelBtn_153fc_80:hover{border-color:var(--text-secondary)}._openBtn_153fc_95{padding:8px 20px;background:var(--accent);border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:.9rem;font-weight:500;transition:background .15s}._openBtn_153fc_95:hover:not(:disabled){background:var(--accent-hover)}._openBtn_153fc_95:disabled{opacity:.5;cursor:not-allowed}._close_153fc_116{position:absolute;top:12px;right:12px;background:none;border:none;color:var(--text-dim);cursor:pointer;font-size:1.2rem;line-height:1;padding:4px}._close_153fc_116:hover{color:var(--text)}@media(pointer:coarse){._content_153fc_9{top:30%;transform:translate(-50%,-30%)}}@keyframes _fadeIn_153fc_1{0%{opacity:0}to{opacity:1}}@keyframes _slideUp_153fc_1{0%{opacity:0;transform:translate(-50%,-48%)}to{opacity:1;transform:translate(-50%,-50%)}}._changelogHeader_17ycj_1{font-size:.85rem;font-weight:600;color:var(--text);margin-top:4px}._changelog_17ycj_1{max-height:320px;overflow-y:auto;padding:10px 12px;background:var(--bg);border:1px solid var(--border);border-radius:6px;font-size:.8rem;color:var(--text);line-height:1.5}._changelog_17ycj_1 h1,._changelog_17ycj_1 h2,._changelog_17ycj_1 h3{font-size:.9rem;font-weight:600;color:var(--text);margin:12px 0 6px}._changelog_17ycj_1 h1:first-child,._changelog_17ycj_1 h2:first-child,._changelog_17ycj_1 h3:first-child{margin-top:0}._changelog_17ycj_1 ul{margin:4px 0 8px;padding-left:18px}._changelog_17ycj_1 li{margin:2px 0;color:var(--text-secondary)}._changelog_17ycj_1 a{color:var(--accent)}._changelog_17ycj_1 code{background:var(--surface);padding:1px 4px;border-radius:3px;font-size:.9em}._changelogPlaceholder_17ycj_56{font-size:.8rem;color:var(--text-secondary);padding:8px 0}._wide_17ycj_63{width:min(560px,calc(100vw - 32px))!important}._backdrop_ceh4x_1{position:fixed;top:0;right:0;bottom:0;left:0;z-index:300;background:#0006}._panel_ceh4x_8{position:fixed;top:0;right:-100%;width:min(90vw,300px);height:100%;background:var(--bg, #1e1e2e);border-left:1px solid var(--border, #333);z-index:301;box-shadow:0 8px 24px #0006;display:flex;flex-direction:column;transition:right .25s ease}._panelOpen_ceh4x_23{right:0}._header_ceh4x_27{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;padding-top:calc(12px + env(safe-area-inset-top,0px));border-bottom:1px solid var(--border, #333)}._title_ceh4x_36{font-weight:600;font-size:14px;color:var(--text, #ccc)}._closeBtn_ceh4x_42{background:none;border:none;color:var(--text, #999);cursor:pointer;font-size:18px;padding:4px 8px;border-radius:4px;line-height:1}._closeBtn_ceh4x_42:hover{background:var(--border, #333)}._body_ceh4x_57{overflow-y:auto;flex:1;padding:8px}._section_ceh4x_63{margin-bottom:8px}._sectionTitle_ceh4x_67{font-size:10px;font-weight:700;color:var(--text-muted, #666);text-transform:uppercase;letter-spacing:1px;padding:6px 10px 4px}._btn_ceh4x_76{display:flex;align-items:center;gap:10px;width:100%;background:none;border:none;color:var(--text, #ccc);padding:10px 12px;border-radius:6px;font-size:13px;cursor:pointer;transition:background .15s}._btn_ceh4x_76:hover{background:var(--surface-hover, rgba(255, 255, 255, .08))}._btn_ceh4x_76 svg{width:16px;height:16px;opacity:.7;flex-shrink:0}._themeBackdrop_ceh4x_103{position:fixed;top:0;right:0;bottom:0;left:0;z-index:999}._themeFloating_ceh4x_109{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);width:240px;max-height:min(420px,60vh);display:flex;flex-direction:column;background:var(--surface, #252526);border:1px solid var(--border, #333);border-radius:12px;z-index:1000;box-shadow:0 12px 40px #0006}._list_ceh4x_125{flex:1;overflow-y:auto;padding:8px}._item_ceh4x_131{display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:6px;cursor:pointer;color:var(--text, #ccc);font-size:13px;border:none;background:none;width:100%;text-align:left;transition:background .15s}._item_ceh4x_131:hover,._item_ceh4x_131[data-selected=true],._item_ceh4x_131[aria-selected=true]{background:var(--surface-hover, rgba(255, 255, 255, .08))}._themeRow_ceh4x_153{position:relative;display:flex;align-items:center;width:100%;height:38px;border-radius:6px;overflow:hidden;cursor:pointer;border:2px solid transparent;background:none;padding:0;transition:border-color .15s}._themeRow_ceh4x_153:hover{border-color:var(--border, #555)}._themeRowActive_ceh4x_172,._themeRowActive_ceh4x_172:hover{border-color:var(--accent, #58a6ff)}._themeBar_ceh4x_177{position:absolute;top:0;right:0;bottom:0;left:0;display:flex}._themeLabel_ceh4x_183{position:relative;z-index:1;padding:0 12px;font-size:13px;font-weight:500;color:#fff;text-shadow:0 1px 3px rgba(0,0,0,.7)}._container_tuvxq_1{display:flex;flex-direction:column;min-height:0;flex:1;overflow:hidden}._header_tuvxq_9{display:flex;align-items:center;gap:8px;padding:10px 14px;border-bottom:1px solid var(--border);flex-shrink:0}._backBtn_tuvxq_18{background:none;border:none;color:var(--text-dim);width:28px;height:28px;border-radius:6px;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:16px;flex-shrink:0;padding:0;transition:background .15s,color .15s;-webkit-tap-highlight-color:transparent}._backBtn_tuvxq_18:hover{background:var(--border);color:var(--text)}._headerTitle_tuvxq_43{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--text-dim);flex:1}._breadcrumb_tuvxq_52{display:flex;align-items:center;flex-wrap:wrap;gap:.15rem;font-size:.75rem;color:var(--text-secondary);padding:6px 10px;background:var(--bg);border-bottom:1px solid var(--border);min-height:1.8rem;flex-shrink:0}._breadcrumbSegment_tuvxq_66{background:transparent;border:none;color:var(--accent);cursor:pointer;padding:.1rem .2rem;border-radius:3px;font-size:.75rem;transition:background .1s}._breadcrumbSegment_tuvxq_66:hover{background:var(--surface)}._breadcrumbCurrent_tuvxq_81{color:var(--text);cursor:default}._breadcrumbCurrent_tuvxq_81:hover{background:transparent}._breadcrumbSep_tuvxq_91{color:var(--text-muted);-webkit-user-select:none;user-select:none}._list_tuvxq_96{flex:1;min-height:0;overflow-y:auto;display:flex;flex-direction:column;gap:1px;padding:4px;-webkit-overflow-scrolling:touch}._entry_tuvxq_107{display:flex;align-items:center;gap:.5rem;padding:6px 8px;border-radius:6px;border:none;background:transparent;color:var(--text);font-size:.82rem;cursor:pointer;text-align:left;width:100%;transition:background .1s;-webkit-tap-highlight-color:transparent}._entry_tuvxq_107:hover{background:var(--surface)}._entryIcon_tuvxq_128{flex-shrink:0;font-size:.9rem}._entryName_tuvxq_133{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}button._entryName_tuvxq_133{background:none;border:none;padding:0;font:inherit;color:inherit;text-align:left;cursor:pointer}._entryMeta_tuvxq_150{font-size:.7rem;color:var(--text-muted);flex-shrink:0;white-space:nowrap}._downloadBtn_tuvxq_157{background:none;border:none;color:var(--text-muted);cursor:pointer;padding:2px 4px;border-radius:4px;font-size:.8rem;flex-shrink:0;transition:background .15s,color .15s;-webkit-tap-highlight-color:transparent}._downloadBtn_tuvxq_157:hover{background:var(--accent);color:var(--bg)}._loading_tuvxq_177{display:flex;align-items:center;justify-content:center;padding:2rem;color:var(--text-dim);font-size:.85rem}._error_tuvxq_186{color:var(--danger);font-size:.82rem;text-align:center;padding:1rem}._empty_tuvxq_193{display:flex;align-items:center;justify-content:center;padding:2rem;color:var(--text-muted);font-size:.85rem;font-style:italic}._confirmBar_tuvxq_204{border-top:1px solid var(--border);padding:10px 12px;flex-shrink:0;background:var(--surface)}._confirmText_tuvxq_211{font-size:.8rem;color:var(--text);display:block;margin-bottom:8px;word-break:break-word}._confirmActions_tuvxq_219{display:flex;gap:8px;justify-content:flex-end}._confirmCancel_tuvxq_225,._confirmOk_tuvxq_226{border:none;border-radius:6px;padding:6px 16px;font-size:.8rem;font-weight:600;cursor:pointer;transition:background .15s;-webkit-tap-highlight-color:transparent}._confirmCancel_tuvxq_225{background:var(--border);color:var(--text)}._confirmCancel_tuvxq_225:hover{background:var(--text-muted)}._confirmOk_tuvxq_226{background:var(--accent);color:var(--bg)}._confirmOk_tuvxq_226:hover{opacity:.85}._progressWrapper_tuvxq_255{position:relative;height:24px;background:var(--bg);border-radius:6px;overflow:hidden}._progressBar_tuvxq_263{position:absolute;top:0;left:0;height:100%;background:var(--accent);border-radius:6px;transition:width .15s ease}._progressLabel_tuvxq_273{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;font-size:.72rem;font-weight:600;color:var(--text);z-index:1}._backdrop_9ioma_1{position:fixed;top:0;right:0;bottom:0;left:0;z-index:200;background:var(--overlay-bg);animation:_fade-in_9ioma_1 .2s ease-out}._backdrop_9ioma_1[data-closing=true]{animation:_fade-out_9ioma_1 .2s ease-in forwards}._panel_9ioma_13{position:fixed;top:0;left:0;bottom:0;z-index:201;width:min(85vw,380px);background:var(--surface);border-right:1px solid var(--border);display:flex;flex-direction:column;overflow:hidden;padding-top:env(safe-area-inset-top,0px);padding-left:env(safe-area-inset-left,0px);padding-bottom:var(--safe-bottom);box-shadow:0 4px 12px #0000004d;animation:_slide-in-left_9ioma_1 .25s ease-out}._panel_9ioma_13[data-closing=true]{animation:_slide-out-left_9ioma_1 .2s ease-in forwards}._header_9ioma_38{display:flex;flex-direction:column;padding:16px 14px 12px;border-bottom:1px solid var(--border);position:relative}._brand_9ioma_46{display:flex;align-items:center;gap:8px;font-size:18px;font-weight:700;letter-spacing:-.02em;color:var(--text)}._brand_9ioma_46 svg{flex-shrink:0;color:var(--accent)}._version_9ioma_61{font-size:11px;color:var(--text-muted);font-weight:400;margin-top:2px;padding-left:28px}._closeBtn_9ioma_69{position:absolute;top:14px;right:10px;background:none;border:none;color:var(--text-dim);width:30px;height:30px;border-radius:8px;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:20px;transition:background .15s,color .15s;-webkit-tap-highlight-color:transparent}._closeBtn_9ioma_69:hover{background:var(--border);color:var(--text)}._sectionTitle_9ioma_97{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--text-dim);padding:10px 14px 4px}._list_9ioma_108{flex:1 1 0;min-height:0;overflow-y:auto;padding:8px;-webkit-overflow-scrolling:touch;display:flex;flex-direction:column;gap:8px}._card_9ioma_121{background:var(--bg);border:1px solid var(--border);border-radius:10px;cursor:pointer;overflow:hidden;flex-shrink:0;transition:background .15s,border-color .15s;-webkit-tap-highlight-color:transparent;padding-bottom:8px}._card_9ioma_121:hover{border-color:var(--accent)}._cardActive_9ioma_139{border-color:var(--accent);border-width:2px}._cardHeader_9ioma_146{display:flex;align-items:center;gap:8px;padding:10px 12px 6px}._cardDot_9ioma_153{width:10px;height:10px;border-radius:50%;flex-shrink:0}._cardName_9ioma_160{font-size:13px;font-weight:600;color:var(--text);flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}._cardStatus_9ioma_170{width:7px;height:7px;border-radius:50%;flex-shrink:0}._cardClose_9ioma_177{background:none;border:none;color:var(--text-muted);width:26px;height:26px;border-radius:6px;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:16px;flex-shrink:0;padding:0;transition:background .15s,color .15s;-webkit-tap-highlight-color:transparent}._cardClose_9ioma_177:hover{background:var(--danger);color:#fff}._cardMeta_9ioma_204{padding:0 12px 4px;font-size:10px;color:var(--text-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}._cardGit_9ioma_215{display:flex;flex-wrap:wrap;gap:3px 6px;padding:0 12px 4px;font-size:10px;color:var(--text-secondary);align-items:center}._gitBadge_9ioma_225{display:inline-flex;align-items:center;gap:3px;background:var(--surface);padding:1px 6px;border-radius:3px}._gitClean_9ioma_234{color:var(--success)}._gitDirty_9ioma_238{color:#fbbf24}._cardPreview_9ioma_244{margin:0 8px 8px;padding:6px 8px;background:var(--surface);border-radius:6px;font-family:NerdFont,JetBrains Mono,monospace;font-size:9px;line-height:1.3;color:var(--text-secondary);white-space:pre;overflow:hidden;max-height:72px;-webkit-text-size-adjust:none}._cardPreviewEmpty_9ioma_259{font-style:italic;color:var(--text-muted);text-align:center;font-family:inherit;font-size:11px;white-space:normal}._footer_9ioma_270{padding:8px;border-top:1px solid var(--border)}._footerRow_9ioma_275{display:flex;gap:6px}._footerBtn_9ioma_280{flex:1;padding:10px;border:1px dashed var(--border);border-radius:8px;background:none;color:var(--accent);font-size:13px;font-weight:600;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:6px;transition:background .15s;-webkit-tap-highlight-color:transparent}._footerBtn_9ioma_280:hover{background:var(--bg)}._footerBtn_9ioma_280:active{transform:scale(.98)}._footerBtn_9ioma_280:disabled{opacity:.4;cursor:not-allowed}._footerBtn_9ioma_280:disabled:hover{background:none}._newBtn_9ioma_315{width:100%;padding:10px;border:1px dashed var(--border);border-radius:8px;background:none;color:var(--accent);font-size:14px;font-weight:600;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:6px;transition:background .15s}._newBtn_9ioma_315:hover{background:var(--bg)}._newBtn_9ioma_315:active{transform:scale(.98)}._unreadDot_9ioma_340{width:6px;height:6px;border-radius:50%;background:var(--accent);flex-shrink:0;animation:_pulse_9ioma_1 1.5s ease-in-out infinite}@keyframes _pulse_9ioma_1{0%,to{opacity:1}50%{opacity:.3}}@keyframes _slide-in-left_9ioma_1{0%{transform:translate(-100%)}to{transform:translate(0)}}@keyframes _slide-out-left_9ioma_1{0%{transform:translate(0)}to{transform:translate(-100%)}}@keyframes _fade-in_9ioma_1{0%{opacity:0}to{opacity:1}}@keyframes _fade-out_9ioma_1{0%{opacity:1}to{opacity:0}}._container_klxy3_1{display:flex;flex-direction:column;min-height:0;flex:1;overflow:hidden}._header_klxy3_9{display:flex;align-items:center;gap:8px;padding:10px 14px;border-bottom:1px solid var(--border);flex-shrink:0}._backBtn_klxy3_18{background:none;border:none;color:var(--text-dim);width:28px;height:28px;border-radius:6px;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:16px;flex-shrink:0;padding:0;transition:background .15s,color .15s;-webkit-tap-highlight-color:transparent}._backBtn_klxy3_18:hover{background:var(--border);color:var(--text)}._fileName_klxy3_43{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--text-dim);flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}._zoomReset_klxy3_55{background:var(--surface);border:1px solid var(--border);color:var(--text-muted);font-size:10px;font-weight:600;padding:2px 8px;border-radius:4px;cursor:pointer;flex-shrink:0;transition:background .15s,color .15s;-webkit-tap-highlight-color:transparent}._zoomReset_klxy3_55:hover{background:var(--border);color:var(--text)}._content_klxy3_76{flex:1;min-height:0;overflow:auto;-webkit-overflow-scrolling:touch;position:relative}._spacer_klxy3_84{pointer-events:none}._loading_klxy3_88{display:flex;align-items:center;justify-content:center;padding:2rem;color:var(--text-dim);font-size:.85rem}._error_klxy3_97{color:var(--danger);font-size:.82rem;text-align:center;padding:1rem}._markdown_klxy3_105{padding:16px 20px;font-size:.88rem;line-height:1.65;color:var(--text);word-wrap:break-word;overflow-wrap:break-word}._markdown_klxy3_105 h1,._markdown_klxy3_105 h2,._markdown_klxy3_105 h3,._markdown_klxy3_105 h4,._markdown_klxy3_105 h5,._markdown_klxy3_105 h6{color:var(--text);margin-top:1.4em;margin-bottom:.6em;font-weight:600;line-height:1.3}._markdown_klxy3_105 h1{font-size:1.5em;padding-bottom:.3em;border-bottom:1px solid var(--border)}._markdown_klxy3_105 h2{font-size:1.25em;padding-bottom:.25em;border-bottom:1px solid var(--border)}._markdown_klxy3_105 h3{font-size:1.1em}._markdown_klxy3_105 h4{font-size:1em}._markdown_klxy3_105 h5,._markdown_klxy3_105 h6{font-size:.9em;color:var(--text-muted)}._markdown_klxy3_105 p{margin:0 0 1em}._markdown_klxy3_105 a{color:var(--accent);text-decoration:none}._markdown_klxy3_105 a:hover{text-decoration:underline}._markdown_klxy3_105 ul,._markdown_klxy3_105 ol{margin:0 0 1em;padding-left:1.5em}._markdown_klxy3_105 li{margin-bottom:.25em}._markdown_klxy3_105 li>ul,._markdown_klxy3_105 li>ol{margin-bottom:0}._markdown_klxy3_105 blockquote{margin:0 0 1em;padding:.5em 1em;border-left:3px solid var(--accent);background:var(--surface);color:var(--text-muted);border-radius:0 4px 4px 0}._markdown_klxy3_105 blockquote p:last-child{margin-bottom:0}._markdown_klxy3_105 code{font-family:SF Mono,Fira Code,Cascadia Code,Menlo,monospace;font-size:.85em;background:var(--surface);padding:.15em .4em;border-radius:4px;color:var(--text)}._markdown_klxy3_105 pre{margin:0 0 1em;padding:12px 16px;background:var(--bg);border:1px solid var(--border);border-radius:6px;overflow-x:auto;-webkit-overflow-scrolling:touch}._markdown_klxy3_105 pre code{background:none;padding:0;border-radius:0;font-size:.82em;line-height:1.5}._markdown_klxy3_105 img{max-width:100%;border-radius:6px}._markdown_klxy3_105 hr{border:none;border-top:1px solid var(--border);margin:1.5em 0}._markdown_klxy3_105 table{width:100%;border-collapse:collapse;margin:0 0 1em;font-size:.85em}._markdown_klxy3_105 th,._markdown_klxy3_105 td{padding:6px 12px;border:1px solid var(--border);text-align:left}._markdown_klxy3_105 th{background:var(--surface);font-weight:600;color:var(--text)}._markdown_klxy3_105 tr:nth-child(2n){background:var(--surface)}._markdown_klxy3_105 input[type=checkbox]{margin-right:.4em}._markdown_klxy3_105 del{color:var(--text-muted)}._mermaid_klxy3_265{display:flex;justify-content:center;margin:1em 0;overflow-x:auto;-webkit-overflow-scrolling:touch}._mermaid_klxy3_265 svg{max-width:100%;height:auto}._markdown_klxy3_105 details{margin:.5em 0;padding:.5em 1em;background:var(--surface);border:1px solid var(--border);border-radius:6px}._markdown_klxy3_105 summary{cursor:pointer;font-weight:600;color:var(--text)}._markdown_klxy3_105 kbd{display:inline-block;padding:2px 6px;font-size:.8em;font-family:SF Mono,Fira Code,monospace;background:var(--surface);border:1px solid var(--border);border-radius:4px;box-shadow:0 1px 0 var(--border)}._markdown_klxy3_105 sup,._markdown_klxy3_105 sub{font-size:.75em}._markdown_klxy3_105 figure{margin:1em 0;text-align:center}._markdown_klxy3_105 figcaption{font-size:.8em;color:var(--text-muted);margin-top:.5em}._markdown_klxy3_105 video,._markdown_klxy3_105 iframe{max-width:100%;border-radius:6px}._container_e649y_1{display:flex;flex-direction:column;min-height:0;flex:1;overflow:hidden}._header_e649y_9{display:flex;align-items:center;gap:8px;padding:10px 14px;border-bottom:1px solid var(--border);flex-shrink:0}._backBtn_e649y_18{background:none;border:none;color:var(--text-dim);width:28px;height:28px;border-radius:6px;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:16px;flex-shrink:0;padding:0;transition:background .15s,color .15s;-webkit-tap-highlight-color:transparent}._backBtn_e649y_18:hover{background:var(--border);color:var(--text)}._headerTitle_e649y_43{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--text-dim);flex:1}._breadcrumb_e649y_52{display:flex;align-items:center;flex-wrap:wrap;gap:.15rem;font-size:.75rem;color:var(--text-secondary);padding:6px 10px;background:var(--bg);border-bottom:1px solid var(--border);min-height:1.8rem;flex-shrink:0}._breadcrumbSegment_e649y_66{background:transparent;border:none;color:var(--accent);cursor:pointer;padding:.1rem .2rem;border-radius:3px;font-size:.75rem;transition:background .1s}._breadcrumbSegment_e649y_66:hover{background:var(--surface)}._breadcrumbCurrent_e649y_81{color:var(--text);cursor:default}._breadcrumbCurrent_e649y_81:hover{background:transparent}._breadcrumbSep_e649y_91{color:var(--text-muted);-webkit-user-select:none;user-select:none}._list_e649y_96{flex:1;min-height:0;overflow-y:auto;display:flex;flex-direction:column;gap:1px;padding:4px;-webkit-overflow-scrolling:touch}._entry_e649y_107{display:flex;align-items:center;gap:.5rem;padding:6px 8px;border-radius:6px;border:none;background:transparent;color:var(--text);font-size:.82rem;cursor:pointer;text-align:left;width:100%;transition:background .1s;-webkit-tap-highlight-color:transparent}._entry_e649y_107:hover{background:var(--surface)}._entryIcon_e649y_128{flex-shrink:0;font-size:.9rem}._entryName_e649y_133{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}._entryMeta_e649y_140{font-size:.7rem;color:var(--text-muted);flex-shrink:0;white-space:nowrap}._loading_e649y_147{display:flex;align-items:center;justify-content:center;padding:2rem;color:var(--text-dim);font-size:.85rem}._error_e649y_156{color:var(--danger);font-size:.82rem;text-align:center;padding:1rem}._empty_e649y_163{display:flex;align-items:center;justify-content:center;padding:2rem;color:var(--text-muted);font-size:.85rem;font-style:italic}._gutter_jt27z_1{display:flex;flex-direction:column;flex-shrink:0;min-width:180px;max-width:240px;border-right:1px solid var(--border);overflow:hidden;-webkit-user-select:none;user-select:none;font-family:Menlo,Monaco,Courier New,monospace;font-size:11px;line-height:1.5;background:var(--bg)}._line_jt27z_16{display:flex;align-items:baseline;padding:0 8px 0 10px;white-space:nowrap;cursor:default;min-height:1.5em;position:relative}._line_jt27z_16:first-child{padding-top:12px}._line_jt27z_16:last-child{padding-bottom:12px}._lineEven_jt27z_34{background:#ffffff05}._lineOdd_jt27z_39{background:transparent}._annotation_jt27z_44{display:flex;align-items:baseline;gap:6px;overflow:hidden}._hash_jt27z_55{color:var(--accent, #61afef);font-size:10px;flex-shrink:0;cursor:pointer}._hash_jt27z_55:hover{text-decoration:underline}._author_jt27z_66{color:var(--text-dim, #888);font-size:10px;overflow:hidden;text-overflow:ellipsis;max-width:80px;flex-shrink:1}._date_jt27z_75{color:var(--text-dim, #666);font-size:10px;flex-shrink:0;margin-left:auto}._uncommitted_jt27z_82{color:var(--text-dim, #666);font-size:10px;font-style:italic}._tooltip_jt27z_88{position:absolute;left:100%;top:0;margin-left:8px;z-index:100;background:var(--surface, #2d2d2d);border:1px solid var(--border);border-radius:6px;padding:8px 12px;min-width:200px;max-width:320px;box-shadow:0 4px 12px #0006;pointer-events:none}._tooltipHash_jt27z_104{color:var(--accent, #61afef);font-size:.75rem;font-weight:600;margin-bottom:4px}._tooltipSubject_jt27z_111{color:var(--text);font-size:.78rem;margin-bottom:4px;word-wrap:break-word;white-space:normal}._tooltipMeta_jt27z_119{color:var(--text-dim, #888);font-size:.7rem}._wrapper_1tsd1_1{display:flex;flex:1;min-height:0;overflow:hidden}._container_1tsd1_8{display:flex;flex:1;align-items:flex-start;overflow:auto;background:var(--bg);font-family:Menlo,Monaco,Courier New,monospace;font-size:13px;line-height:1.5;-webkit-overflow-scrolling:touch;touch-action:manipulation;min-height:0}._blameLoading_1tsd1_22{display:flex;align-items:flex-start;justify-content:center;min-width:180px;max-width:240px;padding:16px 12px;border-right:1px solid var(--border);color:var(--text-dim, #888);font-size:.75rem;font-style:italic}._table_1tsd1_35{display:table;min-width:100%}._row_1tsd1_40{display:table-row}._lineNumber_1tsd1_44{display:table-cell;position:sticky;left:0;padding:0 12px 0 16px;min-width:3ch;text-align:right;-webkit-user-select:none;user-select:none;color:var(--text-dim, #666);background:var(--bg);border-right:1px solid var(--border);z-index:1;white-space:nowrap}._lineContent_1tsd1_59{display:table-cell;padding:0 16px;white-space:pre;-moz-tab-size:4;tab-size:4;color:var(--text)}._table_1tsd1_35 ._row_1tsd1_40:first-child ._lineNumber_1tsd1_44,._table_1tsd1_35 ._row_1tsd1_40:first-child ._lineContent_1tsd1_59{padding-top:12px}._table_1tsd1_35 ._row_1tsd1_40:last-child ._lineNumber_1tsd1_44,._table_1tsd1_35 ._row_1tsd1_40:last-child ._lineContent_1tsd1_59{padding-bottom:12px}._lineContent_1tsd1_59 .hljs{background:transparent!important;padding:0!important;color:inherit}._empty_1tsd1_84{display:flex;align-items:center;justify-content:center;flex:1;color:var(--text-dim, #888);font-style:italic}._lineContent_1tsd1_59 .hljs-keyword,._lineContent_1tsd1_59 .hljs-selector-tag,._lineContent_1tsd1_59 .hljs-built_in{color:var(--syntax-keyword, #c678dd)}._lineContent_1tsd1_59 .hljs-string,._lineContent_1tsd1_59 .hljs-attr{color:var(--syntax-string, #98c379)}._lineContent_1tsd1_59 .hljs-number,._lineContent_1tsd1_59 .hljs-literal{color:var(--syntax-number, #d19a66)}._lineContent_1tsd1_59 .hljs-comment,._lineContent_1tsd1_59 .hljs-doctag{color:var(--syntax-comment, #7f848e);font-style:italic}._lineContent_1tsd1_59 .hljs-function,._lineContent_1tsd1_59 .hljs-title{color:var(--syntax-function, #61afef)}._lineContent_1tsd1_59 .hljs-variable,._lineContent_1tsd1_59 .hljs-template-variable{color:var(--syntax-variable, #e06c75)}._lineContent_1tsd1_59 .hljs-type,._lineContent_1tsd1_59 .hljs-class{color:var(--syntax-type, #e5c07b)}._lineContent_1tsd1_59 .hljs-meta,._lineContent_1tsd1_59 .hljs-tag{color:var(--syntax-meta, #abb2bf)}._container_1jhju_1{display:flex;flex-direction:column;overflow-y:auto;overflow-x:hidden;flex:1;min-width:0;scrollbar-width:thin}._node_1jhju_11{display:flex;align-items:center;gap:4px;width:100%;padding:3px 12px;border:none;background:transparent;color:var(--text);font-size:.82rem;font-family:Menlo,Monaco,Courier New,monospace;cursor:pointer;text-align:left;white-space:nowrap;transition:background .1s}._node_1jhju_11:hover{background:var(--bg-hover, rgba(255, 255, 255, .05))}._active_1jhju_32{background:var(--accent-dim, rgba(var(--accent-rgb, 130, 120, 255), .15));color:var(--accent)}._chevron_1jhju_37{flex-shrink:0;width:.8em;font-size:.75em;text-align:center;color:var(--text-dim, #888)}._fileIcon_1jhju_45{flex-shrink:0;width:16px;height:16px;object-fit:contain}._name_1jhju_52{overflow:hidden;text-overflow:ellipsis}._loading_1jhju_57,._empty_1jhju_58{padding:24px 16px;color:var(--text-dim, #888);font-size:.85rem;text-align:center;font-style:italic}._searchBox_1jhju_67{display:flex;align-items:center;padding:6px 8px;border-bottom:1px solid var(--border);gap:6px;flex-shrink:0}._searchInput_1jhju_76{flex:1;min-width:0;background:var(--bg);border:1px solid var(--border);border-radius:4px;padding:4px 8px;color:var(--text);font-size:.8rem;font-family:inherit;outline:none}._searchInput_1jhju_76:focus{border-color:var(--accent)}._searchInput_1jhju_76::placeholder{color:var(--text-dim, #888)}._searchClear_1jhju_97{background:none;border:none;color:var(--text-dim, #888);cursor:pointer;padding:2px 6px;font-size:.8rem;border-radius:3px}._searchClear_1jhju_97:hover{color:var(--text);background:var(--bg-hover, rgba(255, 255, 255, .05))}._searchResult_1jhju_112{display:flex;align-items:center;gap:6px;width:100%;padding:4px 12px;border:none;background:transparent;color:var(--text);font-size:.8rem;font-family:Menlo,Monaco,Courier New,monospace;cursor:pointer;text-align:left;white-space:nowrap;transition:background .1s}._searchResult_1jhju_112:hover{background:var(--bg-hover, rgba(255, 255, 255, .05))}._searchResultPath_1jhju_133{color:var(--text-dim, #888);font-size:.72rem;overflow:hidden;text-overflow:ellipsis}._highlight_1jhju_140{background:rgba(var(--accent-rgb, 130, 120, 255),.3);color:inherit;border-radius:2px}._tabBar_1rsoo_1{display:flex;justify-content:flex-start;overflow-x:auto;background:var(--bg-secondary, var(--bg));border-bottom:1px solid var(--border);flex-shrink:0;scrollbar-width:thin}._tab_1rsoo_1{display:flex;align-items:center;gap:6px;padding:6px 12px;border:none;border-right:1px solid var(--border);background:transparent;color:var(--text-dim, #888);font-size:.8rem;cursor:pointer;white-space:nowrap;transition:background .15s,color .15s;flex-shrink:0}._tab_1rsoo_1:hover{background:var(--bg-hover, rgba(255, 255, 255, .05));color:var(--text)}._active_1rsoo_34{background:var(--bg);color:var(--text);border-bottom:2px solid var(--accent)}._tabName_1rsoo_40{font-family:Menlo,Monaco,Courier New,monospace;font-size:.78rem}._closeBtn_1rsoo_45{border:none;background:none;color:inherit;cursor:pointer;font-size:.7rem;opacity:.5;padding:2px 4px;border-radius:3px;line-height:1;transition:opacity .15s,background .15s}._closeBtn_1rsoo_45:hover{opacity:1;background:#ffffff1a}._container_d041i_1{display:flex;flex-direction:column;overflow-y:auto;overflow-x:hidden;flex:1;min-width:0;scrollbar-width:thin}._section_d041i_11{border-bottom:1px solid var(--border)}._sectionHeader_d041i_15{display:flex;align-items:center;justify-content:space-between;padding:6px 12px;font-size:.72rem;font-weight:600;text-transform:uppercase;letter-spacing:.3px;color:var(--text-dim, #888);background:var(--surface, #252526);cursor:default;-webkit-user-select:none;user-select:none}._badge_d041i_30{font-size:.7rem;background:#ffffff1a;padding:1px 6px;border-radius:8px;font-weight:400}._fileItem_d041i_38{display:flex;align-items:center;gap:6px;width:100%;padding:3px 12px 3px 20px;border:none;background:transparent;color:var(--text);font-size:.82rem;font-family:Menlo,Monaco,Courier New,monospace;cursor:pointer;text-align:left;white-space:nowrap;transition:background .1s}._fileItem_d041i_38:hover{background:var(--bg-hover, rgba(255, 255, 255, .05))}._fileItemActive_d041i_59{background:var(--accent-dim, rgba(var(--accent-rgb, 130, 120, 255), .15));color:var(--accent)}._statusBadge_d041i_64{flex-shrink:0;width:16px;height:16px;display:flex;align-items:center;justify-content:center;font-size:.7rem;font-weight:700;border-radius:3px}._statusM_d041i_76{color:#e2c08d}._statusA_d041i_80{color:#73c991}._statusD_d041i_84{color:#e06c75}._statusR_d041i_88{color:#61afef}._statusU_d041i_92{color:#888}._fileName_d041i_96{overflow:hidden;text-overflow:ellipsis;flex:1}._footer_d041i_102{display:flex;align-items:center;justify-content:space-between;padding:8px 12px;font-size:.75rem;color:var(--text-dim, #888);border-top:1px solid var(--border);flex-shrink:0}._additions_d041i_113{color:#73c991}._deletions_d041i_117{color:#e06c75}._refreshBtn_d041i_121{background:none;border:none;color:var(--text-dim, #888);cursor:pointer;padding:2px 6px;border-radius:4px;font-size:.8rem;transition:background .15s,color .15s}._refreshBtn_d041i_121:hover{background:var(--bg-hover, rgba(255, 255, 255, .05));color:var(--text)}._refreshBtn_d041i_121:disabled{opacity:.5;cursor:not-allowed}._loading_d041i_144{padding:24px 16px;color:var(--text-dim, #888);font-size:.85rem;text-align:center;font-style:italic}._skeleton_d041i_152{padding:8px 20px;display:flex;flex-direction:column;gap:8px}._skeletonLine_d041i_159{height:18px;background:#ffffff0f;border-radius:4px;animation:_pulse_d041i_1 1.5s ease-in-out infinite}@keyframes _pulse_d041i_1{0%,to{opacity:.4}50%{opacity:.8}}._empty_d041i_176{padding:24px 16px;color:var(--text-dim, #888);font-size:.82rem;text-align:center}._emptyIcon_d041i_183{font-size:1.8rem;margin-bottom:8px;opacity:.5}._notGit_d041i_189{padding:24px 16px;color:var(--text-dim, #888);font-size:.82rem;text-align:center}._branchInfo_d041i_196{display:flex;align-items:center;gap:6px;padding:6px 12px;font-size:.75rem;color:var(--text-dim, #888);border-bottom:1px solid var(--border);flex-shrink:0}._branchName_d041i_207{color:var(--text);font-weight:500}._syncInfo_d041i_212{font-size:.7rem;opacity:.7}._overlay_vc0nc_1{position:fixed;top:0;right:0;bottom:0;left:0;background:#0000008c;z-index:70;display:flex;align-items:flex-end;justify-content:center;animation:_fadeIn_vc0nc_1 .15s ease-out}._panel_vc0nc_12{width:100%;max-width:720px;max-height:calc(92vh - env(safe-area-inset-top,0px));background:var(--surface, #1e1e1e);border-top:1px solid var(--border);border-radius:12px 12px 0 0;display:flex;flex-direction:column;overflow:hidden;box-shadow:0 -6px 24px #0006;animation:_slideUp_vc0nc_1 .18s ease-out;padding-top:env(safe-area-inset-top,0px);padding-bottom:max(0px,env(safe-area-inset-bottom))}@media(min-width:768px){._overlay_vc0nc_1{align-items:center}._panel_vc0nc_12{border-radius:12px;border:1px solid var(--border);max-height:80vh}}._header_vc0nc_39{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;border-bottom:1px solid var(--border);gap:12px}._title_vc0nc_48{font-size:.95rem;font-weight:600;color:var(--text)}._count_vc0nc_54{color:var(--text-dim, #888);font-weight:400;margin-left:6px}._closeBtn_vc0nc_60{background:transparent;border:none;color:var(--text-dim, #888);font-size:1.4rem;cursor:pointer;padding:0 4px;line-height:1;min-width:40px;min-height:40px}._closeBtn_vc0nc_60:hover{color:var(--text)}._body_vc0nc_76{flex:1;overflow:auto;padding:8px 0;-webkit-overflow-scrolling:touch}._empty_vc0nc_83{padding:32px 16px;color:var(--text-dim, #888);font-style:italic;text-align:center}._fileGroup_vc0nc_90{padding:4px 16px 10px}._fileName_vc0nc_94{font-size:.8rem;font-family:Menlo,Monaco,Courier New,monospace;color:var(--text);font-weight:600;padding:6px 0;border-bottom:1px solid var(--border);margin-bottom:6px}._comment_vc0nc_104{padding:8px 10px;margin-bottom:8px;background:var(--bg);border:1px solid var(--border);border-radius:6px;display:flex;flex-direction:column;gap:6px}._commentHeader_vc0nc_115{display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:.75rem;color:var(--text-dim, #888);font-family:Menlo,Monaco,Courier New,monospace}._commentRemove_vc0nc_125{background:transparent;border:none;color:var(--text-dim, #888);cursor:pointer;font-size:.8rem;padding:4px 8px;min-height:32px;min-width:32px;border-radius:4px}._commentRemove_vc0nc_125:hover{background:#da363333;color:#e06c75}._commentBody_vc0nc_142{font-size:.9rem;color:var(--text);white-space:pre-wrap;word-break:break-word}._commentSnippet_vc0nc_149{font-size:.75rem;color:var(--text-dim, #aaa);font-family:Menlo,Monaco,Courier New,monospace;background:#00000040;padding:6px 8px;border-radius:4px;white-space:pre-wrap;word-break:break-all;max-height:100px;overflow:auto}._footer_vc0nc_162{display:flex;align-items:center;gap:8px;padding:12px 16px;border-top:1px solid var(--border);flex-wrap:wrap}._btn_vc0nc_171{padding:8px 14px;min-height:40px;border:1px solid var(--border);border-radius:6px;background:transparent;color:var(--text);font-size:.85rem;cursor:pointer;white-space:nowrap}._btn_vc0nc_171:disabled{opacity:.5;cursor:default}._sendBtn_vc0nc_188{flex:1;min-width:160px;background:#388bfd4d;border-color:#388bfdb3}._sendBtn_vc0nc_188:hover:not(:disabled){background:#388bfd73}._clearBtn_vc0nc_199:hover:not(:disabled){background:#da363333;color:#e06c75;border-color:#da363399}@keyframes _fadeIn_vc0nc_1{0%{opacity:0}to{opacity:1}}@keyframes _slideUp_vc0nc_1{0%{transform:translateY(100%)}to{transform:translateY(0)}}._container_1qt2f_1{display:flex;flex-direction:column;flex:1;overflow:hidden;background:var(--bg);font-size:13px;line-height:1.5;min-height:0}._scrollArea_1qt2f_12{flex:1;overflow:auto;-webkit-overflow-scrolling:touch;min-height:0;container-type:inline-size;padding-bottom:50vh}._header_1qt2f_21{display:flex;align-items:center;justify-content:space-between;padding:8px 16px;background:var(--surface, #252526);border-bottom:1px solid var(--border);flex-shrink:0;gap:12px}._fileName_1qt2f_32{font-size:.85rem;font-weight:500;color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1}._stats_1qt2f_42{display:flex;align-items:center;gap:10px;font-size:.78rem;flex-shrink:0}._additions_1qt2f_50{color:#73c991}._deletions_1qt2f_54{color:#e06c75}._newFile_1qt2f_58{color:#73c991}._stagedToggle_1qt2f_62{display:flex;align-items:center;gap:4px;font-size:.75rem;color:var(--text-dim, #888);flex-shrink:0}._stagedToggle_1qt2f_62 label{cursor:pointer;-webkit-user-select:none;user-select:none}._stagedToggle_1qt2f_62 input{margin:0;cursor:pointer}._toggleBtn_1qt2f_81{padding:2px 8px;border:1px solid var(--border, #444);border-radius:4px;background:transparent;color:var(--text-dim, #888);font-size:.75rem;cursor:pointer;white-space:nowrap;flex-shrink:0;transition:background .15s,color .15s}._toggleBtn_1qt2f_81:hover{background:var(--surface, #252526);color:var(--text)}._toggleBtnActive_1qt2f_101{background:#388bfd33;color:var(--text);border-color:#388bfd80}._toggleBtnPrimary_1qt2f_107{background:var(--accent);color:#fff;border-color:var(--accent);font-weight:600}._toggleBtnPrimary_1qt2f_107:hover{background:var(--accent-hover, var(--accent));border-color:var(--accent-hover, var(--accent))}._toggleBtn_1qt2f_81:disabled{opacity:.5;cursor:default}._table_1qt2f_124{min-width:100%;width:fit-content}._hunkHeader_1qt2f_129{display:flex;width:100%;min-width:fit-content;padding:6px 16px;color:var(--text-dim, #888);background:#388bfd26;font-size:.8rem;font-family:Menlo,Monaco,Courier New,monospace;-webkit-user-select:none;user-select:none;box-sizing:border-box}._row_1qt2f_142{display:flex;width:100%;min-width:fit-content;line-height:1.5}._lineNumOld_1qt2f_149,._lineNumNew_1qt2f_150{flex:0 0 4.5ch;padding:0 6px;text-align:right;-webkit-user-select:none;user-select:none;color:var(--text-dim, #555);border-right:1px solid var(--border);white-space:nowrap;font-size:.85em;font-family:Menlo,Monaco,Courier New,monospace;box-sizing:border-box}._lineNumOld_1qt2f_149{padding-left:8px}._lineContent_1qt2f_167{flex:1;padding:0 12px;white-space:pre;-moz-tab-size:4;tab-size:4;color:var(--text);min-width:0;font-family:Menlo,Monaco,Courier New,monospace}._linePrefix_1qt2f_177{display:inline;-webkit-user-select:none;user-select:none;opacity:.6;margin-right:4px}._rowAdd_1qt2f_184 ._lineNumOld_1qt2f_149,._rowAdd_1qt2f_184 ._lineNumNew_1qt2f_150{background:#23863633}._rowAdd_1qt2f_184 ._lineContent_1qt2f_167{background:#2386364d}._rowRemove_1qt2f_197 ._lineNumOld_1qt2f_149,._rowRemove_1qt2f_197 ._lineNumNew_1qt2f_150{background:#da363333}._rowRemove_1qt2f_197 ._lineContent_1qt2f_167{background:#da36334d}._rowReviewable_1qt2f_214{cursor:pointer;position:relative}._rowReviewable_1qt2f_214:hover{outline:1px solid rgba(56,139,253,.35);outline-offset:-1px}._rowSelected_1qt2f_224{outline:2px solid rgba(56,139,253,.85);outline-offset:-1px;background:#388bfd26}._rowCommented_1qt2f_230 ._lineContent_1qt2f_167:before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:#ffa657}._rowCommented_1qt2f_230 ._lineContent_1qt2f_167{position:relative}._inlineComment_1qt2f_244{position:sticky;left:0;display:flex;flex-direction:column;width:calc(100cqi - 8px);max-width:calc(100cqi - 8px);margin:4px 0 4px 4px;background:#ffa65714;border:1px solid rgba(255,166,87,.4);border-left:3px solid #ffa657;border-radius:6px;font-family:inherit;font-size:.85rem;line-height:1.45;color:var(--text);box-sizing:border-box;overflow:hidden}._inlineCommentHeader_1qt2f_265{display:flex;align-items:center;gap:8px;padding:6px 10px;cursor:pointer;-webkit-user-select:none;user-select:none;background:#ffa6570a;border-bottom:1px solid rgba(255,166,87,.2)}._inlineCommentHeaderCollapsed_1qt2f_276{border-bottom:none}._inlineCommentCaret_1qt2f_280{flex-shrink:0;width:16px;text-align:center;font-size:.75rem;color:var(--text-dim, #aaa);transition:transform .15s}._inlineCommentCaretOpen_1qt2f_289{transform:rotate(90deg)}._inlineCommentPreview_1qt2f_293{flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--text);font-size:.8rem}._inlineCommentContent_1qt2f_303{padding:10px 12px;display:flex;flex-direction:column;gap:10px}._inlineCommentBody_1qt2f_310{white-space:pre-wrap;word-break:break-word;min-width:0}._inlineCommentActions_1qt2f_316{display:flex;gap:6px;flex-shrink:0;justify-content:flex-end}._inlineCommentBtn_1qt2f_323{padding:4px 12px;border:1px solid var(--border, #444);border-radius:4px;background:transparent;color:var(--text-dim, #aaa);font-family:inherit;font-size:.75rem;cursor:pointer;transition:background .15s,color .15s,border-color .15s}._inlineCommentBtn_1qt2f_323:hover:not(:disabled){background:var(--surface, #252526);color:var(--text)}._inlineCommentBtn_1qt2f_323:disabled{opacity:.4;cursor:not-allowed}._inlineCommentBtnPrimary_1qt2f_348{background:var(--accent);border-color:var(--accent);color:#fff;font-weight:600}._inlineCommentBtnPrimary_1qt2f_348:hover:not(:disabled){background:var(--accent-hover, var(--accent));border-color:var(--accent-hover, var(--accent));color:#fff}._inlineCommentEdit_1qt2f_361{position:sticky;left:0;display:flex;flex-direction:column;gap:8px;margin:4px 0 4px 4px;padding:10px 12px;width:calc(100cqi - 8px);max-width:calc(100cqi - 8px);background:#ffa6571a;border:1px solid rgba(255,166,87,.4);border-left:3px solid #ffa657;border-radius:6px;font-family:inherit;font-size:.85rem;box-sizing:border-box}._inlineCommentEditLabel_1qt2f_380{font-size:.75rem;color:var(--text-dim, #aaa);font-weight:600;letter-spacing:.02em}._inlineCommentEditHint_1qt2f_387{font-size:.7rem;color:var(--text-dim, #888);font-style:italic}._inlineCommentEditHeader_1qt2f_393{display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap}._rangeAdjusters_1qt2f_401{display:flex;align-items:center;gap:4px;padding:6px 8px;background:#ffffff08;border:1px solid var(--border);border-radius:4px}._rangeAdjusterRange_1qt2f_411{flex:1 1 auto;text-align:center;font-family:var(--font-mono, ui-monospace, SFMono-Regular, Menlo, monospace);font-size:.8rem;font-weight:600;color:var(--text);padding:0 6px;white-space:nowrap}._rangeAdjusterBtn_1qt2f_422{width:36px;height:32px;display:inline-flex;align-items:center;justify-content:center;background:var(--bg);color:var(--text);border:1px solid var(--border);border-radius:4px;font-size:.95rem;line-height:1;cursor:pointer;touch-action:manipulation;flex:0 0 auto}._rangeAdjusterBtn_1qt2f_422:hover:not(:disabled){background:var(--hover, rgba(255, 255, 255, .06));border-color:#ffa657}._rangeAdjusterBtn_1qt2f_422:disabled{opacity:.3;cursor:not-allowed}._inlineCommentTextarea_1qt2f_449{width:100%;box-sizing:border-box;padding:8px 10px;background:var(--bg);color:var(--text);border:1px solid var(--border);border-radius:4px;font-family:inherit;font-size:16px;line-height:1.45;resize:none;overflow:hidden;min-height:60px;touch-action:manipulation}._inlineCommentTextarea_1qt2f_449:focus{outline:none;border-color:var(--accent)}@media(max-width:640px){._inlineCommentActions_1qt2f_316{align-self:flex-end}._inlineCommentEdit_1qt2f_361{position:fixed;left:8px;right:8px;bottom:calc(var(--kb-offset, 0px) + env(safe-area-inset-bottom,0px));width:auto;max-width:none;margin:0;z-index:1000;background:#1f1b16;box-shadow:0 -6px 24px #0006,0 0 0 1px #ffa65766;transition:none}}._reviewBadgeBtn_1qt2f_500{background:#ffa65740;border-color:#ffa65799;color:var(--text);font-weight:600;min-width:28px;text-align:center}._binary_1qt2f_509{display:flex;align-items:center;justify-content:center;flex:1;color:var(--text-dim, #888);font-style:italic;padding:32px}._empty_1qt2f_519{display:flex;align-items:center;justify-content:center;flex:1;color:var(--text-dim, #888);font-style:italic}._page_167vf_1{display:flex;flex-direction:column;height:100svh;overflow:hidden;background:var(--bg);color:var(--text);padding-top:env(safe-area-inset-top,0px);padding-right:env(safe-area-inset-right,0px)}._topBar_167vf_13{display:flex;align-items:center;height:44px;padding:0 4px;background:var(--surface);border-bottom:1px solid var(--border);flex-shrink:0;gap:0}._menuBtn_167vf_24{background:none;border:none;color:var(--text);cursor:pointer;padding:6px 10px;border-radius:6px;font-size:1.2rem;line-height:1;flex-shrink:0}._menuBtn_167vf_24:hover{background:var(--bg)}._tabsWrapper_167vf_40{flex:1;min-width:0;overflow:hidden}._backLink_167vf_46{display:flex;align-items:center;justify-content:center;background:none;border:none;color:var(--text-secondary, var(--text));cursor:pointer;padding:6px 10px;border-radius:6px;font-size:1rem;text-decoration:none;flex-shrink:0;opacity:.7;transition:opacity .15s}._backLink_167vf_46:hover{opacity:1;background:var(--bg)}._toolBtn_167vf_68{background:none;border:none;color:var(--text-dim, #888);cursor:pointer;padding:4px 8px;border-radius:5px;font-size:.85rem;flex-shrink:0;transition:background .15s,color .15s}._toolBtn_167vf_68:hover{background:var(--bg);color:var(--text)}._toolBtnActive_167vf_87{color:var(--accent);background:rgba(var(--accent-rgb, 130, 120, 255),.12)}._body_167vf_92{display:flex;flex:1;min-height:0;overflow:hidden}._sidebar_167vf_99{width:240px;min-width:180px;border-right:1px solid var(--border);display:flex;flex-direction:column;background:var(--bg);overflow:hidden;flex-shrink:0}._sidebarHeader_167vf_110{display:flex;align-items:center;gap:0;border-bottom:1px solid var(--border);flex-shrink:0}._viewModeTab_167vf_118{flex:1;display:flex;align-items:center;justify-content:center;gap:4px;padding:8px;font-size:.72rem;font-weight:600;text-transform:uppercase;letter-spacing:.4px;color:var(--text-dim, #888);background:none;border:none;border-bottom:2px solid transparent;cursor:pointer;transition:color .15s,border-color .15s}._viewModeTab_167vf_118:hover{color:var(--text)}._viewModeTabActive_167vf_143{color:var(--text);border-bottom-color:var(--accent)}._changesBadge_167vf_148{font-size:.65rem;font-weight:400;background:var(--accent, #61afef);color:#fff;padding:0 5px;border-radius:8px;min-width:16px;text-align:center;line-height:1.4}._main_167vf_160{display:flex;flex-direction:column;flex:1;min-width:0;min-height:0;overflow:hidden}._placeholder_167vf_169{display:flex;align-items:center;justify-content:center;flex:1;color:var(--text-dim, #888);font-size:.95rem;font-style:italic}._error_167vf_179{padding:12px 16px;color:#e06c75;font-size:.85rem}._loading_167vf_185{padding:12px 16px;color:var(--text-dim, #888);font-size:.85rem;font-style:italic}@media(max-width:768px){._sidebar_167vf_99{position:fixed;top:calc(44px + env(safe-area-inset-top,0px));left:0;bottom:0;z-index:50;width:280px;transform:translate(-100%);transition:transform .2s ease;box-shadow:2px 0 8px #0000004d}._sidebarOpen_167vf_206{transform:translate(0)}._overlay_167vf_210{position:fixed;top:0;right:0;bottom:0;left:0;top:calc(44px + env(safe-area-inset-top,0px));background:#0006;z-index:49}}._overlay_h1a26_1{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--overlay-bg);z-index:200;animation:_fadeIn_h1a26_1 .15s ease-out}._content_h1a26_9{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);background:var(--surface);border:1px solid var(--border);border-radius:16px;padding:24px;width:min(440px,calc(100vw - 32px));max-height:85dvh;overflow-y:auto;z-index:201;box-shadow:0 8px 24px #0006;animation:_slideUp_h1a26_1 .15s ease-out}._title_h1a26_26{font-size:1.1rem;font-weight:600;color:var(--text);margin:0 0 16px}._dropZone_h1a26_33{border:2px dashed var(--border);border-radius:8px;padding:32px 16px;text-align:center;cursor:pointer;transition:border-color .15s,background .15s;color:var(--text-secondary);font-size:.9rem}._dropZone_h1a26_33:hover,._dropZoneDragOver_h1a26_47{border-color:var(--accent);background:#4a9eff14;background:color-mix(in srgb,var(--accent) 8%,transparent)}._fileList_h1a26_53{margin-top:12px;max-height:160px;overflow-y:auto;display:flex;flex-direction:column;gap:4px}._fileInfo_h1a26_62{padding:8px 12px;background:var(--bg);border-radius:6px;font-size:.85rem;color:var(--text);display:flex;justify-content:space-between;align-items:center}._fileName_h1a26_73{font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:240px}._fileSize_h1a26_81{color:var(--text-dim);flex-shrink:0;margin-left:8px}._targetDirGroup_h1a26_87{margin-top:16px}._label_h1a26_91{display:block;font-size:.8rem;color:var(--text-secondary);margin-bottom:6px}._targetDirRow_h1a26_98{display:flex;gap:8px}._input_h1a26_103{flex:1;padding:8px 12px;background:var(--bg);border:1px solid var(--border);border-radius:6px;color:var(--text);font-size:.9rem;font-family:inherit;outline:none}._input_h1a26_103:focus{border-color:var(--accent)}._browseBtn_h1a26_119{padding:8px 14px;background:var(--surface);border:1px solid var(--border);border-radius:6px;color:var(--text);cursor:pointer;font-size:.85rem;white-space:nowrap;transition:border-color .15s}._browseBtn_h1a26_119:hover{border-color:var(--accent)}._hint_h1a26_135{margin-top:8px;font-size:.75rem;color:var(--text-dim)}._actions_h1a26_141{display:flex;justify-content:flex-end;gap:8px;margin-top:20px}._cancelBtn_h1a26_148{padding:8px 16px;background:transparent;border:1px solid var(--border);border-radius:6px;color:var(--text-secondary);cursor:pointer;font-size:.9rem;transition:border-color .15s}._cancelBtn_h1a26_148:hover{border-color:var(--text-secondary)}._uploadBtn_h1a26_163{padding:8px 20px;background:var(--accent);border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:.9rem;font-weight:500;transition:background .15s}._uploadBtn_h1a26_163:hover:not(:disabled){background:var(--accent-hover)}._uploadBtn_h1a26_163:disabled{opacity:.5;cursor:not-allowed}._close_h1a26_184{position:absolute;top:12px;right:12px;background:none;border:none;color:var(--text-dim);cursor:pointer;font-size:1.2rem;line-height:1;padding:4px}._close_h1a26_184:hover{color:var(--text)}._progressWrapper_h1a26_201{margin-top:12px;background:var(--bg);border-radius:6px;height:24px;position:relative;overflow:hidden;border:1px solid var(--border)}._progressBar_h1a26_211{height:100%;background:var(--accent);border-radius:5px;transition:width .15s ease-out;min-width:0}._progressLabel_h1a26_219{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;font-size:.75rem;font-weight:600;color:var(--text);pointer-events:none}._folderBrowserWrapper_h1a26_231{margin-top:12px;border:1px solid var(--border);border-radius:8px;padding:8px;max-height:280px;display:flex;flex-direction:column;overflow:hidden}@media(pointer:coarse){._content_h1a26_9{top:30%;transform:translate(-50%,-30%)}}@keyframes _fadeIn_h1a26_1{0%{opacity:0}to{opacity:1}}@keyframes _slideUp_h1a26_1{0%{opacity:0;transform:translate(-50%,-48%)}to{opacity:1;transform:translate(-50%,-50%)}}._overlay_1mt11_1{position:fixed;top:0;right:0;bottom:0;left:0;z-index:110;display:flex;flex-direction:column;background:var(--overlay-bg);animation:_fade-in_1mt11_1 .15s ease}._header_1mt11_11{display:flex;align-items:center;justify-content:space-between;padding:calc(12px + env(safe-area-inset-top,0px)) 16px 10px;background:var(--surface, #1e1e2e);border-bottom:1px solid var(--border, #333)}._title_1mt11_20{color:var(--text, #ccc);font-size:14px;font-weight:600}._actions_1mt11_26{display:flex;gap:8px}._btnPrimary_1mt11_31{padding:8px 18px;border:none;border-radius:6px;background:var(--accent, #4a9eff);color:#fff;font-size:14px;cursor:pointer}._btnPrimary_1mt11_31:hover{opacity:.9}._btnSecondary_1mt11_45{padding:8px 18px;border:1px solid var(--border, #444);border-radius:6px;background:transparent;color:var(--text, #ccc);font-size:14px;cursor:pointer}._btnSecondary_1mt11_45:hover{background:var(--border, #333)}._content_1mt11_59{flex:1;overflow:auto;padding:16px 16px calc(12px + env(safe-area-inset-bottom,0px))}._loadMoreBtn_1mt11_65{display:block;width:100%;padding:8px;margin-bottom:8px;border:1px solid var(--border, #444);border-radius:6px;background:var(--surface, #1e1e2e);color:var(--accent, #4a9eff);font-size:13px;cursor:pointer;text-align:center}._loadMoreBtn_1mt11_65:hover{background:var(--border, #333)}._pre_1mt11_83{margin:0;font-family:Cascadia Code,Fira Code,monospace;font-size:13px;color:var(--text, #ccc);white-space:pre;word-break:normal;user-select:text;-webkit-user-select:text}@keyframes _fade-in_1mt11_1{0%{opacity:0}to{opacity:1}}._layout_b885c_1{--keyboard-height: 0px;position:relative;height:100vh;height:100dvh;overflow:hidden;background:var(--bg);color:var(--text);overscroll-behavior:none;touch-action:none}._topBar_b885c_14{height:calc(40px + env(safe-area-inset-top,0px));padding:0 4px;padding-top:env(safe-area-inset-top,0px);display:flex;align-items:center;background:linear-gradient(to bottom,var(--surface) 0%,var(--surface) 35%,var(--bg) 100%);gap:2px;position:fixed;top:0;left:0;right:0;z-index:60}._left_b885c_29{display:flex;align-items:center;gap:4px;flex-shrink:0;overflow:hidden}._right_b885c_37{display:flex;align-items:center;gap:2px;flex-shrink:0}._barBtn_b885c_44{background:none;border:none;color:var(--text-dim);width:30px;height:30px;border-radius:8px;cursor:pointer;display:flex;align-items:center;justify-content:center;text-decoration:none;gap:4px;padding:0;flex-shrink:0;transition:background .15s,color .15s;-webkit-tap-highlight-color:transparent}._barBtn_b885c_44:hover{background:var(--border);color:var(--text)}._barBtnWithLabel_b885c_70{width:auto;padding:0 10px;gap:3px}._btnLabel_b885c_76{font-size:12px;font-weight:600}._stopBtn_b885c_81{color:var(--danger);font-size:11px;font-weight:600}._stopBtn_b885c_81:hover{background:var(--danger);color:#fff}._stopBtn_b885c_81:active{transform:scale(.9)}._statusDot_b885c_96{width:8px;height:8px;border-radius:50%;background:var(--danger);flex-shrink:0;transition:background .3s;display:inline-block}._statusConnected_b885c_106{background:var(--success)}._sessionName_b885c_110{font-size:13px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--text);max-width:120px}._statusText_b885c_120{font-size:11px;color:var(--text-secondary);white-space:nowrap;flex-shrink:0}._mobileOnly_b885c_127{display:none}._connectionBanner_b885c_132{position:fixed;top:calc(40px + env(safe-area-inset-top,0px));left:0;right:0;z-index:59;display:flex;align-items:center;justify-content:center;gap:12px;padding:6px 16px;background:var(--danger, #f14c4c);color:#fff;font-size:13px;font-weight:500}._connectionBannerBtn_b885c_149{background:#fff3;border:1px solid rgba(255,255,255,.4);color:#fff;border-radius:4px;padding:2px 10px;font-size:12px;cursor:pointer}._connectionBannerBtn_b885c_149:hover{background:#ffffff4d}@media(max-width:640px){._desktopOnly_b885c_164{display:none!important}._mobileOnly_b885c_127{display:flex!important}._sessionName_b885c_110,._statusText_b885c_120{display:none}._connectionBanner_b885c_132{top:calc(32px + env(safe-area-inset-top,0px))}}._terminalArea_b885c_180{position:absolute;top:calc(40px + env(safe-area-inset-top,0px));bottom:calc(75px + var(--keyboard-height, 0px));left:0;right:0;display:flex;min-height:0;background:var(--bg)}._layout_b885c_1[data-keyboard-open] ._terminalArea_b885c_180{bottom:calc(75px + var(--keyboard-height, 0px))}._layout_b885c_1[data-hide-touchbar] ._terminalArea_b885c_180{bottom:var(--keyboard-height, 0px)}._split_b885c_203{flex-direction:row}._splitHorizontal_b885c_207{flex-direction:column}._paneWrapper_b885c_211{display:flex;flex-direction:column;min-height:0;min-width:0;position:absolute;top:0;right:0;bottom:0;left:0;visibility:hidden;pointer-events:none}._visible_b885c_226{position:relative;flex:1;visibility:visible;pointer-events:auto;overscroll-behavior:none}._paneFocused_b885c_235{box-shadow:inset 0 0 0 2px var(--accent);z-index:1}._paneUnfocused_b885c_240{opacity:.7;transition:opacity .15s;cursor:pointer}._paneUnfocused_b885c_240:hover{opacity:.9}._split_b885c_203:not(._splitHorizontal_b885c_207) ._visible_b885c_226+._visible_b885c_226{border-left:2px solid var(--border)}._splitHorizontal_b885c_207 ._visible_b885c_226+._visible_b885c_226{border-top:2px solid var(--border)}@media(orientation:landscape)and (max-height:500px){._topBar_b885c_14{height:calc(32px + env(safe-area-inset-top,0px))}._terminalArea_b885c_180{top:calc(32px + env(safe-area-inset-top,0px));bottom:calc(48px + var(--keyboard-height, 0px))}._layout_b885c_1[data-keyboard-open] ._terminalArea_b885c_180,._layout_b885c_1[data-hide-touchbar] ._terminalArea_b885c_180{bottom:var(--keyboard-height, 0px)}}._downloadOverlay_b885c_278{position:fixed;top:0;right:0;bottom:0;left:0;z-index:200;background:var(--overlay-bg);display:flex;align-items:center;justify-content:center;animation:_downloadFadeIn_b885c_1 .2s ease-out}._downloadPanel_b885c_289{width:min(90vw,420px);max-height:80vh;background:var(--surface);border:1px solid var(--border);border-radius:12px;box-shadow:0 8px 24px #0006;display:flex;flex-direction:column;overflow:hidden;animation:_downloadSlideUp_b885c_1 .25s ease-out}@keyframes _downloadFadeIn_b885c_1{0%{opacity:0}to{opacity:1}}@keyframes _downloadSlideUp_b885c_1{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}._codeViewerOverlay_b885c_323{position:fixed;top:0;right:0;bottom:0;left:0;z-index:300;animation:_codeViewerFadeIn_b885c_1 .15s ease-out}@keyframes _codeViewerFadeIn_b885c_1{0%{opacity:0}to{opacity:1}}:root{--bg: #1e1e1e;--surface: #252526;--border: #3c3c3c;--border-subtle: #474747;--text: #d4d4d4;--text-secondary: #858585;--text-dim: #6e6e6e;--text-muted: #555555;--accent: #0078d4;--accent-hover: #1a8ae8;--accent-active: #005a9e;--danger: #f14c4c;--danger-hover: #d73a3a;--success: #89d185;--warning: #e8ab3a;--overlay-bg: rgba(0, 0, 0, .85);--key-bg: #4a4a4c;--key-border: #5a5a5c;--key-shadow: rgba(0, 0, 0, .5);--key-special-bg: #333335}[data-theme=light]{--bg: #ffffff;--surface: #f3f3f3;--border: #e0e0e0;--border-subtle: #d0d0d0;--text: #1e1e1e;--text-secondary: #616161;--text-dim: #767676;--text-muted: #a0a0a0;--accent: #0078d4;--accent-hover: #106ebe;--accent-active: #005a9e;--danger: #e51400;--danger-hover: #c20000;--success: #16825d;--warning: #d48806;--overlay-bg: rgba(0, 0, 0, .5);--key-bg: #ffffff;--key-border: #b5b5b5;--key-shadow: rgba(0, 0, 0, .12);--key-special-bg: #adb5bd}[data-theme=monokai]{--bg: #272822;--surface: #1e1f1c;--border: #49483e;--border-subtle: #5c5c4f;--text: #f8f8f2;--text-secondary: #a59f85;--text-dim: #75715e;--text-muted: #5a5854;--accent: #a6e22e;--accent-hover: #b8f53c;--accent-active: #8acc16;--danger: #f92672;--danger-hover: #e0155d;--success: #a6e22e;--overlay-bg: rgba(0, 0, 0, .75);--key-bg: #49483e;--key-border: #5c5c4f;--key-shadow: rgba(0, 0, 0, .4);--key-special-bg: #3e3d32}[data-theme=solarized-dark]{--bg: #002b36;--surface: #073642;--border: #586e75;--border-subtle: #657b83;--text: #839496;--text-secondary: #657b83;--text-dim: #586e75;--text-muted: #4a5a62;--accent: #268bd2;--accent-hover: #379ce3;--accent-active: #1a7abf;--danger: #dc322f;--danger-hover: #c8221f;--success: #859900;--overlay-bg: rgba(0, 0, 0, .75);--key-bg: #073642;--key-border: #586e75;--key-shadow: rgba(0, 0, 0, .3);--key-special-bg: #002b36}[data-theme=solarized-light]{--bg: #fdf6e3;--surface: #eee8d5;--border: #93a1a1;--border-subtle: #839496;--text: #657b83;--text-secondary: #93a1a1;--text-dim: #a0a0a0;--text-muted: #b0b0b0;--accent: #268bd2;--accent-hover: #379ce3;--accent-active: #1a7abf;--danger: #dc322f;--danger-hover: #c8221f;--success: #859900;--overlay-bg: rgba(0, 0, 0, .4);--key-bg: #ffffff;--key-border: #b5b5b5;--key-shadow: rgba(0, 0, 0, .12);--key-special-bg: #adb5bd}[data-theme=nord]{--bg: #2e3440;--surface: #3b4252;--border: #434c5e;--border-subtle: #4c566a;--text: #d8dee9;--text-secondary: #b0bac9;--text-dim: #7b88a1;--text-muted: #5c6a85;--accent: #88c0d0;--accent-hover: #9fd4e4;--accent-active: #6aafbf;--danger: #bf616a;--danger-hover: #a84d57;--success: #a3be8c;--overlay-bg: rgba(0, 0, 0, .75);--key-bg: #434c5e;--key-border: #4c566a;--key-shadow: rgba(0, 0, 0, .3);--key-special-bg: #3b4252}[data-theme=dracula]{--bg: #282a36;--surface: #343746;--border: #44475a;--border-subtle: #525568;--text: #f8f8f2;--text-secondary: #c1c4d2;--text-dim: #8e92a4;--text-muted: #6272a4;--accent: #bd93f9;--accent-hover: #d0b0ff;--accent-active: #a77de7;--danger: #ff5555;--danger-hover: #e03d3d;--success: #50fa7b;--overlay-bg: rgba(0, 0, 0, .75);--key-bg: #44475a;--key-border: #525568;--key-shadow: rgba(0, 0, 0, .4);--key-special-bg: #343746}[data-theme=github-dark]{--bg: #0d1117;--surface: #161b22;--border: #30363d;--border-subtle: #3d444d;--text: #c9d1d9;--text-secondary: #8b949e;--text-dim: #6e7681;--text-muted: #484f58;--accent: #58a6ff;--accent-hover: #79b8ff;--accent-active: #388bfd;--danger: #f85149;--danger-hover: #da3633;--success: #3fb950;--overlay-bg: rgba(0, 0, 0, .75);--key-bg: #161b22;--key-border: #30363d;--key-shadow: rgba(0, 0, 0, .4);--key-special-bg: #0d1117}[data-theme=one-dark]{--bg: #282c34;--surface: #21252b;--border: #3e4452;--border-subtle: #4b5263;--text: #abb2bf;--text-secondary: #7f848e;--text-dim: #5c6370;--text-muted: #4b5263;--accent: #61afef;--accent-hover: #7dc0ff;--accent-active: #4d9ede;--danger: #e06c75;--danger-hover: #c95c67;--success: #98c379;--overlay-bg: rgba(0, 0, 0, .75);--key-bg: #3e4452;--key-border: #4b5263;--key-shadow: rgba(0, 0, 0, .3);--key-special-bg: #21252b}[data-theme=catppuccin]{--bg: #1e1e2e;--surface: #313244;--border: #45475a;--border-subtle: #585b70;--text: #cdd6f4;--text-secondary: #a6adc8;--text-dim: #7f849c;--text-muted: #585b70;--accent: #89b4fa;--accent-hover: #b4d0ff;--accent-active: #5c9de3;--danger: #f38ba8;--danger-hover: #eb7c9d;--success: #a6e3a1;--overlay-bg: rgba(0, 0, 0, .75);--key-bg: #45475a;--key-border: #585b70;--key-shadow: rgba(0, 0, 0, .3);--key-special-bg: #313244}[data-theme=gruvbox]{--bg: #282828;--surface: #3c3836;--border: #504945;--border-subtle: #665c54;--text: #ebdbb2;--text-secondary: #d5c4a1;--text-dim: #a89984;--text-muted: #7c6f64;--accent: #83a598;--accent-hover: #9dbfb4;--accent-active: #6a8f8a;--danger: #fb4934;--danger-hover: #e33826;--success: #b8bb26;--overlay-bg: rgba(0, 0, 0, .75);--key-bg: #504945;--key-border: #665c54;--key-shadow: rgba(0, 0, 0, .4);--key-special-bg: #3c3836}[data-theme=night-owl]{--bg: #011627;--surface: #0d2a45;--border: #1d3b53;--border-subtle: #264863;--text: #d6deeb;--text-secondary: #8badc1;--text-dim: #5f7e97;--text-muted: #3f5f7d;--accent: #7fdbca;--accent-hover: #9ff0e0;--accent-active: #62c5b5;--danger: #ef5350;--danger-hover: #d83130;--success: #addb67;--overlay-bg: rgba(0, 0, 0, .75);--key-bg: #1d3b53;--key-border: #264863;--key-shadow: rgba(0, 0, 0, .4);--key-special-bg: #0d2a45}[data-theme=tokyo-night]{--bg: #1a1b26;--surface: #24283b;--border: #3b4261;--border-subtle: #444b6a;--text: #a9b1d6;--text-secondary: #7982a9;--text-dim: #565f89;--text-muted: #414868;--accent: #7aa2f7;--accent-hover: #99b4ff;--accent-active: #5d8af0;--danger: #f7768e;--danger-hover: #e05874;--success: #9ece6a;--overlay-bg: rgba(0, 0, 0, .8);--key-bg: #3b4261;--key-border: #444b6a;--key-shadow: rgba(0, 0, 0, .4);--key-special-bg: #24283b}[data-theme=rose-pine]{--bg: #191724;--surface: #1f1d2e;--border: #26233a;--border-subtle: #393552;--text: #e0def4;--text-secondary: #908caa;--text-dim: #6e6a86;--text-muted: #524f67;--accent: #c4a7e7;--accent-hover: #d4bef5;--accent-active: #a88fd4;--danger: #eb6f92;--danger-hover: #d4577a;--success: #31748f;--overlay-bg: rgba(0, 0, 0, .8);--key-bg: #26233a;--key-border: #393552;--key-shadow: rgba(0, 0, 0, .4);--key-special-bg: #1f1d2e}[data-theme=kanagawa]{--bg: #1f1f28;--surface: #2a2a37;--border: #363646;--border-subtle: #454559;--text: #dcd7ba;--text-secondary: #c8c093;--text-dim: #727169;--text-muted: #54546d;--accent: #7e9cd8;--accent-hover: #9bb5e6;--accent-active: #6282c2;--danger: #c34043;--danger-hover: #a8302f;--success: #76946a;--overlay-bg: rgba(0, 0, 0, .8);--key-bg: #363646;--key-border: #454559;--key-shadow: rgba(0, 0, 0, .4);--key-special-bg: #2a2a37}[data-theme=everforest]{--bg: #2d353b;--surface: #343f44;--border: #475258;--border-subtle: #56635a;--text: #d3c6aa;--text-secondary: #a7c080;--text-dim: #859289;--text-muted: #6b7a70;--accent: #a7c080;--accent-hover: #bdd49b;--accent-active: #8faa68;--danger: #e67e80;--danger-hover: #cf6567;--success: #83c092;--overlay-bg: rgba(0, 0, 0, .75);--key-bg: #475258;--key-border: #56635a;--key-shadow: rgba(0, 0, 0, .35);--key-special-bg: #343f44}[data-theme=ayu-dark]{--bg: #0b0e14;--surface: #11151c;--border: #1c2433;--border-subtle: #2d3b4d;--text: #bfbdb6;--text-secondary: #73b8ff;--text-dim: #636a76;--text-muted: #404854;--accent: #e6b450;--accent-hover: #f0c566;--accent-active: #d49e38;--danger: #ea6c73;--danger-hover: #d4525a;--success: #91b362;--overlay-bg: rgba(0, 0, 0, .85);--key-bg: #1c2433;--key-border: #2d3b4d;--key-shadow: rgba(0, 0, 0, .5);--key-special-bg: #11151c}[data-theme=matrix]{--bg: #0a0a0a;--surface: #111111;--border: #003b00;--border-subtle: #005200;--text: #00ff41;--text-secondary: #00cc33;--text-dim: #009926;--text-muted: #006619;--accent: #00ff41;--accent-hover: #33ff66;--accent-active: #00cc33;--danger: #00e639;--danger-hover: #00b32d;--success: #33ff66;--overlay-bg: rgba(0, 0, 0, .9);--key-bg: #003b00;--key-border: #005200;--key-shadow: rgba(0, 255, 65, .15);--key-special-bg: #002200}[data-theme=cyberpunk]{--bg: #0d0221;--surface: #150535;--border: #2a0a4a;--border-subtle: #3d1166;--text: #e0d0ff;--text-secondary: #b49ce0;--text-dim: #7b5ea7;--text-muted: #4a3674;--accent: #ff2a6d;--accent-hover: #ff5588;--accent-active: #d91e5a;--danger: #d300c5;--danger-hover: #a600a0;--success: #05d9e8;--overlay-bg: rgba(13, 2, 33, .9);--key-bg: #2a0a4a;--key-border: #3d1166;--key-shadow: rgba(255, 42, 109, .2);--key-special-bg: #150535}[data-theme=sunset-glow]{--bg: #1a1016;--surface: #261820;--border: #3d2530;--border-subtle: #553545;--text: #e8d5c4;--text-secondary: #c0a090;--text-dim: #8a6a5a;--text-muted: #5a4040;--accent: #ff6b35;--accent-hover: #ff8a55;--accent-active: #e05520;--danger: #ff6b6b;--danger-hover: #e05050;--success: #c3e88d;--overlay-bg: rgba(26, 16, 22, .9);--key-bg: #3d2530;--key-border: #553545;--key-shadow: rgba(255, 107, 53, .2);--key-special-bg: #261820}[data-theme=synthwave]{--bg: #241b2f;--surface: #2e2440;--border: #453558;--border-subtle: #5a4670;--text: #f0e4fc;--text-secondary: #c0b0d8;--text-dim: #7a6a90;--text-muted: #504660;--accent: #ff7edb;--accent-hover: #ff9de6;--accent-active: #e060c0;--danger: #fe4450;--danger-hover: #d83040;--success: #72f1b8;--overlay-bg: rgba(36, 27, 47, .9);--key-bg: #453558;--key-border: #5a4670;--key-shadow: rgba(255, 126, 219, .2);--key-special-bg: #2e2440}[data-theme=aurora]{--bg: #07090f;--surface: #0e1220;--border: #1a2035;--border-subtle: #263050;--text: #c5d1eb;--text-secondary: #8898b8;--text-dim: #506080;--text-muted: #354060;--accent: #5ec796;--accent-hover: #78d8aa;--accent-active: #48b080;--danger: #e06c8a;--danger-hover: #c85575;--success: #88c0d0;--overlay-bg: rgba(7, 9, 15, .9);--key-bg: #1a2035;--key-border: #263050;--key-shadow: rgba(94, 199, 150, .15);--key-special-bg: #0e1220}[data-theme=deep-ocean]{--bg: #040b14;--surface: #08121e;--border: #122038;--border-subtle: #1a3050;--text: #8ab4f8;--text-secondary: #5a8ac0;--text-dim: #2a5a90;--text-muted: #1a3a5c;--accent: #4fc3f7;--accent-hover: #70d4ff;--accent-active: #38a8e0;--danger: #ff5252;--danger-hover: #d83838;--success: #69f0ae;--overlay-bg: rgba(4, 11, 20, .92);--key-bg: #122038;--key-border: #1a3050;--key-shadow: rgba(79, 195, 247, .15);--key-special-bg: #08121e}[data-theme=neon-noir]{--bg: #0c0c0c;--surface: #161616;--border: #2a2a2a;--border-subtle: #383838;--text: #cccccc;--text-secondary: #999999;--text-dim: #666666;--text-muted: #444444;--accent: #00ff9f;--accent-hover: #33ffb5;--accent-active: #00cc80;--danger: #ff003c;--danger-hover: #cc0030;--success: #00ff9f;--overlay-bg: rgba(12, 12, 12, .92);--key-bg: #2a2a2a;--key-border: #383838;--key-shadow: rgba(0, 255, 159, .12);--key-special-bg: #161616}[data-theme=frost-byte]{--bg: #0a1628;--surface: #10203a;--border: #1a3050;--border-subtle: #254060;--text: #c7dbe6;--text-secondary: #8aaccc;--text-dim: #4a7090;--text-muted: #2a4668;--accent: #6cb6e0;--accent-hover: #88caf0;--accent-active: #50a0cc;--danger: #e87d8a;--danger-hover: #cc6070;--success: #8dc891;--overlay-bg: rgba(10, 22, 40, .9);--key-bg: #1a3050;--key-border: #254060;--key-shadow: rgba(108, 182, 224, .15);--key-special-bg: #10203a}[data-theme=vice-city]{--bg: #0f0326;--surface: #1a0838;--border: #2e1055;--border-subtle: #421870;--text: #f8d0f0;--text-secondary: #c8a0c0;--text-dim: #8a6088;--text-muted: #4a2068;--accent: #ff71ce;--accent-hover: #ff95db;--accent-active: #e050b0;--danger: #ff3a7e;--danger-hover: #d82868;--success: #01cdfe;--overlay-bg: rgba(15, 3, 38, .92);--key-bg: #2e1055;--key-border: #421870;--key-shadow: rgba(255, 113, 206, .2);--key-special-bg: #1a0838}[data-theme=radical]{--bg: #141322;--surface: #1c1b30;--border: #303145;--border-subtle: #40415a;--text: #d1d2d3;--text-secondary: #a8ffdb;--text-dim: #5a5b78;--text-muted: #303145;--accent: #ff428e;--accent-hover: #ff6ea4;--accent-active: #d83070;--danger: #fc28a8;--danger-hover: #d01888;--success: #00e8c6;--overlay-bg: rgba(20, 19, 34, .92);--key-bg: #303145;--key-border: #40415a;--key-shadow: rgba(255, 66, 142, .18);--key-special-bg: #1c1b30}[data-theme=material-ocean]{--bg: #0f111a;--surface: #181a27;--border: #252837;--border-subtle: #333750;--text: #a6accd;--text-secondary: #717cb4;--text-dim: #4b5178;--text-muted: #3b3f51;--accent: #82aaff;--accent-hover: #a0c0ff;--accent-active: #6090e8;--danger: #f07178;--danger-hover: #d05860;--success: #c3e88d;--overlay-bg: rgba(15, 17, 26, .92);--key-bg: #252837;--key-border: #333750;--key-shadow: rgba(130, 170, 255, .12);--key-special-bg: #181a27}[data-theme=sakura]{--bg: #1e1527;--surface: #281e35;--border: #3a2d4a;--border-subtle: #4e3d62;--text: #f0d6e8;--text-secondary: #c8a8c0;--text-dim: #8a6888;--text-muted: #4a3560;--accent: #ff90b3;--accent-hover: #ffa8c5;--accent-active: #e07898;--danger: #ff6b9d;--danger-hover: #d85080;--success: #a8d8a8;--overlay-bg: rgba(30, 21, 39, .92);--key-bg: #3a2d4a;--key-border: #4e3d62;--key-shadow: rgba(255, 144, 179, .18);--key-special-bg: #281e35}[data-theme=dark-teal]{--bg: #222831;--surface: #393e46;--border: #454c55;--border-subtle: #525a64;--text: #eeeeee;--text-secondary: #b8bcc2;--text-dim: #7a8088;--text-muted: #5c6370;--accent: #00adb5;--accent-hover: #28c5cc;--accent-active: #008a90;--danger: #e06c75;--danger-hover: #c45560;--success: #56d6a0;--overlay-bg: rgba(34, 40, 49, .92);--key-bg: #454c55;--key-border: #525a64;--key-shadow: rgba(0, 173, 181, .15);--key-special-bg: #393e46}[data-theme=blue-mist]{--bg: #f9f7f7;--surface: #dbe2ef;--border: #c8d2e2;--border-subtle: #b5c2d6;--text: #112d4e;--text-secondary: #3a5070;--text-dim: #6a8098;--text-muted: #8a9bb5;--accent: #3f72af;--accent-hover: #5588c4;--accent-active: #2e5a8e;--danger: #c0392b;--danger-hover: #a33025;--success: #27ae60;--overlay-bg: rgba(249, 247, 247, .92);--key-bg: #e8ecf4;--key-border: #d0d8e8;--key-shadow: rgba(0, 0, 0, .08);--key-special-bg: #dbe2ef}[data-theme=cyan-punch]{--bg: #252a34;--surface: #2e3441;--border: #3a4250;--border-subtle: #485060;--text: #eaeaea;--text-secondary: #b5b8be;--text-dim: #787e88;--text-muted: #555e6e;--accent: #ff2e63;--accent-hover: #ff5c85;--accent-active: #d82050;--danger: #ff2e63;--danger-hover: #d82050;--success: #08d9d6;--overlay-bg: rgba(37, 42, 52, .92);--key-bg: #3a4250;--key-border: #485060;--key-shadow: rgba(255, 46, 99, .15);--key-special-bg: #2e3441}[data-theme=earth-tone]{--bg: #2c3639;--surface: #3f4e4f;--border: #4e5e5f;--border-subtle: #5e6e6f;--text: #dcd7c9;--text-secondary: #b5b0a5;--text-dim: #888580;--text-muted: #5a6366;--accent: #a27b5c;--accent-hover: #b89070;--accent-active: #8a6848;--danger: #c75c5c;--danger-hover: #a84a4a;--success: #7a9a6e;--overlay-bg: rgba(44, 54, 57, .92);--key-bg: #4e5e5f;--key-border: #5e6e6f;--key-shadow: rgba(162, 123, 92, .15);--key-special-bg: #3f4e4f}[data-theme=crimson-night]{--bg: #2b2e4a;--surface: #53354a;--border: #64465a;--border-subtle: #76586c;--text: #eaeaea;--text-secondary: #b8b8c0;--text-dim: #808090;--text-muted: #53546e;--accent: #e84545;--accent-hover: #f06a6a;--accent-active: #c83535;--danger: #e84545;--danger-hover: #c83535;--success: #69c97a;--overlay-bg: rgba(43, 46, 74, .92);--key-bg: #64465a;--key-border: #76586c;--key-shadow: rgba(232, 69, 69, .15);--key-special-bg: #53354a}[data-theme=golden-night]{--bg: #222831;--surface: #393e46;--border: #454c55;--border-subtle: #525a64;--text: #eeeeee;--text-secondary: #b8bcc2;--text-dim: #7a8088;--text-muted: #5c6370;--accent: #ffd369;--accent-hover: #ffde8e;--accent-active: #dab450;--danger: #e06c75;--danger-hover: #c45560;--success: #7ec88a;--overlay-bg: rgba(34, 40, 49, .92);--key-bg: #454c55;--key-border: #525a64;--key-shadow: rgba(255, 211, 105, .15);--key-special-bg: #393e46}[data-theme=red-alert]{--bg: #171717;--surface: #444444;--border: #555555;--border-subtle: #666666;--text: #ededed;--text-secondary: #b8b8b8;--text-dim: #808080;--text-muted: #555555;--accent: #da0037;--accent-hover: #f04060;--accent-active: #b80030;--danger: #da0037;--danger-hover: #b80030;--success: #4ec760;--overlay-bg: rgba(23, 23, 23, .92);--key-bg: #555555;--key-border: #666666;--key-shadow: rgba(218, 0, 55, .15);--key-special-bg: #444444}[data-theme=espresso]{--bg: #2d2424;--surface: #5c3d2e;--border: #6e4e3e;--border-subtle: #7e5e4e;--text: #e0c097;--text-secondary: #c0a080;--text-dim: #907060;--text-muted: #5c4a42;--accent: #b85c38;--accent-hover: #d07048;--accent-active: #9a4a2a;--danger: #c45b4a;--danger-hover: #a84a3a;--success: #8aad6a;--overlay-bg: rgba(45, 36, 36, .92);--key-bg: #6e4e3e;--key-border: #7e5e4e;--key-shadow: rgba(184, 92, 56, .15);--key-special-bg: #5c3d2e}[data-theme=forest-floor]{--bg: #1b211a;--surface: #628141;--border: #728f52;--border-subtle: #82a062;--text: #ebd5ab;--text-secondary: #c8b890;--text-dim: #8a8868;--text-muted: #4a5548;--accent: #8bae66;--accent-hover: #a8c888;--accent-active: #709850;--danger: #c45b5b;--danger-hover: #a84a4a;--success: #8bae66;--overlay-bg: rgba(27, 33, 26, .92);--key-bg: #728f52;--key-border: #82a062;--key-shadow: rgba(139, 174, 102, .15);--key-special-bg: #628141}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--safe-bottom: 0px;--safe-top: 0px}html,body{height:100vh;height:100dvh;overflow:hidden;overscroll-behavior:none;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,sans-serif;background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-webkit-tap-highlight-color:transparent;transition:background .3s,color .3s}#root{height:100%;display:flex;flex-direction:column}a{color:var(--accent);text-decoration:none}button{font-family:inherit;cursor:pointer;border:none;background:none;color:inherit;font-size:inherit}input,select,textarea{font-family:inherit;font-size:inherit;color:var(--text);background:var(--surface);border:1px solid var(--border);border-radius:6px;padding:8px 12px;outline:none}input:focus,select:focus,textarea:focus{border-color:var(--accent)}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--border);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--border-subtle)}[data-sonner-toaster]{z-index:9999!important}[data-sonner-toaster][data-y-position=top]{top:env(safe-area-inset-top,0px)!important}@keyframes toast-in{0%{transform:translateY(100%);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes toast-out{0%{transform:translateY(0);opacity:1}to{transform:translateY(100%);opacity:0}}@keyframes slide-in-right{0%{transform:translate(100%)}to{transform:translate(0)}}@keyframes slide-out-right{0%{transform:translate(0)}to{transform:translate(100%)}}@keyframes slide-in-left{0%{transform:translate(-100%)}to{transform:translate(0)}}@keyframes slide-out-left{0%{transform:translate(0)}to{transform:translate(-100%)}}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes fade-out{0%{opacity:1}to{opacity:0}}@keyframes spin{to{transform:rotate(360deg)}}