zenkit-css 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (96) hide show
  1. package/README.md +182 -0
  2. package/dist/zenkit.css +33721 -0
  3. package/dist/zenkit.css.map +1 -0
  4. package/dist/zenkit.min.css +1 -0
  5. package/dist/zenkit.min.css.map +1 -0
  6. package/package.json +41 -0
  7. package/scss/abstracts/_functions.scss +174 -0
  8. package/scss/abstracts/_mixins.scss +272 -0
  9. package/scss/abstracts/_variables.scss +216 -0
  10. package/scss/base/_reset.scss +130 -0
  11. package/scss/base/_root.scss +194 -0
  12. package/scss/base/_typography.scss +271 -0
  13. package/scss/components/_accordion.scss +200 -0
  14. package/scss/components/_affix.scss +278 -0
  15. package/scss/components/_alerts.scss +175 -0
  16. package/scss/components/_anchor.scss +438 -0
  17. package/scss/components/_autocomplete.scss +530 -0
  18. package/scss/components/_avatar.scss +256 -0
  19. package/scss/components/_backtop.scss +329 -0
  20. package/scss/components/_badges.scss +266 -0
  21. package/scss/components/_breadcrumb.scss +102 -0
  22. package/scss/components/_buttons.scss +340 -0
  23. package/scss/components/_calendar.scss +787 -0
  24. package/scss/components/_cards.scss +265 -0
  25. package/scss/components/_carousel.scss +306 -0
  26. package/scss/components/_cascader.scss +510 -0
  27. package/scss/components/_close-button.scss +106 -0
  28. package/scss/components/_colorpicker.scss +593 -0
  29. package/scss/components/_datepicker.scss +625 -0
  30. package/scss/components/_descriptions.scss +453 -0
  31. package/scss/components/_divider.scss +253 -0
  32. package/scss/components/_drawer.scss +485 -0
  33. package/scss/components/_dropdown.scss +323 -0
  34. package/scss/components/_empty.scss +321 -0
  35. package/scss/components/_floatbutton.scss +400 -0
  36. package/scss/components/_forms.scss +753 -0
  37. package/scss/components/_image.scss +497 -0
  38. package/scss/components/_inputnumber.scss +475 -0
  39. package/scss/components/_layout.scss +538 -0
  40. package/scss/components/_list-group.scss +227 -0
  41. package/scss/components/_list.scss +528 -0
  42. package/scss/components/_mentions.scss +479 -0
  43. package/scss/components/_menu.scss +510 -0
  44. package/scss/components/_message.scss +412 -0
  45. package/scss/components/_modal.scss +304 -0
  46. package/scss/components/_navbar.scss +329 -0
  47. package/scss/components/_notification.scss +499 -0
  48. package/scss/components/_offcanvas.scss +274 -0
  49. package/scss/components/_pagination.scss +176 -0
  50. package/scss/components/_placeholder.scss +237 -0
  51. package/scss/components/_popconfirm.scss +393 -0
  52. package/scss/components/_popover.scss +298 -0
  53. package/scss/components/_progress.scss +225 -0
  54. package/scss/components/_rating.scss +314 -0
  55. package/scss/components/_result.scss +383 -0
  56. package/scss/components/_segmented.scss +441 -0
  57. package/scss/components/_select.scss +412 -0
  58. package/scss/components/_spinners.scss +229 -0
  59. package/scss/components/_statistic.scss +336 -0
  60. package/scss/components/_steps.scss +343 -0
  61. package/scss/components/_tabs.scss +239 -0
  62. package/scss/components/_tag.scss +317 -0
  63. package/scss/components/_timeline.scss +341 -0
  64. package/scss/components/_timepicker.scss +468 -0
  65. package/scss/components/_toast.scss +279 -0
  66. package/scss/components/_tooltip.scss +305 -0
  67. package/scss/components/_tour.scss +488 -0
  68. package/scss/components/_transfer.scss +556 -0
  69. package/scss/components/_tree.scss +518 -0
  70. package/scss/components/_treeselect.scss +531 -0
  71. package/scss/components/_upload.scss +510 -0
  72. package/scss/components/_watermark.scss +314 -0
  73. package/scss/content/_figures.scss +38 -0
  74. package/scss/content/_images.scss +138 -0
  75. package/scss/content/_tables.scss +232 -0
  76. package/scss/layout/_container.scss +71 -0
  77. package/scss/layout/_grid.scss +258 -0
  78. package/scss/utilities/_animations.scss +494 -0
  79. package/scss/utilities/_borders.scss +246 -0
  80. package/scss/utilities/_colors.scss +194 -0
  81. package/scss/utilities/_display.scss +263 -0
  82. package/scss/utilities/_filters.scss +328 -0
  83. package/scss/utilities/_flex.scss +178 -0
  84. package/scss/utilities/_float.scss +70 -0
  85. package/scss/utilities/_grid-utils.scss +151 -0
  86. package/scss/utilities/_helpers.scss +479 -0
  87. package/scss/utilities/_interactions.scss +249 -0
  88. package/scss/utilities/_overflow.scss +204 -0
  89. package/scss/utilities/_position.scss +245 -0
  90. package/scss/utilities/_shadows.scss +67 -0
  91. package/scss/utilities/_sizing.scss +217 -0
  92. package/scss/utilities/_spacing.scss +207 -0
  93. package/scss/utilities/_text.scss +237 -0
  94. package/scss/utilities/_transforms.scss +368 -0
  95. package/scss/utilities/_visibility.scss +251 -0
  96. package/scss/zenkit.scss +121 -0
@@ -0,0 +1,453 @@
1
+ // ========================================
2
+ // ZenKit - Descriptions Component
3
+ // Key-value pair display list
4
+ // ========================================
5
+
6
+ @use '../abstracts/variables' as *;
7
+
8
+ // ----------------------------------------
9
+ // Descriptions Container
10
+ // ----------------------------------------
11
+ .descriptions {
12
+ width: 100%;
13
+ }
14
+
15
+ // ----------------------------------------
16
+ // Descriptions Header
17
+ // ----------------------------------------
18
+ .descriptions-header {
19
+ display: flex;
20
+ align-items: center;
21
+ justify-content: space-between;
22
+ margin-bottom: 1rem;
23
+ }
24
+
25
+ .descriptions-title {
26
+ font-size: 1rem;
27
+ font-weight: 600;
28
+ color: var(--text-primary);
29
+ }
30
+
31
+ .descriptions-extra {
32
+ display: flex;
33
+ align-items: center;
34
+ gap: 0.5rem;
35
+ }
36
+
37
+ // ----------------------------------------
38
+ // Descriptions Table (Default Layout)
39
+ // ----------------------------------------
40
+ .descriptions-view {
41
+ width: 100%;
42
+ border-collapse: collapse;
43
+ }
44
+
45
+ .descriptions-row {
46
+ border-bottom: 1px solid var(--border-color);
47
+
48
+ &:last-child {
49
+ border-bottom: none;
50
+ }
51
+ }
52
+
53
+ // ----------------------------------------
54
+ // Descriptions Item
55
+ // ----------------------------------------
56
+ .descriptions-item {
57
+ padding: 0;
58
+ vertical-align: top;
59
+ }
60
+
61
+ .descriptions-item-label {
62
+ padding: 0.75rem 1rem;
63
+ font-size: 0.875rem;
64
+ font-weight: 500;
65
+ color: var(--text-muted);
66
+ background-color: var(--bg-secondary);
67
+ white-space: nowrap;
68
+ width: 1%;
69
+ }
70
+
71
+ .descriptions-item-content {
72
+ padding: 0.75rem 1rem;
73
+ font-size: 0.875rem;
74
+ color: var(--text-primary);
75
+ word-break: break-word;
76
+ }
77
+
78
+ // ----------------------------------------
79
+ // Descriptions Bordered
80
+ // ----------------------------------------
81
+ .descriptions-bordered {
82
+ border: 1px solid var(--border-color);
83
+ border-radius: $border-radius;
84
+ overflow: hidden;
85
+
86
+ .descriptions-row {
87
+ &:last-child {
88
+ border-bottom: none;
89
+ }
90
+ }
91
+
92
+ .descriptions-item-label {
93
+ border-right: 1px solid var(--border-color);
94
+ }
95
+
96
+ .descriptions-item-content {
97
+ border-right: 1px solid var(--border-color);
98
+
99
+ &:last-child {
100
+ border-right: none;
101
+ }
102
+ }
103
+ }
104
+
105
+ // ----------------------------------------
106
+ // Descriptions Colon
107
+ // ----------------------------------------
108
+ .descriptions-colon .descriptions-item-label::after {
109
+ content: ':';
110
+ margin-left: 0.25rem;
111
+ }
112
+
113
+ // ----------------------------------------
114
+ // Descriptions Vertical Layout
115
+ // ----------------------------------------
116
+ .descriptions-vertical {
117
+ .descriptions-row {
118
+ display: flex;
119
+ flex-direction: column;
120
+ border-bottom: 1px solid var(--border-color);
121
+
122
+ &:last-child {
123
+ border-bottom: none;
124
+ }
125
+ }
126
+
127
+ .descriptions-item-label {
128
+ padding: 0.5rem 1rem;
129
+ width: auto;
130
+ }
131
+
132
+ .descriptions-item-content {
133
+ padding: 0.5rem 1rem;
134
+ padding-top: 0;
135
+ }
136
+
137
+ &.descriptions-bordered {
138
+ .descriptions-item-label {
139
+ border-right: none;
140
+ border-bottom: none;
141
+ }
142
+
143
+ .descriptions-item-content {
144
+ border-right: none;
145
+ }
146
+ }
147
+ }
148
+
149
+ // ----------------------------------------
150
+ // Descriptions Inline Layout
151
+ // ----------------------------------------
152
+ .descriptions-inline {
153
+ display: flex;
154
+ flex-wrap: wrap;
155
+ gap: 1rem;
156
+
157
+ .descriptions-view {
158
+ display: contents;
159
+ }
160
+
161
+ .descriptions-row {
162
+ display: contents;
163
+ border-bottom: none;
164
+ }
165
+
166
+ .descriptions-item {
167
+ display: flex;
168
+ flex-direction: column;
169
+ gap: 0.25rem;
170
+ flex: 1;
171
+ min-width: 200px;
172
+ }
173
+
174
+ .descriptions-item-label {
175
+ padding: 0;
176
+ background: transparent;
177
+ }
178
+
179
+ .descriptions-item-content {
180
+ padding: 0;
181
+ }
182
+ }
183
+
184
+ // ----------------------------------------
185
+ // Descriptions Grid Layout
186
+ // ----------------------------------------
187
+ .descriptions-grid {
188
+ .descriptions-view {
189
+ display: grid;
190
+ gap: 0;
191
+ }
192
+
193
+ .descriptions-row {
194
+ display: contents;
195
+ }
196
+ }
197
+
198
+ // Column variations
199
+ .descriptions-col-1 .descriptions-view {
200
+ grid-template-columns: auto 1fr;
201
+ }
202
+
203
+ .descriptions-col-2 .descriptions-view {
204
+ grid-template-columns: repeat(2, auto 1fr);
205
+ }
206
+
207
+ .descriptions-col-3 .descriptions-view {
208
+ grid-template-columns: repeat(3, auto 1fr);
209
+ }
210
+
211
+ .descriptions-col-4 .descriptions-view {
212
+ grid-template-columns: repeat(4, auto 1fr);
213
+ }
214
+
215
+ // ----------------------------------------
216
+ // Descriptions Sizes
217
+ // ----------------------------------------
218
+ .descriptions-sm {
219
+ .descriptions-item-label,
220
+ .descriptions-item-content {
221
+ padding: 0.5rem 0.75rem;
222
+ font-size: 0.75rem;
223
+ }
224
+ }
225
+
226
+ .descriptions-lg {
227
+ .descriptions-item-label,
228
+ .descriptions-item-content {
229
+ padding: 1rem 1.25rem;
230
+ font-size: 1rem;
231
+ }
232
+ }
233
+
234
+ // ----------------------------------------
235
+ // Descriptions Label Alignment
236
+ // ----------------------------------------
237
+ .descriptions-label-left .descriptions-item-label {
238
+ text-align: left;
239
+ }
240
+
241
+ .descriptions-label-right .descriptions-item-label {
242
+ text-align: right;
243
+ }
244
+
245
+ .descriptions-label-center .descriptions-item-label {
246
+ text-align: center;
247
+ }
248
+
249
+ // ----------------------------------------
250
+ // Descriptions Content Alignment
251
+ // ----------------------------------------
252
+ .descriptions-content-left .descriptions-item-content {
253
+ text-align: left;
254
+ }
255
+
256
+ .descriptions-content-right .descriptions-item-content {
257
+ text-align: right;
258
+ }
259
+
260
+ .descriptions-content-center .descriptions-item-content {
261
+ text-align: center;
262
+ }
263
+
264
+ // ----------------------------------------
265
+ // Descriptions Card Style
266
+ // ----------------------------------------
267
+ .descriptions-card {
268
+ padding: 1rem;
269
+ background-color: var(--bg-primary);
270
+ border: 1px solid var(--border-color);
271
+ border-radius: $border-radius;
272
+ box-shadow: $shadow-sm;
273
+
274
+ .descriptions-header {
275
+ padding-bottom: 0.75rem;
276
+ border-bottom: 1px solid var(--border-color);
277
+ }
278
+ }
279
+
280
+ // ----------------------------------------
281
+ // Descriptions Item Span
282
+ // ----------------------------------------
283
+ .descriptions-item-span-2 {
284
+ grid-column: span 2;
285
+ }
286
+
287
+ .descriptions-item-span-3 {
288
+ grid-column: span 3;
289
+ }
290
+
291
+ .descriptions-item-span-4 {
292
+ grid-column: span 4;
293
+ }
294
+
295
+ .descriptions-item-span-full {
296
+ grid-column: 1 / -1;
297
+ }
298
+
299
+ // ----------------------------------------
300
+ // Descriptions Empty Value
301
+ // ----------------------------------------
302
+ .descriptions-item-empty {
303
+ color: var(--text-muted);
304
+ font-style: italic;
305
+ }
306
+
307
+ // ----------------------------------------
308
+ // Descriptions Editable
309
+ // ----------------------------------------
310
+ .descriptions-editable {
311
+ .descriptions-item-content {
312
+ display: flex;
313
+ align-items: center;
314
+ gap: 0.5rem;
315
+ }
316
+ }
317
+
318
+ .descriptions-edit-btn {
319
+ display: flex;
320
+ align-items: center;
321
+ justify-content: center;
322
+ width: 1.25rem;
323
+ height: 1.25rem;
324
+ padding: 0;
325
+ color: var(--text-muted);
326
+ background: transparent;
327
+ border: none;
328
+ border-radius: $border-radius-sm;
329
+ cursor: pointer;
330
+ opacity: 0;
331
+ transition: opacity 0.15s ease, color 0.15s ease;
332
+
333
+ .descriptions-item-content:hover & {
334
+ opacity: 1;
335
+ }
336
+
337
+ &:hover {
338
+ color: var(--primary);
339
+ }
340
+ }
341
+
342
+ .descriptions-item-editing {
343
+ .descriptions-item-content {
344
+ padding: 0.5rem;
345
+ }
346
+ }
347
+
348
+ .descriptions-edit-input {
349
+ flex: 1;
350
+ padding: 0.25rem 0.5rem;
351
+ font-size: 0.875rem;
352
+ border: 1px solid var(--primary);
353
+ border-radius: $border-radius-sm;
354
+ outline: none;
355
+ }
356
+
357
+ // ----------------------------------------
358
+ // Descriptions Copy Button
359
+ // ----------------------------------------
360
+ .descriptions-copy-btn {
361
+ display: flex;
362
+ align-items: center;
363
+ justify-content: center;
364
+ width: 1.25rem;
365
+ height: 1.25rem;
366
+ padding: 0;
367
+ color: var(--text-muted);
368
+ background: transparent;
369
+ border: none;
370
+ border-radius: $border-radius-sm;
371
+ cursor: pointer;
372
+ opacity: 0;
373
+ transition: opacity 0.15s ease, color 0.15s ease;
374
+
375
+ .descriptions-item-content:hover & {
376
+ opacity: 1;
377
+ }
378
+
379
+ &:hover {
380
+ color: var(--primary);
381
+ }
382
+
383
+ &.is-copied {
384
+ color: var(--success);
385
+ }
386
+ }
387
+
388
+ // ----------------------------------------
389
+ // Descriptions Striped
390
+ // ----------------------------------------
391
+ .descriptions-striped {
392
+ .descriptions-row:nth-child(even) {
393
+ background-color: var(--bg-secondary);
394
+ }
395
+
396
+ .descriptions-row:nth-child(even) .descriptions-item-label {
397
+ background-color: var(--bg-tertiary);
398
+ }
399
+ }
400
+
401
+ // ----------------------------------------
402
+ // Descriptions Compact
403
+ // ----------------------------------------
404
+ .descriptions-compact {
405
+ .descriptions-item-label,
406
+ .descriptions-item-content {
407
+ padding: 0.375rem 0.75rem;
408
+ }
409
+
410
+ .descriptions-item-label {
411
+ background-color: transparent;
412
+ font-weight: 600;
413
+ }
414
+ }
415
+
416
+ // ----------------------------------------
417
+ // Descriptions Responsive
418
+ // ----------------------------------------
419
+ @media (max-width: 767.98px) {
420
+ .descriptions-col-2 .descriptions-view,
421
+ .descriptions-col-3 .descriptions-view,
422
+ .descriptions-col-4 .descriptions-view {
423
+ grid-template-columns: auto 1fr;
424
+ }
425
+
426
+ .descriptions-item-span-2,
427
+ .descriptions-item-span-3,
428
+ .descriptions-item-span-4 {
429
+ grid-column: span 2;
430
+ }
431
+ }
432
+
433
+ @media (max-width: 575.98px) {
434
+ .descriptions:not(.descriptions-inline) {
435
+ .descriptions-view {
436
+ display: block;
437
+ }
438
+
439
+ .descriptions-row {
440
+ display: flex;
441
+ flex-direction: column;
442
+ }
443
+
444
+ .descriptions-item-label {
445
+ width: auto;
446
+ border-right: none;
447
+ }
448
+
449
+ .descriptions-item-content {
450
+ border-right: none;
451
+ }
452
+ }
453
+ }
@@ -0,0 +1,253 @@
1
+ // ========================================
2
+ // ZenKit - Divider
3
+ // ========================================
4
+
5
+ @use '../abstracts/variables' as *;
6
+
7
+ // ----------------------------------------
8
+ // Base Divider (Horizontal)
9
+ // ----------------------------------------
10
+ .divider {
11
+ --divider-color: var(--border);
12
+ --divider-thickness: 1px;
13
+ --divider-spacing: 1rem;
14
+
15
+ display: flex;
16
+ align-items: center;
17
+ margin: var(--divider-spacing) 0;
18
+ color: var(--text-muted);
19
+ font-size: var(--text-sm);
20
+
21
+ &::before,
22
+ &::after {
23
+ content: "";
24
+ flex: 1;
25
+ height: var(--divider-thickness);
26
+ background-color: var(--divider-color);
27
+ }
28
+
29
+ &:empty::before {
30
+ margin-right: 0;
31
+ }
32
+
33
+ &:empty::after {
34
+ margin-left: 0;
35
+ }
36
+
37
+ &:not(:empty)::before {
38
+ margin-right: 1rem;
39
+ }
40
+
41
+ &:not(:empty)::after {
42
+ margin-left: 1rem;
43
+ }
44
+ }
45
+
46
+ // ----------------------------------------
47
+ // Simple Divider (No Text)
48
+ // ----------------------------------------
49
+ hr.divider,
50
+ .divider-line {
51
+ border: none;
52
+ height: var(--divider-thickness, 1px);
53
+ background-color: var(--divider-color, var(--border));
54
+ margin: var(--divider-spacing, 1rem) 0;
55
+
56
+ &::before,
57
+ &::after {
58
+ display: none;
59
+ }
60
+ }
61
+
62
+ // ----------------------------------------
63
+ // Vertical Divider
64
+ // ----------------------------------------
65
+ .divider-vertical {
66
+ --divider-spacing: 0 1rem;
67
+
68
+ display: inline-flex;
69
+ flex-direction: column;
70
+ align-items: center;
71
+ align-self: stretch;
72
+ margin: var(--divider-spacing);
73
+ min-height: 1rem;
74
+
75
+ &::before,
76
+ &::after {
77
+ content: "";
78
+ flex: 1;
79
+ width: var(--divider-thickness, 1px);
80
+ background-color: var(--divider-color, var(--border));
81
+ }
82
+
83
+ &:not(:empty)::before {
84
+ margin-bottom: 0.5rem;
85
+ margin-right: 0;
86
+ }
87
+
88
+ &:not(:empty)::after {
89
+ margin-top: 0.5rem;
90
+ margin-left: 0;
91
+ }
92
+ }
93
+
94
+ // ----------------------------------------
95
+ // Divider Spacing Variants
96
+ // ----------------------------------------
97
+ .divider-sm {
98
+ --divider-spacing: 0.5rem;
99
+ }
100
+
101
+ .divider-lg {
102
+ --divider-spacing: 1.5rem;
103
+ }
104
+
105
+ .divider-xl {
106
+ --divider-spacing: 2rem;
107
+ }
108
+
109
+ // ----------------------------------------
110
+ // Divider Thickness Variants
111
+ // ----------------------------------------
112
+ .divider-thin {
113
+ --divider-thickness: 1px;
114
+ }
115
+
116
+ .divider-thick {
117
+ --divider-thickness: 2px;
118
+ }
119
+
120
+ .divider-bold {
121
+ --divider-thickness: 4px;
122
+ }
123
+
124
+ // ----------------------------------------
125
+ // Divider Style Variants
126
+ // ----------------------------------------
127
+ .divider-dashed {
128
+ &::before,
129
+ &::after {
130
+ background: repeating-linear-gradient(
131
+ 90deg,
132
+ var(--divider-color, var(--border)),
133
+ var(--divider-color, var(--border)) 6px,
134
+ transparent 6px,
135
+ transparent 12px
136
+ );
137
+ height: var(--divider-thickness, 1px);
138
+ }
139
+ }
140
+
141
+ .divider-dotted {
142
+ &::before,
143
+ &::after {
144
+ background: repeating-linear-gradient(
145
+ 90deg,
146
+ var(--divider-color, var(--border)),
147
+ var(--divider-color, var(--border)) 2px,
148
+ transparent 2px,
149
+ transparent 6px
150
+ );
151
+ height: var(--divider-thickness, 1px);
152
+ }
153
+ }
154
+
155
+ // Vertical dashed/dotted
156
+ .divider-vertical.divider-dashed {
157
+ &::before,
158
+ &::after {
159
+ background: repeating-linear-gradient(
160
+ 180deg,
161
+ var(--divider-color, var(--border)),
162
+ var(--divider-color, var(--border)) 6px,
163
+ transparent 6px,
164
+ transparent 12px
165
+ );
166
+ width: var(--divider-thickness, 1px);
167
+ height: auto;
168
+ }
169
+ }
170
+
171
+ .divider-vertical.divider-dotted {
172
+ &::before,
173
+ &::after {
174
+ background: repeating-linear-gradient(
175
+ 180deg,
176
+ var(--divider-color, var(--border)),
177
+ var(--divider-color, var(--border)) 2px,
178
+ transparent 2px,
179
+ transparent 6px
180
+ );
181
+ width: var(--divider-thickness, 1px);
182
+ height: auto;
183
+ }
184
+ }
185
+
186
+ // ----------------------------------------
187
+ // Divider Color Variants
188
+ // ----------------------------------------
189
+ .divider-primary {
190
+ --divider-color: var(--primary);
191
+ color: var(--primary);
192
+ }
193
+
194
+ .divider-secondary {
195
+ --divider-color: var(--gray-400);
196
+ color: var(--gray-500);
197
+ }
198
+
199
+ .divider-success {
200
+ --divider-color: var(--success);
201
+ color: var(--success);
202
+ }
203
+
204
+ .divider-danger {
205
+ --divider-color: var(--danger);
206
+ color: var(--danger);
207
+ }
208
+
209
+ .divider-warning {
210
+ --divider-color: var(--warning);
211
+ color: var(--warning);
212
+ }
213
+
214
+ .divider-info {
215
+ --divider-color: var(--info);
216
+ color: var(--info);
217
+ }
218
+
219
+ .divider-dark {
220
+ --divider-color: var(--gray-700);
221
+ color: var(--gray-700);
222
+ }
223
+
224
+ .divider-light {
225
+ --divider-color: var(--gray-200);
226
+ color: var(--gray-400);
227
+ }
228
+
229
+ // ----------------------------------------
230
+ // Divider Text Alignment
231
+ // ----------------------------------------
232
+ .divider-left {
233
+ &::before {
234
+ flex: 0 0 2rem;
235
+ }
236
+ }
237
+
238
+ .divider-right {
239
+ &::after {
240
+ flex: 0 0 2rem;
241
+ }
242
+ }
243
+
244
+ // ----------------------------------------
245
+ // Divider with Icon
246
+ // ----------------------------------------
247
+ .divider-icon {
248
+ svg {
249
+ width: 1rem;
250
+ height: 1rem;
251
+ margin: 0 0.25rem;
252
+ }
253
+ }