daisyui 2.52.0 → 3.0.1

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.
package/dist/unstyled.css CHANGED
@@ -1,30 +1,20 @@
1
1
  .alert {
2
- display: flex;
2
+ display: grid;
3
3
  width: 100%;
4
- flex-direction: column;
4
+ grid-auto-flow: row;
5
+ align-content: flex-start;
5
6
  align-items: center;
6
- justify-content: space-between;
7
- gap: 1rem
7
+ justify-items: center;
8
+ gap: 1rem;
9
+ text-align: center
8
10
  }
9
- .alert > :not([hidden]) ~ :not([hidden]) {
10
- --tw-space-y-reverse: 0;
11
- margin-top: calc(0.5rem * calc(1 - var(--tw-space-y-reverse)));
12
- margin-bottom: calc(0.5rem * var(--tw-space-y-reverse))
13
- }
14
- @media (min-width: 768px) {
11
+ @media (min-width: 640px) {
15
12
  .alert {
16
- flex-direction: row
17
- }
18
- .alert > :not([hidden]) ~ :not([hidden]) {
19
- --tw-space-y-reverse: 0;
20
- margin-top: calc(0px * calc(1 - var(--tw-space-y-reverse)));
21
- margin-bottom: calc(0px * var(--tw-space-y-reverse))
13
+ grid-auto-flow: column;
14
+ grid-template-columns: auto minmax(auto,1fr);
15
+ justify-items: start;
16
+ text-align: left
22
17
  }
23
- }
24
- .alert > :where(*) {
25
- display: flex;
26
- align-items: center;
27
- gap: 0.5rem
28
18
  }
29
19
  .artboard {
30
20
  width: 100%
@@ -74,7 +64,7 @@
74
64
  justify-content: space-around;
75
65
  padding-bottom: env(safe-area-inset-bottom)
76
66
  }
77
- .btm-nav>* {
67
+ .btm-nav > * {
78
68
  position: relative;
79
69
  display: flex;
80
70
  height: 100%;
@@ -89,7 +79,8 @@
89
79
  max-width: 100%;
90
80
  overflow-x: auto
91
81
  }
92
- .breadcrumbs > ul,.breadcrumbs > ol {
82
+ .breadcrumbs > ul,
83
+ .breadcrumbs > ol {
93
84
  display: flex;
94
85
  align-items: center;
95
86
  white-space: nowrap;
@@ -104,8 +95,10 @@
104
95
  cursor: pointer;
105
96
  align-items: center
106
97
  }
107
- .breadcrumbs > ul > li > a:hover, .breadcrumbs > ol > li > a:hover {
108
- text-decoration-line: underline
98
+ @media (hover: hover) {
99
+ .breadcrumbs>ul>li>a:hover, .breadcrumbs>ol>li>a:hover {
100
+ text-decoration-line: underline
101
+ }
109
102
  }
110
103
  .btn {
111
104
  display: inline-flex;
@@ -131,20 +124,17 @@
131
124
  }
132
125
 
133
126
  /* disabled */
134
-
135
127
  .btn-disabled,
136
- .btn[disabled] {
128
+ .btn[disabled],
129
+ .btn:disabled {
137
130
  pointer-events: none;
138
131
  }
139
-
140
132
  /* shapes */
141
-
142
133
  .btn-square {
143
134
  height: 3rem;
144
135
  width: 3rem;
145
136
  padding: 0px;
146
137
  }
147
-
148
138
  .btn-circle {
149
139
  height: 3rem;
150
140
  width: 3rem;
@@ -152,49 +142,33 @@
152
142
  padding: 0px;
153
143
  }
154
144
 
155
- /* loading */
156
-
157
- .btn.loading,
158
- .btn.loading:hover {
159
- pointer-events: none;
160
- }
161
-
162
- .btn.loading:before {
163
- margin-right: 0.5rem;
164
- height: 1rem;
165
- width: 1rem;
166
- border-radius: 9999px;
167
- border-width: 2px;
168
- animation: spin 2s linear infinite;
169
- content: "";
170
- border-top-color: transparent;
171
- border-left-color: transparent;
172
- border-bottom-color: currentColor;
173
- border-right-color: currentColor;
174
- }
175
- @media (prefers-reduced-motion: reduce) {
176
- .btn.loading:before {
177
- animation: spin 10s linear infinite;
178
- }
179
- }
180
- @keyframes spin {
181
- from {
182
- transform: rotate(0deg);
183
- }
184
- to {
185
- transform: rotate(360deg);
186
- }
187
- }
188
145
  /* group */
146
+
189
147
  .btn-group {
190
148
  display: inline-flex;
191
149
  }
150
+
192
151
  .btn-group > input[type="radio"].btn {
193
152
  appearance: none;
194
153
  }
154
+
195
155
  .btn-group > input[type="radio"].btn:before {
196
156
  content: attr(data-title);
197
- }.card {
157
+ }
158
+
159
+ /* radio input and checkbox as button */
160
+
161
+ .btn:is(input[type="checkbox"]),
162
+ .btn:is(input[type="radio"]) {
163
+ appearance: none;
164
+ }
165
+
166
+ .btn:is(input[type="checkbox"]):after,
167
+ .btn:is(input[type="radio"]):after {
168
+ --tw-content: attr(aria-label);
169
+ content: var(--tw-content);
170
+ }
171
+ .card {
198
172
  position: relative;
199
173
  display: flex;
200
174
  flex-direction: column
@@ -242,7 +216,7 @@
242
216
  position: relative
243
217
  }
244
218
  .carousel {
245
- display: flex;
219
+ display: inline-flex;
246
220
  overflow-x: scroll;
247
221
  scroll-snap-type: x mandatory;
248
222
  scroll-behavior: smooth;
@@ -302,12 +276,9 @@
302
276
  width: 0.75rem;
303
277
  background-color: inherit;
304
278
  content: "";
305
- -webkit-mask-size: contain;
306
- mask-size: contain;
307
- -webkit-mask-repeat: no-repeat;
308
- mask-repeat: no-repeat;
309
- -webkit-mask-position: center;
310
- mask-position: center;
279
+ mask-size: contain;
280
+ mask-repeat: no-repeat;
281
+ mask-position: center;
311
282
  }
312
283
  .chat-start {
313
284
  place-items: start;
@@ -326,12 +297,10 @@
326
297
  grid-column-start: 2;
327
298
  }
328
299
  .chat-start .chat-bubble:before {
329
- -webkit-mask-image: url("data:image/svg+xml,%3csvg width='3' height='3' xmlns='http://www.w3.org/2000/svg'%3e%3cpath fill='black' d='m 0 3 L 3 3 L 3 0 C 3 1 1 3 0 3'/%3e%3c/svg%3e");
330
- mask-image: url("data:image/svg+xml,%3csvg width='3' height='3' xmlns='http://www.w3.org/2000/svg'%3e%3cpath fill='black' d='m 0 3 L 3 3 L 3 0 C 3 1 1 3 0 3'/%3e%3c/svg%3e");
300
+ mask-image: url("data:image/svg+xml,%3csvg width='3' height='3' xmlns='http://www.w3.org/2000/svg'%3e%3cpath fill='black' d='m 0 3 L 3 3 L 3 0 C 3 1 1 3 0 3'/%3e%3c/svg%3e");
331
301
  }
332
302
  [dir="rtl"] .chat-start .chat-bubble:before {
333
- -webkit-mask-image: url("data:image/svg+xml,%3csvg width='3' height='3' xmlns='http://www.w3.org/2000/svg'%3e%3cpath fill='black' d='m 0 3 L 1 3 L 3 3 C 2 3 0 1 0 0'/%3e%3c/svg%3e");
334
- mask-image: url("data:image/svg+xml,%3csvg width='3' height='3' xmlns='http://www.w3.org/2000/svg'%3e%3cpath fill='black' d='m 0 3 L 1 3 L 3 3 C 2 3 0 1 0 0'/%3e%3c/svg%3e");
303
+ mask-image: url("data:image/svg+xml,%3csvg width='3' height='3' xmlns='http://www.w3.org/2000/svg'%3e%3cpath fill='black' d='m 0 3 L 1 3 L 3 3 C 2 3 0 1 0 0'/%3e%3c/svg%3e");
335
304
  }
336
305
  .chat-end {
337
306
  place-items: end;
@@ -350,46 +319,57 @@
350
319
  grid-column-start: 1;
351
320
  }
352
321
  .chat-end .chat-bubble:before {
353
- -webkit-mask-image: url("data:image/svg+xml,%3csvg width='3' height='3' xmlns='http://www.w3.org/2000/svg'%3e%3cpath fill='black' d='m 0 3 L 1 3 L 3 3 C 2 3 0 1 0 0'/%3e%3c/svg%3e");
354
- mask-image: url("data:image/svg+xml,%3csvg width='3' height='3' xmlns='http://www.w3.org/2000/svg'%3e%3cpath fill='black' d='m 0 3 L 1 3 L 3 3 C 2 3 0 1 0 0'/%3e%3c/svg%3e");
322
+ mask-image: url("data:image/svg+xml,%3csvg width='3' height='3' xmlns='http://www.w3.org/2000/svg'%3e%3cpath fill='black' d='m 0 3 L 1 3 L 3 3 C 2 3 0 1 0 0'/%3e%3c/svg%3e");
355
323
  }
356
324
  [dir="rtl"] .chat-end .chat-bubble:before {
357
- -webkit-mask-image: url("data:image/svg+xml,%3csvg width='3' height='3' xmlns='http://www.w3.org/2000/svg'%3e%3cpath fill='black' d='m 0 3 L 3 3 L 3 0 C 3 1 1 3 0 3'/%3e%3c/svg%3e");
358
- mask-image: url("data:image/svg+xml,%3csvg width='3' height='3' xmlns='http://www.w3.org/2000/svg'%3e%3cpath fill='black' d='m 0 3 L 3 3 L 3 0 C 3 1 1 3 0 3'/%3e%3c/svg%3e");
325
+ mask-image: url("data:image/svg+xml,%3csvg width='3' height='3' xmlns='http://www.w3.org/2000/svg'%3e%3cpath fill='black' d='m 0 3 L 3 3 L 3 0 C 3 1 1 3 0 3'/%3e%3c/svg%3e");
359
326
  }
360
327
  .checkbox {
361
328
  flex-shrink: 0
362
329
  }
363
- .collapse.collapse {
330
+ .collapse:not(td):not(tr):not(colgroup) {
364
331
  visibility: visible;
365
332
  }
366
333
  .collapse {
367
334
  position: relative;
368
335
  display: grid;
369
336
  overflow: hidden;
370
- grid-template-rows: 1fr auto;
337
+ grid-template-rows: auto 0fr;
338
+ transition: grid-template-rows 0.2s;
371
339
  }
372
340
  .collapse-title,
373
341
  .collapse > input[type="checkbox"],
342
+ .collapse > input[type="radio"],
374
343
  .collapse-content {
375
344
  grid-column-start: 1;
376
345
  grid-row-start: 1;
377
346
  }
378
- .collapse > input[type="checkbox"] {
347
+ .collapse > input[type="checkbox"],
348
+ .collapse > input[type="radio"] {
379
349
  appearance: none;
380
350
  opacity: 0;
381
351
  }
382
352
  .collapse-content {
353
+ visibility: hidden;
354
+ grid-column-start: 1;
383
355
  grid-row-start: 2;
384
- overflow: hidden;
385
- max-height: 0px;
356
+ min-height: 0px;
357
+ transition: visibility 0.2s;
386
358
  }
359
+ .collapse[open],
360
+ .collapse-open,
361
+ .collapse:focus:not(.collapse-close),
362
+ .collapse:not(.collapse-close):has(input[type="checkbox"]:checked),
363
+ .collapse:not(.collapse-close):has(input[type="radio"]:checked) {
364
+ grid-template-rows: auto 1fr;
365
+ }
366
+ .collapse[open] .collapse-content,
387
367
  .collapse-open .collapse-content,
388
368
  .collapse:focus:not(.collapse-close) .collapse-content,
389
- .collapse:not(.collapse-close)
390
- input[type="checkbox"]:checked
391
- ~ .collapse-content {
392
- max-height: none;
369
+ .collapse:not(.collapse-close) input[type="checkbox"]:checked ~ .collapse-content,
370
+ .collapse:not(.collapse-close) input[type="radio"]:checked ~ .collapse-content {
371
+ visibility: visible;
372
+ min-height: fit-content;
393
373
  }
394
374
  :root .countdown {
395
375
  line-height: 1em;
@@ -422,259 +402,143 @@
422
402
  width: 100%;
423
403
  }
424
404
  .drawer {
425
-
405
+ position: relative;
426
406
  display: grid;
427
-
428
- width: 100%;
429
-
430
- overflow: hidden;
431
-
432
- height: 100vh;
433
- height: 100dvh;
407
+ grid-auto-columns: max-content auto;
434
408
  }
435
-
436
- .drawer.drawer-end {
437
- direction: rtl;
438
- }
439
-
440
- .drawer.drawer-end > * {
441
- direction: ltr;
442
- }
443
-
444
- .drawer.drawer-end > .drawer-toggle ~ .drawer-side > .drawer-overlay + * {
445
-
446
- --tw-translate-x: 100%;
447
-
448
- transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
449
-
450
- justify-self: end;
409
+ .drawer-content {
410
+ grid-column-start: 2;
411
+ grid-row-start: 1;
451
412
  }
452
-
453
- .drawer.drawer-end > .drawer-toggle:checked ~ .drawer-side > .drawer-overlay + * {
454
-
455
- --tw-translate-x: 0px;
456
-
457
- transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
413
+ .drawer-side {
414
+ pointer-events: none;
415
+ visibility: hidden;
416
+ position: fixed;
417
+ top: 0px;
418
+ left: 0px;
419
+ grid-column-start: 1;
420
+ grid-row-start: 1;
421
+ display: grid;
422
+ width: 100%;
423
+ grid-template-columns: repeat(1, minmax(0, 1fr));
424
+ grid-template-rows: repeat(1, minmax(0, 1fr));
425
+ align-items: flex-start;
426
+ justify-items: start;
427
+ overflow-y: auto;
428
+ overscroll-behavior: contain;
429
+ height: 100vh;
430
+ height: 100dvh;
431
+ scrollbar-width: none;
458
432
  }
459
- :where(.drawer-toggle ~ .drawer-content) {
460
- height: inherit;
433
+ .drawer-side::-webkit-scrollbar {
434
+ display: none;
461
435
  }
462
- .drawer-toggle {
463
-
464
- position: absolute;
465
-
436
+ .drawer-side > *:not(.drawer-overlay) {
437
+ transition: transform 0.4s cubic-bezier(0, 0, 0.58, 1);
438
+ transform: translateX(-100%);
439
+ }
440
+ [dir="rtl"] .drawer-side > *:not(.drawer-overlay) {
441
+ transform: translateX(100%);
442
+ }
443
+ .drawer-toggle {
444
+ position: fixed;
466
445
  height: 0px;
467
-
468
446
  width: 0px;
469
-
470
447
  appearance: none;
471
-
472
448
  opacity: 0;
473
449
  }
474
- .drawer-toggle ~ .drawer-content {
475
-
476
- z-index: 0;
477
-
478
- grid-column-start: 1;
479
-
480
- grid-row-start: 1;
481
-
482
- overflow-y: auto;
483
- }
484
- .drawer-toggle ~ .drawer-side {
485
-
486
- grid-column-start: 1;
487
-
488
- grid-row-start: 1;
489
-
490
- display: grid;
491
-
492
- max-height: 100vh;
493
-
494
- overflow-x: hidden;
495
- }
496
- .drawer-toggle ~ .drawer-side > .drawer-overlay {
497
-
498
- visibility: hidden;
499
-
500
- grid-column-start: 1;
501
-
502
- grid-row-start: 1;
503
-
504
- opacity: 0;
450
+ .drawer-toggle:checked ~ .drawer-side {
451
+ pointer-events: auto;
452
+ visibility: visible;
505
453
  }
506
- .drawer-toggle ~ .drawer-side > .drawer-overlay + * {
507
-
508
- z-index: 10;
509
-
454
+ .drawer-toggle:checked ~ .drawer-side > * {
510
455
  grid-column-start: 1;
511
-
512
456
  grid-row-start: 1;
513
-
514
- --tw-translate-x: -100%;
515
-
516
- transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
517
457
  }
518
- .drawer-toggle:checked ~ .drawer-side {
519
-
520
- isolation: isolate;
521
-
522
- overflow-y: auto;
523
-
524
- overflow-x: hidden;
525
- }
526
- .drawer-toggle:checked ~ .drawer-side > .drawer-overlay {
527
-
528
- visibility: visible;
529
- }
530
- .drawer-toggle:checked ~ .drawer-side > .drawer-overlay + * {
531
-
532
- --tw-translate-x: 0px;
533
-
534
- transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
535
- }
536
- [dir="rtl"] .drawer-toggle ~ .drawer-side > .drawer-overlay + * {
537
-
538
- --tw-translate-x: 100%;
539
-
540
- transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
541
- }
542
- [dir="rtl"] .drawer-toggle:checked ~ .drawer-side > .drawer-overlay + * {
543
-
544
- --tw-translate-x: 0px;
545
-
546
- transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
547
- }
548
- [dir="rtl"] .drawer.drawer-end > .drawer-toggle ~ .drawer-side > .drawer-overlay + * {
549
- --tw-translate-x: -100%;
550
- }
551
- [dir="rtl"] .drawer.drawer-end > .drawer-toggle:checked ~ .drawer-side > .drawer-overlay + * {
552
- --tw-translate-x: 0px;
553
- }
554
- [dir="rtl"] .drawer.drawer-end > .drawer-toggle:checked ~ .drawer-content {
555
- --tw-translate-x: 0.5rem;
458
+ .drawer-toggle:checked ~ .drawer-side > *:not(.drawer-overlay) {
459
+ transform: translateX(0%);
460
+ }
461
+ .drawer-toggle:checked ~ .drawer-side > .drawer-overlay {
462
+ position: sticky;
463
+ top: 0px;
464
+ place-self: stretch;
556
465
  }
557
- @media (min-width: 1024px) {
558
- .drawer-mobile {
559
- grid-auto-columns: max-content auto;
560
- }
561
- .drawer-mobile > .drawer-toggle ~ .drawer-content {
562
-
563
- height: auto;
564
- }
565
- @media (min-width: 1024px) {
566
-
567
- .drawer-mobile > .drawer-toggle ~ .drawer-content {
568
-
569
- grid-column-start: 2;
570
- }
571
- }
572
- .drawer-mobile > .drawer-toggle ~ .drawer-side {
573
-
574
- overflow-y: auto;
575
- }
576
- @media (min-width: 1024px) {
577
-
578
- .drawer-mobile > .drawer-toggle ~ .drawer-side > .drawer-overlay {
579
-
580
- visibility: visible;
581
- }
582
-
583
- .drawer-mobile > .drawer-toggle ~ .drawer-side > .drawer-overlay + * {
584
-
585
- --tw-translate-x: 0px;
586
-
587
- transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
588
- }
589
- }
590
- .drawer-mobile.drawer-end {
466
+ .drawer-end {
591
467
  grid-auto-columns: auto max-content;
592
- direction: ltr;
593
- }
594
- .drawer-mobile.drawer-end > .drawer-toggle ~ .drawer-content {
595
-
596
- height: auto;
597
- }
598
- @media (min-width: 1024px) {
599
-
600
- .drawer-mobile.drawer-end > .drawer-toggle ~ .drawer-content {
601
-
602
- grid-column-start: 1;
603
- }
604
- }
605
- .drawer-mobile.drawer-end > .drawer-toggle ~ .drawer-side {
606
-
607
- overflow-y: auto;
608
- }
609
- @media (min-width: 1024px) {
610
-
611
- .drawer-mobile.drawer-end > .drawer-toggle ~ .drawer-side {
612
-
613
- grid-column-start: 2;
614
- }
615
-
616
- .drawer-mobile.drawer-end > .drawer-toggle ~ .drawer-side > .drawer-overlay {
617
-
618
- visibility: visible;
619
- }
620
-
621
- .drawer-mobile.drawer-end > .drawer-toggle ~ .drawer-side > .drawer-overlay + * {
622
-
623
- --tw-translate-x: 0px;
624
-
625
- transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
626
- }
627
468
  }
469
+ .drawer-end .drawer-toggle ~ .drawer-content {
470
+ grid-column-start: 1;
628
471
  }
472
+ .drawer-end .drawer-toggle ~ .drawer-side {
473
+ justify-items: end;
474
+ }
475
+ .drawer-end .drawer-toggle ~ .drawer-side > *:not(.drawer-overlay) {
476
+ transform: translateX(100%);
477
+ }
478
+ [dir="rtl"] .drawer-end .drawer-toggle ~ .drawer-side > *:not(.drawer-overlay) {
479
+ transform: translateX(-100%);
480
+ }
481
+ .drawer-end .drawer-toggle:checked ~ .drawer-side > *:not(.drawer-overlay) {
482
+ transform: translateX(0%);
483
+ }
629
484
  .dropdown {
630
- position: relative;
631
- display: inline-block
485
+ position: relative;
486
+ display: inline-block
632
487
  }
633
488
  .dropdown > *:focus {
634
- outline: 2px solid transparent;
635
- outline-offset: 2px
489
+ outline: 2px solid transparent;
490
+ outline-offset: 2px
636
491
  }
637
492
  .dropdown .dropdown-content {
638
- visibility: hidden;
639
- position: absolute;
640
- z-index: 50;
641
- opacity: 0
493
+ position: absolute
494
+ }
495
+ .dropdown:is(:not(details)) .dropdown-content {
496
+ visibility: hidden;
497
+ opacity: 0
642
498
  }
643
499
  .dropdown-end .dropdown-content {
644
- right: 0px
500
+ right: 0px
645
501
  }
646
502
  .dropdown-left .dropdown-content {
647
- top: 0px;
648
- right: 100%;
649
- bottom: auto
503
+ top: 0px;
504
+ right: 100%;
505
+ bottom: auto
650
506
  }
651
507
  .dropdown-right .dropdown-content {
652
- left: 100%;
653
- top: 0px;
654
- bottom: auto
508
+ left: 100%;
509
+ top: 0px;
510
+ bottom: auto
655
511
  }
656
512
  .dropdown-bottom .dropdown-content {
657
- bottom: auto;
658
- top: 100%
513
+ bottom: auto;
514
+ top: 100%
659
515
  }
660
516
  .dropdown-top .dropdown-content {
661
- bottom: 100%;
662
- top: auto
517
+ bottom: 100%;
518
+ top: auto
663
519
  }
664
520
  .dropdown-end.dropdown-right .dropdown-content {
665
- bottom: 0px;
666
- top: auto
521
+ bottom: 0px;
522
+ top: auto
667
523
  }
668
524
  .dropdown-end.dropdown-left .dropdown-content {
669
- bottom: 0px;
670
- top: auto
525
+ bottom: 0px;
526
+ top: auto
671
527
  }
672
528
  .dropdown.dropdown-open .dropdown-content,
673
- .dropdown.dropdown-hover:hover .dropdown-content,
674
529
  .dropdown:not(.dropdown-hover):focus .dropdown-content,
675
- .dropdown:not(.dropdown-hover):focus-within .dropdown-content {
676
- visibility: visible;
677
- opacity: 1
530
+ .dropdown:focus-within .dropdown-content {
531
+ visibility: visible;
532
+ opacity: 1
533
+ }
534
+ @media (hover: hover) {
535
+ .dropdown.dropdown-hover:hover .dropdown-content {
536
+ visibility: visible;
537
+ opacity: 1
538
+ }
539
+ }
540
+ .dropdown:is(details) summary::-webkit-details-marker {
541
+ display: none
678
542
  }
679
543
  .file-input {
680
544
  height: 3rem;
@@ -820,7 +684,7 @@
820
684
  display: flex;
821
685
  align-items: center;
822
686
  --tw-bg-opacity: 1;
823
- background-color: hsl(var(--b3, var(--b2)) / var(--tw-bg-opacity));
687
+ background-color: hsl(var(--b3) / var(--tw-bg-opacity));
824
688
  padding-left: 1rem;
825
689
  padding-right: 1rem;
826
690
  }
@@ -851,94 +715,114 @@
851
715
  border-bottom-left-radius: var(--rounded-btn, 0.5rem);
852
716
  border-bottom-right-radius: var(--rounded-btn, 0.5rem);
853
717
  }
718
+ .join {
719
+ display: inline-flex;
720
+ align-items: stretch;
721
+ }
722
+ .join * {
723
+ border-radius: inherit;
724
+ }
725
+ .join :where(.join-item) {
726
+ border-top-right-radius: 0;
727
+ border-bottom-right-radius: 0;
728
+ border-bottom-left-radius: 0;
729
+ border-top-left-radius: 0;
730
+ }
731
+ .join .join-item:not(:first-child):not(:last-child),
732
+ .join *:not(:first-child):not(:last-child) .join-item {
733
+ border-top-right-radius: 0;
734
+ border-bottom-right-radius: 0;
735
+ border-bottom-left-radius: 0;
736
+ border-top-left-radius: 0;
737
+ }
738
+ .join .join-item:first-child:not(:last-child),
739
+ .join *:first-child:not(:last-child) .join-item {
740
+ border-top-right-radius: 0;
741
+ border-bottom-right-radius: 0;
742
+ }
743
+ .join :where(.join-item:first-child:not(:last-child)),
744
+ .join :where(*:first-child:not(:last-child) .join-item) {
745
+ border-bottom-left-radius: inherit;
746
+ border-top-left-radius: inherit;
747
+ }
748
+ .join .join-item:last-child:not(:first-child),
749
+ .join *:last-child:not(:first-child) .join-item {
750
+ border-bottom-left-radius: 0;
751
+ border-top-left-radius: 0;
752
+ }
753
+ .join :where(.join-item:last-child:not(:first-child)),
754
+ .join :where(*:last-child:not(:first-child) .join-item) {
755
+ border-top-right-radius: inherit;
756
+ border-bottom-right-radius: inherit;
757
+ }
854
758
  .kbd {
855
759
  display: inline-flex;
856
760
  align-items: center;
857
761
  justify-content: center
858
762
  }
859
763
  .link {
860
- cursor: pointer;
861
- text-decoration-line: underline
764
+ cursor: pointer;
765
+ text-decoration-line: underline
862
766
  }
863
767
  .link-hover {
864
- text-decoration-line: none
768
+ text-decoration-line: none
865
769
  }
770
+ @media (hover: hover) {
866
771
  .link-hover:hover {
867
772
  text-decoration-line: underline
773
+ }
868
774
  }
869
775
  .mask {
870
- -webkit-mask-size: contain;
871
- mask-size: contain;
872
- -webkit-mask-repeat: no-repeat;
873
- mask-repeat: no-repeat;
874
- -webkit-mask-position: center;
875
- mask-position: center;
776
+ mask-size: contain;
777
+ mask-repeat: no-repeat;
778
+ mask-position: center;
876
779
  }
877
780
  .mask-half-1 {
878
- -webkit-mask-size: 200%;
879
- mask-size: 200%;
880
- -webkit-mask-position: left;
881
- mask-position: left;
781
+ mask-size: 200%;
782
+ mask-position: left;
882
783
  }
883
784
  .mask-half-2 {
884
- -webkit-mask-size: 200%;
885
- mask-size: 200%;
886
- -webkit-mask-position: right;
887
- mask-position: right;
785
+ mask-size: 200%;
786
+ mask-position: right;
888
787
  }
889
788
  .menu {
890
- display: flex;
891
- flex-direction: column;
892
- flex-wrap: wrap
893
- }
894
- .menu.horizontal {
895
- display: inline-flex;
896
- flex-direction: row
897
- }
898
- .menu.horizontal :where(li) {
899
- flex-direction: row
900
- }
901
- :where(.menu li) {
902
- position: relative;
903
- display: flex;
904
- flex-shrink: 0;
905
- flex-direction: column;
906
- flex-wrap: wrap;
907
- align-items: stretch
908
- }
909
- .menu :where(li:not(.menu-title)) > :where(*:not(ul)) {
910
- display: flex
911
- }
912
- .menu :where(li:not(.disabled):not(.menu-title)) > :where(*:not(ul)) {
913
- cursor: pointer;
914
- user-select: none;
915
- align-items: center;
916
- outline: 2px solid transparent;
917
- outline-offset: 2px
789
+ display: flex;
790
+ flex-direction: column;
791
+ flex-wrap: wrap;
792
+ font-size: 0.875rem;
793
+ line-height: 1.25rem
918
794
  }
919
- .menu > :where(li > *:not(ul):focus) {
920
- outline: 2px solid transparent;
921
- outline-offset: 2px
795
+ .menu :where(li ul) {
796
+ position: relative;
797
+ white-space: nowrap
922
798
  }
923
- .menu > :where(li.disabled > *:not(ul):focus) {
924
- cursor: auto
799
+ .menu :where(li:not(.menu-title) > *:not(ul):not(details):not(.menu-title)),
800
+ .menu :where(li:not(.menu-title) > details > summary:not(.menu-title)) {
801
+ display: grid;
802
+ grid-auto-flow: column;
803
+ align-content: flex-start;
804
+ align-items: center;
805
+ gap: 0.5rem;
806
+ grid-auto-columns: max-content auto max-content;
807
+ user-select: none
925
808
  }
926
- .menu > :where(li) :where(ul) {
927
- display: flex;
928
- flex-direction: column;
929
- align-items: stretch
809
+ .menu li.disabled {
810
+ cursor: not-allowed;
811
+ user-select: none
930
812
  }
931
- .menu > :where(li) > :where(ul) {
932
- position: absolute;
933
- display: none;
934
- top: initial;
935
- left: 100%
813
+ .menu :where(li > .menu-dropdown:not(.menu-dropdown-show)) {
814
+ display: none
936
815
  }
937
- .menu > :where(li:hover) > :where(ul) {
938
- display: flex
816
+ :where(.menu li) {
817
+ position: relative;
818
+ display: flex;
819
+ flex-shrink: 0;
820
+ flex-direction: column;
821
+ flex-wrap: wrap;
822
+ align-items: stretch
939
823
  }
940
- .menu > :where(li:focus) > :where(ul) {
941
- display: flex
824
+ :where(.menu li) .badge {
825
+ justify-self: end
942
826
  }
943
827
  .mockup-code {
944
828
  position: relative;
@@ -961,15 +845,25 @@
961
845
  text-align: right;
962
846
  }
963
847
  .modal {
848
+ /* @apply pointer-events-none invisible fixed inset-0 flex justify-center opacity-0; */
964
849
  pointer-events: none;
965
- visibility: hidden;
966
850
  position: fixed;
967
851
  inset: 0px;
968
- display: flex;
969
- justify-content: center;
852
+ margin: 0px;
853
+ display: grid;
854
+ height: 100%;
855
+ max-height: none;
856
+ width: 100%;
857
+ max-width: none;
858
+ justify-items: center;
859
+ padding: 0px;
970
860
  opacity: 0;
861
+ overscroll-behavior: contain;
971
862
  z-index: 999;
972
863
  }
864
+ .modal-scroll {
865
+ overscroll-behavior: auto;
866
+ }
973
867
  :where(.modal) {
974
868
  align-items: center;
975
869
  }
@@ -978,7 +872,8 @@
978
872
  }
979
873
  .modal-open,
980
874
  .modal:target,
981
- .modal-toggle:checked + .modal {
875
+ .modal-toggle:checked + .modal,
876
+ .modal[open] {
982
877
  pointer-events: auto;
983
878
  visibility: visible;
984
879
  opacity: 1;
@@ -993,6 +888,9 @@
993
888
  appearance: none;
994
889
  opacity: 0;
995
890
  }
891
+ :root:has(:is(.modal-open, .modal:target, .modal-toggle:checked + .modal, .modal[open])) {
892
+ overflow: hidden;
893
+ }
996
894
  .navbar {
997
895
  display: flex;
998
896
  align-items: center;
@@ -1049,9 +947,19 @@
1049
947
  }
1050
948
  .radial-progress:before {
1051
949
  inset: 0px;
1052
- background: radial-gradient(farthest-side, currentColor 98%, #0000) top/var(--thickness) var(--thickness) no-repeat, conic-gradient(currentColor calc(var(--value) * 1%), #0000 0);
1053
- -webkit-mask: radial-gradient(farthest-side, #0000 calc(99% - var(--thickness)), #000 calc(100% - var(--thickness)));
1054
- mask: radial-gradient(farthest-side, #0000 calc(99% - var(--thickness)), #000 calc(100% - var(--thickness)));
950
+ background: radial-gradient(farthest-side, currentColor 98%, #0000) top/var(--thickness)
951
+ var(--thickness) no-repeat,
952
+ conic-gradient(currentColor calc(var(--value) * 1%), #0000 0);
953
+ -webkit-mask: radial-gradient(
954
+ farthest-side,
955
+ #0000 calc(99% - var(--thickness)),
956
+ #000 calc(100% - var(--thickness))
957
+ );
958
+ mask: radial-gradient(
959
+ farthest-side,
960
+ #0000 calc(99% - var(--thickness)),
961
+ #000 calc(100% - var(--thickness))
962
+ );
1055
963
  }
1056
964
  .radial-progress:after {
1057
965
  inset: calc(50% - var(--thickness) / 2);
@@ -1077,28 +985,28 @@
1077
985
  border-radius: 0px
1078
986
  }
1079
987
  .select {
1080
- display: inline-flex;
1081
- flex-shrink: 0;
1082
- cursor: pointer;
1083
- user-select: none;
1084
- appearance: none;
1085
- height: 3rem;
1086
- padding-left: 1rem;
1087
- padding-right: 2.5rem;
1088
- font-size: 0.875rem;
1089
- line-height: 1.25rem;
1090
- line-height: 2;
1091
- min-height: 3rem
988
+ display: inline-flex;
989
+ flex-shrink: 0;
990
+ cursor: pointer;
991
+ user-select: none;
992
+ appearance: none;
993
+ height: 3rem;
994
+ padding-left: 1rem;
995
+ padding-right: 2.5rem;
996
+ font-size: 0.875rem;
997
+ line-height: 1.25rem;
998
+ line-height: 2;
999
+ min-height: 3rem
1000
+ }
1092
1001
 
1093
1002
  /* disabled */
1094
1003
  /* &-disabled,
1095
1004
  &[disabled] {
1096
1005
  @apply pointer-events-none;
1097
1006
  } */
1098
- }
1099
1007
  /* multiple */
1100
1008
  .select[multiple] {
1101
- height: auto
1009
+ height: auto
1102
1010
  }
1103
1011
  .stack {
1104
1012
  display: inline-grid;
@@ -1234,13 +1142,29 @@
1234
1142
  }
1235
1143
  .table {
1236
1144
  position: relative;
1145
+ width: 100%
1146
+ }
1147
+ .table :where(.table-pin-rows thead tr) {
1148
+ position: sticky;
1149
+ top: 0px;
1150
+ z-index: 1;
1151
+ --tw-bg-opacity: 1;
1152
+ background-color: hsl(var(--b1) / var(--tw-bg-opacity))
1153
+ }
1154
+ .table :where(.table-pin-rows tfoot tr) {
1155
+ position: sticky;
1156
+ bottom: 0px;
1157
+ z-index: 1;
1158
+ --tw-bg-opacity: 1;
1159
+ background-color: hsl(var(--b1) / var(--tw-bg-opacity))
1237
1160
  }
1238
- .table th:first-child {
1239
- /* because safari */
1161
+ .table :where(.table-pin-cols tr th) {
1240
1162
  position: sticky;
1241
1163
  left: 0px;
1242
- z-index: 11;
1243
- }
1164
+ right: 0px;
1165
+ --tw-bg-opacity: 1;
1166
+ background-color: hsl(var(--b1) / var(--tw-bg-opacity))
1167
+ }
1244
1168
  .textarea {
1245
1169
  flex-shrink: 1;
1246
1170
  min-height: 3rem;
@@ -1256,48 +1180,9 @@
1256
1180
  position: fixed;
1257
1181
  display: flex;
1258
1182
  min-width: fit-content;
1259
- flex-direction: column
1183
+ flex-direction: column;
1184
+ white-space: nowrap
1260
1185
  }
1261
1186
  .toggle {
1262
1187
  flex-shrink: 0
1263
1188
  }
1264
- .tooltip {
1265
- position: relative;
1266
- display: inline-block;
1267
- --tooltip-offset: calc(100% + 1px + var(--tooltip-tail, 0px));
1268
- }
1269
- .tooltip:before {
1270
- position: absolute;
1271
- pointer-events: none;
1272
- z-index: 999;
1273
- content: var(--tw-content);
1274
- --tw-content: attr(data-tip);
1275
- }
1276
- .tooltip:before, .tooltip-top:before {
1277
- transform: translateX(-50%);
1278
- top: auto;
1279
- left: 50%;
1280
- right: auto;
1281
- bottom: var(--tooltip-offset);
1282
- }
1283
- .tooltip-bottom:before {
1284
- transform: translateX(-50%);
1285
- top: var(--tooltip-offset);
1286
- left: 50%;
1287
- right: auto;
1288
- bottom: auto;
1289
- }
1290
- .tooltip-left:before {
1291
- transform: translateY(-50%);
1292
- top: 50%;
1293
- left: auto;
1294
- right: var(--tooltip-offset);
1295
- bottom: auto;
1296
- }
1297
- .tooltip-right:before {
1298
- transform: translateY(-50%);
1299
- top: 50%;
1300
- left: var(--tooltip-offset);
1301
- right: auto;
1302
- bottom: auto;
1303
- }