@threadlabs/looma 0.26.1 → 0.26.2

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.
@@ -305,6 +305,10 @@ svg[data-v-abaeb064] {
305
305
  syntax: "*";
306
306
  inherits: false;
307
307
  }
308
+ @property --ui-badge-circle-size {
309
+ syntax: "*";
310
+ inherits: false;
311
+ }
308
312
  @property --ui-badge-dot-size {
309
313
  syntax: "*";
310
314
  inherits: false;
@@ -349,7 +353,7 @@ svg[data-v-abaeb064] {
349
353
  syntax: "*";
350
354
  inherits: false;
351
355
  }
352
- [data-component~="ui-badge"][data-v-a45f2b52] {
356
+ [data-component~="ui-badge"][data-v-c96818e7] {
353
357
  --_badge-surface: color-mix(in srgb, var(--ui-surface-subtle) 80%, var(--ui-surface-default));
354
358
  --_badge-text: var(--ui-text-secondary);
355
359
  /* Sit between the soft fill and its stronger theme ink. */
@@ -395,27 +399,27 @@ svg[data-v-abaeb064] {
395
399
 
396
400
  /* A constrained badge keeps its surface intact and ellipsizes only its label. The full
397
401
  text stays in the DOM for accessible names and consumers' selected values. */
398
- .label[data-v-a45f2b52] {
402
+ .label[data-v-c96818e7] {
399
403
  display: block;
400
404
  min-inline-size: 0;
401
405
  overflow: hidden;
402
406
  text-overflow: ellipsis;
403
407
  }
404
- .label[data-v-a45f2b52]:empty {
408
+ .label[data-v-c96818e7]:empty {
405
409
  display: none;
406
410
  }
407
411
 
408
412
  /* Icon content has its own flex item so label ellipsis never clips its strokes. */
409
- .icon[data-v-a45f2b52] {
413
+ .icon[data-v-c96818e7] {
410
414
  display: inline-flex;
411
415
  align-items: center;
412
416
  justify-content: center;
413
417
  flex: none;
414
418
  }
415
- .icon[data-v-a45f2b52]:empty {
419
+ .icon[data-v-c96818e7]:empty {
416
420
  display: none;
417
421
  }
418
- .icon svg[data-v-a45f2b52-s] {
422
+ .icon svg[data-v-c96818e7-s] {
419
423
  display: block;
420
424
  inline-size: 1em;
421
425
  block-size: 1em;
@@ -423,20 +427,20 @@ svg[data-v-abaeb064] {
423
427
  }
424
428
 
425
429
  /* Ordinary icon-plus-text children keep inline ellipsis, with explicit glyph spacing. */
426
- .label svg[data-v-a45f2b52-s] {
430
+ .label svg[data-v-c96818e7-s] {
427
431
  inline-size: 1em;
428
432
  block-size: 1em;
429
433
  vertical-align: middle;
430
434
  margin-inline-end: var(--ui-space-1);
431
435
  }
432
- .label[data-v-a45f2b52]:has(svg) {
436
+ .label[data-v-c96818e7]:has(svg) {
433
437
  text-box-trim: none;
434
438
  }
435
439
 
436
440
  /* Text-only badges retain their trimmed inline baseline. Icon content needs a flex row;
437
441
  trimming its label separately keeps the glyph centered without changing adjacent lines. */
438
442
  @supports (text-box-trim: trim-both) {
439
- [data-component~="ui-badge"][data-v-a45f2b52] {
443
+ [data-component~="ui-badge"][data-v-c96818e7] {
440
444
  display: inline-block;
441
445
  min-block-size: var(--ui-badge-min-block-size, 1.5rem);
442
446
  text-align: center;
@@ -444,17 +448,17 @@ svg[data-v-abaeb064] {
444
448
  text-box-trim: trim-both;
445
449
  text-box-edge: text;
446
450
  }
447
- [data-component~="ui-badge"][data-v-a45f2b52]:has(.icon:not(:empty)),
448
- [data-component~="ui-badge"][data-v-a45f2b52]:has(.label svg) {
451
+ [data-component~="ui-badge"][data-v-c96818e7]:has(.icon:not(:empty)),
452
+ [data-component~="ui-badge"][data-v-c96818e7]:has(.label svg) {
449
453
  display: inline-flex;
450
454
  text-box-trim: none;
451
455
  }
452
- [data-component~="ui-badge"]:has(.icon:not(:empty)) .label[data-v-a45f2b52] {
456
+ [data-component~="ui-badge"]:has(.icon:not(:empty)) .label[data-v-c96818e7] {
453
457
  text-box-trim: trim-both;
454
458
  text-box-edge: text;
455
459
  }
456
460
  }
457
- [data-component~="ui-badge"][data-ui-badge-state~="size=xs"][data-v-a45f2b52] {
461
+ [data-component~="ui-badge"][data-ui-badge-state~="size=xs"][data-v-c96818e7] {
458
462
  box-sizing: border-box;
459
463
  min-inline-size: 1rem;
460
464
  min-block-size: var(--ui-badge-min-block-size, 1rem);
@@ -462,52 +466,52 @@ svg[data-v-abaeb064] {
462
466
  font-size: var(--ui-badge-font-size, var(--ui-font-size-2xs));
463
467
  line-height: var(--ui-badge-line-height, 1);
464
468
  }
465
- [data-component~="ui-badge"][data-ui-badge-state~="tone=accent"][data-v-a45f2b52] {
469
+ [data-component~="ui-badge"][data-ui-badge-state~="tone=accent"][data-v-c96818e7] {
466
470
  --_badge-surface: var(--ui-accent-strong-surface, var(--ui-accent-solid));
467
471
  --_badge-border: var(--ui-accent-strong-surface, var(--ui-accent-solid));
468
472
  --_badge-text: var(--ui-accent-on-strong, var(--ui-text-on-accent));
469
473
  }
470
- [data-component~="ui-badge"][data-ui-badge-state~="tone=danger"][data-v-a45f2b52] {
474
+ [data-component~="ui-badge"][data-ui-badge-state~="tone=danger"][data-v-c96818e7] {
471
475
  --_badge-surface: var(--ui-danger-strong-surface, var(--ui-danger-solid));
472
476
  --_badge-border: var(--ui-danger-strong-surface, var(--ui-danger-solid));
473
477
  --_badge-text: var(--ui-danger-on-strong, var(--ui-text-on-accent));
474
478
  }
475
- [data-component~="ui-badge"][data-ui-badge-state~="tone=success"][data-v-a45f2b52] {
479
+ [data-component~="ui-badge"][data-ui-badge-state~="tone=success"][data-v-c96818e7] {
476
480
  --_badge-surface: var(--ui-success-strong-surface, var(--ui-success-solid));
477
481
  --_badge-border: var(--ui-success-strong-surface, var(--ui-success-solid));
478
482
  --_badge-text: var(--ui-success-on-strong, var(--ui-text-on-accent));
479
483
  }
480
- [data-component~="ui-badge"][data-ui-badge-state~="tone=warning"][data-v-a45f2b52] {
484
+ [data-component~="ui-badge"][data-ui-badge-state~="tone=warning"][data-v-c96818e7] {
481
485
  --_badge-surface: var(--ui-warning-strong-surface, var(--ui-warning-solid));
482
486
  --_badge-border: var(--ui-warning-strong-surface, var(--ui-warning-solid));
483
487
  --_badge-text: var(--ui-warning-on-strong, var(--ui-text-on-accent));
484
488
  }
485
- [data-component~="ui-badge"][data-ui-badge-state~="tone=info"][data-v-a45f2b52] {
489
+ [data-component~="ui-badge"][data-ui-badge-state~="tone=info"][data-v-c96818e7] {
486
490
  --_badge-surface: var(--ui-info-strong-surface, var(--ui-info-solid));
487
491
  --_badge-border: var(--ui-info-strong-surface, var(--ui-info-solid));
488
492
  --_badge-text: var(--ui-info-on-strong, var(--ui-text-on-accent));
489
493
  }
490
- [data-component~="ui-badge"][data-ui-badge-state~="variant=subtle"][data-ui-badge-state~="tone=accent"][data-v-a45f2b52] {
494
+ [data-component~="ui-badge"][data-ui-badge-state~="variant=subtle"][data-ui-badge-state~="tone=accent"][data-v-c96818e7] {
491
495
  --_badge-surface: color-mix(in srgb, var(--ui-accent-solid) 19%, var(--ui-surface-default));
492
496
  --_badge-border: color-mix(in srgb, var(--ui-accent-solid) 25%, var(--ui-surface-default));
493
497
  --_badge-text: var(--ui-accent-subtle-text, var(--ui-accent-solid));
494
498
  }
495
- [data-component~="ui-badge"][data-ui-badge-state~="variant=subtle"][data-ui-badge-state~="tone=danger"][data-v-a45f2b52] {
499
+ [data-component~="ui-badge"][data-ui-badge-state~="variant=subtle"][data-ui-badge-state~="tone=danger"][data-v-c96818e7] {
496
500
  --_badge-surface: color-mix(in srgb, var(--ui-danger-solid) 19%, var(--ui-surface-default));
497
501
  --_badge-border: color-mix(in srgb, var(--ui-danger-solid) 25%, var(--ui-surface-default));
498
502
  --_badge-text: var(--ui-danger-subtle-text, var(--ui-danger-solid));
499
503
  }
500
- [data-component~="ui-badge"][data-ui-badge-state~="variant=subtle"][data-ui-badge-state~="tone=success"][data-v-a45f2b52] {
504
+ [data-component~="ui-badge"][data-ui-badge-state~="variant=subtle"][data-ui-badge-state~="tone=success"][data-v-c96818e7] {
501
505
  --_badge-surface: color-mix(in srgb, var(--ui-success-solid) 19%, var(--ui-surface-default));
502
506
  --_badge-border: color-mix(in srgb, var(--ui-success-solid) 25%, var(--ui-surface-default));
503
507
  --_badge-text: var(--ui-success-subtle-text, var(--ui-success-solid));
504
508
  }
505
- [data-component~="ui-badge"][data-ui-badge-state~="variant=subtle"][data-ui-badge-state~="tone=warning"][data-v-a45f2b52] {
509
+ [data-component~="ui-badge"][data-ui-badge-state~="variant=subtle"][data-ui-badge-state~="tone=warning"][data-v-c96818e7] {
506
510
  --_badge-surface: color-mix(in srgb, var(--ui-warning-solid) 19%, var(--ui-surface-default));
507
511
  --_badge-border: color-mix(in srgb, var(--ui-warning-solid) 25%, var(--ui-surface-default));
508
512
  --_badge-text: var(--ui-warning-subtle-text, var(--ui-warning-solid));
509
513
  }
510
- [data-component~="ui-badge"][data-ui-badge-state~="variant=subtle"][data-ui-badge-state~="tone=info"][data-v-a45f2b52] {
514
+ [data-component~="ui-badge"][data-ui-badge-state~="variant=subtle"][data-ui-badge-state~="tone=info"][data-v-c96818e7] {
511
515
  --_badge-surface: color-mix(in srgb, var(--ui-info-solid) 19%, var(--ui-surface-default));
512
516
  --_badge-border: color-mix(in srgb, var(--ui-info-solid) 25%, var(--ui-surface-default));
513
517
  --_badge-text: var(--ui-info-subtle-text, var(--ui-info-solid));
@@ -515,12 +519,12 @@ svg[data-v-abaeb064] {
515
519
 
516
520
  /* A solid colour fills with the ink. Its text is the page surface, mixed at 0% only so that it too is
517
521
  invalid while the hook is unset. */
518
- [data-component~="ui-badge"][data-ui-badge-state~="variant=solid"][data-v-a45f2b52] {
522
+ [data-component~="ui-badge"][data-ui-badge-state~="variant=solid"][data-v-c96818e7] {
519
523
  --_badge-color-surface: var(--_badge-color-ink);
520
524
  --_badge-color-border: var(--_badge-color-ink);
521
525
  --_badge-color-text: color-mix(in oklab, var(--_ui-badge-color) 0%, var(--ui-surface-default));
522
526
  }
523
- [data-component~="ui-badge"][data-ui-badge-state~="variant=outline"][data-v-a45f2b52] {
527
+ [data-component~="ui-badge"][data-ui-badge-state~="variant=outline"][data-v-c96818e7] {
524
528
  --_badge-surface: var(--ui-surface-default);
525
529
  --_badge-border: var(--ui-border-strong);
526
530
  --_badge-text: var(--ui-text-secondary);
@@ -528,29 +532,29 @@ svg[data-v-abaeb064] {
528
532
  --_badge-color-surface: initial;
529
533
  --_badge-color-border: var(--_badge-color-ink);
530
534
  }
531
- [data-component~="ui-badge"][data-ui-badge-state~="variant=outline"][data-ui-badge-state~="tone=accent"][data-v-a45f2b52] {
535
+ [data-component~="ui-badge"][data-ui-badge-state~="variant=outline"][data-ui-badge-state~="tone=accent"][data-v-c96818e7] {
532
536
  --_badge-border: var(--ui-accent-solid);
533
537
  --_badge-text: var(--ui-accent-subtle-text, var(--ui-accent-solid));
534
538
  }
535
- [data-component~="ui-badge"][data-ui-badge-state~="variant=outline"][data-ui-badge-state~="tone=danger"][data-v-a45f2b52] {
539
+ [data-component~="ui-badge"][data-ui-badge-state~="variant=outline"][data-ui-badge-state~="tone=danger"][data-v-c96818e7] {
536
540
  --_badge-border: var(--ui-danger-solid);
537
541
  --_badge-text: var(--ui-danger-subtle-text, var(--ui-danger-solid));
538
542
  }
539
- [data-component~="ui-badge"][data-ui-badge-state~="variant=outline"][data-ui-badge-state~="tone=success"][data-v-a45f2b52] {
543
+ [data-component~="ui-badge"][data-ui-badge-state~="variant=outline"][data-ui-badge-state~="tone=success"][data-v-c96818e7] {
540
544
  --_badge-border: var(--ui-success-solid);
541
545
  --_badge-text: var(--ui-success-subtle-text, var(--ui-success-solid));
542
546
  }
543
- [data-component~="ui-badge"][data-ui-badge-state~="variant=outline"][data-ui-badge-state~="tone=warning"][data-v-a45f2b52] {
547
+ [data-component~="ui-badge"][data-ui-badge-state~="variant=outline"][data-ui-badge-state~="tone=warning"][data-v-c96818e7] {
544
548
  --_badge-border: var(--ui-warning-solid);
545
549
  --_badge-text: var(--ui-warning-subtle-text, var(--ui-warning-solid));
546
550
  }
547
- [data-component~="ui-badge"][data-ui-badge-state~="variant=outline"][data-ui-badge-state~="tone=info"][data-v-a45f2b52] {
551
+ [data-component~="ui-badge"][data-ui-badge-state~="variant=outline"][data-ui-badge-state~="tone=info"][data-v-c96818e7] {
548
552
  --_badge-border: var(--ui-info-solid);
549
553
  --_badge-text: var(--ui-info-subtle-text, var(--ui-info-solid));
550
554
  }
551
555
 
552
556
  /* An icon mark keeps the existing tone recipe and follows the global spacing and radius. */
553
- [data-component~="ui-badge"][data-ui-badge-state~="shape=square"][data-v-a45f2b52] {
557
+ [data-component~="ui-badge"][data-ui-badge-state~="shape=square"][data-v-c96818e7] {
554
558
  --_badge-square-size: var(--ui-badge-square-size, calc(var(--ui-space-4) * 2));
555
559
  display: inline-flex;
556
560
  box-sizing: border-box;
@@ -563,23 +567,53 @@ svg[data-v-abaeb064] {
563
567
  border-radius: var(--ui-radius-md);
564
568
  text-box-trim: none;
565
569
  }
566
- [data-component~="ui-badge"][data-ui-badge-state~="shape=square"][data-ui-badge-state~="size=xs"][data-v-a45f2b52] {
570
+ [data-component~="ui-badge"][data-ui-badge-state~="shape=square"][data-ui-badge-state~="size=xs"][data-v-c96818e7] {
567
571
  --_badge-square-size: var(--ui-badge-square-size, calc(var(--ui-space-3) * 2));
568
572
  }
569
- [data-component~="ui-badge"][data-ui-badge-state~="shape=square"] .label[data-v-a45f2b52] {
573
+ [data-component~="ui-badge"][data-ui-badge-state~="shape=square"] .label[data-v-c96818e7] {
570
574
  display: inline-flex;
571
575
  align-items: center;
572
576
  justify-content: center;
573
577
  }
574
- [data-component~="ui-badge"][data-ui-badge-state~="shape=square"] .label svg[data-v-a45f2b52-s] {
578
+ [data-component~="ui-badge"][data-ui-badge-state~="shape=square"] .label svg[data-v-c96818e7-s] {
575
579
  margin-inline-end: 0;
576
580
  }
577
- [data-component~="ui-badge"][data-ui-badge-state~="shape=square"] .label[data-v-a45f2b52]:empty {
581
+ [data-component~="ui-badge"][data-ui-badge-state~="shape=square"] .label[data-v-c96818e7]:empty {
582
+ display: none;
583
+ }
584
+
585
+ /* A visible glyph needs fixed geometry, unlike a content-sized pill or a hidden-label dot. */
586
+ [data-component~="ui-badge"][data-ui-badge-state~="shape=circle"][data-v-c96818e7] {
587
+ --_badge-circle-size: var(--ui-badge-circle-size, calc(var(--ui-space-3) * 2));
588
+ display: inline-flex;
589
+ flex: none;
590
+ inline-size: var(--_badge-circle-size);
591
+ block-size: var(--_badge-circle-size);
592
+ min-inline-size: var(--_badge-circle-size);
593
+ min-block-size: var(--_badge-circle-size);
594
+ padding: 0;
595
+ border-radius: var(--ui-radius-round);
596
+ text-box-trim: none;
597
+ }
598
+ [data-component~="ui-badge"][data-ui-badge-state~="shape=circle"][data-ui-badge-state~="size=xs"][data-v-c96818e7] {
599
+ --_badge-circle-size: var(--ui-badge-circle-size, var(--ui-space-4));
600
+ }
601
+ [data-component~="ui-badge"][data-ui-badge-state~="shape=circle"] .label[data-v-c96818e7] {
602
+ display: inline-flex;
603
+ align-items: center;
604
+ justify-content: center;
605
+ line-height: 1;
606
+ text-box-trim: none;
607
+ }
608
+ [data-component~="ui-badge"][data-ui-badge-state~="shape=circle"] .label svg[data-v-c96818e7-s] {
609
+ margin-inline-end: 0;
610
+ }
611
+ [data-component~="ui-badge"][data-ui-badge-state~="shape=circle"] .label[data-v-c96818e7]:empty {
578
612
  display: none;
579
613
  }
580
614
 
581
615
  /* A dot uses the badge's tone recipe; only its silhouette and visible label change. */
582
- [data-component~="ui-badge"][data-ui-badge-state~="shape=dot"][data-v-a45f2b52] {
616
+ [data-component~="ui-badge"][data-ui-badge-state~="shape=dot"][data-v-c96818e7] {
583
617
  position: relative;
584
618
  box-sizing: border-box;
585
619
  flex: none;
@@ -591,7 +625,7 @@ svg[data-v-abaeb064] {
591
625
  border-radius: var(--ui-radius-round);
592
626
  text-box-trim: none;
593
627
  }
594
- [data-component~="ui-badge"][data-ui-badge-state~="shape=dot"] .label[data-v-a45f2b52] {
628
+ [data-component~="ui-badge"][data-ui-badge-state~="shape=dot"] .label[data-v-c96818e7] {
595
629
  position: absolute;
596
630
  inline-size: 1px;
597
631
  block-size: 1px;
@@ -602,7 +636,7 @@ svg[data-v-abaeb064] {
602
636
 
603
637
  /* The clipped point needs an inset surface over an outer border-colour shape: a native border
604
638
  has no diagonal edge to follow. Keep this edge for every tag variant. */
605
- [data-component~="ui-badge"][data-ui-badge-state~="shape=tag"][data-v-a45f2b52] {
639
+ [data-component~="ui-badge"][data-ui-badge-state~="shape=tag"][data-v-c96818e7] {
606
640
  --_badge-point: var(--ui-badge-point, var(--ui-space-2));
607
641
 
608
642
  position: relative;
@@ -619,7 +653,7 @@ svg[data-v-abaeb064] {
619
653
  0 100%
620
654
  );
621
655
  }
622
- [data-component~="ui-badge"][data-ui-badge-state~="shape=tag"][data-v-a45f2b52]::before {
656
+ [data-component~="ui-badge"][data-ui-badge-state~="shape=tag"][data-v-c96818e7]::before {
623
657
  content: "";
624
658
  position: absolute;
625
659
  inset: 0;
@@ -634,34 +668,34 @@ svg[data-v-abaeb064] {
634
668
  );
635
669
  pointer-events: none;
636
670
  }
637
- [data-component~="ui-badge"][data-ui-badge-state~="shape=tag"][data-v-a45f2b52]:dir(rtl) {
671
+ [data-component~="ui-badge"][data-ui-badge-state~="shape=tag"][data-v-c96818e7]:dir(rtl) {
638
672
  padding-inline-end: var(--ui-badge-padding-inline, var(--ui-space-2));
639
673
  padding-inline-start: calc(
640
674
  var(--ui-badge-padding-inline, var(--ui-space-2)) + var(--_badge-point)
641
675
  );
642
676
  clip-path: polygon(var(--_badge-point) 0, 100% 0, 100% 100%, var(--_badge-point) 100%, 0 50%);
643
677
  }
644
- [data-component~="ui-badge"][data-ui-badge-state~="shape=tag"][data-v-a45f2b52]:dir(rtl)::before {
678
+ [data-component~="ui-badge"][data-ui-badge-state~="shape=tag"][data-v-c96818e7]:dir(rtl)::before {
645
679
  clip-path: polygon(var(--_badge-point) 0, 100% 0, 100% 100%, var(--_badge-point) 100%, 0 50%);
646
680
  }
647
681
  @media (forced-colors: active) {
648
- [data-component~="ui-badge"][data-ui-badge-state~="shape=dot"][data-v-a45f2b52] {
682
+ [data-component~="ui-badge"][data-ui-badge-state~="shape=dot"][data-v-c96818e7] {
649
683
  forced-color-adjust: none;
650
684
  border-color: CanvasText;
651
685
  background: CanvasText;
652
686
  }
653
- [data-component~="ui-badge"][data-ui-badge-state~="shape=tag"][data-v-a45f2b52] {
687
+ [data-component~="ui-badge"][data-ui-badge-state~="shape=tag"][data-v-c96818e7] {
654
688
  forced-color-adjust: none;
655
689
  background: CanvasText;
656
690
  color: CanvasText;
657
691
  }
658
- [data-component~="ui-badge"][data-ui-badge-state~="shape=tag"][data-v-a45f2b52]::before {
692
+ [data-component~="ui-badge"][data-ui-badge-state~="shape=tag"][data-v-c96818e7]::before {
659
693
  background: Canvas;
660
694
  }
661
695
  }
662
696
 
663
697
  /* A component that sets its display still honours the hidden attribute on its root. */
664
- [data-component~="ui-badge"][hidden][data-v-a45f2b52] {
698
+ [data-component~="ui-badge"][hidden][data-v-c96818e7] {
665
699
  display: none;
666
700
  }
667
701
 
@@ -2285,7 +2319,7 @@ button[data-v-2be0ffde] {
2285
2319
  syntax: "*";
2286
2320
  inherits: false;
2287
2321
  }
2288
- [data-component~="ui-container"][data-v-955318c7] {
2322
+ [data-component~="ui-container"][data-v-d3919ea4] {
2289
2323
  --_container-measure: 65ch;
2290
2324
  --_container-gutters: var(--ui-space-4);
2291
2325
  display: block;
@@ -2294,24 +2328,32 @@ button[data-v-2be0ffde] {
2294
2328
  margin-inline: auto;
2295
2329
  padding-inline: var(--ui-container-gutters, var(--_container-gutters));
2296
2330
  }
2297
- [data-component~="ui-container"][data-ui-container-state~="measure=narrow"][data-v-955318c7] {
2331
+ [data-component~="ui-container"][data-ui-container-state~="measure=narrow"][data-v-d3919ea4] {
2298
2332
  --_container-measure: 45ch;
2299
2333
  }
2300
- [data-component~="ui-container"][data-ui-container-state~="measure=wide"][data-v-955318c7] {
2334
+ [data-component~="ui-container"][data-ui-container-state~="fill"][data-v-d3919ea4] {
2335
+ box-sizing: border-box;
2336
+ display: flex;
2337
+ flex-direction: column;
2338
+ flex: 1;
2339
+ min-inline-size: 0;
2340
+ min-block-size: 0;
2341
+ }
2342
+ [data-component~="ui-container"][data-ui-container-state~="measure=wide"][data-v-d3919ea4] {
2301
2343
  --_container-measure: 80ch;
2302
2344
  }
2303
- [data-component~="ui-container"][data-ui-container-state~="gutters=s"][data-v-955318c7] {
2345
+ [data-component~="ui-container"][data-ui-container-state~="gutters=s"][data-v-d3919ea4] {
2304
2346
  --_container-gutters: var(--ui-space-3);
2305
2347
  }
2306
- [data-component~="ui-container"][data-ui-container-state~="gutters=m"][data-v-955318c7] {
2348
+ [data-component~="ui-container"][data-ui-container-state~="gutters=m"][data-v-d3919ea4] {
2307
2349
  --_container-gutters: var(--ui-space-4);
2308
2350
  }
2309
- [data-component~="ui-container"][data-ui-container-state~="gutters=l"][data-v-955318c7] {
2351
+ [data-component~="ui-container"][data-ui-container-state~="gutters=l"][data-v-d3919ea4] {
2310
2352
  --_container-gutters: var(--ui-space-5);
2311
2353
  }
2312
2354
 
2313
2355
  /* A component that sets its display still honours the hidden attribute on its root. */
2314
- [data-component~="ui-container"][hidden][data-v-955318c7] {
2356
+ [data-component~="ui-container"][hidden][data-v-d3919ea4] {
2315
2357
  display: none;
2316
2358
  }
2317
2359
 
@@ -4694,7 +4736,7 @@ svg[data-v-955cfa65-s] {
4694
4736
  syntax: "*";
4695
4737
  inherits: false;
4696
4738
  }
4697
- [data-component~="ui-icon-button"][data-v-cb9aaf03] {
4739
+ [data-component~="ui-icon-button"][data-v-b66a1661] {
4698
4740
  /* Hooks do not inherit, so the parts below read them from the root. */
4699
4741
  --_ui-icon-button-icon-size: var(--ui-icon-button-icon-size);
4700
4742
  --_ui-icon-button-icon-stroke-width: var(--ui-icon-button-icon-stroke-width);
@@ -4702,10 +4744,28 @@ svg[data-v-955cfa65-s] {
4702
4744
  display: inline-flex;
4703
4745
  color: var(--ui-text-secondary);
4704
4746
  }
4705
- [data-component~="ui-icon-button"][data-ui-icon-button-state~="anticipatory"][data-v-cb9aaf03] {
4747
+ [data-component~="ui-icon-button"][data-ui-icon-button-state~="tone=accent"][data-v-b66a1661] {
4748
+ --_icon-button-border: var(--ui-accent-solid);
4749
+ --_icon-button-hover-border: var(--ui-accent-hover);
4750
+ --_icon-button-text: var(--ui-accent-subtle-text, var(--ui-accent-solid));
4751
+ --_icon-button-outline-surface: color-mix(
4752
+ in srgb,
4753
+ var(--ui-accent-solid) 5%,
4754
+ var(--ui-surface-default)
4755
+ );
4756
+ color: var(--_icon-button-text);
4757
+ }
4758
+
4759
+ /* Omitted tone retains the existing accent solid; explicit neutral is additive. */
4760
+ [data-component~="ui-icon-button"][data-ui-icon-button-state~="tone=neutral"][data-v-b66a1661] {
4761
+ --_icon-button-solid-surface: var(--ui-text-primary);
4762
+ --_icon-button-solid-hover-surface: var(--ui-text-primary);
4763
+ --_icon-button-solid-text: var(--ui-surface-default);
4764
+ }
4765
+ [data-component~="ui-icon-button"][data-ui-icon-button-state~="anticipatory"][data-v-b66a1661] {
4706
4766
  position: relative;
4707
4767
  }
4708
- [data-component~="ui-icon-button"][data-ui-icon-button-state~="anticipatory"][data-v-cb9aaf03]::before {
4768
+ [data-component~="ui-icon-button"][data-ui-icon-button-state~="anticipatory"][data-v-b66a1661]::before {
4709
4769
  content: "";
4710
4770
  position: absolute;
4711
4771
  inset: 50% auto auto 50%;
@@ -4719,13 +4779,13 @@ svg[data-v-955cfa65-s] {
4719
4779
  transition: opacity var(--ui-affordance-motion, var(--ui-motion-fast)) var(--ui-motion-ease);
4720
4780
  pointer-events: none;
4721
4781
  }
4722
- [data-component~="ui-icon-button"][data-ui-icon-button-state~="anticipatory"][data-v-cb9aaf03]:disabled::before {
4782
+ [data-component~="ui-icon-button"][data-ui-icon-button-state~="anticipatory"][data-v-b66a1661]:disabled::before {
4723
4783
  opacity: 0;
4724
4784
  }
4725
4785
 
4726
4786
  /* At rest an anticipatory button shows only its guide dot. The icon grows into place when
4727
4787
  proximity, hover, or focus reveals it; the button's hit area and guide remain stable. */
4728
- [data-component~="ui-icon-button"][data-ui-icon-button-state~="anticipatory"] .content[data-v-cb9aaf03] {
4788
+ [data-component~="ui-icon-button"][data-ui-icon-button-state~="anticipatory"] .content[data-v-b66a1661] {
4729
4789
  opacity: 1;
4730
4790
  transform: scale(1);
4731
4791
  transition:
@@ -4733,22 +4793,22 @@ svg[data-v-955cfa65-s] {
4733
4793
  transform calc(var(--ui-motion-fast) * 2) cubic-bezier(0.2, 1.4, 0.35, 1);
4734
4794
  }
4735
4795
  @media (hover: hover) and (pointer: fine) {
4736
- [data-component~="ui-icon-button"][data-ui-icon-button-state~="anticipatory"][data-v-cb9aaf03]:not([data-component~="ui-icon-button"][data-ui-icon-button-state~="variant=solid"], [data-component~="ui-icon-button"][data-ui-icon-button-state~="loading"], [data-component~="ui-icon-button"][data-ui-icon-button-state~="pending"], :disabled, [data-ui-proximity="near"], :hover, :focus-visible) {
4796
+ [data-component~="ui-icon-button"][data-ui-icon-button-state~="anticipatory"][data-v-b66a1661]:not([data-component~="ui-icon-button"][data-ui-icon-button-state~="variant=solid"], [data-component~="ui-icon-button"][data-ui-icon-button-state~="loading"], [data-component~="ui-icon-button"][data-ui-icon-button-state~="pending"], :disabled, [aria-pressed="true"], [data-ui-proximity="near"], :hover, :focus-visible) {
4737
4797
  border-color: transparent;
4738
4798
  background-color: transparent;
4739
4799
  box-shadow: none;
4740
4800
  }
4741
- [data-component~="ui-icon-button"][data-ui-icon-button-state~="anticipatory"]:not([data-component~="ui-icon-button"][data-ui-icon-button-state~="variant=solid"], [data-component~="ui-icon-button"][data-ui-icon-button-state~="loading"], [data-component~="ui-icon-button"][data-ui-icon-button-state~="pending"], :disabled, [data-ui-proximity="near"], :hover, :focus-visible)
4742
- .content[data-v-cb9aaf03] {
4801
+ [data-component~="ui-icon-button"][data-ui-icon-button-state~="anticipatory"]:not([data-component~="ui-icon-button"][data-ui-icon-button-state~="variant=solid"], [data-component~="ui-icon-button"][data-ui-icon-button-state~="loading"], [data-component~="ui-icon-button"][data-ui-icon-button-state~="pending"], :disabled, [aria-pressed="true"], [data-ui-proximity="near"], :hover, :focus-visible)
4802
+ .content[data-v-b66a1661] {
4743
4803
  opacity: 0;
4744
4804
  transform: scale(0.65);
4745
4805
  transition-duration: var(--ui-motion-fast);
4746
4806
  }
4747
4807
  }
4748
- [data-component~="ui-icon-button"][data-ui-icon-button-state~="anticipatory"][data-v-cb9aaf03]:is([data-component~="ui-icon-button"][data-ui-icon-button-state~="variant=solid"], [data-ui-proximity="near"], :hover, :focus-visible)::before {
4808
+ [data-component~="ui-icon-button"][data-ui-icon-button-state~="anticipatory"][data-v-b66a1661]:is([data-component~="ui-icon-button"][data-ui-icon-button-state~="variant=solid"], [aria-pressed="true"], [data-ui-proximity="near"], :hover, :focus-visible)::before {
4749
4809
  opacity: 0;
4750
4810
  }
4751
- [data-component~="ui-icon-button"][data-v-cb9aaf03] {
4811
+ [data-component~="ui-icon-button"][data-v-b66a1661] {
4752
4812
  /* The size prop resolves here; --ui-icon-button-size overrides it on an element. */
4753
4813
  --_size: 2rem;
4754
4814
  appearance: none;
@@ -4774,7 +4834,7 @@ svg[data-v-955cfa65-s] {
4774
4834
  transform var(--ui-motion-fast) var(--ui-motion-ease);
4775
4835
  }
4776
4836
  @media (hover: none), (pointer: coarse) {
4777
- [data-component~="ui-icon-button"][data-ui-icon-button-state~="anticipatory"][data-v-cb9aaf03]::before {
4837
+ [data-component~="ui-icon-button"][data-ui-icon-button-state~="anticipatory"][data-v-b66a1661]::before {
4778
4838
  opacity: 0;
4779
4839
  }
4780
4840
  }
@@ -4782,10 +4842,10 @@ svg[data-v-955cfa65-s] {
4782
4842
  /* A touch target without a bigger button: an invisible hit area, at least the control
4783
4843
  minimum, centred on the button (::before is the anticipatory guide). */
4784
4844
  @media (pointer: coarse) {
4785
- [data-component~="ui-icon-button"][data-v-cb9aaf03] {
4845
+ [data-component~="ui-icon-button"][data-v-b66a1661] {
4786
4846
  position: relative;
4787
4847
  }
4788
- [data-component~="ui-icon-button"][data-v-cb9aaf03]::after {
4848
+ [data-component~="ui-icon-button"][data-v-b66a1661]::after {
4789
4849
  content: "";
4790
4850
  position: absolute;
4791
4851
  inset: 50% auto auto 50%;
@@ -4794,10 +4854,10 @@ svg[data-v-955cfa65-s] {
4794
4854
  transform: translate(-50%, -50%);
4795
4855
  }
4796
4856
  }
4797
- html[data-ui-input-modality="touch"] [data-component~="ui-icon-button"][data-v-cb9aaf03] {
4857
+ html[data-ui-input-modality="touch"] [data-component~="ui-icon-button"][data-v-b66a1661] {
4798
4858
  position: relative;
4799
4859
  }
4800
- html[data-ui-input-modality="touch"] [data-component~="ui-icon-button"][data-v-cb9aaf03]::after {
4860
+ html[data-ui-input-modality="touch"] [data-component~="ui-icon-button"][data-v-b66a1661]::after {
4801
4861
  content: "";
4802
4862
  position: absolute;
4803
4863
  inset: 50% auto auto 50%;
@@ -4805,14 +4865,14 @@ html[data-ui-input-modality="touch"] [data-component~="ui-icon-button"][data-v-c
4805
4865
  block-size: max(100%, var(--ui-control-min-block-size));
4806
4866
  transform: translate(-50%, -50%);
4807
4867
  }
4808
- [data-component~="ui-icon-button"][data-ui-icon-button-state~="size=sm"][data-v-cb9aaf03] {
4868
+ [data-component~="ui-icon-button"][data-ui-icon-button-state~="size=sm"][data-v-b66a1661] {
4809
4869
  --_size: 1.75rem;
4810
4870
  inline-size: var(--ui-icon-button-size, var(--_size));
4811
4871
  block-size: var(--ui-icon-button-size, var(--_size));
4812
4872
  min-inline-size: var(--ui-icon-button-size, var(--_size));
4813
4873
  min-block-size: var(--ui-icon-button-size, var(--_size));
4814
4874
  }
4815
- [data-component~="ui-icon-button"][data-ui-icon-button-state~="size=lg"][data-v-cb9aaf03] {
4875
+ [data-component~="ui-icon-button"][data-ui-icon-button-state~="size=lg"][data-v-b66a1661] {
4816
4876
  --_size: 2.5rem;
4817
4877
  inline-size: var(--ui-icon-button-size, var(--_size));
4818
4878
  block-size: var(--ui-icon-button-size, var(--_size));
@@ -4821,19 +4881,19 @@ html[data-ui-input-modality="touch"] [data-component~="ui-icon-button"][data-v-c
4821
4881
  }
4822
4882
 
4823
4883
  /* A text button's companion uses control geometry; compact icon buttons keep their own density. */
4824
- [data-component~="ui-icon-button"][data-ui-icon-button-state~="matchButton"][data-v-cb9aaf03] {
4884
+ [data-component~="ui-icon-button"][data-ui-icon-button-state~="matchButton"][data-v-b66a1661] {
4825
4885
  --_size: var(--ui-control-size-md);
4826
4886
  block-size: auto;
4827
4887
  align-self: stretch;
4828
4888
  }
4829
- [data-component~="ui-icon-button"][data-ui-icon-button-state~="matchButton"][data-ui-icon-button-state~="size=sm"][data-v-cb9aaf03] {
4889
+ [data-component~="ui-icon-button"][data-ui-icon-button-state~="matchButton"][data-ui-icon-button-state~="size=sm"][data-v-b66a1661] {
4830
4890
  --_size: var(--ui-control-size-sm);
4831
4891
  }
4832
- [data-component~="ui-icon-button"][data-ui-icon-button-state~="matchButton"][data-ui-icon-button-state~="size=lg"][data-v-cb9aaf03] {
4892
+ [data-component~="ui-icon-button"][data-ui-icon-button-state~="matchButton"][data-ui-icon-button-state~="size=lg"][data-v-b66a1661] {
4833
4893
  --_size: var(--ui-control-size-lg);
4834
4894
  }
4835
4895
  @media (pointer: coarse) {
4836
- [data-component~="ui-icon-button"][data-ui-icon-button-state~="matchButton"][data-v-cb9aaf03] {
4896
+ [data-component~="ui-icon-button"][data-ui-icon-button-state~="matchButton"][data-v-b66a1661] {
4837
4897
  inline-size: max(var(--ui-icon-button-size, var(--_size)), var(--ui-control-min-block-size));
4838
4898
  min-inline-size: max(
4839
4899
  var(--ui-icon-button-size, var(--_size)),
@@ -4842,77 +4902,117 @@ html[data-ui-input-modality="touch"] [data-component~="ui-icon-button"][data-v-c
4842
4902
  min-block-size: max(var(--ui-icon-button-size, var(--_size)), var(--ui-control-min-block-size));
4843
4903
  }
4844
4904
  }
4845
- [data-component~="ui-icon-button"][data-ui-icon-button-state~="round"][data-v-cb9aaf03] {
4905
+ [data-component~="ui-icon-button"][data-ui-icon-button-state~="round"][data-v-b66a1661] {
4846
4906
  border-radius: var(--ui-radius-round);
4847
4907
  }
4848
- [data-component~="ui-icon-button"][data-ui-icon-button-state~="variant=outline"][data-v-cb9aaf03] {
4849
- border-color: var(--ui-icon-button-border, var(--ui-control-border, var(--ui-border-strong)));
4850
- background-color: var(--ui-icon-button-outline-surface, var(--ui-surface-default));
4908
+ [data-component~="ui-icon-button"][data-ui-icon-button-state~="variant=outline"][data-v-b66a1661] {
4909
+ border-color: var(
4910
+ --ui-icon-button-border,
4911
+ var(--_icon-button-border, var(--ui-control-border, var(--ui-border-strong)))
4912
+ );
4913
+ background-color: var(
4914
+ --ui-icon-button-outline-surface,
4915
+ var(--_icon-button-outline-surface, var(--ui-surface-default))
4916
+ );
4851
4917
  background-image: var(--ui-raised-highlight);
4852
- color: var(--ui-icon-button-outline-text, var(--ui-text-primary));
4918
+ color: var(--ui-icon-button-outline-text, var(--_icon-button-text, var(--ui-text-primary)));
4853
4919
  box-shadow: var(--ui-raised);
4854
4920
  }
4855
- [data-component~="ui-icon-button"][data-ui-icon-button-state~="variant=solid"][data-v-cb9aaf03] {
4856
- background-color: var(--ui-icon-button-solid-surface, var(--ui-accent-solid));
4921
+ [data-component~="ui-icon-button"][data-ui-icon-button-state~="variant=solid"][data-v-b66a1661] {
4922
+ background-color: var(
4923
+ --ui-icon-button-solid-surface,
4924
+ var(--_icon-button-solid-surface, var(--ui-accent-solid))
4925
+ );
4857
4926
  background-image: var(--ui-raised-highlight);
4858
- color: var(--ui-icon-button-solid-text, var(--ui-text-on-accent));
4927
+ color: var(--ui-icon-button-solid-text, var(--_icon-button-solid-text, var(--ui-text-on-accent)));
4859
4928
  box-shadow: var(
4860
4929
  --ui-icon-button-solid-shadow,
4861
4930
  0 1px 2px color-mix(in srgb, var(--ui-accent-solid) 18%, transparent)
4862
4931
  );
4863
4932
  }
4864
- [data-component~="ui-icon-button"][data-v-cb9aaf03]:hover:enabled:not([aria-disabled="true"]) {
4933
+ [data-component~="ui-icon-button"][data-v-b66a1661]:hover:enabled:not([aria-disabled="true"]) {
4865
4934
  /* Derived from the text colour so the ghost hover shows on any background. */
4866
4935
  background-color: var(
4867
4936
  --ui-icon-button-hover-surface,
4868
4937
  color-mix(in srgb, currentColor 8%, transparent)
4869
4938
  );
4870
- color: var(--ui-icon-button-hover-text, var(--ui-text-primary));
4939
+ color: var(--ui-icon-button-hover-text, var(--_icon-button-text, var(--ui-text-primary)));
4871
4940
  }
4872
- [data-component~="ui-icon-button"][data-ui-icon-button-state~="variant=outline"][data-v-cb9aaf03]:hover:enabled:not([aria-disabled="true"]) {
4941
+ [data-component~="ui-icon-button"][data-ui-icon-button-state~="variant=outline"][data-v-b66a1661]:hover:enabled:not([aria-disabled="true"]) {
4873
4942
  border-color: var(
4874
4943
  --ui-icon-button-hover-border,
4875
- var(--ui-control-border-hover, var(--ui-control-border))
4944
+ var(--_icon-button-hover-border, var(--ui-control-border-hover, var(--ui-control-border)))
4876
4945
  );
4877
4946
  }
4878
- [data-component~="ui-icon-button"][data-ui-icon-button-state~="variant=solid"][data-v-cb9aaf03]:hover:enabled:not([aria-disabled="true"]) {
4879
- background-color: var(--ui-icon-button-solid-hover-surface, var(--ui-accent-hover));
4947
+ [data-component~="ui-icon-button"][data-ui-icon-button-state~="variant=solid"][data-v-b66a1661]:hover:enabled:not([aria-disabled="true"]) {
4948
+ background-color: var(
4949
+ --ui-icon-button-solid-hover-surface,
4950
+ var(--_icon-button-solid-hover-surface, var(--ui-accent-hover))
4951
+ );
4952
+ }
4953
+ [data-component~="ui-icon-button"][data-ui-icon-button-state~="variant=solid"][data-ui-icon-button-state~="tone=accent"][data-v-b66a1661]:hover:enabled:not([aria-disabled="true"]),
4954
+ [data-component~="ui-icon-button"][data-ui-icon-button-state~="variant=solid"][data-ui-icon-button-state~="tone=neutral"][data-v-b66a1661]:hover:enabled:not([aria-disabled="true"]) {
4955
+ color: var(--ui-icon-button-solid-text, var(--_icon-button-solid-text, var(--ui-text-on-accent)));
4880
4956
  }
4881
- [data-component~="ui-icon-button"][data-ui-icon-button-state~="variant=ghost"][aria-expanded="true"][data-v-cb9aaf03]:enabled:not([aria-disabled="true"]) {
4957
+ [data-component~="ui-icon-button"][data-ui-icon-button-state~="variant=ghost"][aria-expanded="true"][data-v-b66a1661]:enabled:not([aria-disabled="true"]) {
4882
4958
  background-color: var(
4883
4959
  --ui-icon-button-active-surface,
4884
4960
  color-mix(in srgb, currentColor 16%, transparent)
4885
4961
  );
4886
- color: var(--ui-icon-button-hover-text, var(--ui-text-primary));
4962
+ color: var(--ui-icon-button-hover-text, var(--_icon-button-text, var(--ui-text-primary)));
4963
+ box-shadow: var(--ui-pressed);
4964
+ }
4965
+
4966
+ /* Native toggle state persists after pointer release, including during loading. */
4967
+ [data-component~="ui-icon-button"][data-ui-icon-button-state~="variant=outline"][aria-pressed="true"][data-v-b66a1661]:enabled {
4968
+ background-color: var(
4969
+ --ui-icon-button-active-surface,
4970
+ color-mix(in srgb, currentColor 12%, var(--ui-surface-default))
4971
+ );
4972
+ background-image: none;
4887
4973
  box-shadow: var(--ui-pressed);
4888
4974
  }
4889
- [data-component~="ui-icon-button"][data-v-cb9aaf03]:active:enabled:not([aria-disabled="true"]) {
4975
+ [data-component~="ui-icon-button"][data-v-b66a1661]:active:enabled:not([aria-disabled="true"]) {
4890
4976
  transform: scale(var(--ui-icon-button-active-scale, 0.96));
4891
4977
  }
4892
- :is([data-component~="ui-icon-button"][data-ui-icon-button-state~="loading"][data-v-cb9aaf03], [data-component~="ui-icon-button"][data-ui-icon-button-state~="pending"][data-v-cb9aaf03]) {
4978
+ :is([data-component~="ui-icon-button"][data-ui-icon-button-state~="loading"][data-v-b66a1661], [data-component~="ui-icon-button"][data-ui-icon-button-state~="pending"][data-v-b66a1661]) {
4893
4979
  cursor: progress;
4894
4980
  }
4895
- .content[data-v-cb9aaf03] {
4981
+ .content[data-v-b66a1661] {
4896
4982
  display: inline-flex;
4897
4983
  align-items: center;
4898
4984
  justify-content: center;
4899
4985
  }
4900
4986
  :is([data-component~="ui-icon-button"][data-ui-icon-button-state~="loading"], [data-component~="ui-icon-button"][data-ui-icon-button-state~="pending"])
4901
- .content[data-v-cb9aaf03] {
4987
+ .content[data-v-b66a1661] {
4902
4988
  display: none;
4903
4989
  }
4904
4990
  @media (prefers-reduced-motion: reduce) {
4905
- [data-component~="ui-icon-button"][data-ui-icon-button-state~="anticipatory"] .content[data-v-cb9aaf03] {
4991
+ [data-component~="ui-icon-button"][data-ui-icon-button-state~="anticipatory"] .content[data-v-b66a1661] {
4906
4992
  transition: none;
4907
4993
  }
4908
4994
  }
4909
- [data-component~="ui-icon-button"][data-v-cb9aaf03]:focus-visible {
4995
+ [data-component~="ui-icon-button"][data-v-b66a1661]:focus-visible {
4910
4996
  outline: none;
4911
4997
  box-shadow: var(--ui-focus-halo);
4912
4998
  }
4999
+ [data-component~="ui-icon-button"][data-ui-icon-button-state~="variant=outline"][aria-pressed="true"][data-v-b66a1661]:enabled:focus-visible {
5000
+ box-shadow:
5001
+ var(--ui-pressed),
5002
+ var(--ui-focus-halo);
5003
+ }
5004
+ @media (forced-colors: active) {
5005
+ [data-component~="ui-icon-button"][data-ui-icon-button-state~="variant=outline"][aria-pressed="true"][data-v-b66a1661]:enabled {
5006
+ outline: var(--ui-focus-width) solid Highlight;
5007
+ outline-offset: calc(-2 * var(--ui-focus-width));
5008
+ }
5009
+ [data-component~="ui-icon-button"][data-ui-icon-button-state~="variant=outline"][aria-pressed="true"][data-v-b66a1661]:enabled:focus-visible {
5010
+ outline-offset: var(--ui-focus-width);
5011
+ }
5012
+ }
4913
5013
 
4914
5014
  /* Disabled is a flat neutral control, independent of the active variant's tone. */
4915
- [data-component~="ui-icon-button"][data-v-cb9aaf03]:disabled {
5015
+ [data-component~="ui-icon-button"][data-v-b66a1661]:disabled {
4916
5016
  border-color: var(--ui-disabled-border);
4917
5017
  background-color: var(--ui-disabled-surface);
4918
5018
  color: var(--ui-disabled-text);
@@ -4922,23 +5022,23 @@ html[data-ui-input-modality="touch"] [data-component~="ui-icon-button"][data-v-c
4922
5022
  box-shadow: none;
4923
5023
  background-image: none;
4924
5024
  }
4925
- [data-component~="ui-icon-button"][data-ui-icon-button-state~="variant=ghost"][data-v-cb9aaf03]:disabled {
5025
+ [data-component~="ui-icon-button"][data-ui-icon-button-state~="variant=ghost"][data-v-b66a1661]:disabled {
4926
5026
  border-color: transparent;
4927
5027
  }
4928
- [data-component~="ui-icon-button"][data-v-cb9aaf03] {
5028
+ [data-component~="ui-icon-button"][data-v-b66a1661] {
4929
5029
  --_icon-button-icon-default: var(--ui-icon-size-md);
4930
5030
  /* A slotted ui-icon is its own component, out of reach of the svg rule below; these are its
4931
5031
  defaults, which its own --ui-icon-* hooks still override. */
4932
5032
  --_ui-default-icon-size: var(--_ui-icon-button-icon-size, var(--_icon-button-icon-default));
4933
5033
  --_ui-default-icon-stroke-width: var(--_ui-icon-button-icon-stroke-width, 1.75);
4934
5034
  }
4935
- [data-component~="ui-icon-button"][data-ui-icon-button-state~="size=sm"][data-v-cb9aaf03] {
5035
+ [data-component~="ui-icon-button"][data-ui-icon-button-state~="size=sm"][data-v-b66a1661] {
4936
5036
  --_icon-button-icon-default: var(--ui-icon-size-sm);
4937
5037
  }
4938
- [data-component~="ui-icon-button"][data-ui-icon-button-state~="size=lg"][data-v-cb9aaf03] {
5038
+ [data-component~="ui-icon-button"][data-ui-icon-button-state~="size=lg"][data-v-b66a1661] {
4939
5039
  --_icon-button-icon-default: var(--ui-icon-size-lg);
4940
5040
  }
4941
- svg[data-v-cb9aaf03-s] {
5041
+ svg[data-v-b66a1661-s] {
4942
5042
  inline-size: var(--_ui-icon-button-icon-size, var(--_icon-button-icon-default));
4943
5043
  block-size: var(--_ui-icon-button-icon-size, var(--_icon-button-icon-default));
4944
5044
  flex-shrink: 0;
@@ -4946,7 +5046,7 @@ svg[data-v-cb9aaf03-s] {
4946
5046
  }
4947
5047
 
4948
5048
  /* A component that sets its display still honours the hidden attribute on its root. */
4949
- [data-component~="ui-icon-button"][hidden][data-v-cb9aaf03] {
5049
+ [data-component~="ui-icon-button"][hidden][data-v-b66a1661] {
4950
5050
  display: none;
4951
5051
  }
4952
5052