@rolemodel/optics 1.13.1 → 2.0.0

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