@atelier-ui/react 0.2.19 → 0.2.20
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/CHANGELOG.md +12 -0
- package/package.json +1 -1
- package/src/lib/accordion/atl-accordion.css +13 -2
- package/src/lib/avatar/atl-avatar.css +5 -0
- package/src/lib/breadcrumbs/atl-breadcrumbs.css +5 -0
- package/src/lib/card/atl-card.css +5 -0
- package/src/lib/chat/atl-chat.css +5 -0
- package/src/lib/checkbox/atl-checkbox.css +13 -2
- package/src/lib/code-block/atl-code-block.css +4 -0
- package/src/lib/combobox/atl-combobox.css +4 -0
- package/src/lib/dialog/atl-dialog.css +5 -0
- package/src/lib/drawer/atl-drawer.css +5 -0
- package/src/lib/input/atl-input.css +4 -0
- package/src/lib/menu/atl-menu.css +5 -0
- package/src/lib/pagination/atl-pagination.css +5 -0
- package/src/lib/progress/atl-progress.css +5 -0
- package/src/lib/radio/atl-radio.css +6 -3
- package/src/lib/radio-group/atl-radio-group.css +5 -0
- package/src/lib/select/atl-select.css +4 -0
- package/src/lib/skeleton/atl-skeleton.css +5 -0
- package/src/lib/stepper/atl-stepper.css +5 -0
- package/src/lib/table/atl-table.css +22 -5
- package/src/lib/tabs/atl-tabs.css +5 -0
- package/src/lib/textarea/atl-textarea.css +4 -0
- package/src/lib/toggle/atl-toggle.css +10 -2
package/CHANGELOG.md
CHANGED
|
@@ -1,3 +1,15 @@
|
|
|
1
|
+
## 0.2.20 (2026-08-26)
|
|
2
|
+
|
|
3
|
+
### 🚀 Features
|
|
4
|
+
|
|
5
|
+
- **rhythm:** every component root states its own leading ([7a7f473](https://github.com/DominikPieper/atelier-ui/commit/7a7f473))
|
|
6
|
+
- **rows:** put the remaining row boxes on the row ladder ([cc6dd13](https://github.com/DominikPieper/atelier-ui/commit/cc6dd13))
|
|
7
|
+
|
|
8
|
+
### ❤️ Thank You
|
|
9
|
+
|
|
10
|
+
- Claude Opus 5
|
|
11
|
+
- Dominik Pieper @DominikPieper
|
|
12
|
+
|
|
1
13
|
## 0.2.19 (2026-08-26)
|
|
2
14
|
|
|
3
15
|
### 🚀 Features
|
package/package.json
CHANGED
|
@@ -18,6 +18,11 @@
|
|
|
18
18
|
.atl-accordion-group {
|
|
19
19
|
display: block;
|
|
20
20
|
font-family: var(--ui-font-family);
|
|
21
|
+
/* The leading every descendant inherits. Stated here so the component keeps
|
|
22
|
+
its own vertical rhythm instead of adopting the consuming app's prose
|
|
23
|
+
leading — the defect that made the row boxes measure differently in a
|
|
24
|
+
Storybook page and in a docs page (ADR-0052). This one carries prose, so normal. */
|
|
25
|
+
line-height: var(--ui-line-height-normal);
|
|
21
26
|
color: var(--ui-color-text);
|
|
22
27
|
}
|
|
23
28
|
|
|
@@ -78,8 +83,14 @@
|
|
|
78
83
|
justify-content: space-between;
|
|
79
84
|
gap: var(--ui-spacing-3);
|
|
80
85
|
width: 100%;
|
|
81
|
-
|
|
82
|
-
|
|
86
|
+
/* Row recipe (ADR-0052): 3.25rem was a literal that happened to clear the
|
|
87
|
+
prose leading. On the row ladder the trigger is a lg row, and it states
|
|
88
|
+
its own line-height because `all: unset` above reset that to inherit —
|
|
89
|
+
without it the box grows with whatever leading the page sets. */
|
|
90
|
+
min-height: var(--ui-row-height-lg);
|
|
91
|
+
padding-block: 0;
|
|
92
|
+
padding-inline: var(--ui-spacing-5);
|
|
93
|
+
line-height: var(--ui-line-height-tight);
|
|
83
94
|
font-size: var(--ui-font-size-md);
|
|
84
95
|
font-weight: var(--ui-font-weight-semibold);
|
|
85
96
|
color: var(--ui-color-text);
|
|
@@ -24,6 +24,11 @@
|
|
|
24
24
|
overflow: hidden;
|
|
25
25
|
flex-shrink: 0;
|
|
26
26
|
font-family: var(--ui-font-family);
|
|
27
|
+
/* The leading every descendant inherits. Stated here so the component keeps
|
|
28
|
+
its own vertical rhythm instead of adopting the consuming app's prose
|
|
29
|
+
leading — the defect that made the row boxes measure differently in a
|
|
30
|
+
Storybook page and in a docs page (ADR-0052). Single-line chrome, so tight. */
|
|
31
|
+
line-height: var(--ui-line-height-tight);
|
|
27
32
|
font-weight: var(--ui-font-weight-semibold);
|
|
28
33
|
background-color: color-mix(in srgb, var(--ui-color-primary) 12%, var(--ui-color-surface-sunken));
|
|
29
34
|
color: var(--ui-color-primary);
|
|
@@ -18,6 +18,11 @@
|
|
|
18
18
|
.atl-breadcrumbs {
|
|
19
19
|
display: block;
|
|
20
20
|
font-family: var(--ui-font-family);
|
|
21
|
+
/* The leading every descendant inherits. Stated here so the component keeps
|
|
22
|
+
its own vertical rhythm instead of adopting the consuming app's prose
|
|
23
|
+
leading — the defect that made the row boxes measure differently in a
|
|
24
|
+
Storybook page and in a docs page (ADR-0052). Single-line chrome, so tight. */
|
|
25
|
+
line-height: var(--ui-line-height-tight);
|
|
21
26
|
}
|
|
22
27
|
|
|
23
28
|
.breadcrumbs-list {
|
|
@@ -24,6 +24,11 @@
|
|
|
24
24
|
* Sans — measured: a card next to a button showed two typefaces. Declared once
|
|
25
25
|
* per component root, never on a descendant (ADR-0049). */
|
|
26
26
|
font-family: var(--ui-font-family);
|
|
27
|
+
/* The leading every descendant inherits. Stated here so the component keeps
|
|
28
|
+
its own vertical rhythm instead of adopting the consuming app's prose
|
|
29
|
+
leading — the defect that made the row boxes measure differently in a
|
|
30
|
+
Storybook page and in a docs page (ADR-0052). This one carries prose, so normal. */
|
|
31
|
+
line-height: var(--ui-line-height-normal);
|
|
27
32
|
display: block;
|
|
28
33
|
border-radius: var(--ui-radius-xl);
|
|
29
34
|
background-color: var(--ui-color-surface-raised);
|
|
@@ -31,6 +31,11 @@
|
|
|
31
31
|
* Sans — measured: a card next to a button showed two typefaces. Declared once
|
|
32
32
|
* per component root, never on a descendant (ADR-0049). */
|
|
33
33
|
font-family: var(--ui-font-family);
|
|
34
|
+
/* The leading every descendant inherits. Stated here so the component keeps
|
|
35
|
+
its own vertical rhythm instead of adopting the consuming app's prose
|
|
36
|
+
leading — the defect that made the row boxes measure differently in a
|
|
37
|
+
Storybook page and in a docs page (ADR-0052). This one carries prose, so normal. */
|
|
38
|
+
line-height: var(--ui-line-height-normal);
|
|
34
39
|
display: contents;
|
|
35
40
|
}
|
|
36
41
|
|
|
@@ -12,6 +12,10 @@
|
|
|
12
12
|
display: block;
|
|
13
13
|
font-family: var(--ui-font-family);
|
|
14
14
|
font-size: var(--ui-font-size-md);
|
|
15
|
+
/* The root is a block wrapping an inline-flex row, so it opens a line box and
|
|
16
|
+
its strut is sized by whatever leading it inherits. Without this the row is
|
|
17
|
+
40px here and 48px inside an app with roomy prose leading. */
|
|
18
|
+
line-height: var(--ui-line-height-tight);
|
|
15
19
|
}
|
|
16
20
|
|
|
17
21
|
.atl-checkbox label {
|
|
@@ -21,14 +25,21 @@
|
|
|
21
25
|
cursor: pointer;
|
|
22
26
|
user-select: none;
|
|
23
27
|
color: var(--ui-color-text);
|
|
24
|
-
|
|
25
|
-
|
|
28
|
+
/* Row recipe (ADR-0052): the clickable line is a row — it states its height
|
|
29
|
+
and centres the control + text, rather than being sized by whichever of
|
|
30
|
+
the two happens to be taller. */
|
|
31
|
+
min-height: var(--ui-row-height-sm);
|
|
32
|
+
padding-block: 0;
|
|
33
|
+
line-height: var(--ui-line-height-tight);
|
|
26
34
|
}
|
|
27
35
|
|
|
28
36
|
.atl-checkbox input[type='checkbox'] {
|
|
29
37
|
appearance: none;
|
|
30
38
|
-webkit-appearance: none;
|
|
31
39
|
flex-shrink: 0;
|
|
40
|
+
/* The UA ships margin: 3px 3px 3px 4px on a native checkbox. Left in, it
|
|
41
|
+
adds 6px to the row and offsets the box from the label text. */
|
|
42
|
+
margin: 0;
|
|
32
43
|
width: 1.25rem;
|
|
33
44
|
height: 1.25rem;
|
|
34
45
|
border: var(--ui-border-width-thick) solid var(--ui-color-border-strong);
|
|
@@ -18,6 +18,10 @@
|
|
|
18
18
|
border-radius: var(--ui-radius-lg);
|
|
19
19
|
overflow: hidden;
|
|
20
20
|
font-family: var(--ui-font-family);
|
|
21
|
+
/* The leading every descendant inherits, stated so the component keeps its
|
|
22
|
+
own rhythm rather than the consuming app's prose leading (ADR-0052).
|
|
23
|
+
Chrome around the code, so tight — the code element states the code leading itself. */
|
|
24
|
+
line-height: var(--ui-line-height-tight);
|
|
21
25
|
}
|
|
22
26
|
|
|
23
27
|
/* ---------------------------------------------------------------------------
|
|
@@ -38,6 +38,10 @@
|
|
|
38
38
|
display: block;
|
|
39
39
|
position: relative;
|
|
40
40
|
font-family: var(--ui-font-family);
|
|
41
|
+
/* The leading every descendant inherits, stated so the component keeps its
|
|
42
|
+
own rhythm rather than the consuming app's prose leading (ADR-0052).
|
|
43
|
+
A single-line field over a list of rows, so tight. */
|
|
44
|
+
line-height: var(--ui-line-height-tight);
|
|
41
45
|
font-size: var(--ui-font-size-md);
|
|
42
46
|
}
|
|
43
47
|
|
|
@@ -29,6 +29,11 @@
|
|
|
29
29
|
* typeface (ADR-0035); without this the dialog renders in the consuming app's
|
|
30
30
|
* font while its neighbours render Instrument Sans (ADR-0049). */
|
|
31
31
|
font-family: var(--ui-font-family);
|
|
32
|
+
/* The leading every descendant inherits. Stated here so the component keeps
|
|
33
|
+
its own vertical rhythm instead of adopting the consuming app's prose
|
|
34
|
+
leading — the defect that made the row boxes measure differently in a
|
|
35
|
+
Storybook page and in a docs page (ADR-0052). This one carries prose, so normal. */
|
|
36
|
+
line-height: var(--ui-line-height-normal);
|
|
32
37
|
position: fixed;
|
|
33
38
|
inset: 0;
|
|
34
39
|
margin: auto;
|
|
@@ -25,6 +25,11 @@
|
|
|
25
25
|
* Sans — measured: a card next to a button showed two typefaces. Declared once
|
|
26
26
|
* per component root, never on a descendant (ADR-0049). */
|
|
27
27
|
font-family: var(--ui-font-family);
|
|
28
|
+
/* The leading every descendant inherits. Stated here so the component keeps
|
|
29
|
+
its own vertical rhythm instead of adopting the consuming app's prose
|
|
30
|
+
leading — the defect that made the row boxes measure differently in a
|
|
31
|
+
Storybook page and in a docs page (ADR-0052). This one carries prose, so normal. */
|
|
32
|
+
line-height: var(--ui-line-height-normal);
|
|
28
33
|
display: contents;
|
|
29
34
|
}
|
|
30
35
|
|
|
@@ -11,6 +11,10 @@
|
|
|
11
11
|
.atl-input {
|
|
12
12
|
display: block;
|
|
13
13
|
font-family: var(--ui-font-family);
|
|
14
|
+
/* The leading every descendant inherits, stated so the component keeps its
|
|
15
|
+
own rhythm rather than the consuming app's prose leading (ADR-0052).
|
|
16
|
+
A single-line field, so tight. */
|
|
17
|
+
line-height: var(--ui-line-height-tight);
|
|
14
18
|
font-size: var(--ui-font-size-md);
|
|
15
19
|
}
|
|
16
20
|
|
|
@@ -28,6 +28,11 @@
|
|
|
28
28
|
border-radius: var(--ui-radius-lg);
|
|
29
29
|
box-shadow: var(--ui-shadow-lg);
|
|
30
30
|
font-family: var(--ui-font-family);
|
|
31
|
+
/* The leading every descendant inherits. Stated here so the component keeps
|
|
32
|
+
its own vertical rhythm instead of adopting the consuming app's prose
|
|
33
|
+
leading — the defect that made the row boxes measure differently in a
|
|
34
|
+
Storybook page and in a docs page (ADR-0052). Single-line chrome, so tight. */
|
|
35
|
+
line-height: var(--ui-line-height-tight);
|
|
31
36
|
font-size: var(--ui-font-size-md);
|
|
32
37
|
color: var(--ui-color-text);
|
|
33
38
|
outline: none;
|
|
@@ -11,6 +11,11 @@
|
|
|
11
11
|
.atl-pagination {
|
|
12
12
|
display: block;
|
|
13
13
|
font-family: var(--ui-font-family);
|
|
14
|
+
/* The leading every descendant inherits. Stated here so the component keeps
|
|
15
|
+
its own vertical rhythm instead of adopting the consuming app's prose
|
|
16
|
+
leading — the defect that made the row boxes measure differently in a
|
|
17
|
+
Storybook page and in a docs page (ADR-0052). Single-line chrome, so tight. */
|
|
18
|
+
line-height: var(--ui-line-height-tight);
|
|
14
19
|
}
|
|
15
20
|
|
|
16
21
|
.page-list {
|
|
@@ -12,6 +12,11 @@
|
|
|
12
12
|
display: block;
|
|
13
13
|
width: 100%;
|
|
14
14
|
font-family: var(--ui-font-family);
|
|
15
|
+
/* The leading every descendant inherits. Stated here so the component keeps
|
|
16
|
+
its own vertical rhythm instead of adopting the consuming app's prose
|
|
17
|
+
leading — the defect that made the row boxes measure differently in a
|
|
18
|
+
Storybook page and in a docs page (ADR-0052). Single-line chrome, so tight. */
|
|
19
|
+
line-height: var(--ui-line-height-tight);
|
|
15
20
|
}
|
|
16
21
|
|
|
17
22
|
.track {
|
|
@@ -15,11 +15,14 @@
|
|
|
15
15
|
cursor: pointer;
|
|
16
16
|
user-select: none;
|
|
17
17
|
color: var(--ui-color-text);
|
|
18
|
-
line-height: var(--ui-line-height-
|
|
18
|
+
line-height: var(--ui-line-height-tight);
|
|
19
19
|
font-family: var(--ui-font-family);
|
|
20
20
|
font-size: var(--ui-font-size-md);
|
|
21
|
-
|
|
22
|
-
|
|
21
|
+
/* Row recipe (ADR-0052): the clickable line is a row — it states its height
|
|
22
|
+
and centres the control + text, rather than being sized by whichever of
|
|
23
|
+
the two happens to be taller. */
|
|
24
|
+
padding-block: 0;
|
|
25
|
+
min-height: var(--ui-row-height-sm);
|
|
23
26
|
transition: color var(--ui-transition-fast);
|
|
24
27
|
}
|
|
25
28
|
|
|
@@ -11,6 +11,11 @@
|
|
|
11
11
|
.atl-radio-group {
|
|
12
12
|
display: flex;
|
|
13
13
|
font-family: var(--ui-font-family);
|
|
14
|
+
/* The leading every descendant inherits. Stated here so the component keeps
|
|
15
|
+
its own vertical rhythm instead of adopting the consuming app's prose
|
|
16
|
+
leading — the defect that made the row boxes measure differently in a
|
|
17
|
+
Storybook page and in a docs page (ADR-0052). Single-line chrome, so tight. */
|
|
18
|
+
line-height: var(--ui-line-height-tight);
|
|
14
19
|
gap: var(--ui-spacing-3);
|
|
15
20
|
}
|
|
16
21
|
|
|
@@ -12,6 +12,10 @@
|
|
|
12
12
|
display: inline-block;
|
|
13
13
|
position: relative;
|
|
14
14
|
font-family: var(--ui-font-family);
|
|
15
|
+
/* The leading every descendant inherits, stated so the component keeps its
|
|
16
|
+
own rhythm rather than the consuming app's prose leading (ADR-0052).
|
|
17
|
+
A single-line field, so tight. */
|
|
18
|
+
line-height: var(--ui-line-height-tight);
|
|
15
19
|
font-size: var(--ui-font-size-md);
|
|
16
20
|
}
|
|
17
21
|
|
|
@@ -14,6 +14,11 @@
|
|
|
14
14
|
* Sans — measured: a card next to a button showed two typefaces. Declared once
|
|
15
15
|
* per component root, never on a descendant (ADR-0049). */
|
|
16
16
|
font-family: var(--ui-font-family);
|
|
17
|
+
/* The leading every descendant inherits. Stated here so the component keeps
|
|
18
|
+
its own vertical rhythm instead of adopting the consuming app's prose
|
|
19
|
+
leading — the defect that made the row boxes measure differently in a
|
|
20
|
+
Storybook page and in a docs page (ADR-0052). Single-line chrome, so tight. */
|
|
21
|
+
line-height: var(--ui-line-height-tight);
|
|
17
22
|
display: block;
|
|
18
23
|
background: var(--ui-color-border);
|
|
19
24
|
overflow: hidden;
|
|
@@ -11,6 +11,11 @@
|
|
|
11
11
|
.atl-stepper {
|
|
12
12
|
display: block;
|
|
13
13
|
font-family: var(--ui-font-family);
|
|
14
|
+
/* The leading every descendant inherits. Stated here so the component keeps
|
|
15
|
+
its own vertical rhythm instead of adopting the consuming app's prose
|
|
16
|
+
leading — the defect that made the row boxes measure differently in a
|
|
17
|
+
Storybook page and in a docs page (ADR-0052). Single-line chrome, so tight. */
|
|
18
|
+
line-height: var(--ui-line-height-tight);
|
|
14
19
|
}
|
|
15
20
|
|
|
16
21
|
/* ─── Header ─── */
|
|
@@ -36,6 +36,11 @@
|
|
|
36
36
|
.atl-table {
|
|
37
37
|
display: block;
|
|
38
38
|
font-family: var(--ui-font-family);
|
|
39
|
+
/* The leading every descendant inherits. Stated here so the component keeps
|
|
40
|
+
its own vertical rhythm instead of adopting the consuming app's prose
|
|
41
|
+
leading — the defect that made the row boxes measure differently in a
|
|
42
|
+
Storybook page and in a docs page (ADR-0052). Single-line chrome, so tight. */
|
|
43
|
+
line-height: var(--ui-line-height-tight);
|
|
39
44
|
color: var(--ui-color-text);
|
|
40
45
|
}
|
|
41
46
|
|
|
@@ -60,7 +65,13 @@
|
|
|
60
65
|
text-transform: uppercase;
|
|
61
66
|
border-bottom: var(--ui-border-width-thick) solid var(--ui-color-border);
|
|
62
67
|
background-color: var(--ui-color-surface);
|
|
63
|
-
|
|
68
|
+
/* Row recipe (ADR-0052): a row centres its content on a stated height, it
|
|
69
|
+
does not let the content push the box. padding-block stays 0 so the size
|
|
70
|
+
variants below only vary the inline inset. */
|
|
71
|
+
height: var(--ui-row-height-md);
|
|
72
|
+
padding-block: 0;
|
|
73
|
+
padding-inline: var(--ui-spacing-4);
|
|
74
|
+
line-height: var(--ui-line-height-tight);
|
|
64
75
|
text-align: start;
|
|
65
76
|
white-space: nowrap;
|
|
66
77
|
}
|
|
@@ -70,7 +81,10 @@
|
|
|
70
81
|
--------------------------------------------------------------------------- */
|
|
71
82
|
.atl-table tbody td {
|
|
72
83
|
border-bottom: var(--ui-border-width) solid var(--ui-color-border);
|
|
73
|
-
|
|
84
|
+
height: var(--ui-row-height-md);
|
|
85
|
+
padding-block: 0;
|
|
86
|
+
padding-inline: var(--ui-spacing-4);
|
|
87
|
+
line-height: var(--ui-line-height-tight);
|
|
74
88
|
vertical-align: middle;
|
|
75
89
|
background-color: var(--ui-color-surface);
|
|
76
90
|
transition: background-color var(--ui-transition-fast);
|
|
@@ -81,19 +95,22 @@
|
|
|
81
95
|
--------------------------------------------------------------------------- */
|
|
82
96
|
.atl-table.size-sm thead th,
|
|
83
97
|
.atl-table.size-sm tbody td {
|
|
84
|
-
|
|
98
|
+
height: var(--ui-row-height-sm);
|
|
99
|
+
padding-inline: var(--ui-spacing-3);
|
|
85
100
|
font-size: var(--ui-font-size-xs);
|
|
86
101
|
}
|
|
87
102
|
|
|
88
103
|
.atl-table.size-md thead th,
|
|
89
104
|
.atl-table.size-md tbody td {
|
|
90
|
-
|
|
105
|
+
height: var(--ui-row-height-md);
|
|
106
|
+
padding-inline: var(--ui-spacing-4);
|
|
91
107
|
font-size: var(--ui-font-size-sm);
|
|
92
108
|
}
|
|
93
109
|
|
|
94
110
|
.atl-table.size-lg thead th,
|
|
95
111
|
.atl-table.size-lg tbody td {
|
|
96
|
-
|
|
112
|
+
height: var(--ui-row-height-lg);
|
|
113
|
+
padding-inline: var(--ui-spacing-6);
|
|
97
114
|
font-size: var(--ui-font-size-md);
|
|
98
115
|
}
|
|
99
116
|
|
|
@@ -11,6 +11,11 @@
|
|
|
11
11
|
.atl-tab-group {
|
|
12
12
|
display: block;
|
|
13
13
|
font-family: var(--ui-font-family);
|
|
14
|
+
/* The leading every descendant inherits. Stated here so the component keeps
|
|
15
|
+
its own vertical rhythm instead of adopting the consuming app's prose
|
|
16
|
+
leading — the defect that made the row boxes measure differently in a
|
|
17
|
+
Storybook page and in a docs page (ADR-0052). Single-line chrome, so tight. */
|
|
18
|
+
line-height: var(--ui-line-height-tight);
|
|
14
19
|
color: var(--ui-color-text);
|
|
15
20
|
}
|
|
16
21
|
|
|
@@ -11,6 +11,10 @@
|
|
|
11
11
|
.atl-textarea {
|
|
12
12
|
display: block;
|
|
13
13
|
font-family: var(--ui-font-family);
|
|
14
|
+
/* The leading every descendant inherits, stated so the component keeps its
|
|
15
|
+
own rhythm rather than the consuming app's prose leading (ADR-0052).
|
|
16
|
+
The field carries prose, so normal. */
|
|
17
|
+
line-height: var(--ui-line-height-normal);
|
|
14
18
|
font-size: var(--ui-font-size-md);
|
|
15
19
|
}
|
|
16
20
|
|
|
@@ -12,6 +12,10 @@
|
|
|
12
12
|
display: block;
|
|
13
13
|
font-family: var(--ui-font-family);
|
|
14
14
|
font-size: var(--ui-font-size-md);
|
|
15
|
+
/* The root is a block wrapping an inline-flex row, so it opens a line box and
|
|
16
|
+
its strut is sized by whatever leading it inherits. Without this the row is
|
|
17
|
+
40px here and 48px inside an app with roomy prose leading. */
|
|
18
|
+
line-height: var(--ui-line-height-tight);
|
|
15
19
|
}
|
|
16
20
|
|
|
17
21
|
.atl-toggle label {
|
|
@@ -21,8 +25,12 @@
|
|
|
21
25
|
cursor: pointer;
|
|
22
26
|
user-select: none;
|
|
23
27
|
color: var(--ui-color-text);
|
|
24
|
-
|
|
25
|
-
|
|
28
|
+
/* Row recipe (ADR-0052): the clickable line is a row — it states its height
|
|
29
|
+
and centres the control + text, rather than being sized by whichever of
|
|
30
|
+
the two happens to be taller. */
|
|
31
|
+
min-height: var(--ui-row-height-sm);
|
|
32
|
+
padding-block: 0;
|
|
33
|
+
line-height: var(--ui-line-height-tight);
|
|
26
34
|
}
|
|
27
35
|
|
|
28
36
|
/* Hide native checkbox visually but keep it accessible */
|