@portosaur/theme 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (76) hide show
  1. package/README.md +13 -0
  2. package/assets/img/icon-old.png +0 -0
  3. package/assets/img/icon.png +0 -0
  4. package/assets/img/project-blank.png +0 -0
  5. package/assets/img/social-card.jpeg +0 -0
  6. package/assets/img/svg/icon-blog.svg +2 -0
  7. package/assets/img/svg/icon-close.svg +3 -0
  8. package/assets/img/svg/icon-dock.svg +4 -0
  9. package/assets/img/svg/icon-link.svg +5 -0
  10. package/assets/img/svg/icon-note.svg +2 -0
  11. package/assets/img/svg/icon-popup.svg +1 -0
  12. package/assets/img/svg/icon-save.svg +5 -0
  13. package/assets/img/svg/icon.svg +240 -0
  14. package/assets/img/svg/project-blank.svg +140 -0
  15. package/assets/sample-resume.pdf +0 -0
  16. package/package.json +41 -0
  17. package/plugins/README.md +8 -0
  18. package/src/index.d.ts +11 -0
  19. package/src/index.mjs +14 -0
  20. package/src/plugins/theme.mjs +13 -0
  21. package/theme/DocCategoryGeneratedIndexPage/index.jsx +15 -0
  22. package/theme/MDXComponents.jsx +19 -0
  23. package/theme/README.md +9 -0
  24. package/theme/Root.jsx +11 -0
  25. package/theme/components/AboutSection/index.jsx +264 -0
  26. package/theme/components/AboutSection/styles.module.css +309 -0
  27. package/theme/components/ContactSection/index.jsx +188 -0
  28. package/theme/components/ContactSection/styles.module.css +343 -0
  29. package/theme/components/ExperienceSection/index.jsx +119 -0
  30. package/theme/components/ExperienceSection/styles.module.css +183 -0
  31. package/theme/components/HeroSection/index.jsx +198 -0
  32. package/theme/components/HeroSection/styles.module.css +484 -0
  33. package/theme/components/NavArrow/index.jsx +124 -0
  34. package/theme/components/NavArrow/styles.module.css +107 -0
  35. package/theme/components/NoteIndex/index.jsx +182 -0
  36. package/theme/components/NoteIndex/styles.module.css +167 -0
  37. package/theme/components/Preview/components/FeedbackStates.jsx +200 -0
  38. package/theme/components/Preview/components/FileTabs.jsx +41 -0
  39. package/theme/components/Preview/components/PreviewContent.jsx +104 -0
  40. package/theme/components/Preview/components/PreviewHeader.jsx +411 -0
  41. package/theme/components/Preview/components/Triggers/Pv.jsx +253 -0
  42. package/theme/components/Preview/components/Triggers/SrcPv.jsx +55 -0
  43. package/theme/components/Preview/components/Triggers/index.jsx +2 -0
  44. package/theme/components/Preview/components/ViewerWindow.jsx +489 -0
  45. package/theme/components/Preview/hooks/useAdaptiveSizing.jsx +90 -0
  46. package/theme/components/Preview/hooks/useDeepLinkHash.jsx +24 -0
  47. package/theme/components/Preview/hooks/useDockLayout.jsx +86 -0
  48. package/theme/components/Preview/hooks/useFileFetch.jsx +38 -0
  49. package/theme/components/Preview/hooks/useTouchZoom.jsx +98 -0
  50. package/theme/components/Preview/index.jsx +3 -0
  51. package/theme/components/Preview/renderers/CodeRenderer.jsx +124 -0
  52. package/theme/components/Preview/renderers/ImageRenderer.jsx +74 -0
  53. package/theme/components/Preview/renderers/PdfRenderer.jsx +93 -0
  54. package/theme/components/Preview/renderers/WebRenderer.jsx +59 -0
  55. package/theme/components/Preview/state/index.jsx +177 -0
  56. package/theme/components/Preview/styles.module.css +776 -0
  57. package/theme/components/Preview/utils/index.jsx +62 -0
  58. package/theme/components/ProjectsSection/index.jsx +790 -0
  59. package/theme/components/ProjectsSection/styles.module.css +900 -0
  60. package/theme/components/SocialLinks/index.jsx +115 -0
  61. package/theme/components/SocialLinks/styles.module.css +57 -0
  62. package/theme/components/Tooltip/index.jsx +104 -0
  63. package/theme/components/Tooltip/styles.module.css +168 -0
  64. package/theme/config/iconMappings.jsx +427 -0
  65. package/theme/config/prism.jsx +72 -0
  66. package/theme/config/sidebar.jsx +11 -0
  67. package/theme/css/bootstrap.css +5 -0
  68. package/theme/css/catppuccin.css +618 -0
  69. package/theme/css/custom.css +253 -0
  70. package/theme/css/tasks.css +874 -0
  71. package/theme/hooks/useScrollReveal.jsx +20 -0
  72. package/theme/pages/index.jsx +104 -0
  73. package/theme/pages/notes.jsx +131 -0
  74. package/theme/pages/tasks.jsx +989 -0
  75. package/theme/utils/HashNavigation.jsx +185 -0
  76. package/theme/utils/updateTitle.jsx +65 -0
@@ -0,0 +1,618 @@
1
+ /**
2
+ * Catppuccin color palette
3
+ * https://catppuccin.com
4
+ **/
5
+
6
+ /* Import fonts */
7
+ @import url("https://fonts.googleapis.com/css2?family=Alata&family=DM+Serif+Display&display=swap");
8
+
9
+ :root {
10
+ --ifm-heading-font-family: "Alata", system-ui, -apple-system, sans-serif;
11
+ --ifm-font-family-base: "Alata", system-ui, -apple-system, sans-serif;
12
+
13
+ --ifm-scroll-margin-top: 38px;
14
+ --ifm-scroll-margin-top-mobile: 32px;
15
+
16
+ /* Catppuccin Latte palate */
17
+ --ctp-latte-rosewater: #dc8a78;
18
+ --ctp-latte-rosewater-rgb: 220, 138, 120;
19
+ --ctp-latte-flamingo: #dd7878;
20
+ --ctp-latte-flamingo-rgb: 221, 120, 120;
21
+ --ctp-latte-pink: #ea76cb;
22
+ --ctp-latte-pink-rgb: 234, 118, 203;
23
+ --ctp-latte-mauve: #8839ef;
24
+ --ctp-latte-mauve-rgb: 136, 57, 239;
25
+ --ctp-latte-red: #d20f39;
26
+ --ctp-latte-red-rgb: 210, 15, 57;
27
+ --ctp-latte-maroon: #e64553;
28
+ --ctp-latte-maroon-rgb: 230, 69, 83;
29
+ --ctp-latte-peach: #fe640b;
30
+ --ctp-latte-peach-rgb: 254, 100, 11;
31
+ --ctp-latte-yellow: #df8e1d;
32
+ --ctp-latte-yellow-rgb: 223, 142, 29;
33
+ --ctp-latte-green: #40a02b;
34
+ --ctp-latte-green-rgb: 64, 160, 43;
35
+ --ctp-latte-teal: #179299;
36
+ --ctp-latte-teal-rgb: 23, 146, 153;
37
+ --ctp-latte-sky: #04a5e5;
38
+ --ctp-latte-sky-rgb: 4, 165, 229;
39
+ --ctp-latte-sapphire: #209fb5;
40
+ --ctp-latte-sapphire-rgb: 32, 159, 181;
41
+ --ctp-latte-blue: #1e66f5;
42
+ --ctp-latte-blue-rgb: 30, 102, 245;
43
+ --ctp-latte-lavender: #7287fd;
44
+ --ctp-latte-lavender-rgb: 114, 135, 253;
45
+ --ctp-latte-text: #4c4f69;
46
+ --ctp-latte-text-rgb: 76, 79, 105;
47
+ --ctp-latte-subtext1: #5c5f77;
48
+ --ctp-latte-subtext1-rgb: 92, 95, 119;
49
+ --ctp-latte-subtext0: #6c6f85;
50
+ --ctp-latte-subtext0-rgb: 108, 111, 133;
51
+ --ctp-latte-overlay2: #7c7f93;
52
+ --ctp-latte-overlay2-rgb: 124, 127, 147;
53
+ --ctp-latte-overlay1: #8c8fa1;
54
+ --ctp-latte-overlay1-rgb: 140, 143, 161;
55
+ --ctp-latte-overlay0: #9ca0b0;
56
+ --ctp-latte-overlay0-rgb: 156, 160, 176;
57
+ --ctp-latte-surface2: #acb0be;
58
+ --ctp-latte-surface2-rgb: 172, 176, 190;
59
+ --ctp-latte-surface1: #bcc0cc;
60
+ --ctp-latte-surface1-rgb: 188, 192, 204;
61
+ --ctp-latte-surface0: #ccd0da;
62
+ --ctp-latte-surface0-rgb: 204, 208, 218;
63
+ --ctp-latte-base: #eff1f5;
64
+ --ctp-latte-base-rgb: 239, 241, 245;
65
+ --ctp-latte-mantle: #e6e9ef;
66
+ --ctp-latte-mantle-rgb: 230, 233, 239;
67
+ --ctp-latte-crust: #dce0e8;
68
+ --ctp-latte-crust-rgb: 220, 224, 232;
69
+
70
+ /* Catppuccin Mocha */
71
+ --ctp-mocha-rosewater: #f5e0dc;
72
+ --ctp-mocha-rosewater-rgb: 245, 224, 220;
73
+ --ctp-mocha-flamingo: #f2cdcd;
74
+ --ctp-mocha-flamingo-rgb: 242, 205, 205;
75
+ --ctp-mocha-pink: #f5c2e7;
76
+ --ctp-mocha-pink-rgb: 245, 194, 231;
77
+ --ctp-mocha-mauve: #cba6f7;
78
+ --ctp-mocha-mauve-rgb: 203, 166, 247;
79
+ --ctp-mocha-red: #f38ba8;
80
+ --ctp-mocha-red-rgb: 243, 139, 168;
81
+ --ctp-mocha-maroon: #eba0ac;
82
+ --ctp-mocha-maroon-rgb: 235, 160, 172;
83
+ --ctp-mocha-peach: #fab387;
84
+ --ctp-mocha-peach-rgb: 250, 179, 135;
85
+ --ctp-mocha-yellow: #f9e2af;
86
+ --ctp-mocha-yellow-rgb: 249, 226, 175;
87
+ --ctp-mocha-green: #a6e3a1;
88
+ --ctp-mocha-green-rgb: 166, 227, 161;
89
+ --ctp-mocha-teal: #94e2d5;
90
+ --ctp-mocha-teal-rgb: 148, 226, 213;
91
+ --ctp-mocha-sky: #89dceb;
92
+ --ctp-mocha-sky-rgb: 137, 220, 235;
93
+ --ctp-mocha-sapphire: #74c7ec;
94
+ --ctp-mocha-sapphire-rgb: 116, 199, 236;
95
+ --ctp-mocha-blue: #89b4fa;
96
+ --ctp-mocha-blue-rgb: 137, 180, 250;
97
+ --ctp-mocha-lavender: #b4befe;
98
+ --ctp-mocha-lavender-rgb: 180, 190, 254;
99
+ --ctp-mocha-text: #cdd6f4;
100
+ --ctp-mocha-text-rgb: 205, 214, 244;
101
+ --ctp-mocha-subtext1: #bac2de;
102
+ --ctp-mocha-subtext1-rgb: 186, 194, 222;
103
+ --ctp-mocha-subtext0: #a6adc8;
104
+ --ctp-mocha-subtext0-rgb: 166, 173, 200;
105
+ --ctp-mocha-overlay2: #9399b2;
106
+ --ctp-mocha-overlay2-rgb: 147, 153, 178;
107
+ --ctp-mocha-overlay1: #7f849c;
108
+ --ctp-mocha-overlay1-rgb: 127, 132, 156;
109
+ --ctp-mocha-overlay0: #6c7086;
110
+ --ctp-mocha-overlay0-rgb: 108, 112, 134;
111
+ --ctp-mocha-surface2: #585b70;
112
+ --ctp-mocha-surface2-rgb: 88, 91, 112;
113
+ --ctp-mocha-surface1: #45475a;
114
+ --ctp-mocha-surface1-rgb: 69, 71, 90;
115
+ --ctp-mocha-surface0: #313244;
116
+ --ctp-mocha-surface0-rgb: 49, 50, 68;
117
+ --ctp-mocha-base: #1e1e2e;
118
+ --ctp-mocha-base-rgb: 30, 30, 46;
119
+ --ctp-mocha-mantle: #181825;
120
+ --ctp-mocha-mantle-rgb: 24, 24, 37;
121
+ --ctp-mocha-crust: #11111b;
122
+ --ctp-mocha-crust-rgb: 17, 17, 27;
123
+ }
124
+
125
+ /* Light Mode - Catppuccin Latte */
126
+ [data-theme="light"] {
127
+ --ifm-color-scheme: light;
128
+
129
+ --ctp-rosewater: var(--ctp-latte-rosewater);
130
+ --ctp-rosewater-rgb: var(--ctp-latte-rosewater-rgb);
131
+ --ctp-flamingo: var(--ctp-latte-flamingo);
132
+ --ctp-flamingo-rgb: var(--ctp-latte-flamingo-rgb);
133
+ --ctp-pink: var(--ctp-latte-pink);
134
+ --ctp-pink-rgb: var(--ctp-latte-pink-rgb);
135
+ --ctp-mauve: var(--ctp-latte-mauve);
136
+ --ctp-mauve-rgb: var(--ctp-latte-mauve-rgb);
137
+ --ctp-red: var(--ctp-latte-red);
138
+ --ctp-red-rgb: var(--ctp-latte-red-rgb);
139
+ --ctp-maroon: var(--ctp-latte-maroon);
140
+ --ctp-maroon-rgb: var(--ctp-latte-maroon-rgb);
141
+ --ctp-peach: var(--ctp-latte-peach);
142
+ --ctp-peach-rgb: var(--ctp-latte-peach-rgb);
143
+ --ctp-yellow: var(--ctp-latte-yellow);
144
+ --ctp-yellow-rgb: var(--ctp-latte-yellow-rgb);
145
+ --ctp-green: var(--ctp-latte-green);
146
+ --ctp-green-rgb: var(--ctp-latte-green-rgb);
147
+ --ctp-teal: var(--ctp-latte-teal);
148
+ --ctp-teal-rgb: var(--ctp-latte-teal-rgb);
149
+ --ctp-sky: var(--ctp-latte-sky);
150
+ --ctp-sky-rgb: var(--ctp-latte-sky-rgb);
151
+ --ctp-sapphire: var(--ctp-latte-sapphire);
152
+ --ctp-sapphire-rgb: var(--ctp-latte-sapphire-rgb);
153
+ --ctp-blue: var(--ctp-latte-blue);
154
+ --ctp-blue-rgb: var(--ctp-latte-blue-rgb);
155
+ --ctp-lavender: var(--ctp-latte-lavender);
156
+ --ctp-lavender-rgb: var(--ctp-latte-lavender-rgb);
157
+ --ctp-text: var(--ctp-latte-text);
158
+ --ctp-text-rgb: var(--ctp-latte-text-rgb);
159
+ --ctp-subtext1: var(--ctp-latte-subtext1);
160
+ --ctp-subtext1-rgb: var(--ctp-latte-subtext1-rgb);
161
+ --ctp-subtext0: var(--ctp-latte-subtext0);
162
+ --ctp-subtext0-rgb: var(--ctp-latte-subtext0-rgb);
163
+ --ctp-overlay2: var(--ctp-latte-overlay2);
164
+ --ctp-overlay2-rgb: var(--ctp-latte-overlay2-rgb);
165
+ --ctp-overlay1: var(--ctp-latte-overlay1);
166
+ --ctp-overlay1-rgb: var(--ctp-latte-overlay1-rgb);
167
+ --ctp-overlay0: var(--ctp-latte-overlay0);
168
+ --ctp-overlay0-rgb: var(--ctp-latte-overlay0-rgb);
169
+ --ctp-surface2: var(--ctp-latte-surface2);
170
+ --ctp-surface2-rgb: var(--ctp-latte-surface2-rgb);
171
+ --ctp-surface1: var(--ctp-latte-surface1);
172
+ --ctp-surface1-rgb: var(--ctp-latte-surface1-rgb);
173
+ --ctp-surface0: var(--ctp-latte-surface0);
174
+ --ctp-surface0-rgb: var(--ctp-latte-surface0-rgb);
175
+ --ctp-base: var(--ctp-latte-base);
176
+ --ctp-base-rgb: var(--ctp-latte-base-rgb);
177
+ --ctp-mantle: var(--ctp-latte-mantle);
178
+ --ctp-mantle-rgb: var(--ctp-latte-mantle-rgb);
179
+ --ctp-crust: var(--ctp-latte-crust);
180
+ --ctp-crust-rgb: var(--ctp-latte-crust-rgb);
181
+
182
+ /* === PRIMARY COLOR SYSTEM === */
183
+
184
+ --ifm-color-primary: var(--ctp-latte-peach);
185
+ --ifm-color-primary-rgb: var(--ctp-latte-peach-rgb);
186
+
187
+ /* Light variations */
188
+ --ifm-color-primary-lightest: var(--ctp-latte-teal);
189
+ --ifm-color-primary-lightest-rgb: var(--ctp-latte-teal-rgb);
190
+ --ifm-color-primary-lighter: var(--ctp-latte-green);
191
+ --ifm-color-primary-lighter-rgb: var(--ctp-latte-green-rgb);
192
+ --ifm-color-primary-light: var(--ctp-latte-yellow);
193
+ --ifm-color-primary-light-rgb: var(--ctp-latte-yellow-rgb);
194
+
195
+ /* Dark variations */
196
+ --ifm-color-primary-dark: var(--ctp-latte-red);
197
+ --ifm-color-primary-dark-rgb: var(--ctp-latte-red-rgb);
198
+ --ifm-color-primary-darker: var(--ctp-latte-maroon);
199
+ --ifm-color-primary-darker-rgb: var(--ctp-latte-maroon-rgb);
200
+ --ifm-color-primary-darkest: var(--ctp-latte-flamingo);
201
+ --ifm-color-primary-darkest-rgb: var(--ctp-latte-flamingo-rgb);
202
+
203
+ /* === STANDARD COLOR VARIABLES === */
204
+
205
+ --ifm-color-black: var(--ctp-latte-text);
206
+ --ifm-color-black-rgb: var(--ctp-latte-text-rgb);
207
+
208
+ --ifm-color-white: var(--ctp-latte-base);
209
+ --ifm-color-white-rgb: var(--ctp-latte-base-rgb);
210
+
211
+ --ifm-color-gray: var(--ctp-latte-overlay0);
212
+ --ifm-color-gray-rgb: var(--ctp-latte-overlay0-rgb);
213
+
214
+ --ifm-color-red: var(--ctp-latte-red);
215
+ --ifm-color-red-rgb: var(--ctp-latte-red-rgb);
216
+
217
+ --ifm-color-orange: var(--ctp-latte-peach);
218
+ --ifm-color-orange-rgb: var(--ctp-latte-peach-rgb);
219
+
220
+ --ifm-color-yellow: var(--ctp-latte-yellow);
221
+ --ifm-color-yellow-rgb: var(--ctp-latte-yellow-rgb);
222
+
223
+ --ifm-color-green: var(--ctp-latte-green);
224
+ --ifm-color-green-rgb: var(--ctp-latte-green-rgb);
225
+
226
+ --ifm-color-teal: var(--ctp-latte-teal);
227
+ --ifm-color-teal-rgb: var(--ctp-latte-teal-rgb);
228
+
229
+ --ifm-color-cyan: var(--ctp-latte-sky);
230
+ --ifm-color-cyan-rgb: var(--ctp-latte-sky-rgb);
231
+
232
+ --ifm-color-blue: var(--ctp-latte-blue);
233
+ --ifm-color-blue-rgb: var(--ctp-latte-blue-rgb);
234
+
235
+ --ifm-color-indigo: var(--ctp-latte-sapphire);
236
+ --ifm-color-indigo-rgb: var(--ctp-latte-sapphire-rgb);
237
+
238
+ --ifm-color-purple: var(--ctp-latte-mauve);
239
+ --ifm-color-purple-rgb: var(--ctp-latte-mauve-rgb);
240
+
241
+ --ifm-color-pink: var(--ctp-latte-pink);
242
+ --ifm-color-pink-rgb: var(--ctp-latte-pink-rgb);
243
+
244
+ /* === SEMANTIC COLOR SYSTEM === */
245
+
246
+ /* Success color - Green */
247
+ --ifm-color-success-lightest: var(--ctp-latte-sky);
248
+ --ifm-color-success-lighter: var(--ctp-latte-teal);
249
+ --ifm-color-success-light: var(--ctp-latte-sky);
250
+ --ifm-color-success: var(--ctp-latte-green);
251
+ --ifm-color-success-rgb: var(--ctp-latte-green-rgb);
252
+ --ifm-color-success-dark: var(--ctp-latte-teal);
253
+ --ifm-color-success-darker: var(--ctp-latte-sapphire);
254
+ --ifm-color-success-darkest: var(--ctp-latte-blue);
255
+
256
+ /* Info color - Blue */
257
+ --ifm-color-info-lightest: var(--ctp-latte-lavender);
258
+ --ifm-color-info-lighter: var(--ctp-latte-sapphire);
259
+ --ifm-color-info-light: var(--ctp-latte-sky);
260
+ --ifm-color-info: var(--ctp-latte-blue);
261
+ --ifm-color-info-rgb: var(--ctp-latte-blue-rgb);
262
+ --ifm-color-info-dark: var(--ctp-latte-sapphire);
263
+ --ifm-color-info-darker: var(--ctp-latte-lavender);
264
+ --ifm-color-info-darkest: var(--ctp-latte-mauve);
265
+
266
+ /* Warning color - Yellow */
267
+ --ifm-color-warning-lightest: var(--ctp-latte-peach);
268
+ --ifm-color-warning-lighter: var(--ctp-latte-yellow);
269
+ --ifm-color-warning-light: var(--ctp-latte-yellow);
270
+ --ifm-color-warning: var(--ctp-latte-yellow);
271
+ --ifm-color-warning-rgb: var(--ctp-latte-yellow-rgb);
272
+ --ifm-color-warning-dark: var(--ctp-latte-peach);
273
+ --ifm-color-warning-darker: var(--ctp-latte-red);
274
+ --ifm-color-warning-darkest: var(--ctp-latte-maroon);
275
+
276
+ /* Danger color - Red */
277
+ --ifm-color-danger-lightest: var(--ctp-latte-flamingo);
278
+ --ifm-color-danger-lighter: var(--ctp-latte-maroon);
279
+ --ifm-color-danger-light: var(--ctp-latte-peach);
280
+ --ifm-color-danger: var(--ctp-latte-red);
281
+ --ifm-color-danger-rgb: var(--ctp-latte-red-rgb);
282
+ --ifm-color-danger-dark: var(--ctp-latte-maroon);
283
+ --ifm-color-danger-darker: var(--ctp-latte-flamingo);
284
+ --ifm-color-danger-darkest: var(--ctp-latte-pink);
285
+
286
+ /* === GRAYSCALE AND UI COLORS === */
287
+
288
+ /* Background colors */
289
+ --ifm-background-color: var(--ctp-latte-base) !important;
290
+ --ifm-background-color-rgb: var(--ctp-latte-base-rgb) !important;
291
+ --ifm-background-surface-color: var(--ctp-latte-surface0) !important;
292
+ --ifm-hero-background-color: var(--ctp-latte-mantle) !important;
293
+ --ifm-footer-background-color: var(--ctp-latte-mantle) !important;
294
+
295
+ /* Component-specific background colors */
296
+ --ifm-navbar-background-color: var(--ctp-latte-base) !important;
297
+ --ifm-navbar-search-input-color: var(--ifm-font-color-base);
298
+ --ifm-navbar-search-input-background-color: var(--ctp-latte-surface0);
299
+ --ifm-table-stripe-background: var(--ctp-latte-mantle) !important;
300
+ --ifm-pre-background: var(--ctp-latte-surface0);
301
+ --ifm-alert-background-color: var(--ctp-latte-surface0);
302
+ --ifm-card-background-color: var(--ctp-latte-surface0);
303
+
304
+ /* Gray color scale */
305
+ --ifm-color-gray-0: var(--ctp-latte-base);
306
+ --ifm-color-gray-100: var(--ctp-latte-mantle);
307
+ --ifm-color-gray-200: var(--ctp-latte-crust);
308
+ --ifm-color-gray-300: var(--ctp-latte-surface0);
309
+ --ifm-color-gray-400: var(--ctp-latte-surface1);
310
+ --ifm-color-gray-500: var(--ctp-latte-surface2);
311
+ --ifm-color-gray-600: var(--ctp-latte-overlay0);
312
+ --ifm-color-gray-700: var(--ctp-latte-overlay1);
313
+ --ifm-color-gray-800: var(--ctp-latte-overlay2);
314
+ --ifm-color-gray-900: var(--ctp-latte-subtext0);
315
+ --ifm-color-gray-1000: var(--ctp-latte-text);
316
+
317
+ /* emphasis colors */
318
+ --ifm-color-emphasis-0: var(--ctp-latte-text) !important;
319
+ --ifm-color-emphasis-100: var(--ctp-latte-subtext0) !important;
320
+ --ifm-color-emphasis-200: var(--ctp-latte-overlay2) !important;
321
+ --ifm-color-emphasis-300: var(--ctp-latte-overlay1) !important;
322
+ --ifm-color-emphasis-400: var(--ctp-latte-overlay0) !important;
323
+ --ifm-color-emphasis-500: var(--ctp-latte-surface2) !important;
324
+ --ifm-color-emphasis-600: var(--ctp-latte-surface1) !important;
325
+ --ifm-color-emphasis-700: var(--ctp-latte-surface0) !important;
326
+ --ifm-color-emphasis-800: var(--ctp-latte-base) !important;
327
+ --ifm-color-emphasis-900: var(--ctp-latte-mantle) !important;
328
+ --ifm-color-emphasis-1000: var(--ctp-latte-crust) !important;
329
+
330
+ /* Text colors */
331
+ --ifm-font-color-base: var(--ctp-latte-text);
332
+ --ifm-font-color-base-rgb: var(--ctp-latte-text-rgb);
333
+ --ifm-font-color-secondary: var(--ctp-latte-subtext0);
334
+ --ifm-font-color-tertiary: var(--ctp-latte-subtext1);
335
+ --ifm-font-color-quaternary: var(--ctp-latte-overlay2);
336
+
337
+ /* Content colors */
338
+ --ifm-color-content: var(--ctp-latte-text) !important;
339
+ --ifm-color-content-secondary: var(--ctp-latte-subtext0) !important;
340
+
341
+ /* Link colors */
342
+ --ifm-link-color: var(--ifm-color-primary);
343
+ --ifm-link-hover-color: var(--ifm-color-primary-darker);
344
+ --ifm-link-decoration: none;
345
+ --ifm-link-hover-decoration: underline;
346
+
347
+ /* Navigation/UI colors */
348
+ --ifm-navbar-link-color: var(--ctp-latte-text);
349
+ --ifm-navbar-link-hover-color: var(--ifm-color-primary);
350
+ --ifm-menu-color: var(--ctp-latte-subtext0);
351
+ --ifm-menu-color-active: var(--ctp-latte-peach);
352
+ --ifm-menu-color-background-active: rgba(var(--ctp-latte-peach-rgb), 0.1);
353
+ --ifm-menu-color-background-hover: rgba(var(--ctp-latte-surface0-rgb), 0.5);
354
+ --ifm-toc-link-color: var(--ctp-latte-subtext0);
355
+ --ifm-toc-link-color-active: var(--ctp-latte-peach);
356
+ --ifm-toc-border-color: var(--ctp-latte-crust) !important;
357
+
358
+ /* Code block */
359
+ --ifm-code-color: var(--ctp-latte-red) !important;
360
+ --ifm-code-background: var(--ctp-latte-surface0) !important;
361
+
362
+ /* Other UI elements */
363
+ --ifm-blockquote-color: var(--ctp-latte-subtext0);
364
+ --ifm-blockquote-border-color: var(--ctp-latte-peach);
365
+ --ifm-shadow-color: var(--ctp-latte-surface1);
366
+ --ifm-shadow-color-rgb: var(--ctp-latte-surface1-rgb);
367
+ --ifm-button-color: var(--ctp-latte-crust);
368
+ --ifm-hover-overlay: rgba(var(--ctp-latte-surface2-rgb), 0.5) !important;
369
+
370
+ /* Code highlighting */
371
+ --docusaurus-highlighted-code-line-bg: rgba(
372
+ var(--ctp-latte-surface2-rgb),
373
+ 0.5
374
+ ) !important;
375
+ }
376
+
377
+ /* Dark mode - Catppuccin Mocha */
378
+ [data-theme="dark"] {
379
+ --ifm-color-scheme: dark;
380
+
381
+ --ctp-rosewater: var(--ctp-mocha-rosewater);
382
+ --ctp-rosewater-rgb: var(--ctp-mocha-rosewater-rgb);
383
+ --ctp-flamingo: var(--ctp-mocha-flamingo);
384
+ --ctp-flamingo-rgb: var(--ctp-mocha-flamingo-rgb);
385
+ --ctp-pink: var(--ctp-mocha-pink);
386
+ --ctp-pink-rgb: var(--ctp-mocha-pink-rgb);
387
+ --ctp-mauve: var(--ctp-mocha-mauve);
388
+ --ctp-mauve-rgb: var(--ctp-mocha-mauve-rgb);
389
+ --ctp-red: var(--ctp-mocha-red);
390
+ --ctp-red-rgb: var(--ctp-mocha-red-rgb);
391
+ --ctp-maroon: var(--ctp-mocha-maroon);
392
+ --ctp-maroon-rgb: var(--ctp-mocha-maroon-rgb);
393
+ --ctp-peach: var(--ctp-mocha-peach);
394
+ --ctp-peach-rgb: var(--ctp-mocha-peach-rgb);
395
+ --ctp-yellow: var(--ctp-mocha-yellow);
396
+ --ctp-yellow-rgb: var(--ctp-mocha-yellow-rgb);
397
+ --ctp-green: var(--ctp-mocha-green);
398
+ --ctp-green-rgb: var(--ctp-mocha-green-rgb);
399
+ --ctp-teal: var(--ctp-mocha-teal);
400
+ --ctp-teal-rgb: var(--ctp-mocha-teal-rgb);
401
+ --ctp-sky: var(--ctp-mocha-sky);
402
+ --ctp-sky-rgb: var(--ctp-mocha-sky-rgb);
403
+ --ctp-sapphire: var(--ctp-mocha-sapphire);
404
+ --ctp-sapphire-rgb: var(--ctp-mocha-sapphire-rgb);
405
+ --ctp-blue: var(--ctp-mocha-blue);
406
+ --ctp-blue-rgb: var(--ctp-mocha-blue-rgb);
407
+ --ctp-lavender: var(--ctp-mocha-lavender);
408
+ --ctp-lavender-rgb: var(--ctp-mocha-lavender-rgb);
409
+ --ctp-text: var(--ctp-mocha-text);
410
+ --ctp-text-rgb: var(--ctp-mocha-text-rgb);
411
+ --ctp-subtext1: var(--ctp-mocha-subtext1);
412
+ --ctp-subtext1-rgb: var(--ctp-mocha-subtext1-rgb);
413
+ --ctp-subtext0: var(--ctp-mocha-subtext0);
414
+ --ctp-subtext0-rgb: var(--ctp-mocha-subtext0-rgb);
415
+ --ctp-overlay2: var(--ctp-mocha-overlay2);
416
+ --ctp-overlay2-rgb: var(--ctp-mocha-overlay2-rgb);
417
+ --ctp-overlay1: var(--ctp-mocha-overlay1);
418
+ --ctp-overlay1-rgb: var(--ctp-mocha-overlay1-rgb);
419
+ --ctp-overlay0: var(--ctp-mocha-overlay0);
420
+ --ctp-overlay0-rgb: var(--ctp-mocha-overlay0-rgb);
421
+ --ctp-surface2: var(--ctp-mocha-surface2);
422
+ --ctp-surface2-rgb: var(--ctp-mocha-surface2-rgb);
423
+ --ctp-surface1: var(--ctp-mocha-surface1);
424
+ --ctp-surface1-rgb: var(--ctp-mocha-surface1-rgb);
425
+ --ctp-surface0: var(--ctp-mocha-surface0);
426
+ --ctp-surface0-rgb: var(--ctp-mocha-surface0-rgb);
427
+ --ctp-base: var(--ctp-mocha-base);
428
+ --ctp-base-rgb: var(--ctp-mocha-base-rgb);
429
+ --ctp-mantle: var(--ctp-mocha-mantle);
430
+ --ctp-mantle-rgb: var(--ctp-mocha-mantle-rgb);
431
+ --ctp-crust: var(--ctp-mocha-crust);
432
+ --ctp-crust-rgb: var(--ctp-mocha-crust-rgb);
433
+
434
+ /* === PRIMARY COLOR SYSTEM === */
435
+
436
+ --ifm-color-primary: var(--ctp-mocha-peach);
437
+ --ifm-color-primary-rgb: var(--ctp-mocha-peach-rgb);
438
+
439
+ /* Light variations of primary color */
440
+ --ifm-color-primary-lightest: var(--ctp-mocha-teal);
441
+ --ifm-color-primary-lightest-rgb: var(--ctp-mocha-teal-rgb);
442
+ --ifm-color-primary-lighter: var(--ctp-mocha-green);
443
+ --ifm-color-primary-lighter-rgb: var(--ctp-mocha-green-rgb);
444
+ --ifm-color-primary-light: var(--ctp-mocha-yellow);
445
+ --ifm-color-primary-light-rgb: var(--ctp-mocha-yellow-rgb);
446
+
447
+ /* Dark variations of primary color */
448
+ --ifm-color-primary-dark: var(--ctp-mocha-red);
449
+ --ifm-color-primary-dark-rgb: var(--ctp-mocha-red-rgb);
450
+ --ifm-color-primary-darker: var(--ctp-mocha-maroon);
451
+ --ifm-color-primary-darker-rgb: var(--ctp-mocha-maroon-rgb);
452
+ --ifm-color-primary-darkest: var(--ctp-mocha-flamingo);
453
+ --ifm-color-primary-darkest-rgb: var(--ctp-mocha-flamingo-rgb);
454
+
455
+ /* === STANDARD COLOR VARIABLES === */
456
+
457
+ --ifm-color-black: var(--ctp-mocha-crust);
458
+ --ifm-color-black-rgb: var(--ctp-mocha-crust-rgb);
459
+
460
+ --ifm-color-white: var(--ctp-mocha-text);
461
+ --ifm-color-white-rgb: var(--ctp-mocha-text-rgb);
462
+
463
+ /* Basic color palette */
464
+ --ifm-color-gray: var(--ctp-mocha-overlay0);
465
+ --ifm-color-gray-rgb: var(--ctp-mocha-overlay0-rgb);
466
+ --ifm-color-red: var(--ctp-mocha-red);
467
+ --ifm-color-red-rgb: var(--ctp-mocha-red-rgb);
468
+ --ifm-color-orange: var(--ctp-mocha-peach);
469
+ --ifm-color-orange-rgb: var(--ctp-mocha-peach-rgb);
470
+ --ifm-color-yellow: var(--ctp-mocha-yellow);
471
+ --ifm-color-yellow-rgb: var(--ctp-mocha-yellow-rgb);
472
+ --ifm-color-green: var(--ctp-mocha-green);
473
+ --ifm-color-green-rgb: var(--ctp-mocha-green-rgb);
474
+ --ifm-color-teal: var(--ctp-mocha-teal);
475
+ --ifm-color-teal-rgb: var(--ctp-mocha-teal-rgb);
476
+ --ifm-color-cyan: var(--ctp-mocha-sky);
477
+ --ifm-color-cyan-rgb: var(--ctp-mocha-sky-rgb);
478
+ --ifm-color-blue: var(--ctp-mocha-blue);
479
+ --ifm-color-blue-rgb: var(--ctp-mocha-blue-rgb);
480
+ --ifm-color-indigo: var(--ctp-mocha-sapphire);
481
+ --ifm-color-indigo-rgb: var(--ctp-mocha-sapphire-rgb);
482
+ --ifm-color-purple: var(--ctp-mocha-mauve);
483
+ --ifm-color-purple-rgb: var(--ctp-mocha-mauve-rgb);
484
+ --ifm-color-pink: var(--ctp-mocha-pink);
485
+ --ifm-color-pink-rgb: var(--ctp-mocha-pink-rgb);
486
+
487
+ /* === SEMANTIC COLOR SYSTEM === */
488
+
489
+ /* Success color - Green */
490
+ --ifm-color-success-lightest: var(--ctp-mocha-sky);
491
+ --ifm-color-success-lighter: var(--ctp-mocha-teal);
492
+ --ifm-color-success-light: var(--ctp-mocha-sky);
493
+ --ifm-color-success: var(--ctp-mocha-green);
494
+ --ifm-color-success-rgb: var(--ctp-mocha-green-rgb);
495
+ --ifm-color-success-dark: var(--ctp-mocha-teal);
496
+ --ifm-color-success-darker: var(--ctp-mocha-sapphire);
497
+ --ifm-color-success-darkest: var(--ctp-mocha-blue);
498
+
499
+ /* Info color - Blue */
500
+ --ifm-color-info-lightest: var(--ctp-mocha-lavender);
501
+ --ifm-color-info-lighter: var(--ctp-mocha-sapphire);
502
+ --ifm-color-info-light: var(--ctp-mocha-sky);
503
+ --ifm-color-info: var(--ctp-mocha-blue);
504
+ --ifm-color-info-rgb: var(--ctp-mocha-blue-rgb);
505
+ --ifm-color-info-dark: var(--ctp-mocha-sapphire);
506
+ --ifm-color-info-darker: var(--ctp-mocha-lavender);
507
+ --ifm-color-info-darkest: var(--ctp-mocha-mauve);
508
+
509
+ /* Warning color - Yellow */
510
+ --ifm-color-warning-lightest: var(--ctp-mocha-peach);
511
+ --ifm-color-warning-lighter: var(--ctp-mocha-yellow);
512
+ --ifm-color-warning-light: var(--ctp-mocha-yellow);
513
+ --ifm-color-warning: var(--ctp-mocha-yellow);
514
+ --ifm-color-warning-rgb: var(--ctp-mocha-yellow-rgb);
515
+ --ifm-color-warning-dark: var(--ctp-mocha-peach);
516
+ --ifm-color-warning-darker: var(--ctp-mocha-red);
517
+ --ifm-color-warning-darkest: var(--ctp-mocha-maroon);
518
+
519
+ /* Danger color - Red */
520
+ --ifm-color-danger-lightest: var(--ctp-mocha-flamingo);
521
+ --ifm-color-danger-lighter: var(--ctp-mocha-maroon);
522
+ --ifm-color-danger-light: var(--ctp-mocha-peach);
523
+ --ifm-color-danger: var(--ctp-mocha-red);
524
+ --ifm-color-danger-rgb: var(--ctp-mocha-red-rgb);
525
+ --ifm-color-danger-dark: var(--ctp-mocha-maroon);
526
+ --ifm-color-danger-darker: var(--ctp-mocha-flamingo);
527
+ --ifm-color-danger-darkest: var(--ctp-mocha-pink);
528
+
529
+ /* === GRAYSCALE AND UI COLORS === */
530
+
531
+ /* Background colors */
532
+ --ifm-background-color: var(--ctp-mocha-base) !important;
533
+ --ifm-background-color-rgb: var(--ctp-mocha-base-rgb) !important;
534
+ --ifm-background-surface-color: var(--ctp-mocha-surface0) !important;
535
+ --ifm-hero-background-color: var(--ctp-mocha-mantle) !important;
536
+ --ifm-footer-background-color: var(--ctp-mocha-mantle) !important;
537
+
538
+ /* Component-specific background colors */
539
+ --ifm-navbar-background-color: var(--ctp-mocha-base) !important;
540
+ --ifm-navbar-search-input-color: var(--ifm-font-color-base);
541
+ --ifm-navbar-search-input-background-color: var(--ctp-mocha-surface0);
542
+ --ifm-table-stripe-background: var(--ctp-mocha-surface0) !important;
543
+ --ifm-pre-background: var(--ctp-mocha-surface0);
544
+ --ifm-alert-background-color: var(--ctp-mocha-surface1);
545
+ --ifm-card-background-color: var(--ctp-mocha-surface0);
546
+
547
+ /* Gray color scale */
548
+ --ifm-color-gray-0: var(--ctp-mocha-text);
549
+ --ifm-color-gray-100: var(--ctp-mocha-subtext0);
550
+ --ifm-color-gray-200: var(--ctp-mocha-overlay2);
551
+ --ifm-color-gray-300: var(--ctp-mocha-overlay1);
552
+ --ifm-color-gray-400: var(--ctp-mocha-overlay0);
553
+ --ifm-color-gray-500: var(--ctp-mocha-surface2);
554
+ --ifm-color-gray-600: var(--ctp-mocha-surface1);
555
+ --ifm-color-gray-700: var(--ctp-mocha-surface0);
556
+ --ifm-color-gray-800: var(--ctp-mocha-base);
557
+ --ifm-color-gray-900: var(--ctp-mocha-mantle);
558
+ --ifm-color-gray-1000: var(--ctp-mocha-crust);
559
+
560
+ /* emphasis colors */
561
+ --ifm-color-emphasis-0: var(--ctp-mocha-text) !important;
562
+ --ifm-color-emphasis-100: var(--ctp-mocha-subtext0) !important;
563
+ --ifm-color-emphasis-200: var(--ctp-mocha-overlay2) !important;
564
+ --ifm-color-emphasis-300: var(--ctp-mocha-overlay1) !important;
565
+ --ifm-color-emphasis-400: var(--ctp-mocha-overlay0) !important;
566
+ --ifm-color-emphasis-500: var(--ctp-mocha-surface2) !important;
567
+ --ifm-color-emphasis-600: var(--ctp-mocha-surface1) !important;
568
+ --ifm-color-emphasis-700: var(--ctp-mocha-surface0) !important;
569
+ --ifm-color-emphasis-800: var(--ctp-mocha-base) !important;
570
+ --ifm-color-emphasis-900: var(--ctp-mocha-mantle) !important;
571
+ --ifm-color-emphasis-1000: var(--ctp-mocha-crust) !important;
572
+
573
+ /* Text colors */
574
+ --ifm-font-color-base: var(--ctp-mocha-text);
575
+ --ifm-font-color-base-rgb: var(--ctp-mocha-text-rgb);
576
+ --ifm-font-color-secondary: var(--ctp-mocha-subtext1);
577
+ --ifm-font-color-tertiary: var(--ctp-mocha-subtext0);
578
+ --ifm-font-color-quaternary: var(--ctp-mocha-overlay2);
579
+
580
+ /* Content colors */
581
+ --ifm-color-content: var(--ctp-mocha-text) !important;
582
+ --ifm-color-content-secondary: var(--ctp-mocha-subtext0) !important;
583
+
584
+ /* Link colors */
585
+ --ifm-link-color: var(--ifm-color-primary);
586
+ --ifm-link-hover-color: var(--ifm-color-primary-darker);
587
+ --ifm-link-decoration: none;
588
+ --ifm-link-hover-decoration: underline;
589
+
590
+ /* Navigation/UI */
591
+ --ifm-navbar-link-color: var(--ctp-mocha-text);
592
+ --ifm-navbar-link-hover-color: var(--ifm-color-primary);
593
+ --ifm-menu-color: var(--ctp-mocha-subtext0);
594
+ --ifm-menu-color-active: var(--ctp-mocha-peach);
595
+ --ifm-menu-color-background-active: rgba(var(--ctp-mocha-peach-rgb), 0.1);
596
+ --ifm-menu-color-background-hover: rgba(var(--ctp-mocha-surface0-rgb), 0.5);
597
+ --ifm-toc-link-color: var(--ctp-mocha-subtext0);
598
+ --ifm-toc-link-color-active: var(--ctp-mocha-peach);
599
+ --ifm-toc-border-color: var(--ctp-mocha-crust) !important;
600
+
601
+ /* Code block */
602
+ --ifm-code-color: var(--ctp-mocha-red) !important;
603
+ --ifm-code-background: var(--ctp-mocha-surface0) !important;
604
+
605
+ /* Other UI elements */
606
+ --ifm-blockquote-color: var(--ctp-mocha-subtext0);
607
+ --ifm-blockquote-border-color: var(--ctp-mocha-peach);
608
+ --ifm-shadow-color: var(--ctp-mocha-surface1);
609
+ --ifm-shadow-color-rgb: var(--ctp-mocha-surface1-rgb);
610
+ --ifm-button-color: var(--ctp-mocha-crust);
611
+ --ifm-hover-overlay: rgba(var(--ctp-mocha-surface2-rgb), 0.5) !important;
612
+
613
+ /* Code highlighting */
614
+ --docusaurus-highlighted-code-line-bg: rgba(
615
+ var(--ctp-mocha-surface2-rgb),
616
+ 0.5
617
+ );
618
+ }