@rolemodel/optics 1.13.1 → 2.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (50) hide show
  1. package/.github/workflows/linting.yml +0 -2
  2. package/.stylelintrc.json +9 -9
  3. package/.yarn/install-state.gz +0 -0
  4. package/LICENSE +1 -1
  5. package/NEW_COMPONENT.md +23 -33
  6. package/README.md +9 -11
  7. package/build_token_json.js +1 -6
  8. package/dist/{scss → css}/components/accordion.css +26 -0
  9. package/dist/{scss → css}/components/form.css +1 -1
  10. package/dist/{scss → css}/components/sidebar.css +1 -1
  11. package/dist/{scss → css}/core/tokens/base_tokens.css +1 -0
  12. package/dist/css/optics.css +10 -4612
  13. package/dist/css/optics.min.css +4934 -0
  14. package/package.json +20 -25
  15. package/postcss.config.js +3 -0
  16. package/dist/css/optics.css.map +0 -1
  17. package/dist/scss/optics.scss +0 -13
  18. package/public/design-tokens.source.json +0 -1
  19. /package/dist/{scss → css}/addons/panel.css +0 -0
  20. /package/dist/{scss → css}/addons/tom-select.css +0 -0
  21. /package/dist/{scss → css}/components/alert.css +0 -0
  22. /package/dist/{scss → css}/components/avatar.css +0 -0
  23. /package/dist/{scss → css}/components/badge.css +0 -0
  24. /package/dist/{scss → css}/components/breadcrumbs.css +0 -0
  25. /package/dist/{scss → css}/components/button.css +0 -0
  26. /package/dist/{scss → css}/components/button_group.css +0 -0
  27. /package/dist/{scss → css}/components/card.css +0 -0
  28. /package/dist/{scss → css}/components/confirm-dialog.css +0 -0
  29. /package/dist/{scss → css}/components/divider.css +0 -0
  30. /package/dist/{scss → css}/components/icon.css +0 -0
  31. /package/dist/{scss/components/index.scss → css/components/index.css} +0 -0
  32. /package/dist/{scss → css}/components/modal.css +0 -0
  33. /package/dist/{scss → css}/components/navbar.css +0 -0
  34. /package/dist/{scss → css}/components/pagination.css +0 -0
  35. /package/dist/{scss → css}/components/side_panel.css +0 -0
  36. /package/dist/{scss → css}/components/spinner.css +0 -0
  37. /package/dist/{scss → css}/components/switch.css +0 -0
  38. /package/dist/{scss → css}/components/tab.css +0 -0
  39. /package/dist/{scss → css}/components/table.css +0 -0
  40. /package/dist/{scss → css}/components/tag.css +0 -0
  41. /package/dist/{scss → css}/components/text_pair.css +0 -0
  42. /package/dist/{scss → css}/components/tooltip.css +0 -0
  43. /package/dist/{scss → css}/core/base.css +0 -0
  44. /package/dist/{scss → css}/core/layout.css +0 -0
  45. /package/dist/{scss/core/tokens/index.scss → css/core/tokens/index.css} +0 -0
  46. /package/dist/{scss → css}/core/tokens/scale_color_tokens.css +0 -0
  47. /package/dist/{scss → css}/core/utilities.css +0 -0
  48. /package/dist/{scss → css}/recipes/16six-sidebar.css +0 -0
  49. /package/dist/{scss → css}/recipes/aligned-header.css +0 -0
  50. /package/dist/{scss → css}/recipes/domains-sidebar.css +0 -0
@@ -0,0 +1,4934 @@
1
+ @import 'https://fonts.googleapis.com/css2?family=Noto+Sans:ital,wdth,wght@0,62.5..100,100..900;1,62.5..100,100..900&family=Noto+Serif:ital,wdth,wght@0,62.5..100,100..900;1,62.5..100,100..900&display=swap';
2
+ @import 'https://fonts.googleapis.com/css2?family=Material+Symbols+Outlined:opsz,wght,FILL,GRAD@20..48,100..700,0..1,-50..200&display=block';
3
+ /* Third party Vendors */
4
+ /* Box sizing rules */
5
+ *,
6
+ *::before,
7
+ *::after {
8
+ box-sizing: border-box;
9
+ }
10
+ /* Remove default margin */
11
+ body,
12
+ h1,
13
+ h2,
14
+ h3,
15
+ h4,
16
+ p,
17
+ figure,
18
+ blockquote,
19
+ dl,
20
+ dd {
21
+ margin: 0;
22
+ }
23
+ /* Remove list styles on ul, ol elements with a list role, which suggests default styling will be removed */
24
+ ul[role="list"],
25
+ ol[role="list"] {
26
+ list-style: none;
27
+ }
28
+ /* Set core root defaults */
29
+ html:focus-within {
30
+ scroll-behavior: smooth;
31
+ }
32
+ /* Set core body defaults */
33
+ body {
34
+ min-height: 100vh;
35
+ text-rendering: optimizeSpeed;
36
+ line-height: 1.5;
37
+ }
38
+ /* A elements that don't have a class get default styles */
39
+ a:not([class]) {
40
+ text-decoration-skip-ink: auto;
41
+ }
42
+ /* Make images easier to work with */
43
+ img,
44
+ picture {
45
+ max-width: 100%;
46
+ display: block;
47
+ }
48
+ /* Inherit fonts for inputs and buttons */
49
+ input,
50
+ button,
51
+ textarea,
52
+ select {
53
+ font: inherit;
54
+ }
55
+ /* Remove all animations and transitions for people that prefer not to see them */
56
+ @media (prefers-reduced-motion: reduce) {
57
+ html:focus-within {
58
+ scroll-behavior: auto;
59
+ }
60
+ *,
61
+ *::before,
62
+ *::after {
63
+ animation-duration: 0.01ms !important;
64
+ animation-iteration-count: 1 !important;
65
+ transition-duration: 0.01ms !important;
66
+ scroll-behavior: auto !important;
67
+ }
68
+ }
69
+ /* Tokens */
70
+ /*
71
+ Noto Sans supports:
72
+ font-weight: {anything between 100 and 900}
73
+ font-stretch: {anything between 62.5% and 100%}
74
+ font-style: {normal or italic}
75
+ */
76
+ /*
77
+ Noto Serif supports:
78
+ font-weight: {anything between 100 and 900}
79
+ font-stretch: {anything between 62.5% and 100%}
80
+ font-style: {normal or italic}
81
+ */
82
+ :root {
83
+ /* Color HSLs
84
+ A theme comprised of a primary, neutral, warning, danger, info, and notice colors.
85
+ */
86
+
87
+ /* Basic Colors */
88
+
89
+ /**
90
+ * @tokens Basic Colors
91
+ * @presenter Color
92
+ */
93
+ --op-color-white: hsl(0deg 100% 100%);
94
+ --op-color-black: hsl(0deg 0% 0%);
95
+
96
+ /**
97
+ * @tokens Primary Colors
98
+ * @presenter Color
99
+ */
100
+ --op-color-primary-h: 216;
101
+ --op-color-primary-s: 58%;
102
+ --op-color-primary-l: 48%;
103
+
104
+ /**
105
+ * @tokens Neutral Colors
106
+ * @presenter Color
107
+ */
108
+ --op-color-neutral-h: var(--op-color-primary-h);
109
+ --op-color-neutral-s: 4%;
110
+ --op-color-neutral-l: var(--op-color-primary-l);
111
+
112
+ /**
113
+ * @tokens Alerts Warning Colors
114
+ * @presenter Color
115
+ */
116
+ --op-color-alerts-warning-h: 47;
117
+ --op-color-alerts-warning-s: 100%;
118
+ --op-color-alerts-warning-l: 61%;
119
+
120
+ /**
121
+ * @tokens Alerts Danger Colors
122
+ * @presenter Color
123
+ */
124
+ --op-color-alerts-danger-h: 0;
125
+ --op-color-alerts-danger-s: 99%;
126
+ --op-color-alerts-danger-l: 76%;
127
+
128
+ /**
129
+ * @tokens Alerts Info Colors
130
+ * @presenter Color
131
+ */
132
+ --op-color-alerts-info-h: 216;
133
+ --op-color-alerts-info-s: 58%;
134
+ --op-color-alerts-info-l: 48%;
135
+
136
+ /**
137
+ * @tokens Alerts Notice Colors
138
+ * @presenter Color
139
+ */
140
+ --op-color-alerts-notice-h: 130;
141
+ --op-color-alerts-notice-s: 61%;
142
+ --op-color-alerts-notice-l: 64%;
143
+
144
+ /**
145
+ * @tokens Opacities
146
+ * @presenter Opacity
147
+ */
148
+ --op-opacity-none: 0;
149
+ --op-opacity-overlay: 0.2;
150
+ --op-opacity-disabled: 0.4;
151
+ --op-opacity-half: 0.5;
152
+ --op-opacity-full: 1;
153
+
154
+ /*
155
+ Breakpoints
156
+ CSS does not support using variables within @media or @container queries. Environment variables are drafted but likely to not be implemented soon.
157
+ https://drafts.csswg.org/css-env-1/
158
+ https://bholmes.dev/blog/alternative-to-css-variable-media-queries/
159
+
160
+ Here is a list of breakpoints used throughout Optics:
161
+ */
162
+
163
+ /**
164
+ * @tokens Breakpoints
165
+ * @presenter Spacing
166
+ */
167
+ --op-breakpoint-x-small: 512px; /* vertical phone */
168
+ --op-breakpoint-small: 768px; /* vertical ipad */
169
+ --op-breakpoint-medium: 1024px; /* landscape ipad */
170
+ --op-breakpoint-large: 1280px; /* small laptop */
171
+ --op-breakpoint-x-large: 1440px; /* medium laptop */
172
+
173
+ /* Border */
174
+
175
+ /**
176
+ * @tokens Border Radius
177
+ * @presenter BorderRadius
178
+ */
179
+ --op-radius-small: 2px;
180
+ --op-radius-medium: 4px;
181
+ --op-radius-large: 8px;
182
+ --op-radius-x-large: 12px;
183
+ --op-radius-2x-large: 16px;
184
+ --op-radius-circle: 50%;
185
+ --op-radius-pill: 9999px;
186
+
187
+ /**
188
+ * @tokens Border Width
189
+ * @presenter Spacing
190
+ */
191
+ --op-border-width: 1px;
192
+ --op-border-width-large: 2px;
193
+ --op-border-width-x-large: 4px;
194
+
195
+ /**
196
+ * @tokens Border Color
197
+ * @presenter Color
198
+ */
199
+ --op-color-border: var(--op-color-neutral-plus-five);
200
+
201
+ /* E.G. box-shadow: var(--op-border-top) var(--op-color-border); */
202
+
203
+ /**
204
+ * @tokens Border Shadow
205
+ * @presenter Shadow
206
+ */
207
+ --op-border-none: 0 0 0 0;
208
+ --op-border-all: 0 0 0 var(--op-border-width);
209
+ --op-border-top: 0 calc(-1 * var(--op-border-width)) 0 0;
210
+ --op-border-right: var(--op-border-width) 0 0 0;
211
+ --op-border-bottom: 0 var(--op-border-width) 0 0;
212
+ --op-border-left: calc(-1 * var(--op-border-width)) 0 0 0;
213
+ --op-border-y: var(--op-border-top) var(--op-color-border), var(--op-border-bottom) var(--op-color-border);
214
+ --op-border-x: var(--op-border-left) var(--op-color-border), var(--op-border-right) var(--op-color-border);
215
+
216
+ /* Font */
217
+
218
+ /**
219
+ * @tokens Font Scale
220
+ * @presenter FontSize
221
+ */
222
+ --op-font-scale-unit: 1rem; /* 10px; */
223
+ --op-font-2x-small: calc(var(--op-font-scale-unit) * 1); /* 10px */
224
+ --op-font-x-small: calc(var(--op-font-scale-unit) * 1.2); /* 12px */
225
+ --op-font-small: calc(var(--op-font-scale-unit) * 1.4); /* 14px */
226
+ --op-font-medium: calc(var(--op-font-scale-unit) * 1.6); /* 16px */
227
+ --op-font-large: calc(var(--op-font-scale-unit) * 1.8); /* 18px */
228
+ --op-font-x-large: calc(var(--op-font-scale-unit) * 2); /* 20px */
229
+ --op-font-2x-large: calc(var(--op-font-scale-unit) * 2.4); /* 24px */
230
+ --op-font-3x-large: calc(var(--op-font-scale-unit) * 2.8); /* 28px */
231
+ --op-font-4x-large: calc(var(--op-font-scale-unit) * 3.2); /* 32px */
232
+ --op-font-5x-large: calc(var(--op-font-scale-unit) * 3.6); /* 36px */
233
+ --op-font-6x-large: calc(var(--op-font-scale-unit) * 4.8); /* 48px */
234
+
235
+ /**
236
+ * @tokens Font Weight
237
+ * @presenter FontWeight
238
+ */
239
+ --op-font-weight-thin: 100;
240
+ --op-font-weight-extra-light: 200;
241
+ --op-font-weight-light: 300;
242
+ --op-font-weight-normal: 400;
243
+ --op-font-weight-medium: 500;
244
+ --op-font-weight-semi-bold: 600;
245
+ --op-font-weight-bold: 700;
246
+ --op-font-weight-extra-bold: 800;
247
+ --op-font-weight-black: 900;
248
+
249
+ /**
250
+ * @tokens Font Family
251
+ * @presenter FontFamily
252
+ */
253
+ --op-font-family: 'Noto Sans', sans-serif;
254
+ --op-font-family-alt: 'Noto Serif', serif;
255
+
256
+ /* Text */
257
+
258
+ /**
259
+ * @tokens Line Height
260
+ * @presenter LineHeight
261
+ */
262
+ --op-line-height-none: 0;
263
+ --op-line-height-densest: 1;
264
+ --op-line-height-denser: 1.15;
265
+ --op-line-height-dense: 1.3;
266
+ --op-line-height-base: 1.5;
267
+ --op-line-height-loose: 1.6;
268
+ --op-line-height-looser: 1.7;
269
+ --op-line-height-loosest: 1.8;
270
+
271
+ /**
272
+ * @tokens Letter Spacing
273
+ * @presenter LetterSpacing
274
+ */
275
+ --op-letter-spacing-navigation: 0.01rem;
276
+ --op-letter-spacing-label: 0.04rem;
277
+
278
+ /* Transitions and Animations */
279
+
280
+ /**
281
+ * @tokens Transition
282
+ */
283
+ --op-transition-accordion: rotate 120ms ease-in;
284
+ --op-transition-accordion-content: height 300ms ease, content-visibility 300ms ease allow-discrete;
285
+ --op-transition-input: all 120ms ease-in;
286
+ --op-transition-sidebar: all 200ms ease-in-out;
287
+ --op-transition-modal: all 300ms ease-in;
288
+ --op-transition-panel: right 400ms ease-in;
289
+ --op-transition-tooltip: all 300ms ease-in 300ms;
290
+
291
+ /**
292
+ * @tokens Animation
293
+ * @presenter Animation
294
+ */
295
+ --op-animation-flash: rm-slide-in-out-flash 5s normal forwards;
296
+
297
+ /* Encoded Images */
298
+
299
+ /**
300
+ * @tokens Encoded Images
301
+ */
302
+ --op-encoded-images-dropdown-arrow-width: calc(
303
+ 1.2 * var(--op-space-scale-unit)
304
+ ); /* 12px No way to string interpolate */
305
+
306
+ --op-encoded-images-dropdown-arrow: url('data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTIiIGhlaWdodD0iOSIgdmlld0JveD0iMCAwIDEyIDkiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+CjxwYXRoIGQ9Ik02IDguMzc1MDFMMCAyLjM3NTAxTDEuNCAwLjk3NTAwNkw2IDUuNTc1MDFMMTAuNiAwLjk3NTAwNkwxMiAyLjM3NTAxTDYgOC4zNzUwMVoiIGZpbGw9IiMwQTBBMEIiLz4KPC9zdmc+Cg==');
307
+
308
+ /* Spacing */
309
+
310
+ /**
311
+ * @tokens Size Scale
312
+ * @presenter Spacing
313
+ */
314
+ --op-size-unit: 0.4rem; /* 4px */
315
+
316
+ /**
317
+ * @tokens Space Scale
318
+ * @presenter Spacing
319
+ */
320
+ --op-space-scale-unit: 1rem; /* 10px; */
321
+ --op-space-3x-small: calc(var(--op-space-scale-unit) * 0.2); /* 2px */
322
+ --op-space-2x-small: calc(var(--op-space-scale-unit) * 0.4); /* 4px */
323
+ --op-space-x-small: calc(var(--op-space-scale-unit) * 0.8); /* 8px */
324
+ --op-space-small: calc(var(--op-space-scale-unit) * 1.2); /* 12px */
325
+ --op-space-medium: calc(var(--op-space-scale-unit) * 1.6); /* 16px */
326
+ --op-space-large: calc(var(--op-space-scale-unit) * 2); /* 20px */
327
+ --op-space-x-large: calc(var(--op-space-scale-unit) * 2.4); /* 24px */
328
+ --op-space-2x-large: calc(var(--op-space-scale-unit) * 2.8); /* 28px */
329
+ --op-space-3x-large: calc(var(--op-space-scale-unit) * 4); /* 40px */
330
+ --op-space-4x-large: calc(var(--op-space-scale-unit) * 8); /* 80px */
331
+
332
+ /* Shadows */
333
+
334
+ /**
335
+ * @tokens Shadows
336
+ * @presenter Shadow
337
+ */
338
+ --op-shadow-x-small: 0 1px 2px hsl(0deg 0% 0% / 3%), 0 1px 3px hsl(0deg 0% 0% / 15%);
339
+ --op-shadow-small: 0 1px 2px hsl(0deg 0% 0% / 3%), 0 2px 6px hsl(0deg 0% 0% / 15%);
340
+ --op-shadow-medium: 0 4px 8px hsl(0deg 0% 0% / 15%), 0 1px 3px hsl(0deg 0% 0% / 3%);
341
+ --op-shadow-large: 0 6px 10px hsl(0deg 0% 0% / 15%), 0 2px 3px hsl(0deg 0% 0% / 3%);
342
+ --op-shadow-x-large: 0 8px 12px hsl(0deg 0% 0% / 15%), 0 4px 4px hsl(0deg 0% 0% / 3%);
343
+
344
+ /* Z Index */
345
+
346
+ /**
347
+ * @tokens Z-Index
348
+ */
349
+ --op-z-index-header: 500;
350
+ --op-z-index-footer: 500;
351
+ --op-z-index-sidebar: 700;
352
+ --op-z-index-dialog: 800;
353
+ --op-z-index-dialog-backdrop: 801;
354
+ --op-z-index-dialog-content: 802;
355
+ --op-z-index-dropdown: 900;
356
+ --op-z-index-alert-group: 950;
357
+ --op-z-index-tooltip: 1000;
358
+
359
+ /* Inputs */
360
+
361
+ /*
362
+ This should follow multiples of 4
363
+ https: //uxdesign.cc/baseline-grids-design-systems-ae23b5af8cec See example 8
364
+ */
365
+
366
+ /**
367
+ * @tokens Input Heights
368
+ * @presenter Spacing
369
+ */
370
+ --op-input-height-small: 2.8rem; /* 28px */
371
+ --op-input-height-medium: 3.6rem; /* 36px */
372
+ --op-input-height-large: 4rem; /* 40px */
373
+ --op-input-height-x-large: 8.4rem; /* 84px */
374
+
375
+ /**
376
+ * @tokens Input Focus
377
+ * @presenter Shadow
378
+ */
379
+ --op-input-inner-focus: inset 0 0 0 var(--op-border-width-large);
380
+ --op-input-outer-focus: 0 0 0 var(--op-border-width-x-large);
381
+ --op-input-focus-primary: var(--op-input-inner-focus) var(--op-color-primary-plus-two),
382
+ var(--op-input-outer-focus) var(--op-color-primary-plus-five);
383
+ --op-input-focus-neutral: var(--op-input-inner-focus) var(--op-color-neutral-plus-two),
384
+ var(--op-input-outer-focus) var(--op-color-neutral-plus-five);
385
+ --op-input-focus-danger: var(--op-input-inner-focus) var(--op-color-alerts-danger-plus-two),
386
+ var(--op-input-outer-focus) var(--op-color-alerts-danger-plus-five);
387
+ --op-input-focus-warning: var(--op-input-inner-focus) var(--op-color-alerts-warning-plus-two),
388
+ var(--op-input-outer-focus) var(--op-color-alerts-warning-plus-five);
389
+ --op-input-focus-info: var(--op-input-inner-focus) var(--op-color-alerts-info-plus-two),
390
+ var(--op-input-outer-focus) var(--op-color-alerts-info-plus-five);
391
+ --op-input-focus-notice: var(--op-input-inner-focus) var(--op-color-alerts-notice-plus-two),
392
+ var(--op-input-outer-focus) var(--op-color-alerts-notice-plus-five);
393
+ }
394
+ /* Animations */
395
+ @keyframes rm-slide-in-out-flash {
396
+ /*
397
+ If an duration of 5s is set:
398
+ Start off the Screen
399
+ */
400
+ 0% {
401
+ right: -100%;
402
+ }
403
+
404
+ /* Animate onto the screen for 0.5s */
405
+ 10% {
406
+ right: var(--op-space-large);
407
+ }
408
+
409
+ /* Stay on the screen for 3s */
410
+ 70% {
411
+ right: var(--op-space-large);
412
+ }
413
+
414
+ /* Animate off the screen for 1.5s */
415
+ 100% {
416
+ right: -100%;
417
+ }
418
+ }
419
+ :root {
420
+ /* Enable light and dark mode switching */
421
+ color-scheme: light dark;
422
+
423
+ /*
424
+ Semantic Scales: plus adds luminosity, minus removes luminosity
425
+ This borrows from the photography concept of Aperture f-stops.
426
+ https://www.adobe.com/creativecloud/photography/discover/f-stop.html
427
+ */
428
+
429
+ /**
430
+ * @tokens Primary Colors
431
+ * @presenter Color
432
+ */
433
+ --op-color-primary-original: hsl(var(--op-color-primary-h) var(--op-color-primary-s) var(--op-color-primary-l));
434
+
435
+ /* Main Scale */
436
+ --op-color-primary-plus-max: light-dark(
437
+ hsl(var(--op-color-primary-h) var(--op-color-primary-s) 100%),
438
+ hsl(var(--op-color-primary-h) var(--op-color-primary-s) 12%)
439
+ );
440
+ --op-color-primary-plus-eight: light-dark(
441
+ hsl(var(--op-color-primary-h) var(--op-color-primary-s) 98%),
442
+ hsl(var(--op-color-primary-h) var(--op-color-primary-s) 14%)
443
+ );
444
+ --op-color-primary-plus-seven: light-dark(
445
+ hsl(var(--op-color-primary-h) var(--op-color-primary-s) 96%),
446
+ hsl(var(--op-color-primary-h) var(--op-color-primary-s) 16%)
447
+ );
448
+ --op-color-primary-plus-six: light-dark(
449
+ hsl(var(--op-color-primary-h) var(--op-color-primary-s) 94%),
450
+ hsl(var(--op-color-primary-h) var(--op-color-primary-s) 20%)
451
+ );
452
+ --op-color-primary-plus-five: light-dark(
453
+ hsl(var(--op-color-primary-h) var(--op-color-primary-s) 90%),
454
+ hsl(var(--op-color-primary-h) var(--op-color-primary-s) 24%)
455
+ );
456
+ --op-color-primary-plus-four: light-dark(
457
+ hsl(var(--op-color-primary-h) var(--op-color-primary-s) 84%),
458
+ hsl(var(--op-color-primary-h) var(--op-color-primary-s) 26%)
459
+ );
460
+ --op-color-primary-plus-three: light-dark(
461
+ hsl(var(--op-color-primary-h) var(--op-color-primary-s) 70%),
462
+ hsl(var(--op-color-primary-h) var(--op-color-primary-s) 29%)
463
+ );
464
+ --op-color-primary-plus-two: light-dark(
465
+ hsl(var(--op-color-primary-h) var(--op-color-primary-s) 64%),
466
+ hsl(var(--op-color-primary-h) var(--op-color-primary-s) 32%)
467
+ );
468
+ --op-color-primary-plus-one: light-dark(
469
+ hsl(var(--op-color-primary-h) var(--op-color-primary-s) 45%),
470
+ hsl(var(--op-color-primary-h) var(--op-color-primary-s) 35%)
471
+ );
472
+ --op-color-primary-base: light-dark(
473
+ hsl(var(--op-color-primary-h) var(--op-color-primary-s) 40%),
474
+ hsl(var(--op-color-primary-h) var(--op-color-primary-s) 38%)
475
+ );
476
+ --op-color-primary-minus-one: light-dark(
477
+ hsl(var(--op-color-primary-h) var(--op-color-primary-s) 36%),
478
+ hsl(var(--op-color-primary-h) var(--op-color-primary-s) 40%)
479
+ );
480
+ --op-color-primary-minus-two: light-dark(
481
+ hsl(var(--op-color-primary-h) var(--op-color-primary-s) 32%),
482
+ hsl(var(--op-color-primary-h) var(--op-color-primary-s) 45%)
483
+ );
484
+ --op-color-primary-minus-three: light-dark(
485
+ hsl(var(--op-color-primary-h) var(--op-color-primary-s) 28%),
486
+ hsl(var(--op-color-primary-h) var(--op-color-primary-s) 48%)
487
+ );
488
+ --op-color-primary-minus-four: light-dark(
489
+ hsl(var(--op-color-primary-h) var(--op-color-primary-s) 24%),
490
+ hsl(var(--op-color-primary-h) var(--op-color-primary-s) 52%)
491
+ );
492
+ --op-color-primary-minus-five: light-dark(
493
+ hsl(var(--op-color-primary-h) var(--op-color-primary-s) 20%),
494
+ hsl(var(--op-color-primary-h) var(--op-color-primary-s) 64%)
495
+ );
496
+ --op-color-primary-minus-six: light-dark(
497
+ hsl(var(--op-color-primary-h) var(--op-color-primary-s) 16%),
498
+ hsl(var(--op-color-primary-h) var(--op-color-primary-s) 72%)
499
+ );
500
+ --op-color-primary-minus-seven: light-dark(
501
+ hsl(var(--op-color-primary-h) var(--op-color-primary-s) 8%),
502
+ hsl(var(--op-color-primary-h) var(--op-color-primary-s) 80%)
503
+ );
504
+ --op-color-primary-minus-eight: light-dark(
505
+ hsl(var(--op-color-primary-h) var(--op-color-primary-s) 4%),
506
+ hsl(var(--op-color-primary-h) var(--op-color-primary-s) 88%)
507
+ );
508
+ --op-color-primary-minus-max: light-dark(
509
+ hsl(var(--op-color-primary-h) var(--op-color-primary-s) 0%),
510
+ hsl(var(--op-color-primary-h) var(--op-color-primary-s) 100%)
511
+ );
512
+
513
+ /* On Scale */
514
+ --op-color-primary-on-plus-max: light-dark(
515
+ hsl(var(--op-color-primary-h) var(--op-color-primary-s) 0%),
516
+ hsl(var(--op-color-primary-h) var(--op-color-primary-s) 100%)
517
+ );
518
+ --op-color-primary-on-plus-max-alt: light-dark(
519
+ hsl(var(--op-color-primary-h) var(--op-color-primary-s) 20%),
520
+ hsl(var(--op-color-primary-h) var(--op-color-primary-s) 78%)
521
+ );
522
+ --op-color-primary-on-plus-eight: light-dark(
523
+ hsl(var(--op-color-primary-h) var(--op-color-primary-s) 4%),
524
+ hsl(var(--op-color-primary-h) var(--op-color-primary-s) 88%)
525
+ );
526
+ --op-color-primary-on-plus-eight-alt: light-dark(
527
+ hsl(var(--op-color-primary-h) var(--op-color-primary-s) 24%),
528
+ hsl(var(--op-color-primary-h) var(--op-color-primary-s) 70%)
529
+ );
530
+ --op-color-primary-on-plus-seven: light-dark(
531
+ hsl(var(--op-color-primary-h) var(--op-color-primary-s) 8%),
532
+ hsl(var(--op-color-primary-h) var(--op-color-primary-s) 80%)
533
+ );
534
+ --op-color-primary-on-plus-seven-alt: light-dark(
535
+ hsl(var(--op-color-primary-h) var(--op-color-primary-s) 28%),
536
+ hsl(var(--op-color-primary-h) var(--op-color-primary-s) 64%)
537
+ );
538
+ --op-color-primary-on-plus-six: light-dark(
539
+ hsl(var(--op-color-primary-h) var(--op-color-primary-s) 16%),
540
+ hsl(var(--op-color-primary-h) var(--op-color-primary-s) 72%)
541
+ );
542
+ --op-color-primary-on-plus-six-alt: light-dark(
543
+ hsl(var(--op-color-primary-h) var(--op-color-primary-s) 26%),
544
+ hsl(var(--op-color-primary-h) var(--op-color-primary-s) 96%)
545
+ );
546
+ --op-color-primary-on-plus-five: light-dark(
547
+ hsl(var(--op-color-primary-h) var(--op-color-primary-s) 20%),
548
+ hsl(var(--op-color-primary-h) var(--op-color-primary-s) 72%)
549
+ );
550
+ --op-color-primary-on-plus-five-alt: light-dark(
551
+ hsl(var(--op-color-primary-h) var(--op-color-primary-s) 40%),
552
+ hsl(var(--op-color-primary-h) var(--op-color-primary-s) 86%)
553
+ );
554
+ --op-color-primary-on-plus-four: light-dark(
555
+ hsl(var(--op-color-primary-h) var(--op-color-primary-s) 24%),
556
+ hsl(var(--op-color-primary-h) var(--op-color-primary-s) 80%)
557
+ );
558
+ --op-color-primary-on-plus-four-alt: light-dark(
559
+ hsl(var(--op-color-primary-h) var(--op-color-primary-s) 4%),
560
+ hsl(var(--op-color-primary-h) var(--op-color-primary-s) 92%)
561
+ );
562
+ --op-color-primary-on-plus-three: light-dark(
563
+ hsl(var(--op-color-primary-h) var(--op-color-primary-s) 20%),
564
+ hsl(var(--op-color-primary-h) var(--op-color-primary-s) 78%)
565
+ );
566
+ --op-color-primary-on-plus-three-alt: light-dark(
567
+ hsl(var(--op-color-primary-h) var(--op-color-primary-s) 10%),
568
+ hsl(var(--op-color-primary-h) var(--op-color-primary-s) 98%)
569
+ );
570
+ --op-color-primary-on-plus-two: light-dark(
571
+ hsl(var(--op-color-primary-h) var(--op-color-primary-s) 16%),
572
+ hsl(var(--op-color-primary-h) var(--op-color-primary-s) 80%)
573
+ );
574
+ --op-color-primary-on-plus-two-alt: light-dark(
575
+ hsl(var(--op-color-primary-h) var(--op-color-primary-s) 6%),
576
+ hsl(var(--op-color-primary-h) var(--op-color-primary-s) 92%)
577
+ );
578
+ --op-color-primary-on-plus-one: light-dark(
579
+ hsl(var(--op-color-primary-h) var(--op-color-primary-s) 100%),
580
+ hsl(var(--op-color-primary-h) var(--op-color-primary-s) 80%)
581
+ );
582
+ --op-color-primary-on-plus-one-alt: light-dark(
583
+ hsl(var(--op-color-primary-h) var(--op-color-primary-s) 95%),
584
+ hsl(var(--op-color-primary-h) var(--op-color-primary-s) 98%)
585
+ );
586
+ --op-color-primary-on-base: light-dark(
587
+ hsl(var(--op-color-primary-h) var(--op-color-primary-s) 100%),
588
+ hsl(var(--op-color-primary-h) var(--op-color-primary-s) 100%)
589
+ );
590
+ --op-color-primary-on-base-alt: light-dark(
591
+ hsl(var(--op-color-primary-h) var(--op-color-primary-s) 88%),
592
+ hsl(var(--op-color-primary-h) var(--op-color-primary-s) 84%)
593
+ );
594
+ --op-color-primary-on-minus-one: light-dark(
595
+ hsl(var(--op-color-primary-h) var(--op-color-primary-s) 94%),
596
+ hsl(var(--op-color-primary-h) var(--op-color-primary-s) 98%)
597
+ );
598
+ --op-color-primary-on-minus-one-alt: light-dark(
599
+ hsl(var(--op-color-primary-h) var(--op-color-primary-s) 82%),
600
+ hsl(var(--op-color-primary-h) var(--op-color-primary-s) 90%)
601
+ );
602
+ --op-color-primary-on-minus-two: light-dark(
603
+ hsl(var(--op-color-primary-h) var(--op-color-primary-s) 90%),
604
+ hsl(var(--op-color-primary-h) var(--op-color-primary-s) 98%)
605
+ );
606
+ --op-color-primary-on-minus-two-alt: light-dark(
607
+ hsl(var(--op-color-primary-h) var(--op-color-primary-s) 78%),
608
+ hsl(var(--op-color-primary-h) var(--op-color-primary-s) 92%)
609
+ );
610
+ --op-color-primary-on-minus-three: light-dark(
611
+ hsl(var(--op-color-primary-h) var(--op-color-primary-s) 86%),
612
+ hsl(var(--op-color-primary-h) var(--op-color-primary-s) 98%)
613
+ );
614
+ --op-color-primary-on-minus-three-alt: light-dark(
615
+ hsl(var(--op-color-primary-h) var(--op-color-primary-s) 74%),
616
+ hsl(var(--op-color-primary-h) var(--op-color-primary-s) 96%)
617
+ );
618
+ --op-color-primary-on-minus-four: light-dark(
619
+ hsl(var(--op-color-primary-h) var(--op-color-primary-s) 84%),
620
+ hsl(var(--op-color-primary-h) var(--op-color-primary-s) 2%)
621
+ );
622
+ --op-color-primary-on-minus-four-alt: light-dark(
623
+ hsl(var(--op-color-primary-h) var(--op-color-primary-s) 72%),
624
+ hsl(var(--op-color-primary-h) var(--op-color-primary-s) 2%)
625
+ );
626
+ --op-color-primary-on-minus-five: light-dark(
627
+ hsl(var(--op-color-primary-h) var(--op-color-primary-s) 88%),
628
+ hsl(var(--op-color-primary-h) var(--op-color-primary-s) 2%)
629
+ );
630
+ --op-color-primary-on-minus-five-alt: light-dark(
631
+ hsl(var(--op-color-primary-h) var(--op-color-primary-s) 78%),
632
+ hsl(var(--op-color-primary-h) var(--op-color-primary-s) 20%)
633
+ );
634
+ --op-color-primary-on-minus-six: light-dark(
635
+ hsl(var(--op-color-primary-h) var(--op-color-primary-s) 94%),
636
+ hsl(var(--op-color-primary-h) var(--op-color-primary-s) 8%)
637
+ );
638
+ --op-color-primary-on-minus-six-alt: light-dark(
639
+ hsl(var(--op-color-primary-h) var(--op-color-primary-s) 82%),
640
+ hsl(var(--op-color-primary-h) var(--op-color-primary-s) 26%)
641
+ );
642
+ --op-color-primary-on-minus-seven: light-dark(
643
+ hsl(var(--op-color-primary-h) var(--op-color-primary-s) 96%),
644
+ hsl(var(--op-color-primary-h) var(--op-color-primary-s) 8%)
645
+ );
646
+ --op-color-primary-on-minus-seven-alt: light-dark(
647
+ hsl(var(--op-color-primary-h) var(--op-color-primary-s) 84%),
648
+ hsl(var(--op-color-primary-h) var(--op-color-primary-s) 34%)
649
+ );
650
+ --op-color-primary-on-minus-eight: light-dark(
651
+ hsl(var(--op-color-primary-h) var(--op-color-primary-s) 98%),
652
+ hsl(var(--op-color-primary-h) var(--op-color-primary-s) 4%)
653
+ );
654
+ --op-color-primary-on-minus-eight-alt: light-dark(
655
+ hsl(var(--op-color-primary-h) var(--op-color-primary-s) 86%),
656
+ hsl(var(--op-color-primary-h) var(--op-color-primary-s) 38%)
657
+ );
658
+ --op-color-primary-on-minus-max: light-dark(
659
+ hsl(var(--op-color-primary-h) var(--op-color-primary-s) 100%),
660
+ hsl(var(--op-color-primary-h) var(--op-color-primary-s) 0%)
661
+ );
662
+ --op-color-primary-on-minus-max-alt: light-dark(
663
+ hsl(var(--op-color-primary-h) var(--op-color-primary-s) 88%),
664
+ hsl(var(--op-color-primary-h) var(--op-color-primary-s) 38%)
665
+ );
666
+
667
+ /**
668
+ * @tokens Neutral Colors
669
+ * @presenter Color
670
+ */
671
+ --op-color-neutral-original: hsl(var(--op-color-neutral-h) var(--op-color-neutral-s) var(--op-color-neutral-l));
672
+
673
+ /* Main Scale */
674
+ --op-color-neutral-plus-max: light-dark(
675
+ hsl(var(--op-color-neutral-h) var(--op-color-neutral-s) 100%),
676
+ hsl(var(--op-color-neutral-h) var(--op-color-neutral-s) 8%)
677
+ );
678
+ --op-color-neutral-plus-eight: light-dark(
679
+ hsl(var(--op-color-neutral-h) var(--op-color-neutral-s) 98%),
680
+ hsl(var(--op-color-neutral-h) var(--op-color-neutral-s) 10%)
681
+ );
682
+ --op-color-neutral-plus-seven: light-dark(
683
+ hsl(var(--op-color-neutral-h) var(--op-color-neutral-s) 96%),
684
+ hsl(var(--op-color-neutral-h) var(--op-color-neutral-s) 14%)
685
+ );
686
+ --op-color-neutral-plus-six: light-dark(
687
+ hsl(var(--op-color-neutral-h) var(--op-color-neutral-s) 94%),
688
+ hsl(var(--op-color-neutral-h) var(--op-color-neutral-s) 16%)
689
+ );
690
+ --op-color-neutral-plus-five: light-dark(
691
+ hsl(var(--op-color-neutral-h) var(--op-color-neutral-s) 90%),
692
+ hsl(var(--op-color-neutral-h) var(--op-color-neutral-s) 18%)
693
+ );
694
+ --op-color-neutral-plus-four: light-dark(
695
+ hsl(var(--op-color-neutral-h) var(--op-color-neutral-s) 84%),
696
+ hsl(var(--op-color-neutral-h) var(--op-color-neutral-s) 20%)
697
+ );
698
+ --op-color-neutral-plus-three: light-dark(
699
+ hsl(var(--op-color-neutral-h) var(--op-color-neutral-s) 70%),
700
+ hsl(var(--op-color-neutral-h) var(--op-color-neutral-s) 24%)
701
+ );
702
+ --op-color-neutral-plus-two: light-dark(
703
+ hsl(var(--op-color-neutral-h) var(--op-color-neutral-s) 64%),
704
+ hsl(var(--op-color-neutral-h) var(--op-color-neutral-s) 26%)
705
+ );
706
+ --op-color-neutral-plus-one: light-dark(
707
+ hsl(var(--op-color-neutral-h) var(--op-color-neutral-s) 44%),
708
+ hsl(var(--op-color-neutral-h) var(--op-color-neutral-s) 30%)
709
+ );
710
+ --op-color-neutral-base: light-dark(
711
+ hsl(var(--op-color-neutral-h) var(--op-color-neutral-s) 40%),
712
+ hsl(var(--op-color-neutral-h) var(--op-color-neutral-s) 32%)
713
+ );
714
+ --op-color-neutral-minus-one: light-dark(
715
+ hsl(var(--op-color-neutral-h) var(--op-color-neutral-s) 36%),
716
+ hsl(var(--op-color-neutral-h) var(--op-color-neutral-s) 36%)
717
+ );
718
+ --op-color-neutral-minus-two: light-dark(
719
+ hsl(var(--op-color-neutral-h) var(--op-color-neutral-s) 32%),
720
+ hsl(var(--op-color-neutral-h) var(--op-color-neutral-s) 40%)
721
+ );
722
+ --op-color-neutral-minus-three: light-dark(
723
+ hsl(var(--op-color-neutral-h) var(--op-color-neutral-s) 28%),
724
+ hsl(var(--op-color-neutral-h) var(--op-color-neutral-s) 44%)
725
+ );
726
+ --op-color-neutral-minus-four: light-dark(
727
+ hsl(var(--op-color-neutral-h) var(--op-color-neutral-s) 24%),
728
+ hsl(var(--op-color-neutral-h) var(--op-color-neutral-s) 52%)
729
+ );
730
+ --op-color-neutral-minus-five: light-dark(
731
+ hsl(var(--op-color-neutral-h) var(--op-color-neutral-s) 20%),
732
+ hsl(var(--op-color-neutral-h) var(--op-color-neutral-s) 64%)
733
+ );
734
+ --op-color-neutral-minus-six: light-dark(
735
+ hsl(var(--op-color-neutral-h) var(--op-color-neutral-s) 16%),
736
+ hsl(var(--op-color-neutral-h) var(--op-color-neutral-s) 72%)
737
+ );
738
+ --op-color-neutral-minus-seven: light-dark(
739
+ hsl(var(--op-color-neutral-h) var(--op-color-neutral-s) 8%),
740
+ hsl(var(--op-color-neutral-h) var(--op-color-neutral-s) 80%)
741
+ );
742
+ --op-color-neutral-minus-eight: light-dark(
743
+ hsl(var(--op-color-neutral-h) var(--op-color-neutral-s) 4%),
744
+ hsl(var(--op-color-neutral-h) var(--op-color-neutral-s) 88%)
745
+ );
746
+ --op-color-neutral-minus-max: light-dark(
747
+ hsl(var(--op-color-neutral-h) var(--op-color-neutral-s) 0%),
748
+ hsl(var(--op-color-neutral-h) var(--op-color-neutral-s) 100%)
749
+ );
750
+
751
+ /* On Scale */
752
+ --op-color-neutral-on-plus-max: light-dark(
753
+ hsl(var(--op-color-neutral-h) var(--op-color-neutral-s) 0%),
754
+ hsl(var(--op-color-neutral-h) var(--op-color-neutral-s) 100%)
755
+ );
756
+ --op-color-neutral-on-plus-max-alt: light-dark(
757
+ hsl(var(--op-color-neutral-h) var(--op-color-neutral-s) 40%),
758
+ hsl(var(--op-color-neutral-h) var(--op-color-neutral-s) 54%)
759
+ );
760
+ --op-color-neutral-on-plus-eight: light-dark(
761
+ hsl(var(--op-color-neutral-h) var(--op-color-neutral-s) 4%),
762
+ hsl(var(--op-color-neutral-h) var(--op-color-neutral-s) 88%)
763
+ );
764
+ --op-color-neutral-on-plus-eight-alt: light-dark(
765
+ hsl(var(--op-color-neutral-h) var(--op-color-neutral-s) 34%),
766
+ hsl(var(--op-color-neutral-h) var(--op-color-neutral-s) 54%)
767
+ );
768
+ --op-color-neutral-on-plus-seven: light-dark(
769
+ hsl(var(--op-color-neutral-h) var(--op-color-neutral-s) 8%),
770
+ hsl(var(--op-color-neutral-h) var(--op-color-neutral-s) 80%)
771
+ );
772
+ --op-color-neutral-on-plus-seven-alt: light-dark(
773
+ hsl(var(--op-color-neutral-h) var(--op-color-neutral-s) 28%),
774
+ hsl(var(--op-color-neutral-h) var(--op-color-neutral-s) 58%)
775
+ );
776
+ --op-color-neutral-on-plus-six: light-dark(
777
+ hsl(var(--op-color-neutral-h) var(--op-color-neutral-s) 16%),
778
+ hsl(var(--op-color-neutral-h) var(--op-color-neutral-s) 72%)
779
+ );
780
+ --op-color-neutral-on-plus-six-alt: light-dark(
781
+ hsl(var(--op-color-neutral-h) var(--op-color-neutral-s) 36%),
782
+ hsl(var(--op-color-neutral-h) var(--op-color-neutral-s) 90%)
783
+ );
784
+ --op-color-neutral-on-plus-five: light-dark(
785
+ hsl(var(--op-color-neutral-h) var(--op-color-neutral-s) 20%),
786
+ hsl(var(--op-color-neutral-h) var(--op-color-neutral-s) 80%)
787
+ );
788
+ --op-color-neutral-on-plus-five-alt: light-dark(
789
+ hsl(var(--op-color-neutral-h) var(--op-color-neutral-s) 40%),
790
+ hsl(var(--op-color-neutral-h) var(--op-color-neutral-s) 94%)
791
+ );
792
+ --op-color-neutral-on-plus-four: light-dark(
793
+ hsl(var(--op-color-neutral-h) var(--op-color-neutral-s) 24%),
794
+ hsl(var(--op-color-neutral-h) var(--op-color-neutral-s) 88%)
795
+ );
796
+ --op-color-neutral-on-plus-four-alt: light-dark(
797
+ hsl(var(--op-color-neutral-h) var(--op-color-neutral-s) 4%),
798
+ hsl(var(--op-color-neutral-h) var(--op-color-neutral-s) 68%)
799
+ );
800
+ --op-color-neutral-on-plus-three: light-dark(
801
+ hsl(var(--op-color-neutral-h) var(--op-color-neutral-s) 20%),
802
+ hsl(var(--op-color-neutral-h) var(--op-color-neutral-s) 88%)
803
+ );
804
+ --op-color-neutral-on-plus-three-alt: light-dark(
805
+ hsl(var(--op-color-neutral-h) var(--op-color-neutral-s) 10%),
806
+ hsl(var(--op-color-neutral-h) var(--op-color-neutral-s) 68%)
807
+ );
808
+ --op-color-neutral-on-plus-two: light-dark(
809
+ hsl(var(--op-color-neutral-h) var(--op-color-neutral-s) 16%),
810
+ hsl(var(--op-color-neutral-h) var(--op-color-neutral-s) 88%)
811
+ );
812
+ --op-color-neutral-on-plus-two-alt: light-dark(
813
+ hsl(var(--op-color-neutral-h) var(--op-color-neutral-s) 6%),
814
+ hsl(var(--op-color-neutral-h) var(--op-color-neutral-s) 72%)
815
+ );
816
+ --op-color-neutral-on-plus-one: light-dark(
817
+ hsl(var(--op-color-neutral-h) var(--op-color-neutral-s) 100%),
818
+ hsl(var(--op-color-neutral-h) var(--op-color-neutral-s) 100%)
819
+ );
820
+ --op-color-neutral-on-plus-one-alt: light-dark(
821
+ hsl(var(--op-color-neutral-h) var(--op-color-neutral-s) 95%),
822
+ hsl(var(--op-color-neutral-h) var(--op-color-neutral-s) 75%)
823
+ );
824
+ --op-color-neutral-on-base: light-dark(
825
+ hsl(var(--op-color-neutral-h) var(--op-color-neutral-s) 100%),
826
+ hsl(var(--op-color-neutral-h) var(--op-color-neutral-s) 100%)
827
+ );
828
+ --op-color-neutral-on-base-alt: light-dark(
829
+ hsl(var(--op-color-neutral-h) var(--op-color-neutral-s) 90%),
830
+ hsl(var(--op-color-neutral-h) var(--op-color-neutral-s) 78%)
831
+ );
832
+ --op-color-neutral-on-minus-one: light-dark(
833
+ hsl(var(--op-color-neutral-h) var(--op-color-neutral-s) 94%),
834
+ hsl(var(--op-color-neutral-h) var(--op-color-neutral-s) 90%)
835
+ );
836
+ --op-color-neutral-on-minus-one-alt: light-dark(
837
+ hsl(var(--op-color-neutral-h) var(--op-color-neutral-s) 84%),
838
+ hsl(var(--op-color-neutral-h) var(--op-color-neutral-s) 98%)
839
+ );
840
+ --op-color-neutral-on-minus-two: light-dark(
841
+ hsl(var(--op-color-neutral-h) var(--op-color-neutral-s) 90%),
842
+ hsl(var(--op-color-neutral-h) var(--op-color-neutral-s) 90%)
843
+ );
844
+ --op-color-neutral-on-minus-two-alt: light-dark(
845
+ hsl(var(--op-color-neutral-h) var(--op-color-neutral-s) 78%),
846
+ hsl(var(--op-color-neutral-h) var(--op-color-neutral-s) 98%)
847
+ );
848
+ --op-color-neutral-on-minus-three: light-dark(
849
+ hsl(var(--op-color-neutral-h) var(--op-color-neutral-s) 86%),
850
+ hsl(var(--op-color-neutral-h) var(--op-color-neutral-s) 99%)
851
+ );
852
+ --op-color-neutral-on-minus-three-alt: light-dark(
853
+ hsl(var(--op-color-neutral-h) var(--op-color-neutral-s) 74%),
854
+ hsl(var(--op-color-neutral-h) var(--op-color-neutral-s) 95%)
855
+ );
856
+ --op-color-neutral-on-minus-four: light-dark(
857
+ hsl(var(--op-color-neutral-h) var(--op-color-neutral-s) 84%),
858
+ hsl(var(--op-color-neutral-h) var(--op-color-neutral-s) 11%)
859
+ );
860
+ --op-color-neutral-on-minus-four-alt: light-dark(
861
+ hsl(var(--op-color-neutral-h) var(--op-color-neutral-s) 76%),
862
+ hsl(var(--op-color-neutral-h) var(--op-color-neutral-s) 2%)
863
+ );
864
+ --op-color-neutral-on-minus-five: light-dark(
865
+ hsl(var(--op-color-neutral-h) var(--op-color-neutral-s) 88%),
866
+ hsl(var(--op-color-neutral-h) var(--op-color-neutral-s) 20%)
867
+ );
868
+ --op-color-neutral-on-minus-five-alt: light-dark(
869
+ hsl(var(--op-color-neutral-h) var(--op-color-neutral-s) 76%),
870
+ hsl(var(--op-color-neutral-h) var(--op-color-neutral-s) 2%)
871
+ );
872
+ --op-color-neutral-on-minus-six: light-dark(
873
+ hsl(var(--op-color-neutral-h) var(--op-color-neutral-s) 94%),
874
+ hsl(var(--op-color-neutral-h) var(--op-color-neutral-s) 4%)
875
+ );
876
+ --op-color-neutral-on-minus-six-alt: light-dark(
877
+ hsl(var(--op-color-neutral-h) var(--op-color-neutral-s) 82%),
878
+ hsl(var(--op-color-neutral-h) var(--op-color-neutral-s) 26%)
879
+ );
880
+ --op-color-neutral-on-minus-seven: light-dark(
881
+ hsl(var(--op-color-neutral-h) var(--op-color-neutral-s) 96%),
882
+ hsl(var(--op-color-neutral-h) var(--op-color-neutral-s) 8%)
883
+ );
884
+ --op-color-neutral-on-minus-seven-alt: light-dark(
885
+ hsl(var(--op-color-neutral-h) var(--op-color-neutral-s) 84%),
886
+ hsl(var(--op-color-neutral-h) var(--op-color-neutral-s) 32%)
887
+ );
888
+ --op-color-neutral-on-minus-eight: light-dark(
889
+ hsl(var(--op-color-neutral-h) var(--op-color-neutral-s) 98%),
890
+ hsl(var(--op-color-neutral-h) var(--op-color-neutral-s) 4%)
891
+ );
892
+ --op-color-neutral-on-minus-eight-alt: light-dark(
893
+ hsl(var(--op-color-neutral-h) var(--op-color-neutral-s) 86%),
894
+ hsl(var(--op-color-neutral-h) var(--op-color-neutral-s) 36%)
895
+ );
896
+ --op-color-neutral-on-minus-max: light-dark(
897
+ hsl(var(--op-color-neutral-h) var(--op-color-neutral-s) 100%),
898
+ hsl(var(--op-color-neutral-h) var(--op-color-neutral-s) 4%)
899
+ );
900
+ --op-color-neutral-on-minus-max-alt: light-dark(
901
+ hsl(var(--op-color-neutral-h) var(--op-color-neutral-s) 88%),
902
+ hsl(var(--op-color-neutral-h) var(--op-color-neutral-s) 48%)
903
+ );
904
+
905
+ /**
906
+ * @tokens Alerts Warning Colors
907
+ * @presenter Color
908
+ */
909
+
910
+ /* prettier-ignore */
911
+ --op-color-alerts-warning-original: hsl(var(--op-color-alerts-warning-h) var(--op-color-alerts-warning-s) var(--op-color-alerts-warning-l));
912
+
913
+ /* Main Scale */
914
+ --op-color-alerts-warning-plus-max: light-dark(
915
+ hsl(var(--op-color-alerts-warning-h) var(--op-color-alerts-warning-s) 100%),
916
+ hsl(var(--op-color-alerts-warning-h) var(--op-color-alerts-warning-s) 0%)
917
+ );
918
+ --op-color-alerts-warning-plus-eight: light-dark(
919
+ hsl(var(--op-color-alerts-warning-h) var(--op-color-alerts-warning-s) 98%),
920
+ hsl(var(--op-color-alerts-warning-h) var(--op-color-alerts-warning-s) 4%)
921
+ );
922
+ --op-color-alerts-warning-plus-seven: light-dark(
923
+ hsl(var(--op-color-alerts-warning-h) var(--op-color-alerts-warning-s) 96%),
924
+ hsl(var(--op-color-alerts-warning-h) var(--op-color-alerts-warning-s) 8%)
925
+ );
926
+ --op-color-alerts-warning-plus-six: light-dark(
927
+ hsl(var(--op-color-alerts-warning-h) var(--op-color-alerts-warning-s) 94%),
928
+ hsl(var(--op-color-alerts-warning-h) var(--op-color-alerts-warning-s) 12%)
929
+ );
930
+ --op-color-alerts-warning-plus-five: light-dark(
931
+ hsl(var(--op-color-alerts-warning-h) var(--op-color-alerts-warning-s) 90%),
932
+ hsl(var(--op-color-alerts-warning-h) var(--op-color-alerts-warning-s) 14%)
933
+ );
934
+ --op-color-alerts-warning-plus-four: light-dark(
935
+ hsl(var(--op-color-alerts-warning-h) var(--op-color-alerts-warning-s) 80%),
936
+ hsl(var(--op-color-alerts-warning-h) var(--op-color-alerts-warning-s) 16%)
937
+ );
938
+ --op-color-alerts-warning-plus-three: light-dark(
939
+ hsl(var(--op-color-alerts-warning-h) var(--op-color-alerts-warning-s) 70%),
940
+ hsl(var(--op-color-alerts-warning-h) var(--op-color-alerts-warning-s) 20%)
941
+ );
942
+ --op-color-alerts-warning-plus-two: light-dark(
943
+ hsl(var(--op-color-alerts-warning-h) var(--op-color-alerts-warning-s) 64%),
944
+ hsl(var(--op-color-alerts-warning-h) var(--op-color-alerts-warning-s) 24%)
945
+ );
946
+ --op-color-alerts-warning-plus-one: light-dark(
947
+ hsl(var(--op-color-alerts-warning-h) var(--op-color-alerts-warning-s) 50%),
948
+ hsl(var(--op-color-alerts-warning-h) var(--op-color-alerts-warning-s) 28%)
949
+ );
950
+ --op-color-alerts-warning-base: light-dark(
951
+ hsl(var(--op-color-alerts-warning-h) var(--op-color-alerts-warning-s) 40%),
952
+ hsl(var(--op-color-alerts-warning-h) var(--op-color-alerts-warning-s) 32%)
953
+ );
954
+ --op-color-alerts-warning-minus-one: light-dark(
955
+ hsl(var(--op-color-alerts-warning-h) var(--op-color-alerts-warning-s) 26%),
956
+ hsl(var(--op-color-alerts-warning-h) var(--op-color-alerts-warning-s) 36%)
957
+ );
958
+ --op-color-alerts-warning-minus-two: light-dark(
959
+ hsl(var(--op-color-alerts-warning-h) var(--op-color-alerts-warning-s) 22%),
960
+ hsl(var(--op-color-alerts-warning-h) var(--op-color-alerts-warning-s) 40%)
961
+ );
962
+ --op-color-alerts-warning-minus-three: light-dark(
963
+ hsl(var(--op-color-alerts-warning-h) var(--op-color-alerts-warning-s) 18%),
964
+ hsl(var(--op-color-alerts-warning-h) var(--op-color-alerts-warning-s) 48%)
965
+ );
966
+ --op-color-alerts-warning-minus-four: light-dark(
967
+ hsl(var(--op-color-alerts-warning-h) var(--op-color-alerts-warning-s) 14%),
968
+ hsl(var(--op-color-alerts-warning-h) var(--op-color-alerts-warning-s) 52%)
969
+ );
970
+ --op-color-alerts-warning-minus-five: light-dark(
971
+ hsl(var(--op-color-alerts-warning-h) var(--op-color-alerts-warning-s) 12%),
972
+ hsl(var(--op-color-alerts-warning-h) var(--op-color-alerts-warning-s) 64%)
973
+ );
974
+ --op-color-alerts-warning-minus-six: light-dark(
975
+ hsl(var(--op-color-alerts-warning-h) var(--op-color-alerts-warning-s) 10%),
976
+ hsl(var(--op-color-alerts-warning-h) var(--op-color-alerts-warning-s) 72%)
977
+ );
978
+ --op-color-alerts-warning-minus-seven: light-dark(
979
+ hsl(var(--op-color-alerts-warning-h) var(--op-color-alerts-warning-s) 4%),
980
+ hsl(var(--op-color-alerts-warning-h) var(--op-color-alerts-warning-s) 80%)
981
+ );
982
+ --op-color-alerts-warning-minus-eight: light-dark(
983
+ hsl(var(--op-color-alerts-warning-h) var(--op-color-alerts-warning-s) 2%),
984
+ hsl(var(--op-color-alerts-warning-h) var(--op-color-alerts-warning-s) 88%)
985
+ );
986
+ --op-color-alerts-warning-minus-max: light-dark(
987
+ hsl(var(--op-color-alerts-warning-h) var(--op-color-alerts-warning-s) 0%),
988
+ hsl(var(--op-color-alerts-warning-h) var(--op-color-alerts-warning-s) 100%)
989
+ );
990
+
991
+ /* On Scale */
992
+ --op-color-alerts-warning-on-plus-max: light-dark(
993
+ hsl(var(--op-color-alerts-warning-h) var(--op-color-alerts-warning-s) 0%),
994
+ hsl(var(--op-color-alerts-warning-h) var(--op-color-alerts-warning-s) 70%)
995
+ );
996
+ --op-color-alerts-warning-on-plus-max-alt: light-dark(
997
+ hsl(var(--op-color-alerts-warning-h) var(--op-color-alerts-warning-s) 20%),
998
+ hsl(var(--op-color-alerts-warning-h) var(--op-color-alerts-warning-s) 42%)
999
+ );
1000
+ --op-color-alerts-warning-on-plus-eight: light-dark(
1001
+ hsl(var(--op-color-alerts-warning-h) var(--op-color-alerts-warning-s) 4%),
1002
+ hsl(var(--op-color-alerts-warning-h) var(--op-color-alerts-warning-s) 88%)
1003
+ );
1004
+ --op-color-alerts-warning-on-plus-eight-alt: light-dark(
1005
+ hsl(var(--op-color-alerts-warning-h) var(--op-color-alerts-warning-s) 24%),
1006
+ hsl(var(--op-color-alerts-warning-h) var(--op-color-alerts-warning-s) 70%)
1007
+ );
1008
+ --op-color-alerts-warning-on-plus-seven: light-dark(
1009
+ hsl(var(--op-color-alerts-warning-h) var(--op-color-alerts-warning-s) 8%),
1010
+ hsl(var(--op-color-alerts-warning-h) var(--op-color-alerts-warning-s) 80%)
1011
+ );
1012
+ --op-color-alerts-warning-on-plus-seven-alt: light-dark(
1013
+ hsl(var(--op-color-alerts-warning-h) var(--op-color-alerts-warning-s) 28%),
1014
+ hsl(var(--op-color-alerts-warning-h) var(--op-color-alerts-warning-s) 60%)
1015
+ );
1016
+ --op-color-alerts-warning-on-plus-six: light-dark(
1017
+ hsl(var(--op-color-alerts-warning-h) var(--op-color-alerts-warning-s) 16%),
1018
+ hsl(var(--op-color-alerts-warning-h) var(--op-color-alerts-warning-s) 72%)
1019
+ );
1020
+ --op-color-alerts-warning-on-plus-six-alt: light-dark(
1021
+ hsl(var(--op-color-alerts-warning-h) var(--op-color-alerts-warning-s) 26%),
1022
+ hsl(var(--op-color-alerts-warning-h) var(--op-color-alerts-warning-s) 50%)
1023
+ );
1024
+ --op-color-alerts-warning-on-plus-five: light-dark(
1025
+ hsl(var(--op-color-alerts-warning-h) var(--op-color-alerts-warning-s) 20%),
1026
+ hsl(var(--op-color-alerts-warning-h) var(--op-color-alerts-warning-s) 72%)
1027
+ );
1028
+ --op-color-alerts-warning-on-plus-five-alt: light-dark(
1029
+ hsl(var(--op-color-alerts-warning-h) var(--op-color-alerts-warning-s) 25%),
1030
+ hsl(var(--op-color-alerts-warning-h) var(--op-color-alerts-warning-s) 50%)
1031
+ );
1032
+ --op-color-alerts-warning-on-plus-four: light-dark(
1033
+ hsl(var(--op-color-alerts-warning-h) var(--op-color-alerts-warning-s) 20%),
1034
+ hsl(var(--op-color-alerts-warning-h) var(--op-color-alerts-warning-s) 80%)
1035
+ );
1036
+ --op-color-alerts-warning-on-plus-four-alt: light-dark(
1037
+ hsl(var(--op-color-alerts-warning-h) var(--op-color-alerts-warning-s) 0%),
1038
+ hsl(var(--op-color-alerts-warning-h) var(--op-color-alerts-warning-s) 60%)
1039
+ );
1040
+ --op-color-alerts-warning-on-plus-three: light-dark(
1041
+ hsl(var(--op-color-alerts-warning-h) var(--op-color-alerts-warning-s) 20%),
1042
+ hsl(var(--op-color-alerts-warning-h) var(--op-color-alerts-warning-s) 88%)
1043
+ );
1044
+ --op-color-alerts-warning-on-plus-three-alt: light-dark(
1045
+ hsl(var(--op-color-alerts-warning-h) var(--op-color-alerts-warning-s) 10%),
1046
+ hsl(var(--op-color-alerts-warning-h) var(--op-color-alerts-warning-s) 70%)
1047
+ );
1048
+ --op-color-alerts-warning-on-plus-two: light-dark(
1049
+ hsl(var(--op-color-alerts-warning-h) var(--op-color-alerts-warning-s) 16%),
1050
+ hsl(var(--op-color-alerts-warning-h) var(--op-color-alerts-warning-s) 88%)
1051
+ );
1052
+ --op-color-alerts-warning-on-plus-two-alt: light-dark(
1053
+ hsl(var(--op-color-alerts-warning-h) var(--op-color-alerts-warning-s) 6%),
1054
+ hsl(var(--op-color-alerts-warning-h) var(--op-color-alerts-warning-s) 70%)
1055
+ );
1056
+ --op-color-alerts-warning-on-plus-one: light-dark(
1057
+ hsl(var(--op-color-alerts-warning-h) var(--op-color-alerts-warning-s) 20%),
1058
+ hsl(var(--op-color-alerts-warning-h) var(--op-color-alerts-warning-s) 96%)
1059
+ );
1060
+ --op-color-alerts-warning-on-plus-one-alt: light-dark(
1061
+ hsl(var(--op-color-alerts-warning-h) var(--op-color-alerts-warning-s) 15%),
1062
+ hsl(var(--op-color-alerts-warning-h) var(--op-color-alerts-warning-s) 10%)
1063
+ );
1064
+ --op-color-alerts-warning-on-base: light-dark(
1065
+ hsl(var(--op-color-alerts-warning-h) var(--op-color-alerts-warning-s) 12%),
1066
+ hsl(var(--op-color-alerts-warning-h) var(--op-color-alerts-warning-s) 2%)
1067
+ );
1068
+ --op-color-alerts-warning-on-base-alt: light-dark(
1069
+ hsl(var(--op-color-alerts-warning-h) var(--op-color-alerts-warning-s) 0%),
1070
+ hsl(var(--op-color-alerts-warning-h) var(--op-color-alerts-warning-s) 6%)
1071
+ );
1072
+ --op-color-alerts-warning-on-minus-one: light-dark(
1073
+ hsl(var(--op-color-alerts-warning-h) var(--op-color-alerts-warning-s) 100%),
1074
+ hsl(var(--op-color-alerts-warning-h) var(--op-color-alerts-warning-s) 2%)
1075
+ );
1076
+ --op-color-alerts-warning-on-minus-one-alt: light-dark(
1077
+ hsl(var(--op-color-alerts-warning-h) var(--op-color-alerts-warning-s) 88%),
1078
+ hsl(var(--op-color-alerts-warning-h) var(--op-color-alerts-warning-s) 70%)
1079
+ );
1080
+ --op-color-alerts-warning-on-minus-two: light-dark(
1081
+ hsl(var(--op-color-alerts-warning-h) var(--op-color-alerts-warning-s) 96%),
1082
+ hsl(var(--op-color-alerts-warning-h) var(--op-color-alerts-warning-s) 2%)
1083
+ );
1084
+ --op-color-alerts-warning-on-minus-two-alt: light-dark(
1085
+ hsl(var(--op-color-alerts-warning-h) var(--op-color-alerts-warning-s) 84%),
1086
+ hsl(var(--op-color-alerts-warning-h) var(--op-color-alerts-warning-s) 14%)
1087
+ );
1088
+ --op-color-alerts-warning-on-minus-three: light-dark(
1089
+ hsl(var(--op-color-alerts-warning-h) var(--op-color-alerts-warning-s) 92%),
1090
+ hsl(var(--op-color-alerts-warning-h) var(--op-color-alerts-warning-s) 2%)
1091
+ );
1092
+ --op-color-alerts-warning-on-minus-three-alt: light-dark(
1093
+ hsl(var(--op-color-alerts-warning-h) var(--op-color-alerts-warning-s) 80%),
1094
+ hsl(var(--op-color-alerts-warning-h) var(--op-color-alerts-warning-s) 20%)
1095
+ );
1096
+ --op-color-alerts-warning-on-minus-four: light-dark(
1097
+ hsl(var(--op-color-alerts-warning-h) var(--op-color-alerts-warning-s) 88%),
1098
+ hsl(var(--op-color-alerts-warning-h) var(--op-color-alerts-warning-s) 4%)
1099
+ );
1100
+ --op-color-alerts-warning-on-minus-four-alt: light-dark(
1101
+ hsl(var(--op-color-alerts-warning-h) var(--op-color-alerts-warning-s) 76%),
1102
+ hsl(var(--op-color-alerts-warning-h) var(--op-color-alerts-warning-s) 20%)
1103
+ );
1104
+ --op-color-alerts-warning-on-minus-five: light-dark(
1105
+ hsl(var(--op-color-alerts-warning-h) var(--op-color-alerts-warning-s) 88%),
1106
+ hsl(var(--op-color-alerts-warning-h) var(--op-color-alerts-warning-s) 8%)
1107
+ );
1108
+ --op-color-alerts-warning-on-minus-five-alt: light-dark(
1109
+ hsl(var(--op-color-alerts-warning-h) var(--op-color-alerts-warning-s) 76%),
1110
+ hsl(var(--op-color-alerts-warning-h) var(--op-color-alerts-warning-s) 21%)
1111
+ );
1112
+ --op-color-alerts-warning-on-minus-six: light-dark(
1113
+ hsl(var(--op-color-alerts-warning-h) var(--op-color-alerts-warning-s) 94%),
1114
+ hsl(var(--op-color-alerts-warning-h) var(--op-color-alerts-warning-s) 10%)
1115
+ );
1116
+ --op-color-alerts-warning-on-minus-six-alt: light-dark(
1117
+ hsl(var(--op-color-alerts-warning-h) var(--op-color-alerts-warning-s) 82%),
1118
+ hsl(var(--op-color-alerts-warning-h) var(--op-color-alerts-warning-s) 22%)
1119
+ );
1120
+ --op-color-alerts-warning-on-minus-seven: light-dark(
1121
+ hsl(var(--op-color-alerts-warning-h) var(--op-color-alerts-warning-s) 96%),
1122
+ hsl(var(--op-color-alerts-warning-h) var(--op-color-alerts-warning-s) 8%)
1123
+ );
1124
+ --op-color-alerts-warning-on-minus-seven-alt: light-dark(
1125
+ hsl(var(--op-color-alerts-warning-h) var(--op-color-alerts-warning-s) 84%),
1126
+ hsl(var(--op-color-alerts-warning-h) var(--op-color-alerts-warning-s) 24%)
1127
+ );
1128
+ --op-color-alerts-warning-on-minus-eight: light-dark(
1129
+ hsl(var(--op-color-alerts-warning-h) var(--op-color-alerts-warning-s) 98%),
1130
+ hsl(var(--op-color-alerts-warning-h) var(--op-color-alerts-warning-s) 12%)
1131
+ );
1132
+ --op-color-alerts-warning-on-minus-eight-alt: light-dark(
1133
+ hsl(var(--op-color-alerts-warning-h) var(--op-color-alerts-warning-s) 86%),
1134
+ hsl(var(--op-color-alerts-warning-h) var(--op-color-alerts-warning-s) 26%)
1135
+ );
1136
+ --op-color-alerts-warning-on-minus-max: light-dark(
1137
+ hsl(var(--op-color-alerts-warning-h) var(--op-color-alerts-warning-s) 100%),
1138
+ hsl(var(--op-color-alerts-warning-h) var(--op-color-alerts-warning-s) 0%)
1139
+ );
1140
+ --op-color-alerts-warning-on-minus-max-alt: light-dark(
1141
+ hsl(var(--op-color-alerts-warning-h) var(--op-color-alerts-warning-s) 88%),
1142
+ hsl(var(--op-color-alerts-warning-h) var(--op-color-alerts-warning-s) 24%)
1143
+ );
1144
+
1145
+ /**
1146
+ * @tokens Alerts Danger Colors
1147
+ * @presenter Color
1148
+ */
1149
+
1150
+ /* prettier-ignore */
1151
+ --op-color-alerts-danger-original: hsl(var(--op-color-alerts-danger-h) var(--op-color-alerts-danger-s) var(--op-color-alerts-danger-l));
1152
+
1153
+ /* Main Scale */
1154
+ --op-color-alerts-danger-plus-max: light-dark(
1155
+ hsl(var(--op-color-alerts-danger-h) var(--op-color-alerts-danger-s) 100%),
1156
+ hsl(var(--op-color-alerts-danger-h) var(--op-color-alerts-danger-s) 0%)
1157
+ );
1158
+ --op-color-alerts-danger-plus-eight: light-dark(
1159
+ hsl(var(--op-color-alerts-danger-h) var(--op-color-alerts-danger-s) 98%),
1160
+ hsl(var(--op-color-alerts-danger-h) var(--op-color-alerts-danger-s) 4%)
1161
+ );
1162
+ --op-color-alerts-danger-plus-seven: light-dark(
1163
+ hsl(var(--op-color-alerts-danger-h) var(--op-color-alerts-danger-s) 96%),
1164
+ hsl(var(--op-color-alerts-danger-h) var(--op-color-alerts-danger-s) 8%)
1165
+ );
1166
+ --op-color-alerts-danger-plus-six: light-dark(
1167
+ hsl(var(--op-color-alerts-danger-h) var(--op-color-alerts-danger-s) 94%),
1168
+ hsl(var(--op-color-alerts-danger-h) var(--op-color-alerts-danger-s) 12%)
1169
+ );
1170
+ --op-color-alerts-danger-plus-five: light-dark(
1171
+ hsl(var(--op-color-alerts-danger-h) var(--op-color-alerts-danger-s) 90%),
1172
+ hsl(var(--op-color-alerts-danger-h) var(--op-color-alerts-danger-s) 14%)
1173
+ );
1174
+ --op-color-alerts-danger-plus-four: light-dark(
1175
+ hsl(var(--op-color-alerts-danger-h) var(--op-color-alerts-danger-s) 84%),
1176
+ hsl(var(--op-color-alerts-danger-h) var(--op-color-alerts-danger-s) 16%)
1177
+ );
1178
+ --op-color-alerts-danger-plus-three: light-dark(
1179
+ hsl(var(--op-color-alerts-danger-h) var(--op-color-alerts-danger-s) 70%),
1180
+ hsl(var(--op-color-alerts-danger-h) var(--op-color-alerts-danger-s) 20%)
1181
+ );
1182
+ --op-color-alerts-danger-plus-two: light-dark(
1183
+ hsl(var(--op-color-alerts-danger-h) var(--op-color-alerts-danger-s) 64%),
1184
+ hsl(var(--op-color-alerts-danger-h) var(--op-color-alerts-danger-s) 24%)
1185
+ );
1186
+ --op-color-alerts-danger-plus-one: light-dark(
1187
+ hsl(var(--op-color-alerts-danger-h) var(--op-color-alerts-danger-s) 50%),
1188
+ hsl(var(--op-color-alerts-danger-h) var(--op-color-alerts-danger-s) 28%)
1189
+ );
1190
+ --op-color-alerts-danger-base: light-dark(
1191
+ hsl(var(--op-color-alerts-danger-h) var(--op-color-alerts-danger-s) 40%),
1192
+ hsl(var(--op-color-alerts-danger-h) var(--op-color-alerts-danger-s) 32%)
1193
+ );
1194
+ --op-color-alerts-danger-minus-one: light-dark(
1195
+ hsl(var(--op-color-alerts-danger-h) var(--op-color-alerts-danger-s) 36%),
1196
+ hsl(var(--op-color-alerts-danger-h) var(--op-color-alerts-danger-s) 36%)
1197
+ );
1198
+ --op-color-alerts-danger-minus-two: light-dark(
1199
+ hsl(var(--op-color-alerts-danger-h) var(--op-color-alerts-danger-s) 32%),
1200
+ hsl(var(--op-color-alerts-danger-h) var(--op-color-alerts-danger-s) 40%)
1201
+ );
1202
+ --op-color-alerts-danger-minus-three: light-dark(
1203
+ hsl(var(--op-color-alerts-danger-h) var(--op-color-alerts-danger-s) 28%),
1204
+ hsl(var(--op-color-alerts-danger-h) var(--op-color-alerts-danger-s) 48%)
1205
+ );
1206
+ --op-color-alerts-danger-minus-four: light-dark(
1207
+ hsl(var(--op-color-alerts-danger-h) var(--op-color-alerts-danger-s) 24%),
1208
+ hsl(var(--op-color-alerts-danger-h) var(--op-color-alerts-danger-s) 52%)
1209
+ );
1210
+ --op-color-alerts-danger-minus-five: light-dark(
1211
+ hsl(var(--op-color-alerts-danger-h) var(--op-color-alerts-danger-s) 20%),
1212
+ hsl(var(--op-color-alerts-danger-h) var(--op-color-alerts-danger-s) 64%)
1213
+ );
1214
+ --op-color-alerts-danger-minus-six: light-dark(
1215
+ hsl(var(--op-color-alerts-danger-h) var(--op-color-alerts-danger-s) 16%),
1216
+ hsl(var(--op-color-alerts-danger-h) var(--op-color-alerts-danger-s) 72%)
1217
+ );
1218
+ --op-color-alerts-danger-minus-seven: light-dark(
1219
+ hsl(var(--op-color-alerts-danger-h) var(--op-color-alerts-danger-s) 8%),
1220
+ hsl(var(--op-color-alerts-danger-h) var(--op-color-alerts-danger-s) 80%)
1221
+ );
1222
+ --op-color-alerts-danger-minus-eight: light-dark(
1223
+ hsl(var(--op-color-alerts-danger-h) var(--op-color-alerts-danger-s) 4%),
1224
+ hsl(var(--op-color-alerts-danger-h) var(--op-color-alerts-danger-s) 88%)
1225
+ );
1226
+ --op-color-alerts-danger-minus-max: light-dark(
1227
+ hsl(var(--op-color-alerts-danger-h) var(--op-color-alerts-danger-s) 0%),
1228
+ hsl(var(--op-color-alerts-danger-h) var(--op-color-alerts-danger-s) 100%)
1229
+ );
1230
+
1231
+ /* On Scale */
1232
+ --op-color-alerts-danger-on-plus-max: light-dark(
1233
+ hsl(var(--op-color-alerts-danger-h) var(--op-color-alerts-danger-s) 0%),
1234
+ hsl(var(--op-color-alerts-danger-h) var(--op-color-alerts-danger-s) 100%)
1235
+ );
1236
+ --op-color-alerts-danger-on-plus-max-alt: light-dark(
1237
+ hsl(var(--op-color-alerts-danger-h) var(--op-color-alerts-danger-s) 20%),
1238
+ hsl(var(--op-color-alerts-danger-h) var(--op-color-alerts-danger-s) 88%)
1239
+ );
1240
+ --op-color-alerts-danger-on-plus-eight: light-dark(
1241
+ hsl(var(--op-color-alerts-danger-h) var(--op-color-alerts-danger-s) 4%),
1242
+ hsl(var(--op-color-alerts-danger-h) var(--op-color-alerts-danger-s) 88%)
1243
+ );
1244
+ --op-color-alerts-danger-on-plus-eight-alt: light-dark(
1245
+ hsl(var(--op-color-alerts-danger-h) var(--op-color-alerts-danger-s) 24%),
1246
+ hsl(var(--op-color-alerts-danger-h) var(--op-color-alerts-danger-s) 78%)
1247
+ );
1248
+ --op-color-alerts-danger-on-plus-seven: light-dark(
1249
+ hsl(var(--op-color-alerts-danger-h) var(--op-color-alerts-danger-s) 8%),
1250
+ hsl(var(--op-color-alerts-danger-h) var(--op-color-alerts-danger-s) 80%)
1251
+ );
1252
+ --op-color-alerts-danger-on-plus-seven-alt: light-dark(
1253
+ hsl(var(--op-color-alerts-danger-h) var(--op-color-alerts-danger-s) 28%),
1254
+ hsl(var(--op-color-alerts-danger-h) var(--op-color-alerts-danger-s) 70%)
1255
+ );
1256
+ --op-color-alerts-danger-on-plus-six: light-dark(
1257
+ hsl(var(--op-color-alerts-danger-h) var(--op-color-alerts-danger-s) 16%),
1258
+ hsl(var(--op-color-alerts-danger-h) var(--op-color-alerts-danger-s) 78%)
1259
+ );
1260
+ --op-color-alerts-danger-on-plus-six-alt: light-dark(
1261
+ hsl(var(--op-color-alerts-danger-h) var(--op-color-alerts-danger-s) 36%),
1262
+ hsl(var(--op-color-alerts-danger-h) var(--op-color-alerts-danger-s) 68%)
1263
+ );
1264
+ --op-color-alerts-danger-on-plus-five: light-dark(
1265
+ hsl(var(--op-color-alerts-danger-h) var(--op-color-alerts-danger-s) 20%),
1266
+ hsl(var(--op-color-alerts-danger-h) var(--op-color-alerts-danger-s) 76%)
1267
+ );
1268
+ --op-color-alerts-danger-on-plus-five-alt: light-dark(
1269
+ hsl(var(--op-color-alerts-danger-h) var(--op-color-alerts-danger-s) 30%),
1270
+ hsl(var(--op-color-alerts-danger-h) var(--op-color-alerts-danger-s) 70%)
1271
+ );
1272
+ --op-color-alerts-danger-on-plus-four: light-dark(
1273
+ hsl(var(--op-color-alerts-danger-h) var(--op-color-alerts-danger-s) 24%),
1274
+ hsl(var(--op-color-alerts-danger-h) var(--op-color-alerts-danger-s) 80%)
1275
+ );
1276
+ --op-color-alerts-danger-on-plus-four-alt: light-dark(
1277
+ hsl(var(--op-color-alerts-danger-h) var(--op-color-alerts-danger-s) 4%),
1278
+ hsl(var(--op-color-alerts-danger-h) var(--op-color-alerts-danger-s) 72%)
1279
+ );
1280
+ --op-color-alerts-danger-on-plus-three: light-dark(
1281
+ hsl(var(--op-color-alerts-danger-h) var(--op-color-alerts-danger-s) 20%),
1282
+ hsl(var(--op-color-alerts-danger-h) var(--op-color-alerts-danger-s) 88%)
1283
+ );
1284
+ --op-color-alerts-danger-on-plus-three-alt: light-dark(
1285
+ hsl(var(--op-color-alerts-danger-h) var(--op-color-alerts-danger-s) 10%),
1286
+ hsl(var(--op-color-alerts-danger-h) var(--op-color-alerts-danger-s) 76%)
1287
+ );
1288
+ --op-color-alerts-danger-on-plus-two: light-dark(
1289
+ hsl(var(--op-color-alerts-danger-h) var(--op-color-alerts-danger-s) 16%),
1290
+ hsl(var(--op-color-alerts-danger-h) var(--op-color-alerts-danger-s) 88%)
1291
+ );
1292
+ --op-color-alerts-danger-on-plus-two-alt: light-dark(
1293
+ hsl(var(--op-color-alerts-danger-h) var(--op-color-alerts-danger-s) 6%),
1294
+ hsl(var(--op-color-alerts-danger-h) var(--op-color-alerts-danger-s) 76%)
1295
+ );
1296
+ --op-color-alerts-danger-on-plus-one: light-dark(
1297
+ hsl(var(--op-color-alerts-danger-h) var(--op-color-alerts-danger-s) 8%),
1298
+ hsl(var(--op-color-alerts-danger-h) var(--op-color-alerts-danger-s) 96%)
1299
+ );
1300
+ --op-color-alerts-danger-on-plus-one-alt: light-dark(
1301
+ hsl(var(--op-color-alerts-danger-h) var(--op-color-alerts-danger-s) 3%),
1302
+ hsl(var(--op-color-alerts-danger-h) var(--op-color-alerts-danger-s) 84%)
1303
+ );
1304
+ --op-color-alerts-danger-on-base: light-dark(
1305
+ hsl(var(--op-color-alerts-danger-h) var(--op-color-alerts-danger-s) 100%),
1306
+ hsl(var(--op-color-alerts-danger-h) var(--op-color-alerts-danger-s) 98%)
1307
+ );
1308
+ --op-color-alerts-danger-on-base-alt: light-dark(
1309
+ hsl(var(--op-color-alerts-danger-h) var(--op-color-alerts-danger-s) 93%),
1310
+ hsl(var(--op-color-alerts-danger-h) var(--op-color-alerts-danger-s) 90%)
1311
+ );
1312
+ --op-color-alerts-danger-on-minus-one: light-dark(
1313
+ hsl(var(--op-color-alerts-danger-h) var(--op-color-alerts-danger-s) 94%),
1314
+ hsl(var(--op-color-alerts-danger-h) var(--op-color-alerts-danger-s) 96%)
1315
+ );
1316
+ --op-color-alerts-danger-on-minus-one-alt: light-dark(
1317
+ hsl(var(--op-color-alerts-danger-h) var(--op-color-alerts-danger-s) 89%),
1318
+ hsl(var(--op-color-alerts-danger-h) var(--op-color-alerts-danger-s) 88%)
1319
+ );
1320
+ --op-color-alerts-danger-on-minus-two: light-dark(
1321
+ hsl(var(--op-color-alerts-danger-h) var(--op-color-alerts-danger-s) 90%),
1322
+ hsl(var(--op-color-alerts-danger-h) var(--op-color-alerts-danger-s) 98%)
1323
+ );
1324
+ --op-color-alerts-danger-on-minus-two-alt: light-dark(
1325
+ hsl(var(--op-color-alerts-danger-h) var(--op-color-alerts-danger-s) 83%),
1326
+ hsl(var(--op-color-alerts-danger-h) var(--op-color-alerts-danger-s) 93%)
1327
+ );
1328
+ --op-color-alerts-danger-on-minus-three: light-dark(
1329
+ hsl(var(--op-color-alerts-danger-h) var(--op-color-alerts-danger-s) 86%),
1330
+ hsl(var(--op-color-alerts-danger-h) var(--op-color-alerts-danger-s) 6%)
1331
+ );
1332
+ --op-color-alerts-danger-on-minus-three-alt: light-dark(
1333
+ hsl(var(--op-color-alerts-danger-h) var(--op-color-alerts-danger-s) 79%),
1334
+ hsl(var(--op-color-alerts-danger-h) var(--op-color-alerts-danger-s) 2%)
1335
+ );
1336
+ --op-color-alerts-danger-on-minus-four: light-dark(
1337
+ hsl(var(--op-color-alerts-danger-h) var(--op-color-alerts-danger-s) 84%),
1338
+ hsl(var(--op-color-alerts-danger-h) var(--op-color-alerts-danger-s) 4%)
1339
+ );
1340
+ --op-color-alerts-danger-on-minus-four-alt: light-dark(
1341
+ hsl(var(--op-color-alerts-danger-h) var(--op-color-alerts-danger-s) 77%),
1342
+ hsl(var(--op-color-alerts-danger-h) var(--op-color-alerts-danger-s) 10%)
1343
+ );
1344
+ --op-color-alerts-danger-on-minus-five: light-dark(
1345
+ hsl(var(--op-color-alerts-danger-h) var(--op-color-alerts-danger-s) 88%),
1346
+ hsl(var(--op-color-alerts-danger-h) var(--op-color-alerts-danger-s) 2%)
1347
+ );
1348
+ --op-color-alerts-danger-on-minus-five-alt: light-dark(
1349
+ hsl(var(--op-color-alerts-danger-h) var(--op-color-alerts-danger-s) 81%),
1350
+ hsl(var(--op-color-alerts-danger-h) var(--op-color-alerts-danger-s) 10%)
1351
+ );
1352
+ --op-color-alerts-danger-on-minus-six: light-dark(
1353
+ hsl(var(--op-color-alerts-danger-h) var(--op-color-alerts-danger-s) 94%),
1354
+ hsl(var(--op-color-alerts-danger-h) var(--op-color-alerts-danger-s) 8%)
1355
+ );
1356
+ --op-color-alerts-danger-on-minus-six-alt: light-dark(
1357
+ hsl(var(--op-color-alerts-danger-h) var(--op-color-alerts-danger-s) 87%),
1358
+ hsl(var(--op-color-alerts-danger-h) var(--op-color-alerts-danger-s) 22%)
1359
+ );
1360
+ --op-color-alerts-danger-on-minus-seven: light-dark(
1361
+ hsl(var(--op-color-alerts-danger-h) var(--op-color-alerts-danger-s) 96%),
1362
+ hsl(var(--op-color-alerts-danger-h) var(--op-color-alerts-danger-s) 8%)
1363
+ );
1364
+ --op-color-alerts-danger-on-minus-seven-alt: light-dark(
1365
+ hsl(var(--op-color-alerts-danger-h) var(--op-color-alerts-danger-s) 89%),
1366
+ hsl(var(--op-color-alerts-danger-h) var(--op-color-alerts-danger-s) 28%)
1367
+ );
1368
+ --op-color-alerts-danger-on-minus-eight: light-dark(
1369
+ hsl(var(--op-color-alerts-danger-h) var(--op-color-alerts-danger-s) 98%),
1370
+ hsl(var(--op-color-alerts-danger-h) var(--op-color-alerts-danger-s) 4%)
1371
+ );
1372
+ --op-color-alerts-danger-on-minus-eight-alt: light-dark(
1373
+ hsl(var(--op-color-alerts-danger-h) var(--op-color-alerts-danger-s) 91%),
1374
+ hsl(var(--op-color-alerts-danger-h) var(--op-color-alerts-danger-s) 24%)
1375
+ );
1376
+ --op-color-alerts-danger-on-minus-max: light-dark(
1377
+ hsl(var(--op-color-alerts-danger-h) var(--op-color-alerts-danger-s) 100%),
1378
+ hsl(var(--op-color-alerts-danger-h) var(--op-color-alerts-danger-s) 0%)
1379
+ );
1380
+ --op-color-alerts-danger-on-minus-max-alt: light-dark(
1381
+ hsl(var(--op-color-alerts-danger-h) var(--op-color-alerts-danger-s) 93%),
1382
+ hsl(var(--op-color-alerts-danger-h) var(--op-color-alerts-danger-s) 24%)
1383
+ );
1384
+
1385
+ /**
1386
+ * @tokens Alerts Info Colors
1387
+ * @presenter Color
1388
+ */
1389
+
1390
+ /* prettier-ignore */
1391
+ --op-color-alerts-info-original: hsl(var(--op-color-alerts-info-h) var(--op-color-alerts-info-s) var(--op-color-alerts-info-l));
1392
+
1393
+ /* Main Scale */
1394
+ --op-color-alerts-info-plus-max: light-dark(
1395
+ hsl(var(--op-color-alerts-info-h) var(--op-color-alerts-info-s) 100%),
1396
+ hsl(var(--op-color-alerts-info-h) var(--op-color-alerts-info-s) 0%)
1397
+ );
1398
+ --op-color-alerts-info-plus-eight: light-dark(
1399
+ hsl(var(--op-color-alerts-info-h) var(--op-color-alerts-info-s) 98%),
1400
+ hsl(var(--op-color-alerts-info-h) var(--op-color-alerts-info-s) 4%)
1401
+ );
1402
+ --op-color-alerts-info-plus-seven: light-dark(
1403
+ hsl(var(--op-color-alerts-info-h) var(--op-color-alerts-info-s) 96%),
1404
+ hsl(var(--op-color-alerts-info-h) var(--op-color-alerts-info-s) 8%)
1405
+ );
1406
+ --op-color-alerts-info-plus-six: light-dark(
1407
+ hsl(var(--op-color-alerts-info-h) var(--op-color-alerts-info-s) 94%),
1408
+ hsl(var(--op-color-alerts-info-h) var(--op-color-alerts-info-s) 12%)
1409
+ );
1410
+ --op-color-alerts-info-plus-five: light-dark(
1411
+ hsl(var(--op-color-alerts-info-h) var(--op-color-alerts-info-s) 90%),
1412
+ hsl(var(--op-color-alerts-info-h) var(--op-color-alerts-info-s) 14%)
1413
+ );
1414
+ --op-color-alerts-info-plus-four: light-dark(
1415
+ hsl(var(--op-color-alerts-info-h) var(--op-color-alerts-info-s) 84%),
1416
+ hsl(var(--op-color-alerts-info-h) var(--op-color-alerts-info-s) 16%)
1417
+ );
1418
+ --op-color-alerts-info-plus-three: light-dark(
1419
+ hsl(var(--op-color-alerts-info-h) var(--op-color-alerts-info-s) 70%),
1420
+ hsl(var(--op-color-alerts-info-h) var(--op-color-alerts-info-s) 20%)
1421
+ );
1422
+ --op-color-alerts-info-plus-two: light-dark(
1423
+ hsl(var(--op-color-alerts-info-h) var(--op-color-alerts-info-s) 64%),
1424
+ hsl(var(--op-color-alerts-info-h) var(--op-color-alerts-info-s) 24%)
1425
+ );
1426
+ --op-color-alerts-info-plus-one: light-dark(
1427
+ hsl(var(--op-color-alerts-info-h) var(--op-color-alerts-info-s) 56%),
1428
+ hsl(var(--op-color-alerts-info-h) var(--op-color-alerts-info-s) 28%)
1429
+ );
1430
+ --op-color-alerts-info-base: light-dark(
1431
+ hsl(var(--op-color-alerts-info-h) var(--op-color-alerts-info-s) 40%),
1432
+ hsl(var(--op-color-alerts-info-h) var(--op-color-alerts-info-s) 32%)
1433
+ );
1434
+ --op-color-alerts-info-minus-one: light-dark(
1435
+ hsl(var(--op-color-alerts-info-h) var(--op-color-alerts-info-s) 36%),
1436
+ hsl(var(--op-color-alerts-info-h) var(--op-color-alerts-info-s) 36%)
1437
+ );
1438
+ --op-color-alerts-info-minus-two: light-dark(
1439
+ hsl(var(--op-color-alerts-info-h) var(--op-color-alerts-info-s) 32%),
1440
+ hsl(var(--op-color-alerts-info-h) var(--op-color-alerts-info-s) 40%)
1441
+ );
1442
+ --op-color-alerts-info-minus-three: light-dark(
1443
+ hsl(var(--op-color-alerts-info-h) var(--op-color-alerts-info-s) 28%),
1444
+ hsl(var(--op-color-alerts-info-h) var(--op-color-alerts-info-s) 48%)
1445
+ );
1446
+ --op-color-alerts-info-minus-four: light-dark(
1447
+ hsl(var(--op-color-alerts-info-h) var(--op-color-alerts-info-s) 24%),
1448
+ hsl(var(--op-color-alerts-info-h) var(--op-color-alerts-info-s) 52%)
1449
+ );
1450
+ --op-color-alerts-info-minus-five: light-dark(
1451
+ hsl(var(--op-color-alerts-info-h) var(--op-color-alerts-info-s) 20%),
1452
+ hsl(var(--op-color-alerts-info-h) var(--op-color-alerts-info-s) 64%)
1453
+ );
1454
+ --op-color-alerts-info-minus-six: light-dark(
1455
+ hsl(var(--op-color-alerts-info-h) var(--op-color-alerts-info-s) 16%),
1456
+ hsl(var(--op-color-alerts-info-h) var(--op-color-alerts-info-s) 72%)
1457
+ );
1458
+ --op-color-alerts-info-minus-seven: light-dark(
1459
+ hsl(var(--op-color-alerts-info-h) var(--op-color-alerts-info-s) 8%),
1460
+ hsl(var(--op-color-alerts-info-h) var(--op-color-alerts-info-s) 80%)
1461
+ );
1462
+ --op-color-alerts-info-minus-eight: light-dark(
1463
+ hsl(var(--op-color-alerts-info-h) var(--op-color-alerts-info-s) 4%),
1464
+ hsl(var(--op-color-alerts-info-h) var(--op-color-alerts-info-s) 88%)
1465
+ );
1466
+ --op-color-alerts-info-minus-max: light-dark(
1467
+ hsl(var(--op-color-alerts-info-h) var(--op-color-alerts-info-s) 0%),
1468
+ hsl(var(--op-color-alerts-info-h) var(--op-color-alerts-info-s) 100%)
1469
+ );
1470
+
1471
+ /* On Scale */
1472
+ --op-color-alerts-info-on-plus-max: light-dark(
1473
+ hsl(var(--op-color-alerts-info-h) var(--op-color-alerts-info-s) 0%),
1474
+ hsl(var(--op-color-alerts-info-h) var(--op-color-alerts-info-s) 100%)
1475
+ );
1476
+ --op-color-alerts-info-on-plus-max-alt: light-dark(
1477
+ hsl(var(--op-color-alerts-info-h) var(--op-color-alerts-info-s) 20%),
1478
+ hsl(var(--op-color-alerts-info-h) var(--op-color-alerts-info-s) 88%)
1479
+ );
1480
+ --op-color-alerts-info-on-plus-eight: light-dark(
1481
+ hsl(var(--op-color-alerts-info-h) var(--op-color-alerts-info-s) 4%),
1482
+ hsl(var(--op-color-alerts-info-h) var(--op-color-alerts-info-s) 88%)
1483
+ );
1484
+ --op-color-alerts-info-on-plus-eight-alt: light-dark(
1485
+ hsl(var(--op-color-alerts-info-h) var(--op-color-alerts-info-s) 24%),
1486
+ hsl(var(--op-color-alerts-info-h) var(--op-color-alerts-info-s) 78%)
1487
+ );
1488
+ --op-color-alerts-info-on-plus-seven: light-dark(
1489
+ hsl(var(--op-color-alerts-info-h) var(--op-color-alerts-info-s) 8%),
1490
+ hsl(var(--op-color-alerts-info-h) var(--op-color-alerts-info-s) 80%)
1491
+ );
1492
+ --op-color-alerts-info-on-plus-seven-alt: light-dark(
1493
+ hsl(var(--op-color-alerts-info-h) var(--op-color-alerts-info-s) 28%),
1494
+ hsl(var(--op-color-alerts-info-h) var(--op-color-alerts-info-s) 70%)
1495
+ );
1496
+ --op-color-alerts-info-on-plus-six: light-dark(
1497
+ hsl(var(--op-color-alerts-info-h) var(--op-color-alerts-info-s) 16%),
1498
+ hsl(var(--op-color-alerts-info-h) var(--op-color-alerts-info-s) 78%)
1499
+ );
1500
+ --op-color-alerts-info-on-plus-six-alt: light-dark(
1501
+ hsl(var(--op-color-alerts-info-h) var(--op-color-alerts-info-s) 36%),
1502
+ hsl(var(--op-color-alerts-info-h) var(--op-color-alerts-info-s) 62%)
1503
+ );
1504
+ --op-color-alerts-info-on-plus-five: light-dark(
1505
+ hsl(var(--op-color-alerts-info-h) var(--op-color-alerts-info-s) 20%),
1506
+ hsl(var(--op-color-alerts-info-h) var(--op-color-alerts-info-s) 76%)
1507
+ );
1508
+ --op-color-alerts-info-on-plus-five-alt: light-dark(
1509
+ hsl(var(--op-color-alerts-info-h) var(--op-color-alerts-info-s) 40%),
1510
+ hsl(var(--op-color-alerts-info-h) var(--op-color-alerts-info-s) 62%)
1511
+ );
1512
+ --op-color-alerts-info-on-plus-four: light-dark(
1513
+ hsl(var(--op-color-alerts-info-h) var(--op-color-alerts-info-s) 24%),
1514
+ hsl(var(--op-color-alerts-info-h) var(--op-color-alerts-info-s) 80%)
1515
+ );
1516
+ --op-color-alerts-info-on-plus-four-alt: light-dark(
1517
+ hsl(var(--op-color-alerts-info-h) var(--op-color-alerts-info-s) 4%),
1518
+ hsl(var(--op-color-alerts-info-h) var(--op-color-alerts-info-s) 66%)
1519
+ );
1520
+ --op-color-alerts-info-on-plus-three: light-dark(
1521
+ hsl(var(--op-color-alerts-info-h) var(--op-color-alerts-info-s) 20%),
1522
+ hsl(var(--op-color-alerts-info-h) var(--op-color-alerts-info-s) 88%)
1523
+ );
1524
+ --op-color-alerts-info-on-plus-three-alt: light-dark(
1525
+ hsl(var(--op-color-alerts-info-h) var(--op-color-alerts-info-s) 10%),
1526
+ hsl(var(--op-color-alerts-info-h) var(--op-color-alerts-info-s) 72%)
1527
+ );
1528
+ --op-color-alerts-info-on-plus-two: light-dark(
1529
+ hsl(var(--op-color-alerts-info-h) var(--op-color-alerts-info-s) 16%),
1530
+ hsl(var(--op-color-alerts-info-h) var(--op-color-alerts-info-s) 88%)
1531
+ );
1532
+ --op-color-alerts-info-on-plus-two-alt: light-dark(
1533
+ hsl(var(--op-color-alerts-info-h) var(--op-color-alerts-info-s) 6%),
1534
+ hsl(var(--op-color-alerts-info-h) var(--op-color-alerts-info-s) 74%)
1535
+ );
1536
+ --op-color-alerts-info-on-plus-one: light-dark(
1537
+ hsl(var(--op-color-alerts-info-h) var(--op-color-alerts-info-s) 8%),
1538
+ hsl(var(--op-color-alerts-info-h) var(--op-color-alerts-info-s) 96%)
1539
+ );
1540
+ --op-color-alerts-info-on-plus-one-alt: light-dark(
1541
+ hsl(var(--op-color-alerts-info-h) var(--op-color-alerts-info-s) 3%),
1542
+ hsl(var(--op-color-alerts-info-h) var(--op-color-alerts-info-s) 80%)
1543
+ );
1544
+ --op-color-alerts-info-on-base: light-dark(
1545
+ hsl(var(--op-color-alerts-info-h) var(--op-color-alerts-info-s) 100%),
1546
+ hsl(var(--op-color-alerts-info-h) var(--op-color-alerts-info-s) 98%)
1547
+ );
1548
+ --op-color-alerts-info-on-base-alt: light-dark(
1549
+ hsl(var(--op-color-alerts-info-h) var(--op-color-alerts-info-s) 88%),
1550
+ hsl(var(--op-color-alerts-info-h) var(--op-color-alerts-info-s) 78%)
1551
+ );
1552
+ --op-color-alerts-info-on-minus-one: light-dark(
1553
+ hsl(var(--op-color-alerts-info-h) var(--op-color-alerts-info-s) 94%),
1554
+ hsl(var(--op-color-alerts-info-h) var(--op-color-alerts-info-s) 94%)
1555
+ );
1556
+ --op-color-alerts-info-on-minus-one-alt: light-dark(
1557
+ hsl(var(--op-color-alerts-info-h) var(--op-color-alerts-info-s) 82%),
1558
+ hsl(var(--op-color-alerts-info-h) var(--op-color-alerts-info-s) 80%)
1559
+ );
1560
+ --op-color-alerts-info-on-minus-two: light-dark(
1561
+ hsl(var(--op-color-alerts-info-h) var(--op-color-alerts-info-s) 90%),
1562
+ hsl(var(--op-color-alerts-info-h) var(--op-color-alerts-info-s) 94%)
1563
+ );
1564
+ --op-color-alerts-info-on-minus-two-alt: light-dark(
1565
+ hsl(var(--op-color-alerts-info-h) var(--op-color-alerts-info-s) 78%),
1566
+ hsl(var(--op-color-alerts-info-h) var(--op-color-alerts-info-s) 86%)
1567
+ );
1568
+ --op-color-alerts-info-on-minus-three: light-dark(
1569
+ hsl(var(--op-color-alerts-info-h) var(--op-color-alerts-info-s) 86%),
1570
+ hsl(var(--op-color-alerts-info-h) var(--op-color-alerts-info-s) 98%)
1571
+ );
1572
+ --op-color-alerts-info-on-minus-three-alt: light-dark(
1573
+ hsl(var(--op-color-alerts-info-h) var(--op-color-alerts-info-s) 74%),
1574
+ hsl(var(--op-color-alerts-info-h) var(--op-color-alerts-info-s) 96%)
1575
+ );
1576
+ --op-color-alerts-info-on-minus-four: light-dark(
1577
+ hsl(var(--op-color-alerts-info-h) var(--op-color-alerts-info-s) 84%),
1578
+ hsl(var(--op-color-alerts-info-h) var(--op-color-alerts-info-s) 2%)
1579
+ );
1580
+ --op-color-alerts-info-on-minus-four-alt: light-dark(
1581
+ hsl(var(--op-color-alerts-info-h) var(--op-color-alerts-info-s) 72%),
1582
+ hsl(var(--op-color-alerts-info-h) var(--op-color-alerts-info-s) 2%)
1583
+ );
1584
+ --op-color-alerts-info-on-minus-five: light-dark(
1585
+ hsl(var(--op-color-alerts-info-h) var(--op-color-alerts-info-s) 88%),
1586
+ hsl(var(--op-color-alerts-info-h) var(--op-color-alerts-info-s) 8%)
1587
+ );
1588
+ --op-color-alerts-info-on-minus-five-alt: light-dark(
1589
+ hsl(var(--op-color-alerts-info-h) var(--op-color-alerts-info-s) 76%),
1590
+ hsl(var(--op-color-alerts-info-h) var(--op-color-alerts-info-s) 20%)
1591
+ );
1592
+ --op-color-alerts-info-on-minus-six: light-dark(
1593
+ hsl(var(--op-color-alerts-info-h) var(--op-color-alerts-info-s) 94%),
1594
+ hsl(var(--op-color-alerts-info-h) var(--op-color-alerts-info-s) 4%)
1595
+ );
1596
+ --op-color-alerts-info-on-minus-six-alt: light-dark(
1597
+ hsl(var(--op-color-alerts-info-h) var(--op-color-alerts-info-s) 82%),
1598
+ hsl(var(--op-color-alerts-info-h) var(--op-color-alerts-info-s) 28%)
1599
+ );
1600
+ --op-color-alerts-info-on-minus-seven: light-dark(
1601
+ hsl(var(--op-color-alerts-info-h) var(--op-color-alerts-info-s) 96%),
1602
+ hsl(var(--op-color-alerts-info-h) var(--op-color-alerts-info-s) 4%)
1603
+ );
1604
+ --op-color-alerts-info-on-minus-seven-alt: light-dark(
1605
+ hsl(var(--op-color-alerts-info-h) var(--op-color-alerts-info-s) 84%),
1606
+ hsl(var(--op-color-alerts-info-h) var(--op-color-alerts-info-s) 28%)
1607
+ );
1608
+ --op-color-alerts-info-on-minus-eight: light-dark(
1609
+ hsl(var(--op-color-alerts-info-h) var(--op-color-alerts-info-s) 98%),
1610
+ hsl(var(--op-color-alerts-info-h) var(--op-color-alerts-info-s) 4%)
1611
+ );
1612
+ --op-color-alerts-info-on-minus-eight-alt: light-dark(
1613
+ hsl(var(--op-color-alerts-info-h) var(--op-color-alerts-info-s) 86%),
1614
+ hsl(var(--op-color-alerts-info-h) var(--op-color-alerts-info-s) 34%)
1615
+ );
1616
+ --op-color-alerts-info-on-minus-max: light-dark(
1617
+ hsl(var(--op-color-alerts-info-h) var(--op-color-alerts-info-s) 100%),
1618
+ hsl(var(--op-color-alerts-info-h) var(--op-color-alerts-info-s) 0%)
1619
+ );
1620
+ --op-color-alerts-info-on-minus-max-alt: light-dark(
1621
+ hsl(var(--op-color-alerts-info-h) var(--op-color-alerts-info-s) 88%),
1622
+ hsl(var(--op-color-alerts-info-h) var(--op-color-alerts-info-s) 32%)
1623
+ );
1624
+
1625
+ /**
1626
+ * @tokens Alerts Notice Colors
1627
+ * @presenter Color
1628
+ */
1629
+
1630
+ /* prettier-ignore */
1631
+ --op-color-alerts-notice-original: hsl(var(--op-color-alerts-notice-h) var(--op-color-alerts-notice-s) var(--op-color-alerts-notice-l));
1632
+
1633
+ /* Main Scale */
1634
+ --op-color-alerts-notice-plus-max: light-dark(
1635
+ hsl(var(--op-color-alerts-notice-h) var(--op-color-alerts-notice-s) 100%),
1636
+ hsl(var(--op-color-alerts-notice-h) var(--op-color-alerts-notice-s) 0%)
1637
+ );
1638
+ --op-color-alerts-notice-plus-eight: light-dark(
1639
+ hsl(var(--op-color-alerts-notice-h) var(--op-color-alerts-notice-s) 98%),
1640
+ hsl(var(--op-color-alerts-notice-h) var(--op-color-alerts-notice-s) 4%)
1641
+ );
1642
+ --op-color-alerts-notice-plus-seven: light-dark(
1643
+ hsl(var(--op-color-alerts-notice-h) var(--op-color-alerts-notice-s) 96%),
1644
+ hsl(var(--op-color-alerts-notice-h) var(--op-color-alerts-notice-s) 8%)
1645
+ );
1646
+ --op-color-alerts-notice-plus-six: light-dark(
1647
+ hsl(var(--op-color-alerts-notice-h) var(--op-color-alerts-notice-s) 94%),
1648
+ hsl(var(--op-color-alerts-notice-h) var(--op-color-alerts-notice-s) 12%)
1649
+ );
1650
+ --op-color-alerts-notice-plus-five: light-dark(
1651
+ hsl(var(--op-color-alerts-notice-h) var(--op-color-alerts-notice-s) 90%),
1652
+ hsl(var(--op-color-alerts-notice-h) var(--op-color-alerts-notice-s) 14%)
1653
+ );
1654
+ --op-color-alerts-notice-plus-four: light-dark(
1655
+ hsl(var(--op-color-alerts-notice-h) var(--op-color-alerts-notice-s) 84%),
1656
+ hsl(var(--op-color-alerts-notice-h) var(--op-color-alerts-notice-s) 16%)
1657
+ );
1658
+ --op-color-alerts-notice-plus-three: light-dark(
1659
+ hsl(var(--op-color-alerts-notice-h) var(--op-color-alerts-notice-s) 70%),
1660
+ hsl(var(--op-color-alerts-notice-h) var(--op-color-alerts-notice-s) 20%)
1661
+ );
1662
+ --op-color-alerts-notice-plus-two: light-dark(
1663
+ hsl(var(--op-color-alerts-notice-h) var(--op-color-alerts-notice-s) 64%),
1664
+ hsl(var(--op-color-alerts-notice-h) var(--op-color-alerts-notice-s) 24%)
1665
+ );
1666
+ --op-color-alerts-notice-plus-one: light-dark(
1667
+ hsl(var(--op-color-alerts-notice-h) var(--op-color-alerts-notice-s) 47%),
1668
+ hsl(var(--op-color-alerts-notice-h) var(--op-color-alerts-notice-s) 28%)
1669
+ );
1670
+ --op-color-alerts-notice-base: light-dark(
1671
+ hsl(var(--op-color-alerts-notice-h) var(--op-color-alerts-notice-s) 40%),
1672
+ hsl(var(--op-color-alerts-notice-h) var(--op-color-alerts-notice-s) 32%)
1673
+ );
1674
+ --op-color-alerts-notice-minus-one: light-dark(
1675
+ hsl(var(--op-color-alerts-notice-h) var(--op-color-alerts-notice-s) 32%),
1676
+ hsl(var(--op-color-alerts-notice-h) var(--op-color-alerts-notice-s) 36%)
1677
+ );
1678
+ --op-color-alerts-notice-minus-two: light-dark(
1679
+ hsl(var(--op-color-alerts-notice-h) var(--op-color-alerts-notice-s) 28%),
1680
+ hsl(var(--op-color-alerts-notice-h) var(--op-color-alerts-notice-s) 40%)
1681
+ );
1682
+ --op-color-alerts-notice-minus-three: light-dark(
1683
+ hsl(var(--op-color-alerts-notice-h) var(--op-color-alerts-notice-s) 26%),
1684
+ hsl(var(--op-color-alerts-notice-h) var(--op-color-alerts-notice-s) 48%)
1685
+ );
1686
+ --op-color-alerts-notice-minus-four: light-dark(
1687
+ hsl(var(--op-color-alerts-notice-h) var(--op-color-alerts-notice-s) 22%),
1688
+ hsl(var(--op-color-alerts-notice-h) var(--op-color-alerts-notice-s) 52%)
1689
+ );
1690
+ --op-color-alerts-notice-minus-five: light-dark(
1691
+ hsl(var(--op-color-alerts-notice-h) var(--op-color-alerts-notice-s) 18%),
1692
+ hsl(var(--op-color-alerts-notice-h) var(--op-color-alerts-notice-s) 64%)
1693
+ );
1694
+ --op-color-alerts-notice-minus-six: light-dark(
1695
+ hsl(var(--op-color-alerts-notice-h) var(--op-color-alerts-notice-s) 16%),
1696
+ hsl(var(--op-color-alerts-notice-h) var(--op-color-alerts-notice-s) 72%)
1697
+ );
1698
+ --op-color-alerts-notice-minus-seven: light-dark(
1699
+ hsl(var(--op-color-alerts-notice-h) var(--op-color-alerts-notice-s) 8%),
1700
+ hsl(var(--op-color-alerts-notice-h) var(--op-color-alerts-notice-s) 80%)
1701
+ );
1702
+ --op-color-alerts-notice-minus-eight: light-dark(
1703
+ hsl(var(--op-color-alerts-notice-h) var(--op-color-alerts-notice-s) 4%),
1704
+ hsl(var(--op-color-alerts-notice-h) var(--op-color-alerts-notice-s) 88%)
1705
+ );
1706
+ --op-color-alerts-notice-minus-max: light-dark(
1707
+ hsl(var(--op-color-alerts-notice-h) var(--op-color-alerts-notice-s) 0%),
1708
+ hsl(var(--op-color-alerts-notice-h) var(--op-color-alerts-notice-s) 100%)
1709
+ );
1710
+
1711
+ /* On Scale */
1712
+ --op-color-alerts-notice-on-plus-max: light-dark(
1713
+ hsl(var(--op-color-alerts-notice-h) var(--op-color-alerts-notice-s) 0%),
1714
+ hsl(var(--op-color-alerts-notice-h) var(--op-color-alerts-notice-s) 100%)
1715
+ );
1716
+ --op-color-alerts-notice-on-plus-max-alt: light-dark(
1717
+ hsl(var(--op-color-alerts-notice-h) var(--op-color-alerts-notice-s) 20%),
1718
+ hsl(var(--op-color-alerts-notice-h) var(--op-color-alerts-notice-s) 88%)
1719
+ );
1720
+ --op-color-alerts-notice-on-plus-eight: light-dark(
1721
+ hsl(var(--op-color-alerts-notice-h) var(--op-color-alerts-notice-s) 4%),
1722
+ hsl(var(--op-color-alerts-notice-h) var(--op-color-alerts-notice-s) 94%)
1723
+ );
1724
+ --op-color-alerts-notice-on-plus-eight-alt: light-dark(
1725
+ hsl(var(--op-color-alerts-notice-h) var(--op-color-alerts-notice-s) 24%),
1726
+ hsl(var(--op-color-alerts-notice-h) var(--op-color-alerts-notice-s) 82%)
1727
+ );
1728
+ --op-color-alerts-notice-on-plus-seven: light-dark(
1729
+ hsl(var(--op-color-alerts-notice-h) var(--op-color-alerts-notice-s) 8%),
1730
+ hsl(var(--op-color-alerts-notice-h) var(--op-color-alerts-notice-s) 90%)
1731
+ );
1732
+ --op-color-alerts-notice-on-plus-seven-alt: light-dark(
1733
+ hsl(var(--op-color-alerts-notice-h) var(--op-color-alerts-notice-s) 28%),
1734
+ hsl(var(--op-color-alerts-notice-h) var(--op-color-alerts-notice-s) 80%)
1735
+ );
1736
+ --op-color-alerts-notice-on-plus-six: light-dark(
1737
+ hsl(var(--op-color-alerts-notice-h) var(--op-color-alerts-notice-s) 16%),
1738
+ hsl(var(--op-color-alerts-notice-h) var(--op-color-alerts-notice-s) 92%)
1739
+ );
1740
+ --op-color-alerts-notice-on-plus-six-alt: light-dark(
1741
+ hsl(var(--op-color-alerts-notice-h) var(--op-color-alerts-notice-s) 26%),
1742
+ hsl(var(--op-color-alerts-notice-h) var(--op-color-alerts-notice-s) 72%)
1743
+ );
1744
+ --op-color-alerts-notice-on-plus-five: light-dark(
1745
+ hsl(var(--op-color-alerts-notice-h) var(--op-color-alerts-notice-s) 20%),
1746
+ hsl(var(--op-color-alerts-notice-h) var(--op-color-alerts-notice-s) 92%)
1747
+ );
1748
+ --op-color-alerts-notice-on-plus-five-alt: light-dark(
1749
+ hsl(var(--op-color-alerts-notice-h) var(--op-color-alerts-notice-s) 30%),
1750
+ hsl(var(--op-color-alerts-notice-h) var(--op-color-alerts-notice-s) 72%)
1751
+ );
1752
+ --op-color-alerts-notice-on-plus-four: light-dark(
1753
+ hsl(var(--op-color-alerts-notice-h) var(--op-color-alerts-notice-s) 24%),
1754
+ hsl(var(--op-color-alerts-notice-h) var(--op-color-alerts-notice-s) 94%)
1755
+ );
1756
+ --op-color-alerts-notice-on-plus-four-alt: light-dark(
1757
+ hsl(var(--op-color-alerts-notice-h) var(--op-color-alerts-notice-s) 4%),
1758
+ hsl(var(--op-color-alerts-notice-h) var(--op-color-alerts-notice-s) 80%)
1759
+ );
1760
+ --op-color-alerts-notice-on-plus-three: light-dark(
1761
+ hsl(var(--op-color-alerts-notice-h) var(--op-color-alerts-notice-s) 20%),
1762
+ hsl(var(--op-color-alerts-notice-h) var(--op-color-alerts-notice-s) 98%)
1763
+ );
1764
+ --op-color-alerts-notice-on-plus-three-alt: light-dark(
1765
+ hsl(var(--op-color-alerts-notice-h) var(--op-color-alerts-notice-s) 10%),
1766
+ hsl(var(--op-color-alerts-notice-h) var(--op-color-alerts-notice-s) 78%)
1767
+ );
1768
+ --op-color-alerts-notice-on-plus-two: light-dark(
1769
+ hsl(var(--op-color-alerts-notice-h) var(--op-color-alerts-notice-s) 16%),
1770
+ hsl(var(--op-color-alerts-notice-h) var(--op-color-alerts-notice-s) 98%)
1771
+ );
1772
+ --op-color-alerts-notice-on-plus-two-alt: light-dark(
1773
+ hsl(var(--op-color-alerts-notice-h) var(--op-color-alerts-notice-s) 6%),
1774
+ hsl(var(--op-color-alerts-notice-h) var(--op-color-alerts-notice-s) 88%)
1775
+ );
1776
+ --op-color-alerts-notice-on-plus-one: light-dark(
1777
+ hsl(var(--op-color-alerts-notice-h) var(--op-color-alerts-notice-s) 8%),
1778
+ hsl(var(--op-color-alerts-notice-h) var(--op-color-alerts-notice-s) 98%)
1779
+ );
1780
+ --op-color-alerts-notice-on-plus-one-alt: light-dark(
1781
+ hsl(var(--op-color-alerts-notice-h) var(--op-color-alerts-notice-s) 3%),
1782
+ hsl(var(--op-color-alerts-notice-h) var(--op-color-alerts-notice-s) 84%)
1783
+ );
1784
+ --op-color-alerts-notice-on-base: light-dark(
1785
+ hsl(var(--op-color-alerts-notice-h) var(--op-color-alerts-notice-s) 8%),
1786
+ hsl(var(--op-color-alerts-notice-h) var(--op-color-alerts-notice-s) 99%)
1787
+ );
1788
+ --op-color-alerts-notice-on-base-alt: light-dark(
1789
+ hsl(var(--op-color-alerts-notice-h) var(--op-color-alerts-notice-s) 0%),
1790
+ hsl(var(--op-color-alerts-notice-h) var(--op-color-alerts-notice-s) 96%)
1791
+ );
1792
+ --op-color-alerts-notice-on-minus-one: light-dark(
1793
+ hsl(var(--op-color-alerts-notice-h) var(--op-color-alerts-notice-s) 100%),
1794
+ hsl(var(--op-color-alerts-notice-h) var(--op-color-alerts-notice-s) 2%)
1795
+ );
1796
+ --op-color-alerts-notice-on-minus-one-alt: light-dark(
1797
+ hsl(var(--op-color-alerts-notice-h) var(--op-color-alerts-notice-s) 96%),
1798
+ hsl(var(--op-color-alerts-notice-h) var(--op-color-alerts-notice-s) 7%)
1799
+ );
1800
+ --op-color-alerts-notice-on-minus-two: light-dark(
1801
+ hsl(var(--op-color-alerts-notice-h) var(--op-color-alerts-notice-s) 96%),
1802
+ hsl(var(--op-color-alerts-notice-h) var(--op-color-alerts-notice-s) 2%)
1803
+ );
1804
+ --op-color-alerts-notice-on-minus-two-alt: light-dark(
1805
+ hsl(var(--op-color-alerts-notice-h) var(--op-color-alerts-notice-s) 89%),
1806
+ hsl(var(--op-color-alerts-notice-h) var(--op-color-alerts-notice-s) 10%)
1807
+ );
1808
+ --op-color-alerts-notice-on-minus-three: light-dark(
1809
+ hsl(var(--op-color-alerts-notice-h) var(--op-color-alerts-notice-s) 92%),
1810
+ hsl(var(--op-color-alerts-notice-h) var(--op-color-alerts-notice-s) 2%)
1811
+ );
1812
+ --op-color-alerts-notice-on-minus-three-alt: light-dark(
1813
+ hsl(var(--op-color-alerts-notice-h) var(--op-color-alerts-notice-s) 85%),
1814
+ hsl(var(--op-color-alerts-notice-h) var(--op-color-alerts-notice-s) 18%)
1815
+ );
1816
+ --op-color-alerts-notice-on-minus-four: light-dark(
1817
+ hsl(var(--op-color-alerts-notice-h) var(--op-color-alerts-notice-s) 88%),
1818
+ hsl(var(--op-color-alerts-notice-h) var(--op-color-alerts-notice-s) 2%)
1819
+ );
1820
+ --op-color-alerts-notice-on-minus-four-alt: light-dark(
1821
+ hsl(var(--op-color-alerts-notice-h) var(--op-color-alerts-notice-s) 81%),
1822
+ hsl(var(--op-color-alerts-notice-h) var(--op-color-alerts-notice-s) 20%)
1823
+ );
1824
+ --op-color-alerts-notice-on-minus-five: light-dark(
1825
+ hsl(var(--op-color-alerts-notice-h) var(--op-color-alerts-notice-s) 88%),
1826
+ hsl(var(--op-color-alerts-notice-h) var(--op-color-alerts-notice-s) 6%)
1827
+ );
1828
+ --op-color-alerts-notice-on-minus-five-alt: light-dark(
1829
+ hsl(var(--op-color-alerts-notice-h) var(--op-color-alerts-notice-s) 76%),
1830
+ hsl(var(--op-color-alerts-notice-h) var(--op-color-alerts-notice-s) 20%)
1831
+ );
1832
+ --op-color-alerts-notice-on-minus-six: light-dark(
1833
+ hsl(var(--op-color-alerts-notice-h) var(--op-color-alerts-notice-s) 94%),
1834
+ hsl(var(--op-color-alerts-notice-h) var(--op-color-alerts-notice-s) 2%)
1835
+ );
1836
+ --op-color-alerts-notice-on-minus-six-alt: light-dark(
1837
+ hsl(var(--op-color-alerts-notice-h) var(--op-color-alerts-notice-s) 82%),
1838
+ hsl(var(--op-color-alerts-notice-h) var(--op-color-alerts-notice-s) 16%)
1839
+ );
1840
+ --op-color-alerts-notice-on-minus-seven: light-dark(
1841
+ hsl(var(--op-color-alerts-notice-h) var(--op-color-alerts-notice-s) 96%),
1842
+ hsl(var(--op-color-alerts-notice-h) var(--op-color-alerts-notice-s) 2%)
1843
+ );
1844
+ --op-color-alerts-notice-on-minus-seven-alt: light-dark(
1845
+ hsl(var(--op-color-alerts-notice-h) var(--op-color-alerts-notice-s) 84%),
1846
+ hsl(var(--op-color-alerts-notice-h) var(--op-color-alerts-notice-s) 26%)
1847
+ );
1848
+ --op-color-alerts-notice-on-minus-eight: light-dark(
1849
+ hsl(var(--op-color-alerts-notice-h) var(--op-color-alerts-notice-s) 98%),
1850
+ hsl(var(--op-color-alerts-notice-h) var(--op-color-alerts-notice-s) 2%)
1851
+ );
1852
+ --op-color-alerts-notice-on-minus-eight-alt: light-dark(
1853
+ hsl(var(--op-color-alerts-notice-h) var(--op-color-alerts-notice-s) 86%),
1854
+ hsl(var(--op-color-alerts-notice-h) var(--op-color-alerts-notice-s) 24%)
1855
+ );
1856
+ --op-color-alerts-notice-on-minus-max: light-dark(
1857
+ hsl(var(--op-color-alerts-notice-h) var(--op-color-alerts-notice-s) 100%),
1858
+ hsl(var(--op-color-alerts-notice-h) var(--op-color-alerts-notice-s) 0%)
1859
+ );
1860
+ --op-color-alerts-notice-on-minus-max-alt: light-dark(
1861
+ hsl(var(--op-color-alerts-notice-h) var(--op-color-alerts-notice-s) 88%),
1862
+ hsl(var(--op-color-alerts-notice-h) var(--op-color-alerts-notice-s) 28%)
1863
+ );
1864
+
1865
+ /**
1866
+ * @tokens Dark Shadows
1867
+ * @presenter Shadow
1868
+ */
1869
+ --op-color-background: var(--op-color-neutral-plus-eight);
1870
+ --op-color-on-background: var(--op-color-neutral-on-plus-eight);
1871
+ --op-color-on-background-alt: var(--op-color-neutral-on-plus-eight-alt);
1872
+ }
1873
+ /* Force Light Mode */
1874
+ :root[data-theme-mode='light'] {
1875
+ color-scheme: only light;
1876
+ }
1877
+ /* Force Dark Mode */
1878
+ :root[data-theme-mode='dark'] {
1879
+ color-scheme: only dark;
1880
+
1881
+ /**
1882
+ * @tokens Dark Shadows
1883
+ * @presenter Shadow
1884
+ */
1885
+ --op-shadow-x-small: 0 1px 3px hsl(0deg 0% 0% / 15%), 0 1px 2px hsl(0deg 0% 0% / 30%);
1886
+ --op-shadow-small: 0 2px 6px hsl(0deg 0% 0% / 15%), 0 1px 2px hsl(0deg 0% 0% / 30%);
1887
+ --op-shadow-medium: 0 4px 8px hsl(0deg 0% 0% / 15%), 0 1px 3px hsl(0deg 0% 0% / 30%);
1888
+ --op-shadow-large: 0 6px 10px hsl(0deg 0% 0% / 15%), 0 2px 3px hsl(0deg 0% 0% / 30%);
1889
+ --op-shadow-x-large: 0 8px 12px hsl(0deg 0% 0% / 15%), 0 4px 4px hsl(0deg 0% 0% / 30%);
1890
+
1891
+ /**
1892
+ * @tokens Encoded Images
1893
+ */
1894
+ --op-encoded-images-dropdown-arrow: url('data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTIiIGhlaWdodD0iOSIgdmlld0JveD0iMCAwIDEyIDkiIGZpbGw9IiNmZmYiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+CjxwYXRoIGQ9Ik02IDguMzc1MDFMMCAyLjM3NTAxTDEuNCAwLjk3NTAwNkw2IDUuNTc1MDFMMTAuNiAwLjk3NTAwNkwxMiAyLjM3NTAxTDYgOC4zNzUwMVoiIGZpbGw9IiNmZmYiLz4KPC9zdmc+Cg==');
1895
+ }
1896
+ @media (prefers-color-scheme: dark) {
1897
+ :root:not([data-theme-mode='light']) {
1898
+ /**
1899
+ * @tokens Dark Shadows
1900
+ * @presenter Shadow
1901
+ */
1902
+ --op-shadow-x-small: 0 1px 3px hsl(0deg 0% 0% / 15%), 0 1px 2px hsl(0deg 0% 0% / 30%);
1903
+ --op-shadow-small: 0 2px 6px hsl(0deg 0% 0% / 15%), 0 1px 2px hsl(0deg 0% 0% / 30%);
1904
+ --op-shadow-medium: 0 4px 8px hsl(0deg 0% 0% / 15%), 0 1px 3px hsl(0deg 0% 0% / 30%);
1905
+ --op-shadow-large: 0 6px 10px hsl(0deg 0% 0% / 15%), 0 2px 3px hsl(0deg 0% 0% / 30%);
1906
+ --op-shadow-x-large: 0 8px 12px hsl(0deg 0% 0% / 15%), 0 4px 4px hsl(0deg 0% 0% / 30%);
1907
+
1908
+ /**
1909
+ * @tokens Encoded Images
1910
+ */
1911
+ --op-encoded-images-dropdown-arrow: url('data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTIiIGhlaWdodD0iOSIgdmlld0JveD0iMCAwIDEyIDkiIGZpbGw9IiNmZmYiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+CjxwYXRoIGQ9Ik02IDguMzc1MDFMMCAyLjM3NTAxTDEuNCAwLjk3NTAwNkw2IDUuNTc1MDFMMTAuNiAwLjk3NTAwNkwxMiAyLjM3NTAxTDYgOC4zNzUwMVoiIGZpbGw9IiNmZmYiLz4KPC9zdmc+Cg==');
1912
+ }
1913
+ }
1914
+ /* Base styles and utilities */
1915
+ /* After a reset, introduce base element styles specific to this system */
1916
+ html {
1917
+ overflow: hidden; /* Needed to prevent flash messages and panels from causing overflow */
1918
+ font-family: var(--op-font-family);
1919
+ font-size: 62.5%; /* 1rem = 10px */
1920
+ }
1921
+ body {
1922
+ overflow: auto;
1923
+ height: 100vh;
1924
+ background: var(--op-color-background);
1925
+ color: var(--op-color-on-background);
1926
+ font-size: var(--op-font-medium);
1927
+ }
1928
+ button {
1929
+ background: none;
1930
+ cursor: pointer;
1931
+ }
1932
+ button,
1933
+ input[type='submit'] {
1934
+ border: 0;
1935
+ }
1936
+ label {
1937
+ display: inline-block;
1938
+
1939
+ &:hover {
1940
+ cursor: pointer;
1941
+ }
1942
+ }
1943
+ a {
1944
+ color: var(--op-color-primary-original);
1945
+ }
1946
+ blockquote,
1947
+ dl,
1948
+ dd,
1949
+ h1,
1950
+ h2,
1951
+ h3,
1952
+ h4,
1953
+ h5,
1954
+ h6,
1955
+ figure,
1956
+ pre {
1957
+ margin: 0;
1958
+ }
1959
+ h1,
1960
+ h2,
1961
+ h3,
1962
+ h4,
1963
+ h5,
1964
+ h6 {
1965
+ margin-top: 0;
1966
+ margin-bottom: var(--op-space-small);
1967
+ font-weight: var(--op-font-weight-normal);
1968
+ }
1969
+ h1 {
1970
+ font-size: var(--op-font-3x-large);
1971
+ }
1972
+ h2 {
1973
+ font-size: var(--op-font-2x-large);
1974
+ }
1975
+ h3 {
1976
+ font-size: var(--op-font-large);
1977
+ }
1978
+ h4 {
1979
+ font-size: var(--op-font-medium);
1980
+ }
1981
+ h5 {
1982
+ font-size: var(--op-font-small);
1983
+ }
1984
+ h6 {
1985
+ font-size: var(--op-font-x-small);
1986
+ }
1987
+ p {
1988
+ margin-bottom: var(--op-space-small);
1989
+ font-size: var(--op-font-medium);
1990
+ }
1991
+ small {
1992
+ font-size: var(--op-font-small);
1993
+ }
1994
+ .app-with-sidebar {
1995
+ display: grid;
1996
+ width: 100%;
1997
+ height: 100vh;
1998
+ grid-template-columns: auto 1fr auto;
1999
+ }
2000
+ .app-body {
2001
+ display: flex;
2002
+ overflow: auto;
2003
+ flex-direction: column;
2004
+ }
2005
+ .app__header {
2006
+ position: sticky;
2007
+ z-index: var(--op-z-index-header);
2008
+ top: 0;
2009
+ flex-grow: 0;
2010
+ flex-shrink: 0;
2011
+ }
2012
+ .app__content {
2013
+ width: 100%;
2014
+ max-width: var(--op-breakpoint-medium);
2015
+ flex-grow: 1;
2016
+ padding: 0 var(--op-space-large);
2017
+ margin: 0 auto;
2018
+ }
2019
+ .app__content-no-margin {
2020
+ width: 100%;
2021
+ flex-grow: 1;
2022
+ padding: 0 var(--op-space-large);
2023
+ overflow-y: auto;
2024
+ }
2025
+ .app__footer {
2026
+ position: sticky;
2027
+ z-index: var(--op-z-index-footer);
2028
+ bottom: 0;
2029
+ flex-grow: 0;
2030
+ flex-shrink: 0;
2031
+ }
2032
+ /* Container Properties */
2033
+ .container {
2034
+ width: 100%;
2035
+ max-width: var(--op-breakpoint-medium);
2036
+ padding: 0 var(--op-space-large);
2037
+ margin: 0 auto;
2038
+ }
2039
+ .container--sm {
2040
+ max-width: var(--op-breakpoint-small);
2041
+ }
2042
+ .container--md-padding {
2043
+ padding: 0 var(--op-space-medium);
2044
+ }
2045
+ .container--sm-padding {
2046
+ padding: 0 var(--op-space-small);
2047
+ }
2048
+ .container--xs {
2049
+ max-width: var(--op-breakpoint-x-small);
2050
+ }
2051
+ /* Width Properties */
2052
+ .full-width {
2053
+ width: 100%;
2054
+ }
2055
+ .half-width {
2056
+ width: 50%;
2057
+ }
2058
+ .four-fifths-width {
2059
+ width: calc(100% * 4 / 5);
2060
+ }
2061
+ .three-fifths-width {
2062
+ width: calc(100% * 3 / 5);
2063
+ }
2064
+ .two-fifths-width {
2065
+ width: calc(100% * 2 / 5);
2066
+ }
2067
+ .one-fifth-width {
2068
+ width: calc(100% * 1 / 5);
2069
+ }
2070
+ .three-quarters-width {
2071
+ width: calc(100% * 3 / 4);
2072
+ }
2073
+ .one-quarter-width {
2074
+ width: calc(100% * 1 / 4);
2075
+ }
2076
+ .two-thirds-width {
2077
+ width: calc(100% * 2 / 3);
2078
+ }
2079
+ .one-third-width {
2080
+ width: calc(100% * 1 / 3);
2081
+ }
2082
+ /* Flex Properties */
2083
+ .flex {
2084
+ display: flex;
2085
+ }
2086
+ .flex-col {
2087
+ flex-direction: column;
2088
+ }
2089
+ .flex-row {
2090
+ flex-direction: row;
2091
+ }
2092
+ .flex-wrap {
2093
+ flex-wrap: wrap;
2094
+ }
2095
+ .flex-no-wrap {
2096
+ flex-wrap: nowrap;
2097
+ }
2098
+ .flex-grow-1 {
2099
+ flex-grow: 1;
2100
+ }
2101
+ /* Gap Properties */
2102
+ .gap-xxs {
2103
+ gap: var(--op-space-2x-small);
2104
+
2105
+ --op-gap: var(--op-space-2x-small);
2106
+ }
2107
+ .gap-xs {
2108
+ gap: var(--op-space-x-small);
2109
+
2110
+ --op-gap: var(--op-space-x-small);
2111
+ }
2112
+ .gap-sm {
2113
+ gap: var(--op-space-small);
2114
+
2115
+ --op-gap: var(--op-space-small);
2116
+ }
2117
+ .gap-md {
2118
+ gap: var(--op-space-medium);
2119
+
2120
+ --op-gap: var(--op-space-medium);
2121
+ }
2122
+ .gap-lg {
2123
+ gap: var(--op-space-large);
2124
+
2125
+ --op-gap: var(--op-space-large);
2126
+ }
2127
+ .gap-xl {
2128
+ gap: var(--op-space-x-large);
2129
+
2130
+ --op-gap: var(--op-space-x-large);
2131
+ }
2132
+ /* Justify Content */
2133
+ .justify-start {
2134
+ justify-content: flex-start;
2135
+ }
2136
+ .justify-center {
2137
+ justify-content: center;
2138
+ }
2139
+ .justify-end {
2140
+ justify-content: flex-end;
2141
+ }
2142
+ .justify-between {
2143
+ justify-content: space-between;
2144
+ }
2145
+ .justify-around {
2146
+ justify-content: space-around;
2147
+ }
2148
+ /* Align Items */
2149
+ .items-stretch {
2150
+ align-items: stretch;
2151
+ }
2152
+ .items-start {
2153
+ align-items: flex-start;
2154
+ }
2155
+ .items-center {
2156
+ align-items: center;
2157
+ }
2158
+ .items-end {
2159
+ align-items: flex-end;
2160
+ }
2161
+ .items-baseline {
2162
+ align-items: baseline;
2163
+ }
2164
+ /* Align Self */
2165
+ .self-auto {
2166
+ align-self: auto;
2167
+ }
2168
+ .self-start {
2169
+ align-self: flex-start;
2170
+ }
2171
+ .self-center {
2172
+ align-self: center;
2173
+ }
2174
+ .self-end {
2175
+ align-self: flex-end;
2176
+ }
2177
+ .self-stretch {
2178
+ align-self: stretch;
2179
+ }
2180
+ .self-baseline {
2181
+ align-self: baseline;
2182
+ }
2183
+ /* Text Alignment */
2184
+ .text-left {
2185
+ text-align: left;
2186
+ }
2187
+ .text-center {
2188
+ text-align: center;
2189
+ }
2190
+ .text-right {
2191
+ text-align: right;
2192
+ }
2193
+ .text-justify {
2194
+ text-align: justify;
2195
+ }
2196
+ /* Box Margin */
2197
+ .margin-xl {
2198
+ margin: var(--op-space-x-large);
2199
+ }
2200
+ .margin-lg {
2201
+ margin: var(--op-space-large);
2202
+ }
2203
+ .margin-md {
2204
+ margin: var(--op-space-medium);
2205
+ }
2206
+ .margin-sm {
2207
+ margin: var(--op-space-small);
2208
+ }
2209
+ .margin-xs {
2210
+ margin: var(--op-space-x-small);
2211
+ }
2212
+ .margin-none {
2213
+ margin: 0;
2214
+ }
2215
+ .margin-auto {
2216
+ margin: auto;
2217
+ }
2218
+ /* Vertical Margin */
2219
+ .margin-y-xl {
2220
+ margin-top: var(--op-space-x-large);
2221
+ margin-bottom: var(--op-space-x-large);
2222
+ }
2223
+ .margin-y-lg {
2224
+ margin-top: var(--op-space-large);
2225
+ margin-bottom: var(--op-space-large);
2226
+ }
2227
+ .margin-y-md {
2228
+ margin-top: var(--op-space-medium);
2229
+ margin-bottom: var(--op-space-medium);
2230
+ }
2231
+ .margin-y-sm {
2232
+ margin-top: var(--op-space-small);
2233
+ margin-bottom: var(--op-space-small);
2234
+ }
2235
+ .margin-y-xs {
2236
+ margin-top: var(--op-space-x-small);
2237
+ margin-bottom: var(--op-space-x-small);
2238
+ }
2239
+ .margin-y-none {
2240
+ margin-top: 0;
2241
+ margin-bottom: 0;
2242
+ }
2243
+ /* Horizontal Margin */
2244
+ .margin-x-xl {
2245
+ margin-right: var(--op-space-x-large);
2246
+ margin-left: var(--op-space-x-large);
2247
+ }
2248
+ .margin-x-lg {
2249
+ margin-right: var(--op-space-large);
2250
+ margin-left: var(--op-space-large);
2251
+ }
2252
+ .margin-x-md {
2253
+ margin-right: var(--op-space-medium);
2254
+ margin-left: var(--op-space-medium);
2255
+ }
2256
+ .margin-x-sm {
2257
+ margin-right: var(--op-space-small);
2258
+ margin-left: var(--op-space-small);
2259
+ }
2260
+ .margin-x-xs {
2261
+ margin-right: var(--op-space-x-small);
2262
+ margin-left: var(--op-space-x-small);
2263
+ }
2264
+ .margin-x-none {
2265
+ margin-right: 0;
2266
+ margin-left: 0;
2267
+ }
2268
+ /* Top Margin */
2269
+ .margin-top-xl {
2270
+ margin-top: var(--op-space-x-large);
2271
+ }
2272
+ .margin-top-lg {
2273
+ margin-top: var(--op-space-large);
2274
+ }
2275
+ .margin-top-md {
2276
+ margin-top: var(--op-space-medium);
2277
+ }
2278
+ .margin-top-sm {
2279
+ margin-top: var(--op-space-small);
2280
+ }
2281
+ .margin-top-xs {
2282
+ margin-top: var(--op-space-x-small);
2283
+ }
2284
+ .margin-top-none {
2285
+ margin-top: 0;
2286
+ }
2287
+ /* Bottom Margin */
2288
+ .margin-bottom-xl {
2289
+ margin-bottom: var(--op-space-x-large);
2290
+ }
2291
+ .margin-bottom-lg {
2292
+ margin-bottom: var(--op-space-large);
2293
+ }
2294
+ .margin-bottom-md {
2295
+ margin-bottom: var(--op-space-medium);
2296
+ }
2297
+ .margin-bottom-sm {
2298
+ margin-bottom: var(--op-space-small);
2299
+ }
2300
+ .margin-bottom-xs {
2301
+ margin-bottom: var(--op-space-x-small);
2302
+ }
2303
+ .margin-bottom-none {
2304
+ margin-bottom: 0;
2305
+ }
2306
+ /* Right Margin */
2307
+ .margin-right-xl {
2308
+ margin-right: var(--op-space-x-large);
2309
+ }
2310
+ .margin-right-lg {
2311
+ margin-right: var(--op-space-large);
2312
+ }
2313
+ .margin-right-md {
2314
+ margin-right: var(--op-space-medium);
2315
+ }
2316
+ .margin-right-sm {
2317
+ margin-right: var(--op-space-small);
2318
+ }
2319
+ .margin-right-xs {
2320
+ margin-right: var(--op-space-x-small);
2321
+ }
2322
+ .margin-right-none {
2323
+ margin-left: 0;
2324
+ }
2325
+ /* Left Margin */
2326
+ .margin-left-xl {
2327
+ margin-left: var(--op-space-x-large);
2328
+ }
2329
+ .margin-left-lg {
2330
+ margin-left: var(--op-space-large);
2331
+ }
2332
+ .margin-left-md {
2333
+ margin-left: var(--op-space-medium);
2334
+ }
2335
+ .margin-left-sm {
2336
+ margin-left: var(--op-space-small);
2337
+ }
2338
+ .margin-left-xs {
2339
+ margin-left: var(--op-space-x-small);
2340
+ }
2341
+ .margin-left-none {
2342
+ margin-left: 0;
2343
+ }
2344
+ /*
2345
+ Accessibility
2346
+ Use the following class to hide accessibility text that is needed for screen readers but needs to be hidden from regular users.
2347
+ https: //snook.ca/archives/html_and_css/hiding-content-for-accessibility
2348
+ */
2349
+ .sr-only {
2350
+ position: absolute !important;
2351
+ overflow: hidden;
2352
+ width: 1px;
2353
+ height: 1px;
2354
+ clip: rect(1px 1px 1px 1px);
2355
+ clip: rect(1px, 1px, 1px, 1px);
2356
+ }
2357
+ /* Components */
2358
+ .accordion {
2359
+ /* Public API (customizable component options) */
2360
+ --_op-accordion-summary-min-height: calc(8 * var(--op-size-unit)); /* 32px */
2361
+
2362
+ overflow: hidden;
2363
+ interpolate-size: allow-keywords;
2364
+
2365
+ /* Elements */
2366
+
2367
+ summary {
2368
+ display: grid;
2369
+ min-height: var(--_op-accordion-summary-min-height);
2370
+ align-items: center;
2371
+ cursor: pointer;
2372
+ gap: var(--op-space-2x-small);
2373
+ grid-template-columns: auto 1fr auto;
2374
+
2375
+ &::marker,
2376
+ &::-webkit-details-marker {
2377
+ display: none;
2378
+ content: '';
2379
+ }
2380
+
2381
+ .accordion__label {
2382
+ color: var(--op-color-neutral-on-plus-max);
2383
+ font-size: var(--op-font-x-small);
2384
+ font-weight: var(--op-font-weight-semi-bold);
2385
+ }
2386
+
2387
+ .accordion__marker {
2388
+ --op-mso-optical-sizing: 48;
2389
+
2390
+ font-size: var(--op-font-x-large);
2391
+ justify-self: flex-end;
2392
+ transition: var(--op-transition-accordion);
2393
+ user-select: none;
2394
+ }
2395
+ }
2396
+
2397
+ &::details-content {
2398
+ height: 0;
2399
+ transition: var(--op-transition-accordion-content);
2400
+ }
2401
+
2402
+ &[open] {
2403
+ summary .accordion__marker {
2404
+ rotate: 0.25turn;
2405
+ }
2406
+
2407
+ &::details-content {
2408
+ height: auto;
2409
+ }
2410
+ }
2411
+
2412
+ /* Modifiers */
2413
+
2414
+ &.accordion--disable-animation {
2415
+ summary .accordion__marker {
2416
+ transition: none;
2417
+ }
2418
+
2419
+ &::details-content {
2420
+ transition: none;
2421
+ }
2422
+ }
2423
+ }
2424
+ .alert {
2425
+ display: flex;
2426
+ align-items: center;
2427
+ padding: var(--op-space-x-small) var(--op-space-medium);
2428
+ border-radius: var(--op-radius-medium);
2429
+ gap: var(--op-space-small);
2430
+
2431
+ /* Elements */
2432
+
2433
+ .alert__icon {
2434
+ --op-mso-optical-sizing: 40; /* .icon--large styling */
2435
+ --op-mso-weight: var(--op-font-weight-bold); /* .icon--weight-bold styling */
2436
+
2437
+ font-size: var(--op-font-large); /* .icon--large styling */
2438
+ line-height: var(--op-line-height-dense);
2439
+ }
2440
+
2441
+ .alert__messages {
2442
+ display: flex;
2443
+ flex: 1;
2444
+ flex-direction: column;
2445
+ gap: var(--op-space-2x-small);
2446
+ }
2447
+
2448
+ .alert__title {
2449
+ font-size: var(--op-font-medium);
2450
+ font-weight: var(--op-font-weight-medium);
2451
+ }
2452
+
2453
+ .alert__description {
2454
+ font-size: var(--op-font-small);
2455
+ }
2456
+
2457
+ /* Modifiers */
2458
+
2459
+ &.alert--flash {
2460
+ position: fixed;
2461
+ z-index: var(--op-z-index-alert-group);
2462
+ top: var(--op-space-large);
2463
+ right: var(--op-space-large);
2464
+ animation: var(--op-animation-flash);
2465
+ }
2466
+
2467
+ &.alert--warning {
2468
+ background-color: var(--op-color-alerts-warning-plus-eight);
2469
+ box-shadow: var(--op-border-all) var(--op-color-alerts-warning-base);
2470
+ color: var(--op-color-alerts-warning-on-plus-eight);
2471
+
2472
+ .alert__title {
2473
+ color: var(--op-color-alerts-warning-on-plus-eight-alt);
2474
+ }
2475
+
2476
+ &.alert--muted {
2477
+ background-color: var(--op-color-alerts-warning-plus-five);
2478
+ box-shadow: none;
2479
+ color: var(--op-color-alerts-warning-on-plus-five);
2480
+
2481
+ .alert__title {
2482
+ color: var(--op-color-alerts-warning-on-plus-five-alt);
2483
+ }
2484
+ }
2485
+
2486
+ &.alert--filled {
2487
+ background-color: var(--op-color-alerts-warning-base);
2488
+ box-shadow: none;
2489
+ color: var(--op-color-alerts-warning-on-base);
2490
+
2491
+ .alert__title {
2492
+ color: var(--op-color-alerts-warning-on-base-alt);
2493
+ }
2494
+ }
2495
+ }
2496
+
2497
+ /* alert--alert is an alias for alert--danger. See Alert.mdx for reasoning. */
2498
+ &.alert--danger,
2499
+ &.alert--alert {
2500
+ background-color: var(--op-color-alerts-danger-plus-eight);
2501
+ box-shadow: var(--op-border-all) var(--op-color-alerts-danger-base);
2502
+ color: var(--op-color-alerts-danger-on-plus-eight);
2503
+
2504
+ /* stylelint-disable no-descending-specificity */
2505
+ .alert__title {
2506
+ color: var(--op-color-alerts-danger-on-plus-eight-alt);
2507
+ }
2508
+ /* stylelint-enable no-descending-specificity */
2509
+
2510
+ &.alert--muted {
2511
+ background-color: var(--op-color-alerts-danger-plus-five);
2512
+ box-shadow: none;
2513
+ color: var(--op-color-alerts-danger-on-plus-five);
2514
+
2515
+ .alert__title {
2516
+ color: var(--op-color-alerts-danger-on-plus-five-alt);
2517
+ }
2518
+ }
2519
+
2520
+ &.alert--filled {
2521
+ background-color: var(--op-color-alerts-danger-base);
2522
+ box-shadow: none;
2523
+ color: var(--op-color-alerts-danger-on-base);
2524
+
2525
+ .alert__title {
2526
+ color: var(--op-color-alerts-danger-on-base-alt);
2527
+ }
2528
+ }
2529
+ }
2530
+
2531
+ &.alert--info {
2532
+ background-color: var(--op-color-alerts-info-plus-eight);
2533
+ box-shadow: var(--op-border-all) var(--op-color-alerts-info-base);
2534
+ color: var(--op-color-alerts-info-on-plus-eight);
2535
+
2536
+ /* stylelint-disable no-descending-specificity */
2537
+ .alert__title {
2538
+ color: var(--op-color-alerts-info-on-plus-eight-alt);
2539
+ }
2540
+ /* stylelint-enable no-descending-specificity */
2541
+
2542
+ &.alert--muted {
2543
+ background-color: var(--op-color-alerts-info-plus-five);
2544
+ box-shadow: none;
2545
+ color: var(--op-color-alerts-info-on-plus-five);
2546
+
2547
+ .alert__title {
2548
+ color: var(--op-color-alerts-info-on-plus-five-alt);
2549
+ }
2550
+ }
2551
+
2552
+ &.alert--filled {
2553
+ background-color: var(--op-color-alerts-info-base);
2554
+ box-shadow: none;
2555
+ color: var(--op-color-alerts-info-on-base);
2556
+
2557
+ .alert__title {
2558
+ color: var(--op-color-alerts-info-on-base-alt);
2559
+ }
2560
+ }
2561
+ }
2562
+
2563
+ &.alert--notice {
2564
+ background-color: var(--op-color-alerts-notice-plus-eight);
2565
+ box-shadow: var(--op-border-all) var(--op-color-alerts-notice-base);
2566
+ color: var(--op-color-alerts-notice-on-plus-eight);
2567
+
2568
+ /* stylelint-disable no-descending-specificity */
2569
+ .alert__title {
2570
+ color: var(--op-color-alerts-notice-on-plus-eight-alt);
2571
+ }
2572
+ /* stylelint-enable no-descending-specificity */
2573
+
2574
+ &.alert--muted {
2575
+ background-color: var(--op-color-alerts-notice-plus-five);
2576
+ box-shadow: none;
2577
+ color: var(--op-color-alerts-notice-on-plus-five);
2578
+
2579
+ .alert__title {
2580
+ color: var(--op-color-alerts-notice-on-plus-five-alt);
2581
+ }
2582
+ }
2583
+
2584
+ &.alert--filled {
2585
+ background-color: var(--op-color-alerts-notice-base);
2586
+ box-shadow: none;
2587
+ color: var(--op-color-alerts-notice-on-base);
2588
+
2589
+ .alert__title {
2590
+ color: var(--op-color-alerts-notice-on-base-alt);
2591
+ }
2592
+ }
2593
+ }
2594
+ }
2595
+ .avatar {
2596
+ /* Public API (customizable component options) */
2597
+ --_op-avatar-border-radius: var(--op-radius-circle);
2598
+ --_op-avatar-inner-border-color: var(--op-color-neutral-minus-max);
2599
+ --_op-avatar-outer-border-color: var(--op-color-neutral-base);
2600
+ --_op-avatar-inner-border-width: calc(var(--op-border-width) + var(--op-border-width-large));
2601
+ --_op-avatar-outer-border-width: var(--op-border-width-large);
2602
+ --_op-avatar-disabled-opacity: var(--op-opacity-disabled);
2603
+ --_op-avatar-hover-opacity: var(--op-opacity-overlay);
2604
+ --_op-avatar-size-small: calc(8 * var(--op-size-unit)); /* 32px */
2605
+ --_op-avatar-size-medium: calc(10 * var(--op-size-unit)); /* 40px */
2606
+ --_op-avatar-size-large: calc(14 * var(--op-size-unit)); /* 56px */
2607
+
2608
+ /* Private API (component option defaults) */
2609
+ --__op-avatar-size: var(--_op-avatar-size-large);
2610
+
2611
+ position: relative;
2612
+ z-index: 1;
2613
+ display: block;
2614
+ overflow: hidden;
2615
+ width: var(--__op-avatar-size);
2616
+ min-width: var(--__op-avatar-size);
2617
+ height: var(--__op-avatar-size);
2618
+ min-height: var(--__op-avatar-size);
2619
+ border-radius: var(--_op-avatar-border-radius);
2620
+
2621
+ &::before {
2622
+ position: absolute;
2623
+ z-index: 2;
2624
+ content: '';
2625
+ inset: 0;
2626
+ }
2627
+
2628
+ &::after {
2629
+ position: absolute;
2630
+ z-index: 3;
2631
+ border-radius: var(--_op-avatar-border-radius);
2632
+ box-shadow:
2633
+ inset 0 0 0 var(--_op-avatar-outer-border-width) var(--_op-avatar-outer-border-color),
2634
+ inset 0 0 0 var(--_op-avatar-inner-border-width) var(--_op-avatar-inner-border-color);
2635
+ content: '';
2636
+ inset: 0;
2637
+ }
2638
+
2639
+ img {
2640
+ width: 100%;
2641
+ height: 100%;
2642
+ object-fit: cover;
2643
+ }
2644
+
2645
+ /* Disabled State */
2646
+ &.avatar--disabled {
2647
+ opacity: var(--_op-avatar-disabled-opacity);
2648
+ pointer-events: none;
2649
+ }
2650
+
2651
+ /* Focus State */
2652
+ &:focus,
2653
+ &:focus-visible,
2654
+ &:focus-within {
2655
+ outline: none;
2656
+ }
2657
+
2658
+ /* Hover State */
2659
+ &:hover:not(div, .avatar--disabled) {
2660
+ --_op-avatar-inner-border-color: var(--op-color-primary-base);
2661
+ --_op-avatar-outer-border-color: var(--op-color-primary-plus-one);
2662
+
2663
+ cursor: pointer;
2664
+
2665
+ &::before {
2666
+ background-color: var(--op-color-primary-base);
2667
+ opacity: var(--_op-avatar-hover-opacity);
2668
+ }
2669
+ }
2670
+
2671
+ &:focus-visible:not(.avatar--disabled) {
2672
+ --_op-avatar-outer-border-color: var(--op-color-primary-base);
2673
+
2674
+ cursor: pointer;
2675
+ }
2676
+
2677
+ /* Size Modifiers */
2678
+ &.avatar--small {
2679
+ --__op-avatar-size: var(--_op-avatar-size-small);
2680
+ }
2681
+
2682
+ &.avatar--medium {
2683
+ --__op-avatar-size: var(--_op-avatar-size-medium);
2684
+ }
2685
+
2686
+ &.avatar--large {
2687
+ --__op-avatar-size: var(--_op-avatar-size-large);
2688
+ }
2689
+ }
2690
+ .badge {
2691
+ display: inline-flex;
2692
+ align-items: center;
2693
+ justify-content: center;
2694
+ border-radius: var(--op-radius-medium);
2695
+ background-color: var(--op-color-neutral-base);
2696
+ color: var(--op-color-neutral-on-base);
2697
+ cursor: inherit;
2698
+ font-size: var(--op-font-x-small);
2699
+ font-weight: var(--op-font-weight-bold);
2700
+ gap: var(--op-space-x-small);
2701
+ letter-spacing: var(--op-letter-spacing-label);
2702
+ line-height: var(--op-line-height-dense);
2703
+ padding-block: var(--op-space-2x-small);
2704
+ padding-inline: var(--op-space-x-small);
2705
+ user-select: none;
2706
+ white-space: nowrap;
2707
+
2708
+ /* Elements */
2709
+
2710
+ .material-symbols-outlined {
2711
+ font-size: var(--op-font-small);
2712
+ }
2713
+
2714
+ /* Modifiers */
2715
+
2716
+ &.badge--primary {
2717
+ background-color: var(--op-color-primary-base);
2718
+ color: var(--op-color-primary-on-base);
2719
+ }
2720
+
2721
+ &.badge--warning {
2722
+ background-color: var(--op-color-alerts-warning-base);
2723
+ color: var(--op-color-alerts-warning-on-base);
2724
+ }
2725
+
2726
+ &.badge--danger {
2727
+ background-color: var(--op-color-alerts-danger-base);
2728
+ color: var(--op-color-alerts-danger-on-base);
2729
+ }
2730
+
2731
+ &.badge--info {
2732
+ background-color: var(--op-color-alerts-info-base);
2733
+ color: var(--op-color-alerts-info-on-base);
2734
+ }
2735
+
2736
+ &.badge--notice {
2737
+ background-color: var(--op-color-alerts-notice-base);
2738
+ color: var(--op-color-alerts-notice-on-base);
2739
+ }
2740
+
2741
+ &.badge--pill {
2742
+ border-radius: var(--op-radius-pill);
2743
+ }
2744
+
2745
+ &.badge--notification-right {
2746
+ position: absolute;
2747
+ box-shadow: 0 0 0 var(--op-border-width-large) var(--op-color-neutral-plus-max);
2748
+ inset-block-start: 0;
2749
+ inset-inline-end: 0;
2750
+ pointer-events: none;
2751
+ transform: translateY(-50%) translateX(50%);
2752
+ }
2753
+
2754
+ &.badge--notification-left {
2755
+ position: absolute;
2756
+ box-shadow: 0 0 0 var(--op-border-width-large) var(--op-color-neutral-plus-max);
2757
+ inset-block-start: 0;
2758
+ inset-inline-start: 0;
2759
+ pointer-events: none;
2760
+ transform: translateY(-50%) translateX(-50%);
2761
+ }
2762
+ }
2763
+ .breadcrumbs {
2764
+ /* Public API (customizable component options) */
2765
+ --_op-breadcrumbs-font-size-small: var(--op-font-x-small);
2766
+ --_op-breadcrumbs-font-size-large: var(--op-font-small);
2767
+
2768
+ /* Private API (component option defaults) */
2769
+ --__op-breadcrumbs-font-size: var(--_op-breadcrumbs-font-size-small);
2770
+
2771
+ display: flex;
2772
+ flex-wrap: wrap;
2773
+ align-items: baseline;
2774
+ gap: var(--op-space-x-small);
2775
+
2776
+ /* Elements */
2777
+ .breadcrumbs__link {
2778
+ font-size: var(--__op-breadcrumbs-font-size);
2779
+ text-decoration: none;
2780
+
2781
+ &:hover {
2782
+ text-decoration: underline;
2783
+ }
2784
+ }
2785
+
2786
+ .breadcrumbs__text {
2787
+ font-size: var(--__op-breadcrumbs-font-size);
2788
+ font-weight: var(--op-font-weight-bold);
2789
+ }
2790
+
2791
+ /* Modifiers */
2792
+ &.breadcrumbs--small {
2793
+ --__op-breadcrumbs-font-size: var(--_op-breadcrumbs-font-size-small);
2794
+ }
2795
+
2796
+ &.breadcrumbs--large {
2797
+ --__op-breadcrumbs-font-size: var(--_op-breadcrumbs-font-size-large);
2798
+ }
2799
+ }
2800
+ .btn {
2801
+ /* Public API (customizable component options) */
2802
+ --_op-btn-height-small: var(--op-input-height-small);
2803
+ --_op-btn-height-medium: var(--op-input-height-medium);
2804
+ --_op-btn-height-large: var(--op-input-height-large);
2805
+ --_op-btn-font-small: var(--op-font-x-small);
2806
+ --_op-btn-font-medium: var(--op-font-small);
2807
+ --_op-btn-font-large: var(--op-font-small);
2808
+ --_op-btn-padding-small: 0 var(--op-space-x-small);
2809
+ --_op-btn-padding-medium: 0 var(--op-space-small);
2810
+ --_op-btn-padding-large: 0 var(--op-space-small);
2811
+
2812
+ /* Private API (component option defaults) */
2813
+ --__op-btn-height: var(--_op-btn-height-large);
2814
+ --__op-btn-font-size: var(--_op-btn-font-large);
2815
+ --__op-btn-padding: var(--_op-btn-padding-large);
2816
+
2817
+ display: inline-flex;
2818
+ min-height: var(--__op-btn-height);
2819
+ align-items: center;
2820
+ justify-content: center;
2821
+ padding: var(--__op-btn-padding);
2822
+ border-radius: var(--op-radius-medium);
2823
+ appearance: none;
2824
+ background-color: var(--op-color-neutral-plus-eight);
2825
+ box-shadow: inset var(--op-border-all) var(--op-color-neutral-plus-four);
2826
+ color: var(--op-color-neutral-on-plus-eight);
2827
+ cursor: pointer;
2828
+ font-size: var(--__op-btn-font-size);
2829
+ font-weight: var(--op-font-weight-normal);
2830
+ gap: var(--op-space-x-small);
2831
+ text-align: center;
2832
+ text-decoration: none;
2833
+ transition: var(--op-transition-input);
2834
+ white-space: nowrap;
2835
+
2836
+ /* Modifiers */
2837
+
2838
+ /* Default Active State */
2839
+ &.btn--active {
2840
+ background-color: var(--op-color-primary-plus-five);
2841
+ box-shadow: inset var(--op-border-all) var(--op-color-primary-plus-three);
2842
+ color: var(--op-color-primary-on-plus-five);
2843
+ }
2844
+
2845
+ /* Default Hover State */
2846
+ &:hover {
2847
+ background-color: var(--op-color-primary-plus-eight);
2848
+ box-shadow: inset var(--op-border-all) var(--op-color-primary-plus-three);
2849
+ color: var(--op-color-primary-on-plus-eight);
2850
+ }
2851
+
2852
+ /* Default Focus State */
2853
+ &:focus-visible {
2854
+ background-color: var(--op-color-neutral-plus-eight);
2855
+ box-shadow: var(--op-input-focus-primary);
2856
+ color: var(--op-color-neutral-on-plus-eight);
2857
+ }
2858
+
2859
+ /* Default Borderless State */
2860
+ &.btn--no-border {
2861
+ background-color: transparent;
2862
+ box-shadow: none;
2863
+ color: var(--op-color-primary-on-plus-max);
2864
+
2865
+ /* Default Borderless + Active State. */
2866
+ &.btn--active {
2867
+ background-color: var(--op-color-primary-plus-five);
2868
+ box-shadow: inset var(--op-border-all) var(--op-color-primary-plus-three);
2869
+ color: var(--op-color-primary-on-plus-five);
2870
+ }
2871
+
2872
+ /* Default Borderless + Hover State */
2873
+ &:hover {
2874
+ background-color: var(--op-color-primary-plus-eight);
2875
+ box-shadow: inset var(--op-border-all) var(--op-color-primary-plus-five);
2876
+ color: var(--op-color-primary-on-plus-eight);
2877
+ }
2878
+
2879
+ /* Default Borderless + Focus State */
2880
+ &:focus-visible {
2881
+ background-color: var(--op-color-primary-plus-eight);
2882
+ box-shadow: var(--op-input-focus-primary);
2883
+ color: var(--op-color-primary-on-plus-eight);
2884
+ }
2885
+ }
2886
+
2887
+ /* Pill Modifier */
2888
+ &.btn--pill {
2889
+ border-radius: var(--op-radius-pill);
2890
+ }
2891
+
2892
+ /* Icon Modifier */
2893
+ &.btn--icon {
2894
+ width: var(--__op-btn-height);
2895
+ min-width: var(--__op-btn-height);
2896
+ padding: 0;
2897
+ }
2898
+
2899
+ /* Icon With Label Modifier */
2900
+ &.btn--icon-with-label {
2901
+ flex-direction: column;
2902
+ padding: var(--op-space-small);
2903
+ gap: var(--op-space-3x-small);
2904
+ }
2905
+
2906
+ /* Size Modifiers */
2907
+ &.btn--small {
2908
+ --__op-btn-height: var(--_op-btn-height-small);
2909
+ --__op-btn-font-size: var(--_op-btn-font-small);
2910
+ --__op-btn-padding: var(--_op-btn-padding-small);
2911
+ }
2912
+
2913
+ &.btn--medium {
2914
+ --__op-btn-height: var(--_op-btn-height-medium);
2915
+ --__op-btn-font-size: var(--_op-btn-font-medium);
2916
+ --__op-btn-padding: var(--_op-btn-padding-medium);
2917
+ }
2918
+
2919
+ &.btn--large {
2920
+ --__op-btn-height: var(--_op-btn-height-large);
2921
+ --__op-btn-font-size: var(--_op-btn-font-large);
2922
+ --__op-btn-padding: var(--_op-btn-padding-large);
2923
+ }
2924
+
2925
+ /* Disabled Modifier */
2926
+ &.btn--disabled,
2927
+ &:disabled {
2928
+ opacity: var(--op-opacity-disabled);
2929
+ pointer-events: none;
2930
+ -webkit-user-select: none; /* stylelint-disable property-no-vendor-prefix */
2931
+ user-select: none;
2932
+ }
2933
+
2934
+ /* Button with notification style badge */
2935
+ &.btn--with-badge {
2936
+ position: relative;
2937
+ }
2938
+
2939
+ /* Focus State */
2940
+ &:focus,
2941
+ &:focus-within,
2942
+ &:focus-visible {
2943
+ outline: none;
2944
+ }
2945
+
2946
+ /* https:/*uxmovement.com/mobile/optimal-size-and-spacing-for-mobile-buttons/ */
2947
+
2948
+ /* --op-breakpoint-small */
2949
+ @media (width <= 768px) {
2950
+ --__op-btn-height: var(--_op-btn-height-large);
2951
+ --__op-btn-font-size: var(--_op-btn-font-large);
2952
+
2953
+ &.btn--small,
2954
+ &.btn--medium,
2955
+ &.btn--large {
2956
+ --__op-btn-height: var(--_op-btn-height-large);
2957
+ --__op-btn-font-size: var(--_op-btn-font-large);
2958
+ --__op-btn-padding: var(--_op-btn-padding-large);
2959
+ }
2960
+ }
2961
+
2962
+ /* Variant Modifiers */
2963
+ &.btn--primary {
2964
+ background-color: var(--op-color-primary-base);
2965
+ box-shadow: inset var(--op-border-all) var(--op-color-primary-base);
2966
+ color: var(--op-color-primary-on-base);
2967
+
2968
+ /* Active State */
2969
+ &.btn--active {
2970
+ background-color: var(--op-color-primary-minus-five);
2971
+ box-shadow: inset var(--op-border-all) var(--op-color-primary-plus-two);
2972
+ color: var(--op-color-primary-on-minus-five);
2973
+ }
2974
+
2975
+ /* Hover State */
2976
+ &:hover {
2977
+ background-color: var(--op-color-primary-plus-one);
2978
+ box-shadow: inset var(--op-border-all) var(--op-color-primary-plus-one);
2979
+ color: var(--op-color-primary-on-plus-one);
2980
+ }
2981
+
2982
+ /* Focus State */
2983
+ &:focus-visible {
2984
+ background-color: var(--op-color-primary-base);
2985
+ box-shadow: var(--op-input-focus-primary);
2986
+ color: var(--op-color-primary-on-base);
2987
+ }
2988
+
2989
+ /* Borderless State */
2990
+ &.btn--no-border {
2991
+ background-color: transparent;
2992
+ box-shadow: none;
2993
+ color: var(--op-color-primary-base);
2994
+
2995
+ /* Borderless + Active State */
2996
+ &.btn--active {
2997
+ background-color: var(--op-color-primary-plus-five);
2998
+ box-shadow: inset var(--op-border-all) var(--op-color-primary-plus-three);
2999
+ color: var(--op-color-primary-on-plus-five);
3000
+ }
3001
+
3002
+ /* Borderless + Hover State */
3003
+ &:hover {
3004
+ background-color: var(--op-color-primary-plus-eight);
3005
+ box-shadow: inset var(--op-border-all) var(--op-color-primary-plus-five);
3006
+ color: var(--op-color-primary-on-plus-eight);
3007
+ }
3008
+
3009
+ /* Borderless + Focus State */
3010
+ &:focus-visible {
3011
+ background-color: var(--op-color-primary-plus-eight);
3012
+ box-shadow: var(--op-input-focus-primary);
3013
+ color: var(--op-color-primary-on-plus-eight);
3014
+ }
3015
+ }
3016
+ }
3017
+
3018
+ &.btn--destructive,
3019
+ &.btn--delete {
3020
+ background-color: var(--op-color-alerts-danger-base);
3021
+ box-shadow: inset var(--op-border-all) var(--op-color-alerts-danger-base);
3022
+ color: var(--op-color-alerts-danger-on-base);
3023
+
3024
+ /* Active State */
3025
+ &.btn--active {
3026
+ background-color: var(--op-color-alerts-danger-plus-five);
3027
+ box-shadow: inset var(--op-border-all) var(--op-color-alerts-danger-plus-three);
3028
+ color: var(--op-color-alerts-danger-on-plus-five);
3029
+ }
3030
+
3031
+ /* Hover State */
3032
+ &:hover {
3033
+ background-color: var(--op-color-alerts-danger-minus-two);
3034
+ box-shadow: inset var(--op-border-all) var(--op-color-alerts-danger-minus-two);
3035
+ color: var(--op-color-alerts-danger-on-minus-two);
3036
+ }
3037
+
3038
+ /* Focus State */
3039
+ &:focus-visible {
3040
+ background-color: var(--op-color-alerts-danger-base);
3041
+ box-shadow: var(--op-input-focus-danger);
3042
+ color: var(--op-color-alerts-danger-on-base);
3043
+ }
3044
+ }
3045
+
3046
+ &.btn--warning {
3047
+ background-color: var(--op-color-alerts-warning-base);
3048
+ box-shadow: inset var(--op-border-all) var(--op-color-alerts-warning-base);
3049
+ color: var(--op-color-alerts-warning-on-base);
3050
+
3051
+ /* Active State */
3052
+ &.btn--active {
3053
+ background-color: var(--op-color-alerts-warning-plus-five);
3054
+ box-shadow: inset var(--op-border-all) var(--op-color-alerts-warning-plus-three);
3055
+ color: var(--op-color-alerts-warning-on-plus-five);
3056
+ }
3057
+
3058
+ /* Hover State */
3059
+ &:hover {
3060
+ background-color: var(--op-color-alerts-warning-minus-two);
3061
+ box-shadow: inset var(--op-border-all) var(--op-color-alerts-warning-minus-two);
3062
+ color: var(--op-color-alerts-warning-on-minus-two);
3063
+ }
3064
+
3065
+ /* Focus State */
3066
+ &:focus-visible {
3067
+ background-color: var(--op-color-alerts-warning-base);
3068
+ box-shadow: var(--op-input-focus-warning);
3069
+ color: var(--op-color-alerts-warning-on-base);
3070
+ }
3071
+ }
3072
+ }
3073
+ .btn-group {
3074
+ --op-btn-group-hover-z-index: 1;
3075
+ --op-btn-group-active-z-index: 2;
3076
+ --op-btn-group-focus-z-index: 3;
3077
+
3078
+ display: inline-flex;
3079
+ align-items: center;
3080
+
3081
+ .btn {
3082
+ + .btn {
3083
+ margin-inline-start: calc(var(--op-border-width) * -1);
3084
+ }
3085
+
3086
+ &:hover {
3087
+ z-index: var(--op-btn-group-hover-z-index);
3088
+ }
3089
+
3090
+ &.btn--active {
3091
+ z-index: var(--op-btn-group-active-z-index);
3092
+ }
3093
+
3094
+ &:focus,
3095
+ &:focus-within,
3096
+ &:focus-visible {
3097
+ z-index: var(--op-btn-group-focus-z-index);
3098
+ }
3099
+
3100
+ &:not(:first-child, :last-child) {
3101
+ border-radius: 0;
3102
+ }
3103
+
3104
+ &:first-child:not(:last-child) {
3105
+ border-bottom-right-radius: 0;
3106
+ border-top-right-radius: 0;
3107
+ }
3108
+
3109
+ &:last-child:not(:first-child) {
3110
+ border-bottom-left-radius: 0;
3111
+ border-top-left-radius: 0;
3112
+ }
3113
+ }
3114
+ }
3115
+ .btn-group-toolbar {
3116
+ display: flex;
3117
+ flex-wrap: wrap;
3118
+ }
3119
+ .card {
3120
+ /* Public API (customizable component options) */
3121
+ --_op-card-padding: var(--op-space-medium);
3122
+ --_op-card-box-shadow: var(--op-border-all) var(--op-color-border);
3123
+
3124
+ position: relative;
3125
+ border-radius: var(--op-radius-medium);
3126
+ background-color: var(--op-color-background);
3127
+ box-shadow: var(--_op-card-box-shadow);
3128
+ color: var(--op-color-on-background);
3129
+ contain: paint;
3130
+ font-size: var(--op-font-medium);
3131
+ line-height: var(--op-line-height-base);
3132
+
3133
+ /* Modifiers */
3134
+
3135
+ &.card--condensed {
3136
+ --_op-card-padding: var(--op-space-x-small);
3137
+ }
3138
+
3139
+ &.card--padded {
3140
+ padding: var(--_op-card-padding);
3141
+ }
3142
+
3143
+ &.card--shadow-x-small {
3144
+ box-shadow: var(--_op-card-box-shadow), var(--op-shadow-x-small);
3145
+ }
3146
+
3147
+ &.card--shadow-small {
3148
+ box-shadow: var(--_op-card-box-shadow), var(--op-shadow-small);
3149
+ }
3150
+
3151
+ &.card--shadow-medium {
3152
+ box-shadow: var(--_op-card-box-shadow), var(--op-shadow-medium);
3153
+ }
3154
+
3155
+ &.card--shadow-large {
3156
+ box-shadow: var(--_op-card-box-shadow), var(--op-shadow-large);
3157
+ }
3158
+
3159
+ &.card--shadow-x-large {
3160
+ box-shadow: var(--_op-card-box-shadow), var(--op-shadow-x-large);
3161
+ }
3162
+
3163
+ /* Elements */
3164
+ .card__header,
3165
+ .card__body,
3166
+ .card__footer {
3167
+ padding: var(--_op-card-padding);
3168
+ }
3169
+
3170
+ .card__header {
3171
+ h1,
3172
+ h2,
3173
+ h3,
3174
+ h4,
3175
+ h5,
3176
+ h6 {
3177
+ margin: 0;
3178
+ }
3179
+ }
3180
+ }
3181
+ .confirm-dialog-wrapper {
3182
+ position: fixed;
3183
+ z-index: var(--op-z-index-dialog);
3184
+ display: flex;
3185
+ overflow: hidden;
3186
+ align-items: center;
3187
+ justify-content: center;
3188
+ inset: 0;
3189
+ outline: 0;
3190
+ visibility: hidden;
3191
+
3192
+ /* Elements */
3193
+
3194
+ .confirm-dialog-wrapper__backdrop {
3195
+ position: fixed;
3196
+ z-index: var(--op-z-index-dialog-backdrop);
3197
+ background: var(--op-color-black);
3198
+ inset: 0;
3199
+ opacity: var(--op-opacity-none);
3200
+ transition: var(--op-transition-modal);
3201
+ visibility: hidden;
3202
+ }
3203
+
3204
+ /* Modifiers */
3205
+
3206
+ &.confirm-dialog-wrapper--active {
3207
+ visibility: visible;
3208
+
3209
+ .confirm-dialog {
3210
+ opacity: var(--op-opacity-full);
3211
+ transform: scale(1);
3212
+ }
3213
+
3214
+ .confirm-dialog-wrapper__backdrop {
3215
+ opacity: var(--op-opacity-half);
3216
+ visibility: visible;
3217
+ }
3218
+ }
3219
+ }
3220
+ /* stylelint-disable no-descending-specificity */
3221
+ .confirm-dialog {
3222
+ /* Public API (customizable component options) */
3223
+ --_op-confirm-dialog-width: calc(100 * var(--op-size-unit)); /* 400px */
3224
+
3225
+ z-index: var(--op-z-index-dialog-content);
3226
+ width: var(--_op-confirm-dialog-width);
3227
+ border-radius: var(--op-radius-medium);
3228
+ background-color: var(--op-color-background);
3229
+ box-shadow: var(--op-border-all) var(--op-color-border);
3230
+ color: var(--op-color-on-background);
3231
+ contain: paint;
3232
+ font-size: var(--op-font-medium);
3233
+ line-height: var(--op-line-height-base);
3234
+ opacity: var(--op-opacity-none);
3235
+ transform: scale(0.7);
3236
+ transition: var(--op-transition-modal);
3237
+
3238
+ .confirm-dialog__header,
3239
+ .confirm-dialog__body,
3240
+ .confirm-dialog__footer {
3241
+ padding: var(--op-space-medium);
3242
+ }
3243
+
3244
+ .confirm-dialog__header {
3245
+ font-size: var(--op-font-large);
3246
+ font-weight: var(--op-font-weight-semi-bold);
3247
+ }
3248
+
3249
+ .confirm-dialog__body {
3250
+ box-shadow: var(--op-border-all) var(--op-color-border);
3251
+ }
3252
+
3253
+ .confirm-dialog__footer {
3254
+ display: flex;
3255
+ align-items: center;
3256
+ justify-content: space-between;
3257
+ }
3258
+ }
3259
+ /* stylelint-enable no-descending-specificity */
3260
+ .divider {
3261
+ /* Public API (customizable component options) */
3262
+ --_op-divider-vertical-min-height: var(--op-space-large);
3263
+ --_op-divider-height-small: var(--op-border-width);
3264
+ --_op-divider-height-medium: var(--op-border-width-large);
3265
+ --_op-divider-height-large: var(--op-border-width-x-large);
3266
+ --_op-divider-padding-small: var(--op-space-2x-small);
3267
+ --_op-divider-padding-medium: var(--op-space-x-small);
3268
+ --_op-divider-padding-large: var(--op-space-medium);
3269
+
3270
+ /* Private API (component option defaults) */
3271
+ --__op-divider-height: var(--_op-divider-height-small);
3272
+ --__op-divider-padding: 0;
3273
+
3274
+ width: 100%;
3275
+ height: var(--__op-divider-height);
3276
+ background-color: var(--op-color-border);
3277
+ margin-block: var(--__op-divider-padding);
3278
+ margin-inline: 0;
3279
+
3280
+ /* Size Modifiers */
3281
+ &.divider--small {
3282
+ --__op-divider-height: var(--_op-divider-height-small);
3283
+ }
3284
+
3285
+ &.divider--medium {
3286
+ --__op-divider-height: var(--_op-divider-height-medium);
3287
+ }
3288
+
3289
+ &.divider--large {
3290
+ --__op-divider-height: var(--_op-divider-height-large);
3291
+ }
3292
+
3293
+ /* Spacing Modifiers */
3294
+ &.divider--spacing-small {
3295
+ --__op-divider-padding: var(--_op-divider-padding-small);
3296
+ }
3297
+
3298
+ &.divider--spacing-medium {
3299
+ --__op-divider-padding: var(--_op-divider-padding-medium);
3300
+ }
3301
+
3302
+ &.divider--spacing-large {
3303
+ --__op-divider-padding: var(--_op-divider-padding-large);
3304
+ }
3305
+
3306
+ /* Direction Modifier */
3307
+ &.divider--vertical {
3308
+ width: var(--__op-divider-height);
3309
+ height: 100%;
3310
+ min-height: var(--_op-divider-vertical-min-height);
3311
+ margin-block: 0;
3312
+ margin-inline: var(--__op-divider-padding);
3313
+ }
3314
+ }
3315
+ .form-control {
3316
+ /* Public API (customizable component options) */
3317
+ --_op-form-control-height-small: var(--op-input-height-small);
3318
+ --_op-form-control-height-medium: var(--op-input-height-medium);
3319
+ --_op-form-control-height-large: var(--op-input-height-large);
3320
+ --_op-form-control-font-small: var(--op-font-x-small);
3321
+ --_op-form-control-font-medium: var(--op-font-small);
3322
+ --_op-form-control-font-large: var(--op-font-small);
3323
+
3324
+ /* Private API (component option defaults) */
3325
+ --__op-form-control-height: var(--_op-form-control-height-large);
3326
+ --__op-form-control-font-size: var(--_op-form-control-font-large);
3327
+
3328
+ min-width: var(--__op-form-control-height);
3329
+ height: var(--__op-form-control-height);
3330
+
3331
+ /* Size Modifiers */
3332
+ &.form-control--small {
3333
+ --__op-form-control-height: var(--_op-form-control-height-small);
3334
+ --__op-form-control-font-size: var(--_op-form-control-font-small);
3335
+ }
3336
+
3337
+ &.form-control--medium {
3338
+ --__op-form-control-height: var(--_op-form-control-height-medium);
3339
+ --__op-form-control-font-size: var(--_op-form-control-font-medium);
3340
+ }
3341
+
3342
+ &.form-control--large {
3343
+ --__op-form-control-height: var(--_op-form-control-height-large);
3344
+ --__op-form-control-font-size: var(--_op-form-control-font-large);
3345
+ }
3346
+
3347
+ /* Disabled State */
3348
+ &:disabled {
3349
+ cursor: not-allowed;
3350
+ opacity: var(--_op-form-control-opacity-disabled);
3351
+ }
3352
+
3353
+ /* Readonly State */
3354
+ &[readonly] {
3355
+ padding: 0;
3356
+ background: transparent;
3357
+ box-shadow: none;
3358
+ color: var(--op-color-on-background);
3359
+ pointer-events: none;
3360
+ user-select: none;
3361
+
3362
+ /* stylelint-disable selector-no-vendor-prefix */
3363
+ &::-webkit-input-placeholder {
3364
+ color: var(--op-color-on-background);
3365
+ }
3366
+ /* stylelint-enable selector-no-vendor-prefix */
3367
+ }
3368
+ }
3369
+ /* Radio or Checkbox Form Control */
3370
+ .form-control:is([type='radio'], [type='checkbox']) {
3371
+ /* Public API (customizable component options) */
3372
+ --_op-form-control-height-small: var(--op-space-medium);
3373
+ --_op-form-control-height-medium: var(--op-space-large);
3374
+ --_op-form-control-height-large: var(--op-space-x-large);
3375
+
3376
+ width: var(--__op-form-control-height);
3377
+ height: var(--__op-form-control-height);
3378
+ align-self: center;
3379
+ margin: 0;
3380
+ accent-color: var(--op-color-primary-base);
3381
+ cursor: pointer;
3382
+
3383
+ & + label {
3384
+ align-self: center;
3385
+ }
3386
+ }
3387
+ /* Any Form Control that is not a radio or checkbox */
3388
+ .form-control:not([type='radio'], [type='checkbox']) {
3389
+ /* Public API (customizable component options) */
3390
+ --_op-form-control-opacity-disabled: var(--op-opacity-disabled);
3391
+
3392
+ /* Private API (component option defaults) */
3393
+ --__op-form-control-border-color: var(--op-color-neutral-plus-four);
3394
+
3395
+ display: block;
3396
+ width: 100%;
3397
+ min-width: var(--__op-form-control-height);
3398
+ height: var(--__op-form-control-height);
3399
+ border: none;
3400
+ border-radius: var(--op-radius-medium);
3401
+ appearance: none;
3402
+ background-color: var(--op-color-neutral-plus-eight);
3403
+ box-shadow: var(--op-border-all) var(--__op-form-control-border-color);
3404
+ color: var(--op-color-neutral-on-plus-eight);
3405
+ cursor: text;
3406
+ font-size: var(--__op-form-control-font-size);
3407
+ line-height: var(--op-line-height-base);
3408
+ padding-block: var(--op-space-2x-small);
3409
+ padding-inline: var(--op-space-small) var(--op-space-x-small);
3410
+
3411
+ /* Focus State */
3412
+ &:focus,
3413
+ &:focus-within,
3414
+ &:focus-visible {
3415
+ outline: none;
3416
+ }
3417
+
3418
+ /* Hover State */
3419
+ &:hover:not(:disabled, [readonly]) {
3420
+ box-shadow: var(--op-border-all) var(--op-color-primary-plus-three);
3421
+ }
3422
+
3423
+ &:focus-visible:not([readonly]) {
3424
+ background-color: var(--op-color-primary-plus-seven);
3425
+ box-shadow: var(--op-input-focus-primary);
3426
+ color: var(--op-color-primary-on-plus-seven);
3427
+ }
3428
+
3429
+ /* Borderless State */
3430
+ &.form-control--no-border {
3431
+ background-color: transparent;
3432
+ box-shadow: none;
3433
+ color: var(--op-color-primary-on-plus-max);
3434
+
3435
+ &:focus-visible:not([readonly]) {
3436
+ background-color: var(--op-color-primary-plus-seven);
3437
+ box-shadow: var(--op-input-focus-primary);
3438
+ color: var(--op-color-primary-on-plus-seven);
3439
+ }
3440
+
3441
+ /* Borderless + Hover State */
3442
+ &:hover:not(:disabled, [readonly]) {
3443
+ background-color: var(--op-color-primary-plus-eight);
3444
+ box-shadow: inset var(--op-border-all) var(--op-color-primary-plus-two);
3445
+ color: var(--op-color-primary-on-plus-eight);
3446
+ }
3447
+ }
3448
+ }
3449
+ /* Color Form Control */
3450
+ .form-control[type='color'] {
3451
+ padding: var(--op-space-2x-small);
3452
+ cursor: pointer;
3453
+
3454
+ &::-webkit-color-swatch-wrapper {
3455
+ padding: 0;
3456
+ }
3457
+
3458
+ &::-webkit-color-swatch {
3459
+ border: none;
3460
+ border-radius: var(--op-radius-medium);
3461
+ }
3462
+ }
3463
+ /* File Form Control */
3464
+ .form-control[type='file'] {
3465
+ padding-block: 0;
3466
+
3467
+ &::file-selector-button {
3468
+ --__op-btn-base-height: var(--op-input-height-small);
3469
+ --__op-btn-height: var(--__op-btn-base-height);
3470
+
3471
+ display: inline-flex;
3472
+ min-height: var(--__op-btn-height);
3473
+ align-items: center;
3474
+ justify-content: center;
3475
+ border: none;
3476
+ border-radius: var(--op-radius-medium);
3477
+ appearance: none;
3478
+ background-color: var(--op-color-neutral-plus-eight);
3479
+ box-shadow: inset var(--op-border-all) var(--op-color-neutral-plus-four);
3480
+ color: var(--op-color-neutral-on-plus-eight);
3481
+ cursor: pointer;
3482
+ font-size: var(--op-font-x-small);
3483
+ font-weight: var(--op-font-weight-normal);
3484
+ gap: var(--op-space-x-small);
3485
+ margin-block: calc((var(--__op-form-control-height) / 2) - (var(--__op-btn-height) / 2));
3486
+ padding-block: 0;
3487
+ padding-inline: var(--op-space-x-small);
3488
+ text-align: center;
3489
+ text-decoration: none;
3490
+ transition: var(--op-transition-input);
3491
+ white-space: nowrap;
3492
+ }
3493
+
3494
+ &.form-control--small::file-selector-button {
3495
+ --__op-btn-height: calc(var(--__op-btn-base-height) - var(--op-space-x-small));
3496
+ }
3497
+ }
3498
+ select.form-control:not([multiple], [type='radio'], [type='checkbox']) {
3499
+ appearance: none;
3500
+ background-image: var(--op-encoded-images-dropdown-arrow);
3501
+ background-position: center right;
3502
+ background-position-x: calc(
3503
+ 100% - ((var(--op-space-3x-large) / 2) - (var(--op-encoded-images-dropdown-arrow-width) / 2))
3504
+ );
3505
+ background-repeat: no-repeat;
3506
+ cursor: pointer;
3507
+ padding-inline-end: var(--op-space-3x-large);
3508
+ }
3509
+ select.form-control[multiple] {
3510
+ min-height: calc(2 * var(--__op-form-control-height));
3511
+ }
3512
+ textarea.form-control:not([type='radio'], [type='checkbox']) {
3513
+ max-width: 100%;
3514
+ height: calc(2 * var(--__op-form-control-height));
3515
+ min-height: var(--__op-form-control-height);
3516
+ }
3517
+ .form-label {
3518
+ color: var(--op-color-on-background);
3519
+ font-size: var(--op-font-x-small);
3520
+ font-weight: var(--op-font-weight-normal);
3521
+ letter-spacing: var(--op-letter-spacing-label);
3522
+ line-height: var(--op-line-height-base);
3523
+ }
3524
+ .form-error {
3525
+ width: fit-content;
3526
+ color: var(--op-color-alerts-danger-base);
3527
+ font-size: var(--op-font-x-small);
3528
+ }
3529
+ .form-hint {
3530
+ display: block;
3531
+ font-size: var(--op-font-small);
3532
+ font-style: italic;
3533
+ }
3534
+ .form-error-summary {
3535
+ padding: var(--op-space-large);
3536
+ border-radius: var(--op-radius-large);
3537
+ background-color: var(--op-color-alerts-danger-plus-seven);
3538
+ box-shadow: var(--op-border-all) var(--op-color-alerts-danger-on-plus-seven);
3539
+ color: var(--op-color-alerts-danger-on-plus-seven);
3540
+ margin-block-end: var(--op-space-large);
3541
+
3542
+ h2 {
3543
+ font-size: var(--op-font-medium);
3544
+ }
3545
+
3546
+ ul {
3547
+ margin-block-end: 0;
3548
+ }
3549
+ }
3550
+ .form-group {
3551
+ display: grid;
3552
+ align-content: baseline;
3553
+ gap: var(--op-space-x-small);
3554
+ grid-auto-rows: auto;
3555
+ grid-template-columns: auto 1fr;
3556
+ padding-block: var(--op-space-small);
3557
+ padding-inline: 0;
3558
+
3559
+ /* Group Alignment */
3560
+ /* stylelint-disable no-descending-specificity */
3561
+ .form-label,
3562
+ .form-error,
3563
+ .form-hint,
3564
+ .form-control:not([type='radio'], [type='checkbox']) {
3565
+ grid-column: 1 / 3;
3566
+ }
3567
+ /* stylelint-enable no-descending-specificity */
3568
+
3569
+ .form-control[type='radio'],
3570
+ .form-control[type='checkbox'] {
3571
+ grid-column: 1 / 1;
3572
+
3573
+ & + .form-label {
3574
+ grid-column: 2 / 3;
3575
+ grid-row: 1;
3576
+ }
3577
+ }
3578
+ }
3579
+ .form-group--inline {
3580
+ align-items: center;
3581
+
3582
+ /* Group Alignment */
3583
+
3584
+ /* stylelint-disable no-descending-specificity */
3585
+ .form-label {
3586
+ grid-column: unset;
3587
+ }
3588
+
3589
+ .form-error,
3590
+ .form-hint {
3591
+ grid-column: 1 / 3;
3592
+ }
3593
+
3594
+ .form-control:not([type='radio'], [type='checkbox']),
3595
+ .switch {
3596
+ grid-column: unset;
3597
+ }
3598
+ /* stylelint-enable no-descending-specificity */
3599
+ }
3600
+ .form-group--error {
3601
+ /* stylelint-disable no-descending-specificity */
3602
+ .form-control {
3603
+ box-shadow: var(--op-border-all) var(--op-color-alerts-danger-base);
3604
+
3605
+ &[type='radio'],
3606
+ &[type='checkbox'] {
3607
+ box-shadow: none;
3608
+
3609
+ & + label {
3610
+ color: var(--op-color-alerts-danger-minus-three);
3611
+ font-weight: var(--op-font-weight-bold);
3612
+ }
3613
+ }
3614
+
3615
+ /* Error + Hover State */
3616
+ &:hover:not(:disabled, [readonly]) {
3617
+ background-color: var(--op-color-alerts-danger-plus-seven);
3618
+ box-shadow: var(--op-border-all) var(--op-color-alerts-danger-minus-two);
3619
+ color: var(--op-color-alerts-danger-on-plus-seven);
3620
+ }
3621
+
3622
+ /* Readonly State */
3623
+ &[readonly] {
3624
+ box-shadow: none;
3625
+ }
3626
+
3627
+ /* Error + Focus State */
3628
+ &:focus-visible:not([readonly]) {
3629
+ background-color: var(--op-color-alerts-danger-plus-seven);
3630
+ box-shadow: var(--op-input-focus-danger);
3631
+ color: var(--op-color-alerts-danger-on-plus-seven);
3632
+ }
3633
+
3634
+ /* Borderless State */
3635
+ &.form-control--no-border {
3636
+ border-radius: 0;
3637
+ box-shadow: var(--op-border-bottom) var(--op-color-alerts-danger-base);
3638
+
3639
+ /* Readonly State */
3640
+ &[readonly] {
3641
+ box-shadow: none;
3642
+ }
3643
+
3644
+ /* Borderless + Focus State */
3645
+ &:focus-visible:not([readonly]) {
3646
+ background-color: var(--op-color-alerts-danger-plus-seven);
3647
+ box-shadow: var(--op-border-bottom) var(--op-color-alerts-danger-base);
3648
+ color: var(--op-color-alerts-danger-on-plus-seven);
3649
+ }
3650
+
3651
+ /* Borderless + Hover State */
3652
+ &:hover:not(:disabled, [readonly]) {
3653
+ background-color: var(--op-color-alerts-danger-plus-eight);
3654
+ box-shadow: var(--op-border-bottom) var(--op-color-alerts-danger-base);
3655
+ color: var(--op-color-alerts-danger-on-plus-eight);
3656
+ }
3657
+ }
3658
+ }
3659
+ /* stylelint-enable no-descending-specificity */
3660
+ }
3661
+ /*
3662
+ Look up icons at: https://fonts.google.com/icons?icon.set=Material+Symbols
3663
+ Instead of hosting the font files locally which requires the compiler to handle them, we pull the icons
3664
+ from Googles CDN like we do for our other fonts
3665
+ https://developers.google.com/fonts/docs/material_symbols#variable_font_with_google_fonts
3666
+ */
3667
+ .material-symbols-outlined,
3668
+ .material-symbols {
3669
+ --op-mso-fill: 0;
3670
+ --op-mso-weight: var(--op-font-weight-normal);
3671
+ --op-mso-grade: 0;
3672
+ --op-mso-optical-sizing: 20;
3673
+
3674
+ font-size: var(--op-font-medium);
3675
+ font-variation-settings:
3676
+ 'FILL' var(--op-mso-fill),
3677
+ 'wght' var(--op-mso-weight),
3678
+ 'GRAD' var(--op-mso-grade),
3679
+ 'opsz' var(--op-mso-optical-sizing);
3680
+ line-height: var(--op-line-height-densest);
3681
+ vertical-align: middle;
3682
+ }
3683
+ /* Fill */
3684
+ .icon--outlined {
3685
+ --op-mso-fill: 0;
3686
+ }
3687
+ .icon--filled {
3688
+ --op-mso-fill: 1;
3689
+ }
3690
+ /* Weight */
3691
+ .icon--weight-light {
3692
+ --op-mso-weight: var(--op-font-weight-light);
3693
+ }
3694
+ .icon--weight-normal {
3695
+ --op-mso-weight: var(--op-font-weight-normal);
3696
+ }
3697
+ .icon--weight-semi-bold {
3698
+ --op-mso-weight: var(--op-font-weight-semi-bold);
3699
+ }
3700
+ .icon--weight-bold {
3701
+ --op-mso-weight: var(--op-font-weight-bold);
3702
+ }
3703
+ /* Emphasis */
3704
+ .icon--low-emphasis {
3705
+ --op-mso-grade: -20;
3706
+ }
3707
+ .icon--normal-emphasis {
3708
+ --op-mso-grade: 0;
3709
+ }
3710
+ .icon--high-emphasis {
3711
+ --op-mso-grade: 200;
3712
+ }
3713
+ /* Size */
3714
+ .icon--medium {
3715
+ font-size: var(--op-font-medium);
3716
+
3717
+ --op-mso-optical-sizing: 20;
3718
+ }
3719
+ .icon--large {
3720
+ font-size: var(--op-font-large);
3721
+
3722
+ --op-mso-optical-sizing: 40;
3723
+ }
3724
+ .icon--x-large {
3725
+ font-size: var(--op-font-2x-large);
3726
+
3727
+ --op-mso-optical-sizing: 48;
3728
+ }
3729
+ .custom-icons {
3730
+ display: inline-block;
3731
+ width: var(--op-font-2x-large);
3732
+ height: var(--op-font-2x-large);
3733
+
3734
+ &.icon--medium {
3735
+ font-size: var(--op-font-small);
3736
+
3737
+ --op-mso-optical-sizing: 20;
3738
+ }
3739
+
3740
+ &.icon--large {
3741
+ width: var(--op-font-large);
3742
+ height: var(--op-font-large);
3743
+ }
3744
+
3745
+ &.icon--x-large {
3746
+ width: var(--op-font-3x-large);
3747
+ height: var(--op-font-3x-large);
3748
+ }
3749
+ }
3750
+ .custom-icons svg {
3751
+ width: 100%;
3752
+ height: 100%;
3753
+ }
3754
+ .icon-link {
3755
+ line-height: 0;
3756
+ }
3757
+ .modal-wrapper {
3758
+ /* Public API (customizable component options) */
3759
+ --_op-modal-backdrop-active-opacity: var(--op-opacity-half);
3760
+
3761
+ position: fixed;
3762
+ z-index: var(--op-z-index-dialog);
3763
+ display: flex;
3764
+ overflow: hidden;
3765
+ align-items: center;
3766
+ justify-content: center;
3767
+ inset: 0;
3768
+ outline: 0;
3769
+ visibility: hidden;
3770
+
3771
+ /* Elements */
3772
+
3773
+ .modal-wrapper__backdrop {
3774
+ position: fixed;
3775
+ z-index: var(--op-z-index-dialog-backdrop);
3776
+ background: var(--op-color-black);
3777
+ inset: 0;
3778
+ opacity: var(--op-opacity-none);
3779
+ transition: var(--op-transition-modal);
3780
+ visibility: hidden;
3781
+ }
3782
+
3783
+ /* Modifiers */
3784
+
3785
+ &.modal-wrapper--active {
3786
+ visibility: visible;
3787
+
3788
+ .modal {
3789
+ opacity: var(--op-opacity-full);
3790
+ transform: scale(1);
3791
+ }
3792
+
3793
+ .modal-wrapper__backdrop {
3794
+ opacity: var(--_op-modal-backdrop-active-opacity);
3795
+ visibility: visible;
3796
+ }
3797
+ }
3798
+ }
3799
+ /* stylelint-disable no-descending-specificity */
3800
+ .modal {
3801
+ /* Public API (customizable component options) */
3802
+ --_op-modal-width: calc(141 * var(--op-size-unit)); /* 564px */
3803
+ --_op-modal-max-height: calc(125 * var(--op-size-unit)); /* 500px */
3804
+
3805
+ z-index: var(--op-z-index-dialog-content);
3806
+ width: var(--_op-modal-width);
3807
+ border-radius: var(--op-radius-medium);
3808
+ background-color: var(--op-color-background);
3809
+ box-shadow: var(--op-border-all) var(--op-color-border);
3810
+ color: var(--op-color-on-background);
3811
+ contain: paint;
3812
+ font-size: var(--op-font-medium);
3813
+ line-height: var(--op-line-height-base);
3814
+ opacity: var(--op-opacity-none);
3815
+ transform: scale(0.7);
3816
+ transition: var(--op-transition-modal);
3817
+
3818
+ .modal__header,
3819
+ .modal__body,
3820
+ .modal__footer {
3821
+ padding: var(--op-space-medium);
3822
+ }
3823
+
3824
+ .modal__header {
3825
+ display: flex;
3826
+ align-items: center;
3827
+ justify-content: space-between;
3828
+ font-size: var(--op-font-large);
3829
+ font-weight: var(--op-font-weight-semi-bold);
3830
+ }
3831
+
3832
+ .modal__body {
3833
+ max-height: var(--_op-modal-max-height);
3834
+ box-shadow: var(--op-border-all) var(--op-color-border);
3835
+ overflow-y: auto;
3836
+ }
3837
+
3838
+ .modal__footer {
3839
+ display: flex;
3840
+ align-items: center;
3841
+ justify-content: flex-end;
3842
+ gap: var(--op-space-small);
3843
+ }
3844
+ }
3845
+ /* stylelint-enable no-descending-specificity */
3846
+ dialog.modal {
3847
+ position: fixed;
3848
+ display: block;
3849
+ padding: 0;
3850
+ border: none;
3851
+ inset: 0;
3852
+
3853
+ &::backdrop {
3854
+ /* The Dialog backdrop does not inheret from :root so these need to be duplicated here. */
3855
+ --op-color-black: hsl(0deg 0% 0%);
3856
+ --_op-modal-backdrop-active-opacity: 0.5;
3857
+ --op-opacity-none: 0;
3858
+ --op-opacity-full: 1;
3859
+
3860
+ animation: show-backdrop 300ms ease-in;
3861
+ background: var(--op-color-black);
3862
+ opacity: var(--_op-modal-backdrop-active-opacity);
3863
+ }
3864
+
3865
+ &[open] {
3866
+ opacity: var(--op-opacity-full);
3867
+ transform: scale(1);
3868
+ }
3869
+
3870
+ &.modal--closing {
3871
+ opacity: var(--op-opacity-none);
3872
+ transform: scale(0.7);
3873
+
3874
+ &::backdrop {
3875
+ animation: hide-backdrop 300ms ease-in;
3876
+ opacity: var(--op-opacity-none);
3877
+ }
3878
+ }
3879
+ }
3880
+ /* Using the Dialog element */
3881
+ /* https://developer.mozilla.org/en-US/docs/Web/HTML/Element/dialog */
3882
+ @keyframes show-backdrop {
3883
+ from {
3884
+ opacity: var(--op-opacity-none);
3885
+ }
3886
+
3887
+ to {
3888
+ opacity: var(--_op-modal-backdrop-active-opacity);
3889
+ }
3890
+ }
3891
+ @keyframes hide-backdrop {
3892
+ from {
3893
+ opacity: var(--_op-modal-backdrop-active-opacity);
3894
+ }
3895
+
3896
+ to {
3897
+ opacity: var(--op-opacity-none);
3898
+ }
3899
+ }
3900
+ .navbar {
3901
+ /* Public API (customizable component options) */
3902
+
3903
+ /* Normal */
3904
+ --_op-navbar-background-color: var(--op-color-neutral-plus-eight);
3905
+ --_op-navbar-text-color: var(--op-color-neutral-on-plus-eight);
3906
+ --_op-navbar-border-color: var(--op-color-neutral-plus-four);
3907
+ --_op-navbar-brand-height: calc(12 * var(--op-size-unit)); /* 48px */
3908
+
3909
+ /* Spacing */
3910
+ --_op-navbar-horizontal-spacing: var(--op-space-x-large);
3911
+ --_op-navbar-content-spacing: var(--op-space-x-small);
3912
+ --_op-navbar-content-item-spacing: var(--op-space-2x-small);
3913
+
3914
+ display: flex;
3915
+ align-items: center;
3916
+ padding: var(--op-space-small) var(--_op-navbar-horizontal-spacing);
3917
+ background-color: var(--_op-navbar-background-color);
3918
+ box-shadow: var(--op-border-bottom) var(--_op-navbar-border-color);
3919
+ color: var(--_op-navbar-text-color);
3920
+ gap: var(--_op-navbar-content-spacing);
3921
+
3922
+ /* Elements */
3923
+
3924
+ .navbar__brand {
3925
+ height: var(--_op-navbar-brand-height);
3926
+ margin-right: var(--_op-navbar-horizontal-spacing);
3927
+
3928
+ img {
3929
+ height: 100%;
3930
+ }
3931
+ }
3932
+
3933
+ .navbar__content {
3934
+ display: flex;
3935
+ flex-wrap: wrap;
3936
+ align-items: center;
3937
+ gap: var(--_op-navbar-content-item-spacing);
3938
+
3939
+ &.navbar__content--justify-start {
3940
+ margin-inline-end: auto;
3941
+ }
3942
+
3943
+ &.navbar__content--justify-center {
3944
+ margin-inline: auto;
3945
+ }
3946
+
3947
+ &.navbar__content--justify-end {
3948
+ margin-inline-start: auto;
3949
+ }
3950
+ }
3951
+
3952
+ /* Modifiers */
3953
+
3954
+ &.navbar--primary {
3955
+ --_op-navbar-background-color: var(--op-color-primary-plus-six);
3956
+ --_op-navbar-text-color: var(--op-color-primary-on-plus-six);
3957
+ --_op-navbar-border-color: var(--op-color-primary-plus-four);
3958
+ }
3959
+ }
3960
+ .pagination {
3961
+ display: flex;
3962
+ align-items: center;
3963
+ gap: 0;
3964
+
3965
+ /* Showing Dropdown */
3966
+ .form-group {
3967
+ align-items: center;
3968
+
3969
+ .form-label {
3970
+ grid-column: 1;
3971
+ }
3972
+
3973
+ .form-control {
3974
+ grid-column: 2;
3975
+ }
3976
+ }
3977
+
3978
+ /* ... Gap */
3979
+ .pagination__divider {
3980
+ height: 100%;
3981
+ padding-inline: var(--op-space-x-small);
3982
+ }
3983
+ }
3984
+ .sidebar {
3985
+ /* Public API (customizable component options) */
3986
+
3987
+ /* Normal */
3988
+ --_op-sidebar-background-color: var(--op-color-neutral-plus-eight);
3989
+ --_op-sidebar-text-color: var(--op-color-neutral-on-plus-eight);
3990
+ --_op-sidebar-border-color: var(--op-color-neutral-plus-four);
3991
+
3992
+ /* Width */
3993
+ --_op-sidebar-rail-width: calc(22 * var(--op-size-unit)); /* 88px */
3994
+ --_op-sidebar-compact-width: calc(42 * var(--op-size-unit)); /* 168px */
3995
+ --_op-sidebar-drawer-width: calc(54 * var(--op-size-unit)); /* 216px */
3996
+ --_op-sidebar-rail-brand-width: calc(19 * var(--op-size-unit)); /* 76px */
3997
+ --_op-sidebar-compact-brand-width: calc(24 * var(--op-size-unit)); /* 96px */
3998
+ --_op-sidebar-drawer-brand-width: calc(24 * var(--op-size-unit)); /* 96px */
3999
+
4000
+ /* Spacing */
4001
+ --_op-sidebar-spacing: calc(var(--op-space-2x-large) + var(--op-space-2x-small));
4002
+ --_op-sidebar-brand-spacing: var(--op-space-medium);
4003
+ --_op-sidebar-content-spacing: var(--op-space-x-small);
4004
+ --_op-sidebar-content-item-spacing: var(--op-space-2x-small);
4005
+
4006
+ /* Animation */
4007
+ --_op-sidebar-transition: var(--op-transition-sidebar);
4008
+
4009
+ /* Private API (component option defaults) */
4010
+ --__op-sidebar-width: var(--_op-sidebar-drawer-width);
4011
+ --__op-sidebar-brand-width: var(--_op-sidebar-drawer-brand-width);
4012
+
4013
+ z-index: var(--op-z-index-sidebar);
4014
+ display: flex;
4015
+ width: var(--__op-sidebar-width);
4016
+ min-width: var(--__op-sidebar-width);
4017
+ flex-direction: column;
4018
+ background-color: var(--_op-sidebar-background-color);
4019
+ box-shadow: var(--op-border-right) var(--_op-sidebar-border-color);
4020
+ color: var(--_op-sidebar-text-color);
4021
+ overflow-y: auto;
4022
+ transition: var(--_op-sidebar-transition);
4023
+
4024
+ /* Elements */
4025
+ .sidebar__brand {
4026
+ height: var(--__op-sidebar-brand-width);
4027
+ padding: var(--_op-sidebar-brand-spacing);
4028
+ margin-inline: auto;
4029
+
4030
+ img {
4031
+ height: 100%;
4032
+ }
4033
+ }
4034
+
4035
+ .sidebar__content {
4036
+ display: flex;
4037
+ flex-direction: column;
4038
+ flex-grow: 1;
4039
+ gap: var(--_op-sidebar-content-item-spacing);
4040
+ padding-inline: var(--_op-sidebar-content-spacing);
4041
+
4042
+ > * {
4043
+ justify-content: flex-start;
4044
+
4045
+ .material-symbols-outlined {
4046
+ --op-mso-optical-sizing: 40;
4047
+ --op-mso-weight: var(--op-font-weight-bold);
4048
+
4049
+ font-size: var(--op-font-large);
4050
+ }
4051
+ }
4052
+
4053
+ &.sidebar__content--start {
4054
+ justify-content: start;
4055
+ }
4056
+
4057
+ &.sidebar__content--center {
4058
+ justify-content: center;
4059
+ }
4060
+
4061
+ &.sidebar__content--end {
4062
+ justify-content: end;
4063
+ }
4064
+ }
4065
+
4066
+ /* Modifiers */
4067
+ &.sidebar--padded {
4068
+ padding-block: var(--_op-sidebar-spacing);
4069
+ }
4070
+
4071
+ /* Drawer Modifier */
4072
+ &.sidebar--drawer {
4073
+ /* Private API */
4074
+ --__op-sidebar-width: var(--_op-sidebar-drawer-width);
4075
+ --__op-sidebar-brand-width: var(--_op-sidebar-drawer-brand-width);
4076
+ }
4077
+
4078
+ /* Compact Modifier */
4079
+ &.sidebar--compact {
4080
+ /* Private API (component option defaults) */
4081
+ --__op-sidebar-width: var(--_op-sidebar-compact-width);
4082
+ --__op-sidebar-brand-width: var(--_op-sidebar-compact-brand-width);
4083
+
4084
+ /* Elements */
4085
+ .sidebar__content {
4086
+ > * {
4087
+ /* Need to get icon-with-label behavior */
4088
+ flex-direction: column;
4089
+ padding: var(--op-space-small);
4090
+ gap: var(--op-space-3x-small);
4091
+ }
4092
+ }
4093
+ }
4094
+
4095
+ &.sidebar--rail {
4096
+ /* Private API (component option defaults) */
4097
+ --__op-sidebar-width: var(--_op-sidebar-rail-width);
4098
+ --__op-sidebar-brand-width: var(--_op-sidebar-rail-brand-width);
4099
+
4100
+ /* Elements */
4101
+ .sidebar__content {
4102
+ align-items: center;
4103
+
4104
+ > * {
4105
+ /* Need to get icon behavior */
4106
+ width: var(--__op-btn-height);
4107
+ min-width: var(--__op-btn-height);
4108
+ justify-content: center;
4109
+ padding: 0;
4110
+ font-size: 0;
4111
+ gap: 0;
4112
+ }
4113
+ }
4114
+ }
4115
+
4116
+ /* Primary */
4117
+ &.sidebar--primary {
4118
+ --_op-sidebar-background-color: var(--op-color-primary-plus-six);
4119
+ --_op-sidebar-text-color: var(--op-color-primary-on-plus-six);
4120
+ --_op-sidebar-border-color: var(--op-color-primary-plus-four);
4121
+ }
4122
+ }
4123
+ .side-panel {
4124
+ /* Public API (customizable component options) */
4125
+ --_op-side-panel-width: calc(54 * var(--op-size-unit)); /* 216px */
4126
+ --_op-side-panel-header-padding: var(--op-space-medium);
4127
+ --_op-side-panel-body-padding: var(--op-space-medium);
4128
+ --_op-side-panel-footer-padding: var(--op-space-medium);
4129
+ --_op-side-panel-section-padding: var(--op-space-medium);
4130
+
4131
+ display: flex;
4132
+ width: var(--_op-side-panel-width);
4133
+ min-width: var(--_op-side-panel-width);
4134
+ height: 100vh;
4135
+ max-height: 100%;
4136
+ flex-direction: column;
4137
+ background-color: var(--op-color-background);
4138
+ color: var(--op-color-on-background);
4139
+
4140
+ /* Modifiers */
4141
+ &.side-panel--border-left {
4142
+ box-shadow: var(--op-border-left) var(--op-color-border);
4143
+ }
4144
+
4145
+ &.side-panel--border-right {
4146
+ box-shadow: var(--op-border-right) var(--op-color-border);
4147
+ }
4148
+
4149
+ &.side-panel--border-left.side-panel--border-right {
4150
+ box-shadow: var(--op-border-x);
4151
+ }
4152
+
4153
+ /* Elements */
4154
+ .side-panel__header {
4155
+ &.side-panel__header--padded {
4156
+ padding: var(--_op-side-panel-header-padding);
4157
+ }
4158
+
4159
+ &.side-panel__header--padded-x {
4160
+ padding-inline: var(--_op-side-panel-header-padding);
4161
+ }
4162
+
4163
+ &.side-panel__header--padded-y {
4164
+ padding-block: var(--_op-side-panel-header-padding);
4165
+ }
4166
+ }
4167
+
4168
+ .side-panel__body {
4169
+ flex: 1;
4170
+ overflow-y: auto;
4171
+
4172
+ &.side-panel__body--padded {
4173
+ padding: var(--_op-side-panel-body-padding);
4174
+ }
4175
+
4176
+ &.side-panel__body--padded-x {
4177
+ padding-inline: var(--_op-side-panel-body-padding);
4178
+ }
4179
+
4180
+ &.side-panel__body--padded-y {
4181
+ padding-block: var(--_op-side-panel-body-padding);
4182
+ }
4183
+ }
4184
+
4185
+ .side-panel__footer {
4186
+ &.side-panel__footer--padded {
4187
+ padding: var(--_op-side-panel-footer-padding);
4188
+ }
4189
+
4190
+ &.side-panel__footer--padded-x {
4191
+ padding-inline: var(--_op-side-panel-footer-padding);
4192
+ }
4193
+
4194
+ &.side-panel__footer--padded-y {
4195
+ padding-block: var(--_op-side-panel-footer-padding);
4196
+ }
4197
+ }
4198
+
4199
+ .side-panel__section {
4200
+ &.side-panel__section--padded {
4201
+ padding: var(--_op-side-panel-section-padding);
4202
+ }
4203
+
4204
+ &.side-panel__section--padded-x {
4205
+ padding-inline: var(--_op-side-panel-section-padding);
4206
+ }
4207
+
4208
+ &.side-panel__section--padded-y {
4209
+ padding-block: var(--_op-side-panel-section-padding);
4210
+ }
4211
+ }
4212
+ }
4213
+ .spinner {
4214
+ /* Public API (customizable component options) */
4215
+ --_op-spinner-indicator-color: var(--op-color-primary-base);
4216
+ --_op-spinner-track-color: var(--op-color-neutral-plus-four);
4217
+ --_op-spinner-track-width-x-small: var(--op-border-width);
4218
+ --_op-spinner-track-width-small: var(--op-border-width-large);
4219
+ --_op-spinner-track-width-medium: calc(var(--op-border-width-large) + var(--op-border-width));
4220
+ --_op-spinner-track-width-large: var(--op-border-width-x-large);
4221
+ --_op-spinner-diameter-x-small: calc(6 * var(--op-size-unit)); /* 24px */
4222
+ --_op-spinner-diameter-small: calc(10 * var(--op-size-unit)); /* 40px */
4223
+ --_op-spinner-diameter-medium: calc(15 * var(--op-size-unit)); /* 60px */
4224
+ --_op-spinner-diameter-large: calc(20 * var(--op-size-unit)); /* 80px */
4225
+ --_op-spinner-animation-duration: 0.8s;
4226
+ --_op-spinner-animation-timing-function: linear;
4227
+
4228
+ /* Private API (component option defaults) */
4229
+ --__op-spinner-diameter: var(--_op-spinner-diameter-large);
4230
+ --__op-spinner-track-width: var(--_op-spinner-track-width-large);
4231
+
4232
+ width: var(--__op-spinner-diameter);
4233
+ height: var(--__op-spinner-diameter);
4234
+ border: var(--__op-spinner-track-width) solid var(--_op-spinner-track-color);
4235
+ border-radius: var(--__op-spinner-diameter);
4236
+ border-top-color: var(--_op-spinner-indicator-color);
4237
+ animation: spinner var(--_op-spinner-animation-duration) var(--_op-spinner-animation-timing-function) infinite;
4238
+
4239
+ &.spinner--x-small {
4240
+ --__op-spinner-diameter: var(--_op-spinner-diameter-x-small);
4241
+ --__op-spinner-track-width: var(--_op-spinner-track-width-x-small);
4242
+ }
4243
+
4244
+ &.spinner--small {
4245
+ --__op-spinner-diameter: var(--_op-spinner-diameter-small);
4246
+ --__op-spinner-track-width: var(--_op-spinner-track-width-small);
4247
+ }
4248
+
4249
+ &.spinner--medium {
4250
+ --__op-spinner-diameter: var(--_op-spinner-diameter-medium);
4251
+ --__op-spinner-track-width: var(--_op-spinner-track-width-medium);
4252
+ }
4253
+
4254
+ &.spinner--large {
4255
+ --__op-spinner-diameter: var(--_op-spinner-diameter-large);
4256
+ --__op-spinner-track-width: var(--_op-spinner-track-width-large);
4257
+ }
4258
+ }
4259
+ @keyframes spinner {
4260
+ to {
4261
+ transform: rotate(360deg);
4262
+ }
4263
+ }
4264
+ .switch {
4265
+ /* Public API (allowed to be overridden) */
4266
+ --_op-switch-height-small: calc(4 * var(--op-size-unit)); /* 16px */
4267
+ --_op-switch-height-large: calc(6 * var(--op-size-unit)); /* 24px */
4268
+ --_op-switch-width-small: calc(7 * var(--op-size-unit)); /* 28px */
4269
+ --_op-switch-width-large: calc(11 * var(--op-size-unit)); /* 44px */
4270
+ --_op-switch-opacity-disabled: var(--op-opacity-disabled);
4271
+ --_op-switch-switch-padding: var(--op-space-2x-small);
4272
+
4273
+ /* Private API (don't touch these) */
4274
+ --__op-switch-width: var(--_op-switch-width-large);
4275
+ --__op-switch-height: var(--_op-switch-height-large);
4276
+ --__op-switch-switch-size: calc(var(--__op-switch-height) - var(--_op-switch-switch-padding));
4277
+ --__op-switch-half-switch-padding: calc(var(--_op-switch-switch-padding) / 2);
4278
+
4279
+ position: relative;
4280
+ display: flex;
4281
+ align-items: center;
4282
+
4283
+ label {
4284
+ position: relative;
4285
+ display: block;
4286
+ width: var(--__op-switch-width);
4287
+ height: var(--__op-switch-height);
4288
+ border-radius: var(--op-radius-pill);
4289
+ background: var(--op-color-neutral-base);
4290
+ box-shadow: inset var(--op-border-all) var(--op-color-neutral-plus-three);
4291
+ text-indent: -9999px; /* Normally text would not be put in the label, but this hides it in case you do put text in the label */
4292
+
4293
+ &::after {
4294
+ position: absolute;
4295
+ width: var(--__op-switch-switch-size);
4296
+ height: var(--__op-switch-switch-size);
4297
+ border-radius: var(--op-radius-circle);
4298
+ background-color: var(--op-color-neutral-plus-eight);
4299
+ content: '';
4300
+ inset-block-start: var(--__op-switch-half-switch-padding);
4301
+ inset-inline-start: var(--__op-switch-half-switch-padding);
4302
+ transition: var(--op-transition-input);
4303
+ }
4304
+ }
4305
+
4306
+ /* Prevent labels after the toggle being full width */
4307
+ & + label {
4308
+ width: fit-content;
4309
+ }
4310
+
4311
+ input {
4312
+ width: 0;
4313
+ height: 0;
4314
+ margin-inline-end: calc(-1 * var(--op-space-x-small));
4315
+
4316
+ &:disabled {
4317
+ visibility: hidden;
4318
+ }
4319
+
4320
+ &:disabled + label {
4321
+ cursor: not-allowed;
4322
+ opacity: var(--_op-switch-opacity-disabled);
4323
+ }
4324
+
4325
+ &:checked + label {
4326
+ background-color: var(--op-color-primary-base);
4327
+ box-shadow: none;
4328
+
4329
+ &::after {
4330
+ left: calc(100% - var(--__op-switch-half-switch-padding));
4331
+ transform: translateX(-100%);
4332
+ }
4333
+ }
4334
+
4335
+ &:hover + label {
4336
+ &::after {
4337
+ background-color: var(--op-color-primary-plus-five);
4338
+ }
4339
+ }
4340
+
4341
+ &:focus-visible + label {
4342
+ box-shadow:
4343
+ 0 0 0 var(--op-border-width-large) var(--op-color-primary-plus-six),
4344
+ inset var(--op-border-all) var(--op-color-primary-minus-three);
4345
+
4346
+ &::after {
4347
+ background-color: var(--op-color-neutral-plus-five);
4348
+ box-shadow: var(--op-border-all) var(--op-color-primary-minus-three);
4349
+ }
4350
+ }
4351
+
4352
+ &:focus-visible:checked + label {
4353
+ &::after {
4354
+ background-color: var(--op-color-primary-plus-six);
4355
+ box-shadow: var(--op-border-all) var(--op-color-primary-minus-two);
4356
+ }
4357
+ }
4358
+ }
4359
+
4360
+ /* Size Modifiers */
4361
+ &.switch--small {
4362
+ --__op-switch-width: var(--_op-switch-width-small);
4363
+ --__op-switch-height: var(--_op-switch-height-small);
4364
+ }
4365
+
4366
+ &.switch--large {
4367
+ --__op-switch-width: var(--_op-switch-width-large);
4368
+ --__op-switch-height: var(--_op-switch-height-large);
4369
+ }
4370
+ }
4371
+ .tab-group {
4372
+ display: flex;
4373
+ align-items: center;
4374
+ }
4375
+ .tab {
4376
+ /* Public API */
4377
+ --_op-tab-font-small: var(--op-font-x-small);
4378
+ --_op-tab-font-large: var(--op-font-small);
4379
+ --_op-tab-padding-small: calc(var(--op-space-2x-small) + var(--op-space-3x-small)) var(--op-space-medium);
4380
+ --_op-tab-padding-large: var(--op-space-x-small) var(--op-space-medium) var(--op-space-small) var(--op-space-medium);
4381
+ --_op-tab-indicator-width-small: var(--op-border-width-large);
4382
+ --_op-tab-indicator-width-large: var(--op-border-width-x-large);
4383
+ --_op-tab-disabled-opacity: var(--op-opacity-disabled);
4384
+
4385
+ /* Private API */
4386
+ --__op-tab-font-size: var(--_op-tab-font-large);
4387
+ --__op-tab-padding: var(--_op-tab-padding-large);
4388
+ --__op-tab-indicator-width: var(--_op-tab-indicator-width-large);
4389
+ --__op-tab-indicator: inset 0 calc(-1 * var(--__op-tab-indicator-width)) 0 0;
4390
+
4391
+ padding: var(--__op-tab-padding);
4392
+ background-color: var(--op-color-background);
4393
+ color: var(--op-color-on-background);
4394
+ font-size: var(--__op-tab-font-size);
4395
+ text-decoration: none;
4396
+
4397
+ &.tab--active {
4398
+ box-shadow: var(--__op-tab-indicator) var(--op-color-primary-plus-one);
4399
+ }
4400
+
4401
+ /* Focus State */
4402
+ &:focus,
4403
+ &:focus-within,
4404
+ &:focus-visible {
4405
+ outline: none;
4406
+ }
4407
+
4408
+ /* Hover State */
4409
+ &:hover {
4410
+ background-color: var(--op-color-primary-plus-seven);
4411
+ box-shadow: var(--__op-tab-indicator) var(--op-color-primary-base);
4412
+ color: var(--op-color-primary-on-plus-seven);
4413
+ }
4414
+
4415
+ /* Focus State */
4416
+ &:focus-visible:not(.tab--disabled) {
4417
+ z-index: 1;
4418
+ box-shadow: var(--op-input-focus-primary);
4419
+
4420
+ &.tab--active {
4421
+ box-shadow:
4422
+ var(--__op-tab-indicator) var(--op-color-primary-plus-one),
4423
+ var(--op-input-focus-primary);
4424
+ }
4425
+ }
4426
+
4427
+ /* Disabled State */
4428
+ &.tab--disabled {
4429
+ opacity: var(--_op-tab-disabled-opacity);
4430
+ pointer-events: none;
4431
+ }
4432
+
4433
+ /* Size Modifiers */
4434
+ &.tab--small {
4435
+ --__op-tab-padding: var(--_op-tab-padding-small);
4436
+ --__op-tab-font-size: var(--_op-tab-font-small);
4437
+ --__op-tab-indicator-width: var(--_op-tab-indicator-width-small);
4438
+ }
4439
+
4440
+ &.tab--large {
4441
+ --__op-tab-padding: var(--_op-tab-padding-large);
4442
+ --__op-tab-font-size: var(--_op-tab-font-large);
4443
+ --__op-tab-indicator-width: var(--_op-tab-indicator-width-large);
4444
+ }
4445
+ }
4446
+ .table {
4447
+ /* Public API */
4448
+
4449
+ /* Cells (for height, the appropriate variable is used when using the density modifiers) */
4450
+ --_op-table-cell-height-default: calc(11 * var(--op-size-unit)); /* 44px */
4451
+ --_op-table-cell-height-comfortable: calc(16 * var(--op-size-unit)); /* 64px */
4452
+ --_op-table-cell-height-compact: calc(8 * var(--op-size-unit)); /* 32px */
4453
+
4454
+ /* Private API */
4455
+
4456
+ /* These allow for overriding specific padding versions easier. */
4457
+ --__op-table-cell-height: var(--_op-table-cell-height-default);
4458
+
4459
+ width: 100%;
4460
+ border-radius: var(--op-radius-medium);
4461
+ border-collapse: collapse;
4462
+ box-shadow: var(--op-border-all) var(--op-color-border);
4463
+ contain: paint;
4464
+ table-layout: auto;
4465
+
4466
+ /* Elements */
4467
+
4468
+ thead {
4469
+ background-color: var(--op-color-neutral-plus-eight);
4470
+ box-shadow: inset var(--op-border-top) var(--op-color-border);
4471
+ color: var(--op-color-neutral-on-plus-eight);
4472
+
4473
+ &:has(th input[type='checkbox']:checked) {
4474
+ background-color: var(--op-color-primary-plus-seven);
4475
+ color: var(--op-color-primary-on-plus-seven);
4476
+ }
4477
+ }
4478
+
4479
+ th {
4480
+ font-weight: var(--op-font-weight-semi-bold);
4481
+ text-align: left;
4482
+ }
4483
+
4484
+ tbody,
4485
+ tfoot {
4486
+ background-color: var(--op-color-neutral-plus-max);
4487
+ color: var(--op-color-neutral-on-plus-max);
4488
+ }
4489
+
4490
+ th,
4491
+ td {
4492
+ height: var(--__op-table-cell-height);
4493
+ font-size: var(--op-font-small);
4494
+ padding-block: var(--op-space-2x-small);
4495
+ padding-inline: var(--op-space-small);
4496
+ }
4497
+
4498
+ tfoot tr {
4499
+ box-shadow: var(--op-border-top) var(--op-color-border);
4500
+ }
4501
+
4502
+ tr:not(:last-child) {
4503
+ box-shadow: inset var(--op-border-top) var(--op-color-border);
4504
+ }
4505
+
4506
+ /* Modifiers */
4507
+
4508
+ /* stylelint-disable no-descending-specificity */
4509
+ &.table--primary {
4510
+ thead {
4511
+ background-color: var(--op-color-primary-plus-seven);
4512
+ color: var(--op-color-primary-on-plus-seven);
4513
+ }
4514
+ }
4515
+
4516
+ &.table--danger {
4517
+ thead {
4518
+ background-color: var(--op-color-alerts-danger-plus-seven);
4519
+ color: var(--op-color-alerts-danger-on-plus-seven);
4520
+ }
4521
+ }
4522
+ /* stylelint-enable no-descending-specificity */
4523
+
4524
+ &.table--container {
4525
+ overflow-y: auto;
4526
+ }
4527
+
4528
+ /* Layout Modifiers */
4529
+ &.table--auto-layout {
4530
+ table-layout: auto;
4531
+ }
4532
+
4533
+ &.table--fixed-layout {
4534
+ table-layout: fixed;
4535
+ }
4536
+
4537
+ /* Table Density Modifiers */
4538
+ &.table--default-density {
4539
+ --__op-table-cell-height: var(--_op-table-cell-height-default);
4540
+ }
4541
+
4542
+ &.table--comfortable-density {
4543
+ --__op-table-cell-height: var(--_op-table-cell-height-comfortable);
4544
+ }
4545
+
4546
+ &.table--compact-density {
4547
+ --__op-table-cell-height: var(--_op-table-cell-height-compact);
4548
+ }
4549
+
4550
+ /* Striped Modifiers */
4551
+ &.table--even-striped {
4552
+ tbody tr:nth-child(even) {
4553
+ background-color: var(--op-color-neutral-plus-seven);
4554
+ color: var(--op-color-neutral-on-plus-seven);
4555
+ }
4556
+ }
4557
+
4558
+ &.table--odd-striped {
4559
+ tbody tr:nth-child(odd) {
4560
+ background-color: var(--op-color-neutral-plus-seven);
4561
+ color: var(--op-color-neutral-on-plus-seven);
4562
+ }
4563
+ }
4564
+
4565
+ /* Sticky Header Row Modifier */
4566
+ /* stylelint-disable no-descending-specificity */
4567
+ &.table--sticky-header thead {
4568
+ position: sticky;
4569
+ inset-block-start: 0;
4570
+ }
4571
+ /* stylelint-enable no-descending-specificity */
4572
+
4573
+ /* Sticky Footer Row Modifier */
4574
+ &.table--sticky-footer tfoot {
4575
+ position: sticky;
4576
+ inset-block-end: 0;
4577
+ }
4578
+ }
4579
+ .tag {
4580
+ display: inline-flex;
4581
+ align-items: center;
4582
+ justify-content: center;
4583
+ padding: var(--op-space-2x-small);
4584
+ border-radius: var(--op-radius-pill);
4585
+ background-color: var(--op-color-neutral-plus-four);
4586
+ color: var(--op-color-neutral-on-plus-four);
4587
+ font-size: var(--op-font-x-small);
4588
+ font-weight: var(--op-font-weight-bold);
4589
+ letter-spacing: var(--op-letter-spacing-label);
4590
+ line-height: var(--op-line-height-dense);
4591
+ user-select: none;
4592
+ white-space: nowrap;
4593
+
4594
+ /* Elements */
4595
+
4596
+ .tag__label {
4597
+ padding-inline: var(--op-space-2x-small);
4598
+ }
4599
+
4600
+ .btn--icon {
4601
+ --__op-btn-height: var(--op-font-medium);
4602
+
4603
+ /* Hover State */
4604
+ &:hover {
4605
+ background-color: var(--op-color-neutral-minus-three);
4606
+ box-shadow: none;
4607
+ color: var(--op-color-neutral-on-minus-three);
4608
+ }
4609
+
4610
+ /* Focus State */
4611
+ &:focus-visible {
4612
+ background-color: var(--op-color-neutral-base);
4613
+ box-shadow: var(--op-input-focus-neutral);
4614
+ color: var(--op-color-neutral-on-base);
4615
+ }
4616
+ }
4617
+
4618
+ /* Modifiers */
4619
+
4620
+ &.tag--read-only {
4621
+ /* This is here for consistency */
4622
+ }
4623
+
4624
+ &.tag--primary {
4625
+ background-color: var(--op-color-primary-base);
4626
+ color: var(--op-color-primary-on-base);
4627
+
4628
+ .btn--icon {
4629
+ color: var(--op-color-primary-on-base);
4630
+
4631
+ /* Hover State */
4632
+ &:hover {
4633
+ background-color: var(--op-color-primary-minus-three);
4634
+ box-shadow: none;
4635
+ color: var(--op-color-primary-on-minus-three);
4636
+ }
4637
+
4638
+ /* Focus State */
4639
+ &:focus-visible {
4640
+ background-color: var(--op-color-primary-base);
4641
+ box-shadow: var(--op-input-focus-primary);
4642
+ color: var(--op-color-primary-on-base);
4643
+ }
4644
+ }
4645
+ }
4646
+
4647
+ &.tag--danger {
4648
+ background-color: var(--op-color-alerts-danger-base);
4649
+ color: var(--op-color-alerts-danger-on-base);
4650
+
4651
+ /* stylelint-disable no-descending-specificity */
4652
+ .btn--icon {
4653
+ color: var(--op-color-alerts-danger-on-base);
4654
+
4655
+ /* Hover State */
4656
+ &:hover {
4657
+ background-color: var(--op-color-alerts-danger-minus-three);
4658
+ box-shadow: none;
4659
+ color: var(--op-color-alerts-danger-on-minus-three);
4660
+ }
4661
+
4662
+ /* Focus State */
4663
+ &:focus-visible {
4664
+ background-color: var(--op-color-alerts-danger-base);
4665
+ box-shadow: var(--op-input-focus-danger);
4666
+ color: var(--op-color-alerts-danger-on-base);
4667
+ }
4668
+ }
4669
+ /* stylelint-enable no-descending-specificity */
4670
+ }
4671
+
4672
+ &.tag--warning {
4673
+ background-color: var(--op-color-alerts-warning-base);
4674
+ color: var(--op-color-alerts-warning-on-base);
4675
+
4676
+ /* stylelint-disable no-descending-specificity */
4677
+ .btn--icon {
4678
+ color: var(--op-color-alerts-warning-on-base);
4679
+
4680
+ /* Hover State */
4681
+ &:hover {
4682
+ background-color: var(--op-color-alerts-warning-minus-three);
4683
+ box-shadow: none;
4684
+ color: var(--op-color-alerts-warning-on-minus-three);
4685
+ }
4686
+
4687
+ /* Focus State */
4688
+ &:focus-visible {
4689
+ background-color: var(--op-color-alerts-warning-base);
4690
+ box-shadow: var(--op-input-focus-warning);
4691
+ color: var(--op-color-alerts-warning-on-base);
4692
+ }
4693
+ }
4694
+ /* stylelint-enable no-descending-specificity */
4695
+ }
4696
+
4697
+ &.tag--info {
4698
+ background-color: var(--op-color-alerts-info-base);
4699
+ color: var(--op-color-alerts-info-on-base);
4700
+
4701
+ /* stylelint-disable no-descending-specificity */
4702
+ .btn--icon {
4703
+ color: var(--op-color-alerts-info-on-base);
4704
+
4705
+ /* Hover State */
4706
+ &:hover {
4707
+ background-color: var(--op-color-alerts-info-minus-three);
4708
+ box-shadow: none;
4709
+ color: var(--op-color-alerts-info-on-minus-three);
4710
+ }
4711
+
4712
+ /* Focus State */
4713
+ &:focus-visible {
4714
+ background-color: var(--op-color-alerts-info-base);
4715
+ box-shadow: var(--op-input-focus-info);
4716
+ color: var(--op-color-alerts-info-on-base);
4717
+ }
4718
+ }
4719
+ /* stylelint-enable no-descending-specificity */
4720
+ }
4721
+
4722
+ &.tag--notice {
4723
+ background-color: var(--op-color-alerts-notice-base);
4724
+ color: var(--op-color-alerts-notice-on-base);
4725
+
4726
+ /* stylelint-disable no-descending-specificity */
4727
+ .btn--icon {
4728
+ color: var(--op-color-alerts-notice-on-base);
4729
+
4730
+ /* Hover State */
4731
+ &:hover {
4732
+ background-color: var(--op-color-alerts-notice-minus-three);
4733
+ box-shadow: none;
4734
+ color: var(--op-color-alerts-notice-on-minus-three);
4735
+ }
4736
+
4737
+ /* Focus State */
4738
+ &:focus-visible {
4739
+ background-color: var(--op-color-alerts-notice-base);
4740
+ box-shadow: var(--op-input-focus-notice);
4741
+ color: var(--op-color-alerts-notice-on-base);
4742
+ }
4743
+ }
4744
+ /* stylelint-enable no-descending-specificity */
4745
+ }
4746
+ }
4747
+ .text-pair {
4748
+ /* Public API (customizable component options) */
4749
+ --_op-text-pair-font-size-small: var(--op-font-small);
4750
+ --_op-text-pair-font-size-medium: var(--op-font-medium);
4751
+ --_op-text-pair-font-size-large: var(--op-font-large);
4752
+
4753
+ /* Private API (component option defaults) */
4754
+ --__op-text-pair-title-font-size: var(--_op-text-pair-font-size-medium);
4755
+ --__op-text-pair-subtitle-font-size: var(--_op-text-pair-font-size-small);
4756
+
4757
+ display: flex;
4758
+ flex-direction: column;
4759
+ gap: var(--op-space-x-small);
4760
+
4761
+ &.text-pair--inline {
4762
+ flex-direction: row;
4763
+ align-items: baseline;
4764
+ }
4765
+
4766
+ .text-pair__title {
4767
+ font-size: var(--__op-text-pair-title-font-size);
4768
+ font-weight: var(--op-font-weight-semi-bold);
4769
+ line-height: var(--op-line-height-dense);
4770
+
4771
+ &.text-pair__title--small {
4772
+ --__op-text-pair-title-font-size: var(--_op-text-pair-font-size-small);
4773
+ }
4774
+
4775
+ &.text-pair__title--medium {
4776
+ --__op-text-pair-title-font-size: var(--_op-text-pair-font-size-medium);
4777
+ }
4778
+
4779
+ &.text-pair__title--large {
4780
+ --__op-text-pair-title-font-size: var(--_op-text-pair-font-size-large);
4781
+ }
4782
+ }
4783
+
4784
+ .text-pair__subtitle {
4785
+ font-size: var(--__op-text-pair-subtitle-font-size);
4786
+ font-weight: var(--op-font-weight-normal);
4787
+ line-height: var(--op-line-height-dense);
4788
+
4789
+ &.text-pair__subtitle--small {
4790
+ --__op-text-pair-subtitle-font-size: var(--_op-text-pair-font-size-small);
4791
+ }
4792
+
4793
+ &.text-pair__subtitle--medium {
4794
+ --__op-text-pair-subtitle-font-size: var(--_op-text-pair-font-size-medium);
4795
+ }
4796
+
4797
+ &.text-pair__subtitle--large {
4798
+ --__op-text-pair-subtitle-font-size: var(--_op-text-pair-font-size-large);
4799
+ }
4800
+ }
4801
+ }
4802
+ /* Inspired by https://blog.logrocket.com/creating-beautiful-tooltips-with-only-css/ */
4803
+ [data-tooltip-text] {
4804
+ /* Public API (customizable component options) */
4805
+ --_op-tooltip-max-width: calc(50 * var(--op-size-unit)); /* 200px */
4806
+ --_op-tooltip-padding: var(--op-space-x-small) var(--op-space-medium);
4807
+ --_op-tooltip-background-color: var(--op-color-neutral-minus-max);
4808
+ --_op-tooltip-text-color: var(--op-color-neutral-on-minus-max);
4809
+ --_op-tooltip-arrow-size: calc(var(--op-space-small) / 2);
4810
+ --_op-tooltip-tooltip-offset: var(--op-space-x-small);
4811
+ --_op-tooltip-tooltip-radius: var(--op-radius-medium);
4812
+ --_op-tooltip-tooltip-font-size: var(--op-font-small);
4813
+
4814
+ position: relative;
4815
+
4816
+ &::before,
4817
+ &::after {
4818
+ opacity: var(--op-opacity-none);
4819
+ transition: var(--op-transition-tooltip);
4820
+ visibility: hidden;
4821
+ }
4822
+
4823
+ &::before {
4824
+ position: absolute;
4825
+ z-index: var(--op-z-index-tooltip);
4826
+ display: block;
4827
+ width: max-content;
4828
+ max-width: var(--_op-tooltip-max-width);
4829
+ padding: var(--_op-tooltip-padding);
4830
+ border-radius: var(--_op-tooltip-tooltip-radius);
4831
+ background-color: var(--_op-tooltip-background-color);
4832
+ color: var(--_op-tooltip-text-color);
4833
+ content: attr(data-tooltip-text);
4834
+ font-family: var(--op-font-family); /* Makes tooltips on icons work */
4835
+ font-size: var(--_op-tooltip-tooltip-font-size);
4836
+ overflow-wrap: break-word;
4837
+ pointer-events: none;
4838
+ text-align: center;
4839
+ white-space: normal;
4840
+ }
4841
+
4842
+ &::after {
4843
+ position: absolute;
4844
+ z-index: var(--op-z-index-tooltip);
4845
+ border: var(--_op-tooltip-arrow-size) solid var(--_op-tooltip-background-color);
4846
+ content: '';
4847
+ pointer-events: none;
4848
+ }
4849
+
4850
+ &:hover {
4851
+ &::before,
4852
+ &::after {
4853
+ opacity: var(--op-opacity-full);
4854
+ visibility: visible;
4855
+ }
4856
+ }
4857
+
4858
+ &[data-tooltip-position='top'],
4859
+ &:not([data-tooltip-position]) {
4860
+ &::before,
4861
+ &::after {
4862
+ inset-inline-start: 50%;
4863
+ transform: translateX(-50%);
4864
+ }
4865
+
4866
+ &::before {
4867
+ inset-block-end: 100%;
4868
+ margin-block-end: calc(var(--_op-tooltip-arrow-size) + var(--_op-tooltip-tooltip-offset));
4869
+ }
4870
+
4871
+ &::after {
4872
+ border-color: var(--_op-tooltip-background-color) transparent transparent transparent;
4873
+ inset-block-end: 100%;
4874
+ margin-block-end: calc(-1 * var(--_op-tooltip-arrow-size) + var(--_op-tooltip-tooltip-offset));
4875
+ }
4876
+ }
4877
+
4878
+ &[data-tooltip-position='left'] {
4879
+ &::before,
4880
+ &::after {
4881
+ inset-block-start: 50%;
4882
+ transform: translateY(-50%);
4883
+ }
4884
+
4885
+ &::before {
4886
+ inset-inline-end: 100%;
4887
+ margin-inline-end: calc(var(--_op-tooltip-arrow-size) + var(--_op-tooltip-tooltip-offset));
4888
+ }
4889
+
4890
+ &::after {
4891
+ border-color: transparent transparent transparent var(--_op-tooltip-background-color);
4892
+ inset-inline-end: 100%;
4893
+ margin-inline-end: calc(-1 * var(--_op-tooltip-arrow-size) + var(--_op-tooltip-tooltip-offset));
4894
+ }
4895
+ }
4896
+
4897
+ &[data-tooltip-position='bottom'] {
4898
+ &::before,
4899
+ &::after {
4900
+ inset-inline-start: 50%;
4901
+ transform: translateX(-50%);
4902
+ }
4903
+
4904
+ &::before {
4905
+ inset-block-start: 100%;
4906
+ margin-block-start: calc(var(--_op-tooltip-arrow-size) + var(--_op-tooltip-tooltip-offset));
4907
+ }
4908
+
4909
+ &::after {
4910
+ border-color: transparent transparent var(--_op-tooltip-background-color) transparent;
4911
+ inset-block-start: 100%;
4912
+ margin-block-start: calc(-1 * var(--_op-tooltip-arrow-size) + var(--_op-tooltip-tooltip-offset));
4913
+ }
4914
+ }
4915
+
4916
+ &[data-tooltip-position='right'] {
4917
+ &::before,
4918
+ &::after {
4919
+ inset-block-start: 50%;
4920
+ transform: translateY(-50%);
4921
+ }
4922
+
4923
+ &::before {
4924
+ inset-inline-start: 100%;
4925
+ margin-inline-start: calc(var(--_op-tooltip-arrow-size) + var(--_op-tooltip-tooltip-offset));
4926
+ }
4927
+
4928
+ &::after {
4929
+ border-color: transparent var(--_op-tooltip-background-color) transparent transparent;
4930
+ inset-inline-start: 100%;
4931
+ margin-inline-start: calc(-1 * var(--_op-tooltip-arrow-size) + var(--_op-tooltip-tooltip-offset));
4932
+ }
4933
+ }
4934
+ }