@sigx/zero-daisyui 0.7.0 → 0.8.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 (47) hide show
  1. package/dist/audit.json +3813 -2
  2. package/dist/components.d.ts +28 -1
  3. package/dist/components.js +3 -0
  4. package/dist/css/components/breadcrumbs.css +30 -0
  5. package/dist/css/components/card.css +26 -0
  6. package/dist/css/components/chat-log.css +172 -0
  7. package/dist/css/components/divider.css +68 -3
  8. package/dist/css/components/hover-card.css +174 -0
  9. package/dist/css/components/menu.css +7 -0
  10. package/dist/css/components/menubar.css +75 -0
  11. package/dist/css/components/pagination.css +83 -0
  12. package/dist/css/components/steps.css +103 -0
  13. package/dist/css/components/timeline.css +14 -0
  14. package/dist/css/components/toast.css +65 -0
  15. package/dist/css/components/tree-view.css +118 -0
  16. package/dist/css/index.css +951 -22
  17. package/dist/lynx/components/accordion.css +3 -1
  18. package/dist/lynx/components/breadcrumbs.css +44 -0
  19. package/dist/lynx/components/button.css +71 -12
  20. package/dist/lynx/components/card.css +9 -0
  21. package/dist/lynx/components/chat-log.css +147 -0
  22. package/dist/lynx/components/dialog.css +9 -3
  23. package/dist/lynx/components/divider.css +8 -17
  24. package/dist/lynx/components/hover-card.css +211 -0
  25. package/dist/lynx/components/menu.css +7 -0
  26. package/dist/lynx/components/menubar.css +199 -0
  27. package/dist/lynx/components/pagination.css +107 -0
  28. package/dist/lynx/components/popover.css +7 -2
  29. package/dist/lynx/components/select.css +40 -3
  30. package/dist/lynx/components/slider.css +3 -2
  31. package/dist/lynx/components/steps.css +103 -0
  32. package/dist/lynx/components/switch.css +2 -1
  33. package/dist/lynx/components/tabs.css +7 -1
  34. package/dist/lynx/components/timeline.css +32 -0
  35. package/dist/lynx/components/toast.css +70 -2
  36. package/dist/lynx/components/tree-view.css +28 -0
  37. package/dist/lynx/index.css +1194 -128
  38. package/dist/lynx/manifest.json +85 -4
  39. package/dist/manifest.json +83 -2
  40. package/dist/recipes.d.ts +19 -1
  41. package/dist/recipes.d.ts.map +1 -1
  42. package/dist/recipes.js +741 -98
  43. package/dist/recipes.js.map +1 -1
  44. package/dist/register.d.ts +27 -0
  45. package/dist/report.json +1078 -159
  46. package/package.json +4 -4
  47. package/src/recipes.ts +763 -98
@@ -18,7 +18,9 @@ import type { Switch as ZSwitch } from '@sigx/zero/switch';
18
18
  import type { Dialog as ZDialog } from '@sigx/zero/dialog';
19
19
  import type { Popover as ZPopover } from '@sigx/zero/popover';
20
20
  import type { Tooltip as ZTooltip } from '@sigx/zero/tooltip';
21
+ import type { HoverCard as ZHoverCard } from '@sigx/zero/hover-card';
21
22
  import type { Menu as ZMenu } from '@sigx/zero/menu';
23
+ import type { Menubar as ZMenubar } from '@sigx/zero/menubar';
22
24
  import type { Field as ZField } from '@sigx/zero/field';
23
25
  import type { Fieldset as ZFieldset } from '@sigx/zero/fieldset';
24
26
  import type { Checkbox as ZCheckbox } from '@sigx/zero/checkbox';
@@ -52,6 +54,7 @@ import type { Indicator as ZIndicator } from '@sigx/zero/indicator';
52
54
  import type { Stats as ZStats } from '@sigx/zero/stats';
53
55
  import type { Timeline as ZTimeline } from '@sigx/zero/timeline';
54
56
  import type { Chat as ZChat } from '@sigx/zero/chat';
57
+ import type { ChatLog as ZChatLog } from '@sigx/zero/chat-log';
55
58
  import type { RadialProgress as ZRadialProgress } from '@sigx/zero/radial-progress';
56
59
  import type { Join as ZJoin } from '@sigx/zero/join';
57
60
  import type { Navbar as ZNavbar } from '@sigx/zero/navbar';
@@ -150,6 +153,14 @@ type TooltipProps = {
150
153
  type TooltipAdapted = Adapted<typeof ZTooltip, ZeroAxisProp, TooltipProps>;
151
154
  export declare const Tooltip: TooltipAdapted & AdaptedStatics<typeof ZTooltip> & { Root: TooltipAdapted };
152
155
 
156
+ /** hover-card — no vendor route; the wired surface keeps zero's names. */
157
+ type HoverCardProps = {
158
+ color?: 'primary' | 'secondary' | 'accent' | 'neutral' | 'info' | 'success' | 'warning' | 'error';
159
+ size?: 'xs' | 'sm' | 'md' | 'lg' | 'xl';
160
+ };
161
+ type HoverCardAdapted = Adapted<typeof ZHoverCard, ZeroAxisProp, HoverCardProps>;
162
+ export declare const HoverCard: HoverCardAdapted & AdaptedStatics<typeof ZHoverCard> & { Root: HoverCardAdapted };
163
+
153
164
  /** menu — no vendor route; the wired surface keeps zero's names. */
154
165
  type MenuProps = {
155
166
  color?: 'primary' | 'secondary' | 'accent' | 'neutral' | 'info' | 'success' | 'warning' | 'error';
@@ -158,6 +169,14 @@ type MenuProps = {
158
169
  type MenuAdapted = Adapted<typeof ZMenu, ZeroAxisProp, MenuProps>;
159
170
  export declare const Menu: MenuAdapted & AdaptedStatics<typeof ZMenu> & { Root: MenuAdapted };
160
171
 
172
+ /** menubar — no vendor route; the wired surface keeps zero's names. */
173
+ type MenubarProps = {
174
+ color?: 'primary' | 'secondary' | 'accent' | 'neutral' | 'info' | 'success' | 'warning' | 'error';
175
+ size?: 'xs' | 'sm' | 'md' | 'lg' | 'xl';
176
+ };
177
+ type MenubarAdapted = Adapted<typeof ZMenubar, ZeroAxisProp, MenubarProps>;
178
+ export declare const Menubar: MenubarAdapted & { Root: MenubarAdapted };
179
+
161
180
  /** field — no vendor route; the wired surface keeps zero's names. */
162
181
  type FieldProps = {
163
182
  color?: 'primary' | 'secondary' | 'accent' | 'neutral' | 'info' | 'success' | 'warning' | 'error';
@@ -366,7 +385,7 @@ type DividerProps = {
366
385
  size?: 'xs' | 'sm' | 'md' | 'lg' | 'xl';
367
386
  };
368
387
  type DividerAdapted = Adapted<typeof ZDivider, ZeroAxisProp, DividerProps>;
369
- export declare const Divider: DividerAdapted & { Root: DividerAdapted };
388
+ export declare const Divider: DividerAdapted & AdaptedStatics<typeof ZDivider> & { Root: DividerAdapted };
370
389
 
371
390
  /** skeleton — no vendor route; the wired surface keeps zero's names. */
372
391
  type SkeletonProps = {
@@ -438,6 +457,14 @@ type ChatProps = {
438
457
  type ChatAdapted = Adapted<typeof ZChat, ZeroAxisProp, ChatProps>;
439
458
  export declare const Chat: ChatAdapted & AdaptedStatics<typeof ZChat> & { Root: ChatAdapted };
440
459
 
460
+ /** chat-log — no vendor route; the wired surface keeps zero's names. */
461
+ type ChatLogProps = {
462
+ color?: 'primary' | 'secondary' | 'accent' | 'neutral' | 'info' | 'success' | 'warning' | 'error';
463
+ size?: 'xs' | 'sm' | 'md' | 'lg' | 'xl';
464
+ };
465
+ type ChatLogAdapted = Adapted<typeof ZChatLog, ZeroAxisProp, ChatLogProps>;
466
+ export declare const ChatLog: ChatLogAdapted & AdaptedStatics<typeof ZChatLog> & { Root: ChatLogAdapted };
467
+
441
468
  /** radial-progress — no vendor route; the wired surface keeps zero's names. */
442
469
  type RadialProgressProps = {
443
470
  color?: 'primary' | 'secondary' | 'accent' | 'neutral' | 'info' | 'success' | 'warning' | 'error';
@@ -43,7 +43,9 @@ export { Switch } from '@sigx/zero/switch';
43
43
  export { Dialog } from '@sigx/zero/dialog';
44
44
  export { Popover } from '@sigx/zero/popover';
45
45
  export { Tooltip } from '@sigx/zero/tooltip';
46
+ export { HoverCard } from '@sigx/zero/hover-card';
46
47
  export { Menu } from '@sigx/zero/menu';
48
+ export { Menubar } from '@sigx/zero/menubar';
47
49
  export { Field } from '@sigx/zero/field';
48
50
  export { Fieldset } from '@sigx/zero/fieldset';
49
51
  export { Checkbox } from '@sigx/zero/checkbox';
@@ -76,6 +78,7 @@ export { Indicator } from '@sigx/zero/indicator';
76
78
  export { Stats } from '@sigx/zero/stats';
77
79
  export { Timeline } from '@sigx/zero/timeline';
78
80
  export { Chat } from '@sigx/zero/chat';
81
+ export { ChatLog } from '@sigx/zero/chat-log';
79
82
  export { RadialProgress } from '@sigx/zero/radial-progress';
80
83
  export { Join } from '@sigx/zero/join';
81
84
  export { Navbar } from '@sigx/zero/navbar';
@@ -54,6 +54,36 @@
54
54
  user-select: none;
55
55
  }
56
56
 
57
+ [data-scope="breadcrumbs"][data-part="ellipsis"] {
58
+ display: flex;
59
+ align-items: center;
60
+ gap: var(--space-xs);
61
+ }
62
+
63
+ [data-scope="breadcrumbs"][data-part="ellipsis-trigger"] {
64
+ appearance: none;
65
+ background: transparent;
66
+ border: 0;
67
+ padding: 0 var(--space-2xs);
68
+ margin: 0;
69
+ font: inherit;
70
+ line-height: inherit;
71
+ color: color-mix(in oklch, var(--color-base-content) 75%, transparent);
72
+ border-radius: var(--radius-selector);
73
+ cursor: pointer;
74
+ transition: color var(--duration-fast) var(--ease-standard);
75
+ }
76
+
77
+ [data-scope="breadcrumbs"][data-part="ellipsis-trigger"]:hover:not([data-disabled]) {
78
+ color: var(--color-base-content);
79
+ text-decoration: underline;
80
+ }
81
+
82
+ [data-scope="breadcrumbs"][data-part="ellipsis-trigger"][data-focus-visible] {
83
+ outline: 2px solid var(--color-primary);
84
+ outline-offset: 2px;
85
+ }
86
+
57
87
  [data-scope="breadcrumbs"][data-part="root"][data-color="primary"] {
58
88
  --bc-accent: color-mix(in oklab, var(--color-primary) 95%, var(--color-base-content));
59
89
  }
@@ -15,6 +15,32 @@
15
15
  overflow: hidden;
16
16
  }
17
17
 
18
+ [data-scope="card"][data-part="media"] {
19
+ display: flex;
20
+ align-items: center;
21
+ justify-content: center;
22
+ margin: 0;
23
+ inline-size: 100%;
24
+ object-fit: cover;
25
+ }
26
+
27
+ [data-scope="card"][data-part="media"] > :is(img, picture, video, svg, canvas) {
28
+ display: block;
29
+ inline-size: 100%;
30
+ block-size: 100%;
31
+ object-fit: cover;
32
+ }
33
+
34
+ [data-scope="card"][data-part="media"]:first-child {
35
+ border-start-start-radius: var(--radius-box);
36
+ border-start-end-radius: var(--radius-box);
37
+ }
38
+
39
+ [data-scope="card"][data-part="media"]:last-child {
40
+ border-end-start-radius: var(--radius-box);
41
+ border-end-end-radius: var(--radius-box);
42
+ }
43
+
18
44
  [data-scope="card"][data-part="header"] {
19
45
  display: flex;
20
46
  flex-direction: column;
@@ -0,0 +1,172 @@
1
+ @layer zero.fallback, zero.tokens, zero.recipes, zero.structure;
2
+
3
+ @layer zero.recipes {
4
+ [data-scope="chat-log"][data-part="root"] {
5
+ --chat-log-fill: var(--color-primary);
6
+ --chat-log-on-fill: var(--color-primary-content);
7
+ --chat-log-jump-size: calc(var(--size-field) * 8);
8
+ }
9
+
10
+ [data-scope="chat-log"][data-part="root"] {
11
+ display: flex;
12
+ flex-direction: column;
13
+ overflow-y: auto;
14
+ overscroll-behavior-y: contain;
15
+ border-radius: var(--radius-box);
16
+ background: var(--color-base-100);
17
+ color: var(--color-base-content);
18
+ border: var(--border) solid var(--color-base-300);
19
+ padding: var(--space-sm) var(--space-md);
20
+ }
21
+
22
+ [data-scope="chat-log"][data-part="root"][data-focus-visible] {
23
+ outline: 2px solid var(--color-base-content);
24
+ outline-offset: -2px;
25
+ }
26
+
27
+ [data-scope="chat-log"][data-part="content"] {
28
+ margin-block-start: auto;
29
+ flex: none;
30
+ display: grid;
31
+ row-gap: var(--space-xs);
32
+ }
33
+
34
+ [data-scope="chat-log"][data-part="jump-trigger"] {
35
+ position: sticky;
36
+ inset-block-end: var(--space-sm);
37
+ align-self: center;
38
+ flex: none;
39
+ margin-block-start: calc(var(--chat-log-jump-size) * -1);
40
+ block-size: var(--chat-log-jump-size);
41
+ appearance: none;
42
+ display: inline-flex;
43
+ align-items: center;
44
+ gap: var(--space-2xs);
45
+ padding-inline: var(--space-md);
46
+ border: var(--border) solid transparent;
47
+ border-radius: 9999px;
48
+ background: var(--chat-log-fill);
49
+ color: var(--chat-log-on-fill);
50
+ box-shadow: var(--shadow-xs);
51
+ font-family: inherit;
52
+ font-size: var(--text-xs);
53
+ font-weight: var(--weight-semibold);
54
+ line-height: var(--leading-none);
55
+ cursor: pointer;
56
+ transition: background var(--duration-fast) var(--ease-standard);
57
+ }
58
+
59
+ [data-scope="chat-log"][data-part="jump-trigger"]:hover:not([data-disabled]) {
60
+ background: color-mix(in oklab, var(--chat-log-fill) 90%, black);
61
+ }
62
+
63
+ [data-scope="chat-log"][data-part="jump-trigger"][data-focus-visible] {
64
+ outline: 2px solid var(--color-base-content);
65
+ outline-offset: 2px;
66
+ }
67
+
68
+ [data-scope="chat-log"][data-part="jump-trigger"][data-pressed]:not([data-disabled]) {
69
+ transform: translateY(1px);
70
+ box-shadow: none;
71
+ }
72
+
73
+ @scope ([data-scope="chat-log"][data-part="root"][data-color="primary"]) to ([data-scope="chat-log"][data-part="root"]) {
74
+ [data-scope="chat-log"][data-part="jump-trigger"] {
75
+ --chat-log-fill: var(--color-primary);
76
+ --chat-log-on-fill: var(--color-primary-content);
77
+ }
78
+ }
79
+
80
+ @scope ([data-scope="chat-log"][data-part="root"][data-color="secondary"]) to ([data-scope="chat-log"][data-part="root"]) {
81
+ [data-scope="chat-log"][data-part="jump-trigger"] {
82
+ --chat-log-fill: var(--color-secondary);
83
+ --chat-log-on-fill: var(--color-secondary-content);
84
+ }
85
+ }
86
+
87
+ @scope ([data-scope="chat-log"][data-part="root"][data-color="accent"]) to ([data-scope="chat-log"][data-part="root"]) {
88
+ [data-scope="chat-log"][data-part="jump-trigger"] {
89
+ --chat-log-fill: var(--color-accent);
90
+ --chat-log-on-fill: var(--color-accent-content);
91
+ }
92
+ }
93
+
94
+ @scope ([data-scope="chat-log"][data-part="root"][data-color="neutral"]) to ([data-scope="chat-log"][data-part="root"]) {
95
+ [data-scope="chat-log"][data-part="jump-trigger"] {
96
+ --chat-log-fill: var(--color-neutral);
97
+ --chat-log-on-fill: var(--color-neutral-content);
98
+ }
99
+ }
100
+
101
+ @scope ([data-scope="chat-log"][data-part="root"][data-color="info"]) to ([data-scope="chat-log"][data-part="root"]) {
102
+ [data-scope="chat-log"][data-part="jump-trigger"] {
103
+ --chat-log-fill: var(--color-info);
104
+ --chat-log-on-fill: var(--color-info-content);
105
+ }
106
+ }
107
+
108
+ @scope ([data-scope="chat-log"][data-part="root"][data-color="success"]) to ([data-scope="chat-log"][data-part="root"]) {
109
+ [data-scope="chat-log"][data-part="jump-trigger"] {
110
+ --chat-log-fill: var(--color-success);
111
+ --chat-log-on-fill: var(--color-success-content);
112
+ }
113
+ }
114
+
115
+ @scope ([data-scope="chat-log"][data-part="root"][data-color="warning"]) to ([data-scope="chat-log"][data-part="root"]) {
116
+ [data-scope="chat-log"][data-part="jump-trigger"] {
117
+ --chat-log-fill: var(--color-warning);
118
+ --chat-log-on-fill: var(--color-warning-content);
119
+ }
120
+ }
121
+
122
+ @scope ([data-scope="chat-log"][data-part="root"][data-color="error"]) to ([data-scope="chat-log"][data-part="root"]) {
123
+ [data-scope="chat-log"][data-part="jump-trigger"] {
124
+ --chat-log-fill: var(--color-error);
125
+ --chat-log-on-fill: var(--color-error-content);
126
+ }
127
+ }
128
+
129
+ @scope ([data-scope="chat-log"][data-part="root"][data-size="xs"]) to ([data-scope="chat-log"][data-part="root"]) {
130
+ [data-scope="chat-log"][data-part="content"] {
131
+ row-gap: var(--space-2xs);
132
+ }
133
+
134
+ [data-scope="chat-log"][data-part="jump-trigger"] {
135
+ --chat-log-jump-size: calc(var(--size-field) * 6);
136
+ font-size: var(--text-xs);
137
+ }
138
+ }
139
+
140
+ @scope ([data-scope="chat-log"][data-part="root"][data-size="sm"]) to ([data-scope="chat-log"][data-part="root"]) {
141
+ [data-scope="chat-log"][data-part="content"] {
142
+ row-gap: var(--space-2xs);
143
+ }
144
+
145
+ [data-scope="chat-log"][data-part="jump-trigger"] {
146
+ --chat-log-jump-size: calc(var(--size-field) * 7);
147
+ font-size: var(--text-xs);
148
+ }
149
+ }
150
+
151
+ @scope ([data-scope="chat-log"][data-part="root"][data-size="lg"]) to ([data-scope="chat-log"][data-part="root"]) {
152
+ [data-scope="chat-log"][data-part="content"] {
153
+ row-gap: var(--space-sm);
154
+ }
155
+
156
+ [data-scope="chat-log"][data-part="jump-trigger"] {
157
+ --chat-log-jump-size: calc(var(--size-field) * 9);
158
+ font-size: var(--text-sm);
159
+ }
160
+ }
161
+
162
+ @scope ([data-scope="chat-log"][data-part="root"][data-size="xl"]) to ([data-scope="chat-log"][data-part="root"]) {
163
+ [data-scope="chat-log"][data-part="content"] {
164
+ row-gap: var(--space-md);
165
+ }
166
+
167
+ [data-scope="chat-log"][data-part="jump-trigger"] {
168
+ --chat-log-jump-size: calc(var(--size-field) * 10);
169
+ font-size: var(--text-sm);
170
+ }
171
+ }
172
+ }
@@ -7,21 +7,86 @@
7
7
  }
8
8
 
9
9
  [data-scope="divider"][data-part="root"] {
10
+ display: flex;
11
+ align-items: center;
10
12
  border: none;
11
- background: var(--divider-ink);
12
13
  align-self: stretch;
13
14
  }
14
15
 
16
+ [data-scope="divider"][data-part="root"]::before {
17
+ content: "";
18
+ flex: 1 1 0;
19
+ min-inline-size: 0;
20
+ }
21
+
22
+ [data-scope="divider"][data-part="root"]::after {
23
+ content: "";
24
+ flex: 1 1 0;
25
+ min-inline-size: 0;
26
+ }
27
+
15
28
  [data-scope="divider"][data-part="root"][data-orientation="horizontal"] {
16
29
  inline-size: 100%;
17
- block-size: var(--divider-thickness);
30
+ }
31
+
32
+ [data-scope="divider"][data-part="root"][data-orientation="horizontal"]::before {
33
+ border-block-start: var(--divider-thickness) solid var(--divider-ink);
34
+ }
35
+
36
+ [data-scope="divider"][data-part="root"][data-orientation="horizontal"]::after {
37
+ border-block-start: var(--divider-thickness) solid var(--divider-ink);
18
38
  }
19
39
 
20
40
  [data-scope="divider"][data-part="root"][data-orientation="vertical"] {
21
- inline-size: var(--divider-thickness);
41
+ flex-direction: column;
22
42
  min-block-size: 1em;
23
43
  }
24
44
 
45
+ [data-scope="divider"][data-part="root"][data-orientation="vertical"]::before {
46
+ border-inline-start: var(--divider-thickness) solid var(--divider-ink);
47
+ }
48
+
49
+ [data-scope="divider"][data-part="root"][data-orientation="vertical"]::after {
50
+ border-inline-start: var(--divider-thickness) solid var(--divider-ink);
51
+ }
52
+
53
+ [data-scope="divider"][data-part="root"]:has(> [data-scope="divider"][data-part="label"][data-placement="start"])::before {
54
+ display: none;
55
+ }
56
+
57
+ [data-scope="divider"][data-part="root"]:has(> [data-scope="divider"][data-part="label"][data-placement="end"])::after {
58
+ display: none;
59
+ }
60
+
61
+ [data-scope="divider"][data-part="label"] {
62
+ flex: none;
63
+ padding-inline: var(--space-md);
64
+ font-size: var(--text-sm);
65
+ white-space: nowrap;
66
+ color: var(--color-base-content);
67
+ }
68
+
69
+ [data-scope="divider"][data-part="root"][data-orientation="vertical"] > [data-scope="divider"][data-part="label"] {
70
+ padding-inline: 0;
71
+ padding-block: var(--space-sm);
72
+ }
73
+
74
+ [data-scope="divider"][data-part="label"][data-placement="start"] {
75
+ padding-inline-start: 0;
76
+ }
77
+
78
+ [data-scope="divider"][data-part="label"][data-placement="end"] {
79
+ padding-inline-end: 0;
80
+ }
81
+
82
+ [data-scope="divider"][data-part="root"][data-orientation="vertical"] > [data-scope="divider"][data-part="label"][data-placement="start"] {
83
+ padding-block-start: 0;
84
+ }
85
+
86
+ [data-scope="divider"][data-part="root"][data-orientation="vertical"] > [data-scope="divider"][data-part="label"][data-placement="end"] {
87
+ padding-block-end: 0;
88
+ }
89
+
25
90
  [data-scope="divider"][data-part="root"][data-color="primary"] {
26
91
  --divider-ink: var(--color-primary);
27
92
  }
@@ -0,0 +1,174 @@
1
+ @layer zero.fallback, zero.tokens, zero.recipes, zero.structure;
2
+
3
+ @layer zero.recipes {
4
+ [data-scope="hover-card"][data-part="trigger"] {
5
+ color: inherit;
6
+ text-decoration-line: underline;
7
+ text-underline-offset: 2px;
8
+ cursor: pointer;
9
+ border-radius: var(--radius-selector);
10
+ }
11
+
12
+ [data-scope="hover-card"][data-part="trigger"]:hover:not([data-disabled]) {
13
+ text-decoration-thickness: 2px;
14
+ }
15
+
16
+ [data-scope="hover-card"][data-part="trigger"][data-state="open"] {
17
+ text-decoration-thickness: 2px;
18
+ }
19
+
20
+ [data-scope="hover-card"][data-part="trigger"][data-focus-visible] {
21
+ outline: 2px solid var(--color-base-content);
22
+ outline-offset: 2px;
23
+ }
24
+
25
+ [data-scope="hover-card"][data-part="popup"] {
26
+ opacity: 0;
27
+ transform: translateY(-4px);
28
+ transition: opacity var(--duration-fast) var(--ease-standard), transform var(--duration-fast) var(--ease-standard), display var(--duration-fast) allow-discrete, overlay var(--duration-fast) allow-discrete;
29
+ background: var(--color-base-100);
30
+ color: var(--color-base-content);
31
+ border: var(--border) solid var(--color-base-300);
32
+ border-radius: var(--radius-box);
33
+ box-shadow: var(--shadow-lg);
34
+ padding: var(--space-xl);
35
+ max-width: 20rem;
36
+ font-size: var(--text-sm);
37
+ }
38
+
39
+ [data-scope="hover-card"][data-part="popup"][data-state="open"] {
40
+ opacity: 1;
41
+ transform: none;
42
+ }
43
+
44
+ [data-scope="hover-card"][data-part="popup"]:has(> [data-scope="hover-card"][data-part="arrow"]) {
45
+ overflow: visible;
46
+ }
47
+
48
+ [data-scope="hover-card"][data-part="arrow"] {
49
+ display: none;
50
+ position: absolute;
51
+ box-sizing: border-box;
52
+ width: 0.625rem;
53
+ height: 0.625rem;
54
+ rotate: 45deg;
55
+ pointer-events: none;
56
+ background: var(--color-base-100);
57
+ border: var(--border) solid var(--color-base-300);
58
+ }
59
+
60
+ [data-scope="hover-card"][data-part="popup"][data-placement^="top"] > [data-scope="hover-card"][data-part="arrow"] {
61
+ display: block;
62
+ top: calc(100% - 0.625rem / 2);
63
+ left: var(--arrow-x, calc(50% - 0.625rem / 2));
64
+ clip-path: polygon(100% 0, 100% 100%, 0 100%);
65
+ }
66
+
67
+ [data-scope="hover-card"][data-part="popup"][data-placement^="bottom"] > [data-scope="hover-card"][data-part="arrow"] {
68
+ display: block;
69
+ top: calc(0.625rem / -2);
70
+ left: var(--arrow-x, calc(50% - 0.625rem / 2));
71
+ clip-path: polygon(0 0, 100% 0, 0 100%);
72
+ }
73
+
74
+ [data-scope="hover-card"][data-part="popup"][data-placement^="left"] > [data-scope="hover-card"][data-part="arrow"] {
75
+ display: block;
76
+ left: calc(100% - 0.625rem / 2);
77
+ top: var(--arrow-y, calc(50% - 0.625rem / 2));
78
+ clip-path: polygon(0 0, 100% 0, 100% 100%);
79
+ }
80
+
81
+ [data-scope="hover-card"][data-part="popup"][data-placement^="right"] > [data-scope="hover-card"][data-part="arrow"] {
82
+ display: block;
83
+ left: calc(0.625rem / -2);
84
+ top: var(--arrow-y, calc(50% - 0.625rem / 2));
85
+ clip-path: polygon(0 0, 100% 100%, 0 100%);
86
+ }
87
+
88
+ [data-scope="hover-card"][data-part="popup"][data-placement^="start"] > [data-scope="hover-card"][data-part="arrow"] {
89
+ display: block;
90
+ inset-inline-start: calc(100% - 0.625rem / 2);
91
+ top: var(--arrow-y, calc(50% - 0.625rem / 2));
92
+ clip-path: polygon(0 0, 100% 0, 100% 100%);
93
+ }
94
+
95
+ [data-scope="hover-card"][data-part="popup"][data-placement^="end"] > [data-scope="hover-card"][data-part="arrow"] {
96
+ display: block;
97
+ inset-inline-start: calc(0.625rem / -2);
98
+ top: var(--arrow-y, calc(50% - 0.625rem / 2));
99
+ clip-path: polygon(0 0, 100% 100%, 0 100%);
100
+ }
101
+
102
+ [data-scope="hover-card"][data-part="popup"][data-placement^="start"]:where(:dir(rtl), [dir="rtl"], [dir="rtl"] *) > [data-scope="hover-card"][data-part="arrow"] {
103
+ clip-path: polygon(0 0, 100% 100%, 0 100%);
104
+ }
105
+
106
+ [data-scope="hover-card"][data-part="popup"][data-placement^="end"]:where(:dir(rtl), [dir="rtl"], [dir="rtl"] *) > [data-scope="hover-card"][data-part="arrow"] {
107
+ clip-path: polygon(0 0, 100% 0, 100% 100%);
108
+ }
109
+
110
+ [data-scope="hover-card"][data-part="trigger"][data-color="primary"] {
111
+ color: color-mix(in oklab, var(--color-primary) 95%, var(--color-base-content));
112
+ }
113
+
114
+ [data-scope="hover-card"][data-part="trigger"][data-color="secondary"] {
115
+ color: color-mix(in oklab, var(--color-secondary) 70%, var(--color-base-content));
116
+ }
117
+
118
+ [data-scope="hover-card"][data-part="trigger"][data-color="accent"] {
119
+ color: color-mix(in oklab, var(--color-accent) 55%, var(--color-base-content));
120
+ }
121
+
122
+ [data-scope="hover-card"][data-part="trigger"][data-color="neutral"] {
123
+ color: color-mix(in oklab, var(--color-neutral) 40%, var(--color-base-content));
124
+ }
125
+
126
+ [data-scope="hover-card"][data-part="trigger"][data-color="info"] {
127
+ color: color-mix(in oklab, var(--color-info) 70%, var(--color-base-content));
128
+ }
129
+
130
+ [data-scope="hover-card"][data-part="trigger"][data-color="success"] {
131
+ color: color-mix(in oklab, var(--color-success) 55%, var(--color-base-content));
132
+ }
133
+
134
+ [data-scope="hover-card"][data-part="trigger"][data-color="warning"] {
135
+ color: color-mix(in oklab, var(--color-warning) 45%, var(--color-base-content));
136
+ }
137
+
138
+ [data-scope="hover-card"][data-part="trigger"][data-color="error"] {
139
+ color: color-mix(in oklab, var(--color-error) 85%, var(--color-base-content));
140
+ }
141
+
142
+ [data-scope="hover-card"][data-part="trigger"][data-size="xs"] {
143
+ font-size: var(--text-xs);
144
+ }
145
+
146
+ [data-scope="hover-card"][data-part="trigger"][data-size="sm"] {
147
+ font-size: var(--text-sm);
148
+ }
149
+
150
+ [data-scope="hover-card"][data-part="trigger"][data-size="lg"] {
151
+ font-size: var(--text-lg);
152
+ }
153
+
154
+ [data-scope="hover-card"][data-part="trigger"][data-size="xl"] {
155
+ font-size: var(--text-xl);
156
+ }
157
+
158
+ @media (prefers-reduced-motion: reduce) {
159
+ [data-scope="hover-card"][data-part="popup"] {
160
+ transition: none;
161
+ }
162
+
163
+ [data-scope="hover-card"][data-part="popup"][data-state="open"] {
164
+ transform: none;
165
+ }
166
+ }
167
+
168
+ @starting-style {
169
+ [data-scope="hover-card"][data-part="popup"][data-state="open"] {
170
+ opacity: 0;
171
+ transform: translateY(-4px);
172
+ }
173
+ }
174
+ }
@@ -198,6 +198,13 @@
198
198
  opacity: 0.6;
199
199
  }
200
200
 
201
+ [data-scope="menu"][data-part="shortcut"] {
202
+ margin-inline-start: auto;
203
+ padding-inline-start: var(--space-lg);
204
+ font-size: var(--text-xs);
205
+ opacity: 0.75;
206
+ }
207
+
201
208
  [data-scope="menu"][data-part="separator"] {
202
209
  height: var(--border);
203
210
  margin: var(--space-sm) var(--space-md);