@ecopages/radiant-themes 0.2.1 → 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 (39) hide show
  1. package/README.md +27 -15
  2. package/dist/compiled/themes/cloudflare/compact.css +40 -12
  3. package/dist/compiled/themes/cloudflare.css +40 -12
  4. package/dist/compiled/themes/github/compact.css +264 -67
  5. package/dist/compiled/themes/github.css +264 -67
  6. package/dist/compiled/themes/high-contrast/compact.css +88 -5
  7. package/dist/compiled/themes/high-contrast.css +88 -5
  8. package/dist/compiled/themes/macos/compact.css +674 -294
  9. package/dist/compiled/themes/macos-classic/compact.css +197 -25
  10. package/dist/compiled/themes/macos-classic.css +197 -25
  11. package/dist/compiled/themes/macos.css +674 -294
  12. package/dist/compiled/themes/material/compact.css +447 -132
  13. package/dist/compiled/themes/material.css +447 -132
  14. package/dist/compiled/themes/vercel/compact.css +104 -62
  15. package/dist/compiled/themes/vercel.css +104 -62
  16. package/dist/compiled/themes/vscode/compact.css +255 -40
  17. package/dist/compiled/themes/vscode.css +255 -40
  18. package/dist/compiled/themes/windows95/compact.css +260 -22
  19. package/dist/compiled/themes/windows95.css +260 -22
  20. package/dist/tokens/colors/github.css +32 -0
  21. package/dist/tokens/colors/macos.css +65 -25
  22. package/dist/tokens/colors/material.css +61 -20
  23. package/dist/tokens/colors/vercel.css +43 -39
  24. package/dist/tokens/colors/vscode.css +48 -4
  25. package/dist/tokens/colors/windows95.css +10 -5
  26. package/dist/tokens/components/cloudflare.css +55 -5
  27. package/dist/tokens/components/github.css +258 -40
  28. package/dist/tokens/components/high-contrast.css +93 -5
  29. package/dist/tokens/components/macos-classic.css +262 -24
  30. package/dist/tokens/components/macos.css +537 -106
  31. package/dist/tokens/components/material.css +354 -25
  32. package/dist/tokens/components/vercel.css +77 -15
  33. package/dist/tokens/components/vscode.css +248 -27
  34. package/dist/tokens/components/windows95.css +304 -19
  35. package/dist/tokens/roles/github.css +12 -12
  36. package/dist/tokens/roles/macos.css +97 -93
  37. package/dist/tokens/roles/material.css +65 -65
  38. package/dist/tokens/roles/vercel.css +3 -3
  39. package/package.json +3 -3
@@ -29,6 +29,7 @@
29
29
  --color-surface: var(--surface);
30
30
  --color-on-surface: var(--on-surface);
31
31
  --spacing-1: var(--space-1);
32
+ --spacing-3: var(--space-3);
32
33
  --radius-none: var(--border-radius-none);
33
34
  --radius-full: var(--border-radius-full);
34
35
  --radius-control: var(--radius-control);
@@ -266,6 +267,8 @@
266
267
  --windows95-dark: #0a0a0a;
267
268
  --windows95-text: #000000;
268
269
  --windows95-muted: #404040;
270
+ --windows95-line: #808080;
271
+ --windows95-disabled: #808080;
269
272
  --windows95-field: #ffffff;
270
273
  --windows95-field-text: #000000;
271
274
  --windows95-selection: #000080;
@@ -279,12 +282,14 @@
279
282
  :where(.dark), :root.dark[data-rui-theme='windows95'] {
280
283
  --windows95-canvas: #2b2b2b;
281
284
  --windows95-face: #3a3a3a;
282
- --windows95-light: #d0d0d0;
283
- --windows95-highlight: #a5a5a5;
284
- --windows95-shadow: #858585;
285
- --windows95-dark: #6f6f6f;
285
+ --windows95-light: #8a8a8a;
286
+ --windows95-highlight: #5e5e5e;
287
+ --windows95-shadow: #1e1e1e;
288
+ --windows95-dark: #000000;
286
289
  --windows95-text: #f0f0f0;
287
290
  --windows95-muted: #c8c8c8;
291
+ --windows95-line: #8a8a8a;
292
+ --windows95-disabled: #7a7a7a;
288
293
  --windows95-field: #1c1c1c;
289
294
  --windows95-field-text: #f0f0f0;
290
295
  --windows95-selection: #2d5aa8;
@@ -549,7 +554,7 @@
549
554
  }
550
555
  :root .rui-button:disabled {
551
556
  opacity: 1;
552
- color: var(--windows95-shadow);
557
+ color: var(--windows95-disabled);
553
558
  text-shadow: 1px 1px 0 var(--windows95-light);
554
559
  }
555
560
  :root .rui-input,
@@ -650,6 +655,7 @@
650
655
  :root .rui-menubar__menu-item[aria-checked='true'],
651
656
  :root .rui-tree__node[aria-selected='true'],
652
657
  :root .rui-calendar__day[aria-selected='true'],
658
+ :root .rui-sidebar__menu-button[aria-current='page'],
653
659
  :root .rui-sidebar__menu-button--active,
654
660
  :root .rui-navigation-menu__link-list a[aria-current='page'] {
655
661
  background-color: var(--windows95-selection);
@@ -661,7 +667,7 @@
661
667
  :root .rui-combobox__listbox,
662
668
  :root .rui-calendar,
663
669
  :root .rui-dialog__surface,
664
- :root .rui-popover-host,
670
+ :root .rui-popover:where(:not(.rui-popover--listbox)),
665
671
  :root .rui-hover-card__content {
666
672
  border-radius: var(--radius-none);
667
673
  border-style: var(--tw-border-style);
@@ -670,6 +676,17 @@
670
676
  background-color: var(--windows95-face);
671
677
  box-shadow: var(--windows95-raised);
672
678
  }
679
+ :root .rui-select__listbox .rui-listbox,
680
+ :root .rui-combobox__listbox .rui-listbox {
681
+ background-color: transparent;
682
+ }
683
+ :root .rui-tooltip__content {
684
+ --rui-tooltip-surface: #ffffe1;
685
+ --rui-tooltip-color: #000000;
686
+ --rui-tooltip-radius: 0;
687
+ --rui-tooltip-shadow: none;
688
+ border: 1px solid #000000;
689
+ }
673
690
  :root .rui-select__listbox,
674
691
  :root .rui-combobox__listbox {
675
692
  background-color: var(--windows95-field);
@@ -685,8 +702,12 @@
685
702
  background-color: var(--windows95-selection);
686
703
  color: var(--windows95-selection-text);
687
704
  }
705
+ :root .rui-popover[role='dialog'] {
706
+ padding: var(--space-2);
707
+ }
688
708
  :root .rui-dialog__title {
689
- min-height: 1.5rem;
709
+ font-size: var(--text-sm);
710
+ min-height: 1.125rem;
690
711
  margin: calc(3px - var(--rui-dialog-padding)) calc(3px - var(--rui-dialog-padding)) var(--space-3);
691
712
  padding: 0.1875rem 2rem 0.1875rem 0.25rem;
692
713
  }
@@ -697,7 +718,7 @@
697
718
  z-index: 1;
698
719
  background-color: var(--windows95-face);
699
720
  color: var(--windows95-text);
700
- top: 0.375rem;
721
+ top: 0.5625rem;
701
722
  right: 0.375rem;
702
723
  width: 1rem;
703
724
  height: 0.875rem;
@@ -715,13 +736,17 @@
715
736
  :root rui-tabs[variant='boxed'] .rui-tabs__list {
716
737
  max-width: 100%;
717
738
  min-width: 0px;
739
+ align-items: flex-end;
718
740
  overflow-x: auto;
719
741
  overflow-y: clip;
720
742
  border-style: var(--tw-border-style);
721
743
  border-width: 0px;
722
744
  background-color: transparent;
723
- padding-inline: 0px;
745
+ padding-inline: calc(var(--spacing, 0.25rem) * 0.5);
724
746
  padding-top: calc(var(--spacing, 0.25rem) * 0.5);
747
+ position: relative;
748
+ z-index: 1;
749
+ margin-bottom: -2px;
725
750
  gap: 0;
726
751
  }
727
752
  :root rui-tabs[variant='boxed'] .rui-tabs__tab {
@@ -732,8 +757,10 @@
732
757
  --tw-font-weight: var(--font-weight-normal, 400);
733
758
  font-weight: var(--font-weight-normal, 400);
734
759
  color: var(--color-on-surface);
760
+ opacity: 100%;
735
761
  z-index: 0;
736
- margin-bottom: -2px;
762
+ margin-bottom: 2px;
763
+ color: var(--windows95-text);
737
764
  background-color: var(--windows95-face);
738
765
  box-shadow: inset -1px 0 var(--windows95-dark),
739
766
  inset 1px 1px var(--windows95-light),
@@ -744,8 +771,10 @@
744
771
  --tw-font-weight: var(--font-weight-normal, 400);
745
772
  font-weight: var(--font-weight-normal, 400);
746
773
  z-index: 1;
747
- margin-top: -2px;
748
- padding-bottom: calc(var(--rui-tabs-tab-padding-y, 0.375rem) + 2px);
774
+ margin-inline: -2px;
775
+ margin-bottom: 0;
776
+ padding-block: calc(var(--rui-tabs-tab-padding-y, 0.375rem) + 2px);
777
+ padding-inline: calc(var(--rui-tabs-tab-padding-x, 0.75rem) + 2px);
749
778
  }
750
779
  :root rui-tabs[variant='boxed'] .rui-tabs__panel {
751
780
  border-radius: var(--radius-none);
@@ -759,7 +788,7 @@
759
788
  padding: var(--rui-tabs-panel-padding);
760
789
  }
761
790
  :root .rui-alert,
762
- :root .rui-toast__content {
791
+ :root .rui-toast {
763
792
  border-radius: var(--radius-none);
764
793
  border-style: var(--tw-border-style);
765
794
  border-width: 0px;
@@ -767,23 +796,28 @@
767
796
  background-color: var(--windows95-face);
768
797
  box-shadow: var(--windows95-raised);
769
798
  }
770
- :root .rui-alert--error .rui-alert__icon {
799
+ :root .rui-alert--error .rui-alert__icon,
800
+ :root .rui-toast--error .rui-toast__icon {
771
801
  color: var(--windows95-red);
772
802
  }
773
- :root .rui-alert--warning .rui-alert__icon {
803
+ :root .rui-alert--warning .rui-alert__icon,
804
+ :root .rui-toast--warning .rui-toast__icon {
774
805
  color: var(--windows95-amber);
775
806
  }
776
- :root .rui-table__header,
777
- :root .rui-treegrid__row--header,
807
+ :root .rui-alert--success .rui-alert__icon,
808
+ :root .rui-toast--success .rui-toast__icon {
809
+ color: var(--windows95-green);
810
+ }
811
+ :root .rui-alert--info .rui-alert__icon,
812
+ :root .rui-toast--info .rui-toast__icon {
813
+ color: var(--windows95-blue-light);
814
+ }
815
+ :root .rui-treegrid__row--header,
778
816
  :root .rui-calendar__weekdays {
779
817
  --tw-font-weight: var(--font-weight-normal, 400);
780
818
  font-weight: var(--font-weight-normal, 400);
781
819
  background-color: var(--windows95-face);
782
820
  }
783
- :root .rui-table__header th,
784
- :root .rui-table__header .rui-table__cell {
785
- box-shadow: var(--windows95-raised-thin);
786
- }
787
821
  :root .rui-table,
788
822
  :root .rui-grid {
789
823
  background-color: var(--windows95-field);
@@ -832,7 +866,7 @@
832
866
  width: 0.75rem;
833
867
  height: 0.75rem;
834
868
  margin-inline-end: 0.25rem;
835
- border: 1px solid var(--windows95-shadow);
869
+ border: 1px solid var(--windows95-line);
836
870
  background-color: var(--windows95-field);
837
871
  color: var(--windows95-field-text);
838
872
  font: 0.625rem/0.625rem 'MS Sans Serif',
@@ -884,6 +918,210 @@
884
918
  border-radius: var(--radius-none);
885
919
  background-color: transparent;
886
920
  }
921
+ :root .rui-slider {
922
+ --rui-slider-track-size: 0.25rem;
923
+ }
924
+ :root .rui-slider__range {
925
+ padding-block: var(--spacing-3);
926
+ }
927
+ :root .rui-slider__thumb {
928
+ inline-size: 0.6875rem;
929
+ block-size: 1.3125rem;
930
+ }
931
+ :root .rui-slider--vertical .rui-slider__thumb {
932
+ inline-size: 1.3125rem;
933
+ block-size: 0.6875rem;
934
+ }
935
+ :root .rui-slider__range-track {
936
+ box-shadow: var(--windows95-sunken);
937
+ }
938
+ :root .rui-control-toggle {
939
+ border-radius: var(--radius-none);
940
+ align-self: stretch;
941
+ width: 1.125rem;
942
+ height: auto;
943
+ margin: 2px;
944
+ margin-inline-start: 0;
945
+ background-color: var(--windows95-face);
946
+ color: var(--windows95-text);
947
+ box-shadow: var(--windows95-raised);
948
+ }
949
+ :root .rui-control-toggle:hover:not(:disabled) {
950
+ background-color: var(--windows95-face);
951
+ }
952
+ :root .rui-control-toggle:active:not(:disabled) {
953
+ box-shadow: var(--windows95-pressed);
954
+ }
955
+ :root .rui-control-toggle > svg {
956
+ width: 0.75rem;
957
+ height: 0.75rem;
958
+ }
959
+ :root .rui-control-toggle:where([data-select-toggle], [data-combobox-trigger]) > svg {
960
+ display: none;
961
+ }
962
+ :root .rui-control-toggle:where([data-select-toggle], [data-combobox-trigger])::after {
963
+ content: '';
964
+ width: 7px;
965
+ height: 4px;
966
+ background-color: currentColor;
967
+ clip-path: polygon(0 0, 100% 0, 50% 100%);
968
+ }
969
+ :root .rui-menubar {
970
+ border-radius: var(--radius-none);
971
+ border-style: var(--tw-border-style);
972
+ border-width: 0px;
973
+ background-color: transparent;
974
+ padding: 0px;
975
+ gap: 0;
976
+ }
977
+ :root .rui-menubar__item {
978
+ border-radius: var(--radius-none);
979
+ color: var(--windows95-text);
980
+ }
981
+ :root .rui-menubar__item:hover:not(:disabled):not([aria-disabled='true']),
982
+ :root .rui-menubar__item:focus-visible {
983
+ background-color: transparent;
984
+ box-shadow: none;
985
+ --tw-ring-shadow: 0 0 #0000;
986
+ outline: 1px dotted var(--windows95-text);
987
+ outline-offset: -2px;
988
+ }
989
+ :root .rui-menubar__item[aria-expanded='true'],
990
+ :root .rui-menubar__item[aria-expanded='true']:hover:not(:disabled) {
991
+ --tw-font-weight: var(--font-weight-normal, 400);
992
+ font-weight: var(--font-weight-normal, 400);
993
+ outline: 0;
994
+ background-color: transparent;
995
+ color: var(--windows95-text);
996
+ box-shadow: var(--windows95-sunken-thin);
997
+ }
998
+ :root .rui-menu-button__menu,
999
+ :root .rui-menubar__menu {
1000
+ --rui-menu-item-hover: var(--windows95-selection);
1001
+ padding: 3px;
1002
+ }
1003
+ :root .rui-menu-button__item,
1004
+ :root .rui-menubar__menu-item {
1005
+ border-radius: var(--radius-none);
1006
+ color: var(--windows95-text);
1007
+ }
1008
+ :root .rui-menu-button__item:hover:not([aria-disabled='true']),
1009
+ :root .rui-menu-button__item:focus-visible:not([aria-disabled='true']),
1010
+ :root .rui-menu-button__item[aria-expanded='true'],
1011
+ :root .rui-menu-button__item:hover:not([aria-disabled='true'])::after,
1012
+ :root .rui-menu-button__item:focus-visible:not([aria-disabled='true'])::after,
1013
+ :root .rui-menubar__menu-item:hover:not(:disabled):not([aria-disabled='true']),
1014
+ :root .rui-menubar__menu-item:focus-visible,
1015
+ :root .rui-menubar__menu-item[aria-expanded='true'] {
1016
+ color: var(--windows95-selection-text);
1017
+ --tw-ring-shadow: 0 0 #0000;
1018
+ }
1019
+ :root .rui-listbox--bordered,
1020
+ :root .rui-tree {
1021
+ border-radius: var(--radius-none);
1022
+ border-style: var(--tw-border-style);
1023
+ border-width: 0px;
1024
+ background-color: var(--windows95-field);
1025
+ color: var(--windows95-field-text);
1026
+ box-shadow: var(--windows95-sunken);
1027
+ padding: 4px;
1028
+ }
1029
+ :root .rui-listbox {
1030
+ gap: 0;
1031
+ }
1032
+ :root .rui-listbox__option,
1033
+ :root .rui-tree__node {
1034
+ border-radius: var(--radius-none);
1035
+ padding-block: calc(var(--spacing, 0.25rem) * 0.5);
1036
+ color: var(--windows95-field-text);
1037
+ }
1038
+ :root .rui-listbox__option[data-active]:not([aria-selected='true']):not([aria-disabled='true']) {
1039
+ background-color: var(--windows95-selection);
1040
+ color: var(--windows95-selection-text);
1041
+ }
1042
+ :root .rui-listbox__option[aria-selected='true'][data-active]:not([aria-disabled='true']),
1043
+ :root .rui-listbox__option:focus-visible,
1044
+ :root .rui-tree__node:focus-visible {
1045
+ --tw-ring-shadow: 0 0 #0000;
1046
+ outline: 1px dotted var(--windows95-field-text);
1047
+ outline-offset: -1px;
1048
+ }
1049
+ :root .rui-listbox__option[aria-selected='true'][data-active]:not([aria-disabled='true']),
1050
+ :root .rui-listbox__option[aria-selected='true']:focus-visible {
1051
+ outline-color: var(--windows95-selection-text);
1052
+ background-image: none;
1053
+ }
1054
+ :root .rui-tree__node {
1055
+ width: auto;
1056
+ padding-inline: var(--spacing-1);
1057
+ --tw-font-weight: var(--font-weight-normal, 400);
1058
+ font-weight: var(--font-weight-normal, 400);
1059
+ }
1060
+ :root .rui-tree__node:hover:not([aria-selected='true']) {
1061
+ background-color: transparent;
1062
+ }
1063
+ :root .rui-tree__node[aria-selected='true'] {
1064
+ --tw-font-weight: var(--font-weight-normal, 400);
1065
+ font-weight: var(--font-weight-normal, 400);
1066
+ }
1067
+ :root .rui-tree ul {
1068
+ border-inline-start: 1px dotted var(--windows95-line);
1069
+ }
1070
+ :root .rui-tree__node[aria-expanded]::before {
1071
+ content: '+';
1072
+ display: inline-block;
1073
+ width: 9px;
1074
+ height: 9px;
1075
+ margin-inline-end: 0.375rem;
1076
+ border: 1px solid var(--windows95-line);
1077
+ background-color: var(--windows95-field);
1078
+ color: var(--windows95-field-text);
1079
+ font: 9px/7px 'MS Sans Serif', Tahoma, sans-serif;
1080
+ text-align: center;
1081
+ transform: none;
1082
+ transition: none;
1083
+ vertical-align: 0;
1084
+ }
1085
+ :root .rui-tree__node[aria-expanded='true']::before {
1086
+ content: '-';
1087
+ }
1088
+ :root .rui-tag {
1089
+ border-radius: var(--radius-none);
1090
+ }
1091
+ :root .rui-tag__remove {
1092
+ border-radius: var(--radius-none);
1093
+ }
1094
+ :root .rui-calendar__month {
1095
+ color: var(--windows95-selection-text);
1096
+ }
1097
+ :root .rui-calendar__header {
1098
+ padding: 2px;
1099
+ }
1100
+ :root .rui-calendar__nav {
1101
+ border-radius: var(--radius-none);
1102
+ width: 1rem;
1103
+ height: 0.875rem;
1104
+ justify-self: center;
1105
+ background-color: var(--windows95-face);
1106
+ color: var(--windows95-text);
1107
+ box-shadow: var(--windows95-raised);
1108
+ }
1109
+ :root .rui-calendar__nav:hover:not(:disabled) {
1110
+ background-color: var(--windows95-face);
1111
+ }
1112
+ :root .rui-calendar__nav:active:not(:disabled) {
1113
+ box-shadow: var(--windows95-pressed);
1114
+ }
1115
+ :root .rui-table__column,
1116
+ :root .rui-table__sort {
1117
+ --tw-font-weight: var(--font-weight-normal, 400);
1118
+ font-weight: var(--font-weight-normal, 400);
1119
+ }
1120
+ :root .rui-table__column {
1121
+ background-color: var(--windows95-face);
1122
+ color: var(--windows95-text);
1123
+ box-shadow: var(--windows95-raised-thin);
1124
+ }
887
1125
  }
888
1126
  @media (prefers-contrast: more) {
889
1127
  @layer components {
@@ -1,18 +1,36 @@
1
+ /**
2
+ * Primer functional colors: `bgColor`, `fgColor`, `borderColor`, the accent family for selection and focus, and the
3
+ * primary and default button fills.
4
+ */
1
5
  :where(:root), :root[data-rui-theme='github'] {
2
6
  --color-github-white: #ffffff;
3
7
  --color-github-canvas: #ffffff;
4
8
  --color-github-subtle: #f6f8fa;
5
9
  --color-github-muted: #eaeef2;
10
+ --color-github-overlay: #ffffff;
6
11
  --color-github-border: #d1d9e0;
7
12
  --color-github-border-strong: #8c959f;
8
13
  --color-github-fg: #1f2328;
9
14
  --color-github-muted-fg: #59636e;
10
15
  --color-github-blue: #0969da;
11
16
  --color-github-blue-light: #54aeff;
17
+ --color-github-accent-subtle: #ddf4ff;
18
+ --color-github-accent-on-subtle: #0550ae;
12
19
  --color-github-green: #1a7f37;
13
20
  --color-github-red: #cf222e;
21
+ --color-github-danger-fg: #d1242f;
14
22
  --color-github-orange: #bc4c00;
15
23
  --color-github-purple: #8250df;
24
+ --color-github-button-bg: #f6f8fa;
25
+ --color-github-button-hover: #eff2f5;
26
+ --color-github-button-active: #e6eaef;
27
+ --color-github-button-primary: #1f883d;
28
+ --color-github-button-primary-hover: #1c8139;
29
+ --color-github-button-primary-active: #197935;
30
+ --color-github-transparent-hover: rgb(129 139 152 / 0.15);
31
+ --color-github-transparent-selected: rgb(129 139 152 / 0.2);
32
+ --color-github-track: #e6eaef;
33
+ --color-github-knob-border: #818b98;
16
34
  }
17
35
 
18
36
  :where(.dark), :root.dark[data-rui-theme='github'] {
@@ -20,14 +38,28 @@
20
38
  --color-github-canvas: #0d1117;
21
39
  --color-github-subtle: #151b23;
22
40
  --color-github-muted: #212830;
41
+ --color-github-overlay: #151b23;
23
42
  --color-github-border: #3d444d;
24
43
  --color-github-border-strong: #6e7681;
25
44
  --color-github-fg: #f0f6fc;
26
45
  --color-github-muted-fg: #9198a1;
27
46
  --color-github-blue: #1f6feb;
28
47
  --color-github-blue-light: #4493f8;
48
+ --color-github-accent-subtle: #121d2f;
49
+ --color-github-accent-on-subtle: #4493f8;
29
50
  --color-github-green: #238636;
30
51
  --color-github-red: #da3633;
52
+ --color-github-danger-fg: #ff6a61;
31
53
  --color-github-orange: #db6d28;
32
54
  --color-github-purple: #a371f7;
55
+ --color-github-button-bg: #212830;
56
+ --color-github-button-hover: #262c36;
57
+ --color-github-button-active: #2a313c;
58
+ --color-github-button-primary: #238636;
59
+ --color-github-button-primary-hover: #1f7a31;
60
+ --color-github-button-primary-active: #1c6e2d;
61
+ --color-github-transparent-hover: rgb(101 108 118 / 0.2);
62
+ --color-github-transparent-selected: rgb(101 108 118 / 0.24);
63
+ --color-github-track: #2a313c;
64
+ --color-github-knob-border: #656c76;
33
65
  }
@@ -1,33 +1,73 @@
1
+ /**
2
+ * AppKit system colors from macOS Sonoma and Sequoia: `windowBackgroundColor` for the canvas, `controlBackgroundColor`
3
+ * for content and fields, `labelColor` and `secondaryLabelColor` for text, `separatorColor`, the default
4
+ * `controlAccentColor`, and `selectedContentBackgroundColor` for selected rows and filled buttons.
5
+ *
6
+ * @remarks AppKit's translucent label colors are flattened onto their usual backgrounds. Status hues use Apple's
7
+ * increased-contrast variants (`#d70015`, `#248a3d`, `#b25000`) where the standard hue cannot carry text at 4.5:1.
8
+ */
1
9
  :where(:root), :root[data-rui-theme='macos'] {
2
- --macos-canvas: #f5f5f7;
10
+ --macos-canvas: #ececec;
3
11
  --macos-surface: #ffffff;
4
- --macos-subtle: #e9e9ed;
5
- --macos-border: #7f7f84;
6
- --macos-separator: #d1d1d6;
7
- --macos-text: #1d1d1f;
8
- --macos-muted: #55555b;
9
- --macos-blue: #005fcc;
10
- --macos-blue-light: #004da8;
11
- --macos-green: #176b35;
12
- --macos-red: #a51d2d;
13
- --macos-amber: #704500;
14
- --macos-purple: #6e3bb5;
12
+ --macos-subtle: #e3e3e3;
13
+ --macos-control: #ffffff;
14
+ --macos-control-pressed: #e5e5e5;
15
+ --macos-elevated: rgb(246 246 246 / 0.88);
16
+ --macos-elevated-solid: #f6f6f6;
17
+ --macos-elevated-edge: rgb(0 0 0 / 0.18);
18
+ --macos-elevated-highlight: rgb(255 255 255 / 0);
19
+ --macos-border: #8e8e93;
20
+ --macos-separator: #d9d9d9;
21
+ --macos-grid: #e6e6e6;
22
+ --macos-alternate-row: #f4f5f5;
23
+ --macos-text: #262626;
24
+ --macos-muted: #5e5e62;
25
+ --macos-accent: #007aff;
26
+ --macos-selection: #0063e1;
27
+ --macos-selection-text: #ffffff;
28
+ --macos-unemphasized-selection: #dcdcdc;
29
+ --macos-blue: #0063e1;
30
+ --macos-blue-light: #3b8cff;
31
+ --macos-green: #1e7b34;
32
+ --macos-red: #d70015;
33
+ --macos-amber: #9e4700;
34
+ --macos-purple: #8944ab;
35
+ --macos-control-shadow:
36
+ 0 0 0 0.5px rgb(0 0 0 / 0.16), 0 0.5px 1px rgb(0 0 0 / 0.22), 0 1px 1.5px -0.5px rgb(0 0 0 / 0.1);
37
+ --macos-menu-shadow: 0 0 0 0.5px var(--macos-elevated-edge), 0 10px 30px rgb(0 0 0 / 0.2), 0 2px 6px rgb(0 0 0 / 0.1);
15
38
  }
16
39
 
17
40
  :where(.dark), :root.dark[data-rui-theme='macos'] {
18
- --macos-canvas: #1c1c1e;
19
- --macos-surface: #2c2c2e;
20
- --macos-subtle: #3a3a3c;
21
- --macos-border: #8e8e93;
22
- --macos-separator: #3a3a3c;
23
- --macos-text: #f5f5f7;
24
- --macos-muted: #d1d1d6;
25
- --macos-blue: #55a6ff;
26
- --macos-blue-light: #8cc2ff;
27
- --macos-green: #63d982;
28
- --macos-red: #ff7a83;
29
- --macos-amber: #ffd166;
30
- --macos-purple: #c8a1ff;
41
+ --macos-canvas: #323232;
42
+ --macos-surface: #1e1e1e;
43
+ --macos-subtle: #3d3d3d;
44
+ --macos-control: #5c5c5e;
45
+ --macos-control-pressed: #747476;
46
+ --macos-elevated: rgb(44 44 46 / 0.9);
47
+ --macos-elevated-solid: #2c2c2e;
48
+ --macos-elevated-edge: rgb(0 0 0 / 0.6);
49
+ --macos-elevated-highlight: rgb(255 255 255 / 0.14);
50
+ --macos-border: #767676;
51
+ --macos-separator: #484848;
52
+ --macos-grid: #3a3a3a;
53
+ --macos-alternate-row: #262626;
54
+ --macos-text: #dfdfdf;
55
+ --macos-muted: #a1a1a6;
56
+ --macos-accent: #0a84ff;
57
+ --macos-selection: #0058d0;
58
+ --macos-selection-text: #ffffff;
59
+ --macos-unemphasized-selection: #464646;
60
+ --macos-blue: #409cff;
61
+ --macos-blue-light: #70b4ff;
62
+ --macos-green: #30d158;
63
+ --macos-red: #ff6961;
64
+ --macos-amber: #ffd60a;
65
+ --macos-purple: #da8fff;
66
+ --macos-control-shadow:
67
+ inset 0 0.5px 0 rgb(255 255 255 / 0.18), 0 0 0 0.5px rgb(0 0 0 / 0.5), 0 0.5px 1px rgb(0 0 0 / 0.4);
68
+ --macos-menu-shadow:
69
+ inset 0 0 0 0.5px var(--macos-elevated-highlight), 0 0 0 0.5px var(--macos-elevated-edge),
70
+ 0 10px 30px rgb(0 0 0 / 0.45);
31
71
  }
32
72
 
33
73
  @theme inline {
@@ -1,25 +1,66 @@
1
+ /**
2
+ * Material 3 baseline scheme (source color #6750a4), light and dark.
3
+ */
1
4
  :where(:root), :root[data-rui-theme='material'] {
2
- --material-primary: oklch(46% 0.17 293);
3
- --material-secondary: oklch(48% 0.045 286);
4
- --material-tertiary: oklch(48% 0.11 340);
5
- --material-error: oklch(48% 0.18 25);
6
- --material-canvas: oklch(99% 0.006 285);
7
- --material-surface: oklch(98% 0.009 285);
8
- --material-surface-container: oklch(95% 0.015 285);
9
- --material-outline: oklch(53% 0.018 285);
10
- --material-outline-variant: oklch(86% 0.012 300);
11
- --material-text: oklch(18% 0.018 285);
5
+ --material-primary: #6750a4;
6
+ --material-on-primary: #ffffff;
7
+ --material-primary-container: #eaddff;
8
+ --material-on-primary-container: #4f378b;
9
+ --material-secondary: #625b71;
10
+ --material-on-secondary: #ffffff;
11
+ --material-secondary-container: #e8def8;
12
+ --material-on-secondary-container: #4a4458;
13
+ --material-tertiary: #7d5260;
14
+ --material-on-tertiary: #ffffff;
15
+ --material-tertiary-container: #ffd8e4;
16
+ --material-on-tertiary-container: #633b48;
17
+ --material-error: #b3261e;
18
+ --material-on-error: #ffffff;
19
+ --material-error-container: #f9dedc;
20
+ --material-on-error-container: #8c1d18;
21
+ --material-surface: #fef7ff;
22
+ --material-on-surface: #1d1b20;
23
+ --material-on-surface-variant: #49454f;
24
+ --material-surface-container-lowest: #ffffff;
25
+ --material-surface-container-low: #f7f2fa;
26
+ --material-surface-container: #f3edf7;
27
+ --material-surface-container-high: #ece6f0;
28
+ --material-surface-container-highest: #e6e0e9;
29
+ --material-inverse-surface: #322f35;
30
+ --material-inverse-on-surface: #f5eff7;
31
+ --material-inverse-primary: #d0bcff;
32
+ --material-outline: #79747e;
33
+ --material-outline-variant: #cac4d0;
12
34
  }
13
35
 
14
36
  :where(.dark), :root.dark[data-rui-theme='material'] {
15
- --material-primary: oklch(82% 0.11 293);
16
- --material-secondary: oklch(80% 0.04 286);
17
- --material-tertiary: oklch(82% 0.09 340);
18
- --material-error: oklch(82% 0.12 25);
19
- --material-canvas: oklch(17% 0.012 285);
20
- --material-surface: oklch(20% 0.014 285);
21
- --material-surface-container: oklch(25% 0.018 285);
22
- --material-outline: oklch(70% 0.018 285);
23
- --material-outline-variant: oklch(36% 0.012 300);
24
- --material-text: oklch(91% 0.01 285);
37
+ --material-primary: #d0bcff;
38
+ --material-on-primary: #381e72;
39
+ --material-primary-container: #4f378b;
40
+ --material-on-primary-container: #eaddff;
41
+ --material-secondary: #ccc2dc;
42
+ --material-on-secondary: #332d41;
43
+ --material-secondary-container: #4a4458;
44
+ --material-on-secondary-container: #e8def8;
45
+ --material-tertiary: #efb8c8;
46
+ --material-on-tertiary: #492532;
47
+ --material-tertiary-container: #633b48;
48
+ --material-on-tertiary-container: #ffd8e4;
49
+ --material-error: #f2b8b5;
50
+ --material-on-error: #601410;
51
+ --material-error-container: #8c1d18;
52
+ --material-on-error-container: #f9dedc;
53
+ --material-surface: #141218;
54
+ --material-on-surface: #e6e0e9;
55
+ --material-on-surface-variant: #cac4d0;
56
+ --material-surface-container-lowest: #0f0d13;
57
+ --material-surface-container-low: #1d1b20;
58
+ --material-surface-container: #211f26;
59
+ --material-surface-container-high: #2b2930;
60
+ --material-surface-container-highest: #36343b;
61
+ --material-inverse-surface: #e6e0e9;
62
+ --material-inverse-on-surface: #322f35;
63
+ --material-inverse-primary: #6750a4;
64
+ --material-outline: #938f99;
65
+ --material-outline-variant: #49454f;
25
66
  }