@e-burgos/tucu-ui 2.7.3 → 2.8.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.
Files changed (56) hide show
  1. package/CHANGELOG.md +13 -0
  2. package/base.css +225 -0
  3. package/components/inputs/select.mjs +1 -1
  4. package/components/loaders/loader.mjs +21 -21
  5. package/components/typography/index.mjs +30 -30
  6. package/index.css +1 -1
  7. package/index.js +1 -1
  8. package/macos/index.css +15 -0
  9. package/macos/sonoma/index.css +34 -0
  10. package/macos/sonoma/macos-auth.css +162 -0
  11. package/macos/sonoma/macos-backgrounds.css +314 -0
  12. package/macos/sonoma/macos-buttons.css +231 -0
  13. package/macos/sonoma/macos-cards.css +104 -0
  14. package/macos/sonoma/macos-content.css +157 -0
  15. package/macos/sonoma/macos-dialogs.css +122 -0
  16. package/macos/sonoma/macos-feedback.css +237 -0
  17. package/macos/sonoma/macos-fonts.css +7 -0
  18. package/macos/sonoma/macos-foundations.css +479 -0
  19. package/macos/sonoma/macos-inputs.css +1580 -0
  20. package/macos/sonoma/macos-layouts.css +223 -0
  21. package/macos/sonoma/macos-liquid-glass.css +279 -0
  22. package/macos/sonoma/macos-menus.css +184 -0
  23. package/macos/sonoma/macos-misc.css +635 -0
  24. package/macos/sonoma/macos-navigation.css +145 -0
  25. package/macos/sonoma/macos-selection.css +237 -0
  26. package/macos/sonoma/macos-sidebar.css +416 -0
  27. package/macos/sonoma/macos-tables.css +318 -0
  28. package/macos/sonoma/macos-toolbar.css +302 -0
  29. package/macos/sonoma/macos-typography.css +485 -0
  30. package/macos/sonoma/macos-window.css +273 -0
  31. package/macos/tahoe/index.css +34 -0
  32. package/macos/tahoe/macos-auth.css +162 -0
  33. package/macos/tahoe/macos-backgrounds.css +314 -0
  34. package/macos/tahoe/macos-buttons.css +286 -0
  35. package/macos/tahoe/macos-cards.css +125 -0
  36. package/macos/tahoe/macos-content.css +157 -0
  37. package/macos/tahoe/macos-dialogs.css +195 -0
  38. package/macos/tahoe/macos-feedback.css +273 -0
  39. package/macos/tahoe/macos-fonts.css +7 -0
  40. package/macos/tahoe/macos-foundations.css +516 -0
  41. package/macos/tahoe/macos-inputs.css +1656 -0
  42. package/macos/tahoe/macos-layouts.css +438 -0
  43. package/macos/tahoe/macos-liquid-glass.css +279 -0
  44. package/macos/tahoe/macos-menus.css +184 -0
  45. package/macos/tahoe/macos-misc.css +635 -0
  46. package/macos/tahoe/macos-navigation.css +191 -0
  47. package/macos/tahoe/macos-selection.css +237 -0
  48. package/macos/tahoe/macos-sidebar.css +420 -0
  49. package/macos/tahoe/macos-tables.css +320 -0
  50. package/macos/tahoe/macos-toolbar.css +304 -0
  51. package/macos/tahoe/macos-typography.css +485 -0
  52. package/macos/tahoe/macos-window.css +273 -0
  53. package/package.json +3 -2
  54. package/theme.css +812 -0
  55. package/third-party.css +39 -0
  56. package/utilities.css +105 -0
@@ -0,0 +1,320 @@
1
+ /* ============================================================
2
+ macOS Tahoe 26 — Table & Pagination Overrides
3
+
4
+ Targets: BasicTable, Pagination
5
+ Selectors: html.macos-tahoe [data-tucu="table"], etc.
6
+
7
+ References:
8
+ - macOS Tahoe Finder list view: hairline separators, 24pt row
9
+ - Table header: separator bottom, medium 11pt (callout size)
10
+ - Selection: controlAccent background, white text
11
+ - Focus: 3px ring, rgba(0,136,255,0.48)
12
+ ============================================================ */
13
+
14
+ /* ── Table container ─────────────────────────────────────────── */
15
+ html.macos-tahoe [data-tucu='table-scroll'] {
16
+ --basic-table-scrollbar-track: transparent;
17
+ --basic-table-scrollbar-thumb: color-mix(
18
+ in srgb,
19
+ var(--macos-secondary-label) 28%,
20
+ transparent
21
+ );
22
+ }
23
+
24
+ html.macos-tahoe [data-tucu='table-scroll']::-webkit-scrollbar {
25
+ height: 10px;
26
+ width: 10px;
27
+ }
28
+
29
+ html.macos-tahoe [data-tucu='table-scroll']::-webkit-scrollbar-track {
30
+ background: transparent;
31
+ }
32
+
33
+ html.macos-tahoe [data-tucu='table-scroll']::-webkit-scrollbar-thumb {
34
+ background-color: color-mix(
35
+ in srgb,
36
+ var(--macos-secondary-label) 28%,
37
+ transparent
38
+ );
39
+ border: 2px solid transparent;
40
+ border-radius: 999px;
41
+ background-clip: padding-box;
42
+ }
43
+
44
+ html.macos-tahoe [data-tucu='table-scroll']::-webkit-scrollbar-thumb:hover {
45
+ background-color: color-mix(
46
+ in srgb,
47
+ var(--macos-secondary-label) 42%,
48
+ transparent
49
+ );
50
+ }
51
+
52
+ html.macos-tahoe [data-tucu='table'] {
53
+ border-radius: calc(var(--macos-radius-xl) + 2px);
54
+ border: none;
55
+ box-shadow: inset 0 0 0 1px
56
+ color-mix(in srgb, var(--macos-separator) 92%, transparent),
57
+ inset 0 1px 0 rgba(255, 255, 255, 0.35), 0 8px 24px rgba(0, 0, 0, 0.06);
58
+ overflow: hidden;
59
+ font-family: var(--macos-font-family);
60
+ font-size: var(--macos-font-size-body);
61
+ background: color-mix(
62
+ in srgb,
63
+ var(--macos-material-sheet) 90%,
64
+ var(--macos-control-bg) 10%
65
+ );
66
+ box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.35),
67
+ 0 8px 24px rgba(0, 0, 0, 0.06);
68
+ backdrop-filter: blur(var(--macos-material-toolbar-blur)) saturate(1.18);
69
+ -webkit-backdrop-filter: blur(var(--macos-material-toolbar-blur))
70
+ saturate(1.18);
71
+ scrollbar-width: thin;
72
+ scrollbar-color: var(--basic-table-scrollbar-thumb, rgba(0, 0, 0, 0.2))
73
+ var(--basic-table-scrollbar-track, transparent);
74
+ overscroll-behavior: contain;
75
+ }
76
+
77
+ html.macos-tahoe [data-tucu='table']::-webkit-scrollbar {
78
+ height: 10px;
79
+ width: 10px;
80
+ }
81
+
82
+ html.macos-tahoe [data-tucu='table']::-webkit-scrollbar-track {
83
+ background: transparent;
84
+ }
85
+
86
+ html.macos-tahoe [data-tucu='table']::-webkit-scrollbar-thumb {
87
+ background-color: var(--basic-table-scrollbar-thumb, rgba(0, 0, 0, 0.2));
88
+ border: 2px solid transparent;
89
+ border-radius: 999px;
90
+ background-clip: padding-box;
91
+ }
92
+
93
+ html.macos-tahoe [data-tucu='table']::-webkit-scrollbar-thumb:hover {
94
+ background-color: color-mix(
95
+ in srgb,
96
+ var(--basic-table-scrollbar-thumb, rgba(0, 0, 0, 0.2)) 140%,
97
+ transparent
98
+ );
99
+ }
100
+
101
+ html.macos-tahoe.dark [data-tucu='table'] {
102
+ background: color-mix(
103
+ in srgb,
104
+ var(--macos-material-sheet) 88%,
105
+ rgba(12, 12, 14, 0.3) 12%
106
+ );
107
+ box-shadow: inset 0 0 0 1px
108
+ color-mix(in srgb, var(--macos-separator) 80%, transparent),
109
+ inset 0 1px 0 rgba(255, 255, 255, 0.04), 0 12px 32px rgba(0, 0, 0, 0.28);
110
+ }
111
+
112
+ html.macos-tahoe [data-tucu='table'][data-border='false'] {
113
+ --tw-ring-shadow: 0 0 #0000;
114
+ box-shadow: none;
115
+ }
116
+
117
+ /* ── Table header ────────────────────────────────────────────── */
118
+ html.macos-tahoe [data-tucu='table-header'] {
119
+ background: linear-gradient(
120
+ 180deg,
121
+ color-mix(
122
+ in srgb,
123
+ var(--macos-selected-content-bg) 7%,
124
+ var(--macos-material-toolbar) 93%
125
+ )
126
+ 0%,
127
+ color-mix(in srgb, var(--macos-gray6) 76%, rgba(215, 223, 236, 0.68) 24%)
128
+ 100%
129
+ );
130
+ border-bottom: 1px solid
131
+ color-mix(in srgb, var(--macos-separator) 100%, rgba(24, 32, 48, 0.16));
132
+ backdrop-filter: blur(var(--macos-material-toolbar-blur)) saturate(1.12);
133
+ -webkit-backdrop-filter: blur(var(--macos-material-toolbar-blur))
134
+ saturate(1.12);
135
+ box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.48),
136
+ inset 0 -1px 0 rgba(24, 32, 48, 0.08), 0 1px 0 rgba(255, 255, 255, 0.12);
137
+ }
138
+
139
+ html.macos-tahoe.dark [data-tucu='table-header'] {
140
+ background: linear-gradient(
141
+ 180deg,
142
+ color-mix(
143
+ in srgb,
144
+ var(--macos-selected-content-bg) 18%,
145
+ var(--macos-material-toolbar) 82%
146
+ )
147
+ 0%,
148
+ color-mix(in srgb, var(--macos-gray5) 68%, rgba(7, 10, 18, 0.82) 32%) 100%
149
+ );
150
+ border-bottom-color: color-mix(
151
+ in srgb,
152
+ var(--macos-separator) 88%,
153
+ rgba(0, 0, 0, 0.42)
154
+ );
155
+ box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1),
156
+ inset 0 -1px 0 rgba(0, 0, 0, 0.42), 0 1px 0 rgba(0, 0, 0, 0.16);
157
+ }
158
+
159
+ html.macos-tahoe [data-tucu='table-header'] th,
160
+ html.macos-tahoe [data-tucu='table-header-cell'] {
161
+ font-size: var(--macos-font-size-subheadline);
162
+ line-height: var(--macos-leading-subheadline);
163
+ font-weight: var(--macos-font-weight-semibold);
164
+ color: color-mix(
165
+ in srgb,
166
+ var(--macos-label) 76%,
167
+ var(--macos-secondary-label) 24%
168
+ );
169
+ text-transform: none;
170
+ letter-spacing: normal;
171
+ white-space: nowrap;
172
+ padding: 7px var(--macos-space-3);
173
+ border-bottom: none !important;
174
+ border-right: 1px solid
175
+ color-mix(in srgb, var(--macos-separator) 82%, rgba(255, 255, 255, 0.14));
176
+ background: transparent;
177
+ text-shadow: 0 1px 0 rgba(255, 255, 255, 0.24);
178
+ }
179
+
180
+ html.macos-tahoe.dark [data-tucu='table-header'] th,
181
+ html.macos-tahoe.dark [data-tucu='table-header-cell'] {
182
+ color: rgba(255, 255, 255, 0.9);
183
+ border-right-color: color-mix(
184
+ in srgb,
185
+ rgba(255, 255, 255, 0.12) 55%,
186
+ rgba(0, 0, 0, 0.35)
187
+ );
188
+ text-shadow: 0 1px 0 rgba(0, 0, 0, 0.42);
189
+ }
190
+
191
+ html.macos-tahoe [data-tucu='table-header'] th:last-child,
192
+ html.macos-tahoe [data-tucu='table-header-cell']:last-child {
193
+ border-right: none;
194
+ }
195
+
196
+ /* ── Column resize handle ────────────────────────────────────── */
197
+ html.macos-tahoe .basic-table-resize-handle:hover::after {
198
+ background: color-mix(in srgb, var(--macos-control-accent) 50%, transparent);
199
+ }
200
+
201
+ html.macos-tahoe.dark .basic-table-resize-handle:hover::after {
202
+ background: color-mix(in srgb, var(--macos-control-accent) 60%, transparent);
203
+ }
204
+
205
+ /* ── Table rows ──────────────────────────────────────────────── */
206
+ html.macos-tahoe [data-tucu='table-row'] {
207
+ height: 30px;
208
+ background: transparent;
209
+ transition: background-color var(--macos-transition-fast),
210
+ box-shadow var(--macos-transition-fast), color var(--macos-transition-fast);
211
+ }
212
+
213
+ /* Alternating row colors (Finder style) */
214
+ html.macos-tahoe
215
+ [data-tucu='table'][data-striped='true']
216
+ [data-tucu='table-row']:nth-child(even) {
217
+ background-color: rgba(0, 0, 0, 0.03);
218
+ }
219
+
220
+ html.macos-tahoe.dark
221
+ [data-tucu='table'][data-striped='true']
222
+ [data-tucu='table-row']:nth-child(even) {
223
+ background-color: rgba(255, 255, 255, 0.025);
224
+ }
225
+
226
+ /* Hover */
227
+ html.macos-tahoe
228
+ [data-tucu='table'][data-hoverable='true']
229
+ [data-tucu='table-row']:hover {
230
+ background-color: rgba(0, 0, 0, 0.045);
231
+ }
232
+
233
+ html.macos-tahoe.dark
234
+ [data-tucu='table'][data-hoverable='true']
235
+ [data-tucu='table-row']:hover {
236
+ background-color: rgba(255, 255, 255, 0.05);
237
+ }
238
+
239
+ /* Selected row */
240
+ html.macos-tahoe [data-tucu='table-row'][data-selected='true'] {
241
+ background: linear-gradient(
242
+ 180deg,
243
+ color-mix(in srgb, var(--macos-selected-content-bg) 94%, #4da3ff 6%) 0%,
244
+ color-mix(in srgb, var(--macos-selected-content-bg) 86%, #0045a8 14%) 100%
245
+ );
246
+ box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.18),
247
+ inset 0 -1px 0 rgba(0, 0, 0, 0.16);
248
+ }
249
+
250
+ /* Table cells */
251
+ html.macos-tahoe [data-tucu='table-cell'] {
252
+ padding: 7px var(--macos-space-3);
253
+ font-size: var(--macos-font-size-body);
254
+ line-height: var(--macos-leading-body);
255
+ color: var(--macos-label) !important;
256
+ vertical-align: middle;
257
+ background: transparent !important;
258
+ border-right: none !important;
259
+ border-left: none !important;
260
+ border-bottom: 1px solid
261
+ color-mix(in srgb, var(--macos-separator) 62%, transparent) !important;
262
+ }
263
+
264
+ html.macos-tahoe.dark [data-tucu='table-cell'] {
265
+ border-bottom-color: color-mix(
266
+ in srgb,
267
+ var(--macos-separator) 72%,
268
+ transparent
269
+ ) !important;
270
+ }
271
+
272
+ html.macos-tahoe [data-tucu='table-row']:last-child [data-tucu='table-cell'] {
273
+ border-bottom-color: transparent !important;
274
+ }
275
+
276
+ html.macos-tahoe
277
+ [data-tucu='table'][data-border='false']
278
+ [data-tucu='table-cell'] {
279
+ border-bottom-color: transparent !important;
280
+ }
281
+
282
+ html.macos-tahoe
283
+ [data-tucu='table-row'][data-selected='true']
284
+ [data-tucu='table-cell'] {
285
+ color: #ffffff !important;
286
+ border-bottom-color: transparent !important;
287
+ }
288
+
289
+ /* ── Pagination ──────────────────────────────────────────────── */
290
+ html.macos-tahoe [data-tucu='pagination'] {
291
+ display: flex;
292
+ align-items: center;
293
+ gap: var(--macos-space-1);
294
+ font-family: var(--macos-font-family);
295
+ font-size: var(--macos-font-size-callout);
296
+ }
297
+
298
+ html.macos-tahoe [data-tucu='pagination-button'] {
299
+ min-width: var(--macos-control-height);
300
+ min-height: var(--macos-control-height);
301
+ border-radius: var(--macos-radius-md);
302
+ border: 1px solid var(--macos-separator);
303
+ background-color: var(--macos-control-bg);
304
+ font-size: var(--macos-font-size-callout);
305
+ transition: all var(--macos-transition-fast);
306
+ }
307
+
308
+ html.macos-tahoe [data-tucu='pagination-button']:hover {
309
+ background-color: rgba(0, 0, 0, 0.04);
310
+ }
311
+
312
+ html.macos-tahoe.dark [data-tucu='pagination-button']:hover {
313
+ background-color: rgba(255, 255, 255, 0.06);
314
+ }
315
+
316
+ html.macos-tahoe [data-tucu='pagination-button'][data-active='true'] {
317
+ background-color: var(--macos-control-accent);
318
+ color: #ffffff;
319
+ border-color: var(--macos-control-accent);
320
+ }
@@ -0,0 +1,304 @@
1
+ /* ============================================================
2
+ macOS Tahoe 26 — Toolbar
3
+
4
+ Scoped to html.macos-tahoe — no leakage to default theme.
5
+ References: Apple HIG > Toolbars > macOS Tahoe 26
6
+ Components: MacOSToolbar, MacOSToolbarGroup, MacOSToolbarButton,
7
+ MacOSToolbarOverflowMenu, ScrollEdge
8
+ ============================================================ */
9
+
10
+ /* ── MacOSToolbar ────────────────────────────────────────────── */
11
+
12
+ html.macos-tahoe [data-tucu='toolbar'] {
13
+ height: var(--macos-toolbar-height);
14
+ min-height: var(--macos-toolbar-height);
15
+ display: flex;
16
+ align-items: center;
17
+ padding: 0 var(--macos-space-2);
18
+ gap: var(--macos-space-1);
19
+ position: relative;
20
+ flex-shrink: 0;
21
+
22
+ /* Liquid Glass regular material */
23
+ background-color: var(--macos-glass-regular-bg);
24
+ backdrop-filter: blur(var(--macos-glass-blur, 28px)) saturate(1.6);
25
+ -webkit-backdrop-filter: blur(var(--macos-glass-blur, 28px)) saturate(1.6);
26
+ border-bottom: 0.5px solid var(--macos-separator);
27
+ z-index: 20;
28
+ }
29
+
30
+ html.macos-tahoe.dark [data-tucu='toolbar'] {
31
+ background-color: var(--macos-glass-regular-bg);
32
+ border-bottom-color: var(--macos-separator);
33
+ }
34
+
35
+ /* Fallback: no backdrop-filter support */
36
+ @supports not (backdrop-filter: blur(1px)) {
37
+ html.macos-tahoe [data-tucu='toolbar'] {
38
+ background-color: var(--macos-glass-regular-bg-opaque);
39
+ }
40
+ }
41
+
42
+ /* Reduced transparency */
43
+ @media (prefers-reduced-transparency: reduce) {
44
+ html.macos-tahoe [data-tucu='toolbar'] {
45
+ background-color: var(--macos-glass-regular-bg-opaque);
46
+ backdrop-filter: none;
47
+ -webkit-backdrop-filter: none;
48
+ }
49
+ }
50
+
51
+ /* Toolbar slots */
52
+ html.macos-tahoe [data-tucu='toolbar-leading'] {
53
+ display: flex;
54
+ align-items: center;
55
+ gap: var(--macos-space-1);
56
+ flex-shrink: 0;
57
+ }
58
+
59
+ html.macos-tahoe [data-tucu='toolbar-center'] {
60
+ display: flex;
61
+ flex: 1;
62
+ align-items: center;
63
+ justify-content: center;
64
+ gap: var(--macos-space-1);
65
+ }
66
+
67
+ html.macos-tahoe [data-tucu='toolbar-trailing'] {
68
+ display: flex;
69
+ align-items: center;
70
+ gap: var(--macos-space-1);
71
+ flex-shrink: 0;
72
+ margin-left: auto;
73
+ }
74
+
75
+ /* Toolbar title */
76
+ html.macos-tahoe [data-tucu='toolbar-title'] {
77
+ font-family: var(--macos-font-family);
78
+ font-size: var(--macos-ts-body-size);
79
+ font-weight: var(--macos-font-weight-semibold);
80
+ line-height: var(--macos-ts-body-leading);
81
+ letter-spacing: var(--macos-ts-body-tracking);
82
+ color: var(--macos-label);
83
+ white-space: nowrap;
84
+ user-select: none;
85
+ }
86
+
87
+ /* ── MacOSToolbarGroup ───────────────────────────────────────── */
88
+ /* Grouped buttons in a capsule — max 3 groups per toolbar */
89
+
90
+ html.macos-tahoe [data-tucu='toolbar-group'] {
91
+ display: inline-flex;
92
+ align-items: center;
93
+ background-color: var(--macos-control-bg);
94
+ border-radius: var(--macos-radius-control);
95
+ border: 0.5px solid var(--macos-separator);
96
+ overflow: hidden;
97
+ gap: 0;
98
+ height: 28px;
99
+ }
100
+
101
+ html.macos-tahoe.dark [data-tucu='toolbar-group'] {
102
+ background-color: rgba(255, 255, 255, 0.1);
103
+ border-color: rgba(255, 255, 255, 0.12);
104
+ }
105
+
106
+ /* Separator between items in a group */
107
+ html.macos-tahoe [data-tucu='toolbar-group'] > * + * {
108
+ border-left: 0.5px solid var(--macos-separator);
109
+ }
110
+
111
+ html.macos-tahoe.dark [data-tucu='toolbar-group'] > * + * {
112
+ border-left-color: rgba(255, 255, 255, 0.1);
113
+ }
114
+
115
+ /* ── MacOSToolbarButton ──────────────────────────────────────── */
116
+ /* Icon-only — tooltip is required for accessibility */
117
+
118
+ html.macos-tahoe [data-tucu='toolbar-button'] {
119
+ width: 28px;
120
+ height: 28px;
121
+ display: flex;
122
+ align-items: center;
123
+ justify-content: center;
124
+ border-radius: var(--macos-radius-small-control);
125
+ border: none;
126
+ background-color: transparent;
127
+ color: var(--macos-label);
128
+ cursor: default;
129
+ padding: 0;
130
+ transition: background-color 0.12s ease, color 0.12s ease;
131
+ flex-shrink: 0;
132
+ position: relative;
133
+ }
134
+
135
+ html.macos-tahoe [data-tucu='toolbar-button']:hover {
136
+ background-color: var(--macos-control-bg-hover);
137
+ color: var(--macos-label);
138
+ }
139
+
140
+ html.macos-tahoe.dark [data-tucu='toolbar-button']:hover {
141
+ background-color: rgba(255, 255, 255, 0.1);
142
+ }
143
+
144
+ html.macos-tahoe [data-tucu='toolbar-button']:active {
145
+ background-color: var(--macos-control-bg-active);
146
+ transform: scale(0.95);
147
+ }
148
+
149
+ html.macos-tahoe [data-tucu='toolbar-button'][data-active='true'] {
150
+ background-color: color-mix(
151
+ in srgb,
152
+ var(--color-brand, #0088ff) 16%,
153
+ transparent
154
+ );
155
+ color: var(--macos-control-accent);
156
+ }
157
+
158
+ html.macos-tahoe.dark [data-tucu='toolbar-button'][data-active='true'] {
159
+ background-color: color-mix(
160
+ in srgb,
161
+ var(--color-brand, #0091ff) 20%,
162
+ transparent
163
+ );
164
+ color: var(--macos-control-accent);
165
+ }
166
+
167
+ html.macos-tahoe [data-tucu='toolbar-button'][disabled],
168
+ html.macos-tahoe [data-tucu='toolbar-button']:disabled {
169
+ opacity: 0.38;
170
+ cursor: not-allowed;
171
+ }
172
+
173
+ html.macos-tahoe [data-tucu='toolbar-button']:focus-visible {
174
+ outline: none;
175
+ box-shadow: 0 0 0 var(--macos-focus-ring-width) var(--macos-focus-ring);
176
+ }
177
+
178
+ /* Inside a group: square not pill */
179
+ html.macos-tahoe [data-tucu='toolbar-group'] [data-tucu='toolbar-button'] {
180
+ border-radius: 0;
181
+ height: 100%;
182
+ }
183
+
184
+ html.macos-tahoe
185
+ [data-tucu='toolbar-group']
186
+ [data-tucu='toolbar-button']:first-child {
187
+ border-radius: calc(var(--macos-radius-control) - 1px) 0 0
188
+ calc(var(--macos-radius-control) - 1px);
189
+ }
190
+
191
+ html.macos-tahoe
192
+ [data-tucu='toolbar-group']
193
+ [data-tucu='toolbar-button']:last-child {
194
+ border-radius: 0 calc(var(--macos-radius-control) - 1px)
195
+ calc(var(--macos-radius-control) - 1px) 0;
196
+ }
197
+
198
+ /* ── Toolbar Separator ───────────────────────────────────────── */
199
+
200
+ html.macos-tahoe [data-tucu='toolbar-separator'] {
201
+ width: 0.5px;
202
+ height: 18px;
203
+ background-color: var(--macos-separator);
204
+ flex-shrink: 0;
205
+ margin: 0 var(--macos-space-1);
206
+ }
207
+
208
+ html.macos-tahoe.dark [data-tucu='toolbar-separator'] {
209
+ background-color: rgba(255, 255, 255, 0.14);
210
+ }
211
+
212
+ /* ── Scroll Edge ─────────────────────────────────────────────── */
213
+ /* Appears at bottom of scrollable area to indicate more content */
214
+
215
+ html.macos-tahoe [data-tucu='scroll-edge-top'] {
216
+ position: absolute;
217
+ top: 0;
218
+ left: 0;
219
+ right: 0;
220
+ height: 20px;
221
+ background: linear-gradient(to bottom, var(--macos-window-bg), transparent);
222
+ pointer-events: none;
223
+ z-index: 10;
224
+ }
225
+
226
+ html.macos-tahoe [data-tucu='scroll-edge-bottom'] {
227
+ position: absolute;
228
+ bottom: 0;
229
+ left: 0;
230
+ right: 0;
231
+ height: 20px;
232
+ background: linear-gradient(to top, var(--macos-window-bg), transparent);
233
+ pointer-events: none;
234
+ z-index: 10;
235
+ }
236
+
237
+ html.macos-tahoe.dark [data-tucu='scroll-edge-top'] {
238
+ background: linear-gradient(to bottom, var(--macos-window-bg), transparent);
239
+ }
240
+
241
+ html.macos-tahoe.dark [data-tucu='scroll-edge-bottom'] {
242
+ background: linear-gradient(to top, var(--macos-window-bg), transparent);
243
+ }
244
+
245
+ /* ── MacOSToolbarOverflowMenu ────────────────────────────────── */
246
+
247
+ html.macos-tahoe [data-tucu='toolbar-overflow-btn'] {
248
+ width: 28px;
249
+ height: 28px;
250
+ display: flex;
251
+ align-items: center;
252
+ justify-content: center;
253
+ border-radius: var(--macos-radius-small-control);
254
+ background-color: var(--macos-control-bg);
255
+ border: 0.5px solid var(--macos-separator);
256
+ color: var(--macos-label);
257
+ cursor: default;
258
+ }
259
+
260
+ html.macos-tahoe [data-tucu='toolbar-overflow-btn']:hover {
261
+ background-color: var(--macos-control-bg-hover);
262
+ }
263
+
264
+ html.macos-tahoe [data-tucu='toolbar-overflow-menu'] {
265
+ border-radius: var(--macos-radius-popover);
266
+ background-color: var(--macos-glass-regular-bg-opaque);
267
+ backdrop-filter: blur(var(--macos-glass-blur, 28px));
268
+ -webkit-backdrop-filter: blur(var(--macos-glass-blur, 28px));
269
+ box-shadow: var(--macos-shadow-popover, var(--macos-shadow-window));
270
+ border: 0.5px solid var(--macos-glass-border);
271
+ padding: var(--macos-space-1) 0;
272
+ min-width: 160px;
273
+ }
274
+
275
+ html.macos-tahoe [data-tucu='toolbar-overflow-item'] {
276
+ display: flex;
277
+ align-items: center;
278
+ gap: var(--macos-space-2);
279
+ padding: 5px var(--macos-space-3);
280
+ font-family: var(--macos-font-family);
281
+ font-size: var(--macos-ts-body-size);
282
+ font-weight: var(--macos-font-weight-regular);
283
+ color: var(--macos-label);
284
+ cursor: default;
285
+ white-space: nowrap;
286
+ }
287
+
288
+ html.macos-tahoe [data-tucu='toolbar-overflow-item']:hover {
289
+ background-color: var(--macos-control-accent);
290
+ color: #ffffff;
291
+ border-radius: 4px;
292
+ margin: 0 4px;
293
+ padding-left: calc(var(--macos-space-3) - 4px);
294
+ padding-right: calc(var(--macos-space-3) - 4px);
295
+ }
296
+
297
+ /* ── Reduced motion ──────────────────────────────────────────── */
298
+
299
+ @media (prefers-reduced-motion: reduce) {
300
+ html.macos-tahoe [data-tucu='toolbar-button'] {
301
+ transition: none;
302
+ transform: none !important;
303
+ }
304
+ }