@openpalm/ui 0.11.0-rc.13 → 0.11.0-rc.15
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/build/.openpalm-ui-version +1 -1
- package/build/client/_app/immutable/assets/0.DeOb0ZUu.css +1 -0
- package/build/client/_app/immutable/assets/0.DeOb0ZUu.css.br +0 -0
- package/build/client/_app/immutable/assets/0.DeOb0ZUu.css.gz +0 -0
- package/build/client/_app/immutable/assets/4.Cztzqv5R.css +1 -0
- package/build/client/_app/immutable/assets/4.Cztzqv5R.css.br +0 -0
- package/build/client/_app/immutable/assets/4.Cztzqv5R.css.gz +0 -0
- package/build/client/_app/immutable/assets/6.Dr3r8AEl.css +1 -0
- package/build/client/_app/immutable/assets/6.Dr3r8AEl.css.br +0 -0
- package/build/client/_app/immutable/assets/6.Dr3r8AEl.css.gz +0 -0
- package/build/client/_app/immutable/assets/7.uKZKJ3Jz.css +1 -0
- package/build/client/_app/immutable/assets/7.uKZKJ3Jz.css.br +0 -0
- package/build/client/_app/immutable/assets/7.uKZKJ3Jz.css.gz +0 -0
- package/build/client/_app/immutable/assets/AuthGate.CnhepjAm.css +1 -0
- package/build/client/_app/immutable/assets/AuthGate.CnhepjAm.css.br +0 -0
- package/build/client/_app/immutable/assets/AuthGate.CnhepjAm.css.gz +0 -0
- package/build/client/_app/immutable/chunks/Bruy7wK6.js +5 -0
- package/build/client/_app/immutable/chunks/Bruy7wK6.js.br +0 -0
- package/build/client/_app/immutable/chunks/Bruy7wK6.js.gz +0 -0
- package/build/client/_app/immutable/chunks/C7kefBvL.js +1 -0
- package/build/client/_app/immutable/chunks/C7kefBvL.js.br +0 -0
- package/build/client/_app/immutable/chunks/C7kefBvL.js.gz +0 -0
- package/build/client/_app/immutable/chunks/{BPh8tqAg.js → DXg4iuO3.js} +1 -1
- package/build/client/_app/immutable/chunks/DXg4iuO3.js.br +0 -0
- package/build/client/_app/immutable/chunks/DXg4iuO3.js.gz +0 -0
- package/build/client/_app/immutable/entry/{app.9wfmQKXa.js → app.Da_nrbL3.js} +2 -2
- package/build/client/_app/immutable/entry/app.Da_nrbL3.js.br +0 -0
- package/build/client/_app/immutable/entry/app.Da_nrbL3.js.gz +0 -0
- package/build/client/_app/immutable/entry/start.CBqpzj15.js +1 -0
- package/build/client/_app/immutable/entry/start.CBqpzj15.js.br +0 -0
- package/build/client/_app/immutable/entry/start.CBqpzj15.js.gz +0 -0
- package/build/client/_app/immutable/nodes/{1.B-z3blIe.js → 1.BoyMtkIT.js} +1 -1
- package/build/client/_app/immutable/nodes/1.BoyMtkIT.js.br +1 -0
- package/build/client/_app/immutable/nodes/1.BoyMtkIT.js.gz +0 -0
- package/build/client/_app/immutable/nodes/4.BrJEvB8k.js +19 -0
- package/build/client/_app/immutable/nodes/4.BrJEvB8k.js.br +0 -0
- package/build/client/_app/immutable/nodes/4.BrJEvB8k.js.gz +0 -0
- package/build/client/_app/immutable/nodes/{5.BrAtimvQ.js → 5.Deh6r378.js} +1 -1
- package/build/client/_app/immutable/nodes/5.Deh6r378.js.br +0 -0
- package/build/client/_app/immutable/nodes/5.Deh6r378.js.gz +0 -0
- package/build/client/_app/immutable/nodes/6.C1Z0X0eB.js +1 -0
- package/build/client/_app/immutable/nodes/6.C1Z0X0eB.js.br +0 -0
- package/build/client/_app/immutable/nodes/6.C1Z0X0eB.js.gz +0 -0
- package/build/client/_app/immutable/nodes/{7.B5KYnWwU.js → 7.C0fsI5jU.js} +7 -7
- package/build/client/_app/immutable/nodes/7.C0fsI5jU.js.br +0 -0
- package/build/client/_app/immutable/nodes/7.C0fsI5jU.js.gz +0 -0
- package/build/client/_app/version.json +1 -1
- package/build/client/_app/version.json.br +1 -1
- package/build/client/_app/version.json.gz +0 -0
- package/build/server/chunks/{0-CP9GcQBP.js → 0-CBvGEmz5.js} +4 -4
- package/build/server/chunks/{0-CP9GcQBP.js.map → 0-CBvGEmz5.js.map} +1 -1
- package/build/server/chunks/1-DyXggAD7.js +9 -0
- package/build/server/chunks/{1-BDxTrwG3.js.map → 1-DyXggAD7.js.map} +1 -1
- package/build/server/chunks/4-BA4xMUIo.js +9 -0
- package/build/server/chunks/{4-CBgm4iSo.js.map → 4-BA4xMUIo.js.map} +1 -1
- package/build/server/chunks/5-mwxADZxH.js +9 -0
- package/build/server/chunks/{5-CD1fuYOe.js.map → 5-mwxADZxH.js.map} +1 -1
- package/build/server/chunks/6-DxJqX8Ar.js +9 -0
- package/build/server/chunks/6-DxJqX8Ar.js.map +1 -0
- package/build/server/chunks/7-eIG645uZ.js +9 -0
- package/build/server/chunks/7-eIG645uZ.js.map +1 -0
- package/build/server/chunks/{AuthGate-BcB49fE5.js → AuthGate-BSSWifAW.js} +25 -6
- package/build/server/chunks/AuthGate-BSSWifAW.js.map +1 -0
- package/build/server/chunks/{_layout.svelte-C8ggVfth.js → _layout.svelte-BnCuSUPN.js} +2 -2
- package/build/server/chunks/{_layout.svelte-C8ggVfth.js.map → _layout.svelte-BnCuSUPN.js.map} +1 -1
- package/build/server/chunks/{_page.svelte-Cy4kcLwu.js → _page.svelte-CM6lAXGw.js} +5 -5
- package/build/server/chunks/{_page.svelte-Cy4kcLwu.js.map → _page.svelte-CM6lAXGw.js.map} +1 -1
- package/build/server/chunks/{_page.svelte-WWZsjJuR.js → _page.svelte-DE0XaTOm.js} +6 -10
- package/build/server/chunks/_page.svelte-DE0XaTOm.js.map +1 -0
- package/build/server/chunks/{_page.svelte-DrWHHwCU.js → _page.svelte-IK34Jznq.js} +6 -9
- package/build/server/chunks/_page.svelte-IK34Jznq.js.map +1 -0
- package/build/server/chunks/{_page.svelte-CEjRvc8B.js → _page.svelte-s9VofFGB.js} +123 -29
- package/build/server/chunks/_page.svelte-s9VofFGB.js.map +1 -0
- package/build/server/chunks/environment-CsmIkpXZ.js +36 -0
- package/build/server/chunks/environment-CsmIkpXZ.js.map +1 -0
- package/build/server/chunks/{error.svelte-CcHm-30A.js → error.svelte-DQ9eqMU0.js} +3 -3
- package/build/server/chunks/{error.svelte-CcHm-30A.js.map → error.svelte-DQ9eqMU0.js.map} +1 -1
- package/build/server/chunks/{internal-B08Y9iTe.js → internal-SzWp9pLx.js} +2 -2
- package/build/server/chunks/{internal-B08Y9iTe.js.map → internal-SzWp9pLx.js.map} +1 -1
- package/build/server/chunks/{state-CFHLgqLs.js → state-B6RhDeid.js} +2 -2
- package/build/server/chunks/{state-CFHLgqLs.js.map → state-B6RhDeid.js.map} +1 -1
- package/build/server/chunks/{theme-state.svelte-y-mfJax7.js → theme-state.svelte-CWo8vi7P.js} +11 -2
- package/build/server/chunks/{theme-state.svelte-y-mfJax7.js.map → theme-state.svelte-CWo8vi7P.js.map} +1 -1
- package/build/server/index.js +2 -32
- package/build/server/index.js.map +1 -1
- package/build/server/manifest.js +7 -7
- package/build/server/manifest.js.map +1 -1
- package/package.json +1 -1
- package/build/client/_app/immutable/assets/0.nenI9xO9.css +0 -1
- package/build/client/_app/immutable/assets/0.nenI9xO9.css.br +0 -0
- package/build/client/_app/immutable/assets/0.nenI9xO9.css.gz +0 -0
- package/build/client/_app/immutable/assets/4.j3F-W7h_.css +0 -1
- package/build/client/_app/immutable/assets/4.j3F-W7h_.css.br +0 -0
- package/build/client/_app/immutable/assets/4.j3F-W7h_.css.gz +0 -0
- package/build/client/_app/immutable/assets/6.B0Z8tVIH.css +0 -1
- package/build/client/_app/immutable/assets/6.B0Z8tVIH.css.br +0 -1
- package/build/client/_app/immutable/assets/6.B0Z8tVIH.css.gz +0 -0
- package/build/client/_app/immutable/assets/7.CzC8JVIO.css +0 -1
- package/build/client/_app/immutable/assets/7.CzC8JVIO.css.br +0 -0
- package/build/client/_app/immutable/assets/7.CzC8JVIO.css.gz +0 -0
- package/build/client/_app/immutable/assets/AuthGate._tqG1OIX.css +0 -1
- package/build/client/_app/immutable/assets/AuthGate._tqG1OIX.css.br +0 -0
- package/build/client/_app/immutable/assets/AuthGate._tqG1OIX.css.gz +0 -0
- package/build/client/_app/immutable/assets/ModeSwitch.DVIv_V4C.css +0 -1
- package/build/client/_app/immutable/assets/ModeSwitch.DVIv_V4C.css.br +0 -0
- package/build/client/_app/immutable/assets/ModeSwitch.DVIv_V4C.css.gz +0 -0
- package/build/client/_app/immutable/chunks/B1uQvvlv.js +0 -5
- package/build/client/_app/immutable/chunks/B1uQvvlv.js.br +0 -0
- package/build/client/_app/immutable/chunks/B1uQvvlv.js.gz +0 -0
- package/build/client/_app/immutable/chunks/BPh8tqAg.js.br +0 -2
- package/build/client/_app/immutable/chunks/BPh8tqAg.js.gz +0 -0
- package/build/client/_app/immutable/chunks/CrcMJfbz.js +0 -1
- package/build/client/_app/immutable/chunks/CrcMJfbz.js.br +0 -0
- package/build/client/_app/immutable/chunks/CrcMJfbz.js.gz +0 -0
- package/build/client/_app/immutable/chunks/E7W0MQkU.js +0 -1
- package/build/client/_app/immutable/chunks/E7W0MQkU.js.br +0 -0
- package/build/client/_app/immutable/chunks/E7W0MQkU.js.gz +0 -0
- package/build/client/_app/immutable/entry/app.9wfmQKXa.js.br +0 -0
- package/build/client/_app/immutable/entry/app.9wfmQKXa.js.gz +0 -0
- package/build/client/_app/immutable/entry/start.BzWuQgSn.js +0 -1
- package/build/client/_app/immutable/entry/start.BzWuQgSn.js.br +0 -0
- package/build/client/_app/immutable/entry/start.BzWuQgSn.js.gz +0 -0
- package/build/client/_app/immutable/nodes/1.B-z3blIe.js.br +0 -1
- package/build/client/_app/immutable/nodes/1.B-z3blIe.js.gz +0 -0
- package/build/client/_app/immutable/nodes/4.DOO_QIq1.js +0 -18
- package/build/client/_app/immutable/nodes/4.DOO_QIq1.js.br +0 -0
- package/build/client/_app/immutable/nodes/4.DOO_QIq1.js.gz +0 -0
- package/build/client/_app/immutable/nodes/5.BrAtimvQ.js.br +0 -0
- package/build/client/_app/immutable/nodes/5.BrAtimvQ.js.gz +0 -0
- package/build/client/_app/immutable/nodes/6.CDpI1TrW.js +0 -1
- package/build/client/_app/immutable/nodes/6.CDpI1TrW.js.br +0 -0
- package/build/client/_app/immutable/nodes/6.CDpI1TrW.js.gz +0 -0
- package/build/client/_app/immutable/nodes/7.B5KYnWwU.js.br +0 -0
- package/build/client/_app/immutable/nodes/7.B5KYnWwU.js.gz +0 -0
- package/build/server/chunks/1-BDxTrwG3.js +0 -9
- package/build/server/chunks/4-CBgm4iSo.js +0 -9
- package/build/server/chunks/5-CD1fuYOe.js +0 -9
- package/build/server/chunks/6-B6tmbcQ8.js +0 -9
- package/build/server/chunks/6-B6tmbcQ8.js.map +0 -1
- package/build/server/chunks/7-m4KLf_Gx.js +0 -9
- package/build/server/chunks/7-m4KLf_Gx.js.map +0 -1
- package/build/server/chunks/AuthGate-BcB49fE5.js.map +0 -1
- package/build/server/chunks/ModeSwitch-D26evPMy.js +0 -15
- package/build/server/chunks/ModeSwitch-D26evPMy.js.map +0 -1
- package/build/server/chunks/_page.svelte-CEjRvc8B.js.map +0 -1
- package/build/server/chunks/_page.svelte-DrWHHwCU.js.map +0 -1
- package/build/server/chunks/_page.svelte-WWZsjJuR.js.map +0 -1
- /package/build/client/_app/immutable/nodes/{0.DxAGOZgx.js → 0.B1vIHYps.js} +0 -0
- /package/build/client/_app/immutable/nodes/{0.DxAGOZgx.js.br → 0.B1vIHYps.js.br} +0 -0
- /package/build/client/_app/immutable/nodes/{0.DxAGOZgx.js.gz → 0.B1vIHYps.js.gz} +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
0.11.0-rc.
|
|
1
|
+
0.11.0-rc.15
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
:root{--color-primary:#ff9d00;--color-primary-hover:#e68a00;--color-primary-subtle:#ff9d0014;--color-primary-border:#ff9d0047;--color-accent:var(--color-primary);--color-success:#40c057;--color-success-bg:#40c0571a;--color-success-border:#40c05740;--color-success-subtle:var(--color-success-bg);--color-danger:#fa5252;--color-danger-bg:#fa52521a;--color-danger-subtle:var(--color-danger-bg);--color-danger-border:#fa525240;--color-danger-fg:#c92a2a;--color-danger-bg-hover:#fa525229;--color-warning:#d97706;--color-warning-bg:#d977061a;--color-warning-border:#d9770640;--color-info:#339af0;--color-info-bg:#339af014;--color-pending:#868e96;--color-pending-bg:#868e961a;--color-caution:#b45309;--color-caution-bg:#b4530914;--color-error:var(--color-danger);--color-error-bg:var(--color-danger-bg);--color-error-border:var(--color-danger-border);--color-badge-success-fg:#0f6a31;--color-badge-danger-fg:#b91c1c;--color-badge-warning-fg:#b45309;--color-badge-neutral-fg:#4b5563;--color-bg:#fff;--color-bg-secondary:#f9fafb;--color-bg-tertiary:#f3f4f6;--color-surface:#fffffffa;--color-surface-hover:#f9fafb;--color-surface-alt:#f6f8fa;--color-navbar-bg:#ffffffd9;--color-border:#e5e7eb;--color-border-hover:#d1d5db;--color-border-focus:var(--color-primary);--color-text:#111827;--color-text-secondary:#6b7280;--color-text-tertiary:#9ca3af;--color-text-muted:var(--color-text-secondary);--color-text-primary:var(--color-text);--color-text-inverse:#fff;--font-sans:"Source Sans 3", "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", sans-serif;--font-mono:"IBM Plex Mono", "JetBrains Mono", "Fira Code", "Consolas", monospace;--text-xs:.75rem;--text-sm:.8125rem;--text-base:.875rem;--text-lg:1rem;--text-xl:1.125rem;--text-2xl:1.375rem;--text-3xl:1.75rem;--leading-tight:1.25;--leading-normal:1.5;--font-medium:500;--font-semibold:600;--font-bold:700;--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.25rem;--space-6:1.5rem;--space-8:2rem;--space-10:2.5rem;--space-12:3rem;--radius-sm:6px;--radius-md:8px;--radius-lg:12px;--radius-xl:16px;--radius-full:9999px;--shadow-sm:0 1px 3px #00000014, 0 1px 2px #0000000a;--shadow-lg:0 4px 12px #0000001a, 0 2px 4px #0000000f;--transition-fast:.12s ease;--transition-normal:.2s ease;--max-width:1200px;--nav-height:56px;--chat-toolbar-height:53px;--chat-column:48rem;--sheet-width:480px;--sheet-width-wide:640px;--overlay-bg:#00000059;--shadow-sheet:-4px 0 24px #0000001f, -1px 0 4px #0000000f;--color-nav-active-text:var(--color-text);--color-nav-active-indicator:var(--color-text);--color-surface-base:var(--color-bg);--color-surface-card:var(--color-surface);--color-surface-elevated:var(--color-bg-secondary);--toggle-width:36px;--toggle-height:20px;--toggle-bg-off:var(--color-border-hover);--toggle-bg-on:var(--color-primary);--provider-card-size:96px;--color-border-selected:var(--color-primary);--color-bg-selected:var(--color-primary-subtle)}:root[data-theme=dark]{--color-primary:#ff9d00;--color-primary-hover:#ffb84d;--color-primary-subtle:#ff9d0029;--color-primary-border:#ff9d0057;--color-success:#5ad57f;--color-success-bg:#5ad57f24;--color-success-border:#5ad57f4d;--color-success-subtle:var(--color-success-bg);--color-danger:#ff7b7b;--color-danger-bg:#ff7b7b24;--color-danger-subtle:var(--color-danger-bg);--color-danger-border:#ff7b7b4d;--color-danger-fg:#ffd2d2;--color-danger-bg-hover:#ff7b7b38;--color-warning:#fbbf24;--color-warning-bg:#fbbf2429;--color-warning-border:#fbbf244d;--color-info:#66b8ff;--color-info-bg:#66b8ff24;--color-pending:#94a3b8;--color-pending-bg:#94a3b824;--color-caution:#fbbf24;--color-caution-bg:#fbbf2424;--color-badge-success-fg:#6ee79a;--color-badge-danger-fg:#ff9d9d;--color-badge-warning-fg:#fcd34d;--color-badge-neutral-fg:#cbd5e1;--color-error:var(--color-danger);--color-error-bg:var(--color-danger-bg);--color-error-border:var(--color-danger-border);--color-bg:#101418;--color-bg-secondary:#161c22;--color-bg-tertiary:#1d2630;--color-surface:#141a20fa;--color-surface-hover:#1b232c;--color-surface-alt:#19212a;--color-navbar-bg:#141a20e0;--color-border:#2a3441;--color-border-hover:#3b4756;--color-border-focus:var(--color-primary);--color-text:#f3f4f6;--color-text-secondary:#cbd5e1;--color-text-tertiary:#94a3b8;--color-text-muted:var(--color-text-secondary);--color-text-primary:var(--color-text);--color-text-inverse:#0f1419;--shadow-sm:0 1px 3px #00000038, 0 1px 2px #00000029;--shadow-lg:0 10px 24px #00000057, 0 4px 8px #0000003d;--overlay-bg:#0000008c;--shadow-sheet:-6px 0 28px #00000057, -1px 0 4px #0000003d;--toggle-bg-off:var(--color-border-hover);--toggle-bg-on:var(--color-primary);--color-border-selected:var(--color-primary);--color-bg-selected:var(--color-primary-subtle);--color-surface-base:var(--color-bg);--color-surface-card:var(--color-surface);--color-surface-elevated:var(--color-bg-secondary)}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizelegibility;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;font-size:16px}html[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}body{font-family:var(--font-sans);font-size:var(--text-base);line-height:var(--leading-normal);color:var(--color-text);background:var(--color-bg-secondary);min-height:100vh}html.chat-locked,body.chat-locked{height:100dvh;min-height:0;overflow:hidden}*{scrollbar-width:thin;scrollbar-color:var(--color-border) transparent}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--color-border);border-radius:var(--radius-full)}::-webkit-scrollbar-thumb:hover{background:var(--color-border-hover)}:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.model-toggle{width:var(--toggle-width);height:var(--toggle-height);flex-shrink:0;display:inline-block;position:relative}.model-toggle input{opacity:0;width:0;height:0;position:absolute}.model-toggle-track{background:var(--toggle-bg-off);border-radius:var(--radius-full);transition:background var(--transition-fast);cursor:pointer;position:absolute;inset:0}.model-toggle-track:after{content:"";width:calc(var(--toggle-height) - 4px);aspect-ratio:1;transition:translate var(--transition-fast);background:#fff;border-radius:50%;position:absolute;inset-block:2px;inset-inline-start:2px}.model-toggle input:checked+.model-toggle-track{background:var(--toggle-bg-on)}.model-toggle input:checked+.model-toggle-track:after{translate:calc(var(--toggle-width) - var(--toggle-height)) 0}.model-toggle input:focus-visible+.model-toggle-track{outline:2px solid var(--color-primary);outline-offset:2px}.provider-grid{grid-template-columns:repeat(auto-fill, minmax(var(--provider-card-size), 1fr));gap:var(--space-3);display:grid}.provider-card{align-items:center;gap:var(--space-2);padding:var(--space-4) var(--space-3);background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-md);cursor:pointer;text-align:center;font-family:var(--font-sans);transition:border-color var(--transition-fast), box-shadow var(--transition-fast);flex-direction:column;display:flex}.provider-card:hover{border-color:var(--color-border-hover)}.provider-card--selected{border-color:var(--color-border-selected);background:var(--color-bg-selected);box-shadow:0 0 0 1px var(--color-border-selected)}.provider-card--connected:after{content:"";background:var(--color-success);border-radius:50%;width:8px;height:8px;display:block}.auth-method-group{gap:var(--space-2);flex-direction:column;display:flex}.auth-method-card{align-items:flex-start;gap:var(--space-3);padding:var(--space-3) var(--space-4);background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-md);cursor:pointer;text-align:left;font-family:var(--font-sans);transition:border-color var(--transition-fast);display:flex}.auth-method-card--selected{border-color:var(--color-primary);box-shadow:inset 3px 0 0 var(--color-primary)}.filter-pills{gap:var(--space-2);padding-bottom:var(--space-1);scrollbar-width:none;display:flex;overflow-x:auto}.pill{border-radius:var(--radius-full);border:1px solid var(--color-border);background:var(--color-bg);color:var(--color-text-secondary);font-size:var(--text-xs);font-weight:var(--font-medium);cursor:pointer;white-space:nowrap;transition:all var(--transition-fast);align-items:center;padding:4px 12px;display:inline-flex}.pill--active{background:var(--color-bg-tertiary);border-color:var(--color-border-hover);color:var(--color-text);font-weight:var(--font-semibold);box-shadow:inset 0 0 0 1px var(--color-border-hover)}.model-row{align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);display:flex}.model-row:hover{background:var(--color-bg-secondary)}.model-row-name{font-family:var(--font-mono);font-size:var(--text-sm);color:var(--color-text);flex:1}.model-row-provider{font-size:var(--text-xs);color:var(--color-text-tertiary)}.provider-group summary{cursor:pointer;align-items:center;gap:var(--space-2);padding:var(--space-2) 0;font-size:var(--text-xs);font-weight:var(--font-semibold);color:var(--color-text-secondary);list-style:none;display:flex}.provider-group summary::-webkit-details-marker{display:none}.provider-group summary:before{content:"▸";font-size:var(--text-xs);transition:transform var(--transition-fast)}.provider-group[open] summary:before{transform:rotate(90deg)}.btn{align-items:center;gap:var(--space-2);min-height:44px;font-family:var(--font-sans);font-size:var(--text-sm);font-weight:var(--font-semibold);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast);white-space:nowrap;border:1px solid #0000;justify-content:center;padding:10px 20px;line-height:1.4;display:inline-flex}.btn:disabled{opacity:.55;cursor:not-allowed}.btn-primary{background:var(--color-primary);color:#000;border-color:var(--color-primary)}.btn-primary:hover:not(:disabled){background:var(--color-primary-hover);border-color:var(--color-primary-hover)}.btn-outline{color:var(--color-text);border-color:var(--color-border);background:0 0}.btn-outline:hover:not(:disabled){background:var(--color-surface-hover);border-color:var(--color-border-hover)}.btn-ghost{color:var(--color-text-secondary);border-radius:var(--radius-sm);cursor:pointer;background:0 0;border:none;padding:6px}.btn-ghost:hover:not(:disabled){color:var(--color-text);background:var(--color-bg-secondary)}.btn-sm{min-height:36px;font-size:var(--text-xs);padding:6px 12px}.btn-secondary{background:var(--color-bg);color:var(--color-text);border-color:var(--color-border)}.btn-secondary:hover:not(:disabled){background:var(--color-surface-hover);border-color:var(--color-border-hover)}.btn-danger{background:var(--color-danger);color:#fff;border-color:var(--color-danger)}.btn-danger:hover:not(:disabled){opacity:.9}.feedback{align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);font-size:var(--text-sm);display:flex}.feedback span{flex:1}.feedback--success{background:var(--color-success-bg,#40c0571a);border:1px solid var(--color-success-border,#40c05740);color:var(--color-text)}.feedback--error{background:var(--color-danger-bg,#ff6b6b1a);border:1px solid var(--color-danger-border,#ff6b6b40);color:var(--color-text)}.feedback--warning{background:var(--color-warning-bg,#ffc1071a);border:1px solid var(--color-warning-border,#ffc10740);color:var(--color-text)}.form-field{gap:var(--space-1);flex-direction:column;display:flex}.form-label{font-size:var(--text-sm);font-weight:var(--font-medium);color:var(--color-text-secondary)}.form-input{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg);width:100%;height:44px;color:var(--color-text);font-size:var(--text-sm);padding:0 12px;font-family:inherit}.form-input:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-subtle);outline:none}.form-input:focus-visible{outline:2px solid var(--color-primary);outline-offset:0}.field-hint{font-size:var(--text-xs);color:var(--color-text-tertiary)}.field-status{font-size:var(--text-xs);color:var(--color-text-secondary)}.panel{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);overflow:hidden}.panel-header{z-index:10;background:var(--color-surface);justify-content:space-between;align-items:center;gap:var(--space-2);padding:var(--space-4) var(--space-5);border-bottom:1px solid var(--color-border);flex-wrap:wrap;display:flex;position:sticky;top:0}.panel-header h2{font-size:var(--text-base);font-weight:var(--font-semibold);color:var(--color-text)}.panel-subtitle{font-size:var(--text-sm);color:var(--color-text-secondary);margin-top:var(--space-1)}.panel-subtitle code{font-family:var(--font-mono);font-size:var(--text-xs);background:var(--color-bg-tertiary);border-radius:var(--radius-sm);padding:1px 6px}.panel-header-actions{justify-content:flex-end;align-items:center;gap:var(--space-2);flex-wrap:wrap;flex-shrink:0;max-width:100%;display:flex}.panel-body{padding:var(--space-5)}.panel-body--flush{padding:0}.badge{font-size:var(--text-xs);font-weight:var(--font-semibold);border-radius:var(--radius-full);white-space:nowrap;align-items:center;padding:2px 8px;line-height:1.4;display:inline-flex}.badge-enabled{background:var(--color-success-bg);color:var(--color-badge-success-fg)}.badge-disabled{background:var(--color-bg-tertiary);color:var(--color-badge-neutral-fg)}.badge-connected,.badge-recommended,.badge-success{background:var(--color-success-bg);color:var(--color-badge-success-fg)}.badge-danger{background:var(--color-danger-bg);color:var(--color-badge-danger-fg)}.badge-warning,.badge-warn{background:var(--color-warning-bg);color:var(--color-badge-warning-fg)}.badge-neutral{background:var(--color-bg-tertiary);color:var(--color-badge-neutral-fg)}.badge-error{background:var(--color-danger-bg);color:var(--color-badge-danger-fg)}.badge-idle{background:var(--color-bg-tertiary);color:var(--color-badge-neutral-fg)}.tag-badge{font-size:var(--text-xs);font-family:var(--font-mono);font-weight:var(--font-medium);color:var(--color-info);background:var(--color-info-bg);border-radius:var(--radius-sm);white-space:nowrap;align-items:center;padding:2px 6px;display:inline-flex}.tag-badge--lg{padding:2px 8px}.ct-col{align-items:center;gap:var(--space-2);display:flex}.ct-col--name{flex:2;min-width:0}.ct-col--image{text-overflow:ellipsis;white-space:nowrap;flex:3;min-width:0;overflow:hidden}.ct-col--tag,.ct-col--status{flex:1;min-width:0}.ct-col--actions{color:var(--color-text-tertiary);flex:0 0 24px;justify-content:center}@media (width<=768px){.ct-col--name{flex:auto}.ct-col--image,.ct-col--tag{display:none}.ct-col--status{flex:none}.ct-col--actions{flex:0 0 20px}}.panel-subtitle,.section-note,.section-desc,.section-subtitle,.panel-description,.empty-note,.engine-desc{max-width:68ch}.btn-dismiss{color:inherit;cursor:pointer;opacity:.6;border-radius:var(--radius-sm);background:0 0;border:none;justify-content:center;align-items:center;padding:4px;display:inline-flex}.btn-dismiss:hover{opacity:1;background:#8080801a}.loading-state{align-items:center;gap:var(--space-3);padding:var(--space-6);color:var(--color-text-secondary);font-size:var(--text-sm);display:flex}.empty-state{align-items:center;gap:var(--space-3);padding:var(--space-8) var(--space-6);text-align:center;color:var(--color-text-tertiary);flex-direction:column;display:flex}.empty-state p{font-size:var(--text-sm)}.text-link{color:var(--color-primary);text-underline-offset:2px;text-decoration:underline}.text-link:hover{color:var(--color-primary-hover)}@media (width<=520px){.provider-grid{grid-template-columns:repeat(auto-fill,minmax(80px,1fr))}}.update-banner.svelte-1u6ojbd{color:#3730a3;font-size:var(--text-sm,.875rem);background:#eef2ff;border-bottom:1px solid #c7d2fe;align-items:center;gap:10px;padding:8px 14px;display:flex}.update-banner-icon.svelte-1u6ojbd{display:inline-flex}.update-banner-text.svelte-1u6ojbd{flex:1}.update-banner-link.svelte-1u6ojbd{color:#4338ca;font-weight:600;text-decoration:none}.update-banner-link.svelte-1u6ojbd:hover{text-decoration:underline}.update-banner-dismiss.svelte-1u6ojbd{color:#3730a3;cursor:pointer;background:0 0;border:0;border-radius:4px;padding:4px 8px;font-size:1.1rem;line-height:1}.update-banner-dismiss.svelte-1u6ojbd:hover{background:#4338ca14}.toast-stack.svelte-c82lj3{right:var(--space-4);bottom:var(--space-4);z-index:200;gap:var(--space-2);max-width:min(360px, calc(100vw - var(--space-8)));pointer-events:none;flex-direction:column;display:flex;position:fixed}.toast.svelte-c82lj3{align-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-4);background:var(--color-bg);color:var(--color-text);border:1px solid var(--color-border);border-radius:var(--radius-md);pointer-events:auto;animation:.18s ease-out svelte-c82lj3-toast-in;display:flex;box-shadow:0 10px 30px #0000002e}.toast-info.svelte-c82lj3{border-color:var(--color-primary,#2563eb)}.toast-success.svelte-c82lj3{border-color:var(--color-success,#16a34a)}.toast-error.svelte-c82lj3{border-color:var(--color-danger,#dc2626)}.toast-icon.svelte-c82lj3{flex-shrink:0;display:inline-flex}.toast-info.svelte-c82lj3 .toast-icon:where(.svelte-c82lj3){color:var(--color-primary,#2563eb)}.toast-success.svelte-c82lj3 .toast-icon:where(.svelte-c82lj3){color:var(--color-success,#16a34a)}.toast-error.svelte-c82lj3 .toast-icon:where(.svelte-c82lj3){color:var(--color-danger,#dc2626)}.toast-message.svelte-c82lj3{font-size:var(--text-sm);word-break:break-word;flex:1;line-height:1.4}.toast-dismiss.svelte-c82lj3{width:24px;height:24px;color:var(--color-text-tertiary);cursor:pointer;border-radius:var(--radius-sm);background:0 0;border:0;flex-shrink:0;font-size:18px;line-height:1}.toast-dismiss.svelte-c82lj3:hover,.toast-dismiss.svelte-c82lj3:focus-visible{background:var(--color-surface-hover);color:var(--color-text);outline:none}.sr-only.svelte-c82lj3{clip:rect(0, 0, 0, 0);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@keyframes svelte-c82lj3-toast-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion:reduce){.toast.svelte-c82lj3{animation:none}}
|
|
Binary file
|
|
Binary file
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
.nav-shell.svelte-7673iv{top:var(--nav-height);z-index:40;background:var(--color-bg-secondary);border-bottom:1px solid var(--color-border);position:sticky}.section-strip.svelte-7673iv{padding-inline:var(--space-6);-webkit-overflow-scrolling:touch;scrollbar-width:none;border-bottom:1px solid var(--color-border);background:var(--color-bg);gap:0;display:flex;overflow-x:auto}.section-strip.svelte-7673iv::-webkit-scrollbar{display:none}.section-tab.svelte-7673iv{min-height:36px;padding:var(--space-1) var(--space-4);font-family:var(--font-sans);font-size:var(--text-sm);font-weight:var(--font-medium);color:var(--color-text-muted,var(--color-text-secondary));cursor:pointer;white-space:nowrap;transition:color var(--transition-fast), background-color var(--transition-fast), border-color var(--transition-fast);background:0 0;border:none;border-bottom:3px solid #0000;flex-shrink:0;align-items:center;margin-bottom:-1px;display:inline-flex}.section-tab.svelte-7673iv:hover{color:var(--color-text);background:var(--color-bg-secondary)}.section-tab.svelte-7673iv:focus-visible{outline:2px solid var(--color-primary);outline-offset:-2px;border-radius:var(--radius-sm)}.section-tab-active.svelte-7673iv{color:var(--color-text);font-weight:var(--font-semibold);background:var(--color-bg-secondary);border-top-left-radius:var(--radius-md);border-top-right-radius:var(--radius-md)}.subtab-row.svelte-7673iv{position:relative}.subtab-row.svelte-7673iv:after{content:"";background:linear-gradient(to right, transparent, var(--color-bg-secondary));pointer-events:none;width:48px;position:absolute;top:0;bottom:0;right:0}.subtab-row.svelte-7673iv:before{content:"";background:linear-gradient(to left, transparent, var(--color-bg-secondary));pointer-events:none;z-index:1;width:40px;position:absolute;top:0;bottom:0;left:0}.tabs.svelte-7673iv{gap:var(--space-1);padding-inline:var(--space-6);-webkit-overflow-scrolling:touch;scrollbar-width:none;display:flex;overflow-x:auto}.tabs.svelte-7673iv::-webkit-scrollbar{display:none}.tab.svelte-7673iv{align-items:center;gap:var(--space-2);min-height:44px;padding:var(--space-2) var(--space-3);font-family:var(--font-sans);font-size:var(--text-sm);font-weight:var(--font-medium);color:var(--color-text-secondary);cursor:pointer;white-space:nowrap;transition:color var(--transition-fast), border-color var(--transition-fast), font-weight var(--transition-fast);background:0 0;border:none;border-bottom:3px solid #0000;flex-shrink:0;margin-bottom:-1px;display:inline-flex}.tab.svelte-7673iv:hover{color:var(--color-text)}.tab.svelte-7673iv:focus-visible{outline:2px solid var(--color-primary);outline-offset:-2px;border-radius:var(--radius-sm)}.tab-active.svelte-7673iv{color:var(--color-text);font-weight:var(--font-semibold);border-bottom-color:var(--color-text)}@media (width<=768px){.tab.svelte-7673iv{padding:var(--space-2)}.section-tab.svelte-7673iv{padding:var(--space-1) var(--space-3)}.section-strip.svelte-7673iv,.tabs.svelte-7673iv{padding-inline:var(--space-4)}}@media (width<=320px){.tab.svelte-7673iv,.section-tab.svelte-7673iv{padding:var(--space-1) var(--space-2);font-size:var(--text-xs)}}.hero.svelte-10n23hu{align-items:center;gap:var(--space-4);padding:var(--space-5);border-radius:var(--radius-lg);margin-bottom:var(--space-6);border:1px solid #0000;flex-wrap:wrap;display:flex}.hero--ok.svelte-10n23hu{background:var(--color-success-bg);border-color:var(--color-success-border)}.hero--warning.svelte-10n23hu{background:var(--color-warning-bg);border-color:var(--color-warning)}.hero--unknown.svelte-10n23hu{background:var(--color-bg-secondary);border-color:var(--color-border)}.hero-icon.svelte-10n23hu{flex-shrink:0;display:inline-flex}.hero--ok.svelte-10n23hu .hero-icon:where(.svelte-10n23hu){color:var(--color-badge-success-fg)}.hero--warning.svelte-10n23hu .hero-icon:where(.svelte-10n23hu){color:var(--color-badge-warning-fg)}.hero--unknown.svelte-10n23hu .hero-icon:where(.svelte-10n23hu){color:var(--color-text-secondary)}.hero-text.svelte-10n23hu{flex:240px;min-width:0}.hero-title.svelte-10n23hu{font-size:var(--text-lg);font-weight:var(--font-semibold);color:var(--color-text)}.hero-detail.svelte-10n23hu{font-size:var(--text-sm);color:var(--color-badge-neutral-fg);max-width:68ch;margin-top:2px}.hero-actions.svelte-10n23hu{align-items:center;gap:var(--space-2);flex-wrap:wrap;max-width:100%;display:flex}.hero-actions.svelte-10n23hu .btn{flex-shrink:0}@media (width<=560px){.hero-actions.svelte-10n23hu{width:100%}.hero-actions.svelte-10n23hu .btn{flex:auto}}.output-section.svelte-10sij3c{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);margin-bottom:var(--space-6);overflow:hidden}.output-section--success.svelte-10sij3c{border-color:var(--color-success-border)}.output-section--error.svelte-10sij3c{border-color:var(--color-danger)}.output-header.svelte-10sij3c{padding:var(--space-3) var(--space-5);background:var(--color-bg-secondary);border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:center;display:flex}.output-header.svelte-10sij3c h3:where(.svelte-10sij3c){font-size:var(--text-sm);font-weight:var(--font-semibold);color:var(--color-text)}.output-code.svelte-10sij3c{padding:var(--space-4) var(--space-5);max-height:320px;font-family:var(--font-mono);font-size:var(--text-xs);color:#e4e8f0;white-space:pre-wrap;word-break:break-word;background:#1e2330;margin:0;line-height:1.6;overflow:auto}.tile.svelte-19hpfg{gap:var(--space-1);padding:var(--space-4) var(--space-5);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);cursor:pointer;text-align:left;font-family:var(--font-sans);transition:border-color var(--transition-fast), box-shadow var(--transition-fast);flex-direction:column;display:flex}.tile.svelte-19hpfg:hover{border-color:var(--color-border-hover);box-shadow:var(--shadow-sm)}.tile.svelte-19hpfg:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.tile-metric.svelte-19hpfg{font-size:var(--text-2xl);font-weight:var(--font-bold);color:var(--color-text);line-height:1.1}.tile-metric-sub.svelte-19hpfg{font-size:var(--text-lg);font-weight:var(--font-medium);color:var(--color-text-secondary)}.tile-metric--icon.svelte-19hpfg{color:var(--color-text-secondary)}.tile-label.svelte-19hpfg{font-size:var(--text-sm);color:var(--color-text-secondary)}.akm-card.svelte-dcgqe1{text-align:left;width:100%;font-family:var(--font-sans);padding:var(--space-5);margin-bottom:var(--space-8);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);cursor:pointer;transition:border-color var(--transition-fast), box-shadow var(--transition-fast);display:block}.akm-card.svelte-dcgqe1:hover{border-color:var(--color-border-hover);box-shadow:var(--shadow-sm)}.akm-card.svelte-dcgqe1:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.akm-head.svelte-dcgqe1{justify-content:space-between;align-items:center;gap:var(--space-3);margin-bottom:var(--space-4);display:flex}.akm-title.svelte-dcgqe1{font-size:var(--text-sm);font-weight:var(--font-semibold);color:var(--color-text)}.akm-metrics.svelte-dcgqe1{gap:var(--space-4);grid-template-columns:repeat(auto-fit,minmax(140px,1fr));display:grid}.akm-metric.svelte-dcgqe1{flex-direction:column;gap:2px;display:flex}.akm-num.svelte-dcgqe1{font-size:var(--text-xl);font-weight:var(--font-bold);color:var(--color-text);line-height:1.1}.akm-num-sub.svelte-dcgqe1{font-size:var(--text-base);font-weight:var(--font-medium);color:var(--color-text-secondary)}.akm-cap.svelte-dcgqe1{font-size:var(--text-xs);color:var(--color-text-secondary)}.akm-unavailable.svelte-dcgqe1{font-size:var(--text-sm);color:var(--color-text-secondary);max-width:68ch}.shortcut-grid.svelte-8y2vdf{gap:var(--space-3);grid-template-columns:repeat(auto-fit,minmax(220px,1fr));display:grid}.shortcut.svelte-8y2vdf{padding:var(--space-4);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);cursor:pointer;text-align:left;font-family:var(--font-sans);transition:border-color var(--transition-fast), background var(--transition-fast);flex-direction:column;gap:2px;text-decoration:none;display:flex}.shortcut.svelte-8y2vdf:hover{border-color:var(--color-border-hover);background:var(--color-surface-hover)}.shortcut.svelte-8y2vdf:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.shortcut-name.svelte-8y2vdf{font-size:var(--text-sm);font-weight:var(--font-semibold);color:var(--color-text)}.shortcut-desc.svelte-8y2vdf{font-size:var(--text-xs);color:var(--color-text-secondary)}.tile-grid.svelte-xz862u{gap:var(--space-4);margin-bottom:var(--space-8);grid-template-columns:repeat(auto-fit,minmax(160px,1fr));display:grid}.section-heading.svelte-xz862u{font-size:var(--text-sm);font-weight:var(--font-semibold);color:var(--color-text-secondary);margin-bottom:var(--space-3)}.panel-subtitle.svelte-7mkeya{font-size:var(--text-sm);color:var(--color-text-secondary);margin:var(--space-1) 0 0;max-width:60ch}.refresh-releases.svelte-7mkeya{align-items:center;gap:var(--space-2);flex-shrink:0;display:inline-flex}.refresh-releases.svelte-7mkeya svg:where(.svelte-7mkeya){flex-shrink:0}@media (width<=600px){.refresh-releases.svelte-7mkeya{margin-top:var(--space-2)}}.status-live.svelte-7mkeya{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.update-card.svelte-7mkeya{justify-content:space-between;align-items:center;gap:var(--space-4);padding:var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-bg-secondary);flex-wrap:wrap;display:flex}.update-card-text.svelte-7mkeya{flex:1;min-width:14rem}.update-title.svelte-7mkeya{font-size:var(--text-base);font-weight:var(--font-semibold);color:var(--color-text);margin:0}.update-desc.svelte-7mkeya{font-size:var(--text-sm);color:var(--color-text-secondary);margin:var(--space-1) 0 0;max-width:60ch;line-height:1.5}.update-go.svelte-7mkeya{align-items:center;gap:var(--space-2);flex-shrink:0;display:inline-flex}.versions.svelte-7mkeya{gap:var(--space-2);margin:var(--space-5) 0 0;flex-direction:column;display:flex}.versions-row.svelte-7mkeya{justify-content:space-between;align-items:center;gap:var(--space-3);display:flex}.versions-row.svelte-7mkeya dt:where(.svelte-7mkeya){font-size:var(--text-sm);color:var(--color-text)}.versions-row.svelte-7mkeya dd:where(.svelte-7mkeya){margin:0}.version-value.svelte-7mkeya{font-size:var(--text-xs);font-family:var(--font-mono);background:var(--color-bg-secondary);border-radius:var(--radius-sm);border:1px solid var(--color-border);color:var(--color-text-secondary);padding:2px 6px}.advanced.svelte-7mkeya{margin-top:var(--space-5);border-top:1px solid var(--color-border);padding-top:var(--space-4)}.advanced.svelte-7mkeya>summary:where(.svelte-7mkeya){cursor:pointer;font-size:var(--text-sm);font-weight:var(--font-medium);color:var(--color-text-secondary);list-style:revert}.advanced.svelte-7mkeya>summary:where(.svelte-7mkeya):hover{color:var(--color-text)}.advanced.svelte-7mkeya>summary:where(.svelte-7mkeya):focus-visible{outline:2px solid var(--color-primary);outline-offset:2px;border-radius:var(--radius-sm)}.advanced-body.svelte-7mkeya{gap:var(--space-2);margin-top:var(--space-4);flex-direction:column;display:flex}.version-section.svelte-7mkeya{gap:var(--space-2);flex-direction:column;display:flex}.version-label.svelte-7mkeya{font-size:var(--text-sm);font-weight:var(--font-semibold);color:var(--color-text)}.version-input-row.svelte-7mkeya{gap:var(--space-2);flex-wrap:wrap;display:flex}.version-input.svelte-7mkeya{min-width:0;padding:var(--space-1-5) var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg);color:var(--color-text);font-size:var(--text-sm);font-family:var(--font-mono);flex:1}.version-input.svelte-7mkeya:disabled{opacity:.5;cursor:not-allowed}.version-hint.svelte-7mkeya{font-size:var(--text-xs);color:var(--color-text-secondary);margin:0;line-height:1.5}.version-divider.svelte-7mkeya{background:var(--color-border);height:1px;margin:var(--space-3) 0}.version-restart-prompt.svelte-7mkeya{align-items:center;gap:var(--space-3);font-size:var(--text-sm);color:var(--color-success);padding:var(--space-2) var(--space-3);background:var(--color-success-bg);border-radius:var(--radius-md);display:flex}.version-select.svelte-7mkeya{min-width:0;padding:var(--space-1-5) var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg);color:var(--color-text);font-size:var(--text-sm);font-family:var(--font-mono);flex:1}.version-select.svelte-7mkeya:disabled{opacity:.5;cursor:not-allowed}.version-select-skeleton.svelte-7mkeya{border-radius:var(--radius-md);background:linear-gradient(90deg, var(--color-bg-secondary) 25%, var(--color-bg-tertiary) 50%, var(--color-bg-secondary) 75%);background-size:200% 100%;flex:1;height:34px;animation:1.4s ease-in-out infinite svelte-7mkeya-skeleton-shimmer}@keyframes svelte-7mkeya-skeleton-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}@media (prefers-reduced-motion:reduce){.version-select-skeleton.svelte-7mkeya{animation:none}}.empty-state.svelte-1dv4ads{align-items:center;gap:var(--space-3);padding:var(--space-8) var(--space-6);text-align:center;color:var(--color-text-tertiary);flex-direction:column;display:flex}.empty-state.svelte-1dv4ads p{font-size:var(--text-sm)}.secret-select.svelte-180dg8u{gap:var(--space-2);flex-direction:column;display:flex}.ss-row.svelte-180dg8u{align-items:center;gap:var(--space-2);display:flex}.ss-select.svelte-180dg8u{flex:auto;min-width:0;height:38px}.ss-add-btn.svelte-180dg8u{align-items:center;gap:var(--space-1);flex-shrink:0;height:38px;display:inline-flex}.ss-add-btn.svelte-180dg8u svg:where(.svelte-180dg8u){flex-shrink:0}.ss-add-form.svelte-180dg8u{gap:var(--space-2);padding:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg-secondary);flex-direction:column;display:flex}.ss-field.svelte-180dg8u{flex-direction:column;gap:4px;display:flex}.ss-field-label.svelte-180dg8u{font-size:var(--text-xs);font-weight:var(--font-medium);color:var(--color-text-secondary)}.ss-error.svelte-180dg8u{font-size:var(--text-xs);color:var(--color-danger)}.ss-actions.svelte-180dg8u{gap:var(--space-2);display:flex}@media (width<=480px){.ss-add-label.svelte-180dg8u{display:none}.ss-add-btn.svelte-180dg8u{justify-content:center;width:38px}}.drawer-scrim.svelte-1u2o1qj{z-index:200;background:#00000073;border:none;padding:0;position:fixed;inset:0}.drawer.svelte-1u2o1qj{width:min(var(--drawer-width,32rem), 100vw);background:var(--color-bg);border-left:1px solid var(--color-border);z-index:201;flex-direction:column;animation:.2s cubic-bezier(.16,1,.3,1) svelte-1u2o1qj-drawer-in;display:flex;position:fixed;top:0;bottom:0;right:0;box-shadow:-8px 0 32px #0000002e}@keyframes svelte-1u2o1qj-drawer-in{0%{transform:translate(100%)}to{transform:translate(0)}}@media (prefers-reduced-motion:reduce){.drawer.svelte-1u2o1qj{animation:none}}.drawer-header.svelte-1u2o1qj{justify-content:space-between;align-items:center;gap:var(--space-3);padding:var(--space-4) var(--space-5);border-bottom:1px solid var(--color-border);flex-shrink:0;display:flex}.drawer-title.svelte-1u2o1qj{min-width:0;font-size:var(--text-base);font-weight:var(--font-semibold);color:var(--color-text);flex:1}.drawer-close.svelte-1u2o1qj{border-radius:var(--radius-md);width:36px;height:36px;color:var(--color-text-secondary);cursor:pointer;background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;padding:0;display:inline-flex}.drawer-close.svelte-1u2o1qj:hover{background:var(--color-surface-hover);color:var(--color-text)}.drawer-close.svelte-1u2o1qj:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.drawer-body.svelte-1u2o1qj{padding:var(--space-5);flex:1;overflow-y:auto}.drawer-footer.svelte-1u2o1qj{justify-content:flex-end;gap:var(--space-2);padding:var(--space-4) var(--space-5);border-top:1px solid var(--color-border);flex-shrink:0;display:flex}.addon-table.svelte-87zh26{flex-direction:column;width:100%;display:flex}.addon-table-header.svelte-87zh26{padding:var(--space-2) var(--space-5);background:var(--color-bg-tertiary);border-bottom:1px solid var(--color-border);font-size:var(--text-xs);font-weight:var(--font-semibold);color:var(--color-badge-neutral-fg);text-transform:none;align-items:center;display:flex}.addon-row.svelte-87zh26{padding:var(--space-3) var(--space-5);border-bottom:1px solid var(--color-bg-tertiary);transition:background var(--transition-fast);align-items:center;display:flex}.addon-row.svelte-87zh26:last-child{border-bottom:none}.addon-row.svelte-87zh26:hover{background:var(--color-surface-hover)}.addon-col.svelte-87zh26{align-items:center;gap:var(--space-2);display:flex}.addon-col--name.svelte-87zh26{flex:3;min-width:0}.addon-col--status.svelte-87zh26{flex:1;min-width:0}.addon-col--actions.svelte-87zh26{flex:none;justify-content:flex-end}.addon-name.svelte-87zh26{font-size:var(--text-sm);font-weight:var(--font-medium);color:var(--color-text);text-overflow:ellipsis;white-space:nowrap;max-width:100%;overflow:hidden}@media (width<=480px){.addon-row.svelte-87zh26{flex-wrap:wrap}.addon-col--name.svelte-87zh26{flex:1 0 100%}.addon-col--actions.svelte-87zh26{justify-content:flex-start}}.error-state.svelte-87zh26{justify-content:space-between;align-items:center;gap:var(--space-3);padding:var(--space-4) var(--space-5);font-size:var(--text-sm);color:var(--color-danger);display:flex}@media (width<=768px){.addon-table-header.svelte-87zh26{display:none}.addon-row.svelte-87zh26{gap:var(--space-2);flex-wrap:wrap}.addon-col--status.svelte-87zh26{flex:none}}.creds-loading.svelte-87zh26{align-items:center;gap:var(--space-2);color:var(--color-text-secondary);font-size:var(--text-sm);display:flex}.creds-empty.svelte-87zh26,.creds-hint.svelte-87zh26{font-size:var(--text-xs);color:var(--color-text-tertiary);margin:0}.creds-row.svelte-87zh26{gap:var(--space-1);flex-direction:column;display:flex}.creds-label.svelte-87zh26{align-items:center;gap:var(--space-2);font-size:var(--text-xs);color:var(--color-text);display:flex}.creds-label.svelte-87zh26 code:where(.svelte-87zh26){font-family:var(--font-mono);background:var(--color-bg-tertiary);border-radius:var(--radius-sm);padding:1px 6px}.creds-tag.svelte-87zh26{font-size:var(--text-xs);border-radius:var(--radius-full);background:var(--color-bg-tertiary);color:var(--color-text-tertiary);white-space:nowrap;text-transform:uppercase;letter-spacing:.05em;padding:2px 8px}.creds-tag--set.svelte-87zh26{background:var(--color-success-bg);color:var(--color-success)}.creds-desc.svelte-87zh26{font-size:var(--text-xs);color:var(--color-text-tertiary);margin:0}.form-input.svelte-87zh26{border:1px solid var(--color-border);border-radius:var(--radius-md);width:100%;height:32px;padding:0 var(--space-3);background:var(--color-bg);color:var(--color-text);font-size:var(--text-sm);font-family:inherit}.form-input.svelte-87zh26:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-subtle);outline:none}.ct-service-name.svelte-1clpuus{font-weight:var(--font-medium);font-family:var(--font-mono);font-size:var(--text-xs)}.ct-mono.svelte-1clpuus{font-family:var(--font-mono);font-size:var(--text-xs);color:var(--color-text-secondary)}.ct-indicator.svelte-1clpuus{border-radius:50%;flex-shrink:0;width:8px;height:8px}.ct-indicator--success.svelte-1clpuus{background:var(--color-success)}.ct-indicator--danger.svelte-1clpuus{background:var(--color-danger)}.ct-indicator--warning.svelte-1clpuus{background:var(--color-warning)}.ct-indicator--idle.svelte-1clpuus{background:var(--color-border)}.ct-chevron-open.svelte-1clpuus{transform:rotate(180deg)}.ct-not-created.svelte-1clpuus{color:var(--color-text-tertiary);font-style:italic}.container-table-row.svelte-1clpuus{padding:var(--space-3) var(--space-5);border-bottom:1px solid var(--color-bg-tertiary);font-size:var(--text-sm);width:100%;font-family:var(--font-sans);text-align:left;background:0 0;border-top:none;border-left:none;border-right:none;align-items:center;display:flex}.container-table-row.svelte-1clpuus:last-child{border-bottom:none}.container-table-row--clickable.svelte-1clpuus{cursor:pointer;transition:background var(--transition-fast)}.container-table-row--clickable.svelte-1clpuus:hover{background:var(--color-surface-hover)}.container-table-row--clickable.svelte-1clpuus:focus-visible{outline:2px solid var(--color-primary);outline-offset:-2px}@media (width<=768px){.container-table-row.svelte-1clpuus{gap:var(--space-1);padding:var(--space-3) var(--space-4);flex-wrap:wrap}}.container-detail.svelte-17lh9yz{padding:var(--space-4) var(--space-5) var(--space-4) calc(var(--space-5) + 28px);background:var(--color-bg-secondary);border-bottom:1px solid var(--color-border)}.detail-grid.svelte-17lh9yz{gap:var(--space-3) var(--space-6);grid-template-columns:1fr 1fr;display:grid}.detail-item.svelte-17lh9yz{flex-direction:column;gap:2px;display:flex}.detail-label.svelte-17lh9yz{font-size:var(--text-xs);font-weight:var(--font-medium);color:var(--color-text-tertiary);text-transform:uppercase;letter-spacing:.04em}.detail-value.svelte-17lh9yz{font-size:var(--text-sm);color:var(--color-text);align-items:center;gap:var(--space-2);display:flex}.detail-mono.svelte-17lh9yz{font-family:var(--font-mono);font-size:var(--text-xs);word-break:break-all}.detail-digest.svelte-17lh9yz{font-size:var(--text-xs);color:var(--color-text-tertiary)}.detail-actions.svelte-17lh9yz{gap:var(--space-2);margin-top:var(--space-4);display:flex}.detail-not-created.svelte-17lh9yz{padding:var(--space-2) 0}.detail-not-created.svelte-17lh9yz p:where(.svelte-17lh9yz){font-size:var(--text-sm);color:var(--color-text-secondary)}.action-feedback.svelte-17lh9yz{margin-top:var(--space-3);padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);font-size:var(--text-xs);font-weight:var(--font-medium)}.action-feedback--success.svelte-17lh9yz{background:var(--color-success-bg);color:var(--color-success);border:1px solid var(--color-success-border)}.action-feedback--error.svelte-17lh9yz{background:var(--color-danger-bg);color:var(--color-danger);border:1px solid var(--color-danger)}.confirm-bar.svelte-17lh9yz{justify-content:space-between;align-items:center;gap:var(--space-3);margin-top:var(--space-4);padding:var(--space-3) var(--space-4);background:var(--color-warning-bg);border:1px solid var(--color-warning);border-radius:var(--radius-md);display:flex}.confirm-text.svelte-17lh9yz{font-size:var(--text-sm);color:var(--color-text)}.confirm-actions.svelte-17lh9yz{gap:var(--space-2);flex-shrink:0;display:flex}@media (width<=768px){.detail-grid.svelte-17lh9yz{grid-template-columns:1fr}.container-detail.svelte-17lh9yz{padding-left:var(--space-4)}.confirm-bar.svelte-17lh9yz{flex-direction:column;align-items:stretch}.confirm-actions.svelte-17lh9yz{justify-content:flex-end}}.text-danger.svelte-llpoy7{color:var(--color-danger)}.empty-state.svelte-llpoy7 .btn:where(.svelte-llpoy7){margin-top:var(--space-2)}.empty-state.svelte-llpoy7 .hint:where(.svelte-llpoy7){font-size:var(--text-xs);color:var(--color-text-tertiary);max-width:32ch}.container-table.svelte-fnc5b8{flex-direction:column;width:100%;display:flex}.container-table-header.svelte-fnc5b8{padding:var(--space-2) var(--space-5);background:var(--color-bg-tertiary);border-bottom:1px solid var(--color-border);font-size:var(--text-xs);font-weight:var(--font-semibold);color:var(--color-text-secondary);text-transform:none;align-items:center;display:flex}.last-updated.svelte-fnc5b8{font-size:var(--text-xs);color:var(--color-text-tertiary);white-space:nowrap}@media (width<=768px){.container-table-header.svelte-fnc5b8{display:none}}.automation-list.svelte-1xltcby{gap:var(--space-3);flex-direction:column;display:flex}.automation-card.svelte-1xltcby{border:1px solid var(--color-border);border-radius:var(--radius-md);overflow:hidden}.automation-row.svelte-1xltcby{justify-content:space-between;align-items:flex-start;gap:var(--space-4);padding:var(--space-4);display:flex}.automation-main.svelte-1xltcby{flex:1;min-width:0}.automation-name.svelte-1xltcby{align-items:center;gap:var(--space-2);font-size:var(--text-sm);font-weight:var(--font-semibold);color:var(--color-text);flex-wrap:wrap;display:flex}.automation-desc.svelte-1xltcby{font-size:var(--text-xs);color:var(--color-text-secondary);margin-top:var(--space-1)}.automation-meta.svelte-1xltcby{align-items:flex-end;gap:var(--space-1);flex-direction:column;flex-shrink:0;display:flex}.meta-item.svelte-1xltcby{font-size:var(--text-xs);color:var(--color-text-secondary)}.meta-item.svelte-1xltcby code:where(.svelte-1xltcby){font-family:var(--font-mono);font-size:var(--text-xs);background:var(--color-bg-tertiary);border-radius:var(--radius-sm);padding:1px 6px}.schedule-friendly.svelte-1xltcby{font-weight:var(--font-medium);color:var(--color-text)}.meta-tz.svelte-1xltcby{color:var(--color-text-tertiary)}.badge-type.svelte-1xltcby{background:var(--color-bg-tertiary);color:var(--color-text-secondary)}.automation-footer.svelte-1xltcby{justify-content:space-between;align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-4);border-top:1px solid var(--color-border);background:var(--color-bg-tertiary);display:flex}.automation-actions.svelte-1xltcby{gap:var(--space-1);display:flex}.task-editor.svelte-1xltcby{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg-secondary);padding:var(--space-4);margin-bottom:var(--space-4);gap:var(--space-2);flex-direction:column;display:flex}.task-editor-head.svelte-1xltcby{flex-direction:column;gap:2px;display:flex}.task-editor-name.svelte-1xltcby{font-family:var(--font-mono);font-size:var(--text-sm);font-weight:var(--font-semibold)}.task-editor-hint.svelte-1xltcby{font-size:var(--text-xs);color:var(--color-text-secondary)}.task-editor-area.svelte-1xltcby{width:100%;font-family:var(--font-mono);font-size:var(--text-sm);border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-bg);color:var(--color-text);padding:var(--space-3);resize:vertical;line-height:1.5}.task-editor-actions.svelte-1xltcby{justify-content:flex-end;gap:var(--space-2);display:flex}.automation-file.svelte-1xltcby{font-size:var(--text-xs);font-family:var(--font-mono);color:var(--color-text-tertiary)}.empty-state-hint.svelte-1xltcby{font-size:var(--text-xs);color:var(--color-text-tertiary);margin-top:calc(-1 * var(--space-2))}.empty-state-btn.svelte-1xltcby{margin-top:var(--space-2)}.empty-state-hint.svelte-1xltcby code:where(.svelte-1xltcby){font-family:var(--font-mono);font-size:var(--text-xs);background:var(--color-bg-tertiary);border-radius:var(--radius-sm);padding:1px 6px}.text-danger.svelte-1xltcby{color:var(--color-danger)}@media (width<=768px){.automation-row.svelte-1xltcby{flex-direction:column}.automation-meta.svelte-1xltcby{align-items:flex-start;gap:var(--space-3);flex-direction:row}}.add-search.svelte-1ykz2x6{width:100%;margin-bottom:var(--space-3)}.pick-list.svelte-1ykz2x6{margin:0 calc(var(--space-5) * -1) calc(var(--space-5) * -1)}.provider-pick.svelte-1ykz2x6{align-items:center;gap:var(--space-3);width:100%;padding:var(--space-3) var(--space-5);border:none;border-bottom:1px solid var(--color-bg-tertiary);cursor:pointer;text-align:left;background:0 0;font-family:inherit;display:flex}.provider-pick.svelte-1ykz2x6:hover{background:var(--color-surface-hover)}.provider-pick--custom.svelte-1ykz2x6{border-top:1px solid var(--color-border);color:var(--color-primary)}.provider-name.svelte-1ykz2x6{font-size:var(--text-sm);font-weight:var(--font-medium);color:var(--color-text);flex:1}.provider-pick--custom.svelte-1ykz2x6 .provider-name:where(.svelte-1ykz2x6){color:var(--color-primary)}.provider-meta.svelte-1ykz2x6{font-size:var(--text-xs);color:var(--color-text-tertiary)}.empty.svelte-1ykz2x6{padding:var(--space-6) var(--space-5);text-align:center;color:var(--color-text-tertiary);font-size:var(--text-sm)}.field-error.svelte-353jzw{font-size:var(--text-xs);color:var(--color-danger)}.connect-back.svelte-1bnolke{border-radius:var(--radius-sm);width:32px;height:32px;color:var(--color-text-secondary);font-size:var(--text-lg);cursor:pointer;background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;padding:0;display:inline-flex}.connect-back.svelte-1bnolke:hover{background:var(--color-surface-hover);color:var(--color-text)}.connect-back.svelte-1bnolke:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.auth-method-group.svelte-1bnolke{gap:var(--space-2);flex-direction:column;display:flex}.auth-method-card.svelte-1bnolke{gap:var(--space-1);padding:var(--space-3) var(--space-4);background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-md);cursor:pointer;text-align:left;transition:border-color var(--transition-fast), background var(--transition-fast);flex-direction:column;font-family:inherit;display:flex}.auth-method-card.svelte-1bnolke:hover{border-color:var(--color-border-hover);background:var(--color-surface-hover)}.method-label.svelte-1bnolke{font-size:var(--text-sm);font-weight:var(--font-medium);color:var(--color-text)}.method-type.svelte-1bnolke{font-size:var(--text-xs);color:var(--color-text-tertiary)}.form-stack.svelte-1btkq49{gap:var(--space-4);flex-direction:column;display:flex}.optional.svelte-1btkq49{font-weight:var(--font-medium);color:var(--color-text-tertiary);font-size:var(--text-xs)}.result-list.svelte-15y8pah{padding-left:var(--space-5);gap:var(--space-1);margin:0 0 var(--space-3);flex-direction:column;list-style:outside;display:flex}.result-list.svelte-15y8pah li:where(.svelte-15y8pah){font-size:var(--text-sm);color:var(--color-text)}.result-list.svelte-15y8pah code:where(.svelte-15y8pah){font-family:var(--font-mono);font-size:var(--text-xs);color:var(--color-text-secondary);background:var(--color-bg-tertiary);border-radius:var(--radius-sm);padding:1px 6px}.muted.svelte-15y8pah{font-size:var(--text-xs);color:var(--color-text-tertiary);margin-left:var(--space-2)}.feedback.inline.svelte-19zt4ct{margin:var(--space-3) var(--space-5);justify-content:space-between}.provider-row.svelte-19zt4ct{align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-5);border-bottom:1px solid var(--color-bg-tertiary);display:flex}.model-defaults.svelte-19zt4ct{gap:var(--space-4);padding:var(--space-4) var(--space-5);border-bottom:1px solid var(--color-border);background:var(--color-bg-secondary);grid-template-columns:1fr 1fr;display:grid}.model-field.svelte-19zt4ct{gap:var(--space-1);flex-direction:column;display:flex}.model-error.svelte-19zt4ct{font-size:var(--text-xs);color:var(--color-danger);grid-column:1/-1;margin:0}.provider-id.svelte-19zt4ct{align-items:center;gap:var(--space-2);flex:1;min-width:0;display:flex}.provider-name.svelte-19zt4ct{font-size:var(--text-sm);font-weight:var(--font-medium);color:var(--color-text)}.empty-hint.svelte-19zt4ct{color:var(--color-text-tertiary)}.controls.svelte-coqj2u{align-items:flex-end;gap:var(--space-4);padding:var(--space-4) var(--space-5);border-bottom:1px solid var(--color-border);background:var(--color-bg-secondary);flex-wrap:wrap;display:flex}.control-group.svelte-coqj2u{gap:var(--space-1);flex-direction:column;display:flex}.control-group--toggle.svelte-coqj2u{justify-content:flex-end}.control-label.svelte-coqj2u{font-size:var(--text-xs);font-weight:var(--font-medium);color:var(--color-text-secondary);text-transform:none}.control-input.svelte-coqj2u{height:32px;padding:0 var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg);color:var(--color-text);font-size:var(--text-sm);min-width:140px;font-family:inherit}.control-input.svelte-coqj2u:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-subtle);outline:none}.toggle-label.svelte-coqj2u{align-items:center;gap:var(--space-2);font-size:var(--text-sm);color:var(--color-text-secondary);cursor:pointer;height:32px;display:flex}.toggle-label.svelte-coqj2u input:where(.svelte-coqj2u){accent-color:var(--color-primary)}.log-output.svelte-coqj2u{font-family:var(--font-mono);font-size:var(--text-xs);color:var(--color-text);background:var(--color-bg);padding:var(--space-4) var(--space-5);white-space:pre-wrap;word-break:break-all;tab-size:4;max-height:600px;margin:0;line-height:1.6;overflow-y:auto}.error-banner.svelte-coqj2u{padding:var(--space-3) var(--space-5);background:var(--color-danger-bg);border-bottom:1px solid var(--color-danger-border,#ff6b6b40);color:var(--color-danger);font-size:var(--text-sm)}@media (width<=768px){.controls.svelte-coqj2u{flex-direction:column;align-items:stretch}.control-input.svelte-coqj2u{min-width:unset;width:100%}.log-output.svelte-coqj2u{max-height:400px;font-size:var(--text-xs)}}.panel-header.svelte-epscb2{margin-bottom:var(--space-4);justify-content:space-between;align-items:center;display:flex}.section-note.svelte-epscb2{font-size:var(--text-sm);color:var(--color-text-secondary);margin:0 0 var(--space-4)}.error-banner.svelte-epscb2{background:var(--color-danger-subtle,#ef44441a);color:var(--color-danger,#ef4444);padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);margin-bottom:var(--space-4)}.empty-note.svelte-epscb2{font-size:var(--text-sm);color:var(--color-text-secondary)}.mono.svelte-epscb2{font-family:var(--font-mono);font-size:var(--text-sm)}.secrets-layout.svelte-epscb2{gap:var(--space-4);grid-template-columns:minmax(16rem,22rem) 1fr;align-items:start;display:grid}@media (width<=720px){.secrets-layout.svelte-epscb2{grid-template-columns:1fr}}.secrets-list.svelte-epscb2{gap:var(--space-1);flex-direction:column;display:flex}.secret-row.svelte-epscb2{align-items:center;gap:var(--space-1);display:flex}.secret-row.active.svelte-epscb2 .secret-name:where(.svelte-epscb2){border-color:var(--color-primary,#6366f1)}.secret-name.svelte-epscb2{justify-content:space-between;align-items:center;gap:var(--space-2);text-align:left;padding:var(--space-2) var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-bg-secondary);color:var(--color-text);cursor:pointer;flex:1;display:flex}.secret-name.svelte-epscb2:hover{background:var(--color-bg-tertiary,var(--color-bg-secondary))}.secret-size.svelte-epscb2{font-size:var(--text-xs);color:var(--color-text-secondary);flex-shrink:0}.new-secret.svelte-epscb2{gap:var(--space-1);margin-top:var(--space-3);flex-direction:column;display:flex}.new-secret-label.svelte-epscb2{font-size:var(--text-xs);font-weight:var(--font-medium);color:var(--color-text-secondary)}.new-secret-row.svelte-epscb2{gap:var(--space-2);flex-wrap:wrap;display:flex}.secrets-editor.svelte-epscb2{min-width:0}.editor-head.svelte-epscb2{margin-bottom:var(--space-2);justify-content:space-between;align-items:center;display:flex}.reveal-toggle.svelte-epscb2{align-items:center;gap:var(--space-1);font-size:var(--text-xs);color:var(--color-text-secondary);display:flex}.editor-area.svelte-epscb2{width:100%;font-family:var(--font-mono);font-size:var(--text-sm);resize:vertical}.editor-area.masked.svelte-epscb2{-webkit-text-security:disc}.editor-actions.svelte-epscb2{justify-content:flex-end;gap:var(--space-2);margin-top:var(--space-2);display:flex}.editor-empty.svelte-epscb2{justify-content:center;align-items:center;gap:var(--space-3);padding:var(--space-8) var(--space-4);color:var(--color-text-secondary);text-align:center;border:1px dashed var(--color-border);border-radius:var(--radius-md);flex-direction:column;min-height:12rem;display:flex}.editor-empty.svelte-epscb2 svg:where(.svelte-epscb2){opacity:.4}.editor-empty.svelte-epscb2 p:where(.svelte-epscb2){font-size:var(--text-sm);max-width:24rem;margin:0}.input-with-toggle.svelte-176sy43{align-items:stretch;gap:var(--space-2);display:flex}.control-input.svelte-176sy43{font-size:var(--text-sm);color:var(--color-text);background:var(--color-input-bg,var(--color-bg));border:1px solid var(--color-border);border-radius:var(--radius-sm);padding:var(--space-2) var(--space-3);flex:auto;min-width:0}.control-input.svelte-176sy43:focus{outline:2px solid var(--color-primary);outline-offset:1px}.btn-icon.svelte-176sy43{padding:0 var(--space-3);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);min-height:38px;color:var(--color-text-secondary);font-size:var(--text-xs);font-weight:var(--font-medium);cursor:pointer;transition:background var(--transition-fast), color var(--transition-fast);flex-shrink:0}.btn-icon.svelte-176sy43:hover:not(:disabled){background:var(--color-surface-hover);color:var(--color-text)}.btn-icon.svelte-176sy43:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.btn-icon.svelte-176sy43:disabled{opacity:.6;cursor:not-allowed}.config-section.svelte-y5k1u8{gap:var(--space-3);flex-direction:column;display:flex}.section-title.svelte-y5k1u8{font-size:var(--text-sm);font-weight:var(--font-semibold);color:var(--color-text);padding-bottom:var(--space-2);border-bottom:1px solid var(--color-border);margin:0}.section-note.svelte-y5k1u8{font-size:var(--text-sm);color:var(--color-text-secondary);max-width:72ch;margin:0}.controls--grid.svelte-y5k1u8{gap:var(--space-4);grid-template-columns:repeat(auto-fit,minmax(220px,1fr));display:grid}.control-group.svelte-y5k1u8{gap:var(--space-2);flex-direction:column;min-width:0;display:flex}.control-group--wide.svelte-y5k1u8{grid-column:1/-1}.control-label.svelte-y5k1u8{font-size:var(--text-sm);font-weight:var(--font-medium);color:var(--color-text)}.control-input.svelte-y5k1u8{font-size:var(--text-sm);color:var(--color-text);background:var(--color-input-bg,var(--color-bg));border:1px solid var(--color-border);border-radius:var(--radius-sm);padding:var(--space-2) var(--space-3);width:100%}.control-input--narrow.svelte-y5k1u8{max-width:8rem}.control-input.svelte-y5k1u8:focus{outline:2px solid var(--color-primary);outline-offset:1px}.config-section.svelte-gfn07p{gap:var(--space-3);flex-direction:column;display:flex}.section-title.svelte-gfn07p{font-size:var(--text-sm);font-weight:var(--font-semibold);color:var(--color-text);padding-bottom:var(--space-2);border-bottom:1px solid var(--color-border);margin:0}.section-note.svelte-gfn07p{font-size:var(--text-sm);color:var(--color-text-secondary);max-width:72ch;margin:0}.controls--grid.svelte-gfn07p{gap:var(--space-4);grid-template-columns:repeat(auto-fit,minmax(220px,1fr));display:grid}.control-group.svelte-gfn07p{gap:var(--space-2);flex-direction:column;min-width:0;display:flex}.control-group--wide.svelte-gfn07p{grid-column:1/-1}.control-label.svelte-gfn07p{font-size:var(--text-sm);font-weight:var(--font-medium);color:var(--color-text)}.control-input.svelte-gfn07p{font-size:var(--text-sm);color:var(--color-text);background:var(--color-input-bg,var(--color-bg));border:1px solid var(--color-border);border-radius:var(--radius-sm);padding:var(--space-2) var(--space-3);width:100%}.control-input--narrow.svelte-gfn07p{max-width:8rem}.control-input.svelte-gfn07p:focus{outline:2px solid var(--color-primary);outline-offset:1px}.adv-details.svelte-gfn07p{border:1px solid var(--color-border);border-radius:var(--radius-md);margin-top:var(--space-4)}.adv-summary.svelte-gfn07p{cursor:pointer;padding:var(--space-3) var(--space-4);font-size:var(--text-sm);font-weight:var(--font-medium);color:var(--color-text)}.adv-summary.svelte-gfn07p:hover{background:var(--color-surface-hover)}.adv-details[open].svelte-gfn07p .adv-summary:where(.svelte-gfn07p){border-bottom:1px solid var(--color-border)}.adv-body.svelte-gfn07p{padding:var(--space-4)}.profile-row.svelte-zzh9mp{align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-bg-secondary);display:flex}.profile-row-name.svelte-zzh9mp{font-size:var(--text-sm);font-weight:var(--font-medium);color:var(--color-text);text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.profile-row-actions.svelte-zzh9mp{gap:var(--space-2);flex-shrink:0;display:flex}.badge.svelte-zzh9mp{font-size:var(--text-xs);padding:2px var(--space-2);border-radius:var(--radius-sm);background:var(--color-bg-tertiary,var(--color-bg-secondary));color:var(--color-text-secondary);border:1px solid var(--color-border);white-space:nowrap;flex-shrink:0}.badge--default.svelte-zzh9mp{background:var(--color-primary-subtle,#6366f11a);color:var(--color-primary,#6366f1);border-color:var(--color-primary-border,#6366f14d)}.config-section.svelte-zwwvog{gap:var(--space-4);flex-direction:column;display:flex}.section-title.svelte-zwwvog{font-size:var(--text-sm);font-weight:var(--font-semibold);color:var(--color-text);padding-bottom:var(--space-2);border-bottom:1px solid var(--color-border);margin:0}.section-title-aka.svelte-zwwvog{font-size:var(--text-xs);font-weight:var(--font-normal);color:var(--color-text-secondary);font-family:var(--font-mono);margin-left:var(--space-2)}.section-note.svelte-zwwvog{font-size:var(--text-sm);color:var(--color-text-secondary);margin:0}.empty-note.svelte-zwwvog{font-size:var(--text-sm);color:var(--color-text-secondary);margin:0;font-style:italic}.profile-empty.svelte-zwwvog{align-items:flex-start;gap:var(--space-2);margin-bottom:var(--space-2);color:var(--color-text-secondary);flex-direction:column;display:flex}.profile-empty.svelte-zwwvog svg:where(.svelte-zwwvog){opacity:.45}.profile-list.svelte-zwwvog{gap:var(--space-1);flex-direction:column;display:flex}.config-section.svelte-anyxpa{gap:var(--space-4);flex-direction:column;display:flex}.section-title.svelte-anyxpa{font-size:var(--text-sm);font-weight:var(--font-semibold);color:var(--color-text);padding-bottom:var(--space-2);border-bottom:1px solid var(--color-border);margin:0}.section-title-aka.svelte-anyxpa{font-size:var(--text-xs);font-weight:var(--font-normal);color:var(--color-text-secondary);font-family:var(--font-mono);margin-left:var(--space-2)}.section-note.svelte-anyxpa{font-size:var(--text-sm);color:var(--color-text-secondary);margin:0}.empty-note.svelte-anyxpa{font-size:var(--text-sm);color:var(--color-text-secondary);margin:0;font-style:italic}.profile-empty.svelte-anyxpa{align-items:flex-start;gap:var(--space-2);margin-bottom:var(--space-2);color:var(--color-text-secondary);flex-direction:column;display:flex}.profile-empty.svelte-anyxpa svg:where(.svelte-anyxpa){opacity:.45}.profile-list.svelte-anyxpa{gap:var(--space-1);flex-direction:column;display:flex}.badge.svelte-anyxpa{font-size:var(--text-xs);padding:2px var(--space-2);border-radius:var(--radius-sm);background:var(--color-bg-tertiary,var(--color-bg-secondary));color:var(--color-text-secondary);border:1px solid var(--color-border);white-space:nowrap;flex-shrink:0}.config-section.svelte-1ngozvb{gap:var(--space-4);flex-direction:column;display:flex}.section-title.svelte-1ngozvb{font-size:var(--text-sm);font-weight:var(--font-semibold);color:var(--color-text);padding-bottom:var(--space-2);border-bottom:1px solid var(--color-border);margin:0}.section-title-aka.svelte-1ngozvb{font-size:var(--text-xs);font-weight:var(--font-normal);color:var(--color-text-secondary);font-family:var(--font-mono);margin-left:var(--space-2)}.section-note.svelte-1ngozvb{font-size:var(--text-sm);color:var(--color-text-secondary);margin:0}.empty-note.svelte-1ngozvb{font-size:var(--text-sm);color:var(--color-text-secondary);margin:0;font-style:italic}.profile-empty.svelte-1ngozvb{align-items:flex-start;gap:var(--space-2);margin-bottom:var(--space-2);color:var(--color-text-secondary);flex-direction:column;display:flex}.profile-empty.svelte-1ngozvb svg:where(.svelte-1ngozvb){opacity:.45}.profile-list.svelte-1ngozvb{gap:var(--space-1);flex-direction:column;display:flex}.profile-row-desc.svelte-1ngozvb{font-size:var(--text-xs);color:var(--color-text-secondary);text-overflow:ellipsis;white-space:nowrap;max-width:20rem;overflow:hidden}.controls.svelte-1gmn25z{gap:var(--space-4);flex-direction:column;display:flex}.controls--grid.svelte-1gmn25z{gap:var(--space-4);grid-template-columns:repeat(auto-fill,minmax(14rem,1fr));display:grid}.control-group.svelte-1gmn25z{gap:var(--space-1);flex-direction:column;display:flex}.control-group--wide.svelte-1gmn25z{grid-column:1/-1}.control-label.svelte-1gmn25z{font-size:var(--text-xs);font-weight:var(--font-medium);color:var(--color-text-secondary)}.control-input.svelte-1gmn25z{font-size:var(--text-sm);color:var(--color-text);background:var(--color-input-bg,var(--color-bg));border:1px solid var(--color-border);border-radius:var(--radius-sm);padding:var(--space-2) var(--space-3);width:100%}.control-input--narrow.svelte-1gmn25z{max-width:8rem}.control-input.svelte-1gmn25z:focus{outline:2px solid var(--color-primary);outline-offset:1px}.control-input.svelte-1gmn25z:disabled{opacity:.5;cursor:not-allowed}.toggle-row.svelte-1gmn25z{align-items:center;gap:var(--space-3);cursor:pointer;font-size:var(--text-sm);display:flex}.toggle-row.svelte-1gmn25z input[type=checkbox]:where(.svelte-1gmn25z){flex-shrink:0;width:1rem;height:1rem}.toggle-label.svelte-1gmn25z{font-weight:var(--font-medium);color:var(--color-text)}.toggle-hint.svelte-1gmn25z{color:var(--color-text-secondary);font-size:var(--text-xs)}.feat-hint.svelte-1gmn25z{font-size:var(--text-xs);color:var(--color-text-secondary)}.drawer-scrim.svelte-1gmn25z{z-index:200;background:#00000059;position:fixed;inset:0}.drawer.svelte-1gmn25z{background:var(--color-bg);border-left:1px solid var(--color-border);z-index:201;flex-direction:column;width:min(640px,92vw);animation:.2s cubic-bezier(.16,1,.3,1) svelte-1gmn25z-drawer-in;display:flex;position:fixed;top:0;bottom:0;right:0;box-shadow:-4px 0 32px #0003}@keyframes svelte-1gmn25z-drawer-in{0%{transform:translate(100%)}to{transform:translate(0)}}.drawer-header.svelte-1gmn25z{padding:var(--space-4) var(--space-6);border-bottom:1px solid var(--color-border);flex-shrink:0;justify-content:space-between;align-items:center;display:flex}.drawer-title.svelte-1gmn25z{font-size:var(--text-base);font-weight:var(--font-semibold);color:var(--color-text);margin:0}.drawer-close.svelte-1gmn25z{border-radius:var(--radius-sm);border:1px solid var(--color-border);width:2rem;height:2rem;color:var(--color-text-secondary);cursor:pointer;font-size:var(--text-sm);background:0 0;justify-content:center;align-items:center;display:flex}.drawer-close.svelte-1gmn25z:hover{background:var(--color-surface-hover);color:var(--color-text)}.drawer-body.svelte-1gmn25z{padding:var(--space-6);gap:var(--space-5);flex-direction:column;flex:1;display:flex;overflow-y:auto}.drawer-footer.svelte-1gmn25z{justify-content:flex-end;gap:var(--space-3);padding:var(--space-4) var(--space-6);border-top:1px solid var(--color-border);flex-shrink:0;display:flex}.controls.svelte-1evj0pt{gap:var(--space-4);flex-direction:column;display:flex}.controls--grid.svelte-1evj0pt{gap:var(--space-4);grid-template-columns:repeat(auto-fill,minmax(14rem,1fr));display:grid}.control-group.svelte-1evj0pt{gap:var(--space-1);flex-direction:column;display:flex}.control-group--wide.svelte-1evj0pt{grid-column:1/-1}.control-label.svelte-1evj0pt{font-size:var(--text-xs);font-weight:var(--font-medium);color:var(--color-text-secondary)}.control-input.svelte-1evj0pt{font-size:var(--text-sm);color:var(--color-text);background:var(--color-input-bg,var(--color-bg));border:1px solid var(--color-border);border-radius:var(--radius-sm);padding:var(--space-2) var(--space-3);width:100%}.control-input.svelte-1evj0pt:focus{outline:2px solid var(--color-primary);outline-offset:1px}.control-input.svelte-1evj0pt:disabled{opacity:.5;cursor:not-allowed}.drawer-scrim.svelte-1evj0pt{z-index:200;background:#00000059;position:fixed;inset:0}.drawer.svelte-1evj0pt{background:var(--color-bg);border-left:1px solid var(--color-border);z-index:201;flex-direction:column;width:min(640px,92vw);animation:.2s cubic-bezier(.16,1,.3,1) svelte-1evj0pt-drawer-in;display:flex;position:fixed;top:0;bottom:0;right:0;box-shadow:-4px 0 32px #0003}@keyframes svelte-1evj0pt-drawer-in{0%{transform:translate(100%)}to{transform:translate(0)}}.drawer-header.svelte-1evj0pt{padding:var(--space-4) var(--space-6);border-bottom:1px solid var(--color-border);flex-shrink:0;justify-content:space-between;align-items:center;display:flex}.drawer-title.svelte-1evj0pt{font-size:var(--text-base);font-weight:var(--font-semibold);color:var(--color-text);margin:0}.drawer-close.svelte-1evj0pt{border-radius:var(--radius-sm);border:1px solid var(--color-border);width:2rem;height:2rem;color:var(--color-text-secondary);cursor:pointer;font-size:var(--text-sm);background:0 0;justify-content:center;align-items:center;display:flex}.drawer-close.svelte-1evj0pt:hover{background:var(--color-surface-hover);color:var(--color-text)}.drawer-body.svelte-1evj0pt{padding:var(--space-6);gap:var(--space-5);flex-direction:column;flex:1;display:flex;overflow-y:auto}.drawer-footer.svelte-1evj0pt{justify-content:flex-end;gap:var(--space-3);padding:var(--space-4) var(--space-6);border-top:1px solid var(--color-border);flex-shrink:0;display:flex}.controls.svelte-1ndbe78{gap:var(--space-4);flex-direction:column;display:flex}.controls--grid.svelte-1ndbe78{gap:var(--space-4);grid-template-columns:repeat(auto-fill,minmax(14rem,1fr));display:grid}.control-group.svelte-1ndbe78{gap:var(--space-1);flex-direction:column;display:flex}.control-group--wide.svelte-1ndbe78{grid-column:1/-1}.control-label.svelte-1ndbe78{font-size:var(--text-xs);font-weight:var(--font-medium);color:var(--color-text-secondary)}.control-input.svelte-1ndbe78{font-size:var(--text-sm);color:var(--color-text);background:var(--color-input-bg,var(--color-bg));border:1px solid var(--color-border);border-radius:var(--radius-sm);padding:var(--space-2) var(--space-3);width:100%}.control-input--narrow.svelte-1ndbe78{max-width:8rem}.control-input.svelte-1ndbe78:focus{outline:2px solid var(--color-primary);outline-offset:1px}.control-input.svelte-1ndbe78:disabled{opacity:.5;cursor:not-allowed}.feat-name.svelte-1ndbe78{font-size:var(--text-sm);font-weight:var(--font-medium);color:var(--color-text);font-family:var(--font-mono);display:block}.feat-hint.svelte-1ndbe78{font-size:var(--text-xs);color:var(--color-text-secondary)}.proc-list.svelte-1ndbe78{gap:var(--space-2);flex-direction:column;display:flex}.proc-card.svelte-1ndbe78{border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-bg-secondary);padding:var(--space-2)}.proc-head.svelte-1ndbe78{align-items:center;gap:var(--space-2);grid-template-columns:1.5rem 1fr 9rem 11rem 7rem;display:grid}@media (width<=600px){.proc-head.svelte-1ndbe78{grid-template-columns:1.5rem 1fr}.proc-head.svelte-1ndbe78>:where(.svelte-1ndbe78):nth-child(n+3){grid-column:1/-1}}.proc-head.svelte-1ndbe78 input[type=checkbox]:where(.svelte-1ndbe78){width:1rem;height:1rem}.proc-name.svelte-1ndbe78{min-width:0}.proc-adv.svelte-1ndbe78{margin-top:var(--space-2)}.proc-adv.svelte-1ndbe78>summary:where(.svelte-1ndbe78){cursor:pointer;font-size:var(--text-xs);color:var(--color-text-secondary);-webkit-user-select:none;user-select:none}.proc-adv-grid.svelte-1ndbe78{gap:var(--space-2);margin-top:var(--space-2);grid-template-columns:repeat(auto-fill,minmax(12rem,1fr));display:grid}.adv-field.svelte-1ndbe78{flex-direction:column;gap:2px;display:flex}.adv-field.svelte-1ndbe78>span:where(.svelte-1ndbe78){font-size:var(--text-xs);color:var(--color-text-secondary)}.adv-field--check.svelte-1ndbe78{align-items:center;gap:var(--space-2);flex-direction:row}.adv-field--wide.svelte-1ndbe78{grid-column:1/-1}.adv-sublabel.svelte-1ndbe78{font-size:var(--text-xs);font-weight:var(--font-medium);color:var(--color-text-secondary);margin-bottom:2px;display:block}.drawer-scrim.svelte-1ndbe78{z-index:200;background:#00000059;position:fixed;inset:0}.drawer.svelte-1ndbe78{background:var(--color-bg);border-left:1px solid var(--color-border);z-index:201;flex-direction:column;width:min(640px,92vw);animation:.2s cubic-bezier(.16,1,.3,1) svelte-1ndbe78-drawer-in;display:flex;position:fixed;top:0;bottom:0;right:0;box-shadow:-4px 0 32px #0003}@keyframes svelte-1ndbe78-drawer-in{0%{transform:translate(100%)}to{transform:translate(0)}}.drawer-header.svelte-1ndbe78{padding:var(--space-4) var(--space-6);border-bottom:1px solid var(--color-border);flex-shrink:0;justify-content:space-between;align-items:center;display:flex}.drawer-title.svelte-1ndbe78{font-size:var(--text-base);font-weight:var(--font-semibold);color:var(--color-text);margin:0}.drawer-close.svelte-1ndbe78{border-radius:var(--radius-sm);border:1px solid var(--color-border);width:2rem;height:2rem;color:var(--color-text-secondary);cursor:pointer;font-size:var(--text-sm);background:0 0;justify-content:center;align-items:center;display:flex}.drawer-close.svelte-1ndbe78:hover{background:var(--color-surface-hover);color:var(--color-text)}.drawer-body.svelte-1ndbe78{padding:var(--space-6);gap:var(--space-5);flex-direction:column;flex:1;display:flex;overflow-y:auto}.drawer-footer.svelte-1ndbe78{justify-content:flex-end;gap:var(--space-3);padding:var(--space-4) var(--space-6);border-top:1px solid var(--color-border);flex-shrink:0;display:flex}.k-tabs.svelte-19wb2va{scrollbar-width:none;gap:var(--space-1);padding:var(--space-1);background:var(--color-bg-secondary);border:1px solid var(--color-border);border-radius:var(--radius-md);margin-bottom:var(--space-2);flex-wrap:nowrap;display:flex;overflow-x:auto}.k-tabs.svelte-19wb2va::-webkit-scrollbar{display:none}.k-tab.svelte-19wb2va{min-height:2.75rem;padding:var(--space-2) var(--space-3);font-size:var(--text-sm);font-weight:var(--font-normal,400);color:var(--color-text-secondary);border-radius:var(--radius-sm);cursor:pointer;white-space:nowrap;background:0 0;border:1px solid #0000;flex:1 0 auto;transition:background .15s,color .15s}.k-tab.svelte-19wb2va:hover{background:var(--color-surface-hover,#0000000d);color:var(--color-text)}.k-tab.svelte-19wb2va:focus-visible{outline:2px solid var(--color-primary);outline-offset:1px}.k-tab--active.svelte-19wb2va{background:var(--color-bg);border-color:var(--color-border);color:var(--color-text);font-weight:var(--font-semibold);box-shadow:0 1px 3px #00000014}@media (width<=400px){.k-tab.svelte-19wb2va{font-size:var(--text-xs);padding:var(--space-2)}}.panel-header.svelte-19wb2va{margin-bottom:var(--space-6);z-index:10;background:var(--color-bg);padding-top:var(--space-2);padding-bottom:var(--space-4);border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:center;display:flex;position:sticky;top:0}.panel-header.svelte-19wb2va h2:where(.svelte-19wb2va){font-size:var(--text-lg);font-weight:var(--font-semibold);color:var(--color-text);margin:0}.panel-header-actions.svelte-19wb2va{gap:var(--space-2);display:flex}.panel-body.svelte-19wb2va{gap:var(--space-8);flex-direction:column;display:flex}.section-note--lead.svelte-19wb2va{font-size:var(--text-sm);color:var(--color-text-secondary);max-width:72ch;margin:0 0 var(--space-4)}.section-note.svelte-19wb2va{font-size:var(--text-sm);color:var(--color-text-secondary);margin:0}.error-banner.svelte-19wb2va{align-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-4);background:var(--color-error-bg,#dc262614);border:1px solid var(--color-error-border,#dc262640);border-radius:var(--radius-md);font-size:var(--text-sm);color:var(--color-error,#dc2626);margin-bottom:var(--space-4);display:flex}.panel-header.svelte-fv9i73{margin-bottom:var(--space-5)}.panel-header.svelte-fv9i73 h2:where(.svelte-fv9i73){font-size:var(--text-lg);font-weight:var(--font-semibold);color:var(--color-text)}.config-section.svelte-fv9i73{gap:var(--space-3);flex-direction:column;display:flex}.section-note.svelte-fv9i73{font-size:var(--text-sm);color:var(--color-text-secondary);max-width:68ch;margin:0}.hs-restart.svelte-fv9i73{font-size:var(--text-sm);color:var(--color-badge-warning-fg);font-weight:var(--font-medium);margin:0}.hs-loading.svelte-fv9i73{align-items:center;gap:var(--space-2);color:var(--color-text-secondary);font-size:var(--text-sm);display:flex}.controls--grid.svelte-fv9i73{gap:var(--space-4);grid-template-columns:1fr;display:grid}.control-group.svelte-fv9i73{gap:var(--space-2);flex-direction:column;display:flex}.control-label.svelte-fv9i73{font-size:var(--text-sm);font-weight:var(--font-medium);color:var(--color-text)}.control-label--checkbox.svelte-fv9i73{align-items:center;gap:var(--space-2);font-weight:var(--font-normal);flex-direction:row}.host-akm-status.svelte-fv9i73{align-items:center;gap:var(--space-3);flex-wrap:wrap;display:flex}.host-akm-path.svelte-fv9i73{font-size:var(--text-xs);color:var(--color-text-secondary)}.host-akm-actions.svelte-fv9i73{gap:var(--space-2);flex-flow:wrap}.engine-section.svelte-1b9l1t7{gap:var(--space-3);flex-direction:column;display:flex}.engine-heading.svelte-1b9l1t7{font-size:var(--text-sm);font-weight:var(--font-semibold);color:var(--color-text);margin:0}.engine-subheading.svelte-1b9l1t7{font-size:var(--text-xs);color:var(--color-text-secondary);margin:0}.tts-extras.svelte-1b9l1t7{gap:var(--space-3);margin-top:var(--space-3);padding-top:var(--space-3);border-top:1px solid var(--color-border);flex-direction:column;display:flex}.test-voice-row.svelte-1b9l1t7{align-items:center;gap:var(--space-3);display:flex}.test-result.svelte-1b9l1t7{font-size:var(--text-xs)}.test-result--ok.svelte-1b9l1t7{color:var(--color-success,#16a34a)}.test-result--err.svelte-1b9l1t7{color:var(--color-error,#dc2626)}.auto-speak-toggle.svelte-1b9l1t7{align-items:center;gap:var(--space-2);font-size:var(--text-sm);color:var(--color-text);cursor:pointer;display:flex}.auto-speak-toggle.svelte-1b9l1t7 input[type=checkbox]:where(.svelte-1b9l1t7){cursor:pointer;width:16px;height:16px}.engine-section.svelte-1qwlk8j{gap:var(--space-3);flex-direction:column;display:flex}.engine-heading.svelte-1qwlk8j{font-size:var(--text-sm);font-weight:var(--font-semibold);color:var(--color-text);margin:0}.engine-subheading.svelte-1qwlk8j{font-size:var(--text-xs);color:var(--color-text-secondary);margin:0}.engine-section.svelte-1r7l91t{gap:var(--space-3);flex-direction:column;display:flex}.engine-heading.svelte-1r7l91t{font-size:var(--text-sm);font-weight:var(--font-semibold);color:var(--color-text);margin:0}.panel-header.svelte-nokcxu{z-index:10;background:var(--color-surface);padding:var(--space-4) var(--space-5);border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:center;margin-bottom:0;display:flex;position:sticky;top:0}.panel-header.svelte-nokcxu h2:where(.svelte-nokcxu){font-size:var(--text-lg);font-weight:var(--font-semibold);color:var(--color-text);margin:0}.panel-header-actions.svelte-nokcxu{gap:var(--space-2);display:flex}.panel-body.svelte-nokcxu{gap:var(--space-6);flex-direction:column;display:flex}.section-desc.svelte-nokcxu{font-size:var(--text-sm);color:var(--color-text-secondary);margin:0}.error-banner.svelte-nokcxu{align-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-4);background:var(--color-error-bg,#dc262614);border:1px solid var(--color-error-border,#dc262640);border-radius:var(--radius-md);font-size:var(--text-sm);color:var(--color-error,#dc2626);margin-bottom:var(--space-4);display:flex}main.svelte-1jef3w8{padding:var(--space-6) var(--space-6) var(--space-12)}@media (width<=768px){main.svelte-1jef3w8{padding:var(--space-4) var(--space-4) var(--space-8)}}
|
|
Binary file
|
|
Binary file
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
.advanced-layout.svelte-1z0msvj{height:calc(100dvh - var(--nav-height));background:var(--color-bg);flex-direction:column;width:100%;display:flex}.opencode-frame.svelte-1z0msvj{border:none;flex:1;width:100%;display:block}
|
|
Binary file
|
|
Binary file
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
.thread-divider.svelte-h4cdis{align-items:center;gap:var(--space-3);padding:var(--space-4) 0;color:var(--color-text-tertiary);font-size:var(--text-xs);font-weight:var(--font-medium);text-transform:uppercase;letter-spacing:.06em;display:flex}.divider-line.svelte-h4cdis{background:var(--color-border);flex:1;height:1px}.divider-label.svelte-h4cdis{padding:0 var(--space-2);background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-full);flex-shrink:0}.message.svelte-h4cdis{gap:var(--space-1);flex-direction:column;width:100%;max-width:100%;display:flex}.message-user.svelte-h4cdis{align-items:flex-end}.message-assistant.svelte-h4cdis{align-items:flex-start}.message-bubble.svelte-h4cdis{max-width:85%;padding:var(--space-3) var(--space-4);border-radius:var(--radius-lg);line-height:var(--leading-normal)}.message-user.svelte-h4cdis .message-bubble:where(.svelte-h4cdis){color:#f3f4f6;border-bottom-right-radius:var(--radius-sm);background:#2c3748}[data-theme=dark] .message-user.svelte-h4cdis .message-bubble:where(.svelte-h4cdis){color:#f3f4f6;background:#3d4f66}.message-assistant.svelte-h4cdis .message-bubble:where(.svelte-h4cdis){background:var(--color-bg-tertiary);color:var(--color-text);border:1px solid var(--color-border);border-bottom-left-radius:var(--radius-sm)}.message-text.svelte-h4cdis{font-size:var(--text-base);word-break:break-word}.message-user.svelte-h4cdis .message-text:where(.svelte-h4cdis):not(.markdown-body){white-space:pre-wrap}.markdown-body.svelte-h4cdis p{margin:0 0 var(--space-2) 0}.markdown-body.svelte-h4cdis p:last-child{margin-bottom:0}.markdown-body.svelte-h4cdis ul,.markdown-body.svelte-h4cdis ol{margin:0 0 var(--space-2) 0;padding-left:var(--space-5)}.markdown-body.svelte-h4cdis li{margin:var(--space-1) 0}.markdown-body.svelte-h4cdis li>p{margin:0}.markdown-body.svelte-h4cdis code{font-family:var(--font-mono);background:var(--color-bg);border:1px solid var(--color-border);border-radius:4px;padding:1px 6px;font-size:.9em}.markdown-body.svelte-h4cdis pre{margin:var(--space-2) 0;padding:var(--space-3);background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-md);font-size:.9em;overflow-x:auto}.markdown-body.svelte-h4cdis pre code{background:0 0;border:0;padding:0}.markdown-body.svelte-h4cdis a{color:var(--color-primary);text-decoration:underline}.markdown-body.svelte-h4cdis a:hover{text-decoration:none}.markdown-body.svelte-h4cdis blockquote{margin:var(--space-2) 0;padding-left:var(--space-3);border-left:3px solid var(--color-border);color:var(--color-text-secondary)}.markdown-body.svelte-h4cdis h1,.markdown-body.svelte-h4cdis h2,.markdown-body.svelte-h4cdis h3,.markdown-body.svelte-h4cdis h4{margin:var(--space-3) 0 var(--space-2);font-weight:var(--font-bold);line-height:var(--leading-tight,1.25)}.markdown-body.svelte-h4cdis h1{font-size:1.4em}.markdown-body.svelte-h4cdis h2{font-size:1.25em}.markdown-body.svelte-h4cdis h3{font-size:1.1em}.markdown-body.svelte-h4cdis h4{font-size:1em}.markdown-body.svelte-h4cdis hr{margin:var(--space-3) 0;border:0;border-top:1px solid var(--color-border)}.markdown-body.svelte-h4cdis table{border-collapse:collapse;margin:var(--space-2) 0;font-size:.9em}.markdown-body.svelte-h4cdis th,.markdown-body.svelte-h4cdis td{border:1px solid var(--color-border);padding:var(--space-1) var(--space-2);text-align:left}.message-meta.svelte-h4cdis{margin-top:var(--space-1);font-size:var(--text-xs);color:var(--color-text-secondary)}.chat-input-row.svelte-j7h4bp{padding:var(--space-3) var(--space-4);border-top:1px solid var(--color-border);background:var(--color-bg);justify-content:center;display:flex}.input-area.svelte-j7h4bp{align-items:flex-end;gap:var(--space-2);width:100%;max-width:var(--chat-column);display:flex}textarea.svelte-j7h4bp{min-height:40px;max-height:160px;padding:var(--space-2) var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg);color:var(--color-text);font-family:var(--font-sans);font-size:var(--text-base);line-height:var(--leading-normal);resize:none;transition:border-color var(--transition-fast);flex:1;overflow-y:auto}textarea.svelte-j7h4bp:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-subtle);outline:none}textarea.svelte-j7h4bp:disabled{opacity:.65;cursor:not-allowed}.send-btn.svelte-j7h4bp{background:var(--color-primary);border-radius:var(--radius-md);color:#000;cursor:pointer;width:44px;height:44px;transition:background var(--transition-fast);border:none;flex-shrink:0;justify-content:center;align-items:center;padding:0;display:inline-flex}.send-btn.svelte-j7h4bp:hover:not(:disabled){background:var(--color-primary-hover)}.send-btn.svelte-j7h4bp:disabled{opacity:.45;cursor:not-allowed}.chat-toolbar.svelte-74fli4{justify-content:flex-end;align-items:center;gap:var(--space-3);min-height:var(--chat-toolbar-height);padding:var(--space-2) var(--space-4);border-bottom:1px solid var(--color-border);background:var(--color-bg-secondary);flex-wrap:wrap;display:flex}.new-chat.svelte-74fli4{align-items:center;gap:var(--space-2);height:36px;padding:0 var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);color:var(--color-text);font-size:var(--text-sm);font-weight:var(--font-medium);cursor:pointer;white-space:nowrap;transition:background var(--transition-fast), border-color var(--transition-fast);flex-shrink:0;display:inline-flex}.new-chat.svelte-74fli4:hover:not(:disabled){background:var(--color-surface-hover);border-color:var(--color-border-hover)}.new-chat.svelte-74fli4:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.new-chat.svelte-74fli4:disabled{opacity:.6;cursor:default}.new-chat.svelte-74fli4 svg:where(.svelte-74fli4){flex-shrink:0}@media (width<=480px){.chat-toolbar.svelte-74fli4{padding:var(--space-2) var(--space-3)}}.chat-layout.svelte-23dtxz{height:calc(100dvh - var(--nav-height));flex-direction:column;margin:0;display:flex}.messages-area.svelte-23dtxz{gap:var(--space-4);padding:var(--space-5) var(--space-4);scroll-behavior:smooth;flex-direction:column;flex:1;align-items:center;display:flex;overflow-y:auto}.messages-area.svelte-23dtxz>*{width:100%;max-width:var(--chat-column)}.empty-state.svelte-23dtxz{text-align:center;color:var(--color-text-secondary);font-size:var(--text-base);padding:var(--space-8);margin:auto}.session-loading.svelte-23dtxz{align-items:center;gap:var(--space-2);color:var(--color-text-secondary);font-size:var(--text-sm);padding:var(--space-4);margin:auto;display:flex}.chat-error-banner.svelte-23dtxz{align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-4);background:var(--color-danger-bg);font-size:var(--text-sm);color:var(--color-danger);border-top:1px solid #fa525240;display:flex}.chat-error-banner.svelte-23dtxz span:where(.svelte-23dtxz):first-child{flex:1}.reconnect-btn.svelte-23dtxz{font-size:var(--text-xs);font-weight:var(--font-semibold);border:1px solid var(--color-danger);border-radius:var(--radius-full);color:var(--color-danger);cursor:pointer;white-space:nowrap;transition:all var(--transition-fast);background:0 0;padding:3px 10px}.reconnect-btn.svelte-23dtxz:hover{background:var(--color-danger);color:#fff}.dismiss-btn.svelte-23dtxz{width:24px;height:24px;color:var(--color-danger);cursor:pointer;font-size:var(--text-lg);border-radius:var(--radius-sm);background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;padding:0;line-height:1;display:inline-flex}.dismiss-btn.svelte-23dtxz:hover{background:#fa525226}@media (width<=768px){.messages-area.svelte-23dtxz{padding:var(--space-3) var(--space-4)}}
|
|
Binary file
|
|
Binary file
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
.theme-toggle.svelte-1y2534t{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);width:40px;height:40px;color:var(--color-text-secondary);cursor:pointer;transition:background var(--transition-fast), color var(--transition-fast), border-color var(--transition-fast);justify-content:center;align-items:center;padding:0;display:inline-flex}.theme-toggle.svelte-1y2534t:hover{color:var(--color-text);background:var(--color-surface-hover);border-color:var(--color-border-hover)}.theme-toggle.svelte-1y2534t:focus-visible{outline:2px solid var(--color-primary);outline-offset:-2px}.theme-toggle[aria-pressed=true].svelte-1y2534t{color:var(--color-primary);background:var(--color-bg-tertiary);border-color:var(--color-border)}.mode-switch.svelte-dn9fn0{align-items:center;gap:var(--space-1);flex-shrink:0;display:inline-flex}.mode-tab.svelte-dn9fn0{align-items:center;gap:var(--space-2);height:30px;padding:0 var(--space-2);border-radius:var(--radius-sm);color:var(--color-text-secondary);font-size:var(--text-sm);font-weight:var(--font-medium);white-space:nowrap;transition:color var(--transition-fast), background var(--transition-fast);text-decoration:none;display:inline-flex}.mode-tab.svelte-dn9fn0:hover{color:var(--color-text);background:var(--color-surface-hover)}.mode-tab.svelte-dn9fn0:focus-visible{outline:2px solid var(--color-primary);outline-offset:1px}.mode-tab.active.svelte-dn9fn0{color:var(--color-text);font-weight:var(--font-semibold);background:var(--color-surface-hover)}.mode-tab.svelte-dn9fn0 svg:where(.svelte-dn9fn0){flex-shrink:0}@media (width<=640px){.mode-tab.svelte-dn9fn0 span:where(.svelte-dn9fn0){display:none}.mode-tab.svelte-dn9fn0{padding:0 var(--space-1)}}.switcher.svelte-48xr05{position:relative}.trigger.svelte-48xr05{align-items:center;gap:var(--space-2);padding:0 var(--space-3);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md,8px);height:40px;font-size:var(--text-sm);color:var(--color-text);cursor:pointer;anchor-name:--endpoint-anchor;max-width:240px;display:inline-flex;overflow:hidden}.trigger.svelte-48xr05:hover:not(:disabled){background:var(--color-surface-hover)}.trigger.svelte-48xr05:disabled{opacity:.6;cursor:progress}.trigger-icon.svelte-48xr05{color:var(--color-text-secondary);flex-shrink:0;display:none}.dot.svelte-48xr05{background:var(--color-success,#16a34a);border-radius:50%;flex-shrink:0;width:8px;height:8px}.label.svelte-48xr05{text-overflow:ellipsis;white-space:nowrap;max-width:160px;overflow:hidden}.caret.svelte-48xr05{opacity:.6;font-size:10px}.menu.svelte-48xr05{padding:var(--space-2);position-anchor:--endpoint-anchor;position-area:block-end span-inline-start;position-try-fallbacks:flip-block;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md,8px);min-width:280px;max-width:min(360px,100vw - 24px);box-shadow:var(--shadow-lg);z-index:400;margin:6px 0 0;position:fixed}.menu-header.svelte-48xr05{padding:var(--space-2) var(--space-3);font-size:var(--text-xs);font-weight:var(--font-medium);color:var(--color-text-secondary)}.menu-item.svelte-48xr05{align-items:flex-start;gap:var(--space-2);width:100%;padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm,6px);cursor:pointer;text-align:left;font:inherit;color:var(--color-text);background:0 0;border:0;display:flex}.menu-item.svelte-48xr05:hover:not(:disabled),.menu-item.svelte-48xr05:focus-visible{background:var(--color-bg-tertiary)}.menu-item.svelte-48xr05:disabled{opacity:.6;cursor:progress}.menu-item.active.svelte-48xr05{background:var(--color-bg-tertiary)}.check.svelte-48xr05{width:14px;color:var(--color-primary);flex-shrink:0}.menu-item-text.svelte-48xr05{flex-direction:column;display:flex;overflow:hidden}.menu-item-label.svelte-48xr05{font-weight:500;font-size:var(--text-sm)}.menu-item-url.svelte-48xr05{font-size:var(--text-xs);color:var(--color-text-secondary);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.menu-divider.svelte-48xr05{height:1px;margin:var(--space-2) 0;background:var(--color-border)}.menu-item.link.svelte-48xr05{color:var(--color-primary);text-decoration:none}.picker.svelte-cihcnl{position:relative}.trigger.svelte-cihcnl{align-items:center;gap:var(--space-2);padding:0 var(--space-3);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md,8px);height:40px;font-size:var(--text-sm);color:var(--color-text);cursor:pointer;anchor-name:--session-anchor;max-width:240px;display:inline-flex;overflow:hidden}.trigger.svelte-cihcnl:hover{background:var(--color-surface-hover)}.trigger-icon.svelte-cihcnl{color:var(--color-text-secondary);flex-shrink:0}.dot.svelte-cihcnl{background:var(--color-text-tertiary);border-radius:50%;flex-shrink:0;width:6px;height:6px;transition:background .12s}.dot.connected.svelte-cihcnl{background:var(--color-success,#16a34a)}.label.svelte-cihcnl{text-overflow:ellipsis;white-space:nowrap;max-width:160px;overflow:hidden}.caret.svelte-cihcnl{opacity:.6;font-size:10px}.menu.svelte-cihcnl{padding:var(--space-2);position-anchor:--session-anchor;position-area:block-end span-inline-start;position-try-fallbacks:flip-block;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md,8px);min-width:300px;max-width:min(380px,100vw - 24px);box-shadow:var(--shadow-lg);z-index:400;margin:6px 0 0;position:fixed}.menu-header.svelte-cihcnl{padding:var(--space-2) var(--space-3);font-size:var(--text-xs);font-weight:var(--font-medium);color:var(--color-text-secondary)}.menu-item.svelte-cihcnl{align-items:flex-start;gap:var(--space-2);width:100%;padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm,6px);cursor:pointer;text-align:left;font:inherit;color:var(--color-text);background:0 0;border:0;display:flex}.menu-item.svelte-cihcnl:hover:not(:disabled),.menu-item.svelte-cihcnl:focus-visible{background:var(--color-bg-tertiary)}.menu-item.svelte-cihcnl:disabled{opacity:.6;cursor:not-allowed}.menu-item.active.svelte-cihcnl{background:var(--color-bg-tertiary)}.new-btn.svelte-cihcnl{color:var(--color-primary);font-weight:500}.check.svelte-cihcnl{text-align:center;width:14px;color:var(--color-primary);flex-shrink:0}.menu-item-text.svelte-cihcnl{flex-direction:column;flex:1;min-width:0;display:flex;overflow:hidden}.menu-item-label.svelte-cihcnl{font-weight:500;font-size:var(--text-sm);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.menu-item-meta.svelte-cihcnl{font-size:var(--text-xs);color:var(--color-text-secondary)}.menu-divider.svelte-cihcnl{height:1px;margin:var(--space-2) 0;background:var(--color-border)}.session-list.svelte-cihcnl{max-height:60vh;overflow-y:auto}.empty.svelte-cihcnl,.error.svelte-cihcnl{align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);font-size:var(--text-sm);color:var(--color-text-secondary);display:flex}.error.svelte-cihcnl{color:var(--color-danger)}.error.svelte-cihcnl span:where(.svelte-cihcnl):first-child{flex:1}.retry-btn.svelte-cihcnl{font-size:var(--text-xs);border:1px solid var(--color-danger);border-radius:var(--radius-full);color:var(--color-danger);cursor:pointer;background:0 0;padding:2px 8px}.retry-btn.svelte-cihcnl:hover{background:var(--color-danger);color:var(--color-text-inverse)}.notice.svelte-cihcnl{margin:0 var(--space-2) var(--space-2);padding:var(--space-2) var(--space-3);font-size:var(--text-xs);color:var(--color-text-secondary);background:var(--color-bg-tertiary);border-radius:var(--radius-sm,6px)}.show-all.svelte-cihcnl{width:100%;padding:var(--space-2) var(--space-3);color:var(--color-primary);font:inherit;font-size:var(--text-xs);text-align:left;cursor:pointer;border-radius:var(--radius-sm,6px);background:0 0;border:0}.show-all.svelte-cihcnl:hover{background:var(--color-bg-tertiary)}.voice-control.svelte-7elv0w{align-items:center;gap:var(--space-2);display:flex}.voice-interim.svelte-7elv0w{max-width:200px;font-size:var(--text-xs);color:var(--color-text-secondary);white-space:nowrap;text-overflow:ellipsis;padding:2px var(--space-2);background:var(--color-surface-hover);border-radius:var(--radius-sm);border:1px solid var(--color-border);flex-shrink:1;min-width:0;overflow:hidden}.voice-autoplay-banner.svelte-7elv0w{align-items:center;gap:var(--space-2);padding:4px var(--space-3);background:var(--color-primary-subtle);border:1px solid var(--color-primary);border-radius:var(--radius-md);height:32px;color:var(--color-primary);font-size:var(--text-xs);font-weight:var(--font-medium);cursor:pointer;white-space:nowrap;transition:filter var(--transition-fast);display:inline-flex}.voice-autoplay-banner.svelte-7elv0w:hover{filter:brightness(1.05)}.voice-autoplay-banner.svelte-7elv0w:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.voice-btn.svelte-7elv0w{background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-md);width:40px;height:40px;color:var(--color-text-secondary);cursor:pointer;transition:all var(--transition-fast);flex-shrink:0;justify-content:center;align-items:center;padding:0;display:inline-flex;position:relative}.voice-btn.svelte-7elv0w:hover{color:var(--color-text);border-color:var(--color-border-hover);background:var(--color-surface-hover)}.voice-btn.svelte-7elv0w:focus-visible{outline:2px solid var(--color-primary);outline-offset:-2px}.voice-btn-active.svelte-7elv0w{color:var(--color-danger);border-color:var(--color-danger);background:var(--color-danger-bg)}.voice-btn-active.svelte-7elv0w:hover{color:var(--color-danger);border-color:var(--color-danger)}.voice-btn-on.svelte-7elv0w{color:var(--color-primary);border-color:var(--color-primary);background:var(--color-primary-subtle)}.voice-btn-on.svelte-7elv0w:hover{color:var(--color-primary);border-color:var(--color-primary)}.voice-btn-speaking.svelte-7elv0w{background:var(--color-primary-subtle);box-shadow:0 0 0 2px var(--color-primary-subtle)}.voice-btn-processing.svelte-7elv0w{color:var(--color-text-tertiary);cursor:not-allowed}.voice-btn-disabled.svelte-7elv0w,.voice-btn.svelte-7elv0w:disabled{color:var(--color-text-tertiary);background:var(--color-bg);cursor:not-allowed;opacity:.7}.voice-btn-disabled.svelte-7elv0w:hover{color:var(--color-text-tertiary);border-color:var(--color-border);background:var(--color-bg)}.voice-pulse.svelte-7elv0w{border:2px solid var(--color-danger);border-radius:var(--radius-md);opacity:0;pointer-events:none;animation:1.5s ease-out infinite svelte-7elv0w-voice-pulse-anim;position:absolute;inset:-3px}.voice-spinner.svelte-7elv0w{border:2px solid;border-right-color:#0000;border-radius:50%;width:14px;height:14px;animation:.7s linear infinite svelte-7elv0w-voice-spinner-anim;display:inline-block}@keyframes svelte-7elv0w-voice-spinner-anim{to{transform:rotate(360deg)}}.wave-anim.svelte-7elv0w{transform-origin:11px 12px;animation:1.2s ease-in-out infinite svelte-7elv0w-wave-pulse-anim}.wave-anim-2.svelte-7elv0w{transform-origin:11px 12px;animation:1.2s ease-in-out .3s infinite svelte-7elv0w-wave-pulse-anim}@keyframes svelte-7elv0w-wave-pulse-anim{0%,to{opacity:.4}50%{opacity:1}}@keyframes svelte-7elv0w-voice-pulse-anim{0%{opacity:.6;transform:scale(1)}to{opacity:0;transform:scale(1.3)}}@media (prefers-reduced-motion:reduce){.voice-pulse.svelte-7elv0w,.voice-spinner.svelte-7elv0w,.wave-anim.svelte-7elv0w,.wave-anim-2.svelte-7elv0w{animation:none}.voice-pulse.svelte-7elv0w{opacity:.4}}.sr-only.svelte-7elv0w{clip:rect(0, 0, 0, 0);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.navbar.svelte-66bgq1{z-index:50;background:var(--color-navbar-bg);border-bottom:1px solid var(--color-border);position:sticky;top:0}.navbar.svelte-66bgq1:before{content:"";z-index:-1;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);pointer-events:none;position:absolute;inset:0}.navbar-inner.svelte-66bgq1{width:100%;padding:0 var(--space-4);height:var(--nav-height);align-items:center;gap:var(--space-3);display:flex}.navbar-brand.svelte-66bgq1{align-items:center;gap:var(--space-2);border-radius:var(--radius-sm);flex-shrink:0;text-decoration:none;display:flex}.navbar-brand.svelte-66bgq1:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.brand-icon.svelte-66bgq1{flex-shrink:0;justify-content:center;align-items:center;width:34px;height:34px;display:flex}.brand-icon.svelte-66bgq1 img:where(.svelte-66bgq1){max-width:34px;display:block}.brand-text.svelte-66bgq1{font-size:var(--text-lg);font-weight:var(--font-bold);color:var(--color-text);letter-spacing:-.01em;white-space:nowrap}.navbar-actions.svelte-66bgq1{align-items:center;gap:var(--space-2);min-width:0;margin-left:auto;display:flex}.navbar-actions.svelte-66bgq1 .switcher,.navbar-actions.svelte-66bgq1 .trigger{min-width:0}.gear-btn.svelte-66bgq1{border-radius:var(--radius-md);width:40px;height:40px;color:var(--color-text-secondary);transition:color var(--transition-fast), background var(--transition-fast), border-color var(--transition-fast);border:1px solid #0000;flex-shrink:0;justify-content:center;align-items:center;padding:0;text-decoration:none;display:inline-flex}.gear-btn.svelte-66bgq1:hover{color:var(--color-text);background:var(--color-surface-hover)}.gear-btn.svelte-66bgq1:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.gear-btn.svelte-66bgq1 svg:where(.svelte-66bgq1){flex-shrink:0}@media (width<=900px){.navbar-actions.svelte-66bgq1 .trigger .label{display:none}}@media (width<=480px){.brand-text.svelte-66bgq1{display:none}.navbar-inner.svelte-66bgq1{padding:0 var(--space-3);gap:var(--space-2)}}@media (width<=400px){.navbar-inner.svelte-66bgq1{padding:0 var(--space-2);gap:var(--space-1)}.navbar-actions.svelte-66bgq1{gap:var(--space-1)}.navbar-actions.svelte-66bgq1 .trigger{padding-left:var(--space-2);padding-right:var(--space-2)}.gear-btn.svelte-66bgq1{width:36px}}.auth-gate.svelte-zhbyfn{max-width:none;height:100dvh;padding:var(--space-6);box-sizing:border-box;background-color:var(--color-bg-secondary);background-image:url(../../../fu.png);background-position:left -2% bottom -2%;background-repeat:no-repeat;background-size:35%;justify-content:center;align-items:center;margin:0;display:flex;overflow:hidden}.auth-card.svelte-zhbyfn{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-xl);width:100%;max-width:460px;box-shadow:var(--shadow-lg);padding:var(--space-6);box-sizing:border-box;margin-bottom:10vh}.auth-brand.svelte-zhbyfn{align-items:center;gap:var(--space-4);margin-bottom:var(--space-5);display:flex}.auth-brand.svelte-zhbyfn h1:where(.svelte-zhbyfn){font-size:var(--text-xl);font-weight:var(--font-semibold);color:var(--color-text)}.auth-brand.svelte-zhbyfn p:where(.svelte-zhbyfn){font-size:var(--text-sm);color:var(--color-text-secondary);margin-top:4px}.brand-icon.svelte-zhbyfn{flex-shrink:0;justify-content:center;align-items:center;width:34px;height:34px;display:flex}.brand-icon.svelte-zhbyfn img:where(.svelte-zhbyfn){max-width:34px}.auth-form.svelte-zhbyfn{gap:var(--space-3);display:grid}.auth-form.svelte-zhbyfn label:where(.svelte-zhbyfn){font-size:var(--text-sm);font-weight:var(--font-medium);color:var(--color-text-secondary)}.auth-form.svelte-zhbyfn input:where(.svelte-zhbyfn):not(.sr-only){border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg);width:100%;height:40px;color:var(--color-text);font-size:var(--text-sm);padding:0 12px}.auth-form.svelte-zhbyfn input:where(.svelte-zhbyfn):not(.sr-only):focus{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-subtle);outline:none}.auth-error.svelte-zhbyfn{color:var(--color-danger);font-size:var(--text-sm);margin:0}.sr-only.svelte-zhbyfn{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.token-input-wrapper.svelte-zhbyfn{align-items:center;gap:var(--space-2);display:flex}.token-input-wrapper.svelte-zhbyfn input:where(.svelte-zhbyfn){flex:1}.btn-toggle.svelte-zhbyfn{background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-md);width:40px;height:40px;color:var(--color-text-secondary);cursor:pointer;transition:all var(--transition-fast);flex-shrink:0;justify-content:center;align-items:center;padding:0;display:inline-flex}.btn-toggle.svelte-zhbyfn:hover{color:var(--color-text);border-color:var(--color-border-hover);background:var(--color-surface-hover)}.btn-toggle.svelte-zhbyfn:focus-visible{outline:2px solid var(--color-primary);outline-offset:-2px}@media (width<=480px){.auth-gate.svelte-zhbyfn{padding:var(--space-3);background-size:45%}.auth-card.svelte-zhbyfn{padding:var(--space-4);margin-bottom:5vh}.auth-brand.svelte-zhbyfn h1:where(.svelte-zhbyfn){font-size:var(--text-lg)}}
|
|
Binary file
|
|
Binary file
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import{$ as e,D as t,F as n,H as r,I as i,J as a,L as o,M as s,O as c,P as l,Q as u,T as d,X as f,Y as p,Z as m,at as h,ct as g,d as _,it as v,j as y,k as b,l as x,lt as S,n as C,r as w,s as T,tt as E,u as D,v as O}from"./0swOyi-5.js";import"./xihTtKlq.js";import{B as k,V as A,X as j,Y as M,a as N,c as P,g as F,i as I,k as L,l as R,n as ee,o as te,r as ne,s as z,t as B,u as V}from"./BBdT9Cjm.js";import{t as H}from"./DXg4iuO3.js";import{t as U}from"./BQ0vnNWj.js";var W=s(`<svg aria-hidden="true" width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><circle cx="12" cy="12" r="4"></circle><path d="M12 2v2"></path><path d="M12 20v2"></path><path d="m4.93 4.93 1.41 1.41"></path><path d="m17.66 17.66 1.41 1.41"></path><path d="M2 12h2"></path><path d="M20 12h2"></path><path d="m6.34 17.66-1.41 1.41"></path><path d="m19.07 4.93-1.41 1.41"></path></svg>`),re=s(`<svg aria-hidden="true" width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M12 3a6 6 0 0 0 9 9 9 9 0 1 1-9-9z"></path></svg>`),G=y(`<button type="button" class="theme-toggle svelte-1y2534t"><!></button>`);function K(e,i){h(i,!0);let s=E(()=>B.resolved===`dark`),c=E(()=>o(s)?`Switch to light mode`:`Switch to dark mode`);function l(){B.toggle()}var u=G(),d=a(u),f=e=>{b(e,W())},p=e=>{b(e,re())};t(d,e=>{o(s)?e(f):e(p,-1)}),S(u),r(()=>{_(u,`aria-label`,o(c)),_(u,`aria-pressed`,o(s)),_(u,`title`,o(c))}),n(`click`,u,l),b(e,u),v()}l([`click`]);var q=y(`<nav class="mode-switch svelte-dn9fn0" aria-label="Chat mode"><a href="/chat" aria-label="Chat" title="Chat"><svg aria-hidden="true" width="15" height="15" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="svelte-dn9fn0"><path d="M21 15a2 2 0 0 1-2 2H7l-4 4V5a2 2 0 0 1 2-2h14a2 2 0 0 1 2 2z"></path></svg> <span class="svelte-dn9fn0">Chat</span></a> <a href="/advanced" aria-label="Advanced" title="Advanced"><svg aria-hidden="true" width="15" height="15" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="svelte-dn9fn0"><rect x="3" y="3" width="18" height="18" rx="2" ry="2"></rect><path d="m7 9 3 3-3 3"></path><line x1="13" y1="15" x2="17" y2="15"></line></svg> <span class="svelte-dn9fn0">Advanced</span></a></nav>`);function J(e,t){h(t,!0);let n=E(()=>H.url?.pathname??``),i=E(()=>o(n)===`/chat`||o(n).startsWith(`/chat/`)),s=E(()=>o(n)===`/advanced`||o(n).startsWith(`/advanced/`));var c=q(),l=a(c);let u;var d=f(l,2);let p;S(c),r(()=>{u=O(l,1,`mode-tab svelte-dn9fn0`,null,u,{active:o(i)}),_(l,`aria-current`,o(i)?`page`:void 0),p=O(d,1,`mode-tab svelte-dn9fn0`,null,p,{active:o(s)}),_(d,`aria-current`,o(s)?`page`:void 0)}),b(e,c),v()}var Y=1e3,X=3e4,ie=`/proxy/assistant/event`;function ae(e){let t={},n=[];for(let r of e.split(`
|
|
2
|
+
`))!r||r.startsWith(`:`)||(r.startsWith(`data:`)?n.push(r.replace(/^data:\s?/,``)):r.startsWith(`event:`)?t.event=r.replace(/^event:\s?/,``):r.startsWith(`id:`)&&(t.id=r.replace(/^id:\s?/,``)));return n.length>0&&(t.data=n.join(`
|
|
3
|
+
`)),t}function oe(e,t){let n=t.properties?.info,r=n?.id;if(r)switch(t.type){case`session.created`:e.onCreated(r);return;case`session.updated`:e.onUpdated(r,{title:n?.title,updatedAt:n?.time?.updated});return;case`session.deleted`:e.onDeleted(r);return;default:return}}function se(e){let t=!1,n=new AbortController,r,i=e=>new Promise(t=>{let r=setTimeout(t,e);n.signal.addEventListener(`abort`,()=>{clearTimeout(r),t()},{once:!0})});async function a(){let t={accept:`text/event-stream`};r!==void 0&&(t[`Last-Event-ID`]=r);let i=await fetch(ie,{method:`GET`,headers:t,credentials:`include`,signal:n.signal});if(!i.ok||!i.body)throw Error(`SSE stream failed: ${i.status} ${i.statusText}`);e.onConnect?.();let a=i.body.pipeThrough(new TextDecoderStream).getReader(),o=``;try{for(;;){let{done:t,value:n}=await a.read();if(t)break;o+=n;let i=o.split(`
|
|
4
|
+
|
|
5
|
+
`);o=i.pop()??``;for(let t of i){if(!t)continue;let n=ae(t);if(n.id!==void 0&&(r=n.id),!n.data)continue;let i;try{i=JSON.parse(n.data)}catch(e){console.warn(`[session-events] Bad JSON in SSE frame`,e);continue}oe(e,i)}}}finally{try{a.releaseLock()}catch{}}}return(async()=>{let r=0;for(;!t;)try{r++,await a(),r=0,t||await i(500)}catch(a){if(t)return;let o=a instanceof Error?a:Error(String(a));o.name!==`AbortError`&&(console.warn(`[session-events] SSE error, reconnecting`,o),e.onDisconnect?.(o)),await i(Math.min(Y*2**Math.max(0,r-1),X)),n.signal.aborted&&!t&&(n=new AbortController)}})(),()=>{t=!0;try{n.abort()}catch{}}}function Z(){return{sessions:[],sessionsLoaded:!1,sessionsLoading:!1,sessionsError:``,activeSessionId:null}}var Q=new class{#e=e(m(new Map));get byEndpoint(){return o(this.#e)}set byEndpoint(e){u(this.#e,e,!0)}#t=e(`default`);get activeEndpointId(){return o(this.#t)}set activeEndpointId(e){u(this.#t,e,!0)}#n=e(m([]));get entries(){return o(this.#n)}set entries(e){u(this.#n,e,!0)}#r=e(!1);get entriesLoading(){return o(this.#r)}set entriesLoading(e){u(this.#r,e,!0)}#i=e(!1);get sending(){return o(this.#i)}set sending(e){u(this.#i,e,!0)}#a=e(``);get error(){return o(this.#a)}set error(e){u(this.#a,e,!0)}#o=e(!1);get liveConnected(){return o(this.#o)}set liveConnected(e){u(this.#o,e,!0)}_unsubscribeEvents=null;#s=E(()=>this.byEndpoint.get(this.activeEndpointId)?.activeSessionId??null);get activeSessionId(){return o(this.#s)}set activeSessionId(e){u(this.#s,e)}setEndpointState(e,t){let n={...this.byEndpoint.get(e)??Z(),...t};return this.byEndpoint=new Map(this.byEndpoint).set(e,n),n}async onEndpointChanged(e){if(this.sending){this.error=`Wait for the current reply to finish before switching.`;return}this.activeEndpointId=e,this.entries=[],this.error=``,this.byEndpoint.get(e)?.sessionsLoaded||await this.loadSessions();let t=this.byEndpoint.get(e)??Z(),n=t.sessions,r=t.activeSessionId,i=null;r&&n.some(e=>e.id===r)?i=r:n.length>0&&(i=n[0].id),i!==t.activeSessionId&&this.setEndpointState(e,{activeSessionId:i}),i&&await this.openSession(i),this._resubscribeEvents()}_resubscribeEvents(){if(this._unsubscribeEvents){try{this._unsubscribeEvents()}catch(e){console.warn(`[chat] failed to unsubscribe from previous event stream`,e)}this._unsubscribeEvents=null}this.liveConnected=!1,this._unsubscribeEvents=se({onCreated:e=>{this._onSessionCreated(e)},onUpdated:(e,t)=>{this._onSessionUpdated(e,t)},onDeleted:e=>{this._onSessionDeleted(e)},onConnect:()=>{this.liveConnected=!0},onDisconnect:()=>{this.liveConnected=!1}})}_onSessionCreated(e){let t=this.activeEndpointId,n=this.byEndpoint.get(t)??Z();if(n.sessions.some(t=>t.id===e))return;let r=Date.now(),i={id:e,title:``,createdAt:r,updatedAt:r};this.setEndpointState(t,{sessions:[i,...n.sessions],sessionsLoaded:!0})}_onSessionUpdated(e,t){let n=this.activeEndpointId,r=this.byEndpoint.get(n);if(!r)return;let i=r.sessions.findIndex(t=>t.id===e);if(i===-1)return;let a=r.sessions[i],o=[{...a,title:t?.title??a.title,updatedAt:t?.updatedAt??Date.now()},...r.sessions.filter(t=>t.id!==e)];o.sort((e,t)=>t.updatedAt-e.updatedAt),this.setEndpointState(n,{sessions:o})}async _onSessionDeleted(e){let t=this.activeEndpointId,n=this.byEndpoint.get(t);if(!n||!n.sessions.some(t=>t.id===e))return;let r=n.sessions.filter(t=>t.id!==e),i=n.activeSessionId===e,a=i?r[0]?.id??null:n.activeSessionId;this.setEndpointState(t,{sessions:r,activeSessionId:a}),i&&(this.entries=[],a&&await this.openSession(a))}async loadSessions(){let e=this.activeEndpointId;this.setEndpointState(e,{sessionsLoading:!0,sessionsError:``});try{let t=await A();this.setEndpointState(e,{sessions:t,sessionsLoaded:!0,sessionsLoading:!1,sessionsError:``})}catch(t){let n=t,r=n.status===503||n.status===502?`Assistant is not reachable.`:n.message??`Failed to load sessions.`;this.setEndpointState(e,{sessionsLoading:!1,sessionsError:r})}}async openSession(e){if(this.sending){this.error=`Wait for the current reply to finish before switching.`;return}let t=this.activeEndpointId;this.setEndpointState(t,{activeSessionId:e}),this.entries=[],this.entriesLoading=!0,this.error=``;try{let n=await k(e);this.activeEndpointId===t&&this.byEndpoint.get(t)?.activeSessionId===e&&(this.entries=n)}catch(e){let t=e;t.status===503||t.status===502?this.error=`Assistant is not reachable. Try reconnecting.`:t.status===401?this.error=`Sign-in required.`:this.error=t.message??`Failed to load messages.`}finally{this.entriesLoading=!1}}async startNewSession(){if(this.sending)return this.error=`Wait for the current reply to finish before switching.`,null;let e=this.activeEndpointId;this.error=``;try{let{id:t}=await F(),n=Date.now(),r={id:t,title:``,createdAt:n,updatedAt:n},i=this.byEndpoint.get(e)??Z();return this.setEndpointState(e,{sessions:[r,...i.sessions.filter(e=>e.id!==t)],sessionsLoaded:!0,activeSessionId:t}),this.entries=[],t}catch(e){let t=e;return this.error=`Failed to start session: ${t.message??`unknown error`}`,null}}async send(e){if(this.sending)return;let t=e.trim();if(!t)return;let n=this.activeSessionId;if(!n&&(n=await this.startNewSession(),!n))return;let r={id:crypto.randomUUID(),role:`user`,text:t,timestamp:Date.now()};this.entries=[...this.entries,r],this.error=``,this.sending=!0;try{let e=(await M(n,t)).parts.filter(e=>e.type===`text`&&e.text).map(e=>e.text??``).join(``),r={id:crypto.randomUUID(),role:`assistant`,text:e||`(no response)`,timestamp:Date.now()};this.entries=[...this.entries,r];let i=this.activeEndpointId,a=this.byEndpoint.get(i);if(a){let e=Date.now(),t=a.sessions.find(e=>e.id===n),r=t?{...t,updatedAt:e}:{id:n,title:``,createdAt:e,updatedAt:e},o=a.sessions.filter(e=>e.id!==n);this.setEndpointState(i,{sessions:[r,...o]})}V.ttsSupported&&V.ttsAutoEnabled&&e&&te(e)}catch(e){let t=e;t.status===503||t.status===502?(this.error=`Assistant is not reachable. Try reconnecting.`,this.setEndpointState(this.activeEndpointId,{activeSessionId:null})):t.status===401?this.error=`Sign-in required.`:this.error=t.message??`Message failed.`}finally{this.sending=!1}}reset(){if(R(),this.entries=[],this.error=``,this.byEndpoint=new Map,this._unsubscribeEvents){try{this._unsubscribeEvents()}catch(e){console.warn(`[chat] failed to unsubscribe from event stream during reset`,e)}this._unsubscribeEvents=null}this.liveConnected=!1}},$=new class{#e=e(m([]));get endpoints(){return o(this.#e)}set endpoints(e){u(this.#e,e,!0)}#t=e(`default`);get activeId(){return o(this.#t)}set activeId(e){u(this.#t,e,!0)}#n=e(!1);get loading(){return o(this.#n)}set loading(e){u(this.#n,e,!0)}#r=e(!1);get loaded(){return o(this.#r)}set loaded(e){u(this.#r,e,!0)}#i=e(``);get error(){return o(this.#i)}set error(e){u(this.#i,e,!0)}#a=E(()=>this.endpoints.find(e=>e.id===this.activeId)??this.endpoints[0]??null);get active(){return o(this.#a)}set active(e){u(this.#a,e)}async load(e=!1){if(!this.loading&&!(this.loaded&&!e)){this.loading=!0,this.error=``;try{let{endpoints:e,activeId:t}=await L();this.endpoints=e,this.activeId=t,this.loaded=!0}catch(e){let t=e;t.status!==401&&(this.error=t.message??`Failed to load endpoints`)}finally{this.loading=!1}}}async activate(e){if(e===this.activeId)return;if(Q.sending)throw this.error=`Wait for the current reply to finish before switching.`,Error(this.error);let t=this.activeId;this.activeId=e;try{await j(e),await Q.onEndpointChanged(e)}catch(e){this.activeId=t;let n=e;throw this.error=n.message??`Failed to switch endpoint`,e}}},ce=y(`<button type="button" role="menuitemradio" popovertargetaction="hide"><span class="check svelte-48xr05" aria-hidden="true"> </span> <span class="menu-item-text svelte-48xr05"><span class="menu-item-label svelte-48xr05"> </span> <span class="menu-item-url svelte-48xr05"> </span></span></button>`),le=y(`<div class="switcher svelte-48xr05"><button type="button" class="trigger svelte-48xr05" id="endpoint-trigger" aria-haspopup="menu"><svg class="trigger-icon svelte-48xr05" aria-hidden="true" width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><rect x="2" y="2" width="20" height="8" rx="2" ry="2"></rect><rect x="2" y="14" width="20" height="8" rx="2" ry="2"></rect><line x1="6" y1="6" x2="6.01" y2="6"></line><line x1="6" y1="18" x2="6.01" y2="18"></line></svg> <span class="dot svelte-48xr05" aria-hidden="true"></span> <span class="label svelte-48xr05"> </span> <span class="caret svelte-48xr05" aria-hidden="true">▾</span></button> <div class="menu svelte-48xr05" popover="auto" role="menu" tabindex="-1"><div class="menu-header svelte-48xr05">Assistant endpoint</div> <!> <div class="menu-divider svelte-48xr05"></div> <a class="menu-item link svelte-48xr05" href="/admin/endpoints" role="menuitem">Manage endpoints…</a></div></div>`);function ue(t,s){h(s,!0);let l=`endpoint-menu`,p=e(!1),m=e(!1),y=E(()=>$.active),x=E(()=>$.endpoints),C=E(()=>o(x).length>1);w(()=>{$.load()});function T(e){o(C)||(e.preventDefault(),window.location.href=`/admin/endpoints`)}async function D(e){if(!o(p)&&e!==o(y)?.id){u(p,!0);try{await $.activate(e)}catch{}finally{u(p,!1)}}}function k(e){u(m,e.newState===`open`)}var A=le(),j=a(A);_(j,`aria-controls`,l);var M=f(a(j),4),N=a(M,!0);S(M),g(2),S(j);var P=f(j,2);_(P,`id`,l),d(f(a(P),2),17,()=>o(x),e=>e.id,(e,t)=>{var i=ce();let s;_(i,`popovertarget`,l);var u=a(i),d=a(u,!0);S(u);var m=f(u,2),h=a(m),g=a(h,!0);S(h);var v=f(h,2),x=a(v,!0);S(v),S(m),S(i),r(()=>{s=O(i,1,`menu-item svelte-48xr05`,null,s,{active:o(t).id===o(y)?.id}),_(i,`aria-checked`,o(t).id===o(y)?.id),i.disabled=o(p),c(d,o(t).id===o(y)?.id?`●`:`○`),c(g,o(t).label),c(x,o(t).url)}),n(`click`,i,()=>D(o(t).id)),b(e,i)}),g(4),S(P),S(A),r(()=>{_(j,`popovertarget`,o(C)?l:void 0),_(j,`aria-expanded`,o(m)),_(j,`aria-label`,o(y)?`Assistant endpoint: ${o(y).label}`:`Assistant endpoints`),_(j,`title`,o(y)?`Connected to: ${o(y).label} (${o(y).url})`:`Assistant endpoints`),j.disabled=o(p)||$.loading,c(N,o(y)?.label??`Endpoint…`)}),n(`click`,j,T),i(`toggle`,P,k),b(t,A),v()}l([`click`]);var de=y(`<div class="notice svelte-cihcnl">Wait for the current reply to finish before switching.</div>`),fe=y(`<div class="empty svelte-cihcnl"><!> <span>Loading sessions…</span></div>`),pe=y(`<div class="error svelte-cihcnl"><span class="svelte-cihcnl"> </span> <button type="button" class="retry-btn svelte-cihcnl">Retry</button></div>`),me=y(`<div class="empty svelte-cihcnl">No sessions yet. Start the first one.</div>`),he=y(`<button type="button" role="menuitemradio" popovertargetaction="hide"><span class="check svelte-cihcnl" aria-hidden="true"> </span> <span class="menu-item-text svelte-cihcnl"><span class="menu-item-label svelte-cihcnl"> </span> <span class="menu-item-meta svelte-cihcnl"> </span></span></button>`),ge=y(`<button type="button" class="show-all svelte-cihcnl"> </button>`),_e=y(`<div class="session-list svelte-cihcnl" role="none"></div> <!>`,1),ve=y(`<div class="picker svelte-cihcnl"><button type="button" class="trigger svelte-cihcnl" id="session-trigger" aria-haspopup="menu" aria-label="Sessions"><svg class="trigger-icon svelte-cihcnl" aria-hidden="true" width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M14 9a2 2 0 0 1-2 2H6l-4 4V4c0-1.1.9-2 2-2h8a2 2 0 0 1 2 2z"></path><path d="M18 9h2a2 2 0 0 1 2 2v11l-4-4h-6a2 2 0 0 1-2-2v-1"></path></svg> <span aria-hidden="true"></span> <span class="label svelte-cihcnl"> </span> <span class="caret svelte-cihcnl" aria-hidden="true">▾</span></button> <div class="menu svelte-cihcnl" popover="auto" role="menu" tabindex="-1"><div class="menu-header svelte-cihcnl"> </div> <!> <button type="button" class="menu-item new-btn svelte-cihcnl" role="menuitem" popovertargetaction="hide"><span class="check svelte-cihcnl" aria-hidden="true">+</span> <span class="menu-item-text svelte-cihcnl"><span class="menu-item-label svelte-cihcnl">New session</span></span></button> <div class="menu-divider svelte-cihcnl"></div> <!></div></div>`);function ye(s,l){h(l,!0);let m=`session-menu`,y=e(!1),x=e(!1),C=E(()=>$.active),w=E(()=>o(C)?Q.byEndpoint.get(o(C).id)??null:null),T=E(()=>o(w)?.sessions??[]),D=E(()=>o(w)?.sessionsLoading??!1),k=E(()=>o(w)?.sessionsError??``),A=E(()=>Q.activeSessionId),j=E(()=>o(T).find(e=>e.id===o(A))??null),M=E(()=>o(j)?o(j).title||`Untitled · ${I(o(j).updatedAt)}`:`New session`),N=E(()=>Q.liveConnected),P=E(()=>o(y)?o(T):o(T).slice(0,50)),F=E(()=>Math.max(0,o(T).length-50));function I(e){if(!e)return``;let t=Math.max(0,(Date.now()-e)/1e3);if(t<60)return`just now`;let n=Math.floor(t/60);if(n<60)return`${n}m ago`;let r=Math.floor(n/60);if(r<24)return`${r}h ago`;let i=Math.floor(r/24);if(i===1)return`yesterday`;if(i<7)return`${i}d ago`;let a=Math.floor(i/7);if(a<5)return`${a}w ago`;let o=Math.floor(i/30);return o<12?`${o}mo ago`:`${Math.floor(i/365)}y ago`}function L(){o(C)&&!o(w)?.sessionsLoaded&&!o(D)&&Q.loadSessions()}async function R(e){Q.sending||await Q.openSession(e)}async function ee(){Q.sending||await Q.startNewSession()}async function te(){await Q.loadSessions()}function ne(e){u(x,e.newState===`open`)}var z=ve(),B=a(z);_(B,`popovertarget`,m),_(B,`aria-controls`,m);var V=f(a(B),2);let H;var W=f(V,2),re=a(W,!0);S(W),g(2),S(B);var G=f(B,2);_(G,`id`,m);var K=a(G),q=a(K);S(K);var J=f(K,2),Y=e=>{b(e,de())};t(J,e=>{Q.sending&&e(Y)});var X=f(J,2);_(X,`popovertarget`,m);var ie=f(X,4),ae=e=>{var t=fe();U(a(t),{size:12}),g(2),S(t),b(e,t)},oe=e=>{var t=pe(),i=a(t),s=a(i,!0);S(i);var l=f(i,2);S(t),r(()=>c(s,o(k))),n(`click`,l,te),b(e,t)},se=e=>{b(e,me())},Z=e=>{var i=_e(),s=p(i);d(s,21,()=>o(P),e=>e.id,(e,t)=>{var i=he();let s;_(i,`popovertarget`,m);var l=a(i),u=a(l,!0);S(l);var d=f(l,2),p=a(d),h=a(p,!0);S(p);var g=f(p,2),v=a(g,!0);S(g),S(d),S(i),r(e=>{s=O(i,1,`menu-item session-item svelte-cihcnl`,null,s,{active:o(t).id===o(A)}),_(i,`aria-checked`,o(t).id===o(A)),i.disabled=Q.sending,c(u,o(t).id===o(A)?`●`:`○`),c(h,o(t).title||`Untitled`),c(v,e)},[()=>I(o(t).updatedAt)]),n(`click`,i,()=>R(o(t).id)),b(e,i)}),S(s);var l=f(s,2),h=e=>{var t=ge(),i=a(t);S(t),r(()=>c(i,`Show all (${o(F)??``} more)`)),n(`click`,t,()=>u(y,!0)),b(e,t)};t(l,e=>{!o(y)&&o(F)>0&&e(h)}),b(e,i)};t(ie,e=>{o(D)?e(ae):o(k)?e(oe,1):o(T).length===0?e(se,2):e(Z,-1)}),S(G),S(z),r(()=>{_(B,`aria-expanded`,o(x)),_(B,`title`,o(M)),H=O(V,1,`dot svelte-cihcnl`,null,H,{connected:o(N)}),_(V,`title`,o(N)?`Live updates connected`:`Live updates disconnected`),c(re,o(M)),c(q,`Sessions on ${o(C)?.label??`this endpoint`??``}`),X.disabled=Q.sending}),n(`click`,B,L),i(`toggle`,G,ne),n(`click`,X,ee),b(s,z),v()}l([`click`]);var be=y(`<span class="voice-interim svelte-7elv0w" aria-hidden="true"> </span>`),xe=y(`<button type="button" class="voice-autoplay-banner svelte-7elv0w" aria-label="Resume paused audio" title="Audio was blocked by the browser. Click to resume."><svg aria-hidden="true" width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="svelte-7elv0w"><polygon points="11 5 6 9 2 9 2 15 6 15 11 19 11 5" class="svelte-7elv0w"></polygon><line x1="23" y1="9" x2="17" y2="15" class="svelte-7elv0w"></line><line x1="17" y1="9" x2="23" y2="15" class="svelte-7elv0w"></line></svg> <span class="svelte-7elv0w">Audio paused — click to resume</span></button>`),Se=s(`<path d="M15.54 8.46a5 5 0 0 1 0 7.07"></path><path d="M19.07 4.93a10 10 0 0 1 0 14.14"></path>`,1),Ce=s(`<line x1="23" y1="9" x2="17" y2="15" class="svelte-7elv0w"></line><line x1="17" y1="9" x2="23" y2="15" class="svelte-7elv0w"></line>`,1),we=y(`<button><svg aria-hidden="true" width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="svelte-7elv0w"><polygon points="11 5 6 9 2 9 2 15 6 15 11 19 11 5" class="svelte-7elv0w"></polygon><!></svg></button>`),Te=s(`<svg aria-hidden="true" width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="svelte-7elv0w"><line x1="1" y1="1" x2="23" y2="23" class="svelte-7elv0w"></line><path d="M9 9v3a3 3 0 0 0 5.12 2.12M15 9.34V4a3 3 0 0 0-5.94-.6" class="svelte-7elv0w"></path><path d="M17 16.95A7 7 0 0 1 5 12v-2m14 0v2a7 7 0 0 1-.11 1.23" class="svelte-7elv0w"></path><line x1="12" y1="19" x2="12" y2="23" class="svelte-7elv0w"></line><line x1="8" y1="23" x2="16" y2="23" class="svelte-7elv0w"></line></svg>`),Ee=y(`<span class="voice-spinner svelte-7elv0w" aria-hidden="true"></span>`),De=y(`<svg aria-hidden="true" width="14" height="14" viewBox="0 0 24 24" fill="currentColor" class="svelte-7elv0w"><rect x="6" y="6" width="12" height="12" rx="1.5" class="svelte-7elv0w"></rect></svg> <span class="voice-pulse svelte-7elv0w" aria-hidden="true"></span>`,1),Oe=s(`<svg aria-hidden="true" width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="svelte-7elv0w"><path d="M12 1a3 3 0 0 0-3 3v8a3 3 0 0 0 6 0V4a3 3 0 0 0-3-3z" class="svelte-7elv0w"></path><path d="M19 10v2a7 7 0 0 1-14 0v-2" class="svelte-7elv0w"></path><line x1="12" y1="19" x2="12" y2="23" class="svelte-7elv0w"></line><line x1="8" y1="23" x2="16" y2="23" class="svelte-7elv0w"></line></svg>`),ke=y(`<div class="voice-control svelte-7elv0w" role="toolbar" aria-label="Voice controls"><!> <!> <!> <button><!></button> <span class="sr-only svelte-7elv0w" aria-live="polite"> </span></div>`);function Ae(i,s){h(s,!0);let l=e(!1);w(()=>{ne().then(()=>{u(l,!0)})}),C(()=>{ee()});let d=E(()=>o(l)&&V.sttEngine!==`disabled`&&V.sttSupported),m=E(()=>o(l)&&V.ttsSupported),y=E(()=>V.status===`recording`),x=E(()=>V.status===`transcribing`),T=E(()=>!o(y)&&!o(x)&&Q.sending),D=E(()=>V.status===`speaking`);function k(){if(o(y)){P();return}o(x)||(R(),z(e=>{let t=e.trim();t&&Q.send(t)}))}function A(){N(!V.ttsAutoEnabled)}var j=ke(),M=a(j),F=e=>{var t=be(),n=a(t,!0);S(t),r(e=>{_(t,`title`,V.interimTranscript),c(n,e)},[()=>V.interimTranscript.length>48?V.interimTranscript.slice(0,48)+`…`:V.interimTranscript]),b(e,t)};t(M,e=>{o(y)&&V.interimTranscript&&e(F)});var L=f(M,2),te=e=>{var t=xe();n(`click`,t,()=>I()),b(e,t)};t(L,e=>{V.autoplayBlocked&&e(te)});var B=f(L,2),H=e=>{var i=we();let s;var c=a(i),l=f(a(c)),u=e=>{var t=Se(),n=p(t);let i;var a=f(n);let s;r(()=>{i=O(n,0,`svelte-7elv0w`,null,i,{"wave-anim":o(D)}),s=O(a,0,`svelte-7elv0w`,null,s,{"wave-anim-2":o(D)})}),b(e,t)},d=e=>{var t=Ce();g(),b(e,t)};t(l,e=>{V.ttsAutoEnabled?e(u):e(d,-1)}),S(c),S(i),r(()=>{s=O(i,1,`voice-btn svelte-7elv0w`,null,s,{"voice-btn-on":V.ttsAutoEnabled,"voice-btn-speaking":o(D)}),_(i,`aria-label`,V.ttsAutoEnabled?`Turn off spoken responses`:`Turn on spoken responses`),_(i,`aria-pressed`,V.ttsAutoEnabled),_(i,`title`,o(D)?`Speaking — click to turn off spoken responses`:V.ttsAutoEnabled?`Spoken responses are on — click to turn off`:`Spoken responses are off — click to turn on`)}),n(`click`,i,A),b(e,i)};t(B,e=>{o(m)&&e(H)});var U=f(B,2);let W;var re=a(U),G=e=>{b(e,Te())},K=e=>{b(e,Ee())},q=e=>{var t=De();g(2),b(e,t)},J=e=>{b(e,Oe())};t(re,e=>{o(d)?o(x)||o(T)?e(K,1):o(y)?e(q,2):e(J,-1):e(G)}),S(U);var Y=f(U,2),X=a(Y,!0);S(Y),S(j),r(()=>{W=O(U,1,`voice-btn svelte-7elv0w`,null,W,{"voice-btn-active":o(y),"voice-btn-processing":o(T)||o(x),"voice-btn-disabled":!o(d)}),U.disabled=!o(d)||o(T),_(U,`aria-label`,o(d)?o(y)?`Stop recording`:o(x)?`Transcribing…`:o(T)?`Sending message…`:`Start recording`:`Voice input unavailable`),_(U,`aria-pressed`,o(y)),_(U,`title`,o(d)?o(y)?`Stop recording`:o(x)?`Transcribing…`:o(T)?`Sending message…`:`Speak — message will be sent to the selected assistant`:`Voice input is unavailable — no speech-to-text engine is configured for this browser`),c(X,o(y)&&V.interimTranscript?V.interimTranscript:o(y)?`Recording`:o(x)?`Transcribing`:o(T)?`Sending message to assistant`:o(D)?`Assistant is speaking`:V.ttsAutoEnabled?`Spoken responses on`:``)}),n(`click`,U,k),b(i,j),v()}l([`click`]);var je=y(`<a href="/chat" class="gear-btn svelte-66bgq1" aria-label="Back to chat" title="Chat"><svg aria-hidden="true" width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="svelte-66bgq1"><path d="M21 15a2 2 0 0 1-2 2H7l-4 4V5a2 2 0 0 1 2-2h14a2 2 0 0 1 2 2z"></path></svg></a>`),Me=y(`<a href="/admin" class="gear-btn svelte-66bgq1" aria-label="Settings & administration" title="Manage this machine"><svg aria-hidden="true" width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="svelte-66bgq1"><circle cx="12" cy="12" r="3"></circle><path d="M19.4 15a1.65 1.65 0 0 0 .33 1.82l.06.06a2 2 0 1 1-2.83 2.83l-.06-.06a1.65 1.65 0 0 0-1.82-.33 1.65 1.65 0 0 0-1 1.51V21a2 2 0 0 1-4 0v-.09A1.65 1.65 0 0 0 9 19.4a1.65 1.65 0 0 0-1.82.33l-.06.06a2 2 0 1 1-2.83-2.83l.06-.06a1.65 1.65 0 0 0 .33-1.82 1.65 1.65 0 0 0-1.51-1H3a2 2 0 0 1 0-4h.09A1.65 1.65 0 0 0 4.6 9a1.65 1.65 0 0 0-.33-1.82l-.06-.06a2 2 0 1 1 2.83-2.83l.06.06a1.65 1.65 0 0 0 1.82.33H9a1.65 1.65 0 0 0 1-1.51V3a2 2 0 0 1 4 0v.09a1.65 1.65 0 0 0 1 1.51 1.65 1.65 0 0 0 1.82-.33l.06-.06a2 2 0 1 1 2.83 2.83l-.06.06a1.65 1.65 0 0 0-.33 1.82V9a1.65 1.65 0 0 0 1.51 1H21a2 2 0 0 1 0 4h-.09a1.65 1.65 0 0 0-1.51 1z"></path></svg></a>`),Ne=y(`<header class="navbar svelte-66bgq1"><div class="navbar-inner svelte-66bgq1"><a class="navbar-brand svelte-66bgq1" href="/chat" aria-label="OpenPalm — go to chat"><span class="brand-icon svelte-66bgq1" aria-hidden="true"><img src="/logo-128.png" alt="" class="svelte-66bgq1"/></span> <span class="brand-text svelte-66bgq1">OpenPalm</span></a> <!> <div class="navbar-actions svelte-66bgq1"><!> <!> <!> <!> <!></div></div></header>`);function Pe(e,n){h(n,!0);let r=E(()=>H.url?.pathname??``),i=E(()=>o(r)===`/admin`||o(r).startsWith(`/admin/`)),s=E(()=>o(r)===`/chat`||o(r).startsWith(`/chat/`)||o(r)===`/advanced`||o(r).startsWith(`/advanced/`)),c=E(()=>{let e=$.active?.url??``;if(!e)return!0;try{let t=new URL(e).hostname;return t===`localhost`||t===`127.0.0.1`||t===`::1`||t===`host.docker.internal`}catch{return!0}});var l=Ne(),u=a(l),d=f(a(u),2),p=e=>{J(e,{})};t(d,e=>{o(s)&&e(p)});var m=f(d,2),g=a(m),_=e=>{b(e,je())},y=e=>{b(e,Me())};t(g,e=>{o(i)?e(_):o(c)&&e(y,1)});var x=f(g,2);ue(x,{});var C=f(x,2);ye(C,{});var w=f(C,2);K(w,{}),Ae(f(w,2),{}),S(m),S(u),S(l),b(e,l),v()}var Fe=s(`<svg aria-hidden="true" width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M17.94 17.94A10.07 10.07 0 0 1 12 20c-7 0-11-8-11-8a18.45 18.45 0 0 1 5.06-5.94"></path><path d="M9.9 4.24A9.12 9.12 0 0 1 12 4c7 0 11 8 11 8a18.5 18.5 0 0 1-2.16 3.19"></path><line x1="1" y1="1" x2="23" y2="23"></line><path d="M14.12 14.12a3 3 0 1 1-4.24-4.24"></path></svg>`),Ie=s(`<svg aria-hidden="true" width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M1 12s4-8 11-8 11 8 11 8-4 8-11 8-11-8-11-8z"></path><circle cx="12" cy="12" r="3"></circle></svg>`),Le=y(`<p class="auth-error svelte-zhbyfn" role="alert"> </p>`),Re=y(`<main class="auth-gate svelte-zhbyfn" aria-label="Admin login gate"><section class="auth-card svelte-zhbyfn"><div class="auth-brand svelte-zhbyfn"><span class="brand-icon svelte-zhbyfn"><img src="/logo-128.png" alt="OpenPalm Logo" class="svelte-zhbyfn"/></span> <div><h1 class="svelte-zhbyfn">OpenPalm Console</h1> <p class="svelte-zhbyfn">Enter your admin password to unlock the control plane.</p></div></div> <form class="auth-form svelte-zhbyfn"><label for="admin-token" class="svelte-zhbyfn">Admin Password</label> <input type="text" name="username" autocomplete="username" value="admin" class="sr-only svelte-zhbyfn" tabindex="-1" aria-hidden="true"/> <div class="token-input-wrapper svelte-zhbyfn"><input id="admin-token" name="admin-token" placeholder="Enter admin password" autocomplete="current-password" class="svelte-zhbyfn"/> <button type="button" class="btn-toggle svelte-zhbyfn"><!></button></div> <!> <button class="btn btn-primary" type="submit"><!> Unlock Console</button></form></section></main>`);function ze(s,l){h(l,!0);let d=e(``),p=e(!1),m=e(void 0);async function y(e){e.preventDefault();let t=o(d).trim();if(!t||l.loading){o(m)?.focus();return}await l.onSuccess(t)||(o(m)?.focus(),o(m)?.select())}var C=Re(),w=a(C),E=f(a(w),2),O=f(f(a(E),2),2),k=a(O);D(k),T(k,e=>u(m,e),()=>o(m));var A=f(k,2),j=a(A),M=e=>{b(e,Fe())},N=e=>{b(e,Ie())};t(j,e=>{o(p)?e(M):e(N,-1)}),S(A),S(O);var P=f(O,2),F=e=>{var t=Le(),n=a(t,!0);S(t),r(()=>c(n,l.error)),b(e,t)};t(P,e=>{l.error&&e(F)});var I=f(P,2),L=a(I),R=e=>{U(e,{})};t(L,e=>{l.loading&&e(R)}),g(),S(I),S(E),S(w),S(C),r(e=>{_(k,`type`,o(p)?`text`:`password`),_(A,`aria-label`,o(p)?`Hide token`:`Show token`),I.disabled=e},[()=>l.loading||!o(d).trim()]),i(`submit`,E,y),x(k,()=>o(d),e=>u(d,e)),n(`click`,A,()=>u(p,!o(p))),b(s,C),v()}l([`click`]);export{Q as i,Pe as n,$ as r,ze as t};
|
|
Binary file
|
|
Binary file
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{$ as e,L as t,Q as n,R as r,nt as i,r as a,t as o,z as s}from"./0swOyi-5.js";import{i as c,n as l,r as u,t as d}from"./BuFlayix.js";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)}var te=window.fetch;window.fetch=(e,t)=>((e instanceof Request?e.method:t?.method||`GET`)!==`GET`&&v.delete(b(e)),te(e,t));var v=new Map;function y(e,t){let n=b(e,t),r=document.querySelector(n);if(r?.textContent){r.remove();let{body:e,...t}=JSON.parse(r.textContent),i=r.getAttribute(`data-ttl`);return i&&v.set(n,{body:e,init:t,ttl:1e3*Number(i)}),r.getAttribute(`data-b64`)!==null&&(e=d(e)),Promise.resolve(new Response(e,t))}return window.fetch(e,t)}function ne(e,t,n){if(v.size>0){let t=b(e,n),r=v.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);v.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 re=/^(\[)?(\.\.\.)?(\w+)(?:=(\w+))?(\])?$/,x=/^\/\((?:.+)\)$/;function ie(e){let t=[];return{pattern:e===`/`||x.test(e)?/^\/$/:RegExp(`^${oe(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 ce(String.fromCharCode(parseInt(e.slice(2),16)));if(e.startsWith(`u+`))return ce(String.fromCharCode(...e.slice(2).split(`-`).map(e=>parseInt(e,16))));let[,r,a,o,s]=re.exec(e);return t.push({name:o,matcher:s,optional:!!r,rest:!!a,chained:a?n===1&&i[0]===``:!1}),a?`([^]*?)`:r?`([^/]*)?`:`([^/]+?)`}return ce(e)}).join(``)}).join(``)}/?$`),params:t}}function ae(e){return e!==``&&!/^\([^)]+\)$/.test(e)}function oe(e){return e.slice(1).split(`/`).filter(ae)}function se(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 ce(e){return e.normalize().replace(/[[\]]/g,`\\$&`).replace(/%/g,`%25`).replace(/\//g,`%2[Ff]`).replace(/\?/g,`%3[Ff]`).replace(/#/g,`%23`).replace(/[.*+?^${}()|\\]/g,`\\$&`)}function le({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}=ie(t),u={id:t,exec:e=>{let t=c.exec(e);if(t)return se(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 ue(e,t=JSON.parse){try{return t(sessionStorage[e])}catch{}}function de(e,t,n=JSON.stringify){let r=n(t);try{sessionStorage[e]=r}catch{}}var S=globalThis.__sveltekit_16v4v0z?.base??``,fe=globalThis.__sveltekit_16v4v0z?.assets??S??``,pe=`0.11.0-rc.15`,me=`sveltekit:snapshot`,he=`sveltekit:scroll`,ge=`sveltekit:states`,C=`sveltekit:history`,w=`sveltekit:navigation`,T={tap:1,hover:2,viewport:3,eager:4,off:-1,false:-1},_e=location.origin;function ve(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 E(){return{x:pageXOffset,y:pageYOffset}}function D(e,t){return e.getAttribute(`data-sveltekit-${t}`)}var ye={...T,"":T.hover};function be(e){let t=e.assignedSlot??e.parentNode;return t?.nodeType===11&&(t=t.host),t}function xe(e,t){for(;e&&e!==t;){if(e.nodeName.toUpperCase()===`A`&&e.hasAttribute(`href`))return e;e=be(e)}}function Se(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||Ee(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 O(e){let t=null,n=null,r=null,i=null,a=null,o=null,s=e;for(;s&&s!==document.documentElement;)r===null&&(r=D(s,`preload-code`)),i===null&&(i=D(s,`preload-data`)),t===null&&(t=D(s,`keepfocus`)),n===null&&(n=D(s,`noscroll`)),a===null&&(a=D(s,`reload`)),o===null&&(o=D(s,`replacestate`)),s=be(s);function c(e){switch(e){case``:case`true`:return!0;case`off`:case`false`:return!1;default:return}}return{preload_code:ye[r??`off`],preload_data:ye[i??`off`],keepfocus:c(t),noscroll:c(n),reload:c(a),replace_state:c(o)}}function Ce(e){let t=i(e),n=!0;function r(){n=!0,t.update(e=>e)}function a(e){n=!1,t.set(e)}function o(e){let r;return t.subscribe(t=>{(r===void 0||n&&t!==r)&&e(r=t)})}return{notify:r,set:a,subscribe:o}}var we={v:g};function Te(){let{set:e,subscribe:t}=i(!1);async function n(){clearTimeout(void 0);try{let t=await fetch(`${fe}/_app/version.json`,{headers:{pragma:`no-cache`,"cache-control":`no-cache`}});if(!t.ok)return!1;let n=(await t.json()).version!==pe;return n&&(e(!0),we.v(),clearTimeout(void 0)),n}catch{return!1}}return{subscribe:t,check:n}}function Ee(e,t,n){return e.origin!==_e||!e.pathname.startsWith(t)?!0:n?e.pathname!==location.pathname:!1}function De(e){}var Oe=new Set([`load`,`prerender`,`csr`,`ssr`,`trailingSlash`,`config`]);new Set([...Oe,`entries`]);var ke=new Set([...Oe]);new Set([...ke,`actions`,`entries`]),new Set([`GET`,`POST`,`PATCH`,`PUT`,`DELETE`,`OPTIONS`,`HEAD`,`fallback`,`prerender`,`trailingSlash`,`config`,`entries`]);function Ae(e){return e.filter(e=>e!=null)}function k(e,t){return e+`/`+t}function je(e){return e instanceof l||e instanceof c?e.status:500}function Me(e){return e instanceof c?e.text:`Internal Error`}var A,j,M,Ne=a.toString().includes(`$$`)||/function \w+\(\) \{\}/.test(a.toString()),Pe=`a:`;Ne?(A={data:{},form:null,error:null,params:{},route:{id:null},state:{},status:-1,url:new URL(Pe)},j={current:null},M={current:!1}):(A=new class{#e=e({});get data(){return t(this.#e)}set data(e){n(this.#e,e)}#t=e(null);get form(){return t(this.#t)}set form(e){n(this.#t,e)}#n=e(null);get error(){return t(this.#n)}set error(e){n(this.#n,e)}#r=e({});get params(){return t(this.#r)}set params(e){n(this.#r,e)}#i=e({id:null});get route(){return t(this.#i)}set route(e){n(this.#i,e)}#a=e({});get state(){return t(this.#a)}set state(e){n(this.#a,e)}#o=e(-1);get status(){return t(this.#o)}set status(e){n(this.#o,e)}#s=e(new URL(Pe));get url(){return t(this.#s)}set url(e){n(this.#s,e)}},j=new class{#e=e(null);get current(){return t(this.#e)}set current(e){n(this.#e,e)}},M=new class{#e=e(!1);get current(){return t(this.#e)}set current(e){n(this.#e,e)}},we.v=()=>M.current=!0);function Fe(e){Object.assign(A,e)}var Ie={spanContext(){return Le},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}},Le={traceId:``,spanId:``,traceFlags:0},{onMount:Re,tick:ze}=o,Be=new Set([`icon`,`shortcut icon`,`apple-touch-icon`]),N=null,P=ue(`sveltekit:scroll`)??{},F=ue(`sveltekit:snapshot`)??{},I={url:Ce({}),page:Ce({}),navigating:i(null),updated:Te()};function Ve(e){P[e]=E()}function He(e,t){let n=e+1;for(;P[n];)delete P[n],n+=1;for(n=t+1;F[n];)delete F[n],n+=1}function L(e,t=!1){return t?location.replace(e.href):location.href=e.href,new Promise(g)}async function Ue(){if(`serviceWorker`in navigator){let e=await navigator.serviceWorker.getRegistration(S||`/`);e&&await e.update()}}var We,Ge,R,z,Ke,B,V=[],H=[],U=null;function W(){U?.fork?.then(e=>e?.discard()),U=null}var qe=new Map,Je=new Set,Ye=new Set,G=new Set,K={branch:[],error:null,url:null,nav:null},Xe=!1,Ze=!1,Qe=!0,q=!1,J=!1,$e=!1,et=!1,tt,Y,X,Z,nt=new Set,rt=new Map,it=new Map;async function at(e,t,n){globalThis.__sveltekit_16v4v0z&&(globalThis.__sveltekit_16v4v0z.query,globalThis.__sveltekit_16v4v0z.prerender),document.URL!==location.href&&(location.href=location.href),B=e,await e.hooks.init?.(),We=le(e),z=document.documentElement,Ke=t,Ge=e.nodes[0],R=e.nodes[1],Ge(),R(),Y=history.state?.[C],X=history.state?.[w],Y||(Y=X=Date.now(),history.replaceState({...history.state,[C]:Y,[w]:X},``));let r=P[Y];function i(){r&&(history.scrollRestoration=`manual`,scrollTo(r.x,r.y))}n?(i(),await Nt(Ke,n)):(await Q({type:`enter`,url:ve(B.hash?zt(new URL(location.href)):location.href),replace_state:!0}),i()),Mt()}function ot(){V.length=0,et=!1}function st(e){H.some(e=>e?.snapshot)&&(F[e]=H.map(e=>e?.snapshot?.capture()))}function ct(e){F[e]?.forEach((e,t)=>{H[t]?.snapshot?.restore(e)})}function lt(){Ve(Y),de(he,P),st(X),de(me,F)}async function ut(e,t,n,r){let i,a;t.invalidateAll&&W(),await Q({type:`goto`,url:ve(e),keepfocus:t.keepFocus,noscroll:t.noScroll,replace_state:t.replaceState,state:t.state,redirect_count:n,nav_token:r,accept:()=>{if(t.invalidateAll){et=!0,i=new Set;for(let[e,t]of rt)for(let n of t.keys())i.add(k(e,n));a=new Set;for(let[e,t]of it)for(let n of t.keys())a.add(k(e,n))}t.invalidate&&t.invalidate.forEach(jt)}}),t.invalidateAll&&s().then(s).then(()=>{for(let[e,t]of rt)for(let[n,{resource:r}]of t)i?.has(k(e,n))&&r.refresh();for(let[e,t]of it)for(let[n,{resource:r}]of t)a?.has(k(e,n))&&r.reconnect()})}async function dt(e){if(e.id!==U?.id){W();let t={};nt.add(t),U={id:e.id,token:t,promise:xt({...e,preload:t}).then(e=>(nt.delete(t),e.type===`loaded`&&e.state.error&&W(),e)),fork:null}}return U.promise}async function ft(e){let t=(await Tt(e,!1))?.route;t&&await Promise.all([...t.layouts,t.leaf].filter(Boolean).map(e=>e[1]()))}async function pt(e,t,n){let r={params:K.params,route:{id:K.route?.id??null},url:new URL(location.href)};if(K={...e.state,nav:r},Fe(e.props.page),tt=new B.root({target:t,props:{...e.props,stores:I,components:H},hydrate:n,sync:!1,transformError:void 0}),await Promise.resolve(),ct(X),n){let e={from:null,to:{...r,scroll:P[Y]??E()},willUnload:!1,type:`enter`,complete:Promise.resolve()};G.forEach(t=>t(e))}Ze=!0}async function mt({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:Ae(n).map(e=>e.node.component),page:Rt(A)}};s!==void 0&&(l.props.form=s);let u={},d=!A,p=0;for(let e=0;e<Math.max(n.length,K.branch.length);e+=1){let t=n[e],r=K.branch[e];t?.data!==r?.data&&(d=!0),t&&(u={...u,...t.data},d&&(l.props[`data_${p}`]=u),p+=1)}return(!K.url||e.href!==K.url.href||K.error!==a||s!==void 0&&s!==A.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:A.data}),l}async function ht({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:Ie,current:Ie},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}=gt(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 gt(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:Ze?ne(r,i.href,t):y(r,t)}}function _t(e,t,n,r,i,a){if(et)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]!==K.params[e])return!0;for(let e of i.dependencies)if(V.some(t=>t(new URL(e))))return!0;return!1}function vt(e,t){return e?.type===`data`?e:e?.type===`skip`?t??null:null}function yt(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 bt({error:e,url:t,route:n,params:r}){return{type:`loaded`,state:{error:e,url:t,route:n,params:r,branch:[]},props:{page:Rt(A),constructors:[]}}}async function xt({id:e,invalidating:t,url:n,params:r,route:i,preload:a}){if(U?.id===e)return nt.delete(U.token),U.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=K.url?e!==Dt(K.url):!1,p=K.route?i.id!==K.route.id:!1,ee=yt(K.url,n),m=!1,h=d.map(async(e,t)=>{if(!e)return;let a=K.branch[t];return e[1]===a?.loader&&!_t(m,p,f,ee,a.universal?.uses,r)?a:(m=!0,ht({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 h[n])?.data);return e},server_data_node:vt(e[0]?{type:`skip`}:null,e[0]?a?.server:void 0)}))});for(let e of h)e.catch(g);let _=[];for(let e=0;e<d.length;e+=1)if(d[e])try{_.push(await h[e])}catch(t){if(t instanceof u)return{type:`redirect`,location:t.location};if(nt.has(a))return bt({error:await $(t,{params:r,url:n,route:{id:i.id}}),url:n,params:r,route:i});let s=je(t),c;if(t instanceof l)c=t.body;else{if(await I.updated.check())return await Ue(),await L(n);c=await $(t,{params:r,url:n,route:{id:i.id}})}let d=await St(e,_,o);return d?mt({url:n,params:r,branch:_.slice(0,d.idx).concat(d.node),errors:o,status:s,error:c,route:i}):await kt(n,{id:i.id},c,s)}else _.push(void 0);return mt({url:n,params:r,branch:_,errors:o,status:200,error:null,route:i,form:t?void 0:null})}async function St(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 Ct({status:e,error:t,url:n,route:r}){let i={};try{return mt({url:n,params:i,branch:[await ht({loader:Ge,url:n,params:i,route:r,parent:()=>Promise.resolve({}),server_data_node:vt(null)}),{node:await R(),loader:R,universal:null,server:null,data:null}],status:e,error:t,errors:[],route:null})}catch(e){if(e instanceof u)return ut(new URL(e.location,location.href),{},0);throw e}}async function wt(e){let t=e.href;if(qe.has(t))return qe.get(t);let n;try{let r=(async()=>{let t=await B.hooks.reroute({url:new URL(e),fetch:async(t,n)=>gt(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})();qe.set(t,r),n=await r}catch{qe.delete(t);return}return n}async function Tt(e,t){if(e&&!Ee(e,S,B.hash)){let n=await wt(e);if(!n)return;let r=Et(n);for(let n of We){let i=n.exec(r);if(i)return{id:Dt(e),invalidating:t,route:n,params:ee(i),url:e}}}}function Et(e){return p(B.hash?e.hash.replace(/^#/,``).replace(/[?#].+/,``):e.pathname.slice(S.length))||`/`}function Dt(e){return(B.hash?e.hash.replace(/^#/,``):e.pathname)+e.search}function Ot({url:e,type:t,intent:n,delta:r,event:i,scroll:a}){let o=!1,s=Lt(K,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 q||Je.forEach(e=>e(c)),o?null:s}async function Q({type:e,url:t,popped:n,keepfocus:i,noscroll:a,replace_state:o,state:l={},redirect_count:u=0,nav_token:d={},accept:f=g,block:p=g,event:ee}){let m=Z;Z=d;let h=await Tt(t,!1),_=e===`enter`?Lt(K,h,t,e):Ot({url:t,type:e,delta:n?.delta,intent:h,scroll:n?.scroll,event:ee});if(!_){p(),Z===d&&(Z=m);return}let te=Y,v=X;f(),q=!0,Ze&&_.navigation.type!==`enter`&&I.navigating.set(j.current=_.navigation);let y=h&&await xt(h);if(!y){if(Ee(t,S,B.hash))return await L(t,o);y=await kt(t,{id:null},await $(new c(404,`Not Found`,`Not found: ${t.pathname}`),{url:t,params:{},route:{id:null}}),404,o)}if(t=h?.url||t,Z!==d)return _.reject(Error(`navigation aborted`)),!1;if(y.type===`redirect`){if(u<20){await Q({type:e,url:new URL(y.location,t),popped:n,keepfocus:i,noscroll:a,replace_state:o,state:l,redirect_count:u+1,nav_token:d}),_.fulfil(void 0);return}y=await Ct({status:500,error:await $(Error(`Redirect loop`),{url:t,params:{},route:{id:null}}),url:t,route:{id:null}})}else y.props.page.status>=400&&await I.updated.check()&&(await Ue(),await L(t,o));if(ot(),Ve(te),st(v),y.props.page.url.pathname!==t.pathname&&(t.pathname=y.props.page.url.pathname),l=n?n.state:l,!n){let e=+!o,n={[C]:Y+=e,[w]:X+=e,[ge]:l};(o?history.replaceState:history.pushState).call(history,n,``,t),o||He(Y,X)}let ne=h&&U?.id===h.id?U.fork:null;U?.fork&&!ne&&W(),U=null,y.props.page.state=l;let b;if(Ze){let e=(await Promise.all(Array.from(Ye,e=>e(_.navigation)))).filter(e=>typeof e==`function`);if(e.length>0){function t(){e.forEach(e=>{G.delete(e)})}e.push(t),e.forEach(e=>{G.add(e)})}let n=_.navigation.to;K={...y.state,nav:{params:n.params,route:n.route,url:n.url}},y.props.page&&(y.props.page.url=t);let i=ne&&await ne;i?b=i.commit():(N=null,tt.$set(y.props),N&&Object.assign(y.props.page,N),Fe(y.props.page),b=r?.()),$e=!0}else await pt(y,Ke,!1);let{activeElement:re}=document;if(await b,await s(),await s(),Z!==d)return _.reject(Error(`navigation aborted`)),!1;y.props.page&&N&&Object.assign(y.props.page,N);let x=null;if(Qe){let e=n?n.scroll:a?E():null;e?scrollTo(e.x,e.y):(x=t.hash&&document.getElementById(Bt(t)))?x.scrollIntoView():scrollTo(0,0)}let ie=document.activeElement!==re&&document.activeElement!==document.body;!i&&!ie&&It(t,!x),Qe=!0,q=!1,e===`popstate`&&ct(X),_.fulfil(void 0),_.navigation.to&&(_.navigation.to.scroll=E()),G.forEach(e=>e(_.navigation)),I.navigating.set(j.current=null)}async function kt(e,t,n,r,i){return e.origin===_e&&e.pathname===location.pathname&&!Xe?await Ct({status:r,error:n,url:e,route:t}):await L(e,i)}function At(){let e,t={element:void 0,href:void 0},n;z.addEventListener(`mousemove`,t=>{let n=t.target;clearTimeout(e),e=setTimeout(()=>{a(n,T.hover)},20)});function r(e){e.defaultPrevented||a(e.composedPath()[0],T.tap)}z.addEventListener(`mousedown`,r),z.addEventListener(`touchstart`,r,{passive:!0});let i=new IntersectionObserver(e=>{for(let t of e)t.isIntersecting&&(ft(new URL(t.target.href)),i.unobserve(t.target))},{threshold:0});async function a(e,r){let i=xe(e,z),a=i===t.element&&i?.href===t.href&&r>=n;if(!i||a)return;let{url:o,external:s,download:c}=Se(i,S,B.hash);if(s||c)return;let l=O(i),u=o&&Dt(K.url)===Dt(o);if(!(l.reload||u))if(r<=l.preload_data){t={element:i,href:i.href},n=T.tap;let e=await Tt(o,!1);if(!e)return;dt(e)}else r<=l.preload_code&&(t={element:i,href:i.href},n=r,ft(o))}function o(){i.disconnect();for(let e of z.querySelectorAll(`a`)){let{url:t,external:n,download:r}=Se(e,S,B.hash);if(n||r)continue;let a=O(e);a.reload||(a.preload_code===T.viewport&&i.observe(e),a.preload_code===T.eager&&ft(t))}}G.add(o),o()}function $(e,t){if(e instanceof l)return e.body;let n=je(e),r=Me(e);return B.hooks.handleError({error:e,event:t,status:n,message:r})??{message:r}}function jt(e){if(typeof e==`function`)V.push(e);else{let{href:t}=new URL(e,location.href);V.push(e=>e.href===t)}}function Mt(){history.scrollRestoration=`manual`,addEventListener(`beforeunload`,e=>{let t=!1;if(lt(),!q){let e=Lt(K,void 0,null,`leave`),n={...e.navigation,cancel:()=>{t=!0,e.reject(Error(`navigation cancelled`))}};Je.forEach(e=>e(n))}t?(e.preventDefault(),e.returnValue=``):history.scrollRestoration=`auto`}),addEventListener(`visibilitychange`,()=>{document.visibilityState===`hidden`&<()}),!navigator.connection?.saveData&&!/2g/.test(navigator.connection?.effectiveType)&&At(),z.addEventListener(`click`,async t=>{if(t.button||t.which!==1||t.metaKey||t.ctrlKey||t.shiftKey||t.altKey||t.defaultPrevented)return;let n=xe(t.composedPath()[0],z);if(!n)return;let{url:r,external:i,target:a,download:o}=Se(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=O(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)){Ot({url:r,type:`link`,event:t})?q=!0:t.preventDefault();return}if(l!==void 0&&u){let[,i]=K.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(J=!0,Ve(Y),e(r),!s.replace_state)return;J=!1}t.preventDefault(),await new Promise(e=>{requestAnimationFrame(()=>{setTimeout(e,0)}),setTimeout(e,100)}),await Q({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(Ee(r,S,!1))return;let i=e.target,a=O(i);if(a.reload)return;e.preventDefault(),e.stopPropagation();let o=new FormData(i,n);r.search=new URLSearchParams(o).toString(),Q({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(!Ft)if(t.state?.[`sveltekit:history`]){let n=t.state[C];if(Z={},n===Y)return;let r=P[n],i=t.state[`sveltekit:states`]??{},a=new URL(t.state[`sveltekit:pageurl`]??location.href),o=t.state[w],s=K.url?m(location)===m(K.url):!1;if(o===X&&($e||s)){i!==A.state&&(A.state=i),e(a),P[Y]=E(),r&&scrollTo(r.x,r.y),Y=n;return}let c=n-Y;await Q({type:`popstate`,url:a,popped:{state:i,scroll:r,delta:c},accept:()=>{Y=n,X=o},block:()=>{history.go(-c)},nav_token:Z,event:t})}else J||(e(new URL(location.href)),B.hash&&location.reload())}),addEventListener(`hashchange`,()=>{J&&(J=!1,history.replaceState({...history.state,[C]:++Y,[w]:X},``,location.href))});for(let e of document.querySelectorAll(`link`))Be.has(e.rel)&&(e.href=e.href);addEventListener(`pageshow`,e=>{e.persisted&&I.navigating.set(j.current=null)});function e(e){K.url=A.url=e,I.page.set(Rt(A)),I.page.notify()}}async function Nt(e,{status:t=200,error:n,node_ids:r,params:i,route:a,server_route:o,data:s,form:c}){Xe=!0;let l=new URL(location.href),d;({params:i={},route:a={id:null}}=await Tt(l,!1)||{}),d=We.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=Pt(r.uses)),ht({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:vt(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 mt({url:l,params:i,branch:o,status:t,error:n,errors:d?.errors,form:c,route:d??null})}catch(t){if(t instanceof u){await L(new URL(t.location,location.href));return}f=await Ct({status:je(t),error:await $(t,{url:l,params:i,route:a}),url:l,route:a}),e.textContent=``,p=!1}f.props.page&&(f.props.page.state={}),await pt(f,e,p)}function Pt(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 Ft=!1;function It(e,t=!0){let n=document.querySelector(`[autofocus]`);if(n)n.focus();else{let n=Bt(e);if(n&&document.getElementById(n)){let{x:r,y:i}=E();setTimeout(()=>{let a=history.state;Ft=!0,location.replace(new URL(`#${n}`,location.href)),history.replaceState(a,``,e),t&&scrollTo(r,i),Ft=!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 Lt(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:E()},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 Rt(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 zt(e){let t=new URL(e);return t.hash=decodeURIComponent(e.hash),t}function Bt(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,A as i,I as n,De as o,j as r,pe as s,at as t};
|
|
Binary file
|
|
Binary file
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import"./0swOyi-5.js";import{i as e,n as t,r as n}from"./
|
|
1
|
+
import"./0swOyi-5.js";import{i as e,n as t,r as n}from"./C7kefBvL.js";var r={get data(){return e.data},get error(){return e.error},get form(){return e.form},get params(){return e.params},get route(){return e.route},get state(){return e.state},get status(){return e.status},get url(){return e.url}};Object.defineProperty({get from(){return n.current?n.current.from:null},get to(){return n.current?n.current.to:null},get type(){return n.current?n.current.type:null},get willUnload(){return n.current?n.current.willUnload:null},get delta(){return n.current?n.current.delta:null},get complete(){return n.current?n.current.complete:null}},"current",{get(){throw Error(`Replace navigating.current.<prop> with navigating.<prop>`)}}),t.updated.check;var i=r;export{i as t};
|
|
Binary file
|
|
Binary file
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["../nodes/0.
|
|
2
|
-
import{$ as e,A as t,D as n,H as r,J as i,L as a,N as o,O as s,Q as c,U as l,W as u,X as d,Y as f,a as p,at as m,i as h,it as g,j as _,k as v,lt as y,r as b,s as x,tt as S,x as C,z as w}from"../chunks/0swOyi-5.js";import{t as T}from"../chunks/kNaey6uv.js";import"../chunks/xihTtKlq.js";var E={},D=_(`<div 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=_(`<!> <!>`,1);function k(h,_){m(_,!0);let T=p(_,`components`,23,()=>[]),E=p(_,`data_0`,3,null),k=p(_,`data_1`,3,null),A=p(_,`data_2`,3,null);u(()=>_.stores.page.set(_.page)),l(()=>{_.stores,_.page,_.constructors,T(),_.form,E(),k(),A(),_.stores.page.notify()});let j=e(!1),M=e(!1),N=e(null);b(()=>{let e=_.stores.page.subscribe(()=>{a(j)&&(c(M,!0),w().then(()=>{c(N,document.title||`untitled page`,!0)}))});return c(j,!0),e});let P=S(()=>_.constructors[2]);var F=O(),I=f(F),L=e=>{let r=S(()=>_.constructors[0]);var i=t();C(f(i),()=>a(r),(e,r)=>{x(r(e,{get data(){return E()},get form(){return _.form},get params(){return _.page.params},children:(e,r)=>{var i=t(),o=f(i),s=e=>{let n=S(()=>_.constructors[1]);var r=t();C(f(r),()=>a(n),(e,n)=>{x(n(e,{get data(){return k()},get form(){return _.form},get params(){return _.page.params},children:(e,n)=>{var r=t();C(f(r),()=>a(P),(e,t)=>{x(t(e,{get data(){return A()},get form(){return _.form},get params(){return _.page.params}}),e=>T()[2]=e,()=>T()?.[2])}),v(e,r)},$$slots:{default:!0}}),e=>T()[1]=e,()=>T()?.[1])}),v(e,r)},c=e=>{let n=S(()=>_.constructors[1]);var r=t();C(f(r),()=>a(n),(e,t)=>{x(t(e,{get data(){return k()},get form(){return _.form},get params(){return _.page.params}}),e=>T()[1]=e,()=>T()?.[1])}),v(e,r)};n(o,e=>{_.constructors[2]?e(s):e(c,-1)}),v(e,i)},$$slots:{default:!0}}),e=>T()[0]=e,()=>T()?.[0])}),v(e,i)},R=e=>{let n=S(()=>_.constructors[0]);var r=t();C(f(r),()=>a(n),(e,t)=>{x(t(e,{get data(){return E()},get form(){return _.form},get params(){return _.page.params}}),e=>T()[0]=e,()=>T()?.[0])}),v(e,r)};n(I,e=>{_.constructors[1]?e(L):e(R,-1)});var z=d(I,2),B=e=>{var t=D(),c=i(t),l=e=>{var t=o();r(()=>s(t,a(N))),v(e,t)};n(c,e=>{a(M)&&e(l)}),y(t),v(e,t)};n(z,e=>{a(j)&&e(B)}),v(h,F),g()}var A=h(k),j=[()=>T(()=>import(`../nodes/0.
|
|
1
|
+
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["../nodes/0.B1vIHYps.js","../chunks/0swOyi-5.js","../chunks/xihTtKlq.js","../chunks/BBdT9Cjm.js","../assets/0.DeOb0ZUu.css","../nodes/1.BoyMtkIT.js","../chunks/DXg4iuO3.js","../chunks/C7kefBvL.js","../chunks/BuFlayix.js","../nodes/2.B-8ehRO1.js","../chunks/Bmfn2m9N.js","../nodes/3.DHPuQEyR.js","../nodes/4.BrJEvB8k.js","../chunks/Bruy7wK6.js","../chunks/BQ0vnNWj.js","../assets/Spinner.BtzHSsat.css","../assets/AuthGate.CnhepjAm.css","../chunks/BQrb5YOM.js","../assets/VoiceProfileSelector.B8FTffwl.css","../assets/4.Cztzqv5R.css","../nodes/5.Deh6r378.js","../assets/5.Cj0Mk9Gn.css","../nodes/6.C1Z0X0eB.js","../assets/6.Dr3r8AEl.css","../nodes/7.C0fsI5jU.js","../assets/7.uKZKJ3Jz.css","../nodes/8.2jRmEBBC.js","../assets/8.cpz_TytB.css"])))=>i.map(i=>d[i]);
|
|
2
|
+
import{$ as e,A as t,D as n,H as r,J as i,L as a,N as o,O as s,Q as c,U as l,W as u,X as d,Y as f,a as p,at as m,i as h,it as g,j as _,k as v,lt as y,r as b,s as x,tt as S,x as C,z as w}from"../chunks/0swOyi-5.js";import{t as T}from"../chunks/kNaey6uv.js";import"../chunks/xihTtKlq.js";var E={},D=_(`<div 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=_(`<!> <!>`,1);function k(h,_){m(_,!0);let T=p(_,`components`,23,()=>[]),E=p(_,`data_0`,3,null),k=p(_,`data_1`,3,null),A=p(_,`data_2`,3,null);u(()=>_.stores.page.set(_.page)),l(()=>{_.stores,_.page,_.constructors,T(),_.form,E(),k(),A(),_.stores.page.notify()});let j=e(!1),M=e(!1),N=e(null);b(()=>{let e=_.stores.page.subscribe(()=>{a(j)&&(c(M,!0),w().then(()=>{c(N,document.title||`untitled page`,!0)}))});return c(j,!0),e});let P=S(()=>_.constructors[2]);var F=O(),I=f(F),L=e=>{let r=S(()=>_.constructors[0]);var i=t();C(f(i),()=>a(r),(e,r)=>{x(r(e,{get data(){return E()},get form(){return _.form},get params(){return _.page.params},children:(e,r)=>{var i=t(),o=f(i),s=e=>{let n=S(()=>_.constructors[1]);var r=t();C(f(r),()=>a(n),(e,n)=>{x(n(e,{get data(){return k()},get form(){return _.form},get params(){return _.page.params},children:(e,n)=>{var r=t();C(f(r),()=>a(P),(e,t)=>{x(t(e,{get data(){return A()},get form(){return _.form},get params(){return _.page.params}}),e=>T()[2]=e,()=>T()?.[2])}),v(e,r)},$$slots:{default:!0}}),e=>T()[1]=e,()=>T()?.[1])}),v(e,r)},c=e=>{let n=S(()=>_.constructors[1]);var r=t();C(f(r),()=>a(n),(e,t)=>{x(t(e,{get data(){return k()},get form(){return _.form},get params(){return _.page.params}}),e=>T()[1]=e,()=>T()?.[1])}),v(e,r)};n(o,e=>{_.constructors[2]?e(s):e(c,-1)}),v(e,i)},$$slots:{default:!0}}),e=>T()[0]=e,()=>T()?.[0])}),v(e,i)},R=e=>{let n=S(()=>_.constructors[0]);var r=t();C(f(r),()=>a(n),(e,t)=>{x(t(e,{get data(){return E()},get form(){return _.form},get params(){return _.page.params}}),e=>T()[0]=e,()=>T()?.[0])}),v(e,r)};n(I,e=>{_.constructors[1]?e(L):e(R,-1)});var z=d(I,2),B=e=>{var t=D(),c=i(t),l=e=>{var t=o();r(()=>s(t,a(N))),v(e,t)};n(c,e=>{a(M)&&e(l)}),y(t),v(e,t)};n(z,e=>{a(j)&&e(B)}),v(h,F),g()}var A=h(k),j=[()=>T(()=>import(`../nodes/0.B1vIHYps.js`),__vite__mapDeps([0,1,2,3,4]),import.meta.url),()=>T(()=>import(`../nodes/1.BoyMtkIT.js`),__vite__mapDeps([5,1,6,7,8,2]),import.meta.url),()=>T(()=>import(`../nodes/2.B-8ehRO1.js`),__vite__mapDeps([9,1,2,10]),import.meta.url),()=>T(()=>import(`../nodes/3.DHPuQEyR.js`),__vite__mapDeps([11,1,8,2,10]),import.meta.url),()=>T(()=>import(`../nodes/4.BrJEvB8k.js`),__vite__mapDeps([12,1,7,8,2,3,13,6,14,15,16,17,18,19]),import.meta.url),()=>T(()=>import(`../nodes/5.Deh6r378.js`),__vite__mapDeps([20,1,2,3,13,6,7,8,14,15,16,21]),import.meta.url),()=>T(()=>import(`../nodes/6.C1Z0X0eB.js`),__vite__mapDeps([22,1,2,13,6,7,8,3,14,15,16,23]),import.meta.url),()=>T(()=>import(`../nodes/7.C0fsI5jU.js`),__vite__mapDeps([24,1,2,3,13,6,7,8,14,15,16,25]),import.meta.url),()=>T(()=>import(`../nodes/8.2jRmEBBC.js`),__vite__mapDeps([26,1,2,14,15,17,18,27]),import.meta.url)],M=[],N={"/":[3],"/admin":[4],"/admin/endpoints":[5],"/advanced":[6],"/chat":[7],"/setup":[8,[2]]},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);export{R as decode,F as decoders,N as dictionary,I as encoders,L as hash,P as hooks,E as matchers,j as nodes,A as root,M as server_loads};
|
|
Binary file
|
|
Binary file
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{o as e,t}from"../chunks/C7kefBvL.js";export{e as load_css,t as start};
|
|
Binary file
|
|
Binary file
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{H as e,J as t,O as n,X as r,Y as i,at as a,it as o,j as s,k as c,lt as l}from"../chunks/0swOyi-5.js";import"../chunks/xihTtKlq.js";import{t as u}from"../chunks/
|
|
1
|
+
import{H as e,J as t,O as n,X as r,Y as i,at as a,it as o,j as s,k as c,lt as l}from"../chunks/0swOyi-5.js";import"../chunks/xihTtKlq.js";import{t as u}from"../chunks/DXg4iuO3.js";var d=s(`<h1> </h1> <p> </p>`,1);function f(s,f){a(f,!0);var p=d(),m=i(p),h=t(m,!0);l(m);var g=r(m,2),_=t(g,!0);l(g),e(()=>{n(h,u.status),n(_,u.error?.message)}),c(s,p),o()}export{f as component};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
w`�*ۊR ��j�"���e���n�/�#}��զ5)�ũ-++�&��We$.!��c]�D��V@�1� ��A��h�N�S-pc �W�ߕZ�n�E�zC\N7�ڭ���K�
|
|
Binary file
|