@slotted/styles 0.1.0-beta.7 → 0.1.0-beta.9
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/package.json +1 -1
- package/src/accordion/accordion.css +10 -10
- package/src/action-bar/action-bar.css +31 -32
- package/src/action-sheet/action-sheet.css +36 -36
- package/src/alert/alert.css +35 -35
- package/src/app-shell/app-shell.css +280 -299
- package/src/aspect-ratio/aspect-ratio.css +9 -9
- package/src/attachment/attachment.css +91 -99
- package/src/avatar/avatar.css +41 -41
- package/src/avatar-group/avatar-group.css +21 -22
- package/src/badge/badge.css +37 -37
- package/src/breadcrumb/breadcrumb.css +37 -37
- package/src/button/button.css +88 -69
- package/src/button-group/button-group.css +69 -73
- package/src/calendar/calendar.css +93 -103
- package/src/card/card.css +54 -61
- package/src/carousel/carousel.css +150 -161
- package/src/cascader/cascader.css +147 -151
- package/src/chart/chart.css +225 -240
- package/src/checkbox/checkbox.css +119 -124
- package/src/checkbox-group/checkbox-group.css +7 -7
- package/src/code-block/code-block.css +81 -85
- package/src/collapsible/collapsible.css +69 -76
- package/src/color-picker/color-picker.css +83 -91
- package/src/column-manager/column-manager.css +106 -114
- package/src/combobox/combobox.css +99 -101
- package/src/command-palette/command-palette.css +84 -90
- package/src/container/container.css +24 -24
- package/src/context-menu/context-menu.css +8 -8
- package/src/currency-field/currency-field.css +99 -104
- package/src/dashboard-grid/dashboard-grid.css +104 -107
- package/src/data-grid/data-grid.css +458 -456
- package/src/data-grid/data-grid.tokens.json +2 -0
- package/src/data-list/data-list.css +67 -69
- package/src/date-field/date-field.css +50 -50
- package/src/date-picker/date-picker.css +40 -42
- package/src/date-range-picker/date-range-picker.css +114 -118
- package/src/datetime-field/datetime-field.css +73 -78
- package/src/datetime-picker/datetime-picker.css +61 -63
- package/src/datetime-range-picker/datetime-range-picker.css +149 -156
- package/src/description-list/description-list.css +61 -64
- package/src/detail-panel/detail-panel.css +70 -70
- package/src/dialog/dialog.css +312 -148
- package/src/divider/divider.css +18 -18
- package/src/drawer/drawer.css +186 -209
- package/src/entity-picker/entity-picker.css +220 -239
- package/src/event-calendar/event-calendar.css +343 -385
- package/src/field/field.css +74 -78
- package/src/field-group/field-group.css +22 -25
- package/src/filter-bar/filter-bar.css +193 -209
- package/src/form/form.css +21 -24
- package/src/fullscreen/fullscreen.css +24 -25
- package/src/grid/grid.css +28 -28
- package/src/highlight/highlight.css +6 -6
- package/src/hover-card/hover-card.css +6 -6
- package/src/icon/icon.css +15 -15
- package/src/image/image.css +39 -39
- package/src/import-export-center/import-export-center.css +135 -156
- package/src/inline/inline.css +27 -27
- package/src/inline-message/inline-message.css +28 -28
- package/src/kbd/kbd.css +26 -26
- package/src/link/link.css +15 -15
- package/src/list/list.css +20 -20
- package/src/list-item/list-item.css +66 -66
- package/src/listbox/listbox.css +56 -59
- package/src/loading-overlay/loading-overlay.css +75 -92
- package/src/markdown/markdown.css +17 -17
- package/src/menu/menu.css +63 -65
- package/src/menubar/menubar.css +13 -13
- package/src/message/message.css +174 -202
- package/src/message-scroller/message-scroller.css +41 -42
- package/src/multi-select/multi-select.css +131 -137
- package/src/navigation-menu/navigation-menu.css +167 -188
- package/src/notification-center/notification-center.css +134 -148
- package/src/number-field/number-field.css +76 -81
- package/src/otp-input/otp-input.css +48 -48
- package/src/page/page.css +23 -23
- package/src/page-header/page-header.css +219 -280
- package/src/pagination/pagination.css +68 -72
- package/src/popover/popover.css +40 -49
- package/src/progress-indicator/progress-indicator.css +85 -90
- package/src/prompt-composer/prompt-composer.css +94 -99
- package/src/prose/prose.css +71 -75
- package/src/radio-group/radio-group.css +98 -103
- package/src/rating/rating.css +132 -132
- package/src/result-state/result-state.css +74 -77
- package/src/saved-views/saved-views.css +41 -47
- package/src/scroll-area/scroll-area.css +32 -35
- package/src/section/section.css +16 -16
- package/src/segmented-control/segmented-control.css +77 -79
- package/src/select/select.css +113 -115
- package/src/side-navigation/side-navigation.css +170 -180
- package/src/skeleton/skeleton.css +47 -48
- package/src/slider/slider.css +86 -88
- package/src/sparkline/sparkline.css +32 -32
- package/src/spinner/spinner.css +4 -4
- package/src/split-button/split-button.css +26 -31
- package/src/splitter/splitter.css +35 -35
- package/src/stack/stack.css +24 -24
- package/src/stat-card/stat-card.css +102 -103
- package/src/status-indicator/status-indicator.css +28 -28
- package/src/stepper/stepper.css +58 -62
- package/src/switch/switch.css +86 -92
- package/src/table/table.css +189 -198
- package/src/table-of-contents/table-of-contents.css +51 -54
- package/src/tabs/tabs.css +157 -172
- package/src/tag/tag.css +67 -71
- package/src/tags-input/tags-input.css +124 -74
- package/src/tags-input/tags-input.tokens.json +6 -1
- package/src/text-field/text-field.css +108 -126
- package/src/textarea/textarea.css +26 -26
- package/src/time-field/time-field.css +67 -67
- package/src/time-picker/time-picker.css +56 -58
- package/src/time-range-picker/time-range-picker.css +126 -133
- package/src/timeline/timeline.css +244 -266
- package/src/toast/toast.css +81 -90
- package/src/toggle/toggle.css +29 -33
- package/src/toggle-group/toggle-group.css +67 -71
- package/src/toolbar/toolbar.css +30 -35
- package/src/tooltip/tooltip.css +26 -26
- package/src/top-navigation/top-navigation.css +243 -259
- package/src/tour/tour.css +51 -60
- package/src/transfer/transfer.css +160 -164
- package/src/tree/tree.css +103 -111
- package/src/typography/typography.css +36 -36
- package/src/upload/upload.css +224 -224
- package/src/visually-hidden/visually-hidden.css +1 -1
- package/src/wizard/wizard.css +185 -197
|
@@ -16,7 +16,7 @@
|
|
|
16
16
|
* `checkbox` itself, so a theme can move one without the other and neither
|
|
17
17
|
* stylesheet depends on the other's selectors.
|
|
18
18
|
*/
|
|
19
|
-
[data-ui
|
|
19
|
+
[data-ui-radio-group][data-part-root] {
|
|
20
20
|
/**
|
|
21
21
|
* The circle is the selection scale's, the same square `checkbox` draws
|
|
22
22
|
* in: 16px at `md`, stated once by the theme and not moved by density.
|
|
@@ -61,7 +61,7 @@
|
|
|
61
61
|
* it reads well at, and it is the same doubling the horizontal rule below
|
|
62
62
|
* already applies.
|
|
63
63
|
*/
|
|
64
|
-
[data-ui
|
|
64
|
+
[data-ui-radio-group][data-part-root]:has([data-part-description]) {
|
|
65
65
|
row-gap: var(--slotted-radio-group-gap, calc(var(--_gap) * 2));
|
|
66
66
|
}
|
|
67
67
|
|
|
@@ -70,7 +70,7 @@
|
|
|
70
70
|
* past the container is a row whose last option nobody can see, and a set of
|
|
71
71
|
* options is not a scroll region.
|
|
72
72
|
*/
|
|
73
|
-
[data-ui
|
|
73
|
+
[data-ui-radio-group][data-part-root][data-orientation='horizontal'] {
|
|
74
74
|
flex-direction: row;
|
|
75
75
|
flex-wrap: wrap;
|
|
76
76
|
/** Twice the control gap: the distance between two choices has to read as
|
|
@@ -80,7 +80,7 @@
|
|
|
80
80
|
|
|
81
81
|
/* ── Size ─────────────────────────────────────────────────────────────── */
|
|
82
82
|
|
|
83
|
-
[data-ui
|
|
83
|
+
[data-ui-radio-group][data-part-root][data-size='sm'] {
|
|
84
84
|
--_size: var(--slotted-radio-group-size, var(--slotted-selection-size-sm, 14px));
|
|
85
85
|
--_font-size: var(--slotted-control-font-size-sm, 12px);
|
|
86
86
|
--_gap: var(--slotted-control-gap-sm, 6px);
|
|
@@ -91,7 +91,7 @@
|
|
|
91
91
|
);
|
|
92
92
|
}
|
|
93
93
|
|
|
94
|
-
[data-ui
|
|
94
|
+
[data-ui-radio-group][data-part-root][data-size='md'] {
|
|
95
95
|
--_size: var(--slotted-radio-group-size, var(--slotted-selection-size-md, 16px));
|
|
96
96
|
--_font-size: var(--slotted-control-font-size-md, 13px);
|
|
97
97
|
--_gap: var(--slotted-control-gap-md, 8px);
|
|
@@ -102,7 +102,7 @@
|
|
|
102
102
|
);
|
|
103
103
|
}
|
|
104
104
|
|
|
105
|
-
[data-ui
|
|
105
|
+
[data-ui-radio-group][data-part-root][data-size='lg'] {
|
|
106
106
|
--_size: var(--slotted-radio-group-size, var(--slotted-selection-size-lg, 18px));
|
|
107
107
|
--_font-size: var(--slotted-control-font-size-lg, 14px);
|
|
108
108
|
--_gap: var(--slotted-control-gap-lg, 8px);
|
|
@@ -115,7 +115,7 @@
|
|
|
115
115
|
|
|
116
116
|
/* ── One item ─────────────────────────────────────────────────────────── */
|
|
117
117
|
|
|
118
|
-
[data-ui
|
|
118
|
+
[data-ui-radio-group] [data-part-item] {
|
|
119
119
|
/* The rows are as tall as they read. Stretched, the description drifted
|
|
120
120
|
away from the label it belongs to; the surplus is the container's. */
|
|
121
121
|
align-content: start;
|
|
@@ -130,15 +130,15 @@
|
|
|
130
130
|
|
|
131
131
|
/* The direction the halo and the target are placed in — the root's, not the
|
|
132
132
|
label's, for the reason `checkbox` records. */
|
|
133
|
-
[data-ui
|
|
133
|
+
[data-ui-radio-group][data-part-root] {
|
|
134
134
|
--_direction: ltr;
|
|
135
135
|
}
|
|
136
136
|
|
|
137
|
-
[data-ui
|
|
137
|
+
[data-ui-radio-group][data-part-root]:dir(rtl) {
|
|
138
138
|
--_direction: rtl;
|
|
139
139
|
}
|
|
140
140
|
|
|
141
|
-
[data-ui
|
|
141
|
+
[data-ui-radio-group] [data-part-control] {
|
|
142
142
|
appearance: none;
|
|
143
143
|
background-color: var(--slotted-radio-group-background, var(--slotted-surface, Canvas));
|
|
144
144
|
/* The medium step in the strong border colour, as `checkbox` edges its
|
|
@@ -175,7 +175,7 @@
|
|
|
175
175
|
* names the dot glyph as this part's mark, and the mark then enters with the
|
|
176
176
|
* same growth `checkbox`'s does.
|
|
177
177
|
*/
|
|
178
|
-
[data-ui
|
|
178
|
+
[data-ui-radio-group] [data-part-indicator] {
|
|
179
179
|
--slotted-icon-size: var(--_size);
|
|
180
180
|
|
|
181
181
|
block-size: var(--_size);
|
|
@@ -195,12 +195,12 @@
|
|
|
195
195
|
scale var(--slotted-duration-medium) var(--slotted-control-transition-easing);
|
|
196
196
|
}
|
|
197
197
|
|
|
198
|
-
[data-ui
|
|
198
|
+
[data-ui-radio-group] [data-part-control]:checked + [data-part-indicator] {
|
|
199
199
|
opacity: 1;
|
|
200
200
|
scale: 1;
|
|
201
201
|
}
|
|
202
202
|
|
|
203
|
-
[data-ui
|
|
203
|
+
[data-ui-radio-group] [data-part-label] {
|
|
204
204
|
cursor: pointer;
|
|
205
205
|
grid-column: 2;
|
|
206
206
|
grid-row: 1;
|
|
@@ -213,11 +213,11 @@
|
|
|
213
213
|
* in Arabic inside a row in Portuguese put it on the far side, against
|
|
214
214
|
* nothing, with the text against the control.
|
|
215
215
|
*/
|
|
216
|
-
[data-ui
|
|
216
|
+
[data-ui-radio-group] [data-part-item]:has(> [data-part-label]) {
|
|
217
217
|
column-gap: var(--_label-gap);
|
|
218
218
|
}
|
|
219
219
|
|
|
220
|
-
[data-ui
|
|
220
|
+
[data-ui-radio-group][data-part-root]:not([data-variant='tile']) [data-part-label] {
|
|
221
221
|
justify-self: start;
|
|
222
222
|
position: relative;
|
|
223
223
|
}
|
|
@@ -232,7 +232,7 @@
|
|
|
232
232
|
* `high-contrast` (CK7). The tile has neither; its surface answers the
|
|
233
233
|
* pointer.
|
|
234
234
|
*/
|
|
235
|
-
[data-ui
|
|
235
|
+
[data-ui-radio-group][data-part-root]:not([data-variant='tile']) [data-part-label]::before {
|
|
236
236
|
block-size: var(--_target);
|
|
237
237
|
content: '';
|
|
238
238
|
direction: var(--_direction);
|
|
@@ -245,7 +245,7 @@
|
|
|
245
245
|
z-index: -1;
|
|
246
246
|
}
|
|
247
247
|
|
|
248
|
-
[data-ui
|
|
248
|
+
[data-ui-radio-group][data-part-root]:not([data-variant='tile']) [data-part-label]::after {
|
|
249
249
|
background-color: var(--slotted-radio-group-halo-color, var(--slotted-tone-accent-text));
|
|
250
250
|
border-radius: calc(var(--_size) / 2 + var(--_halo-spread));
|
|
251
251
|
content: '';
|
|
@@ -263,12 +263,11 @@
|
|
|
263
263
|
/* A label with nothing in it — the Angular binding renders one whether or
|
|
264
264
|
not content is projected — has no text to wash, so the wash closes around
|
|
265
265
|
the circle at the same distance on all four sides. */
|
|
266
|
-
[data-ui
|
|
267
|
-
[data-part='label']:empty::after {
|
|
266
|
+
[data-ui-radio-group][data-part-root]:not([data-variant='tile']) [data-part-label]:empty::after {
|
|
268
267
|
inset-inline-end: calc(var(--_label-gap) - var(--_halo-spread));
|
|
269
268
|
}
|
|
270
269
|
|
|
271
|
-
[data-ui
|
|
270
|
+
[data-ui-radio-group] [data-part-description] {
|
|
272
271
|
color: var(--slotted-radio-group-description-color, var(--slotted-text-muted, GrayText));
|
|
273
272
|
font-size: var(
|
|
274
273
|
--slotted-radio-group-description-font-size,
|
|
@@ -284,7 +283,7 @@
|
|
|
284
283
|
|
|
285
284
|
/* ── Placement ────────────────────────────────────────────────────────── */
|
|
286
285
|
|
|
287
|
-
[data-ui
|
|
286
|
+
[data-ui-radio-group][data-part-root][data-label-placement='start'] [data-part-item] {
|
|
288
287
|
/**
|
|
289
288
|
* `1fr` and not `max-content`, which was tried first and looked better in
|
|
290
289
|
* one row than in five: `max-content` sizes each item's first column from
|
|
@@ -297,29 +296,26 @@
|
|
|
297
296
|
grid-template-columns: minmax(0, 1fr) auto;
|
|
298
297
|
}
|
|
299
298
|
|
|
300
|
-
[data-ui
|
|
301
|
-
[data-ui
|
|
299
|
+
[data-ui-radio-group][data-part-root][data-label-placement='start'] [data-part-control],
|
|
300
|
+
[data-ui-radio-group][data-part-root][data-label-placement='start'] [data-part-indicator] {
|
|
302
301
|
grid-area: 1 / 2;
|
|
303
302
|
}
|
|
304
303
|
|
|
305
|
-
[data-ui
|
|
306
|
-
[data-ui
|
|
307
|
-
[data-part='description'] {
|
|
304
|
+
[data-ui-radio-group][data-part-root][data-label-placement='start'] [data-part-label],
|
|
305
|
+
[data-ui-radio-group][data-part-root][data-label-placement='start'] [data-part-description] {
|
|
308
306
|
grid-column: 1;
|
|
309
307
|
}
|
|
310
308
|
|
|
311
|
-
[data-ui
|
|
309
|
+
[data-ui-radio-group][data-part-root][data-label-placement='start'] [data-part-label] {
|
|
312
310
|
justify-self: stretch;
|
|
313
311
|
}
|
|
314
312
|
|
|
315
|
-
[data-ui
|
|
316
|
-
[data-part='label']::before {
|
|
313
|
+
[data-ui-radio-group][data-part-root][data-label-placement='start'] [data-part-label]::before {
|
|
317
314
|
inset-inline-end: calc(-1 * (var(--_size) + var(--_label-gap)));
|
|
318
315
|
inset-inline-start: auto;
|
|
319
316
|
}
|
|
320
317
|
|
|
321
|
-
[data-ui
|
|
322
|
-
[data-part='label']::after {
|
|
318
|
+
[data-ui-radio-group][data-part-root][data-label-placement='start'] [data-part-label]::after {
|
|
323
319
|
inset-inline-end: calc(-1 * (var(--_size) + var(--_label-gap) + var(--_halo-spread)));
|
|
324
320
|
inset-inline-start: calc(-1.5 * var(--_halo-spread));
|
|
325
321
|
}
|
|
@@ -331,22 +327,22 @@
|
|
|
331
327
|
* `checkbox` gives, lit from the circle and from the label alike because
|
|
332
328
|
* both are the one target.
|
|
333
329
|
*/
|
|
334
|
-
[data-ui
|
|
335
|
-
[data-part
|
|
330
|
+
[data-ui-radio-group][data-part-root]:not([data-readonly])
|
|
331
|
+
[data-part-control]:hover:not(:disabled) {
|
|
336
332
|
border-color: var(--slotted-radio-group-hover-border-color, var(--slotted-tone-accent-border));
|
|
337
333
|
}
|
|
338
334
|
|
|
339
|
-
[data-ui
|
|
340
|
-
[data-part
|
|
341
|
-
~ [data-part
|
|
342
|
-
[data-ui
|
|
343
|
-
[data-part
|
|
344
|
-
~ [data-part
|
|
335
|
+
[data-ui-radio-group][data-part-root]:not([data-readonly])
|
|
336
|
+
[data-part-control]:hover:not(:disabled)
|
|
337
|
+
~ [data-part-label]::after,
|
|
338
|
+
[data-ui-radio-group][data-part-root]:not([data-readonly])
|
|
339
|
+
[data-part-control]:not(:disabled)
|
|
340
|
+
~ [data-part-label]:hover::after {
|
|
345
341
|
opacity: var(--slotted-selection-halo-opacity, 0.12);
|
|
346
342
|
}
|
|
347
343
|
|
|
348
|
-
[data-ui
|
|
349
|
-
[data-part
|
|
344
|
+
[data-ui-radio-group][data-part-root]:not([data-readonly])
|
|
345
|
+
[data-part-control]:active:not(:disabled) {
|
|
350
346
|
background-color: var(
|
|
351
347
|
--slotted-radio-group-active-background,
|
|
352
348
|
var(--slotted-tone-accent-subtle-active)
|
|
@@ -359,32 +355,32 @@
|
|
|
359
355
|
* what says chosen and a filled circle with a white dot is a checkbox with a
|
|
360
356
|
* different corner.
|
|
361
357
|
*/
|
|
362
|
-
[data-ui
|
|
358
|
+
[data-ui-radio-group] [data-part-control]:checked {
|
|
363
359
|
border-color: var(--slotted-radio-group-checked-border-color, var(--slotted-tone-accent-solid));
|
|
364
360
|
}
|
|
365
361
|
|
|
366
|
-
[data-ui
|
|
367
|
-
[data-part
|
|
362
|
+
[data-ui-radio-group][data-part-root]:not([data-readonly])
|
|
363
|
+
[data-part-control]:checked:hover:not(:disabled) {
|
|
368
364
|
border-color: var(
|
|
369
365
|
--slotted-radio-group-checked-hover-border-color,
|
|
370
366
|
var(--slotted-tone-accent-solid-hover)
|
|
371
367
|
);
|
|
372
368
|
}
|
|
373
369
|
|
|
374
|
-
[data-ui
|
|
375
|
-
[data-part
|
|
370
|
+
[data-ui-radio-group][data-part-root]:not([data-readonly])
|
|
371
|
+
[data-part-control]:checked:active:not(:disabled) {
|
|
376
372
|
border-color: var(
|
|
377
373
|
--slotted-radio-group-checked-active-border-color,
|
|
378
374
|
var(--slotted-tone-accent-solid-active)
|
|
379
375
|
);
|
|
380
376
|
}
|
|
381
377
|
|
|
382
|
-
[data-ui
|
|
378
|
+
[data-ui-radio-group] [data-part-control]:focus-visible {
|
|
383
379
|
outline: var(--slotted-focus-ring-width, 2px) solid var(--slotted-focus-ring-color, Highlight);
|
|
384
380
|
outline-offset: var(--slotted-focus-ring-offset, 2px);
|
|
385
381
|
}
|
|
386
382
|
|
|
387
|
-
[data-ui
|
|
383
|
+
[data-ui-radio-group][data-part-root][data-invalid] {
|
|
388
384
|
--slotted-focus-ring-color: var(
|
|
389
385
|
--slotted-radio-group-invalid-focus-ring-color,
|
|
390
386
|
var(--slotted-focus-ring-color-invalid, Highlight)
|
|
@@ -402,7 +398,7 @@
|
|
|
402
398
|
* shadow does not. The box keeps its size, because the border box is what is
|
|
403
399
|
* measured.
|
|
404
400
|
*/
|
|
405
|
-
[data-ui
|
|
401
|
+
[data-ui-radio-group][data-part-root][data-invalid] [data-part-control] {
|
|
406
402
|
border-width: calc(
|
|
407
403
|
var(--slotted-radio-group-border-width, var(--slotted-border-width-medium, 1.5px)) +
|
|
408
404
|
var(
|
|
@@ -416,16 +412,16 @@
|
|
|
416
412
|
);
|
|
417
413
|
}
|
|
418
414
|
|
|
419
|
-
[data-ui
|
|
415
|
+
[data-ui-radio-group][data-part-root][data-invalid] [data-part-control]:checked {
|
|
420
416
|
border-color: var(
|
|
421
417
|
--slotted-radio-group-invalid-checked-border-color,
|
|
422
418
|
var(--slotted-tone-danger-solid)
|
|
423
419
|
);
|
|
424
420
|
}
|
|
425
421
|
|
|
426
|
-
[data-ui
|
|
427
|
-
[data-part
|
|
428
|
-
+ [data-part
|
|
422
|
+
[data-ui-radio-group][data-part-root][data-invalid]
|
|
423
|
+
[data-part-control]:checked
|
|
424
|
+
+ [data-part-indicator] {
|
|
429
425
|
color: var(--slotted-radio-group-invalid-mark-color, var(--slotted-tone-danger-solid));
|
|
430
426
|
}
|
|
431
427
|
|
|
@@ -434,12 +430,12 @@
|
|
|
434
430
|
* unchosen options and the pointer say the value is not the reader's to move,
|
|
435
431
|
* and the chosen one keeps its accent because the value is real.
|
|
436
432
|
*/
|
|
437
|
-
[data-ui
|
|
438
|
-
[data-ui
|
|
433
|
+
[data-ui-radio-group][data-part-root][data-readonly] [data-part-control],
|
|
434
|
+
[data-ui-radio-group][data-part-root][data-readonly] [data-part-label] {
|
|
439
435
|
cursor: default;
|
|
440
436
|
}
|
|
441
437
|
|
|
442
|
-
[data-ui
|
|
438
|
+
[data-ui-radio-group][data-part-root][data-readonly] [data-part-control]:not(:checked) {
|
|
443
439
|
background-color: var(
|
|
444
440
|
--slotted-radio-group-readonly-background,
|
|
445
441
|
/**
|
|
@@ -452,8 +448,8 @@
|
|
|
452
448
|
);
|
|
453
449
|
}
|
|
454
450
|
|
|
455
|
-
[data-ui
|
|
456
|
-
[data-ui
|
|
451
|
+
[data-ui-radio-group][data-part-root][data-disabled] [data-part-control],
|
|
452
|
+
[data-ui-radio-group] [data-part-control]:disabled {
|
|
457
453
|
background-color: var(
|
|
458
454
|
--slotted-radio-group-disabled-background,
|
|
459
455
|
var(--slotted-disabled-background)
|
|
@@ -462,14 +458,14 @@
|
|
|
462
458
|
cursor: not-allowed;
|
|
463
459
|
}
|
|
464
460
|
|
|
465
|
-
[data-ui
|
|
461
|
+
[data-ui-radio-group] [data-part-control]:disabled + [data-part-indicator] {
|
|
466
462
|
color: var(--slotted-radio-group-disabled-mark-color, var(--slotted-disabled-foreground));
|
|
467
463
|
}
|
|
468
464
|
|
|
469
|
-
[data-ui
|
|
470
|
-
[data-ui
|
|
471
|
-
[data-ui
|
|
472
|
-
[data-ui
|
|
465
|
+
[data-ui-radio-group][data-part-root][data-disabled] [data-part-label],
|
|
466
|
+
[data-ui-radio-group][data-part-root][data-disabled] [data-part-description],
|
|
467
|
+
[data-ui-radio-group] [data-part-control]:disabled ~ [data-part-label],
|
|
468
|
+
[data-ui-radio-group] [data-part-control]:disabled ~ [data-part-description] {
|
|
473
469
|
color: var(--slotted-radio-group-disabled-color, var(--slotted-disabled-foreground));
|
|
474
470
|
cursor: not-allowed;
|
|
475
471
|
}
|
|
@@ -491,7 +487,7 @@
|
|
|
491
487
|
* equal height is a `grid` around the items and nothing this family adds.
|
|
492
488
|
*/
|
|
493
489
|
|
|
494
|
-
[data-ui
|
|
490
|
+
[data-ui-radio-group][data-part-root][data-variant='tile'] [data-part-item] {
|
|
495
491
|
/* The description sits one step nearer its label inside a frame, as
|
|
496
492
|
`checkbox` keeps it (CK2). */
|
|
497
493
|
--_description-gap: var(
|
|
@@ -528,7 +524,7 @@
|
|
|
528
524
|
* a shadow is removed outright and a width is not. `card` draws its own edge
|
|
529
525
|
* the same way and for the same two reasons.
|
|
530
526
|
*/
|
|
531
|
-
[data-ui
|
|
527
|
+
[data-ui-radio-group][data-part-root][data-variant='tile'] [data-part-item]::before {
|
|
532
528
|
border: calc(var(--_tile-edge-width) + var(--_tile-invalid-edge, 0px)) solid var(--_tile-edge);
|
|
533
529
|
border-radius: inherit;
|
|
534
530
|
content: '';
|
|
@@ -549,9 +545,9 @@
|
|
|
549
545
|
* Anything a consumer raises above the surface sets `position: relative` on
|
|
550
546
|
* itself, for the same reason a card's footer does.
|
|
551
547
|
*/
|
|
552
|
-
[data-ui
|
|
553
|
-
[data-part
|
|
554
|
-
[data-part
|
|
548
|
+
[data-ui-radio-group][data-part-root][data-variant='tile']
|
|
549
|
+
[data-part-item]
|
|
550
|
+
[data-part-label]::after {
|
|
555
551
|
content: '';
|
|
556
552
|
inset: 0;
|
|
557
553
|
position: absolute;
|
|
@@ -568,11 +564,11 @@
|
|
|
568
564
|
* pointer made a tile look less chosen than it was.
|
|
569
565
|
*/
|
|
570
566
|
|
|
571
|
-
[data-ui
|
|
567
|
+
[data-ui-radio-group][data-part-root][data-variant='tile']:not([data-readonly]):not(
|
|
572
568
|
[data-disabled]
|
|
573
569
|
)
|
|
574
|
-
[data-part
|
|
575
|
-
:has([data-part
|
|
570
|
+
[data-part-item]:has([data-part-control]:not(:disabled)):not(
|
|
571
|
+
:has([data-part-control]:checked)
|
|
576
572
|
):hover {
|
|
577
573
|
--_tile-surface: var(
|
|
578
574
|
--slotted-radio-group-tile-hover-background,
|
|
@@ -584,11 +580,11 @@
|
|
|
584
580
|
);
|
|
585
581
|
}
|
|
586
582
|
|
|
587
|
-
[data-ui
|
|
583
|
+
[data-ui-radio-group][data-part-root][data-variant='tile']:not([data-readonly]):not(
|
|
588
584
|
[data-disabled]
|
|
589
585
|
)
|
|
590
|
-
[data-part
|
|
591
|
-
:has([data-part
|
|
586
|
+
[data-part-item]:has([data-part-control]:not(:disabled)):not(
|
|
587
|
+
:has([data-part-control]:checked)
|
|
592
588
|
):active {
|
|
593
589
|
--_tile-surface: var(
|
|
594
590
|
--slotted-radio-group-tile-active-background,
|
|
@@ -602,8 +598,8 @@
|
|
|
602
598
|
* difference a reader has to look for across a row of five, and the tint
|
|
603
599
|
* alone is a difference the `high-contrast` scheme flattens to nothing.
|
|
604
600
|
*/
|
|
605
|
-
[data-ui
|
|
606
|
-
[data-part
|
|
601
|
+
[data-ui-radio-group][data-part-root][data-variant='tile']:not([data-readonly])
|
|
602
|
+
[data-part-item]:has([data-part-control]:checked) {
|
|
607
603
|
--_tile-edge: var(
|
|
608
604
|
--slotted-radio-group-tile-checked-border-color,
|
|
609
605
|
var(--slotted-tone-accent-solid)
|
|
@@ -617,8 +613,8 @@
|
|
|
617
613
|
* value is real and stays visible, and a read-only set then reads as a set of
|
|
618
614
|
* secondary grounds with one accent edge on the choice that was made.
|
|
619
615
|
*/
|
|
620
|
-
[data-ui
|
|
621
|
-
[data-part
|
|
616
|
+
[data-ui-radio-group][data-part-root][data-variant='tile']:not([data-readonly])
|
|
617
|
+
[data-part-item]:has([data-part-control]:checked) {
|
|
622
618
|
--_tile-surface: var(
|
|
623
619
|
--slotted-radio-group-tile-checked-background,
|
|
624
620
|
var(--slotted-tone-accent-surface)
|
|
@@ -631,17 +627,17 @@
|
|
|
631
627
|
* accent tone has below its solid, so a ground that moved would either not
|
|
632
628
|
* move at all in `light` or land on the tint an unchosen hovered tile shows.
|
|
633
629
|
*/
|
|
634
|
-
[data-ui
|
|
630
|
+
[data-ui-radio-group][data-part-root][data-variant='tile']:not([data-readonly]):not(
|
|
635
631
|
[data-disabled]
|
|
636
632
|
)
|
|
637
|
-
[data-part
|
|
633
|
+
[data-part-item]:has([data-part-control]:checked:not(:disabled)):hover {
|
|
638
634
|
--_tile-edge: var(
|
|
639
635
|
--slotted-radio-group-tile-checked-hover-border-color,
|
|
640
636
|
var(--slotted-tone-accent-solid-hover)
|
|
641
637
|
);
|
|
642
638
|
}
|
|
643
639
|
|
|
644
|
-
[data-ui
|
|
640
|
+
[data-ui-radio-group][data-part-root][data-variant='tile'][data-invalid] [data-part-item] {
|
|
645
641
|
--_tile-edge: var(
|
|
646
642
|
--slotted-radio-group-tile-invalid-border-color,
|
|
647
643
|
var(--slotted-tone-danger-border)
|
|
@@ -654,8 +650,8 @@
|
|
|
654
650
|
);
|
|
655
651
|
}
|
|
656
652
|
|
|
657
|
-
[data-ui
|
|
658
|
-
[data-part
|
|
653
|
+
[data-ui-radio-group][data-part-root][data-variant='tile'][data-invalid]
|
|
654
|
+
[data-part-item]:has([data-part-control]:checked) {
|
|
659
655
|
--_tile-surface: var(
|
|
660
656
|
--slotted-radio-group-tile-invalid-checked-background,
|
|
661
657
|
var(--slotted-tone-danger-surface)
|
|
@@ -668,7 +664,7 @@
|
|
|
668
664
|
|
|
669
665
|
/* Read-only keeps the ink and the tab stop; only the ground and the pointer
|
|
670
666
|
say the value is not the reader's to move. */
|
|
671
|
-
[data-ui
|
|
667
|
+
[data-ui-radio-group][data-part-root][data-variant='tile'][data-readonly] [data-part-item] {
|
|
672
668
|
--_tile-surface: var(
|
|
673
669
|
--slotted-radio-group-tile-readonly-background,
|
|
674
670
|
var(--slotted-tone-secondary-subtle-hover)
|
|
@@ -689,9 +685,9 @@
|
|
|
689
685
|
cursor: default;
|
|
690
686
|
}
|
|
691
687
|
|
|
692
|
-
[data-ui
|
|
693
|
-
[data-ui
|
|
694
|
-
[data-part
|
|
688
|
+
[data-ui-radio-group][data-part-root][data-variant='tile'][data-disabled] [data-part-item],
|
|
689
|
+
[data-ui-radio-group][data-part-root][data-variant='tile']
|
|
690
|
+
[data-part-item]:has([data-part-control]:disabled) {
|
|
695
691
|
--_tile-surface: var(
|
|
696
692
|
--slotted-radio-group-tile-disabled-background,
|
|
697
693
|
var(--slotted-disabled-background)
|
|
@@ -711,14 +707,13 @@
|
|
|
711
707
|
* left a ring around a sixteen-pixel circle inside a ring around the whole
|
|
712
708
|
* surface, which reads as two controls.
|
|
713
709
|
*/
|
|
714
|
-
[data-ui
|
|
715
|
-
[data-part
|
|
710
|
+
[data-ui-radio-group][data-part-root][data-variant='tile']
|
|
711
|
+
[data-part-item]:has([data-part-control]:focus-visible) {
|
|
716
712
|
outline: var(--slotted-focus-ring-width, 2px) solid var(--slotted-focus-ring-color, Highlight);
|
|
717
713
|
outline-offset: var(--slotted-focus-ring-offset, 2px);
|
|
718
714
|
}
|
|
719
715
|
|
|
720
|
-
[data-ui
|
|
721
|
-
[data-part='control']:focus-visible {
|
|
716
|
+
[data-ui-radio-group][data-part-root][data-variant='tile'] [data-part-control]:focus-visible {
|
|
722
717
|
outline: none;
|
|
723
718
|
}
|
|
724
719
|
|
|
@@ -728,17 +723,17 @@
|
|
|
728
723
|
* `color`, so the dot would vanish into the circle it is drawn in. Restated in system colours, as `checkbox` restates the same pair.
|
|
729
724
|
*/
|
|
730
725
|
@media (forced-colors: active) {
|
|
731
|
-
[data-ui
|
|
726
|
+
[data-ui-radio-group] [data-part-control] {
|
|
732
727
|
background-color: Field;
|
|
733
728
|
border-color: FieldText;
|
|
734
729
|
}
|
|
735
730
|
|
|
736
|
-
[data-ui
|
|
731
|
+
[data-ui-radio-group] [data-part-control]:checked {
|
|
737
732
|
background-color: Field;
|
|
738
733
|
border-color: Highlight;
|
|
739
734
|
}
|
|
740
735
|
|
|
741
|
-
[data-ui
|
|
736
|
+
[data-ui-radio-group] [data-part-control]:checked + [data-part-indicator] {
|
|
742
737
|
color: Highlight;
|
|
743
738
|
}
|
|
744
739
|
|
|
@@ -749,29 +744,29 @@
|
|
|
749
744
|
* `Highlight` as for a valid option, and the wider invalid edge takes
|
|
750
745
|
* `CanvasText`, as does a tile's invalid edge.
|
|
751
746
|
*/
|
|
752
|
-
[data-ui
|
|
747
|
+
[data-ui-radio-group][data-part-root][data-invalid] [data-part-control]:checked {
|
|
753
748
|
background-color: Field;
|
|
754
749
|
border-color: CanvasText;
|
|
755
750
|
}
|
|
756
751
|
|
|
757
|
-
[data-ui
|
|
758
|
-
[data-part
|
|
759
|
-
+ [data-part
|
|
752
|
+
[data-ui-radio-group][data-part-root][data-invalid]
|
|
753
|
+
[data-part-control]:checked
|
|
754
|
+
+ [data-part-indicator] {
|
|
760
755
|
color: Highlight;
|
|
761
756
|
}
|
|
762
757
|
|
|
763
|
-
[data-ui
|
|
764
|
-
[data-ui
|
|
765
|
-
[data-part
|
|
758
|
+
[data-ui-radio-group][data-part-root][data-variant='tile'][data-invalid] [data-part-item],
|
|
759
|
+
[data-ui-radio-group][data-part-root][data-variant='tile'][data-invalid]
|
|
760
|
+
[data-part-item]:has([data-part-control]:checked) {
|
|
766
761
|
--_tile-edge: CanvasText;
|
|
767
762
|
}
|
|
768
763
|
|
|
769
|
-
[data-ui
|
|
764
|
+
[data-ui-radio-group] [data-part-control]:disabled {
|
|
770
765
|
background-color: Field;
|
|
771
766
|
border-color: GrayText;
|
|
772
767
|
}
|
|
773
768
|
|
|
774
|
-
[data-ui
|
|
769
|
+
[data-ui-radio-group] [data-part-control]:disabled + [data-part-indicator] {
|
|
775
770
|
color: GrayText;
|
|
776
771
|
}
|
|
777
772
|
}
|