@bluealba/pae-design-tokens 0.0.0-integration-css.403
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/README.md +51 -0
- package/dist/platform-tokens.css +592 -0
- package/dist/shell-reset.css +254 -0
- package/package.json +30 -0
- package/src/base.css +161 -0
- package/src/layer-order.css +23 -0
- package/src/shell-reset.css +254 -0
- package/src/tokens.css +406 -0
|
@@ -0,0 +1,254 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Shell reset.
|
|
3
|
+
*
|
|
4
|
+
* Full preflight-style reset for the platform shell. This stylesheet is ONLY
|
|
5
|
+
* ever injected INSIDE the shell shadow root (<pae-shell-host>), never into
|
|
6
|
+
* the document: inside the shadow boundary the universal selectors below only
|
|
7
|
+
* match shell-owned DOM, so the reset cannot leak into micro-frontends and
|
|
8
|
+
* micro-frontend resets cannot leak in.
|
|
9
|
+
*
|
|
10
|
+
* (Adapted from the legacy "pilar-css-base" Tailwind preflight that used to
|
|
11
|
+
* live inline in index.hbs; html/body rules became :host rules.)
|
|
12
|
+
*/
|
|
13
|
+
|
|
14
|
+
*,
|
|
15
|
+
::after,
|
|
16
|
+
::before {
|
|
17
|
+
box-sizing: border-box;
|
|
18
|
+
border-width: 0;
|
|
19
|
+
border-style: solid;
|
|
20
|
+
border-color: #e5e7eb;
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
:host {
|
|
24
|
+
display: block;
|
|
25
|
+
line-height: 1.5;
|
|
26
|
+
-webkit-text-size-adjust: 100%;
|
|
27
|
+
-moz-tab-size: 4;
|
|
28
|
+
tab-size: 4;
|
|
29
|
+
font-family: var(--pae-shell-text-base-font-family, ui-sans-serif, system-ui, sans-serif);
|
|
30
|
+
font-size: var(--pae-shell-text-base-font-size, 12px);
|
|
31
|
+
font-feature-settings: normal;
|
|
32
|
+
font-variation-settings: normal;
|
|
33
|
+
-webkit-tap-highlight-color: transparent;
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
hr {
|
|
37
|
+
height: 0;
|
|
38
|
+
color: inherit;
|
|
39
|
+
border-top-width: 1px;
|
|
40
|
+
}
|
|
41
|
+
|
|
42
|
+
abbr:where([title]) {
|
|
43
|
+
-webkit-text-decoration: underline dotted;
|
|
44
|
+
text-decoration: underline dotted;
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
h1,
|
|
48
|
+
h2,
|
|
49
|
+
h3,
|
|
50
|
+
h4,
|
|
51
|
+
h5,
|
|
52
|
+
h6 {
|
|
53
|
+
font-size: inherit;
|
|
54
|
+
font-weight: inherit;
|
|
55
|
+
}
|
|
56
|
+
|
|
57
|
+
a {
|
|
58
|
+
color: inherit;
|
|
59
|
+
text-decoration: inherit;
|
|
60
|
+
}
|
|
61
|
+
|
|
62
|
+
b,
|
|
63
|
+
strong {
|
|
64
|
+
font-weight: bolder;
|
|
65
|
+
}
|
|
66
|
+
|
|
67
|
+
code,
|
|
68
|
+
kbd,
|
|
69
|
+
pre,
|
|
70
|
+
samp {
|
|
71
|
+
font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
|
|
72
|
+
font-feature-settings: normal;
|
|
73
|
+
font-variation-settings: normal;
|
|
74
|
+
font-size: 1em;
|
|
75
|
+
}
|
|
76
|
+
|
|
77
|
+
small {
|
|
78
|
+
font-size: 80%;
|
|
79
|
+
}
|
|
80
|
+
|
|
81
|
+
sub,
|
|
82
|
+
sup {
|
|
83
|
+
font-size: 75%;
|
|
84
|
+
line-height: 0;
|
|
85
|
+
position: relative;
|
|
86
|
+
vertical-align: baseline;
|
|
87
|
+
}
|
|
88
|
+
|
|
89
|
+
sub {
|
|
90
|
+
bottom: -.25em;
|
|
91
|
+
}
|
|
92
|
+
|
|
93
|
+
sup {
|
|
94
|
+
top: -.5em;
|
|
95
|
+
}
|
|
96
|
+
|
|
97
|
+
table {
|
|
98
|
+
text-indent: 0;
|
|
99
|
+
border-color: inherit;
|
|
100
|
+
border-collapse: collapse;
|
|
101
|
+
}
|
|
102
|
+
|
|
103
|
+
button,
|
|
104
|
+
input,
|
|
105
|
+
optgroup,
|
|
106
|
+
select,
|
|
107
|
+
textarea {
|
|
108
|
+
font-family: inherit;
|
|
109
|
+
font-feature-settings: inherit;
|
|
110
|
+
font-variation-settings: inherit;
|
|
111
|
+
font-size: 100%;
|
|
112
|
+
font-weight: inherit;
|
|
113
|
+
line-height: inherit;
|
|
114
|
+
letter-spacing: inherit;
|
|
115
|
+
color: inherit;
|
|
116
|
+
margin: 0;
|
|
117
|
+
padding: 0;
|
|
118
|
+
}
|
|
119
|
+
|
|
120
|
+
button,
|
|
121
|
+
select {
|
|
122
|
+
text-transform: none;
|
|
123
|
+
}
|
|
124
|
+
|
|
125
|
+
button,
|
|
126
|
+
input:where([type=button]),
|
|
127
|
+
input:where([type=reset]),
|
|
128
|
+
input:where([type=submit]) {
|
|
129
|
+
-webkit-appearance: button;
|
|
130
|
+
background-color: transparent;
|
|
131
|
+
background-image: none;
|
|
132
|
+
}
|
|
133
|
+
|
|
134
|
+
:-moz-focusring {
|
|
135
|
+
outline: auto;
|
|
136
|
+
}
|
|
137
|
+
|
|
138
|
+
:-moz-ui-invalid {
|
|
139
|
+
box-shadow: none;
|
|
140
|
+
}
|
|
141
|
+
|
|
142
|
+
progress {
|
|
143
|
+
vertical-align: baseline;
|
|
144
|
+
}
|
|
145
|
+
|
|
146
|
+
::-webkit-inner-spin-button,
|
|
147
|
+
::-webkit-outer-spin-button {
|
|
148
|
+
height: auto;
|
|
149
|
+
}
|
|
150
|
+
|
|
151
|
+
[type=search] {
|
|
152
|
+
-webkit-appearance: textfield;
|
|
153
|
+
outline-offset: -2px;
|
|
154
|
+
}
|
|
155
|
+
|
|
156
|
+
::-webkit-search-decoration {
|
|
157
|
+
-webkit-appearance: none;
|
|
158
|
+
}
|
|
159
|
+
|
|
160
|
+
::-webkit-file-upload-button {
|
|
161
|
+
-webkit-appearance: button;
|
|
162
|
+
font: inherit;
|
|
163
|
+
}
|
|
164
|
+
|
|
165
|
+
summary {
|
|
166
|
+
display: list-item;
|
|
167
|
+
}
|
|
168
|
+
|
|
169
|
+
blockquote,
|
|
170
|
+
dd,
|
|
171
|
+
dl,
|
|
172
|
+
figure,
|
|
173
|
+
h1,
|
|
174
|
+
h2,
|
|
175
|
+
h3,
|
|
176
|
+
h4,
|
|
177
|
+
h5,
|
|
178
|
+
h6,
|
|
179
|
+
hr,
|
|
180
|
+
p,
|
|
181
|
+
pre {
|
|
182
|
+
margin: 0;
|
|
183
|
+
}
|
|
184
|
+
|
|
185
|
+
fieldset {
|
|
186
|
+
margin: 0;
|
|
187
|
+
padding: 0;
|
|
188
|
+
}
|
|
189
|
+
|
|
190
|
+
legend {
|
|
191
|
+
padding: 0;
|
|
192
|
+
}
|
|
193
|
+
|
|
194
|
+
menu,
|
|
195
|
+
ol,
|
|
196
|
+
ul {
|
|
197
|
+
list-style: none;
|
|
198
|
+
margin: 0;
|
|
199
|
+
padding: 0;
|
|
200
|
+
}
|
|
201
|
+
|
|
202
|
+
dialog {
|
|
203
|
+
padding: 0;
|
|
204
|
+
}
|
|
205
|
+
|
|
206
|
+
textarea {
|
|
207
|
+
resize: vertical;
|
|
208
|
+
}
|
|
209
|
+
|
|
210
|
+
input::placeholder,
|
|
211
|
+
textarea::placeholder {
|
|
212
|
+
opacity: 1;
|
|
213
|
+
color: #9ca3af;
|
|
214
|
+
}
|
|
215
|
+
|
|
216
|
+
[role=button],
|
|
217
|
+
button {
|
|
218
|
+
cursor: pointer;
|
|
219
|
+
}
|
|
220
|
+
|
|
221
|
+
:disabled {
|
|
222
|
+
cursor: default;
|
|
223
|
+
}
|
|
224
|
+
|
|
225
|
+
audio,
|
|
226
|
+
canvas,
|
|
227
|
+
embed,
|
|
228
|
+
iframe,
|
|
229
|
+
img,
|
|
230
|
+
object,
|
|
231
|
+
svg,
|
|
232
|
+
video {
|
|
233
|
+
display: block;
|
|
234
|
+
vertical-align: middle;
|
|
235
|
+
}
|
|
236
|
+
|
|
237
|
+
img,
|
|
238
|
+
video {
|
|
239
|
+
max-width: 100%;
|
|
240
|
+
height: auto;
|
|
241
|
+
}
|
|
242
|
+
|
|
243
|
+
[hidden]:where(:not([hidden=until-found])) {
|
|
244
|
+
display: none;
|
|
245
|
+
}
|
|
246
|
+
|
|
247
|
+
/**
|
|
248
|
+
* Radix poppers (tooltips/dropdowns) portaled INSIDE the shell shadow root
|
|
249
|
+
* must stack above the shell layer (mirrors the document-level rule in
|
|
250
|
+
* base.css).
|
|
251
|
+
*/
|
|
252
|
+
div[data-radix-popper-content-wrapper] {
|
|
253
|
+
z-index: calc(var(--platform-shell-layer) + 10) !important;
|
|
254
|
+
}
|
package/package.json
ADDED
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "@bluealba/pae-design-tokens",
|
|
3
|
+
"description": "Blue Alba Platform design tokens, cascade layer contract and base styles",
|
|
4
|
+
"version": "0.0.0-integration-css.403",
|
|
5
|
+
"main": "./dist/platform-tokens.css",
|
|
6
|
+
"files": [
|
|
7
|
+
"dist",
|
|
8
|
+
"src"
|
|
9
|
+
],
|
|
10
|
+
"exports": {
|
|
11
|
+
".": "./dist/platform-tokens.css",
|
|
12
|
+
"./platform-tokens.css": "./dist/platform-tokens.css",
|
|
13
|
+
"./shell-reset.css": "./dist/shell-reset.css",
|
|
14
|
+
"./layer-order.css": "./src/layer-order.css",
|
|
15
|
+
"./tokens.css": "./src/tokens.css",
|
|
16
|
+
"./base.css": "./src/base.css"
|
|
17
|
+
},
|
|
18
|
+
"scripts": {
|
|
19
|
+
"build": "node ./scripts/build.mjs",
|
|
20
|
+
"clean": "rm -rf dist",
|
|
21
|
+
"prebuild": "npm run clean"
|
|
22
|
+
},
|
|
23
|
+
"keywords": [],
|
|
24
|
+
"author": "Blue Alba",
|
|
25
|
+
"license": "PolyForm-Noncommercial-1.0.0",
|
|
26
|
+
"publishConfig": {
|
|
27
|
+
"@bluealba:registry": "https://registry.npmjs.org/",
|
|
28
|
+
"access": "public"
|
|
29
|
+
}
|
|
30
|
+
}
|
package/src/base.css
ADDED
|
@@ -0,0 +1,161 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Platform document base + defensive defaults.
|
|
3
|
+
*
|
|
4
|
+
* Everything here lives in @layer pae.base, so:
|
|
5
|
+
* - a micro-frontend that owns its tree (e.g. Tailwind v4, whose layers are
|
|
6
|
+
* declared later in the document) can override these rules deliberately;
|
|
7
|
+
* - tenant customizations (@layer pae.customization) always win.
|
|
8
|
+
*
|
|
9
|
+
* IMPORTANT: this file must NOT contain aggressive global resets. The full
|
|
10
|
+
* preflight-style reset only exists inside the shell shadow root
|
|
11
|
+
* (see shell-reset.css).
|
|
12
|
+
*/
|
|
13
|
+
@layer pae.base {
|
|
14
|
+
|
|
15
|
+
/**
|
|
16
|
+
* Minimal document base. The shell is rendered in a shadow root and does
|
|
17
|
+
* not depend on these, but the document still needs a sane baseline:
|
|
18
|
+
* rem sizing, no default body margin and the platform font for
|
|
19
|
+
* micro-frontends that don't bring their own.
|
|
20
|
+
*/
|
|
21
|
+
html {
|
|
22
|
+
font-size: var(--platform-text-base-font-size);
|
|
23
|
+
line-height: 1.5;
|
|
24
|
+
-webkit-text-size-adjust: 100%;
|
|
25
|
+
}
|
|
26
|
+
|
|
27
|
+
body {
|
|
28
|
+
margin: 0;
|
|
29
|
+
padding: 0;
|
|
30
|
+
line-height: inherit;
|
|
31
|
+
font-family: var(--platform-text-base-font-family);
|
|
32
|
+
overflow: hidden;
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
/**
|
|
36
|
+
* Defensive defaults for platform UI rendered in the light DOM
|
|
37
|
+
* (pae-ui-react-core components inside micro-frontends). Scoped to the
|
|
38
|
+
* [data-pae-ui] marker that initializeMicroFrontend() puts on every
|
|
39
|
+
* micro-frontend root, so it never leaks into arbitrary third-party DOM.
|
|
40
|
+
*/
|
|
41
|
+
[data-pae-ui],
|
|
42
|
+
[data-pae-ui] *,
|
|
43
|
+
[data-pae-ui] *::before,
|
|
44
|
+
[data-pae-ui] *::after {
|
|
45
|
+
box-sizing: border-box;
|
|
46
|
+
}
|
|
47
|
+
|
|
48
|
+
[data-pae-ui] button,
|
|
49
|
+
[data-pae-ui] input,
|
|
50
|
+
[data-pae-ui] optgroup,
|
|
51
|
+
[data-pae-ui] select,
|
|
52
|
+
[data-pae-ui] textarea {
|
|
53
|
+
font-family: inherit;
|
|
54
|
+
font-size: 100%;
|
|
55
|
+
font-weight: inherit;
|
|
56
|
+
line-height: inherit;
|
|
57
|
+
letter-spacing: inherit;
|
|
58
|
+
color: inherit;
|
|
59
|
+
margin: 0;
|
|
60
|
+
padding: 0;
|
|
61
|
+
}
|
|
62
|
+
|
|
63
|
+
[data-pae-ui] button,
|
|
64
|
+
[data-pae-ui] select {
|
|
65
|
+
text-transform: none;
|
|
66
|
+
}
|
|
67
|
+
|
|
68
|
+
[data-pae-ui] button,
|
|
69
|
+
[data-pae-ui] input:where([type=button]),
|
|
70
|
+
[data-pae-ui] input:where([type=reset]),
|
|
71
|
+
[data-pae-ui] input:where([type=submit]) {
|
|
72
|
+
-webkit-appearance: button;
|
|
73
|
+
background-color: transparent;
|
|
74
|
+
background-image: none;
|
|
75
|
+
}
|
|
76
|
+
|
|
77
|
+
[data-pae-ui] button,
|
|
78
|
+
[data-pae-ui] [role=button] {
|
|
79
|
+
cursor: pointer;
|
|
80
|
+
}
|
|
81
|
+
|
|
82
|
+
[data-pae-ui] :disabled {
|
|
83
|
+
cursor: default;
|
|
84
|
+
}
|
|
85
|
+
|
|
86
|
+
[data-pae-ui] h1,
|
|
87
|
+
[data-pae-ui] h2,
|
|
88
|
+
[data-pae-ui] h3,
|
|
89
|
+
[data-pae-ui] h4,
|
|
90
|
+
[data-pae-ui] h5,
|
|
91
|
+
[data-pae-ui] h6,
|
|
92
|
+
[data-pae-ui] p,
|
|
93
|
+
[data-pae-ui] figure,
|
|
94
|
+
[data-pae-ui] blockquote,
|
|
95
|
+
[data-pae-ui] dl,
|
|
96
|
+
[data-pae-ui] dd,
|
|
97
|
+
[data-pae-ui] hr,
|
|
98
|
+
[data-pae-ui] pre {
|
|
99
|
+
margin: 0;
|
|
100
|
+
}
|
|
101
|
+
|
|
102
|
+
[data-pae-ui] h1,
|
|
103
|
+
[data-pae-ui] h2,
|
|
104
|
+
[data-pae-ui] h3,
|
|
105
|
+
[data-pae-ui] h4,
|
|
106
|
+
[data-pae-ui] h5,
|
|
107
|
+
[data-pae-ui] h6 {
|
|
108
|
+
font-size: inherit;
|
|
109
|
+
font-weight: inherit;
|
|
110
|
+
}
|
|
111
|
+
|
|
112
|
+
[data-pae-ui] a {
|
|
113
|
+
color: inherit;
|
|
114
|
+
text-decoration: inherit;
|
|
115
|
+
}
|
|
116
|
+
|
|
117
|
+
[data-pae-ui] menu,
|
|
118
|
+
[data-pae-ui] ol,
|
|
119
|
+
[data-pae-ui] ul {
|
|
120
|
+
list-style: none;
|
|
121
|
+
margin: 0;
|
|
122
|
+
padding: 0;
|
|
123
|
+
}
|
|
124
|
+
|
|
125
|
+
[data-pae-ui] img,
|
|
126
|
+
[data-pae-ui] svg,
|
|
127
|
+
[data-pae-ui] video,
|
|
128
|
+
[data-pae-ui] canvas,
|
|
129
|
+
[data-pae-ui] audio,
|
|
130
|
+
[data-pae-ui] iframe,
|
|
131
|
+
[data-pae-ui] embed,
|
|
132
|
+
[data-pae-ui] object {
|
|
133
|
+
display: block;
|
|
134
|
+
vertical-align: middle;
|
|
135
|
+
}
|
|
136
|
+
|
|
137
|
+
[data-pae-ui] img,
|
|
138
|
+
[data-pae-ui] video {
|
|
139
|
+
max-width: 100%;
|
|
140
|
+
height: auto;
|
|
141
|
+
}
|
|
142
|
+
|
|
143
|
+
[data-pae-ui] textarea {
|
|
144
|
+
resize: vertical;
|
|
145
|
+
}
|
|
146
|
+
|
|
147
|
+
[data-pae-ui] input::placeholder,
|
|
148
|
+
[data-pae-ui] textarea::placeholder {
|
|
149
|
+
opacity: 1;
|
|
150
|
+
color: #9ca3af;
|
|
151
|
+
}
|
|
152
|
+
}
|
|
153
|
+
|
|
154
|
+
/**
|
|
155
|
+
* Radix portals (popovers/tooltips/dropdowns) attach to document.body in the
|
|
156
|
+
* light DOM. They must stack above the application layer. Kept outside any
|
|
157
|
+
* layer on purpose so third-party layered CSS cannot accidentally beat it.
|
|
158
|
+
*/
|
|
159
|
+
div[data-radix-popper-content-wrapper] {
|
|
160
|
+
z-index: calc(var(--platform-shell-layer) + 10) !important;
|
|
161
|
+
}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Platform cascade layer contract.
|
|
3
|
+
*
|
|
4
|
+
* This MUST be the first stylesheet evaluated in the document: the first
|
|
5
|
+
* appearance of each layer name fixes its position in the cascade, so any
|
|
6
|
+
* stylesheet loaded later (in any order) that targets one of these layers
|
|
7
|
+
* gets deterministic priority.
|
|
8
|
+
*
|
|
9
|
+
* Order (lowest to highest priority at equal specificity):
|
|
10
|
+
* - pae.tokens design token definitions (custom properties)
|
|
11
|
+
* - pae.base minimal document base + defensive defaults ([data-pae-ui])
|
|
12
|
+
* - pae.customization tenant/customization overrides — always wins over the above
|
|
13
|
+
*
|
|
14
|
+
* Guarantees:
|
|
15
|
+
* - pae.customization beats pae.tokens/pae.base regardless of load order.
|
|
16
|
+
* - Micro-frontend CSS placed in its own layers (e.g. Tailwind v4 layers)
|
|
17
|
+
* is declared later, so it wins over platform layers inside the MFE tree.
|
|
18
|
+
*
|
|
19
|
+
* NOT guaranteed:
|
|
20
|
+
* - Un-layered third-party CSS always beats layered CSS at equal
|
|
21
|
+
* specificity. The shell is immune to that via Shadow DOM, not layers.
|
|
22
|
+
*/
|
|
23
|
+
@layer pae.tokens, pae.base, pae.customization;
|
|
@@ -0,0 +1,254 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Shell reset.
|
|
3
|
+
*
|
|
4
|
+
* Full preflight-style reset for the platform shell. This stylesheet is ONLY
|
|
5
|
+
* ever injected INSIDE the shell shadow root (<pae-shell-host>), never into
|
|
6
|
+
* the document: inside the shadow boundary the universal selectors below only
|
|
7
|
+
* match shell-owned DOM, so the reset cannot leak into micro-frontends and
|
|
8
|
+
* micro-frontend resets cannot leak in.
|
|
9
|
+
*
|
|
10
|
+
* (Adapted from the legacy "pilar-css-base" Tailwind preflight that used to
|
|
11
|
+
* live inline in index.hbs; html/body rules became :host rules.)
|
|
12
|
+
*/
|
|
13
|
+
|
|
14
|
+
*,
|
|
15
|
+
::after,
|
|
16
|
+
::before {
|
|
17
|
+
box-sizing: border-box;
|
|
18
|
+
border-width: 0;
|
|
19
|
+
border-style: solid;
|
|
20
|
+
border-color: #e5e7eb;
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
:host {
|
|
24
|
+
display: block;
|
|
25
|
+
line-height: 1.5;
|
|
26
|
+
-webkit-text-size-adjust: 100%;
|
|
27
|
+
-moz-tab-size: 4;
|
|
28
|
+
tab-size: 4;
|
|
29
|
+
font-family: var(--pae-shell-text-base-font-family, ui-sans-serif, system-ui, sans-serif);
|
|
30
|
+
font-size: var(--pae-shell-text-base-font-size, 12px);
|
|
31
|
+
font-feature-settings: normal;
|
|
32
|
+
font-variation-settings: normal;
|
|
33
|
+
-webkit-tap-highlight-color: transparent;
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
hr {
|
|
37
|
+
height: 0;
|
|
38
|
+
color: inherit;
|
|
39
|
+
border-top-width: 1px;
|
|
40
|
+
}
|
|
41
|
+
|
|
42
|
+
abbr:where([title]) {
|
|
43
|
+
-webkit-text-decoration: underline dotted;
|
|
44
|
+
text-decoration: underline dotted;
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
h1,
|
|
48
|
+
h2,
|
|
49
|
+
h3,
|
|
50
|
+
h4,
|
|
51
|
+
h5,
|
|
52
|
+
h6 {
|
|
53
|
+
font-size: inherit;
|
|
54
|
+
font-weight: inherit;
|
|
55
|
+
}
|
|
56
|
+
|
|
57
|
+
a {
|
|
58
|
+
color: inherit;
|
|
59
|
+
text-decoration: inherit;
|
|
60
|
+
}
|
|
61
|
+
|
|
62
|
+
b,
|
|
63
|
+
strong {
|
|
64
|
+
font-weight: bolder;
|
|
65
|
+
}
|
|
66
|
+
|
|
67
|
+
code,
|
|
68
|
+
kbd,
|
|
69
|
+
pre,
|
|
70
|
+
samp {
|
|
71
|
+
font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
|
|
72
|
+
font-feature-settings: normal;
|
|
73
|
+
font-variation-settings: normal;
|
|
74
|
+
font-size: 1em;
|
|
75
|
+
}
|
|
76
|
+
|
|
77
|
+
small {
|
|
78
|
+
font-size: 80%;
|
|
79
|
+
}
|
|
80
|
+
|
|
81
|
+
sub,
|
|
82
|
+
sup {
|
|
83
|
+
font-size: 75%;
|
|
84
|
+
line-height: 0;
|
|
85
|
+
position: relative;
|
|
86
|
+
vertical-align: baseline;
|
|
87
|
+
}
|
|
88
|
+
|
|
89
|
+
sub {
|
|
90
|
+
bottom: -.25em;
|
|
91
|
+
}
|
|
92
|
+
|
|
93
|
+
sup {
|
|
94
|
+
top: -.5em;
|
|
95
|
+
}
|
|
96
|
+
|
|
97
|
+
table {
|
|
98
|
+
text-indent: 0;
|
|
99
|
+
border-color: inherit;
|
|
100
|
+
border-collapse: collapse;
|
|
101
|
+
}
|
|
102
|
+
|
|
103
|
+
button,
|
|
104
|
+
input,
|
|
105
|
+
optgroup,
|
|
106
|
+
select,
|
|
107
|
+
textarea {
|
|
108
|
+
font-family: inherit;
|
|
109
|
+
font-feature-settings: inherit;
|
|
110
|
+
font-variation-settings: inherit;
|
|
111
|
+
font-size: 100%;
|
|
112
|
+
font-weight: inherit;
|
|
113
|
+
line-height: inherit;
|
|
114
|
+
letter-spacing: inherit;
|
|
115
|
+
color: inherit;
|
|
116
|
+
margin: 0;
|
|
117
|
+
padding: 0;
|
|
118
|
+
}
|
|
119
|
+
|
|
120
|
+
button,
|
|
121
|
+
select {
|
|
122
|
+
text-transform: none;
|
|
123
|
+
}
|
|
124
|
+
|
|
125
|
+
button,
|
|
126
|
+
input:where([type=button]),
|
|
127
|
+
input:where([type=reset]),
|
|
128
|
+
input:where([type=submit]) {
|
|
129
|
+
-webkit-appearance: button;
|
|
130
|
+
background-color: transparent;
|
|
131
|
+
background-image: none;
|
|
132
|
+
}
|
|
133
|
+
|
|
134
|
+
:-moz-focusring {
|
|
135
|
+
outline: auto;
|
|
136
|
+
}
|
|
137
|
+
|
|
138
|
+
:-moz-ui-invalid {
|
|
139
|
+
box-shadow: none;
|
|
140
|
+
}
|
|
141
|
+
|
|
142
|
+
progress {
|
|
143
|
+
vertical-align: baseline;
|
|
144
|
+
}
|
|
145
|
+
|
|
146
|
+
::-webkit-inner-spin-button,
|
|
147
|
+
::-webkit-outer-spin-button {
|
|
148
|
+
height: auto;
|
|
149
|
+
}
|
|
150
|
+
|
|
151
|
+
[type=search] {
|
|
152
|
+
-webkit-appearance: textfield;
|
|
153
|
+
outline-offset: -2px;
|
|
154
|
+
}
|
|
155
|
+
|
|
156
|
+
::-webkit-search-decoration {
|
|
157
|
+
-webkit-appearance: none;
|
|
158
|
+
}
|
|
159
|
+
|
|
160
|
+
::-webkit-file-upload-button {
|
|
161
|
+
-webkit-appearance: button;
|
|
162
|
+
font: inherit;
|
|
163
|
+
}
|
|
164
|
+
|
|
165
|
+
summary {
|
|
166
|
+
display: list-item;
|
|
167
|
+
}
|
|
168
|
+
|
|
169
|
+
blockquote,
|
|
170
|
+
dd,
|
|
171
|
+
dl,
|
|
172
|
+
figure,
|
|
173
|
+
h1,
|
|
174
|
+
h2,
|
|
175
|
+
h3,
|
|
176
|
+
h4,
|
|
177
|
+
h5,
|
|
178
|
+
h6,
|
|
179
|
+
hr,
|
|
180
|
+
p,
|
|
181
|
+
pre {
|
|
182
|
+
margin: 0;
|
|
183
|
+
}
|
|
184
|
+
|
|
185
|
+
fieldset {
|
|
186
|
+
margin: 0;
|
|
187
|
+
padding: 0;
|
|
188
|
+
}
|
|
189
|
+
|
|
190
|
+
legend {
|
|
191
|
+
padding: 0;
|
|
192
|
+
}
|
|
193
|
+
|
|
194
|
+
menu,
|
|
195
|
+
ol,
|
|
196
|
+
ul {
|
|
197
|
+
list-style: none;
|
|
198
|
+
margin: 0;
|
|
199
|
+
padding: 0;
|
|
200
|
+
}
|
|
201
|
+
|
|
202
|
+
dialog {
|
|
203
|
+
padding: 0;
|
|
204
|
+
}
|
|
205
|
+
|
|
206
|
+
textarea {
|
|
207
|
+
resize: vertical;
|
|
208
|
+
}
|
|
209
|
+
|
|
210
|
+
input::placeholder,
|
|
211
|
+
textarea::placeholder {
|
|
212
|
+
opacity: 1;
|
|
213
|
+
color: #9ca3af;
|
|
214
|
+
}
|
|
215
|
+
|
|
216
|
+
[role=button],
|
|
217
|
+
button {
|
|
218
|
+
cursor: pointer;
|
|
219
|
+
}
|
|
220
|
+
|
|
221
|
+
:disabled {
|
|
222
|
+
cursor: default;
|
|
223
|
+
}
|
|
224
|
+
|
|
225
|
+
audio,
|
|
226
|
+
canvas,
|
|
227
|
+
embed,
|
|
228
|
+
iframe,
|
|
229
|
+
img,
|
|
230
|
+
object,
|
|
231
|
+
svg,
|
|
232
|
+
video {
|
|
233
|
+
display: block;
|
|
234
|
+
vertical-align: middle;
|
|
235
|
+
}
|
|
236
|
+
|
|
237
|
+
img,
|
|
238
|
+
video {
|
|
239
|
+
max-width: 100%;
|
|
240
|
+
height: auto;
|
|
241
|
+
}
|
|
242
|
+
|
|
243
|
+
[hidden]:where(:not([hidden=until-found])) {
|
|
244
|
+
display: none;
|
|
245
|
+
}
|
|
246
|
+
|
|
247
|
+
/**
|
|
248
|
+
* Radix poppers (tooltips/dropdowns) portaled INSIDE the shell shadow root
|
|
249
|
+
* must stack above the shell layer (mirrors the document-level rule in
|
|
250
|
+
* base.css).
|
|
251
|
+
*/
|
|
252
|
+
div[data-radix-popper-content-wrapper] {
|
|
253
|
+
z-index: calc(var(--platform-shell-layer) + 10) !important;
|
|
254
|
+
}
|