houseaccount 0.10.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (66) hide show
  1. package/MIT-LICENSE +22 -0
  2. package/README.md +296 -0
  3. package/app/fonts/bootstrap-icons.woff2 +0 -0
  4. package/app/javascript/houseaccount/bookmark_controller.js +97 -0
  5. package/app/javascript/houseaccount/clear_controller.js +22 -0
  6. package/app/javascript/houseaccount/combobox/menu.js +93 -0
  7. package/app/javascript/houseaccount/combobox_controller.js +82 -0
  8. package/app/javascript/houseaccount/confirm.js +89 -0
  9. package/app/javascript/houseaccount/density_controller.js +21 -0
  10. package/app/javascript/houseaccount/deselect_controller.js +37 -0
  11. package/app/javascript/houseaccount/flash.js +35 -0
  12. package/app/javascript/houseaccount/limit_controller.js +23 -0
  13. package/app/javascript/houseaccount/map/loader.js +20 -0
  14. package/app/javascript/houseaccount/map_controller.js +88 -0
  15. package/app/javascript/houseaccount/otp/slots.js +27 -0
  16. package/app/javascript/houseaccount/otp_controller.js +98 -0
  17. package/app/javascript/houseaccount/phone_controller.js +89 -0
  18. package/app/javascript/houseaccount/placeholder_controller.js +28 -0
  19. package/app/javascript/houseaccount/relative_time_controller.js +45 -0
  20. package/app/javascript/houseaccount/require_controller.js +18 -0
  21. package/app/javascript/houseaccount/reveal_controller.js +16 -0
  22. package/app/javascript/houseaccount/scheme_controller.js +99 -0
  23. package/app/javascript/houseaccount/search_controller.js +78 -0
  24. package/app/javascript/houseaccount/shortcuts_controller.js +42 -0
  25. package/app/javascript/houseaccount/thread_controller.js +40 -0
  26. package/app/javascript/houseaccount/timezone_controller.js +27 -0
  27. package/app/javascript/houseaccount/toast_controller.js +35 -0
  28. package/app/javascript/houseaccount/tooltip_controller.js +23 -0
  29. package/app/javascript/houseaccount/wall/marks.js +8 -0
  30. package/app/javascript/houseaccount/wall/tools.json +75 -0
  31. package/app/javascript/houseaccount/wall_controller.js +93 -0
  32. package/app/javascript/houseaccount/written.js +20 -0
  33. package/app/javascript/houseaccount/written_controller.js +28 -0
  34. package/app/javascript/houseaccount.js +60 -0
  35. package/app/stylesheets/houseaccount/base.css +33 -0
  36. package/app/stylesheets/houseaccount/chat.css +73 -0
  37. package/app/stylesheets/houseaccount/flow.css +47 -0
  38. package/app/stylesheets/houseaccount/icons.css +186 -0
  39. package/app/stylesheets/houseaccount/lockup.css +58 -0
  40. package/app/stylesheets/houseaccount/map.css +3 -0
  41. package/app/stylesheets/houseaccount/pin.css +34 -0
  42. package/app/stylesheets/houseaccount/search.css +60 -0
  43. package/app/stylesheets/houseaccount/shell.css +197 -0
  44. package/app/stylesheets/houseaccount/table.css +105 -0
  45. package/app/stylesheets/houseaccount/values.css +41 -0
  46. package/app/stylesheets/houseaccount/wall.css +123 -0
  47. package/app/stylesheets/houseaccount.css +16 -0
  48. package/app/stylesheets/theme/bootstrap.css +11 -0
  49. package/app/stylesheets/theme/dawn.css +189 -0
  50. package/app/stylesheets/theme/dracula.css +189 -0
  51. package/app/stylesheets/theme/gruvbox.css +189 -0
  52. package/app/stylesheets/theme/monokai.css +190 -0
  53. package/app/stylesheets/theme/nord.css +189 -0
  54. package/app/stylesheets/theme/one_dark.css +189 -0
  55. package/app/stylesheets/theme/solarized.css +188 -0
  56. package/app/stylesheets/theme/tokyo_night.css +189 -0
  57. package/package.json +33 -0
  58. package/vendor/bootstrap-icons.min.css +5 -0
  59. package/vendor/bootstrap.bundle.min.js +9 -0
  60. package/vendor/bootstrap.min.css +2 -0
  61. package/vendor/fonts/OFL-quicksand.txt +93 -0
  62. package/vendor/fonts/bootstrap-icons.woff +0 -0
  63. package/vendor/fonts/bootstrap-icons.woff2 +0 -0
  64. package/vendor/fonts/quicksand-500-latin-ext.woff2 +0 -0
  65. package/vendor/fonts/quicksand-500-latin.woff2 +0 -0
  66. package/vendor/fonts/quicksand-500-vietnamese.woff2 +0 -0
@@ -0,0 +1,189 @@
1
+ /* Rose Pine Dawn, Rose Pine — https://rosepinetheme.com/palette/
2
+ Dawn is the light page and Rose Pine's own base the dark one. pine
3
+ serves blue, foam cyan, rose pink, love red, iris purple, gold yellow,
4
+ orange and brown. green is derived: Rose Pine carries none.
5
+
6
+ Bootstrap builds a family by mixing one base toward `--bs-white` below
7
+ the 500 step and toward `--bs-black` above it, and inlines that base
8
+ into all thirteen — so a palette restates the thirteen rather than the
9
+ one. Upstream's order and upstream's shapes with only the base swapped,
10
+ so a later Bootstrap diffs against this file. */
11
+ :root {
12
+ /* The page, and the two colors every ramp below is mixed with.
13
+ `--bs-bg-body` reads `--bs-white` in light mode and `--bs-gray-975` in
14
+ dark, so repainting these two is what moves the page itself. */
15
+ --bs-white: #faf4ed;
16
+ --bs-black: #191724;
17
+
18
+ /* The neutrals, which every surface, border and text token Bootstrap ships
19
+ derives from. */
20
+ --bs-gray-025: color-mix(in lab, var(--bs-white) 94%, #9893a5);
21
+ --bs-gray-050: color-mix(in lab, var(--bs-white) 90%, #9893a5);
22
+ --bs-gray-100: color-mix(in lab, var(--bs-white) 80%, #9893a5);
23
+ --bs-gray-200: color-mix(in lab, var(--bs-white) 60%, #9893a5);
24
+ --bs-gray-300: color-mix(in lab, var(--bs-white) 40%, #9893a5);
25
+ --bs-gray-400: color-mix(in lab, var(--bs-white) 20%, #9893a5);
26
+ --bs-gray-500: #9893a5;
27
+ --bs-gray-600: color-mix(in lab, var(--bs-black) 16%, #9893a5);
28
+ --bs-gray-700: color-mix(in lab, var(--bs-black) 32%, #9893a5);
29
+ --bs-gray-800: color-mix(in lab, var(--bs-black) 48%, #9893a5);
30
+ --bs-gray-900: color-mix(in lab, var(--bs-black) 64%, #9893a5);
31
+ --bs-gray-950: color-mix(in lab, var(--bs-black) 76%, #9893a5);
32
+ --bs-gray-975: color-mix(in lab, var(--bs-black) 88%, #9893a5);
33
+
34
+ --bs-blue-025: color-mix(in lab, var(--bs-white) 94%, #286983);
35
+ --bs-blue-050: color-mix(in lab, var(--bs-white) 90%, #286983);
36
+ --bs-blue-100: color-mix(in lab, var(--bs-white) 80%, #286983);
37
+ --bs-blue-200: color-mix(in lab, var(--bs-white) 60%, #286983);
38
+ --bs-blue-300: color-mix(in lab, var(--bs-white) 40%, #286983);
39
+ --bs-blue-400: color-mix(in lab, var(--bs-white) 20%, #286983);
40
+ --bs-blue-500: #286983;
41
+ --bs-blue-600: color-mix(in lab, var(--bs-black) 16%, #286983);
42
+ --bs-blue-700: color-mix(in lab, var(--bs-black) 32%, #286983);
43
+ --bs-blue-800: color-mix(in lab, var(--bs-black) 48%, #286983);
44
+ --bs-blue-900: color-mix(in lab, var(--bs-black) 64%, #286983);
45
+ --bs-blue-950: color-mix(in lab, var(--bs-black) 76%, #286983);
46
+ --bs-blue-975: color-mix(in lab, var(--bs-black) 88%, #286983);
47
+
48
+ --bs-brown-025: color-mix(in lab, var(--bs-white) 94%, #ea9d34);
49
+ --bs-brown-050: color-mix(in lab, var(--bs-white) 90%, #ea9d34);
50
+ --bs-brown-100: color-mix(in lab, var(--bs-white) 80%, #ea9d34);
51
+ --bs-brown-200: color-mix(in lab, var(--bs-white) 60%, #ea9d34);
52
+ --bs-brown-300: color-mix(in lab, var(--bs-white) 40%, #ea9d34);
53
+ --bs-brown-400: color-mix(in lab, var(--bs-white) 20%, #ea9d34);
54
+ --bs-brown-500: #ea9d34;
55
+ --bs-brown-600: color-mix(in lab, var(--bs-black) 16%, #ea9d34);
56
+ --bs-brown-700: color-mix(in lab, var(--bs-black) 32%, #ea9d34);
57
+ --bs-brown-800: color-mix(in lab, var(--bs-black) 48%, #ea9d34);
58
+ --bs-brown-900: color-mix(in lab, var(--bs-black) 64%, #ea9d34);
59
+ --bs-brown-950: color-mix(in lab, var(--bs-black) 76%, #ea9d34);
60
+ --bs-brown-975: color-mix(in lab, var(--bs-black) 88%, #ea9d34);
61
+
62
+ --bs-cyan-025: color-mix(in lab, var(--bs-white) 94%, #56949f);
63
+ --bs-cyan-050: color-mix(in lab, var(--bs-white) 90%, #56949f);
64
+ --bs-cyan-100: color-mix(in lab, var(--bs-white) 80%, #56949f);
65
+ --bs-cyan-200: color-mix(in lab, var(--bs-white) 60%, #56949f);
66
+ --bs-cyan-300: color-mix(in lab, var(--bs-white) 40%, #56949f);
67
+ --bs-cyan-400: color-mix(in lab, var(--bs-white) 20%, #56949f);
68
+ --bs-cyan-500: #56949f;
69
+ --bs-cyan-600: color-mix(in lab, var(--bs-black) 16%, #56949f);
70
+ --bs-cyan-700: color-mix(in lab, var(--bs-black) 32%, #56949f);
71
+ --bs-cyan-800: color-mix(in lab, var(--bs-black) 48%, #56949f);
72
+ --bs-cyan-900: color-mix(in lab, var(--bs-black) 64%, #56949f);
73
+ --bs-cyan-950: color-mix(in lab, var(--bs-black) 76%, #56949f);
74
+ --bs-cyan-975: color-mix(in lab, var(--bs-black) 88%, #56949f);
75
+
76
+ --bs-green-025: color-mix(in lab, var(--bs-white) 94%, #4f8a63);
77
+ --bs-green-050: color-mix(in lab, var(--bs-white) 90%, #4f8a63);
78
+ --bs-green-100: color-mix(in lab, var(--bs-white) 80%, #4f8a63);
79
+ --bs-green-200: color-mix(in lab, var(--bs-white) 60%, #4f8a63);
80
+ --bs-green-300: color-mix(in lab, var(--bs-white) 40%, #4f8a63);
81
+ --bs-green-400: color-mix(in lab, var(--bs-white) 20%, #4f8a63);
82
+ --bs-green-500: #4f8a63;
83
+ --bs-green-600: color-mix(in lab, var(--bs-black) 16%, #4f8a63);
84
+ --bs-green-700: color-mix(in lab, var(--bs-black) 32%, #4f8a63);
85
+ --bs-green-800: color-mix(in lab, var(--bs-black) 48%, #4f8a63);
86
+ --bs-green-900: color-mix(in lab, var(--bs-black) 64%, #4f8a63);
87
+ --bs-green-950: color-mix(in lab, var(--bs-black) 76%, #4f8a63);
88
+ --bs-green-975: color-mix(in lab, var(--bs-black) 88%, #4f8a63);
89
+
90
+ --bs-orange-025: color-mix(in lab, var(--bs-white) 94%, #ea9d34);
91
+ --bs-orange-050: color-mix(in lab, var(--bs-white) 90%, #ea9d34);
92
+ --bs-orange-100: color-mix(in lab, var(--bs-white) 80%, #ea9d34);
93
+ --bs-orange-200: color-mix(in lab, var(--bs-white) 60%, #ea9d34);
94
+ --bs-orange-300: color-mix(in lab, var(--bs-white) 40%, #ea9d34);
95
+ --bs-orange-400: color-mix(in lab, var(--bs-white) 20%, #ea9d34);
96
+ --bs-orange-500: #ea9d34;
97
+ --bs-orange-600: color-mix(in lab, var(--bs-black) 16%, #ea9d34);
98
+ --bs-orange-700: color-mix(in lab, var(--bs-black) 32%, #ea9d34);
99
+ --bs-orange-800: color-mix(in lab, var(--bs-black) 48%, #ea9d34);
100
+ --bs-orange-900: color-mix(in lab, var(--bs-black) 64%, #ea9d34);
101
+ --bs-orange-950: color-mix(in lab, var(--bs-black) 76%, #ea9d34);
102
+ --bs-orange-975: color-mix(in lab, var(--bs-black) 88%, #ea9d34);
103
+
104
+ --bs-pink-025: color-mix(in lab, var(--bs-white) 94%, #d7827e);
105
+ --bs-pink-050: color-mix(in lab, var(--bs-white) 90%, #d7827e);
106
+ --bs-pink-100: color-mix(in lab, var(--bs-white) 80%, #d7827e);
107
+ --bs-pink-200: color-mix(in lab, var(--bs-white) 60%, #d7827e);
108
+ --bs-pink-300: color-mix(in lab, var(--bs-white) 40%, #d7827e);
109
+ --bs-pink-400: color-mix(in lab, var(--bs-white) 20%, #d7827e);
110
+ --bs-pink-500: #d7827e;
111
+ --bs-pink-600: color-mix(in lab, var(--bs-black) 16%, #d7827e);
112
+ --bs-pink-700: color-mix(in lab, var(--bs-black) 32%, #d7827e);
113
+ --bs-pink-800: color-mix(in lab, var(--bs-black) 48%, #d7827e);
114
+ --bs-pink-900: color-mix(in lab, var(--bs-black) 64%, #d7827e);
115
+ --bs-pink-950: color-mix(in lab, var(--bs-black) 76%, #d7827e);
116
+ --bs-pink-975: color-mix(in lab, var(--bs-black) 88%, #d7827e);
117
+
118
+ --bs-purple-025: color-mix(in lab, var(--bs-white) 94%, #907aa9);
119
+ --bs-purple-050: color-mix(in lab, var(--bs-white) 90%, #907aa9);
120
+ --bs-purple-100: color-mix(in lab, var(--bs-white) 80%, #907aa9);
121
+ --bs-purple-200: color-mix(in lab, var(--bs-white) 60%, #907aa9);
122
+ --bs-purple-300: color-mix(in lab, var(--bs-white) 40%, #907aa9);
123
+ --bs-purple-400: color-mix(in lab, var(--bs-white) 20%, #907aa9);
124
+ --bs-purple-500: #907aa9;
125
+ --bs-purple-600: color-mix(in lab, var(--bs-black) 16%, #907aa9);
126
+ --bs-purple-700: color-mix(in lab, var(--bs-black) 32%, #907aa9);
127
+ --bs-purple-800: color-mix(in lab, var(--bs-black) 48%, #907aa9);
128
+ --bs-purple-900: color-mix(in lab, var(--bs-black) 64%, #907aa9);
129
+ --bs-purple-950: color-mix(in lab, var(--bs-black) 76%, #907aa9);
130
+ --bs-purple-975: color-mix(in lab, var(--bs-black) 88%, #907aa9);
131
+
132
+ --bs-red-025: color-mix(in lab, var(--bs-white) 94%, #b4637a);
133
+ --bs-red-050: color-mix(in lab, var(--bs-white) 90%, #b4637a);
134
+ --bs-red-100: color-mix(in lab, var(--bs-white) 80%, #b4637a);
135
+ --bs-red-200: color-mix(in lab, var(--bs-white) 60%, #b4637a);
136
+ --bs-red-300: color-mix(in lab, var(--bs-white) 40%, #b4637a);
137
+ --bs-red-400: color-mix(in lab, var(--bs-white) 20%, #b4637a);
138
+ --bs-red-500: #b4637a;
139
+ --bs-red-600: color-mix(in lab, var(--bs-black) 16%, #b4637a);
140
+ --bs-red-700: color-mix(in lab, var(--bs-black) 32%, #b4637a);
141
+ --bs-red-800: color-mix(in lab, var(--bs-black) 48%, #b4637a);
142
+ --bs-red-900: color-mix(in lab, var(--bs-black) 64%, #b4637a);
143
+ --bs-red-950: color-mix(in lab, var(--bs-black) 76%, #b4637a);
144
+ --bs-red-975: color-mix(in lab, var(--bs-black) 88%, #b4637a);
145
+
146
+ --bs-yellow-025: color-mix(in lab, var(--bs-white) 94%, #ea9d34);
147
+ --bs-yellow-050: color-mix(in lab, var(--bs-white) 90%, #ea9d34);
148
+ --bs-yellow-100: color-mix(in lab, var(--bs-white) 80%, #ea9d34);
149
+ --bs-yellow-200: color-mix(in lab, var(--bs-white) 60%, #ea9d34);
150
+ --bs-yellow-300: color-mix(in lab, var(--bs-white) 40%, #ea9d34);
151
+ --bs-yellow-400: color-mix(in lab, var(--bs-white) 20%, #ea9d34);
152
+ --bs-yellow-500: #ea9d34;
153
+ --bs-yellow-600: color-mix(in lab, var(--bs-black) 16%, #ea9d34);
154
+ --bs-yellow-700: color-mix(in lab, var(--bs-black) 32%, #ea9d34);
155
+ --bs-yellow-800: color-mix(in lab, var(--bs-black) 48%, #ea9d34);
156
+ --bs-yellow-900: color-mix(in lab, var(--bs-black) 64%, #ea9d34);
157
+ --bs-yellow-950: color-mix(in lab, var(--bs-black) 76%, #ea9d34);
158
+ --bs-yellow-975: color-mix(in lab, var(--bs-black) 88%, #ea9d34);
159
+
160
+ /* Text, stated rather than left to the ramp. Bootstrap pairs a low step as
161
+ a light surface with that same step as dark-mode text, which a palette
162
+ built for its own contrast does not agree with. */
163
+ --bs-fg-1: light-dark(#575279, #e0def4);
164
+ --bs-fg-body: light-dark(#575279, #c8c3dd);
165
+ --bs-fg-2: light-dark(#797593, #908caa);
166
+
167
+ /* The label a solid fill carries, for the four families Bootstrap has
168
+ spent on a meaning and this palette has repainted. Upstream's own shape:
169
+ it gives warning and info a dark label for the same reason. */
170
+ --bs-danger-contrast: var(--bs-white);
171
+ --bs-success-contrast: var(--bs-white);
172
+ --bs-warning-contrast: var(--bs-gray-975);
173
+ --bs-info-contrast: var(--bs-gray-975);
174
+
175
+ /* The accent this palette leads with, as the primary color: the same nine
176
+ `_color.html.erb` writes, from blue and the label that reads on it. Here
177
+ rather than only in the page because a reader may swap this file for
178
+ another one, and the primary has to travel with it. A host naming its
179
+ own color still wins, its block coming after this file. */
180
+ --bs-primary-base: var(--bs-blue-500);
181
+ --bs-primary-fg: light-dark(var(--bs-blue-600), var(--bs-blue-400));
182
+ --bs-primary-fg-emphasis: light-dark(var(--bs-blue-800), var(--bs-blue-200));
183
+ --bs-primary-bg: var(--bs-blue-500);
184
+ --bs-primary-bg-subtle: light-dark(var(--bs-blue-100), var(--bs-blue-900));
185
+ --bs-primary-bg-muted: light-dark(var(--bs-blue-200), var(--bs-blue-800));
186
+ --bs-primary-border: light-dark(var(--bs-blue-300), var(--bs-blue-600));
187
+ --bs-primary-focus-ring: light-dark(color-mix(in oklch, var(--bs-blue-500) 50%, var(--bs-bg-body)), color-mix(in oklch, var(--bs-blue-500) 75%, var(--bs-bg-body)));
188
+ --bs-primary-contrast: var(--bs-white);
189
+ }
@@ -0,0 +1,189 @@
1
+ /* Dracula, Zeno Rocha — https://draculatheme.com/
2
+ Dracula's own foreground is the light page and its background the dark
3
+ one. its cyan serves blue and cyan, its orange serves brown. Dracula
4
+ leads with purple: it publishes no blue.
5
+
6
+ Bootstrap builds a family by mixing one base toward `--bs-white` below
7
+ the 500 step and toward `--bs-black` above it, and inlines that base
8
+ into all thirteen — so a palette restates the thirteen rather than the
9
+ one. Upstream's order and upstream's shapes with only the base swapped,
10
+ so a later Bootstrap diffs against this file. */
11
+ :root {
12
+ /* The page, and the two colors every ramp below is mixed with.
13
+ `--bs-bg-body` reads `--bs-white` in light mode and `--bs-gray-975` in
14
+ dark, so repainting these two is what moves the page itself. */
15
+ --bs-white: #f8f8f2;
16
+ --bs-black: #282a36;
17
+
18
+ /* The neutrals, which every surface, border and text token Bootstrap ships
19
+ derives from. */
20
+ --bs-gray-025: color-mix(in lab, var(--bs-white) 94%, #6272a4);
21
+ --bs-gray-050: color-mix(in lab, var(--bs-white) 90%, #6272a4);
22
+ --bs-gray-100: color-mix(in lab, var(--bs-white) 80%, #6272a4);
23
+ --bs-gray-200: color-mix(in lab, var(--bs-white) 60%, #6272a4);
24
+ --bs-gray-300: color-mix(in lab, var(--bs-white) 40%, #6272a4);
25
+ --bs-gray-400: color-mix(in lab, var(--bs-white) 20%, #6272a4);
26
+ --bs-gray-500: #6272a4;
27
+ --bs-gray-600: color-mix(in lab, var(--bs-black) 16%, #6272a4);
28
+ --bs-gray-700: color-mix(in lab, var(--bs-black) 32%, #6272a4);
29
+ --bs-gray-800: color-mix(in lab, var(--bs-black) 48%, #6272a4);
30
+ --bs-gray-900: color-mix(in lab, var(--bs-black) 64%, #6272a4);
31
+ --bs-gray-950: color-mix(in lab, var(--bs-black) 76%, #6272a4);
32
+ --bs-gray-975: color-mix(in lab, var(--bs-black) 88%, #6272a4);
33
+
34
+ --bs-blue-025: color-mix(in lab, var(--bs-white) 94%, #8be9fd);
35
+ --bs-blue-050: color-mix(in lab, var(--bs-white) 90%, #8be9fd);
36
+ --bs-blue-100: color-mix(in lab, var(--bs-white) 80%, #8be9fd);
37
+ --bs-blue-200: color-mix(in lab, var(--bs-white) 60%, #8be9fd);
38
+ --bs-blue-300: color-mix(in lab, var(--bs-white) 40%, #8be9fd);
39
+ --bs-blue-400: color-mix(in lab, var(--bs-white) 20%, #8be9fd);
40
+ --bs-blue-500: #8be9fd;
41
+ --bs-blue-600: color-mix(in lab, var(--bs-black) 16%, #8be9fd);
42
+ --bs-blue-700: color-mix(in lab, var(--bs-black) 32%, #8be9fd);
43
+ --bs-blue-800: color-mix(in lab, var(--bs-black) 48%, #8be9fd);
44
+ --bs-blue-900: color-mix(in lab, var(--bs-black) 64%, #8be9fd);
45
+ --bs-blue-950: color-mix(in lab, var(--bs-black) 76%, #8be9fd);
46
+ --bs-blue-975: color-mix(in lab, var(--bs-black) 88%, #8be9fd);
47
+
48
+ --bs-brown-025: color-mix(in lab, var(--bs-white) 94%, #ffb86c);
49
+ --bs-brown-050: color-mix(in lab, var(--bs-white) 90%, #ffb86c);
50
+ --bs-brown-100: color-mix(in lab, var(--bs-white) 80%, #ffb86c);
51
+ --bs-brown-200: color-mix(in lab, var(--bs-white) 60%, #ffb86c);
52
+ --bs-brown-300: color-mix(in lab, var(--bs-white) 40%, #ffb86c);
53
+ --bs-brown-400: color-mix(in lab, var(--bs-white) 20%, #ffb86c);
54
+ --bs-brown-500: #ffb86c;
55
+ --bs-brown-600: color-mix(in lab, var(--bs-black) 16%, #ffb86c);
56
+ --bs-brown-700: color-mix(in lab, var(--bs-black) 32%, #ffb86c);
57
+ --bs-brown-800: color-mix(in lab, var(--bs-black) 48%, #ffb86c);
58
+ --bs-brown-900: color-mix(in lab, var(--bs-black) 64%, #ffb86c);
59
+ --bs-brown-950: color-mix(in lab, var(--bs-black) 76%, #ffb86c);
60
+ --bs-brown-975: color-mix(in lab, var(--bs-black) 88%, #ffb86c);
61
+
62
+ --bs-cyan-025: color-mix(in lab, var(--bs-white) 94%, #8be9fd);
63
+ --bs-cyan-050: color-mix(in lab, var(--bs-white) 90%, #8be9fd);
64
+ --bs-cyan-100: color-mix(in lab, var(--bs-white) 80%, #8be9fd);
65
+ --bs-cyan-200: color-mix(in lab, var(--bs-white) 60%, #8be9fd);
66
+ --bs-cyan-300: color-mix(in lab, var(--bs-white) 40%, #8be9fd);
67
+ --bs-cyan-400: color-mix(in lab, var(--bs-white) 20%, #8be9fd);
68
+ --bs-cyan-500: #8be9fd;
69
+ --bs-cyan-600: color-mix(in lab, var(--bs-black) 16%, #8be9fd);
70
+ --bs-cyan-700: color-mix(in lab, var(--bs-black) 32%, #8be9fd);
71
+ --bs-cyan-800: color-mix(in lab, var(--bs-black) 48%, #8be9fd);
72
+ --bs-cyan-900: color-mix(in lab, var(--bs-black) 64%, #8be9fd);
73
+ --bs-cyan-950: color-mix(in lab, var(--bs-black) 76%, #8be9fd);
74
+ --bs-cyan-975: color-mix(in lab, var(--bs-black) 88%, #8be9fd);
75
+
76
+ --bs-green-025: color-mix(in lab, var(--bs-white) 94%, #50fa7b);
77
+ --bs-green-050: color-mix(in lab, var(--bs-white) 90%, #50fa7b);
78
+ --bs-green-100: color-mix(in lab, var(--bs-white) 80%, #50fa7b);
79
+ --bs-green-200: color-mix(in lab, var(--bs-white) 60%, #50fa7b);
80
+ --bs-green-300: color-mix(in lab, var(--bs-white) 40%, #50fa7b);
81
+ --bs-green-400: color-mix(in lab, var(--bs-white) 20%, #50fa7b);
82
+ --bs-green-500: #50fa7b;
83
+ --bs-green-600: color-mix(in lab, var(--bs-black) 16%, #50fa7b);
84
+ --bs-green-700: color-mix(in lab, var(--bs-black) 32%, #50fa7b);
85
+ --bs-green-800: color-mix(in lab, var(--bs-black) 48%, #50fa7b);
86
+ --bs-green-900: color-mix(in lab, var(--bs-black) 64%, #50fa7b);
87
+ --bs-green-950: color-mix(in lab, var(--bs-black) 76%, #50fa7b);
88
+ --bs-green-975: color-mix(in lab, var(--bs-black) 88%, #50fa7b);
89
+
90
+ --bs-orange-025: color-mix(in lab, var(--bs-white) 94%, #ffb86c);
91
+ --bs-orange-050: color-mix(in lab, var(--bs-white) 90%, #ffb86c);
92
+ --bs-orange-100: color-mix(in lab, var(--bs-white) 80%, #ffb86c);
93
+ --bs-orange-200: color-mix(in lab, var(--bs-white) 60%, #ffb86c);
94
+ --bs-orange-300: color-mix(in lab, var(--bs-white) 40%, #ffb86c);
95
+ --bs-orange-400: color-mix(in lab, var(--bs-white) 20%, #ffb86c);
96
+ --bs-orange-500: #ffb86c;
97
+ --bs-orange-600: color-mix(in lab, var(--bs-black) 16%, #ffb86c);
98
+ --bs-orange-700: color-mix(in lab, var(--bs-black) 32%, #ffb86c);
99
+ --bs-orange-800: color-mix(in lab, var(--bs-black) 48%, #ffb86c);
100
+ --bs-orange-900: color-mix(in lab, var(--bs-black) 64%, #ffb86c);
101
+ --bs-orange-950: color-mix(in lab, var(--bs-black) 76%, #ffb86c);
102
+ --bs-orange-975: color-mix(in lab, var(--bs-black) 88%, #ffb86c);
103
+
104
+ --bs-pink-025: color-mix(in lab, var(--bs-white) 94%, #ff79c6);
105
+ --bs-pink-050: color-mix(in lab, var(--bs-white) 90%, #ff79c6);
106
+ --bs-pink-100: color-mix(in lab, var(--bs-white) 80%, #ff79c6);
107
+ --bs-pink-200: color-mix(in lab, var(--bs-white) 60%, #ff79c6);
108
+ --bs-pink-300: color-mix(in lab, var(--bs-white) 40%, #ff79c6);
109
+ --bs-pink-400: color-mix(in lab, var(--bs-white) 20%, #ff79c6);
110
+ --bs-pink-500: #ff79c6;
111
+ --bs-pink-600: color-mix(in lab, var(--bs-black) 16%, #ff79c6);
112
+ --bs-pink-700: color-mix(in lab, var(--bs-black) 32%, #ff79c6);
113
+ --bs-pink-800: color-mix(in lab, var(--bs-black) 48%, #ff79c6);
114
+ --bs-pink-900: color-mix(in lab, var(--bs-black) 64%, #ff79c6);
115
+ --bs-pink-950: color-mix(in lab, var(--bs-black) 76%, #ff79c6);
116
+ --bs-pink-975: color-mix(in lab, var(--bs-black) 88%, #ff79c6);
117
+
118
+ --bs-purple-025: color-mix(in lab, var(--bs-white) 94%, #bd93f9);
119
+ --bs-purple-050: color-mix(in lab, var(--bs-white) 90%, #bd93f9);
120
+ --bs-purple-100: color-mix(in lab, var(--bs-white) 80%, #bd93f9);
121
+ --bs-purple-200: color-mix(in lab, var(--bs-white) 60%, #bd93f9);
122
+ --bs-purple-300: color-mix(in lab, var(--bs-white) 40%, #bd93f9);
123
+ --bs-purple-400: color-mix(in lab, var(--bs-white) 20%, #bd93f9);
124
+ --bs-purple-500: #bd93f9;
125
+ --bs-purple-600: color-mix(in lab, var(--bs-black) 16%, #bd93f9);
126
+ --bs-purple-700: color-mix(in lab, var(--bs-black) 32%, #bd93f9);
127
+ --bs-purple-800: color-mix(in lab, var(--bs-black) 48%, #bd93f9);
128
+ --bs-purple-900: color-mix(in lab, var(--bs-black) 64%, #bd93f9);
129
+ --bs-purple-950: color-mix(in lab, var(--bs-black) 76%, #bd93f9);
130
+ --bs-purple-975: color-mix(in lab, var(--bs-black) 88%, #bd93f9);
131
+
132
+ --bs-red-025: color-mix(in lab, var(--bs-white) 94%, #ff5555);
133
+ --bs-red-050: color-mix(in lab, var(--bs-white) 90%, #ff5555);
134
+ --bs-red-100: color-mix(in lab, var(--bs-white) 80%, #ff5555);
135
+ --bs-red-200: color-mix(in lab, var(--bs-white) 60%, #ff5555);
136
+ --bs-red-300: color-mix(in lab, var(--bs-white) 40%, #ff5555);
137
+ --bs-red-400: color-mix(in lab, var(--bs-white) 20%, #ff5555);
138
+ --bs-red-500: #ff5555;
139
+ --bs-red-600: color-mix(in lab, var(--bs-black) 16%, #ff5555);
140
+ --bs-red-700: color-mix(in lab, var(--bs-black) 32%, #ff5555);
141
+ --bs-red-800: color-mix(in lab, var(--bs-black) 48%, #ff5555);
142
+ --bs-red-900: color-mix(in lab, var(--bs-black) 64%, #ff5555);
143
+ --bs-red-950: color-mix(in lab, var(--bs-black) 76%, #ff5555);
144
+ --bs-red-975: color-mix(in lab, var(--bs-black) 88%, #ff5555);
145
+
146
+ --bs-yellow-025: color-mix(in lab, var(--bs-white) 94%, #f1fa8c);
147
+ --bs-yellow-050: color-mix(in lab, var(--bs-white) 90%, #f1fa8c);
148
+ --bs-yellow-100: color-mix(in lab, var(--bs-white) 80%, #f1fa8c);
149
+ --bs-yellow-200: color-mix(in lab, var(--bs-white) 60%, #f1fa8c);
150
+ --bs-yellow-300: color-mix(in lab, var(--bs-white) 40%, #f1fa8c);
151
+ --bs-yellow-400: color-mix(in lab, var(--bs-white) 20%, #f1fa8c);
152
+ --bs-yellow-500: #f1fa8c;
153
+ --bs-yellow-600: color-mix(in lab, var(--bs-black) 16%, #f1fa8c);
154
+ --bs-yellow-700: color-mix(in lab, var(--bs-black) 32%, #f1fa8c);
155
+ --bs-yellow-800: color-mix(in lab, var(--bs-black) 48%, #f1fa8c);
156
+ --bs-yellow-900: color-mix(in lab, var(--bs-black) 64%, #f1fa8c);
157
+ --bs-yellow-950: color-mix(in lab, var(--bs-black) 76%, #f1fa8c);
158
+ --bs-yellow-975: color-mix(in lab, var(--bs-black) 88%, #f1fa8c);
159
+
160
+ /* Text, stated rather than left to the ramp. Bootstrap pairs a low step as
161
+ a light surface with that same step as dark-mode text, which a palette
162
+ built for its own contrast does not agree with. */
163
+ --bs-fg-1: light-dark(#282a36, #ffffff);
164
+ --bs-fg-body: light-dark(#21222c, #f8f8f2);
165
+ --bs-fg-2: light-dark(#4a5480, #bcc2de);
166
+
167
+ /* The label a solid fill carries, for the four families Bootstrap has
168
+ spent on a meaning and this palette has repainted. Upstream's own shape:
169
+ it gives warning and info a dark label for the same reason. */
170
+ --bs-danger-contrast: var(--bs-gray-975);
171
+ --bs-success-contrast: var(--bs-gray-975);
172
+ --bs-warning-contrast: var(--bs-gray-975);
173
+ --bs-info-contrast: var(--bs-gray-975);
174
+
175
+ /* The accent this palette leads with, as the primary color: the same nine
176
+ `_color.html.erb` writes, from purple and the label that reads on it.
177
+ Here rather than only in the page because a reader may swap this file
178
+ for another one, and the primary has to travel with it. A host naming
179
+ its own color still wins, its block coming after this file. */
180
+ --bs-primary-base: var(--bs-purple-500);
181
+ --bs-primary-fg: light-dark(var(--bs-purple-600), var(--bs-purple-400));
182
+ --bs-primary-fg-emphasis: light-dark(var(--bs-purple-800), var(--bs-purple-200));
183
+ --bs-primary-bg: var(--bs-purple-500);
184
+ --bs-primary-bg-subtle: light-dark(var(--bs-purple-100), var(--bs-purple-900));
185
+ --bs-primary-bg-muted: light-dark(var(--bs-purple-200), var(--bs-purple-800));
186
+ --bs-primary-border: light-dark(var(--bs-purple-300), var(--bs-purple-600));
187
+ --bs-primary-focus-ring: light-dark(color-mix(in oklch, var(--bs-purple-500) 50%, var(--bs-bg-body)), color-mix(in oklch, var(--bs-purple-500) 75%, var(--bs-bg-body)));
188
+ --bs-primary-contrast: var(--bs-gray-975);
189
+ }
@@ -0,0 +1,189 @@
1
+ /* Gruvbox, Pavel Pertsev — https://github.com/morhetz/gruvbox
2
+ light0 is the light page and dark0 the dark one; the neutral accents
3
+ are the set that reads on both. neutral_purple serves purple and pink,
4
+ neutral_aqua cyan, neutral_orange orange and brown.
5
+
6
+ Bootstrap builds a family by mixing one base toward `--bs-white` below
7
+ the 500 step and toward `--bs-black` above it, and inlines that base
8
+ into all thirteen — so a palette restates the thirteen rather than the
9
+ one. Upstream's order and upstream's shapes with only the base swapped,
10
+ so a later Bootstrap diffs against this file. */
11
+ :root {
12
+ /* The page, and the two colors every ramp below is mixed with.
13
+ `--bs-bg-body` reads `--bs-white` in light mode and `--bs-gray-975` in
14
+ dark, so repainting these two is what moves the page itself. */
15
+ --bs-white: #fbf1c7;
16
+ --bs-black: #282828;
17
+
18
+ /* The neutrals, which every surface, border and text token Bootstrap ships
19
+ derives from. */
20
+ --bs-gray-025: color-mix(in lab, var(--bs-white) 94%, #928374);
21
+ --bs-gray-050: color-mix(in lab, var(--bs-white) 90%, #928374);
22
+ --bs-gray-100: color-mix(in lab, var(--bs-white) 80%, #928374);
23
+ --bs-gray-200: color-mix(in lab, var(--bs-white) 60%, #928374);
24
+ --bs-gray-300: color-mix(in lab, var(--bs-white) 40%, #928374);
25
+ --bs-gray-400: color-mix(in lab, var(--bs-white) 20%, #928374);
26
+ --bs-gray-500: #928374;
27
+ --bs-gray-600: color-mix(in lab, var(--bs-black) 16%, #928374);
28
+ --bs-gray-700: color-mix(in lab, var(--bs-black) 32%, #928374);
29
+ --bs-gray-800: color-mix(in lab, var(--bs-black) 48%, #928374);
30
+ --bs-gray-900: color-mix(in lab, var(--bs-black) 64%, #928374);
31
+ --bs-gray-950: color-mix(in lab, var(--bs-black) 76%, #928374);
32
+ --bs-gray-975: color-mix(in lab, var(--bs-black) 88%, #928374);
33
+
34
+ --bs-blue-025: color-mix(in lab, var(--bs-white) 94%, #458588);
35
+ --bs-blue-050: color-mix(in lab, var(--bs-white) 90%, #458588);
36
+ --bs-blue-100: color-mix(in lab, var(--bs-white) 80%, #458588);
37
+ --bs-blue-200: color-mix(in lab, var(--bs-white) 60%, #458588);
38
+ --bs-blue-300: color-mix(in lab, var(--bs-white) 40%, #458588);
39
+ --bs-blue-400: color-mix(in lab, var(--bs-white) 20%, #458588);
40
+ --bs-blue-500: #458588;
41
+ --bs-blue-600: color-mix(in lab, var(--bs-black) 16%, #458588);
42
+ --bs-blue-700: color-mix(in lab, var(--bs-black) 32%, #458588);
43
+ --bs-blue-800: color-mix(in lab, var(--bs-black) 48%, #458588);
44
+ --bs-blue-900: color-mix(in lab, var(--bs-black) 64%, #458588);
45
+ --bs-blue-950: color-mix(in lab, var(--bs-black) 76%, #458588);
46
+ --bs-blue-975: color-mix(in lab, var(--bs-black) 88%, #458588);
47
+
48
+ --bs-brown-025: color-mix(in lab, var(--bs-white) 94%, #d65d0e);
49
+ --bs-brown-050: color-mix(in lab, var(--bs-white) 90%, #d65d0e);
50
+ --bs-brown-100: color-mix(in lab, var(--bs-white) 80%, #d65d0e);
51
+ --bs-brown-200: color-mix(in lab, var(--bs-white) 60%, #d65d0e);
52
+ --bs-brown-300: color-mix(in lab, var(--bs-white) 40%, #d65d0e);
53
+ --bs-brown-400: color-mix(in lab, var(--bs-white) 20%, #d65d0e);
54
+ --bs-brown-500: #d65d0e;
55
+ --bs-brown-600: color-mix(in lab, var(--bs-black) 16%, #d65d0e);
56
+ --bs-brown-700: color-mix(in lab, var(--bs-black) 32%, #d65d0e);
57
+ --bs-brown-800: color-mix(in lab, var(--bs-black) 48%, #d65d0e);
58
+ --bs-brown-900: color-mix(in lab, var(--bs-black) 64%, #d65d0e);
59
+ --bs-brown-950: color-mix(in lab, var(--bs-black) 76%, #d65d0e);
60
+ --bs-brown-975: color-mix(in lab, var(--bs-black) 88%, #d65d0e);
61
+
62
+ --bs-cyan-025: color-mix(in lab, var(--bs-white) 94%, #689d6a);
63
+ --bs-cyan-050: color-mix(in lab, var(--bs-white) 90%, #689d6a);
64
+ --bs-cyan-100: color-mix(in lab, var(--bs-white) 80%, #689d6a);
65
+ --bs-cyan-200: color-mix(in lab, var(--bs-white) 60%, #689d6a);
66
+ --bs-cyan-300: color-mix(in lab, var(--bs-white) 40%, #689d6a);
67
+ --bs-cyan-400: color-mix(in lab, var(--bs-white) 20%, #689d6a);
68
+ --bs-cyan-500: #689d6a;
69
+ --bs-cyan-600: color-mix(in lab, var(--bs-black) 16%, #689d6a);
70
+ --bs-cyan-700: color-mix(in lab, var(--bs-black) 32%, #689d6a);
71
+ --bs-cyan-800: color-mix(in lab, var(--bs-black) 48%, #689d6a);
72
+ --bs-cyan-900: color-mix(in lab, var(--bs-black) 64%, #689d6a);
73
+ --bs-cyan-950: color-mix(in lab, var(--bs-black) 76%, #689d6a);
74
+ --bs-cyan-975: color-mix(in lab, var(--bs-black) 88%, #689d6a);
75
+
76
+ --bs-green-025: color-mix(in lab, var(--bs-white) 94%, #98971a);
77
+ --bs-green-050: color-mix(in lab, var(--bs-white) 90%, #98971a);
78
+ --bs-green-100: color-mix(in lab, var(--bs-white) 80%, #98971a);
79
+ --bs-green-200: color-mix(in lab, var(--bs-white) 60%, #98971a);
80
+ --bs-green-300: color-mix(in lab, var(--bs-white) 40%, #98971a);
81
+ --bs-green-400: color-mix(in lab, var(--bs-white) 20%, #98971a);
82
+ --bs-green-500: #98971a;
83
+ --bs-green-600: color-mix(in lab, var(--bs-black) 16%, #98971a);
84
+ --bs-green-700: color-mix(in lab, var(--bs-black) 32%, #98971a);
85
+ --bs-green-800: color-mix(in lab, var(--bs-black) 48%, #98971a);
86
+ --bs-green-900: color-mix(in lab, var(--bs-black) 64%, #98971a);
87
+ --bs-green-950: color-mix(in lab, var(--bs-black) 76%, #98971a);
88
+ --bs-green-975: color-mix(in lab, var(--bs-black) 88%, #98971a);
89
+
90
+ --bs-orange-025: color-mix(in lab, var(--bs-white) 94%, #d65d0e);
91
+ --bs-orange-050: color-mix(in lab, var(--bs-white) 90%, #d65d0e);
92
+ --bs-orange-100: color-mix(in lab, var(--bs-white) 80%, #d65d0e);
93
+ --bs-orange-200: color-mix(in lab, var(--bs-white) 60%, #d65d0e);
94
+ --bs-orange-300: color-mix(in lab, var(--bs-white) 40%, #d65d0e);
95
+ --bs-orange-400: color-mix(in lab, var(--bs-white) 20%, #d65d0e);
96
+ --bs-orange-500: #d65d0e;
97
+ --bs-orange-600: color-mix(in lab, var(--bs-black) 16%, #d65d0e);
98
+ --bs-orange-700: color-mix(in lab, var(--bs-black) 32%, #d65d0e);
99
+ --bs-orange-800: color-mix(in lab, var(--bs-black) 48%, #d65d0e);
100
+ --bs-orange-900: color-mix(in lab, var(--bs-black) 64%, #d65d0e);
101
+ --bs-orange-950: color-mix(in lab, var(--bs-black) 76%, #d65d0e);
102
+ --bs-orange-975: color-mix(in lab, var(--bs-black) 88%, #d65d0e);
103
+
104
+ --bs-pink-025: color-mix(in lab, var(--bs-white) 94%, #b16286);
105
+ --bs-pink-050: color-mix(in lab, var(--bs-white) 90%, #b16286);
106
+ --bs-pink-100: color-mix(in lab, var(--bs-white) 80%, #b16286);
107
+ --bs-pink-200: color-mix(in lab, var(--bs-white) 60%, #b16286);
108
+ --bs-pink-300: color-mix(in lab, var(--bs-white) 40%, #b16286);
109
+ --bs-pink-400: color-mix(in lab, var(--bs-white) 20%, #b16286);
110
+ --bs-pink-500: #b16286;
111
+ --bs-pink-600: color-mix(in lab, var(--bs-black) 16%, #b16286);
112
+ --bs-pink-700: color-mix(in lab, var(--bs-black) 32%, #b16286);
113
+ --bs-pink-800: color-mix(in lab, var(--bs-black) 48%, #b16286);
114
+ --bs-pink-900: color-mix(in lab, var(--bs-black) 64%, #b16286);
115
+ --bs-pink-950: color-mix(in lab, var(--bs-black) 76%, #b16286);
116
+ --bs-pink-975: color-mix(in lab, var(--bs-black) 88%, #b16286);
117
+
118
+ --bs-purple-025: color-mix(in lab, var(--bs-white) 94%, #b16286);
119
+ --bs-purple-050: color-mix(in lab, var(--bs-white) 90%, #b16286);
120
+ --bs-purple-100: color-mix(in lab, var(--bs-white) 80%, #b16286);
121
+ --bs-purple-200: color-mix(in lab, var(--bs-white) 60%, #b16286);
122
+ --bs-purple-300: color-mix(in lab, var(--bs-white) 40%, #b16286);
123
+ --bs-purple-400: color-mix(in lab, var(--bs-white) 20%, #b16286);
124
+ --bs-purple-500: #b16286;
125
+ --bs-purple-600: color-mix(in lab, var(--bs-black) 16%, #b16286);
126
+ --bs-purple-700: color-mix(in lab, var(--bs-black) 32%, #b16286);
127
+ --bs-purple-800: color-mix(in lab, var(--bs-black) 48%, #b16286);
128
+ --bs-purple-900: color-mix(in lab, var(--bs-black) 64%, #b16286);
129
+ --bs-purple-950: color-mix(in lab, var(--bs-black) 76%, #b16286);
130
+ --bs-purple-975: color-mix(in lab, var(--bs-black) 88%, #b16286);
131
+
132
+ --bs-red-025: color-mix(in lab, var(--bs-white) 94%, #cc241d);
133
+ --bs-red-050: color-mix(in lab, var(--bs-white) 90%, #cc241d);
134
+ --bs-red-100: color-mix(in lab, var(--bs-white) 80%, #cc241d);
135
+ --bs-red-200: color-mix(in lab, var(--bs-white) 60%, #cc241d);
136
+ --bs-red-300: color-mix(in lab, var(--bs-white) 40%, #cc241d);
137
+ --bs-red-400: color-mix(in lab, var(--bs-white) 20%, #cc241d);
138
+ --bs-red-500: #cc241d;
139
+ --bs-red-600: color-mix(in lab, var(--bs-black) 16%, #cc241d);
140
+ --bs-red-700: color-mix(in lab, var(--bs-black) 32%, #cc241d);
141
+ --bs-red-800: color-mix(in lab, var(--bs-black) 48%, #cc241d);
142
+ --bs-red-900: color-mix(in lab, var(--bs-black) 64%, #cc241d);
143
+ --bs-red-950: color-mix(in lab, var(--bs-black) 76%, #cc241d);
144
+ --bs-red-975: color-mix(in lab, var(--bs-black) 88%, #cc241d);
145
+
146
+ --bs-yellow-025: color-mix(in lab, var(--bs-white) 94%, #d79921);
147
+ --bs-yellow-050: color-mix(in lab, var(--bs-white) 90%, #d79921);
148
+ --bs-yellow-100: color-mix(in lab, var(--bs-white) 80%, #d79921);
149
+ --bs-yellow-200: color-mix(in lab, var(--bs-white) 60%, #d79921);
150
+ --bs-yellow-300: color-mix(in lab, var(--bs-white) 40%, #d79921);
151
+ --bs-yellow-400: color-mix(in lab, var(--bs-white) 20%, #d79921);
152
+ --bs-yellow-500: #d79921;
153
+ --bs-yellow-600: color-mix(in lab, var(--bs-black) 16%, #d79921);
154
+ --bs-yellow-700: color-mix(in lab, var(--bs-black) 32%, #d79921);
155
+ --bs-yellow-800: color-mix(in lab, var(--bs-black) 48%, #d79921);
156
+ --bs-yellow-900: color-mix(in lab, var(--bs-black) 64%, #d79921);
157
+ --bs-yellow-950: color-mix(in lab, var(--bs-black) 76%, #d79921);
158
+ --bs-yellow-975: color-mix(in lab, var(--bs-black) 88%, #d79921);
159
+
160
+ /* Text, stated rather than left to the ramp. Bootstrap pairs a low step as
161
+ a light surface with that same step as dark-mode text, which a palette
162
+ built for its own contrast does not agree with. */
163
+ --bs-fg-1: light-dark(#282828, #fbf1c7);
164
+ --bs-fg-body: light-dark(#3c3836, #ebdbb2);
165
+ --bs-fg-2: light-dark(#665c54, #bdae93);
166
+
167
+ /* The label a solid fill carries, for the four families Bootstrap has
168
+ spent on a meaning and this palette has repainted. Upstream's own shape:
169
+ it gives warning and info a dark label for the same reason. */
170
+ --bs-danger-contrast: var(--bs-white);
171
+ --bs-success-contrast: var(--bs-gray-975);
172
+ --bs-warning-contrast: var(--bs-gray-975);
173
+ --bs-info-contrast: var(--bs-gray-975);
174
+
175
+ /* The accent this palette leads with, as the primary color: the same nine
176
+ `_color.html.erb` writes, from blue and the label that reads on it. Here
177
+ rather than only in the page because a reader may swap this file for
178
+ another one, and the primary has to travel with it. A host naming its
179
+ own color still wins, its block coming after this file. */
180
+ --bs-primary-base: var(--bs-blue-500);
181
+ --bs-primary-fg: light-dark(var(--bs-blue-600), var(--bs-blue-400));
182
+ --bs-primary-fg-emphasis: light-dark(var(--bs-blue-800), var(--bs-blue-200));
183
+ --bs-primary-bg: var(--bs-blue-500);
184
+ --bs-primary-bg-subtle: light-dark(var(--bs-blue-100), var(--bs-blue-900));
185
+ --bs-primary-bg-muted: light-dark(var(--bs-blue-200), var(--bs-blue-800));
186
+ --bs-primary-border: light-dark(var(--bs-blue-300), var(--bs-blue-600));
187
+ --bs-primary-focus-ring: light-dark(color-mix(in oklch, var(--bs-blue-500) 50%, var(--bs-bg-body)), color-mix(in oklch, var(--bs-blue-500) 75%, var(--bs-bg-body)));
188
+ --bs-primary-contrast: var(--bs-white);
189
+ }