sparkdesign 0.4.4 → 0.4.6

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 (136) hide show
  1. package/README.md +74 -22
  2. package/cli/dist/commands/add.js +22 -12
  3. package/cli/dist/commands/diff.js +8 -4
  4. package/cli/dist/commands/init.js +84 -9
  5. package/cli/dist/commands/list.js +8 -4
  6. package/cli/dist/index.js +9 -6
  7. package/cli/dist/utils/config.js +16 -8
  8. package/cli/dist/utils/package-manager.js +75 -0
  9. package/cli/dist/utils/registry.js +8 -4
  10. package/cli/dist/utils/tokens.js +33 -25
  11. package/cli/dist/utils/transform.js +9 -5
  12. package/cli/dist/utils/tsconfig.js +182 -0
  13. package/cli/registry/AGENTS.md +18 -0
  14. package/cli/registry/__tests__/chat/thinking-indicator.test.tsx +2 -2
  15. package/cli/registry/chat/chat-input/chat-input-folder-selector.tsx +1 -1
  16. package/cli/registry/chat/chat-input/folder-permission-dialog.tsx +2 -2
  17. package/cli/registry/chat/image-generating.tsx +1 -1
  18. package/cli/registry/chat/response/context.tsx +1 -1
  19. package/cli/registry/chat/thinking-indicator.tsx +1 -1
  20. package/cli/registry/tokens/index.css +8 -5
  21. package/cli/registry/tokens/theme-base.css +235 -0
  22. package/{dist/tokens/themes/dark-qoder.css → cli/registry/tokens/themes/dark-mint.css} +1 -1
  23. package/cli/registry/tokens/themes/dark-parchment.css +104 -103
  24. package/{dist/tokens/themes/light-qoder.css → cli/registry/tokens/themes/light-mint.css} +1 -1
  25. package/cli/registry/tokens/themes/light-parchment.css +103 -102
  26. package/dist/registry/basic/alert-dialog.d.ts +7 -5
  27. package/dist/registry/basic/avatar.d.ts +7 -5
  28. package/dist/registry/basic/collapse.d.ts +7 -5
  29. package/dist/registry/basic/collapsible-card.d.ts +7 -6
  30. package/dist/registry/basic/collapsible.d.ts +7 -5
  31. package/dist/registry/basic/dropdown-menu.d.ts +7 -5
  32. package/dist/registry/basic/icons-inline.d.ts +7 -5
  33. package/dist/registry/basic/kbd.d.ts +7 -5
  34. package/dist/registry/basic/pagination.d.ts +7 -5
  35. package/dist/registry/basic/progress.d.ts +7 -5
  36. package/dist/registry/basic/radio-group.d.ts +7 -5
  37. package/dist/registry/basic/resizable.d.ts +7 -5
  38. package/dist/registry/basic/select.d.ts +7 -5
  39. package/dist/registry/basic/slider.d.ts +7 -5
  40. package/dist/registry/basic/sonner.d.ts +7 -5
  41. package/dist/registry/basic/switch.d.ts +7 -5
  42. package/dist/registry/basic/tabs.d.ts +7 -5
  43. package/dist/registry/basic/tag.d.ts +7 -5
  44. package/dist/registry/basic/theme-from-document.d.ts +7 -5
  45. package/dist/registry/basic/tooltip.d.ts +7 -5
  46. package/dist/registry/basic/typography.d.ts +7 -5
  47. package/dist/registry/chat/ask-user-part.d.ts +9 -3
  48. package/dist/registry/chat/browser-action-part.d.ts +9 -3
  49. package/dist/registry/chat/chat-input/compound.d.ts +7 -5
  50. package/dist/registry/chat/chat-input/context.d.ts +7 -5
  51. package/dist/registry/chat/chat-input/index.d.ts +7 -5
  52. package/dist/registry/chat/chat-input/types.d.ts +9 -3
  53. package/dist/registry/chat/chat-input/useAutoResizeTextarea.d.ts +9 -3
  54. package/dist/registry/chat/code-block-part.d.ts +9 -3
  55. package/dist/registry/chat/file-attachment.d.ts +7 -5
  56. package/dist/registry/chat/file-review-part.d.ts +9 -4
  57. package/dist/registry/chat/generated-images-grid.d.ts +9 -3
  58. package/dist/registry/chat/generation-status-bar.d.ts +8 -4
  59. package/dist/registry/chat/hint-banner.d.ts +9 -3
  60. package/dist/registry/chat/mermaid-part.d.ts +9 -3
  61. package/dist/registry/chat/plan-part.d.ts +9 -3
  62. package/dist/registry/chat/reasoning-step/index.d.ts +8 -6
  63. package/dist/registry/chat/reasoning-step/types.d.ts +9 -3
  64. package/dist/registry/chat/related-prompts.d.ts +9 -3
  65. package/dist/registry/chat/response/index.d.ts +8 -6
  66. package/dist/registry/chat/response/types.d.ts +9 -3
  67. package/dist/registry/chat/task-part.d.ts +9 -3
  68. package/dist/registry/chat/terminal-code-block-part.d.ts +9 -3
  69. package/dist/registry/chat/user-question/UserQuestionCard.d.ts +9 -3
  70. package/dist/registry/chat/user-question/UserQuestionFooter.d.ts +9 -3
  71. package/dist/registry/chat/user-question/UserQuestionHeader.d.ts +9 -3
  72. package/dist/registry/chat/user-question/types.d.ts +8 -5
  73. package/dist/registry/lib/file-icon-maps.d.ts +7 -7
  74. package/dist/registry/lib/utils.d.ts +8 -6
  75. package/dist/spark-design.cjs.js +6 -6
  76. package/dist/spark-design.es.js +10 -10
  77. package/dist/sparkdesign.css +2 -0
  78. package/dist/src/components/basic/AlertDialog/index.d.ts +7 -5
  79. package/dist/src/components/basic/Avatar/index.d.ts +9 -3
  80. package/dist/src/components/basic/Button/index.d.ts +9 -3
  81. package/dist/src/components/basic/Collapse/index.d.ts +7 -4
  82. package/dist/src/components/basic/Collapsible/index.d.ts +9 -4
  83. package/dist/src/components/basic/CollapsibleCard/index.d.ts +9 -3
  84. package/dist/src/components/basic/CollapsibleSection/index.d.ts +7 -7
  85. package/dist/src/components/basic/DropdownMenu/index.d.ts +7 -5
  86. package/dist/src/components/basic/EllipsisText/index.d.ts +7 -15
  87. package/dist/src/components/basic/IconButton/index.d.ts +9 -3
  88. package/dist/src/components/basic/Kbd/index.d.ts +9 -3
  89. package/dist/src/components/basic/OptionList/index.d.ts +9 -3
  90. package/dist/src/components/basic/Pagination/index.d.ts +9 -3
  91. package/dist/src/components/basic/Progress/index.d.ts +9 -3
  92. package/dist/src/components/basic/RadioGroup/index.d.ts +9 -3
  93. package/dist/src/components/basic/Resizable/index.d.ts +9 -3
  94. package/dist/src/components/basic/Scrollbar/index.d.ts +9 -3
  95. package/dist/src/components/basic/Select/index.d.ts +7 -4
  96. package/dist/src/components/basic/ShimmeringText/index.d.ts +9 -3
  97. package/dist/src/components/basic/Skeleton/index.d.ts +9 -3
  98. package/dist/src/components/basic/Slider/index.d.ts +9 -3
  99. package/dist/src/components/basic/Spinner/index.d.ts +9 -3
  100. package/dist/src/components/basic/Switch/index.d.ts +8 -5
  101. package/dist/src/components/basic/Table/index.d.ts +9 -3
  102. package/dist/src/components/basic/Tabs/index.d.ts +9 -3
  103. package/dist/src/components/basic/Tag/index.d.ts +7 -4
  104. package/dist/src/components/basic/Toggle/index.d.ts +9 -3
  105. package/dist/src/components/basic/Tooltip/index.d.ts +7 -4
  106. package/dist/src/components/basic/Typography/index.d.ts +9 -3
  107. package/dist/src/components/chat/GeneratedImagesGrid/index.d.ts +9 -3
  108. package/dist/src/components/chat/GenerationStatusBar/index.d.ts +9 -3
  109. package/dist/src/components/chat/Markdown/demo-content.d.ts +1 -1
  110. package/dist/src/components/chat/Markdown/index.d.ts +9 -3
  111. package/dist/src/components/chat/Response/StreamingMarkdownBlock.d.ts +9 -3
  112. package/dist/src/components/chat/Response/index.d.ts +8 -6
  113. package/dist/src/components/chat/UserMessage/index.d.ts +9 -3
  114. package/dist/src/components/index.d.ts +7 -9
  115. package/dist/src/icons/context.d.ts +7 -6
  116. package/dist/src/icons/types.d.ts +7 -5
  117. package/dist/src/lib/ThemeStyleContext.d.ts +9 -9
  118. package/dist/src/lib/file-icon.d.ts +7 -6
  119. package/dist/src/lib/i18n.d.ts +7 -6
  120. package/dist/src/lib/index.d.ts +9 -3
  121. package/dist/src/lib/utils.d.ts +7 -5
  122. package/dist/theme-base.css +7 -8
  123. package/dist/theme.css +2 -2
  124. package/dist/themes/{dark-qoder.css → dark-mint.css} +1 -1
  125. package/dist/themes/{light-qoder.css → light-mint.css} +1 -1
  126. package/dist/tokens/AGENTS.md +47 -0
  127. package/dist/tokens/index.css +10 -19
  128. package/dist/tokens/theme-base.css +7 -8
  129. package/dist/tokens/theme.css +2 -2
  130. package/dist/tokens/themes/dark-mint.css +133 -0
  131. package/dist/tokens/themes/light-mint.css +132 -0
  132. package/package.json +11 -5
  133. package/cli/registry/tokens/themes/dark-qoder.css +0 -132
  134. package/cli/registry/tokens/themes/light-qoder.css +0 -131
  135. package/dist/qoder-design.css +0 -2
  136. package/dist/tokens/CLAUDE.md +0 -305
@@ -2943,7 +2943,7 @@ function vr(e) {
2943
2943
  return typeof e == "object" && "name" in e;
2944
2944
  }
2945
2945
  function wi(e, t) {
2946
- return xr(t) ? `${e}-${t.name}` : t === "qoder" ? e : `${e}-${t}`;
2946
+ return xr(t) ? `${e}-${t.name}` : t === "mint" ? e : `${e}-${t}`;
2947
2947
  }
2948
2948
  function Ni(e) {
2949
2949
  return vr(e) ? e.name : e;
@@ -2967,7 +2967,7 @@ function Ci(e, t) {
2967
2967
  function vm({
2968
2968
  children: e,
2969
2969
  appearance: t = "light",
2970
- theme: n = "qoder",
2970
+ theme: n = "mint",
2971
2971
  style: r = "neutral"
2972
2972
  }) {
2973
2973
  const s = se(() => wi(t, n), [t, n]), o = se(() => Ni(r), [r]), i = se(() => Ci(n, r), [n, r]), l = se(
@@ -2997,7 +2997,7 @@ function we() {
2997
2997
  const e = We(br);
2998
2998
  return e || {
2999
2999
  appearance: "light",
3000
- themeConfig: "qoder",
3000
+ themeConfig: "mint",
3001
3001
  styleConfig: "neutral",
3002
3002
  dataTheme: "light",
3003
3003
  dataStyle: "neutral",
@@ -6406,11 +6406,11 @@ function xs({
6406
6406
  return /* @__PURE__ */ a(Zi, { open: e, onOpenChange: t, children: /* @__PURE__ */ v(On, { className: "p-6", children: [
6407
6407
  /* @__PURE__ */ v(qr, { children: [
6408
6408
  /* @__PURE__ */ v(Qr, { className: "text-xl leading-xl font-semibold text-text", children: [
6409
- 'Allow Qoder Work to access and modify files in "',
6409
+ 'Allow Spark Design to access and modify files in "',
6410
6410
  n,
6411
6411
  '"?'
6412
6412
  ] }),
6413
- /* @__PURE__ */ a(Yr, { className: "mt-2 text-sm leading-sm text-text-tertiary", children: "This permission applies to all files and subfolders in this directory. Qoder Work may read, update, and permanently delete files here, and may share relevant file contents with connected tools when needed. Only allow access to folders you trust." })
6413
+ /* @__PURE__ */ a(Yr, { className: "mt-2 text-sm leading-sm text-text-tertiary", children: "This permission applies to all files and subfolders in this directory. Spark Design may read, update, and permanently delete files here, and may share relevant file contents with connected tools when needed. Only allow access to folders you trust." })
6414
6414
  ] }),
6415
6415
  /* @__PURE__ */ v(Zr, { className: "mt-6 flex flex-row justify-end gap-2", children: [
6416
6416
  /* @__PURE__ */ a(Kr, { className: "h-9 rounded-full px-4", children: "Cancel" }),
@@ -6436,7 +6436,7 @@ function xs({
6436
6436
  ] }) });
6437
6437
  }
6438
6438
  xs.displayName = "FolderPermissionDialog";
6439
- const ud = ["~/Projects/qoder-work-ui", "~/Documents/workspace", "~/Desktop/demo", "~/code/my-app"], xn = "mr-2 w-4 h-4 shrink-0";
6439
+ const ud = ["~/Projects/spark-design-app", "~/Documents/workspace", "~/Desktop/demo", "~/code/my-app"], xn = "mr-2 w-4 h-4 shrink-0";
6440
6440
  function vs({
6441
6441
  disabled: e,
6442
6442
  folderButtonLabel: t,
@@ -7149,7 +7149,7 @@ function Rd() {
7149
7149
  ] });
7150
7150
  }
7151
7151
  function qn({
7152
- text: e = "Qoder is Thinking...",
7152
+ text: e = "Spark is Thinking...",
7153
7153
  textClassName: t,
7154
7154
  shimmer: n = !0,
7155
7155
  shimmerDuration: r = 2,
@@ -7270,7 +7270,7 @@ function Qn() {
7270
7270
  if (!e) throw new Error("Response compound components must be used within Response.Root");
7271
7271
  return e;
7272
7272
  }
7273
- const Dd = /* @__PURE__ */ a(qn, { text: "Qoder is thinking..." });
7273
+ const Dd = /* @__PURE__ */ a(qn, { text: "Spark is thinking..." });
7274
7274
  function Jt({
7275
7275
  simulate: e = !0,
7276
7276
  phase: t = "thinking",
@@ -7752,7 +7752,7 @@ function Xn({
7752
7752
  width: e = "var(--spacing-80)",
7753
7753
  height: t = "var(--spacing-60)",
7754
7754
  speed: n = 1,
7755
- caption: r = "Qoder is drawing...",
7755
+ caption: r = "Spark is drawing...",
7756
7756
  captionClassName: s,
7757
7757
  className: o,
7758
7758
  style: i,
@@ -8180,7 +8180,7 @@ function Ps(e) {
8180
8180
  Zd,
8181
8181
  {
8182
8182
  ...e,
8183
- thinkingIndicator: e.thinkingIndicator ?? /* @__PURE__ */ a(Fs, { text: "Qoder is thinking..." })
8183
+ thinkingIndicator: e.thinkingIndicator ?? /* @__PURE__ */ a(Fs, { text: "Spark is thinking..." })
8184
8184
  }
8185
8185
  );
8186
8186
  }
@@ -0,0 +1,2 @@
1
+ /*! tailwindcss v4.1.18 | MIT License | https://tailwindcss.com */
2
+ @layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-translate-x:0;--tw-translate-y:0;--tw-translate-z:0;--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-space-y-reverse:0;--tw-space-x-reverse:0;--tw-border-style:solid;--tw-gradient-position:initial;--tw-gradient-from:#0000;--tw-gradient-via:#0000;--tw-gradient-to:#0000;--tw-gradient-stops:initial;--tw-gradient-via-stops:initial;--tw-gradient-from-position:0%;--tw-gradient-via-position:50%;--tw-gradient-to-position:100%;--tw-leading:initial;--tw-font-weight:initial;--tw-tracking:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid;--tw-backdrop-blur:initial;--tw-backdrop-brightness:initial;--tw-backdrop-contrast:initial;--tw-backdrop-grayscale:initial;--tw-backdrop-hue-rotate:initial;--tw-backdrop-invert:initial;--tw-backdrop-opacity:initial;--tw-backdrop-saturate:initial;--tw-backdrop-sepia:initial;--tw-duration:initial;--tw-ease:initial;--tw-content:"";--tw-scale-x:1;--tw-scale-y:1;--tw-scale-z:1}}}@layer theme{:root,:host{--font-sans:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";--font-mono:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;--spacing:.25rem;--container-sm:24rem;--container-lg:32rem;--font-weight-normal:400;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-extrabold:800;--tracking-tight:-.025em;--tracking-widest:.1em;--radius-sm:var(--radius-sm);--radius-md:var(--radius-md);--radius-lg:var(--radius-lg);--radius-xl:var(--radius-xl);--radius-2xl:var(--radius-2xl);--radius-3xl:var(--radius-3xl);--ease-out:cubic-bezier(0,0,.2,1);--ease-in-out:cubic-bezier(.4,0,.2,1);--animate-spin:spin 1s linear infinite;--animate-pulse:pulse 2s cubic-bezier(.4,0,.6,1)infinite;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4,0,.2,1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono);--radius:var(--radius-DEFAULT);--radius-none:var(--radius-none);--radius-full:var(--radius-full);--spacing-0:var(--spacing-0);--spacing-px:var(--spacing-px);--spacing-0\.5:var(--spacing-0\.5);--spacing-1:var(--spacing-1);--spacing-1\.5:var(--spacing-1\.5);--spacing-2:var(--spacing-2);--spacing-2\.5:var(--spacing-2\.5);--spacing-3:var(--spacing-3);--spacing-3\.5:var(--spacing-3\.5);--spacing-4:var(--spacing-4);--spacing-5:var(--spacing-5);--spacing-6:var(--spacing-6);--spacing-7:var(--spacing-7);--spacing-8:var(--spacing-8);--spacing-9:var(--spacing-9);--spacing-10:var(--spacing-10);--spacing-11:var(--spacing-11);--spacing-12:var(--spacing-12);--spacing-14:var(--spacing-14);--spacing-16:var(--spacing-16);--spacing-20:var(--spacing-20);--spacing-24:var(--spacing-24);--spacing-28:var(--spacing-28);--spacing-32:var(--spacing-32);--spacing-36:var(--spacing-36);--spacing-40:var(--spacing-40);--spacing-44:var(--spacing-44);--spacing-48:var(--spacing-48);--spacing-52:var(--spacing-52);--spacing-56:var(--spacing-56);--spacing-60:var(--spacing-60);--spacing-64:var(--spacing-64);--spacing-72:var(--spacing-72);--spacing-80:var(--spacing-80);--spacing-96:var(--spacing-96);--color-primary:var(--token-color-primary);--color-primary-hover:var(--token-color-primary-hover);--color-primary-active:var(--token-color-primary-active);--color-primary-bg:var(--token-color-primary-bg);--color-primary-border:var(--token-color-primary-border);--color-primary-border-hover:var(--token-color-primary-border-hover);--color-text-on-primary:var(--token-color-text-on-primary);--color-text:var(--token-color-text);--color-text-secondary:var(--token-color-text-secondary);--color-text-tertiary:var(--token-color-text-tertiary);--color-text-quaternary:var(--token-color-text-quaternary);--color-text-base:var(--token-color-text-base);--color-border:var(--token-color-border);--color-ring:var(--token-color-primary-border);--color-muted-foreground:var(--token-color-text-secondary);--color-border-secondary:var(--token-color-border-secondary);--color-border-tertiary:var(--token-color-border-tertiary);--color-fill:var(--token-color-fill);--color-fill-secondary:var(--token-color-fill-secondary);--color-fill-tertiary:var(--token-color-fill-tertiary);--color-bg-container:var(--token-color-bg-container);--color-bg-mask:var(--token-color-bg-mask);--color-mask-shimmer-weak:var(--token-color-mask-shimmer-weak);--color-mask-shimmer-strong:var(--token-color-mask-shimmer-strong);--color-mask-shimmer-full:var(--token-color-mask-shimmer-full);--color-bg-base:var(--token-color-bg-base);--color-bg-highlight:var(--token-color-bg-highlight);--color-bg-highlight-hover:var(--token-color-bg-highlight-hover);--color-shadow-secondary:var(--token-color-shadow-secondary);--color-shadow-quaternary:var(--token-color-shadow-quaternary);--color-link:var(--token-color-link);--color-error:var(--token-color-error);--color-error-hover:var(--token-color-error-hover);--color-error-bg:var(--token-color-error-bg);--color-error-bg-hover:var(--token-color-error-bg-hover);--color-error-border:var(--token-color-error-border);--color-info:var(--token-color-info);--color-info-hover:var(--token-color-info-hover);--color-info-bg:var(--token-color-info-bg);--color-info-bg-hover:var(--token-color-info-bg-hover);--color-info-border:var(--token-color-info-border);--color-success:var(--token-color-success);--color-success-bg:var(--token-color-success-bg);--color-success-bg-hover:var(--token-color-success-bg-hover);--color-success-border:var(--token-color-success-border);--color-warning:var(--token-color-warning);--color-warning-bg:var(--token-color-warning-bg);--color-warning-bg-hover:var(--token-color-warning-bg-hover);--color-warning-border:var(--token-color-warning-border);--color-pink:var(--token-color-pink);--color-pink-bg:var(--token-color-pink-bg);--color-pink-bg-hover:var(--token-color-pink-bg-hover);--color-purple:var(--token-color-purple);--color-purple-bg:var(--token-color-purple-bg);--color-purple-bg-hover:var(--token-color-purple-bg-hover);--color-yellow:var(--token-color-yellow);--color-yellow-bg:var(--token-color-yellow-bg);--color-yellow-bg-hover:var(--token-color-yellow-bg-hover);--color-orange:var(--token-color-orange);--color-orange-bg:var(--token-color-orange-bg);--color-orange-bg-hover:var(--token-color-orange-bg-hover);--color-teal:var(--token-color-teal);--color-teal-bg:var(--token-color-teal-bg);--color-teal-bg-hover:var(--token-color-teal-bg-hover);--color-blue:var(--token-color-blue);--color-blue-bg:var(--token-color-blue-bg);--color-blue-bg-hover:var(--token-color-blue-bg-hover);--color-mauve:var(--token-color-mauve);--color-mauve-bg:var(--token-color-mauve-bg);--color-mauve-bg-hover:var(--token-color-mauve-bg-hover);--color-slate:var(--token-color-slate);--color-slate-bg:var(--token-color-slate-bg);--color-slate-bg-hover:var(--token-color-slate-bg-hover);--color-lavender:var(--token-color-lavender);--color-lavender-bg:var(--token-color-lavender-bg);--color-lavender-bg-hover:var(--token-color-lavender-bg-hover);--color-sage:var(--token-color-sage);--color-sage-bg:var(--token-color-sage-bg);--color-sage-bg-hover:var(--token-color-sage-bg-hover);--animate-accordion-down:accordion-down .2s ease-out;--animate-accordion-up:accordion-up .2s ease-out;--animate-accordion-right:accordion-right .2s ease-out;--animate-accordion-left:accordion-left .2s ease-out}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.pointer-events-auto{pointer-events:auto}.pointer-events-none{pointer-events:none}.collapse{visibility:collapse}.invisible{visibility:hidden}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.inset-0{inset:var(--spacing-0)}.-top-0\.5{top:calc(var(--spacing-0\.5)*-1)}.top-0{top:var(--spacing-0)}.top-0\.5{top:var(--spacing-0\.5)}.top-1\/2{top:50%}.top-2{top:var(--spacing-2)}.top-3{top:var(--spacing-3)}.top-4{top:var(--spacing-4)}.-right-0\.5{right:calc(var(--spacing-0\.5)*-1)}.right-0{right:var(--spacing-0)}.right-1{right:var(--spacing-1)}.right-2{right:var(--spacing-2)}.right-3{right:var(--spacing-3)}.right-4{right:var(--spacing-4)}.bottom-0{bottom:var(--spacing-0)}.bottom-0\.5{bottom:var(--spacing-0\.5)}.left-0{left:var(--spacing-0)}.left-0\.5{left:var(--spacing-0\.5)}.left-1\/2{left:50%}.left-2{left:var(--spacing-2)}.z-10{z-index:10}.z-50{z-index:50}.z-\[60\]{z-index:60}.z-\[9999\]{z-index:9999}.container{width:100%}@media (min-width:40rem){.container{max-width:40rem}}@media (min-width:48rem){.container{max-width:48rem}}@media (min-width:64rem){.container{max-width:64rem}}@media (min-width:80rem){.container{max-width:80rem}}@media (min-width:96rem){.container{max-width:96rem}}.m-0{margin:var(--spacing-0)}.mx-1{margin-inline:var(--spacing-1)}.mx-2{margin-inline:var(--spacing-2)}.mx-auto{margin-inline:auto}.my-1{margin-block:var(--spacing-1)}.my-6{margin-block:var(--spacing-6)}.-mt-2{margin-top:calc(var(--spacing-2)*-1)}.mt-1{margin-top:var(--spacing-1)}.mt-1\.5{margin-top:var(--spacing-1\.5)}.mt-2{margin-top:var(--spacing-2)}.mt-3{margin-top:var(--spacing-3)}.mt-4{margin-top:var(--spacing-4)}.mt-5{margin-top:var(--spacing-5)}.mt-6{margin-top:var(--spacing-6)}.mr-1{margin-right:var(--spacing-1)}.mr-2{margin-right:var(--spacing-2)}.mb-1{margin-bottom:var(--spacing-1)}.mb-2{margin-bottom:var(--spacing-2)}.mb-3{margin-bottom:var(--spacing-3)}.mb-4{margin-bottom:var(--spacing-4)}.-ml-5{margin-left:calc(var(--spacing-5)*-1)}.ml-4\.5{margin-left:calc(var(--spacing)*4.5)}.ml-6{margin-left:var(--spacing-6)}.ml-8{margin-left:var(--spacing-8)}.ml-auto{margin-left:auto}.box-border{box-sizing:border-box}.line-clamp-2{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.block{display:block}.contents{display:contents}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-block{display:inline-block}.inline-flex{display:inline-flex}.table{display:table}.aspect-square{aspect-ratio:1}.size-1\.5{width:var(--spacing-1\.5);height:var(--spacing-1\.5)}.size-2{width:var(--spacing-2);height:var(--spacing-2)}.size-2\.5{width:var(--spacing-2\.5);height:var(--spacing-2\.5)}.size-3\.5{width:var(--spacing-3\.5);height:var(--spacing-3\.5)}.size-4{width:var(--spacing-4);height:var(--spacing-4)}.size-5{width:var(--spacing-5);height:var(--spacing-5)}.size-\[1em\]{width:1em;height:1em}.size-full{width:100%;height:100%}.h-1{height:var(--spacing-1)}.h-2{height:var(--spacing-2)}.h-2\.5{height:var(--spacing-2\.5)}.h-3{height:var(--spacing-3)}.h-3\.5{height:var(--spacing-3\.5)}.h-4{height:var(--spacing-4)}.h-5{height:var(--spacing-5)}.h-6{height:var(--spacing-6)}.h-7{height:var(--spacing-7)}.h-8{height:var(--spacing-8)}.h-9{height:var(--spacing-9)}.h-10{height:var(--spacing-10)}.h-11{height:var(--spacing-11)}.h-12{height:var(--spacing-12)}.h-16{height:var(--spacing-16)}.h-20{height:var(--spacing-20)}.h-\[1em\]{height:1em}.h-\[25px\]{height:25px}.h-\[var\(--font-size-sm\)\]{height:var(--font-size-sm)}.h-\[var\(--font-size-xl\)\]{height:var(--font-size-xl)}.h-\[var\(--radix-select-trigger-height\)\]{height:var(--radix-select-trigger-height)}.h-auto{height:auto}.h-full{height:100%}.h-px{height:1px;height:var(--spacing-px)}.max-h-96{max-height:var(--spacing-96)}.max-h-\[90vh\]{max-height:90vh}.\!min-h-0{min-height:var(--spacing-0)!important}.min-h-0{min-height:var(--spacing-0)}.min-h-5{min-height:var(--spacing-5)}.min-h-6{min-height:var(--spacing-6)}.min-h-7{min-height:var(--spacing-7)}.min-h-9{min-height:var(--spacing-9)}.min-h-11{min-height:var(--spacing-11)}.min-h-14,.min-h-\[var\(--spacing-14\)\]{min-height:var(--spacing-14)}.w-1{width:var(--spacing-1)}.w-2{width:var(--spacing-2)}.w-2\.5{width:var(--spacing-2\.5)}.w-3{width:var(--spacing-3)}.w-3\.5{width:var(--spacing-3\.5)}.w-4{width:var(--spacing-4)}.w-5{width:var(--spacing-5)}.w-6{width:var(--spacing-6)}.w-7{width:var(--spacing-7)}.w-8{width:var(--spacing-8)}.w-9{width:var(--spacing-9)}.w-10{width:var(--spacing-10)}.w-11{width:var(--spacing-11)}.w-12{width:var(--spacing-12)}.w-16{width:var(--spacing-16)}.w-20{width:var(--spacing-20)}.w-52{width:var(--spacing-52)}.w-\[1em\]{width:1em}.w-\[calc\(100\%-2\*var\(--radius-xl\)\)\]{width:calc(100% - 2*var(--radius-xl))}.w-\[calc\(100\%-2rem\)\]{width:calc(100% - 2rem)}.w-\[var\(--font-size-sm\)\]{width:var(--font-size-sm)}.w-\[var\(--font-size-xl\)\]{width:var(--font-size-xl)}.w-\[var\(--font-size-xs\)\]{width:var(--font-size-xs)}.w-auto{width:auto}.w-fit{width:fit-content}.w-full{width:100%}.max-w-54{max-width:calc(var(--spacing)*54)}.max-w-60{max-width:var(--spacing-60)}.max-w-96{max-width:var(--spacing-96)}.max-w-\[90vw\]{max-width:90vw}.max-w-full{max-width:100%}.max-w-lg{max-width:var(--container-lg)}.max-w-sm{max-width:var(--container-sm)}.\!min-w-0{min-width:var(--spacing-0)!important}.min-w-0{min-width:var(--spacing-0)}.min-w-5{min-width:var(--spacing-5)}.min-w-6{min-width:var(--spacing-6)}.min-w-7{min-width:var(--spacing-7)}.min-w-9{min-width:var(--spacing-9)}.min-w-11{min-width:var(--spacing-11)}.min-w-20{min-width:var(--spacing-20)}.min-w-25{min-width:calc(var(--spacing)*25)}.min-w-30{min-width:calc(var(--spacing)*30)}.min-w-32{min-width:var(--spacing-32)}.min-w-50{min-width:calc(var(--spacing)*50)}.min-w-\[var\(--radix-select-trigger-width\)\]{min-width:var(--radix-select-trigger-width)}.min-w-\[var\(--spacing-10\)\]{min-width:var(--spacing-10)}.flex-1{flex:1}.flex-none{flex:none}.flex-shrink-0{flex-shrink:0}.shrink{flex-shrink:1}.shrink-0{flex-shrink:0}.grow{flex-grow:1}.caption-bottom{caption-side:bottom}.border-collapse{border-collapse:collapse}.origin-left{transform-origin:0}.-translate-x-0\.5{--tw-translate-x:calc(var(--spacing-0\.5)*-1);translate:var(--tw-translate-x)var(--tw-translate-y)}.-translate-x-1\/2{--tw-translate-x:calc(calc(1/2*100%)*-1);translate:var(--tw-translate-x)var(--tw-translate-y)}.-translate-y-1\/2{--tw-translate-y:calc(calc(1/2*100%)*-1);translate:var(--tw-translate-x)var(--tw-translate-y)}.-rotate-90{rotate:-90deg}.rotate-0{rotate:none}.rotate-90{rotate:90deg}.rotate-180{rotate:180deg}.transform{transform:var(--tw-rotate-x,)var(--tw-rotate-y,)var(--tw-rotate-z,)var(--tw-skew-x,)var(--tw-skew-y,)}.animate-pulse{animation:var(--animate-pulse)}.animate-spin{animation:var(--animate-spin)}.cursor-default{cursor:default}.cursor-not-allowed{cursor:not-allowed}.cursor-pointer{cursor:pointer}.touch-none{touch-action:none}.resize{resize:both}.resize-none{resize:none}.scroll-m-20{scroll-margin:var(--spacing-20)}.list-decimal{list-style-type:decimal}.list-disc{list-style-type:disc}.list-none{list-style-type:none}.auto-cols-max{grid-auto-columns:max-content}.grid-flow-col{grid-auto-flow:column}.grid-flow-row{grid-auto-flow:row}.grid-rows-\[0fr\]{grid-template-rows:0fr}.grid-rows-\[1fr\]{grid-template-rows:1fr}.flex-col{flex-direction:column}.flex-col-reverse{flex-direction:column-reverse}.flex-row{flex-direction:row}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.items-start{align-items:flex-start}.items-stretch{align-items:stretch}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.justify-end{justify-content:flex-end}.gap-0{gap:var(--spacing-0)}.gap-0\.5{gap:var(--spacing-0\.5)}.gap-1{gap:var(--spacing-1)}.gap-1\.5{gap:var(--spacing-1\.5)}.gap-2{gap:var(--spacing-2)}.gap-3{gap:var(--spacing-3)}.gap-4{gap:var(--spacing-4)}.gap-6{gap:var(--spacing-6)}:where(.space-y-2>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(var(--spacing-2)*var(--tw-space-y-reverse));margin-block-end:calc(var(--spacing-2)*calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-4>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(var(--spacing-4)*var(--tw-space-y-reverse));margin-block-end:calc(var(--spacing-4)*calc(1 - var(--tw-space-y-reverse)))}:where(.-space-x-2>:not(:last-child)){--tw-space-x-reverse:0;margin-inline-start:calc(calc(var(--spacing-2)*-1)*var(--tw-space-x-reverse));margin-inline-end:calc(calc(var(--spacing-2)*-1)*calc(1 - var(--tw-space-x-reverse)))}.self-stretch{align-self:stretch}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.overflow-auto{overflow:auto}.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.overflow-x-hidden{overflow-x:hidden}.overflow-y-auto{overflow-y:auto}.overflow-y-hidden{overflow-y:hidden}.overflow-y-visible{overflow-y:visible}.scroll-smooth{scroll-behavior:smooth}.rounded{border-radius:var(--radius-DEFAULT)}.rounded-full{border-radius:var(--radius-full)}.rounded-lg{border-radius:var(--radius-lg)}.rounded-md{border-radius:var(--radius-md)}.rounded-none{border-radius:var(--radius-none)}.rounded-sm{border-radius:var(--radius-sm)}.rounded-xl{border-radius:var(--radius-xl)}.rounded-t-xl{border-top-left-radius:var(--radius-xl);border-top-right-radius:var(--radius-xl)}.border{border-style:var(--tw-border-style);border-width:1px}.border-0{border-style:var(--tw-border-style);border-width:0}.border-2{border-style:var(--tw-border-style);border-width:2px}.border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.border-b-0{border-bottom-style:var(--tw-border-style);border-bottom-width:0}.border-b-2{border-bottom-style:var(--tw-border-style);border-bottom-width:2px}.border-l{border-left-style:var(--tw-border-style);border-left-width:1px}.border-l-2{border-left-style:var(--tw-border-style);border-left-width:2px}.border-l-\[3px\]{border-left-style:var(--tw-border-style);border-left-width:3px}.border-dashed{--tw-border-style:dashed;border-style:dashed}.border-none{--tw-border-style:none;border-style:none}.border-bg-base{border-color:var(--color-bg-base)}.border-blue{border-color:var(--color-blue)}.border-border{border-color:var(--color-border)}.border-border-secondary{border-color:var(--color-border-secondary)}.border-border-tertiary{border-color:var(--color-border-tertiary)}.border-error-border{border-color:var(--color-error-border)}.border-info-border{border-color:var(--color-info-border)}.border-lavender{border-color:var(--color-lavender)}.border-mauve{border-color:var(--color-mauve)}.border-orange{border-color:var(--color-orange)}.border-pink{border-color:var(--color-pink)}.border-primary{border-color:var(--color-primary)}.border-primary-border{border-color:var(--color-primary-border)}.border-purple{border-color:var(--color-purple)}.border-sage{border-color:var(--color-sage)}.border-slate{border-color:var(--color-slate)}.border-success-border{border-color:var(--color-success-border)}.border-teal{border-color:var(--color-teal)}.border-text-tertiary{border-color:var(--color-text-tertiary)}.border-transparent{border-color:#0000}.border-warning-border{border-color:var(--color-warning-border)}.border-yellow{border-color:var(--color-yellow)}.border-t-transparent{border-top-color:#0000}.border-l-\[var\(--color-error-border\)\]{border-left-color:var(--color-error-border)}.border-l-\[var\(--color-success-border\)\]{border-left-color:var(--color-success-border)}.bg-\[var\(--color-border-tertiary\)\]{background-color:var(--color-border-tertiary)}.bg-bg-base{background-color:var(--color-bg-base)}.bg-bg-container{background-color:var(--color-bg-container)}.bg-bg-highlight{background-color:var(--color-bg-highlight)}.bg-bg-mask,.bg-bg-mask\/60{background-color:var(--color-bg-mask)}@supports (color:color-mix(in lab, red, red)){.bg-bg-mask\/60{background-color:color-mix(in oklab,var(--color-bg-mask)60%,transparent)}}.bg-blue-bg{background-color:var(--color-blue-bg)}.bg-border-secondary{background-color:var(--color-border-secondary)}.bg-border-tertiary{background-color:var(--color-border-tertiary)}.bg-current{background-color:currentColor}.bg-error{background-color:var(--color-error)}.bg-error-bg{background-color:var(--color-error-bg)}.bg-fill{background-color:var(--color-fill)}.bg-fill-secondary{background-color:var(--color-fill-secondary)}.bg-fill-tertiary{background-color:var(--color-fill-tertiary)}.bg-info-bg{background-color:var(--color-info-bg)}.bg-lavender-bg{background-color:var(--color-lavender-bg)}.bg-mauve-bg{background-color:var(--color-mauve-bg)}.bg-orange-bg{background-color:var(--color-orange-bg)}.bg-pink-bg{background-color:var(--color-pink-bg)}.bg-primary{background-color:var(--color-primary)}.bg-primary-active{background-color:var(--color-primary-active)}.bg-primary-bg{background-color:var(--color-primary-bg)}.bg-purple-bg{background-color:var(--color-purple-bg)}.bg-sage-bg{background-color:var(--color-sage-bg)}.bg-slate-bg{background-color:var(--color-slate-bg)}.bg-success{background-color:var(--color-success)}.bg-success-bg{background-color:var(--color-success-bg)}.bg-teal-bg{background-color:var(--color-teal-bg)}.bg-text{background-color:var(--color-text)}.bg-text-on-primary{background-color:var(--color-text-on-primary)}.bg-transparent{background-color:#0000}.bg-warning-bg{background-color:var(--color-warning-bg)}.bg-yellow-bg{background-color:var(--color-yellow-bg)}.bg-gradient-to-b{--tw-gradient-position:to bottom in oklab;background-image:linear-gradient(var(--tw-gradient-stops))}.from-transparent{--tw-gradient-from:transparent;--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.to-\[var\(--color-bg-base\)\]{--tw-gradient-to:var(--color-bg-base);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.bg-\[length\:250\%_100\%\,auto\]{background-size:250% 100%,auto}.bg-clip-text{-webkit-background-clip:text;background-clip:text}.bg-no-repeat{background-repeat:no-repeat}.object-contain{object-fit:contain}.object-cover{object-fit:cover}.p-0{padding:var(--spacing-0)}.p-0\.5{padding:var(--spacing-0\.5)}.p-1{padding:var(--spacing-1)}.p-1\.5{padding:var(--spacing-1\.5)}.p-2{padding:var(--spacing-2)}.p-3{padding:var(--spacing-3)}.p-4{padding:var(--spacing-4)}.p-6{padding:var(--spacing-6)}.px-0{padding-inline:var(--spacing-0)}.px-1{padding-inline:var(--spacing-1)}.px-1\.5{padding-inline:var(--spacing-1\.5)}.px-2{padding-inline:var(--spacing-2)}.px-2\.5{padding-inline:var(--spacing-2\.5)}.px-3{padding-inline:var(--spacing-3)}.px-4{padding-inline:var(--spacing-4)}.px-5{padding-inline:var(--spacing-5)}.px-\[0\.3rem\]{padding-inline:.3rem}.py-0{padding-block:var(--spacing-0)}.py-0\.5{padding-block:var(--spacing-0\.5)}.py-1{padding-block:var(--spacing-1)}.py-1\.5{padding-block:var(--spacing-1\.5)}.py-2{padding-block:var(--spacing-2)}.py-3{padding-block:var(--spacing-3)}.py-4{padding-block:var(--spacing-4)}.py-5{padding-block:var(--spacing-5)}.py-\[0\.2rem\]{padding-block:.2rem}.pt-0{padding-top:var(--spacing-0)}.pt-0\.5{padding-top:var(--spacing-0\.5)}.pt-1{padding-top:var(--spacing-1)}.pt-2{padding-top:var(--spacing-2)}.pt-3{padding-top:var(--spacing-3)}.pr-1\.5{padding-right:var(--spacing-1\.5)}.pr-3{padding-right:var(--spacing-3)}.pr-8{padding-right:var(--spacing-8)}.pr-12{padding-right:var(--spacing-12)}.pb-0{padding-bottom:var(--spacing-0)}.pb-1{padding-bottom:var(--spacing-1)}.pb-2{padding-bottom:var(--spacing-2)}.pb-3{padding-bottom:var(--spacing-3)}.pl-2{padding-left:var(--spacing-2)}.pl-3{padding-left:var(--spacing-3)}.pl-5{padding-left:var(--spacing-5)}.pl-6{padding-left:var(--spacing-6)}.pl-8{padding-left:var(--spacing-8)}.text-center{text-align:center}.text-left{text-align:left}.align-middle{vertical-align:middle}.\!font-sans{font-family:var(--font-sans)!important}.font-\[\'Seti\'\]{font-family:Seti}.font-mono{font-family:var(--font-mono)}.font-sans{font-family:var(--font-sans)}.text-2xl{font-size:var(--font-size-2xl);line-height:var(--tw-leading,var(--font-size-2xl--line-height))}.text-3xl{font-size:var(--font-size-3xl);line-height:var(--tw-leading,var(--font-size-3xl--line-height))}.text-4xl{font-size:var(--font-size-4xl);line-height:var(--tw-leading,var(--font-size-4xl--line-height))}.text-base{font-size:var(--font-size-base);line-height:var(--tw-leading,var(--font-size-base--line-height))}.text-lg{font-size:var(--font-size-lg);line-height:var(--tw-leading,var(--font-size-lg--line-height))}.text-sm{font-size:var(--font-size-sm);line-height:var(--tw-leading,var(--font-size-sm--line-height))}.text-xl{font-size:var(--font-size-xl);line-height:var(--tw-leading,var(--font-size-xl--line-height))}.text-xs{font-size:var(--font-size-xs);line-height:var(--tw-leading,var(--font-size-xs--line-height))}.text-\[16px\]{font-size:16px}.leading-5{--tw-leading:var(--spacing-5);line-height:var(--spacing-5)}.leading-6{--tw-leading:var(--spacing-6);line-height:var(--spacing-6)}.leading-7{--tw-leading:var(--spacing-7);line-height:var(--spacing-7)}.leading-\[16px\]{--tw-leading:16px;line-height:16px}.leading-\[var\(--font-size-sm--line-height\)\]{--tw-leading:var(--font-size-sm--line-height);line-height:var(--font-size-sm--line-height)}.leading-\[var\(--font-size-xs--line-height\)\]{--tw-leading:var(--font-size-xs--line-height);line-height:var(--font-size-xs--line-height)}.leading-none{--tw-leading:1;line-height:1}.font-extrabold{--tw-font-weight:var(--font-weight-extrabold);font-weight:var(--font-weight-extrabold)}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.font-normal{--tw-font-weight:var(--font-weight-normal);font-weight:var(--font-weight-normal)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.tracking-tight{--tw-tracking:var(--tracking-tight);letter-spacing:var(--tracking-tight)}.tracking-widest{--tw-tracking:var(--tracking-widest);letter-spacing:var(--tracking-widest)}.text-balance{text-wrap:balance}.break-words{overflow-wrap:break-word}.break-all{word-break:break-all}.whitespace-nowrap{white-space:nowrap}.whitespace-pre{white-space:pre}.whitespace-pre-wrap{white-space:pre-wrap}.text-\[var\(--color-link\)\]{color:var(--color-link)}.text-blue{color:var(--color-blue)}.text-current,.text-current\/80{color:currentColor}@supports (color:color-mix(in lab, red, red)){.text-current\/80{color:color-mix(in oklab,currentcolor 80%,transparent)}}.text-error{color:var(--color-error)}.text-info{color:var(--color-info)}.text-lavender{color:var(--color-lavender)}.text-link{color:var(--color-link)}.text-mauve{color:var(--color-mauve)}.text-muted-foreground{color:var(--color-muted-foreground)}.text-orange{color:var(--color-orange)}.text-pink{color:var(--color-pink)}.text-primary{color:var(--color-primary)}.text-primary-active{color:var(--color-primary-active)}.text-purple{color:var(--color-purple)}.text-sage{color:var(--color-sage)}.text-slate{color:var(--color-slate)}.text-success{color:var(--color-success)}.text-teal{color:var(--color-teal)}.text-text{color:var(--color-text)}.text-text-on-primary{color:var(--color-text-on-primary)}.text-text-quaternary{color:var(--color-text-quaternary)}.text-text-secondary{color:var(--color-text-secondary)}.text-text-tertiary,.text-text-tertiary\/50{color:var(--color-text-tertiary)}@supports (color:color-mix(in lab, red, red)){.text-text-tertiary\/50{color:color-mix(in oklab,var(--color-text-tertiary)50%,transparent)}}.text-transparent{color:#0000}.text-warning{color:var(--color-warning)}.text-yellow{color:var(--color-yellow)}.uppercase{text-transform:uppercase}.italic{font-style:italic}.line-through{text-decoration-line:line-through}.underline-offset-4{text-underline-offset:4px}.\!opacity-100{opacity:1!important}.opacity-0{opacity:0}.opacity-10{opacity:.1}.opacity-40{opacity:.4}.opacity-50{opacity:.5}.opacity-70{opacity:.7}.opacity-100{opacity:1}.shadow{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a),0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-\[0_0\.25rem_1\.25rem_var\(--color-shadow-secondary\)\]{--tw-shadow:0 .25rem 1.25rem var(--tw-shadow-color,var(--color-shadow-secondary));box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-lg{--tw-shadow:0 10px 15px -3px var(--tw-shadow-color,#0000001a),0 4px 6px -4px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-none{--tw-shadow:0 0 #0000;box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-sm{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a),0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-xl{--tw-shadow:0 20px 25px -5px var(--tw-shadow-color,#0000001a),0 8px 10px -6px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.ring{--tw-ring-shadow:var(--tw-ring-inset,)0 0 0 calc(1px + var(--tw-ring-offset-width))var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.ring-0{--tw-ring-shadow:var(--tw-ring-inset,)0 0 0 calc(0px + var(--tw-ring-offset-width))var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.outline-offset-0{outline-offset:0px}.outline-offset-2{outline-offset:2px}.backdrop-filter{-webkit-backdrop-filter:var(--tw-backdrop-blur,)var(--tw-backdrop-brightness,)var(--tw-backdrop-contrast,)var(--tw-backdrop-grayscale,)var(--tw-backdrop-hue-rotate,)var(--tw-backdrop-invert,)var(--tw-backdrop-opacity,)var(--tw-backdrop-saturate,)var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,)var(--tw-backdrop-brightness,)var(--tw-backdrop-contrast,)var(--tw-backdrop-grayscale,)var(--tw-backdrop-hue-rotate,)var(--tw-backdrop-invert,)var(--tw-backdrop-opacity,)var(--tw-backdrop-saturate,)var(--tw-backdrop-sepia,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\[grid-template-rows\,opacity\]{transition-property:grid-template-rows,opacity;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\[max-height\]{transition-property:max-height;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\[width\]{transition-property:width;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-all{transition-property:all;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-opacity{transition-property:opacity;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-transform{transition-property:transform,translate,scale,rotate;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.duration-150{--tw-duration:.15s;transition-duration:.15s}.duration-200{--tw-duration:.2s;transition-duration:.2s}.duration-300{--tw-duration:.3s;transition-duration:.3s}.ease-in-out{--tw-ease:var(--ease-in-out);transition-timing-function:var(--ease-in-out)}.ease-out{--tw-ease:var(--ease-out);transition-timing-function:var(--ease-out)}.outline-none{--tw-outline-style:none;outline-style:none}.select-none{-webkit-user-select:none;user-select:none}.duration-150{animation-duration:.15s}.duration-200{animation-duration:.2s}.duration-300{animation-duration:.3s}.ease-in-out{animation-timing-function:cubic-bezier(.4,0,.2,1)}.ease-out{animation-timing-function:cubic-bezier(0,0,.2,1)}.running{animation-play-state:running}@media (hover:hover){.group-hover\:opacity-100:is(:where(.group):hover *){opacity:1}}.group-data-\[spacing\=0\]\/toggle-group\:rounded-none:is(:where(.group\/toggle-group)[data-spacing="0"] *){border-radius:var(--radius-none)}.group-data-\[state\=open\]\:rotate-180:is(:where(.group)[data-state=open] *){rotate:180deg}.placeholder\:font-normal::placeholder{--tw-font-weight:var(--font-weight-normal);font-weight:var(--font-weight-normal)}.placeholder\:text-muted-foreground::placeholder{color:var(--color-muted-foreground)}.placeholder\:text-text-tertiary::placeholder{color:var(--color-text-tertiary)}.after\:absolute:after{content:var(--tw-content);position:absolute}.after\:inset-0:after{content:var(--tw-content);inset:var(--spacing-0)}.after\:transition-colors:after{content:var(--tw-content);transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.first\:mt-0:first-child{margin-top:var(--spacing-0)}.group-data-\[spacing\=0\]\/toggle-group\:group-data-\[orientation\=horizontal\]\/toggle-group\:first\:rounded-l:is(:where(.group\/toggle-group)[data-spacing="0"] *):is(:where(.group\/toggle-group)[data-orientation=horizontal] *):first-child{border-top-left-radius:var(--radius-DEFAULT);border-bottom-left-radius:var(--radius-DEFAULT)}.group-data-\[spacing\=0\]\/toggle-group\:group-data-\[orientation\=vertical\]\/toggle-group\:first\:rounded-t:is(:where(.group\/toggle-group)[data-spacing="0"] *):is(:where(.group\/toggle-group)[data-orientation=vertical] *):first-child{border-top-left-radius:var(--radius-DEFAULT);border-top-right-radius:var(--radius-DEFAULT)}.last\:mb-0:last-child{margin-bottom:var(--spacing-0)}.last\:border-b-0:last-child{border-bottom-style:var(--tw-border-style);border-bottom-width:0}.group-data-\[spacing\=0\]\/toggle-group\:group-data-\[orientation\=horizontal\]\/toggle-group\:last\:rounded-r:is(:where(.group\/toggle-group)[data-spacing="0"] *):is(:where(.group\/toggle-group)[data-orientation=horizontal] *):last-child{border-top-right-radius:var(--radius-DEFAULT);border-bottom-right-radius:var(--radius-DEFAULT)}.group-data-\[spacing\=0\]\/toggle-group\:group-data-\[orientation\=vertical\]\/toggle-group\:last\:rounded-b:is(:where(.group\/toggle-group)[data-spacing="0"] *):is(:where(.group\/toggle-group)[data-orientation=vertical] *):last-child{border-bottom-right-radius:var(--radius-DEFAULT);border-bottom-left-radius:var(--radius-DEFAULT)}.focus-within\:shadow-\[0_0\.25rem_1\.25rem_var\(--color-shadow-quaternary\)\]:focus-within{--tw-shadow:0 .25rem 1.25rem var(--tw-shadow-color,var(--color-shadow-quaternary));box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.focus-within\:outline-none:focus-within{--tw-outline-style:none;outline-style:none}@media (hover:hover){.hover\:border-border-secondary:hover{border-color:var(--color-border-secondary)}.hover\:border-border-tertiary:hover{border-color:var(--color-border-tertiary)}.hover\:bg-bg-highlight-hover:hover{background-color:var(--color-bg-highlight-hover)}.hover\:bg-blue-bg:hover{background-color:var(--color-blue-bg)}.hover\:bg-blue-bg-hover:hover{background-color:var(--color-blue-bg-hover)}.hover\:bg-error-bg:hover{background-color:var(--color-error-bg)}.hover\:bg-error-bg-hover:hover{background-color:var(--color-error-bg-hover)}.hover\:bg-error-hover:hover{background-color:var(--color-error-hover)}.hover\:bg-fill:hover{background-color:var(--color-fill)}.hover\:bg-fill-secondary:hover{background-color:var(--color-fill-secondary)}.hover\:bg-fill-tertiary:hover{background-color:var(--color-fill-tertiary)}.hover\:bg-info-bg:hover{background-color:var(--color-info-bg)}.hover\:bg-info-bg-hover:hover{background-color:var(--color-info-bg-hover)}.hover\:bg-lavender-bg:hover{background-color:var(--color-lavender-bg)}.hover\:bg-lavender-bg-hover:hover{background-color:var(--color-lavender-bg-hover)}.hover\:bg-mauve-bg:hover{background-color:var(--color-mauve-bg)}.hover\:bg-mauve-bg-hover:hover{background-color:var(--color-mauve-bg-hover)}.hover\:bg-orange-bg:hover{background-color:var(--color-orange-bg)}.hover\:bg-orange-bg-hover:hover{background-color:var(--color-orange-bg-hover)}.hover\:bg-pink-bg:hover{background-color:var(--color-pink-bg)}.hover\:bg-pink-bg-hover:hover{background-color:var(--color-pink-bg-hover)}.hover\:bg-primary-bg:hover{background-color:var(--color-primary-bg)}.hover\:bg-primary-hover:hover{background-color:var(--color-primary-hover)}.hover\:bg-purple-bg:hover{background-color:var(--color-purple-bg)}.hover\:bg-purple-bg-hover:hover{background-color:var(--color-purple-bg-hover)}.hover\:bg-sage-bg:hover{background-color:var(--color-sage-bg)}.hover\:bg-sage-bg-hover:hover{background-color:var(--color-sage-bg-hover)}.hover\:bg-slate-bg:hover{background-color:var(--color-slate-bg)}.hover\:bg-slate-bg-hover:hover{background-color:var(--color-slate-bg-hover)}.hover\:bg-success-bg:hover{background-color:var(--color-success-bg)}.hover\:bg-success-bg-hover:hover{background-color:var(--color-success-bg-hover)}.hover\:bg-teal-bg:hover{background-color:var(--color-teal-bg)}.hover\:bg-teal-bg-hover:hover{background-color:var(--color-teal-bg-hover)}.hover\:bg-warning-bg:hover{background-color:var(--color-warning-bg)}.hover\:bg-warning-bg-hover:hover{background-color:var(--color-warning-bg-hover)}.hover\:bg-yellow-bg:hover{background-color:var(--color-yellow-bg)}.hover\:bg-yellow-bg-hover:hover{background-color:var(--color-yellow-bg-hover)}.hover\:text-current:hover{color:currentColor}.hover\:text-info-hover:hover{color:var(--color-info-hover)}.hover\:text-link:hover{color:var(--color-link)}.hover\:text-text:hover{color:var(--color-text)}.hover\:text-text-secondary:hover{color:var(--color-text-secondary)}.hover\:underline:hover{text-decoration-line:underline}.hover\:opacity-80:hover{opacity:.8}.hover\:opacity-90:hover{opacity:.9}.hover\:shadow-\[0_0\.25rem_1\.25rem_var\(--color-shadow-secondary\)\]:hover{--tw-shadow:0 .25rem 1.25rem var(--tw-shadow-color,var(--color-shadow-secondary));box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.hover\:focus-within\:shadow-\[0_0\.25rem_1\.25rem_var\(--color-shadow-quaternary\)\]:hover:focus-within{--tw-shadow:0 .25rem 1.25rem var(--tw-shadow-color,var(--color-shadow-quaternary));box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}}.focus\:bg-error-bg:focus{background-color:var(--color-error-bg)}.focus\:bg-fill-secondary:focus{background-color:var(--color-fill-secondary)}.focus\:text-error:focus{color:var(--color-error)}.focus\:text-text:focus{color:var(--color-text)}.focus\:shadow-none:focus{--tw-shadow:0 0 #0000;box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.focus\:ring-0:focus{--tw-ring-shadow:var(--tw-ring-inset,)0 0 0 calc(0px + var(--tw-ring-offset-width))var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.focus\:ring-offset-0:focus{--tw-ring-offset-width:0px;--tw-ring-offset-shadow:var(--tw-ring-inset,)0 0 0 var(--tw-ring-offset-width)var(--tw-ring-offset-color)}.focus\:outline-offset-0:focus{outline-offset:0px}.focus\:outline-none:focus{--tw-outline-style:none;outline-style:none}.focus-visible\:z-10:focus-visible{z-index:10}.focus-visible\:bg-fill-tertiary:focus-visible{background-color:var(--color-fill-tertiary)}.focus-visible\:shadow-none:focus-visible{--tw-shadow:0 0 #0000;box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.focus-visible\:\!ring-0:focus-visible{--tw-ring-shadow:var(--tw-ring-inset,)0 0 0 calc(0px + var(--tw-ring-offset-width))var(--tw-ring-color,currentcolor)!important;box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)!important}.focus-visible\:ring-0:focus-visible{--tw-ring-shadow:var(--tw-ring-inset,)0 0 0 calc(0px + var(--tw-ring-offset-width))var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.focus-visible\:ring-2:focus-visible{--tw-ring-shadow:var(--tw-ring-inset,)0 0 0 calc(2px + var(--tw-ring-offset-width))var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.focus-visible\:ring-primary:focus-visible{--tw-ring-color:var(--color-primary)}.focus-visible\:ring-primary-border:focus-visible{--tw-ring-color:var(--color-primary-border)}.focus-visible\:ring-ring:focus-visible{--tw-ring-color:var(--color-ring)}.focus-visible\:\!ring-offset-0:focus-visible{--tw-ring-offset-width:0px!important;--tw-ring-offset-shadow:var(--tw-ring-inset,)0 0 0 var(--tw-ring-offset-width)var(--tw-ring-offset-color)!important}.focus-visible\:ring-offset-0:focus-visible{--tw-ring-offset-width:0px;--tw-ring-offset-shadow:var(--tw-ring-inset,)0 0 0 var(--tw-ring-offset-width)var(--tw-ring-offset-color)}.focus-visible\:ring-offset-1:focus-visible{--tw-ring-offset-width:1px;--tw-ring-offset-shadow:var(--tw-ring-inset,)0 0 0 var(--tw-ring-offset-width)var(--tw-ring-offset-color)}.focus-visible\:ring-offset-2:focus-visible{--tw-ring-offset-width:2px;--tw-ring-offset-shadow:var(--tw-ring-inset,)0 0 0 var(--tw-ring-offset-width)var(--tw-ring-offset-color)}.focus-visible\:ring-offset-bg-base:focus-visible{--tw-ring-offset-color:var(--color-bg-base)}.focus-visible\:outline:focus-visible{outline-style:var(--tw-outline-style);outline-width:1px}.focus-visible\:outline-2:focus-visible{outline-style:var(--tw-outline-style);outline-width:2px}.focus-visible\:\!outline-offset-0:focus-visible{outline-offset:0px!important}.focus-visible\:outline-offset-0:focus-visible{outline-offset:0px}.focus-visible\:outline-primary-border:focus-visible{outline-color:var(--color-primary-border)}.focus-visible\:\!outline-none:focus-visible{--tw-outline-style:none!important;outline-style:none!important}.focus-visible\:outline-none:focus-visible{--tw-outline-style:none;outline-style:none}.active\:translate-y-px:active{--tw-translate-y:var(--spacing-px);translate:var(--tw-translate-x)var(--tw-translate-y);translate:var(--tw-translate-x)var(--tw-translate-y)}.active\:scale-95:active{--tw-scale-x:95%;--tw-scale-y:95%;--tw-scale-z:95%;scale:var(--tw-scale-x)var(--tw-scale-y)}.active\:bg-error:active{background-color:var(--color-error)}.active\:bg-fill-secondary:active{background-color:var(--color-fill-secondary)}.active\:opacity-80:active{opacity:.8}.active\:opacity-95:active{opacity:.95}.disabled\:pointer-events-none:disabled{pointer-events:none}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:opacity-50:disabled{opacity:.5}.aria-\[orientation\=horizontal\]\:h-px[aria-orientation=horizontal]{height:1px;height:var(--spacing-px)}.aria-\[orientation\=horizontal\]\:w-full[aria-orientation=horizontal]{width:100%}.aria-\[orientation\=horizontal\]\:cursor-row-resize[aria-orientation=horizontal]{cursor:row-resize}.aria-\[orientation\=vertical\]\:h-full[aria-orientation=vertical]{height:100%}.aria-\[orientation\=vertical\]\:w-px[aria-orientation=vertical]{width:1px;width:var(--spacing-px)}.aria-\[orientation\=vertical\]\:cursor-col-resize[aria-orientation=vertical]{cursor:col-resize}.data-\[disabled\]\:pointer-events-none[data-disabled]{pointer-events:none}.data-\[disabled\]\:opacity-50[data-disabled]{opacity:.5}.data-\[highlighted\]\:bg-error-bg[data-highlighted]{background-color:var(--color-error-bg)}.data-\[highlighted\]\:bg-fill-secondary[data-highlighted]{background-color:var(--color-fill-secondary)}.data-\[highlighted\]\:text-error[data-highlighted]{color:var(--color-error)}.data-\[highlighted\]\:text-text[data-highlighted]{color:var(--color-text)}.data-\[orientation\=horizontal\]\:h-2[data-orientation=horizontal]{height:var(--spacing-2)}.data-\[orientation\=horizontal\]\:h-full[data-orientation=horizontal]{height:100%}.data-\[orientation\=horizontal\]\:w-full[data-orientation=horizontal]{width:100%}.data-\[orientation\=horizontal\]\:flex-col[data-orientation=horizontal]{flex-direction:column}.data-\[orientation\=horizontal\]\:flex-row[data-orientation=horizontal]{flex-direction:row}.data-\[orientation\=horizontal\]\:justify-between[data-orientation=horizontal]{justify-content:space-between}.data-\[orientation\=horizontal\]\:border-r[data-orientation=horizontal]{border-right-style:var(--tw-border-style);border-right-width:1px}.data-\[orientation\=horizontal\]\:border-b-0[data-orientation=horizontal]{border-bottom-style:var(--tw-border-style);border-bottom-width:0}.data-\[orientation\=horizontal\]\:border-border-tertiary[data-orientation=horizontal]{border-color:var(--color-border-tertiary)}.data-\[orientation\=horizontal\]\:py-4[data-orientation=horizontal]{padding-block:var(--spacing-4)}.data-\[orientation\=horizontal\]\:pr-3[data-orientation=horizontal]{padding-right:var(--spacing-3)}.data-\[orientation\=horizontal\]\:pb-0[data-orientation=horizontal]{padding-bottom:var(--spacing-0)}.data-\[orientation\=horizontal\]\:pl-0[data-orientation=horizontal]{padding-left:var(--spacing-0)}.data-\[orientation\=horizontal\]\:text-left[data-orientation=horizontal]{text-align:left}.data-\[orientation\=horizontal\]\:last\:border-r-0[data-orientation=horizontal]:last-child{border-right-style:var(--tw-border-style);border-right-width:0}.data-\[orientation\=vertical\]\:mt-0[data-orientation=vertical]{margin-top:var(--spacing-0)}.data-\[orientation\=vertical\]\:ml-2[data-orientation=vertical]{margin-left:var(--spacing-2)}.data-\[orientation\=vertical\]\:h-full[data-orientation=vertical]{height:100%}.data-\[orientation\=vertical\]\:w-2[data-orientation=vertical]{width:var(--spacing-2)}.data-\[orientation\=vertical\]\:w-auto[data-orientation=vertical]{width:auto}.data-\[orientation\=vertical\]\:w-full[data-orientation=vertical]{width:100%}.data-\[orientation\=vertical\]\:flex-col[data-orientation=vertical]{flex-direction:column}.data-\[orientation\=vertical\]\:items-stretch[data-orientation=vertical]{align-items:stretch}.data-\[orientation\=vertical\]\:justify-start[data-orientation=vertical]{justify-content:flex-start}.data-\[orientation\=vertical\]\:rounded-md[data-orientation=vertical]{border-radius:var(--radius-md)}.data-\[orientation\=vertical\]\:px-3[data-orientation=vertical]{padding-inline:var(--spacing-3)}.data-\[orientation\=vertical\]\:py-2[data-orientation=vertical]{padding-block:var(--spacing-2)}.data-\[resize-handle-active\]\:bg-border-secondary[data-resize-handle-active]{background-color:var(--color-border-secondary)}.data-\[side\=bottom\]\:slide-in-from-top-2[data-side=bottom]{--tw-enter-translate-y:-var(--spacing-2)}.data-\[side\=left\]\:slide-in-from-right-2[data-side=left]{--tw-enter-translate-x:var(--spacing-2)}.data-\[side\=right\]\:slide-in-from-left-2[data-side=right]{--tw-enter-translate-x:-var(--spacing-2)}.data-\[side\=top\]\:slide-in-from-bottom-2[data-side=top]{--tw-enter-translate-y:var(--spacing-2)}.data-\[state\=active\]\:border-primary[data-state=active]{border-color:var(--color-primary)}.data-\[state\=active\]\:bg-bg-container[data-state=active]{background-color:var(--color-bg-container)}.data-\[state\=active\]\:text-text[data-state=active]{color:var(--color-text)}.data-\[state\=active\]\:shadow-none[data-state=active]{--tw-shadow:0 0 #0000;box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.data-\[state\=active\]\:shadow-sm[data-state=active]{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a),0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.data-\[state\=checked\]\:translate-x-4[data-state=checked]{--tw-translate-x:var(--spacing-4);translate:var(--tw-translate-x)var(--tw-translate-y)}.data-\[state\=checked\]\:translate-x-4\.5[data-state=checked]{--tw-translate-x:calc(var(--spacing)*4.5);translate:var(--tw-translate-x)var(--tw-translate-y)}.data-\[state\=checked\]\:border-text[data-state=checked]{border-color:var(--color-text)}.data-\[state\=checked\]\:bg-fill-secondary[data-state=checked]{background-color:var(--color-fill-secondary)}.data-\[state\=checked\]\:bg-primary[data-state=checked]{background-color:var(--color-primary)}.data-\[state\=checked\]\:bg-text[data-state=checked]{background-color:var(--color-text)}.data-\[state\=checked\]\:text-bg-base[data-state=checked]{color:var(--color-bg-base)}.data-\[state\=checked\]\:text-text[data-state=checked]{color:var(--color-text)}.data-\[state\=closed\]\:animate-accordion-up[data-state=closed]{animation:var(--animate-accordion-up)}.data-\[state\=closed\]\:animate-out[data-state=closed]{--tw-exit-opacity:initial;--tw-exit-scale:initial;--tw-exit-rotate:initial;--tw-exit-translate-x:initial;--tw-exit-translate-y:initial;animation-name:exit;animation-duration:.15s}.data-\[state\=closed\]\:fade-out-0[data-state=closed]{--tw-exit-opacity:0}.data-\[state\=closed\]\:zoom-out-95[data-state=closed]{--tw-exit-scale:.95}.data-\[orientation\=horizontal\]\:data-\[state\=closed\]\:animate-accordion-left[data-orientation=horizontal][data-state=closed]{animation:var(--animate-accordion-left)}.data-\[state\=inactive\]\:hidden[data-state=inactive]{display:none}.data-\[state\=on\]\:border-border-secondary[data-state=on]{border-color:var(--color-border-secondary)}.data-\[state\=on\]\:bg-fill[data-state=on]{background-color:var(--color-fill)}.data-\[state\=on\]\:text-text[data-state=on]{color:var(--color-text)}.data-\[state\=open\]\:animate-accordion-down[data-state=open]{animation:var(--animate-accordion-down)}.data-\[state\=open\]\:bg-fill-secondary[data-state=open]{background-color:var(--color-fill-secondary)}.data-\[state\=open\]\:animate-in[data-state=open]{--tw-enter-opacity:initial;--tw-enter-scale:initial;--tw-enter-rotate:initial;--tw-enter-translate-x:initial;--tw-enter-translate-y:initial;animation-name:enter;animation-duration:.15s}.data-\[orientation\=horizontal\]\:data-\[state\=open\]\:animate-accordion-right[data-orientation=horizontal][data-state=open]{animation:var(--animate-accordion-right)}.data-\[state\=selected\]\:bg-fill-tertiary[data-state=selected]{background-color:var(--color-fill-tertiary)}.data-\[state\=unchecked\]\:translate-x-0[data-state=unchecked]{--tw-translate-x:var(--spacing-0);translate:var(--tw-translate-x)var(--tw-translate-y)}.data-\[state\=unchecked\]\:bg-fill-secondary[data-state=unchecked]{background-color:var(--color-fill-secondary)}@media (min-width:40rem){.sm\:inline{display:inline}.sm\:flex-row{flex-direction:row}.sm\:justify-end{justify-content:flex-end}}.\[\&_svg\]\:h-\[var\(--font-size-sm\)\] svg{height:var(--font-size-sm)}.\[\&_svg\]\:w-\[var\(--font-size-sm\)\] svg{width:var(--font-size-sm)}.\[\&_tr\]\:border-b tr{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.\[\&_tr\:last-child\]\:border-0 tr:last-child{border-style:var(--tw-border-style);border-width:0}.\[\&\:focus-visible\]\:shadow-none:focus-visible{--tw-shadow:0 0 #0000;box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.\[\&\:focus-visible\]\:ring-0:focus-visible{--tw-ring-shadow:var(--tw-ring-inset,)0 0 0 calc(0px + var(--tw-ring-offset-width))var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.\[\&\:focus-visible\]\:ring-offset-0:focus-visible{--tw-ring-offset-width:0px;--tw-ring-offset-shadow:var(--tw-ring-inset,)0 0 0 var(--tw-ring-offset-width)var(--tw-ring-offset-color)}.\[\&\:focus-visible\]\:outline-none:focus-visible{--tw-outline-style:none;outline-style:none}.\[\&\:has\(\[role\=checkbox\]\)\]\:pr-0:has([role=checkbox]){padding-right:var(--spacing-0)}.\[\&\:not\(\:first-child\)\]\:mt-4:not(:first-child){margin-top:var(--spacing-4)}.\[\&\:not\(\:first-child\)\]\:mt-6:not(:first-child){margin-top:var(--spacing-6)}.\[\&\:not\(\:first-child\)\]\:mt-8:not(:first-child){margin-top:var(--spacing-8)}.\[\&\:not\(\:first-child\)\]\:mt-10:not(:first-child){margin-top:var(--spacing-10)}.group-data-\[spacing\=0\]\/toggle-group\:data-\[variant\=outline\]\:group-data-\[orientation\=horizontal\]\/toggle-group\:\[\&\:not\(\:first-child\)\]\:border-l-0:is(:where(.group\/toggle-group)[data-spacing="0"] *)[data-variant=outline]:is(:where(.group\/toggle-group)[data-orientation=horizontal] *):not(:first-child){border-left-style:var(--tw-border-style);border-left-width:0}.group-data-\[spacing\=0\]\/toggle-group\:data-\[variant\=outline\]\:group-data-\[orientation\=vertical\]\/toggle-group\:\[\&\:not\(\:first-child\)\]\:border-t-0:is(:where(.group\/toggle-group)[data-spacing="0"] *)[data-variant=outline]:is(:where(.group\/toggle-group)[data-orientation=vertical] *):not(:first-child){border-top-style:var(--tw-border-style);border-top-width:0}.\[\&\>\*\]\:block>*{display:block}.\[\&\>\*\]\:flex>*{display:flex}.\[\&\>\*\]\:size-4>*{width:var(--spacing-4);height:var(--spacing-4)}.\[\&\>\*\]\:size-full>*{width:100%;height:100%}.\[\&\>\*\]\:items-center>*{align-items:center}.\[\&\>\*\]\:justify-center>*{justify-content:center}.\[\&\>\*\]\:leading-none>*{--tw-leading:1;line-height:1}.\[\&\>\*\]\:ring-2>*{--tw-ring-shadow:var(--tw-ring-inset,)0 0 0 calc(2px + var(--tw-ring-offset-width))var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.\[\&\>\*\]\:ring-bg-base>*{--tw-ring-color:var(--color-bg-base)}.\[\&\>\[role\=checkbox\]\]\:translate-y-0\.5>[role=checkbox]{--tw-translate-y:var(--spacing-0\.5);translate:var(--tw-translate-x)var(--tw-translate-y)}.\[\&\>input\]\:mt-0\.5>input{margin-top:var(--spacing-0\.5)}.\[\&\>input\]\:shrink-0>input{flex-shrink:0}.\[\&\>li\]\:mt-2>li{margin-top:var(--spacing-2)}.\[\&\>span\]\:line-clamp-1>span{-webkit-line-clamp:1;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.\[\&\>svg\]\:h-\[var\(--font-size-sm\)\]>svg{height:var(--font-size-sm)}.\[\&\>svg\]\:w-\[var\(--font-size-sm\)\]>svg{width:var(--font-size-sm)}.\[\&\>svg\]\:text-current>svg{color:currentColor}.\[\&\>\*\]\:\[\&\>svg\]\:block>*>svg{display:block}.\[\&\>\*\]\:\[\&\>svg\]\:leading-none>*>svg{--tw-leading:1;line-height:1}.\[\&\>tr\]\:border-b>tr{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.\[\&\>tr\]\:border-border-tertiary>tr{border-color:var(--color-border-tertiary)}.\[\&\>tr\]\:last\:border-b-0>tr:last-child{border-bottom-style:var(--tw-border-style);border-bottom-width:0}.\[\&\[aria-orientation\=horizontal\]\>div\]\:h-1[aria-orientation=horizontal]>div{height:var(--spacing-1)}.\[\&\[aria-orientation\=horizontal\]\>div\]\:w-6[aria-orientation=horizontal]>div{width:var(--spacing-6)}.\[\&\[aria-orientation\=vertical\]\>div\]\:h-6[aria-orientation=vertical]>div{height:var(--spacing-6)}.\[\&\[aria-orientation\=vertical\]\>div\]\:w-1[aria-orientation=vertical]>div{width:var(--spacing-1)}.tooltip-content .\[\.tooltip-content_\&\]\:bg-bg-highlight-hover{background-color:var(--color-bg-highlight-hover)}.tooltip-content .\[\.tooltip-content_\&\]\:text-text-on-primary{color:var(--color-text-on-primary)}.tooltip-content .dark\:\[\.tooltip-content_\&\]\:bg-\[color\:var\(--color-bg-base\)\]\/10:where([data-theme=dark],[data-theme=dark] *,[data-theme=dark-parchment],[data-theme=dark-parchment] *){background-color:var(--color-bg-base)}@supports (color:color-mix(in lab, red, red)){.tooltip-content .dark\:\[\.tooltip-content_\&\]\:bg-\[color\:var\(--color-bg-base\)\]\/10:where([data-theme=dark],[data-theme=dark] *,[data-theme=dark-parchment],[data-theme=dark-parchment] *){background-color:color-mix(in oklab,var(--color-bg-base)10%,transparent)}}.tooltip-content .dark\:\[\.tooltip-content_\&\]\:text-\[var\(--color-bg-base\)\]:where([data-theme=dark],[data-theme=dark] *,[data-theme=dark-parchment],[data-theme=dark-parchment] *){color:var(--color-bg-base)}}:root{--config-spacing-unit:4px;--config-spacing-0:0;--config-spacing-px:1px;--config-spacing-0\.5:2px;--config-spacing-1:4px;--config-spacing-1\.5:6px;--config-spacing-2:8px;--config-spacing-2\.5:10px;--config-spacing-3:12px;--config-spacing-3\.5:14px;--config-spacing-4:16px;--config-spacing-5:20px;--config-spacing-6:24px;--config-spacing-7:28px;--config-spacing-8:32px;--config-spacing-9:36px;--config-spacing-10:40px;--config-spacing-11:44px;--config-spacing-12:48px;--config-spacing-14:56px;--config-spacing-16:64px;--config-spacing-20:80px;--config-spacing-24:96px;--config-spacing-28:112px;--config-spacing-32:128px;--config-spacing-36:144px;--config-spacing-40:160px;--config-spacing-44:176px;--config-spacing-48:192px;--config-spacing-52:208px;--config-spacing-56:224px;--config-spacing-60:240px;--config-spacing-64:256px;--config-spacing-72:288px;--config-spacing-80:320px;--config-spacing-96:384px;--config-radius-none:0;--config-radius-sm:4px;--config-radius-default:6px;--config-radius-md:6px;--config-radius-lg:8px;--config-radius-xl:12px;--config-radius-2xl:16px;--config-radius-3xl:24px;--config-radius-full:9999px;--config-font-size-xs:12px;--config-font-size-xs-lh:16px;--config-font-size-sm:14px;--config-font-size-sm-lh:20px;--config-font-size-base:14px;--config-font-size-base-lh:20px;--config-font-size-lg:16px;--config-font-size-lg-lh:24px;--config-font-size-xl:18px;--config-font-size-xl-lh:24px;--config-font-size-2xl:20px;--config-font-size-2xl-lh:24px;--config-font-size-3xl:24px;--config-font-size-3xl-lh:28px;--config-font-size-4xl:30px;--config-font-size-4xl-lh:32px;--config-font-size-5xl:36px;--config-font-size-5xl-lh:36px;--config-font-size-6xl:48px;--config-font-size-6xl-lh:1;--config-font-size-7xl:60px;--config-font-size-7xl-lh:1;--config-font-size-8xl:72px;--config-font-size-8xl-lh:1;--config-font-size-9xl:96px;--config-font-size-9xl-lh:1;--config-motion-duration-fast:.15s;--config-motion-duration-base:.2s;--config-motion-duration-slow:.3s;--config-motion-ease-standard:cubic-bezier(.16,1,.3,1);--config-motion-ease-emphasized:cubic-bezier(.2,.8,.2,1);--config-motion-ease-out:cubic-bezier(0,0,.2,1);--config-font-sans:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif;--config-font-mono:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace}:root,[data-style=neutral]{--spacing:var(--config-spacing-1);--spacing-0:var(--config-spacing-0);--spacing-px:var(--config-spacing-px);--spacing-0\.5:var(--config-spacing-0\.5);--spacing-1:var(--config-spacing-1);--spacing-1\.5:var(--config-spacing-1\.5);--spacing-2:var(--config-spacing-2);--spacing-2\.5:var(--config-spacing-2\.5);--spacing-3:var(--config-spacing-3);--spacing-3\.5:var(--config-spacing-3\.5);--spacing-4:var(--config-spacing-4);--spacing-5:var(--config-spacing-5);--spacing-6:var(--config-spacing-6);--spacing-7:var(--config-spacing-7);--spacing-8:var(--config-spacing-8);--spacing-9:var(--config-spacing-9);--spacing-10:var(--config-spacing-10);--spacing-11:var(--config-spacing-11);--spacing-12:var(--config-spacing-12);--spacing-14:var(--config-spacing-14);--spacing-16:var(--config-spacing-16);--spacing-20:var(--config-spacing-20);--spacing-24:var(--config-spacing-24);--spacing-28:var(--config-spacing-28);--spacing-32:var(--config-spacing-32);--spacing-36:var(--config-spacing-36);--spacing-40:var(--config-spacing-40);--spacing-44:var(--config-spacing-44);--spacing-48:var(--config-spacing-48);--spacing-52:var(--config-spacing-52);--spacing-56:var(--config-spacing-56);--spacing-60:var(--config-spacing-60);--spacing-64:var(--config-spacing-64);--spacing-72:var(--config-spacing-72);--spacing-80:var(--config-spacing-80);--spacing-96:var(--config-spacing-96);--radius-none:var(--config-radius-none);--radius-sm:var(--config-radius-sm);--radius-DEFAULT:var(--config-radius-default);--radius-md:var(--config-radius-md);--radius-lg:var(--config-radius-lg);--radius-xl:var(--config-radius-xl);--radius-2xl:var(--config-radius-2xl);--radius-3xl:var(--config-radius-3xl);--radius-full:var(--config-radius-full);--radius:var(--radius-DEFAULT);--font-size-xs:var(--config-font-size-xs);--font-size-xs--line-height:var(--config-font-size-xs-lh);--font-size-sm:var(--config-font-size-sm);--font-size-sm--line-height:var(--config-font-size-sm-lh);--font-size-base:var(--config-font-size-base);--font-size-base--line-height:var(--config-font-size-base-lh);--font-size-lg:var(--config-font-size-lg);--font-size-lg--line-height:var(--config-font-size-lg-lh);--font-size-xl:var(--config-font-size-xl);--font-size-xl--line-height:var(--config-font-size-xl-lh);--font-size-2xl:var(--config-font-size-2xl);--font-size-2xl--line-height:var(--config-font-size-2xl-lh);--font-size-3xl:var(--config-font-size-3xl);--font-size-3xl--line-height:var(--config-font-size-3xl-lh);--font-size-4xl:var(--config-font-size-4xl);--font-size-4xl--line-height:var(--config-font-size-4xl-lh);--font-size-5xl:var(--config-font-size-5xl);--font-size-5xl--line-height:var(--config-font-size-5xl-lh);--font-size-6xl:var(--config-font-size-6xl);--font-size-6xl--line-height:var(--config-font-size-6xl-lh);--font-size-7xl:var(--config-font-size-7xl);--font-size-7xl--line-height:var(--config-font-size-7xl-lh);--font-size-8xl:var(--config-font-size-8xl);--font-size-8xl--line-height:var(--config-font-size-8xl-lh);--font-size-9xl:var(--config-font-size-9xl);--font-size-9xl--line-height:var(--config-font-size-9xl-lh);--motion-duration-fast:var(--config-motion-duration-fast);--motion-duration-base:var(--config-motion-duration-base);--motion-duration-slow:var(--config-motion-duration-slow);--motion-ease-standard:var(--config-motion-ease-standard);--motion-ease-emphasized:var(--config-motion-ease-emphasized);--motion-ease-out:var(--config-motion-ease-out)}[data-style=compact]{--spacing-3:10px;--spacing-4:14px;--spacing-9:32px;--spacing-11:40px;--radius-xl:10px;--radius-2xl:12px;--radius-3xl:16px;--font-size-sm:12px;--font-size-lg:14px;--font-size-xl:16px;--font-size-2xl:18px;--font-size-3xl:22px;--font-size-4xl:28px;--font-size-5xl:34px;--font-size-6xl:44px;--font-size-7xl:56px;--font-size-8xl:64px;--font-size-9xl:88px}[data-style=soft]{--radius-sm:8px;--radius-DEFAULT:12px;--radius-md:12px;--radius-lg:16px;--radius-xl:20px;--radius-2xl:24px;--radius-3xl:28px;--radius:var(--radius-DEFAULT)}[data-style=sharp]{--spacing-3:10px;--spacing-4:14px;--spacing-9:32px;--spacing-11:40px;--radius-sm:0;--radius-DEFAULT:0;--radius-md:0;--radius-lg:0;--radius-xl:0;--radius-2xl:0;--radius-3xl:0;--radius-full:0;--radius:0;--font-sans:var(--config-font-mono);font-family:var(--font-sans);--font-size-sm:12px;--font-size-lg:14px;--font-size-xl:16px;--font-size-2xl:18px;--font-size-3xl:22px;--font-size-4xl:28px;--font-size-5xl:34px;--font-size-6xl:44px;--font-size-7xl:56px;--font-size-8xl:64px;--font-size-9xl:88px}[data-style=dense]{--spacing-2:6px;--spacing-2\.5:8px;--spacing-3:8px;--spacing-3\.5:10px;--spacing-4:12px;--spacing-5:16px;--spacing-6:20px;--spacing-7:20px;--spacing-8:28px;--spacing-9:28px;--spacing-10:32px;--spacing-11:32px;--spacing-12:40px;--spacing-14:48px;--spacing-16:56px;--spacing-20:64px;--spacing-24:80px;--spacing-28:96px;--spacing-32:112px;--spacing-36:128px;--spacing-40:144px;--spacing-44:160px;--spacing-48:176px;--spacing-52:192px;--spacing-56:208px;--spacing-60:224px;--spacing-64:240px;--spacing-72:272px;--spacing-80:304px;--spacing-96:368px;--radius-sm:2px;--radius-DEFAULT:4px;--radius-md:4px;--radius-lg:6px;--radius-xl:6px;--radius-2xl:8px;--radius-3xl:8px;--radius:var(--radius-DEFAULT);--chat-status-overlap:4px;--font-size-base:12px;--font-size-lg:14px;--font-size-xl:14px;--font-size-2xl:16px;--font-size-3xl:18px;--font-size-4xl:22px;--font-size-5xl:28px;--font-size-6xl:36px;--font-size-7xl:44px;--font-size-8xl:56px;--font-size-9xl:72px}.leading-xs{line-height:var(--font-size-xs--line-height)}.leading-sm{line-height:var(--font-size-sm--line-height)}.leading-base{line-height:var(--font-size-base--line-height)}.leading-lg{line-height:var(--font-size-lg--line-height)}.leading-xl{line-height:var(--font-size-xl--line-height)}@keyframes accordion-down{0%{height:0}to{height:var(--radix-accordion-content-height)}}@keyframes accordion-up{0%{height:var(--radix-accordion-content-height)}to{height:0}}@keyframes accordion-right{0%{width:0}to{width:var(--radix-accordion-content-width)}}@keyframes accordion-left{0%{width:var(--radix-accordion-content-width)}to{width:0}}@font-face{font-family:Seti;src:url(/qoder-seti.woff)format("woff");font-weight:400;font-style:normal;font-display:swap}.font-seti{font-family:Seti,sans-serif}:root,[data-theme=light]{color-scheme:light;--token-color-primary:#8ee5a1;--token-color-primary-hover:#73cd94;--token-color-primary-active:#5cb870;--token-color-primary-bg:#f1faf3;--token-color-primary-bg-hover:#e6f7ec;--token-color-primary-border:#cdefd9;--token-color-primary-border-hover:#b3e6c7;--token-color-primary-text:#141414;--token-color-primary-text-hover:#73cd94;--token-color-primary-text-active:#5cb870;--token-color-text-on-primary:#fdfdfd;--token-color-text:#141414;--token-color-text-secondary:#636261;--token-color-text-tertiary:#838280;--token-color-text-quaternary:#8e8c8b;--token-color-text-base:#0f0d0c;--token-color-border:#bcbbba;--token-color-border-secondary:#ddd;--token-color-border-tertiary:#e6e6e6;--token-color-fill:#dfdfdf;--token-color-fill-secondary:#efefef;--token-color-fill-tertiary:#f9f9f9;--token-color-fill-quaternary:#fcfcfc;--token-color-fill-disable:#dad9d8;--token-color-bg-container:#fff;--token-color-bg-elevated:#f9f9f9;--token-color-bg-layout:#fdfdfd;--token-color-bg-spotlight:#fafafa;--token-color-bg-mask:#00000080;--token-color-mask-shimmer-weak:#0000004d;--token-color-mask-shimmer-strong:#000c;--token-color-mask-shimmer-full:#000;--token-color-bg-base:#fff;--token-color-bg-highlight:#080807;--token-color-bg-highlight-hover:#1a1a1a;--token-color-shadow-primary:#00000005;--token-color-shadow-secondary:#00000009;--token-color-shadow-tertiary:#0000000e;--token-color-shadow-quaternary:#00000013;--token-color-link:#5cb870;--token-color-error:#ff4d4f;--token-color-error-hover:#ff7875;--token-color-error-bg:#fff2f0;--token-color-error-bg-hover:#ffe4e0;--token-color-error-border:#ffccc7;--token-color-info:#0b83f1;--token-color-info-hover:#5ebcff;--token-color-info-bg:#e6f7ff;--token-color-info-bg-hover:#d0efff;--token-color-info-border:#b0e3ff;--token-color-success:#73cd94;--token-color-success-hover:#8ee5a1;--token-color-success-bg:#f1faf3;--token-color-success-bg-hover:#e6f7ec;--token-color-success-border:#cdefd9;--token-color-warning:#faad14;--token-color-warning-hover:#ffd666;--token-color-warning-bg:#fffbe6;--token-color-warning-bg-hover:#fff3cf;--token-color-warning-border:#ffe5bf;--token-color-pink:#ec4899;--token-color-pink-bg:#f9e3f3;--token-color-pink-bg-hover:#f5d4eb;--token-color-purple:#615ced;--token-color-purple-bg:#ebe9ff;--token-color-purple-bg-hover:#dddaff;--token-color-yellow:#fac414;--token-color-yellow-bg:#fff3cf;--token-color-yellow-bg-hover:#ffe9a8;--token-color-orange:#fa8125;--token-color-orange-bg:#ffefde;--token-color-orange-bg-hover:#ffe3c7;--token-color-teal:#14b8a6;--token-color-teal-bg:#def7f1;--token-color-teal-bg-hover:#caf0e8;--token-color-blue:#0090ff;--token-color-blue-bg:#deedff;--token-color-blue-bg-hover:#c8e3ff;--token-color-mauve:#8e8c99;--token-color-mauve-bg:#f1f2f3;--token-color-mauve-bg-hover:#e4e5e7;--token-color-slate:#404040;--token-color-slate-bg:#fafafa;--token-color-slate-bg-hover:#efefef;--token-color-lavender:#b99dff;--token-color-lavender-bg:#ece4ff;--token-color-lavender-bg-hover:#e0d4ff;--token-color-sage:#6bb394;--token-color-sage-bg:#eff3f2;--token-color-sage-bg-hover:#e2eae8;--token-color-input:var(--token-color-border-tertiary);--token-color-ring:var(--token-color-primary-border);--token-color-popover:var(--token-color-bg-container);--token-color-popover-foreground:var(--token-color-text);--token-color-accent:var(--token-color-fill-secondary);--token-color-accent-foreground:var(--token-color-text);--token-color-muted:var(--token-color-fill-tertiary);--token-color-muted-foreground:var(--token-color-text-secondary);--token-color-background:var(--token-color-bg-base);--token-color-diff-insert:#a6dcba;--token-color-diff-insert-bg:#d9ebe0;--token-color-diff-remove:#fc6b83;--token-color-diff-remove-bg:#e3d1d5}[data-theme=dark]{color-scheme:dark;--token-color-primary:#8ee5a1;--token-color-primary-hover:#9be6b3;--token-color-primary-active:#73cd94;--token-color-primary-bg:#14261c;--token-color-primary-bg-hover:#1a2e21;--token-color-primary-border:#335942;--token-color-primary-border-hover:#407354;--token-color-primary-text:#8ee5a1;--token-color-primary-text-hover:#9be6b3;--token-color-primary-text-active:#73cd94;--token-color-text-on-primary:#0d0d0d;--token-color-text:#faf9f5;--token-color-text-secondary:#9c9d9e;--token-color-text-tertiary:#7c7d7f;--token-color-text-quaternary:#717374;--token-color-text-base:#f0f2f3;--token-color-border:#404040;--token-color-border-secondary:#2a2a2a;--token-color-border-tertiary:#262626;--token-color-fill:#454545;--token-color-fill-secondary:#363636;--token-color-fill-tertiary:#1a1a1a;--token-color-fill-quaternary:#1a1a1a;--token-color-fill-disable:#525252;--token-color-bg-container:#0d0d0d;--token-color-bg-elevated:#080808;--token-color-bg-layout:#050505;--token-color-bg-spotlight:#080808;--token-color-bg-mask:#000000b3;--token-color-mask-shimmer-weak:#0000004d;--token-color-mask-shimmer-strong:#000c;--token-color-mask-shimmer-full:#000;--token-color-bg-base:#000;--token-color-bg-highlight:#d0d0d0;--token-color-bg-highlight-hover:#e0e0e0;--token-color-link:#8ee5a1;--token-color-error:#ff4d4f;--token-color-error-hover:#ff7875;--token-color-error-bg:#4a1a1b;--token-color-error-bg-hover:#5c2224;--token-color-error-border:#663338;--token-color-info:#0b83f1;--token-color-info-hover:#5ebcff;--token-color-info-bg:#19080e;--token-color-info-bg-hover:#220a12;--token-color-info-border:#4f1c0e;--token-color-success:#73cd94;--token-color-success-hover:#8ee5a1;--token-color-success-bg:#14261c;--token-color-success-bg-hover:#1a2e21;--token-color-success-border:#335942;--token-color-warning:#faad14;--token-color-warning-hover:#ffd666;--token-color-warning-bg:#4a4019;--token-color-warning-bg-hover:#5c4e1f;--token-color-warning-border:#664d19;--token-color-pink:#ec4899;--token-color-pink-bg:#4a1c31;--token-color-pink-bg-hover:#5c2440;--token-color-purple:#615ced;--token-color-purple-bg:#14160e;--token-color-purple-bg-hover:#1c1e14;--token-color-yellow:#fac414;--token-color-yellow-bg:#4a4030;--token-color-yellow-bg-hover:#5c5040;--token-color-orange:#fa8125;--token-color-orange-bg:#4a1021;--token-color-orange-bg-hover:#5c1429;--token-color-teal:#14b8a6;--token-color-teal-bg:#21080e;--token-color-teal-bg-hover:#2e0e14;--token-color-blue:#0090ff;--token-color-blue-bg:#21120e;--token-color-blue-bg-hover:#2e1a14;--token-color-mauve:#8e8c99;--token-color-mauve-bg:#0e0d0c;--token-color-mauve-bg-hover:#1a1818;--token-color-slate:#363636;--token-color-slate-bg:#1a1a1a;--token-color-slate-bg-hover:#262626;--token-color-lavender:#b99dff;--token-color-lavender-bg:#131b0e;--token-color-lavender-bg-hover:#1c2614;--token-color-sage:#6bb394;--token-color-sage-bg:#100c0d;--token-color-sage-bg-hover:#1a1418;--token-color-input:var(--token-color-border-tertiary);--token-color-ring:var(--token-color-primary-border);--token-color-popover:var(--token-color-bg-container);--token-color-popover-foreground:var(--token-color-text);--token-color-accent:var(--token-color-fill-secondary);--token-color-accent-foreground:var(--token-color-text);--token-color-muted:var(--token-color-fill-tertiary);--token-color-muted-foreground:var(--token-color-text-secondary);--token-color-background:var(--token-color-bg-base);--token-color-diff-insert:#73cd94;--token-color-diff-insert-bg:#14261c;--token-color-diff-remove:#fc6b83;--token-color-diff-remove-bg:#1c2e2a}[data-theme=dark] .SendButton-send{background-color:var(--token-color-success)}[data-theme=dark] .SendButton-send:hover:not(:disabled){background-color:var(--token-color-success-hover)}[data-theme=light-parchment]{--token-color-primary:#202116;--token-color-primary-hover:#3d3930;--token-color-primary-active:#3d3930;--token-color-primary-bg:#f0ede7;--token-color-primary-bg-hover:#e8e4dc;--token-color-primary-border:#d4cfc6;--token-color-primary-border-hover:#c4beb4;--token-color-primary-text:#202116;--token-color-primary-text-hover:#3d3930;--token-color-primary-text-active:#3d3930;--token-color-text-on-primary:#faf9f6;--token-color-text:#202116;--token-color-text-secondary:#4a463c;--token-color-text-tertiary:#6b665c;--token-color-text-quaternary:#8a857a;--token-color-text-base:#202116;--token-color-border:#d4cfc6;--token-color-border-secondary:#e5e1d9;--token-color-border-tertiary:#ede9e2;--token-color-fill:#f5f0e7;--token-color-fill-secondary:#ede8e0;--token-color-fill-tertiary:#f7f4ef;--token-color-fill-quaternary:#faf9f6;--token-color-fill-disable:#e0dcd4;--token-color-bg-container:#faf9f6;--token-color-bg-elevated:#f7f4ef;--token-color-bg-layout:#fdfcfa;--token-color-bg-spotlight:#faf9f6;--token-color-bg-mask:#00000080;--token-color-mask-shimmer-weak:#0000004d;--token-color-mask-shimmer-strong:#000c;--token-color-mask-shimmer-full:#000;--token-color-bg-base:#fff;--token-color-bg-highlight:#202116;--token-color-bg-highlight-hover:#2d2a22;--token-color-link:#5b4a3a;--token-color-error:#ff4d4f;--token-color-error-hover:#ff7875;--token-color-error-bg:#fff2f0;--token-color-error-bg-hover:#fff1f0;--token-color-error-border:#ffccc7;--token-color-info:#0b83f1;--token-color-info-hover:#5ebcff;--token-color-info-bg:#e6f7ff;--token-color-info-bg-hover:#d0efff;--token-color-info-border:#b0e3ff;--token-color-success:#5a7a5e;--token-color-success-hover:#6b8f71;--token-color-success-bg:#eef2ed;--token-color-success-bg-hover:#e4ebe2;--token-color-success-border:#c5d4c4;--token-color-warning:#faad14;--token-color-warning-hover:#ffd666;--token-color-warning-bg:#fffbe6;--token-color-warning-bg-hover:#fff3cf;--token-color-warning-border:#ffe5bf;--token-color-pink:#ec4899;--token-color-pink-bg:#f9e3f3;--token-color-pink-bg-hover:#f5d4eb;--token-color-purple:#615ced;--token-color-purple-bg:#ebe9ff;--token-color-purple-bg-hover:#dddaff;--token-color-yellow:#fac414;--token-color-yellow-bg:#fff3cf;--token-color-yellow-bg-hover:#ffe9a8;--token-color-orange:#fa8125;--token-color-orange-bg:#ffefde;--token-color-orange-bg-hover:#ffe3c7;--token-color-teal:#14b8a6;--token-color-teal-bg:#def7f1;--token-color-teal-bg-hover:#caf0e8;--token-color-blue:#0090ff;--token-color-blue-bg:#deedff;--token-color-blue-bg-hover:#c8e3ff;--token-color-mauve:#8e8c99;--token-color-mauve-bg:#f1f2f3;--token-color-mauve-bg-hover:#e4e5e7;--token-color-slate:#1e293b;--token-color-slate-bg:#e2e8f0;--token-color-slate-bg-hover:#efefef;--token-color-lavender:#b99dff;--token-color-lavender-bg:#ece4ff;--token-color-lavender-bg-hover:#e0d4ff;--token-color-sage:#6bb394;--token-color-sage-bg:#eff3f2;--token-color-sage-bg-hover:#e2eae8;--token-color-input:var(--token-color-border-tertiary);--token-color-ring:var(--token-color-primary-border);--token-color-popover:var(--token-color-bg-container);--token-color-popover-foreground:var(--token-color-text);--token-color-accent:var(--token-color-fill-secondary);--token-color-accent-foreground:var(--token-color-text);--token-color-muted:var(--token-color-fill-tertiary);--token-color-muted-foreground:var(--token-color-text-secondary);--token-color-background:var(--token-color-bg-base);--token-color-diff-insert:#a6dcba;--token-color-diff-insert-bg:#d9ebe0;--token-color-diff-remove:#fc6b83;--token-color-diff-remove-bg:#e3d1d5}[data-theme=dark-parchment]{color-scheme:dark;--token-color-primary:#c4b8a8;--token-color-primary-hover:#d4c9bc;--token-color-primary-active:#a89888;--token-color-primary-bg:#2d2a22;--token-color-primary-bg-hover:#363228;--token-color-primary-border:#4a463c;--token-color-primary-border-hover:#5b564c;--token-color-primary-text:#faf9f6;--token-color-primary-text-hover:#d4c9bc;--token-color-primary-text-active:#c4b8a8;--token-color-text-on-primary:#1a1814;--token-color-text:#faf9f6;--token-color-text-secondary:#c9c4b8;--token-color-text-tertiary:#a8a296;--token-color-text-quaternary:#8a857a;--token-color-text-base:#f0ede7;--token-color-border:#4a463c;--token-color-border-secondary:#3d3930;--token-color-border-tertiary:#2d2a22;--token-color-fill:#3d3930;--token-color-fill-secondary:#363228;--token-color-fill-tertiary:#252220;--token-color-fill-quaternary:#1e1c18;--token-color-fill-disable:#4a463c;--token-color-bg-container:#1e1c18;--token-color-bg-elevated:#252220;--token-color-bg-layout:#1a1814;--token-color-bg-spotlight:#252220;--token-color-bg-mask:#0009;--token-color-mask-shimmer-weak:#0000004d;--token-color-mask-shimmer-strong:#000c;--token-color-mask-shimmer-full:#000;--token-color-bg-base:#1a1814;--token-color-bg-highlight:#c9c4b8;--token-color-bg-highlight-hover:#d4c9bc;--token-color-link:#c4b8a8;--token-color-error:#ff6b6b;--token-color-error-hover:#ff8787;--token-color-error-bg:#4a2a2a;--token-color-error-bg-hover:#5c3535;--token-color-error-border:#663338;--token-color-info:#5ebcff;--token-color-info-hover:#7ec9ff;--token-color-info-bg:#1a2838;--token-color-info-bg-hover:#223244;--token-color-info-border:#2a4050;--token-color-success:#6b8f71;--token-color-success-hover:#7fa385;--token-color-success-bg:#1c2a1e;--token-color-success-bg-hover:#243224;--token-color-success-border:#3d4a3c;--token-color-warning:#e5a814;--token-color-warning-hover:#f5c024;--token-color-warning-bg:#4a4019;--token-color-warning-bg-hover:#5c4e1f;--token-color-warning-border:#664d19;--token-color-pink:#ec4899;--token-color-pink-bg:#4a2a38;--token-color-pink-bg-hover:#5c3540;--token-color-purple:#8b7bed;--token-color-purple-bg:#2a2238;--token-color-purple-bg-hover:#362e44;--token-color-yellow:#e5c04a;--token-color-yellow-bg:#4a4030;--token-color-yellow-bg-hover:#5c5040;--token-color-orange:#e07830;--token-color-orange-bg:#4a3020;--token-color-orange-bg-hover:#5c3a28;--token-color-teal:#14b8a6;--token-color-teal-bg:#1a3230;--token-color-teal-bg-hover:#243a38;--token-color-blue:#0090ff;--token-color-blue-bg:#1a2838;--token-color-blue-bg-hover:#223244;--token-color-mauve:#9c9aa8;--token-color-mauve-bg:#2a2830;--token-color-mauve-bg-hover:#363438;--token-color-slate:#5c5a52;--token-color-slate-bg:#2d2a22;--token-color-slate-bg-hover:#363228;--token-color-lavender:#b99dff;--token-color-lavender-bg:#2a2238;--token-color-lavender-bg-hover:#362e44;--token-color-sage:#6bb394;--token-color-sage-bg:#1c2a24;--token-color-sage-bg-hover:#243228;--token-color-input:var(--token-color-border-tertiary);--token-color-ring:var(--token-color-primary-border);--token-color-popover:var(--token-color-bg-container);--token-color-popover-foreground:var(--token-color-text);--token-color-accent:var(--token-color-fill-secondary);--token-color-accent-foreground:var(--token-color-text);--token-color-muted:var(--token-color-fill-tertiary);--token-color-muted-foreground:var(--token-color-text-secondary);--token-color-background:var(--token-color-bg-base);--token-color-diff-insert:#6b8f71;--token-color-diff-insert-bg:#1c2a1e;--token-color-diff-remove:#fc6b83;--token-color-diff-remove-bg:#2a1c1e}[data-theme=dark-parchment] .SendButton-send{background-color:var(--token-color-success)}[data-theme=dark-parchment] .SendButton-send:hover:not(:disabled){background-color:var(--token-color-success-hover)}.scrollbar-auto::-webkit-scrollbar{width:6px;height:6px}.scrollbar-auto::-webkit-scrollbar-track{background:0 0}.scrollbar-auto::-webkit-scrollbar-thumb{min-height:var(--spacing-8);background-color:#0000;border-radius:3px;transition:background-color .2s}.scrollbar-auto:hover::-webkit-scrollbar-thumb{background-color:var(--color-fill-secondary)}.scrollbar-auto::-webkit-scrollbar-corner{background:0 0}.scrollbar-auto{scrollbar-width:thin}@supports (scrollbar-width:thin){.scrollbar-auto{scrollbar-color:transparent transparent}.scrollbar-auto:hover{scrollbar-color:var(--color-fill-secondary)transparent}}@keyframes enter{0%{opacity:var(--tw-enter-opacity,1);transform:translate3d(var(--tw-enter-translate-x,0),var(--tw-enter-translate-y,0),0)scale3d(var(--tw-enter-scale,1),var(--tw-enter-scale,1),var(--tw-enter-scale,1))rotate(var(--tw-enter-rotate,0))}}@keyframes exit{to{opacity:var(--tw-exit-opacity,1);transform:translate3d(var(--tw-exit-translate-x,0),var(--tw-exit-translate-y,0),0)scale3d(var(--tw-exit-scale,1),var(--tw-exit-scale,1),var(--tw-exit-scale,1))rotate(var(--tw-exit-rotate,0))}}@property --tw-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-z{syntax:"*";inherits:false;initial-value:0}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-space-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-space-x-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-gradient-position{syntax:"*";inherits:false}@property --tw-gradient-from{syntax:"<color>";inherits:false;initial-value:#0000}@property --tw-gradient-via{syntax:"<color>";inherits:false;initial-value:#0000}@property --tw-gradient-to{syntax:"<color>";inherits:false;initial-value:#0000}@property --tw-gradient-stops{syntax:"*";inherits:false}@property --tw-gradient-via-stops{syntax:"*";inherits:false}@property --tw-gradient-from-position{syntax:"<length-percentage>";inherits:false;initial-value:0%}@property --tw-gradient-via-position{syntax:"<length-percentage>";inherits:false;initial-value:50%}@property --tw-gradient-to-position{syntax:"<length-percentage>";inherits:false;initial-value:100%}@property --tw-leading{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-tracking{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-backdrop-blur{syntax:"*";inherits:false}@property --tw-backdrop-brightness{syntax:"*";inherits:false}@property --tw-backdrop-contrast{syntax:"*";inherits:false}@property --tw-backdrop-grayscale{syntax:"*";inherits:false}@property --tw-backdrop-hue-rotate{syntax:"*";inherits:false}@property --tw-backdrop-invert{syntax:"*";inherits:false}@property --tw-backdrop-opacity{syntax:"*";inherits:false}@property --tw-backdrop-saturate{syntax:"*";inherits:false}@property --tw-backdrop-sepia{syntax:"*";inherits:false}@property --tw-duration{syntax:"*";inherits:false}@property --tw-ease{syntax:"*";inherits:false}@property --tw-content{syntax:"*";inherits:false;initial-value:""}@property --tw-scale-x{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-y{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-z{syntax:"*";inherits:false;initial-value:1}@keyframes spin{to{transform:rotate(360deg)}}@keyframes pulse{50%{opacity:.5}}
@@ -1,11 +1,13 @@
1
1
  /**
2
- * [INPUT]: (AlertDialogContentProps, AlertDialogActionProps )
3
- * [OUTPUT]: (JSX.Element) - 确认对话框,基于 Registry 单一来源;主库额外提供 AlertDialogMedia
4
- * [POS]: components/foundation/AlertDialog - registry 再导出 + Media 占位 + 注入 useThemeStyle
2
+ * [WHO]: Public exports from this file (see implementation below).
3
+ * [FROM]: See the import block immediately after this header.
4
+ * [TO]: sparkdesign package consumers; output of CLI `add` when applicable.
5
+ * [HERE]: src/components/basic/AlertDialog/index.tsx — Spark Design source; keep aligned with the main library.
5
6
  *
6
7
  * [PROTOCOL]:
7
- * 1. 实现来自根目录 registry/basic/alert-dialog.tsx,主库注入 useThemeStyle 使 Portal ThemeStyleProvider
8
- * 2. AlertDialogMedia registry 未提供的扩展,保留在主库薄实现
8
+ * 1. Keep this P3 header in sync when the public contract changes.
9
+ * 2. Update module AGENTS.md (P2) and root AGENTS.md (P1) when boundaries change.
10
+ * 3. Follow design tokens and explicit type exports.
9
11
  */
10
12
  import * as React from 'react';
11
13
  import { AlertDialog as AlertDialogRoot, AlertDialogTrigger, AlertDialogPortal, AlertDialogOverlay, AlertDialogHeader, AlertDialogFooter, AlertDialogTitle, AlertDialogDescription, AlertDialogAction, AlertDialogCancel } from '../../../../registry/basic/alert-dialog';
@@ -1,7 +1,13 @@
1
1
  /**
2
- * [INPUT]: (AvatarProps, AvatarImageProps )
3
- * [OUTPUT]: (JSX.Element) - 头像,基于 Registry 单一来源
4
- * [POS]: components/foundation/Avatar - registry 再导出
2
+ * [WHO]: Public exports from this file (see implementation below).
3
+ * [FROM]: See the import block immediately after this header.
4
+ * [TO]: sparkdesign package consumers; output of CLI `add` when applicable.
5
+ * [HERE]: src/components/basic/Avatar/index.tsx — Spark Design source; keep aligned with the main library.
6
+ *
7
+ * [PROTOCOL]:
8
+ * 1. Keep this P3 header in sync when the public contract changes.
9
+ * 2. Update module AGENTS.md (P2) and root AGENTS.md (P1) when boundaries change.
10
+ * 3. Follow design tokens and explicit type exports.
5
11
  */
6
12
  export { Avatar, AvatarImage, AvatarFallback, AvatarBadge, AvatarGroup, AvatarGroupCount, avatarVariants, } from '../../../../registry/basic/avatar';
7
13
  export type { AvatarProps, AvatarImageProps, AvatarFallbackProps, AvatarBadgeProps, AvatarGroupProps, AvatarGroupCountProps, } from '../../../../registry/basic/avatar';
@@ -1,7 +1,13 @@
1
1
  /**
2
- * [INPUT]: (ButtonProps)
3
- * [OUTPUT]: (JSX.Element) - 基础按钮,基于 Registry 单一来源
4
- * [POS]: components/foundation/Button - registry 再导出
2
+ * [WHO]: Public exports from this file (see implementation below).
3
+ * [FROM]: See the import block immediately after this header.
4
+ * [TO]: sparkdesign package consumers; output of CLI `add` when applicable.
5
+ * [HERE]: src/components/basic/Button/index.tsx — Spark Design source; keep aligned with the main library.
6
+ *
7
+ * [PROTOCOL]:
8
+ * 1. Keep this P3 header in sync when the public contract changes.
9
+ * 2. Update module AGENTS.md (P2) and root AGENTS.md (P1) when boundaries change.
10
+ * 3. Follow design tokens and explicit type exports.
5
11
  */
6
12
  export { Button, buttonVariants } from '../../../../registry/basic/button';
7
13
  export type { ButtonProps } from '../../../../registry/basic/button';
@@ -1,10 +1,13 @@
1
1
  /**
2
- * [INPUT]: (CollapseProps, CollapseItemProps )
3
- * [OUTPUT]: (JSX.Element) - 折叠面板,基于 Registry 单一来源
4
- * [POS]: components/foundation/Collapse - registry 再导出
2
+ * [WHO]: Public exports from this file (see implementation below).
3
+ * [FROM]: See the import block immediately after this header.
4
+ * [TO]: sparkdesign package consumers; output of CLI `add` when applicable.
5
+ * [HERE]: src/components/basic/Collapse/index.tsx — Spark Design source; keep aligned with the main library.
5
6
  *
6
7
  * [PROTOCOL]:
7
- * 1. 实现来自根目录 registry/basic/collapse.tsx,主库仅 re-export
8
+ * 1. Keep this P3 header in sync when the public contract changes.
9
+ * 2. Update module AGENTS.md (P2) and root AGENTS.md (P1) when boundaries change.
10
+ * 3. Follow design tokens and explicit type exports.
8
11
  */
9
12
  import * as React from 'react';
10
13
  import { Collapse, CollapseItem, CollapseTrigger, CollapseContent } from '../../../../registry/basic/collapse';
@@ -1,7 +1,12 @@
1
1
  /**
2
- * [INPUT]: (Collapsible 受控/非受控 props)
3
- * [OUTPUT]: (JSX.Element) - Radix Collapsible 原始组件,基于 Registry 单一来源
4
- * [POS]: components/foundation/Collapsible - registry 再导出(单面板展开/收起)
5
- * Collapse(手风琴多面板)不同;与 CollapsibleSection(带标题/描述/滚动)不同。
2
+ * [WHO]: Public exports from this file (see implementation below).
3
+ * [FROM]: See the import block immediately after this header.
4
+ * [TO]: sparkdesign package consumers; output of CLI `add` when applicable.
5
+ * [HERE]: src/components/basic/Collapsible/index.tsx — Spark Design source; keep aligned with the main library.
6
+ *
7
+ * [PROTOCOL]:
8
+ * 1. Keep this P3 header in sync when the public contract changes.
9
+ * 2. Update module AGENTS.md (P2) and root AGENTS.md (P1) when boundaries change.
10
+ * 3. Follow design tokens and explicit type exports.
6
11
  */
7
12
  export { Collapsible, CollapsibleTrigger, CollapsibleContent, } from '../../../../registry/basic/collapsible';
@@ -1,7 +1,13 @@
1
1
  /**
2
- * [INPUT]: (CollapsibleCardProps)
3
- * [OUTPUT]: (JSX.Element)
4
- * [POS]: components/basic/CollapsibleCard - 通用折叠卡片,从 registry/basic 再导出
2
+ * [WHO]: Public exports from this file (see implementation below).
3
+ * [FROM]: See the import block immediately after this header.
4
+ * [TO]: sparkdesign package consumers; output of CLI `add` when applicable.
5
+ * [HERE]: src/components/basic/CollapsibleCard/index.tsx — Spark Design source; keep aligned with the main library.
6
+ *
7
+ * [PROTOCOL]:
8
+ * 1. Keep this P3 header in sync when the public contract changes.
9
+ * 2. Update module AGENTS.md (P2) and root AGENTS.md (P1) when boundaries change.
10
+ * 3. Follow design tokens and explicit type exports.
5
11
  */
6
12
  export { CollapsibleCard, } from '../../../../registry/basic/collapsible-card';
7
13
  export type { CollapsibleCardProps } from '../../../../registry/basic/collapsible-card';
@@ -1,13 +1,13 @@
1
1
  /**
2
- * [INPUT]: (CollapsibleSectionProps) - 标题、描述、内容、折叠状态
3
- * [OUTPUT]: (JSX.Element) - 可折叠区块(标题栏 + 动画展开/收起的内容区)
4
- * [POS]: components/CollapsibleSection - 基础可折叠面板,被 TaskMonitor 等业务组件使用
2
+ * [WHO]: Public exports from this file (see implementation below).
3
+ * [FROM]: See the import block immediately after this header.
4
+ * [TO]: sparkdesign package consumers; output of CLI `add` when applicable.
5
+ * [HERE]: src/components/basic/CollapsibleSection/index.tsx — Spark Design source; keep aligned with the main library.
5
6
  *
6
7
  * [PROTOCOL]:
7
- * 1. 文件逻辑变更时必须同步更新此 Header
8
- * 2. 更新后必须上浮检查 L2(components/CLAUDE.md)、L1(qoder-design/CLAUDE.md)文档
9
- * 3. Token 使用检查:所有颜色是否使用 token
10
- * 4. 类型导出检查:CollapsibleSectionProps 是否完整导出
8
+ * 1. Keep this P3 header in sync when the public contract changes.
9
+ * 2. Update module AGENTS.md (P2) and root AGENTS.md (P1) when boundaries change.
10
+ * 3. Follow design tokens and explicit type exports.
11
11
  */
12
12
  import { type ReactNode } from 'react';
13
13
  export interface CollapsibleSectionProps {
@@ -1,11 +1,13 @@
1
1
  /**
2
- * [INPUT]: (Radix DropdownMenu + 各子组件 props)
3
- * [OUTPUT]: (JSX.Element) - 下拉菜单,基于 Registry 单一来源
4
- * [POS]: components/foundation/DropdownMenu - registry 再导出,SubTrigger 注入 IconsProvider,Content 注入 useThemeStyle
2
+ * [WHO]: Public exports from this file (see implementation below).
3
+ * [FROM]: See the import block immediately after this header.
4
+ * [TO]: sparkdesign package consumers; output of CLI `add` when applicable.
5
+ * [HERE]: src/components/basic/DropdownMenu/index.tsx — Spark Design source; keep aligned with the main library.
5
6
  *
6
7
  * [PROTOCOL]:
7
- * 1. 实现来自根目录 registry/basic/dropdown-menu.tsx;主库 Content 注入 useThemeStyle 使 Portal ThemeStyleProvider
8
- * 2. SubTrigger 未传 subTriggerIcon 时使用 useIcon('arrowRight')
8
+ * 1. Keep this P3 header in sync when the public contract changes.
9
+ * 2. Update module AGENTS.md (P2) and root AGENTS.md (P1) when boundaries change.
10
+ * 3. Follow design tokens and explicit type exports.
9
11
  */
10
12
  import * as React from 'react';
11
13
  import { DropdownMenu, DropdownMenuTrigger, DropdownMenuItem, DropdownMenuCheckboxItem, DropdownMenuRadioItem, DropdownMenuLabel, DropdownMenuSeparator, DropdownMenuShortcut, DropdownMenuGroup, DropdownMenuPortal, DropdownMenuSub, DropdownMenuSubTrigger as RegistryDropdownMenuSubTrigger, DropdownMenuRadioGroup } from '../../../../registry/basic/dropdown-menu';
@@ -1,21 +1,13 @@
1
1
  /**
2
- * [INPUT]: (EllipsisTextProps)
3
- * [OUTPUT]: (JSX.Element) - 超长省略文本,溢出时 hover 显示 tooltip
4
- * [POS]: components/foundation/EllipsisText
2
+ * [WHO]: Public exports from this file (see implementation below).
3
+ * [FROM]: See the import block immediately after this header.
4
+ * [TO]: sparkdesign package consumers; output of CLI `add` when applicable.
5
+ * [HERE]: src/components/basic/EllipsisText/index.tsx — Spark Design source; keep aligned with the main library.
5
6
  *
6
7
  * [PROTOCOL]:
7
- * 1. 文件逻辑变更时必须同步更新此 Header
8
- * 2. 更新后必须上浮检查 L2、L1 文档
9
- * 3. Token 使用检查:所有样式使用 Tailwind 类名(设计 token)
10
- * 4. 类型导出检查:EllipsisTextProps 是否完整导出
11
- *
12
- * 设计规范(Spark Design):
13
- * - lines: 1 单行省略,>1 多行 -webkit-line-clamp
14
- * - placement: top | bottom | left | right,仅溢出时显示 tooltip
15
- * - 仅溢出时用 foundation Tooltip 组件展示气泡,样式与行为统一
16
- *
17
- * Theme 支持:
18
- * - 由 Tooltip 内部 useThemeStyle 注入 data-style/data-theme
8
+ * 1. Keep this P3 header in sync when the public contract changes.
9
+ * 2. Update module AGENTS.md (P2) and root AGENTS.md (P1) when boundaries change.
10
+ * 3. Follow design tokens and explicit type exports.
19
11
  */
20
12
  import { type ReactNode, type CSSProperties } from 'react';
21
13
  export interface EllipsisTextProps {
@@ -1,7 +1,13 @@
1
1
  /**
2
- * [INPUT]: (IconButtonProps)
3
- * [OUTPUT]: (JSX.Element) - 图标按钮,基于 Registry 单一来源
4
- * [POS]: components/foundation/IconButton - registry 再导出
2
+ * [WHO]: Public exports from this file (see implementation below).
3
+ * [FROM]: See the import block immediately after this header.
4
+ * [TO]: sparkdesign package consumers; output of CLI `add` when applicable.
5
+ * [HERE]: src/components/basic/IconButton/index.tsx — Spark Design source; keep aligned with the main library.
6
+ *
7
+ * [PROTOCOL]:
8
+ * 1. Keep this P3 header in sync when the public contract changes.
9
+ * 2. Update module AGENTS.md (P2) and root AGENTS.md (P1) when boundaries change.
10
+ * 3. Follow design tokens and explicit type exports.
5
11
  */
6
12
  export { IconButton, iconButtonVariants } from '../../../../registry/basic/icon-button';
7
13
  export type { IconButtonProps } from '../../../../registry/basic/icon-button';
@@ -1,7 +1,13 @@
1
1
  /**
2
- * [INPUT]: (KbdProps, KbdGroupProps)
3
- * [OUTPUT]: (JSX.Element) - 键盘按键样式,基于 Registry 单一来源
4
- * [POS]: components/foundation/Kbd - registry 再导出
2
+ * [WHO]: Public exports from this file (see implementation below).
3
+ * [FROM]: See the import block immediately after this header.
4
+ * [TO]: sparkdesign package consumers; output of CLI `add` when applicable.
5
+ * [HERE]: src/components/basic/Kbd/index.tsx — Spark Design source; keep aligned with the main library.
6
+ *
7
+ * [PROTOCOL]:
8
+ * 1. Keep this P3 header in sync when the public contract changes.
9
+ * 2. Update module AGENTS.md (P2) and root AGENTS.md (P1) when boundaries change.
10
+ * 3. Follow design tokens and explicit type exports.
5
11
  */
6
12
  export { Kbd, KbdGroup } from '../../../../registry/basic/kbd';
7
13
  export type { KbdProps, KbdGroupProps } from '../../../../registry/basic/kbd';
@@ -1,7 +1,13 @@
1
1
  /**
2
- * [INPUT]: (OptionListProps)
3
- * [OUTPUT]: (JSX.Element) - 选项列表,基于 Registry 单一来源
4
- * [POS]: components/foundation/OptionList - registry 再导出
2
+ * [WHO]: Public exports from this file (see implementation below).
3
+ * [FROM]: See the import block immediately after this header.
4
+ * [TO]: sparkdesign package consumers; output of CLI `add` when applicable.
5
+ * [HERE]: src/components/basic/OptionList/index.tsx — Spark Design source; keep aligned with the main library.
6
+ *
7
+ * [PROTOCOL]:
8
+ * 1. Keep this P3 header in sync when the public contract changes.
9
+ * 2. Update module AGENTS.md (P2) and root AGENTS.md (P1) when boundaries change.
10
+ * 3. Follow design tokens and explicit type exports.
5
11
  */
6
12
  export { OptionList } from '../../../../registry/basic/option-list';
7
13
  export type { OptionListProps, OptionItem } from '../../../../registry/basic/option-list';
@@ -1,7 +1,13 @@
1
1
  /**
2
- * [INPUT]: (PaginationLinkProps )
3
- * [OUTPUT]: (JSX.Element) - 分页导航,基于 Registry 单一来源
4
- * [POS]: components/foundation/Pagination - registry 再导出
2
+ * [WHO]: Public exports from this file (see implementation below).
3
+ * [FROM]: See the import block immediately after this header.
4
+ * [TO]: sparkdesign package consumers; output of CLI `add` when applicable.
5
+ * [HERE]: src/components/basic/Pagination/index.tsx — Spark Design source; keep aligned with the main library.
6
+ *
7
+ * [PROTOCOL]:
8
+ * 1. Keep this P3 header in sync when the public contract changes.
9
+ * 2. Update module AGENTS.md (P2) and root AGENTS.md (P1) when boundaries change.
10
+ * 3. Follow design tokens and explicit type exports.
5
11
  */
6
12
  export { Pagination, PaginationContent, PaginationItem, PaginationLink, PaginationNext, PaginationPrevious, PaginationEllipsis, } from '../../../../registry/basic/pagination';
7
13
  export type { PaginationLinkProps, PaginationPreviousProps, PaginationNextProps, } from '../../../../registry/basic/pagination';
@@ -1,7 +1,13 @@
1
1
  /**
2
- * [INPUT]: (ProgressProps)
3
- * [OUTPUT]: (JSX.Element) - 进度条,基于 Registry 单一来源
4
- * [POS]: components/foundation/Progress - registry 再导出
2
+ * [WHO]: Public exports from this file (see implementation below).
3
+ * [FROM]: See the import block immediately after this header.
4
+ * [TO]: sparkdesign package consumers; output of CLI `add` when applicable.
5
+ * [HERE]: src/components/basic/Progress/index.tsx — Spark Design source; keep aligned with the main library.
6
+ *
7
+ * [PROTOCOL]:
8
+ * 1. Keep this P3 header in sync when the public contract changes.
9
+ * 2. Update module AGENTS.md (P2) and root AGENTS.md (P1) when boundaries change.
10
+ * 3. Follow design tokens and explicit type exports.
5
11
  */
6
12
  export { Progress } from '../../../../registry/basic/progress';
7
13
  export type { ProgressProps } from '../../../../registry/basic/progress';
@@ -1,7 +1,13 @@
1
1
  /**
2
- * [INPUT]: (RadioGroupProps, RadioGroupItemProps)
3
- * [OUTPUT]: (JSX.Element) - 单选组,基于 Registry 单一来源
4
- * [POS]: components/foundation/RadioGroup - registry 再导出
2
+ * [WHO]: Public exports from this file (see implementation below).
3
+ * [FROM]: See the import block immediately after this header.
4
+ * [TO]: sparkdesign package consumers; output of CLI `add` when applicable.
5
+ * [HERE]: src/components/basic/RadioGroup/index.tsx — Spark Design source; keep aligned with the main library.
6
+ *
7
+ * [PROTOCOL]:
8
+ * 1. Keep this P3 header in sync when the public contract changes.
9
+ * 2. Update module AGENTS.md (P2) and root AGENTS.md (P1) when boundaries change.
10
+ * 3. Follow design tokens and explicit type exports.
5
11
  */
6
12
  export { RadioGroup, RadioGroupItem, radioGroupVariants, radioGroupItemVariants, } from '../../../../registry/basic/radio-group';
7
13
  export type { RadioGroupProps, RadioGroupItemProps } from '../../../../registry/basic/radio-group';