@astryxdesign/theme-neutral 0.7.4 → 0.7.5-canary.0418c47

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/source.mjs CHANGED
@@ -92,15 +92,15 @@ var neutralPaletteRefs = {
92
92
  dark: { 25: "#503424", 65: "#df843f", 80: "#ffb37e" }
93
93
  },
94
94
  blue: {
95
- light: { 25: "#003978", 30: "#00458c", 50: "#0074e2", 80: "#a1caff", 85: "#b9d7ff" },
95
+ light: { 25: "#003978", 30: "#00458c", 45: "#0067ce", 50: "#0074e2", 80: "#a1caff", 85: "#b9d7ff" },
96
96
  dark: { 25: "#253c5a", 65: "#5aa0f8", 75: "#88bcff", 80: "#a1caff" }
97
97
  },
98
98
  red: {
99
- light: { 25: "#76000c", 30: "#8a0011", 55: "#de4745", 65: "#fa6762", 70: "#ff7f77", 80: "#ffaea7", 85: "#ffc4be" },
100
- dark: { 25: "#5b2b28", 65: "#ee736c", 75: "#ff9890", 80: "#ffaea7", 85: "#ffc4be" }
99
+ light: { 25: "#76000c", 30: "#8a0011", 45: "#c0262c", 55: "#de4745", 65: "#fa6762", 80: "#ffaea7", 85: "#ffc4be" },
100
+ dark: { 25: "#5b2b28", 75: "#ff9890", 80: "#ffaea7" }
101
101
  },
102
102
  yellow: {
103
- light: { 25: "#4b3900", 30: "#584400", 65: "#c29900", 75: "#e2b623", 80: "#eec448", 85: "#f8d36a" },
103
+ light: { 25: "#4b3900", 30: "#584400", 45: "#836700", 65: "#c29900", 75: "#e2b623", 80: "#eec448", 85: "#f8d36a" },
104
104
  dark: { 25: "#453a1c", 80: "#e3c36c", 90: "#fae19e" }
105
105
  },
106
106
  teal: {
@@ -140,37 +140,10 @@ var neutralSyntax = defineSyntaxTheme({
140
140
  }
141
141
  });
142
142
  var neutralLocalTokens = {
143
- "--astryx-theme-neutral-color-status-fill-accent": ["#0074e2", "#6d9cfe"],
144
- "--astryx-theme-neutral-color-status-fill-success": ["#198100", "#64af4c"],
145
- "--astryx-theme-neutral-color-status-fill-warning": "#ffce2f",
146
- "--astryx-theme-neutral-color-status-fill-error": ["#c9303a", "#ff705d"],
147
- "--astryx-theme-neutral-color-status-muted-accent": [
148
- blue.light[85],
149
- withAlpha(blue.dark[75], "3D")
150
- ],
151
- "--astryx-theme-neutral-color-on-tint-neutral": ["#fafafa4D", "#0a0a0a4D"],
152
- "--astryx-theme-neutral-color-on-tint-overlay-hover": [
153
- "#fafafa1A",
154
- "#0a0a0a1A"
155
- ],
156
- "--astryx-theme-neutral-color-on-tint-overlay-pressed": [
157
- "#fafafa33",
158
- "#0a0a0a33"
159
- ],
160
- "--astryx-theme-neutral-color-destructive-overlay-hover": [
161
- withAlpha(red.light[70], "0D"),
162
- withAlpha(red.dark[65], "0D")
163
- ],
164
- "--astryx-theme-neutral-color-destructive-overlay-pressed": [
165
- withAlpha(red.light[70], "1A"),
166
- withAlpha(red.dark[65], "1A")
167
- ]
168
- };
169
- var statusFill = {
170
- accent: "var(--astryx-theme-neutral-color-status-fill-accent)",
171
- success: "var(--astryx-theme-neutral-color-status-fill-success)",
172
- warning: "var(--astryx-theme-neutral-color-status-fill-warning)",
173
- error: "var(--astryx-theme-neutral-color-status-fill-error)"
143
+ // Deprecated: kept with its released name, meaning, and value for Neutral
144
+ // extensions (theme:neutral DEC-1); Neutral itself paints status through the
145
+ // portable --color-* roles and no longer reads it.
146
+ "--astryx-theme-neutral-color-status-fill-accent": ["#0074e2", "#6d9cfe"]
174
147
  };
175
148
  var neutralTheme = defineTheme({
176
149
  name: "neutral",
@@ -247,14 +220,27 @@ var neutralTheme = defineTheme({
247
220
  "--color-on-success": [neutral.light[100], neutral.dark[5]],
248
221
  "--color-on-error": [neutral.light[100], neutral.dark[5]],
249
222
  "--color-on-warning": neutral.light[5],
223
+ "--color-info": ["#0074e2", "#6d9cfe"],
224
+ "--color-info-muted": [blue.light[85], withAlpha(blue.dark[75], "3D")],
225
+ "--color-on-info": [neutral.light[100], neutral.dark[5]],
226
+ "--color-text-info": [blue.light[45], blue.dark[80]],
227
+ "--color-text-success": [green.light[45], green.light[75]],
228
+ "--color-text-warning": [yellow.light[45], yellow.light[80]],
229
+ "--color-text-error": [red.light[45], red.dark[80]],
230
+ "--color-on-info-muted": [blue.light[25], blue.dark[80]],
231
+ "--color-on-success-muted": [green.light[25], green.light[75]],
232
+ "--color-on-warning-muted": [yellow.light[25], yellow.light[80]],
233
+ "--color-on-error-muted": [red.light[25], red.dark[80]],
250
234
  // Icon
251
235
  "--color-icon-accent": [neutral.light[10], neutral.dark[95]],
252
236
  "--color-icon-primary": [neutral.light[0], neutral.dark[100]],
253
237
  "--color-icon-secondary": [neutral.light[45], neutral.dark[65]],
254
238
  "--color-icon-disabled": [neutral.light[60], neutral.dark[35]],
255
- "--color-success": [green.light[25], green.light[80]],
256
- "--color-error": [red.light[25], red.dark[85]],
257
- "--color-warning": [yellow.light[25], yellow.light[85]],
239
+ // Strong status fills (architecture:theme-tokens INV11): Neutral's
240
+ // reviewed status-fill colours, with --color-on-<status> above.
241
+ "--color-success": ["#198100", "#64af4c"],
242
+ "--color-warning": "#ffce2f",
243
+ "--color-error": ["#c9303a", "#ff705d"],
258
244
  "--color-success-muted": [green.dark[85], withAlpha(green.light[75], "3D")],
259
245
  "--color-error-muted": [red.light[85], withAlpha(red.dark[75], "3D")],
260
246
  "--color-warning-muted": [
@@ -272,7 +258,7 @@ var neutralTheme = defineTheme({
272
258
  withAlpha(neutral.light[0], "1A"),
273
259
  withAlpha(neutral.dark[0], "4D")
274
260
  ],
275
- "--color-tint-hover": ["black", "white"],
261
+ "--color-tint-hover": [neutral.light[0], neutral.dark[100]],
276
262
  "--color-background-red": [red.light[85], red.dark[25]],
277
263
  "--color-border-red": [red.light[80], red.light[65]],
278
264
  "--color-icon-red": [red.light[25], red.dark[75]],
@@ -356,32 +342,14 @@ var neutralTheme = defineTheme({
356
342
  button: {
357
343
  "variant:destructive": {
358
344
  backgroundColor: "var(--color-error-muted)",
359
- color: "var(--color-error)",
360
- "--color-overlay-hover": "var(--astryx-theme-neutral-color-destructive-overlay-hover)",
361
- "--color-overlay-pressed": "var(--astryx-theme-neutral-color-destructive-overlay-pressed)"
345
+ color: "var(--color-on-error-muted)"
362
346
  }
363
347
  },
364
348
  badge: {
365
- "variant:info": {
366
- backgroundColor: statusFill.accent,
367
- color: "var(--color-on-accent)"
368
- },
369
349
  "variant:neutral": {
370
350
  backgroundColor: "var(--color-background-gray)",
371
351
  color: "var(--color-text-gray)"
372
352
  },
373
- "variant:success": {
374
- backgroundColor: statusFill.success,
375
- color: "var(--color-on-success)"
376
- },
377
- "variant:warning": {
378
- backgroundColor: statusFill.warning,
379
- color: "var(--color-on-warning)"
380
- },
381
- "variant:error": {
382
- backgroundColor: statusFill.error,
383
- color: "var(--color-on-error)"
384
- },
385
353
  "variant:red": {
386
354
  backgroundColor: "var(--color-background-red)",
387
355
  color: "var(--color-text-red)"
@@ -423,16 +391,6 @@ var neutralTheme = defineTheme({
423
391
  color: "var(--color-text-gray)"
424
392
  }
425
393
  },
426
- "status-dot": {
427
- "variant:success": { backgroundColor: statusFill.success },
428
- "variant:warning": { backgroundColor: statusFill.warning },
429
- "variant:error": { backgroundColor: statusFill.error },
430
- "variant:accent": { backgroundColor: statusFill.accent }
431
- },
432
- "avatar-status-dot": {
433
- "variant:success": { backgroundColor: statusFill.success },
434
- "variant:error": { backgroundColor: statusFill.error }
435
- },
436
394
  // Give the Neutral segmented control a roomier inset without changing its
437
395
  // outside height. The selected item stays flat against the tinted track.
438
396
  "segmented-control": {
@@ -454,40 +412,6 @@ var neutralTheme = defineTheme({
454
412
  boxShadow: "none"
455
413
  }
456
414
  },
457
- banner: {
458
- base: {
459
- "--color-neutral": "var(--astryx-theme-neutral-color-on-tint-neutral)",
460
- "--color-overlay-hover": "var(--astryx-theme-neutral-color-on-tint-overlay-hover)",
461
- "--color-overlay-pressed": "var(--astryx-theme-neutral-color-on-tint-overlay-pressed)"
462
- },
463
- "status:info": {
464
- "--color-accent-muted": "var(--astryx-theme-neutral-color-status-muted-accent)",
465
- "--color-text-primary": "var(--color-text-blue)",
466
- "--color-text-secondary": "var(--color-text-blue)",
467
- "--color-accent": "var(--color-text-blue)"
468
- },
469
- "status:success": {
470
- "--color-text-primary": "var(--color-text-green)",
471
- "--color-text-secondary": "var(--color-text-green)",
472
- "--color-success": "var(--color-text-green)"
473
- },
474
- "status:warning": {
475
- "--color-text-primary": "var(--color-text-yellow)",
476
- "--color-text-secondary": "var(--color-text-yellow)",
477
- "--color-warning": "var(--color-text-yellow)"
478
- },
479
- "status:error": {
480
- "--color-text-primary": "var(--color-text-red)",
481
- "--color-text-secondary": "var(--color-text-red)",
482
- "--color-error": "var(--color-text-red)"
483
- }
484
- },
485
- "step-indicator": {
486
- "status:accent": { "--color-accent": statusFill.accent },
487
- "status:success": { "--color-success": statusFill.success },
488
- "status:warning": { "--color-warning": statusFill.warning },
489
- "status:error": { "--color-error": statusFill.error }
490
- },
491
415
  switch: {
492
416
  base: {
493
417
  "--color-background-gray": "var(--color-border-emphasized)"
@@ -496,18 +420,6 @@ var neutralTheme = defineTheme({
496
420
  "progress-bar": {
497
421
  base: {
498
422
  "--color-background-muted": "var(--color-border-emphasized)"
499
- },
500
- "variant:accent": {
501
- "--color-accent": statusFill.accent
502
- },
503
- "variant:success": {
504
- "--color-success": statusFill.success
505
- },
506
- "variant:warning": {
507
- "--color-warning": statusFill.warning
508
- },
509
- "variant:error": {
510
- "--color-error": statusFill.error
511
423
  }
512
424
  },
513
425
  card: {
package/dist/theme.css CHANGED
@@ -2,8 +2,8 @@
2
2
  * @generated by `astryx theme build` — do not edit manually.
3
3
  * Source: src/neutralTheme.ts
4
4
  * Command: astryx theme build src/neutralTheme.ts --out dist/theme.css
5
- * CLI: @astryxdesign/cli@0.7.4
6
- * Core: @astryxdesign/core@0.7.4
5
+ * CLI: @astryxdesign/cli@0.7.5
6
+ * Core: @astryxdesign/core@0.7.5
7
7
  */
8
8
 
9
9
  @layer reset, astryx-base, astryx-theme;
@@ -192,13 +192,24 @@
192
192
  --color-on-success: light-dark(#ffffff, #111111);
193
193
  --color-on-error: light-dark(#ffffff, #111111);
194
194
  --color-on-warning: #111111;
195
+ --color-info: light-dark(#0074e2, #6d9cfe);
196
+ --color-info-muted: light-dark(#b9d7ff, #88bcff3D);
197
+ --color-on-info: light-dark(#ffffff, #111111);
198
+ --color-text-info: light-dark(#0067ce, #a1caff);
199
+ --color-text-success: light-dark(#2f7d33, #90ca90);
200
+ --color-text-warning: light-dark(#836700, #eec448);
201
+ --color-text-error: light-dark(#c0262c, #ffaea7);
202
+ --color-on-info-muted: light-dark(#003978, #a1caff);
203
+ --color-on-success-muted: light-dark(#00490b, #90ca90);
204
+ --color-on-warning-muted: light-dark(#4b3900, #eec448);
205
+ --color-on-error-muted: light-dark(#76000c, #ffaea7);
195
206
  --color-icon-accent: light-dark(#1b1b1b, #f1f1f1);
196
207
  --color-icon-primary: light-dark(#000000, #ffffff);
197
208
  --color-icon-secondary: light-dark(#6a6a6a, #9e9e9e);
198
209
  --color-icon-disabled: light-dark(#919191, #525252);
199
- --color-success: light-dark(#00490b, #a4d6a3);
200
- --color-error: light-dark(#76000c, #ffc4be);
201
- --color-warning: light-dark(#4b3900, #f8d36a);
210
+ --color-success: light-dark(#198100, #64af4c);
211
+ --color-warning: #ffce2f;
212
+ --color-error: light-dark(#c9303a, #ff705d);
202
213
  --color-success-muted: light-dark(#bce0bb, #90ca903D);
203
214
  --color-error-muted: light-dark(#ffc4be, #ff98903D);
204
215
  --color-warning-muted: light-dark(#fae19e, #e2b6233D);
@@ -206,7 +217,7 @@
206
217
  --color-border-emphasized: light-dark(#d4d4d4, #525252);
207
218
  --color-skeleton: light-dark(#f1f1f1, #525252);
208
219
  --color-shadow: light-dark(#0000001A, #0000004D);
209
- --color-tint-hover: light-dark(black, white);
220
+ --color-tint-hover: light-dark(#000000, #ffffff);
210
221
  --color-background-red: light-dark(#ffc4be, #5b2b28);
211
222
  --color-border-red: light-dark(#ffaea7, #fa6762);
212
223
  --color-icon-red: light-dark(#76000c, #ff9890);
@@ -261,16 +272,15 @@
261
272
  --shadow-inset-success: inset 0px 0px 0px 2px #2f7d334D;
262
273
  --shadow-inset-warning: inset 0px 0px 0px 2px #f8d36a4D;
263
274
  --shadow-inset-error: inset 0px 0px 0px 2px #de47454D;
275
+ --color-icon-info: var(--color-text-info);
276
+ --color-icon-success: var(--color-text-success);
277
+ --color-icon-warning: var(--color-text-warning);
278
+ --color-icon-error: var(--color-text-error);
279
+ --color-border-info: var(--color-text-info);
280
+ --color-border-success: var(--color-text-success);
281
+ --color-border-warning: var(--color-text-warning);
282
+ --color-border-error: var(--color-text-error);
264
283
  --astryx-theme-neutral-color-status-fill-accent: light-dark(#0074e2, #6d9cfe);
265
- --astryx-theme-neutral-color-status-fill-success: light-dark(#198100, #64af4c);
266
- --astryx-theme-neutral-color-status-fill-warning: #ffce2f;
267
- --astryx-theme-neutral-color-status-fill-error: light-dark(#c9303a, #ff705d);
268
- --astryx-theme-neutral-color-status-muted-accent: light-dark(#b9d7ff, #88bcff3D);
269
- --astryx-theme-neutral-color-on-tint-neutral: light-dark(#fafafa4D, #0a0a0a4D);
270
- --astryx-theme-neutral-color-on-tint-overlay-hover: light-dark(#fafafa1A, #0a0a0a1A);
271
- --astryx-theme-neutral-color-on-tint-overlay-pressed: light-dark(#fafafa33, #0a0a0a33);
272
- --astryx-theme-neutral-color-destructive-overlay-hover: light-dark(#ff7f770D, #ee736c0D);
273
- --astryx-theme-neutral-color-destructive-overlay-pressed: light-dark(#ff7f771A, #ee736c1A);
274
284
  }
275
285
 
276
286
  :scope {
@@ -387,14 +397,7 @@
387
397
 
388
398
  .astryx-button[data-variant="destructive"] {
389
399
  background-color: var(--color-error-muted);
390
- color: var(--color-error);
391
- --color-overlay-hover: var(--astryx-theme-neutral-color-destructive-overlay-hover);
392
- --color-overlay-pressed: var(--astryx-theme-neutral-color-destructive-overlay-pressed);
393
- }
394
-
395
- .astryx-badge[data-variant="info"] {
396
- background-color: var(--astryx-theme-neutral-color-status-fill-accent);
397
- color: var(--color-on-accent);
400
+ color: var(--color-on-error-muted);
398
401
  }
399
402
 
400
403
  .astryx-badge[data-variant="neutral"] {
@@ -402,21 +405,6 @@
402
405
  color: var(--color-text-gray);
403
406
  }
404
407
 
405
- .astryx-badge[data-variant="success"] {
406
- background-color: var(--astryx-theme-neutral-color-status-fill-success);
407
- color: var(--color-on-success);
408
- }
409
-
410
- .astryx-badge[data-variant="warning"] {
411
- background-color: var(--astryx-theme-neutral-color-status-fill-warning);
412
- color: var(--color-on-warning);
413
- }
414
-
415
- .astryx-badge[data-variant="error"] {
416
- background-color: var(--astryx-theme-neutral-color-status-fill-error);
417
- color: var(--color-on-error);
418
- }
419
-
420
408
  .astryx-badge[data-variant="red"] {
421
409
  background-color: var(--color-background-red);
422
410
  color: var(--color-text-red);
@@ -467,30 +455,6 @@
467
455
  color: var(--color-text-gray);
468
456
  }
469
457
 
470
- .astryx-status-dot[data-variant="success"] {
471
- background-color: var(--astryx-theme-neutral-color-status-fill-success);
472
- }
473
-
474
- .astryx-status-dot[data-variant="warning"] {
475
- background-color: var(--astryx-theme-neutral-color-status-fill-warning);
476
- }
477
-
478
- .astryx-status-dot[data-variant="error"] {
479
- background-color: var(--astryx-theme-neutral-color-status-fill-error);
480
- }
481
-
482
- .astryx-status-dot[data-variant="accent"] {
483
- background-color: var(--astryx-theme-neutral-color-status-fill-accent);
484
- }
485
-
486
- .astryx-avatar-status-dot[data-variant="success"] {
487
- background-color: var(--astryx-theme-neutral-color-status-fill-success);
488
- }
489
-
490
- .astryx-avatar-status-dot[data-variant="error"] {
491
- background-color: var(--astryx-theme-neutral-color-status-fill-error);
492
- }
493
-
494
458
  .astryx-segmented-control {
495
459
  padding: var(--spacing-1);
496
460
  --_segmented-control-padding: var(--spacing-1);
@@ -512,53 +476,6 @@
512
476
  box-shadow: none;
513
477
  }
514
478
 
515
- .astryx-banner {
516
- --color-neutral: var(--astryx-theme-neutral-color-on-tint-neutral);
517
- --color-overlay-hover: var(--astryx-theme-neutral-color-on-tint-overlay-hover);
518
- --color-overlay-pressed: var(--astryx-theme-neutral-color-on-tint-overlay-pressed);
519
- }
520
-
521
- .astryx-banner[data-status="info"] {
522
- --color-accent-muted: var(--astryx-theme-neutral-color-status-muted-accent);
523
- --color-text-primary: var(--color-text-blue);
524
- --color-text-secondary: var(--color-text-blue);
525
- --color-accent: var(--color-text-blue);
526
- }
527
-
528
- .astryx-banner[data-status="success"] {
529
- --color-text-primary: var(--color-text-green);
530
- --color-text-secondary: var(--color-text-green);
531
- --color-success: var(--color-text-green);
532
- }
533
-
534
- .astryx-banner[data-status="warning"] {
535
- --color-text-primary: var(--color-text-yellow);
536
- --color-text-secondary: var(--color-text-yellow);
537
- --color-warning: var(--color-text-yellow);
538
- }
539
-
540
- .astryx-banner[data-status="error"] {
541
- --color-text-primary: var(--color-text-red);
542
- --color-text-secondary: var(--color-text-red);
543
- --color-error: var(--color-text-red);
544
- }
545
-
546
- .astryx-step-indicator[data-status="accent"] {
547
- --color-accent: var(--astryx-theme-neutral-color-status-fill-accent);
548
- }
549
-
550
- .astryx-step-indicator[data-status="success"] {
551
- --color-success: var(--astryx-theme-neutral-color-status-fill-success);
552
- }
553
-
554
- .astryx-step-indicator[data-status="warning"] {
555
- --color-warning: var(--astryx-theme-neutral-color-status-fill-warning);
556
- }
557
-
558
- .astryx-step-indicator[data-status="error"] {
559
- --color-error: var(--astryx-theme-neutral-color-status-fill-error);
560
- }
561
-
562
479
  .astryx-switch {
563
480
  --color-background-gray: var(--color-border-emphasized);
564
481
  }
@@ -567,22 +484,6 @@
567
484
  --color-background-muted: var(--color-border-emphasized);
568
485
  }
569
486
 
570
- .astryx-progress-bar[data-variant="accent"] {
571
- --color-accent: var(--astryx-theme-neutral-color-status-fill-accent);
572
- }
573
-
574
- .astryx-progress-bar[data-variant="success"] {
575
- --color-success: var(--astryx-theme-neutral-color-status-fill-success);
576
- }
577
-
578
- .astryx-progress-bar[data-variant="warning"] {
579
- --color-warning: var(--astryx-theme-neutral-color-status-fill-warning);
580
- }
581
-
582
- .astryx-progress-bar[data-variant="error"] {
583
- --color-error: var(--astryx-theme-neutral-color-status-fill-error);
584
- }
585
-
586
487
  .astryx-card {
587
488
  --astryx-card-padding: var(--spacing-3);
588
489
  }
@@ -2,8 +2,8 @@
2
2
  * @generated by `astryx theme build` — do not edit manually.
3
3
  * Source: src/neutralTheme.ts
4
4
  * Command: astryx theme build src/neutralTheme.ts --out dist/theme.css
5
- * CLI: @astryxdesign/cli@0.7.4
6
- * Core: @astryxdesign/core@0.7.4
5
+ * CLI: @astryxdesign/cli@0.7.5
6
+ * Core: @astryxdesign/core@0.7.5
7
7
  */
8
8
 
9
9
  export {};
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@astryxdesign/theme-neutral",
3
- "version": "0.7.4",
3
+ "version": "0.7.5-canary.0418c47",
4
4
  "displayName": "Neutral Theme",
5
5
  "private": false,
6
6
  "description": "Restrained warm grays. Minimal and quiet, so the content stays the focus.",
@@ -58,11 +58,11 @@
58
58
  "lucide-react": "^1.18.0"
59
59
  },
60
60
  "peerDependencies": {
61
- "@astryxdesign/core": "0.7.4",
61
+ "@astryxdesign/core": "0.7.5-canary.0418c47",
62
62
  "react": ">=19"
63
63
  },
64
64
  "devDependencies": {
65
- "@astryxdesign/cli": "0.7.4"
65
+ "@astryxdesign/cli": "0.7.5-canary.0418c47"
66
66
  },
67
67
  "module": "./dist/source.mjs",
68
68
  "scripts": {
@@ -23,15 +23,15 @@ export const neutralPaletteRefs = {
23
23
  dark: {25: '#503424', 65: '#df843f', 80: '#ffb37e'},
24
24
  },
25
25
  blue: {
26
- light: {25: '#003978', 30: '#00458c', 50: '#0074e2', 80: '#a1caff', 85: '#b9d7ff'},
26
+ light: {25: '#003978', 30: '#00458c', 45: '#0067ce', 50: '#0074e2', 80: '#a1caff', 85: '#b9d7ff'},
27
27
  dark: {25: '#253c5a', 65: '#5aa0f8', 75: '#88bcff', 80: '#a1caff'},
28
28
  },
29
29
  red: {
30
- light: {25: '#76000c', 30: '#8a0011', 55: '#de4745', 65: '#fa6762', 70: '#ff7f77', 80: '#ffaea7', 85: '#ffc4be'},
31
- dark: {25: '#5b2b28', 65: '#ee736c', 75: '#ff9890', 80: '#ffaea7', 85: '#ffc4be'},
30
+ light: {25: '#76000c', 30: '#8a0011', 45: '#c0262c', 55: '#de4745', 65: '#fa6762', 80: '#ffaea7', 85: '#ffc4be'},
31
+ dark: {25: '#5b2b28', 75: '#ff9890', 80: '#ffaea7'},
32
32
  },
33
33
  yellow: {
34
- light: {25: '#4b3900', 30: '#584400', 65: '#c29900', 75: '#e2b623', 80: '#eec448', 85: '#f8d36a'},
34
+ light: {25: '#4b3900', 30: '#584400', 45: '#836700', 65: '#c29900', 75: '#e2b623', 80: '#eec448', 85: '#f8d36a'},
35
35
  dark: {25: '#453a1c', 80: '#e3c36c', 90: '#fae19e'},
36
36
  },
37
37
  teal: {