@nulllogic/scssleon 1.0.4 → 1.0.5

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.
@@ -1,5 +1,8 @@
1
1
  @use 'sass:map';
2
2
  @use "sass:string";
3
+ @use '../functions' as functions;
4
+
5
+ $config: () !default;
3
6
 
4
7
  // Main theme _colors
5
8
  $theme: () !default;
@@ -14,7 +17,6 @@ $html-config: (
14
17
  ),
15
18
 
16
19
  html : (
17
-
18
20
  body : (
19
21
  -webkit-text-size-adjust: 100%,
20
22
  -webkit-font-smoothing: antialiased,
@@ -33,7 +35,7 @@ $html-config: (
33
35
 
34
36
  _colors: (
35
37
  light : (
36
- background: '#fff',
38
+ background: rgb(244, 245, 250) linear-gradient(to top, #ffffff, #fefefe, #f3f2f8, #f3f4f9, #f4f5fa),
37
39
  color: '#ccc',
38
40
  ),
39
41
  dark : (
@@ -55,7 +57,7 @@ $html-config: (
55
57
 
56
58
  _colors: (
57
59
  light : (
58
- color: '#ccc',
60
+ color: '#333',
59
61
  ),
60
62
  dark : (
61
63
  color: '#ccc'
@@ -63,44 +65,89 @@ $html-config: (
63
65
  ),
64
66
 
65
67
  _subclasses : (
66
- "&:hover": (
68
+ '&:hover': (
67
69
  text-decoration: none
68
70
  ),
69
- "&[target='_blank']" : (
70
- _subclasses : (
71
- "&:after" : (
72
- background: red,
73
- display: inline-flex,
74
- width: 12px,
75
- height: 12px,
76
- content : ''
77
- )
78
- ),
79
- )
80
71
  )
81
72
 
82
73
  ),
83
74
  ol: (
84
75
  margin: 0,
85
76
  padding: 0,
86
- list-style-type: none,
77
+ //list-style-type: none,
87
78
  ),
88
79
  ul: (
89
80
  margin: 0,
90
81
  padding: 0,
91
- list-style-type: none,
82
+ //list-style-type: none,
92
83
  ),
93
84
  dl: (
94
85
  margin: 0,
95
86
  padding: 0,
96
- list-style-type: none,
87
+ //list-style-type: none,
97
88
  ),
98
89
  img : (
99
90
  vertical-align: middle,
100
91
  width: auto,
101
92
  height: auto,
102
93
  max-width: 100%,
103
- )
94
+ ),
95
+
96
+ code : (
97
+
98
+ //margin-block: -.125rem,
99
+ //padding: .125rem .375rem,
100
+
101
+ color: var(--color),
102
+ background: var(--background),
103
+
104
+ _colors: (
105
+ light : (
106
+ background: rgba(228, 221, 83, 0.65),
107
+ color: inherit,
108
+ ),
109
+ dark : (
110
+ background : oklch(0.63 0.14 106.66 / 0.54),
111
+ color: inherit,
112
+ )
113
+ ),
114
+ ),
115
+
116
+ kbd: (
117
+ font-family: var(global(--font-family-monospace)),
118
+
119
+ margin-block: -.125rem,
120
+ padding: .125rem .375rem,
121
+
122
+ border: var(--border),
123
+ background: var(--background),
124
+ color: var(--color),
125
+
126
+ //font-size: 11px,
127
+ //color: #4e4e4e,
128
+ //text-shadow: none,
129
+ //background-color: #f7f7f7,
130
+ //padding: 4px 7px,
131
+ //border: 1px solid rgba(0,0,0,0.2),
132
+ //border-radius: 7px,
133
+ //box-shadow: 0 2px 0 0 rgba(0,0,0,0.2), 0 0 0 1px #fafafa inset,
134
+ //margin: 0 1px,
135
+
136
+ _colors: (
137
+ light : (
138
+ background: rgb(255, 255, 255),
139
+ color: inherit,
140
+ border: 1px solid rgba(19, 19, 19, 0.2),
141
+ shadow: string.unquote(' rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0.1) 0px 4px 6px -1px, rgba(0, 0, 0, 0.1) 0px 2px 4px -2px'),
142
+ ),
143
+ dark : (
144
+ background : oklch(.205 0 0),
145
+ color: inherit,
146
+ border: 1px solid rgba(19, 19, 19, 0.2),
147
+ shadow: string.unquote(' rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0.1) 0px 4px 6px -1px, rgba(0, 0, 0, 0.1) 0px 2px 4px -2px'),
148
+ )
149
+ )
150
+ ),
104
151
  )
105
152
  );
106
153
 
@@ -117,43 +164,43 @@ $content-config: (
117
164
  )
118
165
  ),
119
166
  h1 : (
120
- font-size: 3.75rem,
167
+ font-size: clamp(2.0273rem, 1.8053rem + 0.8833vw, 2.5341rem),
121
168
  line-height: 1,
122
169
  font-weight: 500,
123
170
  margin: 0,
124
171
  padding: 0 0 15px 0
125
172
  ),
126
173
  h2 : (
127
- font-size: 3rem,
174
+ font-size: clamp(1.802rem, 1.7034rem + 0.3926vw, 2.0273rem),
128
175
  line-height: 1,
129
176
  font-weight: 500,
130
177
  margin: 0,
131
178
  padding: 0 0 15px 0
132
179
  ),
133
180
  h3 : (
134
- font-size: 2.25rem,
135
- line-height: 1.3,
181
+ font-size: clamp(1.6018rem, 1.5141rem + 0.349vw, 1.802rem),
182
+ line-height: 1,
136
183
  font-weight: 500,
137
184
  margin: 0,
138
185
  padding: 0 0 15px 0
139
186
  ),
140
187
  h4 : (
141
- font-size: 1.875rem,
142
- line-height: 1.2,
188
+ font-size: clamp(1.4238rem, 1.3459rem + 0.3102vw, 1.6018rem),
189
+ line-height: 1,
143
190
  font-weight: 500,
144
191
  margin: 0,
145
192
  padding: 0 0 15px 0
146
193
  ),
147
194
  h5 : (
148
- font-size: 1.5rem,
149
- line-height: 1.4,
195
+ font-size: clamp(1.2656rem, 1.1963rem + 0.2757vw, 1.4238rem),
196
+ line-height: 1,
150
197
  font-weight: 500,
151
198
  margin: 0,
152
199
  padding: 0 0 15px 0
153
200
  ),
154
201
  h6 : (
155
- font-size: 1.25rem,
156
- line-height: 1.5,
202
+ font-size: clamp(1.125rem, 1.0634rem + 0.2451vw, 1.2656rem),
203
+ line-height: 1,
157
204
  font-weight: 500,
158
205
  margin: 0,
159
206
  padding: 0 0 15px 0
@@ -161,7 +208,32 @@ $content-config: (
161
208
  p : (
162
209
  margin: 0,
163
210
  padding: 0 0 15px 0,
211
+ line-height: clamp(1.5rem, calc(1rem * pow(1.618, 1)), 1.618rem),
212
+ ),
213
+ blockquote: (
214
+ margin: 0px 0px 15px,
164
215
  line-height: clamp(1.25em, 4vw, 1.5em),
216
+ padding: 1rem,
217
+ font-style: italic,
218
+ font-size: 1.5rem,
219
+
220
+ border-left: var(--blockquote-border),
221
+
222
+ _colors: (
223
+ light: (
224
+ blockquote-border: 3px solid #939393,
225
+ //blockquote-background: rgba(0, 0, 0, 0.65),
226
+ ),
227
+ dark: (
228
+ blockquote-border: 3px solid #ccc,
229
+ //blockquote-background: rgba(0, 0, 0, 0.65),
230
+ )
231
+ ),
232
+ _subclasses : (
233
+ cite : (
234
+
235
+ )
236
+ )
165
237
  ),
166
238
  abbr: (
167
239
  attributes : (
@@ -176,12 +248,32 @@ $content-config: (
176
248
  ),
177
249
  ol: (
178
250
  margin-bottom: 15px,
251
+ line-height: clamp(1.25em, 4vw, 1.5em),
252
+ //list-style-type: attr(type),
253
+ margin-left: 1rem,
254
+ _subclasses : (
255
+ '& ol': (
256
+ //list-style-type: attr(type),
257
+ margin-bottom: 0.5rem,
258
+ margin-inline-start: 1rem,
259
+ )
260
+ )
179
261
  ),
180
262
  ul: (
181
- margin-bottom: 15px,
263
+ margin-bottom: 0.5rem,
264
+ margin-inline-start: 1rem,
265
+ line-height: clamp(1.25em, 4vw, 1.5em),
266
+ list-style-type: inherit,
267
+ _subclasses : (
268
+ '& ul': (
269
+ margin-bottom: 0.5rem,
270
+ margin-inline-start: 1rem,
271
+ )
272
+ )
182
273
  ),
183
274
  dl: (
184
275
  margin-bottom: 15px,
276
+ line-height: clamp(1.25em, 4vw, 1.5em),
185
277
  ),
186
278
  dt: (
187
279
  font-weight: normal,
@@ -213,24 +305,17 @@ $content-config: (
213
305
  ),
214
306
  pre: (
215
307
  font-family: var(global(--font-family-monospace)),
216
- ),
217
- code: (
218
- //box-shadow: rgb(253, 224, 71) 0px -26.529121px 0px 0px inset,
219
- //color: var(--color),
220
- //background: var(--background),
221
- //padding: 2px 5px,
222
- //_colors: (
223
- // light : (
224
- // background: '#fff',
225
- // color: '#ccc',
226
- // ),
227
- // dark : (
228
- // background : rgb(53, 56, 65),
229
- // color: '#fff'
230
- // )
231
- //)
232
- ),
233
- kbd: (
308
+ margin-block: -.125rem,
309
+ padding: .575rem .375rem,
310
+ margin: 0 0 15px 0,
311
+ line-height: 1.1,
312
+ display: block,
313
+ border-radius: 0.5rem,
314
+ _subclasses : (
315
+ code : (
316
+ background: none,
317
+ )
318
+ )
234
319
  ),
235
320
  figure: (
236
321
  margin: 0 0 15px 0,
@@ -305,7 +390,7 @@ $content-config: (
305
390
  border-top-color: #555
306
391
  )
307
392
  )
308
- )
393
+ ),
309
394
  )
310
395
  );
311
396
 
@@ -313,23 +398,21 @@ $updated-theme: map.deep-merge($updated-theme, $content-config);
313
398
 
314
399
  $components-config: (
315
400
  components: (
401
+
316
402
  alert: (
317
403
 
318
404
  --border-radius: .5rem,
319
- --grid-template-columns: auto auto 1fr,
405
+ --grid-template-columns: 20px auto 30px,
320
406
  --gap : 0.5rem,
321
407
  --padding: 0.825rem,
322
- --left-column-justify-self: start,
323
- --left-column-align-self: start,
324
- --center-column-justify-self: center,
325
- --center-column-align-self: center,
326
- --right-column-justify-self: end,
327
- --right-column-align-self: start,
328
408
 
329
- box-shadow: var(--shadow),
330
409
  background: var(--background),
331
410
  border-radius: var(--border-radius),
332
411
  border: var(--border),
412
+ grid-template-columns: var(--grid-template-columns),
413
+ grid-gap: var(--gap),
414
+ padding: var(--padding),
415
+
333
416
  outline: 1px solid transparent,
334
417
  position: relative,
335
418
  display: grid,
@@ -337,37 +420,18 @@ $components-config: (
337
420
  max-width: 100%,
338
421
  align-items: center,
339
422
  line-height: 1rem,
340
- grid-template-columns: var(--grid-template-columns),
341
- grid-gap: var(--gap),
342
- padding: var(--padding),
343
423
 
344
424
  _colors: (
345
425
  light : (
346
426
  background: rgba(246, 246, 247, 1),
347
- shadow: string.unquote("inset 0 0.0625rem 0 0 rgba(186, 191, 195, 1), inset 0 0 0 0.0625rem rgba(186, 191, 195, 1)"),
427
+ border: 1px solid rgb(219, 219, 219),
348
428
  ),
349
429
  dark : (
350
430
  background: rgb(18, 18, 24),
351
431
  border: 1px solid rgba(48, 54, 61, 0.75),
352
- shadow: string.unquote("rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0.05) 0px 1px 2px 0px"),
353
432
  )
354
433
  ),
355
434
 
356
- _subclasses : (
357
- '.left' : (
358
- justify-self: var(--left-column-justify-self),
359
- align-self: var(--left-column-align-self),
360
- ),
361
- '.center' : (
362
- justify-self: var(--center-column-justify-self),
363
- align-self: var(--center-column-align-self),
364
- ),
365
- '.right' : (
366
- justify-self: var(--right-column-justify-self),
367
- align-self: var(--right-column-align-self),
368
- ),
369
- )
370
-
371
435
  ),
372
436
 
373
437
  accordion : (
@@ -416,6 +480,7 @@ $components-config: (
416
480
  align-items: center,
417
481
  justify-content: space-between
418
482
  ),
483
+
419
484
  '&.open' : (
420
485
  _subclasses : (
421
486
  '.icon' : (
@@ -430,17 +495,35 @@ $components-config: (
430
495
  ),
431
496
 
432
497
  '.answer' : (
498
+
433
499
  display: block,
434
500
  padding: 0.5rem 0,
501
+ height: auto,
502
+ opacity: 1,
503
+
504
+ transition: string.unquote('opacity 0.15s ease-in, display 0.15s ease-in allow-discrete'),
505
+
435
506
  _subclasses : (
436
507
  '&[hidden]' : (
437
508
  display: none,
509
+ opacity: 0,
510
+ transition: string.unquote('opacity 0.15s ease-out, display 0.15s ease-out allow-discrete'),
438
511
  )
439
512
  )
440
513
  ),
441
514
 
442
515
  '&:last-child' : (
443
516
  padding-bottom: 0,
517
+ ),
518
+
519
+ // Avoid running animation onload and add animation, when user hover the element
520
+ // @TODO Add focus later, when user navigate by keyboard
521
+ '&:hover .answer' : (
522
+ _atrule : (
523
+ '@starting-style' : (
524
+ opacity: 0
525
+ )
526
+ ),
444
527
  )
445
528
  )
446
529
  )
@@ -459,36 +542,34 @@ $components-config: (
459
542
  vertical-align: middle,
460
543
  align-items: center,
461
544
  display: inline-flex,
545
+
462
546
  padding: var(--padding),
463
547
  border-radius: var(--border-radius),
464
- color: var(--color),
465
548
  background: var(--background),
466
549
  box-shadow: var(--box-shadow),
467
550
  border: var(--border),
468
551
 
469
552
  _colors: (
470
553
  light : (
471
- color: #ccc,
472
- box-shadow: none
554
+ box-shadow: none,
555
+ border: 1px solid rgba(33, 33, 33, 0.15),
556
+ background: rgba(247, 247, 247, 0.85),
473
557
  ),
474
558
  dark : (
475
- color: #ccc,
476
- background: rgb(40, 50, 60),
559
+ background: rgba(40, 50, 60, 0.85),
477
560
  box-shadow: none,
478
- border: 1px solid #ccc,
561
+ border: 1px solid rgba(255, 255, 255, 0.15),
479
562
  )
480
563
  )
481
-
482
564
  ),
483
- breadcrumb : (
484
565
 
485
- --padding: 0 0 0 5px,
566
+ breadcrumb : (
486
567
 
487
568
  list-style: none,
488
569
  align-items: center,
489
570
  display: flex,
490
571
  flex-wrap: wrap,
491
- padding: var(--padding),
572
+
492
573
  margin: 0,
493
574
 
494
575
  _colors: (
@@ -499,10 +580,10 @@ $components-config: (
499
580
  ),
500
581
 
501
582
  _subclasses : (
502
- ".item" : (
583
+ '.item' : (
503
584
  display: inline-flex,
504
585
  _subclasses : (
505
- ".link" : (
586
+ '.link' : (
506
587
  )
507
588
  )
508
589
  )
@@ -513,12 +594,6 @@ $components-config: (
513
594
 
514
595
  --padding: .5rem .75rem,
515
596
  --border-radius: .25rem,
516
- --box-shadow : (
517
- inset 0 0 0 1px rgba(0, 0, 0, 0.05),
518
- inset 0 1px 2px 0 rgba(78, 83, 90, 0.1) // inset -0.0625rem 0 0 #e3e3e3,
519
- // inset 0.0625rem 0 0 #e3e3e3,
520
- // inset 0 0.0625rem 0 #e3e3e3
521
- ),
522
597
 
523
598
  display: inline-flex,
524
599
  align-items: center,
@@ -533,6 +608,7 @@ $components-config: (
533
608
  background: var(--background),
534
609
  color: var(--color),
535
610
  border-radius: var(--border-radius),
611
+ box-shadow: var(--box-shadow),
536
612
  // This one is required for button group use
537
613
  position: relative,
538
614
 
@@ -545,8 +621,21 @@ $components-config: (
545
621
 
546
622
  _colors: (
547
623
  light: (
548
- color: #fff,
549
- background: #fff
624
+ // Default
625
+ color: inherit,
626
+ background: rgb(250, 250, 250),
627
+ border: 1px solid rgb(188, 188, 188),
628
+ // Hover state
629
+ hover-color: inherit,
630
+ hover-background: rgb(235, 235, 235),
631
+ hover-border: 1px solid rgb(180, 180, 180),
632
+ // Active state
633
+ active-color: inherit,
634
+ active-background: rgb(235, 235, 235),
635
+ active-border: 1px solid rgb(180, 180, 180),
636
+ active-shadow: string.unquote('-0.0625rem 0rem 0.0625rem 0rem rgba(33,33,33,.1) inset,0.0625rem 0rem 0.0625rem 0rem rgba(3,33,33,.15) inset,0rem 0.125rem 0.0625rem 0rem rgba(44,44,44,0.15) inset'),
637
+ // Focus
638
+ focus : 0 0 0 0.2rem rgba(98, 175, 97, .5),
550
639
  ),
551
640
  dark: (
552
641
  // Default
@@ -557,50 +646,82 @@ $components-config: (
557
646
  hover-color: #fff,
558
647
  hover-background: rgb(59, 68, 81),
559
648
  hover-border: 1px solid rgba(229, 235, 240, .55),
560
- // Disabled state
561
- disabled-color: #484f58,
562
- disabled-background: #21262d,
563
- disabled-border: 1px solid rgba(240, 246, 252, 0.1),
564
649
  // Active state
565
650
  active-color: #fff,
566
651
  active-background: rgb(39, 45, 53),
567
652
  active-border: 1px solid rgba(240, 246, 252, .25),
568
- active-shadow: string.unquote("-0.0625rem 0rem 0.0625rem 0rem rgba(26,26,26,0.122) inset,0.0625rem 0rem 0.0625rem 0rem rgba(26,26,26,0.122) inset, 0rem 0.125rem 0.0625rem 0rem rgba(26,26,26,0.2) inset")
653
+ active-shadow: string.unquote('-0.0625rem 0rem 0.0625rem 0rem rgba(15,15,15,.35) inset,0.0625rem 0rem 0.0625rem 0rem rgba(13,13,13, .35) inset,0rem 0.125rem 0.0625rem 0rem rgba(15,15,15,0.35) inset'),
654
+ // Focus
655
+ focus : 0 0 0 0.2rem rgba(98, 175, 97, .5),
569
656
  )
570
657
  ),
571
658
 
572
659
  _subclasses : (
573
- "&:hover:not(.loading, [disabled], .btn-link)" : (
660
+ '&:focus-visible:not([disabled])' : (
661
+ outline: none,
662
+ box-shadow: var(--focus)
663
+ ),
664
+ '&:hover:not(.loading, [disabled], .link, .blank)' : (
574
665
  color: var(--hover-color),
575
666
  background: var(--hover-background),
576
667
  border: var(--hover-border),
577
668
  ),
578
- "&:active:not(.loading, [disabled], .btn-link)" : (
669
+ '&:active:not(.loading, [disabled], .link, .blank)' : (
579
670
  color: var(--active-color),
580
671
  background: var(--active-background),
581
672
  border: var(--active-border),
582
673
  box-shadow: var(--active-shadow),
583
674
  ),
584
- "&.btn-link" : (
675
+
676
+ '&.link' : (
677
+ display: inline-flex,
678
+ align-items: center,
585
679
  background: transparent,
680
+ padding: var(--padding),
586
681
  border: none,
587
682
  box-shadow: none,
588
683
  text-decoration: underline,
589
684
  _subclasses: (
590
- "&:hover": (
685
+ '&:hover': (
591
686
  text-decoration: none,
592
687
  )
593
688
  )
594
689
  ),
595
- "&.loading" : (
690
+
691
+ '&.blank' : (
692
+ display: inline-flex,
693
+ align-items: center,
694
+ padding: 0,
695
+ border: none,
696
+ box-shadow: none,
697
+ background: transparent,
698
+ text-decoration: none,
699
+ ),
700
+
701
+ '&.loading' : (
596
702
  cursor: wait,
597
703
  ),
598
- "&.btn[disabled]" : (
704
+
705
+ '&[disabled]' : (
599
706
  cursor: not-allowed,
600
- color: var(--disabled-color),
601
- background: var(--disabled-background),
602
- border: var(--disabled-border),
707
+
708
+ color: var(--color),
709
+ background: var(--background),
710
+ border: var(--border),
603
711
  box-shadow: none,
712
+
713
+ _colors: (
714
+ light: (
715
+ color: rgba(28, 29, 31, 0.5),
716
+ background: rgb(235, 235, 235),
717
+ border: 1px solid rgb(188, 188, 188),
718
+ ),
719
+ dark: (
720
+ color: inherit,
721
+ background: #21262d,
722
+ border: 1px solid rgba(240, 246, 252, 0.1),
723
+ )
724
+ )
604
725
  )
605
726
  )
606
727
  ),
@@ -610,30 +731,30 @@ $components-config: (
610
731
  display: flex,
611
732
  flex-wrap: wrap,
612
733
  _subclasses : (
613
- ".btn:first-child" : (
734
+ '.btn:first-child' : (
614
735
  border-start-end-radius: 0,
615
736
  border-end-end-radius: 0,
616
737
  ),
617
- ".btn:last-child" : (
738
+ '.btn:last-child' : (
618
739
  border-start-start-radius: 0,
619
740
  border-end-start-radius: 0,
620
741
  ),
621
- ".btn:not(:first-child)" : (
742
+ '.btn:not(:first-child)' : (
622
743
  margin-left: - 1px
623
744
  ),
624
- ".btn:not(:first-child, :last-child)" : (
745
+ '.btn:not(:first-child, :last-child)' : (
625
746
  border-radius: 0
626
747
  ),
627
- ".btn:only-child" : (
748
+ '.btn:only-child' : (
628
749
  ),
629
- ".btn:hover, .btn:focus" : (
750
+ '.btn:hover, .btn:focus' : (
630
751
  z-index: 1
631
752
  ),
632
- "&.separated" : (
753
+ '&.separated' : (
633
754
  gap: var(--gap),
634
755
  --border-radius: 5px,
635
756
  _subclasses : (
636
- ".btn" : (
757
+ '.btn' : (
637
758
  margin: 0,
638
759
  border-radius: var(--border-radius)
639
760
  )
@@ -643,47 +764,100 @@ $components-config: (
643
764
  ),
644
765
 
645
766
  dropdown: (
646
- position: absolute,
647
- top: 100%,
648
- left: 0,
649
- border: var(--border),
650
- border-radius: 0.25rem,
651
- padding: 4px 0,
652
- width: 200px,
653
- height: auto,
654
- background: var(--background),
767
+
768
+ position: relative,
769
+ display: inline-block,
770
+
771
+ z-index: functions.get-config($config, 'z-index.dropdown'),
655
772
 
656
773
  _colors: (
657
774
  light : (
658
- border: 1px solid #dddee0,
659
- background: rgb(200, 200, 200),
775
+ background: rgba(246, 246, 247, 1),
776
+ border: 1px solid rgb(219, 219, 219),
777
+ shadow: string.unquote('rgba(37, 41, 46, 0.04) 0px 6px 12px -3px, rgba(37, 41, 46, 0.12) 0px 6px 18px 0px'),
660
778
  ),
661
779
  dark : (
662
- border: 1px solid rgba(48, 54, 61, .75),
663
- background: rgb(22, 27, 34),
664
- shadow: rgba(1, 4, 9, 0.4) 0 1px 0 0
780
+ background: rgb(18, 18, 24),
781
+ border: 1px solid rgba(48, 54, 61, 0.75),
782
+ shadow: string.unquote('rgba(37, 41, 46, 0.04) 0px 6px 12px -3px, rgba(37, 41, 46, 0.12) 0px 6px 18px 0px'),
783
+ )
784
+ ),
785
+
786
+ _subclasses : (
787
+ '&.on-hover:hover' : (
788
+ _subclasses : (
789
+ '& > .dropdown' : (
790
+ display: block,
791
+ opacity: 1,
792
+ transform: translateY(0),
793
+
794
+ _atrule : (
795
+ '@starting-style' : (
796
+ opacity: 0,
797
+ transform: translateY(-5px)
798
+ )
799
+ ),
800
+ )
801
+ )
802
+ ),
803
+
804
+ '.dropdown' : (
805
+
806
+ display: none,
807
+ position: absolute,
808
+ top: 100%,
809
+ left: 0,
810
+ border-radius: 0.25rem,
811
+ padding: .5rem,
812
+ width: 200px,
813
+ height: auto,
814
+
815
+ border: var(--border),
816
+ background: var(--background),
817
+ box-shadow: var(--shadow),
818
+
819
+ transition: string.unquote('opacity 0.15s ease-in, transform 0.15s ease-in, display 0.15s ease-in allow-discrete'),
820
+ transform: translateY(-5px),
821
+ opacity: 0,
822
+
823
+ _subclasses : (
824
+ '&:before': (
825
+ content: ' ',
826
+ left: 0,
827
+ top: -5px,
828
+ height: 5px,
829
+ width: 100%,
830
+ display: block,
831
+ position: absolute,
832
+ ),
833
+ '&.to-right' : (
834
+ top: 0,
835
+ left: 100%,
836
+ )
837
+ )
665
838
  )
666
839
  )
667
840
  ),
668
841
 
669
842
  card : (
670
843
 
671
- --border-radius: .25rem,
672
- --padding: .5rem,
844
+ --border-radius: .5rem,
845
+ --padding: .825rem,
673
846
 
674
847
  background: var(--background),
675
848
  padding: var(--padding),
676
849
  border-radius: var(--border-radius),
677
850
  box-shadow: var(--shadow),
678
851
  border: var(--border),
852
+
679
853
  height: 100%,
680
854
  margin: 0,
681
855
 
682
856
  _colors: (
683
857
  light : (
684
- background: rgb(242, 242, 242),
685
- border : 1px solid rgb(235, 235, 235),
686
- box-shadow: 0 1px 8px -2px rgba(0, 0, 0, 0.12),
858
+ background: rgb(250, 250, 250),
859
+ border : 1px solid rgb(219, 219, 219),
860
+ shadow: string.unquote('0 4px 12px rgba(224,224,224,0.5)')
687
861
  ),
688
862
  dark : (
689
863
  border: 1px solid #3d444d,
@@ -696,121 +870,559 @@ $components-config: (
696
870
  container : (
697
871
  margin: 0 auto,
698
872
  width: 100%,
699
- _colors: (
700
- light : (),
701
- dark : ()
702
- ),
703
873
  ),
704
874
 
705
875
  form : (
706
- label : (
707
- display: block,
708
- margin-bottom: 10px,
709
- ),
710
- input : (
711
876
 
712
- --border-radius: .25rem,
713
- --padding: .5rem .75rem,
714
-
715
- display: block,
716
- _colors: (
717
- light : (
718
- ),
719
- dark : (
720
- color: #fff,
721
- background: rgb(48, 56, 66),
722
- border: 1px solid rgba(240, 246, 252, .25),
723
- )
724
- )
725
- ),
726
- select : (
727
- --border-radius: .25rem,
728
- --padding: .5rem .75rem,
729
- display: block,
730
- _colors: (
731
- light : (
732
- ),
733
- dark : (
734
- color: #fff,
735
- background: rgb(48, 56, 66),
736
- border: 1px solid rgba(240, 246, 252, .25),
737
- )
738
- )
739
- ),
740
- checkbox : (
741
- --border-radius: .25rem,
742
- --padding: .5rem .75rem,
743
- _colors: (
744
- light : (
745
- ),
746
- dark : (
747
- color: #fff,
748
- background: rgb(48, 56, 66),
749
- border: 1px solid rgba(240, 246, 252, .25),
750
- )
877
+ _colors: (
878
+ light : (
879
+ caret-color: oklch(0.442 0.143 142.163),
880
+ box-shadow-focus: 0 0 0 .25rem rgba(13, 110, 253, .25),
881
+ ),
882
+ dark : (
883
+ caret-color: oklch(0.442 0.143 142.163),
884
+ box-shadow-focus: 0 0 0 .25rem rgba(13, 110, 253, .25),
751
885
  )
752
886
  ),
753
- radio : (
754
- --border-radius: .25rem,
755
- --padding: .5rem .75rem,
756
- _colors: (
757
- light : (
758
- ),
759
- dark : (
760
- color: #fff,
761
- background: rgb(48, 56, 66),
762
- border: 1px solid rgba(240, 246, 252, .25),
887
+
888
+ _subclasses : (
889
+ '.field' : (
890
+ margin-bottom: 1rem,
891
+
892
+ _subclasses : (
893
+ '.inline' : (
894
+ display: inline-flex,
895
+ gap: .5rem,
896
+ ),
897
+ '&.is-invalid' : (
898
+ _subclasses : (
899
+ '.input, .textarea, .select' : (
900
+ border: 1px solid oklch(0.535 0.213 27.297),
901
+ margin-bottom: 10px,
902
+ background: var(--xii-form-background) url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12' width='12' height='12' fill='none' stroke='oklch(0.535 0.213 27.297)'%3e%3ccircle cx='6' cy='6' r='4.5'/%3e%3cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3e%3ccircle cx='6' cy='8.2' r='.6' fill='%23dc3545' stroke='none'/%3e%3c/svg%3e") no-repeat calc(100% - 9px) 50% / 16px 16px,
903
+ ),
904
+ '.invalid-feedback' : (
905
+ display: block,
906
+ )
907
+ )
908
+ ),
909
+ '.invalid-feedback' : (
910
+ display: none,
911
+ color: oklch(0.535 0.213 27.297),
912
+ font-size: 0.825rem,
913
+ ),
914
+
915
+ '.note' : (
916
+ color : oklch(55.1% .027 264.364),
917
+ )
763
918
  )
764
- )
765
- ),
766
- validation : (
767
- )
768
- ),
769
- table : (
770
- width: 100%,
771
- ),
919
+ ),
772
920
 
773
- overlay : (
921
+ '.label' : (
922
+ display: block,
923
+ margin-bottom: 10px,
924
+ ),
774
925
 
775
- background : var(--background),
926
+ '.input' : (
776
927
 
777
- position: absolute,
778
- top: 0,
779
- bottom: 0,
780
- left: 0,
781
- right: 0,
928
+ --border-radius: .25rem,
929
+ --padding: .5rem .75rem,
782
930
 
783
- width: 100%,
784
- height: 100%,
931
+ font-size: inherit,
932
+ font-weight: inherit,
933
+ display: block,
785
934
 
786
- display: none,
787
- align-items: center,
788
- justify-content: center,
935
+ appearance: none,
936
+ outline: none,
789
937
 
790
- _colors: (
791
- light : (
792
- ),
793
- dark : (
794
- background: rgba(20, 20, 20, .85),
795
- )
796
- ),
938
+ padding: var(--padding),
939
+ border-radius: var(--border-radius),
940
+ border: var(--border),
941
+ caret-color: var(--caret-color),
797
942
 
798
- _subclasses : (
799
- '&.show' : (
800
- display: flex
801
- )
802
- )
803
- ),
943
+ width: 100%,
804
944
 
805
- pagination : (
945
+ transition: box-shadow .15s ease-in-out,
806
946
 
807
- --grid-template-columns: auto auto 1fr,
808
- --gap : 10px,
809
- --left-column-aligment: start,
810
- --center-column-alignment: center,
811
- --right-column-alignment: end,
947
+ _colors: (
948
+ light : (
949
+ color: inherit,
950
+ background: rgb(250, 250, 250),
951
+ border: 1px solid rgb(219, 219, 219),
952
+ focus-shadow: 0 0 0 0.2rem rgba(98, 175, 97, .5),
953
+ focus-border: 1px solid oklch(0.69 0.18 142.52),
954
+ ),
955
+ dark : (
956
+ color: #fff,
957
+ background: rgb(48, 56, 66),
958
+ border: 1px solid rgba(240, 246, 252, .25),
959
+ focus-shadow: 0 0 0 0.2rem rgba(98, 175, 97, .5),
960
+ focus-border: 1px solid oklch(0.69 0.18 142.52),
961
+ )
962
+ ),
812
963
 
813
- position: relative,
964
+ _subclasses : (
965
+ '&:focus-visible, &:focus' : (
966
+ box-shadow: var(--focus-shadow),
967
+ border: var(--focus-border),
968
+ )
969
+ )
970
+ ),
971
+
972
+ '.textarea' : (
973
+
974
+ --border-radius: .25rem,
975
+ --padding: .5rem .75rem,
976
+
977
+ font-size: inherit,
978
+ font-weight: inherit,
979
+ font-family: inherit,
980
+
981
+ display: block,
982
+
983
+ appearance: none,
984
+ outline: none,
985
+
986
+ padding: var(--padding),
987
+ border-radius: var(--border-radius),
988
+ border: var(--border),
989
+ caret-color: var(--caret-color),
990
+
991
+ width: 100%,
992
+
993
+ transition: box-shadow .15s ease-in-out,
994
+
995
+ _colors: (
996
+ light : (
997
+ color: inherit,
998
+ background: rgb(250, 250, 250),
999
+ border: 1px solid rgb(219, 219, 219),
1000
+ focus-shadow: 0 0 0 0.2rem rgba(98, 175, 97, .5),
1001
+ focus-border: 1px solid oklch(0.69 0.18 142.52),
1002
+ ),
1003
+ dark : (
1004
+ color: #fff,
1005
+ background: rgb(48, 56, 66),
1006
+ border: 1px solid rgba(240, 246, 252, .25),
1007
+ focus-shadow: 0 0 0 0.2rem rgba(98, 175, 97, .5),
1008
+ focus-border: 1px solid oklch(0.69 0.18 142.52),
1009
+ )
1010
+ ),
1011
+
1012
+ _subclasses : (
1013
+ '&:focus-visible, &:focus' : (
1014
+ box-shadow: var(--focus-shadow),
1015
+ border: var(--focus-border),
1016
+ )
1017
+ )
1018
+ ),
1019
+
1020
+ '.select' : (
1021
+
1022
+ --border-radius: .25rem,
1023
+ --padding: .5rem .75rem,
1024
+
1025
+ font-size: inherit,
1026
+ font-weight: inherit,
1027
+ display: block,
1028
+
1029
+ appearance: none,
1030
+ outline: none,
1031
+
1032
+ padding: var(--padding),
1033
+ border-radius: var(--border-radius),
1034
+ border: var(--border),
1035
+
1036
+ width: 100%,
1037
+
1038
+ transition: box-shadow .15s ease-in-out,
1039
+
1040
+ _colors: (
1041
+ light : (
1042
+ color: inherit,
1043
+ background: rgb(250, 250, 250),
1044
+ border: 1px solid rgb(219, 219, 219),
1045
+ focus-shadow: 0 0 0 0.2rem rgba(98, 175, 97, .5),
1046
+ focus-border: 1px solid oklch(0.69 0.18 142.52),
1047
+ ),
1048
+ dark : (
1049
+ color: #fff,
1050
+ background: rgb(48, 56, 66),
1051
+ border: 1px solid rgba(240, 246, 252, .25),
1052
+ focus-shadow: 0 0 0 0.2rem rgba(98, 175, 97, .5),
1053
+ focus-border: 1px solid oklch(0.69 0.18 142.52),
1054
+ )
1055
+ ),
1056
+
1057
+ _subclasses : (
1058
+ '&:focus-visible, &:focus' : (
1059
+ box-shadow: var(--focus-shadow),
1060
+ border: var(--focus-border),
1061
+ )
1062
+ )
1063
+ ),
1064
+
1065
+ '.checkbox' : (
1066
+
1067
+ --border-radius: .25rem,
1068
+ --padding: .5rem .75rem,
1069
+
1070
+ //padding: var(--padding),
1071
+ border-radius: var(--border-radius),
1072
+ border: var(--border),
1073
+ background: var(--background),
1074
+ //box-shadow: var(--shadow),
1075
+
1076
+ width: 16px,
1077
+ height: 16px,
1078
+ appearance: none,
1079
+ outline : none,
1080
+
1081
+ transition: box-shadow .15s ease-in-out,
1082
+
1083
+ _colors: (
1084
+ light : (
1085
+ background: rgba(250, 250, 250, .75),
1086
+ border: 1px solid rgb(219, 219, 219),
1087
+ //shadow: string.unquote('rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0.05) 0px 1px 2px 0px ')
1088
+ focus-shadow: 0 0 0 0.2rem rgba(98, 175, 97, .5),
1089
+ focus-border: 1px solid oklch(0.69 0.18 142.52),
1090
+ ),
1091
+ dark : (
1092
+ background: rgba(48, 56, 66, .85),
1093
+ border: 1px solid rgb(74, 109, 71, .25),
1094
+ //shadow: string.unquote('rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0.05) 0px 1px 2px 0px ')
1095
+ focus-shadow: 0 0 0 0.2rem rgba(98, 175, 97, .5),
1096
+ focus-border: 1px solid oklch(0.69 0.18 142.52),
1097
+ )
1098
+ ),
1099
+
1100
+ _subclasses : (
1101
+ '&:focus-visible, &:focus' : (
1102
+ box-shadow: var(--focus-shadow),
1103
+ border: var(--focus-border),
1104
+ ),
1105
+ '&:checked' : (
1106
+ _colors: (
1107
+ light : (
1108
+ background: rgb(74, 109, 71) string.unquote(url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3e%3cpath fill='none' stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='m6 10 3 3 6-6'/%3e%3c/svg%3e")),
1109
+ border: 1px solid rgba(11, 47, 10, .25),
1110
+ ),
1111
+ dark : (
1112
+ background: rgb(74, 109, 71) string.unquote(url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3e%3cpath fill='none' stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='m6 10 3 3 6-6'/%3e%3c/svg%3e")),
1113
+ border: 1px solid rgba(240, 246, 252, .25),
1114
+ )
1115
+ ),
1116
+ ),
1117
+ '&:indeterminate' : (
1118
+ _colors: (
1119
+ light : (
1120
+ border: 1px solid rgba(11, 47, 10, .25),
1121
+ background: rgb(74, 109, 71) string.unquote(url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3e%3cpath fill='none' stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='M6 10h8'/%3e%3c/svg%3e")),
1122
+ ),
1123
+ dark : (
1124
+ background: rgb(74, 109, 71) string.unquote(url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3e%3cpath fill='none' stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='M6 10h8'/%3e%3c/svg%3e")),
1125
+ border: 1px solid rgba(240, 246, 252, .25),
1126
+ )
1127
+ ),
1128
+ )
1129
+ )
1130
+ ),
1131
+
1132
+ '.radio' : (
1133
+
1134
+ --border-radius: 50%,
1135
+ --padding: .5rem .75rem,
1136
+
1137
+ border-radius: var(--border-radius),
1138
+ border: var(--border),
1139
+ background: var(--background),
1140
+
1141
+ width: 16px,
1142
+ height: 16px,
1143
+ appearance: none,
1144
+ outline : none,
1145
+
1146
+ transition: string.unquote('box-shadow .15s ease-in-out'),
1147
+
1148
+ _colors: (
1149
+ light : (
1150
+ background: rgba(250, 250, 250, .75),
1151
+ border: 1px solid rgb(219, 219, 219),
1152
+ //shadow: string.unquote('rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0.05) 0px 1px 2px 0px ')
1153
+ focus-shadow: 0 0 0 0.2rem rgba(98, 175, 97, .5),
1154
+ focus-border: 1px solid oklch(0.69 0.18 142.52),
1155
+ ),
1156
+ dark : (
1157
+ background: rgba(48, 56, 66, .85),
1158
+ border: 1px solid rgb(74, 109, 71, .25),
1159
+ //shadow: string.unquote('rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0.05) 0px 1px 2px 0px ')
1160
+ focus-shadow: 0 0 0 0.2rem rgba(98, 175, 97, .5),
1161
+ focus-border: 1px solid oklch(0.69 0.18 142.52),
1162
+ )
1163
+ ),
1164
+
1165
+ _subclasses : (
1166
+ '&:focus-visible, &:focus' : (
1167
+ box-shadow: var(--focus-shadow),
1168
+ border: var(--focus-border),
1169
+ ),
1170
+ '&:checked' : (
1171
+ _colors: (
1172
+ light : (
1173
+ background: rgb(74, 109, 71) string.unquote(url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='2' fill='%23fff'/%3e%3c/svg%3e")),
1174
+ border: 1px solid rgba(11, 47, 10, .25),
1175
+ ),
1176
+ dark : (
1177
+ background: rgb(74, 109, 71) string.unquote(url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='2' fill='%23fff'/%3e%3c/svg%3e")),
1178
+ border: 1px solid rgba(240, 246, 252, .25),
1179
+ )
1180
+ ),
1181
+ ),
1182
+ )
1183
+ ),
1184
+
1185
+ '.switcher' : (
1186
+
1187
+ _subclasses : (
1188
+ // .qhs:is(:where(.qhq):has(:checked) *)
1189
+ '&:has(:checked) .toggle' : (
1190
+ background: rgb(74, 109, 71),
1191
+ border: 1px solid rgba(11, 47, 10, 0.25),
1192
+ ),
1193
+ '.toggle' : (
1194
+ background: var(--background),
1195
+ border: var(--border),
1196
+ border-radius: 1rem,
1197
+ display: inline-flex,
1198
+ position: relative,
1199
+ width: 2.75rem,
1200
+ height: 1.5rem,
1201
+
1202
+ _colors: (
1203
+ light : (
1204
+ background: oklch(0.985 0 89.876),
1205
+ border: 1px solid rgb(219, 219, 219),
1206
+ focus-shadow: 0 0 0 0.2rem rgba(98, 175, 97, .5),
1207
+ ),
1208
+ dark : (
1209
+ background: rgba(48, 56, 66, 0.85),
1210
+ border: 1px solid rgba(74, 109, 71, 0.25),
1211
+ focus-shadow: 0 0 0 0.2rem rgba(98, 175, 97, .5),
1212
+ )
1213
+ ),
1214
+
1215
+ _subclasses : (
1216
+ '.span' : (
1217
+
1218
+ width: 1.25rem,
1219
+ //height: calc(100% - 2px),
1220
+ display: flex,
1221
+ align-items: center,
1222
+ justify-content: center,
1223
+ position: absolute,
1224
+ inset: 1px,
1225
+
1226
+ border-radius: 50%,
1227
+
1228
+ transition: transform .2s cubic-bezier(.4,0,.2,1),
1229
+ pointer-events: none,
1230
+
1231
+ border: var(--switcher-border),
1232
+ background: var(--switcher-background),
1233
+ //box-shadow: string.unquote('rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(9, 9, 11, 0.25) 0px 1px 2px 0px'),
1234
+
1235
+ _colors: (
1236
+ light : (
1237
+ switcher-background: white,
1238
+ switcher-border: 1px solid rgb(219, 219, 219),
1239
+ ),
1240
+ dark : (
1241
+ switcher-background: white,
1242
+ switcher-border: 1px solid rgba(41, 50, 57, 1),
1243
+ )
1244
+ ),
1245
+
1246
+ _subclasses : (
1247
+ '.icon' : (
1248
+ width: .75rem,
1249
+ height: .75rem,
1250
+ opacity: 0,
1251
+ display: none,
1252
+ color: oklch(70.7% .022 261.325),
1253
+ ),
1254
+ '.icon:first-child' : (
1255
+ opacity: 1,
1256
+ display: inherit,
1257
+ )
1258
+ )
1259
+ ),
1260
+ '.span:is(:where(.switcher):has(:checked) *)' : (
1261
+ background: white,
1262
+ opacity: 1,
1263
+ transform: translateX(100%),
1264
+ border: 1px solid #3b5e38,
1265
+
1266
+ _subclasses : (
1267
+ '.icon' : (
1268
+ opacity: 0,
1269
+ display: none
1270
+
1271
+ ),
1272
+ '.icon:last-child' : (
1273
+ opacity: 1,
1274
+ display: inherit,
1275
+ color: rgb(74, 109, 71),
1276
+ )
1277
+ )
1278
+ )
1279
+ )
1280
+ ),
1281
+ '.switch' : (
1282
+ appearance: none,
1283
+ position: absolute,
1284
+ inset: 0,
1285
+ )
1286
+ )
1287
+ )
1288
+ ),
1289
+ ),
1290
+
1291
+ loader : (
1292
+ animation: loader-rotation 2s linear infinite,
1293
+
1294
+ _subclasses : (
1295
+ '& .circle' : (
1296
+ transform-origin: 50% 50%,
1297
+ stroke-width : 6,
1298
+ stroke-dasharray: 283,
1299
+ stroke-dashoffset: 280,
1300
+ stroke-linecap: round,
1301
+ stroke: var(--stroke),
1302
+ animation: loader-rotation-cicle 1.4s linear infinite,
1303
+ )
1304
+ ),
1305
+
1306
+ _colors : (
1307
+ light : (
1308
+ stroke : rgba(0,0, 0, 0.85),
1309
+ ),
1310
+ dark : (
1311
+ stroke : rgba(255,255, 255, 0.85),
1312
+ )
1313
+ ),
1314
+
1315
+ _animations : (
1316
+ 'loader-rotation' : (
1317
+ '0%' : (
1318
+ transform: rotate(0deg),
1319
+ ),
1320
+ '100%' : (
1321
+ transform: rotate(360deg),
1322
+ )
1323
+ ),
1324
+ 'loader-rotation-cicle' : (
1325
+ '0%' : (
1326
+ stroke-dashoffset: 280,
1327
+ transform: rotate(0),
1328
+ ),
1329
+ '15%' : (
1330
+ stroke-width : 6,
1331
+ ),
1332
+ '40%' : (
1333
+ stroke-dasharray: 220,
1334
+ stroke-dashoffset: 150,
1335
+ ),
1336
+ '100%' : (
1337
+ stroke-dashoffset: 280,
1338
+ transform: rotate(720deg),
1339
+ )
1340
+ )
1341
+ ),
1342
+ ),
1343
+
1344
+ table : (
1345
+ width: 100%,
1346
+ _subclasses : (
1347
+ '.top > * > *' : (
1348
+ padding: 0.5rem 0,
1349
+ border-bottom: 1px solid rgb(73, 80, 87),
1350
+ ),
1351
+ '.middle > * > *' : (
1352
+ padding: 0.5rem 0,
1353
+ border-bottom: 1px solid rgb(73, 80, 87),
1354
+ ),
1355
+ '.bottom > * > *' : (
1356
+ padding: 0.5rem 0,
1357
+ ),
1358
+ '&.stripe' : (
1359
+ _subclasses : (
1360
+ 'tbody tr:nth-child(odd) td' : (
1361
+ background: rgba(33, 37, 41, 0.95),
1362
+ )
1363
+ )
1364
+ ),
1365
+ '&.hover' : (
1366
+ _subclasses : (
1367
+ 'tbody tr:hover td' : (
1368
+ background: rgba(33, 37, 41, 0.95),
1369
+ )
1370
+ )
1371
+ )
1372
+ )
1373
+ ),
1374
+
1375
+ overlay : (
1376
+
1377
+ --align-items : center,
1378
+ --justify-content : center,
1379
+
1380
+ background : var(--background),
1381
+
1382
+ position: absolute,
1383
+ top: 0,
1384
+ bottom: 0,
1385
+ left: 0,
1386
+ right: 0,
1387
+
1388
+ width: 100%,
1389
+ height: 100%,
1390
+
1391
+ display: none,
1392
+
1393
+ align-items: var(--align-items),
1394
+ justify-content: var(--justify-content),
1395
+
1396
+ z-index: functions.get-config($config, 'z-index.overlay'),
1397
+
1398
+ _colors: (
1399
+ light : (
1400
+ ),
1401
+ dark : (
1402
+ background: rgba(20, 20, 20, .85),
1403
+ )
1404
+ ),
1405
+
1406
+ _subclasses : (
1407
+ '&.show' : (
1408
+ display: flex
1409
+ ),
1410
+ '&.blurred' : (
1411
+ -webkit-backdrop-filter: blur(5px),
1412
+ backdrop-filter: blur(5px),
1413
+ )
1414
+ )
1415
+ ),
1416
+
1417
+ pagination : (
1418
+
1419
+ --grid-template-columns: auto auto 1fr,
1420
+ --gap : 10px,
1421
+ --left-column-aligment: start,
1422
+ --center-column-alignment: center,
1423
+ --right-column-alignment: end,
1424
+
1425
+ position: relative,
814
1426
  display: grid,
815
1427
  width: 100%,
816
1428
  max-width: 100%,
@@ -819,13 +1431,13 @@ $components-config: (
819
1431
  grid-gap: var(--gap),
820
1432
 
821
1433
  _subclasses : (
822
- ".left" : (
1434
+ '.left' : (
823
1435
  justify-self: var(--left-column-alignment),
824
1436
  ),
825
- ".center" : (
1437
+ '.center' : (
826
1438
  justify-self: var(--center-column-alignment),
827
1439
  ),
828
- ".right" : (
1440
+ '.right' : (
829
1441
  justify-self: var(--right-column-alignment)
830
1442
  )
831
1443
  ),
@@ -840,33 +1452,33 @@ $components-config: (
840
1452
  cursor: wait,
841
1453
  display: flex,
842
1454
  flex-direction: column,
843
- gap: var(--gap),
844
1455
 
845
- _colors: (
846
- light : (
847
- background: #ccc
848
- ),
849
- dark : (
850
- background: #ccc
851
- )
852
- ),
1456
+ gap: var(--gap),
853
1457
 
854
1458
  _subclasses : (
855
- ".el" : (
1459
+ '.el' : (
856
1460
  min-height: var(--min-height),
857
1461
  border-radius: var(--border-radius),
858
- background: var(--background)
1462
+ background: var(--background),
1463
+ _colors: (
1464
+ light : (
1465
+ background: rgba(190, 190, 190, 0.75),
1466
+ ),
1467
+ dark : (
1468
+ background: #ccc
1469
+ )
1470
+ ),
859
1471
  ),
860
- "&.glow" : (
1472
+ '&.glow' : (
861
1473
  _subclasses : (
862
- ".el" : (
1474
+ '.el' : (
863
1475
  animation: placeholder-glow 2s ease-in-out infinite,
864
1476
  )
865
1477
  )
866
1478
  ),
867
- "&.wave" : (
1479
+ '&.wave' : (
868
1480
  _subclasses : (
869
- ".el" : (
1481
+ '.el' : (
870
1482
  mask-size: 200% 100%,
871
1483
  -webkit-mask-size: 200% 100%,
872
1484
  mask-image: linear-gradient(90deg, #0000, #fff, #0000),
@@ -875,6 +1487,79 @@ $components-config: (
875
1487
  )
876
1488
  )
877
1489
  )
1490
+ ),
1491
+
1492
+ _animations : (
1493
+ 'placeholder-glow' : (
1494
+ '50%' : (
1495
+ opacity: 0.5,
1496
+ )
1497
+ ),
1498
+ 'placeholder-wave' : (
1499
+ '100%' : (
1500
+ mask-position: -200% 0,
1501
+ -webkit-mask-position: -200% 0,
1502
+ )
1503
+ )
1504
+ )
1505
+ ),
1506
+
1507
+ megamenu : (
1508
+ position: relative,
1509
+ _subclasses : (
1510
+ '& .mega-link:hover' : (
1511
+ _subclasses : (
1512
+ '& .megamenu' : (
1513
+ display: block,
1514
+
1515
+ opacity: 1,
1516
+ transform: translateY(0),
1517
+
1518
+ _atrule : (
1519
+ '@starting-style' : (
1520
+ opacity: 0,
1521
+ transform: translateY(-5px)
1522
+ )
1523
+ ),
1524
+ )
1525
+ )
1526
+ ),
1527
+ '& .megamenu' : (
1528
+ --padding: 0.75rem,
1529
+
1530
+ display: none,
1531
+
1532
+ position: absolute,
1533
+ left: 0,
1534
+ right: 0,
1535
+ width: 100%,
1536
+
1537
+ margin-top: 5px,
1538
+ border-radius: 0.25rem,
1539
+
1540
+ transition: string.unquote('opacity 0.15s ease-in, transform 0.15s ease-in, display 0.15s ease-in allow-discrete'),
1541
+ transform: translateY(-5px),
1542
+ opacity: 0,
1543
+
1544
+ background: var(--background),
1545
+ border: var(--border),
1546
+ box-shadow: var(--shadow),
1547
+ padding: var(--padding),
1548
+
1549
+ _colors: (
1550
+ light : (
1551
+ background: rgba(246, 246, 247, 1),
1552
+ border: 1px solid rgb(219, 219, 219),
1553
+ shadow: string.unquote('rgba(37, 41, 46, 0.04) 0px 6px 12px -3px, rgba(37, 41, 46, 0.12) 0px 6px 18px 0px'),
1554
+ ),
1555
+ dark : (
1556
+ background: rgb(18, 18, 24),
1557
+ border: 1px solid rgba(48, 54, 61, 0.75),
1558
+ shadow: string.unquote('rgba(37, 41, 46, 0.04) 0px 6px 12px -3px, rgba(37, 41, 46, 0.12) 0px 6px 18px 0px'),
1559
+ )
1560
+ )
1561
+
1562
+ ),
878
1563
  )
879
1564
  ),
880
1565
 
@@ -882,8 +1567,8 @@ $components-config: (
882
1567
 
883
1568
  display: none,
884
1569
  height: auto,
885
-
886
- align-items: center,
1570
+ flex-direction: column,
1571
+ padding: 0,
887
1572
 
888
1573
  //background: var(--background),
889
1574
  //box-shadow: var(--box-shadow),
@@ -894,26 +1579,31 @@ $components-config: (
894
1579
  //transform-origin: right,
895
1580
  //transform: translateX(100%),
896
1581
 
897
- padding: 0.5rem,
898
- background: rgb(13, 17, 23),
1582
+ background: var(--background),
1583
+ border: var(--border),
1584
+
899
1585
  max-width: 42rem,
900
1586
  width: 100%,
901
1587
  margin: 0 auto,
902
- border: 1px solid #3d444d,
903
1588
  border-radius: 7px,
904
- transition-behavior: allow-discrete,
905
- transition: opacity 0.2s linear,
906
- opacity: 0,
1589
+ transition: string.unquote('opacity 0.15s ease-in, display 0.15s ease-in allow-discrete, transform 0.15s ease-in'),
1590
+ transform: scale(.75),
907
1591
 
908
1592
  box-shadow: string.unquote('rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0.1) 0px 20px 25px -5px, rgba(0, 0, 0, 0.1) 0px 8px 10px -6px;'),
1593
+ opacity: 0,
1594
+ //transition: string.unquote('opacity 1s, display 1s allow-discrete'),
1595
+
1596
+ z-index: functions.get-config($config, 'z-index.modal'),
909
1597
 
910
1598
  _colors: (
911
1599
  light : (
912
- //background : #ccc,
1600
+ border: 1px solid rgba(198, 198, 198, .75),
1601
+ background : rgba(246, 246, 247, 1),
913
1602
  box-shadow: string.unquote('0rem 1.25rem 1.25rem -0.5rem rgba(26,26,26,.28)'),
914
1603
  ),
915
1604
  dark: (
916
- //background: rgb(13, 17, 23),
1605
+ border: 1px solid rgba(48, 54, 61, 0.75),
1606
+ background: rgb(13, 17, 23),
917
1607
  box-shadow: string.unquote('rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0.1) 0px 20px 25px -5px, rgba(0, 0, 0, 0.1) 0px 8px 10px -6px;'),
918
1608
  )
919
1609
  ),
@@ -922,24 +1612,33 @@ $components-config: (
922
1612
  '&[open]' : (
923
1613
  display: flex,
924
1614
  opacity: 1,
1615
+ transform: scale(1),
1616
+ transition: string.unquote('opacity 0.3s ease-out, display 0.3s ease-out allow-discrete, transform 0.3s ease-out'),
925
1617
  _atrule : (
926
1618
  '@starting-style' : (
927
- opacity: 1,
1619
+ opacity: 0,
1620
+ transform: scale(.75)
928
1621
  )
929
- )
1622
+ ),
930
1623
  ),
931
- '.top' : (
1624
+ '& > :nth-child(1)' : (
932
1625
  display: flex,
933
1626
  justify-content: space-between,
934
1627
  ),
935
- '.middle' : (
1628
+ '& > :nth-child(2)' : (
936
1629
  height: 100%,
937
1630
  padding: 1rem 0,
938
1631
  ),
939
- '.bottom' : (
1632
+ '& > :nth-child(3)' : (
940
1633
  display: flex,
941
1634
  justify-content: flex-end,
942
1635
  )
1636
+ ),
1637
+
1638
+ _animations : (
1639
+ 'modal_animation_toggle' : (
1640
+
1641
+ )
943
1642
  )
944
1643
  ),
945
1644
 
@@ -957,13 +1656,6 @@ $components-config: (
957
1656
  padding: 0,
958
1657
  list-style-type: none,
959
1658
 
960
- _colors: (
961
- light : (
962
- ),
963
- dark: (
964
- )
965
- ),
966
-
967
1659
  _subclasses : (
968
1660
  '&.horizontal' : (
969
1661
  --align-items: center,
@@ -984,15 +1676,6 @@ $components-config: (
984
1676
  _subclasses : (
985
1677
  '.link' : (
986
1678
  display: inline-flex,
987
- color: var(--color),
988
- _colors: (
989
- light : (
990
- color: rgba(255, 255, 255, 1),
991
- ),
992
- dark : (
993
- color: rgba(255, 255, 255, 1),
994
- )
995
- ),
996
1679
  _subclasses: (
997
1680
  '&:hover' : (
998
1681
  text-decoration : none
@@ -1008,11 +1691,7 @@ $components-config: (
1008
1691
 
1009
1692
  --grid-template-columns: auto auto 1fr,
1010
1693
  --gap : 10px,
1011
- --left-column-aligment: start,
1012
- --center-column-alignnent: center,
1013
- --right-column-alignment: end,
1014
1694
 
1015
- position: relative,
1016
1695
  display: grid,
1017
1696
  width: 100%,
1018
1697
  max-width: 100%,
@@ -1022,34 +1701,13 @@ $components-config: (
1022
1701
 
1023
1702
  grid-template-columns: var(--grid-template-columns),
1024
1703
  grid-gap: var(--gap),
1025
-
1026
- z-index: 5,
1027
-
1028
- _colors: (
1029
- light : (
1030
- ),
1031
- dark: (
1032
- )
1033
- ),
1034
-
1035
- _subclasses : (
1036
- ".left" : (
1037
- justify-self: var(--left-column-alignment),
1038
- ),
1039
- ".center" : (
1040
- justify-self: var(--center-column-alignment),
1041
- ),
1042
- ".right" : (
1043
- justify-self: var(--right-column-alignment)
1044
- )
1045
- )
1046
1704
  ),
1047
1705
 
1048
1706
  sidecap : (
1049
1707
 
1050
1708
  --width : 20.75rem,
1051
1709
 
1052
- display: flex,
1710
+ display: none,
1053
1711
  flex-direction: column,
1054
1712
 
1055
1713
  position: fixed,
@@ -1060,20 +1718,20 @@ $components-config: (
1060
1718
  width: var(--width),
1061
1719
  background: var(--background),
1062
1720
  box-shadow: var(--box-shadow),
1063
- //border-left: 1px solid rgb(4, 90, 195),
1064
-
1065
- will-change: transform,
1066
- transition: transform 300ms cubic-bezier(0.25,0.1,0.25,1),
1067
- transform-origin: right,
1721
+ border-left: var(--border),
1068
1722
  transform: translateX(100%),
1723
+ transition: string.unquote('opacity 0.3s ease-in, transform 0.3s ease-in, display 0.3s ease-in allow-discrete'),
1724
+ opacity : 0,
1069
1725
 
1070
1726
  _colors: (
1071
1727
  light : (
1072
- background : #ccc,
1728
+ background: rgba(246, 246, 247, 1),
1729
+ border: 1px solid rgb(219, 219, 219),
1073
1730
  box-shadow: string.unquote('0rem 1.25rem 1.25rem -0.5rem rgba(26,26,26,.28)'),
1074
1731
  ),
1075
1732
  dark: (
1076
- background: rgb(13, 17, 23),
1733
+ background: rgb(18, 18, 24),
1734
+ border: 1px solid rgba(48, 54, 61, 0.75),
1077
1735
  box-shadow: string.unquote('rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0.1) 0px 20px 25px -5px, rgba(0, 0, 0, 0.1) 0px 8px 10px -6px;'),
1078
1736
  )
1079
1737
  ),
@@ -1081,20 +1739,227 @@ $components-config: (
1081
1739
  _subclasses : (
1082
1740
  '&.open' : (
1083
1741
  transform: translateX(0),
1742
+ display: flex,
1743
+ opacity: 1,
1744
+ transition: string.unquote('opacity 0.3s ease-out, transform 0.3s ease-out, display 0.3s ease-out allow-discrete'),
1745
+ _atrule : (
1746
+ '@starting-style' : (
1747
+ opacity: 0,
1748
+ transform: translateX(100%),
1749
+ )
1750
+ ),
1084
1751
  ),
1085
- '.top' : (
1752
+ '& > :nth-child(1)' : (
1086
1753
  display: flex,
1087
1754
  padding: 0.25rem,
1088
1755
  justify-content: space-between,
1089
1756
  ),
1090
- '.middle' : (
1757
+ '& > :nth-child(2)' : (
1091
1758
  height: 100%,
1092
1759
  padding: 0.25rem,
1093
1760
  ),
1094
- '.bottom' : (
1761
+ '& > :nth-child(3)' : (
1095
1762
  display: flex,
1096
1763
  padding: 0.25rem,
1097
1764
  )
1765
+ )
1766
+ ),
1767
+
1768
+ tooltip : (
1769
+
1770
+ position: relative,
1771
+
1772
+ _subclasses : (
1773
+
1774
+ '&.on-hover:hover .tooltip, .tooltip.show' : (
1775
+ display: block,
1776
+ opacity: 1,
1777
+ transform: translateY(5px),
1778
+
1779
+ transition: string.unquote('transform 0.15s ease-out, opacity 0.15s ease-out, display 0.15s ease-out allow-discrete'),
1780
+
1781
+ _atrule : (
1782
+ '@starting-style' : (
1783
+ opacity: 0,
1784
+ transform: translateY(-3px)
1785
+ )
1786
+ ),
1787
+
1788
+ _subclasses : (
1789
+ '&.to-left' : (
1790
+ transform: translateX(-3px),
1791
+ _atrule : (
1792
+ '@starting-style' : (
1793
+ opacity: 0,
1794
+ transform: translateX(-2px)
1795
+ )
1796
+ ),
1797
+ ),
1798
+ '&.to-right' : (
1799
+ transform: translateX(3px),
1800
+ _atrule : (
1801
+ '@starting-style' : (
1802
+ opacity: 0,
1803
+ transform: translateX(-2px)
1804
+ )
1805
+ ),
1806
+ )
1807
+ )
1808
+ ),
1809
+
1810
+ '& .tooltip' : (
1811
+
1812
+ --padding: 0.25rem 0.5rem,
1813
+
1814
+ border: var(--border),
1815
+ background: var(--background),
1816
+ padding: var(--padding),
1817
+
1818
+ opacity: 0,
1819
+ display: none,
1820
+
1821
+ position: absolute,
1822
+ bottom: calc(100% + 10px),
1823
+ left: calc(50% - 1px),
1824
+ width: auto,
1825
+
1826
+ font-size: 0.875rem,
1827
+ border-radius: 5px,
1828
+
1829
+ z-index: functions.get-config($config, 'z-index.tooltip'),
1830
+
1831
+ color: inherit,
1832
+
1833
+ _colors : (
1834
+ light : (
1835
+ background: #fff,
1836
+ border: 1px solid #e5e6ea,
1837
+ ),
1838
+ dark : (
1839
+ background: #18191b,
1840
+ border: 1px solid #35383c,
1841
+ )
1842
+ ),
1843
+
1844
+ transition: string.unquote('transform 0.15s ease-in, opacity 0.15s ease-in, display 0.15s ease-in allow-discrete'),
1845
+ translate: -50% 0,
1846
+
1847
+ _atrule : (
1848
+ '@starting-style' : (
1849
+ opacity: 0,
1850
+ transform: translateY(-3px)
1851
+ )
1852
+ ),
1853
+
1854
+ _subclasses : (
1855
+
1856
+ '& > :first-child' : (
1857
+ position: relative,
1858
+ z-index: functions.get-config($config, 'z-index.tooltip'),
1859
+ ),
1860
+
1861
+ '&.to-bottom' : (
1862
+ bottom: unset,
1863
+ top: calc(100% + 5px),
1864
+
1865
+ _subclasses : (
1866
+ '&.with-arrow' : (
1867
+ _subclasses : (
1868
+ '&:before' : (
1869
+ left: calc(50% - 1px),
1870
+ top: -0.5px,
1871
+ ),
1872
+ '&:after' : (
1873
+ left: calc(50% - 1px),
1874
+ top: -2px,
1875
+ )
1876
+ )
1877
+ )
1878
+ )
1879
+ ),
1880
+
1881
+ '&.to-right' : (
1882
+ bottom: auto,
1883
+ right: -5px,
1884
+ left: unset,
1885
+ top: 50%,
1886
+ translate: 100% -50%,
1887
+
1888
+ _subclasses : (
1889
+ '&.with-arrow' : (
1890
+ _subclasses : (
1891
+ '&:before' : (
1892
+ left: -0.5px,
1893
+ top: 50%,
1894
+ ),
1895
+ '&:after' : (
1896
+ left: -2px,
1897
+ top: 50%,
1898
+ )
1899
+ )
1900
+ )
1901
+ )
1902
+ ),
1903
+
1904
+ '&.to-left' : (
1905
+ bottom: auto,
1906
+ top: 50%,
1907
+ left: -5px,
1908
+ right: unset,
1909
+ translate: -100% -50%,
1910
+
1911
+ _subclasses : (
1912
+ '&.with-arrow' : (
1913
+ _subclasses : (
1914
+ '&:before' : (
1915
+ left: calc(100% - 2px),
1916
+ top: 50%,
1917
+ ),
1918
+ '&:after' : (
1919
+ left: calc(100% - 0.5px),
1920
+ top: 50%,
1921
+ )
1922
+ )
1923
+ )
1924
+ )
1925
+ ),
1926
+
1927
+ '&.with-arrow' : (
1928
+
1929
+ _subclasses : (
1930
+
1931
+ '&:before' : (
1932
+ content: '',
1933
+ position: absolute,
1934
+ display: block,
1935
+ width: 8px,
1936
+ height: 8px,
1937
+ transform-origin: 50% 50%,
1938
+ transform: rotate(45deg) translateX(-50%),
1939
+ background-color: var(--background),
1940
+ left: calc(50% - 1px),
1941
+ top: calc(100% - 2px),
1942
+ ),
1943
+
1944
+ '&:after' : (
1945
+ content: '',
1946
+ display: block,
1947
+ position: absolute,
1948
+ width: 8px,
1949
+ height: 8px,
1950
+ transform-origin: 50% 50%,
1951
+ transform: rotate(45deg) translateX(-50%),
1952
+ border: var(--border),
1953
+ left: calc(50% - 1px),
1954
+ top: calc(100% - 0.5px),
1955
+ z-index: -1,
1956
+ ),
1957
+ )
1958
+ ),
1959
+ )
1960
+ ),
1961
+
1962
+
1098
1963
  )
1099
1964
  )
1100
1965
  )