@996-design/996-ui 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (110) hide show
  1. package/LICENSE +21 -0
  2. package/NOTICE.md +35 -0
  3. package/README.md +31 -0
  4. package/dist/cjs/index.cjs +4228 -0
  5. package/dist/cjs/index.cjs.map +41 -0
  6. package/dist/cjs/legacy-index.cjs +17297 -0
  7. package/dist/cjs/legacy-index.cjs.map +96 -0
  8. package/dist/cjs/pro/index.cjs +8544 -0
  9. package/dist/cjs/pro/index.cjs.map +35 -0
  10. package/dist/esm/index.js +4063 -0
  11. package/dist/esm/index.js.map +41 -0
  12. package/dist/esm/legacy-index.js +17294 -0
  13. package/dist/esm/legacy-index.js.map +96 -0
  14. package/dist/esm/pro/index.js +8554 -0
  15. package/dist/esm/pro/index.js.map +35 -0
  16. package/dist/styles.css +5816 -0
  17. package/dist/theme.css +601 -0
  18. package/dist/types/ConfigProvider.d.ts +195 -0
  19. package/dist/types/antd-theme.d.ts +12 -0
  20. package/dist/types/components/Alert.d.ts +51 -0
  21. package/dist/types/components/Avatar.d.ts +44 -0
  22. package/dist/types/components/Badge.d.ts +31 -0
  23. package/dist/types/components/Breadcrumb.d.ts +45 -0
  24. package/dist/types/components/Button.d.ts +42 -0
  25. package/dist/types/components/ButtonGroup.d.ts +13 -0
  26. package/dist/types/components/Card.d.ts +55 -0
  27. package/dist/types/components/Carousel.d.ts +70 -0
  28. package/dist/types/components/Checkbox.d.ts +43 -0
  29. package/dist/types/components/Collapse.d.ts +23 -0
  30. package/dist/types/components/ColorPicker.d.ts +143 -0
  31. package/dist/types/components/DataDisplayPrimitives.d.ts +205 -0
  32. package/dist/types/components/DataEntryPrimitives.d.ts +454 -0
  33. package/dist/types/components/Divider.d.ts +24 -0
  34. package/dist/types/components/Drawer.d.ts +68 -0
  35. package/dist/types/components/Dropdown.d.ts +41 -0
  36. package/dist/types/components/Empty.d.ts +14 -0
  37. package/dist/types/components/EmptyState.d.ts +6 -0
  38. package/dist/types/components/FeedbackPrimitives.d.ts +102 -0
  39. package/dist/types/components/Form.d.ts +67 -0
  40. package/dist/types/components/GameCover.d.ts +8 -0
  41. package/dist/types/components/Grid.d.ts +50 -0
  42. package/dist/types/components/Icon.d.ts +13 -0
  43. package/dist/types/components/IconButton.d.ts +14 -0
  44. package/dist/types/components/Input.d.ts +110 -0
  45. package/dist/types/components/InputNumber.d.ts +29 -0
  46. package/dist/types/components/LayoutPrimitives.d.ts +130 -0
  47. package/dist/types/components/List.d.ts +64 -0
  48. package/dist/types/components/Masonry.d.ts +43 -0
  49. package/dist/types/components/MenuList.d.ts +24 -0
  50. package/dist/types/components/Message.d.ts +58 -0
  51. package/dist/types/components/MessageToast.d.ts +27 -0
  52. package/dist/types/components/Modal.d.ts +123 -0
  53. package/dist/types/components/NavigationPrimitives.d.ts +73 -0
  54. package/dist/types/components/OtherPrimitives.d.ts +36 -0
  55. package/dist/types/components/Pagination.d.ts +18 -0
  56. package/dist/types/components/Panel.d.ts +8 -0
  57. package/dist/types/components/Popconfirm.d.ts +18 -0
  58. package/dist/types/components/Popover.d.ts +10 -0
  59. package/dist/types/components/PriceText.d.ts +9 -0
  60. package/dist/types/components/Progress.d.ts +57 -0
  61. package/dist/types/components/ProgressBar.d.ts +8 -0
  62. package/dist/types/components/ProgressButton.d.ts +9 -0
  63. package/dist/types/components/Radio.d.ts +67 -0
  64. package/dist/types/components/Rate.d.ts +17 -0
  65. package/dist/types/components/Result.d.ts +11 -0
  66. package/dist/types/components/SectionHeader.d.ts +11 -0
  67. package/dist/types/components/Segmented.d.ts +41 -0
  68. package/dist/types/components/SegmentedTabs.d.ts +42 -0
  69. package/dist/types/components/SelectInput.d.ts +33 -0
  70. package/dist/types/components/Skeleton.d.ts +54 -0
  71. package/dist/types/components/Slider.d.ts +48 -0
  72. package/dist/types/components/Spin.d.ts +21 -0
  73. package/dist/types/components/Splitter.d.ts +7 -0
  74. package/dist/types/components/StatCard.d.ts +10 -0
  75. package/dist/types/components/Statistic.d.ts +48 -0
  76. package/dist/types/components/StatusItem.d.ts +12 -0
  77. package/dist/types/components/Steps.d.ts +40 -0
  78. package/dist/types/components/Switch.d.ts +41 -0
  79. package/dist/types/components/Table.d.ts +61 -0
  80. package/dist/types/components/Tabs.d.ts +50 -0
  81. package/dist/types/components/Tag.d.ts +52 -0
  82. package/dist/types/components/TagPill.d.ts +7 -0
  83. package/dist/types/components/Tooltip.d.ts +64 -0
  84. package/dist/types/components/Typography.d.ts +374 -0
  85. package/dist/types/components/affix/utils.d.ts +10 -0
  86. package/dist/types/components/feedback/FloatButton.d.ts +51 -0
  87. package/dist/types/components/feedback/Watermark.d.ts +33 -0
  88. package/dist/types/components/feedback/globalHolder.d.ts +17 -0
  89. package/dist/types/components/form/statusContext.d.ts +18 -0
  90. package/dist/types/components/form/statusContext.type-smoke.d.ts +24 -0
  91. package/dist/types/components/splitter/Panel.d.ts +6 -0
  92. package/dist/types/components/splitter/SplitBar.d.ts +32 -0
  93. package/dist/types/components/splitter/interface.d.ts +89 -0
  94. package/dist/types/components/splitter/sizeUtil.d.ts +5 -0
  95. package/dist/types/components/splitter/useItems.d.ts +3 -0
  96. package/dist/types/components/splitter/useResizable.d.ts +9 -0
  97. package/dist/types/components/splitter/useResize.d.ts +9 -0
  98. package/dist/types/components/splitter/useSizes.d.ts +11 -0
  99. package/dist/types/components/table/columnState.d.ts +36 -0
  100. package/dist/types/components/table/pagination.d.ts +34 -0
  101. package/dist/types/components/table/selection.d.ts +23 -0
  102. package/dist/types/components/table/types.d.ts +163 -0
  103. package/dist/types/hooks/useReducedMotion.d.ts +1 -0
  104. package/dist/types/index.d.ts +44 -0
  105. package/dist/types/legacy-index.d.ts +136 -0
  106. package/dist/types/pro/index.d.ts +17 -0
  107. package/dist/types/tokens.d.ts +266 -0
  108. package/dist/types/utils/cn.d.ts +3 -0
  109. package/dist/types/utils/slots.d.ts +5 -0
  110. package/package.json +126 -0
package/dist/theme.css ADDED
@@ -0,0 +1,601 @@
1
+ @layer base {
2
+ :root,
3
+ .huaijiu-web-root,
4
+ .huaijiu-admin-root {
5
+ --hj-color-brand: #ffcc33;
6
+ --hj-color-brand-hover: #fdc721;
7
+ --hj-color-brand-active: #cca329;
8
+ --hj-color-brand-weak: rgb(255 204 51 / 0.9);
9
+ --hj-color-brand-disabled: rgb(255 204 51 / 0.5);
10
+ --hj-color-success: #07c160;
11
+ --hj-color-warning: #f39713;
12
+ --hj-color-info: #1e8cff;
13
+ --hj-color-danger: #fa433d;
14
+ --hj-color-danger-soft: #ff554c;
15
+ --hj-color-purchase: #07c160;
16
+
17
+ --hj-color-web-page: #121318;
18
+ --hj-color-web-bg: #181a1f;
19
+ --hj-color-web-surface: #242731;
20
+ --hj-color-web-control: #32343a;
21
+ --hj-color-web-surface-raised: #242731;
22
+ --hj-color-web-surface-active: rgb(255 255 255 / 0.05);
23
+ --hj-color-web-border: rgb(228 228 228 / 0.1);
24
+ --hj-color-web-border-strong: rgb(228 228 228 / 0.25);
25
+ --hj-color-web-foreground: #ffffff;
26
+ --hj-color-web-foreground-80: rgb(255 255 255 / 0.8);
27
+ --hj-color-web-muted: #808191;
28
+ --hj-color-web-subtle: #646566;
29
+ --hj-color-web-disabled: rgb(128 129 145 / 0.45);
30
+
31
+ --hj-color-admin-brand: #f9bb26;
32
+ --hj-color-admin-brand-hover: #f6ad13;
33
+ --hj-color-admin-bg: #f8fafc;
34
+ --hj-color-admin-surface: #ffffff;
35
+ --hj-color-admin-surface-muted: #f8fafc;
36
+ --hj-color-admin-border: #e2e8f0;
37
+ --hj-color-admin-border-strong: #cbd5e1;
38
+ --hj-color-admin-foreground: #0f172a;
39
+ --hj-color-admin-muted: #64748b;
40
+
41
+ --hj-radius-xs: 4px;
42
+ --hj-radius-sm: 6px;
43
+ --hj-radius-md: 8px;
44
+ --hj-radius-lg: 16px;
45
+
46
+ --hj-button-font-family: MicrosoftYaHei-Bold, "Microsoft YaHei", PingFangSC-Semibold, sans-serif;
47
+ --hj-button-font-weight: 700;
48
+ --hj-button-light-font-family: "Microsoft YaHei", PingFangSC-Regular, sans-serif;
49
+ --hj-button-light-font-weight: 400;
50
+ --hj-button-xs-height: 28px;
51
+ --hj-button-sm-height: 32px;
52
+ --hj-button-md-height: 40px;
53
+ --hj-button-lg-height: 48px;
54
+ --hj-button-xs-min-width: 72px;
55
+ --hj-button-sm-min-width: 71px;
56
+ --hj-button-md-min-width: 90px;
57
+ --hj-button-lg-min-width: 106px;
58
+ --hj-button-xs-narrow-width: 40px;
59
+ --hj-button-sm-narrow-width: 58px;
60
+ --hj-button-xs-padding-x: 12px;
61
+ --hj-button-sm-padding-x: 16px;
62
+ --hj-button-md-padding-x: 24px;
63
+ --hj-button-lg-padding-x: 32px;
64
+ --hj-button-xs-icon-padding-x: 13px;
65
+ --hj-button-sm-icon-padding-x: 16px;
66
+ --hj-button-md-icon-padding-x: 21px;
67
+ --hj-button-lg-icon-padding-x: 24px;
68
+ --hj-button-xs-font-size: 12px;
69
+ --hj-button-sm-font-size: 13px;
70
+ --hj-button-md-font-size: 14px;
71
+ --hj-button-lg-font-size: 14px;
72
+ --hj-button-xs-line-height: 16px;
73
+ --hj-button-sm-line-height: 20px;
74
+ --hj-button-md-line-height: 20px;
75
+ --hj-button-lg-line-height: 20px;
76
+
77
+ --hj-button-primary-bg: var(--hj-color-brand);
78
+ --hj-button-primary-bg-hover: color-mix(in srgb, var(--hj-color-brand) 80%, white);
79
+ --hj-button-primary-bg-active: color-mix(in srgb, var(--hj-color-brand) 85%, black);
80
+ --hj-button-primary-fg: rgb(0 0 0 / 0.8);
81
+ --hj-button-primary-fg-active: rgb(0 0 0 / 0.9);
82
+ --hj-button-default-bg: var(--hj-color-web-control);
83
+ --hj-button-default-bg-hover: color-mix(in srgb, var(--hj-color-web-control) 90%, white);
84
+ --hj-button-default-bg-active: color-mix(in srgb, var(--hj-color-web-control) 85%, black);
85
+ --hj-button-default-fg: rgb(255 255 255 / 0.8);
86
+ --hj-button-default-fg-hover: #ffffff;
87
+ --hj-button-light-bg: #ffffff;
88
+ --hj-button-light-bg-hover: #ffffff;
89
+ --hj-button-light-bg-active: #f7f8fa;
90
+ --hj-button-light-border: #dcdee0;
91
+ --hj-button-light-border-hover: #c8c9cc;
92
+ --hj-button-light-fg: #323233;
93
+ --hj-button-translucent-bg: rgb(255 255 255 / 0.1);
94
+ --hj-button-translucent-bg-hover: rgb(255 255 255 / 0.2);
95
+ --hj-button-translucent-bg-active: rgb(255 255 255 / 0.07);
96
+ --hj-button-toggle-bg: rgb(255 204 51 / 0.05);
97
+ --hj-button-toggle-bg-hover: rgb(255 204 51 / 0.15);
98
+ --hj-button-toggle-bg-active: rgb(0 0 0 / 0.1);
99
+ --hj-button-toggle-border: rgb(255 204 51 / 0.6);
100
+ --hj-button-text-fg: var(--hj-color-brand);
101
+ --hj-button-text-default-fg: #cccccc;
102
+ --hj-button-group-separator: rgb(0 0 0 / 0.3);
103
+ --hj-carousel-bg: #101820;
104
+ --hj-carousel-arrow-bg: rgb(0 0 0 / 0.35);
105
+ --hj-carousel-arrow-bg-hover: rgb(0 0 0 / 0.5);
106
+ --hj-carousel-arrow-border: rgb(255 255 255 / 0.12);
107
+ --hj-carousel-dot-active: var(--hj-color-brand);
108
+ --hj-carousel-dot-bg: #8b94a0;
109
+ --hj-carousel-dot-bg-hover: #aab1ba;
110
+ --hj-icon-button-default-border: #3b4652;
111
+ --hj-icon-button-default-bg: #18222c;
112
+ --hj-icon-button-default-fg: #8b94a0;
113
+ --hj-icon-button-default-border-hover: var(--hj-color-brand);
114
+ --hj-icon-button-default-fg-hover: var(--hj-color-brand);
115
+ --hj-icon-button-primary-border: var(--hj-color-brand);
116
+ --hj-icon-button-primary-bg: var(--hj-color-brand);
117
+ --hj-icon-button-primary-bg-hover: var(--hj-color-brand-hover);
118
+ --hj-icon-button-primary-fg: #15120a;
119
+ --hj-icon-button-ghost-border: transparent;
120
+ --hj-icon-button-ghost-bg: transparent;
121
+ --hj-icon-button-ghost-fg: var(--hj-color-web-muted);
122
+ --hj-icon-button-ghost-fg-hover: var(--hj-color-brand);
123
+ --hj-icon-button-selected-border: var(--hj-color-brand);
124
+ --hj-icon-button-selected-bg: var(--hj-icon-button-default-bg);
125
+ --hj-icon-button-selected-fg: var(--hj-color-brand);
126
+
127
+ --hj-input-height-sm: 40px;
128
+ --hj-input-height-md: 48px;
129
+ --hj-input-height-lg: 56px;
130
+ --hj-input-padding-x: 16px;
131
+ --hj-input-gap: 4px;
132
+ --hj-input-font-size: 14px;
133
+ --hj-input-line-height: 18px;
134
+ --hj-input-radius: var(--hj-radius-md);
135
+ --hj-input-bg: var(--hj-color-web-control);
136
+ --hj-input-bg-active: var(--hj-color-web-surface);
137
+ --hj-input-border: transparent;
138
+ --hj-input-border-active: var(--hj-color-brand);
139
+ --hj-input-fg: var(--hj-color-web-foreground);
140
+ --hj-input-placeholder: var(--hj-color-web-muted);
141
+ --hj-input-icon: var(--hj-color-web-muted);
142
+ --hj-input-clear: var(--hj-color-web-muted);
143
+ --hj-input-addon: var(--hj-color-brand);
144
+ --hj-input-addon-bg: var(--hj-color-web-control);
145
+ --hj-input-addon-fg: var(--hj-color-web-subtle);
146
+
147
+ --hj-checkbox-size: 14px;
148
+ --hj-checkbox-border-width: 2px;
149
+ --hj-checkbox-border: var(--hj-color-web-muted);
150
+ --hj-checkbox-border-hover: var(--hj-color-brand);
151
+ --hj-checkbox-bg: transparent;
152
+ --hj-checkbox-bg-checked: var(--hj-color-brand);
153
+ --hj-checkbox-icon: var(--hj-color-web-surface);
154
+ --hj-checkbox-label: #cccccc;
155
+ --hj-checkbox-label-active: var(--hj-color-brand);
156
+
157
+ --hj-switch-width: 28px;
158
+ --hj-switch-height: 16px;
159
+ --hj-switch-padding: 2px;
160
+ --hj-switch-thumb-size: 12px;
161
+ --hj-switch-bg: #4b4c52;
162
+ --hj-switch-bg-checked: var(--hj-color-brand);
163
+ --hj-switch-thumb-bg: #ffffff;
164
+
165
+ --hj-skeleton-bg: rgb(255 255 255 / 0.08);
166
+ --hj-skeleton-highlight: rgb(255 255 255 / 0.16);
167
+ --hj-skeleton-gap: 16px;
168
+ --hj-skeleton-row-height: 16px;
169
+ --hj-skeleton-row-gap: 12px;
170
+ --hj-skeleton-title-height: 20px;
171
+ --hj-skeleton-title-margin: 16px;
172
+ --hj-skeleton-radius: 999px;
173
+ --hj-skeleton-radius-square: var(--hj-radius-md);
174
+ --hj-skeleton-size-sm: 24px;
175
+ --hj-skeleton-size-md: 32px;
176
+ --hj-skeleton-size-lg: 40px;
177
+
178
+ --hj-tooltip-radius: var(--hj-radius-xs);
179
+ --hj-tooltip-height: 28px;
180
+ --hj-tooltip-min-width: 100px;
181
+ --hj-tooltip-padding-x: 8px;
182
+ --hj-tooltip-arrow-size: 11px;
183
+ --hj-tooltip-gap: 10px;
184
+ --hj-tooltip-light-bg: #ffffff;
185
+ --hj-tooltip-light-fg: #000000;
186
+ --hj-tooltip-dark-bg: #323232;
187
+ --hj-tooltip-dark-fg: #ffffff;
188
+ --hj-tooltip-shadow: 0 2px 8px rgb(0 0 0 / 0.1);
189
+
190
+ --hj-message-height: 48px;
191
+ --hj-message-radius: var(--hj-radius-md);
192
+ --hj-message-padding-x: 16px;
193
+ --hj-message-gap: 9px;
194
+ --hj-message-bg: var(--hj-color-web-surface);
195
+ --hj-message-fg: #cccccc;
196
+ --hj-message-light-bg: #ffffff;
197
+ --hj-message-light-fg: rgb(0 0 0 / 0.8);
198
+ --hj-message-action-fg: var(--hj-color-brand);
199
+ --hj-message-close-fg: var(--hj-color-web-muted);
200
+ --hj-message-close-fg-hover: #ffffff;
201
+ --hj-message-icon-size: 16px;
202
+ --hj-message-success: #7fba7a;
203
+ --hj-message-warning: #f39713;
204
+ --hj-message-error: #ff754c;
205
+ --hj-message-info: var(--hj-color-brand);
206
+ --hj-message-shadow: 0 2px 8px rgb(0 0 0 / 0.15);
207
+
208
+ --hj-modal-bg: var(--hj-color-web-surface);
209
+ --hj-modal-fg: #ffffff;
210
+ --hj-modal-body-fg: #999999;
211
+ --hj-modal-padding-x: 32px;
212
+ --hj-modal-padding-y: 32px;
213
+ --hj-modal-header-height: 64px;
214
+ --hj-modal-wrap-padding-y: 48px;
215
+ --hj-modal-close-size: 40px;
216
+ --hj-modal-close-inset: 12px;
217
+ --hj-modal-mask-bg: rgb(0 0 0 / 0.32);
218
+ --hj-modal-radius: var(--hj-radius-lg);
219
+ --hj-modal-shadow: 0 4px 32px rgb(0 0 0 / 0.28);
220
+
221
+ --hj-menu-bg: var(--hj-color-web-surface);
222
+ --hj-menu-border: #2e313b;
223
+ --hj-menu-shadow: 0 -4px 18px rgb(0 0 0 / 0.15);
224
+ --hj-menu-item-bg: transparent;
225
+ --hj-menu-item-bg-hover: rgb(255 255 255 / 0.05);
226
+ --hj-menu-item-bg-active: var(--hj-color-web-control);
227
+ --hj-menu-item-fg: rgb(255 255 255 / 0.6);
228
+ --hj-menu-item-fg-active: #ffffff;
229
+ --hj-menu-item-muted: var(--hj-color-web-subtle);
230
+ --hj-menu-avatar-bg: #ffe2ac;
231
+ --hj-menu-avatar-fg: rgb(0 0 0 / 0.7);
232
+ --hj-menu-divider: var(--hj-menu-border);
233
+
234
+ --hj-tabs-line-fg: var(--hj-color-web-muted);
235
+ --hj-tabs-line-fg-hover: #ffffff;
236
+ --hj-tabs-line-fg-active: var(--hj-color-brand);
237
+ --hj-tabs-line-ink: var(--hj-color-brand);
238
+ --hj-tabs-card-bg: transparent;
239
+ --hj-tabs-card-bg-hover: rgb(255 255 255 / 0.05);
240
+ --hj-tabs-card-bg-active: rgb(255 255 255 / 0.1);
241
+ --hj-tabs-card-fg: rgb(255 255 255 / 0.6);
242
+ --hj-tabs-card-fg-active: #ffffff;
243
+ --hj-tabs-boxed-bg: var(--hj-color-web-surface);
244
+ --hj-tabs-boxed-border: rgb(255 255 255 / 0.1);
245
+ --hj-tabs-boxed-item-border: rgb(255 255 255 / 0.1);
246
+ --hj-tabs-boxed-fg: rgb(255 255 255 / 0.6);
247
+ --hj-tabs-boxed-fg-hover: #ffffff;
248
+ --hj-tabs-boxed-fg-active: var(--hj-color-brand);
249
+ --hj-tabs-boxed-indicator-bg: rgb(255 204 51 / 0.05);
250
+ --hj-tabs-boxed-indicator-border: rgb(255 204 51 / 0.2);
251
+ --hj-tabs-boxed-indicator-shadow: inset 0 0 0 1px rgb(255 204 51 / 0.12);
252
+
253
+ --hj-shadow-sm: 0 1px 2px rgb(0 0 0 / 0.12);
254
+ --hj-shadow-md: 0 4px 16px rgb(0 0 0 / 0.24);
255
+ --hj-shadow-lg: 0 4px 32px rgb(0 0 0 / 0.32);
256
+
257
+ --hj-spacing-xs: 4px;
258
+ --hj-spacing-sm: 8px;
259
+ --hj-spacing-md: 12px;
260
+ --hj-spacing-lg: 16px;
261
+ --hj-spacing-xl: 20px;
262
+
263
+ --hj-z-dropdown: 1000;
264
+ --hj-z-sticky: 1020;
265
+ --hj-z-modal: 1050;
266
+ --hj-z-toast: 1060;
267
+
268
+ --hj-motion-duration-fast: 100ms;
269
+ --hj-motion-duration-normal: 200ms;
270
+ --hj-motion-duration-slow: 300ms;
271
+ --hj-motion-ease-in: cubic-bezier(0.755, 0.05, 0.855, 0.06);
272
+ --hj-motion-ease-out: cubic-bezier(0.23, 1, 0.32, 1);
273
+ --hj-motion-ease-in-out: cubic-bezier(0.645, 0.045, 0.355, 1);
274
+ --hj-motion-ease-out-circ: cubic-bezier(0.08, 0.82, 0.17, 1);
275
+ --hj-motion-ease-in-out-circ: cubic-bezier(0.78, 0.14, 0.15, 0.86);
276
+ --hj-motion-deadline: 500ms;
277
+ }
278
+
279
+ .huaijiu-web-root {
280
+ color: var(--hj-color-web-foreground);
281
+ }
282
+
283
+ .huaijiu-admin-root {
284
+ color: var(--hj-color-admin-foreground);
285
+ }
286
+
287
+ :where(.huaijiu-motion-disabled, .huaijiu-motion-disabled *) {
288
+ transition-duration: 1ms !important;
289
+ animation-duration: 1ms !important;
290
+ animation-iteration-count: 1 !important;
291
+ scroll-behavior: auto !important;
292
+ }
293
+
294
+ @media (prefers-reduced-motion: reduce) {
295
+ :root,
296
+ .huaijiu-web-root,
297
+ .huaijiu-admin-root {
298
+ --hj-motion-duration-fast: 1ms;
299
+ --hj-motion-duration-normal: 1ms;
300
+ --hj-motion-duration-slow: 1ms;
301
+ --hj-motion-deadline: 1ms;
302
+ }
303
+
304
+ *,
305
+ *::before,
306
+ *::after {
307
+ transition-duration: 1ms !important;
308
+ animation-duration: 1ms !important;
309
+ animation-iteration-count: 1 !important;
310
+ scroll-behavior: auto !important;
311
+ }
312
+ }
313
+ }
314
+
315
+ @layer components {
316
+ .hj-wave {
317
+ position: relative;
318
+ overflow: hidden;
319
+ isolation: isolate;
320
+ }
321
+
322
+ .hj-wave::after {
323
+ position: absolute;
324
+ inset: 0;
325
+ pointer-events: none;
326
+ border-radius: inherit;
327
+ box-shadow: 0 0 0 0 color-mix(in srgb, currentColor 36%, transparent);
328
+ opacity: 0;
329
+ content: "";
330
+ transition: box-shadow var(--hj-motion-duration-normal) var(--hj-motion-ease-out), opacity
331
+ var(--hj-motion-duration-normal) var(--hj-motion-ease-out);
332
+ }
333
+
334
+ .hj-wave:where(:active:not(:disabled))::after {
335
+ box-shadow: 0 0 0 6px color-mix(in srgb, currentColor 10%, transparent);
336
+ opacity: 0.32;
337
+ transition-duration: var(--hj-motion-duration-fast);
338
+ }
339
+
340
+ .hj-modal-body {
341
+ scrollbar-color: rgb(255 255 255 / 0.28) transparent;
342
+ scrollbar-width: thin;
343
+ }
344
+
345
+ .hj-modal-body::-webkit-scrollbar {
346
+ width: 8px;
347
+ }
348
+
349
+ .hj-modal-body::-webkit-scrollbar-track {
350
+ background: transparent;
351
+ }
352
+
353
+ .hj-modal-body::-webkit-scrollbar-thumb {
354
+ border-radius: 999px;
355
+ background: rgb(255 255 255 / 0.28);
356
+ }
357
+
358
+ .hj-modal-body::-webkit-scrollbar-thumb:hover {
359
+ background: rgb(255 255 255 / 0.42);
360
+ }
361
+
362
+ .hj-skeleton-active {
363
+ background-image: linear-gradient(90deg, transparent, var(--hj-skeleton-highlight), transparent);
364
+ background-size: 400% 100%;
365
+ animation: hj-skeleton-loading 1.4s ease infinite;
366
+ }
367
+
368
+ @keyframes hj-skeleton-loading {
369
+ 0% {
370
+ background-position: 100% 50%;
371
+ }
372
+ 100% {
373
+ background-position: 0 50%;
374
+ }
375
+ }
376
+
377
+ .hj-button-group {
378
+ display: inline-flex;
379
+ align-items: stretch;
380
+ }
381
+
382
+ .hj-button-group-block {
383
+ display: flex;
384
+ width: 100%;
385
+ }
386
+
387
+ .hj-button-group-attached {
388
+ overflow: hidden;
389
+ border-radius: var(--hj-radius-md);
390
+ }
391
+
392
+ .hj-button-group-attached > :where(button) {
393
+ min-width: 0;
394
+ border-radius: 0 !important;
395
+ }
396
+
397
+ .hj-button-group-attached > :where(button):first-child {
398
+ border-top-left-radius: inherit !important;
399
+ border-bottom-left-radius: inherit !important;
400
+ }
401
+
402
+ .hj-button-group-attached > :where(button):last-child {
403
+ border-top-right-radius: inherit !important;
404
+ border-bottom-right-radius: inherit !important;
405
+ }
406
+
407
+ .hj-button-group-separated > :where(button + button) {
408
+ box-shadow: inset 1px 0 0 var(--hj-button-group-separator);
409
+ }
410
+
411
+ .hj-segmented-tabs {
412
+ position: relative;
413
+ }
414
+
415
+ .hj-segmented-tabs-boxed::before {
416
+ position: absolute;
417
+ inset-block: 0;
418
+ left: 0;
419
+ z-index: 0;
420
+ width: calc(100% / max(var(--hj-segmented-count, 1), 1));
421
+ border: 1px solid var(--hj-tabs-boxed-indicator-border);
422
+ background: var(--hj-tabs-boxed-indicator-bg);
423
+ box-shadow: var(--hj-tabs-boxed-indicator-shadow);
424
+ content: "";
425
+ transform: translateX(calc(var(--hj-segmented-index, 0) * 100%));
426
+ transition: transform var(--hj-motion-duration-normal) var(--hj-motion-ease-out-circ), width
427
+ var(--hj-motion-duration-normal) var(--hj-motion-ease-out-circ);
428
+ }
429
+
430
+ .hj-segmented-tabs-boxed > button[aria-selected="true"] {
431
+ border-color: transparent !important;
432
+ background: transparent !important;
433
+ box-shadow: none !important;
434
+ }
435
+
436
+ .hj-segmented-tabs-segmented::before {
437
+ position: absolute;
438
+ inset-block: 3px;
439
+ left: 3px;
440
+ z-index: 0;
441
+ width: calc((100% - 6px) / max(var(--hj-segmented-count, 1), 1));
442
+ border: 1px solid rgb(255 255 255 / 0.08);
443
+ border-radius: 999px;
444
+ background: rgb(255 204 51 / 0.14);
445
+ box-shadow: inset 0 1px 0 rgb(255 255 255 / 0.08);
446
+ content: "";
447
+ transform: translateX(calc(var(--hj-segmented-index, 0) * 100%));
448
+ transition: transform var(--hj-motion-duration-normal) var(--hj-motion-ease-out-circ), width
449
+ var(--hj-motion-duration-normal) var(--hj-motion-ease-out-circ);
450
+ }
451
+
452
+ .hj-segmented-tabs-segmented > button[aria-selected="true"] {
453
+ background: transparent !important;
454
+ box-shadow: none !important;
455
+ }
456
+
457
+ @keyframes hjFadeIn {
458
+ 0% {
459
+ opacity: 0;
460
+ }
461
+ 100% {
462
+ opacity: 1;
463
+ }
464
+ }
465
+
466
+ @keyframes hjFadeOut {
467
+ 0% {
468
+ opacity: 1;
469
+ }
470
+ 100% {
471
+ opacity: 0;
472
+ }
473
+ }
474
+
475
+ @keyframes hjZoomBigIn {
476
+ 0% {
477
+ opacity: 0;
478
+ transform: scale(0.2);
479
+ }
480
+ 100% {
481
+ opacity: 1;
482
+ transform: scale(1);
483
+ }
484
+ }
485
+
486
+ @keyframes hjZoomBigOut {
487
+ 0% {
488
+ transform: scale(1);
489
+ }
490
+ 100% {
491
+ opacity: 0;
492
+ transform: scale(0.2);
493
+ }
494
+ }
495
+
496
+ @keyframes hjSlideUpIn {
497
+ 0% {
498
+ opacity: 0;
499
+ transform: scaleY(0.8);
500
+ transform-origin: 0% 0%;
501
+ }
502
+ 100% {
503
+ opacity: 1;
504
+ transform: scaleY(1);
505
+ transform-origin: 0% 0%;
506
+ }
507
+ }
508
+
509
+ @keyframes hjSlideUpOut {
510
+ 0% {
511
+ opacity: 1;
512
+ transform: scaleY(1);
513
+ transform-origin: 0% 0%;
514
+ }
515
+ 100% {
516
+ opacity: 0;
517
+ transform: scaleY(0.8);
518
+ transform-origin: 0% 0%;
519
+ }
520
+ }
521
+
522
+ @keyframes hj-border-beam {
523
+ 0% {
524
+ transform: rotate(0deg) scale(2);
525
+ }
526
+ 100% {
527
+ transform: rotate(360deg) scale(2);
528
+ }
529
+ }
530
+
531
+ .hj-fade-enter {
532
+ animation: hjFadeIn var(--hj-motion-duration-normal) var(--hj-motion-ease-in-out-circ) both;
533
+ }
534
+
535
+ .hj-fade-exit {
536
+ animation: hjFadeOut var(--hj-motion-duration-normal) var(--hj-motion-ease-in-out-circ) both;
537
+ }
538
+
539
+ .hj-zoom-appear,
540
+ .hj-zoom-enter {
541
+ animation: hjZoomBigIn var(--hj-motion-duration-slow) var(--hj-motion-ease-out-circ) both;
542
+ }
543
+
544
+ .hj-zoom-leave,
545
+ .hj-zoom-exit {
546
+ animation: hjZoomBigOut var(--hj-motion-duration-slow) var(--hj-motion-ease-in-out-circ) both;
547
+ }
548
+
549
+ .hj-slide-up-appear,
550
+ .hj-slide-up-enter {
551
+ animation: hjSlideUpIn var(--hj-motion-duration-normal) var(--hj-motion-ease-out) both;
552
+ }
553
+
554
+ .hj-slide-up-leave,
555
+ .hj-slide-up-exit {
556
+ animation: hjSlideUpOut var(--hj-motion-duration-normal) var(--hj-motion-ease-in) both;
557
+ }
558
+
559
+ .hj-collapse-enter {
560
+ grid-template-rows: 1fr;
561
+ opacity: 1;
562
+ transition: grid-template-rows var(--hj-motion-duration-normal) var(--hj-motion-ease-in-out),
563
+ opacity var(--hj-motion-duration-normal) var(--hj-motion-ease-out);
564
+ }
565
+
566
+ .hj-collapse-exit {
567
+ grid-template-rows: 0fr;
568
+ opacity: 0;
569
+ transition: grid-template-rows var(--hj-motion-duration-normal) var(--hj-motion-ease-in-out),
570
+ opacity var(--hj-motion-duration-fast) var(--hj-motion-ease-in);
571
+ }
572
+
573
+ :where(.huaijiu-motion-disabled, .huaijiu-motion-disabled *)
574
+ :where(
575
+ .hj-zoom-appear,
576
+ .hj-zoom-enter,
577
+ .hj-zoom-leave,
578
+ .hj-zoom-exit,
579
+ .hj-slide-up-appear,
580
+ .hj-slide-up-enter,
581
+ .hj-slide-up-leave,
582
+ .hj-slide-up-exit
583
+ ) {
584
+ transform: none !important;
585
+ }
586
+
587
+ @media (prefers-reduced-motion: reduce) {
588
+ :where(
589
+ .hj-zoom-appear,
590
+ .hj-zoom-enter,
591
+ .hj-zoom-leave,
592
+ .hj-zoom-exit,
593
+ .hj-slide-up-appear,
594
+ .hj-slide-up-enter,
595
+ .hj-slide-up-leave,
596
+ .hj-slide-up-exit
597
+ ) {
598
+ transform: none !important;
599
+ }
600
+ }
601
+ }