@webority/theme 0.82.0 → 0.83.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +20 -0
- package/dist/purge-safelist.json +6 -0
- package/dist/webority-brand-signal.css +1 -1
- package/dist/webority-theme.css +1 -1
- package/package.json +4 -2
- package/scss/_brand-signal.scss +58 -47
- package/scss/_components.scss +2 -0
- package/scss/_tokens.scss +184 -0
- package/scss/_wui-aliases.scss +92 -0
- package/scss/wui/_card.scss +3 -0
- package/scss/wui/_interaction.scss +26 -0
- package/scss/wui/_media.scss +12 -1
- package/scss/wui/_rich-text.scss +4 -0
- package/token-meanings.json +270 -0
package/scss/_tokens.scss
CHANGED
|
@@ -8,99 +8,149 @@
|
|
|
8
8
|
:root {
|
|
9
9
|
// Extended primary ramp — neutral indigo default; used for tints,
|
|
10
10
|
// washes, hovers. Products override --wui-primary* with their brand.
|
|
11
|
+
/// meaning: Brand primary fill for primary buttons, selected states and the first chart series.
|
|
11
12
|
--wui-primary: #4F46E5;
|
|
13
|
+
/// meaning: Primary fill while a control is hovered.
|
|
12
14
|
--wui-primary-hover: #6366F1;
|
|
15
|
+
/// meaning: Primary fill while a control is pressed or active.
|
|
13
16
|
--wui-primary-pressed: #4338CA;
|
|
17
|
+
/// meaning: Strongest soft primary fill or border tint that follows dark mode.
|
|
14
18
|
--wui-primary-50: #818CF8;
|
|
19
|
+
/// meaning: Medium soft primary fill or border tint that follows dark mode.
|
|
15
20
|
--wui-primary-30: #A5B4FC;
|
|
21
|
+
/// meaning: Light soft primary fill or border tint that follows dark mode.
|
|
16
22
|
--wui-primary-20: #C7D2FE;
|
|
23
|
+
/// meaning: Lighter soft primary fill or border tint that follows dark mode.
|
|
17
24
|
--wui-primary-15: #DDE1FD;
|
|
25
|
+
/// meaning: Pale soft primary fill or border tint that follows dark mode.
|
|
18
26
|
--wui-primary-10: #E0E7FF;
|
|
27
|
+
/// meaning: Faintest soft primary fill or border tint that follows dark mode.
|
|
19
28
|
--wui-primary-5: #EEF2FF;
|
|
20
29
|
|
|
21
30
|
// Foreground ramp (cool blue-grey neutrals) — for text hierarchy
|
|
22
31
|
// beyond Bootstrap's body-color / body-secondary-color.
|
|
32
|
+
/// meaning: Heading ink for page and section titles.
|
|
23
33
|
--wui-text-heading: #071437;
|
|
34
|
+
/// meaning: Primary body text, a step softer than the heading ink.
|
|
24
35
|
--wui-text-1: #252F4A;
|
|
36
|
+
/// meaning: Secondary text for descriptions, sub-labels and muted copy.
|
|
25
37
|
--wui-text-2: #4B5675;
|
|
26
38
|
// Tertiary text — hints, captions, labels, timestamps, placeholders. Was #78829D,
|
|
27
39
|
// which measured 3.5:1 on white and 3.1:1 on a tinted panel: below WCAG AA (4.5:1)
|
|
28
40
|
// everywhere it was used. A tier meant for readable-but-secondary copy has to BE
|
|
29
41
|
// readable, so it darkens to 4.55:1 on every neutral surface. It stays clearly
|
|
30
42
|
// lighter than --wui-text-2; --wui-text-4/5 remain for genuinely decorative use.
|
|
43
|
+
/// meaning: Tertiary text for hints, captions, labels, timestamps and placeholders.
|
|
31
44
|
--wui-text-3: #687088;
|
|
45
|
+
/// meaning: Decorative faint ink, not for text a person must read.
|
|
32
46
|
--wui-text-4: #99A1B7;
|
|
47
|
+
/// meaning: Faintest ink, for decorative marks and the strong border tone.
|
|
33
48
|
--wui-text-5: #C4CADA;
|
|
34
49
|
|
|
35
50
|
// Surfaces
|
|
51
|
+
/// meaning: Page background behind every surface in light mode.
|
|
36
52
|
--wui-bg-page: #F4F6F8;
|
|
53
|
+
/// meaning: White card and panel surface, the lightest fill in light mode.
|
|
37
54
|
--wui-bg-light: #FFFFFF;
|
|
55
|
+
/// meaning: Subtle raised surface, one step off the page.
|
|
38
56
|
--wui-bg-elevated: #F9FBFC;
|
|
57
|
+
/// meaning: Muted fill for grouped areas and quiet controls.
|
|
39
58
|
--wui-bg-muted: #F5F6FA;
|
|
40
59
|
// Resting fill for every input-like control (text field, select, textarea, and the
|
|
41
60
|
// combobox/phone/date/number wrappers) — a touch lighter than --wui-bg-muted so fields read
|
|
42
61
|
// as their own surface. Change here to restyle every field's background at once.
|
|
62
|
+
/// meaning: Resting fill of every input-like control, such as fields, selects and textareas.
|
|
43
63
|
--wui-field-bg: #F9FBFC;
|
|
44
64
|
// Resting and hover border of every input-like control: a soft edge a step darker than
|
|
45
65
|
// --wui-border-light, and the --wui-text-5 hover. They sit under WCAG 1.4.11's 3:1 by
|
|
46
66
|
// design choice; check-contrast reports them as FAIL without failing the gate.
|
|
67
|
+
/// meaning: Resting border of every input-like control.
|
|
47
68
|
--wui-field-border: #DFE2EA;
|
|
69
|
+
/// meaning: Hover border of every input-like control.
|
|
48
70
|
--wui-field-border-hover: #C4CADA;
|
|
71
|
+
/// meaning: Default hairline border of cards, tables and dividers.
|
|
49
72
|
--wui-border-light: #EBEDF3;
|
|
73
|
+
/// meaning: Softest border, for inner dividers.
|
|
50
74
|
--wui-border-soft: #F4F6F8;
|
|
51
75
|
// The unfilled part of a progress bar / meter. Darker than every surface it can sit on
|
|
52
76
|
// (card, page, muted fill) so the empty track reads as a track, yet light enough that the
|
|
53
77
|
// mid-yellow warning fill still separates from it.
|
|
78
|
+
/// meaning: Unfilled track of a progress bar or meter.
|
|
54
79
|
--wui-progress-track: #E1E5EE;
|
|
80
|
+
/// meaning: Inset of the table wrapper and toolbar, which a table class can retune.
|
|
81
|
+
--wui-table-pad: 20px;
|
|
55
82
|
|
|
56
83
|
// Gradients (hero, CTA)
|
|
84
|
+
/// meaning: Background gradient of the hero band on marketing pages.
|
|
57
85
|
--wui-hero-gradient:
|
|
58
86
|
radial-gradient(ellipse 120% 80% at 50% 30%,
|
|
59
87
|
#818CF8 0%, #4F46E5 35%, #4338CA 75%, #312E81 100%);
|
|
88
|
+
/// meaning: Background gradient of the call-to-action band on marketing pages.
|
|
60
89
|
--wui-cta-gradient:
|
|
61
90
|
radial-gradient(ellipse 120% 100% at 50% 50%,
|
|
62
91
|
#312E81 0%, #1E1B4B 60%, #0F0D2E 100%);
|
|
63
92
|
|
|
64
93
|
// Easing curves — match locked design's CSS / Framer Motion exports
|
|
94
|
+
/// meaning: Easing curve matching the locked design's motion exports.
|
|
65
95
|
--wui-ease-out-quart: cubic-bezier(0.22, 1, 0.36, 1);
|
|
96
|
+
/// meaning: Easing curve for interface transitions.
|
|
66
97
|
--wui-ease-ui: cubic-bezier(0.32, 0.72, 0, 1);
|
|
67
98
|
// Elastic / spring — overshoots the target then settles (the y > 1 control point).
|
|
68
99
|
// Used by the tab ink-bar so a tab switch springs into place rather than sliding flat.
|
|
100
|
+
/// meaning: Overshooting easing for the tab ink bar's spring into place.
|
|
69
101
|
--wui-ease-elastic: cubic-bezier(0.34, 1.56, 0.64, 1);
|
|
70
102
|
|
|
71
103
|
// Elevation. In-page card tokens are flat (none). Overlay
|
|
72
104
|
// rungs match $wui-shadow-overlay* in _variables.scss — one ink for menus,
|
|
73
105
|
// popovers, modals. Do not hand-roll a third shadow.
|
|
106
|
+
/// meaning: Shadow under in-page cards, none in this theme so cards stay flat.
|
|
74
107
|
--wui-shadow-card: none;
|
|
108
|
+
/// meaning: Shadow of a lifted card, none in this theme.
|
|
75
109
|
--wui-shadow-card-lifted: none;
|
|
110
|
+
/// meaning: Shadow of a lifted card while it is hovered, none in this theme.
|
|
76
111
|
--wui-shadow-card-lifted-hover: none;
|
|
112
|
+
/// meaning: Shadow of floating overlays such as menus and popovers.
|
|
77
113
|
--wui-shadow-overlay: #{$wui-shadow-overlay};
|
|
114
|
+
/// meaning: Larger overlay shadow, for the largest floating surfaces.
|
|
78
115
|
--wui-shadow-overlay-lg: #{$wui-shadow-overlay-lg};
|
|
79
116
|
|
|
80
117
|
// Component-specific shadows. Used by slider thumbs and other interactive elements.
|
|
118
|
+
/// meaning: Shadow under a slider thumb and other small interactive elements.
|
|
81
119
|
--wui-shadow-thumb: 0 2px 6px rgba(0, 0, 0, 0.1);
|
|
120
|
+
/// meaning: Shadow under a slider thumb while it is hovered.
|
|
82
121
|
--wui-shadow-thumb-hover: 0 2px 12px rgba(0, 0, 0, 0.2);
|
|
83
122
|
|
|
84
123
|
// The control height ladder: sm 32, md 36, lg 44. A button, field, select, segmented control, tab
|
|
85
124
|
// or chip of one size shares its height, so a row of mixed controls lines up. On a phone-width or
|
|
86
125
|
// touch screen md rises to 44px, the touch-target floor (media rule after this block).
|
|
126
|
+
/// meaning: Default height of a button, field, select or tab; larger on phones.
|
|
87
127
|
--wui-control-height: 36px;
|
|
128
|
+
/// meaning: Height of the small control size, for dense toolbars and chips.
|
|
88
129
|
--wui-control-height-sm: 32px;
|
|
130
|
+
/// meaning: Height of the large control size, for prominent buttons and fields.
|
|
89
131
|
--wui-control-height-lg: 44px;
|
|
90
132
|
|
|
91
133
|
// Scrollbar thumb — one quiet grey-blue at three interaction strengths.
|
|
134
|
+
/// meaning: Resting thumb colour of a thin scrollbar.
|
|
92
135
|
--wui-scrollbar: rgba(145, 158, 171, 0.45);
|
|
136
|
+
/// meaning: Scrollbar thumb colour while it is hovered.
|
|
93
137
|
--wui-scrollbar-hover: rgba(145, 158, 171, 0.65);
|
|
138
|
+
/// meaning: Scrollbar thumb colour while it is dragged.
|
|
94
139
|
--wui-scrollbar-active: rgba(145, 158, 171, 0.85);
|
|
95
140
|
|
|
96
141
|
// ---- Marketing surface ramp -------------------------------------
|
|
97
142
|
// Soft tints + neutral washes used by mega-menu hover, callout cards,
|
|
98
143
|
// and section accents. Distinct from --wui-bg-* (which are the
|
|
99
144
|
// platform/portal palette).
|
|
145
|
+
/// meaning: Soft tint surface for marketing callouts and mega-menu hover.
|
|
100
146
|
--wui-surface-soft: #F2EFFE;
|
|
147
|
+
/// meaning: Violet-tinted surface for marketing section accents and callout cards.
|
|
101
148
|
--wui-surface-violet: #ECE4FE;
|
|
149
|
+
/// meaning: Near-white surface for marketing section accents.
|
|
102
150
|
--wui-surface-violet-soft: #FCFCFC;
|
|
151
|
+
/// meaning: Neutral wash surface for marketing sections and panels.
|
|
103
152
|
--wui-surface-mute: #F9FBFC;
|
|
153
|
+
/// meaning: Pure black ink, the highest-contrast text colour.
|
|
104
154
|
--wui-ink: #000000;
|
|
105
155
|
|
|
106
156
|
// ---- Foreground ramp aliases -----------------------------------
|
|
@@ -108,28 +158,39 @@
|
|
|
108
158
|
// These point at the same hex values as --wui-text-* (kept as
|
|
109
159
|
// aliases rather than duplicated literals so a re-tune of the text
|
|
110
160
|
// ramp updates both sides at once).
|
|
161
|
+
/// meaning: Marketing alias of the primary body text ink.
|
|
111
162
|
--wui-fg-2: var(--wui-text-1);
|
|
163
|
+
/// meaning: Marketing alias of the secondary text ink.
|
|
112
164
|
--wui-fg-3: var(--wui-text-2);
|
|
165
|
+
/// meaning: Marketing alias of the tertiary text ink.
|
|
113
166
|
--wui-fg-4: var(--wui-text-3);
|
|
167
|
+
/// meaning: Marketing alias of the faintest text ink.
|
|
114
168
|
--wui-fg-5: var(--wui-text-5);
|
|
115
169
|
|
|
116
170
|
// ---- Neutral ramp ----------------------------------------------
|
|
117
171
|
// Used by table emphasis, dividers, and mega-menu hover surfaces.
|
|
172
|
+
/// meaning: Border tone of table emphasis rows and dividers.
|
|
118
173
|
--wui-neutral-border-dark: #EBEDF3;
|
|
174
|
+
/// meaning: Faintest border tone, for dividers.
|
|
119
175
|
--wui-neutral-border-light: #F9FBFC;
|
|
176
|
+
/// meaning: Muted background of table emphasis rows and mega-menu hover.
|
|
120
177
|
--wui-neutral-bg-dark: #F5F6FA;
|
|
178
|
+
/// meaning: Faint background for table emphasis and mega-menu hover.
|
|
121
179
|
--wui-neutral-bg-light: #F9FBFC;
|
|
122
180
|
|
|
123
181
|
// ---- Accent-dark -----------------------------------------------
|
|
124
182
|
// Darker primary for pressed/hover accents in CSS (not SCSS $link-hover).
|
|
125
183
|
// Aliased onto --wui-primary-pressed so a product that rebrands the pressed
|
|
126
184
|
// token once also updates this name (was a frozen indigo hex).
|
|
185
|
+
/// meaning: Pressed and hover accent colour in CSS, following the pressed primary.
|
|
127
186
|
--wui-accent-dark: var(--wui-primary-pressed);
|
|
128
187
|
|
|
129
188
|
// ---- Container width + responsive padding ----------------------
|
|
130
189
|
// The standalone design uses a 1512px max canvas with generous side
|
|
131
190
|
// padding that grows on wider viewports. Pair with .container-cloves.
|
|
191
|
+
/// meaning: Maximum width of the page container on every surface.
|
|
132
192
|
--wui-container-max: 1512px;
|
|
193
|
+
/// meaning: Side padding of the page container, growing on wider viewports.
|
|
133
194
|
--wui-container-pad: 24px;
|
|
134
195
|
|
|
135
196
|
// ---- Primary "on-fill" text --------------------------------------
|
|
@@ -139,6 +200,7 @@
|
|
|
139
200
|
// an active pagination page, a checked segmented option, .btn-primary's label.
|
|
140
201
|
// Derived from $primary (_variables.scss): white when it clears AA on the primary, near-black
|
|
141
202
|
// when the primary is too light for white. A runtime rebrand of --wui-primary sets it too.
|
|
203
|
+
/// meaning: Text and icon colour on a solid primary fill, such as a primary button label.
|
|
142
204
|
--wui-primary-text: #{wui-hex($wui-primary-text)};
|
|
143
205
|
|
|
144
206
|
// ---- Primary as text -----------------------------------------------
|
|
@@ -146,19 +208,28 @@
|
|
|
146
208
|
// its own soft tint (_variables.scss). Every link, tab label, page number, selected option and
|
|
147
209
|
// primary-coloured icon reads this, never --wui-primary, which is sized as a fill. Equal to
|
|
148
210
|
// --wui-primary when the primary already clears AA. A runtime rebrand of --wui-primary sets it too.
|
|
211
|
+
/// meaning: Primary as text and small glyphs on light surfaces, passing AA contrast.
|
|
149
212
|
--wui-primary-ink: #{wui-hex($wui-primary-ink)};
|
|
150
213
|
|
|
151
214
|
// ---- Semantic status ramps -------------------------------------
|
|
152
215
|
// Canonical info/success/warning/danger scales: `active` (text/icon on
|
|
153
216
|
// light), the base `100` (vivid fills/dots), then tints 50/30/20/10/5.
|
|
154
217
|
// Shared by the portal (aliased to --color-*) and marketing alerts/badges.
|
|
218
|
+
/// meaning: Info colour as text on light surfaces.
|
|
155
219
|
--wui-info-text: #1460ba;
|
|
220
|
+
/// meaning: Info ink for icons and active states on light surfaces.
|
|
156
221
|
--wui-info-active: #056EE9;
|
|
222
|
+
/// meaning: Vivid info fill for badges, dots and info buttons.
|
|
157
223
|
--wui-info: #056EE9;
|
|
224
|
+
/// meaning: Info tint 50 for borders and the strongest soft info fill.
|
|
158
225
|
--wui-info-50: #8DC2FF;
|
|
226
|
+
/// meaning: Info tint 30 for soft fills and borders of alerts and badges.
|
|
159
227
|
--wui-info-30: #BBDBFF;
|
|
228
|
+
/// meaning: Info tint 20 for soft fills behind info alerts and badges.
|
|
160
229
|
--wui-info-20: #D1E6FF;
|
|
230
|
+
/// meaning: Info tint 10, the soft background of info alerts and badges.
|
|
161
231
|
--wui-info-10: #E9F3FF;
|
|
232
|
+
/// meaning: Faintest info tint, for hover washes and soft info backgrounds.
|
|
162
233
|
--wui-info-5: #F3F9FF;
|
|
163
234
|
|
|
164
235
|
// `-text` variants exist because the status colours are FILLS. #E82646 and #04B440
|
|
@@ -166,27 +237,44 @@
|
|
|
166
237
|
// (4.4:1 and 2.8:1) — which is how a validation error message, of all things, came
|
|
167
238
|
// to be unreadable. Darkening the base tokens would change every red button and
|
|
168
239
|
// green badge in the system, so text gets its own value and the fills keep theirs.
|
|
240
|
+
/// meaning: Success colour as text on light surfaces, darkened to pass AA.
|
|
169
241
|
--wui-success-text: #0e7531;
|
|
170
242
|
// Deepened success fill for surfaces that carry WHITE text (progress-bar labels), mirroring
|
|
171
243
|
// --wui-danger-strong below. The brighter --wui-success/-active are far too light for white
|
|
172
244
|
// (2.78:1 / 2.78:1, under AA); this clears it (#0e7531 → 5.82:1). Keep white-on-success off
|
|
173
245
|
// the other tokens so buttons/badges keep the vibrant fill.
|
|
246
|
+
/// meaning: Deep success fill behind white text, such as progress-bar labels.
|
|
174
247
|
--wui-success-strong: #0e7531;
|
|
248
|
+
/// meaning: Active success fill, the deepest vivid success tone.
|
|
175
249
|
--wui-success-active: #04B440;
|
|
250
|
+
/// meaning: Vivid success fill for badges, dots and success buttons.
|
|
176
251
|
--wui-success: #04B440;
|
|
252
|
+
/// meaning: Success tint 50 for borders and the strongest soft success fill.
|
|
177
253
|
--wui-success-50: #8BE3A9;
|
|
254
|
+
/// meaning: Success tint 30 for soft fills and borders of alerts and badges.
|
|
178
255
|
--wui-success-30: #BAEECC;
|
|
256
|
+
/// meaning: Success tint 20 for soft fills behind success alerts and badges.
|
|
179
257
|
--wui-success-20: #D1F4DD;
|
|
258
|
+
/// meaning: Success tint 10, the soft background of success alerts and badges.
|
|
180
259
|
--wui-success-10: #E8FAEE;
|
|
260
|
+
/// meaning: Faintest success tint, for hover washes and soft success backgrounds.
|
|
181
261
|
--wui-success-5: #F3FCF6;
|
|
182
262
|
|
|
263
|
+
/// meaning: Warning colour as text on light surfaces, darkened to pass AA.
|
|
183
264
|
--wui-warning-text: #876100;
|
|
265
|
+
/// meaning: Active warning fill, the deepest vivid warning tone.
|
|
184
266
|
--wui-warning-active: #DFA000;
|
|
267
|
+
/// meaning: Vivid warning fill for badges, dots and warning buttons.
|
|
185
268
|
--wui-warning: #DFA000;
|
|
269
|
+
/// meaning: Warning tint 50 for borders and the strongest soft warning fill.
|
|
186
270
|
--wui-warning-50: #FBD880;
|
|
271
|
+
/// meaning: Warning tint 30 for soft fills and borders of alerts and badges.
|
|
187
272
|
--wui-warning-30: #FDE8B3;
|
|
273
|
+
/// meaning: Warning tint 20 for soft fills behind warning alerts and badges.
|
|
188
274
|
--wui-warning-20: #FDEFCC;
|
|
275
|
+
/// meaning: Warning tint 10, the soft background of warning alerts and badges.
|
|
189
276
|
--wui-warning-10: #FFF8E6;
|
|
277
|
+
/// meaning: Faintest warning tint, for hover washes and soft warning backgrounds.
|
|
190
278
|
--wui-warning-5: #FEFBF2;
|
|
191
279
|
|
|
192
280
|
// Error TEXT red. Shares the brand hue (350°) with --wui-danger-active (#E82646) but is
|
|
@@ -195,31 +283,48 @@
|
|
|
195
283
|
// #E82646 is only 3.81:1. Do NOT swap this back to --wui-danger-active: that has been tried
|
|
196
284
|
// three times and each time the a11y gate rejected the release. The brand red stays in use
|
|
197
285
|
// for non-text danger (fills, borders, icons), which carry a 3:1 floor instead.
|
|
286
|
+
/// meaning: Error text colour for validation messages and danger text on light surfaces.
|
|
198
287
|
--wui-danger-text: #CF1735;
|
|
199
288
|
// Deepened danger fill for surfaces that carry WHITE text (btn-danger). The brighter
|
|
200
289
|
// --wui-danger/-active below are too light for white (3.86:1 / 4.38:1, under AA); these
|
|
201
290
|
// clear it — #C81340 → 5.80:1, hover → higher. Keep white-on-danger off the other tokens.
|
|
291
|
+
/// meaning: Deep danger fill behind white text, such as the danger button.
|
|
202
292
|
--wui-danger-strong: #C81340;
|
|
293
|
+
/// meaning: Deep danger fill while a danger button with white text is hovered.
|
|
203
294
|
--wui-danger-strong-hover: #AB1036;
|
|
295
|
+
/// meaning: Active danger fill, the deepest vivid danger tone.
|
|
204
296
|
--wui-danger-active: #E82646;
|
|
297
|
+
/// meaning: Vivid danger fill for badges, dots and danger buttons.
|
|
205
298
|
--wui-danger: #E82646;
|
|
299
|
+
/// meaning: Danger tint 50 for borders and the strongest soft danger fill.
|
|
206
300
|
--wui-danger-50: #FC94AD;
|
|
301
|
+
/// meaning: Danger tint 30 for soft fills and borders of alerts and badges.
|
|
207
302
|
--wui-danger-30: #FDBFCE;
|
|
303
|
+
/// meaning: Danger tint 20 for soft fills behind danger alerts and badges.
|
|
208
304
|
--wui-danger-20: #FED4DE;
|
|
305
|
+
/// meaning: Danger tint 10, the soft background of danger alerts and badges.
|
|
209
306
|
--wui-danger-10: #FFEAEF;
|
|
307
|
+
/// meaning: Faintest danger tint, for hover washes and soft danger backgrounds.
|
|
210
308
|
--wui-danger-5: #FEF4F6;
|
|
211
309
|
|
|
212
310
|
// Corner radii (DESIGN.md scale) — portal aliases as --radius-*
|
|
311
|
+
/// meaning: Small step of the corner radius scale.
|
|
213
312
|
--wui-radius-sm: 8px;
|
|
313
|
+
/// meaning: Default step of the corner radius scale.
|
|
214
314
|
--wui-radius: 10px;
|
|
315
|
+
/// meaning: Large step of the corner radius scale.
|
|
215
316
|
--wui-radius-lg: 14px;
|
|
317
|
+
/// meaning: Extra-large step of the corner radius scale.
|
|
216
318
|
--wui-radius-xl: 16px;
|
|
217
319
|
|
|
218
320
|
// Field (input/select/datepicker/…) radius — a flat 8px corner across every
|
|
219
321
|
// size, for a crisp plain-rounded field (no squircle). Change here to restyle
|
|
220
322
|
// every field's corner at once.
|
|
323
|
+
/// meaning: Corner radius of every input-like control.
|
|
221
324
|
--wui-field-radius: 8px;
|
|
325
|
+
/// meaning: Corner radius of a small input-like control.
|
|
222
326
|
--wui-field-radius-sm: 8px;
|
|
327
|
+
/// meaning: Corner radius of a large input-like control.
|
|
223
328
|
--wui-field-radius-lg: 8px;
|
|
224
329
|
|
|
225
330
|
// ---- Chart colours ---------------------------------------------------
|
|
@@ -227,79 +332,135 @@
|
|
|
227
332
|
// primary, so a product's rebrand reaches its charts; 2 to 8 were checked against it for
|
|
228
333
|
// colour-blind separation (worst neighbouring pair ΔE 9.1). Aqua, yellow and pink sit under
|
|
229
334
|
// 3:1 on white, which is why every chart also has a legend and a data table.
|
|
335
|
+
/// meaning: Colour of chart series 1, the brand primary.
|
|
230
336
|
--wui-chart-1: var(--wui-primary);
|
|
337
|
+
/// meaning: Colour of chart series 2 of the eight categorical series.
|
|
231
338
|
--wui-chart-2: #eb6834;
|
|
339
|
+
/// meaning: Colour of chart series 3 of the eight categorical series.
|
|
232
340
|
--wui-chart-3: #1baf7a;
|
|
341
|
+
/// meaning: Colour of chart series 4 of the eight categorical series.
|
|
233
342
|
--wui-chart-4: #eda100;
|
|
343
|
+
/// meaning: Colour of chart series 5 of the eight categorical series.
|
|
234
344
|
--wui-chart-5: #e87ba4;
|
|
345
|
+
/// meaning: Colour of chart series 6 of the eight categorical series.
|
|
235
346
|
--wui-chart-6: #008300;
|
|
347
|
+
/// meaning: Colour of chart series 7 of the eight categorical series.
|
|
236
348
|
--wui-chart-7: #2a78d6;
|
|
349
|
+
/// meaning: Colour of chart series 8 of the eight categorical series.
|
|
237
350
|
--wui-chart-8: #e34948;
|
|
238
351
|
// One-hue ramp for magnitude (heatmap cells, calendar days), faint to strong, on the primary.
|
|
352
|
+
/// meaning: Faintest step of the magnitude ramp, for empty heatmap and calendar cells.
|
|
239
353
|
--wui-chart-seq-0: var(--wui-bg-muted);
|
|
354
|
+
/// meaning: First step of the one-hue magnitude ramp for heatmap and calendar cells.
|
|
240
355
|
--wui-chart-seq-1: var(--wui-primary-10);
|
|
356
|
+
/// meaning: Second step of the one-hue magnitude ramp for heatmap and calendar cells.
|
|
241
357
|
--wui-chart-seq-2: var(--wui-primary-20);
|
|
358
|
+
/// meaning: Third step of the one-hue magnitude ramp for heatmap and calendar cells.
|
|
242
359
|
--wui-chart-seq-3: var(--wui-primary-30);
|
|
360
|
+
/// meaning: Fourth step of the one-hue magnitude ramp for heatmap and calendar cells.
|
|
243
361
|
--wui-chart-seq-4: var(--wui-primary-50);
|
|
362
|
+
/// meaning: Fifth step of the one-hue magnitude ramp for heatmap and calendar cells.
|
|
244
363
|
--wui-chart-seq-5: var(--wui-primary-hover);
|
|
364
|
+
/// meaning: Strongest step of the one-hue magnitude ramp for heatmap and calendar cells.
|
|
245
365
|
--wui-chart-seq-6: var(--wui-primary-pressed);
|
|
246
366
|
// Below and above a midpoint (variance, change against a target), with a grey middle.
|
|
367
|
+
/// meaning: Colour of values below the midpoint in a diverging chart.
|
|
247
368
|
--wui-chart-diverging-low: #e34948;
|
|
369
|
+
/// meaning: Neutral midpoint colour of a diverging chart.
|
|
248
370
|
--wui-chart-diverging-mid: #c4cada;
|
|
371
|
+
/// meaning: Colour of values above the midpoint in a diverging chart.
|
|
249
372
|
--wui-chart-diverging-high: #2a78d6;
|
|
250
373
|
// A context series (last period) and a donut's folded Other slice.
|
|
374
|
+
/// meaning: Context series colour, such as the last period, and the folded Other slice.
|
|
251
375
|
--wui-chart-neutral: #99a1b7;
|
|
252
376
|
// Ink: gridlines, the axis line, and tick and legend text. Aliases, so dark follows --color-*.
|
|
377
|
+
/// meaning: Gridline colour of charts.
|
|
253
378
|
--wui-chart-grid: var(--color-border);
|
|
379
|
+
/// meaning: Axis line colour of charts.
|
|
254
380
|
--wui-chart-axis: var(--color-border-strong);
|
|
381
|
+
/// meaning: Tick and legend text colour of charts.
|
|
255
382
|
--wui-chart-label: var(--color-text-subtle);
|
|
256
383
|
|
|
257
384
|
// ---- Portal dark palette ----------------------------------------
|
|
258
385
|
// Marketing stays light. Portal flips [data-theme="dark"] and maps
|
|
259
386
|
// --color-* aliases onto these so dark hexes live in theme/, not the app.
|
|
387
|
+
/// meaning: Dark page background, the base of every dark-mode surface.
|
|
260
388
|
--wui-dark-bg-page: #0f1117;
|
|
389
|
+
/// meaning: Subtle dark background, one step off the dark page.
|
|
261
390
|
--wui-dark-bg-elevated: #0d0f15;
|
|
391
|
+
/// meaning: Dark muted fill for grouped areas and quiet controls.
|
|
262
392
|
--wui-dark-bg-muted: #232733;
|
|
393
|
+
/// meaning: Dark card and panel surface, one step above the dark page.
|
|
263
394
|
--wui-dark-bg-surface: #181b23;
|
|
395
|
+
/// meaning: Dark hairline border of cards, tables and dividers.
|
|
264
396
|
--wui-dark-border: #2a2f3a;
|
|
397
|
+
/// meaning: Stronger dark border for emphasised separators.
|
|
265
398
|
--wui-dark-border-strong:#3a414f;
|
|
266
399
|
// Field borders on the dark fills: the dark border and strong border values.
|
|
400
|
+
/// meaning: Resting border of input-like controls in dark mode.
|
|
267
401
|
--wui-dark-field-border: #2a2f3a;
|
|
402
|
+
/// meaning: Hover border of input-like controls in dark mode.
|
|
268
403
|
--wui-dark-field-border-hover: #3a414f;
|
|
269
404
|
// Lighter than the dark page, surface and muted fill, so the empty track shows on all three.
|
|
405
|
+
/// meaning: Unfilled track of a progress bar or meter in dark mode.
|
|
270
406
|
--wui-dark-progress-track: #323845;
|
|
407
|
+
/// meaning: Primary body text colour in dark mode.
|
|
271
408
|
--wui-dark-text: #e6e8ee;
|
|
409
|
+
/// meaning: Secondary text colour in dark mode.
|
|
272
410
|
--wui-dark-text-muted: #b4b9c6;
|
|
411
|
+
/// meaning: Tertiary text colour in dark mode, for hints and captions.
|
|
273
412
|
--wui-dark-text-subtle: #8a90a0;
|
|
274
413
|
// Primary as TEXT, rings and focus borders, and as the fill under near-black ink: the brand
|
|
275
414
|
// primary lifted until it clears 4.5:1 on every dark surface and tint (_variables.scss), so a
|
|
276
415
|
// brand set with wui-brand-primary reaches dark mode. A runtime override must clear the same.
|
|
416
|
+
/// meaning: Primary as text, rings, focus borders and the fill under dark ink in dark mode.
|
|
277
417
|
--wui-dark-primary: #{wui-hex($wui-dark-primary)};
|
|
418
|
+
/// meaning: Primary fill while it is hovered in dark mode.
|
|
278
419
|
--wui-dark-primary-hover: #{wui-hex($wui-dark-primary-hover)};
|
|
279
420
|
|
|
280
421
|
// Dark mode shadow remaps — lighter shadows (white ink) for visibility on dark surfaces.
|
|
422
|
+
/// meaning: Slider thumb shadow in dark mode, drawn with light ink.
|
|
281
423
|
--wui-dark-shadow-thumb: 0 2px 6px rgba(255, 255, 255, 0.1);
|
|
424
|
+
/// meaning: Slider thumb shadow while it is hovered in dark mode.
|
|
282
425
|
--wui-dark-shadow-thumb-hover: 0 2px 12px rgba(255, 255, 255, 0.2);
|
|
283
426
|
|
|
284
427
|
// Dark chart colours, mapped onto --wui-chart-* by the dark theme (_wui-aliases.scss); slot 1
|
|
285
428
|
// follows --wui-dark-primary. The series set clears 3:1 on the dark page colour.
|
|
429
|
+
/// meaning: Dark-mode colour of chart series 2 of the categorical set.
|
|
286
430
|
--wui-dark-chart-2: #d95926;
|
|
431
|
+
/// meaning: Dark-mode colour of chart series 3 of the categorical set.
|
|
287
432
|
--wui-dark-chart-3: #199e70;
|
|
433
|
+
/// meaning: Dark-mode colour of chart series 4 of the categorical set.
|
|
288
434
|
--wui-dark-chart-4: #c98500;
|
|
435
|
+
/// meaning: Dark-mode colour of chart series 5 of the categorical set.
|
|
289
436
|
--wui-dark-chart-5: #d55181;
|
|
437
|
+
/// meaning: Dark-mode colour of chart series 6 of the categorical set.
|
|
290
438
|
--wui-dark-chart-6: #008300;
|
|
439
|
+
/// meaning: Dark-mode colour of chart series 7 of the categorical set.
|
|
291
440
|
--wui-dark-chart-7: #3987e5;
|
|
441
|
+
/// meaning: Dark-mode colour of chart series 8 of the categorical set.
|
|
292
442
|
--wui-dark-chart-8: #e66767;
|
|
443
|
+
/// meaning: Dark-mode faintest step of the magnitude ramp, for empty heatmap cells.
|
|
293
444
|
--wui-dark-chart-seq-0: #20242f;
|
|
445
|
+
/// meaning: Dark-mode first step of the magnitude ramp for heatmap and calendar cells.
|
|
294
446
|
--wui-dark-chart-seq-1: #262c45;
|
|
447
|
+
/// meaning: Dark-mode second step of the magnitude ramp for heatmap and calendar cells.
|
|
295
448
|
--wui-dark-chart-seq-2: #2f3a70;
|
|
449
|
+
/// meaning: Dark-mode third step of the magnitude ramp for heatmap and calendar cells.
|
|
296
450
|
--wui-dark-chart-seq-3: #3b4ba0;
|
|
451
|
+
/// meaning: Dark-mode fourth step of the magnitude ramp for heatmap and calendar cells.
|
|
297
452
|
--wui-dark-chart-seq-4: #5168d2;
|
|
453
|
+
/// meaning: Dark-mode fifth step of the magnitude ramp for heatmap and calendar cells.
|
|
298
454
|
--wui-dark-chart-seq-5: #7a90ef;
|
|
455
|
+
/// meaning: Dark-mode strongest step of the magnitude ramp for heatmap and calendar cells.
|
|
299
456
|
--wui-dark-chart-seq-6: #b3c1f7;
|
|
457
|
+
/// meaning: Dark-mode colour of values below the midpoint in a diverging chart.
|
|
300
458
|
--wui-dark-chart-diverging-low: #e66767;
|
|
459
|
+
/// meaning: Dark-mode neutral midpoint colour of a diverging chart.
|
|
301
460
|
--wui-dark-chart-diverging-mid: #3a414f;
|
|
461
|
+
/// meaning: Dark-mode colour of values above the midpoint in a diverging chart.
|
|
302
462
|
--wui-dark-chart-diverging-high: #3987e5;
|
|
463
|
+
/// meaning: Dark-mode context series colour, such as the last period.
|
|
303
464
|
--wui-dark-chart-neutral: #5d6475;
|
|
304
465
|
|
|
305
466
|
// ---- Fluid type scale --------------------------------------------
|
|
@@ -307,12 +468,19 @@
|
|
|
307
468
|
// stepping at Bootstrap's breakpoints. `base` sits close to Bootstrap's own 1rem body
|
|
308
469
|
// size; every other step is derived at a consistent ratio, up and down. Additive only —
|
|
309
470
|
// nothing in the shared theme consumes these yet, a product opts in per element.
|
|
471
|
+
/// meaning: Extra-small step of the fluid type scale; a product opts in per element.
|
|
310
472
|
--wui-fs-xs: clamp(0.75rem, 0.73rem + 0.1vw, 0.8125rem);
|
|
473
|
+
/// meaning: Small step of the fluid type scale; a product opts in per element.
|
|
311
474
|
--wui-fs-sm: clamp(0.8125rem, 0.79rem + 0.12vw, 0.875rem);
|
|
475
|
+
/// meaning: Body-size step of the fluid type scale, close to Bootstrap's 1rem.
|
|
312
476
|
--wui-fs-base: clamp(0.95rem, 0.9rem + 0.25vw, 1.05rem);
|
|
477
|
+
/// meaning: Large step of the fluid type scale; a product opts in per element.
|
|
313
478
|
--wui-fs-lg: clamp(1.05rem, 0.98rem + 0.35vw, 1.25rem);
|
|
479
|
+
/// meaning: Extra-large step of the fluid type scale; a product opts in per element.
|
|
314
480
|
--wui-fs-xl: clamp(1.25rem, 1.15rem + 0.5vw, 1.5rem);
|
|
481
|
+
/// meaning: Double extra-large step of the fluid type scale; a product opts in per element.
|
|
315
482
|
--wui-fs-2xl: clamp(1.5rem, 1.3rem + 1vw, 2rem);
|
|
483
|
+
/// meaning: Triple extra-large step of the fluid type scale; a product opts in per element.
|
|
316
484
|
--wui-fs-3xl: clamp(1.875rem, 1.5rem + 1.75vw, 2.75rem);
|
|
317
485
|
|
|
318
486
|
// ---- Font stacks ---------------------------------------------------
|
|
@@ -324,6 +492,7 @@
|
|
|
324
492
|
// $font-family-base so a product can point ONLY its display headings (.h-display) at a
|
|
325
493
|
// serif or another brand face by overriding this one token, without touching body copy.
|
|
326
494
|
// Defaults to Webority Serif ($font-family-display).
|
|
495
|
+
/// meaning: Display typeface for headings marked as display text.
|
|
327
496
|
--wui-font-display: #{$font-family-display};
|
|
328
497
|
|
|
329
498
|
// ---- Z-index scale -------------------------------------------------
|
|
@@ -336,26 +505,41 @@
|
|
|
336
505
|
// (select / date / phone / infotip) sit at 1600 so a combobox inside a modal
|
|
337
506
|
// is not trapped under the dialog. Never invent a third number in component CSS —
|
|
338
507
|
// pick a rung from this list.
|
|
508
|
+
/// meaning: Stacking layer of in-page dropdown menus.
|
|
339
509
|
--wui-z-dropdown: 1000;
|
|
510
|
+
/// meaning: Stacking layer of sticky page chrome such as headers.
|
|
340
511
|
--wui-z-sticky: 1020;
|
|
341
512
|
// Desktop shell sidebar: its overflowing menus (the workspace switcher) paint over sticky page
|
|
342
513
|
// content, while the fixed corner layers (consent banner, floating buttons) still cover it.
|
|
514
|
+
/// meaning: Stacking layer of the desktop shell sidebar and its overflowing menus.
|
|
343
515
|
--wui-z-shell-sidebar: 1025;
|
|
516
|
+
/// meaning: Stacking layer of fixed corner layers such as the consent banner.
|
|
344
517
|
--wui-z-fixed: 1030;
|
|
518
|
+
/// meaning: Stacking layer of the app shell base chrome and the splash.
|
|
345
519
|
--wui-z-shell: 1040; // splash, shell base chrome
|
|
520
|
+
/// meaning: Stacking layer of the dim behind the mobile drawer.
|
|
346
521
|
--wui-z-shell-scrim: 1044; // mobile drawer scrim
|
|
522
|
+
/// meaning: Stacking layer of the mobile sidebar drawer.
|
|
347
523
|
--wui-z-shell-drawer: 1045; // mobile sidebar drawer
|
|
524
|
+
/// meaning: Stacking layer of the dim behind a modal dialog.
|
|
348
525
|
--wui-z-modal-backdrop: 1500;
|
|
526
|
+
/// meaning: Stacking layer of a modal dialog above its backdrop.
|
|
349
527
|
--wui-z-modal: 1505;
|
|
528
|
+
/// meaning: Stacking layer of the product tour, above modals and below menus.
|
|
350
529
|
--wui-z-tour: 1550; // product tour: above a modal, below menus and popovers
|
|
530
|
+
/// meaning: Stacking layer of portalled select, date and phone menus and info tips.
|
|
351
531
|
--wui-z-menu: 1600; // portalled select/date/phone menus + infotip
|
|
532
|
+
/// meaning: Stacking layer of popovers, on the same rung as menus.
|
|
352
533
|
--wui-z-popover: 1600; // same rung as --wui-z-menu (above modal)
|
|
534
|
+
/// meaning: Stacking layer of tooltips, above menus and popovers.
|
|
353
535
|
--wui-z-tooltip: 1650;
|
|
536
|
+
/// meaning: Stacking layer of toast notifications, the topmost layer.
|
|
354
537
|
--wui-z-toast: 1700;
|
|
355
538
|
|
|
356
539
|
// The weekday every calendar's week starts on: the date picker, the date range and the event
|
|
357
540
|
// calendar. 0 = Sunday, 1 = Monday, through 6 = Saturday. A product sets it once here, a page or
|
|
358
541
|
// a section can set it on an ancestor, and a control's own first-day attribute wins over both.
|
|
542
|
+
/// meaning: Weekday calendars start their week on, from 0 for Sunday to 6 for Saturday.
|
|
359
543
|
--wui-first-day: 1;
|
|
360
544
|
}
|
|
361
545
|
|