@deepseek-insight/dsi 0.10.2 → 0.11.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 (52) hide show
  1. package/README.md +4 -4
  2. package/bin/dsi.mjs +23 -12
  3. package/bin/lib/plugin-chain.mjs +6 -5
  4. package/build/client/_app/immutable/assets/0.Bjw4vcZl.css +2 -0
  5. package/build/client/_app/immutable/chunks/Dj8AK3pr.js +1 -0
  6. package/build/client/_app/immutable/chunks/UPlr67N1.js +2 -0
  7. package/build/client/_app/immutable/chunks/WySTHi46.js +1 -0
  8. package/build/client/_app/immutable/chunks/{BodLd2is.js → e-3PBXxJ.js} +1 -1
  9. package/build/client/_app/immutable/entry/{app.ClaEF2lH.js → app.ezxtVZch.js} +2 -2
  10. package/build/client/_app/immutable/entry/start.DdPLwPDt.js +1 -0
  11. package/build/client/_app/immutable/nodes/{1.CSTMQTZ7.js → 1.CGppLUrN.js} +1 -1
  12. package/build/client/_app/immutable/nodes/{2.CdbJFHUF.js → 2.9BE7-E5x.js} +2 -2
  13. package/build/client/_app/version.json +1 -1
  14. package/build/handler.js +4 -4
  15. package/build/index.js +4 -4
  16. package/build/server/chunks/chunks/{internal2.js-XxZ8wzRE.js → internal2.js-Cu5N8_4R.js} +2 -2
  17. package/build/server/chunks/chunks/{registry.js-ClhrzR6O.js → registry.js-Bwc2MNSZ.js} +3 -3
  18. package/build/server/chunks/chunks/{state.js-D5zsYmjz.js → state.js-CRPhnJJH.js} +2 -2
  19. package/build/server/chunks/entries/endpoints/api/browser/_id_/activate/{_server.ts.js-B-Ns5pyR.js → _server.ts.js-BxfB-QXT.js} +2 -2
  20. package/build/server/chunks/entries/endpoints/api/browser/_id_/close/{_server.ts.js-CzXe-sTr.js → _server.ts.js-DT6rU-EU.js} +2 -2
  21. package/build/server/chunks/entries/endpoints/api/browser/_id_/closetab/{_server.ts.js-Ct465_rt.js → _server.ts.js-Cwu4C98Y.js} +2 -2
  22. package/build/server/chunks/entries/endpoints/api/browser/_id_/element/{_server.ts.js-6mdytkvM.js → _server.ts.js-B55tx3-S.js} +2 -2
  23. package/build/server/chunks/entries/endpoints/api/browser/_id_/history/{_server.ts.js-BwUPVQGx.js → _server.ts.js-D2ft7u0s.js} +2 -2
  24. package/build/server/chunks/entries/endpoints/api/browser/_id_/input/{_server.ts.js-8Nq3JxSo.js → _server.ts.js-BO1uO6i3.js} +2 -2
  25. package/build/server/chunks/entries/endpoints/api/browser/_id_/mcp/{_server.ts.js-B9eKtj1-.js → _server.ts.js-zOccgfJZ.js} +2 -2
  26. package/build/server/chunks/entries/endpoints/api/browser/_id_/navigate/{_server.ts.js-CHJs9Qbl.js → _server.ts.js-DgyR0sLf.js} +2 -2
  27. package/build/server/chunks/entries/endpoints/api/browser/_id_/opentab/{_server.ts.js-B32Ow0Y2.js → _server.ts.js-CPCIL2MG.js} +2 -2
  28. package/build/server/chunks/entries/endpoints/api/browser/_id_/page/{_server.ts.js-Cpv4BolN.js → _server.ts.js-Cjvr5nEt.js} +2 -2
  29. package/build/server/chunks/entries/endpoints/api/browser/_id_/stream/{_server.ts.js-DJqJImSI.js → _server.ts.js-Bb3DkB-H.js} +2 -2
  30. package/build/server/chunks/entries/endpoints/api/browser/_id_/tabs/{_server.ts.js-Bm6IAZF6.js → _server.ts.js-DVcq1pYf.js} +2 -2
  31. package/build/server/chunks/entries/endpoints/api/browser/_id_/viewport/{_server.ts.js-B1VVzfCk.js → _server.ts.js-D1xgkwTO.js} +2 -2
  32. package/build/server/chunks/entries/endpoints/api/browser/_id_/zoom/{_server.ts.js-CoUpqHeq.js → _server.ts.js-DFo94fTq.js} +2 -2
  33. package/build/server/chunks/entries/endpoints/api/browser/{_server.ts.js-D9hK0CG8.js → _server.ts.js-0Gye8oLN.js} +2 -2
  34. package/build/server/chunks/entries/pages/{_error.svelte.js-TrOSxb0e.js → _error.svelte.js-CJ9RHd_3.js} +3 -3
  35. package/build/server/chunks/entries/pages/{_page.svelte.js-BUuXoaje.js → _page.svelte.js-DlLAziUY.js} +4 -4
  36. package/build/server/chunks/{handler-BOqY82LA.js → handler-BRlzTcii.js} +3 -3
  37. package/build/server/chunks/{index.js-M1GginY2.js → index.js-D2umW-Cg.js} +2 -2
  38. package/build/server/chunks/{manifest.js-BEmwisii.js → manifest.js-CaT4HRXz.js} +20 -20
  39. package/build/server/chunks/nodes/{0.js-Do4ZKaKe.js → 0.js-B8ciwPSu.js} +3 -3
  40. package/build/server/chunks/nodes/1.js-cXTCbvze.js +9 -0
  41. package/build/server/chunks/nodes/{2.js-BFX_zPfJ.js → 2.js-CF_m1q-z.js} +3 -3
  42. package/package.json +1 -1
  43. package/template/.dsi/prompts.sqlite +0 -0
  44. package/template/.dsi/prompts.sqlite-shm +0 -0
  45. package/template/.dsi/prompts.sqlite-wal +0 -0
  46. package/build/client/_app/immutable/assets/0.B2rul4Mk.css +0 -2
  47. package/build/client/_app/immutable/chunks/Cy4hfhN-.js +0 -1
  48. package/build/client/_app/immutable/chunks/D17XAauH.js +0 -2
  49. package/build/client/_app/immutable/chunks/FY34R_78.js +0 -1
  50. package/build/client/_app/immutable/entry/start.CU6iOT39.js +0 -1
  51. package/build/server/chunks/nodes/1.js-CRbdbfof.js +0 -9
  52. /package/build/client/_app/immutable/nodes/{0.CYP0vr1_.js → 0.DopnsZUT.js} +0 -0
package/README.md CHANGED
@@ -79,16 +79,16 @@ One "floor" is a pair: **DSH** (the harness host) and **DSI** (the page you watc
79
79
 
80
80
  | What | Default | How to move it | Plain meaning |
81
81
  |---|---|---|---|
82
- | DSH host | `3080` | `--port <n>` | the harness brain of the floor |
83
- | DSI page | `5174` | `PORT=<n>` env var | the page you open in the browser |
84
- | Browser brain | `9515` | `DSI_MCP_PORT=<n>` env var | the MCP endpoint agents use to drive the glass browser |
82
+ | DSH host | `3080` | `--port <n>` or `DSH_PORT=<n>` env var (flag wins) | the harness brain of the floor |
83
+ | DSI page | `5174` | `DSI_PORT=<n>` env var | the page you open in the browser |
84
+ | Browser brain | `9515` | `GLASS_PORT=<n>` env var | the MCP endpoint agents use to drive the glass browser |
85
85
 
86
86
  **The browser brain.** By default the glass browser's assistant (the MCP brain that lets an agent click and type in the browser) runs as its **own separate helper process** — if it fails, you lose only the glass panel. Adding `--playwright-mcp` moves that brain **inside the DSI page server**: one less background process and a faster start, but a brain failure can now touch the page server itself. DSI prints a banner saying so whenever you use the flag — drop the flag to go back to the helper process.
87
87
 
88
88
  **Example — a second, self-contained floor beside a live one** (nothing on the running floor is touched):
89
89
 
90
90
  ```bash
91
- PORT=5176 DSI_MCP_PORT=19515 npx @deepseek-insight/dsi@latest dsh --sync --playwright-mcp --port 3081
91
+ DSI_PORT=5176 DSH_PORT=3081 GLASS_PORT=19515 npx @deepseek-insight/dsi@latest dsh --sync --playwright-mcp
92
92
  # Page: http://localhost:5176 · host: 3081 · brain: http://127.0.0.1:19515/sse
93
93
  ```
94
94
 
package/bin/dsi.mjs CHANGED
@@ -83,15 +83,17 @@ const USAGE = [
83
83
  '',
84
84
  ' Ports: `dsi dsh --sync` serves the DSI page on 5174 and opens your',
85
85
  ' browser there. With --dev the Vite dev server takes 5175 instead',
86
- ' and the browser follows. Override with PORT=<n>. The HOST half',
86
+ ' and the browser follows. Override with DSI_PORT=<n>. The HOST half',
87
87
  ' takes 3080 by default; when that port is held by a dsh web you',
88
88
  ' must keep running (another conversation floor), forward',
89
- ' --port <n> — it goes to `dsh web` and DSI follows it automatically.',
89
+ ' --port <n> (or DSH_PORT=<n>; the flag wins) — it goes to `dsh web`',
90
+ ' and DSI follows it automatically. GLASS_PORT=<n> moves the brain',
91
+ ' (the glass browser MCP, default 9515).',
90
92
  '',
91
93
  ' All commands (flags — see above):',
92
94
  '',
93
95
  ' dsi web [--zai] [--ov] [--dev] [--token <token>]',
94
- ' serve the DSI page alone (PORT env default 5174,',
96
+ ' serve the DSI page alone (DSI_PORT env default 5174,',
95
97
  ' HOST env default 127.0.0.1)',
96
98
  ' dsi dsh --token <token>',
97
99
  ' store the dsh launch token in ~/.dsi/settings.yaml',
@@ -392,7 +394,7 @@ function setDshAuthToken(token) {
392
394
  function stampedFloorEnv(uiPort) {
393
395
  return {
394
396
  DSI_UI: 'http://127.0.0.1:' + uiPort,
395
- DSI_MCP_URL: 'http://127.0.0.1:' + (process.env.DSI_MCP_PORT ?? 9515) + '/sse'
397
+ DSI_MCP_URL: 'http://127.0.0.1:' + (process.env.GLASS_PORT ?? 9515) + '/sse'
396
398
  };
397
399
  }
398
400
 
@@ -489,7 +491,7 @@ async function runSyncedPair(extraArgs, dev = 'build', execArgv = [], opts = {})
489
491
  // takes 5175 instead (vite.config.ts pins 5174 strictPort, so pair mode
490
492
  // passes 5175 explicitly), giving the two-port dev shape. in-process is
491
493
  // also a vite floor: same 5175.
492
- const uiPort = process.env.PORT ?? (mode === 'build' ? '5174' : '5175');
494
+ const uiPort = process.env.DSI_PORT ?? (mode === 'build' ? '5174' : '5175');
493
495
  // The host half takes --port <n> when forwarded (a 3080 held by a
494
496
  // dsh web this CLI does not own — e.g. another live conversation
495
497
  // floor — is exactly the case the preflight must not kill). The
@@ -506,7 +508,16 @@ async function runSyncedPair(extraArgs, dev = 'build', execArgv = [], opts = {})
506
508
  // bug 2026-10-11: DSH_HOST_PORT=3477 booted the host there while the
507
509
  // page dialed 3080 — the production floor — → "Failed to fetch".)
508
510
  const pluginPort = inProcess && process.env.DSH_HOST_PORT ? parseInt(process.env.DSH_HOST_PORT, 10) : undefined;
509
- const hostPort = hostPortFromArgs(extraArgs) ?? pluginPort ?? 3080;
511
+ // DSH_PORT (2026-11-08 rename): the env form of the forwarded --port flag —
512
+ // the CLI flag wins when both are set (explicit intent beats ambient env).
513
+ const envHostPort = /^\d+$/.test(process.env.DSH_PORT ?? '') ? Number(process.env.DSH_PORT) : undefined;
514
+ const flaggedHostPort = hostPortFromArgs(extraArgs);
515
+ const hostPort = flaggedHostPort ?? pluginPort ?? envHostPort ?? 3080;
516
+ // No forwarded flag but DSH_PORT set: forward it to `dsh web` as the flag
517
+ // it already understands — the host never learns the env name.
518
+ const hostSpawnArgs = !inProcess && flaggedHostPort === null && envHostPort !== undefined
519
+ ? [...extraArgs, '--port', String(envHostPort)]
520
+ : extraArgs;
510
521
  const dshBase = hostPort === 3080 ? undefined : `http://127.0.0.1:${hostPort}`;
511
522
  if (inProcess) {
512
523
  await preflightPort(uiPort, 'DSI page');
@@ -516,7 +527,7 @@ async function runSyncedPair(extraArgs, dev = 'build', execArgv = [], opts = {})
516
527
  }
517
528
  // IN-PROCESS: no sync script, no host child — the vite plugin owns the
518
529
  // host lifecycle (vite close hook stops it; one Ctrl-C, no orphan).
519
- const host = inProcess ? null : spawn('/bin/sh', [script, ...extraArgs], {
530
+ const host = inProcess ? null : spawn('/bin/sh', [script, ...hostSpawnArgs], {
520
531
  stdio: 'inherit',
521
532
  env: { ...process.env, DSH_WEB_VERSION: dshWebVersion(), ...stampedFloorEnv(uiPort) }
522
533
  });
@@ -766,7 +777,7 @@ function startDsiDevServer(defaultPort = '5175', dshBase = undefined, mode = 'pa
766
777
  }
767
778
  // --host matches the built server's 127.0.0.1 bind: vite's default
768
779
  // 'localhost' can resolve ::1-only and strand a 127.0.0.1 client.
769
- return spawn(process.execPath, [...execArgv, viteBin, 'dev', '--host', process.env.HOST ?? '127.0.0.1', '--port', process.env.PORT ?? defaultPort], {
780
+ return spawn(process.execPath, [...execArgv, viteBin, 'dev', '--host', process.env.HOST ?? '127.0.0.1', '--port', process.env.DSI_PORT ?? defaultPort], {
770
781
  // D7: inspector flags lead the child argv — node consumes options before
771
782
  // the script path, so `node --inspect vite.js dev` debugs THIS process
772
783
  // (vite + the embedded DSH host share one heap). The spawn execArgv
@@ -785,7 +796,7 @@ function startDsiDevServer(defaultPort = '5175', dshBase = undefined, mode = 'pa
785
796
  DSI_DEV: '1',
786
797
  // D4/D6: the mode rides as env, never past the CLI to the host.
787
798
  ...devModeEnv(mode, { playwrightMcp: opts.playwrightMcp === true }),
788
- ...stampedFloorEnv(process.env.PORT ?? defaultPort),
799
+ ...stampedFloorEnv(process.env.DSI_PORT ?? defaultPort),
789
800
  // The Faithful Bounce (ADR 2026-10-13, D1): the inspector flags are
790
801
  // part of the launch record — stamped so every restorer (the bounce
791
802
  // boot via ps -E, the delayed re-serve via inherited env) can put
@@ -806,7 +817,7 @@ function startDsiServer(defaultPort = '5174', dshBase = undefined, opts = {}) {
806
817
  stdio: 'inherit',
807
818
  env: {
808
819
  ...process.env,
809
- PORT: process.env.PORT ?? defaultPort,
820
+ PORT: process.env.DSI_PORT ?? defaultPort,
810
821
  HOST: process.env.HOST ?? '127.0.0.1',
811
822
  // First-start bootstrap seam: the server clones template/.dsi to ~/.dsi
812
823
  // when the operator home is absent (src/lib/server/settings-document.ts).
@@ -815,7 +826,7 @@ function startDsiServer(defaultPort = '5174', dshBase = undefined, opts = {}) {
815
826
  // vite child got it via startDsiDevServer's devModeEnv spread; the
816
827
  // built server was silently dropping it (caught by the live gate).
817
828
  ...devModeEnv('build', { playwrightMcp: opts.playwrightMcp === true }),
818
- ...stampedFloorEnv(process.env.PORT ?? defaultPort),
829
+ ...stampedFloorEnv(process.env.DSI_PORT ?? defaultPort),
819
830
  ...(dshBase !== undefined ? { DSH_BASE_URL: dshBase } : {})
820
831
  }
821
832
  });
@@ -909,7 +920,7 @@ if (command === 'web') {
909
920
  // Same browser-follows-the-UI contract as the pair (runSyncedPair): open
910
921
  // the default browser at the serving port — --dev's Vite server takes
911
922
  // 5175, the built server 5174; PORT/HOST overrides apply.
912
- openBrowser(`http://${process.env.HOST ?? '127.0.0.1'}:${process.env.PORT ?? (withDev ? '5175' : '5174')}/`);
923
+ openBrowser(`http://${process.env.HOST ?? '127.0.0.1'}:${process.env.DSI_PORT ?? (withDev ? '5175' : '5174')}/`);
913
924
 
914
925
  for (const signal of ['SIGINT', 'SIGTERM']) {
915
926
  process.on(signal, () => {
@@ -158,16 +158,17 @@ export function parseDevFloorPids(psOutput) {
158
158
  /** The port the floor's DSI UI answers on (ADR-0025 Wave 3 gate finding,
159
159
  * 2026-10-14): the host-bounce route is a DSI (vite) route, so the bounce
160
160
  * chain must POST the VITE port - the DSH host port only knows the fence
161
- * (401) or 404. Resolution order: PORT= in the floor env dump, then
162
- * --port N on the vite command line, then the 5175 default the launcher
163
- * pins. Pure: both inputs are strings read by dsi.mjs (ps -E and ps -o
164
- * command), so unit tests pin all three arms.
161
+ * (401) or 404. Resolution order: DSI_PORT= (the 2026-11-08 rename) then
162
+ * legacy PORT= in the floor env dump, then --port N on the vite command
163
+ * line, then the 5175 default the launcher pins. Pure: both inputs are
164
+ * strings read by dsi.mjs (ps -E and ps -o command), so unit tests pin
165
+ * all arms.
165
166
  *
166
167
  * @param {{ floorEnv?: string, command?: string }} params
167
168
  * @returns {number} the UI port
168
169
  */
169
170
  export function floorUiPort({ floorEnv = '', command = '' } = {}) {
170
- const envPort = /(?:^|\s)PORT=(\d+)/.exec(floorEnv || '');
171
+ const envPort = /(?:^|\s)DSI_PORT=(\d+)/.exec(floorEnv || '') || /(?:^|\s)PORT=(\d+)/.exec(floorEnv || '');
171
172
  if (envPort) return Number(envPort[1]);
172
173
  const argPort = /--port\s+(\d+)/.exec(command || '');
173
174
  if (argPort) return Number(argPort[1]);
@@ -0,0 +1,2 @@
1
+ /*! tailwindcss v4.3.3 | MIT License | https://tailwindcss.com */
2
+ @layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-translate-x:0;--tw-translate-y:0;--tw-translate-z:0;--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-space-y-reverse:0;--tw-border-style:solid;--tw-leading:initial;--tw-font-weight:initial;--tw-tracking:initial;--tw-ordinal:initial;--tw-slashed-zero:initial;--tw-numeric-figure:initial;--tw-numeric-spacing:initial;--tw-numeric-fraction:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-backdrop-blur:initial;--tw-backdrop-brightness:initial;--tw-backdrop-contrast:initial;--tw-backdrop-grayscale:initial;--tw-backdrop-hue-rotate:initial;--tw-backdrop-invert:initial;--tw-backdrop-opacity:initial;--tw-backdrop-saturate:initial;--tw-backdrop-sepia:initial;--tw-duration:initial;--tw-ease:initial;--tw-scale-x:1;--tw-scale-y:1;--tw-scale-z:1}}}@layer theme{:root,:host{--font-sans:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--color-red-400:oklch(70.4% .191 22.216);--color-red-500:oklch(63.7% .237 25.331);--color-amber-400:oklch(82.8% .189 84.429);--color-amber-500:oklch(76.9% .188 70.08);--color-yellow-200:oklch(94.5% .129 101.54);--color-green-300:oklch(87.1% .15 154.449);--color-green-400:oklch(79.2% .209 151.711);--color-green-500:oklch(72.3% .219 149.579);--color-emerald-500:oklch(69.6% .17 162.48);--color-sky-400:oklch(74.6% .16 232.661);--color-blue-100:oklch(93.2% .032 255.585);--color-blue-900:oklch(37.9% .146 265.522);--color-slate-100:oklch(96.8% .007 247.896);--color-slate-200:oklch(92.9% .013 255.508);--color-slate-300:oklch(86.9% .022 252.894);--color-slate-400:oklch(70.4% .04 256.788);--color-slate-500:oklch(55.4% .046 257.417);--color-slate-600:oklch(44.6% .043 257.281);--color-slate-700:oklch(37.2% .044 257.287);--color-slate-800:oklch(27.9% .041 260.031);--color-slate-900:oklch(20.8% .042 265.755);--color-slate-950:oklch(12.9% .042 264.695);--color-zinc-100:oklch(96.7% .001 286.375);--color-zinc-200:oklch(92% .004 286.32);--color-zinc-300:oklch(87.1% .006 286.286);--color-zinc-400:oklch(70.5% .015 286.067);--color-zinc-500:oklch(55.2% .016 285.938);--color-zinc-600:oklch(44.2% .017 285.786);--color-zinc-700:oklch(37% .013 285.805);--color-zinc-800:oklch(27.4% .006 286.033);--color-zinc-900:oklch(21% .006 285.885);--color-neutral-100:oklch(97% 0 none);--color-neutral-200:oklch(92.2% 0 none);--color-neutral-400:oklch(70.8% 0 none);--color-neutral-700:oklch(37.1% 0 none);--color-neutral-800:oklch(26.9% 0 none);--color-neutral-900:oklch(20.5% 0 none);--color-black:#000;--color-white:#fff;--spacing:.25rem;--container-sm:24rem;--container-xl:36rem;--container-2xl:42rem;--container-3xl:48rem;--text-xs:.75rem;--text-xs--line-height:calc(1 / .75);--text-sm:.875rem;--text-sm--line-height:calc(1.25 / .875);--text-lg:1.125rem;--text-lg--line-height:calc(1.75 / 1.125);--text-xl:1.25rem;--text-xl--line-height:calc(1.75 / 1.25);--text-5xl:3rem;--text-5xl--line-height:1;--font-weight-normal:400;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--tracking-wide:.025em;--tracking-wider:.05em;--leading-tight:1.25;--leading-normal:1.5;--leading-relaxed:1.625;--radius-sm:.25rem;--radius-md:.375rem;--radius-lg:.5rem;--radius-xl:.75rem;--radius-2xl:1rem;--ease-in-out:cubic-bezier(.4, 0, .2, 1);--animate-spin:spin 1s linear infinite;--animate-pulse:pulse 2s cubic-bezier(.4, 0, .6, 1) infinite;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono);--color-surface:#f8f9fa;--color-surface-alt:#f1f3f5;--color-surface-hover:#e9ecef;--color-surface-border:#dee2e6;--color-surface-elevated:#fff;--color-subagent-tint-1:beige;--color-subagent-tint-2:#e9e3c9;--color-subagent-tint-3:#ddd3b0;--color-text-primary:#212529;--color-text-secondary:#6c757d;--color-text-muted:#adb5bd;--color-accent-blue:#3b82f6;--color-accent-purple:#8b5cf6;--color-accent-purple-soft:#9f88fb;--color-accent-purple-ink:#2e1065;--color-accent-emerald-deep:#15803d;--color-accent-amber:#f59e0b;--color-accent-rose:#f43f5e;--color-accent-cyan:#06b6d4;--color-status-pass:#10b981;--color-status-fail:#ef4444;--color-status-pending:#f59e0b;--color-status-fail-ink:#fff;--color-tree-repo:#ff4500;--color-tree-child:#d2691e;--color-tree-amber:#f7ad31;--color-accent-deep:#7c3aed;--color-success-ink:#1a7f37;--color-success-soft:#27ae60;--color-green-verify:#16a34a;--color-accent-orange:#e67e22;--color-accent-amber-ink:#d97706;--color-accent-amber-ink-deep:#b45309;--color-danger-madrid:#e74c3c;--color-danger-github:#cf222e;--color-danger-editor-surface:#45161c;--color-danger-editor-ink:#ffb4bb;--color-doc-child:maroon;--color-navy-focus:#1e3a8a;--color-header-wash:#fdf5e6;--color-slate-neutral:#52606d;--color-danger-wash:#fef2f2;--color-danger-wash-border:#fee2e2;--color-danger-wash-ink:#991b1b;--color-ws-violet:#9400d3;--color-ws-green:#00a802;--color-ws-blue:#06c}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring:where(:not(iframe)){outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}:root{--si-run:#b91c1c;--color-surface-primary:var(--color-surface-elevated);--color-surface-secondary:var(--color-surface-alt);--color-border:var(--color-surface-border);--color-text:var(--color-text-primary);--color-bg:var(--color-surface)}svg{color:var(--color-accent-purple)}}@layer components;@layer utilities{.\@container{container-type:inline-size}.pointer-events-auto{pointer-events:auto}.pointer-events-none{pointer-events:none}.collapse{visibility:collapse}.invisible{visibility:hidden}.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.sticky{position:sticky}.inset-0{inset:0}.-top-3{top:calc(var(--spacing) * -3)}.top-0{top:0}.top-1{top:var(--spacing)}.top-1\.5{top:calc(var(--spacing) * 1.5)}.top-1\/2{top:50%}.top-5{top:calc(var(--spacing) * 5)}.top-8{top:calc(var(--spacing) * 8)}.top-full{top:100%}.-right-3{right:calc(var(--spacing) * -3)}.right-0{right:0}.right-1{right:var(--spacing)}.right-1\.5{right:calc(var(--spacing) * 1.5)}.right-2{right:calc(var(--spacing) * 2)}.right-3{right:calc(var(--spacing) * 3)}.right-5{right:calc(var(--spacing) * 5)}.right-full{right:100%}.bottom-0{bottom:0}.bottom-0\.5{bottom:calc(var(--spacing) * .5)}.bottom-1\/2{bottom:50%}.bottom-\[50vh\]{bottom:50vh}.bottom-full{bottom:100%}.left-0{left:0}.left-1\/2{left:50%}.left-3{left:calc(var(--spacing) * 3)}.left-7{left:calc(var(--spacing) * 7)}.left-full{left:100%}.isolate{isolation:isolate}.z-10{z-index:10}.z-30{z-index:30}.z-40{z-index:40}.z-41{z-index:41}.z-50{z-index:50}.z-1000,.z-\[1000\]{z-index:1000}.z-auto{z-index:auto}.order-0{order:0}.order-2{order:2}.row-1{grid-row:1}.\!container{width:100%!important}@media (width>=40rem){.\!container{max-width:40rem!important}}@media (width>=48rem){.\!container{max-width:48rem!important}}@media (width>=64rem){.\!container{max-width:64rem!important}}@media (width>=80rem){.\!container{max-width:80rem!important}}@media (width>=96rem){.\!container{max-width:96rem!important}}.container{width:100%}@media (width>=40rem){.container{max-width:40rem}}@media (width>=48rem){.container{max-width:48rem}}@media (width>=64rem){.container{max-width:64rem}}@media (width>=80rem){.container{max-width:80rem}}@media (width>=96rem){.container{max-width:96rem}}.m-0{margin:0}.-mx-1{margin-inline:calc(var(--spacing) * -1)}.mx-0\.5{margin-inline:calc(var(--spacing) * .5)}.mx-1{margin-inline:var(--spacing)}.mx-auto{margin-inline:auto}.my-0\.5{margin-block:calc(var(--spacing) * .5)}.my-1{margin-block:var(--spacing)}.mt-0\.5{margin-top:calc(var(--spacing) * .5)}.mt-1{margin-top:var(--spacing)}.mt-1\.5{margin-top:calc(var(--spacing) * 1.5)}.mt-2{margin-top:calc(var(--spacing) * 2)}.mt-3{margin-top:calc(var(--spacing) * 3)}.mt-4{margin-top:calc(var(--spacing) * 4)}.mt-px{margin-top:1px}.mr-1\.5{margin-right:calc(var(--spacing) * 1.5)}.mr-2{margin-right:calc(var(--spacing) * 2)}.mb-0\.5{margin-bottom:calc(var(--spacing) * .5)}.mb-1{margin-bottom:var(--spacing)}.mb-1\.5{margin-bottom:calc(var(--spacing) * 1.5)}.mb-2{margin-bottom:calc(var(--spacing) * 2)}.ml-1{margin-left:var(--spacing)}.ml-2{margin-left:calc(var(--spacing) * 2)}.ml-\[-2px\]{margin-left:-2px}.ml-auto{margin-left:auto}.block{display:block}.contents{display:contents}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-block{display:inline-block}.inline-flex{display:inline-flex}.table{display:table}.size-1\.5{width:calc(var(--spacing) * 1.5);height:calc(var(--spacing) * 1.5)}.h-1{height:var(--spacing)}.h-1\.5{height:calc(var(--spacing) * 1.5)}.h-2{height:calc(var(--spacing) * 2)}.h-3\.5{height:calc(var(--spacing) * 3.5)}.h-4{height:calc(var(--spacing) * 4)}.h-5{height:calc(var(--spacing) * 5)}.h-6{height:calc(var(--spacing) * 6)}.h-7{height:calc(var(--spacing) * 7)}.h-8{height:calc(var(--spacing) * 8)}.h-9{height:calc(var(--spacing) * 9)}.h-16{height:calc(var(--spacing) * 16)}.h-\[18px\]{height:18px}.h-\[22px\]{height:22px}.h-\[50px\]{height:50px}.h-\[62px\]{height:62px}.h-dvh{height:100dvh}.h-full{height:100%}.max-h-40{max-height:calc(var(--spacing) * 40)}.max-h-48{max-height:calc(var(--spacing) * 48)}.max-h-72{max-height:calc(var(--spacing) * 72)}.max-h-80{max-height:calc(var(--spacing) * 80)}.max-h-\[28rem\]{max-height:28rem}.max-h-\[30rem\]{max-height:30rem}.max-h-\[60vh\]{max-height:60vh}.max-h-\[500px\]{max-height:500px}.max-h-\[calc\(100vh-80px\)\]{max-height:calc(100vh - 80px)}.min-h-0{min-height:0}.min-h-72{min-height:calc(var(--spacing) * 72)}.min-h-80{min-height:calc(var(--spacing) * 80)}.min-h-\[2\.75rem\]{min-height:2.75rem}.w-1{width:var(--spacing)}.w-1\.5{width:calc(var(--spacing) * 1.5)}.w-2{width:calc(var(--spacing) * 2)}.w-3{width:calc(var(--spacing) * 3)}.w-3\.5{width:calc(var(--spacing) * 3.5)}.w-4{width:calc(var(--spacing) * 4)}.w-5{width:calc(var(--spacing) * 5)}.w-6{width:calc(var(--spacing) * 6)}.w-7{width:calc(var(--spacing) * 7)}.w-8{width:calc(var(--spacing) * 8)}.w-9{width:calc(var(--spacing) * 9)}.w-14{width:calc(var(--spacing) * 14)}.w-15{width:calc(var(--spacing) * 15)}.w-16{width:calc(var(--spacing) * 16)}.w-20{width:calc(var(--spacing) * 20)}.w-24{width:calc(var(--spacing) * 24)}.w-36{width:calc(var(--spacing) * 36)}.w-64{width:calc(var(--spacing) * 64)}.w-72{width:calc(var(--spacing) * 72)}.w-96{width:calc(var(--spacing) * 96)}.w-\[18px\]{width:18px}.w-\[22px\]{width:22px}.w-\[62px\]{width:62px}.w-\[200px\]{width:200px}.w-fit{width:fit-content}.w-full{width:100%}.w-max{width:max-content}.max-w-2xl{max-width:var(--container-2xl)}.max-w-3xl{max-width:var(--container-3xl)}.max-w-56{max-width:calc(var(--spacing) * 56)}.max-w-72{max-width:calc(var(--spacing) * 72)}.max-w-\[16rem\]{max-width:16rem}.max-w-\[80\%\]{max-width:80%}.max-w-\[80vw\]{max-width:80vw}.max-w-\[85\%\]{max-width:85%}.max-w-\[min\(100\%\,1600px\)\]{max-width:min(100%,1600px)}.max-w-full{max-width:100%}.max-w-sm{max-width:var(--container-sm)}.max-w-xl{max-width:var(--container-xl)}.min-w-0{min-width:0}.min-w-5{min-width:calc(var(--spacing) * 5)}.min-w-44{min-width:calc(var(--spacing) * 44)}.min-w-72{min-width:calc(var(--spacing) * 72)}.flex-1{flex:1}.flex-none{flex:none}.flex-shrink,.shrink{flex-shrink:1}.shrink-0{flex-shrink:0}.grow{flex-grow:1}.border-collapse{border-collapse:collapse}.origin-top-left{transform-origin:0 0}.-translate-x-1\/2{--tw-translate-x:calc(calc(1 / 2 * 100%) * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}.-translate-y-1\/2{--tw-translate-y:calc(calc(1 / 2 * 100%) * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}.rotate-90{rotate:90deg}.rotate-180{rotate:180deg}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.zoom-1{zoom:1%}.animate-pulse{animation:var(--animate-pulse)}.animate-spin{animation:var(--animate-spin)}.cursor-move{cursor:move}.cursor-pointer{cursor:pointer}.cursor-zoom-in{cursor:zoom-in}.resize{resize:both}.resize-none{resize:none}.scrollbar-none{scrollbar-width:none}.list-none{list-style-type:none}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-cols-\[auto_1fr\]{grid-template-columns:auto 1fr}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.place-items-center{place-items:center}.items-center{align-items:center}.items-end{align-items:flex-end}.items-start{align-items:flex-start}.items-stretch{align-items:stretch}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.justify-end{justify-content:flex-end}.gap-0\.5{gap:calc(var(--spacing) * .5)}.gap-1{gap:var(--spacing)}.gap-1\.5{gap:calc(var(--spacing) * 1.5)}.gap-2{gap:calc(var(--spacing) * 2)}.gap-3{gap:calc(var(--spacing) * 3)}.gap-4{gap:calc(var(--spacing) * 4)}:where(.space-y-0\.5>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * .5) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * .5) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-1\.5>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 1.5) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 1.5) * calc(1 - var(--tw-space-y-reverse)))}.gap-x-0\.5{column-gap:calc(var(--spacing) * .5)}.gap-x-1{column-gap:var(--spacing)}.gap-x-4{column-gap:calc(var(--spacing) * 4)}.gap-y-0\.5{row-gap:calc(var(--spacing) * .5)}.self-start{align-self:flex-start}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.overflow-auto{overflow:auto}.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.overflow-x-clip{overflow-x:clip}.overflow-y-auto{overflow-y:auto}.overflow-y-hidden{overflow-y:hidden}.rounded{border-radius:.25rem}.rounded-2xl{border-radius:var(--radius-2xl)}.rounded-\[2px\]{border-radius:2px}.rounded-\[16px\]{border-radius:16px}.rounded-full{border-radius:2147483647px}.rounded-lg{border-radius:var(--radius-lg)}.rounded-md{border-radius:var(--radius-md)}.rounded-sm{border-radius:var(--radius-sm)}.rounded-xl{border-radius:var(--radius-xl)}.rounded-t{border-top-left-radius:.25rem;border-top-right-radius:.25rem}.rounded-t-lg{border-top-left-radius:var(--radius-lg);border-top-right-radius:var(--radius-lg)}.rounded-t-md{border-top-left-radius:var(--radius-md);border-top-right-radius:var(--radius-md)}.rounded-l-sm{border-top-left-radius:var(--radius-sm);border-bottom-left-radius:var(--radius-sm)}.rounded-r-sm{border-top-right-radius:var(--radius-sm);border-bottom-right-radius:var(--radius-sm)}.rounded-br-sm{border-bottom-right-radius:var(--radius-sm)}.rounded-bl-sm{border-bottom-left-radius:var(--radius-sm)}.border{border-style:var(--tw-border-style);border-width:1px}.border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.border-b-0{border-bottom-style:var(--tw-border-style);border-bottom-width:0}.border-l-0{border-left-style:var(--tw-border-style);border-left-width:0}.border-none{--tw-border-style:none;border-style:none}.border-\[var\(--color-accent-deep\)\]{border-color:var(--color-accent-deep)}.border-\[var\(--color-accent-deep\)\]\/30{border-color:#7c3aed4d}@supports (color:color-mix(in lab, red, red)){.border-\[var\(--color-accent-deep\)\]\/30{border-color:color-mix(in oklab, var(--color-accent-deep) 30%, transparent)}}.border-\[var\(--color-surface-border\)\]{border-color:var(--color-surface-border)}.border-accent-blue{border-color:var(--color-accent-blue)}.border-accent-blue\/20{border-color:#3b82f633}@supports (color:color-mix(in lab, red, red)){.border-accent-blue\/20{border-color:color-mix(in oklab, var(--color-accent-blue) 20%, transparent)}}.border-accent-blue\/30{border-color:#3b82f64d}@supports (color:color-mix(in lab, red, red)){.border-accent-blue\/30{border-color:color-mix(in oklab, var(--color-accent-blue) 30%, transparent)}}.border-accent-purple\/30{border-color:#8b5cf64d}@supports (color:color-mix(in lab, red, red)){.border-accent-purple\/30{border-color:color-mix(in oklab, var(--color-accent-purple) 30%, transparent)}}.border-black\/10{border-color:#0000001a}@supports (color:color-mix(in lab, red, red)){.border-black\/10{border-color:color-mix(in oklab, var(--color-black) 10%, transparent)}}.border-black\/15{border-color:#00000026}@supports (color:color-mix(in lab, red, red)){.border-black\/15{border-color:color-mix(in oklab, var(--color-black) 15%, transparent)}}.border-danger-wash-border{border-color:var(--color-danger-wash-border)}.border-slate-600{border-color:var(--color-slate-600)}.border-slate-700\/50{border-color:#31415880}@supports (color:color-mix(in lab, red, red)){.border-slate-700\/50{border-color:color-mix(in oklab, var(--color-slate-700) 50%, transparent)}}.border-slate-800{border-color:var(--color-slate-800)}.border-status-fail\/30{border-color:#ef44444d}@supports (color:color-mix(in lab, red, red)){.border-status-fail\/30{border-color:color-mix(in oklab, var(--color-status-fail) 30%, transparent)}}.border-status-pass{border-color:var(--color-status-pass)}.border-status-pass\/30{border-color:#10b9814d}@supports (color:color-mix(in lab, red, red)){.border-status-pass\/30{border-color:color-mix(in oklab, var(--color-status-pass) 30%, transparent)}}.border-status-pending\/30{border-color:#f59e0b4d}@supports (color:color-mix(in lab, red, red)){.border-status-pending\/30{border-color:color-mix(in oklab, var(--color-status-pending) 30%, transparent)}}.border-surface-border{border-color:var(--color-surface-border)}.border-surface-border\/30{border-color:#dee2e64d}@supports (color:color-mix(in lab, red, red)){.border-surface-border\/30{border-color:color-mix(in oklab, var(--color-surface-border) 30%, transparent)}}.border-surface-border\/40{border-color:#dee2e666}@supports (color:color-mix(in lab, red, red)){.border-surface-border\/40{border-color:color-mix(in oklab, var(--color-surface-border) 40%, transparent)}}.border-surface-border\/50{border-color:#dee2e680}@supports (color:color-mix(in lab, red, red)){.border-surface-border\/50{border-color:color-mix(in oklab, var(--color-surface-border) 50%, transparent)}}.border-text-muted\/15{border-color:#adb5bd26}@supports (color:color-mix(in lab, red, red)){.border-text-muted\/15{border-color:color-mix(in oklab, var(--color-text-muted) 15%, transparent)}}.border-text-muted\/20{border-color:#adb5bd33}@supports (color:color-mix(in lab, red, red)){.border-text-muted\/20{border-color:color-mix(in oklab, var(--color-text-muted) 20%, transparent)}}.border-transparent{border-color:#0000}.border-zinc-300{border-color:var(--color-zinc-300)}.border-zinc-700{border-color:var(--color-zinc-700)}.bg-\[var\(--color-accent-deep\)\]{background-color:var(--color-accent-deep)}.bg-\[var\(--color-accent-deep\)\]\/10{background-color:#7c3aed1a}@supports (color:color-mix(in lab, red, red)){.bg-\[var\(--color-accent-deep\)\]\/10{background-color:color-mix(in oklab, var(--color-accent-deep) 10%, transparent)}}.bg-\[var\(--color-subagent-tint-1\)\]{background-color:var(--color-subagent-tint-1)}.bg-\[var\(--color-subagent-tint-2\)\]{background-color:var(--color-subagent-tint-2)}.bg-\[var\(--color-subagent-tint-3\)\]{background-color:var(--color-subagent-tint-3)}.bg-\[var\(--color-surface-elevated\)\]{background-color:var(--color-surface-elevated)}.bg-accent-blue{background-color:var(--color-accent-blue)}.bg-accent-blue\/10{background-color:#3b82f61a}@supports (color:color-mix(in lab, red, red)){.bg-accent-blue\/10{background-color:color-mix(in oklab, var(--color-accent-blue) 10%, transparent)}}.bg-accent-blue\/15{background-color:#3b82f626}@supports (color:color-mix(in lab, red, red)){.bg-accent-blue\/15{background-color:color-mix(in oklab, var(--color-accent-blue) 15%, transparent)}}.bg-accent-blue\/20{background-color:#3b82f633}@supports (color:color-mix(in lab, red, red)){.bg-accent-blue\/20{background-color:color-mix(in oklab, var(--color-accent-blue) 20%, transparent)}}.bg-accent-blue\/30{background-color:#3b82f64d}@supports (color:color-mix(in lab, red, red)){.bg-accent-blue\/30{background-color:color-mix(in oklab, var(--color-accent-blue) 30%, transparent)}}.bg-accent-cyan\/10{background-color:#06b6d41a}@supports (color:color-mix(in lab, red, red)){.bg-accent-cyan\/10{background-color:color-mix(in oklab, var(--color-accent-cyan) 10%, transparent)}}.bg-accent-emerald-deep{background-color:var(--color-accent-emerald-deep)}.bg-accent-purple-ink{background-color:var(--color-accent-purple-ink)}.bg-accent-purple-soft{background-color:var(--color-accent-purple-soft)}.bg-accent-purple\/15{background-color:#8b5cf626}@supports (color:color-mix(in lab, red, red)){.bg-accent-purple\/15{background-color:color-mix(in oklab, var(--color-accent-purple) 15%, transparent)}}.bg-accent-purple\/20{background-color:#8b5cf633}@supports (color:color-mix(in lab, red, red)){.bg-accent-purple\/20{background-color:color-mix(in oklab, var(--color-accent-purple) 20%, transparent)}}.bg-amber-400{background-color:var(--color-amber-400)}.bg-black\/5{background-color:#0000000d}@supports (color:color-mix(in lab, red, red)){.bg-black\/5{background-color:color-mix(in oklab, var(--color-black) 5%, transparent)}}.bg-black\/40{background-color:#0006}@supports (color:color-mix(in lab, red, red)){.bg-black\/40{background-color:color-mix(in oklab, var(--color-black) 40%, transparent)}}.bg-black\/60{background-color:#0009}@supports (color:color-mix(in lab, red, red)){.bg-black\/60{background-color:color-mix(in oklab, var(--color-black) 60%, transparent)}}.bg-blue-100{background-color:var(--color-blue-100)}.bg-danger-wash{background-color:var(--color-danger-wash)}.bg-emerald-500{background-color:var(--color-emerald-500)}.bg-green-300{background-color:var(--color-green-300)}.bg-green-500{background-color:var(--color-green-500)}.bg-header-wash{background-color:var(--color-header-wash)}.bg-neutral-100{background-color:var(--color-neutral-100)}.bg-neutral-200{background-color:var(--color-neutral-200)}.bg-red-500{background-color:var(--color-red-500)}.bg-sky-400{background-color:var(--color-sky-400)}.bg-slate-700{background-color:var(--color-slate-700)}.bg-slate-800{background-color:var(--color-slate-800)}.bg-slate-800\/60{background-color:#1d293d99}@supports (color:color-mix(in lab, red, red)){.bg-slate-800\/60{background-color:color-mix(in oklab, var(--color-slate-800) 60%, transparent)}}.bg-slate-800\/90{background-color:#1d293de6}@supports (color:color-mix(in lab, red, red)){.bg-slate-800\/90{background-color:color-mix(in oklab, var(--color-slate-800) 90%, transparent)}}.bg-slate-900{background-color:var(--color-slate-900)}.bg-slate-900\/40{background-color:#0f172b66}@supports (color:color-mix(in lab, red, red)){.bg-slate-900\/40{background-color:color-mix(in oklab, var(--color-slate-900) 40%, transparent)}}.bg-slate-950{background-color:var(--color-slate-950)}.bg-status-fail{background-color:var(--color-status-fail)}.bg-status-fail\/10{background-color:#ef44441a}@supports (color:color-mix(in lab, red, red)){.bg-status-fail\/10{background-color:color-mix(in oklab, var(--color-status-fail) 10%, transparent)}}.bg-status-pass{background-color:var(--color-status-pass)}.bg-status-pass\/10{background-color:#10b9811a}@supports (color:color-mix(in lab, red, red)){.bg-status-pass\/10{background-color:color-mix(in oklab, var(--color-status-pass) 10%, transparent)}}.bg-status-pass\/100{background-color:var(--color-status-pass)}.bg-status-pending{background-color:var(--color-status-pending)}.bg-status-pending\/10{background-color:#f59e0b1a}@supports (color:color-mix(in lab, red, red)){.bg-status-pending\/10{background-color:color-mix(in oklab, var(--color-status-pending) 10%, transparent)}}.bg-status-pending\/100{background-color:var(--color-status-pending)}.bg-surface{background-color:var(--color-surface)}.bg-surface-alt{background-color:var(--color-surface-alt)}.bg-surface-border{background-color:var(--color-surface-border)}.bg-surface-elevated{background-color:var(--color-surface-elevated)}.bg-surface\/60{background-color:#f8f9fa99}@supports (color:color-mix(in lab, red, red)){.bg-surface\/60{background-color:color-mix(in oklab, var(--color-surface) 60%, transparent)}}.bg-transparent{background-color:#0000}.bg-white{background-color:var(--color-white)}.bg-white\/95{background-color:#fffffff2}@supports (color:color-mix(in lab, red, red)){.bg-white\/95{background-color:color-mix(in oklab, var(--color-white) 95%, transparent)}}.bg-yellow-200{background-color:var(--color-yellow-200)}.bg-zinc-400{background-color:var(--color-zinc-400)}.bg-\[linear-gradient\(90deg\,color-mix\(in_srgb\,var\(--color-status-pass\)_18\%\,var\(--color-surface\)\)\,var\(--color-header-wash\)_65\%\,var\(--color-surface\)\)\]{background-image:linear-gradient(90deg,#ceede4,var(--color-header-wash) 65%,var(--color-surface))}@supports (color:color-mix(in lab, red, red)){.bg-\[linear-gradient\(90deg\,color-mix\(in_srgb\,var\(--color-status-pass\)_18\%\,var\(--color-surface\)\)\,var\(--color-header-wash\)_65\%\,var\(--color-surface\)\)\]{background-image:linear-gradient(90deg,color-mix(in srgb,var(--color-status-pass) 18%,var(--color-surface)),var(--color-header-wash) 65%,var(--color-surface))}}.object-contain{object-fit:contain}.object-cover{object-fit:cover}.\[padding\:0_10px\]{padding:0 10px}.p-0{padding:0}.p-0\.5{padding:calc(var(--spacing) * .5)}.p-1{padding:var(--spacing)}.p-1\.5{padding:calc(var(--spacing) * 1.5)}.p-2{padding:calc(var(--spacing) * 2)}.p-2\.5{padding:calc(var(--spacing) * 2.5)}.p-3{padding:calc(var(--spacing) * 3)}.p-4{padding:calc(var(--spacing) * 4)}.p-10{padding:calc(var(--spacing) * 10)}.px-0\.5{padding-inline:calc(var(--spacing) * .5)}.px-1{padding-inline:var(--spacing)}.px-1\.5{padding-inline:calc(var(--spacing) * 1.5)}.px-2{padding-inline:calc(var(--spacing) * 2)}.px-2\.5{padding-inline:calc(var(--spacing) * 2.5)}.px-3{padding-inline:calc(var(--spacing) * 3)}.px-4{padding-inline:calc(var(--spacing) * 4)}.py-0\.5{padding-block:calc(var(--spacing) * .5)}.py-1{padding-block:var(--spacing)}.py-1\.5{padding-block:calc(var(--spacing) * 1.5)}.py-2{padding-block:calc(var(--spacing) * 2)}.py-3{padding-block:calc(var(--spacing) * 3)}.py-16{padding-block:calc(var(--spacing) * 16)}.py-\[0\.1rem\]{padding-block:.1rem}.py-px{padding-block:1px}.pt-1\.5{padding-top:calc(var(--spacing) * 1.5)}.pt-2{padding-top:calc(var(--spacing) * 2)}.pt-2\.5{padding-top:calc(var(--spacing) * 2.5)}.pr-2{padding-right:calc(var(--spacing) * 2)}.pr-4{padding-right:calc(var(--spacing) * 4)}.pr-7{padding-right:calc(var(--spacing) * 7)}.pr-8{padding-right:calc(var(--spacing) * 8)}.pb-0\.5{padding-bottom:calc(var(--spacing) * .5)}.pb-1{padding-bottom:var(--spacing)}.pb-2{padding-bottom:calc(var(--spacing) * 2)}.pb-3{padding-bottom:calc(var(--spacing) * 3)}.pl-1{padding-left:var(--spacing)}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.align-bottom{vertical-align:bottom}.align-middle{vertical-align:middle}.align-top{vertical-align:top}.font-mono{font-family:var(--font-mono)}.text-5xl{font-size:var(--text-5xl);line-height:var(--tw-leading,var(--text-5xl--line-height))}.text-lg{font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-xl{font-size:var(--text-xl);line-height:var(--tw-leading,var(--text-xl--line-height))}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.text-\[0\.8rem\]{font-size:.8rem}.text-\[0\.6875rem\]{font-size:.6875rem}.text-\[9px\]{font-size:9px}.text-\[10px\]{font-size:10px}.text-\[11px\]{font-size:11px}.text-\[12px\]{font-size:12px}.text-\[18px\]{font-size:18px}.leading-4{--tw-leading:calc(var(--spacing) * 4);line-height:calc(var(--spacing) * 4)}.leading-none{--tw-leading:1;line-height:1}.leading-normal{--tw-leading:var(--leading-normal);line-height:var(--leading-normal)}.leading-relaxed{--tw-leading:var(--leading-relaxed);line-height:var(--leading-relaxed)}.leading-tight{--tw-leading:var(--leading-tight);line-height:var(--leading-tight)}.font-bold{--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold)}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.font-normal{--tw-font-weight:var(--font-weight-normal);font-weight:var(--font-weight-normal)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.tracking-wide{--tw-tracking:var(--tracking-wide);letter-spacing:var(--tracking-wide)}.tracking-wider{--tw-tracking:var(--tracking-wider);letter-spacing:var(--tracking-wider)}.break-words{overflow-wrap:break-word}.break-all{word-break:break-all}.whitespace-nowrap{white-space:nowrap}.whitespace-pre-wrap{white-space:pre-wrap}.text-\[color\:var\(--color-accent-blue\)\]{color:var(--color-accent-blue)}.text-\[color\:var\(--color-accent-purple\)\]{color:var(--color-accent-purple)}.text-\[color\:var\(--color-text-secondary\,\#6c757d\)\]{color:var(--color-text-secondary,#6c757d)}.text-\[var\(--color-accent-deep\)\]{color:var(--color-accent-deep)}.text-\[var\(--color-accent-purple\)\]{color:var(--color-accent-purple)}.text-\[var\(--color-text-primary\)\]{color:var(--color-text-primary)}.text-\[var\(--color-text-secondary\)\]{color:var(--color-text-secondary)}.text-accent-blue{color:var(--color-accent-blue)}.text-accent-purple{color:var(--color-accent-purple)}.text-accent-purple-ink{color:var(--color-accent-purple-ink)}.text-accent-purple\/80{color:#8b5cf6cc}@supports (color:color-mix(in lab, red, red)){.text-accent-purple\/80{color:color-mix(in oklab, var(--color-accent-purple) 80%, transparent)}}.text-amber-400{color:var(--color-amber-400)}.text-amber-500{color:var(--color-amber-500)}.text-blue-900{color:var(--color-blue-900)}.text-green-400{color:var(--color-green-400)}.text-green-500{color:var(--color-green-500)}.text-neutral-400{color:var(--color-neutral-400)}.text-neutral-700{color:var(--color-neutral-700)}.text-red-400{color:var(--color-red-400)}.text-red-500{color:var(--color-red-500)}.text-slate-100{color:var(--color-slate-100)}.text-slate-200{color:var(--color-slate-200)}.text-slate-300{color:var(--color-slate-300)}.text-slate-400{color:var(--color-slate-400)}.text-slate-500{color:var(--color-slate-500)}.text-status-fail{color:var(--color-status-fail)}.text-status-fail-ink{color:var(--color-status-fail-ink)}.text-status-pass{color:var(--color-status-pass)}.text-status-pending{color:var(--color-status-pending)}.text-status-pending\/80{color:#f59e0bcc}@supports (color:color-mix(in lab, red, red)){.text-status-pending\/80{color:color-mix(in oklab, var(--color-status-pending) 80%, transparent)}}.text-surface{color:var(--color-surface)}.text-text-muted{color:var(--color-text-muted)}.text-text-muted\/60{color:#adb5bd99}@supports (color:color-mix(in lab, red, red)){.text-text-muted\/60{color:color-mix(in oklab, var(--color-text-muted) 60%, transparent)}}.text-text-primary{color:var(--color-text-primary)}.text-text-secondary{color:var(--color-text-secondary)}.text-white{color:var(--color-white)}.text-zinc-500{color:var(--color-zinc-500)}.text-zinc-600{color:var(--color-zinc-600)}.text-zinc-800{color:var(--color-zinc-800)}.text-zinc-900{color:var(--color-zinc-900)}.lowercase{text-transform:lowercase}.uppercase{text-transform:uppercase}.italic{font-style:italic}.ordinal{--tw-ordinal:ordinal;font-variant-numeric:var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,)}.tabular-nums{--tw-numeric-spacing:tabular-nums;font-variant-numeric:var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,)}.line-through{text-decoration-line:line-through}.underline{text-decoration-line:underline}.decoration-surface-border{-webkit-text-decoration-color:var(--color-surface-border);-webkit-text-decoration-color:var(--color-surface-border);-webkit-text-decoration-color:var(--color-surface-border);text-decoration-color:var(--color-surface-border)}.underline-offset-2{text-underline-offset:2px}.accent-\[var\(--color-accent-purple\)\]{accent-color:var(--color-accent-purple)}.opacity-0{opacity:0}.opacity-60{opacity:.6}.opacity-70{opacity:.7}.opacity-80{opacity:.8}.shadow{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-2xl{--tw-shadow:0 25px 50px -12px var(--tw-shadow-color,#00000040);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-lg{--tw-shadow:0 10px 15px -3px var(--tw-shadow-color,#0000001a), 0 4px 6px -4px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-md{--tw-shadow:0 4px 6px -1px var(--tw-shadow-color,#0000001a), 0 2px 4px -2px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-sm{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-xl{--tw-shadow:0 20px 25px -5px var(--tw-shadow-color,#0000001a), 0 8px 10px -6px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.ring,.ring-1{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.ring-accent-purple-ink\/30{--tw-ring-color:#2e10654d}@supports (color:color-mix(in lab, red, red)){.ring-accent-purple-ink\/30{--tw-ring-color:color-mix(in oklab, var(--color-accent-purple-ink) 30%, transparent)}}.ring-danger-wash-border{--tw-ring-color:var(--color-danger-wash-border)}.ring-status-fail\/30{--tw-ring-color:#ef44444d}@supports (color:color-mix(in lab, red, red)){.ring-status-fail\/30{--tw-ring-color:color-mix(in oklab, var(--color-status-fail) 30%, transparent)}}.ring-status-pending\/30{--tw-ring-color:#f59e0b4d}@supports (color:color-mix(in lab, red, red)){.ring-status-pending\/30{--tw-ring-color:color-mix(in oklab, var(--color-status-pending) 30%, transparent)}}.ring-surface-border{--tw-ring-color:var(--color-surface-border)}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.blur{--tw-blur:blur(8px);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.grayscale{--tw-grayscale:grayscale(100%);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.backdrop-blur{--tw-backdrop-blur:blur(8px);-webkit-backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\[background-color\,transform\]{transition-property:background-color,transform;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\[width\]{transition-property:width;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-opacity{transition-property:opacity;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-transform{transition-property:transform,translate,scale,rotate;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.duration-100{--tw-duration:.1s;transition-duration:.1s}.duration-200{--tw-duration:.2s;transition-duration:.2s}.duration-300{--tw-duration:.3s;transition-duration:.3s}.ease-in-out{--tw-ease:var(--ease-in-out);transition-timing-function:var(--ease-in-out)}.ease-linear{--tw-ease:linear;transition-timing-function:linear}.outline-none{--tw-outline-style:none;outline-style:none}.select-all{-webkit-user-select:all;user-select:all}.select-none{-webkit-user-select:none;user-select:none}@media (hover:hover){.group-hover\:opacity-100:is(:where(.group):hover *){opacity:1}.group-hover\/bubble\:text-\[var\(--color-accent-deep\)\]:is(:where(.group\/bubble):hover *){color:var(--color-accent-deep)}.group-hover\/bubble\:opacity-100:is(:where(.group\/bubble):hover *),.group-hover\/code\:opacity-100:is(:where(.group\/code):hover *),.group-hover\/diagram\:opacity-100:is(:where(.group\/diagram):hover *),.group-hover\/featurespec\:opacity-100:is(:where(.group\/featurespec):hover *),.group-hover\/markdown\:opacity-100:is(:where(.group\/markdown):hover *){opacity:1}.group-hover\/new\:block:is(:where(.group\/new):hover *){display:block}.group-hover\/new\:hidden:is(:where(.group\/new):hover *){display:none}.group-hover\/reasoning\:opacity-100:is(:where(.group\/reasoning):hover *),.group-hover\/tab\:opacity-100:is(:where(.group\/tab):hover *),.group-hover\/table\:opacity-100:is(:where(.group\/table):hover *),.group-hover\/terminal\:opacity-100:is(:where(.group\/terminal):hover *){opacity:1}}.placeholder\:text-text-muted::placeholder{color:var(--color-text-muted)}.last\:border-b-0:last-child{border-bottom-style:var(--tw-border-style);border-bottom-width:0}@media (hover:hover){.hover\:scale-105:hover{--tw-scale-x:105%;--tw-scale-y:105%;--tw-scale-z:105%;scale:var(--tw-scale-x) var(--tw-scale-y)}.hover\:border-surface-border:hover{border-color:var(--color-surface-border)}.hover\:bg-\[color-mix\(in_srgb\,var\(--color-accent-emerald-deep\)_85\%\,black\)\]:hover{background-color:#126d34}@supports (color:color-mix(in lab, red, red)){.hover\:bg-\[color-mix\(in_srgb\,var\(--color-accent-emerald-deep\)_85\%\,black\)\]:hover{background-color:color-mix(in srgb,var(--color-accent-emerald-deep) 85%,black)}}.hover\:bg-\[var\(--color-accent-deep\)\]\/20:hover{background-color:#7c3aed33}@supports (color:color-mix(in lab, red, red)){.hover\:bg-\[var\(--color-accent-deep\)\]\/20:hover{background-color:color-mix(in oklab, var(--color-accent-deep) 20%, transparent)}}.hover\:bg-accent-blue:hover{background-color:var(--color-accent-blue)}.hover\:bg-accent-blue\/20:hover{background-color:#3b82f633}@supports (color:color-mix(in lab, red, red)){.hover\:bg-accent-blue\/20:hover{background-color:color-mix(in oklab, var(--color-accent-blue) 20%, transparent)}}.hover\:bg-accent-purple\/5:hover{background-color:#8b5cf60d}@supports (color:color-mix(in lab, red, red)){.hover\:bg-accent-purple\/5:hover{background-color:color-mix(in oklab, var(--color-accent-purple) 5%, transparent)}}.hover\:bg-danger-wash-border:hover{background-color:var(--color-danger-wash-border)}.hover\:bg-red-500:hover{background-color:var(--color-red-500)}.hover\:bg-slate-600:hover{background-color:var(--color-slate-600)}.hover\:bg-slate-700:hover{background-color:var(--color-slate-700)}.hover\:bg-slate-800:hover{background-color:var(--color-slate-800)}.hover\:bg-status-fail:hover{background-color:var(--color-status-fail)}.hover\:bg-status-pass:hover{background-color:var(--color-status-pass)}.hover\:bg-status-pending\/20:hover{background-color:#f59e0b33}@supports (color:color-mix(in lab, red, red)){.hover\:bg-status-pending\/20:hover{background-color:color-mix(in oklab, var(--color-status-pending) 20%, transparent)}}.hover\:bg-surface:hover{background-color:var(--color-surface)}.hover\:bg-surface-alt:hover{background-color:var(--color-surface-alt)}.hover\:bg-surface-border\/20:hover{background-color:#dee2e633}@supports (color:color-mix(in lab, red, red)){.hover\:bg-surface-border\/20:hover{background-color:color-mix(in oklab, var(--color-surface-border) 20%, transparent)}}.hover\:bg-surface-hover:hover{background-color:var(--color-surface-hover)}.hover\:bg-zinc-100:hover{background-color:var(--color-zinc-100)}.hover\:bg-zinc-200:hover{background-color:var(--color-zinc-200)}.hover\:text-\[color\:var\(--color-text-primary\,\#212529\)\]:hover{color:var(--color-text-primary,#212529)}.hover\:text-accent-purple:hover{color:var(--color-accent-purple)}.hover\:text-slate-200:hover{color:var(--color-slate-200)}.hover\:text-status-pending:hover{color:var(--color-status-pending)}.hover\:text-text-muted:hover{color:var(--color-text-muted)}.hover\:text-text-primary:hover{color:var(--color-text-primary)}.hover\:text-text-secondary:hover{color:var(--color-text-secondary)}.hover\:opacity-80:hover{opacity:.8}.hover\:ring-accent-purple\/40:hover{--tw-ring-color:#8b5cf666}@supports (color:color-mix(in lab, red, red)){.hover\:ring-accent-purple\/40:hover{--tw-ring-color:color-mix(in oklab, var(--color-accent-purple) 40%, transparent)}}@media (hover:hover){.hover\:group-hover\/bubble\:text-\[var\(--color-accent-deep\)\]:hover:is(:where(.group\/bubble):hover *){color:var(--color-accent-deep)}}}.focus\:border-text-muted:focus{border-color:var(--color-text-muted)}.focus\:ring-2:focus{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.focus\:ring-text-muted:focus{--tw-ring-color:var(--color-text-muted)}.focus\:outline-none:focus{--tw-outline-style:none;outline-style:none}.focus-visible\:opacity-100:focus-visible{opacity:1}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:bg-surface:disabled{background-color:var(--color-surface)}.disabled\:bg-surface-alt:disabled{background-color:var(--color-surface-alt)}.disabled\:text-text-muted:disabled{color:var(--color-text-muted)}.disabled\:opacity-30:disabled{opacity:.3}.disabled\:opacity-40:disabled{opacity:.4}.disabled\:opacity-50:disabled{opacity:.5}@media (hover:hover){.disabled\:hover\:bg-surface-alt:disabled:hover{background-color:var(--color-surface-alt)}.disabled\:hover\:bg-transparent:disabled:hover{background-color:#0000}}@media (prefers-color-scheme:dark){.dark\:border-white\/15{border-color:#ffffff26}@supports (color:color-mix(in lab, red, red)){.dark\:border-white\/15{border-color:color-mix(in oklab, var(--color-white) 15%, transparent)}}.dark\:border-white\/20{border-color:#fff3}@supports (color:color-mix(in lab, red, red)){.dark\:border-white\/20{border-color:color-mix(in oklab, var(--color-white) 20%, transparent)}}.dark\:bg-neutral-700{background-color:var(--color-neutral-700)}.dark\:bg-neutral-800{background-color:var(--color-neutral-800)}.dark\:bg-neutral-900\/95{background-color:#171717f2}@supports (color:color-mix(in lab, red, red)){.dark\:bg-neutral-900\/95{background-color:color-mix(in oklab, var(--color-neutral-900) 95%, transparent)}}.dark\:text-neutral-200{color:var(--color-neutral-200)}}@media (pointer:coarse){.pointer-coarse\:opacity-100{opacity:1}}}pre code.hljs{padding:1em;display:block;overflow-x:auto}code.hljs{padding:3px 5px}.hljs{color:#24292e;background:#fff}.hljs-doctag,.hljs-keyword,.hljs-meta .hljs-keyword,.hljs-template-tag,.hljs-template-variable,.hljs-type,.hljs-variable.language_{color:#d73a49}.hljs-title,.hljs-title.class_,.hljs-title.class_.inherited__,.hljs-title.function_{color:#6f42c1}.hljs-attr,.hljs-attribute,.hljs-literal,.hljs-meta,.hljs-number,.hljs-operator,.hljs-variable,.hljs-selector-attr,.hljs-selector-class,.hljs-selector-id{color:#005cc5}.hljs-regexp,.hljs-string,.hljs-meta .hljs-string{color:#032f62}.hljs-built_in,.hljs-symbol{color:#e36209}.hljs-comment,.hljs-code,.hljs-formula{color:#6a737d}.hljs-name,.hljs-quote,.hljs-selector-tag,.hljs-selector-pseudo{color:#22863a}.hljs-subst{color:#24292e}.hljs-section{color:#005cc5;font-weight:700}.hljs-bullet{color:#735c0f}.hljs-emphasis{color:#24292e;font-style:italic}.hljs-strong{color:#24292e;font-weight:700}.hljs-addition{color:#22863a;background-color:#f0fff4}.hljs-deletion{color:#b31d28;background-color:#ffeef0}[data-theme=dark]{--color-surface:#16181d;--color-surface-alt:#1d2026;--color-surface-hover:#262a32;--color-surface-border:#333842;--color-surface-elevated:#21252c;--color-text-primary:#e9ecef;--color-text-secondary:#9aa3ad;--color-text-muted:#757e89;--color-accent-blue:#60a5fa;--color-accent-purple:#a78bfa;--color-accent-purple-soft:#4c1d95;--color-accent-purple-ink:#ede9fe;--color-accent-emerald:#34d399;--color-accent-emerald-deep:#15803d;--color-accent-amber:#fbbf24;--color-accent-rose:#fb7185;--color-accent-cyan:#22d3ee;--color-accent-pink:#f48bb4;--color-accent-pink-strong:#f7a8c4;--color-status-pass:#34d399;--color-status-fail:#f87171;--color-status-pending:#fbbf24;--color-status-fail-ink:#450a0a;--color-tree-repo:#ff7a4d;--color-tree-child:#f0a05c;--color-tree-amber:#ffc95c;--color-accent-deep:#a78bfa;--color-success-ink:#4ade80;--color-success-soft:#34d399;--color-green-verify:#4ade80;--color-accent-orange:#fb923c;--color-accent-amber-ink:#fbbf24;--color-accent-amber-ink-deep:#fcd34d;--color-danger-madrid:#ff6b6b;--color-danger-github:#ff8181;--color-danger-editor-surface:#3b1218;--color-danger-editor-ink:#ffb4bb;--color-doc-child:#ff9b9b;--color-navy-focus:#93c5fd;--color-header-wash:#2b2620;--color-slate-neutral:#9aa3ad;--color-danger-wash:#2a1215;--color-danger-wash-border:#45161c;--color-danger-wash-ink:#ffb4bb;--color-ws-violet:#c084fc;--color-ws-green:#4ade80;--color-ws-blue:#6cb8ff;--color-subagent-tint-1:#2e2c25;--color-subagent-tint-2:#35332a;--color-subagent-tint-3:#3c3a2f;--si-run:#f87171}[data-theme=dark] pre code.hljs{padding:1em;display:block;overflow-x:auto}[data-theme=dark] code.hljs{padding:3px 5px}[data-theme=dark] .hljs{color:#c9d1d9;background:#0d1117}[data-theme=dark] .hljs-doctag,[data-theme=dark] .hljs-keyword,[data-theme=dark] .hljs-meta .hljs-keyword,[data-theme=dark] .hljs-template-tag,[data-theme=dark] .hljs-template-variable,[data-theme=dark] .hljs-type,[data-theme=dark] .hljs-variable.language_{color:#ff7b72}[data-theme=dark] .hljs-title,[data-theme=dark] .hljs-title.class_,[data-theme=dark] .hljs-title.class_.inherited__,[data-theme=dark] .hljs-title.function_{color:#d2a8ff}[data-theme=dark] .hljs-attr,[data-theme=dark] .hljs-attribute,[data-theme=dark] .hljs-literal,[data-theme=dark] .hljs-meta,[data-theme=dark] .hljs-number,[data-theme=dark] .hljs-operator,[data-theme=dark] .hljs-variable,[data-theme=dark] .hljs-selector-attr,[data-theme=dark] .hljs-selector-class,[data-theme=dark] .hljs-selector-id{color:#79c0ff}[data-theme=dark] .hljs-regexp,[data-theme=dark] .hljs-string,[data-theme=dark] .hljs-meta .hljs-string{color:#a5d6ff}[data-theme=dark] .hljs-built_in,[data-theme=dark] .hljs-symbol{color:#ffa657}[data-theme=dark] .hljs-comment,[data-theme=dark] .hljs-code,[data-theme=dark] .hljs-formula{color:#8b949e}[data-theme=dark] .hljs-name,[data-theme=dark] .hljs-quote,[data-theme=dark] .hljs-selector-tag,[data-theme=dark] .hljs-selector-pseudo{color:#7ee787}[data-theme=dark] .hljs-subst{color:#c9d1d9}[data-theme=dark] .hljs-section{color:#1f6feb;font-weight:700}[data-theme=dark] .hljs-bullet{color:#f2cc60}[data-theme=dark] .hljs-emphasis{color:#c9d1d9;font-style:italic}[data-theme=dark] .hljs-strong{color:#c9d1d9;font-weight:700}[data-theme=dark] .hljs-addition{color:#aff5b4;background-color:#033a16}[data-theme=dark] .hljs-deletion{color:#ffdcd7;background-color:#67060c}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:var(--color-surface)}::-webkit-scrollbar-thumb{background:var(--color-surface-border);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--color-text-muted)}.scrollbar-none{-ms-overflow-style:none;scrollbar-width:none}.scrollbar-none::-webkit-scrollbar{display:none}body{background-color:var(--color-surface);color:var(--color-text-primary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}.md-content{overflow-wrap:break-word;word-break:break-word;min-width:0;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}.md-content table{border-collapse:collapse;white-space:normal;background:#8b5cf60a;border:1px solid #8b5cf633;border-radius:.5em;width:100%;margin:.5em 0;display:block;overflow:auto hidden}.md-content table th,.md-content table td{white-space:normal;word-break:normal;overflow-wrap:break-word}.md-content p{margin-top:.5em;margin-bottom:.25em}.md-content ul{margin:.2em 0;padding-left:1.5em;list-style-type:disc}.md-content ol{margin:.2em 0;padding-left:1.5em;list-style-type:decimal}.md-content li{display:list-item}.md-content h1,.md-content h2,.md-content h3{color:var(--color-text-primary);margin:.75em 0 .3em;font-weight:800}.md-content h1{font-size:1.25em}.md-content h2{font-size:1.1em}.md-content h3{font-size:1em}.md-content blockquote{color:var(--color-text-secondary);border-left:3px solid #8b5cf666;margin:.5em 0;padding:.3em .75em}.md-content strong{color:var(--color-text-primary);font-weight:600}.md-content em{color:var(--color-accent-deep)}.md-content hr{border:none;border-top:1px solid var(--color-surface-border);margin:.5em 0}.md-content a{color:var(--color-accent-blue);text-underline-offset:2px;text-decoration:underline}.md-content th{color:var(--color-text-primary);background:#8b5cf61f}.md-content th,.md-content td{text-align:left;border:1px solid #8b5cf626;padding:.35em .6em}.md-content tbody tr:nth-child(2n){background:#8b5cf608}.md-content tbody tr:hover{background:#8b5cf614}.md-content code:not(pre code),.md-content :not(pre)>code{color:var(--color-accent-deep);background:#8b5cf614;border-radius:.3em;padding:.15em .35em;font-family:SF Mono,Fira Code,JetBrains Mono,monospace;font-size:.8em}.md-content pre{background:var(--color-surface-alt);border:1px solid var(--color-surface-border);border-radius:.5em;max-width:100%;margin:.5em 0;padding:.5em;font-size:.8em;overflow-x:auto}.md-content pre code{color:var(--color-text-primary);font-family:SF Mono,Fira Code,JetBrains Mono,monospace}[data-testid=assistant-turn] .md-content>:last-child{margin-bottom:.25em}[data-testid=assistant-turn] .md-content>:first-child{margin-top:.5em}.md-content .mermaid-diagram{justify-content:center;margin:.5em 0;padding:.5em;display:flex;overflow-x:auto}.md-content .mermaid-diagram svg{max-width:100%;height:auto}@property --tw-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-z{syntax:"*";inherits:false;initial-value:0}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-space-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-leading{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-tracking{syntax:"*";inherits:false}@property --tw-ordinal{syntax:"*";inherits:false}@property --tw-slashed-zero{syntax:"*";inherits:false}@property --tw-numeric-figure{syntax:"*";inherits:false}@property --tw-numeric-spacing{syntax:"*";inherits:false}@property --tw-numeric-fraction{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-backdrop-blur{syntax:"*";inherits:false}@property --tw-backdrop-brightness{syntax:"*";inherits:false}@property --tw-backdrop-contrast{syntax:"*";inherits:false}@property --tw-backdrop-grayscale{syntax:"*";inherits:false}@property --tw-backdrop-hue-rotate{syntax:"*";inherits:false}@property --tw-backdrop-invert{syntax:"*";inherits:false}@property --tw-backdrop-opacity{syntax:"*";inherits:false}@property --tw-backdrop-saturate{syntax:"*";inherits:false}@property --tw-backdrop-sepia{syntax:"*";inherits:false}@property --tw-duration{syntax:"*";inherits:false}@property --tw-ease{syntax:"*";inherits:false}@property --tw-scale-x{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-y{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-z{syntax:"*";inherits:false;initial-value:1}@keyframes spin{to{transform:rotate(360deg)}}@keyframes pulse{50%{opacity:.5}}
@@ -0,0 +1 @@
1
+ import{U as e}from"../nodes/2.9BE7-E5x.js";export{e as startPanelResize};
@@ -0,0 +1,2 @@
1
+ import{J as e,K as t,Y as n,ft as r,q as i,r as a,t as o,ut as s,vt as c}from"./0Tfhif1V.js";var l=class{constructor(e,t){this.status=e,this.body=typeof t==`string`?{message:t}:t||{message:`Error: ${e}`}}toString(){return JSON.stringify(this.body)}},u=class{constructor(e,t){try{new Headers({location:t})}catch{throw Error(`Invalid redirect location ${JSON.stringify(t)}: this string contains characters that cannot be used in HTTP headers`)}this.status=e,this.location=t}},d=class extends Error{constructor(e,t,n){super(n),this.status=e,this.text=t}};new URL(`sveltekit-internal://`);function f(e,t){return e===`/`||t===`ignore`?e:t===`never`?e.endsWith(`/`)?e.slice(0,-1):e:t===`always`&&!e.endsWith(`/`)?e+`/`:e}function p(e){return e.split(`%25`).map(decodeURI).join(`%25`)}function ee(e){for(let t in e)e[t]=decodeURIComponent(e[t]);return e}function m({href:e}){return e.split(`#`)[0]}function h(e,t,n,r=!1){let i=new URL(e);Object.defineProperty(i,"searchParams",{value:new Proxy(i.searchParams,{get(e,r){if(r===`get`||r===`getAll`||r===`has`)return(t,...i)=>(n(t),e[r](t,...i));t();let i=Reflect.get(e,r);return typeof i==`function`?i.bind(e):i}}),enumerable:!0,configurable:!0});let a=[`href`,`pathname`,`search`,`toString`,`toJSON`];r&&a.push(`hash`);for(let n of a)Object.defineProperty(i,n,{get(){return t(),e[n]},enumerable:!0,configurable:!0});return i}function g(){}function _(...e){let t=5381;for(let n of e)if(typeof n==`string`){let e=n.length;for(;e;)t=t*33^n.charCodeAt(--e)}else if(ArrayBuffer.isView(n)){let e=new Uint8Array(n.buffer,n.byteOffset,n.byteLength),r=e.length;for(;r;)t=t*33^e[--r]}else throw TypeError(`value must be a string or TypedArray`);return(t>>>0).toString(36)}new TextEncoder;function te(e){let t=atob(e),n=new Uint8Array(t.length);for(let e=0;e<t.length;e++)n[e]=t.charCodeAt(e);return n}var v=window.fetch;window.fetch=(e,t)=>((e instanceof Request?e.method:t?.method||`GET`)!==`GET`&&y.delete(b(e)),v(e,t));var y=new Map;function ne(e,t){let n=b(e,t),r=document.querySelector(n);if(r?.textContent){r.remove();let{body:e,...t}=JSON.parse(r.textContent);r.getAttribute(`data-b64`)!==null&&(e=te(e));let i=r.getAttribute(`data-ttl`);return i&&y.set(n,{body:e,init:t,ttl:1e3*Number(i)}),Promise.resolve(new Response(e,t))}return window.fetch(e,t)}function re(e,t,n){if(y.size>0){let t=b(e,n),r=y.get(t);if(r){if(performance.now()<r.ttl&&[`default`,`force-cache`,`only-if-cached`,void 0].includes(n?.cache))return new Response(r.body,r.init);y.delete(t)}}return window.fetch(t,n)}function b(e,t){let n=`script[data-sveltekit-fetched][data-url=${JSON.stringify(e instanceof Request?e.url:e)}]`;if(t?.headers||t?.body){let e=[];t.headers&&e.push([...new Headers(t.headers)].join(`,`)),t.body&&(typeof t.body==`string`||ArrayBuffer.isView(t.body))&&e.push(t.body),n+=`[data-hash="${_(...e)}"]`}return n}var x=/^(\[)?(\.\.\.)?(\w+)(?:=(\w+))?(\])?$/,ie=/^\/\((?:[^)]+)\)$/;function ae(e){let t=[];return{pattern:e===`/`||ie.test(e)?/^\/$/:RegExp(`^${se(e).map(e=>{let n=/^\[\.\.\.(\w+)(?:=(\w+))?\]$/.exec(e);if(n)return t.push({name:n[1],matcher:n[2],optional:!1,rest:!0,chained:!0}),`(?:/([^]*))?`;let r=/^\[\[(\w+)(?:=(\w+))?\]\]$/.exec(e);if(r)return t.push({name:r[1],matcher:r[2],optional:!0,rest:!1,chained:!0}),`(?:/([^/]+))?`;if(!e)return;let i=e.split(/\[(.+?)\](?!\])/);return`/`+i.map((e,n)=>{if(n%2){if(e.startsWith(`x+`))return le(String.fromCharCode(parseInt(e.slice(2),16)));if(e.startsWith(`u+`))return le(String.fromCharCode(...e.slice(2).split(`-`).map(e=>parseInt(e,16))));let[,r,a,o,s]=x.exec(e);return t.push({name:o,matcher:s,optional:!!r,rest:!!a,chained:a?n===1&&i[0]===``:!1}),a?`([^]*?)`:r?`([^/]*)?`:`([^/]+?)`}return le(e)}).join(``)}).join(``)}/?$`),params:t}}function oe(e){return e!==``&&!/^\([^)]+\)$/.test(e)}function se(e){return e.slice(1).split(`/`).filter(oe)}function ce(e,t,n){let r={},i=e.slice(1),a=i.filter(e=>e!==void 0),o=0;for(let e=0;e<t.length;e+=1){let s=t[e],c=i[e-o];if(s.chained&&s.rest&&o&&(c=i.slice(e-o,e+1).filter(e=>e).join(`/`),o=0),c===void 0){if(s.rest)c=``;else continue}if(!s.matcher||n[s.matcher](c)){r[s.name]=c;let n=t[e+1],l=i[e+1];n&&!n.rest&&n.optional&&l&&s.chained&&(o=0),!n&&!l&&Object.keys(r).length===a.length&&(o=0);continue}if(s.optional&&s.chained){o++;continue}return}if(!o)return r}function le(e){return e.normalize().replace(/[[\]]/g,`\\$&`).replace(/%/g,`%25`).replace(/\//g,`%2[Ff]`).replace(/\?/g,`%3[Ff]`).replace(/#/g,`%23`).replace(/[.*+?^${}()|\\]/g,`\\$&`)}var ue=/\[(\[)?(\.\.\.)?(\w+?)(?:=(\w+))?\]\]?/g;function de(e,t){let n=se(e),r=e!=`/`&&e.endsWith(`/`);return`/`+n.map(n=>n.replace(ue,(n,r,i,a)=>{let o=t[a];if(!o){if(r||i&&o!==void 0)return``;throw Error(`Missing parameter '${a}' in route ${e}`)}if(o.startsWith(`/`)||o.endsWith(`/`))throw Error(`Parameter '${a}' in route ${e} cannot start or end with a slash -- this would cause an invalid route like foo//bar`);return o})).filter(Boolean).join(`/`)+(r?`/`:``)}function fe({nodes:e,server_loads:t,dictionary:n,matchers:r}){let i=new Set(t);return Object.entries(n).map(([t,[n,i,s]])=>{let{pattern:c,params:l}=ae(t),u={id:t,exec:e=>{let t=c.exec(e);if(t)return ce(t,l,r)},errors:[1,...s||[]].map(t=>e[t]),layouts:[0,...i||[]].map(o),leaf:a(n)};return u.errors.length=u.layouts.length=Math.max(u.errors.length,u.layouts.length),u});function a(t){let n=t<0;return n&&(t=~t),[n,e[t]]}function o(t){return t===void 0?t:[i.has(t),e[t]]}}function pe(e,t=JSON.parse){try{return t(sessionStorage[e])}catch{}}function me(e,t,n=JSON.stringify){let r=n(t);try{sessionStorage[e]=r}catch{}}var S=globalThis.__sveltekit_qsd02d?.base??``,he=globalThis.__sveltekit_qsd02d?.assets??S??``,ge=``;function _e(...e){if(!e[0].startsWith(`/`))throw Error(`Cannot use \`resolve(...)\` with a non-absolute pathname or route ID (got "${e[0]}"). \`resolve\` is only for internal pathnames and route IDs; external URLs should be used directly.`);return S+ge+de(e[0],e[1])}var ve=`1794132569908`,ye=`sveltekit:snapshot`,be=`sveltekit:scroll`,xe=`sveltekit:states`,Se=`sveltekit:pageurl`,C=`sveltekit:history`,w=`sveltekit:navigation`,T={tap:1,hover:2,viewport:3,eager:4,off:-1,false:-1},E=location.origin;function Ce(e){if(e instanceof URL)return e;let t=document.baseURI;if(!t){let e=document.getElementsByTagName(`base`);t=e.length?e[0].href:document.URL}return new URL(e,t)}function D(){return{x:pageXOffset,y:pageYOffset}}function O(e,t){return e.getAttribute(`data-sveltekit-${t}`)}var we={...T,"":T.hover};function Te(e){let t=e.assignedSlot??e.parentNode;return t?.nodeType===11&&(t=t.host),t}function Ee(e,t){for(;e&&e!==t;){if(e.nodeName.toUpperCase()===`A`&&e.hasAttribute(`href`))return e;e=Te(e)}}function De(e,t,n){let r;try{if(r=new URL(e instanceof SVGAElement?e.href.baseVal:e.href,document.baseURI),n&&r.hash.match(/^#[^/]/)){let e=location.hash.split(`#`)[1]||`/`;r.hash=`#${e}${r.hash}`}}catch{}let i=e instanceof SVGAElement?e.target.baseVal:e.target,a=!r||!!i||A(r,t,n)||(e.getAttribute(`rel`)||``).split(/\s+/).includes(`external`),o=r?.origin===E&&e.hasAttribute(`download`);return{url:r,external:a,target:i,download:o}}function k(e){let t=null,n=null,r=null,i=null,a=null,o=null,s=e;for(;s&&s!==document.documentElement;)r===null&&(r=O(s,`preload-code`)),i===null&&(i=O(s,`preload-data`)),t===null&&(t=O(s,`keepfocus`)),n===null&&(n=O(s,`noscroll`)),a===null&&(a=O(s,`reload`)),o===null&&(o=O(s,`replacestate`)),s=Te(s);function c(e){switch(e){case``:case`true`:return!0;case`off`:case`false`:return!1;default:return}}return{preload_code:we[r??`off`],preload_data:we[i??`off`],keepfocus:c(t),noscroll:c(n),reload:c(a),replace_state:c(o)}}function Oe(e){let t=c(e),n=!0;function r(){n=!0,t.update(e=>e)}function i(e){n=!1,t.set(e)}function a(e){let r;return t.subscribe(t=>{(r===void 0||n&&t!==r)&&e(r=t)})}return{notify:r,set:i,subscribe:a}}var ke={v:g};function Ae(){let{set:e,subscribe:t}=c(!1),n;async function r(){clearTimeout(n);try{let t=await fetch(`${he}/_app/version.json`,{headers:{pragma:`no-cache`,"cache-control":`no-cache`}});if(!t.ok)return!1;let r=(await t.json()).version!==ve;return r&&(e(!0),ke.v(),clearTimeout(n)),r}catch{return!1}}return{subscribe:t,check:r}}function A(e,t,n){return e.origin!==E||!e.pathname.startsWith(t)?!0:n?e.pathname!==location.pathname:!1}function je(e){}var Me=2**32-1,Ne=Me-1,Pe=Object.getOwnPropertyNames(Object.prototype).sort().join(`\0`);function Fe(e){let t=Object.getPrototypeOf(e);return t===Object.prototype||t===null||Object.getPrototypeOf(t)===null||Object.getOwnPropertyNames(t).sort().join(`\0`)===Pe}function Ie(e){return Object.prototype.toString.call(e).slice(8,-1)}function Le(e){return Object.getOwnPropertySymbols(e).filter(t=>Object.getOwnPropertyDescriptor(e,t).enumerable)}function Re(e){return!(!Number.isInteger(e)||e<0||e>Ne)}function ze(e){return!(!Number.isInteger(e)||e<0||e>Me)}function Be(e){if(e.length===0||e.length>1&&e.charCodeAt(0)===48)return!1;for(let t=0;t<e.length;t++){let n=e.charCodeAt(t);if(n<48||n>57)return!1}return Re(+e)}function Ve(e){for(var t=e.length-1;t>=0&&!Be(e[t]);t--);return t+1}function He(e){let t=Object.keys(e);return t.length=Ve(t),t}function Ue(e){return Uint8Array.fromBase64(e).buffer}function We(e){return Uint8Array.from(Buffer.from(e,`base64`)).buffer}function Ge(e){let t=atob(e),n=t.length,r=new Uint8Array(n);for(let e=0;e<n;e++)r[e]=t.charCodeAt(e);return r.buffer}var Ke=typeof Uint8Array.fromBase64==`function`,qe=typeof process==`object`&&process.versions?.node!==void 0,Je=Ke?Ue:qe?We:Ge;function Ye(e,t){if(!t)return e;let n={};for(let r of Object.keys(e))n[r]=t[r]??e[r];return n}var Xe=Object.freeze({kind:`not-plain`}),Ze=Object.freeze({kind:`symbol-keys`});Object.freeze({identify:e=>e,typeOf:e=>e===null?`null`:typeof e,toPrimitive:e=>e,tagOf:e=>Ie(e),isThenable:e=>typeof e.then==`function`,toPromise:e=>Promise.resolve(e),unbox:e=>e.valueOf(),toISOString:e=>isNaN(e.getDate())?``:e.toISOString(),toStringValue:e=>e.toString(),regExpInfo:e=>({source:e.source,flags:e.flags}),valuesOf:e=>e,entriesOf:e=>e,viewInfo:e=>({buffer:e.buffer,byteOffset:e.byteOffset,byteLength:e.byteLength,length:e.length,bufferByteLength:e.buffer.byteLength}),toArrayBuffer:e=>e,lengthOf:e=>e.length,hasOwn:(e,t)=>Object.hasOwn(e,t),indicesOf:e=>He(e),shapeOf:e=>Fe(e)?Le(e).length>0?Ze:{kind:Object.getPrototypeOf(e)===null?`null-proto`:`plain`,keys:Object.keys(e)}:Xe,get:(e,t)=>e[t]});var Qe=Object.freeze({fromPrimitive:e=>e,fromISOString:e=>new Date(e),fromStringValue:(e,t)=>e===`URL`?new URL(t):e===`URLSearchParams`?new URLSearchParams(t):Temporal[e.slice(9)].from(t),fromArrayBuffer:e=>e,fromRegExpInfo:(e,t)=>new RegExp(e,t),fromViewInfo:(e,t,n,r)=>{let i=globalThis[e];return n===void 0?new i(t):new i(t,n,r)},box:e=>Object(e),createArray:e=>Array(e),createSparseArray:e=>{let t=[];return t[Ne]=void 0,delete t[Ne],t.length=e,t},createObject:()=>({}),createNullPrototypeObject:()=>Object.create(null),createSet:()=>new Set,createMap:()=>new Map,set:(e,t,n)=>{e[t]=n},addValue:(e,t)=>{e.add(t)},addEntry:(e,t,n)=>{e.set(t,n)}});function $e(e,t,n){let r=Ye(Qe,n?.operations);if(typeof e==`number`)return s(e,!0);if(!Array.isArray(e)||e.length===0)throw Error(`Invalid input`);let i=e,a=Array(i.length),o=null;function s(e,n=!1){if(e===-1)return r.fromPrimitive(void 0);if(e===-3)return r.fromPrimitive(NaN);if(e===-4)return r.fromPrimitive(1/0);if(e===-5)return r.fromPrimitive(-1/0);if(e===-6)return r.fromPrimitive(-0);if(n||typeof e!=`number`)throw Error(`Invalid input`);if(e in a)return a[e];let c=i[e];if(!c||typeof c!=`object`)a[e]=r.fromPrimitive(c);else if(Array.isArray(c)){if(typeof c[0]==`string`){let n=c[0],l=t&&Object.hasOwn(t,n)?t[n]:void 0;if(l){let t=c[1];if(typeof t!=`number`&&(t=i.push(c[1])-1),Object.hasOwn(a,t))return a[e]=l(a[t]);if(o??=new Set,o.has(t))throw Error(`Invalid circular reference`);return o.add(t),a[e]=l(s(t)),o.delete(t),a[e]}switch(n){case`Date`:a[e]=r.fromISOString(c[1]);break;case`Set`:let t=r.createSet();a[e]=t;for(let e=1;e<c.length;e+=1)r.addValue(t,s(c[e]));break;case`Map`:let o=r.createMap();a[e]=o;for(let e=1;e<c.length;e+=2)r.addEntry(o,s(c[e]),s(c[e+1]));break;case`RegExp`:a[e]=r.fromRegExpInfo(c[1],c[2]);break;case`Object`:{let t=c[1];if(typeof i[t]==`object`&&i[t][0]!==`BigInt`)throw Error(`Invalid input`);a[e]=r.box(s(t));break}case`BigInt`:a[e]=r.fromPrimitive(BigInt(c[1]));break;case`null`:let l=r.createNullPrototypeObject();a[e]=l;for(let e=1;e<c.length;e+=2){if(c[e]===`__proto__`)throw Error("Cannot parse an object with a `__proto__` property");r.set(l,c[e],s(c[e+1]))}break;case`Int8Array`:case`Uint8Array`:case`Uint8ClampedArray`:case`Int16Array`:case`Uint16Array`:case`Float16Array`:case`Int32Array`:case`Uint32Array`:case`Float32Array`:case`Float64Array`:case`BigInt64Array`:case`BigUint64Array`:case`DataView`:{if(i[c[1]][0]!==`ArrayBuffer`)throw Error(`Invalid data`);let t=s(c[1]);a[e]=r.fromViewInfo(n,t,c[2],c[3]);break}case`ArrayBuffer`:{let t=c[1];if(typeof t!=`string`)throw Error(`Invalid ArrayBuffer encoding`);a[e]=r.fromArrayBuffer(Je(t));break}case`URL`:case`URLSearchParams`:case`Temporal.Duration`:case`Temporal.Instant`:case`Temporal.PlainDate`:case`Temporal.PlainTime`:case`Temporal.PlainDateTime`:case`Temporal.PlainMonthDay`:case`Temporal.PlainYearMonth`:case`Temporal.ZonedDateTime`:a[e]=r.fromStringValue(n,c[1]);break;default:throw Error(`Unknown type ${n}`)}}else if(c[0]===-7){let t=c[1];if(!ze(t))throw Error(`Invalid input`);let n=r.createSparseArray(t);a[e]=n;for(let e=2;e<c.length;e+=2){let i=c[e];if(!Re(i)||i>=t)throw Error(`Invalid input`);r.set(n,i,s(c[e+1]))}}else{let t=r.createArray(c.length);a[e]=t;for(let e=0;e<c.length;e+=1){let n=c[e];n!==-2&&r.set(t,e,s(n))}}}else{let t=r.createObject();a[e]=t;for(let e of Object.keys(c)){if(e===`__proto__`)throw Error("Cannot parse an object with a `__proto__` property");r.set(t,e,s(c[e]))}}return a[e]}return s(0)}var et=new Set([`load`,`prerender`,`csr`,`ssr`,`trailingSlash`,`config`]);[...et],[...new Set([...et])];function tt(e){return e.filter(e=>e!=null)}var nt=`x-sveltekit-invalidated`,rt=`x-sveltekit-trailing-slash`;function j(e,t){return e+`/`+t}function it(e){return e instanceof l||e instanceof d?e.status:500}function at(e){return e instanceof d?e.text:`Internal Error`}var M,N,ot,st=a.toString().includes(`$$`)||/function \w+\(\) \{\}/.test(a.toString()),ct=`a:`;st?(M={data:{},form:null,error:null,params:{},route:{id:null},state:{},status:-1,url:new URL(ct)},N={current:null},ot={current:!1}):(M=new class{#e=r({});get data(){return t(this.#e)}set data(e){s(this.#e,e)}#t=r(null);get form(){return t(this.#t)}set form(e){s(this.#t,e)}#n=r(null);get error(){return t(this.#n)}set error(e){s(this.#n,e)}#r=r({});get params(){return t(this.#r)}set params(e){s(this.#r,e)}#i=r({id:null});get route(){return t(this.#i)}set route(e){s(this.#i,e)}#a=r({});get state(){return t(this.#a)}set state(e){s(this.#a,e)}#o=r(-1);get status(){return t(this.#o)}set status(e){s(this.#o,e)}#s=r(new URL(ct));get url(){return t(this.#s)}set url(e){s(this.#s,e)}},N=new class{#e=r(null);get current(){return t(this.#e)}set current(e){s(this.#e,e)}},ot=new class{#e=r(!1);get current(){return t(this.#e)}set current(e){s(this.#e,e)}},ke.v=()=>ot.current=!0);function lt(e){Object.assign(M,e)}var ut=`/__data.json`,dt=`.html__data.json`;function ft(e){return e.endsWith(`.html`)?e.replace(/\.html$/,dt):e.replace(/\/$/,``)+ut}var pt={spanContext(){return mt},setAttribute(){return this},setAttributes(){return this},addEvent(){return this},setStatus(){return this},updateName(){return this},end(){return this},isRecording(){return!1},recordException(){return this},addLink(){return this},addLinks(){return this}},mt={traceId:``,spanId:``,traceFlags:0};async function*ht(e,t){let n=!1,r=``,i=new TextDecoder;for(;;){let a=r.indexOf(t);for(;a!==-1;)yield r.slice(0,a),r=r.slice(a+t.length),a=r.indexOf(t);if(n){r&&(yield r);return}let o=await e.read();n=o.done,o.value&&(r+=i.decode(o.value,{stream:!0})),n&&(r+=i.decode())}}async function*gt(e){for await(let t of ht(e,`
2
+ `)){let e=t.trim();e&&(yield JSON.parse(e))}}var{onMount:_t,tick:vt}=o,yt=n??(e=>e()),bt=new Set([`icon`,`shortcut icon`,`apple-touch-icon`]),P=null,F=pe(`sveltekit:scroll`)??{},I=pe(`sveltekit:snapshot`)??{},L={url:Oe({}),page:Oe({}),navigating:c(null),updated:Ae()};function xt(e){F[e]=D()}function St(e,t){let n=e+1;for(;F[n];)delete F[n],n+=1;for(n=t+1;I[n];)delete I[n],n+=1}function R(e,t=!1){return t?location.replace(e.href):location.href=e.href,new Promise(g)}async function Ct(){if(`serviceWorker`in navigator){let e=await navigator.serviceWorker.getRegistration(S||`/`);e&&await e.update()}}var wt,Tt,Et,z,Dt,B,Ot={},kt={},At=[],jt=[],V=null;function Mt(){V?.fork?.then(e=>e?.discard()),V=null,Q={element:void 0,href:void 0}}var Nt=new Map,Pt=new Set,Ft=new Set,H=new Set,U={branch:[],error:null,url:null,nav:null},It=!1,Lt=!1,Rt=!0,W=!1,G=!1,zt=!1,Bt=!1,Vt,K,q,J,Y=new Set,Ht=new Map,Ut=new Map;async function Wt(e,t,n){if(globalThis.__sveltekit_qsd02d.data){let{q:e={},p:t={},l:n={},f:r={}}=globalThis.__sveltekit_qsd02d.data;for(let t in e)Ot[t]=e[t];for(let e in n)Ot[e]=n[e];for(let e in r)Ot[e]=r[e];for(let e in t)kt[e]=t[e]}document.URL!==location.href&&(location.href=location.href),B=e,await e.hooks.init?.(),wt=fe(e),z=document.documentElement,Dt=t,Tt=e.nodes[0],Et=e.nodes[1],Tt(),Et(),K=history.state?.[C],q=history.state?.[w],K||(K=q=Date.now(),history.replaceState({...history.state,[C]:K,[w]:q},``));let r=F[K];function i(){r&&(history.scrollRestoration=`manual`,scrollTo(r.x,r.y))}n?(i(),await xn(Dt,n)):(await Z({type:`enter`,url:Ce(B.hash?kn(new URL(location.href)):location.href),replace_state:!0}),i()),bn()}function Gt(){At.length=0,Bt=!1}function Kt(e){jt.some(e=>e?.snapshot)&&(I[e]=jt.map(e=>e?.snapshot?.capture()))}function qt(e){I[e]?.forEach((e,t)=>{jt[t]?.snapshot?.restore(e)})}function Jt(){xt(K),me(be,F),Kt(q),me(ye,I)}async function Yt(t,n,r,i){let a,o;n.invalidateAll&&Mt(),await Z({type:`goto`,url:Ce(t),keepfocus:n.keepFocus,noscroll:n.noScroll,replace_state:n.replaceState,state:n.state,redirect_count:r,nav_token:i,accept:()=>{if(n.invalidateAll){Bt=!0,a=new Set;for(let[e,t]of Ht)for(let[n,r]of t)r.resource?.reset(),a.add(j(e,n));o=new Set;for(let[e,t]of Ut)for(let n of t.keys())o.add(j(e,n))}n.invalidate&&n.invalidate.forEach(vn)}}),n.invalidateAll&&e().then(e).then(()=>{for(let[e,t]of Ht)for(let[n,{resource:r}]of t)a?.has(j(e,n))&&r.start();for(let[e,t]of Ut)for(let[n,{resource:r}]of t)o?.has(j(e,n))&&r.reconnect()})}async function Xt(e){if(e.id!==V?.id){Mt();let t={};Y.add(t),V={id:e.id,token:t,promise:sn({...e,preload:t}).then(e=>(Y.delete(t),e.type===`loaded`&&e.state.error&&Mt(),e)),fork:null}}return V.promise}async function Zt(e){let t=(await X(e,!1))?.route;t&&await Promise.all([...t.layouts,t.leaf].filter(Boolean).map(e=>e[1]()))}async function Qt(e,t,n){let r={params:U.params,route:{id:U.route?.id??null},url:new URL(location.href)};if(U={...e.state,nav:r},lt(e.props.page),Vt=new B.root({target:t,props:{...e.props,stores:L,components:jt},hydrate:n,sync:!1,transformError:void 0}),await Promise.resolve(),n){let e={from:null,to:{...r,scroll:F[K]??D()},willUnload:!1,type:`enter`,complete:Promise.resolve()};H.forEach(t=>t(e))}qt(q),Lt=!0}async function $t({url:e,params:t,branch:n,errors:r,status:i,error:a,route:o,form:s}){let c=`never`;if(S&&(e.pathname===S||e.pathname===S+`/`))c=`always`;else for(let e of n)e?.slash!==void 0&&(c=e.slash);e.pathname=f(e.pathname,c),e.search=e.search;let l={type:`loaded`,state:{url:e,params:t,branch:n,error:a,route:o},props:{constructors:tt(n).map(e=>e.node.component),page:On(M)}};s!==void 0&&(l.props.form=s);let u={},d=!M,p=0;for(let e=0;e<Math.max(n.length,U.branch.length);e+=1){let t=n[e],r=U.branch[e];t?.data!==r?.data&&(d=!0),t&&(u={...u,...t.data},d&&(l.props[`data_${p}`]=u),p+=1)}return(!U.url||e.href!==U.url.href||U.error!==a||s!==void 0&&s!==M.form||d)&&(l.props.page={error:a,params:t,route:{id:o?.id??null},state:{},status:i,url:new URL(e),form:s??null,data:d?u:M.data}),l}async function en({loader:e,parent:t,url:n,params:r,route:i,server_data_node:a}){let o=null,s=!0,c={dependencies:new Set,params:new Set,parent:!1,route:!1,url:!1,search_params:new Set},l=await e();if(l.universal?.load){function e(...e){for(let t of e){let{href:e}=new URL(t,n);c.dependencies.add(e)}}let u={tracing:{enabled:!1,root:pt,current:pt},route:new Proxy(i,{get:(e,t)=>(s&&(c.route=!0),e[t])}),params:new Proxy(r,{get:(e,t)=>(s&&c.params.add(t),e[t])}),data:a?.data??null,url:h(n,()=>{s&&(c.url=!0)},e=>{s&&c.search_params.add(e)},B.hash),async fetch(t,r){t instanceof Request&&(r={body:t.method===`GET`||t.method===`HEAD`?void 0:await t.blob(),cache:t.cache,credentials:t.credentials,headers:[...t.headers].length>0?t?.headers:void 0,integrity:t.integrity,keepalive:t.keepalive,method:t.method,mode:t.mode,redirect:t.redirect,referrer:t.referrer,referrerPolicy:t.referrerPolicy,signal:t.signal,...r});let{resolved:i,promise:a}=tn(t,r,n);return s&&e(i.href),a},setHeaders:g,depends:e,parent(){return s&&(c.parent=!0),t()},untrack(e){s=!1;try{return e()}finally{s=!0}}};o=await l.universal.load.call(null,u)??null}return{node:l,loader:e,server:a,universal:l.universal?.load?{type:`data`,data:o,uses:c}:null,data:o??a?.data??null,slash:l.universal?.trailingSlash??a?.slash}}function tn(e,t,n){let r=e instanceof Request?e.url:e,i=new URL(r,n);return i.origin===n.origin&&(r=i.href.slice(n.origin.length)),{resolved:i,promise:Lt?re(r,i.href,t):ne(r,t)}}function nn(e,t,n,r,i,a){if(Bt)return!0;if(!i)return!1;if(i.parent&&e||i.route&&t||i.url&&n)return!0;for(let e of i.search_params)if(r.has(e))return!0;for(let e of i.params)if(a[e]!==U.params[e])return!0;for(let e of i.dependencies)if(At.some(t=>t(new URL(e))))return!0;return!1}function rn(e,t){return e?.type===`data`?e:e?.type===`skip`?t??null:null}function an(e,t){if(!e)return new Set(t.searchParams.keys());let n=new Set([...e.searchParams.keys(),...t.searchParams.keys()]);for(let r of n){let i=e.searchParams.getAll(r),a=t.searchParams.getAll(r);i.every(e=>a.includes(e))&&a.every(e=>i.includes(e))&&n.delete(r)}return n}function on({error:e,url:t,route:n,params:r}){return{type:`loaded`,state:{error:e,url:t,route:n,params:r,branch:[]},props:{page:On(M),constructors:[]}}}async function sn({id:e,invalidating:t,url:n,params:r,route:i,preload:a}){if(V?.id===e)return Y.delete(V.token),V.promise;let{errors:o,layouts:s,leaf:c}=i,d=[...s,c];o.forEach(e=>e?.().catch(g)),d.forEach(e=>e?.[1]().catch(g));let f=null,p=U.url?e!==fn(U.url):!1,ee=U.route?i.id!==U.route.id:!1,m=an(U.url,n),h=!1;{let t=d.map((e,t)=>{let n=U.branch[t],i=!!e?.[0]&&(n?.loader!==e[1]||nn(h,ee,p,m,n.server?.uses,r));return i&&(h=!0),i});if(t.some(Boolean)){try{f=await Sn(n,t)}catch(t){let o=await $(t,{url:n,params:r,route:{id:e}});return a&&Y.has(a)?on({error:o,url:n,params:r,route:i}):ln({status:it(t),error:o,url:n,route:i})}if(f.type===`redirect`)return f}}let _=f?.nodes,te=!1,v=d.map(async(e,t)=>{if(!e)return;let a=U.branch[t],o=_?.[t];if((!o||o.type===`skip`)&&e[1]===a?.loader&&!nn(te,ee,p,m,a.universal?.uses,r))return a;if(te=!0,o?.type===`error`)throw o;return en({loader:e[1],url:n,params:r,route:i,parent:async()=>{let e={};for(let n=0;n<t;n+=1)Object.assign(e,(await v[n])?.data);return e},server_data_node:rn(o===void 0&&e[0]?{type:`skip`}:o??null,e[0]?a?.server:void 0)})});for(let e of v)e.catch(g);let y=[];for(let e=0;e<d.length;e+=1)if(d[e])try{y.push(await v[e])}catch(t){if(t instanceof u)return{type:`redirect`,location:t.location};if(a&&Y.has(a))return on({error:await $(t,{params:r,url:n,route:{id:i.id}}),url:n,params:r,route:i});let s=it(t),c;if(_?.includes(t))s=t.status??s,c=t.error;else if(t instanceof l)c=t.body;else{if(await L.updated.check())return await Ct(),await R(n);c=await $(t,{params:r,url:n,route:{id:i.id}})}let d=await cn(e,y,o);return d?$t({url:n,params:r,branch:y.slice(0,d.idx).concat(d.node),errors:o,status:s,error:c,route:i}):await mn(n,{id:i.id},c,s)}else y.push(void 0);return $t({url:n,params:r,branch:y,errors:o,status:200,error:null,route:i,form:t?void 0:null})}async function cn(e,t,n){for(;e--;)if(n[e]){let r=e;for(;!t[r];)--r;try{return{idx:r+1,node:{node:await n[e](),loader:n[e],data:{},server:null,universal:null}}}catch{continue}}}async function ln({status:e,error:t,url:n,route:r}){let i={},a=null;if(B.server_loads[0]===0)try{let e=await Sn(n,[!0]);if(e.type!==`data`||e.nodes[0]&&e.nodes[0].type!==`data`)throw 0;a=e.nodes[0]??null}catch(e){if(!(e instanceof l&&e.status===404)&&(n.origin!==E||n.pathname!==location.pathname||It))return await R(n)}try{return $t({url:n,params:i,branch:[await en({loader:Tt,url:n,params:i,route:r,parent:()=>Promise.resolve({}),server_data_node:rn(a)}),{node:await Et(),loader:Et,universal:null,server:null,data:null}],status:e,error:t,errors:[],route:null})}catch(t){if(t instanceof u){await Yt(new URL(t.location,location.href),{},0);return}let a=await B.get_error_template(),o=await $(t,{url:n,params:i,route:r}),s=a({status:e,message:String(o?.message??``).replace(/&/g,`&amp;`).replace(/</g,`&lt;`).replace(/>/g,`&gt;`)}),c=new DOMParser().parseFromString(s,`text/html`);throw document.documentElement.replaceChild(document.adoptNode(c.head),document.head),document.documentElement.replaceChild(document.adoptNode(c.body),document.body),t}}async function un(e){let t=e.href;if(Nt.has(t))return Nt.get(t);let n;try{let r=(async()=>{let t=await B.hooks.reroute({url:new URL(e),fetch:async(t,n)=>tn(t,n,e).promise})??e;if(typeof t==`string`){let n=new URL(e);B.hash?n.hash=t:n.pathname=t,t=n}return t})();Nt.set(t,r),n=await r}catch{Nt.delete(t);return}return n}async function X(e,t){if(e&&!A(e,S,B.hash)){let n=await un(e);if(!n)return;let r=dn(n);for(let n of wt){let i=n.exec(r);if(i)return{id:fn(e),invalidating:t,route:n,params:ee(i),url:e}}}}function dn(e){return p(B.hash?e.hash.replace(/^#/,``).replace(/[?#].+/,``):e.pathname.slice(S.length))||`/`}function fn(e){return(B.hash?e.hash.replace(/^#/,``):e.pathname)+e.search}function pn({url:e,type:t,intent:n,delta:r,event:i,scroll:a}){let o=!1,s=Dn(U,n,e,t,a??null);r!==void 0&&(s.navigation.delta=r),i!==void 0&&(s.navigation.event=i);let c={...s.navigation,cancel:()=>{o=!0,s.reject(Error(`navigation cancelled`))}};return W||Pt.forEach(e=>e(c)),o?null:s}async function Z({type:t,url:n,popped:r,keepfocus:a,noscroll:o,replace_state:s,state:c={},redirect_count:l=0,nav_token:u={},accept:f=g,block:p=g,event:ee}){let m=J;J=u;let h=await X(n,!1),_=t===`enter`?Dn(U,h,n,t):pn({url:n,type:t,delta:r?.delta,intent:h,scroll:r?.scroll,event:ee});if(!_){p(),J===u&&(J=m);return}let te=K,v=q;f(),W=!0,Lt&&_.navigation.type!==`enter`&&L.navigating.set(N.current=_.navigation);let y=h&&await sn(h);if(!y){if(A(n,S,B.hash))return await R(n,s);y=await mn(n,{id:null},await $(new d(404,`Not Found`,`Not found: ${n.pathname}`),{url:n,params:{},route:{id:null}}),404,s)}if(n=h?.url||n,J!==u){_.reject(Error(`navigation aborted`));return}if(!y)return;if(y.type===`redirect`){if(l<20){await Z({type:t,url:new URL(y.location,n),popped:r,keepfocus:a,noscroll:o,replace_state:s,state:c,redirect_count:l+1,nav_token:u}),_.fulfil(void 0);return}if(y=await ln({status:500,error:await $(Error(`Redirect loop`),{url:n,params:{},route:{id:null}}),url:n,route:{id:null}}),!y)return}else if(y.props.page.status>=400&&await L.updated.check())return await Ct(),await R(n,s);if(Gt(),xt(te),Kt(v),y.props.page.url.pathname!==n.pathname&&(n.pathname=y.props.page.url.pathname),c=r?r.state:c,!r){let e=+!s,t={[C]:K+=e,[w]:q+=e,[xe]:c};(s?history.replaceState:history.pushState).call(history,t,``,n),s||St(K,q)}let ne=h&&V?.id===h.id?V.fork:null;V?.fork&&!ne?Mt():(V=null,Q={element:void 0,href:void 0}),y.props.page.state=c;let re;if(Lt){let e=(await Promise.all(Array.from(Ft,e=>e(_.navigation)))).filter(e=>typeof e==`function`);if(e.length>0){function t(){e.forEach(e=>{H.delete(e)})}e.push(t),e.forEach(e=>{H.add(e)})}let t=_.navigation.to;U={...y.state,nav:{params:t.params,route:t.route,url:t.url}},y.props.page&&(y.props.page.url=n),!a&&document.activeElement instanceof HTMLElement&&document.activeElement!==document.body&&document.activeElement.blur();let r=ne&&await ne;r?re=r.commit():(P=null,Vt.$set(y.props),P&&Object.assign(y.props.page,P),lt(y.props.page),re=i?.()),zt=!0}else await Qt(y,Dt,!1);let{activeElement:b}=document;if(await re,await e(),await e(),J!==u){_.reject(Error(`navigation aborted`));return}y.props.page&&P&&Object.assign(y.props.page,P);let x=null;if(Rt){let e=r?r.scroll:o?D():null;e?scrollTo(e.x,e.y):(x=n.hash&&document.getElementById(An(n)))?x.scrollIntoView():scrollTo(0,0)}let ie=document.activeElement!==b&&document.activeElement!==document.body;!a&&!ie&&En(n,!x),Rt=!0,W=!1,_.fulfil(void 0),_.navigation.to&&(_.navigation.to.scroll=D()),H.forEach(e=>e(_.navigation)),t===`popstate`&&qt(q),L.navigating.set(N.current=null)}async function mn(e,t,n,r,i){return e.origin===E&&e.pathname===location.pathname&&!It?await ln({status:r,error:n,url:e,route:t}):await R(e,i)}var Q={element:void 0,href:void 0};function hn(){let e,t;z.addEventListener(`mousemove`,t=>{let n=t.target;clearTimeout(e),e=setTimeout(()=>{i(n,T.hover)},20)});function n(e){e.defaultPrevented||i(e.composedPath()[0],T.tap)}z.addEventListener(`mousedown`,n),z.addEventListener(`touchstart`,n,{passive:!0});let r=new IntersectionObserver(e=>{for(let t of e)t.isIntersecting&&(Zt(new URL(t.target.href)),r.unobserve(t.target))},{threshold:0});async function i(e,n){let r=Ee(e,z),i=r===Q.element&&r?.href===Q.href&&n>=t;if(!r||i)return;let{url:a,external:o,download:s}=De(r,S,B.hash);if(o||s)return;let c=k(r),l=a&&fn(U.url)===fn(a);if(!(c.reload||l)){if(n<=c.preload_data){Q={element:r,href:r.href},t=T.tap;let e=await X(a,!1);if(!e)return;Xt(e)}else n<=c.preload_code&&(Q={element:r,href:r.href},t=n,Zt(a))}}function a(){r.disconnect();for(let e of z.querySelectorAll(`a`)){let{url:t,external:n,download:i}=De(e,S,B.hash);if(n||i)continue;let a=k(e);a.reload||(a.preload_code===T.viewport&&r.observe(e),a.preload_code===T.eager&&Zt(t))}}H.add(a),a()}function $(e,t){if(e instanceof l)return e.body;let n=it(e),r=at(e);return B.hooks.handleError({error:e,event:t,status:n,message:r})??{message:r}}function gn(e,t){_t(()=>(e.add(t),()=>{e.delete(t)}))}function _n(e){gn(H,e)}function vn(e){if(typeof e==`function`)At.push(e);else{let{href:t}=new URL(e,location.href);At.push(e=>e.href===t)}}function yn(e,t){let n={[C]:K,[w]:q,[Se]:M.url.href,[xe]:t};history.replaceState(n,``,Ce(e)),M.state=t,Vt.$set({page:yt(()=>On(M))})}function bn(){history.scrollRestoration=`manual`,addEventListener(`beforeunload`,e=>{let t=!1;if(Jt(),!W){let e=Dn(U,void 0,null,`leave`),n={...e.navigation,cancel:()=>{t=!0,e.reject(Error(`navigation cancelled`))}};Pt.forEach(e=>e(n))}t?(e.preventDefault(),e.returnValue=``):history.scrollRestoration=`auto`}),addEventListener(`visibilitychange`,()=>{document.visibilityState===`hidden`&&Jt()}),navigator.connection?.saveData||hn(),z.addEventListener(`click`,async t=>{if(t.button||t.which!==1||t.metaKey||t.ctrlKey||t.shiftKey||t.altKey||t.defaultPrevented)return;let n=Ee(t.composedPath()[0],z);if(!n)return;let{url:r,external:i,target:a,download:o}=De(n,S,B.hash);if(!r)return;if(a===`_parent`||a===`_top`){if(window.parent!==window)return}else if(a&&a!==`_self`)return;let s=k(n);if(!(n instanceof SVGAElement)&&r.protocol!==location.protocol&&r.protocol!==`https:`&&r.protocol!==`http:`||o)return;let[c,l]=(B.hash?r.hash.replace(/^#/,``):r.href).split(`#`),u=c===m(location);if(i||s.reload&&(!u||!l)){pn({url:r,type:`link`,event:t})?W=!0:t.preventDefault();return}if(l!==void 0&&u){let[,i]=U.url.href.split(`#`);if(i===l){if(t.preventDefault(),l===``||l===`top`&&n.ownerDocument.getElementById(`top`)===null)scrollTo({top:0});else{let e=n.ownerDocument.getElementById(decodeURIComponent(l));e&&(e.scrollIntoView(),e.focus())}return}if(G=!0,xt(K),e(r),!s.replace_state)return;G=!1}t.preventDefault(),await new Promise(e=>{requestAnimationFrame(()=>{setTimeout(e,0)}),setTimeout(e,100)}),await Z({type:`link`,url:r,keepfocus:s.keepfocus,noscroll:s.noscroll,replace_state:s.replace_state??r.href===location.href,event:t})}),z.addEventListener(`submit`,e=>{if(e.defaultPrevented)return;let t=HTMLFormElement.prototype.cloneNode.call(e.target),n=e.submitter;if((n?.formTarget||t.target)===`_blank`||(n?.formMethod||t.method)!==`get`)return;let r=new URL(n?.hasAttribute(`formaction`)&&n?.formAction||t.action);if(A(r,S,!1))return;let i=e.target,a=k(i);if(a.reload)return;e.preventDefault(),e.stopPropagation();let o=new FormData(i,n);r.search=new URLSearchParams(o).toString(),Z({type:`form`,url:r,keepfocus:a.keepfocus,noscroll:a.noscroll,replace_state:a.replace_state??r.href===location.href,event:e})}),addEventListener(`popstate`,async t=>{if(!Tn){if(t.state?.[`sveltekit:history`]){let n=t.state[C];if(J={},n===K)return;let r=F[n],i=t.state[`sveltekit:states`]??{},a=new URL(t.state[`sveltekit:pageurl`]??location.href),o=t.state[w],s=U.url?m(location)===m(U.url):!1;if(o===q&&(zt||s)){i!==M.state&&(M.state=i),e(a),F[K]=D(),r&&scrollTo(r.x,r.y),K=n;return}let c=n-K;await Z({type:`popstate`,url:a,popped:{state:i,scroll:r,delta:c},accept:()=>{K=n,q=o},block:()=>{history.go(-c)},nav_token:J,event:t})}else G||(e(new URL(location.href)),B.hash&&location.reload())}}),addEventListener(`hashchange`,()=>{G&&(G=!1,history.replaceState({...history.state,[C]:++K,[w]:q},``,location.href))});for(let e of document.querySelectorAll(`link`))bt.has(e.rel)&&(e.href=e.href);addEventListener(`pageshow`,e=>{e.persisted&&L.navigating.set(N.current=null)});function e(e){U.url=M.url=e,L.page.set(On(M)),L.page.notify()}}async function xn(e,{status:t=200,error:n,node_ids:r,params:i,route:a,server_route:o,data:s,form:c}){It=!0;let l=new URL(location.href),d;({params:i={},route:a={id:null}}=await X(l,!1)||{}),d=wt.find(({id:e})=>e===a.id);let f,p=!0;try{let e=r.map(async(t,n)=>{let r=s[n];return r?.uses&&(r.uses=wn(r.uses)),en({loader:B.nodes[t],url:l,params:i,route:a,parent:async()=>{let t={};for(let r=0;r<n;r+=1)Object.assign(t,(await e[r]).data);return t},server_data_node:rn(r)})}),o=await Promise.all(e);if(d){let e=d.layouts;for(let t=0;t<e.length;t++)e[t]||o.splice(t,0,void 0)}f=await $t({url:l,params:i,branch:o,status:t,error:n,errors:d?.errors,form:c,route:d??null})}catch(t){if(t instanceof u)return await R(new URL(t.location,location.href));f=await ln({status:it(t),error:await $(t,{url:l,params:i,route:a}),url:l,route:a}),e.textContent=``,p=!1}f&&(f.props.page&&(f.props.page.state={}),await Qt(f,e,p))}async function Sn(e,t){let n=new URL(e);n.pathname=ft(e.pathname),e.pathname.endsWith(`/`)&&n.searchParams.append(rt,`1`),n.searchParams.append(nt,t.map(e=>e?`1`:`0`).join(``));let r=await(0,window.fetch)(n.href,{});if(!r.ok){let e;throw r.headers.get(`content-type`)?.includes(`application/json`)?e=await r.json():r.status===404?e=`Not Found`:r.status===500&&(e=`Internal Error`),new l(r.status,e)}return new Promise((e,t)=>{Cn(e,r).catch(t)})}async function Cn(e,t){let n=t.body.getReader(),r=new Map;function i(e){return $e(e,{...B.decoders,Promise:e=>new Promise((t,n)=>{r.set(e,{fulfil:t,reject:n})})})}for await(let t of gt(n)){if(t.type===`redirect`)return e(t);if(t.type===`data`)t.nodes?.forEach(e=>{e?.type===`data`&&(e.uses=wn(e.uses),e.data=i(e.data))}),e(t);else if(t.type===`chunk`){let{id:e,data:n,error:a}=t,o=r.get(e);r.delete(e),a?o.reject(i(a)):o.fulfil(i(n))}}}function wn(e){return{dependencies:new Set(e?.dependencies??[]),params:new Set(e?.params??[]),parent:!!e?.parent,route:!!e?.route,url:!!e?.url,search_params:new Set(e?.search_params??[])}}var Tn=!1;function En(e,t=!0){let n=document.querySelector(`[autofocus]`);if(n)n.focus();else{let n=An(e);if(n&&document.getElementById(n)){let{x:r,y:i}=D();setTimeout(()=>{let a=history.state;Tn=!0,location.replace(new URL(`#${n}`,location.href)),history.replaceState(a,``,e),t&&scrollTo(r,i),Tn=!1})}else{let e=document.body,t=e.getAttribute(`tabindex`);e.tabIndex=-1,e.focus({preventScroll:!0,focusVisible:!1}),t===null?e.removeAttribute(`tabindex`):e.setAttribute(`tabindex`,t)}let r=getSelection();if(r&&r.type!==`None`){let e=[];for(let t=0;t<r.rangeCount;t+=1)e.push(r.getRangeAt(t));setTimeout(()=>{if(r.rangeCount===e.length){for(let t=0;t<r.rangeCount;t+=1){let n=e[t],i=r.getRangeAt(t);if(n.commonAncestorContainer!==i.commonAncestorContainer||n.startContainer!==i.startContainer||n.endContainer!==i.endContainer||n.startOffset!==i.startOffset||n.endOffset!==i.endOffset)return}r.removeAllRanges()}})}}}function Dn(e,t,n,r,i=null){let a,o,s=new Promise((e,t)=>{a=e,o=t});return s.catch(g),{navigation:{from:{params:e.params,route:{id:e.route?.id??null},url:e.url,scroll:D()},to:n&&{params:t?.params??null,route:{id:t?.route?.id??null},url:n,scroll:i},willUnload:!t,type:r,complete:s},fulfil:a,reject:o}}function On(e){return{data:e.data,error:e.error,form:e.form,params:e.params,route:e.route,state:e.state,status:e.status,url:e.url}}function kn(e){let t=new URL(e);return t.hash=decodeURIComponent(e.hash),t}function An(e){let t;if(B.hash){let[,,n]=e.hash.split(`#`,3);t=n??``}else t=e.hash.slice(1);return decodeURIComponent(t)}export{M as a,N as i,yn as n,je as o,Wt as r,_e as s,_n as t};
@@ -0,0 +1 @@
1
+ import{r as e}from"../nodes/2.9BE7-E5x.js";export{e as stringify};
@@ -1 +1 @@
1
- import{Tt as e,ct as t}from"./0Tfhif1V.js";import{a as n}from"./D17XAauH.js";import{m as r}from"./D9jhmf3I.js";var i={},a=[`en`,`zh`,`id`,`es`],o=`dsi.locale`,s=3456e4,c=[`cookie`,`preferredLanguage`,`baseLocale`],l=[],u=typeof window>`u`;globalThis.__paraglide=globalThis.__paraglide??{},globalThis.__paraglide.ssr=globalThis.__paraglide.ssr??{};var d=!1,f=()=>{let e=c;!u&&typeof window<`u`&&window.location?.href&&(e=P(window.location.href));let t=p(e,typeof window<`u`?window.location?.href:void 0);if(t)return d||(d=!0,h(t,{reload:!1})),t;throw Error(`No locale found. Read the docs https://paraglidejs.com/errors#no-locale-found`)};function p(e,t){let n;for(let t of e){if(t===`cookie`)n=D();else if(t===`baseLocale`)n=`en`;else if(t===`preferredLanguage`&&!u)n=O();else if(I(t)&&F.has(t)){let e=F.get(t);if(e){let t=e.getLocale();if(t instanceof Promise)continue;if(t!==void 0)return v(t)}}let e=_(n);if(e)return e}}var m=e=>{e?window.location.href=e:window.location.reload()},h=(e,t)=>{let n={reload:!0,...t},r;try{r=f()}catch{}let i=[],a=c;!u&&typeof window<`u`&&window.location?.href&&(a=P(window.location.href));for(let t of a)if(t===`cookie`){if(u||typeof document>`u`||typeof window>`u`)continue;let t=`${o}=${e}; path=/; max-age=${s}`;document.cookie=t,T()}else if(t===`baseLocale`)continue;else if(I(t)&&F.has(t)){let n=F.get(t);if(n){let r=n.setLocale(e);r instanceof Promise&&(r=r.catch(e=>{throw Error(`Custom strategy "${t}" setLocale failed.`,{cause:e})}),i.push(r))}}let l=()=>{!u&&n.reload&&window.location&&e!==r&&m(void 0)};if(i.length)return Promise.all(i).then(()=>{l()});l()},g=()=>typeof window<`u`?window.location.origin:`http://fallback.com`;function _(e){if(typeof e!=`string`)return;let t=e.toLowerCase();for(let e of a)if(e.toLowerCase()===t)return e}function v(e){let t=_(e);if(t)return t;throw Error(`Invalid locale: ${e}. Expected one of: ${a.join(`, `)}`)}function y(e){return e}function b(e,t){return e.exec(t.href)}var x=o.replace(/[.*+?^${}()|[\]\\]/g,`\\$&`),S=RegExp(`(?:^|;\\s*)${x}=([^;]*)`),C=Symbol(),w=C;function T(){w=C}function E(){typeof queueMicrotask==`function`?queueMicrotask(T):Promise.resolve().then(T)}function D(){if(typeof document>`u`)return;if(w!==C)return w;let e=document.cookie.match(S)?.[1];return w=_(e),E(),w}function O(){if(!navigator?.languages?.length)return;let e=navigator.languages.map(e=>({fullTag:e,baseTag:e.split(`-`)[0]}));for(let t of e){let e=_(t.fullTag);if(e)return e;let n=_(t.baseTag);if(n)return n}}function k(e){return A(e)}function A(e){let t=y(typeof e==`string`?new URL(e,g()):new URL(e)),n=t.pathname.split(`/`).filter(Boolean);return n.length>0&&_(n[0])&&(t.pathname=`/`+n.slice(1).join(`/`)),y(t)}var j,M;function N(e){if(l.length===0)return;let t=typeof e==`string`?e:e.href;if(j===t)return M;let n=y(new URL(t,`http://example.com`)),r=k(n),a=r.href===n.href?[n]:[n,r],o;for(let e of a){for(let t of l)if(b(new i(t.match,e.href),e)){o=t;break}if(o)break}return j=t,M=o,o}function P(e){let t=N(e);return t&&t.exclude!==!0&&Array.isArray(t.strategy)?t.strategy:c}var F=new Map;function I(e){return typeof e==`string`&&/^custom-[A-Za-z0-9_-]+$/.test(e)}var L=t({locale:`en`});function R(){let t=e(L).locale;try{let e=f();if(r.includes(e))return e}catch{}return r.includes(t)?t:`en`}async function z(e){if(r.includes(e)){await h(e,{reload:!1});try{localStorage.setItem(`dsi.locale`,e)}catch{}L.locale=e}}function B(t){e(L).locale;try{let e=f();if(r.includes(e))return t()}catch{}return t()}var V=()=>`← Back to the workspace`,H=()=>`← 返回工作区`,U=()=>`← Kembali ke workspace`,W=()=>`← Volver al workspace`,ee=((e={},t={})=>{let n=t.locale??f();return n===`zh`?H(e):n===`id`?U(e):n===`es`?W(e):V(e)}),G=()=>`DSH host unreachable`,K=()=>`DSH 主机不可达`,q=()=>`Host DSH tidak dapat dijangkau`,J=()=>`Host DSH inalcanzable`,Y=((e={},t={})=>{let n=t.locale??f();return n===`zh`?K(e):n===`id`?q(e):n===`es`?J(e):G(e)}),X=()=>`It may have been reaped, or the link predates this host's ledger.`,Z=()=>`它可能已被回收,或链接早于此主机的账本。`,Q=()=>`Mungkin sudah dihapus, atau tautannya lebih tua dari ledger host ini.`,$=()=>`Puede haber sido recolectada, o el enlace es anterior al libro mayor de este host.`,te=((e={},t={})=>{let n=t.locale??f();return n===`zh`?Z(e):n===`id`?Q(e):n===`es`?$(e):X(e)}),ne=()=>`Session not found`,re=()=>`会话未找到`,ie=()=>`Sesi tidak ditemukan`,ae=()=>`Sesión no encontrada`,oe=((e={},t={})=>{let n=t.locale??f();return n===`zh`?re(e):n===`id`?ie(e):n===`es`?ae(e):ne(e)}),se=()=>`Unexpected error`,ce=()=>`意外错误`,le=()=>`Kesalahan tak terduga`,ue=()=>`Error inesperado`,de=((e={},t={})=>{let n=t.locale??f();return n===`zh`?ce(e):n===`id`?le(e):n===`es`?ue(e):se(e)}),fe={get data(){return n.data},get error(){return n.error},get form(){return n.form},get params(){return n.params},get route(){return n.route},get state(){return n.state},get status(){return n.status},get url(){return n.url}};export{Y as a,z as c,te as i,B as l,de as n,ee as o,oe as r,R as s,fe as t,f as u};
1
+ import{Tt as e,ct as t}from"./0Tfhif1V.js";import{a as n}from"./UPlr67N1.js";import{m as r}from"./D9jhmf3I.js";var i={},a=[`en`,`zh`,`id`,`es`],o=`dsi.locale`,s=3456e4,c=[`cookie`,`preferredLanguage`,`baseLocale`],l=[],u=typeof window>`u`;globalThis.__paraglide=globalThis.__paraglide??{},globalThis.__paraglide.ssr=globalThis.__paraglide.ssr??{};var d=!1,f=()=>{let e=c;!u&&typeof window<`u`&&window.location?.href&&(e=P(window.location.href));let t=p(e,typeof window<`u`?window.location?.href:void 0);if(t)return d||(d=!0,h(t,{reload:!1})),t;throw Error(`No locale found. Read the docs https://paraglidejs.com/errors#no-locale-found`)};function p(e,t){let n;for(let t of e){if(t===`cookie`)n=D();else if(t===`baseLocale`)n=`en`;else if(t===`preferredLanguage`&&!u)n=O();else if(I(t)&&F.has(t)){let e=F.get(t);if(e){let t=e.getLocale();if(t instanceof Promise)continue;if(t!==void 0)return v(t)}}let e=_(n);if(e)return e}}var m=e=>{e?window.location.href=e:window.location.reload()},h=(e,t)=>{let n={reload:!0,...t},r;try{r=f()}catch{}let i=[],a=c;!u&&typeof window<`u`&&window.location?.href&&(a=P(window.location.href));for(let t of a)if(t===`cookie`){if(u||typeof document>`u`||typeof window>`u`)continue;let t=`${o}=${e}; path=/; max-age=${s}`;document.cookie=t,T()}else if(t===`baseLocale`)continue;else if(I(t)&&F.has(t)){let n=F.get(t);if(n){let r=n.setLocale(e);r instanceof Promise&&(r=r.catch(e=>{throw Error(`Custom strategy "${t}" setLocale failed.`,{cause:e})}),i.push(r))}}let l=()=>{!u&&n.reload&&window.location&&e!==r&&m(void 0)};if(i.length)return Promise.all(i).then(()=>{l()});l()},g=()=>typeof window<`u`?window.location.origin:`http://fallback.com`;function _(e){if(typeof e!=`string`)return;let t=e.toLowerCase();for(let e of a)if(e.toLowerCase()===t)return e}function v(e){let t=_(e);if(t)return t;throw Error(`Invalid locale: ${e}. Expected one of: ${a.join(`, `)}`)}function y(e){return e}function b(e,t){return e.exec(t.href)}var x=o.replace(/[.*+?^${}()|[\]\\]/g,`\\$&`),S=RegExp(`(?:^|;\\s*)${x}=([^;]*)`),C=Symbol(),w=C;function T(){w=C}function E(){typeof queueMicrotask==`function`?queueMicrotask(T):Promise.resolve().then(T)}function D(){if(typeof document>`u`)return;if(w!==C)return w;let e=document.cookie.match(S)?.[1];return w=_(e),E(),w}function O(){if(!navigator?.languages?.length)return;let e=navigator.languages.map(e=>({fullTag:e,baseTag:e.split(`-`)[0]}));for(let t of e){let e=_(t.fullTag);if(e)return e;let n=_(t.baseTag);if(n)return n}}function k(e){return A(e)}function A(e){let t=y(typeof e==`string`?new URL(e,g()):new URL(e)),n=t.pathname.split(`/`).filter(Boolean);return n.length>0&&_(n[0])&&(t.pathname=`/`+n.slice(1).join(`/`)),y(t)}var j,M;function N(e){if(l.length===0)return;let t=typeof e==`string`?e:e.href;if(j===t)return M;let n=y(new URL(t,`http://example.com`)),r=k(n),a=r.href===n.href?[n]:[n,r],o;for(let e of a){for(let t of l)if(b(new i(t.match,e.href),e)){o=t;break}if(o)break}return j=t,M=o,o}function P(e){let t=N(e);return t&&t.exclude!==!0&&Array.isArray(t.strategy)?t.strategy:c}var F=new Map;function I(e){return typeof e==`string`&&/^custom-[A-Za-z0-9_-]+$/.test(e)}var L=t({locale:`en`});function R(){let t=e(L).locale;try{let e=f();if(r.includes(e))return e}catch{}return r.includes(t)?t:`en`}async function z(e){if(r.includes(e)){await h(e,{reload:!1});try{localStorage.setItem(`dsi.locale`,e)}catch{}L.locale=e}}function B(t){e(L).locale;try{let e=f();if(r.includes(e))return t()}catch{}return t()}var V=()=>`← Back to the workspace`,H=()=>`← 返回工作区`,U=()=>`← Kembali ke workspace`,W=()=>`← Volver al workspace`,ee=((e={},t={})=>{let n=t.locale??f();return n===`zh`?H(e):n===`id`?U(e):n===`es`?W(e):V(e)}),G=()=>`DSH host unreachable`,K=()=>`DSH 主机不可达`,q=()=>`Host DSH tidak dapat dijangkau`,J=()=>`Host DSH inalcanzable`,Y=((e={},t={})=>{let n=t.locale??f();return n===`zh`?K(e):n===`id`?q(e):n===`es`?J(e):G(e)}),X=()=>`It may have been reaped, or the link predates this host's ledger.`,Z=()=>`它可能已被回收,或链接早于此主机的账本。`,Q=()=>`Mungkin sudah dihapus, atau tautannya lebih tua dari ledger host ini.`,$=()=>`Puede haber sido recolectada, o el enlace es anterior al libro mayor de este host.`,te=((e={},t={})=>{let n=t.locale??f();return n===`zh`?Z(e):n===`id`?Q(e):n===`es`?$(e):X(e)}),ne=()=>`Session not found`,re=()=>`会话未找到`,ie=()=>`Sesi tidak ditemukan`,ae=()=>`Sesión no encontrada`,oe=((e={},t={})=>{let n=t.locale??f();return n===`zh`?re(e):n===`id`?ie(e):n===`es`?ae(e):ne(e)}),se=()=>`Unexpected error`,ce=()=>`意外错误`,le=()=>`Kesalahan tak terduga`,ue=()=>`Error inesperado`,de=((e={},t={})=>{let n=t.locale??f();return n===`zh`?ce(e):n===`id`?le(e):n===`es`?ue(e):se(e)}),fe={get data(){return n.data},get error(){return n.error},get form(){return n.form},get params(){return n.params},get route(){return n.route},get state(){return n.state},get status(){return n.status},get url(){return n.url}};export{Y as a,z as c,te as i,B as l,de as n,ee as o,oe as r,R as s,fe as t,f as u};
@@ -1,2 +1,2 @@
1
- const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["../nodes/0.CYP0vr1_.js","../chunks/0Tfhif1V.js","../chunks/xihTtKlq.js","../chunks/CTWtsoJD.js","../chunks/D9jhmf3I.js","../assets/0.B2rul4Mk.css","../nodes/1.CSTMQTZ7.js","../chunks/BodLd2is.js","../chunks/D17XAauH.js","../nodes/2.CdbJFHUF.js","../chunks/HclGiUj8.js","../assets/2.glyfXGzi.css"])))=>i.map(i=>d[i]);
2
- import{E as e,I as t,J as n,K as r,L as i,M as a,Ot as o,P as s,R as c,V as l,a as u,at as d,bt as f,et as p,ft as m,i as h,l as g,mt as _,nt as v,ot as y,r as b,st as x,tt as S,ut as C,xt as w}from"../chunks/0Tfhif1V.js";import{t as T}from"../chunks/HclGiUj8.js";import"../chunks/xihTtKlq.js";var E={},D=c(`<div data-svelte="root" id="svelte-announcer" aria-live="assertive" aria-atomic="true" style="position: absolute; left: 0; top: 0; clip: rect(0 0 0 0); clip-path: inset(50%); overflow: hidden; white-space: nowrap; width: 1px; height: 1px"><!></div>`),O=c(`<!> <!>`,1);function k(c,h){w(h,!0);let T=u(h,`components`,23,()=>[]),E=u(h,`data_0`,3,null),k=u(h,`data_1`,3,null);v(()=>h.stores.page.set(h.page)),S(()=>{h.stores,h.page,h.constructors,T(),h.form,E(),k(),h.stores.page.notify()});let A=m(!1),j=m(!1),M=m(null);b(()=>{let e=h.stores.page.subscribe(()=>{r(A)&&(C(j,!0),n().then(()=>{C(M,document.title||`untitled page`,!0)}))});return C(A,!0),e});let N=_(()=>h.constructors[1]);var P=O(),F=y(P),I=n=>{let a=_(()=>h.constructors[0]);var o=i(),s=y(o);e(s,()=>r(a),(n,a)=>{g(a(n,{get data(){return E()},get form(){return h.form},get params(){return h.page.params},children:(n,a)=>{var o=i(),s=y(o);e(s,()=>r(N),(e,t)=>{g(t(e,{get data(){return k()},get form(){return h.form},get params(){return h.page.params}}),e=>T()[1]=e,()=>T()?.[1])}),t(n,o)},$$slots:{default:!0}}),e=>T()[0]=e,()=>T()?.[0])}),t(n,o)},L=n=>{let a=_(()=>h.constructors[0]);var o=i(),s=y(o);e(s,()=>r(a),(e,t)=>{g(t(e,{get data(){return E()},get form(){return h.form},get params(){return h.page.params}}),e=>T()[0]=e,()=>T()?.[0])}),t(n,o)};a(F,e=>{h.constructors[1]?e(I):e(L,-1)});var R=x(F,2),z=e=>{var n=D(),i=d(n),c=e=>{var n=l();p(()=>s(n,r(M))),t(e,n)};a(i,e=>{r(j)&&e(c)}),o(n),t(e,n)};a(R,e=>{r(A)&&e(z)}),t(c,P),f()}var A=h(k),j=[()=>T(()=>import(`../nodes/0.CYP0vr1_.js`),__vite__mapDeps([0,1,2,3,4,5]),import.meta.url),()=>T(()=>import(`../nodes/1.CSTMQTZ7.js`),__vite__mapDeps([6,1,2,7,8,4]),import.meta.url),()=>T(()=>import(`../nodes/2.CdbJFHUF.js`),__vite__mapDeps([9,1,8,10,2,4,3,7,11]),import.meta.url)],M=[],N={"/":[-3]},P={handleError:(({error:e})=>{console.error(e)}),reroute:(()=>{}),transport:{}},F=Object.fromEntries(Object.entries(P.transport).map(([e,t])=>[e,t.decode])),I=Object.fromEntries(Object.entries(P.transport).map(([e,t])=>[e,t.encode])),L=!1,R=(e,t)=>F[e](t),z=()=>T(()=>import(`../chunks/Bjy-W4x2.js`).then(e=>e.default),[],import.meta.url);export{R as decode,F as decoders,N as dictionary,I as encoders,z as get_error_template,L as hash,P as hooks,E as matchers,j as nodes,A as root,M as server_loads};
1
+ const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["../nodes/0.DopnsZUT.js","../chunks/0Tfhif1V.js","../chunks/xihTtKlq.js","../chunks/CTWtsoJD.js","../chunks/D9jhmf3I.js","../assets/0.Bjw4vcZl.css","../nodes/1.CGppLUrN.js","../chunks/e-3PBXxJ.js","../chunks/UPlr67N1.js","../nodes/2.9BE7-E5x.js","../chunks/HclGiUj8.js","../assets/2.glyfXGzi.css"])))=>i.map(i=>d[i]);
2
+ import{E as e,I as t,J as n,K as r,L as i,M as a,Ot as o,P as s,R as c,V as l,a as u,at as d,bt as f,et as p,ft as m,i as h,l as g,mt as _,nt as v,ot as y,r as b,st as x,tt as S,ut as C,xt as w}from"../chunks/0Tfhif1V.js";import{t as T}from"../chunks/HclGiUj8.js";import"../chunks/xihTtKlq.js";var E={},D=c(`<div data-svelte="root" id="svelte-announcer" aria-live="assertive" aria-atomic="true" style="position: absolute; left: 0; top: 0; clip: rect(0 0 0 0); clip-path: inset(50%); overflow: hidden; white-space: nowrap; width: 1px; height: 1px"><!></div>`),O=c(`<!> <!>`,1);function k(c,h){w(h,!0);let T=u(h,`components`,23,()=>[]),E=u(h,`data_0`,3,null),k=u(h,`data_1`,3,null);v(()=>h.stores.page.set(h.page)),S(()=>{h.stores,h.page,h.constructors,T(),h.form,E(),k(),h.stores.page.notify()});let A=m(!1),j=m(!1),M=m(null);b(()=>{let e=h.stores.page.subscribe(()=>{r(A)&&(C(j,!0),n().then(()=>{C(M,document.title||`untitled page`,!0)}))});return C(A,!0),e});let N=_(()=>h.constructors[1]);var P=O(),F=y(P),I=n=>{let a=_(()=>h.constructors[0]);var o=i(),s=y(o);e(s,()=>r(a),(n,a)=>{g(a(n,{get data(){return E()},get form(){return h.form},get params(){return h.page.params},children:(n,a)=>{var o=i(),s=y(o);e(s,()=>r(N),(e,t)=>{g(t(e,{get data(){return k()},get form(){return h.form},get params(){return h.page.params}}),e=>T()[1]=e,()=>T()?.[1])}),t(n,o)},$$slots:{default:!0}}),e=>T()[0]=e,()=>T()?.[0])}),t(n,o)},L=n=>{let a=_(()=>h.constructors[0]);var o=i(),s=y(o);e(s,()=>r(a),(e,t)=>{g(t(e,{get data(){return E()},get form(){return h.form},get params(){return h.page.params}}),e=>T()[0]=e,()=>T()?.[0])}),t(n,o)};a(F,e=>{h.constructors[1]?e(I):e(L,-1)});var R=x(F,2),z=e=>{var n=D(),i=d(n),c=e=>{var n=l();p(()=>s(n,r(M))),t(e,n)};a(i,e=>{r(j)&&e(c)}),o(n),t(e,n)};a(R,e=>{r(A)&&e(z)}),t(c,P),f()}var A=h(k),j=[()=>T(()=>import(`../nodes/0.DopnsZUT.js`),__vite__mapDeps([0,1,2,3,4,5]),import.meta.url),()=>T(()=>import(`../nodes/1.CGppLUrN.js`),__vite__mapDeps([6,1,2,7,8,4]),import.meta.url),()=>T(()=>import(`../nodes/2.9BE7-E5x.js`),__vite__mapDeps([9,1,8,10,2,4,3,7,11]),import.meta.url)],M=[],N={"/":[-3]},P={handleError:(({error:e})=>{console.error(e)}),reroute:(()=>{}),transport:{}},F=Object.fromEntries(Object.entries(P.transport).map(([e,t])=>[e,t.decode])),I=Object.fromEntries(Object.entries(P.transport).map(([e,t])=>[e,t.encode])),L=!1,R=(e,t)=>F[e](t),z=()=>T(()=>import(`../chunks/Bjy-W4x2.js`).then(e=>e.default),[],import.meta.url);export{R as decode,F as decoders,N as dictionary,I as encoders,z as get_error_template,L as hash,P as hooks,E as matchers,j as nodes,A as root,M as server_loads};
@@ -0,0 +1 @@
1
+ import{o as e,r as t}from"../chunks/UPlr67N1.js";export{e as load_css,t as start};
@@ -1 +1 @@
1
- import{I as e,K as t,M as n,Ot as r,P as i,R as a,Z as o,at as s,bt as c,et as l,mt as u,ot as d,rt as f,st as p,w as m,xt as h}from"../chunks/0Tfhif1V.js";import"../chunks/xihTtKlq.js";import{a as g,i as _,l as v,n as y,o as b,r as x,t as S}from"../chunks/BodLd2is.js";var C=a(`<h1 class="text-xl font-semibold"> </h1> <p class="text-sm text-text-secondary" data-testid="error-message"> </p> <p class="text-xs text-text-muted"> </p>`,1),w=a(`<h1 class="text-xl font-semibold"> </h1> <p class="text-sm text-text-secondary" data-testid="error-message"> </p>`,1),T=a(`<main data-svelte="ErrorPage" class="mx-auto flex max-w-3xl flex-col items-center gap-4 px-4 py-16 text-center"><p class="text-5xl font-semibold text-text-muted" data-testid="error-status"> </p> <!> <a href="/" class="mt-2 rounded-md border border-surface-border px-3 py-1.5 text-sm text-text-secondary hover:bg-surface-alt" data-testid="error-back-home"> </a></main>`);function E(a,E){h(E,!0);let D=u(()=>S.status),O=u(()=>S.error?.message??`Something went wrong.`);var k=T();m(`1j96wlh`,e=>{o(()=>{f.title=`${t(D)??``} — deepseek-insight`})});var A=s(k),j=s(A,!0);r(A);var M=p(A,2),N=n=>{var a=C(),o=d(a),c=s(o,!0);r(o);var u=p(o,2),f=s(u,!0);r(u);var m=p(u,2),h=s(m,!0);r(m),l((e,n)=>{i(c,e),i(f,t(O)),i(h,n)},[()=>v(x),()=>v(_)]),e(n,a)},P=n=>{var a=w(),o=d(a),c=s(o,!0);r(o);var u=p(o,2),f=s(u,!0);r(u),l(e=>{i(c,e),i(f,t(O))},[()=>v(g)]),e(n,a)},F=n=>{var a=w(),o=d(a),c=s(o,!0);r(o);var u=p(o,2),f=s(u,!0);r(u),l(e=>{i(c,e),i(f,t(O))},[()=>v(y)]),e(n,a)};n(M,e=>{t(D)===404?e(N):t(D)===503?e(P,1):e(F,-1)});var I=p(M,2),L=s(I,!0);r(I),r(k),l(e=>{i(j,t(D)),i(L,e)},[()=>v(b)]),e(a,k),c()}export{E as component};
1
+ import{I as e,K as t,M as n,Ot as r,P as i,R as a,Z as o,at as s,bt as c,et as l,mt as u,ot as d,rt as f,st as p,w as m,xt as h}from"../chunks/0Tfhif1V.js";import"../chunks/xihTtKlq.js";import{a as g,i as _,l as v,n as y,o as b,r as x,t as S}from"../chunks/e-3PBXxJ.js";var C=a(`<h1 class="text-xl font-semibold"> </h1> <p class="text-sm text-text-secondary" data-testid="error-message"> </p> <p class="text-xs text-text-muted"> </p>`,1),w=a(`<h1 class="text-xl font-semibold"> </h1> <p class="text-sm text-text-secondary" data-testid="error-message"> </p>`,1),T=a(`<main data-svelte="ErrorPage" class="mx-auto flex max-w-3xl flex-col items-center gap-4 px-4 py-16 text-center"><p class="text-5xl font-semibold text-text-muted" data-testid="error-status"> </p> <!> <a href="/" class="mt-2 rounded-md border border-surface-border px-3 py-1.5 text-sm text-text-secondary hover:bg-surface-alt" data-testid="error-back-home"> </a></main>`);function E(a,E){h(E,!0);let D=u(()=>S.status),O=u(()=>S.error?.message??`Something went wrong.`);var k=T();m(`1j96wlh`,e=>{o(()=>{f.title=`${t(D)??``} — deepseek-insight`})});var A=s(k),j=s(A,!0);r(A);var M=p(A,2),N=n=>{var a=C(),o=d(a),c=s(o,!0);r(o);var u=p(o,2),f=s(u,!0);r(u);var m=p(u,2),h=s(m,!0);r(m),l((e,n)=>{i(c,e),i(f,t(O)),i(h,n)},[()=>v(x),()=>v(_)]),e(n,a)},P=n=>{var a=w(),o=d(a),c=s(o,!0);r(o);var u=p(o,2),f=s(u,!0);r(u),l(e=>{i(c,e),i(f,t(O))},[()=>v(g)]),e(n,a)},F=n=>{var a=w(),o=d(a),c=s(o,!0);r(o);var u=p(o,2),f=s(u,!0);r(u),l(e=>{i(c,e),i(f,t(O))},[()=>v(y)]),e(n,a)};n(M,e=>{t(D)===404?e(N):t(D)===503?e(P,1):e(F,-1)});var I=p(M,2),L=s(I,!0);r(I),r(k),l(e=>{i(j,t(D)),i(L,e)},[()=>v(b)]),e(a,k),c()}export{E as component};