@signal9/era-ui 8.0.0 → 9.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (224) hide show
  1. package/dist/ai/artifact/artifact-close.svelte +1 -1
  2. package/dist/ai/artifact/artifact-content.svelte +1 -1
  3. package/dist/ai/artifact/artifact-header.svelte +1 -1
  4. package/dist/ai/artifact/artifact.svelte +1 -1
  5. package/dist/ai/chain-of-thought/chain-of-thought-step.svelte +1 -1
  6. package/dist/ai/chain-of-thought/chain-of-thought.svelte +1 -1
  7. package/dist/ai/checkpoint.svelte +1 -1
  8. package/dist/ai/confirmation/confirmation-args.svelte +2 -2
  9. package/dist/ai/confirmation/confirmation.svelte +4 -4
  10. package/dist/ai/context/context.svelte +1 -1
  11. package/dist/ai/conversation/conversation-content.svelte +1 -1
  12. package/dist/ai/conversation/conversation-empty-state.svelte +1 -1
  13. package/dist/ai/conversation/conversation-scroll-button.svelte +2 -2
  14. package/dist/ai/conversations/conversations-group.svelte +1 -1
  15. package/dist/ai/conversations/conversations-item.svelte +7 -7
  16. package/dist/ai/error-panel/error-panel.svelte +4 -4
  17. package/dist/ai/image.svelte +1 -1
  18. package/dist/ai/inline-citation/inline-citation.svelte +2 -2
  19. package/dist/ai/loader.svelte +1 -1
  20. package/dist/ai/message/message-branch-selector.svelte +3 -3
  21. package/dist/ai/message/message-content.svelte +1 -1
  22. package/dist/ai/message/message-usage.svelte +4 -4
  23. package/dist/ai/model-selector/model-selector.svelte +1 -1
  24. package/dist/ai/open-in-chat/open-in-chat.svelte +2 -2
  25. package/dist/ai/plan/plan-content.svelte +1 -1
  26. package/dist/ai/plan/plan-header.svelte +2 -2
  27. package/dist/ai/plan/plan.svelte +1 -1
  28. package/dist/ai/prompt-input/prompt-input-add-attachments.svelte +1 -1
  29. package/dist/ai/prompt-input/prompt-input-attachments.svelte +5 -5
  30. package/dist/ai/prompt-input/prompt-input-submit.svelte +3 -3
  31. package/dist/ai/prompt-input/prompt-input-textarea.svelte +3 -3
  32. package/dist/ai/prompt-input/prompt-input.svelte +1 -1
  33. package/dist/ai/queue/queue-item.svelte +1 -1
  34. package/dist/ai/queue/queue.svelte +1 -1
  35. package/dist/ai/reasoning/reasoning-trigger.svelte +1 -1
  36. package/dist/ai/response/response.svelte +2 -2
  37. package/dist/ai/run-status/run-status.svelte +5 -5
  38. package/dist/ai/runtime-feed/runtime-feed-item.svelte +1 -1
  39. package/dist/ai/sources/source.svelte +1 -1
  40. package/dist/ai/sources/sources-trigger.svelte +1 -1
  41. package/dist/ai/structured-value/structured-value.svelte +1 -1
  42. package/dist/ai/suggestion/suggestion.svelte +2 -2
  43. package/dist/ai/swarm/swarm-agent.svelte +1 -1
  44. package/dist/ai/swarm/swarm-artifact.svelte +1 -1
  45. package/dist/ai/swarm/swarm-barrier.svelte +1 -1
  46. package/dist/ai/swarm/swarm-barriers.svelte +1 -1
  47. package/dist/ai/swarm/swarm-counts.svelte +1 -1
  48. package/dist/ai/swarm/swarm-footer.svelte +1 -1
  49. package/dist/ai/swarm/swarm-grid.svelte +2 -2
  50. package/dist/ai/swarm/swarm-header.svelte +1 -1
  51. package/dist/ai/swarm/swarm-node.svelte +7 -7
  52. package/dist/ai/swarm/swarm-role.svelte +1 -1
  53. package/dist/ai/swarm/swarm-root.svelte +1 -1
  54. package/dist/ai/swarm/swarm-sandbox.svelte +3 -3
  55. package/dist/ai/swarm/swarm-tree.svelte +1 -1
  56. package/dist/ai/task/task-content.svelte +1 -1
  57. package/dist/ai/task/task-trigger.svelte +1 -1
  58. package/dist/ai/tool/tool-chip.svelte +2 -2
  59. package/dist/ai/tool/tool-exec.svelte +3 -3
  60. package/dist/ai/tool/tool-header.svelte +1 -1
  61. package/dist/ai/web-preview/web-preview.svelte +3 -3
  62. package/dist/ai/workflow/canvas.svelte +1 -1
  63. package/dist/ai/workflow/node.svelte +3 -3
  64. package/dist/apps/llm-shell/llm-shell.svelte +7 -7
  65. package/dist/apps/notes/editor/slash-menu.svelte +7 -5
  66. package/dist/apps/notes/notes.svelte +9 -9
  67. package/dist/dev/audit/audits/_helpers.js +1 -1
  68. package/dist/dev/audit/audits/resting-gap.js +1 -1
  69. package/dist/dev/audit/audits/single-glyph-square.js +2 -2
  70. package/dist/dev/audit-overlay.svelte +7 -7
  71. package/dist/dev/measure.d.ts +1 -1
  72. package/dist/dev/measure.js +1 -1
  73. package/dist/docs/badge.md +1 -1
  74. package/dist/docs/css-utilities.d.ts +1 -1
  75. package/dist/docs/css-utilities.js +8 -8
  76. package/dist/docs/llms-txt.js +1 -1
  77. package/dist/era-ui.css +1 -1
  78. package/dist/generated-docs/badge.md +1 -1
  79. package/dist/generated-docs/bar.md +2 -2
  80. package/dist/generated-docs/chip.md +1 -1
  81. package/dist/generated-docs/input.md +1 -1
  82. package/dist/generated-docs/llms-full.txt +99 -119
  83. package/dist/generated-docs/llms.txt +11 -12
  84. package/dist/generated-docs/manifest.json +52 -65
  85. package/dist/generated-docs/utilities.json +45 -57
  86. package/dist/generated-docs/utilities.md +87 -106
  87. package/dist/os/notification-center.svelte +6 -6
  88. package/dist/os/pane.svelte +7 -5
  89. package/dist/os/taskbar.svelte +10 -10
  90. package/dist/os/toast.svelte +3 -3
  91. package/dist/os/toaster.svelte +1 -1
  92. package/dist/styles/density.css +93 -67
  93. package/dist/styles/index.css +89 -101
  94. package/dist/styles/prose.css +12 -12
  95. package/dist/styles/surfaces/base.css +3 -3
  96. package/dist/styles/surfaces/bevel.css +2 -2
  97. package/dist/ui/accordion/accordion-trigger.svelte +2 -2
  98. package/dist/ui/alert-dialog/alert-dialog-content.svelte +1 -1
  99. package/dist/ui/aspect-ratio/aspect-ratio.svelte +1 -1
  100. package/dist/ui/avatar/avatar-root.svelte +1 -1
  101. package/dist/ui/badge/badge.svelte +1 -1
  102. package/dist/ui/badge/badge.svelte.d.ts +1 -1
  103. package/dist/ui/bar/bar.svelte +23 -15
  104. package/dist/ui/bar/bar.svelte.d.ts +26 -26
  105. package/dist/ui/button/button.svelte +1 -1
  106. package/dist/ui/button/variants.js +18 -18
  107. package/dist/ui/button-group/button-group.svelte +2 -2
  108. package/dist/ui/calendar/calendar-day.svelte +1 -1
  109. package/dist/ui/calendar/calendar-head-cell.svelte +1 -1
  110. package/dist/ui/calendar/calendar-header.svelte +1 -1
  111. package/dist/ui/calendar/calendar-next-button.svelte +1 -1
  112. package/dist/ui/calendar/calendar-prev-button.svelte +1 -1
  113. package/dist/ui/card/card.svelte +5 -5
  114. package/dist/ui/card/card.svelte.d.ts +4 -4
  115. package/dist/ui/checkbox/checkbox.svelte +3 -3
  116. package/dist/ui/chip/chip.svelte +14 -10
  117. package/dist/ui/chip/chip.svelte.d.ts +7 -7
  118. package/dist/ui/code-block/code-block.svelte +6 -6
  119. package/dist/ui/collapsible/collapsible-trigger.svelte +1 -1
  120. package/dist/ui/combobox/combobox-content.svelte +1 -1
  121. package/dist/ui/combobox/combobox-empty.svelte +4 -1
  122. package/dist/ui/combobox/combobox-group-heading.svelte +4 -1
  123. package/dist/ui/combobox/combobox-item.svelte +1 -1
  124. package/dist/ui/combobox/combobox-trigger.svelte +2 -2
  125. package/dist/ui/command/command-group-heading.svelte +4 -1
  126. package/dist/ui/command/command-item.svelte +1 -1
  127. package/dist/ui/command/command-link-item.svelte +1 -1
  128. package/dist/ui/command/command-root.svelte +1 -1
  129. package/dist/ui/command-bar/command-bar.svelte +16 -12
  130. package/dist/ui/context-menu/context-menu-checkbox-item.svelte +1 -1
  131. package/dist/ui/context-menu/context-menu-content.svelte +1 -1
  132. package/dist/ui/context-menu/context-menu-group-heading.svelte +4 -1
  133. package/dist/ui/context-menu/context-menu-item.svelte +1 -1
  134. package/dist/ui/context-menu/context-menu-radio-item.svelte +1 -1
  135. package/dist/ui/context-menu/context-menu-sub-content.svelte +1 -1
  136. package/dist/ui/context-menu/context-menu-sub-trigger.svelte +2 -2
  137. package/dist/ui/copy-button/copy-button.svelte +2 -2
  138. package/dist/ui/cycle/cycle.svelte +1 -1
  139. package/dist/ui/date-field/date-field-segment.svelte +1 -1
  140. package/dist/ui/date-picker/date-picker-content.svelte +1 -1
  141. package/dist/ui/date-picker/date-picker-day.svelte +1 -1
  142. package/dist/ui/date-picker/date-picker-head-cell.svelte +1 -1
  143. package/dist/ui/date-picker/date-picker-header.svelte +1 -1
  144. package/dist/ui/date-picker/date-picker-next-button.svelte +1 -1
  145. package/dist/ui/date-picker/date-picker-prev-button.svelte +1 -1
  146. package/dist/ui/date-picker/date-picker-segment.svelte +1 -1
  147. package/dist/ui/date-picker/date-picker-trigger.svelte +2 -2
  148. package/dist/ui/date-range-field/date-range-field-segment.svelte +1 -1
  149. package/dist/ui/date-range-picker/date-range-picker-content.svelte +1 -1
  150. package/dist/ui/date-range-picker/date-range-picker-day.svelte +1 -1
  151. package/dist/ui/date-range-picker/date-range-picker-head-cell.svelte +1 -1
  152. package/dist/ui/date-range-picker/date-range-picker-header.svelte +1 -1
  153. package/dist/ui/date-range-picker/date-range-picker-next-button.svelte +1 -1
  154. package/dist/ui/date-range-picker/date-range-picker-prev-button.svelte +1 -1
  155. package/dist/ui/date-range-picker/date-range-picker-segment.svelte +1 -1
  156. package/dist/ui/date-range-picker/date-range-picker-trigger.svelte +2 -2
  157. package/dist/ui/dialog/dialog-content.svelte +4 -2
  158. package/dist/ui/dialog/dialog-header.svelte +2 -2
  159. package/dist/ui/dropdown-menu/dropdown-menu-checkbox-item.svelte +1 -1
  160. package/dist/ui/dropdown-menu/dropdown-menu-content.svelte +1 -1
  161. package/dist/ui/dropdown-menu/dropdown-menu-group-heading.svelte +4 -1
  162. package/dist/ui/dropdown-menu/dropdown-menu-item.svelte +1 -1
  163. package/dist/ui/dropdown-menu/dropdown-menu-radio-item.svelte +1 -1
  164. package/dist/ui/dropdown-menu/dropdown-menu-sub-content.svelte +1 -1
  165. package/dist/ui/dropdown-menu/dropdown-menu-sub-trigger.svelte +2 -2
  166. package/dist/ui/dropdown-menu/dropdown-menu-trigger.svelte +2 -2
  167. package/dist/ui/file-upload/file-upload.svelte +2 -2
  168. package/dist/ui/input/input.svelte +3 -3
  169. package/dist/ui/input/input.svelte.d.ts +1 -1
  170. package/dist/ui/input/textarea.svelte +1 -1
  171. package/dist/ui/input/variants.d.ts +24 -24
  172. package/dist/ui/input/variants.js +9 -9
  173. package/dist/ui/kv/kv.svelte +2 -2
  174. package/dist/ui/link-preview/link-preview-content.svelte +1 -1
  175. package/dist/ui/menubar/menubar-checkbox-item.svelte +1 -1
  176. package/dist/ui/menubar/menubar-content.svelte +1 -1
  177. package/dist/ui/menubar/menubar-group-heading.svelte +4 -1
  178. package/dist/ui/menubar/menubar-item.svelte +1 -1
  179. package/dist/ui/menubar/menubar-radio-item.svelte +1 -1
  180. package/dist/ui/menubar/menubar-root.svelte +1 -1
  181. package/dist/ui/menubar/menubar-sub-content.svelte +1 -1
  182. package/dist/ui/menubar/menubar-sub-trigger.svelte +2 -2
  183. package/dist/ui/menubar/menubar-trigger.svelte +1 -1
  184. package/dist/ui/meter/meter.svelte +1 -1
  185. package/dist/ui/pagination/pagination-next-button.svelte +1 -1
  186. package/dist/ui/pagination/pagination-prev-button.svelte +1 -1
  187. package/dist/ui/pane/pane-close.svelte +2 -2
  188. package/dist/ui/pane/pane-content.svelte +1 -1
  189. package/dist/ui/pane/pane-handle.svelte +3 -3
  190. package/dist/ui/pane/pane-root.svelte +12 -12
  191. package/dist/ui/pane/pane-tab-list.svelte +1 -1
  192. package/dist/ui/pane/pane-tab-panel.svelte +1 -1
  193. package/dist/ui/pane/pane-tab.svelte +1 -1
  194. package/dist/ui/pane/pane.svelte +1 -1
  195. package/dist/ui/pin-input/pin-input-cell.svelte +1 -1
  196. package/dist/ui/popover/popover-content.svelte +1 -1
  197. package/dist/ui/progress/progress.svelte +1 -1
  198. package/dist/ui/radio-group/radio-group-item.svelte +2 -2
  199. package/dist/ui/rating-group/rating-group-item.svelte +1 -1
  200. package/dist/ui/scroll-area/scroll-area-thumb.svelte +1 -1
  201. package/dist/ui/scroll-area/scroll-area.svelte +1 -1
  202. package/dist/ui/select/select-content.svelte +1 -1
  203. package/dist/ui/select/select-group-heading.svelte +4 -1
  204. package/dist/ui/select/select-item.svelte +1 -1
  205. package/dist/ui/select/select-trigger.svelte +2 -2
  206. package/dist/ui/select/select-value.svelte +1 -1
  207. package/dist/ui/sheet/sheet-content.svelte +3 -3
  208. package/dist/ui/sheet/sheet-content.svelte.d.ts +6 -6
  209. package/dist/ui/skeleton/skeleton.svelte +3 -3
  210. package/dist/ui/skeleton/skeleton.svelte.d.ts +9 -9
  211. package/dist/ui/slider/slider-range.svelte +1 -1
  212. package/dist/ui/slider/slider-thumb.svelte +1 -1
  213. package/dist/ui/step/step-content.svelte +1 -1
  214. package/dist/ui/step/step-summary.svelte +6 -6
  215. package/dist/ui/switch/switch.svelte +3 -3
  216. package/dist/ui/table/table-cell.svelte +1 -1
  217. package/dist/ui/table/table-head-cell.svelte +1 -1
  218. package/dist/ui/time-field/time-field-segment.svelte +1 -1
  219. package/dist/ui/time-range-field/time-range-field-segment.svelte +1 -1
  220. package/dist/ui/toggle-group/toggle-group-item.svelte +1 -1
  221. package/dist/ui/tooltip/tooltip-content.svelte +1 -1
  222. package/dist/ui/video-player/video-player.svelte +44 -44
  223. package/dist/utils/index.js +4 -4
  224. package/package.json +1 -1
@@ -147,15 +147,15 @@
147
147
 
148
148
  /* Code — inline chips take the xxs radius, blocks the lg one a Card uses. */
149
149
  .era-notes-prose .tiptap code {
150
- padding: 1px var(--era-inset-xxs);
151
- border-radius: var(--era-rd-xxs);
150
+ padding: 1px var(--era-inset-pill);
151
+ border-radius: var(--era-rd-pill);
152
152
  background: var(--era-surface-bg-elevated);
153
153
  }
154
154
  .era-notes-prose .tiptap pre {
155
155
  overflow-x: auto;
156
156
  margin: 0 0 var(--era-gap);
157
- padding: var(--era-inset-md);
158
- border-radius: var(--era-rd-lg);
157
+ padding: var(--era-inset-control);
158
+ border-radius: var(--era-rd-bar);
159
159
  background: var(--color-surface);
160
160
  box-shadow: var(--era-shadow);
161
161
  }
@@ -203,7 +203,7 @@
203
203
  /* Blockquote */
204
204
  .era-notes-prose .tiptap blockquote {
205
205
  margin: 0 0 var(--era-gap);
206
- padding-left: var(--era-inset-md);
206
+ padding-left: var(--era-inset-control);
207
207
  border-left: 2px solid var(--era-divider-color);
208
208
  color: var(--color-muted);
209
209
  }
@@ -241,9 +241,9 @@
241
241
  }
242
242
  .era-notes-prose .tiptap .task-item input[type='checkbox'] {
243
243
  flex-shrink: 0;
244
- width: calc(var(--era-h-xs) - 4px);
245
- height: calc(var(--era-h-xs) - 4px);
246
- border-radius: var(--era-rd-xs);
244
+ width: calc(var(--era-h-icon) - 4px);
245
+ height: calc(var(--era-h-icon) - 4px);
246
+ border-radius: var(--era-rd-icon);
247
247
  background: var(--era-surface-bg-elevated);
248
248
  box-shadow: var(--era-shadow-well);
249
249
  appearance: none;
@@ -307,7 +307,7 @@
307
307
  }
308
308
  .era-notes-prose .tiptap .note-table td,
309
309
  .era-notes-prose .tiptap .note-table th {
310
- padding: var(--era-inset-sm) var(--era-inset-md);
310
+ padding: var(--era-inset-chip) var(--era-inset-control);
311
311
  border: 1px solid var(--era-divider-color);
312
312
  text-align: left;
313
313
  vertical-align: top;
@@ -325,8 +325,8 @@
325
325
  /* Details (collapsible) */
326
326
  .era-notes-prose .tiptap details {
327
327
  margin: 0 0 var(--era-gap);
328
- padding: var(--era-inset-sm) var(--era-inset-md);
329
- border-radius: var(--era-rd-md);
328
+ padding: var(--era-inset-chip) var(--era-inset-control);
329
+ border-radius: var(--era-rd-control);
330
330
  background: var(--era-surface-bg-elevated);
331
331
  box-shadow: var(--era-shadow);
332
332
  }
@@ -343,7 +343,7 @@
343
343
  .era-notes-prose .tiptap img {
344
344
  max-width: 100%;
345
345
  height: auto;
346
- border-radius: var(--era-rd-md);
346
+ border-radius: var(--era-rd-control);
347
347
  }
348
348
 
349
349
  /*
@@ -161,7 +161,7 @@
161
161
 
162
162
  /* Concentric radius for a row inside a panel: the panel's radius minus its
163
163
  * inset. Declared on the universal selector (like the density ladder) so it
164
- * re-derives against each element's own --era-rd-md — density subtree
164
+ * re-derives against each element's own --era-rd-control — density subtree
165
165
  * overrides stay correct.
166
166
  *
167
167
  * NO SURFACE GATE. This used to be multiplied by --era-item-rd-scale, which
@@ -172,13 +172,13 @@
172
172
  * owns radii, globally, with no exceptions for a consumer to discover.
173
173
  *
174
174
  * The gate was also redundant. The formula already answers both axes on its
175
- * own: at data-corners="square" --era-rd-md collapses to 0, so this collapses
175
+ * own: at data-corners="square" --era-rd-control collapses to 0, so this collapses
176
176
  * with it; on flat --era-panel-inset is 0, so a flush full-width row simply
177
177
  * takes the panel's own radius — which is the concentric answer for a row
178
178
  * whose panel has no frame to nest inside. Flat menus keep their flush,
179
179
  * full-width rows; only the highlight's corners now follow the axis. */
180
180
  * {
181
- --era-item-rd: max(0px, calc(var(--era-rd-md) - var(--era-panel-inset)));
181
+ --era-item-rd: max(0px, calc(var(--era-rd-control) - var(--era-panel-inset)));
182
182
  }
183
183
 
184
184
  /*
@@ -110,8 +110,8 @@
110
110
  /*
111
111
  * SMALL-BUTTON SINK — the depression, scaled to the keycap.
112
112
  *
113
- * The 1px content sink is tuned for a default (h-md) button, where it is ~4% of
114
- * the box. On the h-xs tier — size="xs" and size="icon", the 14px squares a
113
+ * The 1px content sink is tuned for a default (h-control) button, where it is ~4% of
114
+ * the box. On the h-icon tier — size="xs" and size="icon", the 14px squares a
115
115
  * pane's close X is built from — that same 1px is ~7% of the box and the glyph,
116
116
  * which fills the button, visibly drops too far on press. Half the sink
117
117
  * (proportional: 14/24 ≈ 0.58, rounded to 0.5) puts the small keycap's travel
@@ -14,11 +14,11 @@
14
14
  <Accordion.Trigger
15
15
  bind:ref
16
16
  class={cn(
17
- 'flex h-(--era-h-md) w-full items-center justify-between gap-(--era-xs-inset-sm) rounded-(--era-rd-md) px-(--era-inset-md) text-body text-fg hover:bg-(--era-highlight) hover:shadow-(--era-highlight-shadow) focus:outline-none disabled:opacity-50',
17
+ 'flex h-(--era-h-control) w-full items-center justify-between gap-(--era-icon-inset-chip) rounded-(--era-rd-control) px-(--era-inset-control) text-body text-fg hover:bg-(--era-highlight) hover:shadow-(--era-highlight-shadow) focus:outline-none disabled:opacity-50',
18
18
  className
19
19
  )}
20
20
  {...restProps}
21
21
  >
22
22
  {@render children?.()}
23
- <ChevronDown class="size-(--era-h-xs) text-muted" />
23
+ <ChevronDown class="size-(--era-h-icon) text-muted" />
24
24
  </Accordion.Trigger>
@@ -15,7 +15,7 @@
15
15
  <AlertDialog.Content
16
16
  bind:ref
17
17
  class={cn(
18
- 'fixed top-1/2 left-1/2 z-50 flex w-full max-w-md -translate-x-1/2 -translate-y-1/2 flex-col gap-(--era-gap) rounded-(--era-rd-lg) border border-divider bg-(--era-surface-bg) p-(--era-pad-md) shadow-(--era-shadow-lg) glass-blur',
18
+ 'fixed top-1/2 left-1/2 z-50 flex w-full max-w-md -translate-x-1/2 -translate-y-1/2 flex-col gap-(--era-gap) rounded-(--era-rd-bar) border border-divider bg-(--era-surface-bg) p-(--era-pad-card) shadow-(--era-shadow-lg) glass-blur',
19
19
  className
20
20
  )}
21
21
  {...restProps}
@@ -12,7 +12,7 @@
12
12
 
13
13
  <AspectRatio.Root
14
14
  bind:ref
15
- class={cn('overflow-hidden rounded-(--era-rd-md)', className)}
15
+ class={cn('overflow-hidden rounded-(--era-rd-control)', className)}
16
16
  {...restProps}
17
17
  >
18
18
  {@render children?.()}
@@ -13,7 +13,7 @@
13
13
  <Avatar.Root
14
14
  bind:ref
15
15
  class={cn(
16
- 'inline-flex size-(--era-h-md) shrink-0 items-center justify-center overflow-hidden rounded-full bg-(--era-surface-bg-elevated) text-fg shadow-(--era-shadow)',
16
+ 'inline-flex size-(--era-h-control) shrink-0 items-center justify-center overflow-hidden rounded-full bg-(--era-surface-bg-elevated) text-fg shadow-(--era-shadow)',
17
17
  className
18
18
  )}
19
19
  {...restProps}
@@ -19,7 +19,7 @@
19
19
  // that cost. A badge holding an icon must stay flex to lay the icon out
20
20
  // beside the text, and keeps the general trim — its line-height:1 plus
21
21
  // flex centring, which is the best available when the text is anonymous.
22
- base: 'inline-flex h-(--era-h-xxs) min-w-(--era-h-xxs) shrink-0 items-center justify-center gap-(--era-gap) rounded-(--era-rd-xxs) px-(--era-pill-xxs) font-mono text-body leading-none whitespace-nowrap has-[svg]:gap-(--era-inset-xxs) era-text-trim not-has-[svg]:era-token-ink',
22
+ base: 'inline-flex h-(--era-h-pill) min-w-(--era-h-pill) shrink-0 items-center justify-center gap-(--era-gap) rounded-(--era-rd-pill) px-(--era-pill-px) font-mono text-body leading-none whitespace-nowrap has-[svg]:gap-(--era-inset-pill) era-text-trim not-has-[svg]:era-token-ink',
23
23
  variants: {
24
24
  tone: {
25
25
  default: 'bg-fill text-fg',
@@ -6,7 +6,7 @@ export declare const badgeVariants: import("tailwind-variants").TVReturnType<{
6
6
  success: "bg-success text-success-fg";
7
7
  warning: "bg-warning text-warning-fg";
8
8
  };
9
- }, undefined, "inline-flex h-(--era-h-xxs) min-w-(--era-h-xxs) shrink-0 items-center justify-center gap-(--era-gap) rounded-(--era-rd-xxs) px-(--era-pill-xxs) font-mono text-body leading-none whitespace-nowrap has-[svg]:gap-(--era-inset-xxs) era-text-trim not-has-[svg]:era-token-ink", {
9
+ }, undefined, "inline-flex h-(--era-h-pill) min-w-(--era-h-pill) shrink-0 items-center justify-center gap-(--era-gap) rounded-(--era-rd-pill) px-(--era-pill-px) font-mono text-body leading-none whitespace-nowrap has-[svg]:gap-(--era-inset-pill) era-text-trim not-has-[svg]:era-token-ink", {
10
10
  tone: {
11
11
  default: "bg-fill text-fg";
12
12
  accent: "bg-primary text-primary-fg";
@@ -13,9 +13,9 @@
13
13
  base: 'flex items-center era-text-trim',
14
14
  variants: {
15
15
  size: {
16
- sm: 'h-(--era-h-sm) rounded-(--era-rd-sm)',
17
- md: 'h-(--era-h-md) rounded-(--era-rd-md)',
18
- lg: 'h-(--era-h-lg) rounded-(--era-rd-lg)'
16
+ sm: 'h-(--era-h-chip) rounded-(--era-rd-chip)',
17
+ md: 'h-(--era-h-control) rounded-(--era-rd-control)',
18
+ lg: 'h-(--era-h-bar) rounded-(--era-rd-bar)'
19
19
  },
20
20
  /**
21
21
  * The tier of the CONTROLS inside, because that is what the bar's own
@@ -25,14 +25,14 @@
25
25
  * had each restated the two-tier value by hand, and the geometry spec had
26
26
  * been rewritten twice chasing which token they were restating.
27
27
  *
28
- * - `tier` (default) — one tier smaller, the pairing above. smxs, mdsm
29
- * and lgmd all equal sp/2, which is why one token covers every size.
30
- * - `xxs` — the compact pairing: xxs pills and fields (a filter beside an
28
+ * - `tier` (default) — one tier smaller, the pairing above. chipicon, controlchip
29
+ * and barcontrol all equal sp/2, which is why one token covers every size.
30
+ * - `pill` — the compact pairing: pills and fields (a filter beside an
31
31
  * xxs icon button, a title bar). Two tiers down, so the inset differs
32
32
  * per size and comes from the compounds below.
33
33
  */
34
34
  content: {
35
- tier: 'gap-(--era-xs-inset-sm) px-(--era-xs-inset-sm)',
35
+ tier: 'gap-(--era-icon-inset-chip) px-(--era-icon-inset-chip)',
36
36
  xxs: ''
37
37
  },
38
38
  /**
@@ -54,18 +54,26 @@
54
54
  * both. Collapses to flat in square mode like every radius.
55
55
  */
56
56
  divider: {
57
- true: 'shrink-0 rounded-t-none rounded-b-(--era-rd-md) [box-shadow:0_1px_0_var(--color-divider-faded)]',
57
+ true: 'shrink-0 rounded-t-none rounded-b-(--era-rd-control) [box-shadow:0_1px_0_var(--color-divider-faded)]',
58
58
  false: ''
59
59
  }
60
60
  },
61
61
  compoundVariants: [
62
- // mdxxs = (3sp − sp − 10)/2 — the named token.
63
- { size: 'md', content: 'xxs', class: 'gap-(--era-xxs-inset-md) px-(--era-xxs-inset-md)' },
64
- // sm ⊃ xxs — its own token, not the text inset it used to borrow. The two
62
+ // controlpill = (3sp − sp − 10)/2 — the named token.
63
+ {
64
+ size: 'md',
65
+ content: 'xxs',
66
+ class: 'gap-(--era-pill-inset-control) px-(--era-pill-inset-control)'
67
+ },
68
+ // chip ⊃ pill — its own token, not the text inset it used to borrow. The two
65
69
  // were the same number only while type was 14px at every density; dense's
66
- // 12px broke the tie and left this pairing a pixel wide. (lgxxs has no
70
+ // 12px broke the tie and left this pairing a pixel wide. (barpill has no
67
71
  // token because nothing pairs a page header with pill-tier controls.)
68
- { size: 'sm', content: 'xxs', class: 'gap-(--era-xxs-inset-sm) px-(--era-xxs-inset-sm)' }
72
+ {
73
+ size: 'sm',
74
+ content: 'xxs',
75
+ class: 'gap-(--era-pill-inset-chip) px-(--era-pill-inset-chip)'
76
+ }
69
77
  ],
70
78
  defaultVariants: { size: 'lg', content: 'tier', divider: false }
71
79
  });
@@ -89,8 +97,8 @@
89
97
  size?: 'sm' | 'md' | 'lg';
90
98
  /**
91
99
  * Tier of the controls inside — drives the bar's padding and gap so they
92
- * stay concentric to them. `tier` (default) is one tier smaller; `xxs` is
93
- * the compact pairing (xxs pills/fields in an sm or md bar).
100
+ * stay concentric to them. `tier` (default) is one tier smaller; `pill` is
101
+ * the compact pairing (pills/fields in an sm or md bar).
94
102
  */
95
103
  content?: 'tier' | 'xxs';
96
104
  /** The flush cap-a-panel chrome: outset divider below, bottom rd-md. */
@@ -1,8 +1,8 @@
1
1
  export declare const barVariants: import("tailwind-variants").TVReturnType<{
2
2
  size: {
3
- sm: "h-(--era-h-sm) rounded-(--era-rd-sm)";
4
- md: "h-(--era-h-md) rounded-(--era-rd-md)";
5
- lg: "h-(--era-h-lg) rounded-(--era-rd-lg)";
3
+ sm: "h-(--era-h-chip) rounded-(--era-rd-chip)";
4
+ md: "h-(--era-h-control) rounded-(--era-rd-control)";
5
+ lg: "h-(--era-h-bar) rounded-(--era-rd-bar)";
6
6
  };
7
7
  /**
8
8
  * The tier of the CONTROLS inside, because that is what the bar's own
@@ -12,14 +12,14 @@ export declare const barVariants: import("tailwind-variants").TVReturnType<{
12
12
  * had each restated the two-tier value by hand, and the geometry spec had
13
13
  * been rewritten twice chasing which token they were restating.
14
14
  *
15
- * - `tier` (default) — one tier smaller, the pairing above. smxs, mdsm
16
- * and lgmd all equal sp/2, which is why one token covers every size.
17
- * - `xxs` — the compact pairing: xxs pills and fields (a filter beside an
15
+ * - `tier` (default) — one tier smaller, the pairing above. chipicon, controlchip
16
+ * and barcontrol all equal sp/2, which is why one token covers every size.
17
+ * - `pill` — the compact pairing: pills and fields (a filter beside an
18
18
  * xxs icon button, a title bar). Two tiers down, so the inset differs
19
19
  * per size and comes from the compounds below.
20
20
  */
21
21
  content: {
22
- tier: "gap-(--era-xs-inset-sm) px-(--era-xs-inset-sm)";
22
+ tier: "gap-(--era-icon-inset-chip) px-(--era-icon-inset-chip)";
23
23
  xxs: "";
24
24
  };
25
25
  /**
@@ -41,14 +41,14 @@ export declare const barVariants: import("tailwind-variants").TVReturnType<{
41
41
  * both. Collapses to flat in square mode like every radius.
42
42
  */
43
43
  divider: {
44
- true: "shrink-0 rounded-t-none rounded-b-(--era-rd-md) [box-shadow:0_1px_0_var(--color-divider-faded)]";
44
+ true: "shrink-0 rounded-t-none rounded-b-(--era-rd-control) [box-shadow:0_1px_0_var(--color-divider-faded)]";
45
45
  false: "";
46
46
  };
47
47
  }, undefined, "flex items-center era-text-trim", {
48
48
  size: {
49
- sm: "h-(--era-h-sm) rounded-(--era-rd-sm)";
50
- md: "h-(--era-h-md) rounded-(--era-rd-md)";
51
- lg: "h-(--era-h-lg) rounded-(--era-rd-lg)";
49
+ sm: "h-(--era-h-chip) rounded-(--era-rd-chip)";
50
+ md: "h-(--era-h-control) rounded-(--era-rd-control)";
51
+ lg: "h-(--era-h-bar) rounded-(--era-rd-bar)";
52
52
  };
53
53
  /**
54
54
  * The tier of the CONTROLS inside, because that is what the bar's own
@@ -58,14 +58,14 @@ export declare const barVariants: import("tailwind-variants").TVReturnType<{
58
58
  * had each restated the two-tier value by hand, and the geometry spec had
59
59
  * been rewritten twice chasing which token they were restating.
60
60
  *
61
- * - `tier` (default) — one tier smaller, the pairing above. smxs, mdsm
62
- * and lgmd all equal sp/2, which is why one token covers every size.
63
- * - `xxs` — the compact pairing: xxs pills and fields (a filter beside an
61
+ * - `tier` (default) — one tier smaller, the pairing above. chipicon, controlchip
62
+ * and barcontrol all equal sp/2, which is why one token covers every size.
63
+ * - `pill` — the compact pairing: pills and fields (a filter beside an
64
64
  * xxs icon button, a title bar). Two tiers down, so the inset differs
65
65
  * per size and comes from the compounds below.
66
66
  */
67
67
  content: {
68
- tier: "gap-(--era-xs-inset-sm) px-(--era-xs-inset-sm)";
68
+ tier: "gap-(--era-icon-inset-chip) px-(--era-icon-inset-chip)";
69
69
  xxs: "";
70
70
  };
71
71
  /**
@@ -87,14 +87,14 @@ export declare const barVariants: import("tailwind-variants").TVReturnType<{
87
87
  * both. Collapses to flat in square mode like every radius.
88
88
  */
89
89
  divider: {
90
- true: "shrink-0 rounded-t-none rounded-b-(--era-rd-md) [box-shadow:0_1px_0_var(--color-divider-faded)]";
90
+ true: "shrink-0 rounded-t-none rounded-b-(--era-rd-control) [box-shadow:0_1px_0_var(--color-divider-faded)]";
91
91
  false: "";
92
92
  };
93
93
  }, undefined, import("tailwind-variants").TVReturnTypeLike<{
94
94
  size: {
95
- sm: "h-(--era-h-sm) rounded-(--era-rd-sm)";
96
- md: "h-(--era-h-md) rounded-(--era-rd-md)";
97
- lg: "h-(--era-h-lg) rounded-(--era-rd-lg)";
95
+ sm: "h-(--era-h-chip) rounded-(--era-rd-chip)";
96
+ md: "h-(--era-h-control) rounded-(--era-rd-control)";
97
+ lg: "h-(--era-h-bar) rounded-(--era-rd-bar)";
98
98
  };
99
99
  /**
100
100
  * The tier of the CONTROLS inside, because that is what the bar's own
@@ -104,14 +104,14 @@ export declare const barVariants: import("tailwind-variants").TVReturnType<{
104
104
  * had each restated the two-tier value by hand, and the geometry spec had
105
105
  * been rewritten twice chasing which token they were restating.
106
106
  *
107
- * - `tier` (default) — one tier smaller, the pairing above. smxs, mdsm
108
- * and lgmd all equal sp/2, which is why one token covers every size.
109
- * - `xxs` — the compact pairing: xxs pills and fields (a filter beside an
107
+ * - `tier` (default) — one tier smaller, the pairing above. chipicon, controlchip
108
+ * and barcontrol all equal sp/2, which is why one token covers every size.
109
+ * - `pill` — the compact pairing: pills and fields (a filter beside an
110
110
  * xxs icon button, a title bar). Two tiers down, so the inset differs
111
111
  * per size and comes from the compounds below.
112
112
  */
113
113
  content: {
114
- tier: "gap-(--era-xs-inset-sm) px-(--era-xs-inset-sm)";
114
+ tier: "gap-(--era-icon-inset-chip) px-(--era-icon-inset-chip)";
115
115
  xxs: "";
116
116
  };
117
117
  /**
@@ -133,7 +133,7 @@ export declare const barVariants: import("tailwind-variants").TVReturnType<{
133
133
  * both. Collapses to flat in square mode like every radius.
134
134
  */
135
135
  divider: {
136
- true: "shrink-0 rounded-t-none rounded-b-(--era-rd-md) [box-shadow:0_1px_0_var(--color-divider-faded)]";
136
+ true: "shrink-0 rounded-t-none rounded-b-(--era-rd-control) [box-shadow:0_1px_0_var(--color-divider-faded)]";
137
137
  false: "";
138
138
  };
139
139
  }, undefined>>;
@@ -145,8 +145,8 @@ type $$ComponentProps = HTMLAttributes<HTMLDivElement> & {
145
145
  size?: 'sm' | 'md' | 'lg';
146
146
  /**
147
147
  * Tier of the controls inside — drives the bar's padding and gap so they
148
- * stay concentric to them. `tier` (default) is one tier smaller; `xxs` is
149
- * the compact pairing (xxs pills/fields in an sm or md bar).
148
+ * stay concentric to them. `tier` (default) is one tier smaller; `pill` is
149
+ * the compact pairing (pills/fields in an sm or md bar).
150
150
  */
151
151
  content?: 'tier' | 'xxs';
152
152
  /** The flush cap-a-panel chrome: outset divider below, bottom rd-md. */
@@ -72,7 +72,7 @@
72
72
  -->
73
73
  <span data-button-content class="inline-flex items-center justify-center [gap:inherit]">
74
74
  {#if loading}
75
- <LoaderCircle class="size-(--era-h-xs) shrink-0 animate-spin" aria-hidden="true" />
75
+ <LoaderCircle class="size-(--era-h-icon) shrink-0 animate-spin" aria-hidden="true" />
76
76
  {#if loadingLabel}<span class="sr-only">{loadingLabel}</span>{/if}
77
77
  {/if}
78
78
  {@render children?.()}
@@ -25,27 +25,27 @@ export const buttonVariants = tv({
25
25
  {
26
26
  variant: 'filled',
27
27
  size: 'default',
28
- class: 'h-(--era-h-md) min-w-(--era-h-md) rounded-(--era-rd-md)'
28
+ class: 'h-(--era-h-control) min-w-(--era-h-control) rounded-(--era-rd-control)'
29
29
  },
30
30
  {
31
31
  variant: 'filled',
32
32
  size: 'sm',
33
- class: 'h-(--era-h-sm) min-w-(--era-h-sm) rounded-(--era-rd-sm)'
33
+ class: 'h-(--era-h-chip) min-w-(--era-h-chip) rounded-(--era-rd-chip)'
34
34
  },
35
35
  {
36
36
  variant: 'filled',
37
37
  size: 'xxs',
38
- class: 'h-(--era-h-xxs) min-w-(--era-h-xxs) rounded-(--era-rd-xxs)'
38
+ class: 'h-(--era-h-pill) min-w-(--era-h-pill) rounded-(--era-rd-pill)'
39
39
  },
40
40
  {
41
41
  variant: 'filled',
42
42
  size: 'xs',
43
- class: 'h-(--era-h-xs) min-w-(--era-h-xs) rounded-(--era-rd-xs)'
43
+ class: 'h-(--era-h-icon) min-w-(--era-h-icon) rounded-(--era-rd-icon)'
44
44
  },
45
45
  {
46
46
  variant: 'filled',
47
47
  size: 'icon',
48
- class: 'h-(--era-h-xs) min-w-(--era-h-xs) rounded-(--era-rd-xs)'
48
+ class: 'h-(--era-h-icon) min-w-(--era-h-icon) rounded-(--era-rd-icon)'
49
49
  },
50
50
  // filled insets; icon buttons go square instead. When an icon is present,
51
51
  // gap widens to match the wall inset so the icon sits in rhythm with it.
@@ -53,23 +53,23 @@ export const buttonVariants = tv({
53
53
  variant: 'filled',
54
54
  icon: false,
55
55
  size: 'default',
56
- class: 'px-(--era-inset-md) has-[svg]:gap-(--era-inset-md)'
56
+ class: 'px-(--era-inset-control) has-[svg]:gap-(--era-inset-control)'
57
57
  },
58
58
  {
59
59
  variant: 'filled',
60
60
  icon: false,
61
61
  size: 'sm',
62
- class: 'px-(--era-inset-sm) has-[svg]:gap-(--era-inset-sm)'
62
+ class: 'px-(--era-inset-chip) has-[svg]:gap-(--era-inset-chip)'
63
63
  },
64
- { variant: 'filled', icon: false, size: 'xxs', class: 'px-(--era-pill-xxs)' },
65
- { variant: 'filled', icon: false, size: 'xs', class: 'px-(--era-px-sm)' },
66
- { variant: 'filled', icon: false, size: 'icon', class: 'px-(--era-px-sm)' },
64
+ { variant: 'filled', icon: false, size: 'xxs', class: 'px-(--era-pill-px)' },
65
+ { variant: 'filled', icon: false, size: 'xs', class: 'px-(--era-gap)' },
66
+ { variant: 'filled', icon: false, size: 'icon', class: 'px-(--era-gap)' },
67
67
  { variant: 'filled', icon: true, class: 'aspect-square px-0' },
68
- // Icon glyph sizing. The glyph is the icon tier (h-xs) at default/sm —
68
+ // Icon glyph sizing. The glyph is the icon tier (h-icon) at default/sm —
69
69
  // matching every text button's icon — but at the tight tiers, where the box
70
- // itself nears h-xs, it steps below the legibility floor so it doesn't fill
70
+ // itself nears h-icon, it steps below the legibility floor so it doesn't fill
71
71
  // the box: sp+4 in xxs (pad 3), sp+2 in xs/icon (pad 2). Scoped to icon:true
72
- // so text+icon buttons keep their h-xs glyph. The descendant selector
72
+ // so text+icon buttons keep their h-icon glyph. The descendant selector
73
73
  // outranks the consumer's own size-* on the svg, so no call site changes.
74
74
  //
75
75
  // default/sm were DESCRIBED by the comment above but had no rule, so an
@@ -78,11 +78,11 @@ export const buttonVariants = tv({
78
78
  // notes "new note" button rendered a 24px glyph in a 24px box — flush,
79
79
  // no padding at all. Stating them makes the documented intent real and
80
80
  // removes the dependency on every call site remembering.
81
- { icon: true, size: 'default', class: '[&_svg]:size-(--era-h-xs)' },
82
- { icon: true, size: 'sm', class: '[&_svg]:size-(--era-h-xs)' },
83
- { icon: true, size: 'xxs', class: '[&_svg]:size-(--era-icon-xxs)' },
84
- { icon: true, size: 'xs', class: '[&_svg]:size-(--era-icon-xs)' },
85
- { icon: true, size: 'icon', class: '[&_svg]:size-(--era-icon-xs)' },
81
+ { icon: true, size: 'default', class: '[&_svg]:size-(--era-h-icon)' },
82
+ { icon: true, size: 'sm', class: '[&_svg]:size-(--era-h-icon)' },
83
+ { icon: true, size: 'xxs', class: '[&_svg]:size-(--era-glyph-pill)' },
84
+ { icon: true, size: 'xs', class: '[&_svg]:size-(--era-glyph-icon)' },
85
+ { icon: true, size: 'icon', class: '[&_svg]:size-(--era-glyph-icon)' },
86
86
  // filled tones
87
87
  {
88
88
  variant: 'filled',
@@ -22,9 +22,9 @@
22
22
  // shrink-0: a segmented control is its buttons' width — Badge/Chip's law
23
23
  // one tier up. Squeezed, its rounded fill slid out from under the end
24
24
  // buttons (measured 4px at touch on the board).
25
- 'flex shrink-0 gap-(--era-xs-inset-sm)',
25
+ 'flex shrink-0 gap-(--era-icon-inset-chip)',
26
26
  orientation === 'vertical'
27
- ? 'flex-col items-stretch p-(--era-xs-inset-sm) [&>*]:justify-start'
27
+ ? 'flex-col items-stretch p-(--era-icon-inset-chip) [&>*]:justify-start'
28
28
  : 'items-center',
29
29
  className
30
30
  )}
@@ -8,7 +8,7 @@
8
8
  <Calendar.Day
9
9
  bind:ref
10
10
  class={cn(
11
- 'inline-flex size-(--era-h-md) cursor-default items-center justify-center rounded-(--era-rd-md) text-body text-fg hover:bg-(--era-highlight) focus:outline-none data-[disabled]:pointer-events-none data-[disabled]:opacity-50 data-[outside-month]:pointer-events-none data-[outside-month]:text-muted/40 data-[selected]:bg-hover data-[selected]:text-bright data-[unavailable]:text-muted data-[unavailable]:line-through',
11
+ 'inline-flex size-(--era-h-control) cursor-default items-center justify-center rounded-(--era-rd-control) text-body text-fg hover:bg-(--era-highlight) focus:outline-none data-[disabled]:pointer-events-none data-[disabled]:opacity-50 data-[outside-month]:pointer-events-none data-[outside-month]:text-muted/40 data-[selected]:bg-hover data-[selected]:text-bright data-[unavailable]:text-muted data-[unavailable]:line-through',
12
12
  className
13
13
  )}
14
14
  {...restProps}
@@ -8,7 +8,7 @@
8
8
  <Calendar.HeadCell
9
9
  bind:ref
10
10
  class={cn(
11
- 'flex size-(--era-h-md) items-center justify-center text-body font-normal text-muted',
11
+ 'flex size-(--era-h-control) items-center justify-center text-body font-normal text-muted',
12
12
  className
13
13
  )}
14
14
  {...restProps}
@@ -7,6 +7,6 @@
7
7
 
8
8
  <Calendar.Header
9
9
  bind:ref
10
- class={cn('flex h-(--era-h-md) items-center justify-between gap-(--era-gap)', className)}
10
+ class={cn('flex h-(--era-h-control) items-center justify-between gap-(--era-gap)', className)}
11
11
  {...restProps}
12
12
  />
@@ -23,7 +23,7 @@
23
23
  {#if children}
24
24
  {@render children()}
25
25
  {:else}
26
- <ChevronRight class="size-(--era-h-xs)" />
26
+ <ChevronRight class="size-(--era-h-icon)" />
27
27
  {/if}
28
28
  </Button>
29
29
  {/snippet}
@@ -23,7 +23,7 @@
23
23
  {#if children}
24
24
  {@render children()}
25
25
  {:else}
26
- <ChevronLeft class="size-(--era-h-xs)" />
26
+ <ChevronLeft class="size-(--era-h-icon)" />
27
27
  {/if}
28
28
  </Button>
29
29
  {/snippet}
@@ -2,7 +2,7 @@
2
2
  import { cn, tv } from '../../utils/index.js';
3
3
 
4
4
  export const cardVariants = tv({
5
- base: 'block w-full rounded-(--era-rd-lg) text-left text-fg',
5
+ base: 'block w-full rounded-(--era-rd-bar) text-left text-fg',
6
6
  variants: {
7
7
  tone: {
8
8
  elevated: 'bg-(--era-surface-bg-elevated) shadow-(--era-shadow)',
@@ -31,7 +31,7 @@
31
31
  // reported it as "cards aren't evenly spaced", which is exactly what it
32
32
  // was: the even-gap law, broken by default, in the component that
33
33
  // bounds more consumer content than any other.
34
- sectioned: { true: 'p-0', false: 'p-(--era-pad-md)' },
34
+ sectioned: { true: 'p-0', false: 'p-(--era-pad-card)' },
35
35
  interactive: {
36
36
  true: 'cursor-pointer hover:bg-(--era-highlight) hover:shadow-(--era-highlight-shadow) focus-visible:bg-(--era-highlight) era-interactive aria-disabled:cursor-not-allowed aria-disabled:opacity-50'
37
37
  }
@@ -113,15 +113,15 @@
113
113
  {#snippet body()}
114
114
  {#if sectioned}
115
115
  {#if header}
116
- <div class="border-b border-divider-faded p-(--era-pad-md) text-bright">
116
+ <div class="border-b border-divider-faded p-(--era-pad-card) text-bright">
117
117
  {@render header()}
118
118
  </div>
119
119
  {/if}
120
- <div class="p-(--era-pad-md)">
120
+ <div class="p-(--era-pad-card)">
121
121
  {@render children?.()}
122
122
  </div>
123
123
  {#if footer}
124
- <div class="border-t border-divider-faded p-(--era-pad-md)">
124
+ <div class="border-t border-divider-faded p-(--era-pad-card)">
125
125
  {@render footer()}
126
126
  </div>
127
127
  {/if}
@@ -7,12 +7,12 @@ export declare const cardVariants: import("tailwind-variants").TVReturnType<{
7
7
  };
8
8
  sectioned: {
9
9
  true: "p-0";
10
- false: "p-(--era-pad-md)";
10
+ false: "p-(--era-pad-card)";
11
11
  };
12
12
  interactive: {
13
13
  true: "cursor-pointer hover:bg-(--era-highlight) hover:shadow-(--era-highlight-shadow) focus-visible:bg-(--era-highlight) era-interactive aria-disabled:cursor-not-allowed aria-disabled:opacity-50";
14
14
  };
15
- }, undefined, "block w-full rounded-(--era-rd-lg) text-left text-fg", {
15
+ }, undefined, "block w-full rounded-(--era-rd-bar) text-left text-fg", {
16
16
  tone: {
17
17
  elevated: "bg-(--era-surface-bg-elevated) shadow-(--era-shadow)";
18
18
  surface: "bg-(--era-surface-bg)";
@@ -21,7 +21,7 @@ export declare const cardVariants: import("tailwind-variants").TVReturnType<{
21
21
  };
22
22
  sectioned: {
23
23
  true: "p-0";
24
- false: "p-(--era-pad-md)";
24
+ false: "p-(--era-pad-card)";
25
25
  };
26
26
  interactive: {
27
27
  true: "cursor-pointer hover:bg-(--era-highlight) hover:shadow-(--era-highlight-shadow) focus-visible:bg-(--era-highlight) era-interactive aria-disabled:cursor-not-allowed aria-disabled:opacity-50";
@@ -35,7 +35,7 @@ export declare const cardVariants: import("tailwind-variants").TVReturnType<{
35
35
  };
36
36
  sectioned: {
37
37
  true: "p-0";
38
- false: "p-(--era-pad-md)";
38
+ false: "p-(--era-pad-card)";
39
39
  };
40
40
  interactive: {
41
41
  true: "cursor-pointer hover:bg-(--era-highlight) hover:shadow-(--era-highlight-shadow) focus-visible:bg-(--era-highlight) era-interactive aria-disabled:cursor-not-allowed aria-disabled:opacity-50";
@@ -18,16 +18,16 @@
18
18
  bind:checked
19
19
  bind:indeterminate
20
20
  class={cn(
21
- 'group/checkbox flex size-(--era-h-xs) shrink-0 era-interactive cursor-pointer items-center justify-center rounded-(--era-rd-md) bg-(--era-surface-bg-elevated) shadow-(--era-shadow-well) hover:bg-(--era-highlight)',
21
+ 'group/checkbox flex size-(--era-h-icon) shrink-0 era-interactive cursor-pointer items-center justify-center rounded-(--era-rd-control) bg-(--era-surface-bg-elevated) shadow-(--era-shadow-well) hover:bg-(--era-highlight)',
22
22
  className
23
23
  )}
24
24
  {...restProps}
25
25
  >
26
26
  {#snippet children({ checked, indeterminate })}
27
27
  {#if indeterminate}
28
- <Minus class="size-[calc(var(--era-h-xs)*0.75)] text-fg" />
28
+ <Minus class="size-[calc(var(--era-h-icon)*0.75)] text-fg" />
29
29
  {:else if checked}
30
- <Check class="size-[calc(var(--era-h-xs)*0.75)] text-fg" />
30
+ <Check class="size-[calc(var(--era-h-icon)*0.75)] text-fg" />
31
31
  {/if}
32
32
  {/snippet}
33
33
  </Checkbox.Root>