@xihan-ui/styles 1.0.0 → 2.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 (171) hide show
  1. package/CHANGELOG.md +5146 -6
  2. package/README.md +22 -2
  3. package/component-tokens.d.ts +4212 -0
  4. package/component-tokens.js +2 -0
  5. package/components.tokens.json +80116 -0
  6. package/css/accordion.css +131 -75
  7. package/css/affix.css +16 -1
  8. package/css/alert.css +114 -67
  9. package/css/anchor.css +99 -27
  10. package/css/approval.css +461 -0
  11. package/css/avatar-group.css +14 -6
  12. package/css/avatar.css +33 -9
  13. package/css/back-top.css +103 -48
  14. package/css/badge.css +42 -14
  15. package/css/bar-code.css +62 -0
  16. package/css/breadcrumb.css +40 -21
  17. package/css/button-group.css +146 -24
  18. package/css/button.css +116 -99
  19. package/css/calendar-picker.css +448 -0
  20. package/css/calendar-range-picker.css +517 -0
  21. package/css/card.css +54 -77
  22. package/css/carousel.css +412 -68
  23. package/css/cascader.css +429 -246
  24. package/css/checkbox-group.css +225 -77
  25. package/css/checkbox.css +174 -37
  26. package/css/clipboard.css +266 -47
  27. package/css/code-view.css +279 -0
  28. package/css/collapsible.css +108 -63
  29. package/css/color-field.css +158 -0
  30. package/css/color-picker.css +172 -184
  31. package/css/color-slider.css +274 -0
  32. package/css/color-swatch-picker.css +243 -0
  33. package/css/color-swatch.css +35 -0
  34. package/css/combobox.css +267 -273
  35. package/css/command.css +399 -0
  36. package/css/context-menu.css +183 -108
  37. package/css/date-field.css +94 -121
  38. package/css/date-picker.css +486 -249
  39. package/css/date-range-picker.css +559 -0
  40. package/css/description.css +51 -0
  41. package/css/descriptions.css +133 -87
  42. package/css/dialog.css +247 -68
  43. package/css/diff-view.css +428 -0
  44. package/css/download-trigger.css +155 -46
  45. package/css/drawer.css +194 -111
  46. package/css/editable.css +172 -152
  47. package/css/empty-state.css +80 -11
  48. package/css/field-array.css +190 -0
  49. package/css/field.css +84 -31
  50. package/css/fieldset.css +51 -18
  51. package/css/file-upload.css +134 -36
  52. package/css/flex.css +20 -1
  53. package/css/float-button.css +238 -57
  54. package/css/floating-panel.css +173 -92
  55. package/css/focus.css +46 -0
  56. package/css/forced-colors.css +93 -0
  57. package/css/form.css +254 -77
  58. package/css/gradient-text.css +34 -10
  59. package/css/grid.css +516 -5
  60. package/css/heatmap.css +87 -29
  61. package/css/highlight.css +20 -5
  62. package/css/hover-card.css +97 -47
  63. package/css/icon-wrapper.css +15 -3
  64. package/css/icon.css +74 -8
  65. package/css/image-cropper.css +143 -29
  66. package/css/image-viewer.css +150 -89
  67. package/css/image.css +30 -1
  68. package/css/infinite-scroll.css +51 -1
  69. package/css/input-group.css +277 -0
  70. package/css/json-viewer.css +102 -45
  71. package/css/kbd.css +72 -0
  72. package/css/label.css +78 -0
  73. package/css/layers.css +5 -0
  74. package/css/layout.css +175 -31
  75. package/css/list.css +24 -3
  76. package/css/listbox.css +208 -67
  77. package/css/loading-bar.css +52 -3
  78. package/css/log.css +144 -9
  79. package/css/markdown-stream.css +149 -0
  80. package/css/marquee.css +27 -1
  81. package/css/masonry.css +7 -0
  82. package/css/matrix-code.css +67 -0
  83. package/css/mention.css +234 -152
  84. package/css/menu.css +180 -83
  85. package/css/menubar.css +204 -136
  86. package/css/message-feed.css +197 -0
  87. package/css/navigation-menu.css +144 -90
  88. package/css/notification.css +178 -100
  89. package/css/number-animation.css +7 -0
  90. package/css/number-field.css +120 -277
  91. package/css/overlay-arrow.css +12 -7
  92. package/css/page-header.css +99 -14
  93. package/css/pagination.css +175 -135
  94. package/css/password-input.css +222 -219
  95. package/css/pin-input.css +101 -67
  96. package/css/pointer.css +36 -0
  97. package/css/popconfirm.css +185 -94
  98. package/css/popover.css +121 -77
  99. package/css/progress.css +60 -12
  100. package/css/prompt-input.css +224 -0
  101. package/css/question-flow.css +513 -0
  102. package/css/radio-group.css +147 -30
  103. package/css/rating.css +193 -43
  104. package/css/reasoning.css +336 -0
  105. package/css/reset.css +84 -6
  106. package/css/resizable.css +237 -0
  107. package/css/scroll-area.css +68 -7
  108. package/css/scrollbar.css +47 -13
  109. package/css/segmented.css +94 -29
  110. package/css/select.css +288 -274
  111. package/css/separator.css +101 -1
  112. package/css/side-nav.css +133 -75
  113. package/css/signature-pad.css +74 -54
  114. package/css/skeleton.css +84 -11
  115. package/css/slider.css +132 -39
  116. package/css/sortable.css +198 -0
  117. package/css/spinner.css +126 -12
  118. package/css/splitter.css +29 -8
  119. package/css/statistic.css +55 -0
  120. package/css/steps.css +206 -72
  121. package/css/switch.css +268 -36
  122. package/css/table.css +695 -118
  123. package/css/tabs.css +604 -42
  124. package/css/tag-group.css +219 -0
  125. package/css/tag.css +118 -28
  126. package/css/tags-input.css +156 -274
  127. package/css/text-field.css +101 -249
  128. package/css/time-field.css +100 -128
  129. package/css/time-picker.css +323 -252
  130. package/css/time-range-picker.css +719 -0
  131. package/css/timeline.css +202 -68
  132. package/css/timer.css +56 -52
  133. package/css/timestamp.css +34 -0
  134. package/css/toast.css +373 -144
  135. package/css/toggle-group.css +309 -76
  136. package/css/toggle.css +116 -85
  137. package/css/tone.css +47 -0
  138. package/css/tool-call.css +421 -0
  139. package/css/toolbar.css +181 -33
  140. package/css/tooltip.css +107 -36
  141. package/css/tour.css +183 -152
  142. package/css/transfer.css +351 -138
  143. package/css/tree-select.css +323 -216
  144. package/css/tree.css +294 -62
  145. package/css/truncate.css +65 -0
  146. package/css/typography.css +228 -5
  147. package/css/undefined.css +10 -1
  148. package/css/virtualizer.css +9 -10
  149. package/css/visually-hidden.css +7 -0
  150. package/css/watermark.css +7 -0
  151. package/family/action-control.css +487 -0
  152. package/family/collection-item.css +721 -0
  153. package/family/field-chrome.css +298 -0
  154. package/family/motion.css +166 -0
  155. package/family/swatch.css +59 -0
  156. package/index.css +41705 -126
  157. package/index.unlayered.css +33692 -17339
  158. package/package.json +51 -17
  159. package/css/calendar.css +0 -367
  160. package/css/code-block.css +0 -91
  161. package/css/composer.css +0 -134
  162. package/css/countdown.css +0 -26
  163. package/css/dynamic-input.css +0 -220
  164. package/css/ellipsis.css +0 -52
  165. package/css/hotkeys.css +0 -90
  166. package/css/popselect.css +0 -391
  167. package/css/qr-code.css +0 -55
  168. package/css/result.css +0 -119
  169. package/css/space.css +0 -117
  170. package/css/thread.css +0 -120
  171. package/css/time.css +0 -25
@@ -0,0 +1,721 @@
1
+ /*
2
+ * Copyright (c) 2021-Present XiHanFun and contributors.
3
+ * Licensed under the MIT License. See LICENSE in the project root for license information.
4
+ */
5
+
6
+ /* AUTO-GENERATED by build/collection-item-recipe.mjs — do not edit. */
7
+ @layer xihan.components {
8
+ [data-xh-collection-item] {
9
+ --xh-_collection-block-padding: var(--xh-list-option-py-md);
10
+ --xh-_collection-inline-padding: var(--xh-control-px-md);
11
+ --xh-_collection-gap: var(--xh-control-gap-md);
12
+ --xh-_collection-font-size: var(--xh-control-font-md);
13
+ --xh-_collection-glyph-size: var(--xh-glyph-size-md);
14
+ --xh-_collection-bg: var(--xh-collection-bg-rest, transparent);
15
+ --xh-_collection-fg: var(--xh-collection-fg-rest, var(--xh-material-frosted-fg));
16
+ --xh-_collection-description-fg: var(--xh-collection-description-fg-rest, var(--xh-material-frosted-fg-muted));
17
+ --xh-_collection-indicator-fg: var(--xh-collection-indicator-fg-rest, var(--xh-fg-brand));
18
+ --xh-_collection-outline: var(--xh-collection-outline-rest, transparent);
19
+ --xh-_collection-font-weight: var(--xh-collection-font-weight-rest, var(--xh-font-weight-regular));
20
+ --xh-_collection-cursor: var(--xh-collection-cursor-rest, pointer);
21
+ --xh-_collection-opacity: var(--xh-collection-opacity-rest, 1);
22
+
23
+ --xh-icon-size: var(--xh-collection-glyph-size, var(--xh-_collection-glyph-size));
24
+
25
+ display: grid;
26
+ grid-template-columns:
27
+ [prefix] max-content
28
+ [text] minmax(0, 1fr)
29
+ [shortcut] max-content
30
+ [suffix] max-content
31
+ [indicator] max-content;
32
+ /* 第 2 行是说明行。各皮肤为了省略号给 text 槽写了 overflow: hidden,它因此成为滚动容器、自动最小尺寸
33
+ 归 0;轨道尺寸算法里第 1 行的 base size 只有 0,处理跨两行的 prefix / indicator 等图标时会把图标高度
34
+ 平均分给两行,没有说明的条目也长出半个图标高的第 2 行,图标随之整体下沉。minmax(0, max-content)
35
+ 把第 2 行的最小尺寸钉在 0,它不再参与跨行项的最小高度分配,只在真有说明时按说明长;上限取 max-content
36
+ 而不是 auto,皮肤给条目定死 block-size 时多余空间也不会被说明行分走。 */
37
+ grid-template-rows: auto minmax(0, max-content);
38
+ align-items: center;
39
+ min-inline-size: 0;
40
+ padding-block: var(--xh-collection-block-padding, var(--xh-_collection-block-padding));
41
+ padding-inline: var(--xh-collection-inline-padding, var(--xh-_collection-inline-padding));
42
+ border-radius: var(--xh-collection-radius, var(--xh-shape-control));
43
+ outline: var(--xh-ring-width) solid var(--xh-_collection-outline);
44
+ outline-offset: var(--xh-ring-offset);
45
+ background-color: var(--xh-_collection-bg);
46
+ color: var(--xh-_collection-fg);
47
+ font-size: var(--xh-collection-font-size, var(--xh-_collection-font-size));
48
+ font-weight: var(--xh-_collection-font-weight);
49
+ line-height: var(--xh-leading-normal);
50
+ cursor: var(--xh-_collection-cursor);
51
+ opacity: var(--xh-_collection-opacity);
52
+ /* 描边色不进过渡,与 focus.css 的公共环同一节奏(即时出现、即时消失):
53
+ 描边在这里常驻 solid、静息透明,靠颜色表达键盘高亮。宿主页面常见的
54
+ button:focus:not(:focus-visible) { outline: none } 复位(VitePress 等)是无层规则,压过本份;
55
+ 指针落焦时它把简写复位成 none,outline-color 同时落到 currentColor;焦点离开、规则失效的那一刻
56
+ solid 立即回来,颜色若还在过渡就画成一圈实心边(上一条目闪边)。颜色即时切换后这条路径没有中间帧 */
57
+ transition:
58
+ background-color var(--xh-motion-duration-release) var(--xh-motion-ease-release),
59
+ color var(--xh-motion-duration-micro) var(--xh-motion-ease-enter);
60
+ }
61
+
62
+ [data-xh-collection-item][data-xh-collection-size='sm'] {
63
+ --xh-_collection-block-padding: var(--xh-list-option-py-sm);
64
+ --xh-_collection-inline-padding: var(--xh-control-px-sm);
65
+ --xh-_collection-gap: var(--xh-control-gap-sm);
66
+ --xh-_collection-font-size: var(--xh-control-font-sm);
67
+ --xh-_collection-glyph-size: var(--xh-glyph-size-sm);
68
+ }
69
+
70
+ [data-xh-collection-item][data-xh-collection-size='md'] {
71
+ --xh-_collection-block-padding: var(--xh-list-option-py-md);
72
+ --xh-_collection-inline-padding: var(--xh-control-px-md);
73
+ --xh-_collection-gap: var(--xh-control-gap-md);
74
+ --xh-_collection-font-size: var(--xh-control-font-md);
75
+ --xh-_collection-glyph-size: var(--xh-glyph-size-md);
76
+ }
77
+
78
+ [data-xh-collection-item][data-xh-collection-size='lg'] {
79
+ --xh-_collection-block-padding: var(--xh-list-option-py-lg);
80
+ --xh-_collection-inline-padding: var(--xh-control-px-lg);
81
+ --xh-_collection-gap: var(--xh-control-gap-lg);
82
+ --xh-_collection-font-size: var(--xh-control-font-lg);
83
+ --xh-_collection-glyph-size: var(--xh-glyph-size-lg);
84
+ }
85
+
86
+ [data-xh-collection-slot='prefix'] {
87
+ grid-column: prefix;
88
+ grid-row: 1 / span 2;
89
+ margin-inline-end: var(--xh-collection-gap, var(--xh-_collection-gap));
90
+ }
91
+
92
+ [data-xh-collection-slot='text'] {
93
+ grid-column: text;
94
+ grid-row: 1;
95
+ min-inline-size: 0;
96
+ }
97
+
98
+ [data-xh-collection-slot='description'] {
99
+ grid-column: text;
100
+ grid-row: 2;
101
+ min-inline-size: 0;
102
+ color: var(--xh-_collection-description-fg);
103
+ font-size: var(--xh-collection-description-font-size, var(--xh-control-caption-md));
104
+ }
105
+
106
+ [data-xh-collection-slot='shortcut'] {
107
+ grid-column: shortcut;
108
+ }
109
+
110
+ [data-xh-collection-slot='suffix'] {
111
+ grid-column: suffix;
112
+ }
113
+
114
+ [data-xh-collection-slot='indicator'] {
115
+ grid-column: indicator;
116
+ color: var(--xh-_collection-indicator-fg);
117
+ visibility: hidden;
118
+ }
119
+
120
+ [data-xh-collection-slot='shortcut'],
121
+ [data-xh-collection-slot='suffix'],
122
+ [data-xh-collection-slot='indicator'] {
123
+ grid-row: 1 / span 2;
124
+ margin-inline-start: var(--xh-collection-gap, var(--xh-_collection-gap));
125
+ }
126
+
127
+ /* page 上下文:对号是前导标记(leading);当前项的起始侧指示条按配方开关(none),none 即只由行面与字色表达。 */
128
+ [data-xh-collection-item][data-xh-collection-context='page'] {
129
+ position: relative;
130
+ grid-template-columns:
131
+ [indicator] max-content
132
+ [prefix] max-content
133
+ [text] minmax(0, 1fr)
134
+ [shortcut] max-content
135
+ [suffix] max-content;
136
+ }
137
+
138
+ [data-xh-collection-item][data-xh-collection-context='page'] [data-xh-collection-slot='indicator'] {
139
+ margin-inline-start: 0;
140
+ margin-inline-end: var(--xh-collection-gap, var(--xh-_collection-gap));
141
+ }
142
+
143
+ [data-xh-collection-item][data-in-path] {
144
+ --xh-_collection-bg: var(--xh-collection-bg-open-path, var(--xh-bg-subtle));
145
+ --xh-_collection-fg: var(--xh-collection-fg-open-path, var(--xh-material-frosted-fg));
146
+ --xh-_collection-description-fg: var(--xh-collection-description-fg-open-path, var(--xh-material-frosted-fg-muted));
147
+ --xh-_collection-indicator-fg: var(--xh-collection-indicator-fg-open-path, var(--xh-fg-brand));
148
+ --xh-_collection-outline: var(--xh-collection-outline-open-path, transparent);
149
+ --xh-_collection-font-weight: var(--xh-collection-font-weight-open-path, var(--xh-font-weight-regular));
150
+ --xh-_collection-cursor: var(--xh-collection-cursor-open-path, pointer);
151
+ --xh-_collection-opacity: var(--xh-collection-opacity-open-path, 1);
152
+ }
153
+
154
+ [data-xh-collection-item]:not([aria-disabled='true'], [data-disabled], [aria-busy='true'], [data-error]):hover {
155
+ --xh-_collection-bg: var(--xh-collection-bg-hover, var(--xh-bg-subtle));
156
+ --xh-_collection-fg: var(--xh-collection-fg-hover, var(--xh-material-frosted-fg));
157
+ --xh-_collection-description-fg: var(--xh-collection-description-fg-hover, var(--xh-material-frosted-fg-muted));
158
+ --xh-_collection-indicator-fg: var(--xh-collection-indicator-fg-hover, var(--xh-fg-brand));
159
+ --xh-_collection-outline: var(--xh-collection-outline-hover, transparent);
160
+ --xh-_collection-font-weight: var(--xh-collection-font-weight-hover, var(--xh-font-weight-regular));
161
+ --xh-_collection-cursor: var(--xh-collection-cursor-hover, pointer);
162
+ --xh-_collection-opacity: var(--xh-collection-opacity-hover, 1);
163
+ }
164
+
165
+ [data-xh-collection-item]:not([aria-disabled='true'], [data-disabled], [aria-busy='true'], [data-error]):is(:focus-visible, [data-highlighted]) {
166
+ --xh-_collection-bg: var(--xh-collection-bg-keyboard-highlight, var(--xh-bg-subtle));
167
+ --xh-_collection-fg: var(--xh-collection-fg-keyboard-highlight, var(--xh-material-frosted-fg));
168
+ --xh-_collection-description-fg: var(--xh-collection-description-fg-keyboard-highlight, var(--xh-material-frosted-fg-muted));
169
+ --xh-_collection-indicator-fg: var(--xh-collection-indicator-fg-keyboard-highlight, var(--xh-fg-brand));
170
+ --xh-_collection-outline: var(--xh-collection-outline-keyboard-highlight, var(--xh-ring-focus));
171
+ --xh-_collection-font-weight: var(--xh-collection-font-weight-keyboard-highlight, var(--xh-font-weight-regular));
172
+ --xh-_collection-cursor: var(--xh-collection-cursor-keyboard-highlight, pointer);
173
+ --xh-_collection-opacity: var(--xh-collection-opacity-keyboard-highlight, 1);
174
+ }
175
+
176
+ /* 按下段:pressed 面与按下时长、曲线一起给出;排在 hover 与高亮之后,同特指度才不会被它们盖掉。 */
177
+ [data-xh-collection-item]:not([aria-disabled='true'], [data-disabled], [aria-busy='true'], [data-error]):is(:active, [data-pressed]) {
178
+ --xh-_collection-bg: var(--xh-collection-bg-pressed, var(--xh-bg-subtle-hover));
179
+ --xh-_collection-fg: var(--xh-collection-fg-pressed, var(--xh-material-frosted-fg));
180
+ --xh-_collection-description-fg: var(--xh-collection-description-fg-pressed, var(--xh-material-frosted-fg-muted));
181
+ --xh-_collection-indicator-fg: var(--xh-collection-indicator-fg-pressed, var(--xh-fg-brand));
182
+ --xh-_collection-outline: var(--xh-collection-outline-pressed, transparent);
183
+ --xh-_collection-font-weight: var(--xh-collection-font-weight-pressed, var(--xh-font-weight-regular));
184
+ --xh-_collection-cursor: var(--xh-collection-cursor-pressed, pointer);
185
+ --xh-_collection-opacity: var(--xh-collection-opacity-pressed, 1);
186
+
187
+ transition-duration: var(--xh-motion-duration-press);
188
+ transition-timing-function: var(--xh-motion-ease-press);
189
+ }
190
+
191
+ [data-xh-collection-item][data-xh-collection-context='overlay']:is([aria-selected='true'], [data-selected]):not([aria-disabled='true'], [data-disabled], [aria-busy='true'], [data-error]) {
192
+ --xh-_collection-bg: var(--xh-collection-bg-selected, transparent);
193
+ --xh-_collection-fg: var(--xh-collection-fg-selected, var(--xh-material-frosted-fg));
194
+ --xh-_collection-description-fg: var(--xh-collection-description-fg-selected, var(--xh-material-frosted-fg-muted));
195
+ --xh-_collection-indicator-fg: var(--xh-collection-indicator-fg-selected, var(--xh-fg-brand));
196
+ --xh-_collection-outline: var(--xh-collection-outline-selected, transparent);
197
+ --xh-_collection-font-weight: var(--xh-collection-font-weight-selected, var(--xh-font-weight-regular));
198
+ --xh-_collection-cursor: var(--xh-collection-cursor-selected, pointer);
199
+ --xh-_collection-opacity: var(--xh-collection-opacity-selected, 1);
200
+ }
201
+
202
+ [data-xh-collection-item][data-xh-collection-context='overlay']:is([aria-selected='true'], [data-selected]):not([aria-disabled='true'], [data-disabled], [aria-busy='true'], [data-error]):hover {
203
+ --xh-_collection-bg: var(--xh-collection-bg-selected-hover, var(--xh-bg-subtle));
204
+ --xh-_collection-fg: var(--xh-collection-fg-selected-hover, var(--xh-material-frosted-fg));
205
+ --xh-_collection-description-fg: var(--xh-collection-description-fg-selected-hover, var(--xh-material-frosted-fg-muted));
206
+ --xh-_collection-indicator-fg: var(--xh-collection-indicator-fg-selected-hover, var(--xh-fg-brand));
207
+ --xh-_collection-outline: var(--xh-collection-outline-selected-hover, transparent);
208
+ --xh-_collection-font-weight: var(--xh-collection-font-weight-selected-hover, var(--xh-font-weight-regular));
209
+ --xh-_collection-cursor: var(--xh-collection-cursor-selected-hover, pointer);
210
+ --xh-_collection-opacity: var(--xh-collection-opacity-selected-hover, 1);
211
+ }
212
+
213
+ [data-xh-collection-item][data-xh-collection-context='overlay']:is([aria-selected='true'], [data-selected]):not([aria-disabled='true'], [data-disabled], [aria-busy='true'], [data-error]):is(:focus-visible, [data-highlighted]) {
214
+ --xh-_collection-bg: var(--xh-collection-bg-selected-highlight, var(--xh-bg-subtle));
215
+ --xh-_collection-fg: var(--xh-collection-fg-selected-highlight, var(--xh-material-frosted-fg));
216
+ --xh-_collection-description-fg: var(--xh-collection-description-fg-selected-highlight, var(--xh-material-frosted-fg-muted));
217
+ --xh-_collection-indicator-fg: var(--xh-collection-indicator-fg-selected-highlight, var(--xh-fg-brand));
218
+ --xh-_collection-outline: var(--xh-collection-outline-selected-highlight, var(--xh-ring-focus));
219
+ --xh-_collection-font-weight: var(--xh-collection-font-weight-selected-highlight, var(--xh-font-weight-regular));
220
+ --xh-_collection-cursor: var(--xh-collection-cursor-selected-highlight, pointer);
221
+ --xh-_collection-opacity: var(--xh-collection-opacity-selected-highlight, 1);
222
+ }
223
+
224
+ [data-xh-collection-item][data-xh-collection-context='overlay']:is([aria-selected='true'], [data-selected]):not([aria-disabled='true'], [data-disabled], [aria-busy='true'], [data-error]):is(:active, [data-pressed]) {
225
+ --xh-_collection-bg: var(--xh-collection-bg-selected-pressed, var(--xh-bg-subtle-hover));
226
+ --xh-_collection-fg: var(--xh-collection-fg-selected-pressed, var(--xh-material-frosted-fg));
227
+ --xh-_collection-description-fg: var(--xh-collection-description-fg-selected-pressed, var(--xh-material-frosted-fg-muted));
228
+ --xh-_collection-indicator-fg: var(--xh-collection-indicator-fg-selected-pressed, var(--xh-fg-brand));
229
+ --xh-_collection-outline: var(--xh-collection-outline-selected-pressed, transparent);
230
+ --xh-_collection-font-weight: var(--xh-collection-font-weight-selected-pressed, var(--xh-font-weight-regular));
231
+ --xh-_collection-cursor: var(--xh-collection-cursor-selected-pressed, pointer);
232
+ --xh-_collection-opacity: var(--xh-collection-opacity-selected-pressed, 1);
233
+ }
234
+
235
+ [data-xh-collection-item][data-xh-collection-context='page']:is([aria-selected='true'], [data-selected]):not([aria-disabled='true'], [data-disabled], [aria-busy='true'], [data-error]) {
236
+ --xh-_collection-bg: var(--xh-collection-bg-selected, var(--xh-bg-brand-subtle));
237
+ --xh-_collection-fg: var(--xh-collection-fg-selected, var(--xh-fg-on-brand-subtle));
238
+ --xh-_collection-description-fg: var(--xh-collection-description-fg-selected, var(--xh-material-frosted-fg-muted));
239
+ --xh-_collection-indicator-fg: var(--xh-collection-indicator-fg-selected, var(--xh-fg-on-brand-subtle));
240
+ --xh-_collection-outline: var(--xh-collection-outline-selected, transparent);
241
+ --xh-_collection-font-weight: var(--xh-collection-font-weight-selected, var(--xh-font-weight-regular));
242
+ --xh-_collection-cursor: var(--xh-collection-cursor-selected, pointer);
243
+ --xh-_collection-opacity: var(--xh-collection-opacity-selected, 1);
244
+ }
245
+
246
+ [data-xh-collection-item][data-xh-collection-context='page']:is([aria-selected='true'], [data-selected]):not([aria-disabled='true'], [data-disabled], [aria-busy='true'], [data-error]):hover {
247
+ --xh-_collection-bg: var(--xh-collection-bg-selected-hover, var(--xh-bg-brand-subtle-hover));
248
+ --xh-_collection-fg: var(--xh-collection-fg-selected-hover, var(--xh-fg-on-brand-subtle));
249
+ --xh-_collection-description-fg: var(--xh-collection-description-fg-selected-hover, var(--xh-material-frosted-fg-muted));
250
+ --xh-_collection-indicator-fg: var(--xh-collection-indicator-fg-selected-hover, var(--xh-fg-on-brand-subtle));
251
+ --xh-_collection-outline: var(--xh-collection-outline-selected-hover, transparent);
252
+ --xh-_collection-font-weight: var(--xh-collection-font-weight-selected-hover, var(--xh-font-weight-regular));
253
+ --xh-_collection-cursor: var(--xh-collection-cursor-selected-hover, pointer);
254
+ --xh-_collection-opacity: var(--xh-collection-opacity-selected-hover, 1);
255
+ }
256
+
257
+ [data-xh-collection-item][data-xh-collection-context='page']:is([aria-selected='true'], [data-selected]):not([aria-disabled='true'], [data-disabled], [aria-busy='true'], [data-error]):is(:focus-visible, [data-highlighted]) {
258
+ --xh-_collection-bg: var(--xh-collection-bg-selected-highlight, var(--xh-bg-brand-subtle-hover));
259
+ --xh-_collection-fg: var(--xh-collection-fg-selected-highlight, var(--xh-fg-on-brand-subtle));
260
+ --xh-_collection-description-fg: var(--xh-collection-description-fg-selected-highlight, var(--xh-material-frosted-fg-muted));
261
+ --xh-_collection-indicator-fg: var(--xh-collection-indicator-fg-selected-highlight, var(--xh-fg-on-brand-subtle));
262
+ --xh-_collection-outline: var(--xh-collection-outline-selected-highlight, var(--xh-ring-focus));
263
+ --xh-_collection-font-weight: var(--xh-collection-font-weight-selected-highlight, var(--xh-font-weight-regular));
264
+ --xh-_collection-cursor: var(--xh-collection-cursor-selected-highlight, pointer);
265
+ --xh-_collection-opacity: var(--xh-collection-opacity-selected-highlight, 1);
266
+ }
267
+
268
+ [data-xh-collection-item][data-xh-collection-context='page']:is([aria-selected='true'], [data-selected]):not([aria-disabled='true'], [data-disabled], [aria-busy='true'], [data-error]):is(:active, [data-pressed]) {
269
+ --xh-_collection-bg: var(--xh-collection-bg-selected-pressed, var(--xh-bg-brand-subtle-active));
270
+ --xh-_collection-fg: var(--xh-collection-fg-selected-pressed, var(--xh-fg-on-brand-subtle));
271
+ --xh-_collection-description-fg: var(--xh-collection-description-fg-selected-pressed, var(--xh-material-frosted-fg-muted));
272
+ --xh-_collection-indicator-fg: var(--xh-collection-indicator-fg-selected-pressed, var(--xh-fg-on-brand-subtle));
273
+ --xh-_collection-outline: var(--xh-collection-outline-selected-pressed, transparent);
274
+ --xh-_collection-font-weight: var(--xh-collection-font-weight-selected-pressed, var(--xh-font-weight-regular));
275
+ --xh-_collection-cursor: var(--xh-collection-cursor-selected-pressed, pointer);
276
+ --xh-_collection-opacity: var(--xh-collection-opacity-selected-pressed, 1);
277
+ }
278
+
279
+ [data-xh-collection-item][data-xh-collection-context='page'][data-current]:not([aria-disabled='true'], [data-disabled], [aria-busy='true'], [data-error]) {
280
+ --xh-_collection-bg: var(--xh-collection-bg-current, var(--xh-bg-brand-subtle));
281
+ --xh-_collection-fg: var(--xh-collection-fg-current, var(--xh-fg-on-brand-subtle));
282
+ --xh-_collection-description-fg: var(--xh-collection-description-fg-current, var(--xh-material-frosted-fg-muted));
283
+ --xh-_collection-indicator-fg: var(--xh-collection-indicator-fg-current, var(--xh-fg-on-brand-subtle));
284
+ --xh-_collection-outline: var(--xh-collection-outline-current, transparent);
285
+ --xh-_collection-font-weight: var(--xh-collection-font-weight-current, var(--xh-font-weight-regular));
286
+ --xh-_collection-cursor: var(--xh-collection-cursor-current, pointer);
287
+ --xh-_collection-opacity: var(--xh-collection-opacity-current, 1);
288
+ }
289
+
290
+ [data-xh-collection-item][data-xh-collection-context='page'][data-current]:not([aria-disabled='true'], [data-disabled], [aria-busy='true'], [data-error]):hover {
291
+ --xh-_collection-bg: var(--xh-collection-bg-current-hover, var(--xh-bg-brand-subtle-hover));
292
+ --xh-_collection-fg: var(--xh-collection-fg-current-hover, var(--xh-fg-on-brand-subtle));
293
+ --xh-_collection-description-fg: var(--xh-collection-description-fg-current-hover, var(--xh-material-frosted-fg-muted));
294
+ --xh-_collection-indicator-fg: var(--xh-collection-indicator-fg-current-hover, var(--xh-fg-on-brand-subtle));
295
+ --xh-_collection-outline: var(--xh-collection-outline-current-hover, transparent);
296
+ --xh-_collection-font-weight: var(--xh-collection-font-weight-current-hover, var(--xh-font-weight-regular));
297
+ --xh-_collection-cursor: var(--xh-collection-cursor-current-hover, pointer);
298
+ --xh-_collection-opacity: var(--xh-collection-opacity-current-hover, 1);
299
+ }
300
+
301
+ [data-xh-collection-item][data-xh-collection-context='page'][data-current]:not([aria-disabled='true'], [data-disabled], [aria-busy='true'], [data-error]):is(:focus-visible, [data-highlighted]) {
302
+ --xh-_collection-bg: var(--xh-collection-bg-current-highlight, var(--xh-bg-brand-subtle-hover));
303
+ --xh-_collection-fg: var(--xh-collection-fg-current-highlight, var(--xh-fg-on-brand-subtle));
304
+ --xh-_collection-description-fg: var(--xh-collection-description-fg-current-highlight, var(--xh-material-frosted-fg-muted));
305
+ --xh-_collection-indicator-fg: var(--xh-collection-indicator-fg-current-highlight, var(--xh-fg-on-brand-subtle));
306
+ --xh-_collection-outline: var(--xh-collection-outline-current-highlight, var(--xh-ring-focus));
307
+ --xh-_collection-font-weight: var(--xh-collection-font-weight-current-highlight, var(--xh-font-weight-regular));
308
+ --xh-_collection-cursor: var(--xh-collection-cursor-current-highlight, pointer);
309
+ --xh-_collection-opacity: var(--xh-collection-opacity-current-highlight, 1);
310
+ }
311
+
312
+ [data-xh-collection-item][data-xh-collection-context='page'][data-current]:not([aria-disabled='true'], [data-disabled], [aria-busy='true'], [data-error]):is(:active, [data-pressed]) {
313
+ --xh-_collection-bg: var(--xh-collection-bg-current-pressed, var(--xh-bg-brand-subtle-active));
314
+ --xh-_collection-fg: var(--xh-collection-fg-current-pressed, var(--xh-fg-on-brand-subtle));
315
+ --xh-_collection-description-fg: var(--xh-collection-description-fg-current-pressed, var(--xh-material-frosted-fg-muted));
316
+ --xh-_collection-indicator-fg: var(--xh-collection-indicator-fg-current-pressed, var(--xh-fg-on-brand-subtle));
317
+ --xh-_collection-outline: var(--xh-collection-outline-current-pressed, transparent);
318
+ --xh-_collection-font-weight: var(--xh-collection-font-weight-current-pressed, var(--xh-font-weight-regular));
319
+ --xh-_collection-cursor: var(--xh-collection-cursor-current-pressed, pointer);
320
+ --xh-_collection-opacity: var(--xh-collection-opacity-current-pressed, 1);
321
+ }
322
+
323
+ [data-xh-collection-item][data-xh-collection-context='nav'] {
324
+ --xh-_collection-bg: var(--xh-collection-bg-rest, transparent);
325
+ --xh-_collection-fg: var(--xh-collection-fg-rest, var(--xh-fg-muted));
326
+ --xh-_collection-description-fg: var(--xh-collection-description-fg-rest, var(--xh-fg-muted));
327
+ --xh-_collection-indicator-fg: var(--xh-collection-indicator-fg-rest, var(--xh-fg-brand));
328
+ --xh-_collection-outline: var(--xh-collection-outline-rest, transparent);
329
+ --xh-_collection-font-weight: var(--xh-collection-font-weight-rest, var(--xh-font-weight-regular));
330
+ --xh-_collection-cursor: var(--xh-collection-cursor-rest, pointer);
331
+ --xh-_collection-opacity: var(--xh-collection-opacity-rest, 1);
332
+ }
333
+
334
+ [data-xh-collection-item][data-xh-collection-context='nav']:not([aria-disabled='true'], [data-disabled], [aria-busy='true'], [data-error]):hover {
335
+ --xh-_collection-bg: var(--xh-collection-bg-hover, var(--xh-bg-subtle));
336
+ --xh-_collection-fg: var(--xh-collection-fg-hover, var(--xh-fg-default));
337
+ --xh-_collection-description-fg: var(--xh-collection-description-fg-hover, var(--xh-fg-muted));
338
+ --xh-_collection-indicator-fg: var(--xh-collection-indicator-fg-hover, var(--xh-fg-brand));
339
+ --xh-_collection-outline: var(--xh-collection-outline-hover, transparent);
340
+ --xh-_collection-font-weight: var(--xh-collection-font-weight-hover, var(--xh-font-weight-regular));
341
+ --xh-_collection-cursor: var(--xh-collection-cursor-hover, pointer);
342
+ --xh-_collection-opacity: var(--xh-collection-opacity-hover, 1);
343
+ }
344
+
345
+ [data-xh-collection-item][data-xh-collection-context='nav']:not([aria-disabled='true'], [data-disabled], [aria-busy='true'], [data-error]):is(:focus-visible, [data-highlighted]) {
346
+ --xh-_collection-bg: var(--xh-collection-bg-keyboard-highlight, var(--xh-bg-subtle));
347
+ --xh-_collection-fg: var(--xh-collection-fg-keyboard-highlight, var(--xh-fg-default));
348
+ --xh-_collection-description-fg: var(--xh-collection-description-fg-keyboard-highlight, var(--xh-fg-muted));
349
+ --xh-_collection-indicator-fg: var(--xh-collection-indicator-fg-keyboard-highlight, var(--xh-fg-brand));
350
+ --xh-_collection-outline: var(--xh-collection-outline-keyboard-highlight, var(--xh-ring-focus));
351
+ --xh-_collection-font-weight: var(--xh-collection-font-weight-keyboard-highlight, var(--xh-font-weight-regular));
352
+ --xh-_collection-cursor: var(--xh-collection-cursor-keyboard-highlight, pointer);
353
+ --xh-_collection-opacity: var(--xh-collection-opacity-keyboard-highlight, 1);
354
+ }
355
+
356
+ [data-xh-collection-item][data-xh-collection-context='nav']:not([aria-disabled='true'], [data-disabled], [aria-busy='true'], [data-error]):is(:active, [data-pressed]) {
357
+ --xh-_collection-bg: var(--xh-collection-bg-pressed, var(--xh-bg-subtle-hover));
358
+ --xh-_collection-fg: var(--xh-collection-fg-pressed, var(--xh-fg-default));
359
+ --xh-_collection-description-fg: var(--xh-collection-description-fg-pressed, var(--xh-fg-muted));
360
+ --xh-_collection-indicator-fg: var(--xh-collection-indicator-fg-pressed, var(--xh-fg-brand));
361
+ --xh-_collection-outline: var(--xh-collection-outline-pressed, transparent);
362
+ --xh-_collection-font-weight: var(--xh-collection-font-weight-pressed, var(--xh-font-weight-regular));
363
+ --xh-_collection-cursor: var(--xh-collection-cursor-pressed, pointer);
364
+ --xh-_collection-opacity: var(--xh-collection-opacity-pressed, 1);
365
+
366
+ transition-duration: var(--xh-motion-duration-press);
367
+ transition-timing-function: var(--xh-motion-ease-press);
368
+ }
369
+
370
+ [data-xh-collection-item][data-xh-collection-context='nav'][data-in-path] {
371
+ --xh-_collection-bg: var(--xh-collection-bg-open-path, var(--xh-bg-subtle));
372
+ --xh-_collection-fg: var(--xh-collection-fg-open-path, var(--xh-fg-default));
373
+ --xh-_collection-description-fg: var(--xh-collection-description-fg-open-path, var(--xh-fg-muted));
374
+ --xh-_collection-indicator-fg: var(--xh-collection-indicator-fg-open-path, var(--xh-fg-brand));
375
+ --xh-_collection-outline: var(--xh-collection-outline-open-path, transparent);
376
+ --xh-_collection-font-weight: var(--xh-collection-font-weight-open-path, var(--xh-font-weight-regular));
377
+ --xh-_collection-cursor: var(--xh-collection-cursor-open-path, pointer);
378
+ --xh-_collection-opacity: var(--xh-collection-opacity-open-path, 1);
379
+ }
380
+
381
+ [data-xh-collection-item][data-xh-collection-context='nav'][data-current]:not([aria-disabled='true'], [data-disabled], [aria-busy='true'], [data-error]) {
382
+ --xh-_collection-bg: var(--xh-collection-bg-current, transparent);
383
+ --xh-_collection-fg: var(--xh-collection-fg-current, var(--xh-fg-brand-strong));
384
+ --xh-_collection-description-fg: var(--xh-collection-description-fg-current, var(--xh-fg-muted));
385
+ --xh-_collection-indicator-fg: var(--xh-collection-indicator-fg-current, var(--xh-fg-brand));
386
+ --xh-_collection-outline: var(--xh-collection-outline-current, transparent);
387
+ --xh-_collection-font-weight: var(--xh-collection-font-weight-current, var(--xh-font-weight-medium));
388
+ --xh-_collection-cursor: var(--xh-collection-cursor-current, pointer);
389
+ --xh-_collection-opacity: var(--xh-collection-opacity-current, 1);
390
+ }
391
+
392
+ [data-xh-collection-item][data-xh-collection-context='nav'][data-current]:not([aria-disabled='true'], [data-disabled], [aria-busy='true'], [data-error]):hover {
393
+ --xh-_collection-bg: var(--xh-collection-bg-current-hover, var(--xh-bg-subtle));
394
+ --xh-_collection-fg: var(--xh-collection-fg-current-hover, var(--xh-fg-brand-strong));
395
+ --xh-_collection-description-fg: var(--xh-collection-description-fg-current-hover, var(--xh-fg-muted));
396
+ --xh-_collection-indicator-fg: var(--xh-collection-indicator-fg-current-hover, var(--xh-fg-brand));
397
+ --xh-_collection-outline: var(--xh-collection-outline-current-hover, transparent);
398
+ --xh-_collection-font-weight: var(--xh-collection-font-weight-current-hover, var(--xh-font-weight-medium));
399
+ --xh-_collection-cursor: var(--xh-collection-cursor-current-hover, pointer);
400
+ --xh-_collection-opacity: var(--xh-collection-opacity-current-hover, 1);
401
+ }
402
+
403
+ [data-xh-collection-item][data-xh-collection-context='nav'][data-current]:not([aria-disabled='true'], [data-disabled], [aria-busy='true'], [data-error]):is(:focus-visible, [data-highlighted]) {
404
+ --xh-_collection-bg: var(--xh-collection-bg-current-highlight, var(--xh-bg-subtle));
405
+ --xh-_collection-fg: var(--xh-collection-fg-current-highlight, var(--xh-fg-brand-strong));
406
+ --xh-_collection-description-fg: var(--xh-collection-description-fg-current-highlight, var(--xh-fg-muted));
407
+ --xh-_collection-indicator-fg: var(--xh-collection-indicator-fg-current-highlight, var(--xh-fg-brand));
408
+ --xh-_collection-outline: var(--xh-collection-outline-current-highlight, var(--xh-ring-focus));
409
+ --xh-_collection-font-weight: var(--xh-collection-font-weight-current-highlight, var(--xh-font-weight-medium));
410
+ --xh-_collection-cursor: var(--xh-collection-cursor-current-highlight, pointer);
411
+ --xh-_collection-opacity: var(--xh-collection-opacity-current-highlight, 1);
412
+ }
413
+
414
+ [data-xh-collection-item][data-xh-collection-context='nav'][data-current]:not([aria-disabled='true'], [data-disabled], [aria-busy='true'], [data-error]):is(:active, [data-pressed]) {
415
+ --xh-_collection-bg: var(--xh-collection-bg-current-pressed, var(--xh-bg-subtle-hover));
416
+ --xh-_collection-fg: var(--xh-collection-fg-current-pressed, var(--xh-fg-brand-strong));
417
+ --xh-_collection-description-fg: var(--xh-collection-description-fg-current-pressed, var(--xh-fg-muted));
418
+ --xh-_collection-indicator-fg: var(--xh-collection-indicator-fg-current-pressed, var(--xh-fg-brand));
419
+ --xh-_collection-outline: var(--xh-collection-outline-current-pressed, transparent);
420
+ --xh-_collection-font-weight: var(--xh-collection-font-weight-current-pressed, var(--xh-font-weight-medium));
421
+ --xh-_collection-cursor: var(--xh-collection-cursor-current-pressed, pointer);
422
+ --xh-_collection-opacity: var(--xh-collection-opacity-current-pressed, 1);
423
+ }
424
+
425
+ [data-xh-collection-item][data-xh-collection-context='nav'][data-current][data-xh-collection-terminal] {
426
+ --xh-_collection-bg: var(--xh-collection-bg-terminal, transparent);
427
+ --xh-_collection-fg: var(--xh-collection-fg-terminal, var(--xh-fg-default));
428
+ --xh-_collection-description-fg: var(--xh-collection-description-fg-terminal, var(--xh-fg-muted));
429
+ --xh-_collection-indicator-fg: var(--xh-collection-indicator-fg-terminal, var(--xh-fg-brand));
430
+ --xh-_collection-outline: var(--xh-collection-outline-terminal, transparent);
431
+ --xh-_collection-font-weight: var(--xh-collection-font-weight-terminal, var(--xh-font-weight-medium));
432
+ --xh-_collection-cursor: var(--xh-collection-cursor-terminal, default);
433
+ --xh-_collection-opacity: var(--xh-collection-opacity-terminal, 1);
434
+
435
+ cursor: var(--xh-_collection-cursor);
436
+ }
437
+
438
+ [data-xh-collection-item]:is([aria-selected='true'], [data-state='checked']) [data-xh-collection-slot='indicator'] {
439
+ visibility: visible;
440
+ }
441
+
442
+ [data-xh-collection-item][data-state='checked'] {
443
+ --xh-_collection-indicator-fg: var(--xh-collection-indicator-fg-checked, var(--xh-fg-brand));
444
+ }
445
+
446
+ [data-xh-collection-item][aria-disabled='true'] {
447
+ --xh-_collection-bg: var(--xh-collection-bg-disabled, transparent);
448
+ --xh-_collection-fg: var(--xh-collection-fg-disabled, var(--xh-fg-disabled));
449
+ --xh-_collection-description-fg: var(--xh-collection-description-fg-disabled, var(--xh-fg-disabled));
450
+ --xh-_collection-indicator-fg: var(--xh-collection-indicator-fg-disabled, var(--xh-fg-disabled));
451
+ --xh-_collection-outline: var(--xh-collection-outline-disabled, transparent);
452
+ --xh-_collection-font-weight: var(--xh-collection-font-weight-disabled, var(--xh-font-weight-regular));
453
+ --xh-_collection-cursor: var(--xh-collection-cursor-disabled, not-allowed);
454
+ --xh-_collection-opacity: var(--xh-collection-opacity-disabled, 1);
455
+ }
456
+
457
+ [data-xh-collection-item][aria-busy='true'] {
458
+ --xh-_collection-bg: var(--xh-collection-bg-loading, transparent);
459
+ --xh-_collection-fg: var(--xh-collection-fg-loading, var(--xh-material-frosted-fg));
460
+ --xh-_collection-description-fg: var(--xh-collection-description-fg-loading, var(--xh-material-frosted-fg-muted));
461
+ --xh-_collection-indicator-fg: var(--xh-collection-indicator-fg-loading, var(--xh-fg-brand));
462
+ --xh-_collection-outline: var(--xh-collection-outline-loading, transparent);
463
+ --xh-_collection-font-weight: var(--xh-collection-font-weight-loading, var(--xh-font-weight-regular));
464
+ --xh-_collection-cursor: var(--xh-collection-cursor-loading, progress);
465
+ --xh-_collection-opacity: var(--xh-collection-opacity-loading, 1);
466
+ }
467
+
468
+ [data-xh-collection-item][data-error] {
469
+ --xh-_collection-bg: var(--xh-collection-bg-error, color-mix(in oklab, var(--xh-fg-danger) 10%, transparent));
470
+ --xh-_collection-fg: var(--xh-collection-fg-error, var(--xh-fg-danger));
471
+ --xh-_collection-description-fg: var(--xh-collection-description-fg-error, var(--xh-fg-danger));
472
+ --xh-_collection-indicator-fg: var(--xh-collection-indicator-fg-error, var(--xh-fg-danger));
473
+ --xh-_collection-outline: var(--xh-collection-outline-error, var(--xh-fg-danger));
474
+ --xh-_collection-font-weight: var(--xh-collection-font-weight-error, var(--xh-font-weight-regular));
475
+ --xh-_collection-cursor: var(--xh-collection-cursor-error, pointer);
476
+ --xh-_collection-opacity: var(--xh-collection-opacity-error, 1);
477
+ }
478
+
479
+ [data-xh-collection-separator] {
480
+ block-size: var(--xh-stroke-thin);
481
+ margin-block: var(--xh-collection-separator-block-margin, var(--xh-space-1));
482
+ margin-inline: var(--xh-collection-separator-inline-margin, var(--xh-control-px-md));
483
+ border: 0;
484
+ background-color: var(--xh-collection-separator-color, var(--xh-material-frosted-separator));
485
+ }
486
+
487
+ [data-xh-collection-item][hidden],
488
+ [data-xh-collection-separator][hidden] {
489
+ display: none;
490
+ }
491
+
492
+ :where([data-motion='reduce']) [data-xh-collection-item] {
493
+ transition: none;
494
+ }
495
+
496
+ @media (prefers-reduced-motion: reduce) {
497
+ [data-xh-collection-item] {
498
+ transition: none;
499
+ }
500
+ }
501
+
502
+ @media (forced-colors: active) {
503
+ [data-xh-collection-item] {
504
+ --xh-_collection-bg: Canvas;
505
+ --xh-_collection-fg: CanvasText;
506
+ --xh-_collection-outline: transparent;
507
+ --xh-_collection-indicator-fg: ButtonText;
508
+ }
509
+
510
+ [data-xh-collection-item][data-in-path] {
511
+ --xh-_collection-bg: Canvas;
512
+ --xh-_collection-fg: CanvasText;
513
+ --xh-_collection-outline: Highlight;
514
+ --xh-_collection-indicator-fg: Highlight;
515
+ }
516
+
517
+ [data-xh-collection-item]:not([aria-disabled='true'], [data-disabled], [aria-busy='true'], [data-error]):hover {
518
+ --xh-_collection-bg: Highlight;
519
+ --xh-_collection-fg: HighlightText;
520
+ --xh-_collection-outline: transparent;
521
+ --xh-_collection-indicator-fg: HighlightText;
522
+ }
523
+
524
+ [data-xh-collection-item]:not([aria-disabled='true'], [data-disabled], [aria-busy='true'], [data-error]):is(:focus-visible, [data-highlighted]) {
525
+ --xh-_collection-bg: Canvas;
526
+ --xh-_collection-fg: CanvasText;
527
+ --xh-_collection-outline: Highlight;
528
+ --xh-_collection-indicator-fg: Highlight;
529
+ }
530
+
531
+ [data-xh-collection-item]:not([aria-disabled='true'], [data-disabled], [aria-busy='true'], [data-error]):is(:active, [data-pressed]) {
532
+ --xh-_collection-bg: Highlight;
533
+ --xh-_collection-fg: HighlightText;
534
+ --xh-_collection-outline: transparent;
535
+ --xh-_collection-indicator-fg: HighlightText;
536
+ }
537
+
538
+ [data-xh-collection-item][data-xh-collection-context='overlay']:is([aria-selected='true'], [data-selected]):not([aria-disabled='true'], [data-disabled], [aria-busy='true'], [data-error]) {
539
+ --xh-_collection-bg: Canvas;
540
+ --xh-_collection-fg: CanvasText;
541
+ --xh-_collection-outline: transparent;
542
+ --xh-_collection-indicator-fg: Highlight;
543
+ }
544
+
545
+ [data-xh-collection-item][data-xh-collection-context='overlay']:is([aria-selected='true'], [data-selected]):not([aria-disabled='true'], [data-disabled], [aria-busy='true'], [data-error]):hover {
546
+ --xh-_collection-bg: Highlight;
547
+ --xh-_collection-fg: HighlightText;
548
+ --xh-_collection-outline: transparent;
549
+ --xh-_collection-indicator-fg: HighlightText;
550
+ }
551
+
552
+ [data-xh-collection-item][data-xh-collection-context='overlay']:is([aria-selected='true'], [data-selected]):not([aria-disabled='true'], [data-disabled], [aria-busy='true'], [data-error]):is(:focus-visible, [data-highlighted]) {
553
+ --xh-_collection-bg: Canvas;
554
+ --xh-_collection-fg: CanvasText;
555
+ --xh-_collection-outline: Highlight;
556
+ --xh-_collection-indicator-fg: Highlight;
557
+ }
558
+
559
+ [data-xh-collection-item][data-xh-collection-context='overlay']:is([aria-selected='true'], [data-selected]):not([aria-disabled='true'], [data-disabled], [aria-busy='true'], [data-error]):is(:active, [data-pressed]) {
560
+ --xh-_collection-bg: Highlight;
561
+ --xh-_collection-fg: HighlightText;
562
+ --xh-_collection-outline: transparent;
563
+ --xh-_collection-indicator-fg: HighlightText;
564
+ }
565
+
566
+ [data-xh-collection-item][data-xh-collection-context='page']:is([aria-selected='true'], [data-selected]):not([aria-disabled='true'], [data-disabled], [aria-busy='true'], [data-error]) {
567
+ --xh-_collection-bg: Highlight;
568
+ --xh-_collection-fg: HighlightText;
569
+ --xh-_collection-outline: transparent;
570
+ --xh-_collection-indicator-fg: HighlightText;
571
+ }
572
+
573
+ [data-xh-collection-item][data-xh-collection-context='page']:is([aria-selected='true'], [data-selected]):not([aria-disabled='true'], [data-disabled], [aria-busy='true'], [data-error]):hover {
574
+ --xh-_collection-bg: Highlight;
575
+ --xh-_collection-fg: HighlightText;
576
+ --xh-_collection-outline: transparent;
577
+ --xh-_collection-indicator-fg: HighlightText;
578
+ }
579
+
580
+ [data-xh-collection-item][data-xh-collection-context='page']:is([aria-selected='true'], [data-selected]):not([aria-disabled='true'], [data-disabled], [aria-busy='true'], [data-error]):is(:focus-visible, [data-highlighted]) {
581
+ --xh-_collection-bg: Highlight;
582
+ --xh-_collection-fg: HighlightText;
583
+ --xh-_collection-outline: HighlightText;
584
+ --xh-_collection-indicator-fg: HighlightText;
585
+ }
586
+
587
+ [data-xh-collection-item][data-xh-collection-context='page']:is([aria-selected='true'], [data-selected]):not([aria-disabled='true'], [data-disabled], [aria-busy='true'], [data-error]):is(:active, [data-pressed]) {
588
+ --xh-_collection-bg: Highlight;
589
+ --xh-_collection-fg: HighlightText;
590
+ --xh-_collection-outline: transparent;
591
+ --xh-_collection-indicator-fg: HighlightText;
592
+ }
593
+
594
+ [data-xh-collection-item][data-xh-collection-context='page'][data-current]:not([aria-disabled='true'], [data-disabled], [aria-busy='true'], [data-error]) {
595
+ --xh-_collection-bg: Highlight;
596
+ --xh-_collection-fg: HighlightText;
597
+ --xh-_collection-outline: transparent;
598
+ --xh-_collection-indicator-fg: HighlightText;
599
+ }
600
+
601
+ [data-xh-collection-item][data-xh-collection-context='page'][data-current]:not([aria-disabled='true'], [data-disabled], [aria-busy='true'], [data-error]):hover {
602
+ --xh-_collection-bg: Highlight;
603
+ --xh-_collection-fg: HighlightText;
604
+ --xh-_collection-outline: transparent;
605
+ --xh-_collection-indicator-fg: HighlightText;
606
+ }
607
+
608
+ [data-xh-collection-item][data-xh-collection-context='page'][data-current]:not([aria-disabled='true'], [data-disabled], [aria-busy='true'], [data-error]):is(:focus-visible, [data-highlighted]) {
609
+ --xh-_collection-bg: Highlight;
610
+ --xh-_collection-fg: HighlightText;
611
+ --xh-_collection-outline: HighlightText;
612
+ --xh-_collection-indicator-fg: HighlightText;
613
+ }
614
+
615
+ [data-xh-collection-item][data-xh-collection-context='page'][data-current]:not([aria-disabled='true'], [data-disabled], [aria-busy='true'], [data-error]):is(:active, [data-pressed]) {
616
+ --xh-_collection-bg: Highlight;
617
+ --xh-_collection-fg: HighlightText;
618
+ --xh-_collection-outline: transparent;
619
+ --xh-_collection-indicator-fg: HighlightText;
620
+ }
621
+
622
+ [data-xh-collection-item][data-xh-collection-context='nav'] {
623
+ --xh-_collection-bg: Canvas;
624
+ --xh-_collection-fg: CanvasText;
625
+ --xh-_collection-outline: transparent;
626
+ --xh-_collection-indicator-fg: ButtonText;
627
+ }
628
+
629
+ [data-xh-collection-item][data-xh-collection-context='nav']:not([aria-disabled='true'], [data-disabled], [aria-busy='true'], [data-error]):hover {
630
+ --xh-_collection-bg: Highlight;
631
+ --xh-_collection-fg: HighlightText;
632
+ --xh-_collection-outline: transparent;
633
+ --xh-_collection-indicator-fg: HighlightText;
634
+ }
635
+
636
+ [data-xh-collection-item][data-xh-collection-context='nav']:not([aria-disabled='true'], [data-disabled], [aria-busy='true'], [data-error]):is(:focus-visible, [data-highlighted]) {
637
+ --xh-_collection-bg: Canvas;
638
+ --xh-_collection-fg: CanvasText;
639
+ --xh-_collection-outline: Highlight;
640
+ --xh-_collection-indicator-fg: Highlight;
641
+ }
642
+
643
+ [data-xh-collection-item][data-xh-collection-context='nav']:not([aria-disabled='true'], [data-disabled], [aria-busy='true'], [data-error]):is(:active, [data-pressed]) {
644
+ --xh-_collection-bg: Highlight;
645
+ --xh-_collection-fg: HighlightText;
646
+ --xh-_collection-outline: transparent;
647
+ --xh-_collection-indicator-fg: HighlightText;
648
+ }
649
+
650
+ [data-xh-collection-item][data-xh-collection-context='nav'][data-in-path] {
651
+ --xh-_collection-bg: Canvas;
652
+ --xh-_collection-fg: CanvasText;
653
+ --xh-_collection-outline: Highlight;
654
+ --xh-_collection-indicator-fg: Highlight;
655
+ }
656
+
657
+ [data-xh-collection-item][data-xh-collection-context='nav'][data-current]:not([aria-disabled='true'], [data-disabled], [aria-busy='true'], [data-error]) {
658
+ --xh-_collection-bg: Canvas;
659
+ --xh-_collection-fg: CanvasText;
660
+ --xh-_collection-outline: transparent;
661
+ --xh-_collection-indicator-fg: ButtonText;
662
+ }
663
+
664
+ [data-xh-collection-item][data-xh-collection-context='nav'][data-current]:not([aria-disabled='true'], [data-disabled], [aria-busy='true'], [data-error]):hover {
665
+ --xh-_collection-bg: Highlight;
666
+ --xh-_collection-fg: HighlightText;
667
+ --xh-_collection-outline: transparent;
668
+ --xh-_collection-indicator-fg: HighlightText;
669
+ }
670
+
671
+ [data-xh-collection-item][data-xh-collection-context='nav'][data-current]:not([aria-disabled='true'], [data-disabled], [aria-busy='true'], [data-error]):is(:focus-visible, [data-highlighted]) {
672
+ --xh-_collection-bg: Canvas;
673
+ --xh-_collection-fg: CanvasText;
674
+ --xh-_collection-outline: Highlight;
675
+ --xh-_collection-indicator-fg: Highlight;
676
+ }
677
+
678
+ [data-xh-collection-item][data-xh-collection-context='nav'][data-current]:not([aria-disabled='true'], [data-disabled], [aria-busy='true'], [data-error]):is(:active, [data-pressed]) {
679
+ --xh-_collection-bg: Highlight;
680
+ --xh-_collection-fg: HighlightText;
681
+ --xh-_collection-outline: transparent;
682
+ --xh-_collection-indicator-fg: HighlightText;
683
+ }
684
+
685
+ [data-xh-collection-item][data-xh-collection-context='nav'][data-current][data-xh-collection-terminal] {
686
+ --xh-_collection-bg: Canvas;
687
+ --xh-_collection-fg: CanvasText;
688
+ --xh-_collection-outline: transparent;
689
+ --xh-_collection-indicator-fg: ButtonText;
690
+ }
691
+
692
+ [data-xh-collection-item][data-state='checked'] {
693
+ --xh-_collection-indicator-fg: Highlight;
694
+ }
695
+
696
+ [data-xh-collection-item][aria-disabled='true'] {
697
+ --xh-_collection-bg: Canvas;
698
+ --xh-_collection-fg: GrayText;
699
+ --xh-_collection-outline: transparent;
700
+ --xh-_collection-indicator-fg: GrayText;
701
+ }
702
+
703
+ [data-xh-collection-item][aria-busy='true'] {
704
+ --xh-_collection-bg: Canvas;
705
+ --xh-_collection-fg: CanvasText;
706
+ --xh-_collection-outline: Highlight;
707
+ --xh-_collection-indicator-fg: Highlight;
708
+ }
709
+
710
+ [data-xh-collection-item][data-error] {
711
+ --xh-_collection-bg: Canvas;
712
+ --xh-_collection-fg: CanvasText;
713
+ --xh-_collection-outline: Highlight;
714
+ --xh-_collection-indicator-fg: Highlight;
715
+ }
716
+
717
+ [data-xh-collection-separator] {
718
+ background-color: CanvasText;
719
+ }
720
+ }
721
+ }