@threadlabs/looma 0.26.3 → 0.26.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.
- package/components/ui-badge/ui-badge.html +41 -4
- package/components/ui-button/ui-button.html +50 -5
- package/components/ui-callout/ui-callout.html +2 -1
- package/components/ui-icon-button/ui-icon-button.html +35 -7
- package/components/ui-input-group/ui-input-group.html +9 -0
- package/components/ui-toast/ui-toast.html +13 -7
- package/components/ui-toast-region/ui-toast-region.html +18 -7
- package/dist/index.js +1 -1
- package/package.json +1 -1
- package/styles/ui-badge.css +40 -1
- package/styles/ui-button.css +53 -5
- package/styles/ui-callout.css +2 -1
- package/styles/ui-icon-button.css +35 -7
- package/styles/ui-input-group.css +6 -0
- package/styles/ui-toast-region.css +18 -7
- package/styles/ui-toast.css +13 -7
- package/vanilla/UiBadge.d.ts +1 -1
- package/vanilla/UiBadge.js +1 -1
- package/vanilla/UiButton.js +47 -21
- package/vanilla/UiInputGroup.d.ts +1 -0
- package/vanilla/UiInputGroup.js +4 -4
- package/vue/UiBadge.d.ts +3 -3
- package/vue/UiBadge.vue +79 -6
- package/vue/UiButton.d.ts +6 -2
- package/vue/UiButton.vue +56 -6
- package/vue/UiCallout.vue +4 -2
- package/vue/UiIconButton.vue +40 -7
- package/vue/UiInputGroup.d.ts +9 -0
- package/vue/UiInputGroup.vue +29 -1
- package/vue/UiToast.vue +16 -8
- package/vue/UiToastRegion.vue +18 -7
- package/vue/chunks/UiBadge.js +3 -2
- package/vue/chunks/UiButton.js +15 -5
- package/vue/chunks/UiCallout.js +1 -1
- package/vue/chunks/UiIconButton.js +1 -1
- package/vue/chunks/UiInputGroup.js +29 -4
- package/vue/chunks/UiToast.js +1 -1
- package/vue/chunks/UiToastRegion.js +1 -1
- package/vue/components.css +435 -263
package/vue/components.css
CHANGED
|
@@ -312,6 +312,10 @@ svg[data-v-abaeb064] {
|
|
|
312
312
|
syntax: "*";
|
|
313
313
|
inherits: false;
|
|
314
314
|
}
|
|
315
|
+
@property --ui-badge-circle-opacity {
|
|
316
|
+
syntax: "*";
|
|
317
|
+
inherits: false;
|
|
318
|
+
}
|
|
315
319
|
@property --ui-badge-dot-size {
|
|
316
320
|
syntax: "*";
|
|
317
321
|
inherits: false;
|
|
@@ -356,7 +360,7 @@ svg[data-v-abaeb064] {
|
|
|
356
360
|
syntax: "*";
|
|
357
361
|
inherits: false;
|
|
358
362
|
}
|
|
359
|
-
[data-component~="ui-badge"][data-v-
|
|
363
|
+
[data-component~="ui-badge"][data-v-57826cf9] {
|
|
360
364
|
--_badge-surface: color-mix(in srgb, var(--ui-surface-subtle) 80%, var(--ui-surface-default));
|
|
361
365
|
--_badge-text: var(--ui-text-secondary);
|
|
362
366
|
/* Sit between the soft fill and its stronger theme ink. */
|
|
@@ -402,27 +406,27 @@ svg[data-v-abaeb064] {
|
|
|
402
406
|
|
|
403
407
|
/* A constrained badge keeps its surface intact and ellipsizes only its label. The full
|
|
404
408
|
text stays in the DOM for accessible names and consumers' selected values. */
|
|
405
|
-
.label[data-v-
|
|
409
|
+
.label[data-v-57826cf9] {
|
|
406
410
|
display: block;
|
|
407
411
|
min-inline-size: 0;
|
|
408
412
|
overflow: hidden;
|
|
409
413
|
text-overflow: ellipsis;
|
|
410
414
|
}
|
|
411
|
-
.label[data-v-
|
|
415
|
+
.label[data-v-57826cf9]:empty {
|
|
412
416
|
display: none;
|
|
413
417
|
}
|
|
414
418
|
|
|
415
419
|
/* Icon content has its own flex item so label ellipsis never clips its strokes. */
|
|
416
|
-
.icon[data-v-
|
|
420
|
+
.icon[data-v-57826cf9] {
|
|
417
421
|
display: inline-flex;
|
|
418
422
|
align-items: center;
|
|
419
423
|
justify-content: center;
|
|
420
424
|
flex: none;
|
|
421
425
|
}
|
|
422
|
-
.icon[data-v-
|
|
426
|
+
.icon[data-v-57826cf9]:empty {
|
|
423
427
|
display: none;
|
|
424
428
|
}
|
|
425
|
-
.icon svg[data-v-
|
|
429
|
+
.icon svg[data-v-57826cf9-s] {
|
|
426
430
|
display: block;
|
|
427
431
|
inline-size: 1em;
|
|
428
432
|
block-size: 1em;
|
|
@@ -430,39 +434,39 @@ svg[data-v-abaeb064] {
|
|
|
430
434
|
}
|
|
431
435
|
|
|
432
436
|
/* Ordinary icon-plus-text children keep inline ellipsis, with explicit glyph spacing. */
|
|
433
|
-
.label svg[data-v-
|
|
437
|
+
.label svg[data-v-57826cf9-s] {
|
|
434
438
|
inline-size: 1em;
|
|
435
439
|
block-size: 1em;
|
|
436
440
|
vertical-align: middle;
|
|
437
441
|
margin-inline-end: var(--ui-space-1);
|
|
438
442
|
}
|
|
439
|
-
.label[data-v-
|
|
443
|
+
.label[data-v-57826cf9]:has(svg) {
|
|
440
444
|
text-box-trim: none;
|
|
441
445
|
}
|
|
442
446
|
|
|
443
447
|
/* Center the capital/baseline text box, while clipping only inline overflow for ellipsis.
|
|
444
448
|
Vertical ink remains visible so trimming never cuts off ascenders or descenders. */
|
|
445
449
|
@supports (text-box-trim: trim-both) {
|
|
446
|
-
[data-component~="ui-badge"][data-v-
|
|
450
|
+
[data-component~="ui-badge"][data-v-57826cf9] {
|
|
447
451
|
display: inline-block;
|
|
448
452
|
min-block-size: var(--ui-badge-min-block-size, 1.5rem);
|
|
449
453
|
text-align: center;
|
|
450
454
|
align-content: center;
|
|
451
455
|
text-box-trim: none;
|
|
452
456
|
}
|
|
453
|
-
[data-component~="ui-badge"][data-v-
|
|
454
|
-
[data-component~="ui-badge"][data-v-
|
|
457
|
+
[data-component~="ui-badge"][data-v-57826cf9]:has(.icon:not(:empty)),
|
|
458
|
+
[data-component~="ui-badge"][data-v-57826cf9]:has(.label svg) {
|
|
455
459
|
display: inline-flex;
|
|
456
460
|
text-box-trim: none;
|
|
457
461
|
}
|
|
458
|
-
.label[data-v-
|
|
462
|
+
.label[data-v-57826cf9]:not(:has(svg)) {
|
|
459
463
|
text-box-trim: trim-both;
|
|
460
464
|
text-box-edge: cap alphabetic;
|
|
461
465
|
overflow-x: clip;
|
|
462
466
|
overflow-y: visible;
|
|
463
467
|
}
|
|
464
468
|
}
|
|
465
|
-
[data-component~="ui-badge"][data-ui-badge-state~="size=xs"][data-v-
|
|
469
|
+
[data-component~="ui-badge"][data-ui-badge-state~="size=xs"][data-v-57826cf9] {
|
|
466
470
|
box-sizing: border-box;
|
|
467
471
|
min-inline-size: 1rem;
|
|
468
472
|
min-block-size: var(--ui-badge-min-block-size, 1rem);
|
|
@@ -470,52 +474,56 @@ svg[data-v-abaeb064] {
|
|
|
470
474
|
font-size: var(--ui-badge-font-size, var(--ui-font-size-2xs));
|
|
471
475
|
line-height: var(--ui-badge-line-height, 1);
|
|
472
476
|
}
|
|
473
|
-
[data-component~="ui-badge"][data-ui-badge-state~="
|
|
477
|
+
[data-component~="ui-badge"][data-ui-badge-state~="size=sm"][data-v-57826cf9] {
|
|
478
|
+
font-size: var(--ui-badge-font-size, var(--ui-font-size-2xs));
|
|
479
|
+
line-height: var(--ui-badge-line-height, 1);
|
|
480
|
+
}
|
|
481
|
+
[data-component~="ui-badge"][data-ui-badge-state~="tone=accent"][data-v-57826cf9] {
|
|
474
482
|
--_badge-surface: var(--ui-accent-strong-surface, var(--ui-accent-solid));
|
|
475
483
|
--_badge-border: var(--ui-accent-strong-surface, var(--ui-accent-solid));
|
|
476
484
|
--_badge-text: var(--ui-accent-on-strong, var(--ui-text-on-accent));
|
|
477
485
|
}
|
|
478
|
-
[data-component~="ui-badge"][data-ui-badge-state~="tone=danger"][data-v-
|
|
486
|
+
[data-component~="ui-badge"][data-ui-badge-state~="tone=danger"][data-v-57826cf9] {
|
|
479
487
|
--_badge-surface: var(--ui-danger-strong-surface, var(--ui-danger-solid));
|
|
480
488
|
--_badge-border: var(--ui-danger-strong-surface, var(--ui-danger-solid));
|
|
481
489
|
--_badge-text: var(--ui-danger-on-strong, var(--ui-text-on-accent));
|
|
482
490
|
}
|
|
483
|
-
[data-component~="ui-badge"][data-ui-badge-state~="tone=success"][data-v-
|
|
491
|
+
[data-component~="ui-badge"][data-ui-badge-state~="tone=success"][data-v-57826cf9] {
|
|
484
492
|
--_badge-surface: var(--ui-success-strong-surface, var(--ui-success-solid));
|
|
485
493
|
--_badge-border: var(--ui-success-strong-surface, var(--ui-success-solid));
|
|
486
494
|
--_badge-text: var(--ui-success-on-strong, var(--ui-text-on-accent));
|
|
487
495
|
}
|
|
488
|
-
[data-component~="ui-badge"][data-ui-badge-state~="tone=warning"][data-v-
|
|
496
|
+
[data-component~="ui-badge"][data-ui-badge-state~="tone=warning"][data-v-57826cf9] {
|
|
489
497
|
--_badge-surface: var(--ui-warning-strong-surface, var(--ui-warning-solid));
|
|
490
498
|
--_badge-border: var(--ui-warning-strong-surface, var(--ui-warning-solid));
|
|
491
499
|
--_badge-text: var(--ui-warning-on-strong, var(--ui-text-on-accent));
|
|
492
500
|
}
|
|
493
|
-
[data-component~="ui-badge"][data-ui-badge-state~="tone=info"][data-v-
|
|
501
|
+
[data-component~="ui-badge"][data-ui-badge-state~="tone=info"][data-v-57826cf9] {
|
|
494
502
|
--_badge-surface: var(--ui-info-strong-surface, var(--ui-info-solid));
|
|
495
503
|
--_badge-border: var(--ui-info-strong-surface, var(--ui-info-solid));
|
|
496
504
|
--_badge-text: var(--ui-info-on-strong, var(--ui-text-on-accent));
|
|
497
505
|
}
|
|
498
|
-
[data-component~="ui-badge"][data-ui-badge-state~="variant=subtle"][data-ui-badge-state~="tone=accent"][data-v-
|
|
506
|
+
[data-component~="ui-badge"][data-ui-badge-state~="variant=subtle"][data-ui-badge-state~="tone=accent"][data-v-57826cf9] {
|
|
499
507
|
--_badge-surface: color-mix(in srgb, var(--ui-accent-solid) 19%, var(--ui-surface-default));
|
|
500
508
|
--_badge-border: color-mix(in srgb, var(--ui-accent-solid) 25%, var(--ui-surface-default));
|
|
501
509
|
--_badge-text: var(--ui-accent-subtle-text, var(--ui-accent-solid));
|
|
502
510
|
}
|
|
503
|
-
[data-component~="ui-badge"][data-ui-badge-state~="variant=subtle"][data-ui-badge-state~="tone=danger"][data-v-
|
|
511
|
+
[data-component~="ui-badge"][data-ui-badge-state~="variant=subtle"][data-ui-badge-state~="tone=danger"][data-v-57826cf9] {
|
|
504
512
|
--_badge-surface: color-mix(in srgb, var(--ui-danger-solid) 19%, var(--ui-surface-default));
|
|
505
513
|
--_badge-border: color-mix(in srgb, var(--ui-danger-solid) 25%, var(--ui-surface-default));
|
|
506
514
|
--_badge-text: var(--ui-danger-subtle-text, var(--ui-danger-solid));
|
|
507
515
|
}
|
|
508
|
-
[data-component~="ui-badge"][data-ui-badge-state~="variant=subtle"][data-ui-badge-state~="tone=success"][data-v-
|
|
516
|
+
[data-component~="ui-badge"][data-ui-badge-state~="variant=subtle"][data-ui-badge-state~="tone=success"][data-v-57826cf9] {
|
|
509
517
|
--_badge-surface: color-mix(in srgb, var(--ui-success-solid) 19%, var(--ui-surface-default));
|
|
510
518
|
--_badge-border: color-mix(in srgb, var(--ui-success-solid) 25%, var(--ui-surface-default));
|
|
511
519
|
--_badge-text: var(--ui-success-subtle-text, var(--ui-success-solid));
|
|
512
520
|
}
|
|
513
|
-
[data-component~="ui-badge"][data-ui-badge-state~="variant=subtle"][data-ui-badge-state~="tone=warning"][data-v-
|
|
521
|
+
[data-component~="ui-badge"][data-ui-badge-state~="variant=subtle"][data-ui-badge-state~="tone=warning"][data-v-57826cf9] {
|
|
514
522
|
--_badge-surface: color-mix(in srgb, var(--ui-warning-solid) 19%, var(--ui-surface-default));
|
|
515
523
|
--_badge-border: color-mix(in srgb, var(--ui-warning-solid) 25%, var(--ui-surface-default));
|
|
516
524
|
--_badge-text: var(--ui-warning-subtle-text, var(--ui-warning-solid));
|
|
517
525
|
}
|
|
518
|
-
[data-component~="ui-badge"][data-ui-badge-state~="variant=subtle"][data-ui-badge-state~="tone=info"][data-v-
|
|
526
|
+
[data-component~="ui-badge"][data-ui-badge-state~="variant=subtle"][data-ui-badge-state~="tone=info"][data-v-57826cf9] {
|
|
519
527
|
--_badge-surface: color-mix(in srgb, var(--ui-info-solid) 19%, var(--ui-surface-default));
|
|
520
528
|
--_badge-border: color-mix(in srgb, var(--ui-info-solid) 25%, var(--ui-surface-default));
|
|
521
529
|
--_badge-text: var(--ui-info-subtle-text, var(--ui-info-solid));
|
|
@@ -523,7 +531,7 @@ svg[data-v-abaeb064] {
|
|
|
523
531
|
|
|
524
532
|
/* A solid colour fills with the ink. Its text is the page surface, mixed at 0% only so that it too is
|
|
525
533
|
invalid while the hook is unset. */
|
|
526
|
-
[data-component~="ui-badge"][data-ui-badge-state~="variant=solid"][data-v-
|
|
534
|
+
[data-component~="ui-badge"][data-ui-badge-state~="variant=solid"][data-v-57826cf9] {
|
|
527
535
|
--_badge-color-surface: var(--_badge-color-ink);
|
|
528
536
|
--_badge-color-border: var(--_badge-color-ink);
|
|
529
537
|
--_badge-color-text: color-mix(in oklab, var(--_ui-badge-color) 0%, var(--ui-surface-default));
|
|
@@ -531,7 +539,7 @@ svg[data-v-abaeb064] {
|
|
|
531
539
|
|
|
532
540
|
/* A translucent inverse surface picks up its filled control's tone. Deepen the tone ink
|
|
533
541
|
toward the theme text to retain contrast against that composed surface. */
|
|
534
|
-
[data-component~="ui-badge"][data-ui-badge-state~="variant=inverse"][data-v-
|
|
542
|
+
[data-component~="ui-badge"][data-ui-badge-state~="variant=inverse"][data-v-57826cf9] {
|
|
535
543
|
--_badge-color-surface: color-mix(
|
|
536
544
|
in srgb,
|
|
537
545
|
color-mix(in oklab, var(--_ui-badge-color) 0%, var(--ui-surface-default)) 88%,
|
|
@@ -554,16 +562,81 @@ svg[data-v-abaeb064] {
|
|
|
554
562
|
/* Paint each translucent layer once, including the border, without a bright double-painted ring. */
|
|
555
563
|
background-clip: padding-box;
|
|
556
564
|
}
|
|
557
|
-
|
|
558
|
-
|
|
565
|
+
|
|
566
|
+
/* A circular count has a tone-tinted surface, a separate lighter rim and readable tone ink.
|
|
567
|
+
Dark controls retain a shaded surface and theme ink with a quieter rim. */
|
|
568
|
+
[data-component~="ui-badge"][data-ui-badge-state~="variant=inverse"][data-ui-badge-state~="shape=circle"][data-v-57826cf9] {
|
|
569
|
+
--_badge-color-surface: light-dark(
|
|
570
|
+
color-mix(
|
|
571
|
+
in srgb,
|
|
572
|
+
color-mix(in oklab, var(--_ui-badge-color) 0%, var(--ui-surface-default)) var(
|
|
573
|
+
--ui-badge-circle-opacity,
|
|
574
|
+
66%
|
|
575
|
+
),
|
|
576
|
+
transparent
|
|
577
|
+
),
|
|
578
|
+
color-mix(
|
|
579
|
+
in srgb,
|
|
580
|
+
color-mix(in oklab, var(--_ui-badge-color) 0%, var(--ui-surface-default)) var(
|
|
581
|
+
--ui-badge-circle-opacity,
|
|
582
|
+
56%
|
|
583
|
+
),
|
|
584
|
+
transparent
|
|
585
|
+
)
|
|
586
|
+
);
|
|
587
|
+
--_badge-color-border: light-dark(
|
|
588
|
+
color-mix(
|
|
589
|
+
in srgb,
|
|
590
|
+
color-mix(in oklab, var(--_ui-badge-color) 0%, var(--ui-surface-default)) 88%,
|
|
591
|
+
transparent
|
|
592
|
+
),
|
|
593
|
+
color-mix(
|
|
594
|
+
in srgb,
|
|
595
|
+
color-mix(in oklab, var(--_ui-badge-color) 0%, var(--ui-surface-default)) 44%,
|
|
596
|
+
transparent
|
|
597
|
+
)
|
|
598
|
+
);
|
|
599
|
+
--_badge-color-text: light-dark(
|
|
600
|
+
color-mix(in srgb, var(--_badge-color-ink) 65%, var(--ui-text-primary)),
|
|
601
|
+
color-mix(in oklab, var(--_ui-badge-color) 0%, var(--ui-text-primary))
|
|
602
|
+
);
|
|
603
|
+
--_badge-count-surface: light-dark(
|
|
604
|
+
color-mix(in srgb, var(--_badge-text) var(--ui-badge-circle-opacity, 66%), transparent),
|
|
605
|
+
color-mix(in srgb, var(--_badge-text) var(--ui-badge-circle-opacity, 56%), transparent)
|
|
606
|
+
);
|
|
607
|
+
--_badge-outline-surface: var(
|
|
608
|
+
--ui-badge-surface,
|
|
609
|
+
var(--_badge-color-surface, var(--_badge-count-surface))
|
|
610
|
+
);
|
|
611
|
+
border-color: var(
|
|
612
|
+
--ui-badge-border,
|
|
613
|
+
var(
|
|
614
|
+
--_badge-color-border,
|
|
615
|
+
light-dark(
|
|
616
|
+
color-mix(in srgb, var(--_badge-text) 88%, transparent),
|
|
617
|
+
color-mix(in srgb, var(--_badge-text) 44%, transparent)
|
|
618
|
+
)
|
|
619
|
+
)
|
|
620
|
+
);
|
|
621
|
+
color: var(
|
|
622
|
+
--ui-badge-text,
|
|
623
|
+
var(
|
|
624
|
+
--_badge-color-text,
|
|
625
|
+
light-dark(
|
|
626
|
+
color-mix(in srgb, var(--_badge-surface) 65%, var(--ui-text-primary)),
|
|
627
|
+
var(--ui-text-primary)
|
|
628
|
+
)
|
|
629
|
+
)
|
|
630
|
+
);
|
|
631
|
+
box-shadow: 0 1px 1px light-dark(rgb(0 0 0 / 0.08), rgb(0 0 0 / 0.12));
|
|
559
632
|
}
|
|
560
633
|
|
|
561
634
|
/* Neutral reverses a subtle surface/ink pair rather than a strong tone. Keep its original
|
|
562
635
|
surface ink: moving it toward dark-theme primary text would reduce overlay contrast. */
|
|
563
|
-
[data-component~="ui-badge"][data-ui-badge-state~="variant=inverse"][data-ui-badge-state~="tone=neutral"][data-v-
|
|
636
|
+
[data-component~="ui-badge"][data-ui-badge-state~="variant=inverse"][data-ui-badge-state~="tone=neutral"][data-v-57826cf9] {
|
|
564
637
|
color: var(--ui-badge-text, var(--_badge-color-text, var(--_badge-surface)));
|
|
565
638
|
}
|
|
566
|
-
[data-component~="ui-badge"][data-ui-badge-state~="variant=outline"][data-v-
|
|
639
|
+
[data-component~="ui-badge"][data-ui-badge-state~="variant=outline"][data-v-57826cf9] {
|
|
567
640
|
--_badge-surface: var(--ui-surface-default);
|
|
568
641
|
--_badge-border: var(--ui-border-strong);
|
|
569
642
|
--_badge-text: var(--ui-text-secondary);
|
|
@@ -571,29 +644,29 @@ svg[data-v-abaeb064] {
|
|
|
571
644
|
--_badge-color-surface: initial;
|
|
572
645
|
--_badge-color-border: var(--_badge-color-ink);
|
|
573
646
|
}
|
|
574
|
-
[data-component~="ui-badge"][data-ui-badge-state~="variant=outline"][data-ui-badge-state~="tone=accent"][data-v-
|
|
647
|
+
[data-component~="ui-badge"][data-ui-badge-state~="variant=outline"][data-ui-badge-state~="tone=accent"][data-v-57826cf9] {
|
|
575
648
|
--_badge-border: var(--ui-accent-solid);
|
|
576
649
|
--_badge-text: var(--ui-accent-subtle-text, var(--ui-accent-solid));
|
|
577
650
|
}
|
|
578
|
-
[data-component~="ui-badge"][data-ui-badge-state~="variant=outline"][data-ui-badge-state~="tone=danger"][data-v-
|
|
651
|
+
[data-component~="ui-badge"][data-ui-badge-state~="variant=outline"][data-ui-badge-state~="tone=danger"][data-v-57826cf9] {
|
|
579
652
|
--_badge-border: var(--ui-danger-solid);
|
|
580
653
|
--_badge-text: var(--ui-danger-subtle-text, var(--ui-danger-solid));
|
|
581
654
|
}
|
|
582
|
-
[data-component~="ui-badge"][data-ui-badge-state~="variant=outline"][data-ui-badge-state~="tone=success"][data-v-
|
|
655
|
+
[data-component~="ui-badge"][data-ui-badge-state~="variant=outline"][data-ui-badge-state~="tone=success"][data-v-57826cf9] {
|
|
583
656
|
--_badge-border: var(--ui-success-solid);
|
|
584
657
|
--_badge-text: var(--ui-success-subtle-text, var(--ui-success-solid));
|
|
585
658
|
}
|
|
586
|
-
[data-component~="ui-badge"][data-ui-badge-state~="variant=outline"][data-ui-badge-state~="tone=warning"][data-v-
|
|
659
|
+
[data-component~="ui-badge"][data-ui-badge-state~="variant=outline"][data-ui-badge-state~="tone=warning"][data-v-57826cf9] {
|
|
587
660
|
--_badge-border: var(--ui-warning-solid);
|
|
588
661
|
--_badge-text: var(--ui-warning-subtle-text, var(--ui-warning-solid));
|
|
589
662
|
}
|
|
590
|
-
[data-component~="ui-badge"][data-ui-badge-state~="variant=outline"][data-ui-badge-state~="tone=info"][data-v-
|
|
663
|
+
[data-component~="ui-badge"][data-ui-badge-state~="variant=outline"][data-ui-badge-state~="tone=info"][data-v-57826cf9] {
|
|
591
664
|
--_badge-border: var(--ui-info-solid);
|
|
592
665
|
--_badge-text: var(--ui-info-subtle-text, var(--ui-info-solid));
|
|
593
666
|
}
|
|
594
667
|
|
|
595
668
|
/* An icon mark keeps the existing tone recipe and follows the global spacing and radius. */
|
|
596
|
-
[data-component~="ui-badge"][data-ui-badge-state~="shape=square"][data-v-
|
|
669
|
+
[data-component~="ui-badge"][data-ui-badge-state~="shape=square"][data-v-57826cf9] {
|
|
597
670
|
--_badge-square-size: var(--ui-badge-square-size, calc(var(--ui-space-4) * 2));
|
|
598
671
|
display: inline-flex;
|
|
599
672
|
box-sizing: border-box;
|
|
@@ -606,29 +679,29 @@ svg[data-v-abaeb064] {
|
|
|
606
679
|
border-radius: var(--ui-radius-md);
|
|
607
680
|
text-box-trim: none;
|
|
608
681
|
}
|
|
609
|
-
[data-component~="ui-badge"][data-ui-badge-state~="shape=square"][data-ui-badge-state~="size=xs"][data-v-
|
|
682
|
+
[data-component~="ui-badge"][data-ui-badge-state~="shape=square"][data-ui-badge-state~="size=xs"][data-v-57826cf9] {
|
|
610
683
|
--_badge-square-size: var(--ui-badge-square-size, calc(var(--ui-space-3) * 2));
|
|
611
684
|
}
|
|
612
|
-
[data-component~="ui-badge"][data-ui-badge-state~="shape=square"][data-ui-badge-state~="size=lg"][data-v-
|
|
685
|
+
[data-component~="ui-badge"][data-ui-badge-state~="shape=square"][data-ui-badge-state~="size=lg"][data-v-57826cf9] {
|
|
613
686
|
--_badge-square-size: var(
|
|
614
687
|
--ui-badge-square-size,
|
|
615
688
|
calc(var(--ui-space-4) * 2 + var(--ui-space-2))
|
|
616
689
|
);
|
|
617
690
|
}
|
|
618
|
-
[data-component~="ui-badge"][data-ui-badge-state~="shape=square"] .label[data-v-
|
|
691
|
+
[data-component~="ui-badge"][data-ui-badge-state~="shape=square"] .label[data-v-57826cf9] {
|
|
619
692
|
display: inline-flex;
|
|
620
693
|
align-items: center;
|
|
621
694
|
justify-content: center;
|
|
622
695
|
}
|
|
623
|
-
[data-component~="ui-badge"][data-ui-badge-state~="shape=square"] .label svg[data-v-
|
|
696
|
+
[data-component~="ui-badge"][data-ui-badge-state~="shape=square"] .label svg[data-v-57826cf9-s] {
|
|
624
697
|
margin-inline-end: 0;
|
|
625
698
|
}
|
|
626
|
-
[data-component~="ui-badge"][data-ui-badge-state~="shape=square"] .label[data-v-
|
|
699
|
+
[data-component~="ui-badge"][data-ui-badge-state~="shape=square"] .label[data-v-57826cf9]:empty {
|
|
627
700
|
display: none;
|
|
628
701
|
}
|
|
629
702
|
|
|
630
703
|
/* A visible glyph needs fixed geometry, unlike a content-sized pill or a hidden-label dot. */
|
|
631
|
-
[data-component~="ui-badge"][data-ui-badge-state~="shape=circle"][data-v-
|
|
704
|
+
[data-component~="ui-badge"][data-ui-badge-state~="shape=circle"][data-v-57826cf9] {
|
|
632
705
|
--_badge-circle-size: var(--ui-badge-circle-size, calc(var(--ui-space-3) * 2));
|
|
633
706
|
display: inline-flex;
|
|
634
707
|
flex: none;
|
|
@@ -640,31 +713,31 @@ svg[data-v-abaeb064] {
|
|
|
640
713
|
border-radius: var(--ui-radius-round);
|
|
641
714
|
text-box-trim: none;
|
|
642
715
|
}
|
|
643
|
-
[data-component~="ui-badge"][data-ui-badge-state~="shape=circle"][data-ui-badge-state~="size=xs"][data-v-
|
|
716
|
+
[data-component~="ui-badge"][data-ui-badge-state~="shape=circle"][data-ui-badge-state~="size=xs"][data-v-57826cf9] {
|
|
644
717
|
--_badge-circle-size: var(--ui-badge-circle-size, var(--ui-space-4));
|
|
645
718
|
}
|
|
646
|
-
[data-component~="ui-badge"][data-ui-badge-state~="shape=circle"][data-ui-badge-state~="size=lg"][data-v-
|
|
719
|
+
[data-component~="ui-badge"][data-ui-badge-state~="shape=circle"][data-ui-badge-state~="size=lg"][data-v-57826cf9] {
|
|
647
720
|
--_badge-circle-size: var(--ui-badge-circle-size, calc(var(--ui-space-4) * 2));
|
|
648
721
|
}
|
|
649
|
-
[data-component~="ui-badge"][data-ui-badge-state~="shape=circle"] .label[data-v-
|
|
722
|
+
[data-component~="ui-badge"][data-ui-badge-state~="shape=circle"] .label[data-v-57826cf9] {
|
|
650
723
|
display: inline-flex;
|
|
651
724
|
align-items: center;
|
|
652
725
|
justify-content: center;
|
|
653
726
|
line-height: 1;
|
|
654
727
|
text-box-trim: none;
|
|
655
728
|
}
|
|
656
|
-
[data-component~="ui-badge"][data-ui-badge-state~="shape=circle"] .label svg[data-v-
|
|
729
|
+
[data-component~="ui-badge"][data-ui-badge-state~="shape=circle"] .label svg[data-v-57826cf9-s] {
|
|
657
730
|
margin-inline-end: 0;
|
|
658
731
|
}
|
|
659
|
-
[data-component~="ui-badge"][data-ui-badge-state~="shape=circle"] .label[data-v-
|
|
732
|
+
[data-component~="ui-badge"][data-ui-badge-state~="shape=circle"] .label[data-v-57826cf9]:empty {
|
|
660
733
|
display: none;
|
|
661
734
|
}
|
|
662
735
|
|
|
663
736
|
/* Center capital and numeral ink, rather than the font's ascent/descent line box.
|
|
664
737
|
Icon labels retain flex geometry; untrimmed browsers keep that fallback too. */
|
|
665
738
|
@supports (text-box-trim: trim-both) {
|
|
666
|
-
[data-component~="ui-badge"][data-ui-badge-state~="shape=circle"] .label[data-v-
|
|
667
|
-
[data-component~="ui-badge"][data-ui-badge-state~="shape=square"] .label[data-v-
|
|
739
|
+
[data-component~="ui-badge"][data-ui-badge-state~="shape=circle"] .label[data-v-57826cf9]:not(:has(svg)),
|
|
740
|
+
[data-component~="ui-badge"][data-ui-badge-state~="shape=square"] .label[data-v-57826cf9]:not(:has(svg)) {
|
|
668
741
|
display: block;
|
|
669
742
|
text-box-trim: trim-both;
|
|
670
743
|
text-box-edge: cap alphabetic;
|
|
@@ -673,7 +746,7 @@ svg[data-v-abaeb064] {
|
|
|
673
746
|
}
|
|
674
747
|
|
|
675
748
|
/* A dot uses the badge's tone recipe; only its silhouette and visible label change. */
|
|
676
|
-
[data-component~="ui-badge"][data-ui-badge-state~="shape=dot"][data-v-
|
|
749
|
+
[data-component~="ui-badge"][data-ui-badge-state~="shape=dot"][data-v-57826cf9] {
|
|
677
750
|
position: relative;
|
|
678
751
|
box-sizing: border-box;
|
|
679
752
|
flex: none;
|
|
@@ -685,7 +758,7 @@ svg[data-v-abaeb064] {
|
|
|
685
758
|
border-radius: var(--ui-radius-round);
|
|
686
759
|
text-box-trim: none;
|
|
687
760
|
}
|
|
688
|
-
[data-component~="ui-badge"][data-ui-badge-state~="shape=dot"] .label[data-v-
|
|
761
|
+
[data-component~="ui-badge"][data-ui-badge-state~="shape=dot"] .label[data-v-57826cf9] {
|
|
689
762
|
position: absolute;
|
|
690
763
|
inline-size: 1px;
|
|
691
764
|
block-size: 1px;
|
|
@@ -696,7 +769,7 @@ svg[data-v-abaeb064] {
|
|
|
696
769
|
|
|
697
770
|
/* The clipped point needs an inset surface over an outer border-colour shape: a native border
|
|
698
771
|
has no diagonal edge to follow. Keep this edge for every tag variant. */
|
|
699
|
-
[data-component~="ui-badge"][data-ui-badge-state~="shape=tag"][data-v-
|
|
772
|
+
[data-component~="ui-badge"][data-ui-badge-state~="shape=tag"][data-v-57826cf9] {
|
|
700
773
|
--_badge-point: var(--ui-badge-point, var(--ui-space-2));
|
|
701
774
|
|
|
702
775
|
position: relative;
|
|
@@ -713,7 +786,7 @@ svg[data-v-abaeb064] {
|
|
|
713
786
|
0 100%
|
|
714
787
|
);
|
|
715
788
|
}
|
|
716
|
-
[data-component~="ui-badge"][data-ui-badge-state~="shape=tag"][data-v-
|
|
789
|
+
[data-component~="ui-badge"][data-ui-badge-state~="shape=tag"][data-v-57826cf9]::before {
|
|
717
790
|
content: "";
|
|
718
791
|
position: absolute;
|
|
719
792
|
inset: 0;
|
|
@@ -728,37 +801,37 @@ svg[data-v-abaeb064] {
|
|
|
728
801
|
);
|
|
729
802
|
pointer-events: none;
|
|
730
803
|
}
|
|
731
|
-
[data-component~="ui-badge"][data-ui-badge-state~="shape=tag"][data-ui-badge-state~="variant=inverse"][data-v-
|
|
804
|
+
[data-component~="ui-badge"][data-ui-badge-state~="shape=tag"][data-ui-badge-state~="variant=inverse"][data-v-57826cf9] {
|
|
732
805
|
background: var(--ui-badge-border, var(--_badge-color-border, var(--_badge-text)));
|
|
733
806
|
}
|
|
734
|
-
[data-component~="ui-badge"][data-ui-badge-state~="shape=tag"][data-v-
|
|
807
|
+
[data-component~="ui-badge"][data-ui-badge-state~="shape=tag"][data-v-57826cf9]:dir(rtl) {
|
|
735
808
|
padding-inline-end: var(--ui-badge-padding-inline, var(--ui-space-2));
|
|
736
809
|
padding-inline-start: calc(
|
|
737
810
|
var(--ui-badge-padding-inline, var(--ui-space-2)) + var(--_badge-point)
|
|
738
811
|
);
|
|
739
812
|
clip-path: polygon(var(--_badge-point) 0, 100% 0, 100% 100%, var(--_badge-point) 100%, 0 50%);
|
|
740
813
|
}
|
|
741
|
-
[data-component~="ui-badge"][data-ui-badge-state~="shape=tag"][data-v-
|
|
814
|
+
[data-component~="ui-badge"][data-ui-badge-state~="shape=tag"][data-v-57826cf9]:dir(rtl)::before {
|
|
742
815
|
clip-path: polygon(var(--_badge-point) 0, 100% 0, 100% 100%, var(--_badge-point) 100%, 0 50%);
|
|
743
816
|
}
|
|
744
817
|
@media (forced-colors: active) {
|
|
745
|
-
[data-component~="ui-badge"][data-ui-badge-state~="shape=dot"][data-v-
|
|
818
|
+
[data-component~="ui-badge"][data-ui-badge-state~="shape=dot"][data-v-57826cf9] {
|
|
746
819
|
forced-color-adjust: none;
|
|
747
820
|
border-color: CanvasText;
|
|
748
821
|
background: CanvasText;
|
|
749
822
|
}
|
|
750
|
-
[data-component~="ui-badge"][data-ui-badge-state~="shape=tag"][data-v-
|
|
823
|
+
[data-component~="ui-badge"][data-ui-badge-state~="shape=tag"][data-v-57826cf9] {
|
|
751
824
|
forced-color-adjust: none;
|
|
752
825
|
background: CanvasText;
|
|
753
826
|
color: CanvasText;
|
|
754
827
|
}
|
|
755
|
-
[data-component~="ui-badge"][data-ui-badge-state~="shape=tag"][data-v-
|
|
828
|
+
[data-component~="ui-badge"][data-ui-badge-state~="shape=tag"][data-v-57826cf9]::before {
|
|
756
829
|
background: Canvas;
|
|
757
830
|
}
|
|
758
831
|
}
|
|
759
832
|
|
|
760
833
|
/* A component that sets its display still honours the hidden attribute on its root. */
|
|
761
|
-
[data-component~="ui-badge"][hidden][data-v-
|
|
834
|
+
[data-component~="ui-badge"][hidden][data-v-57826cf9] {
|
|
762
835
|
display: none;
|
|
763
836
|
}
|
|
764
837
|
|
|
@@ -968,7 +1041,22 @@ svg[data-v-6551ff4d],
|
|
|
968
1041
|
syntax: "*";
|
|
969
1042
|
inherits: false;
|
|
970
1043
|
}
|
|
971
|
-
[data-component~="ui-button"][data-v-
|
|
1044
|
+
[data-component~="ui-button"][data-v-e56c4e01] {
|
|
1045
|
+
/* Optional inherited action-group values keep text and icon actions under the same light.
|
|
1046
|
+
One fine top/start highlight follows the bottom/end lowlight at a joined action seam.
|
|
1047
|
+
A single ambient lift avoids stacking a face gradient or another inset bevel. */
|
|
1048
|
+
--_ui-action-start: 1px;
|
|
1049
|
+
--_ui-action-edge: var(
|
|
1050
|
+
--ui-action-edge,
|
|
1051
|
+
inset var(--_ui-action-start) 1px 0 light-dark(
|
|
1052
|
+
rgb(255 255 255 / 0.08),
|
|
1053
|
+
rgb(255 255 255 / 0.06)
|
|
1054
|
+
),
|
|
1055
|
+
inset calc(-1 * var(--_ui-action-start)) -1px 0 light-dark(rgb(0 0 0 / 0.08), rgb(0 0 0 / 0.08))
|
|
1056
|
+
);
|
|
1057
|
+
--_ui-action-shadow:
|
|
1058
|
+
var(--_ui-action-edge),
|
|
1059
|
+
0 1px 2px light-dark(rgb(0 0 0 / 0.10), rgb(0 0 0 / 0.20));
|
|
972
1060
|
--_hue: var(--ui-accent);
|
|
973
1061
|
--_hue-hover: var(--ui-accent-hover);
|
|
974
1062
|
--_hue-active: var(--ui-accent-active);
|
|
@@ -988,15 +1076,18 @@ svg[data-v-6551ff4d],
|
|
|
988
1076
|
vertical-align: middle;
|
|
989
1077
|
color: var(--_tone-text);
|
|
990
1078
|
}
|
|
991
|
-
[data-component~="ui-button"][data-
|
|
1079
|
+
[data-component~="ui-button"][data-v-e56c4e01]:dir(rtl) {
|
|
1080
|
+
--_ui-action-start: -1px;
|
|
1081
|
+
}
|
|
1082
|
+
[data-component~="ui-button"][data-ui-button-state~="align=start"][data-v-e56c4e01] {
|
|
992
1083
|
justify-content: flex-start;
|
|
993
1084
|
text-align: start;
|
|
994
1085
|
}
|
|
995
|
-
[data-component~="ui-button"][data-ui-button-state~="stretch"][data-v-
|
|
1086
|
+
[data-component~="ui-button"][data-ui-button-state~="stretch"][data-v-e56c4e01] {
|
|
996
1087
|
display: flex;
|
|
997
1088
|
inline-size: 100%;
|
|
998
1089
|
}
|
|
999
|
-
[data-component~="ui-button"][data-v-
|
|
1090
|
+
[data-component~="ui-button"][data-v-e56c4e01] {
|
|
1000
1091
|
appearance: none;
|
|
1001
1092
|
min-block-size: var(--ui-button-min-block-size, var(--ui-control-size-md));
|
|
1002
1093
|
border-style: solid;
|
|
@@ -1012,8 +1103,8 @@ svg[data-v-6551ff4d],
|
|
|
1012
1103
|
white-space: var(--ui-button-white-space, inherit);
|
|
1013
1104
|
line-height: var(--ui-line-height-tight);
|
|
1014
1105
|
padding: var(--ui-space-2) var(--ui-space-3);
|
|
1015
|
-
background-image:
|
|
1016
|
-
box-shadow: var(--ui-button-shadow, var(--ui-
|
|
1106
|
+
background-image: none;
|
|
1107
|
+
box-shadow: var(--ui-button-shadow, var(--ui-action-shadow, var(--_ui-action-shadow)));
|
|
1017
1108
|
cursor: pointer;
|
|
1018
1109
|
transition:
|
|
1019
1110
|
background-color var(--ui-motion-fast) var(--ui-motion-ease),
|
|
@@ -1024,34 +1115,48 @@ svg[data-v-6551ff4d],
|
|
|
1024
1115
|
}
|
|
1025
1116
|
|
|
1026
1117
|
/* An anchor keeps the boxed button look even when an app styles ordinary links. */
|
|
1027
|
-
[data-component~="ui-button"][data-v-
|
|
1118
|
+
[data-component~="ui-button"][data-v-e56c4e01]:is(a) {
|
|
1028
1119
|
text-decoration: none;
|
|
1029
1120
|
}
|
|
1030
|
-
.spinner-wrap[data-v-
|
|
1121
|
+
.spinner-wrap[data-v-e56c4e01] {
|
|
1031
1122
|
display: inline-flex;
|
|
1032
1123
|
flex: none;
|
|
1033
1124
|
vertical-align: middle;
|
|
1034
1125
|
}
|
|
1126
|
+
|
|
1127
|
+
/* A count is an adornment, not another line of label text. Keep the standard control height
|
|
1128
|
+
with enough inset for a 24px mark; large content can still grow the button naturally. */
|
|
1129
|
+
[data-component~="ui-button"][data-v-e56c4e01]:not([variant="link"]):has(.badge:not(:empty)) {
|
|
1130
|
+
padding-block: var(--ui-space-0-5);
|
|
1131
|
+
}
|
|
1132
|
+
.badge[data-v-e56c4e01] {
|
|
1133
|
+
display: inline-flex;
|
|
1134
|
+
align-items: center;
|
|
1135
|
+
flex: none;
|
|
1136
|
+
}
|
|
1137
|
+
.badge[data-v-e56c4e01]:empty {
|
|
1138
|
+
display: none;
|
|
1139
|
+
}
|
|
1035
1140
|
@supports (text-box-trim: trim-both) {
|
|
1036
|
-
[data-component~="ui-button"][data-v-
|
|
1141
|
+
[data-component~="ui-button"][data-v-e56c4e01] {
|
|
1037
1142
|
text-box-trim: trim-both;
|
|
1038
1143
|
text-box-edge: cap alphabetic;
|
|
1039
1144
|
}
|
|
1040
1145
|
}
|
|
1041
|
-
[data-component~="ui-button"][data-ui-button-state~="size=xs"][data-v-
|
|
1146
|
+
[data-component~="ui-button"][data-ui-button-state~="size=xs"][data-v-e56c4e01] {
|
|
1042
1147
|
min-block-size: 1.5rem;
|
|
1043
1148
|
padding: calc(var(--ui-space-0-5) * 1.5) calc(var(--ui-space-1) * 1.25);
|
|
1044
1149
|
font-size: var(--ui-font-size-xs);
|
|
1045
1150
|
}
|
|
1046
|
-
[data-component~="ui-button"][data-ui-button-state~="shape=pill"][data-v-
|
|
1151
|
+
[data-component~="ui-button"][data-ui-button-state~="shape=pill"][data-v-e56c4e01] {
|
|
1047
1152
|
border-radius: var(--ui-button-radius, var(--ui-radius-round));
|
|
1048
1153
|
}
|
|
1049
|
-
[data-component~="ui-button"][data-ui-button-state~="size=sm"][data-v-
|
|
1154
|
+
[data-component~="ui-button"][data-ui-button-state~="size=sm"][data-v-e56c4e01] {
|
|
1050
1155
|
min-block-size: var(--ui-control-size-sm);
|
|
1051
1156
|
padding: var(--ui-space-1) var(--ui-space-2);
|
|
1052
1157
|
font-size: var(--ui-font-size-sm);
|
|
1053
1158
|
}
|
|
1054
|
-
[data-component~="ui-button"][data-ui-button-state~="size=lg"][data-v-
|
|
1159
|
+
[data-component~="ui-button"][data-ui-button-state~="size=lg"][data-v-e56c4e01] {
|
|
1055
1160
|
min-block-size: var(--ui-control-size-lg);
|
|
1056
1161
|
padding: var(--ui-space-3) var(--ui-space-4);
|
|
1057
1162
|
font-size: var(--ui-font-size-md);
|
|
@@ -1059,7 +1164,7 @@ svg[data-v-6551ff4d],
|
|
|
1059
1164
|
|
|
1060
1165
|
/* Card actions inherit Button's palette and behavior; only their shared layout changes.
|
|
1061
1166
|
The icon may contain any decorative composition. Empty icons remove their column. */
|
|
1062
|
-
[data-component~="ui-button"][data-ui-button-state~="variant=card"][data-v-
|
|
1167
|
+
[data-component~="ui-button"][data-ui-button-state~="variant=card"][data-v-e56c4e01] {
|
|
1063
1168
|
display: grid;
|
|
1064
1169
|
grid-template-columns: auto minmax(0, 1fr) auto;
|
|
1065
1170
|
align-content: center;
|
|
@@ -1072,23 +1177,23 @@ svg[data-v-6551ff4d],
|
|
|
1072
1177
|
box-shadow: none;
|
|
1073
1178
|
background-image: none;
|
|
1074
1179
|
}
|
|
1075
|
-
[data-component~="ui-button"][data-ui-button-state~="variant=card"][data-ui-button-state~="size=lg"][data-v-
|
|
1180
|
+
[data-component~="ui-button"][data-ui-button-state~="variant=card"][data-ui-button-state~="size=lg"][data-v-e56c4e01] {
|
|
1076
1181
|
min-block-size: max(var(--ui-control-min-block-size), var(--ui-control-size-lg));
|
|
1077
1182
|
}
|
|
1078
|
-
[data-component~="ui-button"][data-ui-button-state~="variant=card"][data-v-
|
|
1183
|
+
[data-component~="ui-button"][data-ui-button-state~="variant=card"][data-v-e56c4e01]:has(.card-icon:empty) {
|
|
1079
1184
|
grid-template-columns: minmax(0, 1fr) auto;
|
|
1080
1185
|
}
|
|
1081
|
-
.card-icon[data-v-
|
|
1186
|
+
.card-icon[data-v-e56c4e01] {
|
|
1082
1187
|
display: flex;
|
|
1083
1188
|
align-items: flex-start;
|
|
1084
1189
|
}
|
|
1085
|
-
.card-icon[data-v-
|
|
1190
|
+
.card-icon[data-v-e56c4e01]:empty {
|
|
1086
1191
|
display: none;
|
|
1087
1192
|
}
|
|
1088
|
-
.card-content[data-v-
|
|
1193
|
+
.card-content[data-v-e56c4e01] {
|
|
1089
1194
|
min-inline-size: 0;
|
|
1090
1195
|
}
|
|
1091
|
-
.card-action[data-v-
|
|
1196
|
+
.card-action[data-v-e56c4e01] {
|
|
1092
1197
|
display: flex;
|
|
1093
1198
|
align-items: center;
|
|
1094
1199
|
align-self: center;
|
|
@@ -1096,29 +1201,37 @@ svg[data-v-6551ff4d],
|
|
|
1096
1201
|
|
|
1097
1202
|
/* A link is never :enabled, so interactive states test "not unavailable" instead: for a button that
|
|
1098
1203
|
is exactly :enabled, at the same specificity, and it also matches a link that can be followed. */
|
|
1099
|
-
[data-component~="ui-button"][data-v-
|
|
1204
|
+
[data-component~="ui-button"][data-v-e56c4e01]:hover:not(:disabled, [aria-disabled="true"]) {
|
|
1100
1205
|
border-color: var(--ui-button-hover-border, var(--_tone-hover));
|
|
1101
1206
|
background-color: var(--ui-button-hover-surface, oklch(from var(--_tone) l c h / 12%));
|
|
1102
1207
|
}
|
|
1103
1208
|
|
|
1209
|
+
/* A neutral card encloses content quietly; ordinary outlines keep their action-tone edge. */
|
|
1210
|
+
[data-component~="ui-button"][data-ui-button-state~="variant=card"][data-ui-button-state~="tone=neutral"][data-v-e56c4e01] {
|
|
1211
|
+
border-color: var(--ui-button-border, var(--ui-border));
|
|
1212
|
+
}
|
|
1213
|
+
[data-component~="ui-button"][data-ui-button-state~="variant=card"][data-ui-button-state~="tone=neutral"][data-v-e56c4e01]:hover:not(:disabled, [aria-disabled="true"]) {
|
|
1214
|
+
border-color: var(--ui-button-hover-border, var(--ui-border-strong));
|
|
1215
|
+
}
|
|
1216
|
+
|
|
1104
1217
|
/* Pressed reads as pressed in: the highlight goes, and the shadow moves inside. */
|
|
1105
|
-
[data-component~="ui-button"][data-v-
|
|
1218
|
+
[data-component~="ui-button"][data-v-e56c4e01]:active:not(:disabled, [aria-disabled="true"]) {
|
|
1106
1219
|
background-color: var(--ui-button-active-surface, oklch(from var(--_tone) l c h / 18%));
|
|
1107
1220
|
background-image: none;
|
|
1108
1221
|
box-shadow: var(--ui-pressed);
|
|
1109
1222
|
}
|
|
1110
|
-
[data-component~="ui-button"][data-ui-button-state~="variant=solid"][data-v-
|
|
1111
|
-
[data-component~="ui-button"][data-ui-button-state~="variant=danger"][data-v-
|
|
1223
|
+
[data-component~="ui-button"][data-ui-button-state~="variant=solid"][data-v-e56c4e01],
|
|
1224
|
+
[data-component~="ui-button"][data-ui-button-state~="variant=danger"][data-v-e56c4e01] {
|
|
1112
1225
|
border-color: var(--_tone);
|
|
1113
1226
|
background-color: var(--_tone);
|
|
1114
1227
|
color: var(--_on-tone);
|
|
1115
|
-
box-shadow: var(--ui-button-solid-shadow, var(--ui-
|
|
1228
|
+
box-shadow: var(--ui-button-solid-shadow, var(--ui-action-shadow, var(--_ui-action-shadow)));
|
|
1116
1229
|
}
|
|
1117
|
-
:is([data-component~="ui-button"][data-ui-button-state~="variant=solid"][data-v-
|
|
1230
|
+
:is([data-component~="ui-button"][data-ui-button-state~="variant=solid"][data-v-e56c4e01], [data-component~="ui-button"][data-ui-button-state~="variant=danger"][data-v-e56c4e01]):hover:not(:disabled, [aria-disabled="true"]) {
|
|
1118
1231
|
background-color: var(--_tone-hover);
|
|
1119
1232
|
border-color: var(--_tone-hover);
|
|
1120
1233
|
}
|
|
1121
|
-
:is([data-component~="ui-button"][data-ui-button-state~="variant=solid"][data-v-
|
|
1234
|
+
:is([data-component~="ui-button"][data-ui-button-state~="variant=solid"][data-v-e56c4e01], [data-component~="ui-button"][data-ui-button-state~="variant=danger"][data-v-e56c4e01]):active:not(:disabled, [aria-disabled="true"]) {
|
|
1122
1235
|
background-color: var(--_tone-active);
|
|
1123
1236
|
border-color: var(--_tone-active);
|
|
1124
1237
|
background-image: none;
|
|
@@ -1127,43 +1240,43 @@ svg[data-v-6551ff4d],
|
|
|
1127
1240
|
|
|
1128
1241
|
/* Tone is the colour, variant is the volume. Every pairing works: a danger outline is a
|
|
1129
1242
|
destructive secondary action, not a special case. */
|
|
1130
|
-
[data-component~="ui-button"][data-ui-button-state~="tone=neutral"][data-v-
|
|
1243
|
+
[data-component~="ui-button"][data-ui-button-state~="tone=neutral"][data-v-e56c4e01] {
|
|
1131
1244
|
--_hue: var(--ui-text);
|
|
1132
1245
|
--_hue-hover: var(--ui-text);
|
|
1133
1246
|
--_hue-active: var(--ui-text);
|
|
1134
1247
|
--_hue-text: var(--ui-text);
|
|
1135
1248
|
--_on-hue: var(--ui-surface);
|
|
1136
1249
|
}
|
|
1137
|
-
[data-component~="ui-button"][data-ui-button-state~="tone=danger"][data-v-
|
|
1138
|
-
[data-component~="ui-button"][data-ui-button-state~="variant=danger"][data-v-
|
|
1250
|
+
[data-component~="ui-button"][data-ui-button-state~="tone=danger"][data-v-e56c4e01],
|
|
1251
|
+
[data-component~="ui-button"][data-ui-button-state~="variant=danger"][data-v-e56c4e01] {
|
|
1139
1252
|
--_hue: var(--ui-danger);
|
|
1140
1253
|
--_hue-hover: var(--ui-danger-hover);
|
|
1141
1254
|
--_hue-active: var(--ui-danger-hover);
|
|
1142
1255
|
--_hue-text: var(--ui-danger-hover);
|
|
1143
1256
|
--_on-hue: var(--ui-on-danger);
|
|
1144
1257
|
}
|
|
1145
|
-
[data-component~="ui-button"][data-ui-button-state~="tone=success"][data-v-
|
|
1258
|
+
[data-component~="ui-button"][data-ui-button-state~="tone=success"][data-v-e56c4e01] {
|
|
1146
1259
|
--_hue: var(--ui-success);
|
|
1147
1260
|
--_hue-hover: color-mix(in srgb, var(--ui-success) 85%, #000);
|
|
1148
1261
|
--_hue-active: color-mix(in srgb, var(--ui-success) 75%, #000);
|
|
1149
1262
|
--_hue-text: color-mix(in srgb, var(--ui-success) 85%, #000);
|
|
1150
1263
|
--_on-hue: var(--ui-surface);
|
|
1151
1264
|
}
|
|
1152
|
-
[data-component~="ui-button"][data-ui-button-state~="tone=warning"][data-v-
|
|
1265
|
+
[data-component~="ui-button"][data-ui-button-state~="tone=warning"][data-v-e56c4e01] {
|
|
1153
1266
|
--_hue: var(--ui-warning);
|
|
1154
1267
|
--_hue-hover: color-mix(in srgb, var(--ui-warning) 85%, #000);
|
|
1155
1268
|
--_hue-active: color-mix(in srgb, var(--ui-warning) 75%, #000);
|
|
1156
1269
|
--_hue-text: color-mix(in srgb, var(--ui-warning) 85%, #000);
|
|
1157
1270
|
--_on-hue: var(--ui-surface);
|
|
1158
1271
|
}
|
|
1159
|
-
[data-component~="ui-button"][data-ui-button-state~="tone=info"][data-v-
|
|
1272
|
+
[data-component~="ui-button"][data-ui-button-state~="tone=info"][data-v-e56c4e01] {
|
|
1160
1273
|
--_hue: var(--ui-info);
|
|
1161
1274
|
--_hue-hover: color-mix(in srgb, var(--ui-info) 85%, #000);
|
|
1162
1275
|
--_hue-active: color-mix(in srgb, var(--ui-info) 75%, #000);
|
|
1163
1276
|
--_hue-text: color-mix(in srgb, var(--ui-info) 85%, #000);
|
|
1164
1277
|
--_on-hue: var(--ui-surface);
|
|
1165
1278
|
}
|
|
1166
|
-
[data-component~="ui-button"][data-ui-button-state~="variant=ghost"][data-v-
|
|
1279
|
+
[data-component~="ui-button"][data-ui-button-state~="variant=ghost"][data-v-e56c4e01] {
|
|
1167
1280
|
border-color: transparent;
|
|
1168
1281
|
background: transparent;
|
|
1169
1282
|
box-shadow: none;
|
|
@@ -1171,14 +1284,14 @@ svg[data-v-6551ff4d],
|
|
|
1171
1284
|
}
|
|
1172
1285
|
|
|
1173
1286
|
/* Tints derive from the text colour, not a surface token, so hover and press show on any background. */
|
|
1174
|
-
[data-component~="ui-button"][data-ui-button-state~="variant=ghost"][data-v-
|
|
1287
|
+
[data-component~="ui-button"][data-ui-button-state~="variant=ghost"][data-v-e56c4e01]:hover:not(:disabled, [aria-disabled="true"]) {
|
|
1175
1288
|
background-color: var(--ui-button-ghost-hover-surface, oklch(from var(--_tone) l c h / 10%));
|
|
1176
1289
|
border-color: transparent;
|
|
1177
1290
|
}
|
|
1178
1291
|
|
|
1179
1292
|
/* Pressed, or holding its menu open, a ghost button sinks slightly: a light surface with a faint
|
|
1180
1293
|
edge and a soft inner shadow. Lighter than hover, so an open menu's trigger never reads as heavy. */
|
|
1181
|
-
[data-component~="ui-button"][data-ui-button-state~="variant=ghost"][data-v-
|
|
1294
|
+
[data-component~="ui-button"][data-ui-button-state~="variant=ghost"][data-v-e56c4e01]:is(:active, [aria-expanded="true"]):not(:disabled, [aria-disabled="true"]) {
|
|
1182
1295
|
background-color: var(
|
|
1183
1296
|
--ui-button-ghost-active-surface,
|
|
1184
1297
|
color-mix(in oklch, var(--ui-surface), var(--_tone) 3%)
|
|
@@ -1190,21 +1303,24 @@ svg[data-v-6551ff4d],
|
|
|
1190
1303
|
}
|
|
1191
1304
|
|
|
1192
1305
|
/* A soft halo that transitions in with the other box-shadow changes, layered on the raised shadow. */
|
|
1193
|
-
[data-component~="ui-button"][data-v-
|
|
1306
|
+
[data-component~="ui-button"][data-v-e56c4e01]:focus-visible {
|
|
1194
1307
|
outline: none;
|
|
1195
1308
|
box-shadow:
|
|
1196
|
-
var(--ui-button-shadow, var(--ui-
|
|
1309
|
+
var(--ui-button-shadow, var(--ui-action-shadow, var(--_ui-action-shadow))),
|
|
1197
1310
|
var(--ui-focus-halo);
|
|
1198
1311
|
}
|
|
1199
|
-
[data-component~="ui-button"][data-ui-button-state~="variant=solid"][data-v-
|
|
1312
|
+
[data-component~="ui-button"][data-ui-button-state~="variant=solid"][data-v-e56c4e01]:focus-visible {
|
|
1200
1313
|
box-shadow:
|
|
1201
|
-
var(--ui-button-solid-shadow, var(--ui-
|
|
1314
|
+
var(--ui-button-solid-shadow, var(--ui-action-shadow, var(--_ui-action-shadow))),
|
|
1202
1315
|
var(--ui-focus-halo);
|
|
1203
1316
|
}
|
|
1317
|
+
:is([data-component~="ui-button"][data-ui-button-state~="variant=ghost"][data-v-e56c4e01], [data-component~="ui-button"][data-ui-button-state~="variant=link"][data-v-e56c4e01], [data-component~="ui-button"][data-ui-button-state~="variant=card"][data-v-e56c4e01]):focus-visible {
|
|
1318
|
+
box-shadow: var(--ui-focus-halo);
|
|
1319
|
+
}
|
|
1204
1320
|
|
|
1205
1321
|
/* A loading action stays visually active; only an explicitly disabled action takes the
|
|
1206
1322
|
neutral disabled palette. Its flat surface and muted ink make the state unambiguous. */
|
|
1207
|
-
[data-component~="ui-button"][data-v-
|
|
1323
|
+
[data-component~="ui-button"][data-v-e56c4e01]:is(:disabled, [aria-disabled="true"]:not([aria-busy="true"])) {
|
|
1208
1324
|
border-color: var(--ui-disabled-border);
|
|
1209
1325
|
background-color: var(--ui-disabled-surface);
|
|
1210
1326
|
color: var(--ui-disabled-text);
|
|
@@ -1214,19 +1330,19 @@ svg[data-v-6551ff4d],
|
|
|
1214
1330
|
background-image: none;
|
|
1215
1331
|
box-shadow: none;
|
|
1216
1332
|
}
|
|
1217
|
-
:is([data-component~="ui-button"][data-ui-button-state~="loading"][data-v-
|
|
1333
|
+
:is([data-component~="ui-button"][data-ui-button-state~="loading"][data-v-e56c4e01], [data-component~="ui-button"][data-ui-button-state~="pending"][data-v-e56c4e01]):focus-visible {
|
|
1218
1334
|
box-shadow: var(--ui-focus-halo);
|
|
1219
1335
|
}
|
|
1220
1336
|
|
|
1221
1337
|
/* Ghost keeps no border, but gains the same neutral surface as other disabled buttons. */
|
|
1222
|
-
[data-component~="ui-button"][data-ui-button-state~="variant=ghost"][data-v-
|
|
1338
|
+
[data-component~="ui-button"][data-ui-button-state~="variant=ghost"][data-v-e56c4e01]:is(:disabled, [aria-disabled="true"]:not([aria-busy="true"])) {
|
|
1223
1339
|
background-color: var(--ui-disabled-surface);
|
|
1224
1340
|
border-color: transparent;
|
|
1225
1341
|
}
|
|
1226
1342
|
|
|
1227
1343
|
/* The size states outrank :host, so sm is named too, or a small button would stay small. */
|
|
1228
1344
|
@media (pointer: coarse) {
|
|
1229
|
-
[data-component~="ui-button"][data-v-
|
|
1345
|
+
[data-component~="ui-button"][data-v-e56c4e01], [data-component~="ui-button"][data-ui-button-state~="size=sm"][data-v-e56c4e01] {
|
|
1230
1346
|
min-block-size: var(--ui-control-min-block-size);
|
|
1231
1347
|
}
|
|
1232
1348
|
}
|
|
@@ -1237,15 +1353,15 @@ svg[data-v-6551ff4d],
|
|
|
1237
1353
|
area. xs sits inside a line of text the same way, so it keeps its size and gains the area too.
|
|
1238
1354
|
Only these need it: a hit area on every button would reach over its neighbours. */
|
|
1239
1355
|
html[data-ui-input-modality="touch"]
|
|
1240
|
-
[data-component~="ui-button"][data-ui-button-state~="variant=link"][data-v-
|
|
1356
|
+
[data-component~="ui-button"][data-ui-button-state~="variant=link"][data-v-e56c4e01],
|
|
1241
1357
|
html[data-ui-input-modality="touch"]
|
|
1242
|
-
[data-component~="ui-button"][data-ui-button-state~="size=xs"][data-v-
|
|
1358
|
+
[data-component~="ui-button"][data-ui-button-state~="size=xs"][data-v-e56c4e01] {
|
|
1243
1359
|
position: relative;
|
|
1244
1360
|
}
|
|
1245
1361
|
html[data-ui-input-modality="touch"]
|
|
1246
|
-
[data-component~="ui-button"][data-ui-button-state~="variant=link"][data-v-
|
|
1362
|
+
[data-component~="ui-button"][data-ui-button-state~="variant=link"][data-v-e56c4e01]::after,
|
|
1247
1363
|
html[data-ui-input-modality="touch"]
|
|
1248
|
-
[data-component~="ui-button"][data-ui-button-state~="size=xs"][data-v-
|
|
1364
|
+
[data-component~="ui-button"][data-ui-button-state~="size=xs"][data-v-e56c4e01]::after {
|
|
1249
1365
|
position: absolute;
|
|
1250
1366
|
inset: 50% auto auto 50%;
|
|
1251
1367
|
inline-size: max(100%, var(--ui-control-min-block-size));
|
|
@@ -1256,7 +1372,7 @@ html[data-ui-input-modality="touch"]
|
|
|
1256
1372
|
|
|
1257
1373
|
/* Link: an inline text action. No box, padding, or minimum height (inline targets are exempt under
|
|
1258
1374
|
WCAG 2.5.8); the inherited font; an underline that strengthens on hover; a visible focus ring. */
|
|
1259
|
-
[data-component~="ui-button"][data-ui-button-state~="variant=link"][data-v-
|
|
1375
|
+
[data-component~="ui-button"][data-ui-button-state~="variant=link"][data-v-e56c4e01] {
|
|
1260
1376
|
display: inline;
|
|
1261
1377
|
min-block-size: 0;
|
|
1262
1378
|
padding: 0;
|
|
@@ -1274,21 +1390,21 @@ html[data-ui-input-modality="touch"]
|
|
|
1274
1390
|
color var(--ui-motion-fast) var(--ui-motion-ease),
|
|
1275
1391
|
text-decoration-color var(--ui-motion-fast) var(--ui-motion-ease);
|
|
1276
1392
|
}
|
|
1277
|
-
[data-component~="ui-button"][data-ui-button-state~="variant=link"][data-v-
|
|
1393
|
+
[data-component~="ui-button"][data-ui-button-state~="variant=link"][data-v-e56c4e01]:hover:not(:disabled, [aria-disabled="true"]) {
|
|
1278
1394
|
color: var(--ui-button-link-hover-text, var(--ui-text-primary));
|
|
1279
1395
|
text-decoration-color: currentColor;
|
|
1280
1396
|
background: none;
|
|
1281
1397
|
transform: none;
|
|
1282
1398
|
}
|
|
1283
|
-
[data-component~="ui-button"][data-ui-button-state~="variant=link"][data-v-
|
|
1399
|
+
[data-component~="ui-button"][data-ui-button-state~="variant=link"][data-v-e56c4e01]:active:not(:disabled, [aria-disabled="true"]) {
|
|
1284
1400
|
background: none;
|
|
1285
1401
|
transform: none;
|
|
1286
1402
|
}
|
|
1287
|
-
[data-component~="ui-button"][data-ui-button-state~="variant=link"][data-v-
|
|
1403
|
+
[data-component~="ui-button"][data-ui-button-state~="variant=link"][data-v-e56c4e01]:is(:disabled, [aria-disabled="true"]:not([aria-busy="true"])) {
|
|
1288
1404
|
background: none;
|
|
1289
1405
|
border-color: transparent;
|
|
1290
1406
|
}
|
|
1291
|
-
[data-component~="ui-button"][data-ui-button-state~="variant=link"][data-v-
|
|
1407
|
+
[data-component~="ui-button"][data-ui-button-state~="variant=link"][data-v-e56c4e01]:focus-visible {
|
|
1292
1408
|
box-shadow: none;
|
|
1293
1409
|
/* Fallback keeps the ring if the token is missing: an unresolved var() would void the outline. */
|
|
1294
1410
|
outline: var(--ui-focus-width) solid var(--ui-focus-ring);
|
|
@@ -1296,7 +1412,7 @@ html[data-ui-input-modality="touch"]
|
|
|
1296
1412
|
}
|
|
1297
1413
|
|
|
1298
1414
|
/* A component that sets its display still honours the hidden attribute on its root. */
|
|
1299
|
-
[data-component~="ui-button"][hidden][data-v-
|
|
1415
|
+
[data-component~="ui-button"][hidden][data-v-e56c4e01] {
|
|
1300
1416
|
display: none;
|
|
1301
1417
|
}
|
|
1302
1418
|
|
|
@@ -1345,7 +1461,7 @@ html[data-ui-input-modality="touch"]
|
|
|
1345
1461
|
syntax: "*";
|
|
1346
1462
|
inherits: false;
|
|
1347
1463
|
}
|
|
1348
|
-
[data-component~="ui-callout"][data-v-
|
|
1464
|
+
[data-component~="ui-callout"][data-v-ca7a11cb] {
|
|
1349
1465
|
/* Hooks do not inherit, so the parts below read them from the root. */
|
|
1350
1466
|
--_ui-callout-icon-column: var(--ui-callout-icon-column);
|
|
1351
1467
|
--_ui-callout-icon: var(--ui-callout-icon);
|
|
@@ -1365,8 +1481,10 @@ html[data-ui-input-modality="touch"]
|
|
|
1365
1481
|
padding-inline-end: var(--ui-callout-padding-inline, var(--ui-space-3));
|
|
1366
1482
|
border: var(--ui-callout-border-width, var(--ui-border-width)) solid
|
|
1367
1483
|
color-mix(in srgb, var(--ui-callout-border, var(--_callout-border)) 35%, transparent);
|
|
1368
|
-
border-inline-start: var(
|
|
1369
|
-
|
|
1484
|
+
border-inline-start: var(
|
|
1485
|
+
--ui-callout-leading-border-width,
|
|
1486
|
+
var(--ui-callout-border-width, var(--ui-border-width))
|
|
1487
|
+
) solid color-mix(in srgb, var(--ui-callout-border, var(--_callout-border)) 35%, transparent);
|
|
1370
1488
|
border-radius: var(--ui-radius-md);
|
|
1371
1489
|
background: var(--ui-callout-surface, var(--_callout-surface));
|
|
1372
1490
|
color: var(--ui-callout-text, var(--ui-text-primary));
|
|
@@ -1377,44 +1495,44 @@ html[data-ui-input-modality="touch"]
|
|
|
1377
1495
|
}
|
|
1378
1496
|
|
|
1379
1497
|
/* One line box tall, so the icon centres on the first line of text. */
|
|
1380
|
-
.icon[data-v-
|
|
1498
|
+
.icon[data-v-ca7a11cb] {
|
|
1381
1499
|
display: grid;
|
|
1382
1500
|
place-items: center;
|
|
1383
1501
|
inline-size: var(--_ui-callout-icon-column, 1.125rem);
|
|
1384
1502
|
block-size: 1lh;
|
|
1385
1503
|
color: var(--_ui-callout-icon, var(--_callout-icon));
|
|
1386
1504
|
}
|
|
1387
|
-
.icon svg[data-v-
|
|
1505
|
+
.icon svg[data-v-ca7a11cb] {
|
|
1388
1506
|
inline-size: var(--_ui-callout-icon-size, 1.125rem);
|
|
1389
1507
|
block-size: var(--_ui-callout-icon-size, 1.125rem);
|
|
1390
1508
|
}
|
|
1391
|
-
.content[data-v-
|
|
1509
|
+
.content[data-v-ca7a11cb] {
|
|
1392
1510
|
min-inline-size: 0;
|
|
1393
1511
|
}
|
|
1394
|
-
[data-component~="ui-callout"][data-ui-callout-state~="tone=neutral"][data-v-
|
|
1395
|
-
[data-component~="ui-callout"][data-ui-callout-state~="tone=note"][data-v-
|
|
1512
|
+
[data-component~="ui-callout"][data-ui-callout-state~="tone=neutral"][data-v-ca7a11cb],
|
|
1513
|
+
[data-component~="ui-callout"][data-ui-callout-state~="tone=note"][data-v-ca7a11cb] {
|
|
1396
1514
|
--_callout-surface: var(--ui-surface-muted);
|
|
1397
1515
|
--_callout-border: var(--ui-border-strong);
|
|
1398
1516
|
--_callout-icon: var(--ui-text-secondary);
|
|
1399
1517
|
}
|
|
1400
|
-
[data-component~="ui-callout"][data-ui-callout-state~="tone=warning"][data-v-
|
|
1518
|
+
[data-component~="ui-callout"][data-ui-callout-state~="tone=warning"][data-v-ca7a11cb] {
|
|
1401
1519
|
--_callout-surface: var(--ui-warning-soft);
|
|
1402
1520
|
--_callout-border: var(--ui-warning-solid);
|
|
1403
1521
|
--_callout-icon: var(--ui-warning-solid);
|
|
1404
1522
|
}
|
|
1405
|
-
[data-component~="ui-callout"][data-ui-callout-state~="tone=success"][data-v-
|
|
1523
|
+
[data-component~="ui-callout"][data-ui-callout-state~="tone=success"][data-v-ca7a11cb] {
|
|
1406
1524
|
--_callout-surface: var(--ui-success-soft);
|
|
1407
1525
|
--_callout-border: var(--ui-success-solid);
|
|
1408
1526
|
--_callout-icon: var(--ui-success-solid);
|
|
1409
1527
|
}
|
|
1410
|
-
[data-component~="ui-callout"][data-ui-callout-state~="tone=danger"][data-v-
|
|
1528
|
+
[data-component~="ui-callout"][data-ui-callout-state~="tone=danger"][data-v-ca7a11cb] {
|
|
1411
1529
|
--_callout-surface: var(--ui-danger-soft);
|
|
1412
1530
|
--_callout-border: var(--ui-danger-solid);
|
|
1413
1531
|
--_callout-icon: var(--ui-danger-solid);
|
|
1414
1532
|
}
|
|
1415
1533
|
|
|
1416
1534
|
/* A link in the callout's text is underlined, so it reads as a link by more than colour. */
|
|
1417
|
-
.content a[data-v-
|
|
1535
|
+
.content a[data-v-ca7a11cb-s] {
|
|
1418
1536
|
color: var(--ui-accent-active);
|
|
1419
1537
|
text-decoration: underline;
|
|
1420
1538
|
text-decoration-thickness: 0.06em;
|
|
@@ -1422,7 +1540,7 @@ html[data-ui-input-modality="touch"]
|
|
|
1422
1540
|
}
|
|
1423
1541
|
|
|
1424
1542
|
/* A component that sets its display still honours the hidden attribute on its root. */
|
|
1425
|
-
[data-component~="ui-callout"][hidden][data-v-
|
|
1543
|
+
[data-component~="ui-callout"][hidden][data-v-ca7a11cb] {
|
|
1426
1544
|
display: none;
|
|
1427
1545
|
}
|
|
1428
1546
|
|
|
@@ -4799,7 +4917,22 @@ svg[data-v-955cfa65-s] {
|
|
|
4799
4917
|
syntax: "*";
|
|
4800
4918
|
inherits: false;
|
|
4801
4919
|
}
|
|
4802
|
-
[data-component~="ui-icon-button"][data-v-
|
|
4920
|
+
[data-component~="ui-icon-button"][data-v-219fa683] {
|
|
4921
|
+
/* Optional inherited action-group values keep text and icon actions under the same light.
|
|
4922
|
+
One fine top/start highlight follows the bottom/end lowlight at a joined action seam.
|
|
4923
|
+
A single ambient lift avoids stacking a face gradient or another inset bevel. */
|
|
4924
|
+
--_ui-action-start: 1px;
|
|
4925
|
+
--_ui-action-edge: var(
|
|
4926
|
+
--ui-action-edge,
|
|
4927
|
+
inset var(--_ui-action-start) 1px 0 light-dark(
|
|
4928
|
+
rgb(255 255 255 / 0.08),
|
|
4929
|
+
rgb(255 255 255 / 0.06)
|
|
4930
|
+
),
|
|
4931
|
+
inset calc(-1 * var(--_ui-action-start)) -1px 0 light-dark(rgb(0 0 0 / 0.08), rgb(0 0 0 / 0.08))
|
|
4932
|
+
);
|
|
4933
|
+
--_ui-action-shadow:
|
|
4934
|
+
var(--_ui-action-edge),
|
|
4935
|
+
0 1px 2px light-dark(rgb(0 0 0 / 0.10), rgb(0 0 0 / 0.20));
|
|
4803
4936
|
/* Hooks do not inherit, so the parts below read them from the root. */
|
|
4804
4937
|
--_ui-icon-button-icon-size: var(--ui-icon-button-icon-size);
|
|
4805
4938
|
--_ui-icon-button-icon-stroke-width: var(--ui-icon-button-icon-stroke-width);
|
|
@@ -4807,7 +4940,10 @@ svg[data-v-955cfa65-s] {
|
|
|
4807
4940
|
display: inline-flex;
|
|
4808
4941
|
color: var(--ui-text-secondary);
|
|
4809
4942
|
}
|
|
4810
|
-
[data-component~="ui-icon-button"][data-
|
|
4943
|
+
[data-component~="ui-icon-button"][data-v-219fa683]:dir(rtl) {
|
|
4944
|
+
--_ui-action-start: -1px;
|
|
4945
|
+
}
|
|
4946
|
+
[data-component~="ui-icon-button"][data-ui-icon-button-state~="tone=accent"][data-v-219fa683] {
|
|
4811
4947
|
--_icon-button-border: var(--ui-accent-solid);
|
|
4812
4948
|
--_icon-button-hover-border: var(--ui-accent-hover);
|
|
4813
4949
|
--_icon-button-text: var(--ui-accent-subtle-text, var(--ui-accent-solid));
|
|
@@ -4820,15 +4956,15 @@ svg[data-v-955cfa65-s] {
|
|
|
4820
4956
|
}
|
|
4821
4957
|
|
|
4822
4958
|
/* Omitted tone retains the existing accent solid; explicit neutral is additive. */
|
|
4823
|
-
[data-component~="ui-icon-button"][data-ui-icon-button-state~="tone=neutral"][data-v-
|
|
4959
|
+
[data-component~="ui-icon-button"][data-ui-icon-button-state~="tone=neutral"][data-v-219fa683] {
|
|
4824
4960
|
--_icon-button-solid-surface: var(--ui-text-primary);
|
|
4825
4961
|
--_icon-button-solid-hover-surface: var(--ui-text-primary);
|
|
4826
4962
|
--_icon-button-solid-text: var(--ui-surface-default);
|
|
4827
4963
|
}
|
|
4828
|
-
[data-component~="ui-icon-button"][data-ui-icon-button-state~="anticipatory"][data-v-
|
|
4964
|
+
[data-component~="ui-icon-button"][data-ui-icon-button-state~="anticipatory"][data-v-219fa683] {
|
|
4829
4965
|
position: relative;
|
|
4830
4966
|
}
|
|
4831
|
-
[data-component~="ui-icon-button"][data-ui-icon-button-state~="anticipatory"][data-v-
|
|
4967
|
+
[data-component~="ui-icon-button"][data-ui-icon-button-state~="anticipatory"][data-v-219fa683]::before {
|
|
4832
4968
|
content: "";
|
|
4833
4969
|
position: absolute;
|
|
4834
4970
|
inset: 50% auto auto 50%;
|
|
@@ -4842,13 +4978,13 @@ svg[data-v-955cfa65-s] {
|
|
|
4842
4978
|
transition: opacity var(--ui-affordance-motion, var(--ui-motion-fast)) var(--ui-motion-ease);
|
|
4843
4979
|
pointer-events: none;
|
|
4844
4980
|
}
|
|
4845
|
-
[data-component~="ui-icon-button"][data-ui-icon-button-state~="anticipatory"][data-v-
|
|
4981
|
+
[data-component~="ui-icon-button"][data-ui-icon-button-state~="anticipatory"][data-v-219fa683]:disabled::before {
|
|
4846
4982
|
opacity: 0;
|
|
4847
4983
|
}
|
|
4848
4984
|
|
|
4849
4985
|
/* At rest an anticipatory button shows only its guide dot. The icon grows into place when
|
|
4850
4986
|
proximity, hover, or focus reveals it; the button's hit area and guide remain stable. */
|
|
4851
|
-
[data-component~="ui-icon-button"][data-ui-icon-button-state~="anticipatory"] .content[data-v-
|
|
4987
|
+
[data-component~="ui-icon-button"][data-ui-icon-button-state~="anticipatory"] .content[data-v-219fa683] {
|
|
4852
4988
|
opacity: 1;
|
|
4853
4989
|
transform: scale(1);
|
|
4854
4990
|
transition:
|
|
@@ -4856,22 +4992,22 @@ svg[data-v-955cfa65-s] {
|
|
|
4856
4992
|
transform calc(var(--ui-motion-fast) * 2) cubic-bezier(0.2, 1.4, 0.35, 1);
|
|
4857
4993
|
}
|
|
4858
4994
|
@media (hover: hover) and (pointer: fine) {
|
|
4859
|
-
[data-component~="ui-icon-button"][data-ui-icon-button-state~="anticipatory"][data-v-
|
|
4995
|
+
[data-component~="ui-icon-button"][data-ui-icon-button-state~="anticipatory"][data-v-219fa683]: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) {
|
|
4860
4996
|
border-color: transparent;
|
|
4861
4997
|
background-color: transparent;
|
|
4862
4998
|
box-shadow: none;
|
|
4863
4999
|
}
|
|
4864
5000
|
[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)
|
|
4865
|
-
.content[data-v-
|
|
5001
|
+
.content[data-v-219fa683] {
|
|
4866
5002
|
opacity: 0;
|
|
4867
5003
|
transform: scale(0.65);
|
|
4868
5004
|
transition-duration: var(--ui-motion-fast);
|
|
4869
5005
|
}
|
|
4870
5006
|
}
|
|
4871
|
-
[data-component~="ui-icon-button"][data-ui-icon-button-state~="anticipatory"][data-v-
|
|
5007
|
+
[data-component~="ui-icon-button"][data-ui-icon-button-state~="anticipatory"][data-v-219fa683]:is([data-component~="ui-icon-button"][data-ui-icon-button-state~="variant=solid"], [aria-pressed="true"], [data-ui-proximity="near"], :hover, :focus-visible)::before {
|
|
4872
5008
|
opacity: 0;
|
|
4873
5009
|
}
|
|
4874
|
-
[data-component~="ui-icon-button"][data-v-
|
|
5010
|
+
[data-component~="ui-icon-button"][data-v-219fa683] {
|
|
4875
5011
|
/* The size prop resolves here; --ui-icon-button-size overrides it on an element. */
|
|
4876
5012
|
--_size: 2rem;
|
|
4877
5013
|
appearance: none;
|
|
@@ -4897,7 +5033,7 @@ svg[data-v-955cfa65-s] {
|
|
|
4897
5033
|
transform var(--ui-motion-fast) var(--ui-motion-ease);
|
|
4898
5034
|
}
|
|
4899
5035
|
@media (hover: none), (pointer: coarse) {
|
|
4900
|
-
[data-component~="ui-icon-button"][data-ui-icon-button-state~="anticipatory"][data-v-
|
|
5036
|
+
[data-component~="ui-icon-button"][data-ui-icon-button-state~="anticipatory"][data-v-219fa683]::before {
|
|
4901
5037
|
opacity: 0;
|
|
4902
5038
|
}
|
|
4903
5039
|
}
|
|
@@ -4905,10 +5041,10 @@ svg[data-v-955cfa65-s] {
|
|
|
4905
5041
|
/* A touch target without a bigger button: an invisible hit area, at least the control
|
|
4906
5042
|
minimum, centred on the button (::before is the anticipatory guide). */
|
|
4907
5043
|
@media (pointer: coarse) {
|
|
4908
|
-
[data-component~="ui-icon-button"][data-v-
|
|
5044
|
+
[data-component~="ui-icon-button"][data-v-219fa683] {
|
|
4909
5045
|
position: relative;
|
|
4910
5046
|
}
|
|
4911
|
-
[data-component~="ui-icon-button"][data-v-
|
|
5047
|
+
[data-component~="ui-icon-button"][data-v-219fa683]::after {
|
|
4912
5048
|
content: "";
|
|
4913
5049
|
position: absolute;
|
|
4914
5050
|
inset: 50% auto auto 50%;
|
|
@@ -4917,10 +5053,10 @@ svg[data-v-955cfa65-s] {
|
|
|
4917
5053
|
transform: translate(-50%, -50%);
|
|
4918
5054
|
}
|
|
4919
5055
|
}
|
|
4920
|
-
html[data-ui-input-modality="touch"] [data-component~="ui-icon-button"][data-v-
|
|
5056
|
+
html[data-ui-input-modality="touch"] [data-component~="ui-icon-button"][data-v-219fa683] {
|
|
4921
5057
|
position: relative;
|
|
4922
5058
|
}
|
|
4923
|
-
html[data-ui-input-modality="touch"] [data-component~="ui-icon-button"][data-v-
|
|
5059
|
+
html[data-ui-input-modality="touch"] [data-component~="ui-icon-button"][data-v-219fa683]::after {
|
|
4924
5060
|
content: "";
|
|
4925
5061
|
position: absolute;
|
|
4926
5062
|
inset: 50% auto auto 50%;
|
|
@@ -4928,14 +5064,14 @@ html[data-ui-input-modality="touch"] [data-component~="ui-icon-button"][data-v-b
|
|
|
4928
5064
|
block-size: max(100%, var(--ui-control-min-block-size));
|
|
4929
5065
|
transform: translate(-50%, -50%);
|
|
4930
5066
|
}
|
|
4931
|
-
[data-component~="ui-icon-button"][data-ui-icon-button-state~="size=sm"][data-v-
|
|
5067
|
+
[data-component~="ui-icon-button"][data-ui-icon-button-state~="size=sm"][data-v-219fa683] {
|
|
4932
5068
|
--_size: 1.75rem;
|
|
4933
5069
|
inline-size: var(--ui-icon-button-size, var(--_size));
|
|
4934
5070
|
block-size: var(--ui-icon-button-size, var(--_size));
|
|
4935
5071
|
min-inline-size: var(--ui-icon-button-size, var(--_size));
|
|
4936
5072
|
min-block-size: var(--ui-icon-button-size, var(--_size));
|
|
4937
5073
|
}
|
|
4938
|
-
[data-component~="ui-icon-button"][data-ui-icon-button-state~="size=lg"][data-v-
|
|
5074
|
+
[data-component~="ui-icon-button"][data-ui-icon-button-state~="size=lg"][data-v-219fa683] {
|
|
4939
5075
|
--_size: 2.5rem;
|
|
4940
5076
|
inline-size: var(--ui-icon-button-size, var(--_size));
|
|
4941
5077
|
block-size: var(--ui-icon-button-size, var(--_size));
|
|
@@ -4944,19 +5080,19 @@ html[data-ui-input-modality="touch"] [data-component~="ui-icon-button"][data-v-b
|
|
|
4944
5080
|
}
|
|
4945
5081
|
|
|
4946
5082
|
/* A text button's companion uses control geometry; compact icon buttons keep their own density. */
|
|
4947
|
-
[data-component~="ui-icon-button"][data-ui-icon-button-state~="matchButton"][data-v-
|
|
5083
|
+
[data-component~="ui-icon-button"][data-ui-icon-button-state~="matchButton"][data-v-219fa683] {
|
|
4948
5084
|
--_size: var(--ui-control-size-md);
|
|
4949
5085
|
block-size: auto;
|
|
4950
5086
|
align-self: stretch;
|
|
4951
5087
|
}
|
|
4952
|
-
[data-component~="ui-icon-button"][data-ui-icon-button-state~="matchButton"][data-ui-icon-button-state~="size=sm"][data-v-
|
|
5088
|
+
[data-component~="ui-icon-button"][data-ui-icon-button-state~="matchButton"][data-ui-icon-button-state~="size=sm"][data-v-219fa683] {
|
|
4953
5089
|
--_size: var(--ui-control-size-sm);
|
|
4954
5090
|
}
|
|
4955
|
-
[data-component~="ui-icon-button"][data-ui-icon-button-state~="matchButton"][data-ui-icon-button-state~="size=lg"][data-v-
|
|
5091
|
+
[data-component~="ui-icon-button"][data-ui-icon-button-state~="matchButton"][data-ui-icon-button-state~="size=lg"][data-v-219fa683] {
|
|
4956
5092
|
--_size: var(--ui-control-size-lg);
|
|
4957
5093
|
}
|
|
4958
5094
|
@media (pointer: coarse) {
|
|
4959
|
-
[data-component~="ui-icon-button"][data-ui-icon-button-state~="matchButton"][data-v-
|
|
5095
|
+
[data-component~="ui-icon-button"][data-ui-icon-button-state~="matchButton"][data-v-219fa683] {
|
|
4960
5096
|
inline-size: max(var(--ui-icon-button-size, var(--_size)), var(--ui-control-min-block-size));
|
|
4961
5097
|
min-inline-size: max(
|
|
4962
5098
|
var(--ui-icon-button-size, var(--_size)),
|
|
@@ -4965,10 +5101,10 @@ html[data-ui-input-modality="touch"] [data-component~="ui-icon-button"][data-v-b
|
|
|
4965
5101
|
min-block-size: max(var(--ui-icon-button-size, var(--_size)), var(--ui-control-min-block-size));
|
|
4966
5102
|
}
|
|
4967
5103
|
}
|
|
4968
|
-
[data-component~="ui-icon-button"][data-ui-icon-button-state~="round"][data-v-
|
|
5104
|
+
[data-component~="ui-icon-button"][data-ui-icon-button-state~="round"][data-v-219fa683] {
|
|
4969
5105
|
border-radius: var(--ui-radius-round);
|
|
4970
5106
|
}
|
|
4971
|
-
[data-component~="ui-icon-button"][data-ui-icon-button-state~="variant=outline"][data-v-
|
|
5107
|
+
[data-component~="ui-icon-button"][data-ui-icon-button-state~="variant=outline"][data-v-219fa683] {
|
|
4972
5108
|
border-color: var(
|
|
4973
5109
|
--ui-icon-button-border,
|
|
4974
5110
|
var(--_icon-button-border, var(--ui-control-border, var(--ui-border-strong)))
|
|
@@ -4977,23 +5113,20 @@ html[data-ui-input-modality="touch"] [data-component~="ui-icon-button"][data-v-b
|
|
|
4977
5113
|
--ui-icon-button-outline-surface,
|
|
4978
5114
|
var(--_icon-button-outline-surface, var(--ui-surface-default))
|
|
4979
5115
|
);
|
|
4980
|
-
background-image:
|
|
5116
|
+
background-image: none;
|
|
4981
5117
|
color: var(--ui-icon-button-outline-text, var(--_icon-button-text, var(--ui-text-primary)));
|
|
4982
|
-
box-shadow: var(--ui-
|
|
5118
|
+
box-shadow: var(--ui-action-shadow, var(--_ui-action-shadow));
|
|
4983
5119
|
}
|
|
4984
|
-
[data-component~="ui-icon-button"][data-ui-icon-button-state~="variant=solid"][data-v-
|
|
5120
|
+
[data-component~="ui-icon-button"][data-ui-icon-button-state~="variant=solid"][data-v-219fa683] {
|
|
4985
5121
|
background-color: var(
|
|
4986
5122
|
--ui-icon-button-solid-surface,
|
|
4987
5123
|
var(--_icon-button-solid-surface, var(--ui-accent-solid))
|
|
4988
5124
|
);
|
|
4989
|
-
background-image:
|
|
5125
|
+
background-image: none;
|
|
4990
5126
|
color: var(--ui-icon-button-solid-text, var(--_icon-button-solid-text, var(--ui-text-on-accent)));
|
|
4991
|
-
box-shadow: var(
|
|
4992
|
-
--ui-icon-button-solid-shadow,
|
|
4993
|
-
0 1px 2px color-mix(in srgb, var(--ui-accent-solid) 18%, transparent)
|
|
4994
|
-
);
|
|
5127
|
+
box-shadow: var(--ui-icon-button-solid-shadow, var(--ui-action-shadow, var(--_ui-action-shadow)));
|
|
4995
5128
|
}
|
|
4996
|
-
[data-component~="ui-icon-button"][data-v-
|
|
5129
|
+
[data-component~="ui-icon-button"][data-v-219fa683]:hover:enabled:not([aria-disabled="true"]) {
|
|
4997
5130
|
/* Derived from the text colour so the ghost hover shows on any background. */
|
|
4998
5131
|
background-color: var(
|
|
4999
5132
|
--ui-icon-button-hover-surface,
|
|
@@ -5001,23 +5134,23 @@ html[data-ui-input-modality="touch"] [data-component~="ui-icon-button"][data-v-b
|
|
|
5001
5134
|
);
|
|
5002
5135
|
color: var(--ui-icon-button-hover-text, var(--_icon-button-text, var(--ui-text-primary)));
|
|
5003
5136
|
}
|
|
5004
|
-
[data-component~="ui-icon-button"][data-ui-icon-button-state~="variant=outline"][data-v-
|
|
5137
|
+
[data-component~="ui-icon-button"][data-ui-icon-button-state~="variant=outline"][data-v-219fa683]:hover:enabled:not([aria-disabled="true"]) {
|
|
5005
5138
|
border-color: var(
|
|
5006
5139
|
--ui-icon-button-hover-border,
|
|
5007
5140
|
var(--_icon-button-hover-border, var(--ui-control-border-hover, var(--ui-control-border)))
|
|
5008
5141
|
);
|
|
5009
5142
|
}
|
|
5010
|
-
[data-component~="ui-icon-button"][data-ui-icon-button-state~="variant=solid"][data-v-
|
|
5143
|
+
[data-component~="ui-icon-button"][data-ui-icon-button-state~="variant=solid"][data-v-219fa683]:hover:enabled:not([aria-disabled="true"]) {
|
|
5011
5144
|
background-color: var(
|
|
5012
5145
|
--ui-icon-button-solid-hover-surface,
|
|
5013
5146
|
var(--_icon-button-solid-hover-surface, var(--ui-accent-hover))
|
|
5014
5147
|
);
|
|
5015
5148
|
}
|
|
5016
|
-
[data-component~="ui-icon-button"][data-ui-icon-button-state~="variant=solid"][data-ui-icon-button-state~="tone=accent"][data-v-
|
|
5017
|
-
[data-component~="ui-icon-button"][data-ui-icon-button-state~="variant=solid"][data-ui-icon-button-state~="tone=neutral"][data-v-
|
|
5149
|
+
[data-component~="ui-icon-button"][data-ui-icon-button-state~="variant=solid"][data-ui-icon-button-state~="tone=accent"][data-v-219fa683]:hover:enabled:not([aria-disabled="true"]),
|
|
5150
|
+
[data-component~="ui-icon-button"][data-ui-icon-button-state~="variant=solid"][data-ui-icon-button-state~="tone=neutral"][data-v-219fa683]:hover:enabled:not([aria-disabled="true"]) {
|
|
5018
5151
|
color: var(--ui-icon-button-solid-text, var(--_icon-button-solid-text, var(--ui-text-on-accent)));
|
|
5019
5152
|
}
|
|
5020
|
-
[data-component~="ui-icon-button"][data-ui-icon-button-state~="variant=ghost"][aria-expanded="true"][data-v-
|
|
5153
|
+
[data-component~="ui-icon-button"][data-ui-icon-button-state~="variant=ghost"][aria-expanded="true"][data-v-219fa683]:enabled:not([aria-disabled="true"]) {
|
|
5021
5154
|
background-color: var(
|
|
5022
5155
|
--ui-icon-button-active-surface,
|
|
5023
5156
|
color-mix(in srgb, currentColor 16%, transparent)
|
|
@@ -5027,7 +5160,7 @@ html[data-ui-input-modality="touch"] [data-component~="ui-icon-button"][data-v-b
|
|
|
5027
5160
|
}
|
|
5028
5161
|
|
|
5029
5162
|
/* Native toggle state persists after pointer release, including during loading. */
|
|
5030
|
-
[data-component~="ui-icon-button"][data-ui-icon-button-state~="variant=outline"][aria-pressed="true"][data-v-
|
|
5163
|
+
[data-component~="ui-icon-button"][data-ui-icon-button-state~="variant=outline"][aria-pressed="true"][data-v-219fa683]:enabled {
|
|
5031
5164
|
background-color: var(
|
|
5032
5165
|
--ui-icon-button-active-surface,
|
|
5033
5166
|
color-mix(in srgb, currentColor 12%, var(--ui-surface-default))
|
|
@@ -5035,47 +5168,61 @@ html[data-ui-input-modality="touch"] [data-component~="ui-icon-button"][data-v-b
|
|
|
5035
5168
|
background-image: none;
|
|
5036
5169
|
box-shadow: var(--ui-pressed);
|
|
5037
5170
|
}
|
|
5038
|
-
[data-component~="ui-icon-button"][data-v-
|
|
5171
|
+
[data-component~="ui-icon-button"][data-v-219fa683]:active:enabled:not([aria-disabled="true"]) {
|
|
5039
5172
|
transform: scale(var(--ui-icon-button-active-scale, 0.96));
|
|
5040
5173
|
}
|
|
5041
|
-
:is([data-component~="ui-icon-button"][data-ui-icon-button-state~="loading"][data-v-
|
|
5174
|
+
:is([data-component~="ui-icon-button"][data-ui-icon-button-state~="loading"][data-v-219fa683], [data-component~="ui-icon-button"][data-ui-icon-button-state~="pending"][data-v-219fa683]) {
|
|
5042
5175
|
cursor: progress;
|
|
5043
5176
|
}
|
|
5044
|
-
.content[data-v-
|
|
5177
|
+
.content[data-v-219fa683] {
|
|
5045
5178
|
display: inline-flex;
|
|
5046
5179
|
align-items: center;
|
|
5047
5180
|
justify-content: center;
|
|
5048
5181
|
}
|
|
5049
5182
|
:is([data-component~="ui-icon-button"][data-ui-icon-button-state~="loading"], [data-component~="ui-icon-button"][data-ui-icon-button-state~="pending"])
|
|
5050
|
-
.content[data-v-
|
|
5183
|
+
.content[data-v-219fa683] {
|
|
5051
5184
|
display: none;
|
|
5052
5185
|
}
|
|
5053
5186
|
@media (prefers-reduced-motion: reduce) {
|
|
5054
|
-
[data-component~="ui-icon-button"][data-ui-icon-button-state~="anticipatory"] .content[data-v-
|
|
5187
|
+
[data-component~="ui-icon-button"][data-ui-icon-button-state~="anticipatory"] .content[data-v-219fa683] {
|
|
5055
5188
|
transition: none;
|
|
5056
5189
|
}
|
|
5057
5190
|
}
|
|
5058
|
-
[data-component~="ui-icon-button"][data-v-
|
|
5191
|
+
[data-component~="ui-icon-button"][data-v-219fa683]:focus-visible {
|
|
5059
5192
|
outline: none;
|
|
5060
5193
|
box-shadow: var(--ui-focus-halo);
|
|
5061
5194
|
}
|
|
5062
|
-
[data-component~="ui-icon-button"][data-ui-icon-button-state~="variant=outline"][
|
|
5195
|
+
[data-component~="ui-icon-button"][data-ui-icon-button-state~="variant=outline"][data-v-219fa683]:focus-visible {
|
|
5196
|
+
box-shadow:
|
|
5197
|
+
var(--ui-action-shadow, var(--_ui-action-shadow)),
|
|
5198
|
+
var(--ui-focus-halo);
|
|
5199
|
+
}
|
|
5200
|
+
[data-component~="ui-icon-button"][data-ui-icon-button-state~="variant=solid"][data-v-219fa683]:focus-visible {
|
|
5201
|
+
box-shadow:
|
|
5202
|
+
var(--ui-icon-button-solid-shadow, var(--ui-action-shadow, var(--_ui-action-shadow))),
|
|
5203
|
+
var(--ui-focus-halo);
|
|
5204
|
+
}
|
|
5205
|
+
[data-component~="ui-icon-button"][data-v-219fa683]:is([data-component~="ui-icon-button"][data-ui-icon-button-state~="variant=outline"], [data-component~="ui-icon-button"][data-ui-icon-button-state~="variant=solid"]):active:enabled:not([aria-disabled="true"]) {
|
|
5206
|
+
background-image: none;
|
|
5207
|
+
box-shadow: var(--ui-pressed);
|
|
5208
|
+
}
|
|
5209
|
+
[data-component~="ui-icon-button"][data-ui-icon-button-state~="variant=outline"][aria-pressed="true"][data-v-219fa683]:enabled:focus-visible {
|
|
5063
5210
|
box-shadow:
|
|
5064
5211
|
var(--ui-pressed),
|
|
5065
5212
|
var(--ui-focus-halo);
|
|
5066
5213
|
}
|
|
5067
5214
|
@media (forced-colors: active) {
|
|
5068
|
-
[data-component~="ui-icon-button"][data-ui-icon-button-state~="variant=outline"][aria-pressed="true"][data-v-
|
|
5215
|
+
[data-component~="ui-icon-button"][data-ui-icon-button-state~="variant=outline"][aria-pressed="true"][data-v-219fa683]:enabled {
|
|
5069
5216
|
outline: var(--ui-focus-width) solid Highlight;
|
|
5070
5217
|
outline-offset: calc(-2 * var(--ui-focus-width));
|
|
5071
5218
|
}
|
|
5072
|
-
[data-component~="ui-icon-button"][data-ui-icon-button-state~="variant=outline"][aria-pressed="true"][data-v-
|
|
5219
|
+
[data-component~="ui-icon-button"][data-ui-icon-button-state~="variant=outline"][aria-pressed="true"][data-v-219fa683]:enabled:focus-visible {
|
|
5073
5220
|
outline-offset: var(--ui-focus-width);
|
|
5074
5221
|
}
|
|
5075
5222
|
}
|
|
5076
5223
|
|
|
5077
5224
|
/* Disabled is a flat neutral control, independent of the active variant's tone. */
|
|
5078
|
-
[data-component~="ui-icon-button"][data-v-
|
|
5225
|
+
[data-component~="ui-icon-button"][data-v-219fa683]:disabled {
|
|
5079
5226
|
border-color: var(--ui-disabled-border);
|
|
5080
5227
|
background-color: var(--ui-disabled-surface);
|
|
5081
5228
|
color: var(--ui-disabled-text);
|
|
@@ -5085,23 +5232,23 @@ html[data-ui-input-modality="touch"] [data-component~="ui-icon-button"][data-v-b
|
|
|
5085
5232
|
box-shadow: none;
|
|
5086
5233
|
background-image: none;
|
|
5087
5234
|
}
|
|
5088
|
-
[data-component~="ui-icon-button"][data-ui-icon-button-state~="variant=ghost"][data-v-
|
|
5235
|
+
[data-component~="ui-icon-button"][data-ui-icon-button-state~="variant=ghost"][data-v-219fa683]:disabled {
|
|
5089
5236
|
border-color: transparent;
|
|
5090
5237
|
}
|
|
5091
|
-
[data-component~="ui-icon-button"][data-v-
|
|
5238
|
+
[data-component~="ui-icon-button"][data-v-219fa683] {
|
|
5092
5239
|
--_icon-button-icon-default: var(--ui-icon-size-md);
|
|
5093
5240
|
/* A slotted ui-icon is its own component, out of reach of the svg rule below; these are its
|
|
5094
5241
|
defaults, which its own --ui-icon-* hooks still override. */
|
|
5095
5242
|
--_ui-default-icon-size: var(--_ui-icon-button-icon-size, var(--_icon-button-icon-default));
|
|
5096
5243
|
--_ui-default-icon-stroke-width: var(--_ui-icon-button-icon-stroke-width, 1.75);
|
|
5097
5244
|
}
|
|
5098
|
-
[data-component~="ui-icon-button"][data-ui-icon-button-state~="size=sm"][data-v-
|
|
5245
|
+
[data-component~="ui-icon-button"][data-ui-icon-button-state~="size=sm"][data-v-219fa683] {
|
|
5099
5246
|
--_icon-button-icon-default: var(--ui-icon-size-sm);
|
|
5100
5247
|
}
|
|
5101
|
-
[data-component~="ui-icon-button"][data-ui-icon-button-state~="size=lg"][data-v-
|
|
5248
|
+
[data-component~="ui-icon-button"][data-ui-icon-button-state~="size=lg"][data-v-219fa683] {
|
|
5102
5249
|
--_icon-button-icon-default: var(--ui-icon-size-lg);
|
|
5103
5250
|
}
|
|
5104
|
-
svg[data-v-
|
|
5251
|
+
svg[data-v-219fa683-s] {
|
|
5105
5252
|
inline-size: var(--_ui-icon-button-icon-size, var(--_icon-button-icon-default));
|
|
5106
5253
|
block-size: var(--_ui-icon-button-icon-size, var(--_icon-button-icon-default));
|
|
5107
5254
|
flex-shrink: 0;
|
|
@@ -5109,7 +5256,7 @@ svg[data-v-b66a1661-s] {
|
|
|
5109
5256
|
}
|
|
5110
5257
|
|
|
5111
5258
|
/* A component that sets its display still honours the hidden attribute on its root. */
|
|
5112
|
-
[data-component~="ui-icon-button"][hidden][data-v-
|
|
5259
|
+
[data-component~="ui-icon-button"][hidden][data-v-219fa683] {
|
|
5113
5260
|
display: none;
|
|
5114
5261
|
}
|
|
5115
5262
|
|
|
@@ -5489,7 +5636,7 @@ svg[data-v-b66a1661-s] {
|
|
|
5489
5636
|
whole value is. The action slot takes one button at the end, inside the border, for the one
|
|
5490
5637
|
thing the field is for ("Continue" after a site's address), so it reads as the field's action
|
|
5491
5638
|
and not the form's. */
|
|
5492
|
-
[data-component~="ui-input-group"][data-v-
|
|
5639
|
+
[data-component~="ui-input-group"][data-v-ac4d8095] {
|
|
5493
5640
|
/* The group's own border and height stand for the input's, so the group is a lone Input's height.
|
|
5494
5641
|
Hooks do not inherit, so these are defaults for the input; its own hooks still win. */
|
|
5495
5642
|
--_ui-default-input-border-width: 0;
|
|
@@ -5534,38 +5681,43 @@ svg[data-v-b66a1661-s] {
|
|
|
5534
5681
|
border-color var(--ui-motion-fast) var(--ui-motion-ease),
|
|
5535
5682
|
box-shadow var(--ui-motion-fast) var(--ui-motion-ease);
|
|
5536
5683
|
}
|
|
5684
|
+
[data-component~="ui-input-group"][data-ui-input-group-state~="variant=subtle"][data-v-ac4d8095] {
|
|
5685
|
+
border-color: var(--ui-border);
|
|
5686
|
+
background: var(--ui-surface-muted);
|
|
5687
|
+
box-shadow: none;
|
|
5688
|
+
}
|
|
5537
5689
|
|
|
5538
5690
|
/* The frame takes its input's size, so a small group lines up with small buttons and fields. */
|
|
5539
|
-
[data-component~="ui-input-group"][data-v-
|
|
5691
|
+
[data-component~="ui-input-group"][data-v-ac4d8095]:has(.field [data-ui-input-state~="size=sm"]) {
|
|
5540
5692
|
min-block-size: var(--ui-control-size-sm);
|
|
5541
5693
|
}
|
|
5542
|
-
[data-component~="ui-input-group"][data-v-
|
|
5694
|
+
[data-component~="ui-input-group"][data-v-ac4d8095]:has(.field [data-ui-input-state~="size=lg"]) {
|
|
5543
5695
|
min-block-size: var(--ui-control-size-lg);
|
|
5544
5696
|
}
|
|
5545
5697
|
@media (pointer: coarse) {
|
|
5546
|
-
[data-component~="ui-input-group"][data-v-
|
|
5698
|
+
[data-component~="ui-input-group"][data-v-ac4d8095]:has(.field [data-ui-input-state~="size=sm"]) {
|
|
5547
5699
|
min-block-size: var(--ui-control-min-block-size);
|
|
5548
5700
|
}
|
|
5549
5701
|
}
|
|
5550
|
-
[data-component~="ui-input-group"][data-v-
|
|
5702
|
+
[data-component~="ui-input-group"][data-v-ac4d8095]:hover:not(:has(:is(input, textarea):focus, :is(input, textarea):disabled, :is(input, textarea):read-only, [aria-invalid="true"], :is(:user-invalid, [data-user-invalid]))) {
|
|
5551
5703
|
border-color: var(--ui-control-border-hover, var(--ui-text-secondary));
|
|
5552
5704
|
}
|
|
5553
5705
|
|
|
5554
5706
|
/* The ring shows when the field's input would show its own: when it is focus-visible, which a
|
|
5555
5707
|
text input is for a pointer as well as a keyboard. A focused action button draws its own. */
|
|
5556
|
-
[data-component~="ui-input-group"][data-v-
|
|
5708
|
+
[data-component~="ui-input-group"][data-v-ac4d8095]:has(.field :is(input, textarea):focus-visible) {
|
|
5557
5709
|
border-color: var(--ui-control-focus, var(--ui-accent-solid));
|
|
5558
5710
|
box-shadow:
|
|
5559
5711
|
var(--ui-control-inset),
|
|
5560
5712
|
var(--ui-control-focus-halo-shadow);
|
|
5561
5713
|
}
|
|
5562
|
-
[data-component~="ui-input-group"][data-v-
|
|
5714
|
+
[data-component~="ui-input-group"][data-v-ac4d8095]:has([aria-invalid="true"], :is(:user-invalid, [data-user-invalid])) {
|
|
5563
5715
|
border-color: var(
|
|
5564
5716
|
--ui-input-group-invalid-border,
|
|
5565
5717
|
var(--ui-field-danger, var(--ui-danger-solid))
|
|
5566
5718
|
);
|
|
5567
5719
|
}
|
|
5568
|
-
[data-component~="ui-input-group"][data-v-
|
|
5720
|
+
[data-component~="ui-input-group"][data-v-ac4d8095]:has(:is(input, textarea):is([aria-invalid="true"], :is(:user-invalid, [data-user-invalid])):focus-visible) {
|
|
5569
5721
|
box-shadow: var(
|
|
5570
5722
|
--ui-input-group-invalid-focus-shadow,
|
|
5571
5723
|
var(--ui-control-inset),
|
|
@@ -5579,23 +5731,23 @@ svg[data-v-b66a1661-s] {
|
|
|
5579
5731
|
|
|
5580
5732
|
/* Forced colors drop box shadows, so the focus ring becomes an outline. */
|
|
5581
5733
|
@media (forced-colors: active) {
|
|
5582
|
-
[data-component~="ui-input-group"][data-v-
|
|
5734
|
+
[data-component~="ui-input-group"][data-v-ac4d8095]:has(:is(input, textarea):focus-visible) {
|
|
5583
5735
|
outline: var(--ui-focus-width) solid Highlight;
|
|
5584
5736
|
outline-offset: var(--ui-border-width);
|
|
5585
5737
|
}
|
|
5586
5738
|
}
|
|
5587
|
-
[data-component~="ui-input-group"][data-ui-input-group-state~="disabled"][data-v-
|
|
5588
|
-
[data-component~="ui-input-group"][data-v-
|
|
5739
|
+
[data-component~="ui-input-group"][data-ui-input-group-state~="disabled"][data-v-ac4d8095],
|
|
5740
|
+
[data-component~="ui-input-group"][data-v-ac4d8095]:has(:is(input, textarea):disabled) {
|
|
5589
5741
|
background: var(--ui-control-surface-disabled, var(--ui-surface-muted));
|
|
5590
5742
|
box-shadow: none;
|
|
5591
5743
|
cursor: not-allowed;
|
|
5592
5744
|
}
|
|
5593
|
-
.field[data-v-
|
|
5745
|
+
.field[data-v-ac4d8095] {
|
|
5594
5746
|
display: flex;
|
|
5595
5747
|
flex: 1;
|
|
5596
5748
|
min-inline-size: 0;
|
|
5597
5749
|
}
|
|
5598
|
-
.affix[data-v-
|
|
5750
|
+
.affix[data-v-ac4d8095] {
|
|
5599
5751
|
display: inline-flex;
|
|
5600
5752
|
flex: none;
|
|
5601
5753
|
align-items: center;
|
|
@@ -5607,21 +5759,21 @@ svg[data-v-b66a1661-s] {
|
|
|
5607
5759
|
}
|
|
5608
5760
|
|
|
5609
5761
|
/* Fixed text is part of the value, but should not look editable. */
|
|
5610
|
-
.affix[data-v-
|
|
5611
|
-
.affix[data-v-
|
|
5762
|
+
.affix[data-v-ac4d8095]:has([slot="prefix"]),
|
|
5763
|
+
.affix[data-v-ac4d8095]:has([slot="suffix"]) {
|
|
5612
5764
|
background: var(--ui-surface-muted);
|
|
5613
5765
|
}
|
|
5614
|
-
.affix[data-v-
|
|
5766
|
+
.affix[data-v-ac4d8095]:has([slot="prefix"]) {
|
|
5615
5767
|
border-inline-end: var(--ui-border-width) solid var(--ui-border-divider);
|
|
5616
5768
|
}
|
|
5617
|
-
.affix[data-v-
|
|
5769
|
+
.affix[data-v-ac4d8095]:has([slot="suffix"]) {
|
|
5618
5770
|
border-inline-start: var(--ui-border-width) solid var(--ui-border-divider);
|
|
5619
5771
|
}
|
|
5620
|
-
[data-component~="ui-input-group"][data-ui-input-group-state~="prefixKind=icon"][data-v-
|
|
5772
|
+
[data-component~="ui-input-group"][data-ui-input-group-state~="prefixKind=icon"][data-v-ac4d8095] {
|
|
5621
5773
|
--_ui-default-input-padding-inline-start: var(--ui-space-2);
|
|
5622
5774
|
}
|
|
5623
5775
|
[data-component~="ui-input-group"][data-ui-input-group-state~="prefixKind=icon"]
|
|
5624
|
-
.affix[data-v-
|
|
5776
|
+
.affix[data-v-ac4d8095]:first-child {
|
|
5625
5777
|
padding-inline-end: 0;
|
|
5626
5778
|
border-inline-end: 0;
|
|
5627
5779
|
background: transparent;
|
|
@@ -5629,7 +5781,7 @@ svg[data-v-b66a1661-s] {
|
|
|
5629
5781
|
|
|
5630
5782
|
/* Centred rather than padded above and below: the group is exactly a lone Input's height, so a
|
|
5631
5783
|
small button sits inside it with the difference split evenly, and the field keeps its height. */
|
|
5632
|
-
.action[data-v-
|
|
5784
|
+
.action[data-v-ac4d8095] {
|
|
5633
5785
|
display: flex;
|
|
5634
5786
|
flex: none;
|
|
5635
5787
|
align-items: center;
|
|
@@ -5637,14 +5789,14 @@ svg[data-v-b66a1661-s] {
|
|
|
5637
5789
|
}
|
|
5638
5790
|
|
|
5639
5791
|
/* Multiline text owns the first row; its action remains inside the same frame below it. */
|
|
5640
|
-
[data-component~="ui-input-group"][data-ui-input-group-state~="multiline"][data-v-
|
|
5792
|
+
[data-component~="ui-input-group"][data-ui-input-group-state~="multiline"][data-v-ac4d8095] {
|
|
5641
5793
|
display: grid;
|
|
5642
5794
|
grid-template-columns: auto minmax(0, 1fr) auto;
|
|
5643
5795
|
}
|
|
5644
|
-
[data-component~="ui-input-group"][data-ui-input-group-state~="multiline"] .field[data-v-
|
|
5796
|
+
[data-component~="ui-input-group"][data-ui-input-group-state~="multiline"] .field[data-v-ac4d8095] {
|
|
5645
5797
|
grid-column: 2;
|
|
5646
5798
|
}
|
|
5647
|
-
[data-component~="ui-input-group"][data-ui-input-group-state~="multiline"] .action[data-v-
|
|
5799
|
+
[data-component~="ui-input-group"][data-ui-input-group-state~="multiline"] .action[data-v-ac4d8095] {
|
|
5648
5800
|
grid-column: 1 / -1;
|
|
5649
5801
|
justify-content: end;
|
|
5650
5802
|
padding: var(--ui-space-2);
|
|
@@ -5653,30 +5805,30 @@ svg[data-v-b66a1661-s] {
|
|
|
5653
5805
|
|
|
5654
5806
|
/* The same textarea keeps its full resizeable box. Its text reserves the action's live width,
|
|
5655
5807
|
so a translated label or pending indicator cannot cover what the person types. */
|
|
5656
|
-
[data-component~="ui-input-group"][data-ui-input-group-state~="multiline"][data-ui-input-group-state~="actionPosition=top-end"][data-v-
|
|
5808
|
+
[data-component~="ui-input-group"][data-ui-input-group-state~="multiline"][data-ui-input-group-state~="actionPosition=top-end"][data-v-ac4d8095] {
|
|
5657
5809
|
--_ui-default-textarea-padding-inline-end: calc(
|
|
5658
5810
|
var(--_ui-input-group-action-inline-size, 7rem) + var(--ui-space-3)
|
|
5659
5811
|
);
|
|
5660
5812
|
}
|
|
5661
5813
|
[data-component~="ui-input-group"][data-ui-input-group-state~="multiline"][data-ui-input-group-state~="actionPosition=top-end"]
|
|
5662
|
-
.field[data-v-
|
|
5814
|
+
.field[data-v-ac4d8095] {
|
|
5663
5815
|
grid-row: 1;
|
|
5664
5816
|
}
|
|
5665
5817
|
[data-component~="ui-input-group"][data-ui-input-group-state~="multiline"][data-ui-input-group-state~="actionPosition=top-end"]
|
|
5666
|
-
.action[data-v-
|
|
5818
|
+
.action[data-v-ac4d8095] {
|
|
5667
5819
|
grid-column: 2;
|
|
5668
5820
|
grid-row: 1;
|
|
5669
5821
|
align-self: start;
|
|
5670
5822
|
justify-self: end;
|
|
5671
5823
|
padding: var(--ui-space-2);
|
|
5672
5824
|
}
|
|
5673
|
-
.affix[data-v-
|
|
5674
|
-
.action[data-v-
|
|
5825
|
+
.affix[data-v-ac4d8095]:empty,
|
|
5826
|
+
.action[data-v-ac4d8095]:empty {
|
|
5675
5827
|
display: none;
|
|
5676
5828
|
}
|
|
5677
5829
|
|
|
5678
5830
|
/* A component that sets its display still honours the hidden attribute on its root. */
|
|
5679
|
-
[data-component~="ui-input-group"][hidden][data-v-
|
|
5831
|
+
[data-component~="ui-input-group"][hidden][data-v-ac4d8095] {
|
|
5680
5832
|
display: none;
|
|
5681
5833
|
}
|
|
5682
5834
|
|
|
@@ -8749,8 +8901,9 @@ tbody tr[data-v-722ca2ea-s]:last-child > * {
|
|
|
8749
8901
|
syntax: "*";
|
|
8750
8902
|
inherits: false;
|
|
8751
8903
|
}
|
|
8752
|
-
[data-component~="ui-toast"][data-v-
|
|
8904
|
+
[data-component~="ui-toast"][data-v-af4b9641] {
|
|
8753
8905
|
--_ui-toast-accent: var(--ui-border-strong);
|
|
8906
|
+
--_ui-toast-surface: var(--ui-surface-muted);
|
|
8754
8907
|
|
|
8755
8908
|
display: flex;
|
|
8756
8909
|
align-items: center;
|
|
@@ -8759,42 +8912,50 @@ tbody tr[data-v-722ca2ea-s]:last-child > * {
|
|
|
8759
8912
|
inline-size: 100%;
|
|
8760
8913
|
margin: 0;
|
|
8761
8914
|
padding: var(--ui-space-3) var(--ui-space-4);
|
|
8915
|
+
/* The close button's internal space supplies the rest of the trailing inset. */
|
|
8916
|
+
padding-inline-end: var(--ui-space-2);
|
|
8762
8917
|
border: var(--ui-border-width) solid
|
|
8763
|
-
var(
|
|
8764
|
-
|
|
8765
|
-
|
|
8918
|
+
var(
|
|
8919
|
+
--ui-toast-border,
|
|
8920
|
+
var(--ui-overlay-border, var(--ui-toast-accent, var(--_ui-toast-accent)))
|
|
8921
|
+
);
|
|
8766
8922
|
border-radius: var(--ui-toast-radius, var(--ui-overlay-radius, var(--ui-radius-lg)));
|
|
8767
|
-
background: var(--ui-toast-surface, var(--ui-overlay-surface, var(--
|
|
8923
|
+
background: var(--ui-toast-surface, var(--ui-overlay-surface, var(--_ui-toast-surface)));
|
|
8768
8924
|
color: var(--ui-text-primary);
|
|
8925
|
+
font-family: var(--ui-font-family-sans);
|
|
8926
|
+
font-size: var(--ui-font-size-sm);
|
|
8927
|
+
font-weight: var(--ui-font-normal);
|
|
8928
|
+
line-height: var(--ui-line-height-md);
|
|
8769
8929
|
box-shadow: var(
|
|
8770
8930
|
--ui-toast-shadow,
|
|
8771
8931
|
var(--ui-overlay-shadow, var(--ui-elevation-overlay, var(--ui-shadow-lg)))
|
|
8772
8932
|
);
|
|
8773
8933
|
pointer-events: auto;
|
|
8774
8934
|
}
|
|
8775
|
-
[data-component~="ui-toast"][data-ui-toast-state~="tone=info"][data-v-
|
|
8935
|
+
[data-component~="ui-toast"][data-ui-toast-state~="tone=info"][data-v-af4b9641] {
|
|
8776
8936
|
--_ui-toast-accent: var(--ui-info-solid);
|
|
8937
|
+
--_ui-toast-surface: var(--ui-info-soft);
|
|
8777
8938
|
}
|
|
8778
|
-
[data-component~="ui-toast"][data-ui-toast-state~="tone=success"][data-v-
|
|
8939
|
+
[data-component~="ui-toast"][data-ui-toast-state~="tone=success"][data-v-af4b9641] {
|
|
8779
8940
|
--_ui-toast-accent: var(--ui-success-solid);
|
|
8941
|
+
--_ui-toast-surface: var(--ui-success-soft);
|
|
8780
8942
|
}
|
|
8781
|
-
[data-component~="ui-toast"][data-ui-toast-state~="tone=warning"][data-v-
|
|
8943
|
+
[data-component~="ui-toast"][data-ui-toast-state~="tone=warning"][data-v-af4b9641] {
|
|
8782
8944
|
--_ui-toast-accent: var(--ui-warning-solid);
|
|
8945
|
+
--_ui-toast-surface: var(--ui-warning-soft);
|
|
8783
8946
|
}
|
|
8784
|
-
[data-component~="ui-toast"][data-ui-toast-state~="tone=danger"][data-v-
|
|
8947
|
+
[data-component~="ui-toast"][data-ui-toast-state~="tone=danger"][data-v-af4b9641] {
|
|
8785
8948
|
--_ui-toast-accent: var(--ui-danger-solid);
|
|
8949
|
+
--_ui-toast-surface: var(--ui-danger-soft);
|
|
8786
8950
|
}
|
|
8787
|
-
.message[data-v-
|
|
8951
|
+
.message[data-v-af4b9641] {
|
|
8788
8952
|
min-inline-size: 0;
|
|
8789
8953
|
flex: 1;
|
|
8790
8954
|
}
|
|
8791
|
-
.action[data-v-
|
|
8955
|
+
.action[data-v-af4b9641]:not(:has(> *)) {
|
|
8792
8956
|
display: none;
|
|
8793
8957
|
}
|
|
8794
|
-
|
|
8795
|
-
margin-inline-end: calc(var(--ui-space-2) * -1);
|
|
8796
|
-
}
|
|
8797
|
-
[data-component~="ui-toast"][hidden][data-v-241766bc] {
|
|
8958
|
+
[data-component~="ui-toast"][hidden][data-v-af4b9641] {
|
|
8798
8959
|
display: none;
|
|
8799
8960
|
}
|
|
8800
8961
|
|
|
@@ -8823,7 +8984,7 @@ tbody tr[data-v-722ca2ea-s]:last-child > * {
|
|
|
8823
8984
|
syntax: "*";
|
|
8824
8985
|
inherits: false;
|
|
8825
8986
|
}
|
|
8826
|
-
[data-component~="ui-toast-region"][data-v-
|
|
8987
|
+
[data-component~="ui-toast-region"][data-v-1a7d67f7] {
|
|
8827
8988
|
/* Hooks do not inherit, so the parts below read them from the root. */
|
|
8828
8989
|
--_ui-toast-region-surface: var(--ui-toast-region-surface);
|
|
8829
8990
|
--_ui-toast-region-border: var(--ui-toast-region-border);
|
|
@@ -8853,81 +9014,93 @@ tbody tr[data-v-722ca2ea-s]:last-child > * {
|
|
|
8853
9014
|
box-shadow: none;
|
|
8854
9015
|
pointer-events: none;
|
|
8855
9016
|
}
|
|
8856
|
-
[data-component~="ui-toast-region"][data-v-
|
|
9017
|
+
[data-component~="ui-toast-region"][data-v-1a7d67f7]:not(:popover-open) {
|
|
8857
9018
|
display: none;
|
|
8858
9019
|
}
|
|
8859
|
-
[data-component~="ui-toast-region"][data-ui-toast-region-state~="placement=top-start"][data-v-
|
|
8860
|
-
[data-component~="ui-toast-region"][data-ui-toast-region-state~="placement=bottom-start"][data-v-
|
|
9020
|
+
[data-component~="ui-toast-region"][data-ui-toast-region-state~="placement=top-start"][data-v-1a7d67f7],
|
|
9021
|
+
[data-component~="ui-toast-region"][data-ui-toast-region-state~="placement=bottom-start"][data-v-1a7d67f7] {
|
|
8861
9022
|
left: auto;
|
|
8862
9023
|
right: auto;
|
|
8863
9024
|
inset-inline-start: calc(var(--ui-space-4) + env(safe-area-inset-left));
|
|
8864
9025
|
transform: none;
|
|
8865
9026
|
}
|
|
8866
|
-
[data-component~="ui-toast-region"][data-ui-toast-region-state~="placement=top-end"][data-v-
|
|
8867
|
-
[data-component~="ui-toast-region"][data-ui-toast-region-state~="placement=bottom-end"][data-v-
|
|
9027
|
+
[data-component~="ui-toast-region"][data-ui-toast-region-state~="placement=top-end"][data-v-1a7d67f7],
|
|
9028
|
+
[data-component~="ui-toast-region"][data-ui-toast-region-state~="placement=bottom-end"][data-v-1a7d67f7] {
|
|
8868
9029
|
left: auto;
|
|
8869
9030
|
right: auto;
|
|
8870
9031
|
inset-inline-end: calc(var(--ui-space-4) + env(safe-area-inset-right));
|
|
8871
9032
|
transform: none;
|
|
8872
9033
|
}
|
|
8873
|
-
[data-component~="ui-toast-region"][data-ui-toast-region-state~="placement=bottom"][data-v-
|
|
8874
|
-
[data-component~="ui-toast-region"][data-ui-toast-region-state~="placement=bottom-start"][data-v-
|
|
8875
|
-
[data-component~="ui-toast-region"][data-ui-toast-region-state~="placement=bottom-end"][data-v-
|
|
9034
|
+
[data-component~="ui-toast-region"][data-ui-toast-region-state~="placement=bottom"][data-v-1a7d67f7],
|
|
9035
|
+
[data-component~="ui-toast-region"][data-ui-toast-region-state~="placement=bottom-start"][data-v-1a7d67f7],
|
|
9036
|
+
[data-component~="ui-toast-region"][data-ui-toast-region-state~="placement=bottom-end"][data-v-1a7d67f7] {
|
|
8876
9037
|
top: auto;
|
|
8877
9038
|
bottom: calc(var(--ui-space-4) + env(safe-area-inset-bottom));
|
|
8878
9039
|
}
|
|
8879
|
-
[data-component~="ui-toast-region"] > .toast[data-v-
|
|
8880
|
-
[data-component~="ui-toast-region"] > [data-v-
|
|
9040
|
+
[data-component~="ui-toast-region"] > .toast[data-v-1a7d67f7],
|
|
9041
|
+
[data-component~="ui-toast-region"] > [data-v-1a7d67f7-s] {
|
|
8881
9042
|
pointer-events: auto;
|
|
8882
9043
|
}
|
|
8883
|
-
.toast[data-v-
|
|
9044
|
+
.toast[data-v-1a7d67f7] {
|
|
9045
|
+
--_ui-toast-region-accent: var(--ui-border-strong);
|
|
9046
|
+
--_ui-toast-region-tone-surface: var(--ui-surface-muted);
|
|
8884
9047
|
display: grid;
|
|
8885
9048
|
grid-template-columns: 1fr auto;
|
|
8886
9049
|
gap: var(--ui-space-2);
|
|
8887
9050
|
align-items: start;
|
|
8888
9051
|
border: var(--ui-border-width) solid
|
|
8889
|
-
var(--_ui-toast-region-border, var(--ui-overlay-border, var(--
|
|
9052
|
+
var(--_ui-toast-region-border, var(--ui-overlay-border, var(--_ui-toast-region-accent)));
|
|
8890
9053
|
border-radius: var(--_ui-toast-region-radius, var(--ui-overlay-radius, var(--ui-radius-lg)));
|
|
8891
9054
|
padding: var(--ui-space-3) var(--ui-space-4);
|
|
9055
|
+
/* The close button's internal space supplies the rest of the trailing inset. */
|
|
9056
|
+
padding-inline-end: var(--ui-space-2);
|
|
8892
9057
|
background: var(
|
|
8893
9058
|
--_ui-toast-region-surface,
|
|
8894
|
-
var(--ui-overlay-surface, var(--
|
|
9059
|
+
var(--ui-overlay-surface, var(--_ui-toast-region-tone-surface))
|
|
8895
9060
|
);
|
|
8896
9061
|
color: var(--ui-text-primary);
|
|
9062
|
+
font-family: var(--ui-font-family-sans);
|
|
9063
|
+
font-size: var(--ui-font-size-sm);
|
|
9064
|
+
font-weight: var(--ui-font-normal);
|
|
9065
|
+
line-height: var(--ui-line-height-md);
|
|
8897
9066
|
box-shadow: var(
|
|
8898
9067
|
--_ui-toast-region-shadow,
|
|
8899
9068
|
var(--ui-overlay-shadow, var(--ui-elevation-overlay, var(--ui-shadow-lg)))
|
|
8900
9069
|
);
|
|
8901
|
-
animation: ui-toast-enter-
|
|
9070
|
+
animation: ui-toast-enter-1a7d67f7 var(--_ui-toast-region-enter-duration, 0.32s)
|
|
8902
9071
|
var(--ui-motion-ease-out, cubic-bezier(0.16, 1, 0.3, 1)) both;
|
|
8903
9072
|
}
|
|
8904
|
-
.toast[data-tone="info"][data-v-
|
|
8905
|
-
|
|
9073
|
+
.toast[data-tone="info"][data-v-1a7d67f7] {
|
|
9074
|
+
--_ui-toast-region-accent: var(--ui-info-solid);
|
|
9075
|
+
--_ui-toast-region-tone-surface: var(--ui-info-soft);
|
|
8906
9076
|
}
|
|
8907
|
-
.toast[data-tone="success"][data-v-
|
|
8908
|
-
|
|
9077
|
+
.toast[data-tone="success"][data-v-1a7d67f7] {
|
|
9078
|
+
--_ui-toast-region-accent: var(--ui-success-solid);
|
|
9079
|
+
--_ui-toast-region-tone-surface: var(--ui-success-soft);
|
|
8909
9080
|
}
|
|
8910
|
-
.toast[data-tone="warning"][data-v-
|
|
8911
|
-
|
|
9081
|
+
.toast[data-tone="warning"][data-v-1a7d67f7] {
|
|
9082
|
+
--_ui-toast-region-accent: var(--ui-warning-solid);
|
|
9083
|
+
--_ui-toast-region-tone-surface: var(--ui-warning-soft);
|
|
8912
9084
|
}
|
|
8913
|
-
.toast[data-tone="danger"][data-v-
|
|
8914
|
-
|
|
9085
|
+
.toast[data-tone="danger"][data-v-1a7d67f7] {
|
|
9086
|
+
--_ui-toast-region-accent: var(--ui-danger-solid);
|
|
9087
|
+
--_ui-toast-region-tone-surface: var(--ui-danger-soft);
|
|
8915
9088
|
}
|
|
8916
9089
|
|
|
8917
9090
|
/* Leaving slides on down and fades; the controller removes the toast when this ends. */
|
|
8918
|
-
.toast.closing[data-v-
|
|
8919
|
-
animation: ui-toast-exit-
|
|
9091
|
+
.toast.closing[data-v-1a7d67f7] {
|
|
9092
|
+
animation: ui-toast-exit-1a7d67f7 var(--_ui-toast-region-exit-duration, 0.22s) var(--ui-motion-ease) both;
|
|
8920
9093
|
pointer-events: none;
|
|
8921
9094
|
}
|
|
8922
9095
|
:is([data-component~="ui-toast-region"][data-ui-toast-region-state~="placement=bottom"], [data-component~="ui-toast-region"][data-ui-toast-region-state~="placement=bottom-start"], [data-component~="ui-toast-region"][data-ui-toast-region-state~="placement=bottom-end"])
|
|
8923
|
-
.toast[data-v-
|
|
8924
|
-
animation-name: ui-toast-enter-bottom-
|
|
9096
|
+
.toast[data-v-1a7d67f7] {
|
|
9097
|
+
animation-name: ui-toast-enter-bottom-1a7d67f7;
|
|
8925
9098
|
}
|
|
8926
9099
|
:is([data-component~="ui-toast-region"][data-ui-toast-region-state~="placement=bottom"], [data-component~="ui-toast-region"][data-ui-toast-region-state~="placement=bottom-start"], [data-component~="ui-toast-region"][data-ui-toast-region-state~="placement=bottom-end"])
|
|
8927
|
-
.toast.closing[data-v-
|
|
8928
|
-
animation-name: ui-toast-exit-bottom-
|
|
9100
|
+
.toast.closing[data-v-1a7d67f7] {
|
|
9101
|
+
animation-name: ui-toast-exit-bottom-1a7d67f7;
|
|
8929
9102
|
}
|
|
8930
|
-
@keyframes ui-toast-enter-
|
|
9103
|
+
@keyframes ui-toast-enter-1a7d67f7 {
|
|
8931
9104
|
from {
|
|
8932
9105
|
opacity: 0;
|
|
8933
9106
|
transform: translateY(-1rem);
|
|
@@ -8937,7 +9110,7 @@ to {
|
|
|
8937
9110
|
transform: translateY(0);
|
|
8938
9111
|
}
|
|
8939
9112
|
}
|
|
8940
|
-
@keyframes ui-toast-exit-
|
|
9113
|
+
@keyframes ui-toast-exit-1a7d67f7 {
|
|
8941
9114
|
from {
|
|
8942
9115
|
opacity: 1;
|
|
8943
9116
|
transform: translateY(0);
|
|
@@ -8947,7 +9120,7 @@ to {
|
|
|
8947
9120
|
transform: translateY(0.75rem);
|
|
8948
9121
|
}
|
|
8949
9122
|
}
|
|
8950
|
-
@keyframes ui-toast-enter-bottom-
|
|
9123
|
+
@keyframes ui-toast-enter-bottom-1a7d67f7 {
|
|
8951
9124
|
from {
|
|
8952
9125
|
opacity: 0;
|
|
8953
9126
|
transform: translateY(1rem);
|
|
@@ -8957,7 +9130,7 @@ to {
|
|
|
8957
9130
|
transform: translateY(0);
|
|
8958
9131
|
}
|
|
8959
9132
|
}
|
|
8960
|
-
@keyframes ui-toast-exit-bottom-
|
|
9133
|
+
@keyframes ui-toast-exit-bottom-1a7d67f7 {
|
|
8961
9134
|
from {
|
|
8962
9135
|
opacity: 1;
|
|
8963
9136
|
transform: translateY(0);
|
|
@@ -8968,21 +9141,20 @@ to {
|
|
|
8968
9141
|
}
|
|
8969
9142
|
}
|
|
8970
9143
|
@media (prefers-reduced-motion: reduce) {
|
|
8971
|
-
.toast[data-v-
|
|
9144
|
+
.toast[data-v-1a7d67f7], .toast.closing[data-v-1a7d67f7] {
|
|
8972
9145
|
animation: none;
|
|
8973
9146
|
}
|
|
8974
9147
|
}
|
|
8975
|
-
.message[data-v-
|
|
9148
|
+
.message[data-v-1a7d67f7] {
|
|
8976
9149
|
min-inline-size: 0;
|
|
8977
9150
|
align-self: center;
|
|
8978
9151
|
}
|
|
8979
|
-
.dismiss[data-v-
|
|
9152
|
+
.dismiss[data-v-1a7d67f7] {
|
|
8980
9153
|
align-self: center;
|
|
8981
|
-
margin-inline-end: calc(var(--ui-space-2) * -1);
|
|
8982
9154
|
}
|
|
8983
9155
|
|
|
8984
9156
|
/* A component that sets its display still honours the hidden attribute on its root. */
|
|
8985
|
-
[data-component~="ui-toast-region"][hidden][data-v-
|
|
9157
|
+
[data-component~="ui-toast-region"][hidden][data-v-1a7d67f7] {
|
|
8986
9158
|
display: none;
|
|
8987
9159
|
}
|
|
8988
9160
|
|