@qeetrix/react 0.0.1 → 0.0.4

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 (263) hide show
  1. package/CHANGELOG.md +288 -0
  2. package/README.md +240 -4
  3. package/dist/accordion/accordion.d.ts +42 -0
  4. package/dist/accordion/accordion.js +72 -0
  5. package/dist/accordion/index.d.ts +2 -0
  6. package/dist/accordion/index.js +1 -0
  7. package/dist/avatar/avatar.d.ts +21 -0
  8. package/dist/avatar/avatar.js +43 -0
  9. package/dist/avatar/index.d.ts +2 -0
  10. package/dist/avatar/index.js +1 -0
  11. package/dist/badge/badge.d.ts +14 -0
  12. package/dist/badge/badge.js +25 -0
  13. package/dist/badge/index.d.ts +2 -0
  14. package/dist/badge/index.js +1 -0
  15. package/dist/box/box.d.ts +27 -0
  16. package/dist/box/box.js +21 -0
  17. package/dist/box/index.d.ts +2 -0
  18. package/dist/box/index.js +1 -0
  19. package/dist/button/button.d.ts +50 -0
  20. package/dist/button/button.js +78 -0
  21. package/dist/button/index.d.ts +2 -0
  22. package/dist/button/index.js +1 -0
  23. package/dist/card/card.d.ts +30 -0
  24. package/dist/card/card.js +56 -0
  25. package/dist/card/index.d.ts +2 -0
  26. package/dist/card/index.js +1 -0
  27. package/dist/checkbox/checkbox.d.ts +33 -0
  28. package/dist/checkbox/checkbox.js +61 -0
  29. package/dist/checkbox/index.d.ts +2 -0
  30. package/dist/checkbox/index.js +1 -0
  31. package/dist/css/accordion.css +73 -0
  32. package/dist/css/avatar.css +50 -0
  33. package/dist/css/badge.css +59 -0
  34. package/dist/css/box.css +163 -0
  35. package/dist/css/button.css +243 -0
  36. package/dist/css/card.css +75 -0
  37. package/dist/css/checkbox.css +67 -0
  38. package/dist/css/dialog.css +128 -0
  39. package/dist/css/drawer.css +129 -0
  40. package/dist/css/experimental/alert.css +89 -0
  41. package/dist/css/experimental/app-shell.css +258 -0
  42. package/dist/css/experimental/breadcrumb.css +67 -0
  43. package/dist/css/experimental/copy-button.css +13 -0
  44. package/dist/css/experimental/empty-state.css +63 -0
  45. package/dist/css/experimental/otp-input.css +84 -0
  46. package/dist/css/experimental/page-header.css +110 -0
  47. package/dist/css/experimental/password-input.css +21 -0
  48. package/dist/css/experimental/sidebar.css +234 -0
  49. package/dist/css/experimental/stat.css +115 -0
  50. package/dist/css/experimental/top-bar.css +299 -0
  51. package/dist/css/field.css +121 -0
  52. package/dist/css/fieldset.css +37 -0
  53. package/dist/css/grid.css +86 -0
  54. package/dist/css/heading.css +93 -0
  55. package/dist/css/inline.css +85 -0
  56. package/dist/css/input.css +108 -0
  57. package/dist/css/link.css +45 -0
  58. package/dist/css/menu.css +166 -0
  59. package/dist/css/popover.css +72 -0
  60. package/dist/css/progress.css +102 -0
  61. package/dist/css/radio.css +54 -0
  62. package/dist/css/scroll-area.css +70 -0
  63. package/dist/css/select.css +189 -0
  64. package/dist/css/separator.css +35 -0
  65. package/dist/css/skeleton.css +39 -0
  66. package/dist/css/skip-link.css +33 -0
  67. package/dist/css/slider.css +108 -0
  68. package/dist/css/spinner.css +55 -0
  69. package/dist/css/stack.css +76 -0
  70. package/dist/css/switch.css +112 -0
  71. package/dist/css/table.css +68 -0
  72. package/dist/css/tabs.css +123 -0
  73. package/dist/css/text-field.css +4 -0
  74. package/dist/css/text.css +106 -0
  75. package/dist/css/toast.css +115 -0
  76. package/dist/css/toggle.css +125 -0
  77. package/dist/css/tooltip.css +47 -0
  78. package/dist/css/visually-hidden.css +15 -0
  79. package/dist/dialog/dialog.d.ts +54 -0
  80. package/dist/dialog/dialog.js +121 -0
  81. package/dist/dialog/index.d.ts +2 -0
  82. package/dist/dialog/index.js +1 -0
  83. package/dist/drawer/drawer.d.ts +49 -0
  84. package/dist/drawer/drawer.js +102 -0
  85. package/dist/drawer/index.d.ts +2 -0
  86. package/dist/drawer/index.js +1 -0
  87. package/dist/experimental/alert/alert.d.ts +29 -0
  88. package/dist/experimental/alert/alert.js +72 -0
  89. package/dist/experimental/alert/index.d.ts +2 -0
  90. package/dist/experimental/app-shell/app-shell.d.ts +60 -0
  91. package/dist/experimental/app-shell/app-shell.js +224 -0
  92. package/dist/experimental/app-shell/index.d.ts +2 -0
  93. package/dist/experimental/breadcrumb/breadcrumb.d.ts +27 -0
  94. package/dist/experimental/breadcrumb/breadcrumb.js +48 -0
  95. package/dist/experimental/breadcrumb/index.d.ts +2 -0
  96. package/dist/experimental/copy-button/copy-button.d.ts +27 -0
  97. package/dist/experimental/copy-button/copy-button.js +61 -0
  98. package/dist/experimental/copy-button/index.d.ts +2 -0
  99. package/dist/experimental/empty-state/data-state.d.ts +23 -0
  100. package/dist/experimental/empty-state/data-state.js +40 -0
  101. package/dist/experimental/empty-state/empty-state.d.ts +26 -0
  102. package/dist/experimental/empty-state/empty-state.js +46 -0
  103. package/dist/experimental/empty-state/index.d.ts +3 -0
  104. package/dist/experimental/index.d.ts +24 -0
  105. package/dist/experimental/index.js +13 -0
  106. package/dist/experimental/otp-input/index.d.ts +2 -0
  107. package/dist/experimental/otp-input/otp-input.d.ts +27 -0
  108. package/dist/experimental/otp-input/otp-input.js +39 -0
  109. package/dist/experimental/page-header/index.d.ts +2 -0
  110. package/dist/experimental/page-header/page-header.d.ts +32 -0
  111. package/dist/experimental/page-header/page-header.js +73 -0
  112. package/dist/experimental/password-input/index.d.ts +2 -0
  113. package/dist/experimental/password-input/password-input.d.ts +26 -0
  114. package/dist/experimental/password-input/password-input.js +103 -0
  115. package/dist/experimental/sidebar/index.d.ts +2 -0
  116. package/dist/experimental/sidebar/sidebar.d.ts +64 -0
  117. package/dist/experimental/sidebar/sidebar.js +200 -0
  118. package/dist/experimental/stat/index.d.ts +2 -0
  119. package/dist/experimental/stat/stat.d.ts +31 -0
  120. package/dist/experimental/stat/stat.js +90 -0
  121. package/dist/experimental/top-bar/index.d.ts +2 -0
  122. package/dist/experimental/top-bar/top-bar.d.ts +60 -0
  123. package/dist/experimental/top-bar/top-bar.js +162 -0
  124. package/dist/field/choice.d.ts +21 -0
  125. package/dist/field/choice.js +67 -0
  126. package/dist/field/field.d.ts +31 -0
  127. package/dist/field/field.js +78 -0
  128. package/dist/field/index.d.ts +3 -0
  129. package/dist/field/index.js +1 -0
  130. package/dist/fieldset/fieldset.d.ts +19 -0
  131. package/dist/fieldset/fieldset.js +29 -0
  132. package/dist/fieldset/index.d.ts +2 -0
  133. package/dist/fieldset/index.js +1 -0
  134. package/dist/format/format.d.ts +12 -0
  135. package/dist/format/format.js +50 -0
  136. package/dist/format/index.d.ts +2 -0
  137. package/dist/format/index.js +1 -0
  138. package/dist/grid/grid.d.ts +30 -0
  139. package/dist/grid/grid.js +36 -0
  140. package/dist/grid/index.d.ts +2 -0
  141. package/dist/grid/index.js +1 -0
  142. package/dist/heading/heading.d.ts +23 -0
  143. package/dist/heading/heading.js +30 -0
  144. package/dist/heading/index.d.ts +2 -0
  145. package/dist/heading/index.js +1 -0
  146. package/dist/index.d.ts +84 -1
  147. package/dist/index.js +40 -0
  148. package/dist/inline/index.d.ts +2 -0
  149. package/dist/inline/index.js +1 -0
  150. package/dist/inline/inline.d.ts +19 -0
  151. package/dist/inline/inline.js +16 -0
  152. package/dist/input/index.d.ts +2 -0
  153. package/dist/input/index.js +1 -0
  154. package/dist/input/input.d.ts +37 -0
  155. package/dist/input/input.js +63 -0
  156. package/dist/internal/control.d.ts +9 -0
  157. package/dist/internal/control.js +4 -0
  158. package/dist/internal/cx.js +7 -0
  159. package/dist/internal/media.js +15 -0
  160. package/dist/internal/messages.d.ts +75 -0
  161. package/dist/internal/messages.js +61 -0
  162. package/dist/internal/refs.js +23 -0
  163. package/dist/internal/render.d.ts +6 -0
  164. package/dist/internal/render.js +22 -0
  165. package/dist/internal/space.d.ts +9 -0
  166. package/dist/internal/text.d.ts +5 -0
  167. package/dist/internal/text.js +18 -0
  168. package/dist/link/index.d.ts +2 -0
  169. package/dist/link/index.js +1 -0
  170. package/dist/link/link.d.ts +19 -0
  171. package/dist/link/link.js +32 -0
  172. package/dist/locales/hi.d.ts +8 -0
  173. package/dist/locales/hi.js +60 -0
  174. package/dist/menu/index.d.ts +2 -0
  175. package/dist/menu/index.js +1 -0
  176. package/dist/menu/menu.d.ts +76 -0
  177. package/dist/menu/menu.js +172 -0
  178. package/dist/popover/index.d.ts +2 -0
  179. package/dist/popover/index.js +1 -0
  180. package/dist/popover/popover.d.ts +33 -0
  181. package/dist/popover/popover.js +48 -0
  182. package/dist/progress/index.d.ts +2 -0
  183. package/dist/progress/index.js +1 -0
  184. package/dist/progress/progress.d.ts +26 -0
  185. package/dist/progress/progress.js +62 -0
  186. package/dist/provider/index.d.ts +3 -0
  187. package/dist/provider/index.js +1 -0
  188. package/dist/provider/provider.d.ts +46 -0
  189. package/dist/provider/provider.js +90 -0
  190. package/dist/radio/index.d.ts +2 -0
  191. package/dist/radio/index.js +1 -0
  192. package/dist/radio/radio.d.ts +31 -0
  193. package/dist/radio/radio.js +47 -0
  194. package/dist/scroll-area/index.d.ts +2 -0
  195. package/dist/scroll-area/index.js +1 -0
  196. package/dist/scroll-area/scroll-area.d.ts +18 -0
  197. package/dist/scroll-area/scroll-area.js +39 -0
  198. package/dist/select/index.d.ts +2 -0
  199. package/dist/select/index.js +1 -0
  200. package/dist/select/select.d.ts +36 -0
  201. package/dist/select/select.js +82 -0
  202. package/dist/separator/index.d.ts +2 -0
  203. package/dist/separator/index.js +1 -0
  204. package/dist/separator/separator.d.ts +16 -0
  205. package/dist/separator/separator.js +16 -0
  206. package/dist/skeleton/index.d.ts +2 -0
  207. package/dist/skeleton/index.js +1 -0
  208. package/dist/skeleton/skeleton.d.ts +12 -0
  209. package/dist/skeleton/skeleton.js +18 -0
  210. package/dist/skip-link/index.d.ts +2 -0
  211. package/dist/skip-link/index.js +1 -0
  212. package/dist/skip-link/skip-link.d.ts +13 -0
  213. package/dist/skip-link/skip-link.js +18 -0
  214. package/dist/slider/index.d.ts +2 -0
  215. package/dist/slider/index.js +1 -0
  216. package/dist/slider/slider.d.ts +20 -0
  217. package/dist/slider/slider.js +58 -0
  218. package/dist/spinner/index.d.ts +2 -0
  219. package/dist/spinner/index.js +1 -0
  220. package/dist/spinner/spinner.d.ts +15 -0
  221. package/dist/spinner/spinner.js +19 -0
  222. package/dist/stack/index.d.ts +2 -0
  223. package/dist/stack/index.js +1 -0
  224. package/dist/stack/stack.d.ts +17 -0
  225. package/dist/stack/stack.js +15 -0
  226. package/dist/styles.css +4548 -0
  227. package/dist/switch/index.d.ts +2 -0
  228. package/dist/switch/index.js +1 -0
  229. package/dist/switch/switch.d.ts +18 -0
  230. package/dist/switch/switch.js +31 -0
  231. package/dist/table/index.d.ts +2 -0
  232. package/dist/table/index.js +1 -0
  233. package/dist/table/table.d.ts +36 -0
  234. package/dist/table/table.js +69 -0
  235. package/dist/tabs/index.d.ts +2 -0
  236. package/dist/tabs/index.js +1 -0
  237. package/dist/tabs/tabs.d.ts +43 -0
  238. package/dist/tabs/tabs.js +66 -0
  239. package/dist/text/index.d.ts +3 -0
  240. package/dist/text/index.js +1 -0
  241. package/dist/text/text.d.ts +24 -0
  242. package/dist/text/text.js +24 -0
  243. package/dist/text-field/index.d.ts +2 -0
  244. package/dist/text-field/index.js +1 -0
  245. package/dist/text-field/text-field.d.ts +15 -0
  246. package/dist/text-field/text-field.js +43 -0
  247. package/dist/toast/index.d.ts +2 -0
  248. package/dist/toast/index.js +1 -0
  249. package/dist/toast/toast.d.ts +57 -0
  250. package/dist/toast/toast.js +124 -0
  251. package/dist/toggle/index.d.ts +2 -0
  252. package/dist/toggle/index.js +1 -0
  253. package/dist/toggle/toggle.d.ts +48 -0
  254. package/dist/toggle/toggle.js +54 -0
  255. package/dist/tooltip/index.d.ts +2 -0
  256. package/dist/tooltip/index.js +1 -0
  257. package/dist/tooltip/tooltip.d.ts +26 -0
  258. package/dist/tooltip/tooltip.js +39 -0
  259. package/dist/visually-hidden/index.d.ts +2 -0
  260. package/dist/visually-hidden/index.js +1 -0
  261. package/dist/visually-hidden/visually-hidden.d.ts +8 -0
  262. package/dist/visually-hidden/visually-hidden.js +12 -0
  263. package/package.json +170 -2
package/dist/styles.css CHANGED
@@ -10,3 +10,4551 @@
10
10
  box-sizing: border-box;
11
11
  }
12
12
  }
13
+
14
+ @layer qx.components {
15
+ .qx-accordion {
16
+ border-block-end: var(--qx-border-width-default) solid var(--qx-color-border-subtle);
17
+ flex-direction: column;
18
+ min-inline-size: 0;
19
+ display: flex;
20
+ }
21
+
22
+ .qx-accordion-item {
23
+ border-block-start: var(--qx-border-width-default) solid var(--qx-color-border-subtle);
24
+ }
25
+
26
+ .qx-accordion-header {
27
+ margin: 0;
28
+ }
29
+
30
+ .qx-accordion-trigger {
31
+ justify-content: space-between;
32
+ align-items: center;
33
+ gap: var(--qx-space-gap-md);
34
+ inline-size: 100%;
35
+ min-block-size: var(--qx-size-control-lg);
36
+ color: var(--qx-color-text-default);
37
+ font: var(--qx-typography-title-sm);
38
+ font-variation-settings: "GEOM" var(--qx-font-geometry-heading);
39
+ text-align: start;
40
+ cursor: pointer;
41
+ background: none;
42
+ border: 0;
43
+ padding: 0;
44
+ display: flex;
45
+ }
46
+
47
+ .qx-accordion-trigger:focus-visible {
48
+ outline: var(--qx-focus-ring-width) solid var(--qx-color-border-focus);
49
+ outline-offset: calc(-1 * var(--qx-focus-ring-width));
50
+ }
51
+
52
+ .qx-accordion-trigger[data-disabled] {
53
+ color: var(--qx-color-text-disabled);
54
+ cursor: not-allowed;
55
+ }
56
+
57
+ .qx-accordion-icon {
58
+ color: var(--qx-color-icon-subtle);
59
+ transition-property: rotate;
60
+ transition-duration: var(--qx-motion-duration-normal);
61
+ transition-timing-function: var(--qx-motion-easing-standard);
62
+ flex: none;
63
+ }
64
+
65
+ [data-panel-open] > .qx-accordion-icon {
66
+ rotate: 180deg;
67
+ }
68
+
69
+ .qx-accordion-panel, .qx-collapsible-panel {
70
+ block-size: var(--accordion-panel-height, var(--collapsible-panel-height));
71
+ transition-property: block-size;
72
+ transition-duration: var(--qx-motion-duration-normal);
73
+ transition-timing-function: var(--qx-motion-easing-standard);
74
+ overflow: hidden;
75
+ }
76
+
77
+ :is(.qx-accordion-panel, .qx-collapsible-panel)[data-starting-style], :is(.qx-accordion-panel, .qx-collapsible-panel)[data-ending-style] {
78
+ block-size: 0;
79
+ }
80
+
81
+ .qx-accordion-content {
82
+ padding-block-end: var(--qx-space-inset-lg);
83
+ }
84
+ }
85
+
86
+ @layer qx.components {
87
+ .qx-avatar {
88
+ border-radius: var(--qx-radius-full);
89
+ background: var(--qx-color-bg-neutral-subtle-pressed);
90
+ block-size: 32px;
91
+ inline-size: 32px;
92
+ color: var(--qx-color-text-default);
93
+ font: var(--qx-typography-label-sm);
94
+ font-variation-settings: "GEOM" var(--qx-font-geometry-body);
95
+ vertical-align: middle;
96
+ -webkit-user-select: none;
97
+ user-select: none;
98
+ flex: none;
99
+ place-items: center;
100
+ display: inline-grid;
101
+ overflow: hidden;
102
+ }
103
+
104
+ .qx-avatar[data-size="sm"] {
105
+ block-size: 24px;
106
+ inline-size: 24px;
107
+ font-size: var(--qx-typography-label-sm-font-size);
108
+ }
109
+
110
+ .qx-avatar[data-size="lg"] {
111
+ block-size: 40px;
112
+ inline-size: 40px;
113
+ font: var(--qx-typography-label-md);
114
+ }
115
+
116
+ .qx-avatar[data-size="xl"] {
117
+ block-size: 48px;
118
+ inline-size: 48px;
119
+ font: var(--qx-typography-label-md);
120
+ }
121
+
122
+ .qx-avatar-image {
123
+ object-fit: cover;
124
+ block-size: 100%;
125
+ inline-size: 100%;
126
+ }
127
+
128
+ @media (forced-colors: active) {
129
+ .qx-avatar {
130
+ border: var(--qx-border-width-default) solid CanvasText;
131
+ }
132
+ }
133
+ }
134
+
135
+ @layer qx.components {
136
+ .qx-badge {
137
+ align-items: center;
138
+ gap: var(--qx-space-gap-xs);
139
+ border-radius: var(--qx-radius-chip);
140
+ background: var(--qx-color-bg-neutral-subtle-pressed);
141
+ max-inline-size: 100%;
142
+ color: var(--qx-color-text-default);
143
+ font: var(--qx-typography-label-sm);
144
+ font-variation-settings: "GEOM" var(--qx-font-geometry-body);
145
+ white-space: nowrap;
146
+ vertical-align: middle;
147
+ padding: 2px 8px;
148
+ display: inline-flex;
149
+ }
150
+
151
+ .qx-badge[data-tone="brand"] {
152
+ background: var(--qx-color-bg-brand-subtle);
153
+ color: var(--qx-color-text-brand);
154
+ }
155
+
156
+ .qx-badge[data-tone="info"] {
157
+ background: var(--qx-color-bg-info-subtle);
158
+ color: var(--qx-color-text-info);
159
+ }
160
+
161
+ .qx-badge[data-tone="success"] {
162
+ background: var(--qx-color-bg-success-subtle);
163
+ color: var(--qx-color-text-success);
164
+ }
165
+
166
+ .qx-badge[data-tone="warning"] {
167
+ background: var(--qx-color-bg-warning-subtle);
168
+ color: var(--qx-color-text-warning);
169
+ }
170
+
171
+ .qx-badge[data-tone="danger"] {
172
+ background: var(--qx-color-bg-danger-subtle);
173
+ color: var(--qx-color-text-danger);
174
+ }
175
+
176
+ .qx-badge-icon {
177
+ flex: none;
178
+ }
179
+
180
+ .qx-badge-label {
181
+ text-overflow: ellipsis;
182
+ min-inline-size: 0;
183
+ overflow: hidden;
184
+ }
185
+
186
+ @media (forced-colors: active) {
187
+ .qx-badge {
188
+ border: var(--qx-border-width-default) solid CanvasText;
189
+ }
190
+ }
191
+ }
192
+
193
+ @layer qx.components {
194
+ .qx-box[data-padding="none"] {
195
+ padding: 0;
196
+ }
197
+
198
+ .qx-box[data-padding="xs"] {
199
+ padding: var(--qx-space-inset-xs);
200
+ }
201
+
202
+ .qx-box[data-padding="sm"] {
203
+ padding: var(--qx-space-inset-sm);
204
+ }
205
+
206
+ .qx-box[data-padding="md"] {
207
+ padding: var(--qx-space-inset-md);
208
+ }
209
+
210
+ .qx-box[data-padding="lg"] {
211
+ padding: var(--qx-space-inset-lg);
212
+ }
213
+
214
+ .qx-box[data-padding="xl"] {
215
+ padding: var(--qx-space-inset-xl);
216
+ }
217
+
218
+ .qx-box[data-padding-inline="none"] {
219
+ padding-inline: 0;
220
+ }
221
+
222
+ .qx-box[data-padding-inline="xs"] {
223
+ padding-inline: var(--qx-space-inset-xs);
224
+ }
225
+
226
+ .qx-box[data-padding-inline="sm"] {
227
+ padding-inline: var(--qx-space-inset-sm);
228
+ }
229
+
230
+ .qx-box[data-padding-inline="md"] {
231
+ padding-inline: var(--qx-space-inset-md);
232
+ }
233
+
234
+ .qx-box[data-padding-inline="lg"] {
235
+ padding-inline: var(--qx-space-inset-lg);
236
+ }
237
+
238
+ .qx-box[data-padding-inline="xl"] {
239
+ padding-inline: var(--qx-space-inset-xl);
240
+ }
241
+
242
+ .qx-box[data-padding-block="none"] {
243
+ padding-block: 0;
244
+ }
245
+
246
+ .qx-box[data-padding-block="xs"] {
247
+ padding-block: var(--qx-space-inset-xs);
248
+ }
249
+
250
+ .qx-box[data-padding-block="sm"] {
251
+ padding-block: var(--qx-space-inset-sm);
252
+ }
253
+
254
+ .qx-box[data-padding-block="md"] {
255
+ padding-block: var(--qx-space-inset-md);
256
+ }
257
+
258
+ .qx-box[data-padding-block="lg"] {
259
+ padding-block: var(--qx-space-inset-lg);
260
+ }
261
+
262
+ .qx-box[data-padding-block="xl"] {
263
+ padding-block: var(--qx-space-inset-xl);
264
+ }
265
+
266
+ .qx-box[data-background="canvas"] {
267
+ background: var(--qx-color-surface-canvas);
268
+ }
269
+
270
+ .qx-box[data-background="default"] {
271
+ background: var(--qx-color-surface-default);
272
+ }
273
+
274
+ .qx-box[data-background="raised"] {
275
+ background: var(--qx-color-surface-raised);
276
+ }
277
+
278
+ .qx-box[data-background="sunken"] {
279
+ background: var(--qx-color-surface-sunken);
280
+ }
281
+
282
+ .qx-box[data-background="overlay"] {
283
+ background: var(--qx-color-surface-overlay);
284
+ }
285
+
286
+ .qx-box[data-background="inverse"] {
287
+ background: var(--qx-color-surface-inverse);
288
+ }
289
+
290
+ .qx-box[data-background="neutral"] {
291
+ background: var(--qx-color-bg-neutral-subtle);
292
+ }
293
+
294
+ .qx-box[data-background="brand"] {
295
+ background: var(--qx-color-bg-brand-subtle);
296
+ }
297
+
298
+ .qx-box[data-background="selected"] {
299
+ background: var(--qx-color-bg-selected);
300
+ }
301
+
302
+ .qx-box[data-background="inverse"] {
303
+ color: var(--qx-color-text-inverse);
304
+ }
305
+
306
+ .qx-box[data-border="none"] {
307
+ border: 0;
308
+ }
309
+
310
+ .qx-box[data-border="subtle"] {
311
+ border: var(--qx-border-width-default) solid var(--qx-color-border-subtle);
312
+ }
313
+
314
+ .qx-box[data-border="default"] {
315
+ border: var(--qx-border-width-default) solid var(--qx-color-border-default);
316
+ }
317
+
318
+ .qx-box[data-border="strong"] {
319
+ border: var(--qx-border-width-default) solid var(--qx-color-border-strong);
320
+ }
321
+
322
+ .qx-box[data-radius="none"] {
323
+ border-radius: var(--qx-radius-none);
324
+ }
325
+
326
+ .qx-box[data-radius="sm"] {
327
+ border-radius: var(--qx-radius-sm);
328
+ }
329
+
330
+ .qx-box[data-radius="control"] {
331
+ border-radius: var(--qx-radius-control);
332
+ }
333
+
334
+ .qx-box[data-radius="surface"] {
335
+ border-radius: var(--qx-radius-surface);
336
+ }
337
+
338
+ .qx-box[data-radius="overlay"] {
339
+ border-radius: var(--qx-radius-overlay);
340
+ }
341
+
342
+ .qx-box[data-radius="modal"] {
343
+ border-radius: var(--qx-radius-modal);
344
+ }
345
+
346
+ .qx-box[data-radius="chip"] {
347
+ border-radius: var(--qx-radius-chip);
348
+ }
349
+
350
+ .qx-box[data-radius="full"] {
351
+ border-radius: var(--qx-radius-full);
352
+ }
353
+ }
354
+
355
+ @layer qx.components {
356
+ .qx-button {
357
+ block-size: var(--qx-size-control-md);
358
+ border-radius: var(--qx-radius-control);
359
+ font: var(--qx-typography-label-md);
360
+ font-variation-settings: "GEOM" var(--qx-font-geometry-body);
361
+ white-space: nowrap;
362
+ cursor: pointer;
363
+ -webkit-user-select: none;
364
+ user-select: none;
365
+ transition-property: background-color, color, box-shadow;
366
+ transition-duration: var(--qx-motion-duration-fast);
367
+ transition-timing-function: var(--qx-motion-easing-standard);
368
+ border: 0;
369
+ justify-content: space-between;
370
+ align-items: center;
371
+ gap: 12px;
372
+ padding-inline: 14px 0;
373
+ text-decoration: none;
374
+ display: inline-flex;
375
+ position: relative;
376
+ }
377
+
378
+ .qx-button:not([data-icon]):not([data-loading]) {
379
+ padding-inline: 14px;
380
+ }
381
+
382
+ .qx-button[data-size="sm"] {
383
+ block-size: var(--qx-size-control-sm);
384
+ font-size: var(--qx-typography-label-sm-font-size);
385
+ line-height: var(--qx-typography-label-sm-line-height);
386
+ gap: 8px;
387
+ padding-inline: 10px 0;
388
+ }
389
+
390
+ .qx-button[data-size="sm"]:not([data-icon]):not([data-loading]) {
391
+ padding-inline: 10px;
392
+ }
393
+
394
+ .qx-button[data-size="lg"] {
395
+ block-size: var(--qx-size-control-lg);
396
+ gap: 14px;
397
+ padding-inline: 16px 0;
398
+ }
399
+
400
+ .qx-button[data-size="lg"]:not([data-icon]):not([data-loading]) {
401
+ padding-inline: 16px;
402
+ }
403
+
404
+ .qx-button[data-full-width] {
405
+ inline-size: 100%;
406
+ }
407
+
408
+ .qx-button[data-variant="solid"] {
409
+ background: var(--qx-color-bg-brand-bold);
410
+ color: var(--qx-color-text-on-brand);
411
+ }
412
+
413
+ .qx-button[data-variant="solid"]:hover:not([data-disabled]) {
414
+ background: var(--qx-color-bg-brand-bold-hover);
415
+ }
416
+
417
+ .qx-button[data-variant="solid"]:active:not([data-disabled]) {
418
+ background: var(--qx-color-bg-brand-bold-pressed);
419
+ }
420
+
421
+ .qx-button[data-variant="soft"] {
422
+ background: var(--qx-color-bg-neutral-bold);
423
+ color: var(--qx-color-text-inverse);
424
+ }
425
+
426
+ .qx-button[data-variant="soft"]:hover:not([data-disabled]) {
427
+ background: var(--qx-color-bg-neutral-bold-hover);
428
+ }
429
+
430
+ .qx-button[data-variant="soft"]:active:not([data-disabled]) {
431
+ background: var(--qx-color-bg-neutral-bold-pressed);
432
+ }
433
+
434
+ .qx-button[data-variant="ghost"] {
435
+ color: var(--qx-color-text-brand);
436
+ background: none;
437
+ }
438
+
439
+ .qx-button[data-variant="ghost"]:hover:not([data-disabled]) {
440
+ background: var(--qx-color-bg-brand-subtle);
441
+ }
442
+
443
+ .qx-button[data-variant="ghost"]:active:not([data-disabled]) {
444
+ background: var(--qx-color-bg-brand-subtle-pressed);
445
+ }
446
+
447
+ .qx-button[data-tone="danger"]:not([data-variant="ghost"]) {
448
+ background: var(--qx-color-bg-danger-bold);
449
+ color: var(--qx-color-text-on-bold);
450
+ }
451
+
452
+ .qx-button[data-tone="danger"]:not([data-variant="ghost"]):hover:not([data-disabled]) {
453
+ background: var(--qx-color-bg-danger-bold-hover);
454
+ }
455
+
456
+ .qx-button[data-tone="danger"]:not([data-variant="ghost"]):active:not([data-disabled]) {
457
+ background: var(--qx-color-bg-danger-bold-pressed);
458
+ }
459
+
460
+ .qx-button[data-tone="danger"][data-variant="ghost"] {
461
+ color: var(--qx-color-text-danger);
462
+ }
463
+
464
+ .qx-button[data-tone="danger"][data-variant="ghost"]:hover:not([data-disabled]) {
465
+ background: var(--qx-color-bg-danger-subtle);
466
+ }
467
+
468
+ .qx-button[data-tone="neutral"][data-variant="ghost"] {
469
+ color: var(--qx-color-text-subtle);
470
+ }
471
+
472
+ .qx-button[data-tone="neutral"][data-variant="ghost"]:hover:not([data-disabled]) {
473
+ background: var(--qx-color-bg-neutral-subtle);
474
+ color: var(--qx-color-text-default);
475
+ }
476
+
477
+ .qx-button[data-tone="neutral"][data-variant="ghost"]:active:not([data-disabled]) {
478
+ background: var(--qx-color-bg-neutral-subtle-pressed);
479
+ }
480
+
481
+ .qx-button[data-tone="neutral"]:not([data-variant="ghost"]) {
482
+ background: var(--qx-color-bg-neutral-bold);
483
+ color: var(--qx-color-text-inverse);
484
+ }
485
+
486
+ .qx-button[data-disabled]:not([data-loading]) {
487
+ background: var(--qx-color-bg-disabled);
488
+ color: var(--qx-color-text-disabled);
489
+ cursor: not-allowed;
490
+ }
491
+
492
+ .qx-button[data-variant="ghost"][data-disabled]:not([data-loading]) {
493
+ background: none;
494
+ }
495
+
496
+ .qx-button[data-loading] {
497
+ cursor: progress;
498
+ }
499
+
500
+ .qx-button:focus-visible {
501
+ outline: var(--qx-focus-ring-width) solid var(--qx-color-border-focus);
502
+ outline-offset: calc(-1 * var(--qx-focus-ring-width));
503
+ box-shadow: inset 0 0 0 calc(var(--qx-focus-ring-width) + var(--qx-border-width-default))
504
+ var(--qx-color-surface-default);
505
+ }
506
+
507
+ .qx-button .qx-button-label {
508
+ text-overflow: ellipsis;
509
+ min-inline-size: 0;
510
+ overflow: hidden;
511
+ }
512
+
513
+ .qx-button .qx-button-icon {
514
+ flex: none;
515
+ }
516
+
517
+ .qx-button-zone {
518
+ flex: none;
519
+ align-self: stretch;
520
+ place-items: center;
521
+ padding-inline: 10px;
522
+ display: grid;
523
+ position: relative;
524
+ }
525
+
526
+ .qx-button-zone:before {
527
+ content: "";
528
+ inline-size: var(--qx-border-width-default);
529
+ block-size: var(--qx-size-icon-sm);
530
+ opacity: .55;
531
+ background: currentColor;
532
+ position: absolute;
533
+ inset-block-start: 50%;
534
+ inset-inline-start: 0;
535
+ translate: 0 -50%;
536
+ }
537
+
538
+ .qx-button[data-size="sm"] > .qx-button-zone {
539
+ padding-inline: 8px;
540
+ }
541
+
542
+ .qx-button[data-size="sm"] > .qx-button-zone:before {
543
+ block-size: var(--qx-size-icon-xs);
544
+ }
545
+
546
+ .qx-button[data-size="lg"] > .qx-button-zone {
547
+ padding-inline: 12px;
548
+ }
549
+
550
+ .qx-button[data-size="lg"] > .qx-button-zone:before {
551
+ block-size: var(--qx-size-icon-md);
552
+ }
553
+
554
+ .qx-icon-button {
555
+ inline-size: var(--qx-size-control-md);
556
+ justify-content: center;
557
+ padding-inline: 0;
558
+ }
559
+
560
+ .qx-icon-button[data-size="sm"] {
561
+ inline-size: var(--qx-size-control-sm);
562
+ padding-inline: 0;
563
+ }
564
+
565
+ .qx-icon-button[data-size="lg"] {
566
+ inline-size: var(--qx-size-control-lg);
567
+ padding-inline: 0;
568
+ }
569
+
570
+ .qx-icon-button:not([data-icon]):not([data-loading]) {
571
+ padding-inline: 0;
572
+ }
573
+
574
+ @media (forced-colors: active) {
575
+ .qx-button {
576
+ border: var(--qx-border-width-default) solid ButtonText;
577
+ }
578
+
579
+ .qx-button[data-disabled]:not([data-loading]) {
580
+ color: graytext;
581
+ border-color: graytext;
582
+ }
583
+
584
+ .qx-button-zone:before {
585
+ opacity: 1;
586
+ background: buttontext;
587
+ }
588
+
589
+ .qx-button[data-disabled]:not([data-loading]) .qx-button-zone:before {
590
+ background: graytext;
591
+ }
592
+ }
593
+ }
594
+
595
+ @layer qx.components {
596
+ .qx-card {
597
+ border: var(--qx-border-width-default) solid var(--qx-color-border-default);
598
+ border-radius: var(--qx-radius-surface);
599
+ background: var(--qx-color-surface-raised);
600
+ min-inline-size: 0;
601
+ color: var(--qx-color-text-default);
602
+ flex-direction: column;
603
+ display: flex;
604
+ overflow: hidden;
605
+ }
606
+
607
+ .qx-card-header {
608
+ justify-content: space-between;
609
+ align-items: flex-start;
610
+ gap: var(--qx-space-gap-md);
611
+ padding: var(--qx-space-inset-lg);
612
+ border-block-end: var(--qx-border-width-default) solid var(--qx-color-border-default);
613
+ display: flex;
614
+ }
615
+
616
+ .qx-card-heading {
617
+ gap: var(--qx-space-gap-xs);
618
+ flex-direction: column;
619
+ min-inline-size: 0;
620
+ display: flex;
621
+ }
622
+
623
+ .qx-card-description {
624
+ font: var(--qx-typography-body-sm);
625
+ font-variation-settings: "GEOM" var(--qx-font-geometry-body);
626
+ color: var(--qx-color-text-subtle);
627
+ margin: 0;
628
+ }
629
+
630
+ .qx-card-actions {
631
+ gap: var(--qx-space-gap-sm);
632
+ flex: none;
633
+ margin-block: -4px;
634
+ display: flex;
635
+ }
636
+
637
+ .qx-card-body {
638
+ min-inline-size: 0;
639
+ padding: var(--qx-space-inset-lg);
640
+ font: var(--qx-typography-body-md);
641
+ font-variation-settings: "GEOM" var(--qx-font-geometry-body);
642
+ flex: 1;
643
+ }
644
+
645
+ .qx-card-body > :is(.qx-table, .qx-scroll-area) {
646
+ inline-size: calc(100% + 2 * var(--qx-space-inset-lg));
647
+ margin-inline: calc(-1 * var(--qx-space-inset-lg));
648
+ }
649
+
650
+ .qx-card-body > :is(.qx-table, .qx-scroll-area):first-child {
651
+ margin-block-start: calc(-1 * var(--qx-space-inset-lg));
652
+ }
653
+
654
+ .qx-card-body > :is(.qx-table, .qx-scroll-area):last-child {
655
+ margin-block-end: calc(-1 * var(--qx-space-inset-lg));
656
+ }
657
+
658
+ .qx-card-footer {
659
+ justify-content: flex-end;
660
+ gap: var(--qx-space-gap-sm);
661
+ padding: var(--qx-space-inset-md);
662
+ border-block-start: var(--qx-border-width-default) solid var(--qx-color-border-default);
663
+ flex-wrap: wrap;
664
+ display: flex;
665
+ }
666
+ }
667
+
668
+ @layer qx.components {
669
+ .qx-checkbox {
670
+ border: var(--qx-border-width-default) solid var(--qx-color-border-strong);
671
+ border-radius: var(--qx-radius-sm);
672
+ background: var(--qx-color-bg-input);
673
+ block-size: 16px;
674
+ inline-size: 16px;
675
+ color: var(--qx-color-icon-on-brand);
676
+ cursor: pointer;
677
+ transition-property: background-color, border-color;
678
+ transition-duration: var(--qx-motion-duration-fast);
679
+ transition-timing-function: var(--qx-motion-easing-standard);
680
+ flex: none;
681
+ place-items: center;
682
+ display: inline-grid;
683
+ }
684
+
685
+ .qx-checkbox:hover:not([data-disabled], [data-readonly]) {
686
+ border-color: var(--qx-color-border-strong-hover);
687
+ }
688
+
689
+ .qx-checkbox[data-invalid] {
690
+ border-color: var(--qx-color-border-danger);
691
+ }
692
+
693
+ .qx-checkbox:is([data-checked], [data-indeterminate]) {
694
+ border-color: var(--qx-color-bg-brand-bold);
695
+ background: var(--qx-color-bg-brand-bold);
696
+ }
697
+
698
+ .qx-checkbox:is([data-checked], [data-indeterminate]):hover:not([data-disabled], [data-readonly]) {
699
+ border-color: var(--qx-color-bg-brand-bold-hover);
700
+ background: var(--qx-color-bg-brand-bold-hover);
701
+ }
702
+
703
+ .qx-checkbox[data-disabled] {
704
+ border-color: var(--qx-color-border-disabled);
705
+ background: var(--qx-color-bg-disabled);
706
+ color: var(--qx-color-icon-disabled);
707
+ cursor: not-allowed;
708
+ }
709
+
710
+ .qx-checkbox[data-readonly] {
711
+ cursor: default;
712
+ }
713
+
714
+ .qx-checkbox:focus-visible {
715
+ outline: var(--qx-focus-ring-width) solid var(--qx-color-border-focus);
716
+ outline-offset: var(--qx-focus-ring-offset);
717
+ }
718
+
719
+ .qx-checkbox-mark {
720
+ display: flex;
721
+ }
722
+
723
+ @media (forced-colors: active) {
724
+ .qx-checkbox:is([data-checked], [data-indeterminate]):not([data-disabled]) {
725
+ forced-color-adjust: none;
726
+ color: highlighttext;
727
+ background: highlight;
728
+ border-color: highlight;
729
+ }
730
+ }
731
+ }
732
+
733
+ @layer qx.components {
734
+ .qx-dialog-backdrop {
735
+ z-index: var(--qx-z-overlay);
736
+ background: var(--qx-color-overlay-scrim);
737
+ transition-property: opacity;
738
+ transition-duration: var(--qx-motion-duration-slow);
739
+ transition-timing-function: var(--qx-motion-easing-enter);
740
+ position: fixed;
741
+ inset: 0;
742
+ }
743
+
744
+ .qx-dialog-backdrop[data-starting-style], .qx-dialog-backdrop[data-ending-style] {
745
+ opacity: 0;
746
+ }
747
+
748
+ .qx-dialog-backdrop[data-ending-style] {
749
+ transition-duration: var(--qx-motion-duration-normal);
750
+ transition-timing-function: var(--qx-motion-easing-exit);
751
+ }
752
+
753
+ .qx-dialog-viewport {
754
+ z-index: var(--qx-z-modal);
755
+ padding: var(--qx-space-inset-xl);
756
+ place-items: center;
757
+ display: grid;
758
+ position: fixed;
759
+ inset: 0;
760
+ }
761
+
762
+ .qx-dialog {
763
+ border-block-start: var(--qx-border-width-accent) solid var(--qx-color-border-brand);
764
+ border-radius: var(--qx-radius-modal);
765
+ background: var(--qx-color-surface-overlay);
766
+ max-block-size: 85vh;
767
+ inline-size: min(100%, 560px);
768
+ box-shadow: var(--qx-shadow-modal);
769
+ color: var(--qx-color-text-default);
770
+ font: var(--qx-typography-body-md);
771
+ font-variation-settings: "GEOM" var(--qx-font-geometry-body);
772
+ transition-property: opacity, translate;
773
+ transition-duration: var(--qx-motion-duration-slow);
774
+ transition-timing-function: var(--qx-motion-easing-enter);
775
+ outline: 0;
776
+ flex-direction: column;
777
+ display: flex;
778
+ position: relative;
779
+ overflow: hidden;
780
+ }
781
+
782
+ .qx-dialog[data-size="sm"] {
783
+ inline-size: min(100%, 400px);
784
+ }
785
+
786
+ .qx-dialog[data-size="lg"] {
787
+ inline-size: min(100%, 800px);
788
+ }
789
+
790
+ .qx-dialog[data-intent="danger"] {
791
+ border-block-start-color: var(--qx-color-border-danger);
792
+ }
793
+
794
+ .qx-dialog[data-intent="warning"] {
795
+ border-block-start-color: var(--qx-color-icon-warning);
796
+ }
797
+
798
+ .qx-dialog[data-starting-style], .qx-dialog[data-ending-style] {
799
+ opacity: 0;
800
+ translate: 0 8px;
801
+ }
802
+
803
+ .qx-dialog[data-ending-style] {
804
+ transition-duration: var(--qx-motion-duration-normal);
805
+ transition-timing-function: var(--qx-motion-easing-exit);
806
+ }
807
+
808
+ .qx-dialog-header {
809
+ gap: var(--qx-space-gap-xs);
810
+ padding: var(--qx-space-inset-xl);
811
+ flex-direction: column;
812
+ display: flex;
813
+ }
814
+
815
+ .qx-dialog[data-dismissible] .qx-dialog-header {
816
+ padding-inline-end: 56px;
817
+ }
818
+
819
+ .qx-dialog-title {
820
+ font: var(--qx-typography-title-md);
821
+ font-variation-settings: "GEOM" var(--qx-font-geometry-heading);
822
+ margin: 0;
823
+ }
824
+
825
+ .qx-dialog-description {
826
+ color: var(--qx-color-text-subtle);
827
+ margin: 0;
828
+ }
829
+
830
+ .qx-dialog-body {
831
+ min-block-size: 0;
832
+ padding: 0 var(--qx-space-inset-xl) var(--qx-space-inset-xl);
833
+ flex: 1;
834
+ overflow-y: auto;
835
+ }
836
+
837
+ .qx-dialog-footer {
838
+ justify-content: flex-end;
839
+ gap: var(--qx-space-gap-sm);
840
+ padding: 0 var(--qx-space-inset-xl) var(--qx-space-inset-xl);
841
+ flex-wrap: wrap;
842
+ display: flex;
843
+ }
844
+
845
+ .qx-dialog-close {
846
+ position: absolute;
847
+ inset-block-start: 12px;
848
+ inset-inline-end: 12px;
849
+ }
850
+
851
+ @media (forced-colors: active) {
852
+ .qx-dialog {
853
+ border: var(--qx-border-width-default) solid CanvasText;
854
+ border-block-start-width: var(--qx-border-width-accent);
855
+ }
856
+ }
857
+ }
858
+
859
+ @layer qx.components {
860
+ .qx-drawer-backdrop {
861
+ z-index: var(--qx-z-overlay);
862
+ background: var(--qx-color-overlay-scrim);
863
+ transition-property: opacity;
864
+ transition-duration: var(--qx-motion-duration-slow);
865
+ transition-timing-function: var(--qx-motion-easing-enter);
866
+ position: fixed;
867
+ inset: 0;
868
+ }
869
+
870
+ .qx-drawer-backdrop[data-starting-style], .qx-drawer-backdrop[data-ending-style] {
871
+ opacity: 0;
872
+ }
873
+
874
+ .qx-drawer-backdrop[data-ending-style] {
875
+ transition-duration: var(--qx-motion-duration-normal);
876
+ transition-timing-function: var(--qx-motion-easing-exit);
877
+ }
878
+
879
+ .qx-drawer-viewport {
880
+ z-index: var(--qx-z-modal);
881
+ justify-content: flex-end;
882
+ display: flex;
883
+ position: fixed;
884
+ inset: 0;
885
+ }
886
+
887
+ .qx-drawer-viewport[data-side="start"] {
888
+ justify-content: flex-start;
889
+ }
890
+
891
+ .qx-drawer {
892
+ background: var(--qx-color-surface-overlay);
893
+ block-size: 100%;
894
+ inline-size: min(560px, 100vw - 48px);
895
+ box-shadow: var(--qx-shadow-modal);
896
+ color: var(--qx-color-text-default);
897
+ font: var(--qx-typography-body-md);
898
+ font-variation-settings: "GEOM" var(--qx-font-geometry-body);
899
+ transform: translateX(var(--drawer-swipe-movement-x, 0px));
900
+ transition-property: transform;
901
+ transition-duration: var(--qx-motion-duration-slow);
902
+ transition-timing-function: var(--qx-motion-easing-enter);
903
+ outline: 0;
904
+ flex-direction: column;
905
+ display: flex;
906
+ position: relative;
907
+ }
908
+
909
+ .qx-drawer[data-size="sm"] {
910
+ inline-size: min(400px, 100vw - 48px);
911
+ }
912
+
913
+ .qx-drawer[data-size="lg"] {
914
+ inline-size: min(800px, 100vw - 48px);
915
+ }
916
+
917
+ .qx-drawer[data-swipe-direction="right"]:is([data-starting-style], [data-ending-style]) {
918
+ transform: translateX(100%);
919
+ }
920
+
921
+ .qx-drawer[data-swipe-direction="left"]:is([data-starting-style], [data-ending-style]) {
922
+ transform: translateX(-100%);
923
+ }
924
+
925
+ .qx-drawer[data-swiping] {
926
+ transition: none;
927
+ }
928
+
929
+ .qx-drawer[data-ending-style] {
930
+ transition-duration: var(--qx-motion-duration-normal);
931
+ transition-timing-function: var(--qx-motion-easing-exit);
932
+ }
933
+
934
+ .qx-drawer-header {
935
+ gap: var(--qx-space-gap-xs);
936
+ padding: var(--qx-space-inset-xl);
937
+ border-block-end: var(--qx-border-width-default) solid var(--qx-color-border-subtle);
938
+ flex-direction: column;
939
+ flex: none;
940
+ padding-inline-end: 56px;
941
+ display: flex;
942
+ }
943
+
944
+ .qx-drawer-title {
945
+ font: var(--qx-typography-title-md);
946
+ font-variation-settings: "GEOM" var(--qx-font-geometry-heading);
947
+ margin: 0;
948
+ }
949
+
950
+ .qx-drawer-description {
951
+ color: var(--qx-color-text-subtle);
952
+ margin: 0;
953
+ }
954
+
955
+ .qx-drawer-body {
956
+ overscroll-behavior: contain;
957
+ min-block-size: 0;
958
+ padding: var(--qx-space-inset-xl);
959
+ flex: 1;
960
+ overflow-y: auto;
961
+ }
962
+
963
+ .qx-drawer-footer {
964
+ justify-content: flex-end;
965
+ gap: var(--qx-space-gap-sm);
966
+ padding: var(--qx-space-inset-lg) var(--qx-space-inset-xl);
967
+ border-block-start: var(--qx-border-width-default) solid var(--qx-color-border-subtle);
968
+ flex-wrap: wrap;
969
+ flex: none;
970
+ display: flex;
971
+ }
972
+
973
+ .qx-drawer-close {
974
+ position: absolute;
975
+ inset-block-start: 20px;
976
+ inset-inline-end: 16px;
977
+ }
978
+
979
+ @media (forced-colors: active) {
980
+ .qx-drawer {
981
+ border-inline: var(--qx-border-width-default) solid CanvasText;
982
+ }
983
+ }
984
+ }
985
+
986
+ @layer qx.components {
987
+ .qx-alert {
988
+ align-items: flex-start;
989
+ gap: var(--qx-space-gap-md);
990
+ padding: var(--qx-space-inset-md) var(--qx-space-inset-sm) var(--qx-space-inset-md)
991
+ var(--qx-space-inset-md);
992
+ border-inline-start: var(--qx-border-width-accent) solid var(--qx-color-icon-info);
993
+ background: var(--qx-color-bg-info-subtle);
994
+ color: var(--qx-color-text-default);
995
+ font: var(--qx-typography-body-md);
996
+ font-variation-settings: "GEOM" var(--qx-font-geometry-body);
997
+ display: flex;
998
+ }
999
+
1000
+ .qx-alert[data-tone="success"] {
1001
+ border-inline-start-color: var(--qx-color-icon-success);
1002
+ background: var(--qx-color-bg-success-subtle);
1003
+ }
1004
+
1005
+ .qx-alert[data-tone="warning"] {
1006
+ border-inline-start-color: var(--qx-color-icon-warning);
1007
+ background: var(--qx-color-bg-warning-subtle);
1008
+ }
1009
+
1010
+ .qx-alert[data-tone="danger"] {
1011
+ border-inline-start-color: var(--qx-color-icon-danger);
1012
+ background: var(--qx-color-bg-danger-subtle);
1013
+ }
1014
+
1015
+ .qx-alert-icon {
1016
+ color: var(--qx-color-icon-info);
1017
+ flex: none;
1018
+ margin-block-start: 2px;
1019
+ }
1020
+
1021
+ [data-tone="success"] > .qx-alert-icon {
1022
+ color: var(--qx-color-icon-success);
1023
+ }
1024
+
1025
+ [data-tone="warning"] > .qx-alert-icon {
1026
+ color: var(--qx-color-icon-warning);
1027
+ }
1028
+
1029
+ [data-tone="danger"] > .qx-alert-icon {
1030
+ color: var(--qx-color-icon-danger);
1031
+ }
1032
+
1033
+ .qx-alert-body {
1034
+ min-inline-size: 0;
1035
+ flex-direction: column;
1036
+ flex: 1;
1037
+ gap: 2px;
1038
+ padding-inline-end: var(--qx-space-gap-xs);
1039
+ display: flex;
1040
+ }
1041
+
1042
+ .qx-alert-title {
1043
+ font: var(--qx-typography-label-md);
1044
+ font-weight: var(--qx-typography-title-sm-font-weight);
1045
+ font-variation-settings: "GEOM" var(--qx-font-geometry-body);
1046
+ }
1047
+
1048
+ .qx-alert-description {
1049
+ color: var(--qx-color-text-subtle);
1050
+ }
1051
+
1052
+ .qx-alert-actions {
1053
+ gap: var(--qx-space-gap-sm);
1054
+ flex-wrap: wrap;
1055
+ margin-block-start: var(--qx-space-gap-sm);
1056
+ display: flex;
1057
+ }
1058
+
1059
+ .qx-alert-dismiss {
1060
+ flex: none;
1061
+ margin-block: -2px;
1062
+ }
1063
+
1064
+ @media (forced-colors: active) {
1065
+ .qx-alert {
1066
+ border: var(--qx-border-width-default) solid CanvasText;
1067
+ border-inline-start: var(--qx-border-width-accent) solid CanvasText;
1068
+ }
1069
+ }
1070
+ }
1071
+
1072
+ @layer qx.components {
1073
+ .qx-app-shell {
1074
+ --qx-app-shell-top: calc(var(--qx-size-control-lg) + 16px);
1075
+ background: var(--qx-color-surface-default);
1076
+ min-block-size: 100dvh;
1077
+ color: var(--qx-color-text-default);
1078
+ grid-template-rows: auto minmax(0, 1fr);
1079
+ grid-template-columns: auto minmax(0, 1fr) auto;
1080
+ display: grid;
1081
+ }
1082
+
1083
+ .qx-app-shell-top {
1084
+ z-index: var(--qx-z-sticky);
1085
+ grid-column: 1 / -1;
1086
+ position: sticky;
1087
+ inset-block-start: 0;
1088
+ }
1089
+
1090
+ .qx-app-shell-nav {
1091
+ z-index: calc(var(--qx-z-sticky) - 1);
1092
+ block-size: calc(100dvh - var(--qx-app-shell-top));
1093
+ inline-size: var(--qx-component-sidebar-width-expanded);
1094
+ transition-property: inline-size;
1095
+ transition-duration: var(--qx-motion-duration-normal);
1096
+ transition-timing-function: var(--qx-motion-easing-standard);
1097
+ grid-area: 2 / 1;
1098
+ position: sticky;
1099
+ inset-block-start: var(--qx-app-shell-top);
1100
+ }
1101
+
1102
+ .qx-app-shell[data-collapsed] > .qx-app-shell-nav {
1103
+ inline-size: var(--qx-component-sidebar-width-collapsed);
1104
+ }
1105
+
1106
+ .qx-app-shell-nav-panel {
1107
+ border-inline-end: var(--qx-border-width-default) solid var(--qx-color-border-default);
1108
+ background: var(--qx-color-surface-canvas);
1109
+ flex-direction: column;
1110
+ block-size: 100%;
1111
+ inline-size: 100%;
1112
+ display: flex;
1113
+ overflow: hidden;
1114
+ }
1115
+
1116
+ [data-peek] > .qx-app-shell-nav-panel {
1117
+ inline-size: var(--qx-component-sidebar-width-expanded);
1118
+ box-shadow: var(--qx-shadow-overlay);
1119
+ position: absolute;
1120
+ inset-block: 0;
1121
+ inset-inline-start: 0;
1122
+ }
1123
+
1124
+ .qx-app-shell-nav-body {
1125
+ flex: 1;
1126
+ min-block-size: 0;
1127
+ }
1128
+
1129
+ .qx-app-shell-nav-foot {
1130
+ border-block-start: var(--qx-border-width-default) solid var(--qx-color-border-default);
1131
+ flex: none;
1132
+ }
1133
+
1134
+ .qx-app-shell-collapse {
1135
+ inline-size: 100%;
1136
+ block-size: var(--qx-size-control-lg);
1137
+ padding-inline: var(--qx-space-inset-lg);
1138
+ color: var(--qx-color-text-subtle);
1139
+ font: var(--qx-typography-label-md);
1140
+ font-variation-settings: "GEOM" var(--qx-font-geometry-body);
1141
+ white-space: nowrap;
1142
+ cursor: pointer;
1143
+ transition-property: background-color, color;
1144
+ transition-duration: var(--qx-motion-duration-fast);
1145
+ transition-timing-function: var(--qx-motion-easing-standard);
1146
+ background: none;
1147
+ border: 0;
1148
+ align-items: center;
1149
+ gap: 10px;
1150
+ display: flex;
1151
+ }
1152
+
1153
+ .qx-app-shell-collapse:hover {
1154
+ background: var(--qx-color-overlay-hover);
1155
+ color: var(--qx-color-text-default);
1156
+ }
1157
+
1158
+ .qx-app-shell-collapse:focus-visible {
1159
+ outline: var(--qx-focus-ring-width) solid var(--qx-color-border-focus);
1160
+ outline-offset: calc(-1 * var(--qx-focus-ring-width));
1161
+ }
1162
+
1163
+ .qx-app-shell-collapse-icon {
1164
+ color: var(--qx-color-icon-subtle);
1165
+ flex: none;
1166
+ }
1167
+
1168
+ [dir="rtl"] .qx-app-shell-collapse-icon {
1169
+ scale: -1 1;
1170
+ }
1171
+
1172
+ .qx-app-shell[data-collapsed] .qx-app-shell-nav:not([data-peek]) .qx-app-shell-collapse-label {
1173
+ clip-path: inset(50%);
1174
+ block-size: 1px;
1175
+ inline-size: 1px;
1176
+ position: absolute;
1177
+ overflow: hidden;
1178
+ }
1179
+
1180
+ .qx-app-shell-main {
1181
+ outline: 0;
1182
+ grid-area: 2 / 2;
1183
+ min-inline-size: 0;
1184
+ }
1185
+
1186
+ .qx-app-shell-notifications {
1187
+ gap: var(--qx-space-gap-sm);
1188
+ padding: var(--qx-space-inset-lg) var(--qx-space-layout-md) 0;
1189
+ flex-direction: column;
1190
+ display: flex;
1191
+ }
1192
+
1193
+ .qx-app-shell-panel {
1194
+ z-index: calc(var(--qx-z-sticky) - 1);
1195
+ inline-size: 320px;
1196
+ block-size: calc(100dvh - var(--qx-app-shell-top));
1197
+ border-inline-start: var(--qx-border-width-default) solid var(--qx-color-border-default);
1198
+ background: var(--qx-color-surface-default);
1199
+ flex-direction: column;
1200
+ grid-area: 2 / 3;
1201
+ display: flex;
1202
+ position: sticky;
1203
+ inset-block-start: var(--qx-app-shell-top);
1204
+ }
1205
+
1206
+ .qx-app-shell-panel-header {
1207
+ justify-content: space-between;
1208
+ align-items: center;
1209
+ gap: var(--qx-space-gap-sm);
1210
+ block-size: calc(var(--qx-size-control-lg) + 8px);
1211
+ padding-inline: var(--qx-space-inset-lg) var(--qx-space-inset-sm);
1212
+ border-block-end: var(--qx-border-width-default) solid var(--qx-color-border-default);
1213
+ background: var(--qx-color-surface-canvas);
1214
+ flex: none;
1215
+ display: flex;
1216
+ }
1217
+
1218
+ .qx-app-shell-panel-title {
1219
+ font: var(--qx-typography-label-md);
1220
+ font-weight: var(--qx-typography-title-sm-font-weight);
1221
+ font-variation-settings: "GEOM" var(--qx-font-geometry-heading);
1222
+ margin: 0;
1223
+ }
1224
+
1225
+ .qx-app-shell-panel-body {
1226
+ min-block-size: 0;
1227
+ padding: var(--qx-space-inset-lg);
1228
+ flex: 1;
1229
+ overflow-y: auto;
1230
+ }
1231
+
1232
+ @media (width < 1200px) {
1233
+ .qx-app-shell-panel {
1234
+ inset-block: var(--qx-app-shell-top) 0;
1235
+ block-size: auto;
1236
+ box-shadow: var(--qx-shadow-overlay);
1237
+ position: fixed;
1238
+ inset-inline-end: 0;
1239
+ }
1240
+ }
1241
+
1242
+ @media (width < 840px) {
1243
+ .qx-app-shell {
1244
+ grid-template-columns: minmax(0, 1fr);
1245
+ }
1246
+
1247
+ .qx-app-shell-nav {
1248
+ display: none;
1249
+ }
1250
+
1251
+ .qx-app-shell-main {
1252
+ grid-column: 1;
1253
+ }
1254
+
1255
+ .qx-app-shell-panel {
1256
+ inline-size: min(320px, 100vw);
1257
+ }
1258
+
1259
+ .qx-app-shell-notifications {
1260
+ padding-inline: var(--qx-space-inset-lg);
1261
+ }
1262
+ }
1263
+
1264
+ .qx-app-shell-backdrop {
1265
+ z-index: var(--qx-z-overlay);
1266
+ background: var(--qx-color-overlay-scrim);
1267
+ transition-property: opacity;
1268
+ transition-duration: var(--qx-motion-duration-slow);
1269
+ transition-timing-function: var(--qx-motion-easing-enter);
1270
+ position: fixed;
1271
+ inset: 0;
1272
+ }
1273
+
1274
+ .qx-app-shell-backdrop[data-starting-style], .qx-app-shell-backdrop[data-ending-style] {
1275
+ opacity: 0;
1276
+ }
1277
+
1278
+ .qx-app-shell-viewport {
1279
+ z-index: var(--qx-z-modal);
1280
+ justify-content: flex-start;
1281
+ display: flex;
1282
+ position: fixed;
1283
+ inset: 0;
1284
+ }
1285
+
1286
+ .qx-app-shell-drawer {
1287
+ inline-size: min(var(--qx-component-sidebar-width-mobile), 100vw - 48px);
1288
+ background: var(--qx-color-surface-canvas);
1289
+ block-size: 100%;
1290
+ box-shadow: var(--qx-shadow-modal);
1291
+ transform: translateX(var(--drawer-swipe-movement-x, 0px));
1292
+ transition-property: transform;
1293
+ transition-duration: var(--qx-motion-duration-slow);
1294
+ transition-timing-function: var(--qx-motion-easing-enter);
1295
+ outline: 0;
1296
+ }
1297
+
1298
+ .qx-app-shell-drawer[data-swipe-direction="left"]:is([data-starting-style], [data-ending-style]) {
1299
+ transform: translateX(-100%);
1300
+ }
1301
+
1302
+ .qx-app-shell-drawer[data-swipe-direction="right"]:is([data-starting-style], [data-ending-style]) {
1303
+ transform: translateX(100%);
1304
+ }
1305
+
1306
+ .qx-app-shell-drawer[data-swiping] {
1307
+ transition: none;
1308
+ }
1309
+
1310
+ .qx-app-shell-drawer[data-ending-style] {
1311
+ transition-duration: var(--qx-motion-duration-normal);
1312
+ transition-timing-function: var(--qx-motion-easing-exit);
1313
+ }
1314
+
1315
+ @media (forced-colors: active) {
1316
+ .qx-app-shell-nav-panel, .qx-app-shell-nav-foot, .qx-app-shell-panel, .qx-app-shell-panel-header {
1317
+ border-color: canvastext;
1318
+ }
1319
+
1320
+ .qx-app-shell-drawer {
1321
+ border-inline-end: var(--qx-border-width-default) solid CanvasText;
1322
+ }
1323
+ }
1324
+ }
1325
+
1326
+ @layer qx.components {
1327
+ .qx-breadcrumb {
1328
+ min-inline-size: 0;
1329
+ font: var(--qx-typography-body-md);
1330
+ font-variation-settings: "GEOM" var(--qx-font-geometry-body);
1331
+ }
1332
+
1333
+ .qx-breadcrumb-list {
1334
+ align-items: center;
1335
+ gap: var(--qx-space-gap-xs);
1336
+ min-inline-size: 0;
1337
+ margin: 0;
1338
+ padding: 0;
1339
+ list-style: none;
1340
+ display: flex;
1341
+ }
1342
+
1343
+ .qx-breadcrumb-separator {
1344
+ color: var(--qx-color-icon-subtle);
1345
+ flex: none;
1346
+ }
1347
+
1348
+ [dir="rtl"] .qx-breadcrumb-separator {
1349
+ scale: -1 1;
1350
+ }
1351
+
1352
+ .qx-breadcrumb-item {
1353
+ align-items: center;
1354
+ gap: var(--qx-space-gap-xs);
1355
+ min-inline-size: 0;
1356
+ display: flex;
1357
+ }
1358
+
1359
+ .qx-breadcrumb-item:first-child > .qx-breadcrumb-separator {
1360
+ display: none;
1361
+ }
1362
+
1363
+ .qx-breadcrumb-link, .qx-breadcrumb-current {
1364
+ text-overflow: ellipsis;
1365
+ white-space: nowrap;
1366
+ max-inline-size: 240px;
1367
+ overflow: hidden;
1368
+ }
1369
+
1370
+ .qx-breadcrumb-link {
1371
+ color: var(--qx-color-text-subtle);
1372
+ text-decoration: none;
1373
+ }
1374
+
1375
+ .qx-breadcrumb-link:hover {
1376
+ color: var(--qx-color-text-default);
1377
+ text-underline-offset: 3px;
1378
+ text-decoration: underline;
1379
+ }
1380
+
1381
+ .qx-breadcrumb-link:focus-visible {
1382
+ outline: var(--qx-focus-ring-width) solid var(--qx-color-border-focus);
1383
+ outline-offset: var(--qx-focus-ring-offset);
1384
+ }
1385
+
1386
+ .qx-breadcrumb-current {
1387
+ color: var(--qx-color-text-default);
1388
+ font-weight: var(--qx-typography-label-md-font-weight);
1389
+ }
1390
+ }
1391
+
1392
+ @layer qx.components {
1393
+ .qx-copy-button[data-variant="ghost"][data-state="copied"] .qx-button-icon {
1394
+ color: var(--qx-color-icon-success);
1395
+ }
1396
+
1397
+ .qx-copy-button[data-variant="ghost"][data-state="failed"] .qx-button-icon {
1398
+ color: var(--qx-color-icon-danger);
1399
+ }
1400
+ }
1401
+
1402
+ @layer qx.components {
1403
+ .qx-empty-state {
1404
+ align-items: center;
1405
+ gap: var(--qx-space-gap-sm);
1406
+ max-inline-size: 480px;
1407
+ padding: var(--qx-space-layout-lg) var(--qx-space-inset-lg);
1408
+ color: var(--qx-color-text-default);
1409
+ text-align: center;
1410
+ flex-direction: column;
1411
+ margin-inline: auto;
1412
+ display: flex;
1413
+ }
1414
+
1415
+ .qx-empty-state[data-size="section"] {
1416
+ padding: var(--qx-space-inset-xl) var(--qx-space-inset-lg);
1417
+ }
1418
+
1419
+ .qx-empty-state-icon {
1420
+ color: var(--qx-color-icon-subtle);
1421
+ flex: none;
1422
+ margin-block-end: var(--qx-space-gap-xs);
1423
+ }
1424
+
1425
+ [data-tone="danger"] > .qx-empty-state-icon {
1426
+ color: var(--qx-color-icon-danger);
1427
+ }
1428
+
1429
+ .qx-empty-state-title {
1430
+ font: var(--qx-typography-title-md);
1431
+ font-variation-settings: "GEOM" var(--qx-font-geometry-heading);
1432
+ margin: 0;
1433
+ }
1434
+
1435
+ [data-size="section"] > .qx-empty-state-title {
1436
+ font: var(--qx-typography-title-sm);
1437
+ }
1438
+
1439
+ .qx-empty-state-description {
1440
+ font: var(--qx-typography-body-md);
1441
+ font-variation-settings: "GEOM" var(--qx-font-geometry-body);
1442
+ color: var(--qx-color-text-subtle);
1443
+ margin: 0;
1444
+ }
1445
+
1446
+ .qx-empty-state-actions {
1447
+ justify-content: center;
1448
+ gap: var(--qx-space-gap-sm);
1449
+ flex-wrap: wrap;
1450
+ margin-block-start: var(--qx-space-gap-sm);
1451
+ display: flex;
1452
+ }
1453
+
1454
+ .qx-data-state {
1455
+ padding: var(--qx-space-layout-lg);
1456
+ place-items: center;
1457
+ display: grid;
1458
+ }
1459
+ }
1460
+
1461
+ @layer qx.components {
1462
+ .qx-otp-input {
1463
+ align-items: center;
1464
+ gap: var(--qx-space-gap-sm);
1465
+ inline-size: 100%;
1466
+ display: flex;
1467
+ }
1468
+
1469
+ .qx-otp-input-slot {
1470
+ min-inline-size: var(--qx-size-control-lg);
1471
+ inline-size: 0;
1472
+ block-size: var(--qx-size-control-lg);
1473
+ background: var(--qx-color-bg-neutral-subtle);
1474
+ box-shadow: inset 0 calc(-1 * var(--qx-border-width-default)) 0 var(--qx-color-border-strong);
1475
+ color: var(--qx-color-text-default);
1476
+ caret-color: var(--qx-color-border-focus);
1477
+ font: var(--qx-typography-title-md);
1478
+ font-variation-settings: "GEOM" var(--qx-font-geometry-body);
1479
+ font-variant-numeric: tabular-nums;
1480
+ text-align: center;
1481
+ transition-property: background-color;
1482
+ transition-duration: var(--qx-motion-duration-fast);
1483
+ transition-timing-function: var(--qx-motion-easing-standard);
1484
+ border: 0;
1485
+ border-start-start-radius: var(--qx-radius-control);
1486
+ border-start-end-radius: var(--qx-radius-control);
1487
+ flex: 1 1 0;
1488
+ margin: 0;
1489
+ padding: 0;
1490
+ }
1491
+
1492
+ .qx-otp-input-slot:hover {
1493
+ background: var(--qx-color-bg-neutral-subtle-hover);
1494
+ }
1495
+
1496
+ .qx-otp-input-slot:focus {
1497
+ outline: var(--qx-focus-ring-width) solid var(--qx-color-border-focus);
1498
+ outline-offset: calc(-1 * var(--qx-focus-ring-width));
1499
+ box-shadow: none;
1500
+ }
1501
+
1502
+ .qx-otp-input-slot[data-invalid] {
1503
+ outline: var(--qx-focus-ring-width) solid var(--qx-color-border-danger);
1504
+ outline-offset: calc(-1 * var(--qx-focus-ring-width));
1505
+ box-shadow: none;
1506
+ }
1507
+
1508
+ .qx-otp-input-slot:disabled {
1509
+ background: var(--qx-color-bg-disabled);
1510
+ box-shadow: inset 0 calc(-1 * var(--qx-border-width-default)) 0 var(--qx-color-border-disabled);
1511
+ color: var(--qx-color-text-disabled);
1512
+ cursor: not-allowed;
1513
+ }
1514
+
1515
+ .qx-otp-input-slot::placeholder {
1516
+ color: var(--qx-color-text-subtlest);
1517
+ opacity: 1;
1518
+ }
1519
+
1520
+ [data-size="lg"] > .qx-otp-input-slot {
1521
+ block-size: calc(var(--qx-size-control-lg) + 16px);
1522
+ font: var(--qx-typography-title-lg);
1523
+ }
1524
+
1525
+ .qx-otp-input-separator {
1526
+ inline-size: var(--qx-space-gap-sm);
1527
+ block-size: var(--qx-border-width-strong);
1528
+ background: var(--qx-color-border-strong);
1529
+ flex: none;
1530
+ }
1531
+
1532
+ @media (forced-colors: active) {
1533
+ .qx-otp-input-slot {
1534
+ border: var(--qx-border-width-default) solid CanvasText;
1535
+ }
1536
+
1537
+ .qx-otp-input-separator {
1538
+ forced-color-adjust: none;
1539
+ background: canvastext;
1540
+ }
1541
+ }
1542
+ }
1543
+
1544
+ @layer qx.components {
1545
+ .qx-page-header {
1546
+ --qx-page-gutter: var(--qx-space-layout-md);
1547
+ padding: 20px var(--qx-page-gutter);
1548
+ border-block-end: var(--qx-border-width-default) solid var(--qx-color-border-default);
1549
+ background: var(--qx-color-surface-default);
1550
+ color: var(--qx-color-text-default);
1551
+ flex-direction: column;
1552
+ display: flex;
1553
+ }
1554
+
1555
+ .qx-page-header[data-foot] {
1556
+ border-block-end: 0;
1557
+ padding-block-end: 0;
1558
+ }
1559
+
1560
+ .qx-page-header-breadcrumb {
1561
+ margin-block-end: 6px;
1562
+ }
1563
+
1564
+ .qx-page-header-row {
1565
+ justify-content: space-between;
1566
+ align-items: flex-end;
1567
+ gap: var(--qx-space-gap-md);
1568
+ flex-wrap: wrap;
1569
+ display: flex;
1570
+ }
1571
+
1572
+ .qx-page-header-titles {
1573
+ gap: var(--qx-space-gap-xs);
1574
+ flex-direction: column;
1575
+ min-inline-size: 0;
1576
+ display: flex;
1577
+ }
1578
+
1579
+ .qx-page-header-title {
1580
+ align-items: center;
1581
+ gap: var(--qx-space-gap-sm);
1582
+ flex-wrap: wrap;
1583
+ display: flex;
1584
+ }
1585
+
1586
+ .qx-page-header-count {
1587
+ font: var(--qx-typography-title-lg);
1588
+ font-weight: var(--qx-typography-body-md-font-weight);
1589
+ font-variation-settings: "GEOM" var(--qx-font-geometry-heading);
1590
+ font-variant-numeric: tabular-nums;
1591
+ color: var(--qx-color-text-subtlest);
1592
+ }
1593
+
1594
+ .qx-page-header-description {
1595
+ font: var(--qx-typography-body-md);
1596
+ font-variation-settings: "GEOM" var(--qx-font-geometry-body);
1597
+ color: var(--qx-color-text-subtle);
1598
+ margin: 0;
1599
+ }
1600
+
1601
+ .qx-page-header-actions {
1602
+ align-items: center;
1603
+ gap: var(--qx-space-gap-sm);
1604
+ flex-wrap: wrap;
1605
+ flex: none;
1606
+ display: flex;
1607
+ }
1608
+
1609
+ .qx-page-header-summary {
1610
+ --qx-stat-group-inset: var(--qx-page-gutter);
1611
+ margin: 20px calc(-1 * var(--qx-page-gutter)) 0;
1612
+ border-block: var(--qx-border-width-default) solid var(--qx-color-border-default);
1613
+ background: var(--qx-color-surface-canvas);
1614
+ }
1615
+
1616
+ .qx-page-header-tabs {
1617
+ margin: var(--qx-space-gap-md) calc(-1 * var(--qx-space-inset-sm)) 0;
1618
+ }
1619
+
1620
+ .qx-page-header-summary + .qx-page-header-tabs {
1621
+ margin-block-start: var(--qx-space-gap-sm);
1622
+ }
1623
+
1624
+ .qx-page-content {
1625
+ gap: var(--qx-space-gap-md);
1626
+ padding: var(--qx-space-inset-lg) var(--qx-space-layout-md) var(--qx-space-layout-md);
1627
+ flex-direction: column;
1628
+ display: flex;
1629
+ }
1630
+
1631
+ .qx-page-content[data-width="narrow"] {
1632
+ max-inline-size: 800px;
1633
+ }
1634
+
1635
+ @media (width < 840px) {
1636
+ .qx-page-header {
1637
+ --qx-page-gutter: var(--qx-space-inset-lg);
1638
+ }
1639
+
1640
+ .qx-page-content {
1641
+ padding-inline: var(--qx-space-inset-lg);
1642
+ }
1643
+ }
1644
+
1645
+ @media (forced-colors: active) {
1646
+ .qx-page-header, .qx-page-header-summary {
1647
+ border-color: canvastext;
1648
+ }
1649
+ }
1650
+ }
1651
+
1652
+ @layer qx.components {
1653
+ .qx-password-input {
1654
+ padding-inline-end: var(--qx-space-gap-xs);
1655
+ }
1656
+
1657
+ .qx-password-input-caps {
1658
+ align-items: center;
1659
+ gap: var(--qx-space-gap-xs);
1660
+ font: var(--qx-typography-label-sm);
1661
+ font-variation-settings: "GEOM" var(--qx-font-geometry-body);
1662
+ color: var(--qx-color-text-warning);
1663
+ white-space: nowrap;
1664
+ flex: none;
1665
+ display: inline-flex;
1666
+ }
1667
+ }
1668
+
1669
+ @layer qx.components {
1670
+ .qx-sidebar {
1671
+ block-size: 100%;
1672
+ min-block-size: 0;
1673
+ color: var(--qx-color-text-default);
1674
+ flex-direction: column;
1675
+ display: flex;
1676
+ }
1677
+
1678
+ .qx-sidebar-header {
1679
+ gap: var(--qx-space-gap-sm);
1680
+ padding: var(--qx-space-inset-md) var(--qx-space-inset-lg) var(--qx-space-gap-xs);
1681
+ flex-direction: column;
1682
+ flex: none;
1683
+ display: flex;
1684
+ }
1685
+
1686
+ .qx-sidebar-title {
1687
+ font: var(--qx-typography-title-sm);
1688
+ font-variation-settings: "GEOM" var(--qx-font-geometry-heading);
1689
+ color: var(--qx-color-text-default);
1690
+ white-space: nowrap;
1691
+ text-overflow: ellipsis;
1692
+ overflow: hidden;
1693
+ }
1694
+
1695
+ .qx-sidebar-empty {
1696
+ padding: var(--qx-space-gap-sm) var(--qx-space-inset-lg);
1697
+ font: var(--qx-typography-body-sm);
1698
+ font-variation-settings: "GEOM" var(--qx-font-geometry-body);
1699
+ color: var(--qx-color-text-subtle);
1700
+ margin: 0;
1701
+ }
1702
+
1703
+ .qx-sidebar-empty:empty {
1704
+ display: none;
1705
+ }
1706
+
1707
+ .qx-sidebar-group:not(:has(.qx-sidebar-entry)) {
1708
+ display: none;
1709
+ }
1710
+
1711
+ .qx-sidebar-nav {
1712
+ min-block-size: 0;
1713
+ padding-block: var(--qx-space-gap-sm) var(--qx-space-inset-md);
1714
+ flex: 1;
1715
+ overflow: hidden auto;
1716
+ }
1717
+
1718
+ .qx-sidebar-footer {
1719
+ padding-block: var(--qx-space-gap-xs);
1720
+ border-block-start: var(--qx-border-width-default) solid var(--qx-color-border-default);
1721
+ flex: none;
1722
+ }
1723
+
1724
+ .qx-sidebar-group + .qx-sidebar-group {
1725
+ border-block-start: var(--qx-border-width-default) solid var(--qx-color-border-subtle);
1726
+ margin-block-start: var(--qx-space-gap-sm);
1727
+ padding-block-start: var(--qx-space-inset-md);
1728
+ }
1729
+
1730
+ .qx-sidebar-group-label {
1731
+ padding: 0 var(--qx-space-inset-lg) 6px;
1732
+ font: var(--qx-typography-label-caps);
1733
+ letter-spacing: var(--qx-typography-label-caps-letter-spacing);
1734
+ font-variation-settings: "GEOM" var(--qx-font-geometry-body);
1735
+ color: var(--qx-color-text-subtlest);
1736
+ text-transform: uppercase;
1737
+ white-space: nowrap;
1738
+ }
1739
+
1740
+ .qx-sidebar-group-label:is(:lang(hi), :lang(mr), :lang(bn), :lang(gu), :lang(pa), :lang(or), :lang(ta), :lang(te), :lang(kn), :lang(ml)) {
1741
+ letter-spacing: 0;
1742
+ }
1743
+
1744
+ .qx-sidebar-list {
1745
+ margin: 0;
1746
+ padding: 0;
1747
+ list-style: none;
1748
+ }
1749
+
1750
+ .qx-sidebar-item {
1751
+ inline-size: 100%;
1752
+ block-size: var(--qx-size-control-lg);
1753
+ padding-inline: var(--qx-space-inset-lg) var(--qx-space-inset-md);
1754
+ color: var(--qx-color-text-subtle);
1755
+ font: var(--qx-typography-label-md);
1756
+ font-variation-settings: "GEOM" var(--qx-font-geometry-body);
1757
+ text-align: start;
1758
+ white-space: nowrap;
1759
+ cursor: pointer;
1760
+ transition-property: background-color, color;
1761
+ transition-duration: var(--qx-motion-duration-fast);
1762
+ transition-timing-function: var(--qx-motion-easing-standard);
1763
+ background: none;
1764
+ border: 0;
1765
+ align-items: center;
1766
+ gap: 10px;
1767
+ text-decoration: none;
1768
+ display: flex;
1769
+ position: relative;
1770
+ }
1771
+
1772
+ .qx-sidebar-item:hover {
1773
+ background: var(--qx-color-overlay-hover);
1774
+ color: var(--qx-color-text-default);
1775
+ }
1776
+
1777
+ .qx-sidebar-item[data-current] {
1778
+ background: var(--qx-color-bg-neutral-subtle-hover);
1779
+ color: var(--qx-color-text-default);
1780
+ font-weight: var(--qx-typography-title-sm-font-weight);
1781
+ }
1782
+
1783
+ .qx-sidebar-item[data-current]:before {
1784
+ content: "";
1785
+ inline-size: var(--qx-border-width-accent);
1786
+ background: var(--qx-color-border-brand);
1787
+ position: absolute;
1788
+ inset-block: 0;
1789
+ inset-inline-start: 0;
1790
+ }
1791
+
1792
+ .qx-sidebar-item:focus-visible {
1793
+ outline: var(--qx-focus-ring-width) solid var(--qx-color-border-focus);
1794
+ outline-offset: calc(-1 * var(--qx-focus-ring-width));
1795
+ }
1796
+
1797
+ .qx-sidebar-icon {
1798
+ color: var(--qx-color-icon-subtle);
1799
+ flex: none;
1800
+ }
1801
+
1802
+ [data-current] > .qx-sidebar-icon {
1803
+ color: var(--qx-color-icon-brand);
1804
+ }
1805
+
1806
+ .qx-sidebar-icon-filled, .qx-sidebar-item[data-current]:has( > .qx-sidebar-icon-filled) > .qx-sidebar-icon-outline {
1807
+ display: none;
1808
+ }
1809
+
1810
+ .qx-sidebar-item[data-current] > .qx-sidebar-icon-filled {
1811
+ display: block;
1812
+ }
1813
+
1814
+ .qx-sidebar-label {
1815
+ text-overflow: ellipsis;
1816
+ flex: 1;
1817
+ min-inline-size: 0;
1818
+ overflow: hidden;
1819
+ }
1820
+
1821
+ .qx-sidebar-badge {
1822
+ font: var(--qx-typography-label-sm);
1823
+ font-variant-numeric: tabular-nums;
1824
+ color: var(--qx-color-text-subtlest);
1825
+ flex: none;
1826
+ display: inline-flex;
1827
+ }
1828
+
1829
+ .qx-sidebar-chevron {
1830
+ color: var(--qx-color-icon-subtle);
1831
+ transition-property: rotate;
1832
+ transition-duration: var(--qx-motion-duration-normal);
1833
+ transition-timing-function: var(--qx-motion-easing-standard);
1834
+ flex: none;
1835
+ }
1836
+
1837
+ [data-open] > .qx-sidebar-chevron {
1838
+ rotate: 180deg;
1839
+ }
1840
+
1841
+ .qx-sidebar-sublist .qx-sidebar-item {
1842
+ font-weight: var(--qx-typography-body-md-font-weight);
1843
+ padding-inline-start: calc(var(--qx-space-inset-lg) + 16px + 10px);
1844
+ }
1845
+
1846
+ .qx-sidebar-sublist .qx-sidebar-item[data-current] {
1847
+ font-weight: var(--qx-typography-title-sm-font-weight);
1848
+ }
1849
+
1850
+ .qx-sidebar[data-rail] .qx-sidebar-header {
1851
+ visibility: hidden;
1852
+ position: relative;
1853
+ overflow: hidden;
1854
+ }
1855
+
1856
+ .qx-sidebar[data-rail] .qx-sidebar-rail-search {
1857
+ visibility: visible;
1858
+ position: absolute;
1859
+ inset-block-end: var(--qx-space-gap-xs);
1860
+ inset-inline-start: 50%;
1861
+ translate: -50%;
1862
+ }
1863
+
1864
+ .qx-sidebar[data-rail] .qx-sidebar-group-label {
1865
+ visibility: hidden;
1866
+ overflow: hidden;
1867
+ }
1868
+
1869
+ .qx-sidebar[data-rail] .qx-sidebar-label {
1870
+ clip-path: inset(50%);
1871
+ block-size: 1px;
1872
+ inline-size: 1px;
1873
+ position: absolute;
1874
+ overflow: hidden;
1875
+ }
1876
+
1877
+ .qx-sidebar[data-rail] .qx-sidebar-badge, .qx-sidebar[data-rail] .qx-sidebar-chevron {
1878
+ display: none;
1879
+ }
1880
+
1881
+ @media (forced-colors: active) {
1882
+ .qx-sidebar-footer, .qx-sidebar-group + .qx-sidebar-group {
1883
+ border-color: canvastext;
1884
+ }
1885
+
1886
+ .qx-sidebar-item[data-current] {
1887
+ forced-color-adjust: none;
1888
+ color: highlighttext;
1889
+ background: highlight;
1890
+ }
1891
+
1892
+ .qx-sidebar-item[data-current] .qx-sidebar-icon {
1893
+ color: highlighttext;
1894
+ }
1895
+ }
1896
+ }
1897
+
1898
+ @layer qx.components {
1899
+ .qx-stat-group {
1900
+ color: var(--qx-color-text-default);
1901
+ grid-template-columns: repeat(auto-fit, minmax(min(100%, 200px), 1fr));
1902
+ margin: 0;
1903
+ display: grid;
1904
+ }
1905
+
1906
+ .qx-stat {
1907
+ align-content: start;
1908
+ column-gap: var(--qx-space-gap-md);
1909
+ min-inline-size: 0;
1910
+ padding: var(--qx-space-inset-md) var(--qx-space-inset-lg);
1911
+ grid-template-columns: minmax(0, 1fr) auto;
1912
+ display: grid;
1913
+ }
1914
+
1915
+ .qx-stat:first-child {
1916
+ padding-inline-start: var(--qx-stat-group-inset, var(--qx-space-inset-lg));
1917
+ }
1918
+
1919
+ .qx-stat:last-child {
1920
+ padding-inline-end: var(--qx-stat-group-inset, var(--qx-space-inset-lg));
1921
+ }
1922
+
1923
+ .qx-stat + .qx-stat {
1924
+ border-inline-start: var(--qx-border-width-default) solid var(--qx-color-border-default);
1925
+ }
1926
+
1927
+ .qx-stat-label {
1928
+ font: var(--qx-typography-label-sm);
1929
+ font-variation-settings: "GEOM" var(--qx-font-geometry-body);
1930
+ color: var(--qx-color-text-subtle);
1931
+ grid-column: 1 / -1;
1932
+ }
1933
+
1934
+ .qx-stat-value {
1935
+ margin: var(--qx-space-gap-xs) 0 0;
1936
+ font: var(--qx-typography-heading-sm);
1937
+ font-variation-settings: "GEOM" var(--qx-font-geometry-heading);
1938
+ font-variant-numeric: tabular-nums;
1939
+ grid-column: 1;
1940
+ }
1941
+
1942
+ .qx-stat-trend-cell {
1943
+ grid-area: 2 / 2;
1944
+ align-items: flex-end;
1945
+ margin: 0;
1946
+ padding-block-end: var(--qx-space-gap-xs);
1947
+ display: flex;
1948
+ }
1949
+
1950
+ .qx-stat-trend {
1951
+ block-size: 28px;
1952
+ inline-size: 88px;
1953
+ overflow: visible;
1954
+ }
1955
+
1956
+ .qx-stat-trend-line {
1957
+ fill: none;
1958
+ stroke: var(--qx-color-icon-subtle);
1959
+ stroke-width: var(--qx-icon-stroke-thin);
1960
+ stroke-linecap: round;
1961
+ stroke-linejoin: round;
1962
+ }
1963
+
1964
+ .qx-stat-trend-area {
1965
+ fill: var(--qx-color-icon-subtle);
1966
+ opacity: .1;
1967
+ }
1968
+
1969
+ .qx-stat-trend-end {
1970
+ fill: var(--qx-color-border-brand);
1971
+ }
1972
+
1973
+ .qx-stat-note {
1974
+ font: var(--qx-typography-body-sm);
1975
+ font-variation-settings: "GEOM" var(--qx-font-geometry-body);
1976
+ color: var(--qx-color-text-subtlest);
1977
+ grid-column: 1 / -1;
1978
+ margin: 2px 0 0;
1979
+ }
1980
+
1981
+ .qx-stat-note[data-tone="positive"] {
1982
+ color: var(--qx-color-text-success);
1983
+ }
1984
+
1985
+ .qx-stat-note[data-tone="negative"] {
1986
+ color: var(--qx-color-text-danger);
1987
+ }
1988
+
1989
+ .qx-stat-note[data-tone="warning"] {
1990
+ color: var(--qx-color-text-warning);
1991
+ }
1992
+
1993
+ @media (forced-colors: active) {
1994
+ .qx-stat + .qx-stat {
1995
+ border-inline-start-color: canvastext;
1996
+ }
1997
+
1998
+ .qx-stat-trend-line {
1999
+ stroke: canvastext;
2000
+ }
2001
+
2002
+ .qx-stat-trend-area {
2003
+ fill: canvastext;
2004
+ }
2005
+
2006
+ .qx-stat-trend-end {
2007
+ fill: highlight;
2008
+ }
2009
+ }
2010
+ }
2011
+
2012
+ @layer qx.components {
2013
+ .qx-top-bar {
2014
+ align-items: stretch;
2015
+ column-gap: var(--qx-space-gap-lg);
2016
+ block-size: calc(var(--qx-size-control-lg) + 16px);
2017
+ border-block-start: var(--qx-border-width-strong) solid var(--qx-color-border-brand);
2018
+ border-block-end: var(--qx-border-width-default) solid var(--qx-color-border-subtle);
2019
+ background: var(--qx-color-surface-sunken);
2020
+ color: var(--qx-color-text-default);
2021
+ font: var(--qx-typography-body-md);
2022
+ font-variation-settings: "GEOM" var(--qx-font-geometry-body);
2023
+ grid-template-columns: minmax(max-content, 1fr) auto;
2024
+ padding-inline-end: var(--qx-space-inset-md);
2025
+ display: grid;
2026
+ }
2027
+
2028
+ .qx-top-bar[data-search] {
2029
+ grid-template-columns: minmax(max-content, 1fr) minmax(240px, 480px) minmax(max-content, 1fr);
2030
+ }
2031
+
2032
+ .qx-top-bar-start, .qx-top-bar-end {
2033
+ align-items: center;
2034
+ min-inline-size: 0;
2035
+ display: flex;
2036
+ }
2037
+
2038
+ .qx-top-bar-end {
2039
+ justify-content: flex-end;
2040
+ gap: var(--qx-space-gap-xs);
2041
+ }
2042
+
2043
+ .qx-top-bar-cell {
2044
+ aspect-ratio: 1;
2045
+ border-inline-end: var(--qx-border-width-default) solid var(--qx-color-border-subtle);
2046
+ flex: none;
2047
+ align-self: stretch;
2048
+ place-items: center;
2049
+ display: grid;
2050
+ }
2051
+
2052
+ .qx-top-bar-identity {
2053
+ align-self: stretch;
2054
+ align-items: center;
2055
+ gap: var(--qx-space-gap-sm);
2056
+ padding-inline: var(--qx-space-inset-lg) var(--qx-space-inset-sm);
2057
+ color: var(--qx-color-text-default);
2058
+ white-space: nowrap;
2059
+ flex: none;
2060
+ text-decoration: none;
2061
+ display: flex;
2062
+ }
2063
+
2064
+ .qx-top-bar-identity:hover {
2065
+ background: var(--qx-color-overlay-hover);
2066
+ }
2067
+
2068
+ .qx-top-bar-identity:focus-visible {
2069
+ outline: var(--qx-focus-ring-width) solid var(--qx-color-border-focus);
2070
+ outline-offset: calc(-1 * var(--qx-focus-ring-width));
2071
+ }
2072
+
2073
+ .qx-top-bar-product {
2074
+ font: var(--qx-typography-label-md);
2075
+ font-weight: var(--qx-typography-title-sm-font-weight);
2076
+ font-variation-settings: "GEOM" var(--qx-font-geometry-heading);
2077
+ }
2078
+
2079
+ .qx-top-bar-slash {
2080
+ inline-size: var(--qx-border-width-default);
2081
+ block-size: 16px;
2082
+ margin-inline: var(--qx-space-gap-sm);
2083
+ background: var(--qx-color-border-strong);
2084
+ flex: none;
2085
+ rotate: 20deg;
2086
+ }
2087
+
2088
+ [dir="rtl"] .qx-top-bar-slash {
2089
+ rotate: -20deg;
2090
+ }
2091
+
2092
+ .qx-top-bar-switcher {
2093
+ align-items: center;
2094
+ gap: var(--qx-space-gap-sm);
2095
+ min-inline-size: 0;
2096
+ block-size: var(--qx-size-control-md);
2097
+ padding-inline: var(--qx-space-inset-sm);
2098
+ border-radius: var(--qx-radius-control);
2099
+ color: var(--qx-color-text-default);
2100
+ font: var(--qx-typography-label-md);
2101
+ font-variation-settings: "GEOM" var(--qx-font-geometry-body);
2102
+ white-space: nowrap;
2103
+ cursor: pointer;
2104
+ transition-property: background-color;
2105
+ transition-duration: var(--qx-motion-duration-fast);
2106
+ transition-timing-function: var(--qx-motion-easing-standard);
2107
+ background: none;
2108
+ border: 0;
2109
+ display: flex;
2110
+ }
2111
+
2112
+ .qx-top-bar-switcher:hover, .qx-top-bar-switcher[data-popup-open] {
2113
+ background: var(--qx-color-overlay-hover);
2114
+ }
2115
+
2116
+ .qx-top-bar-switcher:focus-visible {
2117
+ outline: var(--qx-focus-ring-width) solid var(--qx-color-border-focus);
2118
+ outline-offset: calc(-1 * var(--qx-focus-ring-width));
2119
+ }
2120
+
2121
+ .qx-top-bar-switcher-label {
2122
+ text-overflow: ellipsis;
2123
+ min-inline-size: 0;
2124
+ overflow: hidden;
2125
+ }
2126
+
2127
+ .qx-top-bar-mark {
2128
+ border-radius: var(--qx-radius-sm);
2129
+ background: var(--qx-color-overlay-pressed);
2130
+ block-size: 20px;
2131
+ inline-size: 20px;
2132
+ font: var(--qx-typography-label-sm);
2133
+ font-weight: var(--qx-typography-title-sm-font-weight);
2134
+ flex: none;
2135
+ place-items: center;
2136
+ display: grid;
2137
+ overflow: hidden;
2138
+ }
2139
+
2140
+ .qx-top-bar-status {
2141
+ border-radius: var(--qx-radius-full);
2142
+ background: var(--qx-color-icon-subtle);
2143
+ flex: none;
2144
+ block-size: 8px;
2145
+ inline-size: 8px;
2146
+ }
2147
+
2148
+ .qx-top-bar-status[data-status="success"] {
2149
+ background: var(--qx-color-bg-success-bold);
2150
+ }
2151
+
2152
+ .qx-top-bar-status[data-status="info"] {
2153
+ background: var(--qx-color-bg-info-bold);
2154
+ }
2155
+
2156
+ .qx-top-bar-status[data-status="warning"] {
2157
+ background: var(--qx-color-bg-warning-bold);
2158
+ }
2159
+
2160
+ .qx-top-bar-status[data-status="danger"] {
2161
+ background: var(--qx-color-bg-danger-bold);
2162
+ }
2163
+
2164
+ .qx-top-bar-caret {
2165
+ color: var(--qx-color-icon-subtle);
2166
+ flex: none;
2167
+ }
2168
+
2169
+ .qx-top-bar-search {
2170
+ align-items: center;
2171
+ min-inline-size: 0;
2172
+ display: flex;
2173
+ }
2174
+
2175
+ .qx-top-bar-search-trigger {
2176
+ align-items: center;
2177
+ gap: var(--qx-space-gap-sm);
2178
+ inline-size: 100%;
2179
+ block-size: var(--qx-size-control-lg);
2180
+ padding-inline: var(--qx-space-inset-sm) var(--qx-space-gap-xs);
2181
+ border: var(--qx-border-width-default) solid var(--qx-color-border-default);
2182
+ border-radius: var(--qx-radius-control);
2183
+ background: var(--qx-color-overlay-hover);
2184
+ color: var(--qx-color-text-subtlest);
2185
+ font: var(--qx-typography-body-md);
2186
+ font-variation-settings: "GEOM" var(--qx-font-geometry-body);
2187
+ cursor: pointer;
2188
+ transition-property: background-color, border-color;
2189
+ transition-duration: var(--qx-motion-duration-fast);
2190
+ transition-timing-function: var(--qx-motion-easing-standard);
2191
+ display: flex;
2192
+ }
2193
+
2194
+ .qx-top-bar-search-trigger:hover {
2195
+ border-color: var(--qx-color-border-strong);
2196
+ background: var(--qx-color-overlay-pressed);
2197
+ }
2198
+
2199
+ .qx-top-bar-search-trigger:focus-visible {
2200
+ outline: var(--qx-focus-ring-width) solid var(--qx-color-border-focus);
2201
+ outline-offset: calc(-1 * var(--qx-focus-ring-width));
2202
+ }
2203
+
2204
+ .qx-top-bar-search-icon {
2205
+ color: var(--qx-color-icon-subtle);
2206
+ flex: none;
2207
+ }
2208
+
2209
+ .qx-top-bar-search-text {
2210
+ text-align: start;
2211
+ text-overflow: ellipsis;
2212
+ white-space: nowrap;
2213
+ flex: 1;
2214
+ min-inline-size: 0;
2215
+ overflow: hidden;
2216
+ }
2217
+
2218
+ .qx-top-bar-keys {
2219
+ flex: none;
2220
+ gap: 2px;
2221
+ display: flex;
2222
+ }
2223
+
2224
+ .qx-top-bar-key {
2225
+ block-size: 20px;
2226
+ min-inline-size: 20px;
2227
+ padding-inline: var(--qx-space-gap-xs);
2228
+ border: var(--qx-border-width-default) solid var(--qx-color-border-default);
2229
+ border-radius: var(--qx-radius-sm);
2230
+ color: var(--qx-color-text-subtle);
2231
+ font: var(--qx-typography-label-sm);
2232
+ font-variation-settings: "GEOM" var(--qx-font-geometry-body);
2233
+ place-items: center;
2234
+ display: grid;
2235
+ }
2236
+
2237
+ .qx-top-bar-tools {
2238
+ align-items: center;
2239
+ gap: var(--qx-space-gap-xs);
2240
+ display: flex;
2241
+ }
2242
+
2243
+ .qx-top-bar-tool {
2244
+ position: relative;
2245
+ }
2246
+
2247
+ .qx-top-bar-tool > [aria-pressed="true"] {
2248
+ background: var(--qx-color-overlay-pressed);
2249
+ color: var(--qx-color-text-default);
2250
+ }
2251
+
2252
+ .qx-top-bar-tool[data-badge]:after {
2253
+ content: "";
2254
+ border: var(--qx-border-width-strong) solid var(--qx-color-surface-sunken);
2255
+ border-radius: var(--qx-radius-full);
2256
+ background: var(--qx-color-icon-brand);
2257
+ pointer-events: none;
2258
+ block-size: 10px;
2259
+ inline-size: 10px;
2260
+ position: absolute;
2261
+ inset-block-start: 3px;
2262
+ inset-inline-end: 3px;
2263
+ }
2264
+
2265
+ .qx-top-bar-rule {
2266
+ inline-size: var(--qx-border-width-default);
2267
+ block-size: 20px;
2268
+ margin-inline: var(--qx-space-gap-sm);
2269
+ background: var(--qx-color-border-subtle);
2270
+ flex: none;
2271
+ }
2272
+
2273
+ @media (width < 840px) {
2274
+ .qx-top-bar, .qx-top-bar[data-search] {
2275
+ grid-template-columns: minmax(0, 1fr) auto;
2276
+ }
2277
+
2278
+ .qx-top-bar-search {
2279
+ display: none;
2280
+ }
2281
+ }
2282
+
2283
+ @media (forced-colors: active) {
2284
+ .qx-top-bar {
2285
+ border-block-end-color: canvastext;
2286
+ }
2287
+
2288
+ .qx-top-bar-cell {
2289
+ border-inline-end-color: canvastext;
2290
+ }
2291
+
2292
+ .qx-top-bar-slash, .qx-top-bar-rule {
2293
+ forced-color-adjust: none;
2294
+ background: canvastext;
2295
+ }
2296
+
2297
+ .qx-top-bar-status, .qx-top-bar-tool[data-badge]:after {
2298
+ forced-color-adjust: none;
2299
+ background: highlight;
2300
+ }
2301
+
2302
+ .qx-top-bar-search-trigger, .qx-top-bar-key {
2303
+ border-color: canvastext;
2304
+ }
2305
+ }
2306
+ }
2307
+
2308
+ @layer qx.components {
2309
+ .qx-field {
2310
+ gap: var(--qx-space-gap-xs);
2311
+ flex-direction: column;
2312
+ min-inline-size: 0;
2313
+ display: flex;
2314
+ }
2315
+
2316
+ .qx-field-label {
2317
+ font: var(--qx-typography-label-sm);
2318
+ font-variation-settings: "GEOM" var(--qx-font-geometry-body);
2319
+ color: var(--qx-color-text-subtle);
2320
+ }
2321
+
2322
+ .qx-field-label[data-disabled] {
2323
+ color: var(--qx-color-text-disabled);
2324
+ }
2325
+
2326
+ .qx-field-label[data-hidden] {
2327
+ clip-path: inset(50%);
2328
+ white-space: nowrap;
2329
+ block-size: 1px;
2330
+ inline-size: 1px;
2331
+ margin: -1px;
2332
+ position: absolute;
2333
+ overflow: hidden;
2334
+ }
2335
+
2336
+ .qx-field-optional {
2337
+ font-weight: var(--qx-typography-body-sm-font-weight);
2338
+ color: var(--qx-color-text-subtlest);
2339
+ }
2340
+
2341
+ .qx-field-description {
2342
+ font: var(--qx-typography-body-sm);
2343
+ font-variation-settings: "GEOM" var(--qx-font-geometry-body);
2344
+ color: var(--qx-color-text-subtle);
2345
+ margin: 0;
2346
+ }
2347
+
2348
+ .qx-field[data-invalid] > .qx-field-description {
2349
+ display: none;
2350
+ }
2351
+
2352
+ .qx-field-error {
2353
+ align-items: flex-start;
2354
+ gap: var(--qx-space-gap-xs);
2355
+ font: var(--qx-typography-body-sm);
2356
+ font-variation-settings: "GEOM" var(--qx-font-geometry-body);
2357
+ color: var(--qx-color-text-danger);
2358
+ display: flex;
2359
+ }
2360
+
2361
+ .qx-field-error-icon {
2362
+ color: var(--qx-color-icon-danger);
2363
+ flex: none;
2364
+ }
2365
+
2366
+ .qx-choice {
2367
+ flex-direction: column;
2368
+ min-inline-size: 0;
2369
+ display: flex;
2370
+ }
2371
+
2372
+ .qx-choice-label {
2373
+ align-items: flex-start;
2374
+ gap: var(--qx-space-gap-sm);
2375
+ inline-size: fit-content;
2376
+ min-block-size: var(--qx-size-target-min);
2377
+ font: var(--qx-typography-body-md);
2378
+ font-variation-settings: "GEOM" var(--qx-font-geometry-body);
2379
+ color: var(--qx-color-text-default);
2380
+ cursor: pointer;
2381
+ padding-block: 2px;
2382
+ display: inline-flex;
2383
+ }
2384
+
2385
+ .qx-choice-label > :first-child {
2386
+ margin-block: 2px;
2387
+ }
2388
+
2389
+ .qx-choice[data-disabled] .qx-choice-label {
2390
+ color: var(--qx-color-text-disabled);
2391
+ cursor: not-allowed;
2392
+ }
2393
+
2394
+ .qx-choice-description {
2395
+ font: var(--qx-typography-body-sm);
2396
+ font-variation-settings: "GEOM" var(--qx-font-geometry-body);
2397
+ color: var(--qx-color-text-subtle);
2398
+ margin: 0;
2399
+ padding-inline-start: 24px;
2400
+ }
2401
+
2402
+ .qx-choice[data-slot="switch"] .qx-choice-description {
2403
+ padding-inline-start: 40px;
2404
+ }
2405
+
2406
+ .qx-choice-group-set {
2407
+ gap: var(--qx-space-gap-xs);
2408
+ border: 0;
2409
+ flex-direction: column;
2410
+ min-inline-size: 0;
2411
+ margin: 0;
2412
+ padding: 0;
2413
+ display: flex;
2414
+ }
2415
+
2416
+ .qx-choice-group-options {
2417
+ gap: var(--qx-space-gap-xs);
2418
+ flex-direction: column;
2419
+ display: flex;
2420
+ }
2421
+
2422
+ .qx-choice-group[data-orientation="horizontal"] .qx-choice-group-options {
2423
+ column-gap: var(--qx-space-gap-lg);
2424
+ flex-flow: wrap;
2425
+ }
2426
+ }
2427
+
2428
+ @layer qx.components {
2429
+ .qx-fieldset {
2430
+ gap: var(--qx-space-form-gap);
2431
+ border: 0;
2432
+ flex-direction: column;
2433
+ min-inline-size: 0;
2434
+ margin: 0;
2435
+ padding: 0;
2436
+ display: flex;
2437
+ }
2438
+
2439
+ .qx-fieldset-header {
2440
+ gap: var(--qx-space-gap-xs);
2441
+ flex-direction: column;
2442
+ display: flex;
2443
+ }
2444
+
2445
+ .qx-fieldset-legend {
2446
+ font: var(--qx-typography-title-sm);
2447
+ font-variation-settings: "GEOM" var(--qx-font-geometry-heading);
2448
+ color: var(--qx-color-text-default);
2449
+ padding: 0;
2450
+ }
2451
+
2452
+ .qx-fieldset-legend[data-disabled] {
2453
+ color: var(--qx-color-text-disabled);
2454
+ }
2455
+
2456
+ .qx-fieldset-description {
2457
+ font: var(--qx-typography-body-sm);
2458
+ font-variation-settings: "GEOM" var(--qx-font-geometry-body);
2459
+ color: var(--qx-color-text-subtle);
2460
+ margin: 0;
2461
+ }
2462
+ }
2463
+
2464
+ @layer qx.components {
2465
+ .qx-grid {
2466
+ --qx-grid-current: var(--qx-grid-base, 1);
2467
+ grid-template-columns: repeat(var(--qx-grid-current), minmax(0, 1fr));
2468
+ align-items: stretch;
2469
+ display: grid;
2470
+ }
2471
+
2472
+ .qx-grid[data-gap="none"] {
2473
+ gap: 0;
2474
+ }
2475
+
2476
+ .qx-grid[data-gap="xs"] {
2477
+ gap: var(--qx-space-gap-xs);
2478
+ }
2479
+
2480
+ .qx-grid[data-gap="sm"] {
2481
+ gap: var(--qx-space-gap-sm);
2482
+ }
2483
+
2484
+ .qx-grid[data-gap="md"] {
2485
+ gap: var(--qx-space-gap-md);
2486
+ }
2487
+
2488
+ .qx-grid[data-gap="lg"] {
2489
+ gap: var(--qx-space-gap-lg);
2490
+ }
2491
+
2492
+ .qx-grid[data-gap="xl"] {
2493
+ gap: var(--qx-space-gap-xl);
2494
+ }
2495
+
2496
+ .qx-grid[data-gap="2xl"] {
2497
+ gap: var(--qx-space-layout-md);
2498
+ }
2499
+
2500
+ .qx-grid[data-gap="3xl"] {
2501
+ gap: var(--qx-space-layout-lg);
2502
+ }
2503
+
2504
+ .qx-grid[data-gap="4xl"] {
2505
+ gap: var(--qx-space-layout-xl);
2506
+ }
2507
+
2508
+ .qx-grid[data-align="start"] {
2509
+ align-items: start;
2510
+ }
2511
+
2512
+ .qx-grid[data-align="center"] {
2513
+ align-items: center;
2514
+ }
2515
+
2516
+ .qx-grid[data-align="end"] {
2517
+ align-items: end;
2518
+ }
2519
+
2520
+ .qx-grid[data-align="stretch"] {
2521
+ align-items: stretch;
2522
+ }
2523
+
2524
+ @media (width >= 600px) {
2525
+ .qx-grid {
2526
+ --qx-grid-current: var(--qx-grid-medium, var(--qx-grid-base, 1));
2527
+ }
2528
+ }
2529
+
2530
+ @media (width >= 840px) {
2531
+ .qx-grid {
2532
+ --qx-grid-current: var(--qx-grid-expanded, var(--qx-grid-medium, var(--qx-grid-base, 1)));
2533
+ }
2534
+ }
2535
+
2536
+ @media (width >= 1200px) {
2537
+ .qx-grid {
2538
+ --qx-grid-current: var(--qx-grid-large, var(--qx-grid-expanded, var(--qx-grid-medium, var(--qx-grid-base, 1))));
2539
+ }
2540
+ }
2541
+
2542
+ @media (width >= 1600px) {
2543
+ .qx-grid {
2544
+ --qx-grid-current: var(--qx-grid-xlarge, var(--qx-grid-large, var(--qx-grid-expanded, var(--qx-grid-medium, var(--qx-grid-base, 1)))));
2545
+ }
2546
+ }
2547
+ }
2548
+
2549
+ @layer qx.components {
2550
+ .qx-heading {
2551
+ font: var(--qx-typography-heading-lg);
2552
+ font-variation-settings: "GEOM" var(--qx-font-geometry-heading);
2553
+ color: var(--qx-color-text-default);
2554
+ margin: 0;
2555
+ }
2556
+
2557
+ .qx-heading[data-size="display-lg"] {
2558
+ font-size: var(--qx-typography-display-lg-font-size);
2559
+ line-height: var(--qx-typography-display-lg-line-height);
2560
+ }
2561
+
2562
+ .qx-heading[data-size="display-md"] {
2563
+ font-size: var(--qx-typography-display-md-font-size);
2564
+ line-height: var(--qx-typography-display-md-line-height);
2565
+ }
2566
+
2567
+ .qx-heading[data-size="display-sm"] {
2568
+ font-size: var(--qx-typography-display-sm-font-size);
2569
+ line-height: var(--qx-typography-display-sm-line-height);
2570
+ }
2571
+
2572
+ .qx-heading[data-size="heading-lg"] {
2573
+ font-size: var(--qx-typography-heading-lg-font-size);
2574
+ line-height: var(--qx-typography-heading-lg-line-height);
2575
+ }
2576
+
2577
+ .qx-heading[data-size="heading-md"] {
2578
+ font-size: var(--qx-typography-heading-md-font-size);
2579
+ line-height: var(--qx-typography-heading-md-line-height);
2580
+ }
2581
+
2582
+ .qx-heading[data-size="heading-sm"] {
2583
+ font-size: var(--qx-typography-heading-sm-font-size);
2584
+ line-height: var(--qx-typography-heading-sm-line-height);
2585
+ }
2586
+
2587
+ .qx-heading[data-size="title-lg"] {
2588
+ font-size: var(--qx-typography-title-lg-font-size);
2589
+ line-height: var(--qx-typography-title-lg-line-height);
2590
+ }
2591
+
2592
+ .qx-heading[data-size="title-md"] {
2593
+ font-size: var(--qx-typography-title-md-font-size);
2594
+ line-height: var(--qx-typography-title-md-line-height);
2595
+ }
2596
+
2597
+ .qx-heading[data-size="title-sm"] {
2598
+ font-size: var(--qx-typography-title-sm-font-size);
2599
+ line-height: var(--qx-typography-title-sm-line-height);
2600
+ }
2601
+
2602
+ .qx-heading[data-size^="display-"] {
2603
+ font-variation-settings: "GEOM" var(--qx-font-geometry-display);
2604
+ }
2605
+
2606
+ .qx-heading[data-tone="subtle"] {
2607
+ color: var(--qx-color-text-subtle);
2608
+ }
2609
+
2610
+ .qx-heading[data-tone="inverse"] {
2611
+ color: var(--qx-color-text-inverse);
2612
+ }
2613
+
2614
+ .qx-heading[data-truncate="line"] {
2615
+ text-overflow: ellipsis;
2616
+ white-space: nowrap;
2617
+ overflow: hidden;
2618
+ }
2619
+
2620
+ .qx-heading[data-truncate="lines"] {
2621
+ -webkit-line-clamp: var(--qx-text-lines);
2622
+ line-clamp: var(--qx-text-lines);
2623
+ -webkit-box-orient: vertical;
2624
+ display: -webkit-box;
2625
+ overflow: hidden;
2626
+ }
2627
+
2628
+ .qx-heading[data-align="start"] {
2629
+ text-align: start;
2630
+ }
2631
+
2632
+ .qx-heading[data-align="center"] {
2633
+ text-align: center;
2634
+ }
2635
+
2636
+ .qx-heading[data-align="end"] {
2637
+ text-align: end;
2638
+ }
2639
+ }
2640
+
2641
+ @layer qx.components {
2642
+ .qx-inline {
2643
+ flex-wrap: wrap;
2644
+ align-items: center;
2645
+ display: flex;
2646
+ }
2647
+
2648
+ .qx-inline[data-wrap="false"] {
2649
+ flex-wrap: nowrap;
2650
+ }
2651
+
2652
+ .qx-inline[data-gap="none"] {
2653
+ gap: 0;
2654
+ }
2655
+
2656
+ .qx-inline[data-gap="xs"] {
2657
+ gap: var(--qx-space-gap-xs);
2658
+ }
2659
+
2660
+ .qx-inline[data-gap="sm"] {
2661
+ gap: var(--qx-space-gap-sm);
2662
+ }
2663
+
2664
+ .qx-inline[data-gap="md"] {
2665
+ gap: var(--qx-space-gap-md);
2666
+ }
2667
+
2668
+ .qx-inline[data-gap="lg"] {
2669
+ gap: var(--qx-space-gap-lg);
2670
+ }
2671
+
2672
+ .qx-inline[data-gap="xl"] {
2673
+ gap: var(--qx-space-gap-xl);
2674
+ }
2675
+
2676
+ .qx-inline[data-gap="2xl"] {
2677
+ gap: var(--qx-space-layout-md);
2678
+ }
2679
+
2680
+ .qx-inline[data-gap="3xl"] {
2681
+ gap: var(--qx-space-layout-lg);
2682
+ }
2683
+
2684
+ .qx-inline[data-gap="4xl"] {
2685
+ gap: var(--qx-space-layout-xl);
2686
+ }
2687
+
2688
+ .qx-inline[data-align="start"] {
2689
+ align-items: flex-start;
2690
+ }
2691
+
2692
+ .qx-inline[data-align="center"] {
2693
+ align-items: center;
2694
+ }
2695
+
2696
+ .qx-inline[data-align="end"] {
2697
+ align-items: flex-end;
2698
+ }
2699
+
2700
+ .qx-inline[data-align="baseline"] {
2701
+ align-items: baseline;
2702
+ }
2703
+
2704
+ .qx-inline[data-align="stretch"] {
2705
+ align-items: stretch;
2706
+ }
2707
+
2708
+ .qx-inline[data-justify="start"] {
2709
+ justify-content: flex-start;
2710
+ }
2711
+
2712
+ .qx-inline[data-justify="center"] {
2713
+ justify-content: center;
2714
+ }
2715
+
2716
+ .qx-inline[data-justify="end"] {
2717
+ justify-content: flex-end;
2718
+ }
2719
+
2720
+ .qx-inline[data-justify="between"] {
2721
+ justify-content: space-between;
2722
+ }
2723
+ }
2724
+
2725
+ @layer qx.components {
2726
+ .qx-input {
2727
+ align-items: center;
2728
+ gap: var(--qx-space-gap-sm);
2729
+ min-inline-size: 0;
2730
+ block-size: var(--qx-size-control-lg);
2731
+ padding-inline: var(--qx-space-inset-md);
2732
+ background: var(--qx-color-bg-neutral-subtle);
2733
+ box-shadow: inset 0 calc(-1 * var(--qx-border-width-default)) 0 var(--qx-color-border-strong);
2734
+ font: var(--qx-typography-body-md);
2735
+ font-variation-settings: "GEOM" var(--qx-font-geometry-body);
2736
+ color: var(--qx-color-text-default);
2737
+ cursor: text;
2738
+ transition-property: background-color;
2739
+ transition-duration: var(--qx-motion-duration-fast);
2740
+ transition-timing-function: var(--qx-motion-easing-standard);
2741
+ border: 0;
2742
+ border-start-start-radius: var(--qx-radius-control);
2743
+ border-start-end-radius: var(--qx-radius-control);
2744
+ display: flex;
2745
+ }
2746
+
2747
+ .qx-input:hover {
2748
+ background: var(--qx-color-bg-neutral-subtle-hover);
2749
+ }
2750
+
2751
+ .qx-input:has( > .qx-input-control[data-invalid]), .qx-input.qx-textarea[data-invalid] {
2752
+ outline: var(--qx-focus-ring-width) solid var(--qx-color-border-danger);
2753
+ outline-offset: calc(-1 * var(--qx-focus-ring-width));
2754
+ box-shadow: none;
2755
+ }
2756
+
2757
+ .qx-input:has( > .qx-input-control:focus), .qx-input.qx-textarea:focus {
2758
+ outline: var(--qx-focus-ring-width) solid var(--qx-color-border-focus);
2759
+ outline-offset: calc(-1 * var(--qx-focus-ring-width));
2760
+ box-shadow: none;
2761
+ background: var(--qx-color-bg-neutral-subtle);
2762
+ }
2763
+
2764
+ .qx-input:has( > .qx-input-control[readonly]), .qx-input.qx-textarea[readonly] {
2765
+ box-shadow: inset 0 calc(-1 * var(--qx-border-width-default)) 0 var(--qx-color-border-subtle);
2766
+ background: none;
2767
+ }
2768
+
2769
+ .qx-input:has( > .qx-input-control:disabled), .qx-input.qx-textarea:disabled {
2770
+ background: var(--qx-color-bg-disabled);
2771
+ box-shadow: inset 0 calc(-1 * var(--qx-border-width-default)) 0 var(--qx-color-border-disabled);
2772
+ color: var(--qx-color-text-disabled);
2773
+ cursor: not-allowed;
2774
+ }
2775
+
2776
+ .qx-input-control {
2777
+ block-size: 100%;
2778
+ min-inline-size: 0;
2779
+ font: inherit;
2780
+ color: inherit;
2781
+ cursor: inherit;
2782
+ background: none;
2783
+ border: 0;
2784
+ outline: 0;
2785
+ flex: 1;
2786
+ margin: 0;
2787
+ padding: 0;
2788
+ }
2789
+
2790
+ .qx-input-control::placeholder, .qx-textarea::placeholder {
2791
+ color: var(--qx-color-text-subtlest);
2792
+ opacity: 1;
2793
+ }
2794
+
2795
+ .qx-input-icon {
2796
+ color: var(--qx-color-icon-subtle);
2797
+ flex: none;
2798
+ }
2799
+
2800
+ .qx-input-adornment {
2801
+ color: var(--qx-color-text-subtle);
2802
+ flex: none;
2803
+ align-items: center;
2804
+ display: inline-flex;
2805
+ }
2806
+
2807
+ .qx-textarea {
2808
+ block-size: auto;
2809
+ inline-size: 100%;
2810
+ min-block-size: calc(var(--qx-textarea-rows) * 1lh + var(--qx-size-control-lg) - 1lh);
2811
+ padding-block: calc((var(--qx-size-control-lg) - 1lh) / 2);
2812
+ field-sizing: content;
2813
+ resize: vertical;
2814
+ display: block;
2815
+ }
2816
+
2817
+ .qx-textarea[data-max-rows] {
2818
+ max-block-size: calc(var(--qx-textarea-max-rows) * 1lh + var(--qx-size-control-lg) - 1lh);
2819
+ }
2820
+
2821
+ @media (forced-colors: active) {
2822
+ .qx-input {
2823
+ border: var(--qx-border-width-default) solid FieldText;
2824
+ }
2825
+
2826
+ .qx-input:has( > .qx-input-control:disabled), .qx-textarea:disabled {
2827
+ border-color: graytext;
2828
+ }
2829
+ }
2830
+ }
2831
+
2832
+ @layer qx.components {
2833
+ .qx-link {
2834
+ border-radius: var(--qx-radius-sm);
2835
+ color: var(--qx-color-text-link);
2836
+ text-decoration-line: underline;
2837
+ text-decoration-thickness: var(--qx-border-width-default);
2838
+ text-underline-offset: 3px;
2839
+ transition-property: color, text-decoration-thickness;
2840
+ transition-duration: var(--qx-motion-duration-fast);
2841
+ transition-timing-function: var(--qx-motion-easing-standard);
2842
+ align-items: baseline;
2843
+ gap: 2px;
2844
+ display: inline-flex;
2845
+ }
2846
+
2847
+ .qx-link:hover {
2848
+ color: var(--qx-color-text-link-hover);
2849
+ text-decoration-thickness: var(--qx-border-width-strong);
2850
+ }
2851
+
2852
+ .qx-link:focus-visible {
2853
+ outline: var(--qx-focus-ring-width) solid var(--qx-color-border-focus);
2854
+ outline-offset: var(--qx-focus-ring-offset);
2855
+ }
2856
+
2857
+ .qx-link[data-tone="subtle"] {
2858
+ color: var(--qx-color-text-subtle);
2859
+ }
2860
+
2861
+ .qx-link[data-tone="subtle"]:hover {
2862
+ color: var(--qx-color-text-default);
2863
+ }
2864
+
2865
+ .qx-link[data-tone="inherit"] {
2866
+ color: inherit;
2867
+ }
2868
+
2869
+ .qx-link .qx-link-icon {
2870
+ flex: none;
2871
+ align-self: center;
2872
+ }
2873
+ }
2874
+
2875
+ @layer qx.components {
2876
+ .qx-menu-positioner {
2877
+ z-index: var(--qx-z-popover);
2878
+ }
2879
+
2880
+ .qx-menu {
2881
+ min-inline-size: 200px;
2882
+ max-inline-size: min(320px, var(--available-width));
2883
+ max-block-size: var(--available-height);
2884
+ border: var(--qx-border-width-default) solid var(--qx-color-border-subtle);
2885
+ border-radius: var(--qx-radius-overlay);
2886
+ background: var(--qx-color-surface-overlay);
2887
+ box-shadow: var(--qx-shadow-overlay);
2888
+ color: var(--qx-color-text-default);
2889
+ transition-property: opacity, translate;
2890
+ transition-duration: var(--qx-motion-duration-normal);
2891
+ transition-timing-function: var(--qx-motion-easing-enter);
2892
+ outline: 0;
2893
+ padding-block: 4px;
2894
+ overflow-y: auto;
2895
+ }
2896
+
2897
+ .qx-menu[data-starting-style], .qx-menu[data-ending-style] {
2898
+ opacity: 0;
2899
+ }
2900
+
2901
+ .qx-menu[data-side="bottom"]:is([data-starting-style], [data-ending-style]) {
2902
+ translate: 0 -4px;
2903
+ }
2904
+
2905
+ .qx-menu[data-side="top"]:is([data-starting-style], [data-ending-style]) {
2906
+ translate: 0 4px;
2907
+ }
2908
+
2909
+ .qx-menu[data-ending-style] {
2910
+ transition-duration: var(--qx-motion-duration-fast);
2911
+ transition-timing-function: var(--qx-motion-easing-exit);
2912
+ }
2913
+
2914
+ .qx-menu-item-icon {
2915
+ color: var(--qx-color-icon-subtle);
2916
+ flex: none;
2917
+ }
2918
+
2919
+ .qx-menu-item {
2920
+ align-items: center;
2921
+ gap: var(--qx-space-gap-sm);
2922
+ block-size: var(--qx-size-control-md);
2923
+ padding-inline: var(--qx-space-inset-md);
2924
+ font: var(--qx-typography-body-md);
2925
+ font-variation-settings: "GEOM" var(--qx-font-geometry-body);
2926
+ white-space: nowrap;
2927
+ cursor: default;
2928
+ -webkit-user-select: none;
2929
+ user-select: none;
2930
+ outline: 0;
2931
+ display: flex;
2932
+ position: relative;
2933
+ }
2934
+
2935
+ .qx-menu-item[data-highlighted] {
2936
+ background: var(--qx-color-bg-neutral-subtle-hover);
2937
+ }
2938
+
2939
+ .qx-menu-item[data-highlighted]:before {
2940
+ content: "";
2941
+ inline-size: var(--qx-border-width-strong);
2942
+ background: var(--qx-color-border-brand);
2943
+ position: absolute;
2944
+ inset-block: 0;
2945
+ inset-inline-start: 0;
2946
+ }
2947
+
2948
+ .qx-menu-item[data-popup-open] {
2949
+ background: var(--qx-color-bg-neutral-subtle-hover);
2950
+ }
2951
+
2952
+ .qx-menu-item[data-tone="danger"] {
2953
+ color: var(--qx-color-text-danger);
2954
+ }
2955
+
2956
+ .qx-menu-item[data-tone="danger"] .qx-menu-item-icon {
2957
+ color: var(--qx-color-icon-danger);
2958
+ }
2959
+
2960
+ .qx-menu-item[data-disabled] {
2961
+ color: var(--qx-color-text-disabled);
2962
+ }
2963
+
2964
+ .qx-menu-item[data-disabled] .qx-menu-item-icon {
2965
+ color: var(--qx-color-icon-disabled);
2966
+ }
2967
+
2968
+ .qx-menu-item-label {
2969
+ text-overflow: ellipsis;
2970
+ flex: 1;
2971
+ min-inline-size: 0;
2972
+ overflow: hidden;
2973
+ }
2974
+
2975
+ .qx-menu-shortcut {
2976
+ font: var(--qx-typography-code-sm);
2977
+ color: var(--qx-color-text-subtlest);
2978
+ margin-inline-start: var(--qx-space-gap-lg);
2979
+ }
2980
+
2981
+ .qx-menu-submenu-icon {
2982
+ color: var(--qx-color-icon-subtle);
2983
+ flex: none;
2984
+ }
2985
+
2986
+ [dir="rtl"] .qx-menu-submenu-icon {
2987
+ scale: -1 1;
2988
+ }
2989
+
2990
+ .qx-menu-mark {
2991
+ flex: none;
2992
+ place-items: center;
2993
+ block-size: 16px;
2994
+ inline-size: 16px;
2995
+ display: inline-grid;
2996
+ }
2997
+
2998
+ .qx-menu-mark-indicator {
2999
+ display: flex;
3000
+ }
3001
+
3002
+ .qx-menu-dot {
3003
+ border-radius: var(--qx-radius-full);
3004
+ background: currentColor;
3005
+ block-size: 6px;
3006
+ inline-size: 6px;
3007
+ }
3008
+
3009
+ .qx-menu-group-label {
3010
+ padding: 8px var(--qx-space-inset-md) 4px;
3011
+ font: var(--qx-typography-label-sm);
3012
+ font-variation-settings: "GEOM" var(--qx-font-geometry-body);
3013
+ color: var(--qx-color-text-subtle);
3014
+ }
3015
+
3016
+ .qx-menu-separator {
3017
+ block-size: var(--qx-border-width-default);
3018
+ background: var(--qx-color-border-subtle);
3019
+ margin-block: 4px;
3020
+ }
3021
+
3022
+ @media (forced-colors: active) {
3023
+ .qx-menu-item[data-highlighted] {
3024
+ forced-color-adjust: none;
3025
+ color: highlighttext;
3026
+ background: highlight;
3027
+ }
3028
+
3029
+ .qx-menu-item[data-highlighted] .qx-menu-item-icon, .qx-menu-item[data-highlighted] .qx-menu-submenu-icon {
3030
+ color: highlighttext;
3031
+ }
3032
+
3033
+ .qx-menu-separator {
3034
+ forced-color-adjust: none;
3035
+ background: canvastext;
3036
+ }
3037
+ }
3038
+ }
3039
+
3040
+ @layer qx.components {
3041
+ .qx-popover-positioner {
3042
+ z-index: var(--qx-z-popover);
3043
+ }
3044
+
3045
+ .qx-popover {
3046
+ gap: var(--qx-space-gap-md);
3047
+ min-inline-size: 0;
3048
+ max-inline-size: min(360px, var(--available-width));
3049
+ max-block-size: var(--available-height);
3050
+ padding: var(--qx-space-inset-lg);
3051
+ border: var(--qx-border-width-default) solid var(--qx-color-border-subtle);
3052
+ border-radius: var(--qx-radius-overlay);
3053
+ background: var(--qx-color-surface-overlay);
3054
+ box-shadow: var(--qx-shadow-overlay);
3055
+ color: var(--qx-color-text-default);
3056
+ font: var(--qx-typography-body-md);
3057
+ font-variation-settings: "GEOM" var(--qx-font-geometry-body);
3058
+ transform-origin: var(--transform-origin);
3059
+ transition-property: opacity, translate;
3060
+ transition-duration: var(--qx-motion-duration-normal);
3061
+ transition-timing-function: var(--qx-motion-easing-enter);
3062
+ outline: 0;
3063
+ flex-direction: column;
3064
+ display: flex;
3065
+ overflow: auto;
3066
+ }
3067
+
3068
+ .qx-popover[data-starting-style], .qx-popover[data-ending-style] {
3069
+ opacity: 0;
3070
+ }
3071
+
3072
+ .qx-popover[data-side="bottom"]:is([data-starting-style], [data-ending-style]) {
3073
+ translate: 0 -4px;
3074
+ }
3075
+
3076
+ .qx-popover[data-side="top"]:is([data-starting-style], [data-ending-style]) {
3077
+ translate: 0 4px;
3078
+ }
3079
+
3080
+ .qx-popover[data-side="left"]:is([data-starting-style], [data-ending-style]) {
3081
+ translate: 4px;
3082
+ }
3083
+
3084
+ .qx-popover[data-side="right"]:is([data-starting-style], [data-ending-style]) {
3085
+ translate: -4px;
3086
+ }
3087
+
3088
+ .qx-popover[data-ending-style] {
3089
+ transition-duration: var(--qx-motion-duration-fast);
3090
+ transition-timing-function: var(--qx-motion-easing-exit);
3091
+ }
3092
+
3093
+ .qx-popover-header {
3094
+ gap: var(--qx-space-gap-xs);
3095
+ flex-direction: column;
3096
+ display: flex;
3097
+ }
3098
+
3099
+ .qx-popover-title {
3100
+ font: var(--qx-typography-title-sm);
3101
+ font-variation-settings: "GEOM" var(--qx-font-geometry-heading);
3102
+ margin: 0;
3103
+ }
3104
+
3105
+ .qx-popover-description {
3106
+ color: var(--qx-color-text-subtle);
3107
+ margin: 0;
3108
+ }
3109
+ }
3110
+
3111
+ @layer qx.components {
3112
+ .qx-progress {
3113
+ gap: var(--qx-space-gap-xs);
3114
+ flex-direction: column;
3115
+ min-inline-size: 0;
3116
+ display: flex;
3117
+ }
3118
+
3119
+ .qx-progress-header {
3120
+ justify-content: space-between;
3121
+ align-items: baseline;
3122
+ gap: var(--qx-space-gap-md);
3123
+ display: flex;
3124
+ }
3125
+
3126
+ .qx-progress-label {
3127
+ font: var(--qx-typography-label-sm);
3128
+ font-variation-settings: "GEOM" var(--qx-font-geometry-body);
3129
+ color: var(--qx-color-text-subtle);
3130
+ }
3131
+
3132
+ .qx-progress-value {
3133
+ font: var(--qx-typography-label-sm);
3134
+ font-variation-settings: "GEOM" var(--qx-font-geometry-body);
3135
+ font-variant-numeric: tabular-nums;
3136
+ color: var(--qx-color-text-default);
3137
+ }
3138
+
3139
+ .qx-progress-track {
3140
+ background: var(--qx-color-border-default);
3141
+ block-size: 4px;
3142
+ position: relative;
3143
+ overflow: hidden;
3144
+ }
3145
+
3146
+ .qx-progress-indicator {
3147
+ background: var(--qx-color-bg-brand-bold);
3148
+ block-size: 100%;
3149
+ transition-property: inline-size;
3150
+ transition-duration: var(--qx-motion-duration-normal);
3151
+ transition-timing-function: var(--qx-motion-easing-standard);
3152
+ }
3153
+
3154
+ [data-tone="success"] .qx-progress-indicator {
3155
+ background: var(--qx-color-bg-success-bold);
3156
+ }
3157
+
3158
+ [data-tone="warning"] .qx-progress-indicator {
3159
+ background: var(--qx-color-bg-warning-bold);
3160
+ }
3161
+
3162
+ [data-tone="danger"] .qx-progress-indicator {
3163
+ background: var(--qx-color-bg-danger-bold);
3164
+ }
3165
+
3166
+ .qx-progress-indicator[data-indeterminate] {
3167
+ inline-size: 30%;
3168
+ animation-name: qx-progress-slide;
3169
+ animation-duration: calc(4 * var(--qx-motion-duration-slower));
3170
+ animation-timing-function: var(--qx-motion-easing-standard);
3171
+ animation-iteration-count: infinite;
3172
+ }
3173
+
3174
+ @keyframes qx-progress-slide {
3175
+ from {
3176
+ translate: -100%;
3177
+ }
3178
+
3179
+ to {
3180
+ translate: 334%;
3181
+ }
3182
+ }
3183
+
3184
+ @media (prefers-reduced-motion: reduce) {
3185
+ .qx-progress-indicator[data-indeterminate] {
3186
+ inline-size: 100%;
3187
+ animation: 1.6s ease-in-out infinite qx-progress-fade;
3188
+ }
3189
+ }
3190
+
3191
+ @keyframes qx-progress-fade {
3192
+ 50% {
3193
+ opacity: .35;
3194
+ }
3195
+ }
3196
+
3197
+ @media (forced-colors: active) {
3198
+ .qx-progress-track, .qx-progress-indicator {
3199
+ forced-color-adjust: none;
3200
+ }
3201
+
3202
+ .qx-progress-track {
3203
+ background: graytext;
3204
+ }
3205
+
3206
+ .qx-progress-indicator {
3207
+ background: highlight;
3208
+ }
3209
+ }
3210
+ }
3211
+
3212
+ @layer qx.components {
3213
+ .qx-radio {
3214
+ border: var(--qx-border-width-default) solid var(--qx-color-border-strong);
3215
+ border-radius: var(--qx-radius-full);
3216
+ background: var(--qx-color-bg-input);
3217
+ cursor: pointer;
3218
+ block-size: 16px;
3219
+ inline-size: 16px;
3220
+ transition-property: border-color, border-width;
3221
+ transition-duration: var(--qx-motion-duration-fast);
3222
+ transition-timing-function: var(--qx-motion-easing-standard);
3223
+ flex: none;
3224
+ display: inline-block;
3225
+ }
3226
+
3227
+ .qx-radio:hover:not([data-disabled], [data-readonly]) {
3228
+ border-color: var(--qx-color-border-strong-hover);
3229
+ }
3230
+
3231
+ .qx-radio[data-invalid] {
3232
+ border-color: var(--qx-color-border-danger);
3233
+ }
3234
+
3235
+ .qx-radio[data-checked] {
3236
+ border-width: 5px;
3237
+ border-color: var(--qx-color-bg-brand-bold);
3238
+ }
3239
+
3240
+ .qx-radio[data-checked]:hover:not([data-disabled], [data-readonly]) {
3241
+ border-color: var(--qx-color-bg-brand-bold-hover);
3242
+ }
3243
+
3244
+ .qx-radio[data-disabled] {
3245
+ border-color: var(--qx-color-border-disabled);
3246
+ background: var(--qx-color-bg-disabled);
3247
+ cursor: not-allowed;
3248
+ }
3249
+
3250
+ .qx-radio[data-disabled][data-checked] {
3251
+ border-color: var(--qx-color-icon-disabled);
3252
+ }
3253
+
3254
+ .qx-radio[data-readonly] {
3255
+ cursor: default;
3256
+ }
3257
+
3258
+ .qx-radio:focus-visible {
3259
+ outline: var(--qx-focus-ring-width) solid var(--qx-color-border-focus);
3260
+ outline-offset: var(--qx-focus-ring-offset);
3261
+ }
3262
+ }
3263
+
3264
+ @layer qx.components {
3265
+ .qx-scroll-area {
3266
+ min-block-size: 0;
3267
+ min-inline-size: 0;
3268
+ display: flex;
3269
+ position: relative;
3270
+ }
3271
+
3272
+ .qx-scroll-area-viewport {
3273
+ overscroll-behavior: contain;
3274
+ outline: 0;
3275
+ flex: 1;
3276
+ min-inline-size: 0;
3277
+ }
3278
+
3279
+ .qx-scroll-area-viewport:focus-visible {
3280
+ outline: var(--qx-focus-ring-width) solid var(--qx-color-border-focus);
3281
+ outline-offset: calc(-1 * var(--qx-focus-ring-width));
3282
+ }
3283
+
3284
+ .qx-scroll-area-scrollbar {
3285
+ opacity: 0;
3286
+ transition-property: opacity;
3287
+ transition-duration: var(--qx-motion-duration-normal);
3288
+ transition-timing-function: var(--qx-motion-easing-standard);
3289
+ padding: 2px;
3290
+ display: flex;
3291
+ }
3292
+
3293
+ .qx-scroll-area-scrollbar[data-orientation="vertical"] {
3294
+ inline-size: 8px;
3295
+ }
3296
+
3297
+ .qx-scroll-area-scrollbar[data-orientation="horizontal"] {
3298
+ block-size: 8px;
3299
+ }
3300
+
3301
+ .qx-scroll-area-scrollbar:is([data-hovering], [data-scrolling]), .qx-scroll-area:has( > .qx-scroll-area-viewport:focus-visible) > .qx-scroll-area-scrollbar {
3302
+ opacity: 1;
3303
+ }
3304
+
3305
+ .qx-scroll-area-thumb {
3306
+ border-radius: var(--qx-radius-sm);
3307
+ background: var(--qx-color-border-strong);
3308
+ flex: 1;
3309
+ }
3310
+
3311
+ [data-orientation="vertical"] > .qx-scroll-area-thumb {
3312
+ inline-size: 100%;
3313
+ block-size: var(--scroll-area-thumb-height);
3314
+ }
3315
+
3316
+ [data-orientation="horizontal"] > .qx-scroll-area-thumb {
3317
+ inline-size: var(--scroll-area-thumb-width);
3318
+ block-size: 100%;
3319
+ }
3320
+
3321
+ .qx-scroll-area-thumb:hover, .qx-scroll-area-thumb:active {
3322
+ background: var(--qx-color-icon-subtle);
3323
+ }
3324
+
3325
+ @media (forced-colors: active) {
3326
+ .qx-scroll-area-thumb {
3327
+ forced-color-adjust: none;
3328
+ background: canvastext;
3329
+ }
3330
+ }
3331
+ }
3332
+
3333
+ @layer qx.components {
3334
+ .qx-select-trigger {
3335
+ align-items: center;
3336
+ gap: var(--qx-space-gap-sm);
3337
+ inline-size: 100%;
3338
+ min-inline-size: 0;
3339
+ block-size: var(--qx-size-control-lg);
3340
+ padding-inline: var(--qx-space-inset-md);
3341
+ background: var(--qx-color-bg-neutral-subtle);
3342
+ box-shadow: inset 0 calc(-1 * var(--qx-border-width-default)) 0 var(--qx-color-border-strong);
3343
+ color: var(--qx-color-text-default);
3344
+ font: var(--qx-typography-body-md);
3345
+ font-variation-settings: "GEOM" var(--qx-font-geometry-body);
3346
+ text-align: start;
3347
+ cursor: pointer;
3348
+ transition-property: background-color;
3349
+ transition-duration: var(--qx-motion-duration-fast);
3350
+ transition-timing-function: var(--qx-motion-easing-standard);
3351
+ border: 0;
3352
+ border-start-start-radius: var(--qx-radius-control);
3353
+ border-start-end-radius: var(--qx-radius-control);
3354
+ display: flex;
3355
+ }
3356
+
3357
+ .qx-select-trigger:hover {
3358
+ background: var(--qx-color-bg-neutral-subtle-hover);
3359
+ }
3360
+
3361
+ .qx-select-trigger[data-invalid] {
3362
+ outline: var(--qx-focus-ring-width) solid var(--qx-color-border-danger);
3363
+ outline-offset: calc(-1 * var(--qx-focus-ring-width));
3364
+ box-shadow: none;
3365
+ }
3366
+
3367
+ .qx-select-trigger:focus-visible, .qx-select-trigger[data-popup-open] {
3368
+ outline: var(--qx-focus-ring-width) solid var(--qx-color-border-focus);
3369
+ outline-offset: calc(-1 * var(--qx-focus-ring-width));
3370
+ box-shadow: none;
3371
+ background: var(--qx-color-bg-neutral-subtle);
3372
+ }
3373
+
3374
+ .qx-select-trigger[data-readonly] {
3375
+ box-shadow: inset 0 calc(-1 * var(--qx-border-width-default)) 0 var(--qx-color-border-subtle);
3376
+ cursor: default;
3377
+ background: none;
3378
+ }
3379
+
3380
+ .qx-select-trigger[data-disabled] {
3381
+ background: var(--qx-color-bg-disabled);
3382
+ box-shadow: inset 0 calc(-1 * var(--qx-border-width-default)) 0 var(--qx-color-border-disabled);
3383
+ color: var(--qx-color-text-disabled);
3384
+ cursor: not-allowed;
3385
+ }
3386
+
3387
+ .qx-select-value {
3388
+ text-overflow: ellipsis;
3389
+ white-space: nowrap;
3390
+ flex: 1;
3391
+ min-inline-size: 0;
3392
+ overflow: hidden;
3393
+ }
3394
+
3395
+ .qx-select-value[data-placeholder] {
3396
+ color: var(--qx-color-text-subtlest);
3397
+ }
3398
+
3399
+ .qx-select-icon {
3400
+ color: var(--qx-color-icon-default);
3401
+ flex: none;
3402
+ display: flex;
3403
+ }
3404
+
3405
+ [data-disabled] > .qx-select-icon {
3406
+ color: var(--qx-color-icon-disabled);
3407
+ }
3408
+
3409
+ .qx-select-positioner {
3410
+ z-index: var(--qx-z-popover);
3411
+ }
3412
+
3413
+ .qx-select-popup {
3414
+ min-inline-size: var(--anchor-width);
3415
+ max-inline-size: var(--available-width);
3416
+ max-block-size: min(320px, var(--available-height));
3417
+ border: var(--qx-border-width-default) solid var(--qx-color-border-subtle);
3418
+ border-radius: var(--qx-radius-overlay);
3419
+ background: var(--qx-color-surface-overlay);
3420
+ box-shadow: var(--qx-shadow-overlay);
3421
+ color: var(--qx-color-text-default);
3422
+ transition-property: opacity, translate;
3423
+ transition-duration: var(--qx-motion-duration-normal);
3424
+ transition-timing-function: var(--qx-motion-easing-enter);
3425
+ outline: 0;
3426
+ padding-block: 4px;
3427
+ overflow-y: auto;
3428
+ }
3429
+
3430
+ .qx-select-popup[data-starting-style], .qx-select-popup[data-ending-style] {
3431
+ opacity: 0;
3432
+ }
3433
+
3434
+ .qx-select-popup[data-side="bottom"]:is([data-starting-style], [data-ending-style]) {
3435
+ translate: 0 -4px;
3436
+ }
3437
+
3438
+ .qx-select-popup[data-side="top"]:is([data-starting-style], [data-ending-style]) {
3439
+ translate: 0 4px;
3440
+ }
3441
+
3442
+ .qx-select-popup[data-ending-style] {
3443
+ transition-duration: var(--qx-motion-duration-fast);
3444
+ transition-timing-function: var(--qx-motion-easing-exit);
3445
+ }
3446
+
3447
+ .qx-select-option {
3448
+ align-items: center;
3449
+ gap: var(--qx-space-gap-sm);
3450
+ block-size: var(--qx-size-control-md);
3451
+ padding-inline: var(--qx-space-inset-md);
3452
+ font: var(--qx-typography-body-md);
3453
+ font-variation-settings: "GEOM" var(--qx-font-geometry-body);
3454
+ cursor: default;
3455
+ -webkit-user-select: none;
3456
+ user-select: none;
3457
+ outline: 0;
3458
+ display: flex;
3459
+ position: relative;
3460
+ }
3461
+
3462
+ .qx-select-option[data-highlighted] {
3463
+ background: var(--qx-color-bg-neutral-subtle-hover);
3464
+ }
3465
+
3466
+ .qx-select-option[data-highlighted]:before {
3467
+ content: "";
3468
+ inline-size: var(--qx-border-width-strong);
3469
+ background: var(--qx-color-border-brand);
3470
+ position: absolute;
3471
+ inset-block: 0;
3472
+ inset-inline-start: 0;
3473
+ }
3474
+
3475
+ .qx-select-option[data-selected] {
3476
+ font-weight: var(--qx-typography-label-md-font-weight);
3477
+ }
3478
+
3479
+ .qx-select-option[data-disabled] {
3480
+ color: var(--qx-color-text-disabled);
3481
+ }
3482
+
3483
+ .qx-select-option-text {
3484
+ text-overflow: ellipsis;
3485
+ white-space: nowrap;
3486
+ flex: 1;
3487
+ min-inline-size: 0;
3488
+ overflow: hidden;
3489
+ }
3490
+
3491
+ .qx-select-option-check {
3492
+ color: var(--qx-color-icon-brand);
3493
+ flex: none;
3494
+ display: flex;
3495
+ }
3496
+
3497
+ .qx-select-group-label {
3498
+ padding: 8px var(--qx-space-inset-md) 4px;
3499
+ font: var(--qx-typography-label-sm);
3500
+ font-variation-settings: "GEOM" var(--qx-font-geometry-body);
3501
+ color: var(--qx-color-text-subtle);
3502
+ }
3503
+
3504
+ @media (forced-colors: active) {
3505
+ .qx-select-trigger {
3506
+ border: var(--qx-border-width-default) solid ButtonText;
3507
+ }
3508
+
3509
+ .qx-select-option[data-highlighted] {
3510
+ forced-color-adjust: none;
3511
+ color: highlighttext;
3512
+ background: highlight;
3513
+ }
3514
+
3515
+ .qx-select-option[data-highlighted] .qx-select-option-check {
3516
+ color: highlighttext;
3517
+ }
3518
+ }
3519
+ }
3520
+
3521
+ @layer qx.components {
3522
+ .qx-separator {
3523
+ background: var(--qx-color-border-subtle);
3524
+ border: 0;
3525
+ flex: none;
3526
+ margin: 0;
3527
+ }
3528
+
3529
+ .qx-separator[data-orientation="horizontal"] {
3530
+ inline-size: 100%;
3531
+ block-size: var(--qx-border-width-default);
3532
+ }
3533
+
3534
+ .qx-separator[data-orientation="vertical"] {
3535
+ inline-size: var(--qx-border-width-default);
3536
+ align-self: stretch;
3537
+ }
3538
+
3539
+ .qx-separator[data-tone="default"] {
3540
+ background: var(--qx-color-border-default);
3541
+ }
3542
+
3543
+ .qx-separator[data-tone="strong"] {
3544
+ background: var(--qx-color-border-strong);
3545
+ }
3546
+
3547
+ @media (forced-colors: active) {
3548
+ .qx-separator {
3549
+ forced-color-adjust: none;
3550
+ background: canvastext;
3551
+ }
3552
+ }
3553
+ }
3554
+
3555
+ @layer qx.components {
3556
+ .qx-skeleton {
3557
+ border-radius: var(--qx-radius-sm);
3558
+ background: var(--qx-color-bg-neutral-subtle-pressed);
3559
+ block-size: 1lh;
3560
+ inline-size: 100%;
3561
+ animation-name: qx-skeleton-pulse;
3562
+ animation-duration: calc(4 * var(--qx-motion-duration-slower));
3563
+ animation-timing-function: var(--qx-motion-easing-standard);
3564
+ animation-iteration-count: infinite;
3565
+ animation-direction: alternate;
3566
+ display: block;
3567
+ }
3568
+
3569
+ .qx-skeleton[data-variant="block"] {
3570
+ border-radius: var(--qx-radius-surface);
3571
+ block-size: 64px;
3572
+ }
3573
+
3574
+ .qx-skeleton[data-variant="circle"] {
3575
+ border-radius: var(--qx-radius-full);
3576
+ block-size: 32px;
3577
+ inline-size: 32px;
3578
+ }
3579
+
3580
+ @keyframes qx-skeleton-pulse {
3581
+ to {
3582
+ opacity: .45;
3583
+ }
3584
+ }
3585
+
3586
+ @media (forced-colors: active) {
3587
+ .qx-skeleton {
3588
+ border: var(--qx-border-width-default) solid GrayText;
3589
+ }
3590
+ }
3591
+ }
3592
+
3593
+ @layer qx.components {
3594
+ .qx-skip-link {
3595
+ z-index: var(--qx-z-skip-link);
3596
+ padding: var(--qx-space-inset-sm) var(--qx-space-inset-md);
3597
+ border-radius: var(--qx-radius-control);
3598
+ background: var(--qx-color-surface-overlay);
3599
+ box-shadow: var(--qx-shadow-overlay);
3600
+ color: var(--qx-color-text-link);
3601
+ font: var(--qx-typography-label-md);
3602
+ text-underline-offset: 3px;
3603
+ text-decoration: underline;
3604
+ position: fixed;
3605
+ inset-block-start: var(--qx-space-inset-sm);
3606
+ inset-inline-start: var(--qx-space-inset-sm);
3607
+ }
3608
+
3609
+ .qx-skip-link:not(:focus) {
3610
+ clip-path: inset(50%);
3611
+ white-space: nowrap;
3612
+ block-size: 1px;
3613
+ inline-size: 1px;
3614
+ margin: -1px;
3615
+ padding: 0;
3616
+ overflow: hidden;
3617
+ }
3618
+
3619
+ .qx-skip-link:focus-visible {
3620
+ outline: var(--qx-focus-ring-width) solid var(--qx-color-border-focus);
3621
+ outline-offset: var(--qx-focus-ring-offset);
3622
+ }
3623
+ }
3624
+
3625
+ @layer qx.components {
3626
+ .qx-slider {
3627
+ gap: var(--qx-space-gap-xs);
3628
+ flex-direction: column;
3629
+ min-inline-size: 0;
3630
+ display: flex;
3631
+ }
3632
+
3633
+ .qx-slider-header {
3634
+ justify-content: space-between;
3635
+ align-items: baseline;
3636
+ gap: var(--qx-space-gap-md);
3637
+ display: flex;
3638
+ }
3639
+
3640
+ .qx-slider-label {
3641
+ font: var(--qx-typography-label-sm);
3642
+ font-variation-settings: "GEOM" var(--qx-font-geometry-body);
3643
+ color: var(--qx-color-text-subtle);
3644
+ }
3645
+
3646
+ .qx-slider-value {
3647
+ font: var(--qx-typography-label-sm);
3648
+ font-variation-settings: "GEOM" var(--qx-font-geometry-body);
3649
+ font-variant-numeric: tabular-nums;
3650
+ color: var(--qx-color-text-default);
3651
+ }
3652
+
3653
+ .qx-slider-control {
3654
+ block-size: var(--qx-size-target-min);
3655
+ touch-action: none;
3656
+ -webkit-user-select: none;
3657
+ user-select: none;
3658
+ align-items: center;
3659
+ padding-inline: 8px;
3660
+ display: flex;
3661
+ }
3662
+
3663
+ .qx-slider-track {
3664
+ background: var(--qx-color-border-default);
3665
+ block-size: 4px;
3666
+ inline-size: 100%;
3667
+ position: relative;
3668
+ }
3669
+
3670
+ .qx-slider-indicator {
3671
+ background: var(--qx-color-bg-brand-bold);
3672
+ block-size: 100%;
3673
+ }
3674
+
3675
+ [data-disabled] .qx-slider-indicator {
3676
+ background: var(--qx-color-bg-disabled);
3677
+ }
3678
+
3679
+ .qx-slider-thumb {
3680
+ border-radius: var(--qx-radius-sm);
3681
+ background: var(--qx-color-bg-brand-bold);
3682
+ block-size: 16px;
3683
+ inline-size: 16px;
3684
+ box-shadow: 0 0 0 var(--qx-border-width-strong) var(--qx-color-surface-default);
3685
+ cursor: grab;
3686
+ transition-property: background-color;
3687
+ transition-duration: var(--qx-motion-duration-fast);
3688
+ transition-timing-function: var(--qx-motion-easing-standard);
3689
+ }
3690
+
3691
+ .qx-slider-thumb:hover {
3692
+ background: var(--qx-color-bg-brand-bold-hover);
3693
+ }
3694
+
3695
+ .qx-slider-thumb[data-dragging] {
3696
+ cursor: grabbing;
3697
+ }
3698
+
3699
+ .qx-slider-thumb:has(:focus-visible) {
3700
+ outline: var(--qx-focus-ring-width) solid var(--qx-color-border-focus);
3701
+ outline-offset: var(--qx-focus-ring-offset);
3702
+ }
3703
+
3704
+ .qx-slider-thumb[data-disabled] {
3705
+ background: var(--qx-color-icon-disabled);
3706
+ cursor: not-allowed;
3707
+ }
3708
+
3709
+ @media (forced-colors: active) {
3710
+ .qx-slider-track, .qx-slider-indicator, .qx-slider-thumb {
3711
+ forced-color-adjust: none;
3712
+ }
3713
+
3714
+ .qx-slider-track {
3715
+ background: graytext;
3716
+ }
3717
+
3718
+ .qx-slider-indicator, .qx-slider-thumb {
3719
+ background: highlight;
3720
+ }
3721
+
3722
+ .qx-slider-thumb {
3723
+ box-shadow: 0 0 0 var(--qx-border-width-strong) Canvas;
3724
+ }
3725
+
3726
+ .qx-slider-thumb[data-disabled], [data-disabled] .qx-slider-indicator {
3727
+ background: graytext;
3728
+ }
3729
+ }
3730
+ }
3731
+
3732
+ @layer qx.components {
3733
+ .qx-spinner {
3734
+ border: 2px solid;
3735
+ border-radius: var(--qx-radius-full);
3736
+ block-size: 16px;
3737
+ inline-size: 16px;
3738
+ animation-name: qx-spinner-turn;
3739
+ animation-duration: calc(2 * var(--qx-motion-duration-slower));
3740
+ animation-timing-function: var(--qx-motion-easing-linear);
3741
+ border-inline-end-color: #0000;
3742
+ flex: none;
3743
+ animation-iteration-count: infinite;
3744
+ display: inline-block;
3745
+ }
3746
+
3747
+ .qx-spinner[data-size="sm"] {
3748
+ block-size: 14px;
3749
+ inline-size: 14px;
3750
+ }
3751
+
3752
+ .qx-spinner[data-size="lg"] {
3753
+ block-size: 20px;
3754
+ inline-size: 20px;
3755
+ }
3756
+
3757
+ .qx-spinner[data-size="xl"] {
3758
+ block-size: 24px;
3759
+ inline-size: 24px;
3760
+ }
3761
+
3762
+ .qx-spinner[data-tone="brand"] {
3763
+ color: var(--qx-color-icon-brand);
3764
+ }
3765
+
3766
+ @keyframes qx-spinner-turn {
3767
+ to {
3768
+ rotate: 1turn;
3769
+ }
3770
+ }
3771
+
3772
+ @media (prefers-reduced-motion: reduce) {
3773
+ .qx-spinner {
3774
+ border-inline-end-color: currentColor;
3775
+ animation: 1.6s ease-in-out infinite qx-spinner-fade;
3776
+ }
3777
+ }
3778
+
3779
+ @keyframes qx-spinner-fade {
3780
+ 50% {
3781
+ opacity: .35;
3782
+ }
3783
+ }
3784
+ }
3785
+
3786
+ @layer qx.components {
3787
+ .qx-stack {
3788
+ flex-direction: column;
3789
+ display: flex;
3790
+ }
3791
+
3792
+ .qx-stack[data-gap="none"] {
3793
+ gap: 0;
3794
+ }
3795
+
3796
+ .qx-stack[data-gap="xs"] {
3797
+ gap: var(--qx-space-gap-xs);
3798
+ }
3799
+
3800
+ .qx-stack[data-gap="sm"] {
3801
+ gap: var(--qx-space-gap-sm);
3802
+ }
3803
+
3804
+ .qx-stack[data-gap="md"] {
3805
+ gap: var(--qx-space-gap-md);
3806
+ }
3807
+
3808
+ .qx-stack[data-gap="lg"] {
3809
+ gap: var(--qx-space-gap-lg);
3810
+ }
3811
+
3812
+ .qx-stack[data-gap="xl"] {
3813
+ gap: var(--qx-space-gap-xl);
3814
+ }
3815
+
3816
+ .qx-stack[data-gap="2xl"] {
3817
+ gap: var(--qx-space-layout-md);
3818
+ }
3819
+
3820
+ .qx-stack[data-gap="3xl"] {
3821
+ gap: var(--qx-space-layout-lg);
3822
+ }
3823
+
3824
+ .qx-stack[data-gap="4xl"] {
3825
+ gap: var(--qx-space-layout-xl);
3826
+ }
3827
+
3828
+ .qx-stack[data-align="start"] {
3829
+ align-items: flex-start;
3830
+ }
3831
+
3832
+ .qx-stack[data-align="center"] {
3833
+ align-items: center;
3834
+ }
3835
+
3836
+ .qx-stack[data-align="end"] {
3837
+ align-items: flex-end;
3838
+ }
3839
+
3840
+ .qx-stack[data-align="stretch"] {
3841
+ align-items: stretch;
3842
+ }
3843
+
3844
+ .qx-stack[data-justify="start"] {
3845
+ justify-content: flex-start;
3846
+ }
3847
+
3848
+ .qx-stack[data-justify="center"] {
3849
+ justify-content: center;
3850
+ }
3851
+
3852
+ .qx-stack[data-justify="end"] {
3853
+ justify-content: flex-end;
3854
+ }
3855
+
3856
+ .qx-stack[data-justify="between"] {
3857
+ justify-content: space-between;
3858
+ }
3859
+ }
3860
+
3861
+ @layer qx.components {
3862
+ .qx-switch {
3863
+ border: var(--qx-border-width-default) solid var(--qx-color-border-strong);
3864
+ border-radius: var(--qx-radius-sm);
3865
+ background: var(--qx-color-bg-input);
3866
+ cursor: pointer;
3867
+ block-size: 18px;
3868
+ inline-size: 32px;
3869
+ transition-property: background-color, border-color;
3870
+ transition-duration: var(--qx-motion-duration-fast);
3871
+ transition-timing-function: var(--qx-motion-easing-standard);
3872
+ flex: none;
3873
+ display: inline-block;
3874
+ position: relative;
3875
+ }
3876
+
3877
+ .qx-switch:hover:not([data-disabled], [data-readonly]) {
3878
+ border-color: var(--qx-color-border-strong-hover);
3879
+ }
3880
+
3881
+ .qx-switch[data-invalid] {
3882
+ border-color: var(--qx-color-border-danger);
3883
+ }
3884
+
3885
+ .qx-switch[data-checked] {
3886
+ border-color: var(--qx-color-bg-brand-bold);
3887
+ background: var(--qx-color-bg-brand-bold);
3888
+ }
3889
+
3890
+ .qx-switch[data-checked]:hover:not([data-disabled], [data-readonly]) {
3891
+ border-color: var(--qx-color-bg-brand-bold-hover);
3892
+ background: var(--qx-color-bg-brand-bold-hover);
3893
+ }
3894
+
3895
+ .qx-switch[data-disabled] {
3896
+ border-color: var(--qx-color-border-disabled);
3897
+ background: var(--qx-color-bg-disabled);
3898
+ cursor: not-allowed;
3899
+ }
3900
+
3901
+ .qx-switch[data-readonly] {
3902
+ cursor: default;
3903
+ }
3904
+
3905
+ .qx-switch:focus-visible {
3906
+ outline: var(--qx-focus-ring-width) solid var(--qx-color-border-focus);
3907
+ outline-offset: var(--qx-focus-ring-offset);
3908
+ }
3909
+
3910
+ .qx-switch-thumb {
3911
+ border-radius: calc(var(--qx-radius-sm) / 2);
3912
+ background: var(--qx-color-icon-subtle);
3913
+ block-size: 12px;
3914
+ inline-size: 12px;
3915
+ transition-property: inset-inline-start, background-color;
3916
+ transition-duration: var(--qx-motion-duration-normal);
3917
+ transition-timing-function: var(--qx-motion-easing-standard);
3918
+ position: absolute;
3919
+ inset-block-start: 50%;
3920
+ inset-inline-start: 2px;
3921
+ translate: 0 -50%;
3922
+ }
3923
+
3924
+ .qx-switch-thumb[data-checked] {
3925
+ background: var(--qx-color-surface-default);
3926
+ inset-inline-start: 16px;
3927
+ }
3928
+
3929
+ .qx-switch-thumb[data-disabled] {
3930
+ background: var(--qx-color-icon-disabled);
3931
+ }
3932
+
3933
+ .qx-choice-label > .qx-switch {
3934
+ margin-block: 1px;
3935
+ }
3936
+
3937
+ @media (forced-colors: active) {
3938
+ .qx-switch, .qx-switch-thumb {
3939
+ forced-color-adjust: none;
3940
+ }
3941
+
3942
+ .qx-switch {
3943
+ background: canvas;
3944
+ border-color: canvastext;
3945
+ }
3946
+
3947
+ .qx-switch-thumb {
3948
+ background: canvastext;
3949
+ }
3950
+
3951
+ .qx-switch[data-checked] {
3952
+ background: highlight;
3953
+ border-color: highlight;
3954
+ }
3955
+
3956
+ .qx-switch-thumb[data-checked] {
3957
+ background: highlighttext;
3958
+ }
3959
+
3960
+ .qx-switch[data-disabled] {
3961
+ background: canvas;
3962
+ border-color: graytext;
3963
+ }
3964
+
3965
+ .qx-switch-thumb[data-disabled] {
3966
+ background: graytext;
3967
+ }
3968
+ }
3969
+ }
3970
+
3971
+ @layer qx.components {
3972
+ .qx-table {
3973
+ border-collapse: collapse;
3974
+ inline-size: 100%;
3975
+ color: var(--qx-color-text-default);
3976
+ font: var(--qx-typography-body-md);
3977
+ font-variation-settings: "GEOM" var(--qx-font-geometry-body);
3978
+ }
3979
+
3980
+ .qx-table-caption {
3981
+ caption-side: top;
3982
+ font: var(--qx-typography-label-sm);
3983
+ font-variation-settings: "GEOM" var(--qx-font-geometry-body);
3984
+ color: var(--qx-color-text-subtle);
3985
+ text-align: start;
3986
+ padding-block-end: var(--qx-space-gap-sm);
3987
+ }
3988
+
3989
+ .qx-table-head {
3990
+ background: var(--qx-color-bg-neutral-subtle);
3991
+ font: var(--qx-typography-label-sm);
3992
+ font-weight: var(--qx-typography-title-sm-font-weight);
3993
+ font-variation-settings: "GEOM" var(--qx-font-geometry-body);
3994
+ white-space: nowrap;
3995
+ }
3996
+
3997
+ .qx-table-cell {
3998
+ border-block-start: var(--qx-border-width-default) solid var(--qx-color-border-subtle);
3999
+ }
4000
+
4001
+ .qx-table-head, .qx-table-cell {
4002
+ block-size: var(--qx-size-row);
4003
+ padding-block: 0;
4004
+ padding-inline: var(--qx-space-inset-sm);
4005
+ text-align: start;
4006
+ vertical-align: middle;
4007
+ }
4008
+
4009
+ :is(.qx-table-head, .qx-table-cell):first-child {
4010
+ padding-inline-start: var(--qx-space-inset-md);
4011
+ }
4012
+
4013
+ :is(.qx-table-head, .qx-table-cell):last-child {
4014
+ padding-inline-end: var(--qx-space-inset-md);
4015
+ }
4016
+
4017
+ :is(.qx-table-head, .qx-table-cell)[data-align="center"] {
4018
+ text-align: center;
4019
+ }
4020
+
4021
+ :is(.qx-table-head, .qx-table-cell)[data-align="end"] {
4022
+ text-align: end;
4023
+ }
4024
+
4025
+ :is(.qx-table-head, .qx-table-cell)[data-numeric] {
4026
+ font-variant-numeric: tabular-nums;
4027
+ }
4028
+
4029
+ .qx-table-row[data-selected] > .qx-table-cell {
4030
+ background: var(--qx-color-bg-selected);
4031
+ }
4032
+
4033
+ .qx-table-body > .qx-table-row:not([data-selected]):hover > .qx-table-cell {
4034
+ background: var(--qx-color-bg-neutral-subtle);
4035
+ }
4036
+ }
4037
+
4038
+ @layer qx.components {
4039
+ .qx-tabs {
4040
+ flex-direction: column;
4041
+ min-inline-size: 0;
4042
+ display: flex;
4043
+ }
4044
+
4045
+ .qx-tabs[data-orientation="vertical"] {
4046
+ flex-direction: row;
4047
+ }
4048
+
4049
+ .qx-tabs-list {
4050
+ min-inline-size: 0;
4051
+ box-shadow: inset 0 calc(-1 * var(--qx-border-width-strong)) 0 var(--qx-color-border-subtle);
4052
+ scrollbar-width: none;
4053
+ display: flex;
4054
+ position: relative;
4055
+ overflow-x: auto;
4056
+ }
4057
+
4058
+ .qx-tabs-list[data-orientation="vertical"] {
4059
+ box-shadow: none;
4060
+ border-inline-start: var(--qx-border-width-strong) solid var(--qx-color-border-subtle);
4061
+ flex-direction: column;
4062
+ flex: none;
4063
+ overflow-x: visible;
4064
+ }
4065
+
4066
+ .qx-tab {
4067
+ align-items: center;
4068
+ gap: var(--qx-space-gap-sm);
4069
+ block-size: var(--qx-size-control-lg);
4070
+ padding-inline: clamp(12px, var(--qx-size-control-lg) - 20px, 16px);
4071
+ color: var(--qx-color-text-subtle);
4072
+ font: var(--qx-typography-label-md);
4073
+ font-variation-settings: "GEOM" var(--qx-font-geometry-body);
4074
+ white-space: nowrap;
4075
+ cursor: pointer;
4076
+ transition-property: color;
4077
+ transition-duration: var(--qx-motion-duration-fast);
4078
+ transition-timing-function: var(--qx-motion-easing-standard);
4079
+ background: none;
4080
+ border: 0;
4081
+ flex: none;
4082
+ display: inline-flex;
4083
+ position: relative;
4084
+ }
4085
+
4086
+ .qx-tab:hover {
4087
+ color: var(--qx-color-text-default);
4088
+ }
4089
+
4090
+ .qx-tab[data-active] {
4091
+ color: var(--qx-color-text-default);
4092
+ font-weight: var(--qx-typography-title-sm-font-weight);
4093
+ }
4094
+
4095
+ .qx-tab[data-disabled] {
4096
+ color: var(--qx-color-text-disabled);
4097
+ cursor: not-allowed;
4098
+ }
4099
+
4100
+ .qx-tab:focus-visible {
4101
+ outline: var(--qx-focus-ring-width) solid var(--qx-color-border-focus);
4102
+ outline-offset: calc(-1 * var(--qx-focus-ring-width));
4103
+ }
4104
+
4105
+ .qx-tab-icon {
4106
+ flex: none;
4107
+ }
4108
+
4109
+ .qx-tab-icon-filled, .qx-tab:has( > .qx-tab-icon-filled)[data-active] > .qx-tab-icon-outline {
4110
+ display: none;
4111
+ }
4112
+
4113
+ .qx-tab[data-active] > .qx-tab-icon-filled {
4114
+ display: block;
4115
+ }
4116
+
4117
+ .qx-tabs-indicator {
4118
+ inline-size: var(--active-tab-width);
4119
+ block-size: var(--qx-border-width-accent);
4120
+ translate: var(--active-tab-left) 0;
4121
+ background: var(--qx-color-border-brand);
4122
+ transition-property: translate, inline-size, block-size;
4123
+ transition-duration: var(--qx-motion-duration-normal);
4124
+ transition-timing-function: var(--qx-motion-easing-standard);
4125
+ position: absolute;
4126
+ inset-block-end: 0;
4127
+ inset-inline-start: 0;
4128
+ }
4129
+
4130
+ [data-orientation="vertical"] > .qx-tabs-indicator {
4131
+ inline-size: var(--qx-border-width-accent);
4132
+ block-size: var(--active-tab-height);
4133
+ translate: 0 var(--active-tab-top);
4134
+ inset-block-end: auto;
4135
+ inset-inline-start: calc(-1 * var(--qx-border-width-strong));
4136
+ }
4137
+
4138
+ .qx-tabs-panel {
4139
+ outline: 0;
4140
+ min-inline-size: 0;
4141
+ }
4142
+
4143
+ .qx-tabs-panel:focus-visible {
4144
+ outline: var(--qx-focus-ring-width) solid var(--qx-color-border-focus);
4145
+ outline-offset: var(--qx-focus-ring-offset);
4146
+ }
4147
+
4148
+ @media (forced-colors: active) {
4149
+ .qx-tabs-list:not([data-orientation="vertical"]) {
4150
+ border-block-end: var(--qx-border-width-strong) solid CanvasText;
4151
+ }
4152
+
4153
+ .qx-tabs-indicator {
4154
+ forced-color-adjust: none;
4155
+ background: highlight;
4156
+ }
4157
+ }
4158
+ }
4159
+
4160
+ @layer qx.components {
4161
+ .qx-text {
4162
+ font: var(--qx-typography-body-md);
4163
+ font-variation-settings: "GEOM" var(--qx-font-geometry-body);
4164
+ margin: 0;
4165
+ }
4166
+
4167
+ .qx-text[data-size="sm"] {
4168
+ font-size: var(--qx-typography-body-sm-font-size);
4169
+ line-height: var(--qx-typography-body-sm-line-height);
4170
+ }
4171
+
4172
+ .qx-text[data-size="md"] {
4173
+ font-size: var(--qx-typography-body-md-font-size);
4174
+ line-height: var(--qx-typography-body-md-line-height);
4175
+ }
4176
+
4177
+ .qx-text[data-size="lg"] {
4178
+ font-size: var(--qx-typography-body-lg-font-size);
4179
+ line-height: var(--qx-typography-body-lg-line-height);
4180
+ }
4181
+
4182
+ .qx-text[data-weight="regular"] {
4183
+ font-weight: var(--qx-typography-body-md-font-weight);
4184
+ }
4185
+
4186
+ .qx-text[data-weight="medium"] {
4187
+ font-weight: var(--qx-typography-label-md-font-weight);
4188
+ }
4189
+
4190
+ .qx-text[data-weight="semibold"] {
4191
+ font-weight: var(--qx-typography-title-md-font-weight);
4192
+ }
4193
+
4194
+ .qx-text[data-mono] {
4195
+ font-family: var(--qx-font-family-mono);
4196
+ }
4197
+
4198
+ .qx-text[data-tone="default"] {
4199
+ color: var(--qx-color-text-default);
4200
+ }
4201
+
4202
+ .qx-text[data-tone="subtle"] {
4203
+ color: var(--qx-color-text-subtle);
4204
+ }
4205
+
4206
+ .qx-text[data-tone="subtlest"] {
4207
+ color: var(--qx-color-text-subtlest);
4208
+ }
4209
+
4210
+ .qx-text[data-tone="disabled"] {
4211
+ color: var(--qx-color-text-disabled);
4212
+ }
4213
+
4214
+ .qx-text[data-tone="inverse"] {
4215
+ color: var(--qx-color-text-inverse);
4216
+ }
4217
+
4218
+ .qx-text[data-tone="brand"] {
4219
+ color: var(--qx-color-text-brand);
4220
+ }
4221
+
4222
+ .qx-text[data-tone="danger"] {
4223
+ color: var(--qx-color-text-danger);
4224
+ }
4225
+
4226
+ .qx-text[data-tone="success"] {
4227
+ color: var(--qx-color-text-success);
4228
+ }
4229
+
4230
+ .qx-text[data-tone="warning"] {
4231
+ color: var(--qx-color-text-warning);
4232
+ }
4233
+
4234
+ .qx-text[data-tone="info"] {
4235
+ color: var(--qx-color-text-info);
4236
+ }
4237
+
4238
+ .qx-text[data-truncate="line"] {
4239
+ text-overflow: ellipsis;
4240
+ white-space: nowrap;
4241
+ overflow: hidden;
4242
+ }
4243
+
4244
+ .qx-text[data-truncate="lines"] {
4245
+ -webkit-line-clamp: var(--qx-text-lines);
4246
+ line-clamp: var(--qx-text-lines);
4247
+ -webkit-box-orient: vertical;
4248
+ display: -webkit-box;
4249
+ overflow: hidden;
4250
+ }
4251
+
4252
+ .qx-text[data-align="start"] {
4253
+ text-align: start;
4254
+ }
4255
+
4256
+ .qx-text[data-align="center"] {
4257
+ text-align: center;
4258
+ }
4259
+
4260
+ .qx-text[data-align="end"] {
4261
+ text-align: end;
4262
+ }
4263
+ }
4264
+
4265
+ @layer qx.components {
4266
+ .qx-toast-viewport {
4267
+ z-index: var(--qx-z-toast);
4268
+ gap: var(--qx-space-gap-sm);
4269
+ outline: 0;
4270
+ flex-direction: column-reverse;
4271
+ inline-size: min(360px, 100vw - 32px);
4272
+ display: flex;
4273
+ position: fixed;
4274
+ inset-block-end: var(--qx-space-inset-lg);
4275
+ inset-inline-end: var(--qx-space-inset-lg);
4276
+ }
4277
+
4278
+ .qx-toast {
4279
+ align-items: flex-start;
4280
+ gap: var(--qx-space-gap-md);
4281
+ border-inline-start: var(--qx-border-width-accent) solid var(--qx-color-icon-info);
4282
+ border-radius: var(--qx-radius-overlay);
4283
+ background: var(--qx-color-surface-overlay);
4284
+ box-shadow: var(--qx-shadow-overlay);
4285
+ color: var(--qx-color-text-default);
4286
+ font: var(--qx-typography-body-md);
4287
+ font-variation-settings: "GEOM" var(--qx-font-geometry-body);
4288
+ transform: translate(var(--toast-swipe-movement-x, 0px), var(--toast-swipe-movement-y, 0px));
4289
+ transition-property: opacity, translate, transform;
4290
+ transition-duration: var(--qx-motion-duration-normal);
4291
+ transition-timing-function: var(--qx-motion-easing-enter);
4292
+ padding: 12px 8px 12px 14px;
4293
+ display: flex;
4294
+ }
4295
+
4296
+ .qx-toast[data-starting-style], .qx-toast[data-ending-style] {
4297
+ opacity: 0;
4298
+ translate: 0 4px;
4299
+ }
4300
+
4301
+ .qx-toast[data-ending-style] {
4302
+ transition-duration: var(--qx-motion-duration-fast);
4303
+ transition-timing-function: var(--qx-motion-easing-exit);
4304
+ }
4305
+
4306
+ .qx-toast[data-swiping] {
4307
+ transition: none;
4308
+ }
4309
+
4310
+ .qx-toast[data-limited] {
4311
+ display: none;
4312
+ }
4313
+
4314
+ .qx-toast[data-tone="success"] {
4315
+ border-inline-start-color: var(--qx-color-icon-success);
4316
+ }
4317
+
4318
+ .qx-toast[data-tone="warning"] {
4319
+ border-inline-start-color: var(--qx-color-icon-warning);
4320
+ }
4321
+
4322
+ .qx-toast[data-tone="danger"] {
4323
+ border-inline-start-color: var(--qx-color-icon-danger);
4324
+ }
4325
+
4326
+ .qx-toast-icon {
4327
+ color: var(--qx-color-icon-info);
4328
+ flex: none;
4329
+ margin-block-start: 1px;
4330
+ }
4331
+
4332
+ .qx-toast[data-tone="success"] .qx-toast-icon {
4333
+ color: var(--qx-color-icon-success);
4334
+ }
4335
+
4336
+ .qx-toast[data-tone="warning"] .qx-toast-icon {
4337
+ color: var(--qx-color-icon-warning);
4338
+ }
4339
+
4340
+ .qx-toast[data-tone="danger"] .qx-toast-icon {
4341
+ color: var(--qx-color-icon-danger);
4342
+ }
4343
+
4344
+ .qx-toast-content {
4345
+ flex-direction: column;
4346
+ flex: 1;
4347
+ gap: 2px;
4348
+ min-inline-size: 0;
4349
+ display: flex;
4350
+ }
4351
+
4352
+ .qx-toast-title {
4353
+ font: var(--qx-typography-title-sm);
4354
+ font-variation-settings: "GEOM" var(--qx-font-geometry-heading);
4355
+ margin: 0;
4356
+ }
4357
+
4358
+ .qx-toast-description {
4359
+ font: var(--qx-typography-body-sm);
4360
+ font-variation-settings: "GEOM" var(--qx-font-geometry-body);
4361
+ color: var(--qx-color-text-subtle);
4362
+ margin: 0;
4363
+ }
4364
+
4365
+ .qx-toast-action {
4366
+ flex: none;
4367
+ margin-block: -2px;
4368
+ }
4369
+
4370
+ @media (forced-colors: active) {
4371
+ .qx-toast {
4372
+ border: var(--qx-border-width-default) solid CanvasText;
4373
+ border-inline-start-width: var(--qx-border-width-accent);
4374
+ }
4375
+ }
4376
+ }
4377
+
4378
+ @layer qx.components {
4379
+ .qx-toggle {
4380
+ justify-content: center;
4381
+ align-items: center;
4382
+ gap: var(--qx-space-gap-sm);
4383
+ block-size: var(--qx-size-control-md);
4384
+ border-radius: var(--qx-radius-control);
4385
+ color: var(--qx-color-text-subtle);
4386
+ font: var(--qx-typography-label-md);
4387
+ font-variation-settings: "GEOM" var(--qx-font-geometry-body);
4388
+ white-space: nowrap;
4389
+ cursor: pointer;
4390
+ -webkit-user-select: none;
4391
+ user-select: none;
4392
+ transition-property: background-color, color;
4393
+ transition-duration: var(--qx-motion-duration-fast);
4394
+ transition-timing-function: var(--qx-motion-easing-standard);
4395
+ background: none;
4396
+ border: 0;
4397
+ padding-inline: 12px;
4398
+ display: inline-flex;
4399
+ }
4400
+
4401
+ .qx-toggle:hover:not([data-disabled]):not([data-pressed]) {
4402
+ background: var(--qx-color-bg-neutral-subtle);
4403
+ color: var(--qx-color-text-default);
4404
+ }
4405
+
4406
+ .qx-toggle[data-pressed] {
4407
+ background: var(--qx-color-bg-neutral-bold);
4408
+ color: var(--qx-color-text-inverse);
4409
+ }
4410
+
4411
+ .qx-toggle[data-disabled] {
4412
+ color: var(--qx-color-text-disabled);
4413
+ cursor: not-allowed;
4414
+ }
4415
+
4416
+ .qx-toggle:focus-visible {
4417
+ outline: var(--qx-focus-ring-width) solid var(--qx-color-border-focus);
4418
+ outline-offset: calc(-1 * var(--qx-focus-ring-width));
4419
+ box-shadow: inset 0 0 0 calc(var(--qx-focus-ring-width) + var(--qx-border-width-default))
4420
+ var(--qx-color-surface-default);
4421
+ }
4422
+
4423
+ .qx-toggle[data-size="sm"] {
4424
+ block-size: var(--qx-size-control-sm);
4425
+ font-size: var(--qx-typography-label-sm-font-size);
4426
+ line-height: var(--qx-typography-label-sm-line-height);
4427
+ padding-inline: 8px;
4428
+ }
4429
+
4430
+ .qx-toggle[data-size="lg"] {
4431
+ block-size: var(--qx-size-control-lg);
4432
+ padding-inline: 16px;
4433
+ }
4434
+
4435
+ .qx-toggle[data-icon-only] {
4436
+ aspect-ratio: 1;
4437
+ padding-inline: 0;
4438
+ }
4439
+
4440
+ .qx-toggle .qx-toggle-icon-filled {
4441
+ display: none;
4442
+ }
4443
+
4444
+ .qx-toggle[data-pressed] .qx-toggle-icon-filled {
4445
+ display: block;
4446
+ }
4447
+
4448
+ .qx-toggle[data-pressed]:has(.qx-toggle-icon-filled) .qx-toggle-icon-outline {
4449
+ display: none;
4450
+ }
4451
+
4452
+ .qx-toggle-group {
4453
+ align-items: stretch;
4454
+ display: inline-flex;
4455
+ }
4456
+
4457
+ .qx-toggle-group[data-orientation="vertical"] {
4458
+ flex-direction: column;
4459
+ }
4460
+
4461
+ .qx-toggle-group[data-variant="separate"] {
4462
+ gap: var(--qx-space-gap-xs);
4463
+ }
4464
+
4465
+ .qx-toggle-group[data-variant="segmented"] {
4466
+ border: var(--qx-border-width-default) solid var(--qx-color-border-strong);
4467
+ border-radius: var(--qx-radius-control);
4468
+ overflow: hidden;
4469
+ }
4470
+
4471
+ .qx-toggle-group[data-variant="segmented"] > .qx-toggle {
4472
+ block-size: calc(var(--qx-size-control-md) - 2 * var(--qx-border-width-default));
4473
+ border-radius: 0;
4474
+ }
4475
+
4476
+ .qx-toggle-group[data-variant="segmented"] > .qx-toggle + .qx-toggle {
4477
+ border-inline-start: var(--qx-border-width-default) solid var(--qx-color-border-strong);
4478
+ }
4479
+
4480
+ .qx-toggle-group[data-variant="segmented"][data-size="sm"] > .qx-toggle {
4481
+ block-size: calc(var(--qx-size-control-sm) - 2 * var(--qx-border-width-default));
4482
+ }
4483
+
4484
+ .qx-toggle-group[data-variant="segmented"][data-size="lg"] > .qx-toggle {
4485
+ block-size: calc(var(--qx-size-control-lg) - 2 * var(--qx-border-width-default));
4486
+ }
4487
+
4488
+ @media (forced-colors: active) {
4489
+ .qx-toggle {
4490
+ border: var(--qx-border-width-default) solid ButtonText;
4491
+ }
4492
+
4493
+ .qx-toggle[data-pressed] {
4494
+ forced-color-adjust: none;
4495
+ color: highlighttext;
4496
+ background: highlight;
4497
+ border-color: highlight;
4498
+ }
4499
+ }
4500
+ }
4501
+
4502
+ @layer qx.components {
4503
+ .qx-tooltip-positioner {
4504
+ z-index: var(--qx-z-tooltip);
4505
+ }
4506
+
4507
+ .qx-tooltip {
4508
+ border-radius: var(--qx-radius-tooltip);
4509
+ background: var(--qx-color-surface-inverse);
4510
+ max-inline-size: 280px;
4511
+ color: var(--qx-color-text-inverse);
4512
+ font: var(--qx-typography-body-sm);
4513
+ font-variation-settings: "GEOM" var(--qx-font-geometry-body);
4514
+ transition-property: opacity, translate;
4515
+ transition-duration: var(--qx-motion-duration-normal);
4516
+ transition-timing-function: var(--qx-motion-easing-enter);
4517
+ padding: 4px 8px;
4518
+ }
4519
+
4520
+ .qx-tooltip[data-starting-style], .qx-tooltip[data-ending-style] {
4521
+ opacity: 0;
4522
+ }
4523
+
4524
+ .qx-tooltip[data-side="top"]:is([data-starting-style], [data-ending-style]) {
4525
+ translate: 0 4px;
4526
+ }
4527
+
4528
+ .qx-tooltip[data-side="bottom"]:is([data-starting-style], [data-ending-style]) {
4529
+ translate: 0 -4px;
4530
+ }
4531
+
4532
+ .qx-tooltip[data-ending-style] {
4533
+ transition-duration: var(--qx-motion-duration-fast);
4534
+ transition-timing-function: var(--qx-motion-easing-exit);
4535
+ }
4536
+
4537
+ .qx-tooltip[data-instant] {
4538
+ transition: none;
4539
+ }
4540
+
4541
+ @media (forced-colors: active) {
4542
+ .qx-tooltip {
4543
+ border: var(--qx-border-width-default) solid CanvasText;
4544
+ }
4545
+ }
4546
+ }
4547
+
4548
+ @layer qx.components {
4549
+ .qx-visually-hidden {
4550
+ clip-path: inset(50%);
4551
+ white-space: nowrap;
4552
+ border: 0;
4553
+ block-size: 1px;
4554
+ inline-size: 1px;
4555
+ margin: -1px;
4556
+ padding: 0;
4557
+ position: absolute;
4558
+ overflow: hidden;
4559
+ }
4560
+ }