@threadlabs/looma 0.13.2 → 0.13.3

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.
@@ -64,16 +64,22 @@
64
64
  display: none;
65
65
  }
66
66
 
67
- [data-component~="ui-affordance-scope"][data-v-0288ef7b] {
67
+ [data-component~="ui-affordance-scope"][data-v-0ec8d3e6] {
68
68
  display: contents;
69
69
  --ui-affordance-scope-engaged: 0;
70
+ --ui-affordance-scope-guide: 1;
70
71
  }
71
- [data-component~="ui-affordance-scope"][data-ui-affordance-scope-state~="engaged"][data-v-0288ef7b] {
72
+ [data-component~="ui-affordance-scope"][data-ui-affordance-scope-state~="engaged"][data-v-0ec8d3e6] {
72
73
  --ui-affordance-scope-engaged: 1;
73
74
  }
74
75
 
76
+ /* Published to descendants: each guide multiplies its opacity by it, so none reaches them all. */
77
+ [data-component~="ui-affordance-scope"][data-ui-affordance-scope-state~="guide=none"][data-v-0ec8d3e6] {
78
+ --ui-affordance-scope-guide: 0;
79
+ }
80
+
75
81
  /* A component that sets its display still honours the hidden attribute on its root. */
76
- [data-component~="ui-affordance-scope"][hidden][data-v-0288ef7b] {
82
+ [data-component~="ui-affordance-scope"][hidden][data-v-0ec8d3e6] {
77
83
  display: none;
78
84
  }
79
85
 
@@ -2654,39 +2660,39 @@ from {
2654
2660
  display: none;
2655
2661
  }
2656
2662
 
2657
- [data-component~="ui-editor-table-overlay"][data-v-af4935bb] {
2663
+ [data-component~="ui-editor-table-overlay"][data-v-0de9cbcc] {
2658
2664
  display: block;
2659
2665
  width: 100%;
2660
2666
  height: 100%;
2661
2667
  overflow: visible;
2662
2668
  pointer-events: none;
2663
2669
  }
2664
- [data-component~="ui-editor-table-overlay"][data-v-af4935bb] {
2670
+ [data-component~="ui-editor-table-overlay"][data-v-0de9cbcc] {
2665
2671
  position: relative;
2666
2672
  width: 100%;
2667
2673
  height: 100%;
2668
2674
  overflow: visible;
2669
2675
  pointer-events: none;
2670
2676
  }
2671
- .rows[data-v-af4935bb],
2672
- .cols[data-v-af4935bb] {
2677
+ .rows[data-v-0de9cbcc],
2678
+ .cols[data-v-0de9cbcc] {
2673
2679
  pointer-events: none;
2674
2680
  position: absolute;
2675
2681
  }
2676
- .rows[data-v-af4935bb] {
2682
+ .rows[data-v-0de9cbcc] {
2677
2683
  inset: 0;
2678
2684
  width: 100%;
2679
2685
  }
2680
- .cols[data-v-af4935bb] {
2686
+ .cols[data-v-0de9cbcc] {
2681
2687
  inset: 0;
2682
2688
  height: 100%;
2683
2689
  }
2684
- .control[data-v-af4935bb] {
2690
+ .control[data-v-0de9cbcc] {
2685
2691
  position: absolute;
2686
2692
  z-index: 1;
2687
2693
  pointer-events: none;
2688
2694
  }
2689
- .handle[data-v-af4935bb] {
2695
+ .handle[data-v-0de9cbcc] {
2690
2696
  position: absolute;
2691
2697
  display: inline-flex;
2692
2698
  align-items: center;
@@ -2713,86 +2719,86 @@ from {
2713
2719
  pointer-events: auto;
2714
2720
  cursor: pointer;
2715
2721
  }
2716
- .handle[data-v-af4935bb] {
2722
+ .handle[data-v-0de9cbcc] {
2717
2723
  --_ui-default-icon-size: 14px;
2718
2724
  --_ui-default-icon-stroke-width: 2;
2719
2725
  }
2720
- .handle[data-ui-proximity="near"][data-v-af4935bb],
2721
- .control.active .handle[data-v-af4935bb],
2722
- .handle[data-v-af4935bb]:focus-visible {
2726
+ .handle[data-ui-proximity="near"][data-v-0de9cbcc],
2727
+ .control.active .handle[data-v-0de9cbcc],
2728
+ .handle[data-v-0de9cbcc]:focus-visible {
2723
2729
  opacity: 1;
2724
2730
  scale: 1;
2725
2731
  }
2726
- .control.active .handle[data-v-af4935bb],
2727
- .handle[data-v-af4935bb]:focus-visible {
2732
+ .control.active .handle[data-v-0de9cbcc],
2733
+ .handle[data-v-0de9cbcc]:focus-visible {
2728
2734
  border-color: var(--ui-affordance-direct-color, var(--ui-accent-solid));
2729
2735
  background: var(--ui-affordance-direct-color, var(--ui-accent-solid));
2730
2736
  color: var(--ui-text-on-accent);
2731
2737
  box-shadow: var(--ui-shadow-sm, 0 1px 3px rgb(0 0 0 / 0.1));
2732
2738
  }
2733
- .handle[data-v-af4935bb]:focus-visible,
2734
- .selector[data-v-af4935bb]:focus-visible,
2735
- .cell-menu[data-v-af4935bb]:focus-visible {
2739
+ .handle[data-v-0de9cbcc]:focus-visible,
2740
+ .selector[data-v-0de9cbcc]:focus-visible,
2741
+ .cell-menu[data-v-0de9cbcc]:focus-visible {
2736
2742
  outline: 2px solid var(--ui-focus-ring);
2737
2743
  outline-offset: 2px;
2738
2744
  }
2739
- .control.row[data-v-af4935bb] {
2745
+ .control.row[data-v-0de9cbcc] {
2740
2746
  left: 0;
2741
2747
  width: 100%;
2742
2748
  height: 0;
2743
2749
  }
2744
- .control.row .handle[data-v-af4935bb] {
2750
+ .control.row .handle[data-v-0de9cbcc] {
2745
2751
  top: -12px;
2746
2752
  left: -30px;
2747
2753
  }
2748
- .control.col[data-v-af4935bb] {
2754
+ .control.col[data-v-0de9cbcc] {
2749
2755
  top: 0;
2750
2756
  width: 0;
2751
2757
  height: 100%;
2752
2758
  }
2753
- .control.col .handle[data-v-af4935bb] {
2759
+ .control.col .handle[data-v-0de9cbcc] {
2754
2760
  top: -30px;
2755
2761
  left: -12px;
2756
2762
  }
2757
- .line[data-v-af4935bb] {
2763
+ .line[data-v-0de9cbcc] {
2758
2764
  position: absolute;
2759
2765
  background: var(--ui-affordance-direct-color, var(--ui-accent-solid));
2760
2766
  opacity: 0;
2761
2767
  transition: opacity var(--ui-affordance-motion, var(--ui-motion-fast)) var(--ui-motion-ease);
2762
2768
  }
2763
- .control.row .line[data-v-af4935bb] {
2769
+ .control.row .line[data-v-0de9cbcc] {
2764
2770
  inset: -1px 0 auto;
2765
2771
  height: 2px;
2766
2772
  }
2767
- .control.col .line[data-v-af4935bb] {
2773
+ .control.col .line[data-v-0de9cbcc] {
2768
2774
  inset: 0 auto 0 -1px;
2769
2775
  width: 2px;
2770
2776
  }
2771
- .control.active .line[data-v-af4935bb] {
2777
+ .control.active .line[data-v-0de9cbcc] {
2772
2778
  opacity: 0.8;
2773
2779
  }
2774
- .guide[data-v-af4935bb] {
2780
+ .guide[data-v-0de9cbcc] {
2775
2781
  position: absolute;
2776
2782
  width: var(--ui-affordance-guide-size);
2777
2783
  height: var(--ui-affordance-guide-size);
2778
2784
  border-radius: var(--ui-radius-round);
2779
2785
  background: var(--ui-affordance-guide-color, var(--ui-border-strong));
2780
- opacity: var(--ui-affordance-guide-opacity);
2786
+ opacity: calc(var(--ui-affordance-guide-opacity) * var(--ui-affordance-scope-guide, 1));
2781
2787
  transition: opacity var(--ui-affordance-motion, var(--ui-motion-fast)) var(--ui-motion-ease);
2782
2788
  }
2783
- .control.row .guide[data-v-af4935bb] {
2789
+ .control.row .guide[data-v-0de9cbcc] {
2784
2790
  left: -10px;
2785
2791
  top: -2px;
2786
2792
  }
2787
- .control.col .guide[data-v-af4935bb] {
2793
+ .control.col .guide[data-v-0de9cbcc] {
2788
2794
  left: -2px;
2789
2795
  top: -10px;
2790
2796
  }
2791
- .control:has(.handle[data-ui-proximity="near"]) .guide[data-v-af4935bb],
2792
- .control.active .guide[data-v-af4935bb] {
2797
+ .control:has(.handle[data-ui-proximity="near"]) .guide[data-v-0de9cbcc],
2798
+ .control.active .guide[data-v-0de9cbcc] {
2793
2799
  opacity: 0;
2794
2800
  }
2795
- .tooltip[data-v-af4935bb] {
2801
+ .tooltip[data-v-0de9cbcc] {
2796
2802
  position: absolute;
2797
2803
  z-index: 2;
2798
2804
  top: calc(100% + 6px);
@@ -2811,18 +2817,18 @@ from {
2811
2817
  transition: opacity var(--ui-affordance-motion, var(--ui-motion-fast)) var(--ui-motion-ease);
2812
2818
  pointer-events: none;
2813
2819
  }
2814
- .control.row .tooltip[data-v-af4935bb] {
2820
+ .control.row .tooltip[data-v-0de9cbcc] {
2815
2821
  top: 50%;
2816
2822
  left: auto;
2817
2823
  right: calc(100% + 8px);
2818
2824
  transform: translateY(-50%);
2819
2825
  }
2820
- .control.active .tooltip[data-v-af4935bb],
2821
- .handle:focus-visible .tooltip[data-v-af4935bb] {
2826
+ .control.active .tooltip[data-v-0de9cbcc],
2827
+ .handle:focus-visible .tooltip[data-v-0de9cbcc] {
2822
2828
  opacity: 1;
2823
2829
  }
2824
- .selector[data-v-af4935bb],
2825
- .cell-menu[data-v-af4935bb] {
2830
+ .selector[data-v-0de9cbcc],
2831
+ .cell-menu[data-v-0de9cbcc] {
2826
2832
  position: absolute;
2827
2833
  z-index: 2;
2828
2834
  display: inline-flex;
@@ -2841,27 +2847,27 @@ from {
2841
2847
  border-color var(--ui-affordance-motion, var(--ui-motion-fast)) var(--ui-motion-ease),
2842
2848
  box-shadow var(--ui-affordance-motion, var(--ui-motion-fast)) var(--ui-motion-ease);
2843
2849
  }
2844
- .selector[data-v-af4935bb]:hover,
2845
- .cell-menu[data-v-af4935bb]:hover {
2850
+ .selector[data-v-0de9cbcc]:hover,
2851
+ .cell-menu[data-v-0de9cbcc]:hover {
2846
2852
  background: var(--ui-surface-muted);
2847
2853
  color: var(--ui-text-primary);
2848
2854
  box-shadow: var(--ui-shadow-xs, 0 1px 2px rgb(0 0 0 / 0.05));
2849
2855
  }
2850
- .selector[data-v-af4935bb] {
2856
+ .selector[data-v-0de9cbcc] {
2851
2857
  border-radius: var(--ui-radius-round);
2852
2858
  }
2853
- .selector[data-v-af4935bb]::before {
2859
+ .selector[data-v-0de9cbcc]::before {
2854
2860
  content: "";
2855
2861
  position: absolute;
2856
2862
  inset: 50% auto auto 50%;
2857
2863
  border-radius: var(--ui-radius-round);
2858
2864
  background: var(--ui-affordance-guide-color, var(--ui-border-strong));
2859
- opacity: var(--ui-affordance-guide-opacity);
2865
+ opacity: calc(var(--ui-affordance-guide-opacity) * var(--ui-affordance-scope-guide, 1));
2860
2866
  transform: translate(-50%, -50%);
2861
2867
  transition: opacity var(--ui-affordance-motion, var(--ui-motion-fast)) var(--ui-motion-ease);
2862
2868
  pointer-events: none;
2863
2869
  }
2864
- .selector .glyph[data-v-af4935bb] {
2870
+ .selector .glyph[data-v-0de9cbcc] {
2865
2871
  display: block;
2866
2872
  width: 14px;
2867
2873
  height: 14px;
@@ -2873,55 +2879,55 @@ from {
2873
2879
  opacity var(--ui-affordance-motion, var(--ui-motion-fast)) var(--ui-motion-ease),
2874
2880
  transform var(--ui-affordance-motion, var(--ui-motion-fast)) var(--ui-motion-ease);
2875
2881
  }
2876
- .selector[data-v-af4935bb]:hover::before,
2877
- .selector[data-v-af4935bb]:focus-visible::before {
2882
+ .selector[data-v-0de9cbcc]:hover::before,
2883
+ .selector[data-v-0de9cbcc]:focus-visible::before {
2878
2884
  opacity: 0;
2879
2885
  }
2880
- .selector:hover .glyph[data-v-af4935bb],
2881
- .selector:focus-visible .glyph[data-v-af4935bb] {
2886
+ .selector:hover .glyph[data-v-0de9cbcc],
2887
+ .selector:focus-visible .glyph[data-v-0de9cbcc] {
2882
2888
  opacity: 1;
2883
2889
  transform: scale(1);
2884
2890
  }
2885
- .selector.row[data-v-af4935bb] {
2891
+ .selector.row[data-v-0de9cbcc] {
2886
2892
  left: -9px;
2887
2893
  width: 18px;
2888
2894
  height: 32px;
2889
2895
  transform: translateY(-50%);
2890
2896
  }
2891
- .selector.row[data-v-af4935bb]::before {
2897
+ .selector.row[data-v-0de9cbcc]::before {
2892
2898
  width: 2px;
2893
2899
  height: 16px;
2894
2900
  }
2895
- .selector.column[data-v-af4935bb] {
2901
+ .selector.column[data-v-0de9cbcc] {
2896
2902
  top: -9px;
2897
2903
  width: 32px;
2898
2904
  height: 18px;
2899
2905
  transform: translateX(-50%);
2900
2906
  }
2901
- .selector.column[data-v-af4935bb]::before {
2907
+ .selector.column[data-v-0de9cbcc]::before {
2902
2908
  width: 16px;
2903
2909
  height: 2px;
2904
2910
  }
2905
2911
  @media (hover: none), (pointer: coarse) {
2906
- .selector[data-v-af4935bb]::before {
2912
+ .selector[data-v-0de9cbcc]::before {
2907
2913
  opacity: 0;
2908
2914
  }
2909
- .selector .glyph[data-v-af4935bb] {
2915
+ .selector .glyph[data-v-0de9cbcc] {
2910
2916
  opacity: 1;
2911
2917
  transform: none;
2912
2918
  }
2913
2919
  }
2914
- .cell-menu[data-v-af4935bb] {
2920
+ .cell-menu[data-v-0de9cbcc] {
2915
2921
  width: 24px;
2916
2922
  height: 24px;
2917
2923
  border-radius: var(--ui-radius-sm);
2918
2924
  background: color-mix(in srgb, var(--ui-surface-muted) 78%, transparent);
2919
2925
  }
2920
- .cell-menu[data-v-af4935bb] {
2926
+ .cell-menu[data-v-0de9cbcc] {
2921
2927
  --_ui-default-icon-size: 15px;
2922
2928
  --_ui-default-icon-stroke-width: 2;
2923
2929
  }
2924
- [data-component~="ui-editor-table-overlay"][hidden][data-v-af4935bb] {
2930
+ [data-component~="ui-editor-table-overlay"][hidden][data-v-0de9cbcc] {
2925
2931
  display: none;
2926
2932
  }
2927
2933
 
@@ -3478,7 +3484,7 @@ svg[data-v-03a5b772-s] {
3478
3484
  syntax: "*";
3479
3485
  inherits: false;
3480
3486
  }
3481
- [data-component~="ui-icon-button"][data-v-027d9fcb] {
3487
+ [data-component~="ui-icon-button"][data-v-a20a82b7] {
3482
3488
  /* Hooks do not inherit, so the parts below read them from the root. */
3483
3489
  --_ui-icon-button-icon-size: var(--ui-icon-button-icon-size);
3484
3490
  --_ui-icon-button-icon-stroke-width: var(--ui-icon-button-icon-stroke-width);
@@ -3486,10 +3492,10 @@ svg[data-v-03a5b772-s] {
3486
3492
  display: inline-flex;
3487
3493
  color: var(--ui-text-secondary);
3488
3494
  }
3489
- [data-component~="ui-icon-button"][data-ui-icon-button-state~="anticipatory"][data-v-027d9fcb] {
3495
+ [data-component~="ui-icon-button"][data-ui-icon-button-state~="anticipatory"][data-v-a20a82b7] {
3490
3496
  position: relative;
3491
3497
  }
3492
- [data-component~="ui-icon-button"][data-ui-icon-button-state~="anticipatory"][data-v-027d9fcb]::before {
3498
+ [data-component~="ui-icon-button"][data-ui-icon-button-state~="anticipatory"][data-v-a20a82b7]::before {
3493
3499
  content: "";
3494
3500
  position: absolute;
3495
3501
  inset: 50% auto auto 50%;
@@ -3498,7 +3504,7 @@ svg[data-v-03a5b772-s] {
3498
3504
  block-size: var(--ui-affordance-guide-size);
3499
3505
  border-radius: var(--ui-radius-round);
3500
3506
  background: var(--ui-affordance-guide-color, var(--ui-border-strong));
3501
- opacity: var(--ui-affordance-guide-opacity);
3507
+ opacity: calc(var(--ui-affordance-guide-opacity) * var(--ui-affordance-scope-guide, 1));
3502
3508
  transform: translate(-50%, -50%);
3503
3509
  transition: opacity var(--ui-affordance-motion, var(--ui-motion-fast)) var(--ui-motion-ease);
3504
3510
  pointer-events: none;
@@ -3508,17 +3514,17 @@ svg[data-v-03a5b772-s] {
3508
3514
  * surface and icon. The root is the native button, so hiding it outright would hide the dot
3509
3515
  * too, and slotted icons sit outside this scope; `color: transparent` hides currentColor icons. */
3510
3516
  @media (hover: hover) and (pointer: fine) {
3511
- [data-component~="ui-icon-button"][data-ui-icon-button-state~="anticipatory"][data-v-027d9fcb]:not([data-component~="ui-icon-button"][data-ui-icon-button-state~="variant=solid"], [data-ui-proximity="near"], :hover, :focus-visible) {
3517
+ [data-component~="ui-icon-button"][data-ui-icon-button-state~="anticipatory"][data-v-a20a82b7]:not([data-component~="ui-icon-button"][data-ui-icon-button-state~="variant=solid"], [data-ui-proximity="near"], :hover, :focus-visible) {
3512
3518
  border-color: transparent;
3513
3519
  background: transparent;
3514
3520
  box-shadow: none;
3515
3521
  color: transparent;
3516
3522
  }
3517
3523
  }
3518
- [data-component~="ui-icon-button"][data-ui-icon-button-state~="anticipatory"][data-v-027d9fcb]:is([data-component~="ui-icon-button"][data-ui-icon-button-state~="variant=solid"], [data-ui-proximity="near"], :hover, :focus-visible)::before {
3524
+ [data-component~="ui-icon-button"][data-ui-icon-button-state~="anticipatory"][data-v-a20a82b7]:is([data-component~="ui-icon-button"][data-ui-icon-button-state~="variant=solid"], [data-ui-proximity="near"], :hover, :focus-visible)::before {
3519
3525
  opacity: 0;
3520
3526
  }
3521
- [data-component~="ui-icon-button"][data-v-027d9fcb] {
3527
+ [data-component~="ui-icon-button"][data-v-a20a82b7] {
3522
3528
  /* The size prop resolves here; --ui-icon-button-size overrides it on an element. */
3523
3529
  --_size: 2rem;
3524
3530
  appearance: none;
@@ -3544,7 +3550,7 @@ svg[data-v-03a5b772-s] {
3544
3550
  transform var(--ui-motion-fast) var(--ui-motion-ease);
3545
3551
  }
3546
3552
  @media (hover: none), (pointer: coarse) {
3547
- [data-component~="ui-icon-button"][data-ui-icon-button-state~="anticipatory"][data-v-027d9fcb]::before {
3553
+ [data-component~="ui-icon-button"][data-ui-icon-button-state~="anticipatory"][data-v-a20a82b7]::before {
3548
3554
  opacity: 0;
3549
3555
  }
3550
3556
  }
@@ -3552,10 +3558,10 @@ svg[data-v-03a5b772-s] {
3552
3558
  /* A touch target without a bigger button: an invisible hit area, at least the control
3553
3559
  minimum, centred on the button (::before is the anticipatory guide). */
3554
3560
  @media (pointer: coarse) {
3555
- [data-component~="ui-icon-button"][data-v-027d9fcb] {
3561
+ [data-component~="ui-icon-button"][data-v-a20a82b7] {
3556
3562
  position: relative;
3557
3563
  }
3558
- [data-component~="ui-icon-button"][data-v-027d9fcb]::after {
3564
+ [data-component~="ui-icon-button"][data-v-a20a82b7]::after {
3559
3565
  content: "";
3560
3566
  position: absolute;
3561
3567
  inset: 50% auto auto 50%;
@@ -3564,10 +3570,10 @@ svg[data-v-03a5b772-s] {
3564
3570
  transform: translate(-50%, -50%);
3565
3571
  }
3566
3572
  }
3567
- html[data-ui-input-modality="touch"] [data-component~="ui-icon-button"][data-v-027d9fcb] {
3573
+ html[data-ui-input-modality="touch"] [data-component~="ui-icon-button"][data-v-a20a82b7] {
3568
3574
  position: relative;
3569
3575
  }
3570
- html[data-ui-input-modality="touch"] [data-component~="ui-icon-button"][data-v-027d9fcb]::after {
3576
+ html[data-ui-input-modality="touch"] [data-component~="ui-icon-button"][data-v-a20a82b7]::after {
3571
3577
  content: "";
3572
3578
  position: absolute;
3573
3579
  inset: 50% auto auto 50%;
@@ -3575,29 +3581,29 @@ html[data-ui-input-modality="touch"] [data-component~="ui-icon-button"][data-v-0
3575
3581
  block-size: max(100%, var(--ui-control-min-block-size));
3576
3582
  transform: translate(-50%, -50%);
3577
3583
  }
3578
- [data-component~="ui-icon-button"][data-ui-icon-button-state~="size=sm"][data-v-027d9fcb] {
3584
+ [data-component~="ui-icon-button"][data-ui-icon-button-state~="size=sm"][data-v-a20a82b7] {
3579
3585
  --_size: 1.75rem;
3580
3586
  inline-size: var(--ui-icon-button-size, var(--_size));
3581
3587
  block-size: var(--ui-icon-button-size, var(--_size));
3582
3588
  min-inline-size: var(--ui-icon-button-size, var(--_size));
3583
3589
  min-block-size: var(--ui-icon-button-size, var(--_size));
3584
3590
  }
3585
- [data-component~="ui-icon-button"][data-ui-icon-button-state~="size=lg"][data-v-027d9fcb] {
3591
+ [data-component~="ui-icon-button"][data-ui-icon-button-state~="size=lg"][data-v-a20a82b7] {
3586
3592
  --_size: 2.5rem;
3587
3593
  inline-size: var(--ui-icon-button-size, var(--_size));
3588
3594
  block-size: var(--ui-icon-button-size, var(--_size));
3589
3595
  min-inline-size: var(--ui-icon-button-size, var(--_size));
3590
3596
  min-block-size: var(--ui-icon-button-size, var(--_size));
3591
3597
  }
3592
- [data-component~="ui-icon-button"][data-ui-icon-button-state~="round"][data-v-027d9fcb] {
3598
+ [data-component~="ui-icon-button"][data-ui-icon-button-state~="round"][data-v-a20a82b7] {
3593
3599
  border-radius: var(--ui-radius-round);
3594
3600
  }
3595
- [data-component~="ui-icon-button"][data-ui-icon-button-state~="variant=outline"][data-v-027d9fcb] {
3601
+ [data-component~="ui-icon-button"][data-ui-icon-button-state~="variant=outline"][data-v-a20a82b7] {
3596
3602
  border-color: var(--ui-icon-button-border, var(--ui-border-default));
3597
3603
  background: var(--ui-icon-button-outline-surface, var(--ui-surface-default));
3598
3604
  color: var(--ui-icon-button-outline-text, var(--ui-text-primary));
3599
3605
  }
3600
- [data-component~="ui-icon-button"][data-ui-icon-button-state~="variant=solid"][data-v-027d9fcb] {
3606
+ [data-component~="ui-icon-button"][data-ui-icon-button-state~="variant=solid"][data-v-a20a82b7] {
3601
3607
  background: var(--ui-icon-button-solid-surface, var(--ui-accent-solid));
3602
3608
  color: var(--ui-icon-button-solid-text, var(--ui-text-on-accent));
3603
3609
  box-shadow: var(
@@ -3605,43 +3611,43 @@ html[data-ui-input-modality="touch"] [data-component~="ui-icon-button"][data-v-0
3605
3611
  0 1px 2px color-mix(in srgb, var(--ui-accent-solid) 18%, transparent)
3606
3612
  );
3607
3613
  }
3608
- [data-component~="ui-icon-button"][data-v-027d9fcb]:hover:enabled {
3614
+ [data-component~="ui-icon-button"][data-v-a20a82b7]:hover:enabled {
3609
3615
  /* Derived from the text colour so the ghost hover shows on any background. */
3610
3616
  background: var(--ui-icon-button-hover-surface, color-mix(in srgb, currentColor 8%, transparent));
3611
3617
  color: var(--ui-icon-button-hover-text, var(--ui-text-primary));
3612
3618
  }
3613
- [data-component~="ui-icon-button"][data-ui-icon-button-state~="variant=outline"][data-v-027d9fcb]:hover:enabled {
3619
+ [data-component~="ui-icon-button"][data-ui-icon-button-state~="variant=outline"][data-v-a20a82b7]:hover:enabled {
3614
3620
  border-color: var(--ui-icon-button-hover-border, var(--ui-border-strong));
3615
3621
  }
3616
- [data-component~="ui-icon-button"][data-ui-icon-button-state~="variant=solid"][data-v-027d9fcb]:hover:enabled {
3622
+ [data-component~="ui-icon-button"][data-ui-icon-button-state~="variant=solid"][data-v-a20a82b7]:hover:enabled {
3617
3623
  background: var(--ui-icon-button-solid-hover-surface, var(--ui-accent-hover));
3618
3624
  }
3619
- [data-component~="ui-icon-button"][data-v-027d9fcb]:active:enabled {
3625
+ [data-component~="ui-icon-button"][data-v-a20a82b7]:active:enabled {
3620
3626
  transform: scale(var(--ui-icon-button-active-scale, 0.96));
3621
3627
  }
3622
- [data-component~="ui-icon-button"][data-v-027d9fcb]:focus-visible {
3628
+ [data-component~="ui-icon-button"][data-v-a20a82b7]:focus-visible {
3623
3629
  outline: none;
3624
3630
  box-shadow: var(--ui-focus-halo);
3625
3631
  }
3626
3632
 
3627
3633
  /* Disabled colours fall back to each variant's own; ghost takes only the icon colour. */
3628
3634
  /* Disabled washes the button out the way Button does: the same shape, one filter. */
3629
- [data-component~="ui-icon-button"][data-v-027d9fcb]:disabled {
3635
+ [data-component~="ui-icon-button"][data-v-a20a82b7]:disabled {
3630
3636
  filter: var(--ui-icon-button-disabled-filter, var(--ui-disabled-filter));
3631
3637
  opacity: var(--ui-icon-button-disabled-opacity, 1);
3632
3638
  cursor: not-allowed;
3633
3639
  box-shadow: none;
3634
3640
  }
3635
- [data-component~="ui-icon-button"][data-v-027d9fcb] {
3641
+ [data-component~="ui-icon-button"][data-v-a20a82b7] {
3636
3642
  --_icon-button-icon-default: var(--ui-icon-size-md);
3637
3643
  }
3638
- [data-component~="ui-icon-button"][data-ui-icon-button-state~="size=sm"][data-v-027d9fcb] {
3644
+ [data-component~="ui-icon-button"][data-ui-icon-button-state~="size=sm"][data-v-a20a82b7] {
3639
3645
  --_icon-button-icon-default: var(--ui-icon-size-sm);
3640
3646
  }
3641
- [data-component~="ui-icon-button"][data-ui-icon-button-state~="size=lg"][data-v-027d9fcb] {
3647
+ [data-component~="ui-icon-button"][data-ui-icon-button-state~="size=lg"][data-v-a20a82b7] {
3642
3648
  --_icon-button-icon-default: var(--ui-icon-size-lg);
3643
3649
  }
3644
- svg[data-v-027d9fcb-s] {
3650
+ svg[data-v-a20a82b7-s] {
3645
3651
  inline-size: var(--_ui-icon-button-icon-size, var(--_icon-button-icon-default));
3646
3652
  block-size: var(--_ui-icon-button-icon-size, var(--_icon-button-icon-default));
3647
3653
  flex-shrink: 0;
@@ -3649,7 +3655,7 @@ svg[data-v-027d9fcb-s] {
3649
3655
  }
3650
3656
 
3651
3657
  /* A component that sets its display still honours the hidden attribute on its root. */
3652
- [data-component~="ui-icon-button"][hidden][data-v-027d9fcb] {
3658
+ [data-component~="ui-icon-button"][hidden][data-v-a20a82b7] {
3653
3659
  display: none;
3654
3660
  }
3655
3661
 
@@ -5270,7 +5276,7 @@ dialog[data-v-40145d41] {
5270
5276
  syntax: "*";
5271
5277
  inherits: false;
5272
5278
  }
5273
- [data-component~="ui-sidebar"][data-v-eff27033] {
5279
+ [data-component~="ui-sidebar"][data-v-6929aec9] {
5274
5280
  /* Hooks do not inherit, so the parts below read them from the root. */
5275
5281
  --_ui-sidebar-backdrop: var(--ui-sidebar-backdrop);
5276
5282
 
@@ -5285,14 +5291,14 @@ dialog[data-v-40145d41] {
5285
5291
  background: var(--ui-sidebar-surface, var(--ui-surface-default));
5286
5292
  border-inline-end: 1px solid var(--ui-sidebar-border, var(--ui-border-default));
5287
5293
  }
5288
- [data-component~="ui-sidebar"][data-ui-sidebar-state~="side=end"][data-v-eff27033] {
5294
+ [data-component~="ui-sidebar"][data-ui-sidebar-state~="side=end"][data-v-6929aec9] {
5289
5295
  border-inline-end: 0;
5290
5296
  border-inline-start: 1px solid var(--ui-sidebar-border, var(--ui-border-default));
5291
5297
  }
5292
5298
 
5293
5299
  /* The panel's content scrolls, and each edge that hides content fades: the scroll fade every
5294
5300
  Looma scroller uses (see ui-scroll-area). */
5295
- .content[data-v-eff27033] {
5301
+ .content[data-v-6929aec9] {
5296
5302
  flex: 1;
5297
5303
  min-block-size: 0;
5298
5304
  overflow: auto;
@@ -5319,10 +5325,10 @@ dialog[data-v-40145d41] {
5319
5325
  }
5320
5326
 
5321
5327
  /* Collapsed while docked. */
5322
- [data-component~="ui-sidebar"][data-ui-sidebar-state~="internalCollapsed"][data-v-eff27033]:not([popover]) {
5328
+ [data-component~="ui-sidebar"][data-ui-sidebar-state~="internalCollapsed"][data-v-6929aec9]:not([popover]) {
5323
5329
  display: none;
5324
5330
  }
5325
- .resizer[data-v-eff27033] {
5331
+ .resizer[data-v-6929aec9] {
5326
5332
  position: absolute;
5327
5333
  z-index: 1;
5328
5334
  inset-block: 0;
@@ -5335,15 +5341,15 @@ dialog[data-v-40145d41] {
5335
5341
  touch-action: none;
5336
5342
  outline: none;
5337
5343
  }
5338
- .resizer[hidden][data-v-eff27033] {
5344
+ .resizer[hidden][data-v-6929aec9] {
5339
5345
  display: none;
5340
5346
  }
5341
- [data-component~="ui-sidebar"][data-ui-sidebar-state~="side=end"] .resizer[data-v-eff27033] {
5347
+ [data-component~="ui-sidebar"][data-ui-sidebar-state~="side=end"] .resizer[data-v-6929aec9] {
5342
5348
  inset-inline-end: auto;
5343
5349
  inset-inline-start: 0;
5344
5350
  transform: translateX(-50%);
5345
5351
  }
5346
- .resizer[data-v-eff27033]::after {
5352
+ .resizer[data-v-6929aec9]::after {
5347
5353
  content: "";
5348
5354
  position: absolute;
5349
5355
  inset-block: 0;
@@ -5354,12 +5360,12 @@ dialog[data-v-40145d41] {
5354
5360
  var(--ui-affordance-guide-color, var(--ui-border-strong)) 45%,
5355
5361
  transparent
5356
5362
  );
5357
- opacity: var(--ui-affordance-guide-opacity);
5363
+ opacity: calc(var(--ui-affordance-guide-opacity) * var(--ui-affordance-scope-guide, 1));
5358
5364
  transition:
5359
5365
  background-color var(--ui-affordance-motion, var(--ui-motion-fast)) var(--ui-motion-ease),
5360
5366
  opacity var(--ui-affordance-motion, var(--ui-motion-fast)) var(--ui-motion-ease);
5361
5367
  }
5362
- .guide[data-v-eff27033] {
5368
+ .guide[data-v-6929aec9] {
5363
5369
  position: absolute;
5364
5370
  inset-block-start: 50%;
5365
5371
  inset-inline-start: 50%;
@@ -5373,16 +5379,16 @@ dialog[data-v-40145d41] {
5373
5379
  transition: opacity var(--ui-affordance-motion, var(--ui-motion-fast)) var(--ui-motion-ease);
5374
5380
  pointer-events: none;
5375
5381
  }
5376
- .resizer[data-v-eff27033]:is(:hover, :focus-visible)::after {
5382
+ .resizer[data-v-6929aec9]:is(:hover, :focus-visible)::after {
5377
5383
  background: var(--ui-affordance-direct-color, var(--ui-accent-solid, var(--ui-focus-ring)));
5378
5384
  opacity: 1;
5379
5385
  }
5380
- .resizer:is(:hover, :focus-visible) > .guide[data-v-eff27033] {
5386
+ .resizer:is(:hover, :focus-visible) > .guide[data-v-6929aec9] {
5381
5387
  opacity: 1;
5382
5388
  }
5383
5389
 
5384
5390
  /* Drawer: a popover in the top layer, sliding in from its edge. Closed popovers are hidden by the UA. */
5385
- [data-component~="ui-sidebar"][popover][data-v-eff27033] {
5391
+ [data-component~="ui-sidebar"][popover][data-v-6929aec9] {
5386
5392
  position: fixed;
5387
5393
  inset-block: 0;
5388
5394
  inset-inline-start: 0;
@@ -5402,36 +5408,36 @@ dialog[data-v-40145d41] {
5402
5408
  }
5403
5409
 
5404
5410
  /* The author display above would otherwise override the UA rule that hides a closed popover. */
5405
- [data-component~="ui-sidebar"][popover][data-v-eff27033]:not(:popover-open) {
5411
+ [data-component~="ui-sidebar"][popover][data-v-6929aec9]:not(:popover-open) {
5406
5412
  display: none;
5407
5413
  transform: translateX(-100%);
5408
5414
  }
5409
- [data-component~="ui-sidebar"][data-ui-sidebar-state~="side=end"][popover][data-v-eff27033] {
5415
+ [data-component~="ui-sidebar"][data-ui-sidebar-state~="side=end"][popover][data-v-6929aec9] {
5410
5416
  inset-inline-start: auto;
5411
5417
  inset-inline-end: 0;
5412
5418
  }
5413
- [data-component~="ui-sidebar"][data-ui-sidebar-state~="side=end"][popover][data-v-eff27033]:not(:popover-open) {
5419
+ [data-component~="ui-sidebar"][data-ui-sidebar-state~="side=end"][popover][data-v-6929aec9]:not(:popover-open) {
5414
5420
  transform: translateX(100%);
5415
5421
  }
5416
5422
  @starting-style {
5417
- [data-component~="ui-sidebar"][popover][data-v-eff27033]:popover-open {
5423
+ [data-component~="ui-sidebar"][popover][data-v-6929aec9]:popover-open {
5418
5424
  transform: translateX(-100%);
5419
5425
  }
5420
- [data-component~="ui-sidebar"][data-ui-sidebar-state~="side=end"][popover][data-v-eff27033]:popover-open {
5426
+ [data-component~="ui-sidebar"][data-ui-sidebar-state~="side=end"][popover][data-v-6929aec9]:popover-open {
5421
5427
  transform: translateX(100%);
5422
5428
  }
5423
5429
  }
5424
- [data-component~="ui-sidebar"][popover][data-v-eff27033]::backdrop {
5430
+ [data-component~="ui-sidebar"][popover][data-v-6929aec9]::backdrop {
5425
5431
  background: var(--_ui-sidebar-backdrop, rgb(0 0 0 / 0.32));
5426
5432
  }
5427
5433
  @media (prefers-reduced-motion: reduce) {
5428
- [data-component~="ui-sidebar"][popover][data-v-eff27033] {
5434
+ [data-component~="ui-sidebar"][popover][data-v-6929aec9] {
5429
5435
  transition: none;
5430
5436
  }
5431
5437
  }
5432
5438
 
5433
5439
  /* A component that sets its display still honours the hidden attribute on its root. */
5434
- [data-component~="ui-sidebar"][hidden][data-v-eff27033] {
5440
+ [data-component~="ui-sidebar"][hidden][data-v-6929aec9] {
5435
5441
  display: none;
5436
5442
  }
5437
5443