@twentyfirstmedia/halo 0.5.0 → 0.6.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/fonts/og/ibm-plex-mono-latin-500-normal.woff +0 -0
- package/dist/fonts/og/ibm-plex-mono-latin-600-normal.woff +0 -0
- package/dist/fonts/og/plus-jakarta-sans-latin-400-normal.woff +0 -0
- package/dist/fonts/og/plus-jakarta-sans-latin-500-normal.woff +0 -0
- package/dist/fonts/og/plus-jakarta-sans-latin-600-normal.woff +0 -0
- package/dist/fonts/og/plus-jakarta-sans-latin-700-normal.woff +0 -0
- package/dist/fonts/og/plus-jakarta-sans-latin-800-normal.woff +0 -0
- package/dist/scoped.css +1121 -38
- package/dist/styles.css +1121 -38
- package/dist/tailwind.css +5 -0
- package/dist/tokens.css +30 -0
- package/dist/tokens.json +40 -0
- package/package.json +3 -2
package/dist/scoped.css
CHANGED
|
@@ -335,6 +335,11 @@
|
|
|
335
335
|
--chart-lilac: var(--lilac);
|
|
336
336
|
--chart-butter: var(--butter);
|
|
337
337
|
--chart-blush: var(--blush);
|
|
338
|
+
--ramp-1: color-mix(in oklab, var(--chart-1) 12%, var(--background));
|
|
339
|
+
--ramp-2: color-mix(in oklab, var(--chart-1) 28%, var(--background));
|
|
340
|
+
--ramp-3: color-mix(in oklab, var(--chart-1) 46%, var(--background));
|
|
341
|
+
--ramp-4: color-mix(in oklab, var(--chart-1) 66%, var(--background));
|
|
342
|
+
--ramp-5: color-mix(in oklab, var(--chart-1) 88%, var(--background));
|
|
338
343
|
--ok: #2f5d16;
|
|
339
344
|
--ok-bg: #d6efc3;
|
|
340
345
|
--info: #1f4f8a;
|
|
@@ -483,6 +488,11 @@
|
|
|
483
488
|
--chart-lilac: var(--lilac-ink);
|
|
484
489
|
--chart-butter: var(--butter-ink);
|
|
485
490
|
--chart-blush: var(--blush-ink);
|
|
491
|
+
--ramp-1: color-mix(in oklab, var(--chart-1) 12%, var(--background));
|
|
492
|
+
--ramp-2: color-mix(in oklab, var(--chart-1) 28%, var(--background));
|
|
493
|
+
--ramp-3: color-mix(in oklab, var(--chart-1) 46%, var(--background));
|
|
494
|
+
--ramp-4: color-mix(in oklab, var(--chart-1) 66%, var(--background));
|
|
495
|
+
--ramp-5: color-mix(in oklab, var(--chart-1) 88%, var(--background));
|
|
486
496
|
--ok: #a8db86;
|
|
487
497
|
--ok-bg: #24401a;
|
|
488
498
|
--info: #9cc6f7;
|
|
@@ -632,6 +642,11 @@
|
|
|
632
642
|
--chart-lilac: var(--lilac-ink);
|
|
633
643
|
--chart-butter: var(--butter-ink);
|
|
634
644
|
--chart-blush: var(--blush-ink);
|
|
645
|
+
--ramp-1: color-mix(in oklab, var(--chart-1) 12%, var(--background));
|
|
646
|
+
--ramp-2: color-mix(in oklab, var(--chart-1) 28%, var(--background));
|
|
647
|
+
--ramp-3: color-mix(in oklab, var(--chart-1) 46%, var(--background));
|
|
648
|
+
--ramp-4: color-mix(in oklab, var(--chart-1) 66%, var(--background));
|
|
649
|
+
--ramp-5: color-mix(in oklab, var(--chart-1) 88%, var(--background));
|
|
635
650
|
--ok: #a8db86;
|
|
636
651
|
--ok-bg: #24401a;
|
|
637
652
|
--info: #9cc6f7;
|
|
@@ -781,6 +796,11 @@
|
|
|
781
796
|
--chart-lilac: var(--lilac);
|
|
782
797
|
--chart-butter: var(--butter);
|
|
783
798
|
--chart-blush: var(--blush);
|
|
799
|
+
--ramp-1: color-mix(in oklab, var(--chart-1) 12%, var(--background));
|
|
800
|
+
--ramp-2: color-mix(in oklab, var(--chart-1) 28%, var(--background));
|
|
801
|
+
--ramp-3: color-mix(in oklab, var(--chart-1) 46%, var(--background));
|
|
802
|
+
--ramp-4: color-mix(in oklab, var(--chart-1) 66%, var(--background));
|
|
803
|
+
--ramp-5: color-mix(in oklab, var(--chart-1) 88%, var(--background));
|
|
784
804
|
--ok: #2f5d16;
|
|
785
805
|
--ok-bg: #d6efc3;
|
|
786
806
|
--info: #1f4f8a;
|
|
@@ -929,6 +949,11 @@
|
|
|
929
949
|
--chart-lilac: var(--lilac-ink);
|
|
930
950
|
--chart-butter: var(--butter-ink);
|
|
931
951
|
--chart-blush: var(--blush-ink);
|
|
952
|
+
--ramp-1: color-mix(in oklab, var(--chart-1) 12%, var(--background));
|
|
953
|
+
--ramp-2: color-mix(in oklab, var(--chart-1) 28%, var(--background));
|
|
954
|
+
--ramp-3: color-mix(in oklab, var(--chart-1) 46%, var(--background));
|
|
955
|
+
--ramp-4: color-mix(in oklab, var(--chart-1) 66%, var(--background));
|
|
956
|
+
--ramp-5: color-mix(in oklab, var(--chart-1) 88%, var(--background));
|
|
932
957
|
--ok: #a8db86;
|
|
933
958
|
--ok-bg: #24401a;
|
|
934
959
|
--info: #9cc6f7;
|
|
@@ -1076,6 +1101,11 @@
|
|
|
1076
1101
|
--chart-lilac: var(--lilac);
|
|
1077
1102
|
--chart-butter: var(--butter);
|
|
1078
1103
|
--chart-blush: var(--blush);
|
|
1104
|
+
--ramp-1: color-mix(in oklab, var(--chart-1) 12%, var(--background));
|
|
1105
|
+
--ramp-2: color-mix(in oklab, var(--chart-1) 28%, var(--background));
|
|
1106
|
+
--ramp-3: color-mix(in oklab, var(--chart-1) 46%, var(--background));
|
|
1107
|
+
--ramp-4: color-mix(in oklab, var(--chart-1) 66%, var(--background));
|
|
1108
|
+
--ramp-5: color-mix(in oklab, var(--chart-1) 88%, var(--background));
|
|
1079
1109
|
--ok: #2f5d16;
|
|
1080
1110
|
--ok-bg: #d6efc3;
|
|
1081
1111
|
--info: #1f4f8a;
|
|
@@ -1620,7 +1650,8 @@
|
|
|
1620
1650
|
border-radius: var(--radius-pill);
|
|
1621
1651
|
background: var(--surface-sunken);
|
|
1622
1652
|
color: var(--ink-muted);
|
|
1623
|
-
min-width: 220px;
|
|
1653
|
+
min-width: min(220px, 100%);
|
|
1654
|
+
box-sizing: border-box;
|
|
1624
1655
|
}
|
|
1625
1656
|
:where([data-kit="halo"]) .tf-search input {
|
|
1626
1657
|
border: 0;
|
|
@@ -1629,6 +1660,7 @@
|
|
|
1629
1660
|
font: 500 14px/20px var(--font-sans);
|
|
1630
1661
|
color: var(--ink);
|
|
1631
1662
|
width: 100%;
|
|
1663
|
+
min-width: 0;
|
|
1632
1664
|
}
|
|
1633
1665
|
:where([data-kit="halo"]) .tf-search input::placeholder {
|
|
1634
1666
|
color: var(--ink-subtle);
|
|
@@ -1710,7 +1742,7 @@
|
|
|
1710
1742
|
display: flex;
|
|
1711
1743
|
}
|
|
1712
1744
|
:where([data-kit="halo"]) .tf-tabs-block .tf-tab {
|
|
1713
|
-
flex: 1;
|
|
1745
|
+
flex: 1 1 0;
|
|
1714
1746
|
}
|
|
1715
1747
|
|
|
1716
1748
|
/* StatTile */
|
|
@@ -2027,6 +2059,36 @@
|
|
|
2027
2059
|
background: var(--accent);
|
|
2028
2060
|
color: var(--accent-foreground);
|
|
2029
2061
|
}
|
|
2062
|
+
/* expanded: names next to the icons (the sheet's first column follows the rail's width) */
|
|
2063
|
+
:where([data-kit="halo"]) .tf-rail {
|
|
2064
|
+
transition: width var(--dur-base) var(--ease-out);
|
|
2065
|
+
}
|
|
2066
|
+
:where([data-kit="halo"]) .tf-rail.expanded {
|
|
2067
|
+
width: 200px;
|
|
2068
|
+
}
|
|
2069
|
+
:where([data-kit="halo"]) .tf-rail.expanded .tf-rail-group {
|
|
2070
|
+
align-items: stretch;
|
|
2071
|
+
}
|
|
2072
|
+
:where([data-kit="halo"]) .tf-rail.expanded .tf-rail-btn {
|
|
2073
|
+
display: flex;
|
|
2074
|
+
align-items: center;
|
|
2075
|
+
gap: 12px;
|
|
2076
|
+
width: 100%;
|
|
2077
|
+
padding: 0 10px;
|
|
2078
|
+
box-sizing: border-box;
|
|
2079
|
+
border-radius: var(--radius-pill);
|
|
2080
|
+
}
|
|
2081
|
+
:where([data-kit="halo"]) .tf-rail-label {
|
|
2082
|
+
min-width: 0;
|
|
2083
|
+
overflow: hidden;
|
|
2084
|
+
text-overflow: ellipsis;
|
|
2085
|
+
white-space: nowrap;
|
|
2086
|
+
font: 600 13px/18px var(--font-sans);
|
|
2087
|
+
}
|
|
2088
|
+
:where([data-kit="halo"]) .tf-rail.expanded .tf-dotcount {
|
|
2089
|
+
position: static;
|
|
2090
|
+
margin-left: auto;
|
|
2091
|
+
}
|
|
2030
2092
|
:where([data-kit="halo"]) .tf-rail-btn[aria-current="page"] {
|
|
2031
2093
|
background: var(--primary);
|
|
2032
2094
|
color: var(--primary-foreground);
|
|
@@ -2176,9 +2238,28 @@
|
|
|
2176
2238
|
:where([data-kit="halo"]) .tf-shell .tf-topbar {
|
|
2177
2239
|
padding: 0 var(--space-6);
|
|
2178
2240
|
}
|
|
2241
|
+
/* AppShell with navigation="sidebar": the labelled sidebar on the frame, the sheet beside it */
|
|
2242
|
+
:where([data-kit="halo"]) .tf-shell.tf-shell-sidebar {
|
|
2243
|
+
display: grid;
|
|
2244
|
+
grid-template-columns: auto minmax(0, 1fr);
|
|
2245
|
+
align-items: stretch;
|
|
2246
|
+
padding: 8px;
|
|
2247
|
+
}
|
|
2248
|
+
:where([data-kit="halo"]) .tf-shell-tools {
|
|
2249
|
+
display: flex;
|
|
2250
|
+
justify-content: flex-end;
|
|
2251
|
+
flex-wrap: wrap;
|
|
2252
|
+
gap: 8px;
|
|
2253
|
+
}
|
|
2254
|
+
:where([data-kit="halo"]) .tf-sheet.tf-sheet-norail {
|
|
2255
|
+
grid-template-columns: minmax(0, 1fr) 300px;
|
|
2256
|
+
}
|
|
2257
|
+
:where([data-kit="halo"]) .tf-sheet.tf-sheet-norail.tf-sheet-2 {
|
|
2258
|
+
grid-template-columns: minmax(0, 1fr);
|
|
2259
|
+
}
|
|
2179
2260
|
:where([data-kit="halo"]) .tf-sheet {
|
|
2180
2261
|
display: grid;
|
|
2181
|
-
grid-template-columns:
|
|
2262
|
+
grid-template-columns: auto 1fr 300px;
|
|
2182
2263
|
gap: var(--space-6);
|
|
2183
2264
|
padding: var(--space-6);
|
|
2184
2265
|
background: var(--canvas);
|
|
@@ -2695,6 +2776,64 @@
|
|
|
2695
2776
|
background: var(--accent);
|
|
2696
2777
|
color: var(--accent-foreground);
|
|
2697
2778
|
}
|
|
2779
|
+
:where([data-kit="halo"]) a.tf-row-item {
|
|
2780
|
+
text-decoration: none;
|
|
2781
|
+
}
|
|
2782
|
+
:where([data-kit="halo"]) .tf-row-text {
|
|
2783
|
+
min-width: 0;
|
|
2784
|
+
}
|
|
2785
|
+
/* not interactive: no hover, no pointer */
|
|
2786
|
+
:where([data-kit="halo"]) .tf-row-item.static {
|
|
2787
|
+
cursor: default;
|
|
2788
|
+
}
|
|
2789
|
+
:where([data-kit="halo"]) .tf-row-item.static:hover {
|
|
2790
|
+
background: transparent;
|
|
2791
|
+
color: var(--ink);
|
|
2792
|
+
}
|
|
2793
|
+
/* own buttons: the title is the link or button and its hit area stretches over the row */
|
|
2794
|
+
:where([data-kit="halo"]) .tf-row-item.has-hit {
|
|
2795
|
+
position: relative;
|
|
2796
|
+
}
|
|
2797
|
+
:where([data-kit="halo"]) .tf-row-item.has-hit:hover {
|
|
2798
|
+
background: transparent;
|
|
2799
|
+
color: var(--ink);
|
|
2800
|
+
}
|
|
2801
|
+
:where([data-kit="halo"]) .tf-row-item.has-hit:has(.tf-row-hit:hover) {
|
|
2802
|
+
background: var(--accent);
|
|
2803
|
+
color: var(--accent-foreground);
|
|
2804
|
+
}
|
|
2805
|
+
:where([data-kit="halo"]) .tf-row-item.has-hit:has(.tf-row-hit:focus-visible) {
|
|
2806
|
+
outline: 2px solid var(--focus);
|
|
2807
|
+
outline-offset: 2px;
|
|
2808
|
+
}
|
|
2809
|
+
:where([data-kit="halo"]) .tf-row-hit {
|
|
2810
|
+
display: block;
|
|
2811
|
+
padding: 0;
|
|
2812
|
+
border: 0;
|
|
2813
|
+
background: none;
|
|
2814
|
+
color: inherit;
|
|
2815
|
+
font: inherit;
|
|
2816
|
+
text-align: left;
|
|
2817
|
+
text-decoration: none;
|
|
2818
|
+
cursor: pointer;
|
|
2819
|
+
outline: none;
|
|
2820
|
+
}
|
|
2821
|
+
:where([data-kit="halo"]) .tf-row-hit::after {
|
|
2822
|
+
content: "";
|
|
2823
|
+
position: absolute;
|
|
2824
|
+
inset: 0;
|
|
2825
|
+
border-radius: inherit;
|
|
2826
|
+
}
|
|
2827
|
+
:where([data-kit="halo"]) .tf-row-item.has-actions {
|
|
2828
|
+
grid-template-columns: auto 1fr auto auto;
|
|
2829
|
+
}
|
|
2830
|
+
:where([data-kit="halo"]) .tf-row-actions {
|
|
2831
|
+
position: relative;
|
|
2832
|
+
z-index: 1;
|
|
2833
|
+
display: flex;
|
|
2834
|
+
align-items: center;
|
|
2835
|
+
gap: 4px;
|
|
2836
|
+
}
|
|
2698
2837
|
:where([data-kit="halo"]) .tf-row-item[aria-current="true"] {
|
|
2699
2838
|
background: var(--surface);
|
|
2700
2839
|
box-shadow: var(--shadow-card);
|
|
@@ -2706,12 +2845,27 @@
|
|
|
2706
2845
|
gap: 8px;
|
|
2707
2846
|
}
|
|
2708
2847
|
:where([data-kit="halo"]) .tf-row-sub {
|
|
2848
|
+
display: block;
|
|
2709
2849
|
font: 500 13px/18px var(--font-sans);
|
|
2710
2850
|
color: var(--ink-muted);
|
|
2711
2851
|
white-space: nowrap;
|
|
2712
2852
|
overflow: hidden;
|
|
2713
2853
|
text-overflow: ellipsis;
|
|
2714
2854
|
}
|
|
2855
|
+
/* titleLines / subtitleLines: wrap, then end in an ellipsis after that many lines */
|
|
2856
|
+
:where([data-kit="halo"]) .tf-row-sub.clamp,
|
|
2857
|
+
:where([data-kit="halo"]) .tf-row-clamp {
|
|
2858
|
+
display: -webkit-box;
|
|
2859
|
+
-webkit-box-orient: vertical;
|
|
2860
|
+
-webkit-line-clamp: var(--lines, 2);
|
|
2861
|
+
line-clamp: var(--lines, 2);
|
|
2862
|
+
white-space: normal;
|
|
2863
|
+
overflow: hidden;
|
|
2864
|
+
min-width: 0;
|
|
2865
|
+
}
|
|
2866
|
+
:where([data-kit="halo"]) .tf-row-title.clamp {
|
|
2867
|
+
align-items: flex-start;
|
|
2868
|
+
}
|
|
2715
2869
|
:where([data-kit="halo"]) .tf-row-meta {
|
|
2716
2870
|
font: 600 12px/16px var(--font-sans);
|
|
2717
2871
|
color: var(--ink-muted);
|
|
@@ -2898,6 +3052,13 @@
|
|
|
2898
3052
|
font: 600 13px/1 var(--font-sans);
|
|
2899
3053
|
cursor: pointer;
|
|
2900
3054
|
}
|
|
3055
|
+
:where([data-kit="halo"]) a.tf-page {
|
|
3056
|
+
display: inline-flex;
|
|
3057
|
+
align-items: center;
|
|
3058
|
+
justify-content: center;
|
|
3059
|
+
box-sizing: border-box;
|
|
3060
|
+
text-decoration: none;
|
|
3061
|
+
}
|
|
2901
3062
|
:where([data-kit="halo"]) .tf-page:hover {
|
|
2902
3063
|
background: var(--accent);
|
|
2903
3064
|
color: var(--ink);
|
|
@@ -2908,18 +3069,42 @@
|
|
|
2908
3069
|
}
|
|
2909
3070
|
:where([data-kit="halo"]) .tf-crumbs {
|
|
2910
3071
|
display: flex;
|
|
3072
|
+
flex-wrap: wrap;
|
|
2911
3073
|
align-items: center;
|
|
2912
3074
|
gap: 6px;
|
|
3075
|
+
min-width: 0;
|
|
2913
3076
|
font: 600 13px/18px var(--font-sans);
|
|
2914
3077
|
color: var(--ink-muted);
|
|
2915
3078
|
}
|
|
2916
|
-
|
|
3079
|
+
/* links and buttons get a 24px target without moving the text */
|
|
3080
|
+
:where([data-kit="halo"]) .tf-crumb {
|
|
3081
|
+
display: inline-flex;
|
|
3082
|
+
align-items: center;
|
|
3083
|
+
min-height: 24px;
|
|
3084
|
+
max-width: 100%;
|
|
3085
|
+
padding: 0 4px;
|
|
3086
|
+
/* the target grows to 24px around the 18px line without moving the text */
|
|
3087
|
+
margin: -3px -4px;
|
|
3088
|
+
border: 0;
|
|
3089
|
+
border-radius: var(--radius-sm);
|
|
3090
|
+
background: none;
|
|
2917
3091
|
color: inherit;
|
|
3092
|
+
font: inherit;
|
|
2918
3093
|
text-decoration: none;
|
|
3094
|
+
overflow-wrap: anywhere;
|
|
3095
|
+
}
|
|
3096
|
+
:where([data-kit="halo"]) a.tf-crumb,
|
|
3097
|
+
:where([data-kit="halo"]) button.tf-crumb {
|
|
3098
|
+
cursor: pointer;
|
|
2919
3099
|
}
|
|
2920
|
-
:where([data-kit="halo"]) .tf-
|
|
3100
|
+
:where([data-kit="halo"]) a.tf-crumb:hover,
|
|
3101
|
+
:where([data-kit="halo"]) button.tf-crumb:hover {
|
|
2921
3102
|
color: var(--ink);
|
|
2922
3103
|
}
|
|
3104
|
+
:where([data-kit="halo"]) .tf-crumb:focus-visible {
|
|
3105
|
+
outline: 2px solid var(--focus);
|
|
3106
|
+
outline-offset: 0;
|
|
3107
|
+
}
|
|
2923
3108
|
:where([data-kit="halo"]) .tf-crumbs [aria-current] {
|
|
2924
3109
|
color: var(--ink);
|
|
2925
3110
|
}
|
|
@@ -2961,7 +3146,7 @@
|
|
|
2961
3146
|
cursor: pointer;
|
|
2962
3147
|
}
|
|
2963
3148
|
:where([data-kit="halo"]) .tf-sheet-2 {
|
|
2964
|
-
grid-template-columns:
|
|
3149
|
+
grid-template-columns: auto 1fr;
|
|
2965
3150
|
}
|
|
2966
3151
|
:where([data-kit="halo"]) .tf-main {
|
|
2967
3152
|
display: flex;
|
|
@@ -3034,6 +3219,26 @@
|
|
|
3034
3219
|
justify-content: center;
|
|
3035
3220
|
}
|
|
3036
3221
|
}
|
|
3222
|
+
/* the TopBar measured that the labels do not fit: icons only, at any width */
|
|
3223
|
+
:where([data-kit="halo"]) .tf-nav.tight .tf-nav-label {
|
|
3224
|
+
display: none;
|
|
3225
|
+
}
|
|
3226
|
+
:where([data-kit="halo"]) .tf-nav.tight .tf-nav-item {
|
|
3227
|
+
position: relative;
|
|
3228
|
+
width: 36px;
|
|
3229
|
+
padding: 0;
|
|
3230
|
+
justify-content: center;
|
|
3231
|
+
}
|
|
3232
|
+
:where([data-kit="halo"]) .tf-nav.tight .tf-nav-item .tf-nav-count {
|
|
3233
|
+
position: absolute;
|
|
3234
|
+
top: -2px;
|
|
3235
|
+
right: -4px;
|
|
3236
|
+
min-width: 16px;
|
|
3237
|
+
height: 16px;
|
|
3238
|
+
padding: 0 4px;
|
|
3239
|
+
font-size: 10px;
|
|
3240
|
+
line-height: 16px;
|
|
3241
|
+
}
|
|
3037
3242
|
:where([data-kit="halo"]) .tf-main {
|
|
3038
3243
|
animation: none;
|
|
3039
3244
|
}
|
|
@@ -3159,6 +3364,19 @@
|
|
|
3159
3364
|
:where([data-kit="halo"]) .tf-user-text {
|
|
3160
3365
|
display: flex;
|
|
3161
3366
|
flex-direction: column;
|
|
3367
|
+
min-width: 0;
|
|
3368
|
+
max-width: 200px;
|
|
3369
|
+
}
|
|
3370
|
+
/* a long name or address ends in an ellipsis instead of pushing the nav out (title has it whole) */
|
|
3371
|
+
:where([data-kit="halo"]) .tf-user-name,
|
|
3372
|
+
:where([data-kit="halo"]) .tf-user-mail {
|
|
3373
|
+
overflow: hidden;
|
|
3374
|
+
text-overflow: ellipsis;
|
|
3375
|
+
white-space: nowrap;
|
|
3376
|
+
}
|
|
3377
|
+
:where([data-kit="halo"]) .tf-user {
|
|
3378
|
+
min-width: 0;
|
|
3379
|
+
flex-shrink: 1;
|
|
3162
3380
|
}
|
|
3163
3381
|
|
|
3164
3382
|
/* Checkbox: real box + SVG check (no pseudo-elements on the input) */
|
|
@@ -3171,9 +3389,12 @@
|
|
|
3171
3389
|
}
|
|
3172
3390
|
:where([data-kit="halo"]) .tf-checkbox input {
|
|
3173
3391
|
position: absolute;
|
|
3174
|
-
|
|
3175
|
-
|
|
3176
|
-
|
|
3392
|
+
/* the box keeps its size; the hit area is at least 24px (WCAG 2.2 target size) */
|
|
3393
|
+
top: 50%;
|
|
3394
|
+
left: 50%;
|
|
3395
|
+
translate: -50% -50%;
|
|
3396
|
+
width: max(24px, 100%);
|
|
3397
|
+
height: max(24px, 100%);
|
|
3177
3398
|
margin: 0;
|
|
3178
3399
|
opacity: 0;
|
|
3179
3400
|
cursor: pointer;
|
|
@@ -4247,6 +4468,23 @@
|
|
|
4247
4468
|
font: 600 13px/18px var(--font-sans);
|
|
4248
4469
|
pointer-events: none;
|
|
4249
4470
|
}
|
|
4471
|
+
/* an interactive control at the end (reveal password, clear, copy) */
|
|
4472
|
+
:where([data-kit="halo"]) .tf-input-action {
|
|
4473
|
+
position: absolute;
|
|
4474
|
+
right: 4px;
|
|
4475
|
+
top: 50%;
|
|
4476
|
+
transform: translateY(-50%);
|
|
4477
|
+
display: inline-flex;
|
|
4478
|
+
}
|
|
4479
|
+
:where([data-kit="halo"]) .tf-inputwrap.has-action .tf-input {
|
|
4480
|
+
padding-right: 44px;
|
|
4481
|
+
}
|
|
4482
|
+
:where([data-kit="halo"]) .tf-inputwrap.has-action.has-suffix .tf-input {
|
|
4483
|
+
padding-right: 72px;
|
|
4484
|
+
}
|
|
4485
|
+
:where([data-kit="halo"]) .tf-inputwrap.has-action .tf-input-suffix {
|
|
4486
|
+
right: 44px;
|
|
4487
|
+
}
|
|
4250
4488
|
:where([data-kit="halo"]) .tf-input-suffix.err {
|
|
4251
4489
|
color: var(--blush-ink);
|
|
4252
4490
|
}
|
|
@@ -4406,7 +4644,7 @@
|
|
|
4406
4644
|
display: flex;
|
|
4407
4645
|
}
|
|
4408
4646
|
:where([data-kit="halo"]) .tf-seg.block .tf-seg-item {
|
|
4409
|
-
flex: 1;
|
|
4647
|
+
flex: 1 1 0;
|
|
4410
4648
|
}
|
|
4411
4649
|
:where([data-kit="halo"]) .tf-seg-item {
|
|
4412
4650
|
position: relative;
|
|
@@ -5018,6 +5256,10 @@
|
|
|
5018
5256
|
border-color var(--dur-fast) ease,
|
|
5019
5257
|
background-color var(--dur-fast) ease;
|
|
5020
5258
|
}
|
|
5259
|
+
:where([data-kit="halo"]) .tf-drop.disabled {
|
|
5260
|
+
opacity: 0.5;
|
|
5261
|
+
cursor: not-allowed;
|
|
5262
|
+
}
|
|
5021
5263
|
:where([data-kit="halo"]) .tf-drop b {
|
|
5022
5264
|
font: 600 14px/20px var(--font-sans);
|
|
5023
5265
|
margin-top: 4px;
|
|
@@ -5080,6 +5322,7 @@
|
|
|
5080
5322
|
/* Alert, confirm, toaster */
|
|
5081
5323
|
:where([data-kit="halo"]) .tf-alert {
|
|
5082
5324
|
display: flex;
|
|
5325
|
+
flex-wrap: wrap;
|
|
5083
5326
|
align-items: flex-start;
|
|
5084
5327
|
gap: 12px;
|
|
5085
5328
|
padding: 12px 12px 12px 16px;
|
|
@@ -5123,7 +5366,8 @@
|
|
|
5123
5366
|
color: var(--lilac-ink);
|
|
5124
5367
|
}
|
|
5125
5368
|
:where([data-kit="halo"]) .tf-alert-body {
|
|
5126
|
-
|
|
5369
|
+
/* when the alert is too narrow for text and actions, the actions move to their own line */
|
|
5370
|
+
flex: 1 1 200px;
|
|
5127
5371
|
min-width: 0;
|
|
5128
5372
|
display: flex;
|
|
5129
5373
|
flex-direction: column;
|
|
@@ -5139,8 +5383,11 @@
|
|
|
5139
5383
|
:where([data-kit="halo"]) .tf-alert-actions {
|
|
5140
5384
|
flex: none;
|
|
5141
5385
|
display: flex;
|
|
5386
|
+
flex-wrap: wrap;
|
|
5142
5387
|
align-items: center;
|
|
5143
5388
|
gap: 4px;
|
|
5389
|
+
max-width: 100%;
|
|
5390
|
+
margin-left: auto;
|
|
5144
5391
|
}
|
|
5145
5392
|
:where([data-kit="halo"]) .tf-alert .tf-iconbtn-ghost {
|
|
5146
5393
|
background: transparent;
|
|
@@ -6149,14 +6396,29 @@
|
|
|
6149
6396
|
display: inline-flex;
|
|
6150
6397
|
align-items: center;
|
|
6151
6398
|
gap: 8px;
|
|
6152
|
-
|
|
6153
|
-
|
|
6399
|
+
/* grows with a long title (two lines at most) instead of spilling over */
|
|
6400
|
+
min-height: 32px;
|
|
6401
|
+
box-sizing: border-box;
|
|
6402
|
+
padding: 4px 12px 4px 4px;
|
|
6154
6403
|
border-radius: var(--radius-pill);
|
|
6155
6404
|
background: var(--surface-sunken);
|
|
6156
6405
|
color: var(--ink);
|
|
6157
6406
|
text-decoration: none;
|
|
6158
6407
|
font: 600 12px/16px var(--font-sans);
|
|
6159
|
-
max-width: 260px;
|
|
6408
|
+
max-width: min(260px, 100%);
|
|
6409
|
+
}
|
|
6410
|
+
:where([data-kit="halo"]) .tf-source-title {
|
|
6411
|
+
min-width: 0;
|
|
6412
|
+
display: -webkit-box;
|
|
6413
|
+
-webkit-box-orient: vertical;
|
|
6414
|
+
-webkit-line-clamp: 2;
|
|
6415
|
+
line-clamp: 2;
|
|
6416
|
+
overflow: hidden;
|
|
6417
|
+
overflow-wrap: anywhere;
|
|
6418
|
+
}
|
|
6419
|
+
:where([data-kit="halo"]) .tf-source > .tf-ico,
|
|
6420
|
+
:where([data-kit="halo"]) .tf-source-n {
|
|
6421
|
+
flex: none;
|
|
6160
6422
|
}
|
|
6161
6423
|
:where([data-kit="halo"]) .tf-source:hover {
|
|
6162
6424
|
background: var(--line);
|
|
@@ -7279,17 +7541,25 @@
|
|
|
7279
7541
|
color: var(--ink-muted);
|
|
7280
7542
|
}
|
|
7281
7543
|
:where([data-kit="halo"]) .tf-csteps {
|
|
7544
|
+
/* one row at every width: steps shrink to their numbers instead of wrapping */
|
|
7545
|
+
container: tf-csteps / inline-size;
|
|
7282
7546
|
display: flex;
|
|
7283
7547
|
gap: 8px;
|
|
7284
7548
|
margin: 0;
|
|
7285
7549
|
padding: 0;
|
|
7286
7550
|
list-style: none;
|
|
7287
|
-
flex-wrap: wrap;
|
|
7288
7551
|
}
|
|
7289
7552
|
:where([data-kit="halo"]) .tf-csteps li {
|
|
7290
7553
|
display: flex;
|
|
7291
7554
|
align-items: center;
|
|
7292
7555
|
gap: 8px;
|
|
7556
|
+
min-width: 0;
|
|
7557
|
+
}
|
|
7558
|
+
:where([data-kit="halo"]) .tf-cstep-label {
|
|
7559
|
+
min-width: 0;
|
|
7560
|
+
overflow: hidden;
|
|
7561
|
+
text-overflow: ellipsis;
|
|
7562
|
+
white-space: nowrap;
|
|
7293
7563
|
}
|
|
7294
7564
|
:where([data-kit="halo"]) .tf-csteps li + li::before {
|
|
7295
7565
|
content: "";
|
|
@@ -7318,6 +7588,40 @@
|
|
|
7318
7588
|
:where([data-kit="halo"]) .tf-csteps button:disabled {
|
|
7319
7589
|
cursor: default;
|
|
7320
7590
|
}
|
|
7591
|
+
:where([data-kit="halo"]) .tf-csteps button {
|
|
7592
|
+
min-width: 0;
|
|
7593
|
+
max-width: 100%;
|
|
7594
|
+
}
|
|
7595
|
+
:where([data-kit="halo"]) .tf-csteps.compact li:not(.cur) .tf-cstep-label {
|
|
7596
|
+
position: absolute;
|
|
7597
|
+
width: 1px;
|
|
7598
|
+
height: 1px;
|
|
7599
|
+
overflow: hidden;
|
|
7600
|
+
clip-path: inset(50%);
|
|
7601
|
+
white-space: nowrap;
|
|
7602
|
+
}
|
|
7603
|
+
:where([data-kit="halo"]) .tf-csteps.compact li:not(.cur) button {
|
|
7604
|
+
padding: 0 4px;
|
|
7605
|
+
}
|
|
7606
|
+
:where([data-kit="halo"]) .tf-csteps.compact li + li::before {
|
|
7607
|
+
width: 12px;
|
|
7608
|
+
}
|
|
7609
|
+
@container tf-csteps (max-width: 560px) {
|
|
7610
|
+
:where([data-kit="halo"]) .tf-csteps li:not(.cur) .tf-cstep-label {
|
|
7611
|
+
position: absolute;
|
|
7612
|
+
width: 1px;
|
|
7613
|
+
height: 1px;
|
|
7614
|
+
overflow: hidden;
|
|
7615
|
+
clip-path: inset(50%);
|
|
7616
|
+
white-space: nowrap;
|
|
7617
|
+
}
|
|
7618
|
+
:where([data-kit="halo"]) .tf-csteps li:not(.cur) button {
|
|
7619
|
+
padding: 0 4px;
|
|
7620
|
+
}
|
|
7621
|
+
:where([data-kit="halo"]) .tf-csteps li + li::before {
|
|
7622
|
+
width: 12px;
|
|
7623
|
+
}
|
|
7624
|
+
}
|
|
7321
7625
|
:where([data-kit="halo"]) .tf-csteps li.cur button {
|
|
7322
7626
|
background: var(--surface);
|
|
7323
7627
|
color: var(--ink);
|
|
@@ -7484,7 +7788,7 @@
|
|
|
7484
7788
|
color: var(--on-frame);
|
|
7485
7789
|
box-shadow: var(--shadow-float);
|
|
7486
7790
|
}
|
|
7487
|
-
:where([data-kit="halo"]) .tf-plan.featured .tf-plan-head span,
|
|
7791
|
+
:where([data-kit="halo"]) .tf-plan.featured .tf-plan-head span:not(.tf-badge),
|
|
7488
7792
|
:where([data-kit="halo"]) .tf-plan.featured .tf-plan-price span,
|
|
7489
7793
|
:where([data-kit="halo"]) .tf-plan.featured .tf-plan-price s,
|
|
7490
7794
|
:where([data-kit="halo"]) .tf-plan.featured .tf-plan-feats li.no {
|
|
@@ -7515,10 +7819,22 @@
|
|
|
7515
7819
|
:where([data-kit="halo"]) .tf-plan-head b {
|
|
7516
7820
|
font: 700 20px/26px var(--font-sans);
|
|
7517
7821
|
}
|
|
7518
|
-
:where([data-kit="halo"]) .tf-plan-head span {
|
|
7822
|
+
:where([data-kit="halo"]) .tf-plan-head span:not(.tf-badge) {
|
|
7519
7823
|
font: 500 13px/18px var(--font-sans);
|
|
7520
7824
|
color: var(--ink-muted);
|
|
7521
7825
|
}
|
|
7826
|
+
/* "Current plan" next to the name, and the note under the price */
|
|
7827
|
+
:where([data-kit="halo"]) .tf-plan-head .tf-plan-current {
|
|
7828
|
+
align-self: flex-start;
|
|
7829
|
+
}
|
|
7830
|
+
:where([data-kit="halo"]) .tf-plan-note {
|
|
7831
|
+
margin: -4px 0 0;
|
|
7832
|
+
font: 500 12px/16px var(--font-sans);
|
|
7833
|
+
color: var(--ink-muted);
|
|
7834
|
+
}
|
|
7835
|
+
:where([data-kit="halo"]) a.tf-plan-cta {
|
|
7836
|
+
text-decoration: none;
|
|
7837
|
+
}
|
|
7522
7838
|
:where([data-kit="halo"]) .tf-plan-price {
|
|
7523
7839
|
display: flex;
|
|
7524
7840
|
align-items: baseline;
|
|
@@ -9623,7 +9939,7 @@
|
|
|
9623
9939
|
:where([data-kit="halo"]) .tf-tabbar {
|
|
9624
9940
|
display: grid;
|
|
9625
9941
|
grid-auto-flow: column;
|
|
9626
|
-
grid-auto-columns: 1fr;
|
|
9942
|
+
grid-auto-columns: minmax(0, 1fr);
|
|
9627
9943
|
padding: 4px 8px calc(4px + env(safe-area-inset-bottom, 0px));
|
|
9628
9944
|
background: var(--frame);
|
|
9629
9945
|
border-radius: 24px 24px 0 0;
|
|
@@ -9642,6 +9958,17 @@
|
|
|
9642
9958
|
cursor: pointer;
|
|
9643
9959
|
border-radius: 16px;
|
|
9644
9960
|
}
|
|
9961
|
+
:where([data-kit="halo"]) .tf-tabbar-item {
|
|
9962
|
+
min-width: 0;
|
|
9963
|
+
}
|
|
9964
|
+
:where([data-kit="halo"]) .tf-tabbar-label {
|
|
9965
|
+
max-width: 100%;
|
|
9966
|
+
padding: 0 4px;
|
|
9967
|
+
box-sizing: border-box;
|
|
9968
|
+
overflow: hidden;
|
|
9969
|
+
text-overflow: ellipsis;
|
|
9970
|
+
white-space: nowrap;
|
|
9971
|
+
}
|
|
9645
9972
|
:where([data-kit="halo"]) .tf-tabbar-item.on {
|
|
9646
9973
|
color: var(--on-frame);
|
|
9647
9974
|
background: var(--frame-hover);
|
|
@@ -9953,6 +10280,22 @@
|
|
|
9953
10280
|
padding-bottom: 10px;
|
|
9954
10281
|
color: var(--ink-muted);
|
|
9955
10282
|
}
|
|
10283
|
+
/* in a narrow column (a filter sidebar) the number fields give their padding to the digits */
|
|
10284
|
+
:where([data-kit="halo"]) .tf-range {
|
|
10285
|
+
container: tf-range / inline-size;
|
|
10286
|
+
}
|
|
10287
|
+
@container tf-range (max-width: 280px) {
|
|
10288
|
+
:where([data-kit="halo"]) .tf-range-inputs {
|
|
10289
|
+
gap: 4px;
|
|
10290
|
+
}
|
|
10291
|
+
:where([data-kit="halo"]) .tf-range-num .tf-input {
|
|
10292
|
+
padding-left: 10px;
|
|
10293
|
+
padding-right: 24px;
|
|
10294
|
+
}
|
|
10295
|
+
:where([data-kit="halo"]) .tf-range-num > span {
|
|
10296
|
+
right: 10px;
|
|
10297
|
+
}
|
|
10298
|
+
}
|
|
9956
10299
|
:where([data-kit="halo"]) .tf-range-vals {
|
|
9957
10300
|
display: flex;
|
|
9958
10301
|
justify-content: space-between;
|
|
@@ -10106,6 +10449,31 @@
|
|
|
10106
10449
|
font: 500 12px/16px var(--font-sans);
|
|
10107
10450
|
color: var(--ink-muted);
|
|
10108
10451
|
}
|
|
10452
|
+
/* layout="list": compact rows */
|
|
10453
|
+
:where([data-kit="halo"]) .tf-tiles.list {
|
|
10454
|
+
grid-template-columns: minmax(0, 1fr);
|
|
10455
|
+
gap: 8px;
|
|
10456
|
+
}
|
|
10457
|
+
:where([data-kit="halo"]) .tf-tiles.list .tf-tile {
|
|
10458
|
+
flex-direction: row;
|
|
10459
|
+
align-items: center;
|
|
10460
|
+
gap: 12px;
|
|
10461
|
+
padding: 8px 44px 8px 8px;
|
|
10462
|
+
}
|
|
10463
|
+
:where([data-kit="halo"]) .tf-tiles.list .tf-tile-art {
|
|
10464
|
+
flex: none;
|
|
10465
|
+
width: 40px;
|
|
10466
|
+
height: 40px;
|
|
10467
|
+
aspect-ratio: auto;
|
|
10468
|
+
}
|
|
10469
|
+
:where([data-kit="halo"]) .tf-tiles.list .tf-tile-label {
|
|
10470
|
+
min-width: 0;
|
|
10471
|
+
padding: 0;
|
|
10472
|
+
}
|
|
10473
|
+
:where([data-kit="halo"]) .tf-tiles.list .tf-tile-check {
|
|
10474
|
+
top: 50%;
|
|
10475
|
+
translate: 0 -50%;
|
|
10476
|
+
}
|
|
10109
10477
|
:where([data-kit="halo"]) .tf-tile-check {
|
|
10110
10478
|
position: absolute;
|
|
10111
10479
|
top: 14px;
|
|
@@ -11215,6 +11583,16 @@
|
|
|
11215
11583
|
color: var(--paper-ink);
|
|
11216
11584
|
box-shadow: inset 0 0 0 1px var(--line);
|
|
11217
11585
|
}
|
|
11586
|
+
/* QrCode: dark modules on paper, in every theme (scanners expect dark on light) */
|
|
11587
|
+
:where([data-kit="halo"]) .tf-qr {
|
|
11588
|
+
display: block;
|
|
11589
|
+
width: 100%;
|
|
11590
|
+
height: auto;
|
|
11591
|
+
color: var(--paper-ink);
|
|
11592
|
+
}
|
|
11593
|
+
:where([data-kit="halo"]) .tf-qr-bg {
|
|
11594
|
+
fill: var(--paper);
|
|
11595
|
+
}
|
|
11218
11596
|
:where([data-kit="halo"]) .tf-2fa-qr > * {
|
|
11219
11597
|
max-width: 100%;
|
|
11220
11598
|
max-height: 100%;
|
|
@@ -11466,7 +11844,8 @@
|
|
|
11466
11844
|
border-radius: var(--radius-md);
|
|
11467
11845
|
overflow: hidden;
|
|
11468
11846
|
background: var(--surface-sunken);
|
|
11469
|
-
|
|
11847
|
+
/* sideways drags move the divider; the page still scrolls up and down over it */
|
|
11848
|
+
touch-action: pan-y;
|
|
11470
11849
|
user-select: none;
|
|
11471
11850
|
cursor: ew-resize;
|
|
11472
11851
|
}
|
|
@@ -12369,6 +12748,14 @@
|
|
|
12369
12748
|
:where([data-kit="halo"]) .tf-togglegroup .tf-toggle {
|
|
12370
12749
|
height: 32px;
|
|
12371
12750
|
}
|
|
12751
|
+
:where([data-kit="halo"]) .tf-togglegroup.block {
|
|
12752
|
+
display: flex;
|
|
12753
|
+
flex-wrap: nowrap;
|
|
12754
|
+
width: auto;
|
|
12755
|
+
}
|
|
12756
|
+
:where([data-kit="halo"]) .tf-togglegroup.block .tf-toggle {
|
|
12757
|
+
flex: 1 1 0;
|
|
12758
|
+
}
|
|
12372
12759
|
:where([data-kit="halo"]) .tf-togglegroup .tf-toggle.icon {
|
|
12373
12760
|
width: 32px;
|
|
12374
12761
|
}
|
|
@@ -12579,6 +12966,11 @@
|
|
|
12579
12966
|
text-align: left;
|
|
12580
12967
|
cursor: pointer;
|
|
12581
12968
|
}
|
|
12969
|
+
:where([data-kit="halo"]) .tf-selectmenu.sm {
|
|
12970
|
+
height: 32px;
|
|
12971
|
+
padding: 0 12px;
|
|
12972
|
+
font-size: 13px;
|
|
12973
|
+
}
|
|
12582
12974
|
:where([data-kit="halo"]) .tf-selectmenu.empty .tf-selectmenu-value {
|
|
12583
12975
|
color: var(--ink-subtle);
|
|
12584
12976
|
}
|
|
@@ -12855,26 +13247,44 @@
|
|
|
12855
13247
|
outline-offset: -2px;
|
|
12856
13248
|
}
|
|
12857
13249
|
|
|
12858
|
-
/* Sidebar */
|
|
13250
|
+
/* Sidebar: floating (a card), attached (flush with the screen's edge) or on the AppShell frame */
|
|
12859
13251
|
:where([data-kit="halo"]) .tf-sidebar {
|
|
12860
13252
|
display: flex;
|
|
12861
13253
|
flex-direction: column;
|
|
12862
|
-
|
|
13254
|
+
flex: none;
|
|
13255
|
+
gap: 12px;
|
|
12863
13256
|
width: 248px;
|
|
12864
13257
|
padding: 12px;
|
|
12865
13258
|
box-sizing: border-box;
|
|
12866
13259
|
border-radius: var(--radius-lg);
|
|
12867
13260
|
background: var(--surface);
|
|
12868
13261
|
box-shadow: var(--shadow-card);
|
|
13262
|
+
color: var(--ink);
|
|
12869
13263
|
transition: width var(--dur-base) var(--ease-out);
|
|
12870
13264
|
}
|
|
12871
13265
|
:where([data-kit="halo"]) .tf-sidebar.collapsed {
|
|
12872
13266
|
width: 64px;
|
|
12873
13267
|
}
|
|
13268
|
+
:where([data-kit="halo"]) .tf-sidebar.attached {
|
|
13269
|
+
align-self: stretch;
|
|
13270
|
+
min-height: 100%;
|
|
13271
|
+
border-radius: 0;
|
|
13272
|
+
box-shadow: none;
|
|
13273
|
+
background: var(--sidebar);
|
|
13274
|
+
border-right: 1px solid var(--sidebar-border);
|
|
13275
|
+
}
|
|
13276
|
+
:where([data-kit="halo"]) .tf-sidebar-head {
|
|
13277
|
+
display: flex;
|
|
13278
|
+
align-items: center;
|
|
13279
|
+
gap: 8px;
|
|
13280
|
+
min-height: 40px;
|
|
13281
|
+
padding: 0 4px;
|
|
13282
|
+
}
|
|
12874
13283
|
:where([data-kit="halo"]) .tf-sidebar-body {
|
|
12875
13284
|
display: flex;
|
|
12876
13285
|
flex-direction: column;
|
|
12877
|
-
|
|
13286
|
+
/* groups sit clearly apart; a label sits close to its own items */
|
|
13287
|
+
gap: 20px;
|
|
12878
13288
|
flex: 1;
|
|
12879
13289
|
min-height: 0;
|
|
12880
13290
|
overflow-y: auto;
|
|
@@ -12887,13 +13297,49 @@
|
|
|
12887
13297
|
padding: 0;
|
|
12888
13298
|
list-style: none;
|
|
12889
13299
|
}
|
|
13300
|
+
:where([data-kit="halo"]) .tf-sidebar-grouphead {
|
|
13301
|
+
display: flex;
|
|
13302
|
+
align-items: center;
|
|
13303
|
+
gap: 4px;
|
|
13304
|
+
min-height: 24px;
|
|
13305
|
+
margin-bottom: 8px;
|
|
13306
|
+
padding: 0 4px 0 12px;
|
|
13307
|
+
}
|
|
12890
13308
|
:where([data-kit="halo"]) .tf-sidebar-grouplabel {
|
|
12891
|
-
|
|
13309
|
+
display: flex;
|
|
13310
|
+
align-items: center;
|
|
13311
|
+
gap: 4px;
|
|
13312
|
+
flex: 1;
|
|
13313
|
+
min-width: 0;
|
|
13314
|
+
padding: 0;
|
|
13315
|
+
border: 0;
|
|
13316
|
+
background: none;
|
|
12892
13317
|
font: 600 11px/14px var(--font-sans);
|
|
12893
13318
|
letter-spacing: 0.06em;
|
|
12894
13319
|
text-transform: uppercase;
|
|
13320
|
+
text-align: left;
|
|
12895
13321
|
color: var(--ink-muted);
|
|
12896
13322
|
}
|
|
13323
|
+
:where([data-kit="halo"]) button.tf-sidebar-grouplabel {
|
|
13324
|
+
cursor: pointer;
|
|
13325
|
+
}
|
|
13326
|
+
:where([data-kit="halo"]) button.tf-sidebar-grouplabel:hover {
|
|
13327
|
+
color: var(--ink);
|
|
13328
|
+
}
|
|
13329
|
+
:where([data-kit="halo"]) button.tf-sidebar-grouplabel:focus-visible {
|
|
13330
|
+
outline: 2px solid var(--focus);
|
|
13331
|
+
outline-offset: 2px;
|
|
13332
|
+
}
|
|
13333
|
+
:where([data-kit="halo"]) .tf-sidebar-grouplabel[aria-expanded="false"] .tf-sidebar-chev {
|
|
13334
|
+
transform: rotate(-90deg);
|
|
13335
|
+
}
|
|
13336
|
+
:where([data-kit="halo"]) .tf-sidebar-groupaction {
|
|
13337
|
+
flex: none;
|
|
13338
|
+
margin-left: auto;
|
|
13339
|
+
}
|
|
13340
|
+
:where([data-kit="halo"]) .tf-sidebar-li {
|
|
13341
|
+
position: relative;
|
|
13342
|
+
}
|
|
12897
13343
|
:where([data-kit="halo"]) .tf-sidebar-item {
|
|
12898
13344
|
display: flex;
|
|
12899
13345
|
align-items: center;
|
|
@@ -12901,15 +13347,86 @@
|
|
|
12901
13347
|
width: 100%;
|
|
12902
13348
|
height: 40px;
|
|
12903
13349
|
padding: 0 12px;
|
|
13350
|
+
box-sizing: border-box;
|
|
12904
13351
|
border: 0;
|
|
12905
13352
|
border-radius: var(--radius-pill);
|
|
12906
13353
|
background: transparent;
|
|
12907
13354
|
color: var(--ink-muted);
|
|
12908
13355
|
font: 600 13px/18px var(--font-sans);
|
|
12909
13356
|
text-align: left;
|
|
13357
|
+
text-decoration: none;
|
|
12910
13358
|
cursor: pointer;
|
|
12911
13359
|
}
|
|
12912
|
-
|
|
13360
|
+
/* Filter options (Sidebar as="aside"): a checkbox or radio mark, the label and a count */
|
|
13361
|
+
:where([data-kit="halo"]) .tf-sidebar-option {
|
|
13362
|
+
position: relative;
|
|
13363
|
+
}
|
|
13364
|
+
:where([data-kit="halo"]) .tf-sidebar-option.disabled {
|
|
13365
|
+
opacity: 0.45;
|
|
13366
|
+
cursor: default;
|
|
13367
|
+
}
|
|
13368
|
+
:where([data-kit="halo"]) .tf-sidebar-input {
|
|
13369
|
+
position: absolute;
|
|
13370
|
+
width: 1px;
|
|
13371
|
+
height: 1px;
|
|
13372
|
+
margin: 0;
|
|
13373
|
+
opacity: 0;
|
|
13374
|
+
pointer-events: none;
|
|
13375
|
+
}
|
|
13376
|
+
:where([data-kit="halo"]) .tf-sidebar-mark {
|
|
13377
|
+
display: grid;
|
|
13378
|
+
place-items: center;
|
|
13379
|
+
flex: none;
|
|
13380
|
+
width: 18px;
|
|
13381
|
+
height: 18px;
|
|
13382
|
+
box-sizing: border-box;
|
|
13383
|
+
border-radius: 6px;
|
|
13384
|
+
border: 1.5px solid var(--line-strong);
|
|
13385
|
+
background: var(--surface);
|
|
13386
|
+
color: var(--primary-foreground);
|
|
13387
|
+
transition:
|
|
13388
|
+
background-color var(--dur-fast) var(--ease-out),
|
|
13389
|
+
border-color var(--dur-fast) var(--ease-out);
|
|
13390
|
+
}
|
|
13391
|
+
:where([data-kit="halo"]) .tf-sidebar-mark.radio {
|
|
13392
|
+
border-radius: 50%;
|
|
13393
|
+
}
|
|
13394
|
+
:where([data-kit="halo"]) .tf-sidebar-mark svg {
|
|
13395
|
+
opacity: 0;
|
|
13396
|
+
}
|
|
13397
|
+
:where([data-kit="halo"]) .tf-sidebar-input:checked + .tf-sidebar-mark {
|
|
13398
|
+
background: var(--primary);
|
|
13399
|
+
border-color: var(--primary);
|
|
13400
|
+
}
|
|
13401
|
+
:where([data-kit="halo"]) .tf-sidebar-input:checked + .tf-sidebar-mark.radio {
|
|
13402
|
+
box-shadow: inset 0 0 0 3px var(--surface);
|
|
13403
|
+
}
|
|
13404
|
+
:where([data-kit="halo"]) .tf-sidebar-input:checked + .tf-sidebar-mark svg {
|
|
13405
|
+
opacity: 1;
|
|
13406
|
+
}
|
|
13407
|
+
:where([data-kit="halo"]) .tf-sidebar-input:focus-visible + .tf-sidebar-mark {
|
|
13408
|
+
outline: 2px solid var(--focus);
|
|
13409
|
+
outline-offset: 2px;
|
|
13410
|
+
}
|
|
13411
|
+
:where([data-kit="halo"]) .tf-sidebar-option:has(.tf-sidebar-input:checked) {
|
|
13412
|
+
color: var(--ink);
|
|
13413
|
+
}
|
|
13414
|
+
/* free content in a group (sliders, date fields, chips) */
|
|
13415
|
+
:where([data-kit="halo"]) .tf-sidebar-content {
|
|
13416
|
+
display: flex;
|
|
13417
|
+
flex-direction: column;
|
|
13418
|
+
gap: 12px;
|
|
13419
|
+
padding: 4px 12px 0;
|
|
13420
|
+
min-width: 0;
|
|
13421
|
+
}
|
|
13422
|
+
:where([data-kit="halo"]) .tf-sidebar-groupbody {
|
|
13423
|
+
display: flex;
|
|
13424
|
+
flex-direction: column;
|
|
13425
|
+
gap: 2px;
|
|
13426
|
+
min-width: 0;
|
|
13427
|
+
}
|
|
13428
|
+
:where([data-kit="halo"]) .tf-sidebar-item:hover,
|
|
13429
|
+
:where([data-kit="halo"]) .tf-sidebar-item.flying {
|
|
12913
13430
|
background: var(--sidebar-accent);
|
|
12914
13431
|
color: var(--ink);
|
|
12915
13432
|
}
|
|
@@ -12924,10 +13441,21 @@
|
|
|
12924
13441
|
outline: 2px solid var(--focus);
|
|
12925
13442
|
outline-offset: 2px;
|
|
12926
13443
|
}
|
|
13444
|
+
:where([data-kit="halo"]) .tf-sidebar-item:disabled {
|
|
13445
|
+
opacity: 0.45;
|
|
13446
|
+
cursor: not-allowed;
|
|
13447
|
+
}
|
|
13448
|
+
:where([data-kit="halo"]) .tf-sidebar-item:disabled:hover {
|
|
13449
|
+
background: transparent;
|
|
13450
|
+
color: var(--ink-muted);
|
|
13451
|
+
}
|
|
12927
13452
|
:where([data-kit="halo"]) .tf-sidebar-item.nested {
|
|
12928
13453
|
height: 32px;
|
|
12929
13454
|
padding-left: 40px;
|
|
12930
13455
|
}
|
|
13456
|
+
:where([data-kit="halo"]) .tf-sidebar-sub {
|
|
13457
|
+
margin-top: 2px !important;
|
|
13458
|
+
}
|
|
12931
13459
|
:where([data-kit="halo"]) .tf-sidebar-label {
|
|
12932
13460
|
flex: 1;
|
|
12933
13461
|
min-width: 0;
|
|
@@ -12936,22 +13464,107 @@
|
|
|
12936
13464
|
white-space: nowrap;
|
|
12937
13465
|
}
|
|
12938
13466
|
:where([data-kit="halo"]) .tf-sidebar-chev {
|
|
13467
|
+
flex: none;
|
|
12939
13468
|
transition: transform var(--dur-base) var(--ease-out);
|
|
12940
13469
|
}
|
|
12941
13470
|
:where([data-kit="halo"]) .tf-sidebar-item[aria-expanded="true"] .tf-sidebar-chev {
|
|
12942
13471
|
transform: rotate(180deg);
|
|
12943
13472
|
}
|
|
13473
|
+
:where([data-kit="halo"]) .tf-sidebar-ext {
|
|
13474
|
+
flex: none;
|
|
13475
|
+
opacity: 0.7;
|
|
13476
|
+
}
|
|
13477
|
+
:where([data-kit="halo"]) .tf-sidebar-count {
|
|
13478
|
+
flex: none;
|
|
13479
|
+
min-width: 20px;
|
|
13480
|
+
height: 20px;
|
|
13481
|
+
padding: 0 6px;
|
|
13482
|
+
box-sizing: border-box;
|
|
13483
|
+
border-radius: var(--radius-pill);
|
|
13484
|
+
background: var(--count);
|
|
13485
|
+
color: var(--on-count);
|
|
13486
|
+
font: 700 11px/20px var(--font-sans);
|
|
13487
|
+
text-align: center;
|
|
13488
|
+
}
|
|
13489
|
+
:where([data-kit="halo"]) .tf-sidebar-badge {
|
|
13490
|
+
flex: none;
|
|
13491
|
+
height: 20px;
|
|
13492
|
+
padding: 0 8px;
|
|
13493
|
+
box-sizing: border-box;
|
|
13494
|
+
border-radius: var(--radius-pill);
|
|
13495
|
+
background: var(--count);
|
|
13496
|
+
color: var(--on-count);
|
|
13497
|
+
font: 700 10px/20px var(--font-sans);
|
|
13498
|
+
letter-spacing: 0.04em;
|
|
13499
|
+
text-transform: uppercase;
|
|
13500
|
+
}
|
|
13501
|
+
:where([data-kit="halo"]) .tf-sidebar-dot {
|
|
13502
|
+
flex: none;
|
|
13503
|
+
width: 8px;
|
|
13504
|
+
height: 8px;
|
|
13505
|
+
border-radius: 50%;
|
|
13506
|
+
background: var(--count);
|
|
13507
|
+
}
|
|
13508
|
+
:where([data-kit="halo"]) .tf-sidebar-sr {
|
|
13509
|
+
position: absolute;
|
|
13510
|
+
width: 1px;
|
|
13511
|
+
height: 1px;
|
|
13512
|
+
overflow: hidden;
|
|
13513
|
+
clip-path: inset(50%);
|
|
13514
|
+
white-space: nowrap;
|
|
13515
|
+
}
|
|
13516
|
+
/* the "…" menu of an item shows on hover and focus */
|
|
13517
|
+
:where([data-kit="halo"]) .tf-sidebar-li.with-actions > .tf-sidebar-item {
|
|
13518
|
+
padding-right: 40px;
|
|
13519
|
+
}
|
|
13520
|
+
:where([data-kit="halo"]) .tf-sidebar-more {
|
|
13521
|
+
position: absolute;
|
|
13522
|
+
top: 4px;
|
|
13523
|
+
right: 4px;
|
|
13524
|
+
opacity: 0;
|
|
13525
|
+
transition: opacity var(--dur-fast) var(--ease-out);
|
|
13526
|
+
}
|
|
13527
|
+
:where([data-kit="halo"]) .tf-sidebar-li:hover > .tf-sidebar-more,
|
|
13528
|
+
:where([data-kit="halo"]) .tf-sidebar-more:focus-visible,
|
|
13529
|
+
:where([data-kit="halo"]) .tf-sidebar-more[aria-expanded="true"] {
|
|
13530
|
+
opacity: 1;
|
|
13531
|
+
}
|
|
12944
13532
|
:where([data-kit="halo"]) .tf-sidebar-foot {
|
|
12945
13533
|
display: flex;
|
|
12946
13534
|
align-items: center;
|
|
12947
|
-
justify-content: space-between;
|
|
12948
13535
|
gap: 8px;
|
|
12949
13536
|
padding-top: 12px;
|
|
12950
13537
|
border-top: 1px solid var(--sidebar-border);
|
|
12951
13538
|
}
|
|
13539
|
+
:where([data-kit="halo"]) .tf-sidebar-foot > :not(.tf-sidebar-toggle) {
|
|
13540
|
+
flex: 1;
|
|
13541
|
+
min-width: 0;
|
|
13542
|
+
}
|
|
13543
|
+
:where([data-kit="halo"]) .tf-sidebar-toggle {
|
|
13544
|
+
flex: none;
|
|
13545
|
+
margin-left: auto;
|
|
13546
|
+
}
|
|
13547
|
+
:where([data-kit="halo"]) .tf-sidebar-head .tf-pop-anchor,
|
|
13548
|
+
:where([data-kit="halo"]) .tf-sidebar-foot .tf-pop-anchor {
|
|
13549
|
+
display: block;
|
|
13550
|
+
min-width: 0;
|
|
13551
|
+
}
|
|
13552
|
+
:where([data-kit="halo"]) .tf-sidebar-head .tf-wssw {
|
|
13553
|
+
width: 100%;
|
|
13554
|
+
}
|
|
13555
|
+
:where([data-kit="halo"]) .tf-sidebar-head .tf-wssw .tf-option-text {
|
|
13556
|
+
flex: 1;
|
|
13557
|
+
min-width: 0;
|
|
13558
|
+
}
|
|
13559
|
+
|
|
13560
|
+
/* collapsed: icons only; labels stay the accessible names, tooltips and flyouts show them */
|
|
13561
|
+
:where([data-kit="halo"]) .tf-sidebar.collapsed .tf-sidebar-body {
|
|
13562
|
+
gap: 12px;
|
|
13563
|
+
}
|
|
12952
13564
|
:where([data-kit="halo"]) .tf-sidebar.collapsed .tf-sidebar-label,
|
|
12953
13565
|
:where([data-kit="halo"]) .tf-sidebar.collapsed .tf-sidebar-chev,
|
|
12954
|
-
:where([data-kit="halo"]) .tf-sidebar.collapsed .tf-sidebar-
|
|
13566
|
+
:where([data-kit="halo"]) .tf-sidebar.collapsed .tf-sidebar-ext,
|
|
13567
|
+
:where([data-kit="halo"]) .tf-sidebar.collapsed .tf-sidebar-grouphead {
|
|
12955
13568
|
position: absolute;
|
|
12956
13569
|
width: 1px;
|
|
12957
13570
|
height: 1px;
|
|
@@ -12959,12 +13572,19 @@
|
|
|
12959
13572
|
clip-path: inset(50%);
|
|
12960
13573
|
white-space: nowrap;
|
|
12961
13574
|
}
|
|
13575
|
+
:where([data-kit="halo"]) .tf-sidebar.collapsed .tf-sidebar-group + .tf-sidebar-group {
|
|
13576
|
+
padding-top: 12px;
|
|
13577
|
+
border-top: 1px solid var(--sidebar-border);
|
|
13578
|
+
}
|
|
12962
13579
|
:where([data-kit="halo"]) .tf-sidebar.collapsed .tf-sidebar-item {
|
|
12963
13580
|
position: relative;
|
|
12964
13581
|
justify-content: center;
|
|
12965
13582
|
padding: 0;
|
|
12966
13583
|
}
|
|
12967
|
-
:where([data-kit="halo"]) .tf-sidebar.collapsed .tf-
|
|
13584
|
+
:where([data-kit="halo"]) .tf-sidebar.collapsed .tf-sidebar-item.has-current {
|
|
13585
|
+
background: var(--sidebar-accent);
|
|
13586
|
+
}
|
|
13587
|
+
:where([data-kit="halo"]) .tf-sidebar.collapsed .tf-sidebar-count {
|
|
12968
13588
|
position: absolute;
|
|
12969
13589
|
top: -2px;
|
|
12970
13590
|
right: -2px;
|
|
@@ -12974,13 +13594,273 @@
|
|
|
12974
13594
|
font-size: 10px;
|
|
12975
13595
|
line-height: 16px;
|
|
12976
13596
|
}
|
|
13597
|
+
:where([data-kit="halo"]) .tf-sidebar.collapsed .tf-sidebar-dot,
|
|
13598
|
+
:where([data-kit="halo"]) .tf-sidebar.collapsed .tf-sidebar-badge {
|
|
13599
|
+
position: absolute;
|
|
13600
|
+
top: 6px;
|
|
13601
|
+
right: 8px;
|
|
13602
|
+
width: 8px;
|
|
13603
|
+
height: 8px;
|
|
13604
|
+
padding: 0;
|
|
13605
|
+
font-size: 0;
|
|
13606
|
+
}
|
|
13607
|
+
:where([data-kit="halo"]) .tf-sidebar.collapsed .tf-sidebar-head {
|
|
13608
|
+
justify-content: center;
|
|
13609
|
+
padding: 0;
|
|
13610
|
+
}
|
|
12977
13611
|
:where([data-kit="halo"]) .tf-sidebar.collapsed .tf-sidebar-foot {
|
|
12978
13612
|
flex-direction: column;
|
|
12979
13613
|
}
|
|
13614
|
+
:where([data-kit="halo"]) .tf-sidebar.collapsed .tf-sidebar-foot > :not(.tf-sidebar-toggle) {
|
|
13615
|
+
flex: none;
|
|
13616
|
+
}
|
|
13617
|
+
:where([data-kit="halo"]) .tf-sidebar.collapsed .tf-sidebar-toggle {
|
|
13618
|
+
margin-left: 0;
|
|
13619
|
+
}
|
|
13620
|
+
|
|
13621
|
+
/* tooltips, flyouts and item menus float in the portal, so the scrolling body does not clip them */
|
|
13622
|
+
:where([data-kit="halo"]) .tf-sidebar-layer {
|
|
13623
|
+
position: fixed;
|
|
13624
|
+
z-index: var(--z-palette);
|
|
13625
|
+
}
|
|
13626
|
+
:where([data-kit="halo"]) .tf-sidebar-tip {
|
|
13627
|
+
display: inline-flex;
|
|
13628
|
+
align-items: center;
|
|
13629
|
+
gap: 8px;
|
|
13630
|
+
padding: 4px 8px;
|
|
13631
|
+
border-radius: var(--radius-sm);
|
|
13632
|
+
background: var(--frame);
|
|
13633
|
+
color: var(--on-frame);
|
|
13634
|
+
font: 600 12px/16px var(--font-sans);
|
|
13635
|
+
white-space: nowrap;
|
|
13636
|
+
pointer-events: none;
|
|
13637
|
+
animation: tf-halo-fade var(--dur-fast) var(--ease-out) both;
|
|
13638
|
+
}
|
|
13639
|
+
:where([data-kit="halo"]) .tf-sidebar-tipcount {
|
|
13640
|
+
color: var(--on-frame-muted);
|
|
13641
|
+
}
|
|
13642
|
+
:where([data-kit="halo"]) .tf-sidebar-flyout {
|
|
13643
|
+
min-width: 200px;
|
|
13644
|
+
padding: 6px;
|
|
13645
|
+
border-radius: var(--radius-md);
|
|
13646
|
+
background: var(--surface);
|
|
13647
|
+
color: var(--ink);
|
|
13648
|
+
box-shadow: var(--shadow-float);
|
|
13649
|
+
animation: tf-halo-fade var(--dur-fast) var(--ease-out) both;
|
|
13650
|
+
}
|
|
13651
|
+
:where([data-kit="halo"]) .tf-sidebar-flyout ul {
|
|
13652
|
+
display: flex;
|
|
13653
|
+
flex-direction: column;
|
|
13654
|
+
gap: 2px;
|
|
13655
|
+
margin: 0;
|
|
13656
|
+
padding: 0;
|
|
13657
|
+
list-style: none;
|
|
13658
|
+
}
|
|
13659
|
+
:where([data-kit="halo"]) .tf-sidebar-flytitle {
|
|
13660
|
+
padding: 6px 12px 8px;
|
|
13661
|
+
font: 600 11px/14px var(--font-sans);
|
|
13662
|
+
letter-spacing: 0.06em;
|
|
13663
|
+
text-transform: uppercase;
|
|
13664
|
+
color: var(--ink-muted);
|
|
13665
|
+
}
|
|
13666
|
+
:where([data-kit="halo"]) .tf-sidebar-flyout .tf-sidebar-item.nested {
|
|
13667
|
+
padding-left: 12px;
|
|
13668
|
+
}
|
|
13669
|
+
|
|
13670
|
+
/* on the AppShell frame */
|
|
13671
|
+
:where([data-kit="halo"]) .tf-sidebar.shell {
|
|
13672
|
+
align-self: stretch;
|
|
13673
|
+
padding: 16px 8px 8px;
|
|
13674
|
+
border-radius: 0;
|
|
13675
|
+
background: transparent;
|
|
13676
|
+
box-shadow: none;
|
|
13677
|
+
color: var(--on-frame);
|
|
13678
|
+
}
|
|
13679
|
+
:where([data-kit="halo"]) .tf-sidebar.shell .tf-sidebar-item,
|
|
13680
|
+
:where([data-kit="halo"]) .tf-sidebar.shell .tf-sidebar-grouplabel {
|
|
13681
|
+
color: var(--on-frame-muted);
|
|
13682
|
+
}
|
|
13683
|
+
:where([data-kit="halo"]) .tf-sidebar.shell .tf-sidebar-item:hover,
|
|
13684
|
+
:where([data-kit="halo"]) .tf-sidebar.shell .tf-sidebar-item.flying,
|
|
13685
|
+
:where([data-kit="halo"]) .tf-sidebar.shell.collapsed .tf-sidebar-item.has-current {
|
|
13686
|
+
background: var(--frame-hover);
|
|
13687
|
+
color: var(--on-frame);
|
|
13688
|
+
}
|
|
13689
|
+
:where([data-kit="halo"]) .tf-sidebar.shell .tf-sidebar-item.has-current,
|
|
13690
|
+
:where([data-kit="halo"]) .tf-sidebar.shell button.tf-sidebar-grouplabel:hover {
|
|
13691
|
+
color: var(--on-frame);
|
|
13692
|
+
}
|
|
13693
|
+
:where([data-kit="halo"]) .tf-sidebar.shell .tf-sidebar-item[aria-current="page"] {
|
|
13694
|
+
background: var(--frame-active);
|
|
13695
|
+
color: var(--on-frame);
|
|
13696
|
+
}
|
|
13697
|
+
:where([data-kit="halo"]) .tf-sidebar.shell .tf-sidebar-item:disabled:hover {
|
|
13698
|
+
background: transparent;
|
|
13699
|
+
color: var(--on-frame-muted);
|
|
13700
|
+
}
|
|
13701
|
+
:where([data-kit="halo"]) .tf-sidebar.shell .tf-sidebar-foot,
|
|
13702
|
+
:where([data-kit="halo"]) .tf-sidebar.shell.collapsed .tf-sidebar-group + .tf-sidebar-group {
|
|
13703
|
+
border-color: var(--frame-hover);
|
|
13704
|
+
}
|
|
13705
|
+
:where([data-kit="halo"]) .tf-sidebar.shell .tf-iconbtn-ghost {
|
|
13706
|
+
color: var(--on-frame-muted);
|
|
13707
|
+
}
|
|
13708
|
+
:where([data-kit="halo"]) .tf-sidebar.shell .tf-iconbtn-ghost:hover {
|
|
13709
|
+
background: var(--frame-hover);
|
|
13710
|
+
color: var(--on-frame);
|
|
13711
|
+
}
|
|
13712
|
+
:where([data-kit="halo"]) .tf-sidebar.shell .tf-sidebar-head {
|
|
13713
|
+
min-height: 44px;
|
|
13714
|
+
}
|
|
13715
|
+
|
|
13716
|
+
/* UserMenu: the signed-in person, opening their account menu */
|
|
13717
|
+
:where([data-kit="halo"]) .tf-usermenu {
|
|
13718
|
+
display: flex;
|
|
13719
|
+
align-items: center;
|
|
13720
|
+
gap: 10px;
|
|
13721
|
+
width: 100%;
|
|
13722
|
+
min-height: 44px;
|
|
13723
|
+
padding: 4px 8px 4px 4px;
|
|
13724
|
+
box-sizing: border-box;
|
|
13725
|
+
border: 0;
|
|
13726
|
+
border-radius: var(--radius-pill);
|
|
13727
|
+
background: transparent;
|
|
13728
|
+
color: var(--ink);
|
|
13729
|
+
font: inherit;
|
|
13730
|
+
text-align: left;
|
|
13731
|
+
cursor: pointer;
|
|
13732
|
+
}
|
|
13733
|
+
:where([data-kit="halo"]) .tf-usermenu.compact {
|
|
13734
|
+
width: auto;
|
|
13735
|
+
padding: 4px;
|
|
13736
|
+
}
|
|
13737
|
+
:where([data-kit="halo"]) .tf-usermenu:hover,
|
|
13738
|
+
:where([data-kit="halo"]) .tf-usermenu[aria-expanded="true"] {
|
|
13739
|
+
background: var(--sidebar-accent);
|
|
13740
|
+
}
|
|
13741
|
+
:where([data-kit="halo"]) .tf-usermenu:focus-visible {
|
|
13742
|
+
outline: 2px solid var(--focus);
|
|
13743
|
+
outline-offset: 2px;
|
|
13744
|
+
}
|
|
13745
|
+
:where([data-kit="halo"]) .tf-usermenu-avatar {
|
|
13746
|
+
display: inline-flex;
|
|
13747
|
+
flex: none;
|
|
13748
|
+
}
|
|
13749
|
+
:where([data-kit="halo"]) .tf-usermenu-text {
|
|
13750
|
+
display: flex;
|
|
13751
|
+
flex-direction: column;
|
|
13752
|
+
flex: 1;
|
|
13753
|
+
min-width: 0;
|
|
13754
|
+
}
|
|
13755
|
+
:where([data-kit="halo"]) .tf-usermenu-name {
|
|
13756
|
+
font: 600 13px/18px var(--font-sans);
|
|
13757
|
+
overflow: hidden;
|
|
13758
|
+
text-overflow: ellipsis;
|
|
13759
|
+
white-space: nowrap;
|
|
13760
|
+
}
|
|
13761
|
+
:where([data-kit="halo"]) .tf-usermenu-mail {
|
|
13762
|
+
font: 500 11px/14px var(--font-sans);
|
|
13763
|
+
color: var(--ink-muted);
|
|
13764
|
+
overflow: hidden;
|
|
13765
|
+
text-overflow: ellipsis;
|
|
13766
|
+
white-space: nowrap;
|
|
13767
|
+
}
|
|
13768
|
+
:where([data-kit="halo"]) .tf-sidebar.shell .tf-usermenu {
|
|
13769
|
+
color: var(--on-frame);
|
|
13770
|
+
}
|
|
13771
|
+
:where([data-kit="halo"]) .tf-sidebar.shell .tf-usermenu:hover,
|
|
13772
|
+
:where([data-kit="halo"]) .tf-sidebar.shell .tf-usermenu[aria-expanded="true"] {
|
|
13773
|
+
background: var(--frame-hover);
|
|
13774
|
+
}
|
|
13775
|
+
:where([data-kit="halo"]) .tf-sidebar.shell .tf-usermenu-mail {
|
|
13776
|
+
color: var(--on-frame-muted);
|
|
13777
|
+
}
|
|
13778
|
+
:where([data-kit="halo"]) .tf-wssw.compact {
|
|
13779
|
+
padding: 4px;
|
|
13780
|
+
}
|
|
13781
|
+
|
|
13782
|
+
/* the bar that opens the sidebar as a drawer on phones */
|
|
13783
|
+
:where([data-kit="halo"]) .tf-sidebar-bar,
|
|
13784
|
+
:where([data-kit="halo"]) .tf-sidebar-scrim {
|
|
13785
|
+
display: none;
|
|
13786
|
+
}
|
|
12980
13787
|
@media (max-width: 760px) {
|
|
12981
|
-
:where([data-kit="halo"]) .tf-sidebar {
|
|
12982
|
-
|
|
13788
|
+
:where([data-kit="halo"]) .tf-sidebar-bar {
|
|
13789
|
+
display: flex;
|
|
13790
|
+
align-items: center;
|
|
13791
|
+
gap: 8px;
|
|
13792
|
+
min-height: 52px;
|
|
13793
|
+
padding: 6px 12px 6px 6px;
|
|
13794
|
+
box-sizing: border-box;
|
|
13795
|
+
border-radius: var(--radius-lg);
|
|
13796
|
+
background: var(--surface);
|
|
13797
|
+
box-shadow: var(--shadow-card);
|
|
13798
|
+
color: var(--ink);
|
|
13799
|
+
}
|
|
13800
|
+
:where([data-kit="halo"]) .tf-sidebar-bar.attached {
|
|
13801
|
+
border-radius: 0;
|
|
13802
|
+
box-shadow: none;
|
|
13803
|
+
background: var(--sidebar);
|
|
13804
|
+
border-bottom: 1px solid var(--sidebar-border);
|
|
13805
|
+
}
|
|
13806
|
+
:where([data-kit="halo"]) .tf-sidebar-bar.shell {
|
|
13807
|
+
min-height: 56px;
|
|
13808
|
+
padding: 8px 8px 8px 0;
|
|
13809
|
+
border-radius: 0;
|
|
13810
|
+
box-shadow: none;
|
|
13811
|
+
background: transparent;
|
|
13812
|
+
color: var(--on-frame);
|
|
13813
|
+
}
|
|
13814
|
+
:where([data-kit="halo"]) .tf-sidebar-bar.shell .tf-iconbtn-ghost {
|
|
13815
|
+
color: var(--on-frame);
|
|
13816
|
+
}
|
|
13817
|
+
:where([data-kit="halo"]) .tf-sidebar-bar > :not(.tf-iconbtn) {
|
|
13818
|
+
min-width: 0;
|
|
13819
|
+
}
|
|
13820
|
+
:where([data-kit="halo"]) .tf-sidebar,
|
|
13821
|
+
:where([data-kit="halo"]) .tf-sidebar.attached,
|
|
13822
|
+
:where([data-kit="halo"]) .tf-sidebar.shell {
|
|
13823
|
+
position: fixed;
|
|
13824
|
+
top: 0;
|
|
13825
|
+
bottom: 0;
|
|
13826
|
+
left: 0;
|
|
13827
|
+
z-index: var(--z-overlay);
|
|
13828
|
+
width: min(300px, 86vw);
|
|
13829
|
+
min-height: 0;
|
|
13830
|
+
padding: 12px;
|
|
13831
|
+
border-radius: 0 var(--radius-lg) var(--radius-lg) 0;
|
|
13832
|
+
box-shadow: var(--shadow-float);
|
|
13833
|
+
transform: translateX(-105%);
|
|
13834
|
+
visibility: hidden;
|
|
13835
|
+
transition:
|
|
13836
|
+
transform var(--dur-base) var(--ease-out),
|
|
13837
|
+
visibility 0s linear var(--dur-base);
|
|
13838
|
+
}
|
|
13839
|
+
:where([data-kit="halo"]) .tf-sidebar.shell {
|
|
13840
|
+
background: var(--frame);
|
|
13841
|
+
}
|
|
13842
|
+
:where([data-kit="halo"]) .tf-sidebar.attached {
|
|
13843
|
+
background: var(--sidebar);
|
|
13844
|
+
}
|
|
13845
|
+
:where([data-kit="halo"]) .tf-sidebar.open {
|
|
13846
|
+
transform: none;
|
|
13847
|
+
visibility: visible;
|
|
13848
|
+
transition: transform var(--dur-base) var(--ease-out);
|
|
12983
13849
|
}
|
|
13850
|
+
:where([data-kit="halo"]) .tf-sidebar-toggle {
|
|
13851
|
+
display: none;
|
|
13852
|
+
}
|
|
13853
|
+
:where([data-kit="halo"]) .tf-sidebar-scrim {
|
|
13854
|
+
display: block;
|
|
13855
|
+
position: fixed;
|
|
13856
|
+
inset: 0;
|
|
13857
|
+
z-index: var(--z-overlay);
|
|
13858
|
+
background: var(--scrim-strong);
|
|
13859
|
+
animation: tf-halo-fade var(--dur-base) var(--ease-out) both;
|
|
13860
|
+
}
|
|
13861
|
+
}
|
|
13862
|
+
|
|
13863
|
+
@media (max-width: 760px) {
|
|
12984
13864
|
:where([data-kit="halo"]) .tf-navmenu-panel.with-feature {
|
|
12985
13865
|
grid-template-columns: minmax(0, 1fr);
|
|
12986
13866
|
}
|
|
@@ -13162,7 +14042,7 @@
|
|
|
13162
14042
|
/* Tablet: asides move below the main column, nav labels and the page nav shrink to icons */
|
|
13163
14043
|
@container tf-shell (max-width: 1180px) {
|
|
13164
14044
|
:where([data-kit="halo"]) .tf-sheet:not(.tf-sheet-2):not(.tf-sheet-nav) {
|
|
13165
|
-
grid-template-columns:
|
|
14045
|
+
grid-template-columns: auto minmax(0, 1fr);
|
|
13166
14046
|
}
|
|
13167
14047
|
:where([data-kit="halo"]) .tf-sheet-nav.tf-sheet-aside {
|
|
13168
14048
|
grid-template-columns: 208px minmax(0, 1fr);
|
|
@@ -13170,6 +14050,13 @@
|
|
|
13170
14050
|
:where([data-kit="halo"]) .tf-sheet > .tf-main ~ :not(.tf-dock-float) {
|
|
13171
14051
|
grid-column: 2;
|
|
13172
14052
|
}
|
|
14053
|
+
/* with the sidebar there is no rail column: asides go below the main column */
|
|
14054
|
+
:where([data-kit="halo"]) .tf-sheet.tf-sheet-norail:not(.tf-sheet-2) {
|
|
14055
|
+
grid-template-columns: minmax(0, 1fr);
|
|
14056
|
+
}
|
|
14057
|
+
:where([data-kit="halo"]) .tf-sheet-norail > .tf-main ~ :not(.tf-dock-float) {
|
|
14058
|
+
grid-column: 1;
|
|
14059
|
+
}
|
|
13173
14060
|
/* the dock floats over the end of the sheet, not of the main column (asides follow it) */
|
|
13174
14061
|
:where([data-kit="halo"]) .tf-main-dock {
|
|
13175
14062
|
padding-bottom: 0;
|
|
@@ -13200,7 +14087,7 @@
|
|
|
13200
14087
|
@container tf-shell (max-width: 1040px) {
|
|
13201
14088
|
:where([data-kit="halo"]) .tf-sheet-nav,
|
|
13202
14089
|
:where([data-kit="halo"]) .tf-sheet-nav.tf-sheet-aside {
|
|
13203
|
-
grid-template-columns:
|
|
14090
|
+
grid-template-columns: auto minmax(0, 1fr);
|
|
13204
14091
|
}
|
|
13205
14092
|
:where([data-kit="halo"]) .tf-subnav-eyebrow {
|
|
13206
14093
|
display: none;
|
|
@@ -13297,6 +14184,21 @@
|
|
|
13297
14184
|
:where([data-kit="halo"]) .tf-rail-group {
|
|
13298
14185
|
flex-direction: row;
|
|
13299
14186
|
}
|
|
14187
|
+
/* on phones the rail is a row of icons, expanded or not */
|
|
14188
|
+
:where([data-kit="halo"]) .tf-rail.expanded {
|
|
14189
|
+
width: auto;
|
|
14190
|
+
}
|
|
14191
|
+
:where([data-kit="halo"]) .tf-rail.expanded .tf-rail-btn {
|
|
14192
|
+
display: grid;
|
|
14193
|
+
width: 40px;
|
|
14194
|
+
padding: 0;
|
|
14195
|
+
}
|
|
14196
|
+
:where([data-kit="halo"]) .tf-rail.expanded .tf-rail-label {
|
|
14197
|
+
display: none;
|
|
14198
|
+
}
|
|
14199
|
+
:where([data-kit="halo"]) .tf-rail.expanded .tf-dotcount {
|
|
14200
|
+
position: absolute;
|
|
14201
|
+
}
|
|
13300
14202
|
:where([data-kit="halo"]) .tf-main {
|
|
13301
14203
|
gap: var(--space-4);
|
|
13302
14204
|
}
|
|
@@ -13388,6 +14290,56 @@
|
|
|
13388
14290
|
max-width: 100%;
|
|
13389
14291
|
overflow-x: auto;
|
|
13390
14292
|
}
|
|
14293
|
+
/* Table stack: narrow boxes show every row as a card, each cell with its column label */
|
|
14294
|
+
:where([data-kit="halo"]) .tf-table-stackbox {
|
|
14295
|
+
container: tf-table / inline-size;
|
|
14296
|
+
}
|
|
14297
|
+
@container tf-table (max-width: 600px) {
|
|
14298
|
+
:where([data-kit="halo"]) .tf-table.stack thead {
|
|
14299
|
+
position: absolute;
|
|
14300
|
+
width: 1px;
|
|
14301
|
+
height: 1px;
|
|
14302
|
+
overflow: hidden;
|
|
14303
|
+
clip-path: inset(50%);
|
|
14304
|
+
}
|
|
14305
|
+
:where([data-kit="halo"]) .tf-table.stack,
|
|
14306
|
+
:where([data-kit="halo"]) .tf-table.stack tbody,
|
|
14307
|
+
:where([data-kit="halo"]) .tf-table.stack tr {
|
|
14308
|
+
display: block;
|
|
14309
|
+
}
|
|
14310
|
+
:where([data-kit="halo"]) .tf-table.stack tr {
|
|
14311
|
+
padding: 8px 0;
|
|
14312
|
+
border-bottom: 1px solid var(--line);
|
|
14313
|
+
}
|
|
14314
|
+
:where([data-kit="halo"]) .tf-table.stack tr:last-child {
|
|
14315
|
+
border-bottom: 0;
|
|
14316
|
+
}
|
|
14317
|
+
:where([data-kit="halo"]) .tf-table.stack td {
|
|
14318
|
+
display: flex;
|
|
14319
|
+
align-items: center;
|
|
14320
|
+
justify-content: space-between;
|
|
14321
|
+
gap: 16px;
|
|
14322
|
+
height: auto;
|
|
14323
|
+
min-height: 32px;
|
|
14324
|
+
padding: 4px 0;
|
|
14325
|
+
border-bottom: 0;
|
|
14326
|
+
text-align: right;
|
|
14327
|
+
white-space: normal;
|
|
14328
|
+
}
|
|
14329
|
+
:where([data-kit="halo"]) .tf-table.stack td::before {
|
|
14330
|
+
content: attr(data-label);
|
|
14331
|
+
flex: none;
|
|
14332
|
+
max-width: 50%;
|
|
14333
|
+
text-align: left;
|
|
14334
|
+
font: 600 11px/14px var(--font-sans);
|
|
14335
|
+
letter-spacing: 0.06em;
|
|
14336
|
+
text-transform: uppercase;
|
|
14337
|
+
color: var(--ink-muted);
|
|
14338
|
+
}
|
|
14339
|
+
:where([data-kit="halo"]) .tf-table.stack tbody tr:hover td {
|
|
14340
|
+
background: transparent;
|
|
14341
|
+
}
|
|
14342
|
+
}
|
|
13391
14343
|
|
|
13392
14344
|
/* ── Phone: components ── */
|
|
13393
14345
|
@media (max-width: 760px) {
|
|
@@ -13422,15 +14374,15 @@
|
|
|
13422
14374
|
height: 52px;
|
|
13423
14375
|
}
|
|
13424
14376
|
|
|
13425
|
-
/* segmented controls and tabs scroll sideways when the labels do not fit */
|
|
13426
|
-
:where([data-kit="halo"]) .tf-seg,
|
|
13427
|
-
:where([data-kit="halo"]) .tf-tabs {
|
|
14377
|
+
/* segmented controls and tabs scroll sideways when the labels do not fit (block ones shrink) */
|
|
14378
|
+
:where([data-kit="halo"]) .tf-seg:not(.block),
|
|
14379
|
+
:where([data-kit="halo"]) .tf-tabs:not(.tf-tabs-block) {
|
|
13428
14380
|
max-width: 100%;
|
|
13429
14381
|
overflow-x: auto;
|
|
13430
14382
|
scrollbar-width: none;
|
|
13431
14383
|
}
|
|
13432
|
-
:where([data-kit="halo"]) .tf-seg-item,
|
|
13433
|
-
:where([data-kit="halo"]) .tf-tab {
|
|
14384
|
+
:where([data-kit="halo"]) .tf-seg:not(.block) .tf-seg-item,
|
|
14385
|
+
:where([data-kit="halo"]) .tf-tabs:not(.tf-tabs-block) .tf-tab {
|
|
13434
14386
|
flex: none;
|
|
13435
14387
|
}
|
|
13436
14388
|
:where([data-kit="halo"]) .tf-seg,
|
|
@@ -13579,6 +14531,40 @@
|
|
|
13579
14531
|
}
|
|
13580
14532
|
}
|
|
13581
14533
|
|
|
14534
|
+
/* AppShell with a sidebar on phones: the sidebar's bar on top of the frame, the sheet below */
|
|
14535
|
+
@media (max-width: 760px) {
|
|
14536
|
+
:where([data-kit="halo"]) .tf-shell.tf-shell-sidebar {
|
|
14537
|
+
grid-template-columns: minmax(0, 1fr);
|
|
14538
|
+
padding: 0 8px 8px;
|
|
14539
|
+
}
|
|
14540
|
+
}
|
|
14541
|
+
|
|
14542
|
+
/* Fluid at every width: segmented controls, tabs and toggle groups never push past their
|
|
14543
|
+
container. When space runs short the items shrink and their labels end in an ellipsis. */
|
|
14544
|
+
:where([data-kit="halo"]) .tf-tabs {
|
|
14545
|
+
max-width: 100%;
|
|
14546
|
+
box-sizing: border-box;
|
|
14547
|
+
}
|
|
14548
|
+
:where([data-kit="halo"]) .tf-seg-item,
|
|
14549
|
+
:where([data-kit="halo"]) .tf-tab,
|
|
14550
|
+
:where([data-kit="halo"]) .tf-togglegroup .tf-toggle {
|
|
14551
|
+
min-width: 0;
|
|
14552
|
+
}
|
|
14553
|
+
:where([data-kit="halo"]) .tf-seg-label,
|
|
14554
|
+
:where([data-kit="halo"]) .tf-tab,
|
|
14555
|
+
:where([data-kit="halo"]) .tf-toggle-label {
|
|
14556
|
+
overflow: hidden;
|
|
14557
|
+
text-overflow: ellipsis;
|
|
14558
|
+
white-space: nowrap;
|
|
14559
|
+
}
|
|
14560
|
+
|
|
14561
|
+
/* key hints mean nothing on touch screens */
|
|
14562
|
+
@media (pointer: coarse) {
|
|
14563
|
+
:where([data-kit="halo"]) .tf-search .tf-kbd {
|
|
14564
|
+
display: none;
|
|
14565
|
+
}
|
|
14566
|
+
}
|
|
14567
|
+
|
|
13582
14568
|
/* 07-polish.css */
|
|
13583
14569
|
/* ───────────── Polish ─────────────
|
|
13584
14570
|
Small consistency fixes found by auditing every preview in both kits and themes. Zero
|
|
@@ -14102,11 +15088,13 @@
|
|
|
14102
15088
|
inset: 0;
|
|
14103
15089
|
z-index: 1;
|
|
14104
15090
|
display: grid;
|
|
14105
|
-
grid-template-columns:
|
|
15091
|
+
grid-template-columns:
|
|
15092
|
+
minmax(0, var(--floating-start, 320px)) minmax(0, 1fr)
|
|
15093
|
+
minmax(0, var(--floating-end, 340px));
|
|
14106
15094
|
grid-template-rows: auto minmax(0, 1fr) auto;
|
|
14107
15095
|
grid-template-areas:
|
|
14108
15096
|
"top top top"
|
|
14109
|
-
"start
|
|
15097
|
+
"start controls end"
|
|
14110
15098
|
"bottom bottom bottom";
|
|
14111
15099
|
gap: var(--space-4);
|
|
14112
15100
|
padding: var(--space-4);
|
|
@@ -14137,6 +15125,32 @@
|
|
|
14137
15125
|
grid-area: bottom;
|
|
14138
15126
|
justify-self: center;
|
|
14139
15127
|
}
|
|
15128
|
+
/* background controls and source notes: the free corner, clear of the panels and the dock */
|
|
15129
|
+
:where([data-kit="halo"]) .tf-floating-ui > .tf-floating-controls {
|
|
15130
|
+
grid-area: controls;
|
|
15131
|
+
align-self: end;
|
|
15132
|
+
justify-self: end;
|
|
15133
|
+
display: flex;
|
|
15134
|
+
flex-direction: column;
|
|
15135
|
+
align-items: flex-end;
|
|
15136
|
+
gap: var(--space-2);
|
|
15137
|
+
pointer-events: none;
|
|
15138
|
+
}
|
|
15139
|
+
:where([data-kit="halo"]) .tf-floating-controls > * {
|
|
15140
|
+
pointer-events: auto;
|
|
15141
|
+
}
|
|
15142
|
+
:where([data-kit="halo"]) .tf-floating-attribution {
|
|
15143
|
+
max-width: 100%;
|
|
15144
|
+
padding: 2px 8px;
|
|
15145
|
+
border-radius: var(--radius-sm);
|
|
15146
|
+
background: var(--surface);
|
|
15147
|
+
color: var(--ink-muted);
|
|
15148
|
+
font: 500 11px/16px var(--font-sans);
|
|
15149
|
+
overflow-wrap: anywhere;
|
|
15150
|
+
}
|
|
15151
|
+
:where([data-kit="halo"]) .tf-floating-handle {
|
|
15152
|
+
display: none;
|
|
15153
|
+
}
|
|
14140
15154
|
:where([data-kit="halo"]) .tf-floating-ui > :is(.tf-floating-top, .tf-floating-bottom) {
|
|
14141
15155
|
pointer-events: none;
|
|
14142
15156
|
}
|
|
@@ -14162,6 +15176,75 @@
|
|
|
14162
15176
|
gap: var(--space-3);
|
|
14163
15177
|
padding: var(--space-3);
|
|
14164
15178
|
}
|
|
15179
|
+
:where([data-kit="halo"]) .tf-floating-ui > .tf-floating-controls {
|
|
15180
|
+
grid-area: auto;
|
|
15181
|
+
grid-row: 3;
|
|
15182
|
+
}
|
|
15183
|
+
/* the end slot as a bottom sheet over the background: a peek, or most of the height */
|
|
15184
|
+
:where([data-kit="halo"]) .tf-floating.has-sheet .tf-floating-ui {
|
|
15185
|
+
grid-template-rows: auto auto minmax(120px, 1fr) auto;
|
|
15186
|
+
grid-template-areas:
|
|
15187
|
+
"top"
|
|
15188
|
+
"start"
|
|
15189
|
+
"."
|
|
15190
|
+
"bottom";
|
|
15191
|
+
padding-bottom: calc(var(--space-3) + 96px);
|
|
15192
|
+
}
|
|
15193
|
+
:where([data-kit="halo"]) .tf-floating.has-sheet .tf-floating-end {
|
|
15194
|
+
position: absolute;
|
|
15195
|
+
left: var(--space-3);
|
|
15196
|
+
right: var(--space-3);
|
|
15197
|
+
bottom: 0;
|
|
15198
|
+
z-index: 2;
|
|
15199
|
+
max-height: 96px;
|
|
15200
|
+
overflow: hidden;
|
|
15201
|
+
border-radius: var(--radius-lg) var(--radius-lg) 0 0;
|
|
15202
|
+
background: var(--surface);
|
|
15203
|
+
box-shadow: var(--shadow-card);
|
|
15204
|
+
transition: max-height var(--dur-base) var(--ease-out);
|
|
15205
|
+
}
|
|
15206
|
+
:where([data-kit="halo"])[data-surface="glass"].tf-floating.has-sheet .tf-floating-end, :where([data-kit="halo"]) [data-surface="glass"].tf-floating.has-sheet .tf-floating-end {
|
|
15207
|
+
background: var(--glass);
|
|
15208
|
+
-webkit-backdrop-filter: var(--glass-filter);
|
|
15209
|
+
backdrop-filter: var(--glass-filter);
|
|
15210
|
+
}
|
|
15211
|
+
:where([data-kit="halo"]) .tf-floating.has-sheet.sheet-full .tf-floating-end {
|
|
15212
|
+
max-height: 75%;
|
|
15213
|
+
overflow-y: auto;
|
|
15214
|
+
}
|
|
15215
|
+
:where([data-kit="halo"]) .tf-floating.has-sheet .tf-floating-handle {
|
|
15216
|
+
display: block;
|
|
15217
|
+
position: sticky;
|
|
15218
|
+
top: 0;
|
|
15219
|
+
z-index: 1;
|
|
15220
|
+
width: 100%;
|
|
15221
|
+
height: 24px;
|
|
15222
|
+
margin: 0;
|
|
15223
|
+
padding: 0;
|
|
15224
|
+
border: 0;
|
|
15225
|
+
background: transparent;
|
|
15226
|
+
cursor: pointer;
|
|
15227
|
+
}
|
|
15228
|
+
:where([data-kit="halo"]) .tf-floating.has-sheet .tf-floating-handle::before {
|
|
15229
|
+
content: "";
|
|
15230
|
+
display: block;
|
|
15231
|
+
width: 40px;
|
|
15232
|
+
height: 4px;
|
|
15233
|
+
margin: 10px auto;
|
|
15234
|
+
border-radius: var(--radius-pill);
|
|
15235
|
+
background: var(--line-strong);
|
|
15236
|
+
}
|
|
15237
|
+
:where([data-kit="halo"]) .tf-floating.has-sheet .tf-floating-handle:focus-visible {
|
|
15238
|
+
outline: 2px solid var(--focus);
|
|
15239
|
+
outline-offset: -2px;
|
|
15240
|
+
}
|
|
15241
|
+
}
|
|
15242
|
+
|
|
15243
|
+
/* in a glass layout the attribution is glass too */
|
|
15244
|
+
:where([data-kit="halo"])[data-surface="glass"] .tf-floating-attribution, :where([data-kit="halo"]) [data-surface="glass"] .tf-floating-attribution {
|
|
15245
|
+
background: var(--glass);
|
|
15246
|
+
-webkit-backdrop-filter: var(--glass-filter);
|
|
15247
|
+
backdrop-filter: var(--glass-filter);
|
|
14165
15248
|
}
|
|
14166
15249
|
|
|
14167
15250
|
/* 09-motion.css */
|