@theoremjs/studio 0.3.4-next.385.ga3608be → 0.3.4-next.387.g8bea7ff

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (27) hide show
  1. package/package.json +4 -4
  2. package/page/assets/{Banner-DgPjY5Yu.js → Banner-D2s9xjDu.js} +2 -2
  3. package/page/assets/{ContextMenu-B-dMscLp.js → ContextMenu-Bs-xBzLA.js} +2 -2
  4. package/page/assets/{ToolResultCharts-oLH6ynx0.js → ToolResultCharts-DP6XvRai.js} +1 -1
  5. package/page/assets/{TraceInspector-DjRGsfQ6.js → TraceInspector-DmrYVbB9.js} +1 -1
  6. package/page/assets/{TraceOverview-CJJg8bUz.js → TraceOverview-BH5UvvAW.js} +1 -1
  7. package/page/assets/{browser-engine-BwN7Ib6D.js → browser-engine-Dduo9AOi.js} +1 -1
  8. package/page/assets/{browser-transport-CidXgImE.js → browser-transport-KwpVG2px.js} +3 -3
  9. package/page/assets/{export-agent-B0mZ4wL6.js → export-agent-BeBzFZ7T.js} +1 -1
  10. package/page/assets/{guardrail-tester-C-iVoY5f.js → guardrail-tester-BHQjkUP-.js} +1 -1
  11. package/page/assets/{index-D7CjWX1v.js → index-C_weLbPu.js} +7 -6
  12. package/page/assets/index-Oo9otEIT.css +1 -0
  13. package/page/assets/{studio-code-pane-DDPb5n7P.js → studio-code-pane-Culehk_a.js} +1 -1
  14. package/page/assets/{studio-console-D59tIXKj.js → studio-console-CawD8qZ8.js} +1 -1
  15. package/page/assets/{studio-decision-CoJDXc1v.js → studio-decision-DdqYtp4p.js} +1 -1
  16. package/page/assets/{studio-embedding-de6dCLXd.js → studio-embedding-B9Gsa6Fd.js} +1 -1
  17. package/page/assets/{studio-host-console-DTu-WVSS.js → studio-host-console-CDJllabB.js} +2 -2
  18. package/page/assets/{studio-live-DCvAJAO5.js → studio-live-Bt1dF-IZ.js} +1 -1
  19. package/page/assets/{studio-map-DOSqlz_M.js → studio-map-3VNh8RBZ.js} +1 -1
  20. package/page/assets/{use-one-call-BwVhWczQ.js → use-one-call-BFIsOrln.js} +1 -1
  21. package/page/index.html +5 -5
  22. package/ui/diff-block.d.ts +6 -11
  23. package/ui/diff-block.js +5 -11
  24. package/ui/studio-conflicts.js +1 -1
  25. package/ui/studio-save.js +13 -12
  26. package/ui/studio.css +4 -26
  27. package/page/assets/index-IqWID6Mh.css +0 -1
@@ -0,0 +1 @@
1
+ .map-token{white-space:nowrap;position:absolute;translate:0 -50%}.map-line{fill:none;stroke:var(--color-border-emphasized);stroke-width:1.5px}.read-map{position:absolute;inset:0;overflow:hidden}.read-map-lines{pointer-events:none;position:absolute;inset:0 auto auto 0}.read-map-line{stroke-dasharray:1;stroke-dashoffset:1px;animation:read-map-line-in var(--duration-medium,.24s) var(--ease-standard,ease-out) forwards}.read-map-dot{fill:var(--color-text-secondary);animation:read-map-in var(--duration-fast,.12s) var(--ease-standard,ease-out) both}.read-map-node{animation:read-map-in var(--duration-medium,.24s) var(--ease-standard,ease-out) both}.read-map-foot{inset:auto var(--spacing-4) var(--spacing-4) var(--spacing-4);justify-content:space-between;gap:16px;display:flex;position:absolute}@keyframes read-map-line-in{to{stroke-dashoffset:0}}@keyframes read-map-in{0%{opacity:0}}.theorem-mark{--mark-delay:40ms;--mark-draw:.7s;--mark-draw-late:.64s;--mark-stagger:.22s;--mark-dot-at:.82s;--mark-dot-in:.24s;width:72px;height:72px;display:block}.theorem-mark-stroke{animation-name:theorem-mark-draw;animation-duration:var(--mark-draw);animation-timing-function:cubic-bezier(.45,.02,.15,1);animation-delay:var(--mark-delay);animation-fill-mode:forwards}.theorem-mark-stroke-late{animation-duration:var(--mark-draw-late);animation-delay:calc(var(--mark-delay) + var(--mark-stagger))}.theorem-mark-dot{transform-box:fill-box;transform-origin:50%;animation:theorem-mark-dot-in var(--mark-dot-in) cubic-bezier(.16, 1, .3, 1) calc(var(--mark-delay) + var(--mark-dot-at)) forwards;transform:scale(0)}@keyframes theorem-mark-draw{0%{opacity:0;stroke-dashoffset:1px}12%{opacity:1;stroke-dashoffset:.82px}to{opacity:1;stroke-dashoffset:0}}@keyframes theorem-mark-dot-in{0%{opacity:0;transform:scale(0)}to{opacity:1;transform:scale(1)}}@media (prefers-reduced-motion:reduce){.theorem-mark-stroke,.theorem-mark-dot{transition:none;animation:none}.theorem-mark-stroke{stroke-dashoffset:0;opacity:1}.theorem-mark-dot{opacity:1;transform:none}}[data-boot] .theorem-mark{--mark-delay:.24s;--mark-draw:.62s;--mark-draw-late:.56s;--mark-stagger:.2s;--mark-dot-at:.78s;--mark-dot-in:.22s}[data-boot]{z-index:2;color:#fff;background:#262626;place-items:center;display:grid;position:absolute;inset:0}[data-boot]:not([data-phase=draw]){background:0 0}@media (width>=768px){html[data-shell-move] [data-boot]:not([data-phase=draw]){inset:var(--spacing-4) var(--spacing-4) var(--spacing-4) var(--spacing-12)}}[data-boot] .read-map{transition:opacity var(--shell-hold-ms) ease}[data-boot][data-phase=leave] .read-map{opacity:0}.boot-said{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}:root{--color-ink:#000;--color-paper:#f7f5f0;--color-paper-bright:#fff;--color-mute:#464646;--ink-ease:cubic-bezier(.22, 1, .36, 1);--ink-duration:.3s}.run-page{overscroll-behavior:none;flex-direction:column;height:100%;min-height:0;display:flex;position:relative;overflow:hidden}.run-controls{justify-content:flex-end;align-items:center;gap:var(--spacing-2);padding:var(--spacing-4);flex:none;display:flex}.run-page>:not(.run-controls),.run-page>.astryx-layout,.run-page>div>.astryx-layout,.run-chat{flex:1;min-height:0}.run-chat>div>.astryx-layout-header:not(:has(button)){display:none}.run-page>.astryx-layout>div>.astryx-layout-header:not(:has(button)){display:none}.run-page>div>.astryx-layout>div>.astryx-layout-header:not(:has(button)){display:none}@media (prefers-reduced-motion:no-preference){.run-page .theorem-console-request{animation:theorem-console-request var(--duration-medium) var(--ease-standard)}.run-page .theorem-console-response{animation:theorem-console-response var(--duration-medium) var(--ease-standard)}}@keyframes theorem-console-request{0%{translate:75%}}@keyframes theorem-console-response{0%{translate:100%}}[role=main]:has(.run-page){overflow:hidden}.studio-fill{width:100%;height:100%}.scrollbar-none{scrollbar-width:none}.criterion-label{flex:0 0 38%;min-width:0}.studio-tree-row{position:relative}.studio-tree-action{inset-inline-end:var(--spacing-1);opacity:0;transition:opacity var(--duration-fast) var(--ease-standard);display:inline-flex;position:absolute;top:50%;translate:0 -50%}.studio-tree-row:hover .studio-tree-action{opacity:1}.studio-tree-row:has(:focus-visible) .studio-tree-action{opacity:1}@media (hover:none){.studio-tree-action{opacity:1}.studio-tree-row>button:not([data-tree-toggle]){-webkit-mask-image:linear-gradient(to left, transparent var(--spacing-6), #000 var(--spacing-10));mask-image:linear-gradient(to left, transparent var(--spacing-6), #000 var(--spacing-10))}}.studio-tree-row:is(:hover,:has(:focus-visible))>button:not([data-tree-toggle]){-webkit-mask-image:linear-gradient(to left, transparent var(--spacing-6), #000 var(--spacing-10));mask-image:linear-gradient(to left, transparent var(--spacing-6), #000 var(--spacing-10))}.studio-tree-row:has(.studio-tree-action>:nth-child(2)):is(:hover,:has(:focus-visible))>button:not([data-tree-toggle]){-webkit-mask-image:linear-gradient(to left, transparent calc(var(--spacing-6) + var(--spacing-8)), #000 calc(var(--spacing-10) + var(--spacing-8)));mask-image:linear-gradient(to left, transparent calc(var(--spacing-6) + var(--spacing-8)), #000 calc(var(--spacing-10) + var(--spacing-8)))}.inspector-list span:has(>.astryx-badge){flex-wrap:nowrap;min-width:0}.inspector-set-in-code{opacity:.75;pointer-events:none;border:0;min-inline-size:0;margin:0;padding:0}.inspector-set-in-code .inspector-set-in-code{opacity:1}.inspector-origin{background:var(--color-background-muted);border-radius:var(--radius-element);color:var(--color-text-secondary);font-size:var(--text-supporting-size);align-items:center;gap:var(--spacing-1);line-height:var(--text-supporting-leading);min-width:0;padding-block:var(--spacing-1);padding-inline:var(--spacing-2);display:flex}.inspector-origin-trigger{min-width:0;display:flex}button.inspector-origin{cursor:pointer;text-align:start;border:0;width:100%;font-family:inherit}button.inspector-origin:hover{color:var(--color-text-primary)}.inspector-origin-text{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.studio-tree-off{color:var(--color-text-secondary)}@media (prefers-reduced-motion:reduce){.studio-tree-action{transition:none}}.studio-phone{display:none}@media (width<768px){.studio-phone{display:contents}.studio-frame{position:relative}.studio-frame .studio-side{flex:auto;width:100%;max-width:none}.studio-frame .studio-side-handle,.studio-frame .studio-tree,.studio-frame .studio-preview{display:none}.studio-frame.studio-tree-open .studio-tree,.studio-frame.studio-preview-open .studio-preview{z-index:2;width:100%;display:flex;position:absolute;inset:0}.studio-frame.studio-tree-open .studio-tree{background:var(--color-background-surface)}.studio-frame.studio-preview-open .studio-preview{background:var(--color-background-body)}.studio-frame.studio-tree-open .studio-tree>*{width:100%}}.studio-map-pane{border-inline-start:1px solid var(--color-border);min-width:0}@media (width>=768px){.studio-frame:is(.studio-map-open,.studio-settings-open) .studio-side{flex:auto;width:100%;max-width:none}.studio-frame.studio-map-open .studio-view{flex:0 0 var(--studio-view-width,24rem);width:var(--studio-view-width,24rem);min-width:0}.studio-frame:is(.studio-map-open,.studio-settings-open) .studio-side-handle,.studio-frame:is(.studio-map-open,.studio-settings-open) .studio-preview{display:none}}@media (width<768px){.studio-frame .studio-map-handle{display:none}.studio-frame .studio-map-pane{z-index:2;background:var(--color-background-surface);border-inline-start:0;width:100%;position:absolute;inset:0}}.editor-page{animation:editor-page-enter var(--duration-fast) var(--ease-standard)}@keyframes editor-page-enter{0%{opacity:0}}@media (prefers-reduced-motion:reduce){.editor-page{animation:none}}@media (hover:hover){.row-reveal{opacity:0;transition:opacity var(--duration-fast) var(--ease-standard)}.astryx-list-item:hover .row-reveal,.astryx-list-item:focus-within .row-reveal{opacity:1}}.studio-diff{border:1px solid var(--color-border);border-radius:var(--radius-element);min-width:0;font-family:var(--font-family-code);font-size:var(--font-size-xs);margin:0;line-height:1.6;overflow:hidden}.studio-diff-head{justify-content:space-between;align-items:center;gap:var(--spacing-3);padding:var(--spacing-1) var(--spacing-3);border-bottom:1px solid var(--color-border);background:var(--color-background-muted);color:var(--color-text-secondary);display:flex}.studio-diff-sides{column-gap:var(--spacing-4);flex-wrap:wrap;min-width:0;display:flex}.studio-diff-count{gap:var(--spacing-2);font-variant-numeric:tabular-nums;flex:none;display:flex}.studio-diff-head [data-sign=\-]{color:var(--color-text-red)}.studio-diff-head [data-sign=\+]{color:var(--color-text-green)}.studio-diff-lines{padding-block:var(--spacing-1);grid-template-columns:max-content minmax(0,1fr);display:grid;overflow:auto}.studio-diff-line{grid-column:1/-1;grid-template-columns:subgrid;display:grid}.studio-diff-line[data-sign=\-]{background:var(--color-background-red)}.studio-diff-line[data-sign=\+]{background:var(--color-background-green)}.studio-diff-sign{padding-inline:var(--spacing-2);color:var(--color-text-secondary);text-align:center;-webkit-user-select:none;user-select:none}.studio-diff-line[data-sign=\-] .studio-diff-sign{color:var(--color-text-red)}.studio-diff-line[data-sign=\+] .studio-diff-sign{color:var(--color-text-green)}.studio-diff-line code{font:inherit;white-space:pre-wrap;overflow-wrap:anywhere;padding-inline-end:var(--spacing-3);transition:opacity .12s}.studio-diff[data-kept=\+] .studio-diff-line[data-sign=\-] code,.studio-diff[data-kept=\-] .studio-diff-line[data-sign=\+] code{opacity:.55;text-decoration:line-through}@media (prefers-reduced-motion:reduce){.studio-diff-line code{transition:none}}.save-file{z-index:1;padding-block:var(--spacing-1);background:var(--color-background-surface);position:sticky;top:0}.theorem-panel-scroll [data-scroll-content]:not(#\#):not(#\#):not(#\#):not(#\#){min-height:auto}@media (width<768px){[role=main]{width:calc(100% - 2 * var(--spacing-4));margin-inline-start:var(--spacing-4)}}dialog:modal{inset:var(--shell-top,0px) var(--shell-right,0px) var(--shell-bottom,0px) var(--shell-left,0px)}@font-face{font-family:Figtree;font-style:normal;font-display:swap;font-weight:400;src:url(/studio/assets/figtree-latin-400-normal-g7Dtegnw.woff2)format("woff2"),url(/studio/assets/figtree-latin-400-normal-BD4aNku5.woff)format("woff");ascent-override:90%;descent-override:30%;line-gap-override:0%}@font-face{font-family:Figtree;font-style:normal;font-display:swap;font-weight:500;src:url(/studio/assets/figtree-latin-500-normal-BWnGEVsr.woff2)format("woff2"),url(/studio/assets/figtree-latin-500-normal-B_yy1phn.woff)format("woff");ascent-override:90%;descent-override:30%;line-gap-override:0%}@font-face{font-family:Figtree;font-style:normal;font-display:swap;font-weight:600;src:url(/studio/assets/figtree-latin-600-normal-Cv_xCTDl.woff2)format("woff2"),url(/studio/assets/figtree-latin-600-normal-BM_oTo4n.woff)format("woff");ascent-override:90%;descent-override:30%;line-gap-override:0%}@font-face{font-family:Figtree;font-style:normal;font-display:swap;font-weight:700;src:url(/studio/assets/figtree-latin-700-normal-th6qEP7c.woff2)format("woff2"),url(/studio/assets/figtree-latin-700-normal-BCCt2T1q.woff)format("woff");ascent-override:90%;descent-override:30%;line-gap-override:0%}@layer reset{@scope([data-astryx-theme=theorem-studio]) to ([data-astryx-theme]){:where(h1,h2,h3,h4,h5,h6){font-family:var(--font-family-heading);color:var(--color-text-primary)}:where(h1){font-size:var(--text-heading-1-size);font-weight:var(--text-heading-1-weight);line-height:var(--text-heading-1-leading)}:where(h2){font-size:var(--text-heading-2-size);font-weight:var(--text-heading-2-weight);line-height:var(--text-heading-2-leading)}:where(h3){font-size:var(--text-heading-3-size);font-weight:var(--text-heading-3-weight);line-height:var(--text-heading-3-leading)}:where(h4){font-size:var(--text-heading-4-size);font-weight:var(--text-heading-4-weight);line-height:var(--text-heading-4-leading)}:where(h5){font-size:var(--text-heading-5-size);font-weight:var(--text-heading-5-weight);line-height:var(--text-heading-5-leading)}:where(h6){font-size:var(--text-heading-6-size);font-weight:var(--text-heading-6-weight);line-height:var(--text-heading-6-leading)}:where(p){font-family:var(--font-family-body);font-size:var(--text-body-size);font-weight:var(--text-body-weight);line-height:var(--text-body-leading);color:var(--color-text-primary)}:where(small){font-size:var(--text-supporting-size);font-weight:var(--text-supporting-weight);line-height:var(--text-supporting-leading);color:var(--color-text-secondary)}:where(code,pre){font-family:var(--font-family-code);font-size:var(--text-code-size);line-height:var(--text-code-leading)}:where(hr){border:none;border-top:1px solid var(--color-border)}}}@layer astryx-base;@layer astryx-theme{:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial}}html[data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}html[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}@scope([data-astryx-theme=theorem-studio]) to ([data-astryx-theme]){:scope{--font-size-4xs:.375rem;--font-size-3xs:.4375rem;--font-size-2xs:.5rem;--font-size-xs:.6875rem;--font-size-sm:.875rem;--font-size-base:1rem;--font-size-lg:1.1875rem;--font-size-xl:1.375rem;--font-size-2xl:1.625rem;--font-size-3xl:2rem;--font-size-4xl:2.375rem;--font-size-5xl:2.75rem;--text-heading-1-size:var(--font-size-2xl);--text-heading-1-weight:var(--font-weight-semibold);--text-heading-1-leading:1.3333;--text-heading-2-size:var(--font-size-xl);--text-heading-2-weight:var(--font-weight-semibold);--text-heading-2-leading:1.4;--text-heading-3-size:var(--font-size-lg);--text-heading-3-weight:var(--font-weight-bold);--text-heading-3-leading:1.4118;--text-heading-4-size:var(--font-size-base);--text-heading-4-weight:var(--font-weight-bold);--text-heading-4-leading:1.4286;--text-heading-5-size:var(--font-size-sm);--text-heading-5-weight:var(--font-weight-semibold);--text-heading-5-leading:1.6667;--text-heading-6-size:var(--font-size-xs);--text-heading-6-weight:var(--font-weight-semibold);--text-heading-6-leading:1.6;--text-body-size:var(--font-size-base);--text-body-weight:var(--font-weight-normal);--text-body-leading:1.4286;--text-large-size:var(--font-size-lg);--text-large-weight:var(--font-weight-semibold);--text-large-leading:1.4118;--text-label-size:var(--font-size-base);--text-label-weight:var(--font-weight-medium);--text-label-leading:1.4286;--text-code-size:var(--font-size-base);--text-code-weight:var(--font-weight-normal);--text-code-leading:1.4286;--text-supporting-size:var(--font-size-sm);--text-supporting-weight:var(--font-weight-normal);--text-supporting-leading:1.6667;--text-display-1-size:var(--font-size-5xl);--text-display-1-weight:var(--font-weight-normal);--text-display-1-leading:1.2381;--text-display-2-size:var(--font-size-4xl);--text-display-2-weight:var(--font-weight-normal);--text-display-2-leading:1.2571;--text-display-3-size:var(--font-size-3xl);--text-display-3-weight:var(--font-weight-normal);--text-display-3-leading:1.3793;--duration-fast-min:95ms;--duration-fast:.125s;--duration-fast-max:.165s;--duration-medium-min:.225s;--duration-medium:.3s;--duration-medium-max:.4s;--duration-slow-min:.525s;--duration-slow:.7s;--duration-slow-max:.935s;--font-family-body:Figtree, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;--font-family-heading:Figtree, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;--font-family-code:ui-monospace, "SF Mono", Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--color-syntax-keyword:var(--lightningcss-light,#6b187c)var(--lightningcss-dark,#efa8ff);--color-syntax-string:var(--lightningcss-light,#0b5615)var(--lightningcss-dark,#a4d6a3);--color-syntax-comment:var(--lightningcss-light,#6a6a6a)var(--lightningcss-dark,#9e9e9e);--color-syntax-number:var(--lightningcss-light,#733100)var(--lightningcss-dark,#ffb37e);--color-syntax-function:var(--lightningcss-light,#00458c)var(--lightningcss-dark,#a1caff);--color-syntax-type:var(--lightningcss-light,#6b187c)var(--lightningcss-dark,#efa8ff);--color-syntax-variable:var(--lightningcss-light,#111)var(--lightningcss-dark,#e2e2e2);--color-syntax-operator:var(--lightningcss-light,#6a6a6a)var(--lightningcss-dark,#9e9e9e);--color-syntax-constant:var(--lightningcss-light,#733100)var(--lightningcss-dark,#ffb37e);--color-syntax-tag:var(--lightningcss-light,#8a0011)var(--lightningcss-dark,#ffaea7);--color-syntax-attribute:var(--lightningcss-light,#584400)var(--lightningcss-dark,#eec448);--color-syntax-property:var(--lightningcss-light,#005348)var(--lightningcss-dark,#90d7c8);--color-syntax-punctuation:var(--lightningcss-light,#6a6a6a)var(--lightningcss-dark,#9e9e9e);--color-syntax-background:var(--lightningcss-light,#fff)var(--lightningcss-dark,#111);--color-syntax-added:color-mix(in srgb, var(--color-success-muted) 25%, transparent);--color-syntax-removed:color-mix(in srgb, var(--color-error-muted) 25%, transparent);--color-syntax-diff-header:transparent;--color-syntax-added-marker:var(--color-syntax-punctuation);--color-syntax-removed-marker:var(--color-syntax-punctuation);--color-background-surface:var(--lightningcss-light,#fff)var(--lightningcss-dark,#262626);--color-background-body:#000;--color-background-card:var(--lightningcss-light,#fff)var(--lightningcss-dark,#1b1b1b);--color-background-popover:var(--lightningcss-light,#fff)var(--lightningcss-dark,#1b1b1b);--color-background-muted:var(--lightningcss-light,#f1f1f1)var(--lightningcss-dark,#1b1b1b);--color-accent:var(--lightningcss-light,#1b1b1b)var(--lightningcss-dark,#f1f1f1);--color-accent-muted:var(--lightningcss-light,#f1f1f1)var(--lightningcss-dark,#262626);--color-neutral:var(--lightningcss-light,#0000000f)var(--lightningcss-dark,#ffffff1a);--color-overlay:var(--lightningcss-light,#00000080)var(--lightningcss-dark,#000c);--color-overlay-hover:var(--lightningcss-light,#0000000d)var(--lightningcss-dark,#ffffff0d);--color-overlay-pressed:var(--lightningcss-light,#0000001a)var(--lightningcss-dark,#ffffff1a);--color-text-primary:var(--lightningcss-light,#000)var(--lightningcss-dark,#fff);--color-text-secondary:var(--lightningcss-light,#474747)var(--lightningcss-dark,#9e9e9e);--color-text-disabled:var(--lightningcss-light,#919191)var(--lightningcss-dark,#525252);--color-text-accent:var(--lightningcss-light,#1b1b1b)var(--lightningcss-dark,#f1f1f1);--color-on-dark:#fff;--color-on-light:#111;--color-on-accent:var(--lightningcss-light,#fff)var(--lightningcss-dark,#111);--color-on-success:var(--lightningcss-light,#fff)var(--lightningcss-dark,#111);--color-on-error:var(--lightningcss-light,#fff)var(--lightningcss-dark,#111);--color-on-warning:#111;--color-icon-accent:var(--lightningcss-light,#1b1b1b)var(--lightningcss-dark,#f1f1f1);--color-icon-primary:var(--lightningcss-light,#000)var(--lightningcss-dark,#fff);--color-icon-secondary:var(--lightningcss-light,#6a6a6a)var(--lightningcss-dark,#9e9e9e);--color-icon-disabled:var(--lightningcss-light,#919191)var(--lightningcss-dark,#525252);--color-success:var(--lightningcss-light,#00490b)var(--lightningcss-dark,#a4d6a3);--color-error:var(--lightningcss-light,#76000c)var(--lightningcss-dark,#ffc4be);--color-warning:var(--lightningcss-light,#4b3900)var(--lightningcss-dark,#f8d36a);--color-success-muted:var(--lightningcss-light,#bce0bb)var(--lightningcss-dark,#90ca903d);--color-error-muted:var(--lightningcss-light,#ffc4be)var(--lightningcss-dark,#ff98903d);--color-warning-muted:var(--lightningcss-light,#fae19e)var(--lightningcss-dark,#e2b6233d);--color-border:var(--lightningcss-light,#00000014)var(--lightningcss-dark,#ffffff1a);--color-border-emphasized:var(--lightningcss-light,#d4d4d4)var(--lightningcss-dark,#525252);--color-skeleton:var(--lightningcss-light,#f1f1f1)var(--lightningcss-dark,#525252);--color-shadow:var(--lightningcss-light,#0000001a)var(--lightningcss-dark,#0000004d);--color-tint-hover:var(--lightningcss-light,#000)var(--lightningcss-dark,#fff);--color-background-red:var(--lightningcss-light,#ffc4be)var(--lightningcss-dark,#5b2b28);--color-border-red:var(--lightningcss-light,#ffaea7)var(--lightningcss-dark,#fa6762);--color-icon-red:var(--lightningcss-light,#76000c)var(--lightningcss-dark,#ff9890);--color-text-red:var(--lightningcss-light,#76000c)var(--lightningcss-dark,#ffaea7);--color-background-orange:var(--lightningcss-light,#ffc7a1)var(--lightningcss-dark,#503424);--color-border-orange:var(--lightningcss-light,#ffc7a1)var(--lightningcss-dark,#df843f);--color-icon-orange:var(--lightningcss-light,#622700)var(--lightningcss-dark,#ff9e55);--color-text-orange:var(--lightningcss-light,#622700)var(--lightningcss-dark,#ffb37e);--color-background-yellow:var(--lightningcss-light,#fae19e)var(--lightningcss-dark,#453a1c);--color-border-yellow:var(--lightningcss-light,#e3c36c)var(--lightningcss-dark,#c29900);--color-icon-yellow:var(--lightningcss-light,#4b3900)var(--lightningcss-dark,#e2b623);--color-text-yellow:var(--lightningcss-light,#4b3900)var(--lightningcss-dark,#eec448);--color-background-green:var(--lightningcss-light,#bce0bb)var(--lightningcss-dark,#2b422b);--color-border-green:var(--lightningcss-light,#aad4a9)var(--lightningcss-dark,#6ab26b);--color-icon-green:var(--lightningcss-light,#00490b)var(--lightningcss-dark,#90ca90);--color-text-green:var(--lightningcss-light,#00490b)var(--lightningcss-dark,#90ca90);--color-background-teal:var(--lightningcss-light,#a9e2d6)var(--lightningcss-dark,#28413c);--color-border-teal:var(--lightningcss-light,#90d7c8)var(--lightningcss-dark,#4fb1a0);--color-icon-teal:var(--lightningcss-light,#00463d)var(--lightningcss-dark,#81c9bb);--color-text-teal:var(--lightningcss-light,#00463d)var(--lightningcss-dark,#90d7c8);--color-background-cyan:var(--lightningcss-light,#9ae2f4)var(--lightningcss-dark,#274046);--color-border-cyan:var(--lightningcss-light,#85d5e9)var(--lightningcss-dark,#49adc4);--color-icon-cyan:var(--lightningcss-light,#004351)var(--lightningcss-dark,#71c7dd);--color-text-cyan:var(--lightningcss-light,#004351)var(--lightningcss-dark,#85d5e9);--color-background-blue:var(--lightningcss-light,#b9d7ff)var(--lightningcss-dark,#253c5a);--color-border-blue:var(--lightningcss-light,#a1caff)var(--lightningcss-dark,#5aa0f8);--color-icon-blue:var(--lightningcss-light,#003978)var(--lightningcss-dark,#88bcff);--color-text-blue:var(--lightningcss-light,#003978)var(--lightningcss-dark,#a1caff);--color-background-purple:var(--lightningcss-light,#f7d5ff)var(--lightningcss-dark,#4a2f51);--color-border-purple:var(--lightningcss-light,#f3bfff)var(--lightningcss-dark,#d885eb);--color-icon-purple:var(--lightningcss-light,#5c0e6c)var(--lightningcss-dark,#e496f6);--color-text-purple:var(--lightningcss-light,#5c0e6c)var(--lightningcss-dark,#eaacf8);--color-background-pink:var(--lightningcss-light,#ffc0d7)var(--lightningcss-dark,#572b3d);--color-border-pink:var(--lightningcss-light,#ffc0d7)var(--lightningcss-dark,#fc78b1);--color-icon-pink:var(--lightningcss-light,#70003f)var(--lightningcss-dark,#fd92bd);--color-text-pink:var(--lightningcss-light,#70003f)var(--lightningcss-dark,#ffa9ca);--color-background-gray:var(--lightningcss-light,#e2e2e2)var(--lightningcss-dark,#303030);--color-border-gray:var(--lightningcss-light,#d4d4d4)var(--lightningcss-dark,#262626);--color-icon-gray:var(--lightningcss-light,#474747)var(--lightningcss-dark,#9e9e9e);--color-text-gray:var(--lightningcss-light,#1b1b1b)var(--lightningcss-dark,#d4d4d4);--radius-none:0px;--radius-inner:.375rem;--radius-element:.625rem;--radius-container:.75rem;--radius-page:1.75rem;--radius-full:9999px;--shadow-low:0 2px 4px var(--lightningcss-light,oklch(0% 0 0/.05))var(--lightningcss-dark,oklch(0% 0 0/.25)), 0 4px 8px var(--lightningcss-light,oklch(0% 0 0/.1))var(--lightningcss-dark,oklch(0% 0 0/.4)), inset 0 0 0 1px var(--lightningcss-light,#0000)var(--lightningcss-dark,oklch(100% 0 0/.08));--shadow-med:0 2px 4px var(--lightningcss-light,oklch(0% 0 0/.05))var(--lightningcss-dark,oklch(0% 0 0/.35)), 0 4px 12px var(--lightningcss-light,oklch(0% 0 0/.1))var(--lightningcss-dark,oklch(0% 0 0/.5)), inset 0 0 0 1px var(--lightningcss-light,#0000)var(--lightningcss-dark,oklch(100% 0 0/.12));--shadow-high:0 4px 6px var(--lightningcss-light,oklch(0% 0 0/.1))var(--lightningcss-dark,oklch(0% 0 0/.5)), 0 12px 24px var(--lightningcss-light,oklch(0% 0 0/.15))var(--lightningcss-dark,oklch(0% 0 0/.7)), inset 0 0 0 1px var(--lightningcss-light,#0000)var(--lightningcss-dark,oklch(100% 0 0/.15));--shadow-inset-hover:inset 0px 0px 0px 2px #0074e24d;--shadow-inset-selected:inset 0px 0px 0px 2px #0074e280;--shadow-inset-success:inset 0px 0px 0px 2px #2f7d334d;--shadow-inset-warning:inset 0px 0px 0px 2px #f8d36a4d;--shadow-inset-error:inset 0px 0px 0px 2px #de47454d;--astryx-theme-neutral-color-status-fill-accent:var(--lightningcss-light,#0074e2)var(--lightningcss-dark,#6d9cfe);--astryx-theme-neutral-color-status-fill-success:var(--lightningcss-light,#198100)var(--lightningcss-dark,#64af4c);--astryx-theme-neutral-color-status-fill-warning:#ffce2f;--astryx-theme-neutral-color-status-fill-error:var(--lightningcss-light,#c9303a)var(--lightningcss-dark,#ff705d);--astryx-theme-neutral-color-status-muted-accent:var(--lightningcss-light,#b9d7ff)var(--lightningcss-dark,#88bcff3d);--astryx-theme-neutral-color-on-tint-neutral:var(--lightningcss-light,#fafafa4d)var(--lightningcss-dark,#0a0a0a4d);--astryx-theme-neutral-color-on-tint-overlay-hover:var(--lightningcss-light,#fafafa1a)var(--lightningcss-dark,#0a0a0a1a);--astryx-theme-neutral-color-on-tint-overlay-pressed:var(--lightningcss-light,#fafafa33)var(--lightningcss-dark,#0a0a0a33);--astryx-theme-neutral-color-destructive-overlay-hover:var(--lightningcss-light,#ff7f770d)var(--lightningcss-dark,#ee736c0d);--astryx-theme-neutral-color-destructive-overlay-pressed:var(--lightningcss-light,#ff7f771a)var(--lightningcss-dark,#ee736c1a);font-family:var(--font-family-body)}.astryx-heading[data-level="1"]{font-family:var(--font-family-heading);font-size:var(--text-heading-1-size);font-weight:var(--text-heading-1-weight);line-height:var(--text-heading-1-leading)}.astryx-heading[data-level="2"]{font-family:var(--font-family-heading);font-size:var(--text-heading-2-size);font-weight:var(--text-heading-2-weight);line-height:var(--text-heading-2-leading)}.astryx-heading[data-level="3"]{font-family:var(--font-family-heading);font-size:var(--text-heading-3-size);font-weight:var(--text-heading-3-weight);line-height:var(--text-heading-3-leading)}.astryx-heading[data-level="4"]{font-family:var(--font-family-heading);font-size:var(--text-heading-4-size);font-weight:var(--text-heading-4-weight);line-height:var(--text-heading-4-leading)}.astryx-heading[data-level="5"]{font-family:var(--font-family-heading);font-size:var(--text-heading-5-size);font-weight:var(--text-heading-5-weight);line-height:var(--text-heading-5-leading)}.astryx-heading[data-level="6"]{font-family:var(--font-family-heading);font-size:var(--text-heading-6-size);font-weight:var(--text-heading-6-weight);line-height:var(--text-heading-6-leading)}.astryx-heading[data-type=display-1]{font-family:var(--font-family-heading);font-size:var(--text-display-1-size);line-height:var(--text-display-1-leading)}.astryx-heading[data-type=display-2]{font-family:var(--font-family-heading);font-size:var(--text-display-2-size);line-height:var(--text-display-2-leading)}.astryx-heading[data-type=display-3]{font-family:var(--font-family-heading);font-size:var(--text-display-3-size);line-height:var(--text-display-3-leading)}.astryx-text[data-type=body]{font-family:var(--font-family-body);font-size:var(--text-body-size);line-height:var(--text-body-leading)}.astryx-text[data-type=large]{font-family:var(--font-family-body);font-size:var(--text-large-size);line-height:var(--text-large-leading)}.astryx-text[data-type=label]{font-family:var(--font-family-body);font-size:var(--text-label-size);line-height:var(--text-label-leading)}.astryx-text[data-type=code]{font-family:var(--font-family-code);font-size:var(--text-code-size);line-height:var(--text-code-leading)}.astryx-text[data-type=supporting]{font-family:var(--font-family-body);font-size:var(--text-supporting-size);line-height:var(--text-supporting-leading)}.astryx-text[data-type=display-1]{font-family:var(--font-family-heading);font-size:var(--text-display-1-size);line-height:var(--text-display-1-leading)}.astryx-text[data-type=display-2]{font-family:var(--font-family-heading);font-size:var(--text-display-2-size);line-height:var(--text-display-2-leading)}.astryx-text[data-type=display-3]{font-family:var(--font-family-heading);font-size:var(--text-display-3-size);line-height:var(--text-display-3-leading)}.astryx-button[data-variant=destructive]{background-color:var(--color-error-muted);color:var(--color-error);--color-overlay-hover:var(--astryx-theme-neutral-color-destructive-overlay-hover);--color-overlay-pressed:var(--astryx-theme-neutral-color-destructive-overlay-pressed)}.astryx-badge[data-variant=info]{background-color:var(--astryx-theme-neutral-color-status-fill-accent);color:var(--color-on-accent)}.astryx-badge[data-variant=neutral]{background-color:var(--color-background-gray);color:var(--color-text-gray)}.astryx-badge[data-variant=success]{background-color:var(--astryx-theme-neutral-color-status-fill-success);color:var(--color-on-success)}.astryx-badge[data-variant=warning]{background-color:var(--astryx-theme-neutral-color-status-fill-warning);color:var(--color-on-warning)}.astryx-badge[data-variant=error]{background-color:var(--astryx-theme-neutral-color-status-fill-error);color:var(--color-on-error)}.astryx-badge[data-variant=red]{background-color:var(--color-background-red);color:var(--color-text-red)}.astryx-badge[data-variant=orange]{background-color:var(--color-background-orange);color:var(--color-text-orange)}.astryx-badge[data-variant=yellow]{background-color:var(--color-background-yellow);color:var(--color-text-yellow)}.astryx-badge[data-variant=green]{background-color:var(--color-background-green);color:var(--color-text-green)}.astryx-badge[data-variant=teal]{background-color:var(--color-background-teal);color:var(--color-text-teal)}.astryx-badge[data-variant=cyan]{background-color:var(--color-background-cyan);color:var(--color-text-cyan)}.astryx-badge[data-variant=blue]{background-color:var(--color-background-blue);color:var(--color-text-blue)}.astryx-badge[data-variant=purple]{background-color:var(--color-background-purple);color:var(--color-text-purple)}.astryx-badge[data-variant=pink]{background-color:var(--color-background-pink);color:var(--color-text-pink)}.astryx-badge[data-variant=gray]{background-color:var(--color-background-gray);color:var(--color-text-gray)}.astryx-status-dot[data-variant=success]{background-color:var(--astryx-theme-neutral-color-status-fill-success)}.astryx-status-dot[data-variant=warning]{background-color:var(--astryx-theme-neutral-color-status-fill-warning)}.astryx-status-dot[data-variant=error]{background-color:var(--astryx-theme-neutral-color-status-fill-error)}.astryx-status-dot[data-variant=accent]{background-color:var(--astryx-theme-neutral-color-status-fill-accent)}.astryx-avatar-status-dot[data-variant=success]{background-color:var(--astryx-theme-neutral-color-status-fill-success)}.astryx-avatar-status-dot[data-variant=error]{background-color:var(--astryx-theme-neutral-color-status-fill-error)}.astryx-segmented-control{padding:var(--spacing-1);--_segmented-control-padding:var(--spacing-1)}.astryx-segmented-control-item[data-size=sm]{height:calc(var(--size-element-sm) - 8px)}.astryx-segmented-control-item[data-size=md]{height:calc(var(--size-element-md) - 8px)}.astryx-segmented-control-item[data-size=lg]{height:calc(var(--size-element-lg) - 8px)}.astryx-segmented-control-item[data-selected=selected]{box-shadow:none}.astryx-banner{--color-neutral:var(--astryx-theme-neutral-color-on-tint-neutral);--color-overlay-hover:var(--astryx-theme-neutral-color-on-tint-overlay-hover);--color-overlay-pressed:var(--astryx-theme-neutral-color-on-tint-overlay-pressed)}.astryx-banner[data-status=info]{--color-accent-muted:var(--astryx-theme-neutral-color-status-muted-accent);--color-text-primary:var(--color-text-blue);--color-text-secondary:var(--color-text-blue);--color-accent:var(--color-text-blue)}.astryx-banner[data-status=success]{--color-text-primary:var(--color-text-green);--color-text-secondary:var(--color-text-green);--color-success:var(--color-text-green)}.astryx-banner[data-status=warning]{--color-text-primary:var(--color-text-yellow);--color-text-secondary:var(--color-text-yellow);--color-warning:var(--color-text-yellow)}.astryx-banner[data-status=error]{--color-text-primary:var(--color-text-red);--color-text-secondary:var(--color-text-red);--color-error:var(--color-text-red)}.astryx-step-indicator[data-status=accent]{--color-accent:var(--astryx-theme-neutral-color-status-fill-accent)}.astryx-step-indicator[data-status=success]{--color-success:var(--astryx-theme-neutral-color-status-fill-success)}.astryx-step-indicator[data-status=warning]{--color-warning:var(--astryx-theme-neutral-color-status-fill-warning)}.astryx-step-indicator[data-status=error]{--color-error:var(--astryx-theme-neutral-color-status-fill-error)}.astryx-switch{--color-background-gray:var(--color-border-emphasized)}.astryx-progress-bar{--color-background-muted:var(--color-border-emphasized)}.astryx-progress-bar[data-variant=accent]{--color-accent:var(--astryx-theme-neutral-color-status-fill-accent)}.astryx-progress-bar[data-variant=success]{--color-success:var(--astryx-theme-neutral-color-status-fill-success)}.astryx-progress-bar[data-variant=warning]{--color-warning:var(--astryx-theme-neutral-color-status-fill-warning)}.astryx-progress-bar[data-variant=error]{--color-error:var(--astryx-theme-neutral-color-status-fill-error)}.astryx-card{--astryx-card-padding:var(--spacing-3)}.astryx-card[data-variant=bubble]{background-color:var(--color-neutral);border-radius:var(--radius-chat);--astryx-card-padding-inline:var(--spacing-4);--astryx-card-padding-block-start:var(--spacing-3);--astryx-card-padding-block-end:var(--spacing-3);--_card-radius:var(--radius-chat)}.astryx-section{--astryx-section-padding:var(--spacing-3)}.astryx-section[data-variant=raised]{background-color:var(--color-background-surface);border-radius:var(--radius-page);overflow:clip}.astryx-lightbox{padding:var(--spacing-12)}.astryx-lightbox::backdrop{background-color:var(--lightningcss-light,#00000059)var(--lightningcss-dark,#0009)}.astryx-collapsible-content{interpolate-size:allow-keywords;transition:height var(--duration-medium) var(--ease-standard), padding-top var(--duration-medium) var(--ease-standard), content-visibility var(--duration-medium) allow-discrete;display:block;overflow:clip}.astryx-collapsible-content:where([aria-expanded=false]+*){content-visibility:hidden;height:0;padding-top:0}.astryx-citation:where(*)>[aria-hidden=true]{background-color:#0000;border-width:0;border-radius:0}.astryx-citation:where(*)>[aria-hidden=true]>img{width:100%;height:100%}.astryx-chat-tool-calls:where(*) [role=button][aria-expanded]>span:not(:first-child):not(:has(svg)){align-self:baseline}.astryx-code-block[data-container=card]{border-radius:var(--radius-container)}.astryx-layout-panel:where([role=complementary]){transition:width var(--duration-medium) var(--ease-standard)}.astryx-layout-panel:where([data-resizing]+[role=complementary],[role=complementary]:has(+[data-resizing])){transition:none}.astryx-toast{justify-self:end;width:fit-content;min-width:min(240px,100%)}.astryx-layout-content:where([role=main]){height:calc(100% - 2 * var(--spacing-4));margin-block:var(--spacing-4);border-radius:var(--radius-page);margin-inline-end:var(--spacing-4)}.astryx-side-nav-section{padding-block:var(--spacing-3)}.astryx-tree-list-item[data-selected=selected]{background-color:var(--color-overlay-pressed)}.astryx-tree-list-item-label{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.astryx-code{font-family:inherit}.astryx-text[data-color=primary],.astryx-heading[data-color=primary]{color:var(--color-text-primary)}.astryx-text[data-color=secondary],.astryx-heading[data-color=secondary]{color:var(--color-text-secondary)}.astryx-text[data-color=disabled],.astryx-heading[data-color=disabled]{color:var(--color-text-disabled)}.astryx-text[data-color=placeholder],.astryx-heading[data-color=placeholder]{color:var(--color-text-secondary)}.astryx-text[data-color=accent],.astryx-heading[data-color=accent]{color:var(--color-text-accent)}.astryx-text[data-size="4xs"]{font-size:var(--font-size-4xs)}.astryx-text[data-size="3xs"]{font-size:var(--font-size-3xs)}.astryx-text[data-size="2xs"]{font-size:var(--font-size-2xs)}.astryx-text[data-size=xsm]{font-size:var(--font-size-xs)}.astryx-text[data-size=sm]{font-size:var(--font-size-sm)}.astryx-text[data-size=base]{font-size:var(--font-size-base)}.astryx-text[data-size=lg]{font-size:var(--font-size-lg)}.astryx-text[data-size=xl]{font-size:var(--font-size-xl)}.astryx-text[data-size="2xl"]{font-size:var(--font-size-2xl)}.astryx-text[data-size="3xl"]{font-size:var(--font-size-3xl)}.astryx-text[data-size="4xl"]{font-size:var(--font-size-4xl)}.astryx-heading[data-weight=normal]{font-weight:var(--font-weight-normal)}.astryx-heading[data-weight=medium]{font-weight:var(--font-weight-medium)}.astryx-heading[data-weight=semibold]{font-weight:var(--font-weight-semibold)}.astryx-heading[data-weight=bold]{font-weight:var(--font-weight-bold)}}@media (width<1024px) and (pointer:coarse){@scope([data-astryx-theme=theorem-studio]) to ([data-astryx-theme]){:scope{--font-size-4xs:.4375rem;--font-size-3xs:.5rem;--font-size-2xs:.625rem;--font-size-xs:.75rem;--font-size-sm:.875rem;--font-size-base:1rem;--font-size-lg:1.1875rem;--font-size-xl:1.375rem;--font-size-2xl:1.625rem;--font-size-3xl:1.875rem;--font-size-4xl:2.25rem;--font-size-5xl:2.625rem;--text-heading-1-size:var(--font-size-2xl);--text-heading-1-weight:var(--font-weight-semibold);--text-heading-1-leading:1.3846;--text-heading-2-size:var(--font-size-xl);--text-heading-2-weight:var(--font-weight-semibold);--text-heading-2-leading:1.4545;--text-heading-3-size:var(--font-size-lg);--text-heading-3-weight:var(--font-weight-bold);--text-heading-3-leading:1.4737;--text-heading-4-size:var(--font-size-base);--text-heading-4-weight:var(--font-weight-bold);--text-heading-4-leading:1.5;--text-heading-5-size:var(--font-size-sm);--text-heading-5-weight:var(--font-weight-semibold);--text-heading-5-leading:1.4286;--text-heading-6-size:var(--font-size-xs);--text-heading-6-weight:var(--font-weight-semibold);--text-heading-6-leading:1.6667;--text-body-size:var(--font-size-base);--text-body-weight:var(--font-weight-normal);--text-body-leading:1.5;--text-large-size:var(--font-size-lg);--text-large-weight:var(--font-weight-semibold);--text-large-leading:1.4737;--text-label-size:var(--font-size-base);--text-label-weight:var(--font-weight-medium);--text-label-leading:1.5;--text-code-size:var(--font-size-base);--text-code-weight:var(--font-weight-normal);--text-code-leading:1.5;--text-supporting-size:var(--font-size-sm);--text-supporting-weight:var(--font-weight-normal);--text-supporting-leading:1.4286;--text-display-1-size:var(--font-size-5xl);--text-display-1-weight:var(--font-weight-normal);--text-display-1-leading:1.2381;--text-display-2-size:var(--font-size-4xl);--text-display-2-weight:var(--font-weight-normal);--text-display-2-leading:1.2222;--text-display-3-size:var(--font-size-3xl);--text-display-3-weight:var(--font-weight-normal);--text-display-3-leading:1.4667;--font-family-body:Figtree, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;--font-family-heading:Figtree, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;--font-family-code:ui-monospace, "SF Mono", Monaco, Consolas, "Liberation Mono", "Courier New", monospace}}}@media (prefers-reduced-motion:reduce){@scope([data-astryx-theme=theorem-studio]) to ([data-astryx-theme]){.astryx-collapsible-content,.astryx-layout-panel:where([role=complementary]){transition:none}}}@scope([data-astryx-theme=theorem-studio]) to ([data-astryx-theme]){[data-astryx-media=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--color-text-primary:var(--color-on-dark);--color-icon-primary:var(--color-on-dark);--color-accent:var(--color-on-dark)}[data-astryx-media=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--color-text-primary:var(--color-on-light);--color-icon-primary:var(--color-on-light);--color-accent:var(--color-on-light)}}}[popover]{transition:opacity var(--duration-fast) var(--ease-standard), display var(--duration-fast) allow-discrete, overlay var(--duration-fast) allow-discrete}[popover]:not(:popover-open){opacity:0}@starting-style{[popover]:popover-open{opacity:0}}@media (prefers-reduced-motion:reduce){[popover]{transition:none}}.theorem-arrive{min-width:0;animation:theorem-arrive var(--duration-medium) var(--ease-standard) both}@keyframes theorem-arrive{0%{opacity:0;translate:0 .5rem}}@media (prefers-reduced-motion:reduce){.theorem-arrive{animation:none}}body{overflow-wrap:break-word}.astryx-field-status,.astryx-banner{overflow-wrap:anywhere;min-width:0}.studio-saved-slot,.studio-edited-slot{flex:1 1 0;min-width:0;height:100%}.studio-saved-slot{display:flex;overflow:hidden}.studio-saved-slot-side{flex:1 1 0;min-width:0}.studio-saved-slot[data-moved]{transition:flex-grow var(--duration-medium) var(--ease-standard), opacity var(--duration-medium) var(--ease-standard)}.studio-saved-slot[data-closed]{opacity:0;pointer-events:none;flex-grow:0}@starting-style{.studio-saved-slot[data-moved]{opacity:0;flex-grow:0}}@media (prefers-reduced-motion:reduce){.studio-saved-slot[data-moved]{transition:none}}@media (width>=768px){html[data-boot-pending] .astryx-app-shell,html[data-shell-move] .astryx-app-shell{height:100dvh;position:relative}html[data-boot-pending] .astryx-app-shell .astryx-app-shell-sidenav,html[data-shell-move] .astryx-app-shell .astryx-app-shell-sidenav{z-index:0;width:var(--spacing-12);transition:none;position:absolute;inset-block:0;inset-inline-start:0}html[data-boot-pending] .astryx-app-shell [role=main],html[data-shell-move] .astryx-app-shell [role=main]{z-index:1;border-radius:0;width:100%;max-width:none;height:100%;margin:0;position:relative}html[data-boot-pending] .astryx-app-shell [role=main]{clip-path:none;background:var(--color-background-surface);transition:none}html[data-shell-move] .astryx-app-shell [role=main]{background:var(--color-background-surface);transition:clip-path .64s cubic-bezier(.45,.02,.15,1)}html[data-shell-clip=open] .astryx-app-shell [role=main]{clip-path:inset(0)}html[data-shell-clip=regular] .astryx-app-shell [role=main]{clip-path:inset(var(--spacing-4) var(--spacing-4) var(--spacing-4) var(--spacing-12) round var(--radius-page))}html[data-shell-clip=frame] .astryx-app-shell [role=main]{clip-path:inset(var(--spacing-4) calc(100% - var(--spacing-12) - var(--shell-frame-width,0px)) var(--spacing-4) var(--spacing-12) round var(--radius-page))}html[data-shell-move] #astryx-app-shell-main>:not([data-boot]):not(.nav-mark){visibility:hidden}}html{--shell-hold-ms:.14s;--shell-fade:shell-content-in .28s cubic-bezier(.45, .02, .15, 1)}@keyframes shell-content-in{0%{opacity:0}}html[data-shell-hold] .shell-fade{opacity:0;visibility:hidden;transition:opacity var(--shell-hold-ms) ease, visibility 0s linear var(--shell-hold-ms)}html[data-shell-hold] #astryx-app-shell-main>:not([data-boot]):not(.nav-mark):not(:has([data-shell-frame])){opacity:0;visibility:hidden;transition:opacity var(--shell-hold-ms) ease, visibility 0s linear var(--shell-hold-ms)}html[data-shell-in] #astryx-app-shell-main>:not([data-boot]){animation:var(--shell-fade)}html[data-shell-in] #astryx-app-shell-main>:has([data-shell-frame]){animation:none}html[data-shell-in] .shell-fade{animation:var(--shell-fade)}@media (prefers-reduced-motion:reduce){html[data-shell-hold] #astryx-app-shell-main>:not([data-boot]),html[data-shell-hold] .shell-fade{transition:none}html[data-shell-in] #astryx-app-shell-main>:not([data-boot]),html[data-shell-in] .shell-fade{animation:none}}html[data-shell-in] #astryx-app-shell-main:not(#\#):not(#\#):not(#\#):not(#\#){transition:none}
@@ -1,5 +1,5 @@
1
1
  const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/studio-monaco-xfyfezQS.js","assets/editor.api-Cd3ViPQa.js","assets/preload-helper-DpV6A1kQ.js","assets/editor-DjpsE8to.css","assets/studio-monaco-CbKf90i6.css","assets/register-CDgivxvX.js","assets/studio-type-checker-DHsmQ4Du.js"])))=>i.map(i=>d[i]);
2
- import{r as e}from"./rolldown-runtime-hePW80VL.js";import{c as t,u as n}from"./themeProps-3IqahpCr.js";import{t as r}from"./preload-helper-DpV6A1kQ.js";import{Bt as i,D as a,T as o,Un as s,Vt as c,fr as l,k as u}from"./tool-schema-BrqSc6vO.js";import{En as d,Sn as f,qt as p}from"./shaped-data-BcarWqd5.js";import{S as m,U as h,_ as g,h as _,m as v,v as y,y as b}from"./tree-DeO1319a.js";import{r as x}from"./live-ingress-lDUGPwth.js";import{n as S,t as C}from"./types-EVrOoUBG.js";import{n as w}from"./stub-DEZDrr-l.js";import{F as T,M as E,k as ee,r as te}from"./workspace-Ck0o-_fd.js";import{t as ne}from"./PaneState-C8jetBGI.js";import{G as re}from"./index-D7CjWX1v.js";var D=class extends Error{line;column;constructor(e,t,n){super(e),this.line=t,this.column=n}},ie=class{text;of;i=0;line=1;column=1;constructor(e,t=`profile`){this.text=e,this.of=t}get done(){return this.i>=this.text.length}pos(){return{line:this.line,column:this.column}}fail(e){throw new D(e,this.line,this.column)}peek(e=0){return this.text[this.i+e]??``}bump(){let e=this.text[this.i]??``;return this.i+=1,e===`
2
+ import{r as e}from"./rolldown-runtime-hePW80VL.js";import{c as t,u as n}from"./themeProps-3IqahpCr.js";import{t as r}from"./preload-helper-DpV6A1kQ.js";import{Bt as i,D as a,T as o,Un as s,Vt as c,fr as l,k as u}from"./tool-schema-BrqSc6vO.js";import{En as d,Sn as f,qt as p}from"./shaped-data-BcarWqd5.js";import{S as m,U as h,_ as g,h as _,m as v,v as y,y as b}from"./tree-DeO1319a.js";import{r as x}from"./live-ingress-lDUGPwth.js";import{n as S,t as C}from"./types-EVrOoUBG.js";import{n as w}from"./stub-DEZDrr-l.js";import{F as T,M as E,k as ee,r as te}from"./workspace-Ck0o-_fd.js";import{t as ne}from"./PaneState-C8jetBGI.js";import{G as re}from"./index-C_weLbPu.js";var D=class extends Error{line;column;constructor(e,t,n){super(e),this.line=t,this.column=n}},ie=class{text;of;i=0;line=1;column=1;constructor(e,t=`profile`){this.text=e,this.of=t}get done(){return this.i>=this.text.length}pos(){return{line:this.line,column:this.column}}fail(e){throw new D(e,this.line,this.column)}peek(e=0){return this.text[this.i+e]??``}bump(){let e=this.text[this.i]??``;return this.i+=1,e===`
3
3
  `?(this.line+=1,this.column=1):this.column+=1,e}skip(){for(;;){let e=this.peek();if(e===` `||e===` `||e===`
4
4
  `||e===`\r`||e===``)this.bump();else if(e===`/`&&this.peek(1)===`/`)for(;!this.done&&this.peek()!==`
5
5
  `;)this.bump();else if(e===`/`&&this.peek(1)===`*`){for(this.bump(),this.bump();!this.done&&(this.peek()!==`*`||this.peek(1)!==`/`);)this.bump();this.done&&this.fail(`This comment never closes.`),this.bump(),this.bump()}else return}}starts(e){return this.skip(),this.text.startsWith(e,this.i)}eat(e){if(!this.starts(e))return!1;for(let t=0;t<e.length;t+=1)this.bump();return!0}expect(e){this.eat(e)||this.fail(`Expected '${e}'.`)}ident(){this.skip();let e=this.peek();if(!/^[A-Za-z_$]/.test(e))return;let t=``;for(;/^[A-Za-z0-9_$]/.test(this.peek());)t+=this.bump();return t}expectIdent(){let e=this.ident();return e===void 0&&this.fail(`Expected a name.`),e}peekIdent(){return this.skip(),/^[A-Za-z_$][A-Za-z0-9_$]*/.exec(this.text.slice(this.i))?.[0]}rest(){return this.skip(),this.text.slice(this.i)}};function O(e){return typeof e==`object`&&!!e&&!Array.isArray(e)}function k(e){e.skip();let t=e.peek();t!==`'`&&t!==`"`&&e.fail(`Expected a string.`),e.bump();let n=``;for(;!e.done&&e.peek()!==t;){let t=e.bump();if(t!==`\\`){n+=t;continue}let r=e.bump(),i={n:`
@@ -1,3 +1,3 @@
1
- import{r as e}from"./rolldown-runtime-hePW80VL.js";import{c as t,u as n}from"./themeProps-3IqahpCr.js";import{l as r,n as i,t as a,u as o}from"./SegmentedControlItem-BLuJOusN.js";import{t as s}from"./VStack-CkVMcNiK.js";import{n as c,t as l}from"./StackItem-CQviqAfM.js";import{c as u,u as d}from"./browser-transport-CidXgImE.js";import{d as f,g as p}from"./fieldParts-Cs6Amprh.js";import{r as m,t as ee}from"./IconButton-CG5klqF1.js";import{a as h,g as te,i as ne,l as g,s as re,u as ie}from"./SidePanel-OYp0bLNO.js";import{t as _}from"./Text-BsiAsowd.js";import{n as v}from"./labels-provider-BqgbdxdT.js";import{n as ae,t as y}from"./Card-Ghe4ozhC.js";import{n as b}from"./ScrollableArea-C8AVuqnt.js";import{i as x}from"./Banner-DgPjY5Yu.js";import{a as oe}from"./arrive-DvbqpeRS.js";import{t as se}from"./Center-nHS1JSux.js";import{a as S,o as ce}from"./shaped-data-BcarWqd5.js";import{n as C}from"./trace-patterns-CS99kExN.js";import{Ot as le,S as ue,_ as w,g as T,h as de,o as fe,w as pe}from"./index-D7CjWX1v.js";var E=e(n(),1),me=new Set([`image/png`,`image/jpeg`]),D=`image/png,image/jpeg`;function he(e,t){let n=e.replace(/\.[^.]*$/,``).toLowerCase().replace(/[^a-z0-9]+/g,`_`).replace(/^_+|_+$/g,``)||`image`,r=`<${n}>`;for(let e=2;t.includes(r);e+=1)r=`<${n}_${String(e)}>`;return r}async function O(e){if(!me.has(e.type))return null;let t=new Uint8Array(await e.arrayBuffer()),n=``;for(let e=0;e<t.length;e+=32768)n+=String.fromCharCode(...t.subarray(e,e+32768));return{mimeType:e.type,data:btoa(n)}}function k(e){return`data:${e.mimeType};base64,${e.data}`}function A(e,t){return typeof e==`string`?e===t:Array.isArray(e)?e.some(e=>A(e,t)):typeof e==`object`&&e?Object.values(e).some(e=>A(e,t)):!1}function j(e,t){return Object.fromEntries(Object.entries(e).filter(([e])=>A(t,e)))}function M(e,t,n){let r=he(e,[...Object.keys(t),...n.map(e=>`<${e}>`)]);return{key:r.slice(1,-1),reference:r}}function N(e){return typeof e==`object`&&e&&!Array.isArray(e)?e:void 0}function P(e,t){let{images:n,state:r}=t;for(let[i,a]of e){let{key:e,reference:o}=M(i.name,{...t.host,...n},Object.keys(r));n={...n,[o]:a},r={...r,[e]:o}}return{images:n,state:r}}function F(e,t){let n=e;for(let e of t.split(`.`)){if(typeof n!=`object`||!n)return;n=Array.isArray(n)?n[Number(e)]:n[e]}return n}function I(e,t,n){let r=Object.keys(e),i=n===void 0||n in e?n:F(t,n);return e[(typeof i==`string`&&i in e?i:void 0)??r.find(e=>A(t,e))??r[0]??``]}function L(e,t,n){return{x:e.left*t,y:e.top*n,width:(e.right-e.left)*t,height:(e.bottom-e.top)*n,line:Math.max(2,Math.round(Math.min(t,n)/200))}}var R=.45;async function ge(e,t,n){let r=new Image;r.src=e,await r.decode();let i=document.createElement(`canvas`);i.width=r.naturalWidth,i.height=r.naturalHeight;let a=i.getContext(`2d`);if(!a)return e;let o=L(t,i.width,i.height);return a.drawImage(r,0,0),a.fillStyle=n.shade,a.globalAlpha=R,a.beginPath(),a.rect(0,0,i.width,i.height),a.rect(o.x,o.y,o.width,o.height),a.fill(`evenodd`),a.globalAlpha=1,a.strokeStyle=n.outline,a.lineWidth=o.line,a.strokeRect(o.x,o.y,o.width,o.height),i.toDataURL(`image/png`)}function _e(e){let t=e.right-e.left,n=e.bottom-e.top;return{width:100/t,height:100/n,left:-e.left/t*100,top:-e.top/n*100}}function ve(e){return e.every(e=>typeof e==`string`)}function z(e){return e==null||typeof e==`string`?``:typeof e==`number`?0:typeof e==`boolean`?!1:Array.isArray(e)?[]:Object.fromEntries(Object.entries(e).map(([e,t])=>[e,z(t)]))}function ye(e){let t=e[0];if(typeof t!=`object`||!t||Array.isArray(t))return null;let n=Object.keys(t);return n.length===0||n.length>4||!e.every(e=>typeof e==`object`&&!!e&&!Array.isArray(e)&&Object.keys(e).join()===n.join()&&Object.values(e).every(e=>typeof e!=`object`||!e))?null:n.map(t=>{let n=e.map(e=>String(e[t]??``).length),r=Math.max(t.length,...n);return{key:t,weight:Math.min(4,Math.max(1,Math.round(r/10)))}})}var B=t();function be(e){return e===null?[]:Array.isArray(e)?e:[e]}function V(){let e=v(),[t,n]=(0,E.useState)(null);return{read:async e=>{n(null);let t=[];for(let r of be(e)){let e=await O(r);e?t.push([r,e]):n(r.name)}return t},status:t===null?void 0:{type:`error`,message:e(`@theorem.decision.image_bad`,{file:t})}}}function xe({onImages:e}){let t=v(),{read:n,status:r}=V();return(0,B.jsx)(T,{label:t(`@theorem.decision.add_image`),isLabelHidden:!0,mode:`dropzone`,isMultiple:!0,accept:D,value:null,placeholder:t(`@theorem.decision.add_image_hint`),status:r,statusVariant:`detached`,onChange:t=>{n(t).then(t=>{t.length>0&&e(t)})}})}var Se={search:()=>[],bootstrap:()=>[]},Ce=48;function H(e,t,n){return Math.min(Math.max(e.split(`
1
+ import{r as e}from"./rolldown-runtime-hePW80VL.js";import{c as t,u as n}from"./themeProps-3IqahpCr.js";import{l as r,n as i,t as a,u as o}from"./SegmentedControlItem-BLuJOusN.js";import{t as s}from"./VStack-CkVMcNiK.js";import{n as c,t as l}from"./StackItem-CQviqAfM.js";import{c as u,u as d}from"./browser-transport-KwpVG2px.js";import{d as f,g as p}from"./fieldParts-Cs6Amprh.js";import{r as m,t as ee}from"./IconButton-CG5klqF1.js";import{a as h,g as te,i as ne,l as g,s as re,u as ie}from"./SidePanel-OYp0bLNO.js";import{t as _}from"./Text-BsiAsowd.js";import{n as v}from"./labels-provider-BqgbdxdT.js";import{n as ae,t as y}from"./Card-Ghe4ozhC.js";import{n as b}from"./ScrollableArea-C8AVuqnt.js";import{i as x}from"./Banner-D2s9xjDu.js";import{a as oe}from"./arrive-DvbqpeRS.js";import{t as se}from"./Center-nHS1JSux.js";import{a as S,o as ce}from"./shaped-data-BcarWqd5.js";import{n as C}from"./trace-patterns-CS99kExN.js";import{Ot as le,S as ue,_ as w,g as T,h as de,o as fe,w as pe}from"./index-C_weLbPu.js";var E=e(n(),1),me=new Set([`image/png`,`image/jpeg`]),D=`image/png,image/jpeg`;function he(e,t){let n=e.replace(/\.[^.]*$/,``).toLowerCase().replace(/[^a-z0-9]+/g,`_`).replace(/^_+|_+$/g,``)||`image`,r=`<${n}>`;for(let e=2;t.includes(r);e+=1)r=`<${n}_${String(e)}>`;return r}async function O(e){if(!me.has(e.type))return null;let t=new Uint8Array(await e.arrayBuffer()),n=``;for(let e=0;e<t.length;e+=32768)n+=String.fromCharCode(...t.subarray(e,e+32768));return{mimeType:e.type,data:btoa(n)}}function k(e){return`data:${e.mimeType};base64,${e.data}`}function A(e,t){return typeof e==`string`?e===t:Array.isArray(e)?e.some(e=>A(e,t)):typeof e==`object`&&e?Object.values(e).some(e=>A(e,t)):!1}function j(e,t){return Object.fromEntries(Object.entries(e).filter(([e])=>A(t,e)))}function M(e,t,n){let r=he(e,[...Object.keys(t),...n.map(e=>`<${e}>`)]);return{key:r.slice(1,-1),reference:r}}function N(e){return typeof e==`object`&&e&&!Array.isArray(e)?e:void 0}function P(e,t){let{images:n,state:r}=t;for(let[i,a]of e){let{key:e,reference:o}=M(i.name,{...t.host,...n},Object.keys(r));n={...n,[o]:a},r={...r,[e]:o}}return{images:n,state:r}}function F(e,t){let n=e;for(let e of t.split(`.`)){if(typeof n!=`object`||!n)return;n=Array.isArray(n)?n[Number(e)]:n[e]}return n}function I(e,t,n){let r=Object.keys(e),i=n===void 0||n in e?n:F(t,n);return e[(typeof i==`string`&&i in e?i:void 0)??r.find(e=>A(t,e))??r[0]??``]}function L(e,t,n){return{x:e.left*t,y:e.top*n,width:(e.right-e.left)*t,height:(e.bottom-e.top)*n,line:Math.max(2,Math.round(Math.min(t,n)/200))}}var R=.45;async function ge(e,t,n){let r=new Image;r.src=e,await r.decode();let i=document.createElement(`canvas`);i.width=r.naturalWidth,i.height=r.naturalHeight;let a=i.getContext(`2d`);if(!a)return e;let o=L(t,i.width,i.height);return a.drawImage(r,0,0),a.fillStyle=n.shade,a.globalAlpha=R,a.beginPath(),a.rect(0,0,i.width,i.height),a.rect(o.x,o.y,o.width,o.height),a.fill(`evenodd`),a.globalAlpha=1,a.strokeStyle=n.outline,a.lineWidth=o.line,a.strokeRect(o.x,o.y,o.width,o.height),i.toDataURL(`image/png`)}function _e(e){let t=e.right-e.left,n=e.bottom-e.top;return{width:100/t,height:100/n,left:-e.left/t*100,top:-e.top/n*100}}function ve(e){return e.every(e=>typeof e==`string`)}function z(e){return e==null||typeof e==`string`?``:typeof e==`number`?0:typeof e==`boolean`?!1:Array.isArray(e)?[]:Object.fromEntries(Object.entries(e).map(([e,t])=>[e,z(t)]))}function ye(e){let t=e[0];if(typeof t!=`object`||!t||Array.isArray(t))return null;let n=Object.keys(t);return n.length===0||n.length>4||!e.every(e=>typeof e==`object`&&!!e&&!Array.isArray(e)&&Object.keys(e).join()===n.join()&&Object.values(e).every(e=>typeof e!=`object`||!e))?null:n.map(t=>{let n=e.map(e=>String(e[t]??``).length),r=Math.max(t.length,...n);return{key:t,weight:Math.min(4,Math.max(1,Math.round(r/10)))}})}var B=t();function be(e){return e===null?[]:Array.isArray(e)?e:[e]}function V(){let e=v(),[t,n]=(0,E.useState)(null);return{read:async e=>{n(null);let t=[];for(let r of be(e)){let e=await O(r);e?t.push([r,e]):n(r.name)}return t},status:t===null?void 0:{type:`error`,message:e(`@theorem.decision.image_bad`,{file:t})}}}function xe({onImages:e}){let t=v(),{read:n,status:r}=V();return(0,B.jsx)(T,{label:t(`@theorem.decision.add_image`),isLabelHidden:!0,mode:`dropzone`,isMultiple:!0,accept:D,value:null,placeholder:t(`@theorem.decision.add_image_hint`),status:r,statusVariant:`detached`,onChange:t=>{n(t).then(t=>{t.length>0&&e(t)})}})}var Se={search:()=>[],bootstrap:()=>[]},Ce=48;function H(e,t,n){return Math.min(Math.max(e.split(`
2
2
  `).length,t),n)}var U=(0,E.createContext)({images:{},onImages:()=>{}});function we({value:e,label:t,isLabelHidden:n}){let r=v(),{images:i,onImages:a}=(0,E.useContext)(U),{read:o,status:s}=V(),[f,p]=(0,E.useState)(!1),m=Object.hasOwn(i,e)?k(i[e]):void 0;return(0,B.jsxs)(c,{gap:2,vAlign:`center`,children:[(0,B.jsx)(d,{src:m,alt:t,label:e,onClick:m?()=>p(!0):void 0}),m?(0,B.jsx)(u,{isOpen:f,onOpenChange:p,media:{src:m,alt:t,caption:e},hasZoom:!0}):null,(0,B.jsx)(l,{size:`fill`,children:(0,B.jsx)(T,{label:t,isLabelHidden:n,accept:D,value:null,placeholder:r(`@theorem.decision.replace_image`),status:s,statusVariant:`detached`,onChange:t=>{o(t).then(([t])=>{t&&a({...i,[e]:t[1]})})}})})]})}function W({value:e,onChange:t,label:n,isLabelHidden:r}){let{images:i}=(0,E.useContext)(U),[a]=(0,E.useState)(()=>typeof e==`string`&&(e.length>Ce||e.includes(`
3
3
  `))),[o]=(0,E.useState)(()=>typeof e==`string`&&Object.hasOwn(i,e));if(o&&typeof e==`string`)return(0,B.jsx)(we,{value:e,label:n,isLabelHidden:r});if(typeof e==`boolean`)return(0,B.jsx)(de,{label:n,value:e,onChange:t});if(typeof e==`number`)return(0,B.jsx)(pe,{label:n,isLabelHidden:r,size:`sm`,value:e,isWheelEnabled:!1,onChange:t});if(e===null)return(0,B.jsx)(b,{label:n,isLabelHidden:r,size:`sm`,value:``,placeholder:`null`,isDisabled:!0,onChange:()=>{}});let s=String(e);return a?(0,B.jsx)(w,{label:n,isLabelHidden:r,size:`sm`,rows:H(s,2,12),value:s,onChange:t}):(0,B.jsx)(b,{label:n,isLabelHidden:r,size:`sm`,value:s,onChange:t})}function G({label:e,isRequired:t,description:n,children:r}){let i=(0,E.useId)();return(0,B.jsxs)(s,{gap:2,role:`group`,"aria-labelledby":i,children:[(0,B.jsx)(f,{label:e,inputID:``,labelID:i,isGroupLabel:!0,isRequired:t,description:n}),r]})}function K({children:e,...t}){return(0,B.jsx)(G,{...t,children:(0,B.jsx)(`div`,{style:{paddingInlineStart:12,borderInlineStart:`1px solid var(--color-border)`},children:e})})}function q({field:e,onAdd:t}){let n=v();return(0,B.jsx)(c,{children:(0,B.jsx)(m,{label:n(`@theorem.decision.add_item`,{field:e}),size:`sm`,variant:`ghost`,icon:(0,B.jsx)(le,{size:14}),onClick:t})})}function J({index:e,onRemove:t}){let n=v();return(0,B.jsx)(ee,{label:n(`@theorem.decision.remove_item`,{item:n(`@theorem.data.item`,{index:String(e+1)})}),size:`sm`,variant:`ghost`,icon:(0,B.jsx)(p,{size:14}),onClick:t})}function Y({value:e,onChange:t}){return(0,B.jsx)(s,{gap:3,children:Object.entries(e).map(([n,r])=>(0,B.jsx)(X,{label:S(n),value:r,onChange:r=>t({...e,[n]:r})},n))})}function Te({value:e,onChange:t,label:n}){let r=v(),i=oe(e);if(ve(e))return(0,B.jsx)(ue,{label:n,size:`sm`,value:e.map((e,t)=>({id:`${String(t)}:${e}`,label:e})),searchSource:Se,hasCreate:!0,debounceMs:0,placeholder:r(`@theorem.decision.add_value`),onChange:e=>t(e.map(e=>e.label))});let a=ye(e),o=(0,B.jsx)(q,{field:n,onAdd:()=>t([...e,z(e.at(-1))])}),u=n=>(0,B.jsx)(J,{index:n,onRemove:()=>{i.drop(n),t(e.filter((e,t)=>t!==n))}});if(a){let r={display:`grid`,gap:8,alignItems:`start`,gridTemplateColumns:`${a.map(e=>`minmax(0, ${String(e.weight)}fr)`).join(` `)} auto`},s=e;return(0,B.jsxs)(G,{label:n,children:[(0,B.jsxs)(`div`,{style:r,"aria-hidden":!0,children:[a.map(e=>(0,B.jsx)(_,{type:`supporting`,color:`secondary`,maxLines:1,children:S(e.key)},e.key)),(0,B.jsx)(`span`,{style:{width:28}})]}),i.rows.map(({index:e,key:n})=>{let i=s[e];return(0,B.jsxs)(`div`,{style:r,children:[a.map(n=>(0,B.jsx)(W,{label:`${S(n.key)} ${String(e+1)}`,isLabelHidden:!0,value:i[n.key]??null,onChange:r=>t(s.map((t,i)=>i===e?{...t,[n.key]:r}:t))},n.key)),u(e)]},n)}),o]})}return(0,B.jsx)(K,{label:n,children:(0,B.jsxs)(s,{gap:3,children:[i.rows.map(({item:n,index:i,key:a})=>{let o=r(`@theorem.data.item`,{index:String(i+1)}),s=n=>t(e.map((e,t)=>t===i?n:e));return(0,B.jsxs)(c,{gap:2,vAlign:`start`,children:[(0,B.jsx)(l,{size:`fill`,children:ce(n)?(0,B.jsx)(W,{label:o,isLabelHidden:!0,value:n,onChange:s}):(0,B.jsx)(X,{label:o,value:n,onChange:s})}),u(i)]},a)}),o]})})}function X({value:e,onChange:t,label:n}){return Array.isArray(e)?(0,B.jsx)(Te,{label:n,value:e,onChange:t}):typeof e==`object`&&e?(0,B.jsx)(K,{label:n,children:(0,B.jsx)(Y,{value:e,onChange:t})}):(0,B.jsx)(W,{label:n,value:e,onChange:t})}function Ee({value:e,onChange:t,label:n}){return typeof e==`object`&&e&&!Array.isArray(e)?(0,B.jsx)(Y,{value:e,onChange:t}):(0,B.jsx)(X,{label:n,value:e,onChange:t})}var De={"--theorem-console-card":`var(--color-background-muted)`},Z=`(width < 768px)`,Q=(0,E.createContext)(!0);function $(){return(0,E.useSyncExternalStore)(e=>{let t=globalThis.matchMedia(Z);return t.addEventListener(`change`,e),()=>{t.removeEventListener(`change`,e)}},()=>globalThis.matchMedia(Z).matches,()=>!1)}function Oe({flush:e,wide:t,maxWidth:n,children:r}){return(0,B.jsx)(s,{height:`100%`,paddingInline:3,style:e?De:void 0,children:(0,B.jsx)(y,{variant:`transparent`,height:`100%`,padding:0,style:e?{overflowY:`auto`}:{...re,overflowY:`auto`},children:(0,B.jsx)(se,{axis:`horizontal`,width:`100%`,minHeight:`100%`,children:(0,B.jsx)(s,{width:`100%`,maxWidth:t?void 0:n,gap:3,padding:4,children:r})})})})}function ke({inspector:e,maxWidth:t,flush:n=!1,columns:i=!1,requestLabel:a,className:s,style:c,children:l}){let u=(0,E.useRef)(null);return(0,B.jsx)(x,{inspector:e,children:(0,B.jsx)(o,{ref:u,height:`fill`,className:s,style:c,header:e.toggle?(0,B.jsx)(ie,{children:e.toggle}):void 0,content:(0,B.jsx)(r,{padding:0,isScrollable:!1,children:(0,B.jsx)(Ae,{layoutRef:u,flush:n,columns:i,maxWidth:t,requestLabel:a,children:l})})})})}function Ae({layoutRef:e,flush:t,columns:n,maxWidth:r,requestLabel:i,children:a}){let o=$(),s=E.Children.toArray(a).length,c=n&&s>1;return c&&!o?(0,B.jsx)(je,{requestLabel:i,basisWidth:e.current?.clientWidth??0,children:a}):(0,B.jsx)(Oe,{flush:t,wide:c,maxWidth:r,children:a})}function je({requestLabel:e=`Request`,basisWidth:t,children:n}){let i=v(),a=(0,E.useRef)(null),s=te({defaultSize:t>0?Math.round(t*.4):`40%`,minSize:280,maxSize:`70%`,containerRef:a}),[c,l]=E.Children.toArray(n),u={name:e,show:e,hide:e,resize:i(`@theorem.panel.resize`,{name:e})};return(0,B.jsx)(Q,{value:!1,children:(0,B.jsx)(o,{ref:a,height:`fill`,start:(0,B.jsx)(g,{side:`start`,className:`theorem-console-request`,labels:u,resizable:s,open:!0,children:(0,B.jsx)(h,{label:e,children:c})}),content:(0,B.jsx)(r,{padding:0,isScrollable:!1,children:(0,B.jsx)(ne,{inset:`beside`,className:`theorem-console-response`,children:l})})})})}function Me({children:e}){return(0,B.jsx)(y,{variant:`muted`,padding:0,className:`theorem-console-card`,style:C,children:(0,B.jsx)(Q,{value:!1,children:e})})}function Ne({label:e,fill:t=!1,children:n}){return(0,E.use)(Q)?(0,B.jsx)(y,{variant:`muted`,padding:t?0:4,className:`theorem-console-card`,style:C,children:t?n:(0,B.jsx)(s,{height:`100%`,gap:3,children:n})}):t?n:(0,B.jsx)(h,{label:e,padding:4,children:n})}function Pe(e){return t=>{t.key===`Enter`&&(t.metaKey||t.ctrlKey)&&(t.preventDefault(),e())}}function Fe({title:e,view:t,hasFields:n,onView:r,onRun:o,children:l}){let u=v(),d=(0,E.use)(Q),f=(0,B.jsxs)(s,{gap:3,padding:d?void 0:4,onKeyDown:Pe(o),children:[(0,B.jsxs)(c,{gap:2,hAlign:`between`,vAlign:`center`,children:[(0,B.jsx)(_,{type:`supporting`,color:`secondary`,as:`h3`,children:e}),(0,B.jsxs)(i,{label:u(`@theorem.decision.view`),size:`sm`,value:t,onChange:e=>{r(e===`json`?`json`:`fields`)},children:[(0,B.jsx)(a,{value:`fields`,label:u(`@theorem.decision.fields`),isDisabled:!n}),(0,B.jsx)(a,{value:`json`,label:u(`@theorem.data.json`)})]})]}),l]});return d?(0,B.jsx)(y,{variant:`muted`,padding:4,className:`theorem-console-card`,style:C,children:f}):f}var Ie={"--font-family-body":`var(--font-family-code)`};function Le({label:e,text:t,isInvalid:n,onChange:r}){return(0,B.jsx)(w,{label:e,isLabelHidden:!0,value:t,onChange:r,rows:H(t,8,24),hasSpellCheck:!1,status:n?{type:`error`}:void 0,controlStyle:Ie})}function Re({note:e,isReady:t,isRunning:n,runLabel:r,runningLabel:i,stopLabel:a,onRun:o,onStop:s}){return(0,B.jsxs)(c,{gap:3,hAlign:`between`,vAlign:`center`,children:[(0,B.jsx)(_,{type:`supporting`,color:`secondary`,style:t?void 0:{color:`var(--color-error)`},hasTabularNumbers:!0,children:e}),(0,B.jsxs)(c,{gap:2,vAlign:`center`,children:[n?(0,B.jsx)(m,{label:a,variant:`ghost`,onClick:s}):null,(0,B.jsx)(m,{label:n?i:r,variant:`primary`,isLoading:n,isDisabled:!t,onClick:o})]})]})}function ze(){let e=ae();return(0,E.useMemo)(()=>{let t=new Intl.NumberFormat(e,{style:`unit`,unit:`byte`,unitDisplay:`narrow`}),n=new Intl.NumberFormat(e,{style:`unit`,unit:`kilobyte`,unitDisplay:`narrow`,maximumFractionDigits:1});return e=>e<1024?t.format(e):n.format(e/1024)},[e])}function Be({payload:e,runtime:t=null,traces:n,onActivity:r},i,a){return(0,E.useMemo)(()=>{let o=t?a(e,t,{traces:n}):i(e,{traces:n});return r?fe(o,r):o},[e,t,n,r,i,a])}export{N as C,j as S,I as _,Fe as a,k as b,ze as c,G as d,J as f,xe as g,H as h,Le as i,q as l,U as m,ke as n,Ne as o,Ee as p,Me as r,Re as s,Be as t,K as u,_e as v,ge as x,P as y};
@@ -1 +1 @@
1
- import{r as e}from"./rolldown-runtime-hePW80VL.js";import{c as t,u as n}from"./themeProps-3IqahpCr.js";import{n as r,o as i,p as a,s as o}from"./browser-transport-CidXgImE.js";import{n as s,t as c}from"./labels-provider-BqgbdxdT.js";import{a as l,t as u}from"./Banner-DgPjY5Yu.js";import{c as d}from"./reader-B0gVhfoZ.js";import{p as f,u as p}from"./tree-DeO1319a.js";import{n as m,t as h}from"./PaneState-C8jetBGI.js";import{C as g,S as _,a as v,c as y,g as b,i as x,m as S,n as C,o as w,p as T,s as E,t as D,y as O}from"./studio-console-D59tIXKj.js";import{i as k,t as A}from"./use-one-call-BwVhWczQ.js";import{$ as j,Q as M,l as N}from"./index-D7CjWX1v.js";var P=(e,t,n,r)=>e.decide(n,t,r);function F(e){let{iface:t,describeFailure:n}=o(e),{call:r,...i}=A(e,`deciding`,P);return{iface:t,describeFailure:n,...i,decide:r}}var I=e(n(),1),L=t();function R(e,t){let n;try{n=JSON.parse(e)}catch{return{ok:!1,reason:`invalid_json`}}if(n===null)return{ok:!1,reason:`null_state`,state:n};let r=new TextEncoder().encode(JSON.stringify(n)).byteLength;return t!==void 0&&r>t?{ok:!1,reason:`too_large`,bytes:r,state:n}:{ok:!0,state:n,bytes:r}}function z(e,t,n,r){return t.ok?n===void 0?null:e(`@theorem.decision.state_size`,{size:r(t.bytes),limit:r(n)}):t.reason===`too_large`?e(`@theorem.decision.too_large`,{limit:r(n??0)}):e(t.reason===`invalid_json`?`@theorem.decision.invalid_json`:`@theorem.decision.null_state`)}function B(e){return e.failure||e.result?`settled`:e.status===`deciding`?`waiting`:`idle`}function V(e,t){let[n,r]=(0,I.useState)(e),i=R(n,t),[a,o]=(0,I.useState)(()=>i.state===void 0?`json`:`fields`);return{text:n,setText:r,check:i,shown:i.state===void 0?`json`:a,setView:o}}function H({form:e,iface:t,images:n,onImages:r,note:i,isRunning:a,onRun:o,onStop:c}){let l=s(),{text:u,setText:d,check:f,shown:p,setView:m}=e,h=t.questions.some(e=>e.type===`box`)||Object.keys(n).length>0,_=p===`fields`?f.state:void 0,y=g(_);return(0,L.jsxs)(v,{title:l(`@theorem.decision.state`),view:p,hasFields:f.state!==void 0,onView:m,onRun:o,children:[_===void 0?(0,L.jsx)(x,{label:l(`@theorem.decision.state`),text:u,isInvalid:!f.ok,onChange:d}):(0,L.jsx)(S,{value:{images:n,onImages:r},children:(0,L.jsx)(T,{label:l(`@theorem.decision.state`),value:_,onChange:e=>{d(JSON.stringify(e,null,2))}})}),h&&y?(0,L.jsx)(b,{onImages:e=>{let i=O(e,{images:n,host:t.images,state:y});r(i.images),d(JSON.stringify(i.state,null,2))}}):null,(0,L.jsx)(E,{note:i,isReady:f.ok,isRunning:a,runLabel:l(`@theorem.decision.decide`),runningLabel:l(`@theorem.decision.deciding`),stopLabel:l(`@theorem.decision.stop`),onRun:o,onStop:c})]})}function U({iface:e,decision:t,asked:n,onQuestion:r,questionText:i}){let a=s(),o=t.status===`deciding`;return(0,L.jsxs)(L.Fragment,{children:[t.failure?(0,L.jsx)(u,{status:`error`,role:`alert`,title:t.failure.error}):null,o&&!t.result?(0,L.jsx)(m,{label:a(`@theorem.decision.deciding`),since:t.startedAt}):null,t.result?(0,L.jsx)(k,{iface:e,result:t.result,asked:n,onQuestion:r,questionText:i,elapsedMs:t.elapsedMs,isStale:o}):null]})}function W(e,t,n,r,i){if(t===`idle`)return null;if(!e)return i;let a=t===`waiting`;return(0,L.jsx)(w,{label:n.answers,fill:a,children:a?(0,L.jsx)(m,{label:n.deciding,since:r}):i})}function G({transport:e,iface:t,decision:n,defaultState:r=`{}`,defaultImages:i,onQuestion:a,questionText:o,maxWidth:c=`960px`,trace:u,flush:d,columns:f=!1,className:p,style:m}){let h=s(),g=y(),v=V(r,t.maxStateBytes),{check:b}=v,[x,S]=(0,I.useState)(i??{}),[w,T]=(0,I.useState)(),E=l(t,e.traces,u);return(0,L.jsxs)(C,{inspector:E,maxWidth:c,flush:d,columns:f,requestLabel:h(`@theorem.decision.state`),className:p,style:m,children:[(0,L.jsx)(H,{form:v,iface:t,images:x,onImages:S,note:z(h,b,t.maxStateBytes,g),isRunning:n.status===`deciding`,onRun:()=>{if(!b.ok)return;let e=_(x,b.state);T({images:{...t.images,...e},state:b.state}),n.decide(b.state,Object.keys(e).length>0?e:void 0)},onStop:n.cancel}),W(f,B(n),{answers:h(`@theorem.decision.answers`),deciding:h(`@theorem.decision.deciding`)},n.startedAt,(0,L.jsx)(U,{iface:t,decision:n,asked:w,onQuestion:a,questionText:o}))]})}function K(e){let t=s(),n=F(e.transport);return n.describeFailure?(0,L.jsx)(h,{title:n.describeFailure.error}):n.iface?(0,L.jsx)(G,{...e,iface:n.iface,decision:n}):(0,L.jsx)(m,{label:t(`@theorem.chat.loading`)})}function q({endpoint:e,http:t,transport:n,theme:r,mode:a,labels:o,...s}){let l=(0,I.useRef)(t);l.current=t;let u=(0,I.useMemo)(()=>n??d({...l.current,endpoint:e}),[n,e]);return(0,L.jsx)(i,{theme:r,mode:a,children:(0,L.jsx)(c,{labels:o,children:(0,L.jsx)(K,{...s,transport:u})})})}var J;function Y(e){if(e.agentId===`pantry.jev`)return J??=j(),{defaultState:M,defaultImages:{...(0,I.use)(J)}};let{profile:t}=e;return{defaultState:(t.type===`decision`?Object.values(t.models)[0]:void 0)?.apiId.startsWith(`respan/`)?f:p}}function X(e){return typeof e==`string`?e:Array.isArray(e)?e.map(X).join(` `):Object.entries(e).map(([e,t])=>`${e}: ${X(t)}`).join(` `)}function Z(e){let t=D(e,a,r);return(0,L.jsx)(Q,{...e,transport:t})}function Q({payload:e,transport:t,trace:n,flush:r,columns:i,className:a}){let{open:o}=(0,I.useContext)(N),s=Y(e),{questions:c}=e,l=(0,I.useMemo)(()=>c&&Object.fromEntries(Object.entries(c).map(([e,t])=>[e,X(t.instructions)])),[c]);return(0,L.jsx)(q,{transport:t,...s,trace:n,flush:r,columns:i,className:a,onQuestion:o,questionText:l})}export{Q as DecisionView,Z as StudioDecision};
1
+ import{r as e}from"./rolldown-runtime-hePW80VL.js";import{c as t,u as n}from"./themeProps-3IqahpCr.js";import{n as r,o as i,p as a,s as o}from"./browser-transport-KwpVG2px.js";import{n as s,t as c}from"./labels-provider-BqgbdxdT.js";import{a as l,t as u}from"./Banner-D2s9xjDu.js";import{c as d}from"./reader-B0gVhfoZ.js";import{p as f,u as p}from"./tree-DeO1319a.js";import{n as m,t as h}from"./PaneState-C8jetBGI.js";import{C as g,S as _,a as v,c as y,g as b,i as x,m as S,n as C,o as w,p as T,s as E,t as D,y as O}from"./studio-console-CawD8qZ8.js";import{i as k,t as A}from"./use-one-call-BFIsOrln.js";import{$ as j,Q as M,l as N}from"./index-C_weLbPu.js";var P=(e,t,n,r)=>e.decide(n,t,r);function F(e){let{iface:t,describeFailure:n}=o(e),{call:r,...i}=A(e,`deciding`,P);return{iface:t,describeFailure:n,...i,decide:r}}var I=e(n(),1),L=t();function R(e,t){let n;try{n=JSON.parse(e)}catch{return{ok:!1,reason:`invalid_json`}}if(n===null)return{ok:!1,reason:`null_state`,state:n};let r=new TextEncoder().encode(JSON.stringify(n)).byteLength;return t!==void 0&&r>t?{ok:!1,reason:`too_large`,bytes:r,state:n}:{ok:!0,state:n,bytes:r}}function z(e,t,n,r){return t.ok?n===void 0?null:e(`@theorem.decision.state_size`,{size:r(t.bytes),limit:r(n)}):t.reason===`too_large`?e(`@theorem.decision.too_large`,{limit:r(n??0)}):e(t.reason===`invalid_json`?`@theorem.decision.invalid_json`:`@theorem.decision.null_state`)}function B(e){return e.failure||e.result?`settled`:e.status===`deciding`?`waiting`:`idle`}function V(e,t){let[n,r]=(0,I.useState)(e),i=R(n,t),[a,o]=(0,I.useState)(()=>i.state===void 0?`json`:`fields`);return{text:n,setText:r,check:i,shown:i.state===void 0?`json`:a,setView:o}}function H({form:e,iface:t,images:n,onImages:r,note:i,isRunning:a,onRun:o,onStop:c}){let l=s(),{text:u,setText:d,check:f,shown:p,setView:m}=e,h=t.questions.some(e=>e.type===`box`)||Object.keys(n).length>0,_=p===`fields`?f.state:void 0,y=g(_);return(0,L.jsxs)(v,{title:l(`@theorem.decision.state`),view:p,hasFields:f.state!==void 0,onView:m,onRun:o,children:[_===void 0?(0,L.jsx)(x,{label:l(`@theorem.decision.state`),text:u,isInvalid:!f.ok,onChange:d}):(0,L.jsx)(S,{value:{images:n,onImages:r},children:(0,L.jsx)(T,{label:l(`@theorem.decision.state`),value:_,onChange:e=>{d(JSON.stringify(e,null,2))}})}),h&&y?(0,L.jsx)(b,{onImages:e=>{let i=O(e,{images:n,host:t.images,state:y});r(i.images),d(JSON.stringify(i.state,null,2))}}):null,(0,L.jsx)(E,{note:i,isReady:f.ok,isRunning:a,runLabel:l(`@theorem.decision.decide`),runningLabel:l(`@theorem.decision.deciding`),stopLabel:l(`@theorem.decision.stop`),onRun:o,onStop:c})]})}function U({iface:e,decision:t,asked:n,onQuestion:r,questionText:i}){let a=s(),o=t.status===`deciding`;return(0,L.jsxs)(L.Fragment,{children:[t.failure?(0,L.jsx)(u,{status:`error`,role:`alert`,title:t.failure.error}):null,o&&!t.result?(0,L.jsx)(m,{label:a(`@theorem.decision.deciding`),since:t.startedAt}):null,t.result?(0,L.jsx)(k,{iface:e,result:t.result,asked:n,onQuestion:r,questionText:i,elapsedMs:t.elapsedMs,isStale:o}):null]})}function W(e,t,n,r,i){if(t===`idle`)return null;if(!e)return i;let a=t===`waiting`;return(0,L.jsx)(w,{label:n.answers,fill:a,children:a?(0,L.jsx)(m,{label:n.deciding,since:r}):i})}function G({transport:e,iface:t,decision:n,defaultState:r=`{}`,defaultImages:i,onQuestion:a,questionText:o,maxWidth:c=`960px`,trace:u,flush:d,columns:f=!1,className:p,style:m}){let h=s(),g=y(),v=V(r,t.maxStateBytes),{check:b}=v,[x,S]=(0,I.useState)(i??{}),[w,T]=(0,I.useState)(),E=l(t,e.traces,u);return(0,L.jsxs)(C,{inspector:E,maxWidth:c,flush:d,columns:f,requestLabel:h(`@theorem.decision.state`),className:p,style:m,children:[(0,L.jsx)(H,{form:v,iface:t,images:x,onImages:S,note:z(h,b,t.maxStateBytes,g),isRunning:n.status===`deciding`,onRun:()=>{if(!b.ok)return;let e=_(x,b.state);T({images:{...t.images,...e},state:b.state}),n.decide(b.state,Object.keys(e).length>0?e:void 0)},onStop:n.cancel}),W(f,B(n),{answers:h(`@theorem.decision.answers`),deciding:h(`@theorem.decision.deciding`)},n.startedAt,(0,L.jsx)(U,{iface:t,decision:n,asked:w,onQuestion:a,questionText:o}))]})}function K(e){let t=s(),n=F(e.transport);return n.describeFailure?(0,L.jsx)(h,{title:n.describeFailure.error}):n.iface?(0,L.jsx)(G,{...e,iface:n.iface,decision:n}):(0,L.jsx)(m,{label:t(`@theorem.chat.loading`)})}function q({endpoint:e,http:t,transport:n,theme:r,mode:a,labels:o,...s}){let l=(0,I.useRef)(t);l.current=t;let u=(0,I.useMemo)(()=>n??d({...l.current,endpoint:e}),[n,e]);return(0,L.jsx)(i,{theme:r,mode:a,children:(0,L.jsx)(c,{labels:o,children:(0,L.jsx)(K,{...s,transport:u})})})}var J;function Y(e){if(e.agentId===`pantry.jev`)return J??=j(),{defaultState:M,defaultImages:{...(0,I.use)(J)}};let{profile:t}=e;return{defaultState:(t.type===`decision`?Object.values(t.models)[0]:void 0)?.apiId.startsWith(`respan/`)?f:p}}function X(e){return typeof e==`string`?e:Array.isArray(e)?e.map(X).join(` `):Object.entries(e).map(([e,t])=>`${e}: ${X(t)}`).join(` `)}function Z(e){let t=D(e,a,r);return(0,L.jsx)(Q,{...e,transport:t})}function Q({payload:e,transport:t,trace:n,flush:r,columns:i,className:a}){let{open:o}=(0,I.useContext)(N),s=Y(e),{questions:c}=e,l=(0,I.useMemo)(()=>c&&Object.fromEntries(Object.entries(c).map(([e,t])=>[e,X(t.instructions)])),[c]);return(0,L.jsx)(q,{transport:t,...s,trace:n,flush:r,columns:i,className:a,onQuestion:o,questionText:l})}export{Q as DecisionView,Z as StudioDecision};