@ecopages/radiant-themes 0.2.0 → 0.2.2

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 (42) hide show
  1. package/README.md +37 -17
  2. package/dist/compiled/themes/cloudflare/compact.css +56 -14
  3. package/dist/compiled/themes/cloudflare.css +56 -14
  4. package/dist/compiled/themes/github/compact.css +310 -65
  5. package/dist/compiled/themes/github.css +310 -65
  6. package/dist/compiled/themes/high-contrast/compact.css +108 -11
  7. package/dist/compiled/themes/high-contrast.css +108 -11
  8. package/dist/compiled/themes/macos/compact.css +698 -272
  9. package/dist/compiled/themes/macos-classic/compact.css +455 -16
  10. package/dist/compiled/themes/macos-classic.css +455 -16
  11. package/dist/compiled/themes/macos.css +698 -272
  12. package/dist/compiled/themes/material/compact.css +461 -136
  13. package/dist/compiled/themes/material.css +461 -136
  14. package/dist/compiled/themes/vercel/compact.css +118 -66
  15. package/dist/compiled/themes/vercel.css +118 -66
  16. package/dist/compiled/themes/vscode/compact.css +310 -40
  17. package/dist/compiled/themes/vscode.css +310 -40
  18. package/dist/compiled/themes/windows95/compact.css +408 -22
  19. package/dist/compiled/themes/windows95.css +408 -22
  20. package/dist/foundation.css +13 -0
  21. package/dist/tokens/colors/cloudflare.css +1 -1
  22. package/dist/tokens/colors/github.css +32 -0
  23. package/dist/tokens/colors/macos.css +65 -25
  24. package/dist/tokens/colors/material.css +61 -20
  25. package/dist/tokens/colors/vercel.css +43 -39
  26. package/dist/tokens/colors/vscode.css +48 -4
  27. package/dist/tokens/colors/windows95.css +10 -5
  28. package/dist/tokens/components/cloudflare.css +63 -7
  29. package/dist/tokens/components/github.css +287 -39
  30. package/dist/tokens/components/high-contrast.css +106 -11
  31. package/dist/tokens/components/macos-classic.css +549 -15
  32. package/dist/tokens/components/macos.css +555 -96
  33. package/dist/tokens/components/material.css +360 -29
  34. package/dist/tokens/components/vercel.css +83 -19
  35. package/dist/tokens/components/vscode.css +280 -27
  36. package/dist/tokens/components/windows95.css +470 -18
  37. package/dist/tokens/roles/cloudflare.css +1 -1
  38. package/dist/tokens/roles/github.css +12 -12
  39. package/dist/tokens/roles/macos.css +97 -93
  40. package/dist/tokens/roles/material.css +65 -65
  41. package/dist/tokens/roles/vercel.css +3 -3
  42. package/package.json +3 -3
@@ -4,7 +4,8 @@
4
4
  * @remarks Bevels follow the Windows 95 two-tone edges: an outer light and dark pair plus an inner highlight and shadow
5
5
  * pair, drawn with inset shadows so they never change a control's box size.
6
6
  */
7
- :root, :root[data-rui-theme='windows95'] {
7
+ :root,
8
+ :root[data-rui-theme='windows95'] {
8
9
  --font-sans: Tahoma, 'MS Sans Serif', Arial, sans-serif;
9
10
  --font-heading: Tahoma, 'MS Sans Serif', Arial, sans-serif;
10
11
  --font-mono: 'Lucida Console', Consolas, Menlo, Monaco, 'Courier New', monospace;
@@ -127,7 +128,7 @@
127
128
 
128
129
  :root .rui-button:disabled {
129
130
  opacity: 1;
130
- color: var(--windows95-shadow);
131
+ color: var(--windows95-disabled);
131
132
  text-shadow: 1px 1px 0 var(--windows95-light);
132
133
  }
133
134
 
@@ -139,6 +140,7 @@
139
140
  :root .rui-date-range-picker__group,
140
141
  :root .rui-input-group,
141
142
  :root .rui-number-field__group,
143
+ :root rui-date-input:where(:not([data-date-field-input], [data-range-start], [data-range-end])),
142
144
  :root .rui-select__control {
143
145
  @apply rounded-none;
144
146
  border-color: transparent;
@@ -241,6 +243,7 @@
241
243
  :root .rui-menubar__menu-item[aria-checked='true'],
242
244
  :root .rui-tree__node[aria-selected='true'],
243
245
  :root .rui-calendar__day[aria-selected='true'],
246
+ :root .rui-sidebar__menu-button[aria-current='page'],
244
247
  :root .rui-sidebar__menu-button--active,
245
248
  :root .rui-navigation-menu__link-list a[aria-current='page'] {
246
249
  background-color: var(--windows95-selection);
@@ -253,13 +256,29 @@
253
256
  :root .rui-combobox__listbox,
254
257
  :root .rui-calendar,
255
258
  :root .rui-dialog__surface,
256
- :root .rui-popover-host,
259
+ :root .rui-popover:where(:not(.rui-popover--listbox)),
257
260
  :root .rui-hover-card__content {
258
261
  @apply rounded-none border-0 bg-surface;
259
262
  background-color: var(--windows95-face);
260
263
  box-shadow: var(--windows95-raised);
261
264
  }
262
265
 
266
+ :root .rui-select__listbox .rui-listbox,
267
+ :root .rui-combobox__listbox .rui-listbox {
268
+ background-color: transparent;
269
+ }
270
+
271
+ /**
272
+ * @remarks Tooltips use the pale yellow info color with a 1px black frame.
273
+ */
274
+ :root .rui-tooltip__content {
275
+ --rui-tooltip-surface: #ffffe1;
276
+ --rui-tooltip-color: #000000;
277
+ --rui-tooltip-radius: 0;
278
+ --rui-tooltip-shadow: none;
279
+ border: 1px solid #000000;
280
+ }
281
+
263
282
  :root .rui-select__listbox,
264
283
  :root .rui-combobox__listbox {
265
284
  background-color: var(--windows95-field);
@@ -277,8 +296,13 @@
277
296
  color: var(--windows95-selection-text);
278
297
  }
279
298
 
299
+ :root .rui-popover[role='dialog'] {
300
+ padding: var(--space-2);
301
+ }
302
+
280
303
  :root .rui-dialog__title {
281
- min-height: 1.5rem;
304
+ font-size: var(--text-sm);
305
+ min-height: 1.125rem;
282
306
  margin: calc(3px - var(--rui-dialog-padding)) calc(3px - var(--rui-dialog-padding)) var(--space-3);
283
307
  padding: 0.1875rem 2rem 0.1875rem 0.25rem;
284
308
  }
@@ -288,7 +312,7 @@
288
312
  z-index: 1;
289
313
  background-color: var(--windows95-face);
290
314
  color: var(--windows95-text);
291
- top: 0.375rem;
315
+ top: 0.5625rem;
292
316
  right: 0.375rem;
293
317
  width: 1rem;
294
318
  height: 0.875rem;
@@ -299,15 +323,23 @@
299
323
  @apply overflow-visible rounded-none border-0 bg-transparent shadow-none;
300
324
  }
301
325
 
326
+ /**
327
+ * @remarks The tab row overlaps the page's top bevel by 2px. Unselected tabs stop above that bevel; the selected
328
+ * tab reaches down over it so it joins the page, and stands 2px taller than its neighbours.
329
+ */
302
330
  :root rui-tabs[variant='boxed'] .rui-tabs__list {
303
- @apply min-w-0 max-w-full overflow-x-auto overflow-y-clip border-0 bg-transparent px-0 pt-0.5;
331
+ @apply min-w-0 max-w-full items-end overflow-x-auto overflow-y-clip border-0 bg-transparent px-0.5 pt-0.5;
332
+ position: relative;
333
+ z-index: 1;
334
+ margin-bottom: -2px;
304
335
  gap: 0;
305
336
  }
306
337
 
307
338
  :root rui-tabs[variant='boxed'] .rui-tabs__tab {
308
- @apply relative rounded-none border-0 text-on-surface font-normal;
339
+ @apply relative rounded-none border-0 text-on-surface font-normal opacity-100;
309
340
  z-index: 0;
310
- margin-bottom: -2px;
341
+ margin-bottom: 2px;
342
+ color: var(--windows95-text);
311
343
  background-color: var(--windows95-face);
312
344
  box-shadow:
313
345
  inset -1px 0 var(--windows95-dark),
@@ -319,8 +351,10 @@
319
351
  :root rui-tabs[variant='boxed'] .rui-tabs__tab[aria-selected='true'] {
320
352
  @apply font-normal;
321
353
  z-index: 1;
322
- margin-top: -2px;
323
- padding-bottom: calc(var(--rui-tabs-tab-padding-y, 0.375rem) + 2px);
354
+ margin-inline: -2px;
355
+ margin-bottom: 0;
356
+ padding-block: calc(var(--rui-tabs-tab-padding-y, 0.375rem) + 2px);
357
+ padding-inline: calc(var(--rui-tabs-tab-padding-x, 0.75rem) + 2px);
324
358
  }
325
359
 
326
360
  :root rui-tabs[variant='boxed'] .rui-tabs__panel {
@@ -333,36 +367,104 @@
333
367
  }
334
368
 
335
369
  :root .rui-alert,
336
- :root .rui-toast__content {
370
+ :root .rui-toast {
337
371
  @apply rounded-none border-0 text-on-surface;
338
372
  background-color: var(--windows95-face);
339
373
  box-shadow: var(--windows95-raised);
340
374
  }
341
375
 
342
- :root .rui-alert--error .rui-alert__icon {
376
+ :root .rui-alert--error .rui-alert__icon,
377
+ :root .rui-toast--error .rui-toast__icon {
343
378
  color: var(--windows95-red);
344
379
  }
345
380
 
346
- :root .rui-alert--warning .rui-alert__icon {
381
+ :root .rui-alert--warning .rui-alert__icon,
382
+ :root .rui-toast--warning .rui-toast__icon {
347
383
  color: var(--windows95-amber);
348
384
  }
349
385
 
350
- :root .rui-table__header,
386
+ :root .rui-alert--success .rui-alert__icon,
387
+ :root .rui-toast--success .rui-toast__icon {
388
+ color: var(--windows95-green);
389
+ }
390
+
391
+ :root .rui-alert--info .rui-alert__icon,
392
+ :root .rui-toast--info .rui-toast__icon {
393
+ color: var(--windows95-blue-light);
394
+ }
395
+
351
396
  :root .rui-treegrid__row--header,
352
397
  :root .rui-calendar__weekdays {
353
398
  @apply font-normal;
354
399
  background-color: var(--windows95-face);
355
400
  }
356
401
 
357
- :root .rui-table__header th,
358
- :root .rui-table__header .rui-table__cell {
402
+ :root .rui-table,
403
+ :root .rui-grid {
404
+ background-color: var(--windows95-field);
405
+ color: var(--windows95-field-text);
406
+ }
407
+
408
+ /**
409
+ * @remarks Windows 95 tree views are recessed white work areas with raised column headers, compact rows, and
410
+ * square plus/minus disclosure boxes instead of modern chevrons.
411
+ */
412
+ :root .rui-treegrid {
413
+ @apply rounded-none border-0;
414
+ background-color: var(--windows95-field);
415
+ color: var(--windows95-field-text);
416
+ box-shadow: var(--windows95-sunken);
417
+ --rui-treegrid-indent: 0.875rem;
418
+ }
419
+
420
+ :root .rui-treegrid__cell {
421
+ @apply border-0 bg-transparent px-1.5 py-1;
422
+ color: var(--windows95-field-text);
423
+ }
424
+
425
+ :root .rui-treegrid__row--header .rui-treegrid__cell {
426
+ @apply font-normal;
427
+ background-color: var(--windows95-face);
428
+ color: var(--windows95-text);
359
429
  box-shadow: var(--windows95-raised-thin);
360
430
  }
361
431
 
362
- :root .rui-table,
363
- :root .rui-grid {
432
+ :root .rui-treegrid__row:not(.rui-treegrid__row--header):hover .rui-treegrid__cell:not([aria-selected='true']) {
433
+ background-color: var(--windows95-highlight);
434
+ }
435
+
436
+ :root .rui-treegrid__cell[aria-selected='true'] {
437
+ background-color: var(--windows95-selection);
438
+ color: var(--windows95-selection-text);
439
+ }
440
+
441
+ :root .rui-treegrid__cell:focus-visible {
442
+ outline: 1px dotted var(--windows95-field-text);
443
+ outline-offset: -2px;
444
+ --tw-ring-shadow: 0 0 #0000;
445
+ box-shadow: none;
446
+ }
447
+
448
+ :root .rui-treegrid__row[aria-expanded='false'] .rui-treegrid__cell:first-child::before,
449
+ :root .rui-treegrid__row[aria-expanded='true'] .rui-treegrid__cell:first-child::before {
450
+ content: '+';
451
+ width: 0.75rem;
452
+ height: 0.75rem;
453
+ margin-inline-end: 0.25rem;
454
+ border: 1px solid var(--windows95-line);
364
455
  background-color: var(--windows95-field);
365
456
  color: var(--windows95-field-text);
457
+ font:
458
+ 0.625rem/0.625rem 'MS Sans Serif',
459
+ Tahoma,
460
+ sans-serif;
461
+ text-align: center;
462
+ transform: none;
463
+ vertical-align: -0.05rem;
464
+ }
465
+
466
+ :root .rui-treegrid__row[aria-expanded='true'] .rui-treegrid__cell:first-child::before {
467
+ content: '-';
366
468
  }
367
469
 
368
470
  :root .rui-badge,
@@ -402,6 +504,253 @@
402
504
  @apply rounded-none;
403
505
  background-color: transparent;
404
506
  }
507
+
508
+ /**
509
+ * @remarks Trackbars are a 4px sunken channel under an 11 by 21 pixel raised pointer.
510
+ */
511
+ :root .rui-slider {
512
+ --rui-slider-track-size: 0.25rem;
513
+ }
514
+
515
+ :root .rui-slider__range {
516
+ @apply py-3;
517
+ }
518
+
519
+ :root .rui-slider__thumb {
520
+ inline-size: 0.6875rem;
521
+ block-size: 1.3125rem;
522
+ }
523
+
524
+ :root .rui-slider--vertical .rui-slider__thumb {
525
+ inline-size: 1.3125rem;
526
+ block-size: 0.6875rem;
527
+ }
528
+
529
+ :root .rui-slider__range-track {
530
+ box-shadow: var(--windows95-sunken);
531
+ }
532
+
533
+ /**
534
+ * @remarks Drop-down lists and combo boxes end in a raised arrow button inside the sunken field, with a solid
535
+ * triangle in place of the chevron icon.
536
+ */
537
+ :root .rui-control-toggle {
538
+ @apply rounded-none;
539
+ align-self: stretch;
540
+ width: 1.125rem;
541
+ height: auto;
542
+ margin: 2px;
543
+ margin-inline-start: 0;
544
+ background-color: var(--windows95-face);
545
+ color: var(--windows95-text);
546
+ box-shadow: var(--windows95-raised);
547
+ }
548
+
549
+ :root .rui-control-toggle:hover:not(:disabled) {
550
+ background-color: var(--windows95-face);
551
+ }
552
+
553
+ :root .rui-control-toggle:active:not(:disabled) {
554
+ box-shadow: var(--windows95-pressed);
555
+ }
556
+
557
+ :root .rui-control-toggle > svg {
558
+ width: 0.75rem;
559
+ height: 0.75rem;
560
+ }
561
+
562
+ :root .rui-control-toggle:where([data-select-toggle], [data-combobox-trigger]) > svg {
563
+ display: none;
564
+ }
565
+
566
+ :root .rui-control-toggle:where([data-select-toggle], [data-combobox-trigger])::after {
567
+ content: '';
568
+ width: 7px;
569
+ height: 4px;
570
+ background-color: currentColor;
571
+ clip-path: polygon(0 0, 100% 0, 50% 100%);
572
+ }
573
+
574
+ /**
575
+ * @remarks The menu bar is flat: a title only sinks while its menu is open. Menu commands highlight in navy.
576
+ */
577
+ :root .rui-menubar {
578
+ @apply rounded-none border-0 bg-transparent p-0;
579
+ gap: 0;
580
+ }
581
+
582
+ :root .rui-menubar__item {
583
+ @apply rounded-none;
584
+ color: var(--windows95-text);
585
+ }
586
+
587
+ :root .rui-menubar__item:hover:not(:disabled):not([aria-disabled='true']),
588
+ :root .rui-menubar__item:focus-visible {
589
+ background-color: transparent;
590
+ box-shadow: none;
591
+ --tw-ring-shadow: 0 0 #0000;
592
+ outline: 1px dotted var(--windows95-text);
593
+ outline-offset: -2px;
594
+ }
595
+
596
+ :root .rui-menubar__item[aria-expanded='true'],
597
+ :root .rui-menubar__item[aria-expanded='true']:hover:not(:disabled) {
598
+ @apply font-normal;
599
+ outline: 0;
600
+ background-color: transparent;
601
+ color: var(--windows95-text);
602
+ box-shadow: var(--windows95-sunken-thin);
603
+ }
604
+
605
+ :root .rui-menu-button__menu,
606
+ :root .rui-menubar__menu {
607
+ --rui-menu-item-hover: var(--windows95-selection);
608
+ padding: 3px;
609
+ }
610
+
611
+ :root .rui-menu-button__item,
612
+ :root .rui-menubar__menu-item {
613
+ @apply rounded-none;
614
+ color: var(--windows95-text);
615
+ }
616
+
617
+ :root .rui-menu-button__item:hover:not([aria-disabled='true']),
618
+ :root .rui-menu-button__item:focus-visible:not([aria-disabled='true']),
619
+ :root .rui-menu-button__item[aria-expanded='true'],
620
+ :root .rui-menu-button__item:hover:not([aria-disabled='true'])::after,
621
+ :root .rui-menu-button__item:focus-visible:not([aria-disabled='true'])::after,
622
+ :root .rui-menubar__menu-item:hover:not(:disabled):not([aria-disabled='true']),
623
+ :root .rui-menubar__menu-item:focus-visible,
624
+ :root .rui-menubar__menu-item[aria-expanded='true'] {
625
+ color: var(--windows95-selection-text);
626
+ --tw-ring-shadow: 0 0 #0000;
627
+ }
628
+
629
+ /**
630
+ * @remarks List boxes and tree views are sunken white fields with square navy selection.
631
+ */
632
+ :root .rui-listbox--bordered,
633
+ :root .rui-tree {
634
+ @apply rounded-none border-0;
635
+ background-color: var(--windows95-field);
636
+ color: var(--windows95-field-text);
637
+ box-shadow: var(--windows95-sunken);
638
+ padding: 4px;
639
+ }
640
+
641
+ :root .rui-listbox {
642
+ gap: 0;
643
+ }
644
+
645
+ :root .rui-listbox__option,
646
+ :root .rui-tree__node {
647
+ @apply rounded-none py-0.5;
648
+ color: var(--windows95-field-text);
649
+ }
650
+
651
+ :root .rui-listbox__option[data-active]:not([aria-selected='true']):not([aria-disabled='true']) {
652
+ background-color: var(--windows95-selection);
653
+ color: var(--windows95-selection-text);
654
+ }
655
+
656
+ :root .rui-listbox__option[aria-selected='true'][data-active]:not([aria-disabled='true']),
657
+ :root .rui-listbox__option:focus-visible,
658
+ :root .rui-tree__node:focus-visible {
659
+ --tw-ring-shadow: 0 0 #0000;
660
+ outline: 1px dotted var(--windows95-field-text);
661
+ outline-offset: -1px;
662
+ }
663
+
664
+ :root .rui-listbox__option[aria-selected='true'][data-active]:not([aria-disabled='true']),
665
+ :root .rui-listbox__option[aria-selected='true']:focus-visible {
666
+ outline-color: var(--windows95-selection-text);
667
+ background-image: none;
668
+ }
669
+
670
+ :root .rui-tree__node {
671
+ @apply w-auto px-1 font-normal;
672
+ }
673
+
674
+ :root .rui-tree__node:hover:not([aria-selected='true']) {
675
+ background-color: transparent;
676
+ }
677
+
678
+ :root .rui-tree__node[aria-selected='true'] {
679
+ @apply font-normal;
680
+ }
681
+
682
+ :root .rui-tree ul {
683
+ border-inline-start: 1px dotted var(--windows95-line);
684
+ }
685
+
686
+ :root .rui-tree__node[aria-expanded]::before {
687
+ content: '+';
688
+ display: inline-block;
689
+ width: 9px;
690
+ height: 9px;
691
+ margin-inline-end: 0.375rem;
692
+ border: 1px solid var(--windows95-line);
693
+ background-color: var(--windows95-field);
694
+ color: var(--windows95-field-text);
695
+ font: 9px/7px 'MS Sans Serif', Tahoma, sans-serif;
696
+ text-align: center;
697
+ transform: none;
698
+ transition: none;
699
+ vertical-align: 0;
700
+ }
701
+
702
+ :root .rui-tree__node[aria-expanded='true']::before {
703
+ content: '-';
704
+ }
705
+
706
+ :root .rui-tag {
707
+ @apply rounded-none;
708
+ }
709
+
710
+ :root .rui-tag__remove {
711
+ @apply rounded-none;
712
+ }
713
+
714
+ /**
715
+ * @remarks The calendar's title bar keeps the navy caption with white text, and its month arrows are raised caption
716
+ * buttons.
717
+ */
718
+ :root .rui-calendar__month {
719
+ color: var(--windows95-selection-text);
720
+ }
721
+
722
+ :root .rui-calendar__header {
723
+ padding: 2px;
724
+ }
725
+
726
+ :root .rui-calendar__nav {
727
+ @apply rounded-none;
728
+ width: 1rem;
729
+ height: 0.875rem;
730
+ justify-self: center;
731
+ background-color: var(--windows95-face);
732
+ color: var(--windows95-text);
733
+ box-shadow: var(--windows95-raised);
734
+ }
735
+
736
+ :root .rui-calendar__nav:hover:not(:disabled) {
737
+ background-color: var(--windows95-face);
738
+ }
739
+
740
+ :root .rui-calendar__nav:active:not(:disabled) {
741
+ box-shadow: var(--windows95-pressed);
742
+ }
743
+
744
+ :root .rui-table__column,
745
+ :root .rui-table__sort {
746
+ @apply font-normal;
747
+ }
748
+
749
+ :root .rui-table__column {
750
+ background-color: var(--windows95-face);
751
+ color: var(--windows95-text);
752
+ box-shadow: var(--windows95-raised-thin);
753
+ }
405
754
  }
406
755
 
407
756
  @media (prefers-contrast: more) {
@@ -414,6 +763,7 @@
414
763
  :root .rui-date-range-picker__group,
415
764
  :root .rui-input-group,
416
765
  :root .rui-number-field__group,
766
+ :root rui-date-input:where(:not([data-date-field-input], [data-range-start], [data-range-end])),
417
767
  :root .rui-select__control,
418
768
  :root .rui-checkbox__control,
419
769
  :root .rui-radio__control,
@@ -431,3 +781,105 @@
431
781
  }
432
782
  }
433
783
  }
784
+
785
+ /**
786
+ * WebKit classic Windows scrollbars use a full-size gutter, a dithered track, and four-tone raised controls instead of
787
+ * a thin rounded thumb. Firefox receives the native fallback declared above.
788
+ */
789
+ @supports (-moz-appearance: none) {
790
+ :root,
791
+ :root * {
792
+ scrollbar-width: auto;
793
+ scrollbar-color: var(--windows95-field-text) var(--windows95-face);
794
+ }
795
+ }
796
+
797
+ :root::-webkit-scrollbar,
798
+ :root *::-webkit-scrollbar {
799
+ width: 16px;
800
+ height: 16px;
801
+ }
802
+
803
+ :root::-webkit-scrollbar-track,
804
+ :root *::-webkit-scrollbar-track {
805
+ background-color: var(--windows95-face);
806
+ background-image:
807
+ radial-gradient(circle at 0.5px 0.5px, var(--windows95-shadow) 0.5px, transparent 0.6px),
808
+ radial-gradient(circle at 1.5px 1.5px, var(--windows95-shadow) 0.5px, transparent 0.6px);
809
+ background-size: 2px 2px;
810
+ }
811
+
812
+ :root::-webkit-scrollbar-thumb,
813
+ :root *::-webkit-scrollbar-thumb,
814
+ :root::-webkit-scrollbar-button,
815
+ :root *::-webkit-scrollbar-button {
816
+ box-sizing: border-box;
817
+ border-radius: 0;
818
+ background-color: var(--windows95-face);
819
+ border: 1px solid;
820
+ border-color: var(--windows95-face) var(--windows95-dark) var(--windows95-dark) var(--windows95-face);
821
+ box-shadow:
822
+ inset 1px 1px var(--windows95-light),
823
+ inset -1px -1px var(--windows95-shadow);
824
+ }
825
+
826
+ :root::-webkit-scrollbar-button,
827
+ :root *::-webkit-scrollbar-button {
828
+ display: none;
829
+ }
830
+
831
+ :root::-webkit-scrollbar-button:single-button,
832
+ :root *::-webkit-scrollbar-button:single-button {
833
+ display: block;
834
+ width: 16px;
835
+ height: 16px;
836
+ }
837
+
838
+ :root::-webkit-scrollbar-button:single-button:vertical:decrement,
839
+ :root *::-webkit-scrollbar-button:single-button:vertical:decrement {
840
+ background-image:
841
+ linear-gradient(var(--windows95-text), var(--windows95-text)) center 3px / 2px 2px no-repeat,
842
+ linear-gradient(var(--windows95-text), var(--windows95-text)) center 5px / 4px 2px no-repeat,
843
+ linear-gradient(var(--windows95-text), var(--windows95-text)) center 7px / 6px 2px no-repeat,
844
+ linear-gradient(var(--windows95-text), var(--windows95-text)) center 9px / 8px 2px no-repeat;
845
+ }
846
+
847
+ :root::-webkit-scrollbar-button:single-button:vertical:increment,
848
+ :root *::-webkit-scrollbar-button:single-button:vertical:increment {
849
+ background-image:
850
+ linear-gradient(var(--windows95-text), var(--windows95-text)) center 9px / 2px 2px no-repeat,
851
+ linear-gradient(var(--windows95-text), var(--windows95-text)) center 7px / 4px 2px no-repeat,
852
+ linear-gradient(var(--windows95-text), var(--windows95-text)) center 5px / 6px 2px no-repeat,
853
+ linear-gradient(var(--windows95-text), var(--windows95-text)) center 3px / 8px 2px no-repeat;
854
+ }
855
+
856
+ :root::-webkit-scrollbar-button:single-button:horizontal:decrement,
857
+ :root *::-webkit-scrollbar-button:single-button:horizontal:decrement {
858
+ background-image:
859
+ linear-gradient(var(--windows95-text), var(--windows95-text)) 3px center / 2px 2px no-repeat,
860
+ linear-gradient(var(--windows95-text), var(--windows95-text)) 5px center / 2px 4px no-repeat,
861
+ linear-gradient(var(--windows95-text), var(--windows95-text)) 7px center / 2px 6px no-repeat,
862
+ linear-gradient(var(--windows95-text), var(--windows95-text)) 9px center / 2px 8px no-repeat;
863
+ }
864
+
865
+ :root::-webkit-scrollbar-button:single-button:horizontal:increment,
866
+ :root *::-webkit-scrollbar-button:single-button:horizontal:increment {
867
+ background-image:
868
+ linear-gradient(var(--windows95-text), var(--windows95-text)) 9px center / 2px 2px no-repeat,
869
+ linear-gradient(var(--windows95-text), var(--windows95-text)) 7px center / 2px 4px no-repeat,
870
+ linear-gradient(var(--windows95-text), var(--windows95-text)) 5px center / 2px 6px no-repeat,
871
+ linear-gradient(var(--windows95-text), var(--windows95-text)) 3px center / 2px 8px no-repeat;
872
+ }
873
+
874
+ :root::-webkit-scrollbar-button:active,
875
+ :root *::-webkit-scrollbar-button:active {
876
+ box-shadow: var(--windows95-pressed);
877
+ }
878
+
879
+ :root::-webkit-scrollbar-corner,
880
+ :root *::-webkit-scrollbar-corner,
881
+ :root::-webkit-resizer,
882
+ :root *::-webkit-resizer {
883
+ background-color: var(--windows95-face);
884
+ background-image: linear-gradient(135deg, transparent 50%, var(--windows95-shadow) 50% 60%, transparent 60%);
885
+ }
@@ -92,7 +92,7 @@
92
92
  --gray-900: color-mix(in oklab, var(--color-cloudflare-canvas), white 6%);
93
93
  --gray-950: var(--color-cloudflare-canvas);
94
94
  --primary: var(--color-cloudflare-orange);
95
- --on-primary: #1a1a1a;
95
+ --on-primary: white;
96
96
  --primary-light: var(--color-cloudflare-orange-bright);
97
97
  --primary-dark: var(--color-cloudflare-orange-deep);
98
98
  --primary-container: oklch(30% 0.07 55);
@@ -12,12 +12,12 @@
12
12
  --gray-900: color-mix(in oklab, var(--color-github-canvas), var(--color-github-fg) 94%);
13
13
  --gray-950: var(--color-github-fg);
14
14
 
15
- --primary: var(--color-github-green);
15
+ --primary: var(--color-github-blue);
16
16
  --on-primary: white;
17
- --primary-light: color-mix(in oklab, var(--color-github-green), white 12%);
18
- --primary-dark: color-mix(in oklab, var(--color-github-green), black 24%);
19
- --primary-container: color-mix(in oklab, var(--color-github-green), white 90%);
20
- --on-primary-container: color-mix(in oklab, var(--color-github-green), black 60%);
17
+ --primary-light: var(--color-github-blue-light);
18
+ --primary-dark: #0550ae;
19
+ --primary-container: var(--color-github-accent-subtle);
20
+ --on-primary-container: var(--color-github-accent-on-subtle);
21
21
  --secondary: var(--color-github-subtle);
22
22
  --on-secondary: var(--color-github-fg);
23
23
  --secondary-light: var(--color-github-white);
@@ -53,7 +53,7 @@
53
53
  --warning-container: color-mix(in oklab, var(--color-github-orange), white 88%);
54
54
  --on-warning-container: color-mix(in oklab, var(--color-github-orange), black 60%);
55
55
  --neutral: var(--color-github-muted-fg);
56
- --surface: var(--color-github-subtle);
56
+ --surface: var(--color-github-canvas);
57
57
  --on-surface: var(--color-github-fg);
58
58
  --surface-container-lowest: var(--color-github-canvas);
59
59
  --on-surface-container-lowest: var(--color-github-fg);
@@ -91,12 +91,12 @@
91
91
  --gray-800: color-mix(in oklab, var(--color-github-canvas), white 12%);
92
92
  --gray-900: color-mix(in oklab, var(--color-github-canvas), white 6%);
93
93
  --gray-950: var(--color-github-canvas);
94
- --primary: var(--color-github-green);
94
+ --primary: var(--color-github-blue);
95
95
  --on-primary: white;
96
- --primary-light: #238636;
97
- --primary-dark: #116329;
98
- --primary-container: #0f3d1e;
99
- --on-primary-container: #aff5b4;
96
+ --primary-light: var(--color-github-blue-light);
97
+ --primary-dark: #1158c7;
98
+ --primary-container: var(--color-github-accent-subtle);
99
+ --on-primary-container: var(--color-github-accent-on-subtle);
100
100
  --secondary: var(--color-github-muted);
101
101
  --on-secondary: var(--color-github-fg);
102
102
  --secondary-light: var(--color-github-border);
@@ -124,7 +124,7 @@
124
124
  --warning-container: #4d2d00;
125
125
  --on-warning-container: #ffdf8b;
126
126
  --neutral: var(--color-github-muted-fg);
127
- --surface: var(--color-github-subtle);
127
+ --surface: var(--color-github-canvas);
128
128
  --on-surface: var(--color-github-fg);
129
129
  --surface-container-lowest: var(--color-github-canvas);
130
130
  --on-surface-container-lowest: var(--color-github-fg);