Last active 1744767328

Kagi Catppuccin Latte/Mocha Theme

jcrabapple's Avatar jcrabapple revised this gist 1744767328. Go to revision

1 file changed, 1 insertion, 1 deletion

kagi-catppuccin-mocha.css

@@ -338,7 +338,7 @@ input[type="date"] { color: var(--primary-600) !important; }
338 338 /* Optional: disable underline on title links */
339 339 .__sri-title .__sri_title_link { border-bottom: none; }
340 340
341 - #thread-sidebar-visible:checked~#sidebar-backdrop, .quick-settings, .quick-settings-footer, .promptOptionsSelector, .promptOptionsSelector .search-bar, .k_ui_dropdown_data_list, ._0_more_search_box, .dropdown .dd-list, .chat_bubble .actions, .citation {
341 + #thread-sidebar-visible:checked~#sidebar-backdrop, .quick-settings, .quick-settings-footer, .promptOptionsSelector, .promptOptionsSelector .search-bar, .k_ui_dropdown_data_list, ._0_more_search_box, .dropdown .dd-list, .chat_bubble .actions, .citation, .message-info, .thread-more-menu, .threads-pane {
342 342 background-color: var(--crust) !important;
343 343 }
344 344

jcrabapple's Avatar jcrabapple revised this gist 1744573641. Go to revision

1 file changed, 9 insertions, 1 deletion

kagi-catppuccin-mocha.css

@@ -338,6 +338,14 @@ input[type="date"] { color: var(--primary-600) !important; }
338 338 /* Optional: disable underline on title links */
339 339 .__sri-title .__sri_title_link { border-bottom: none; }
340 340
341 + #thread-sidebar-visible:checked~#sidebar-backdrop, .quick-settings, .quick-settings-footer, .promptOptionsSelector, .promptOptionsSelector .search-bar, .k_ui_dropdown_data_list, ._0_more_search_box, .dropdown .dd-list, .chat_bubble .actions, .citation {
342 + background-color: var(--crust) !important;
343 + }
344 +
345 + .team_badge {
346 + color: var(--crust);
347 + }
348 +
341 349 /* Desktop / Widescreen styles */
342 350 @media (min-width: 1280px) {
343 351 :root {
@@ -374,4 +382,4 @@ input[type="date"] { color: var(--primary-600) !important; }
374 382 }
375 383
376 384 #adv_search_btn:checked + #mainContent .search-form .landing-category-select { top: 85px; }
377 - }
385 + }

jcrabapple's Avatar jcrabapple revised this gist 1742599338. Go to revision

1 file changed, 35 insertions, 17 deletions

kagi-catppuccin-mocha.css

@@ -185,6 +185,25 @@
185 185 --onb_theme_light_preview_box: none; --onb_theme_moon_dark_preview_box: flex;
186 186 --k-tooltip-bg: rgba(30, 30, 46, .9); --k-tooltip-text: var(--text);
187 187 }
188 + .k_ui_toggle_switch input:checked~.k_ui_toggle_switch_bar:after {
189 + background-color: var(--surface0);
190 + border-color: var(--surface1);
191 + }
192 + .k_ui_toggle_switch input:checked~.k_ui_toggle_switch_bar {
193 + background: var(--green);
194 + border-color: var(--primary-25);
195 + }
196 + .tag-selector:hover {
197 + background: var(--surface1);
198 + }
199 + @media all and (min-device-width: 766px) {
200 + form#form {
201 + margin: 0;
202 + border: 1px var(--peach) solid;
203 + border-radius: 35px;
204 + padding: 12px 20px;
205 + }
206 + }
188 207 }
189 208
190 209 /* Base styles */
@@ -206,14 +225,6 @@ span.__domain-name, .widget-simple .__domain-name, .bg-p-50 { background-color:
206 225 /* Toggle switches */
207 226 .k_ui_toggle_switch.--enabled .k_ui_toggle_switch_bar { background: var(--primary-g-6); }
208 227 .k_ui_toggle_switch.--mini .k_ui_toggle_switch_bar { --border-color: var(--primary-g-6); }
209 - .k_ui_toggle_switch input:checked~.k_ui_toggle_switch_bar:after {
210 - background-color: var(--surface0);
211 - border-color: var(--surface1);
212 - }
213 - .k_ui_toggle_switch input:checked~.k_ui_toggle_switch_bar {
214 - background: var(--green);
215 - border-color: var(--primary-25);
216 - }
217 228
218 229 /* Tooltips and focus states */
219 230 .k-tooltip { background-color: var(--primary-100); }
@@ -282,7 +293,7 @@ header .header-btn:hover { color: var(--crust); }
282 293
283 294 .chat_bubble {
284 295 padding-block: 32px; position: relative; border: 2px solid var(--overlay0);
285 - border-radius: 25px; margin-top: 25px; padding: 20px; background-color: var(--crust);
296 + border-radius: 25px; margin-top: 25px; margin-bottom: 10px; padding: 20px; background-color: var(--crust);
286 297 }
287 298
288 299 .chat_bubble:focus-within:before, .chat_bubble:hover:before { background-color: unset !important; }
@@ -299,7 +310,7 @@ header .header-btn:hover { color: var(--crust); }
299 310 padding: 2px 5px; border-radius: 4px;
300 311 }
301 312
302 - #prompt-box { border-top: 2px solid var(--peach); }
313 + #prompt-box:before { border-top: 2px solid var(--peach); }
303 314 #dictation-button:hover { color: var(--crust); }
304 315
305 316 /* Form elements */
@@ -327,6 +338,17 @@ input[type="date"] { color: var(--primary-600) !important; }
327 338 /* Optional: disable underline on title links */
328 339 .__sri-title .__sri_title_link { border-bottom: none; }
329 340
341 + /* Desktop / Widescreen styles */
342 + @media (min-width: 1280px) {
343 + :root {
344 + --sidebar-width: 550px;
345 + }
346 +
347 + .sidebar-box > .threads-pane {
348 + min-width: 350px;
349 + }
350 + }
351 +
330 352 /* Mobile styles */
331 353 @media all and (max-device-width: 766px) {
332 354 .bg-p-50 { background-color: var(--surface0); }
@@ -341,13 +363,9 @@ input[type="date"] { color: var(--primary-600) !important; }
341 363 border: none; color: var(--primary); font-size: .875rem; height: 47px;
342 364 margin: 0; min-width: unset !important; padding: 0 8px; position: relative;
343 365 }
344 -
345 - @media (max-width: 1023.98px) {
346 - #thread-sidebar-visible:checked~#sidebar-backdrop {
347 - background-color: unset !important;
348 - }
349 - }
350 -
366 + #thread-sidebar-visible:checked~#sidebar-backdrop {
367 + background-color: unset !important;
368 + }
351 369
352 370 /* Navigation styles for mobile */
353 371 .landing_cat_buttons {

jcrabapple's Avatar jcrabapple revised this gist 1742593029. Go to revision

1 file changed, 1 deletion

kagi-catppuccin-mocha.css

@@ -80,7 +80,6 @@
80 80 --secondary: var(--base); --app-sidebar-item-border: rgba(255, 255, 255, .2);
81 81 --app-sidebar-link: rgba(255, 255, 255, .6); --app-sidebar-nav-item-bg_hover: var(--yellow);
82 82 --app-sidebar-nav-item-icon_hover: var(--base);
83 - --sidebar-width: 300px;
84 83
85 84 /* Search results */
86 85 --result-item-title-border: var(--peach); --result-item-title-border_hover: var(--primary-hover);

jcrabapple's Avatar jcrabapple revised this gist 1742592321. Go to revision

1 file changed, 16 insertions, 1 deletion

kagi-catppuccin-mocha.css

@@ -80,6 +80,7 @@
80 80 --secondary: var(--base); --app-sidebar-item-border: rgba(255, 255, 255, .2);
81 81 --app-sidebar-link: rgba(255, 255, 255, .6); --app-sidebar-nav-item-bg_hover: var(--yellow);
82 82 --app-sidebar-nav-item-icon_hover: var(--base);
83 + --sidebar-width: 300px;
83 84
84 85 /* Search results */
85 86 --result-item-title-border: var(--peach); --result-item-title-border_hover: var(--primary-hover);
@@ -206,6 +207,14 @@ span.__domain-name, .widget-simple .__domain-name, .bg-p-50 { background-color:
206 207 /* Toggle switches */
207 208 .k_ui_toggle_switch.--enabled .k_ui_toggle_switch_bar { background: var(--primary-g-6); }
208 209 .k_ui_toggle_switch.--mini .k_ui_toggle_switch_bar { --border-color: var(--primary-g-6); }
210 + .k_ui_toggle_switch input:checked~.k_ui_toggle_switch_bar:after {
211 + background-color: var(--surface0);
212 + border-color: var(--surface1);
213 + }
214 + .k_ui_toggle_switch input:checked~.k_ui_toggle_switch_bar {
215 + background: var(--green);
216 + border-color: var(--primary-25);
217 + }
209 218
210 219 /* Tooltips and focus states */
211 220 .k-tooltip { background-color: var(--primary-100); }
@@ -218,7 +227,6 @@ div.sidebar-box { background-color: var(--mantle) !important; }
218 227 .threads-pane .header { background: none !important; }
219 228 .sidebar-box>.tags-pane { background: none !important; }
220 229 .tag-selector:has(:checked) { background: var(--surface1) !important; }
221 - @media (min-width: 1280px) { .sidebar-box>.threads-pane { min-width: 200px; } }
222 230
223 231 /* Header & Navigation */
224 232 header { background: var(--crust) !important; }
@@ -334,6 +342,13 @@ input[type="date"] { color: var(--primary-600) !important; }
334 342 border: none; color: var(--primary); font-size: .875rem; height: 47px;
335 343 margin: 0; min-width: unset !important; padding: 0 8px; position: relative;
336 344 }
345 +
346 + @media (max-width: 1023.98px) {
347 + #thread-sidebar-visible:checked~#sidebar-backdrop {
348 + background-color: unset !important;
349 + }
350 + }
351 +
337 352
338 353 /* Navigation styles for mobile */
339 354 .landing_cat_buttons {

jcrabapple's Avatar jcrabapple revised this gist 1742585398. Go to revision

1 file changed, 63 insertions, 59 deletions

kagi-catppuccin-mocha.css

@@ -1,23 +1,23 @@
1 1 /* Catppuccin Theme for Kagi - With Theme Class Support */
2 2
3 - /* Core variables - Dark theme (Mocha) is default */
4 - :root, .theme_moon_dark {
5 - /* Catppuccin Mocha colors */
6 - --rosewater: #f5e0dc; --flamingo: #f2cdcd; --pink: #f5c2e7; --mauve: #cba6f7;
7 - --red: #f38ba8; --maroon: #eba0ac; --peach: #fab387; --yellow: #f9e2af;
8 - --green: #a6e3a1; --teal: #94e2d5; --sky: #89dceb; --sapphire: #74c7ec;
9 - --blue: #89b4fa; --lavender: #b4befe; --text: #cdd6f4; --subtext1: #bac2de;
10 - --subtext0: #a6adc8; --overlay2: #9399b2; --overlay1: #7f849c; --overlay0: #6c7086;
11 - --surface2: #585b70; --surface1: #45475a; --surface0: #313244; --base: #1e1e2e;
12 - --mantle: #181825; --crust: #11111b;
3 + /* Core variables - Light theme (Latte) is default */
4 + :root {
5 + /* Catppuccin Latte colors */
6 + --rosewater: #dc8a78; --flamingo: #dd7878; --pink: #ea76cb; --mauve: #8839ef;
7 + --red: #d20f39; --maroon: #e64553; --peach: #fe640b; --yellow: #df8e1d;
8 + --green: #40a02b; --teal: #179299; --sky: #04a5e5; --sapphire: #209fb5;
9 + --blue: #1e66f5; --lavender: #7287fd; --text: #4c4f69; --subtext1: #5c5f77;
10 + --subtext0: #6c6f85; --overlay2: #7c7f93; --overlay1: #8c8fa1; --overlay0: #9ca0b0;
11 + --surface2: #acb0be; --surface1: #bcc0cc; --surface0: #ccd0da; --base: #eff1f5;
12 + --mantle: #e6e9ef; --crust: #dce0e8;
13 13
14 - /* Set dark mode scheme and core UI variables */
15 - --color-scheme: dark;
16 - --app-bg: var(--base); --app-text: var(--text); --header-bg: var(--app-bg);
14 + /* Set light mode scheme and core UI variables */
15 + --color-scheme: light;
16 + --app-bg: var(--base); --app-text: var(--text); --header-bg: var(--crust);
17 17 --app-frame-bg: var(--app-bg); --landing-bg: var(--app-bg);
18 18 --app-bg-opac: rgba(30, 30, 46, 0); --bottom-bar-bg: var(--yellow);
19 19 --white: var(--text);
20 -
20 +
21 21 /* Derived color mappings */
22 22 --graphite: var(--base); --graphite-25: var(--overlay2); --graphite-50: var(--flamingo);
23 23 --graphite-70: var(--pink); --graphite-100: var(--mauve); --graphite-200: var(--red);
@@ -69,7 +69,7 @@
69 69 /* Inputs and buttons */
70 70 --color-search-input-border: var(--mauve); --color-search-input: var(--base);
71 71 --color-search-input-opac: var(--app-bg-opac); --color-danger: var(--red);
72 - --input-bg: var(--app-bg); --btn-primary-bg: var(--text); --btn-primary-text: var(--base);
72 + --input-bg: var(--app-bg); --btn-primary-bg: var(--mauve); --btn-primary-text: var(--crust);
73 73 --btn-primary-color: var(--base); --btn-group-bg: var(--base);
74 74
75 75 /* Navigation */
@@ -122,7 +122,7 @@
122 122 --doggo-color-1: var(--text); --doggo-bg-color: var(--app-bg); --doggo-stroke-color: var(--maroon);
123 123 --landing-page-clouds-opacity: 1; --quick-search-bg: var(--text); --quick-search-icon: var(--base);
124 124 --app-logo: var(--text); --app-logo-bg: var(--yellow); --filters-clear-btn-icon: var(--maroon);
125 - --filter-dd-bg: var(--surface2); --k-tooltip-bg: rgba(30, 30, 46, .9);
125 + --filter-dd-bg: var(--surface2); --k-tooltip-bg: rgba(220, 224, 232, 0.9);
126 126 --k-tooltip-text: var(--text); --dd-hover-bg: var(--mauve); --dd-hover-color: var(--text);
127 127 --dd-list-input-bg: var(--input-bg); --not-found-bubble-bg: var(--surface1);
128 128 --site_info_bg: var(--app-bg); --site_info_bottom_bg: var(--kagi-accent);
@@ -133,57 +133,57 @@
133 133 --code-p: var(--text); --background-color-sky: var(--sky);
134 134
135 135 /* Form elements */
136 - --checkbox-bg: var(--yellow); --checkbox-check: var(--base); --as-dd-border: var(--app-bg);
136 + --checkbox-bg: var(--mauve); --checkbox-check: var(--crust); --as-dd-border: var(--app-bg);
137 137 --dd-list-input-bg: var(--base); --icon-purple: var(--sky);
138 138
139 139 /* Onboarding elements */
140 - --onboarding_theme_options_dark_visibility: flex; --onboarding_theme_options_light_visibility: none;
141 - --onb_theme_light_preview_box: none; --onb_theme_calm_blue_preview_box: none;
142 - --onb_theme_royal_blue_preview_box: none; --onb_theme_moon_dark_preview_box: flex;
140 + --onboarding_theme_options_dark_visibility: none; --onboarding_theme_options_light_visibility: flex;
141 + --onb_theme_light_preview_box: flex; --onb_theme_calm_blue_preview_box: none;
142 + --onb_theme_royal_blue_preview_box: none; --onb_theme_moon_dark_preview_box: none;
143 143 --image_brightness: 100%;
144 144 }
145 145
146 - /* Light theme overrides - using Kagi's .theme_light class */
147 - .theme_light {
148 - /* Catppuccin Latte colors */
149 - --rosewater: #dc8a78; --flamingo: #dd7878; --pink: #ea76cb; --mauve: #8839ef;
150 - --red: #d20f39; --maroon: #e64553; --peach: #fe640b; --yellow: #df8e1d;
151 - --green: #40a02b; --teal: #179299; --sky: #04a5e5; --sapphire: #209fb5;
152 - --blue: #1e66f5; --lavender: #7287fd; --text: #4c4f69; --subtext1: #5c5f77;
153 - --subtext0: #6c6f85; --overlay2: #7c7f93; --overlay1: #8c8fa1; --overlay0: #9ca0b0;
154 - --surface2: #acb0be; --surface1: #bcc0cc; --surface0: #ccd0da; --base: #eff1f5;
155 - --mantle: #e6e9ef; --crust: #dce0e8;
146 + /* Dark theme overrides - using Kagi's .theme_moon_dark class */
147 + .theme_moon_dark {
148 + /* Catppuccin Mocha colors */
149 + --rosewater: #f5e0dc; --flamingo: #f2cdcd; --pink: #f5c2e7; --mauve: #cba6f7;
150 + --red: #f38ba8; --maroon: #eba0ac; --peach: #fab387; --yellow: #f9e2af;
151 + --green: #a6e3a1; --teal: #94e2d5; --sky: #89dceb; --sapphire: #74c7ec;
152 + --blue: #89b4fa; --lavender: #b4befe; --text: #cdd6f4; --subtext1: #bac2de;
153 + --subtext0: #a6adc8; --overlay2: #9399b2; --overlay1: #7f849c; --overlay0: #6c7086;
154 + --surface2: #585b70; --surface1: #45475a; --surface0: #313244; --base: #1e1e2e;
155 + --mantle: #181825; --crust: #11111b;
156 156
157 - /* Light mode adjustments */
158 - --color-scheme: light; --app-bg: var(--base); --app-text: var(--text);
159 - --header-bg: var(--crust); --inline-widget-bg: var(--surface0);
160 - --inline-widget-hover-bg: var(--surface1); --btn-primary-bg: var(--mauve);
161 - --btn-primary-text: var(--crust); --checkbox-bg: var(--mauve); --checkbox-check: var(--crust);
162 - --onboarding_theme_options_dark_visibility: none; --onboarding_theme_options_light_visibility: flex;
163 - --onb_theme_light_preview_box: flex; --onb_theme_moon_dark_preview_box: none;
164 - --k-tooltip-bg: rgba(220, 224, 232, 0.9); --k-tooltip-text: var(--text);
157 + /* Dark mode adjustments */
158 + --color-scheme: dark; --app-bg: var(--base); --app-text: var(--text);
159 + --header-bg: var(--app-bg); --inline-widget-bg: var(--surface0);
160 + --inline-widget-hover-bg: var(--surface1); --btn-primary-bg: var(--text);
161 + --btn-primary-text: var(--base); --checkbox-bg: var(--yellow); --checkbox-check: var(--base);
162 + --onboarding_theme_options_dark_visibility: flex; --onboarding_theme_options_light_visibility: none;
163 + --onb_theme_light_preview_box: none; --onb_theme_moon_dark_preview_box: flex;
164 + --k-tooltip-bg: rgba(30, 30, 46, .9); --k-tooltip-text: var(--text);
165 165 }
166 166
167 - /* System preference override - only applies when no theme class is set */
168 - @media (prefers-color-scheme: light) {
169 - :root:not(.theme_moon_dark):not(.theme_light):not(.theme_calm_blue):not(.theme_royal_blue) {
170 - /* Catppuccin Latte colors */
171 - --rosewater: #dc8a78; --flamingo: #dd7878; --pink: #ea76cb; --mauve: #8839ef;
172 - --red: #d20f39; --maroon: #e64553; --peach: #fe640b; --yellow: #df8e1d;
173 - --green: #40a02b; --teal: #179299; --sky: #04a5e5; --sapphire: #209fb5;
174 - --blue: #1e66f5; --lavender: #7287fd; --text: #4c4f69; --subtext1: #5c5f77;
175 - --subtext0: #6c6f85; --overlay2: #7c7f93; --overlay1: #8c8fa1; --overlay0: #9ca0b0;
176 - --surface2: #acb0be; --surface1: #bcc0cc; --surface0: #ccd0da; --base: #eff1f5;
177 - --mantle: #e6e9ef; --crust: #dce0e8;
178 -
179 - /* Light mode adjustments */
180 - --color-scheme: light; --app-bg: var(--base); --app-text: var(--text);
181 - --header-bg: var(--crust); --inline-widget-bg: var(--surface0);
182 - --inline-widget-hover-bg: var(--surface1); --btn-primary-bg: var(--mauve);
183 - --btn-primary-text: var(--crust); --checkbox-bg: var(--mauve); --checkbox-check: var(--crust);
184 - --onboarding_theme_options_dark_visibility: none; --onboarding_theme_options_light_visibility: flex;
185 - --onb_theme_light_preview_box: flex; --onb_theme_moon_dark_preview_box: none;
186 - --k-tooltip-bg: rgba(220, 224, 232, 0.9); --k-tooltip-text: var(--text);
167 + /* System preference override - only applies to .theme_moon_dark_conditional class */
168 + @media (prefers-color-scheme: dark) {
169 + .theme_moon_dark_conditional {
170 + /* Catppuccin Mocha colors */
171 + --rosewater: #f5e0dc; --flamingo: #f2cdcd; --pink: #f5c2e7; --mauve: #cba6f7;
172 + --red: #f38ba8; --maroon: #eba0ac; --peach: #fab387; --yellow: #f9e2af;
173 + --green: #a6e3a1; --teal: #94e2d5; --sky: #89dceb; --sapphire: #74c7ec;
174 + --blue: #89b4fa; --lavender: #b4befe; --text: #cdd6f4; --subtext1: #bac2de;
175 + --subtext0: #a6adc8; --overlay2: #9399b2; --overlay1: #7f849c; --overlay0: #6c7086;
176 + --surface2: #585b70; --surface1: #45475a; --surface0: #313244; --base: #1e1e2e;
177 + --mantle: #181825; --crust: #11111b;
178 +
179 + /* Dark mode adjustments */
180 + --color-scheme: dark; --app-bg: var(--base); --app-text: var(--text);
181 + --header-bg: var(--app-bg); --inline-widget-bg: var(--surface0);
182 + --inline-widget-hover-bg: var(--surface1); --btn-primary-bg: var(--text);
183 + --btn-primary-text: var(--base); --checkbox-bg: var(--yellow); --checkbox-check: var(--base);
184 + --onboarding_theme_options_dark_visibility: flex; --onboarding_theme_options_light_visibility: none;
185 + --onb_theme_light_preview_box: none; --onb_theme_moon_dark_preview_box: flex;
186 + --k-tooltip-bg: rgba(30, 30, 46, .9); --k-tooltip-text: var(--text);
187 187 }
188 188 }
189 189
@@ -215,6 +215,10 @@ span.__domain-name, .widget-simple .__domain-name, .bg-p-50 { background-color:
215 215 div.sidebar-box { background-color: var(--mantle) !important; }
216 216 .thread-list > li:is(.active, :hover, :focus-within) { background-color: var(--surface1) !important; }
217 217 #thread-sidebar-collapse:hover { color: var(--crust); }
218 + .threads-pane .header { background: none !important; }
219 + .sidebar-box>.tags-pane { background: none !important; }
220 + .tag-selector:has(:checked) { background: var(--surface1) !important; }
221 + @media (min-width: 1280px) { .sidebar-box>.threads-pane { min-width: 200px; } }
218 222
219 223 /* Header & Navigation */
220 224 header { background: var(--crust) !important; }
@@ -338,4 +342,4 @@ input[type="date"] { color: var(--primary-600) !important; }
338 342 }
339 343
340 344 #adv_search_btn:checked + #mainContent .search-form .landing-category-select { top: 85px; }
341 - }
345 + }

jcrabapple's Avatar jcrabapple revised this gist 1740583978. Go to revision

No changes

jcrabapple's Avatar jcrabapple revised this gist 1740583953. Go to revision

No changes

jcrabapple's Avatar jcrabapple revised this gist 1740583152. Go to revision

1 file changed, 293 insertions, 557 deletions

kagi-catppuccin-mocha.css

@@ -1,605 +1,341 @@
1 - :root {
2 - --rosewater: #f5e0dc;
3 - --flamingo: #f2cdcd;
4 - --pink: #f5c2e7;
5 - --mauve: #cba6f7;
6 - --red: #f38ba8;
7 - --maroon: #eba0ac;
8 - --peach: #fab387;
9 - --yellow: #f9e2af;
10 - --green: #a6e3a1;
11 - --teal: #94e2d5;
12 - --sky: #89dceb;
13 - --sapphire: #74c7ec;
14 - --blue: #89b4fa;
15 - --lavender: #b4befe;
16 - --text: #cdd6f4;
17 - --subtext1: #bac2de;
18 - --subtext0: #a6adc8;
19 - --overlay2: #9399b2;
20 - --overlay1: #7f849c;
21 - --overlay0: #6c7086;
22 - --surface2: #585b70;
23 - --surface1: #45475a;
24 - --surface0: #313244;
25 - --base: #1e1e2e;
26 - --mantle: #181825;
27 - --crust: #11111b;
28 -
29 - --graphite: var(--base);
30 - --graphite-25: var(--overlay2); /* Changed from --rosewater to --overlay2 */
31 - --graphite-50: var(--flamingo);
32 - --graphite-70: var(--pink);
33 - --graphite-100: var(--mauve);
34 - --graphite-200: var(--red);
35 - --graphite-300: var(--maroon);
36 - --graphite-400: var(--peach);
37 - --graphite-500: var(--yellow);
38 - --graphite-600: var(--green);
39 - --graphite-700: var(--teal);
40 - --graphite-800: var(--sky);
41 - --graphite-850: var(--sapphire);
42 - --graphite-900: var(--blue);
43 - --graphite-950: var(--lavender);
44 - --graphite-1000: var(--text);
45 - --chrome-25: var(--rosewater);
46 - --chrome-50: var(--flamingo);
47 - --chrome-70: var(--pink);
48 - --chrome-100: var(--mauve);
49 - --chrome-200: var(--red);
50 - --chrome-300: var(--maroon);
51 - --chrome-400: var(--peach);
52 - --chrome-500: var(--yellow);
53 - --chrome-600: var(--green);
54 - --chrome-700: var(--teal);
55 - --chrome-800: var(--sky);
56 - --chrome-850: var(--sapphire);
57 - --chrome-900: var(--blue);
58 - --chrome-950: var(--lavender);
59 - --chrome-1000: var(--text);
60 - --purple-300: var(--lavender);
61 - --purple-400: var(--blue);
62 - --purple-500: var(--sapphire);
63 - --purple-600: var(--sky);
64 - --purple-800: var(--teal);
65 - --purple-900: var(--green);
66 - --yellow: var(--yellow);
67 - --warning: var(--peach);
68 - --info: var(--sky);
69 - --danger: var(--red);
70 - --success: var(--green);
71 - --calm: var(--surface0);
72 - --blue: var(--blue);
73 - --color-scheme: light;
74 - --app-bg: var(--base);
75 - --link: var(--purple-600);
76 - --app-frame-bg: var(--app-bg);
77 - --landing-bg: var(--app-bg);
78 - --app-bg-opac: rgba(30, 30, 46, 0);
79 - --bottom-bar-bg: var(--yellow);
1 + /* Catppuccin Theme for Kagi - With Theme Class Support */
2 +
3 + /* Core variables - Dark theme (Mocha) is default */
4 + :root, .theme_moon_dark {
5 + /* Catppuccin Mocha colors */
6 + --rosewater: #f5e0dc; --flamingo: #f2cdcd; --pink: #f5c2e7; --mauve: #cba6f7;
7 + --red: #f38ba8; --maroon: #eba0ac; --peach: #fab387; --yellow: #f9e2af;
8 + --green: #a6e3a1; --teal: #94e2d5; --sky: #89dceb; --sapphire: #74c7ec;
9 + --blue: #89b4fa; --lavender: #b4befe; --text: #cdd6f4; --subtext1: #bac2de;
10 + --subtext0: #a6adc8; --overlay2: #9399b2; --overlay1: #7f849c; --overlay0: #6c7086;
11 + --surface2: #585b70; --surface1: #45475a; --surface0: #313244; --base: #1e1e2e;
12 + --mantle: #181825; --crust: #11111b;
13 +
14 + /* Set dark mode scheme and core UI variables */
15 + --color-scheme: dark;
16 + --app-bg: var(--base); --app-text: var(--text); --header-bg: var(--app-bg);
17 + --app-frame-bg: var(--app-bg); --landing-bg: var(--app-bg);
18 + --app-bg-opac: rgba(30, 30, 46, 0); --bottom-bar-bg: var(--yellow);
80 19 --white: var(--text);
81 - --app-text: var(--text);
82 - --kagi-highlight: var(--yellow);
83 - --beta-tag-bg: var(--yellow);
84 - --beta-tag-text: var(--base);
85 - --beta-tag-inside-corners: var(--maroon);
86 - --kagi-light-cream: var(--rosewater);
87 - --kagi-accent: var(--surface1);
88 - --kagi-sky: var(--sky);
89 - --kagi-sky-b: var(--sapphire);
90 - --kagi-sky-i: var(--sky);
91 - --kagi-orange: var(--maroon);
92 - --resultsummary-highlight: var(--surface2);
93 - --resultsummary-highlight_text: var(--text);
94 - --kagi-graphite: var(--text);
95 - --kagi-graphite-s: var(--overlay2);
96 - --kagi-graphite-text: var(--base);
97 - --kagi-graphite-ia: var(--text);
20 +
21 + /* Derived color mappings */
22 + --graphite: var(--base); --graphite-25: var(--overlay2); --graphite-50: var(--flamingo);
23 + --graphite-70: var(--pink); --graphite-100: var(--mauve); --graphite-200: var(--red);
24 + --graphite-300: var(--maroon); --graphite-400: var(--peach); --graphite-500: var(--yellow);
25 + --graphite-600: var(--green); --graphite-700: var(--teal); --graphite-800: var(--sky);
26 + --graphite-850: var(--sapphire); --graphite-900: var(--blue); --graphite-950: var(--lavender);
27 + --graphite-1000: var(--text);
28 +
29 + /* Chrome palette */
30 + --chrome-25: var(--rosewater); --chrome-50: var(--flamingo); --chrome-70: var(--pink);
31 + --chrome-100: var(--mauve); --chrome-200: var(--red); --chrome-300: var(--maroon);
32 + --chrome-400: var(--peach); --chrome-500: var(--yellow); --chrome-600: var(--green);
33 + --chrome-700: var(--teal); --chrome-800: var(--sky); --chrome-850: var(--sapphire);
34 + --chrome-900: var(--blue); --chrome-950: var(--lavender); --chrome-1000: var(--text);
35 +
36 + /* Purple palette */
37 + --purple-300: var(--lavender); --purple-400: var(--blue); --purple-500: var(--sapphire);
38 + --purple-600: var(--sky); --purple-800: var(--teal); --purple-900: var(--green);
39 +
40 + /* Primary palette (mirrors graphite) */
41 + --primary: var(--text); --primary-25: var(--overlay2); --primary-50: var(--flamingo);
42 + --primary-70: var(--pink); --primary-100: var(--mauve); --primary-200: var(--red);
43 + --primary-300: var(--maroon); --primary-400: var(--peach); --primary-500: var(--yellow);
44 + --primary-600: var(--green); --primary-700: var(--teal); --primary-800: var(--sky);
45 + --primary-850: var(--sapphire); --primary-900: var(--blue); --primary-950: var(--lavender);
46 + --primary-1000: var(--text); --primary-g: var(--text); --primary-g-2: var(--red);
47 + --primary-g-6: var(--green); --primary-g-8: var(--sky); --primary-300-solid: var(--maroon);
48 +
49 + /* Functional colors */
50 + --warning: var(--peach); --info: var(--sky); --danger: var(--red); --success: var(--green);
51 + --calm: var(--surface0); --link: var(--purple-600); --primary-hover: var(--purple-600);
52 + --primary-hover-hover: var(--purple-500); --primary-visited: var(--teal);
53 +
54 + /* UI Elements */
55 + --kagi-highlight: var(--yellow); --beta-tag-bg: var(--yellow); --beta-tag-text: var(--base);
56 + --beta-tag-inside-corners: var(--maroon); --kagi-light-cream: var(--rosewater);
57 + --kagi-accent: var(--surface1); --kagi-sky: var(--sky); --kagi-sky-b: var(--sapphire);
58 + --kagi-sky-i: var(--sky); --kagi-orange: var(--maroon);
59 + --resultsummary-highlight: var(--surface2); --resultsummary-highlight_text: var(--text);
60 + --kagi-graphite: var(--text); --kagi-graphite-s: var(--overlay2);
61 + --kagi-graphite-text: var(--base); --kagi-graphite-ia: var(--text);
98 62 --kagi-graphite-ia-color: var(--base);
99 - --inner-shadow: rgba(0, 0, 0, .05);
100 - --settings-app-inner-bg: var(--app-bg);
101 - --box-shadow: rgba(0, 0, 0, .09);
102 - --box-shadow-15: rgba(0, 0, 0, .15);
103 - --primary: var(--text);
104 - --primary-25: var(--overlay2); /* Changed from --rosewater to --overlay2 */
105 - --primary-50: var(--flamingo);
106 - --primary-70: var(--pink);
107 - --primary-100: var(--mauve);
108 - --primary-200: var(--red);
109 - --primary-300: var(--maroon);
110 - --primary-400: var(--peach);
111 - --primary-500: var(--yellow);
112 - --primary-600: var(--green);
113 - --primary-700: var(--teal);
114 - --primary-800: var(--sky);
115 - --primary-850: var(--sapphire);
116 - --primary-900: var(--blue);
117 - --primary-950: var(--lavender);
118 - --primary-1000: var(--text);
119 - --primary-g: var(--text);
120 - --primary-g-2: var(--red);
121 - --primary-g-6: var(--green);
122 - --primary-g-8: var(--sky);
123 - --primary-300-solid: var(--maroon);
124 - --secondary: var(--base);
125 - --color-search-input-border: var(--mauve);
126 - --color-search-input: var(--base);
127 - --header-bg: var(--app-bg);
128 - --header-bg-opac: var(--app-bg-opac);
129 - --color-search-input-opac: var(--app-bg-opac);
130 - --color-danger: var(--red);
131 - --primary-hover: var(--purple-600);
132 - --primary-hover-hover: var(--purple-500);
133 - --primary-visited: var(--teal);
134 - --input-bg: var(--app-bg);
135 - --doggo-color-1: var(--text);
136 - --doggo-bg-color: var(--app-bg);
137 - --doggo-stroke-color: var(--maroon);
138 - --landing-page-clouds-opacity: 1;
139 - --quick-search-bg: var(--text);
140 - --quick-search-icon: var(--base);
141 - --app-logo: var(--text);
142 - --app-logo-bg: var(--yellow);
143 - --filters-clear-btn-icon: var(--maroon);
144 - --filter-dd-bg: var(--surface2);
145 - --k-tooltip-bg: rgba(30, 30, 46, .9);
146 - --k-tooltip-text: var(--text);
147 - --dd-hover-bg: var(--mauve);
148 - --dd-hover-color: var(--text);
149 - --dd-list-input-bg: var(--input-bg);
150 - --not-found-bubble-bg: var(--surface1);
151 - --app-sidebar-item-border: rgba(255, 255, 255, .2);
152 - --app-sidebar-link: rgba(255, 255, 255, .6);
153 - --app-sidebar-nav-item-bg_hover: var(--yellow);
154 - --app-sidebar-nav-item-icon_hover: var(--base);
63 +
64 + /* Shadows */
65 + --inner-shadow: rgba(0, 0, 0, .05); --settings-app-inner-bg: var(--app-bg);
66 + --box-shadow: rgba(0, 0, 0, .09); --box-shadow-15: rgba(0, 0, 0, .15);
155 67 --ranked-box-shadow: rgba(0, 0, 0, .25);
156 - --ranked-box-connection-secure: var(--green);
157 - --ranked-box-connection-insecure: var(--red);
158 - --ranked-box-tracker-desc-danger: var(--red);
68 +
69 + /* Inputs and buttons */
70 + --color-search-input-border: var(--mauve); --color-search-input: var(--base);
71 + --color-search-input-opac: var(--app-bg-opac); --color-danger: var(--red);
72 + --input-bg: var(--app-bg); --btn-primary-bg: var(--text); --btn-primary-text: var(--base);
73 + --btn-primary-color: var(--base); --btn-group-bg: var(--base);
74 +
75 + /* Navigation */
76 + --nav_n_se_line: var(--yellow); --nav_n_im_line: var(--blue); --nav_n_vi_line: var(--red);
77 + --nav_n_ne_line: var(--mauve); --nav_n_ma_line: var(--green);
78 +
79 + /* Sidebar */
80 + --secondary: var(--base); --app-sidebar-item-border: rgba(255, 255, 255, .2);
81 + --app-sidebar-link: rgba(255, 255, 255, .6); --app-sidebar-nav-item-bg_hover: var(--yellow);
82 + --app-sidebar-nav-item-icon_hover: var(--base);
83 +
84 + /* Search results */
85 + --result-item-title-border: var(--peach); --result-item-title-border_hover: var(--primary-hover);
86 + --result-item-title-visited-border: var(--pink); --result-rank-icon-stroke_promoted: var(--text);
87 + --result-item-highlight: var(--sky); --search-result-content-text: var(--text);
88 + --search-result-url-link: var(--green); --search-result-title: var(--text);
89 + --search-result-title-hover: var(--primary-hover); --search-result-date-bg: var(--surface0);
90 + --search-result-date-new-bg: var(--base); --search-result-date-new: var(--sky);
91 +
92 + /* Domain ratings */
93 + --domain-rank-icon-color-ban: var(--red); --domain-rank-icon-color-lower: var(--red);
94 + --domain-rank-icon-color-normal: var(--red); --domain-rank-icon-color-higher: var(--red);
95 + --domain-rank-icon-color-boosted: var(--red); --domain-rank-icon-color-trackers: var(--peach);
96 + --domain-rank-icon-color-trackers-hover: var(--maroon); --domain-rank-icon-color-scam: var(--peach);
97 + --domain-rank-icon-color-scam-hover: var(--maroon); --ranked-box-connection-secure: var(--green);
98 + --ranked-box-connection-insecure: var(--red); --ranked-box-tracker-desc-danger: var(--red);
159 99 --ranked-box-tracker-desc-clear: var(--green);
160 - --site_info_bg: var(--app-bg);
161 - --site_info_bottom_bg: var(--kagi-accent);
162 - --result-item-title-border: var(--peach);
163 - --result-item-title-border_hover: var(--primary-hover);
164 - --result-item-title-visited-border: var(--pink);
165 - --result-rank-icon-stroke_promoted: var(--text);
166 - --result-item-highlight: var(--sky);
167 - --search-result-content-text: var(--text); /* Changed from --teal */
168 - --search-result-url-link: var(--green);
169 - --search-result-title: var(--text);
170 - --search-result-title-hover: var(--primary-hover);
171 - --search-result-date-bg: var(--surface0);
172 - --search-result-date-new-bg: var(--base);
173 - --search-result-date-new: var(--sky);
174 - --domain-rank-icon-color-ban: var(--red);
175 - --domain-rank-icon-color-lower: var(--red);
176 - --domain-rank-icon-color-normal: var(--red);
177 - --domain-rank-icon-color-higher: var(--red);
178 - --domain-rank-icon-color-boosted: var(--red);
179 - --domain-rank-icon-color-trackers: var(--peach);
180 - --domain-rank-icon-color-trackers-hover: var(--maroon);
181 - --domain-rank-icon-color-scam: var(--peach);
182 - --domain-rank-icon-color-scam-hover: var(--maroon);
183 - --inline-header-title: var(--text); /* Changed from --teal */
184 - --inline-widget-bg: var(--surface0);
185 - --inline-widget-hover-bg: var(--surface1);
186 - --inline-header-border: var(--red);
187 - --inline-domain-tag-bg: var(--pink);
188 - --related-item-bg: var(--surface0);
189 - --related-item-hover-bg: var(--surface1);
190 - --video-item-bg: var(--surface0);
100 +
101 + /* Inline content */
102 + --inline-header-title: var(--text); --inline-widget-bg: var(--surface0);
103 + --inline-widget-hover-bg: var(--surface1); --inline-header-border: var(--red);
104 + --inline-domain-tag-bg: var(--pink); --related-item-bg: var(--surface0);
105 + --related-item-hover-bg: var(--surface1); --video-item-bg: var(--surface0);
191 106 --auto-sugg-bg_hover: var(--surface0);
192 - --provider-breakdown_server: var(--sky);
193 - --provider-breakdown_client: var(--peach);
194 - --provider-breakdown_speed1: var(--yellow);
195 - --provider-breakdown_speed2: var(--red);
196 - --provider-breakdown_speed3: var(--red);
197 - --widget-progress_bar: var(--text);
198 - --translate-fc_icon: var(--text);
199 - --rating-star_background: var(--surface1);
200 - --wiki-content-links: var(--text);
201 - --m_sri_gap_color: var(--surface1);
202 - --btn-primary-bg: var(--text);
203 - --btn-primary-text: var(--base);
204 - --btn-primary-color: var(--base);
205 - --btn-group-bg: var(--base);
107 +
108 + /* Provider breakdown */
109 + --provider-breakdown_server: var(--sky); --provider-breakdown_client: var(--peach);
110 + --provider-breakdown_speed1: var(--yellow); --provider-breakdown_speed2: var(--red);
111 + --provider-breakdown_speed3: var(--red); --widget-progress_bar: var(--text);
112 + --translate-fc_icon: var(--text); --rating-star_background: var(--surface1);
113 + --wiki-content-links: var(--text); --m_sri_gap_color: var(--surface1);
114 +
115 + /* AI chat */
116 + --ai_chat_buble_a_bg: var(--kagi-accent); --ai_chat_buble_q_bg: var(--app-bg);
117 + --ai_chat_buble_dd_q_bg: var(--kagi-accent); --ai_chat_buble_dd_a_bg: var(--surface1);
118 + --ai_chat_buble_a_text: var(--app-text); --ai_chat_buble_q_text: var(--app-text);
119 + --ai_chat_input_text: var(--app-text); --ai_chat_input_button: var(--teal);
120 +
121 + /* Misc UI elements */
122 + --doggo-color-1: var(--text); --doggo-bg-color: var(--app-bg); --doggo-stroke-color: var(--maroon);
123 + --landing-page-clouds-opacity: 1; --quick-search-bg: var(--text); --quick-search-icon: var(--base);
124 + --app-logo: var(--text); --app-logo-bg: var(--yellow); --filters-clear-btn-icon: var(--maroon);
125 + --filter-dd-bg: var(--surface2); --k-tooltip-bg: rgba(30, 30, 46, .9);
126 + --k-tooltip-text: var(--text); --dd-hover-bg: var(--mauve); --dd-hover-color: var(--text);
127 + --dd-list-input-bg: var(--input-bg); --not-found-bubble-bg: var(--surface1);
128 + --site_info_bg: var(--app-bg); --site_info_bottom_bg: var(--kagi-accent);
129 +
130 + /* Code syntax highlighting */
131 + --code-bg: var(--base); --code-border: var(--overlay0); --code-k: var(--mauve);
132 + --code-s: var(--green); --code-cm-c1: var(--maroon); --code-n: var(--mauve);
133 + --code-p: var(--text); --background-color-sky: var(--sky);
134 +
135 + /* Form elements */
136 + --checkbox-bg: var(--yellow); --checkbox-check: var(--base); --as-dd-border: var(--app-bg);
137 + --dd-list-input-bg: var(--base); --icon-purple: var(--sky);
138 +
139 + /* Onboarding elements */
140 + --onboarding_theme_options_dark_visibility: flex; --onboarding_theme_options_light_visibility: none;
141 + --onb_theme_light_preview_box: none; --onb_theme_calm_blue_preview_box: none;
142 + --onb_theme_royal_blue_preview_box: none; --onb_theme_moon_dark_preview_box: flex;
206 143 --image_brightness: 100%;
207 - --nav_n_se_line: var(--yellow);
208 - --nav_n_im_line: var(--blue);
209 - --nav_n_vi_line: var(--red);
210 - --nav_n_ne_line: var(--mauve);
211 - --nav_n_ma_line: var(--green);
212 - --onboarding_theme_options_dark_visibility: flex;
213 - --onboarding_theme_options_light_visibility: none;
214 - --onb_theme_light_preview_box: none;
215 - --onb_theme_calm_blue_preview_box: none;
216 - --onb_theme_royal_blue_preview_box: none;
217 - --onb_theme_moon_dark_preview_box: flex;
218 - --code-bg: var(--base);
219 - --code-border: var(--overlay0);
220 - --code-k: var(--mauve);
221 - --code-s: var(--green);
222 - --code-cm-c1: var(--maroon);
223 - --code-n: var(--mauve);
224 - --code-p: var(--text);
225 - --background-color-sky: var(--sky);
226 - --ai_chat_buble_a_bg: var(--kagi-accent);
227 - --ai_chat_buble_q_bg: var(--app-bg);
228 - --ai_chat_buble_dd_q_bg: var(--kagi-accent);
229 - --ai_chat_buble_dd_a_bg: var(--surface1);
230 - --ai_chat_buble_a_text: var(--app-text);
231 - --ai_chat_buble_q_text: var(--app-text);
232 - --ai_chat_input_text: var(--app-text);
233 - --ai_chat_input_button: var(--teal);
234 - --checkbox-bg: var(--yellow);
235 - --checkbox-check: var(--base);
236 - --as-dd-border: var(--app-bg);
237 - --dd-list-input-bg: var(--base);
238 - --icon-purple: var(--sky);
239 144 }
240 145
241 - /* Light theme variables */
146 + /* Light theme overrides - using Kagi's .theme_light class */
147 + .theme_light {
148 + /* Catppuccin Latte colors */
149 + --rosewater: #dc8a78; --flamingo: #dd7878; --pink: #ea76cb; --mauve: #8839ef;
150 + --red: #d20f39; --maroon: #e64553; --peach: #fe640b; --yellow: #df8e1d;
151 + --green: #40a02b; --teal: #179299; --sky: #04a5e5; --sapphire: #209fb5;
152 + --blue: #1e66f5; --lavender: #7287fd; --text: #4c4f69; --subtext1: #5c5f77;
153 + --subtext0: #6c6f85; --overlay2: #7c7f93; --overlay1: #8c8fa1; --overlay0: #9ca0b0;
154 + --surface2: #acb0be; --surface1: #bcc0cc; --surface0: #ccd0da; --base: #eff1f5;
155 + --mantle: #e6e9ef; --crust: #dce0e8;
156 +
157 + /* Light mode adjustments */
158 + --color-scheme: light; --app-bg: var(--base); --app-text: var(--text);
159 + --header-bg: var(--crust); --inline-widget-bg: var(--surface0);
160 + --inline-widget-hover-bg: var(--surface1); --btn-primary-bg: var(--mauve);
161 + --btn-primary-text: var(--crust); --checkbox-bg: var(--mauve); --checkbox-check: var(--crust);
162 + --onboarding_theme_options_dark_visibility: none; --onboarding_theme_options_light_visibility: flex;
163 + --onb_theme_light_preview_box: flex; --onb_theme_moon_dark_preview_box: none;
164 + --k-tooltip-bg: rgba(220, 224, 232, 0.9); --k-tooltip-text: var(--text);
165 + }
166 +
167 + /* System preference override - only applies when no theme class is set */
242 168 @media (prefers-color-scheme: light) {
243 - :root {
244 - /* Catppuccin Latte (light) colors */
245 - --rosewater: #dc8a78;
246 - --flamingo: #dd7878;
247 - --pink: #ea76cb;
248 - --mauve: #8839ef;
249 - --red: #d20f39;
250 - --maroon: #e64553;
251 - --peach: #fe640b;
252 - --yellow: #df8e1d;
253 - --green: #40a02b;
254 - --teal: #179299;
255 - --sky: #04a5e5;
256 - --sapphire: #209fb5;
257 - --blue: #1e66f5;
258 - --lavender: #7287fd;
259 - --text: #4c4f69;
260 - --subtext1: #5c5f77;
261 - --subtext0: #6c6f85;
262 - --overlay2: #7c7f93;
263 - --overlay1: #8c8fa1;
264 - --overlay0: #9ca0b0;
265 - --surface2: #acb0be;
266 - --surface1: #bcc0cc;
267 - --surface0: #ccd0da;
268 - --base: #eff1f5;
269 - --mantle: #e6e9ef;
270 - --crust: #dce0e8;
271 -
272 - /* Set light mode scheme */
273 - --color-scheme: light;
274 -
275 - /* Adjust specific UI elements for light mode */
276 - --app-bg: var(--base);
277 - --app-text: var(--text);
278 - --header-bg: var(--crust);
279 - --inline-widget-bg: var(--surface0);
280 - --inline-widget-hover-bg: var(--surface1);
281 -
282 - /* Ensure proper contrast for buttons and interactive elements */
283 - --btn-primary-bg: var(--mauve);
284 - --btn-primary-text: var(--crust);
285 - --checkbox-bg: var(--mauve);
286 - --checkbox-check: var(--crust);
169 + :root:not(.theme_moon_dark):not(.theme_light):not(.theme_calm_blue):not(.theme_royal_blue) {
170 + /* Catppuccin Latte colors */
171 + --rosewater: #dc8a78; --flamingo: #dd7878; --pink: #ea76cb; --mauve: #8839ef;
172 + --red: #d20f39; --maroon: #e64553; --peach: #fe640b; --yellow: #df8e1d;
173 + --green: #40a02b; --teal: #179299; --sky: #04a5e5; --sapphire: #209fb5;
174 + --blue: #1e66f5; --lavender: #7287fd; --text: #4c4f69; --subtext1: #5c5f77;
175 + --subtext0: #6c6f85; --overlay2: #7c7f93; --overlay1: #8c8fa1; --overlay0: #9ca0b0;
176 + --surface2: #acb0be; --surface1: #bcc0cc; --surface0: #ccd0da; --base: #eff1f5;
177 + --mantle: #e6e9ef; --crust: #dce0e8;
178 +
179 + /* Light mode adjustments */
180 + --color-scheme: light; --app-bg: var(--base); --app-text: var(--text);
181 + --header-bg: var(--crust); --inline-widget-bg: var(--surface0);
182 + --inline-widget-hover-bg: var(--surface1); --btn-primary-bg: var(--mauve);
183 + --btn-primary-text: var(--crust); --checkbox-bg: var(--mauve); --checkbox-check: var(--crust);
184 + --onboarding_theme_options_dark_visibility: none; --onboarding_theme_options_light_visibility: flex;
185 + --onb_theme_light_preview_box: flex; --onb_theme_moon_dark_preview_box: none;
186 + --k-tooltip-bg: rgba(220, 224, 232, 0.9); --k-tooltip-text: var(--text);
287 187 }
288 188 }
289 189
290 - /* Media query for mobile devices */
291 -
292 - @media all and (max-device-width: 766px) {
293 - .bg-p-50 {
294 - background-color: var(--surface0); /* Use a darker color on mobile */
295 - }
296 - .landing-category-select .landing_cat_buttons > button.--active {
297 - align-items: center;
298 - border: 1px solid var(--primary-400);
299 - border-radius: 999px;
300 - color: var(--primary-500);
301 - display: flex;
302 - flex-shrink: 0;
303 - gap: 4px;
304 - padding: 8px 16px;
305 - background-color: var(--surface0);
306 - }
307 -
308 - .landing-category-select .landing_cat_buttons>button {
309 - border: none;
310 - color:var(--primary);
311 - font-size:.875rem;
312 - height:47px;
313 - margin:0;
314 - min-width:unset!important;
315 - padding:0 8px;
316 - position:relative
317 - }
318 - .landing-category-select .landing_cat_buttons>button.--active {
319 - font-weight:700;
320 - }
321 - .landing-category-select .landing_cat_buttons>button.n_se.--active,
322 - .landing-category-select .landing_cat_buttons>button.n_se:hover {
323 - border-bottom:2px solid var(--nav_n_ma_line) !important;
324 - }
325 - .landing-category-select .landing_cat_buttons>button.n_im.--active,
326 - .landing-category-select .landing_cat_buttons>button.n_im:hover {
327 - border-bottom:2px solid var(--nav_n_vi_line) !important;
328 - }
329 - .landing-category-select .landing_cat_buttons>button.n_vi.--active,
330 - .landing-category-select .landing_cat_buttons>button.n_vi:hover {
331 - border-bottom:2px solid var(--nav_n_vi_line) !important;
332 - }
333 - .landing-category-select .landing_cat_buttons>button.n_ne.--active,
334 - .landing-category-select .landing_cat_buttons>button.n_ne:hover {
335 - border-bottom:2px solid var(--nav_n_ne_line) !important;
336 - }
337 - .landing-category-select .landing_cat_buttons>button.n_ma.--active,
338 - .landing-category-select .landing_cat_buttons>button.n_ma:hover {
339 - border-bottom:2px solid var(--nav_n_ma_line) !important;
340 - }
341 - .landing_cat_buttons {
342 - border-bottom:none !important;
343 - display:flex;
344 - justify-content:space-between;
345 - width:100%;
346 - }
347 - .search-result, .sri-group {
348 - border-bottom: unset !important;
349 - }
350 - .inline-content+.search-result, .inline-content+.sri-group {
351 - border-top: unset !important;
352 - }
353 - }
190 + /* Base styles */
191 + body { font-family: Poppins, sans-serif !important; }
354 192
355 - /* Desktop CSS */
193 + /* Dropdowns */
194 + .k_ui_dropdown_data_list .list_items > ._0_k_ui_dropdown_li:hover { background-color: var(--surface2) !important; }
195 + .dropdown .dd-list ._0_list_items li:hover { color: var(--overlay0) !important; }
196 + .sidebar-filter-nav-form .sidebar-filter-nav > .filter-item .dd-list li:hover { color: var(--overlay0) !important; }
197 + .k_ui_dropdown_data_list .list_items > div:hover { background-color: unset !important; color: unset !important; outline: none; text-decoration: none; }
356 198
357 - body {
358 - font-family: Poppins, sans-serif !important;
199 + /* Domain badges & tags */
200 + span.domain, #chat_box .chat_bubble .sources .domain {
201 + background-color: var(--surface0) !important; color: var(--text) !important;
202 + padding: 2px 4px !important; border-radius: 3px !important;
359 203 }
204 + span.__domain-name, .widget-simple .__domain-name, .bg-p-50 { background-color: var(--surface0) !important; }
360 205
361 - .k_ui_dropdown_data_list .list_items > ._0_k_ui_dropdown_li:hover {
362 - background-color: var(--surface2) !important; /* Darker background */
363 - /* Optionally, keep the original text color or slightly lighten it if needed */
364 - /* color: var(--text); */
365 - }
206 + /* Toggle switches */
207 + .k_ui_toggle_switch.--enabled .k_ui_toggle_switch_bar { background: var(--primary-g-6); }
208 + .k_ui_toggle_switch.--mini .k_ui_toggle_switch_bar { --border-color: var(--primary-g-6); }
366 209
367 - div.sidebar-box {
368 - background-color: var(--mantle) !important; /* Darker background for sidebar-box */
369 - }
210 + /* Tooltips and focus states */
211 + .k-tooltip { background-color: var(--primary-100); }
212 + :focus-visible { border-radius: 5px; outline: 2px solid var(--peach); }
370 213
371 - .thread-list > li:is(.active, :hover, :focus-within) {
372 - background-color: var(--surface1) !important; /* Darker background for active, hover, and focus-within states */
373 - }
214 + /* Sidebar */
215 + div.sidebar-box { background-color: var(--mantle) !important; }
216 + .thread-list > li:is(.active, :hover, :focus-within) { background-color: var(--surface1) !important; }
217 + #thread-sidebar-collapse:hover { color: var(--crust); }
374 218
375 - .bg-p-50 {
376 - background-color: var(--primary-50); /* Or whichever color you currently have set */
377 - }
219 + /* Header & Navigation */
220 + header { background: var(--crust) !important; }
221 + header .header-btn:hover { color: var(--crust); }
378 222
379 - .dropdown .dd-list ._0_list_items li:hover {
380 - color: var(--overlay0) !important; /* Darker font color on hover */
223 + .landing-category-select .landing_cat_buttons > button.--active {
224 + align-items: center; border: 1px solid var(--primary-400); border-radius: 999px;
225 + color: var(--primary-500); display: flex; flex-shrink: 0; gap: 4px;
226 + padding: 8px 16px; background-color: var(--surface0); font-weight: 700;
381 227 }
382 228
383 - .sidebar-filter-nav-form .sidebar-filter-nav > .filter-item .dd-list li:hover {
384 - color: var(--overlay0) !important; /* Darker text color on hover */
229 + .landing-category-select .landing_cat_buttons > button {
230 + border-bottom: 2px solid transparent; color: var(--primary);
231 + font-size: .875rem; height: 47px; margin: 0; min-width: unset !important;
232 + padding: 0 8px; position: relative;
385 233 }
386 234
387 - span.domain {
388 - background-color: var(--surface0) !important; /* Use a darker background color */
389 - color: var(--text) !important; /* Ensure text color is readable against the background */
390 - padding: 2px 4px !important; /* Optional: Add some padding for visual comfort */
391 - border-radius: 3px !important; /* Optional: Add a slight border radius */
392 - }
235 + /* Navigation button highlights */
236 + .landing-category-select .landing_cat_buttons > button.n_se.--active,
237 + .landing-category-select .landing_cat_buttons > button.n_se:hover { border-bottom: 2px solid var(--nav_n_ma_line) !important; }
238 + .landing-category-select .landing_cat_buttons > button.n_im.--active,
239 + .landing-category-select .landing_cat_buttons > button.n_im:hover { border-bottom: 2px solid var(--nav_n_vi_line) !important; }
240 + .landing-category-select .landing_cat_buttons > button.n_vi.--active,
241 + .landing-category-select .landing_cat_buttons > button.n_vi:hover { border-bottom: 2px solid var(--nav_n_vi_line) !important; }
242 + .landing-category-select .landing_cat_buttons > button.n_ne.--active,
243 + .landing-category-select .landing_cat_buttons > button.n_ne:hover { border-bottom: 2px solid var(--nav_n_ne_line) !important; }
244 + .landing-category-select .landing_cat_buttons > button.n_ma.--active,
245 + .landing-category-select .landing_cat_buttons > button.n_ma:hover { border-bottom: 2px solid var(--nav_n_ma_line) !important; }
393 246
394 - #chat_box .chat_bubble .sources .domain {
395 - background-color: var(--surface0); /* Darker background color */
396 - color: var(--text); /* Ensure readable text color */
397 - padding: 1px 3px; /* Optional: Adjust padding as needed */
398 - border-radius: 3px; /* Optional: Add a slight border-radius */
247 + .landing_cat_buttons {
248 + border-bottom: 1px solid var(--primary-200); display: flex;
249 + justify-content: space-between; width: 100%; padding-bottom: 10px;
399 250 }
400 251
401 - span.__domain-name, .prompt-options button:hover, .prompt-options label:hover, .promptOptionsSelector .custom-assistants li.option:hover, .promptOptionsSelector .default-assistants li.option.focus, .promptOptionsSelector .default-assistants li.option:hover, .promptOptionsSelector .custom-assistants span a:hover, .promptOptionsSelector .custom-assistants li.option.focus, .widget-simple .__domain-name, .bg-p-50 {
402 - background-color: var(--surface0) !important;
403 - }
252 + #adv_search_btn:checked + #mainContent .search-form .landing-category-select { top: 65px; }
404 253
405 - .message-info li .value {
406 - background-color: var(--surface0); /* Darker background color */
407 - color: var(--text); /* Ensure readable text color */
408 - padding: 2px 5px; /* Optional: Add some padding */
409 - border-radius: 4px; /* Optional: Add a border-radius */
410 - }
254 + /* Prompt & Chat styles */
255 + .prompt-options button:hover, .prompt-options label:hover,
256 + .promptOptionsSelector .custom-assistants li.option:hover,
257 + .promptOptionsSelector .default-assistants li.option.focus,
258 + .promptOptionsSelector .default-assistants li.option:hover,
259 + .promptOptionsSelector .custom-assistants span a:hover,
260 + .promptOptionsSelector .custom-assistants li.option.focus,
261 + .prompt-options label:hover, .prompt-options button:hover { background-color: unset !important; }
411 262
412 - #chat_box .chat_bubble .content sup {
413 - background-color: var(--surface1); /* Darker background color */
414 - color: var(--text); /* Ensure readable text color */
415 - }
263 + .promptOptionsSelector .custom-assistants li.option,
264 + .promptOptionsSelector .default-assistants li.option { color: var(--text); }
416 265
417 - #chat_box .chat_bubble .content sup:hover {
418 - background-color: var(--surface2); /* Slightly lighter on hover */
266 + /* Chat box styling */
267 + #chat_box > div:nth-child(1), [aria-label="You said:"] {
268 + background-color: var(--surface0) !important; padding: 20px !important;
269 + border: 2px solid var(--overlay0) !important; border-radius: 25px !important;
419 270 }
420 271
421 - .landing-category-select .landing_cat_buttons > button.--active {
422 - align-items: center;
423 - border: 1px solid var(--primary-400);
424 - border-radius: 999px;
425 - color: var(--primary-500);
426 - display: flex;
427 - flex-shrink: 0;
428 - gap: 4px;
429 - padding: 8px 16px;
430 - background-color: var(--surface0);
272 + .chat_bubble {
273 + padding-block: 32px; position: relative; border: 2px solid var(--overlay0);
274 + border-radius: 25px; margin-top: 25px; padding: 20px; background-color: var(--crust);
431 275 }
432 276
433 - .landing-category-select .landing_cat_buttons>button {
434 - border-bottom:2px solid transparent;
435 - color:var(--primary);
436 - font-size:.875rem;
437 - height:47px;
438 - margin:0;
439 - min-width:unset!important;
440 - padding:0 8px;
441 - position:relative
442 - }
443 - .landing-category-select .landing_cat_buttons>button.--active {
444 - font-weight:700
445 - }
446 - .landing-category-select .landing_cat_buttons>button.n_se.--active,
447 - .landing-category-select .landing_cat_buttons>button.n_se:hover {
448 - border-bottom:2px solid var(--nav_n_ma_line) !important;
449 - }
450 - .landing-category-select .landing_cat_buttons>button.n_im.--active,
451 - .landing-category-select .landing_cat_buttons>button.n_im:hover {
452 - border-bottom:2px solid var(--nav_n_vi_line) !important;
453 - }
454 - .landing-category-select .landing_cat_buttons>button.n_vi.--active,
455 - .landing-category-select .landing_cat_buttons>button.n_vi:hover {
456 - border-bottom:2px solid var(--nav_n_vi_line) !important;
457 - }
458 - .landing-category-select .landing_cat_buttons>button.n_ne.--active,
459 - .landing-category-select .landing_cat_buttons>button.n_ne:hover {
460 - border-bottom:2px solid var(--nav_n_ne_line) !important;
461 - }
462 - .landing-category-select .landing_cat_buttons>button.n_ma.--active,
463 - .landing-category-select .landing_cat_buttons>button.n_ma:hover {
464 - border-bottom:2px solid var(--nav_n_ma_line) !important;
465 - }
466 - .landing_cat_buttons {
467 - border-bottom:1px solid var(--primary-200);
468 - display:flex;
469 - justify-content:space-between;
470 - width:100%
471 - }
277 + .chat_bubble:focus-within:before, .chat_bubble:hover:before { background-color: unset !important; }
278 + .chat_bubble .actions { display: inline-flex !important; gap: 8px !important; flex-direction: row !important; }
279 + #chat_box .chat_bubble .actions [data-action]:is(a,button):hover { background: var(--surface1); }
472 280
473 - ._0_filters-clear-btn {
474 - color: var(--crust) !important;
281 + #chat_box .chat_bubble .content sup {
282 + background-color: var(--surface1); color: var(--text);
475 283 }
284 + #chat_box .chat_bubble .content sup:hover { background-color: var(--surface2); }
476 285
477 - ._0_filters-clear-btn i svg {
478 - color: var(--base) !important;
286 + .message-info li .value {
287 + background-color: var(--surface0); color: var(--text);
288 + padding: 2px 5px; border-radius: 4px;
479 289 }
480 290
481 - #adv_search_btn:checked + #mainContent .search-form .landing-category-select {
482 - top: 85px;
483 - }
291 + #prompt-box { border-top: 2px solid var(--peach); }
292 + #dictation-button:hover { color: var(--crust); }
484 293
485 - .landing_cat_buttons {
486 - padding-bottom: 10px;
487 - }
294 + /* Form elements */
295 + input[type="date"] { color: var(--primary-600) !important; }
296 + ._0_filters-clear-btn { color: var(--crust) !important; }
297 + ._0_filters-clear-btn i svg { color: var(--base) !important; }
298 + ._0_copied_tooltip { left: -45px; }
488 299
489 - ._0_copied_tooltip {
490 - left: -45px;
491 - }
300 + /* Upload items */
301 + #uploadedItems .item .type, #uploadedItems .item .icon, #uploadedItems .item .name { color: var(--crust); }
302 + #form .uploadLabel:hover { color: var(--crust); }
303 + .POI-item-back .text { color: var(--crust); }
304 + #popover-privacy > p:nth-child(3) > span > i { color: var(--crust) !important; }
492 305
493 - .k_ui_toggle_switch.--enabled .k_ui_toggle_switch_bar {
494 - background: var(--primary-g-6);
495 - }
306 + /* Search results */
307 + .search-result, .sri-group { border-bottom: unset !important; }
308 + .inline-content+.search-result, .inline-content+.sri-group { border-top: unset !important; }
309 + .s-f-w.--active .search_area { padding: 10px !important; }
496 310
497 - .k_ui_toggle_switch.--mini .k_ui_toggle_switch_bar {
498 - --border-color: var(--primary-g-6);
499 - }
500 - input[type="date"] {
501 - color: var(--primary-600) !important;
502 - }
503 - .sidebar-filter-nav-form .sidebar-filter-nav > .filter-item .dd-list li:hover {
504 - color: unset !important;
505 - }
506 - .dropdown .dd-list .checked.inner-label:hover {
507 - color: var(--crust) !important;
508 - }
509 - .dropdown .dd-list .inner-label:hover {
510 - color: var(--crust);
511 - }
512 - .k_ui_dropdown_data_list .list_items > div:hover {
513 - background-color: unset !important;
514 - color: unset !important;
515 - outline: none;
516 - text-decoration: none;
517 - }
518 - #uploadedItems .item .type, #uploadedItems .item .icon, #uploadedItems .item .name {
519 - color: var(--crust);
520 - }
521 - #form .uploadLabel:hover {
522 - color: var(--crust);
523 - }
524 - .POI-item-back .text {
525 - color: var(--crust);
526 - }
527 - .k-tooltip {
528 - background-color: var(--primary-100);
529 - }
530 - #adv_search_btn:checked + #mainContent .search-form .landing-category-select {
531 - top: 65px;
532 - }
533 - header {
534 - background: var(--crust) !important;
535 - }
536 - .prompt-options label:hover {
537 - background-color: unset !important;
538 - }
539 - .prompt-options button:hover {
540 - background-color: unset !important;
541 - }
542 - #chat_box .chat_bubble .actions [data-action]:is(a,button):hover {
543 - background: var(--surface1);
544 - }
545 - #dictation-button:hover {
546 - color: var(--crust);
311 + .main-center-box>* {
312 + margin-inline: auto; max-width: 850px;
313 + padding-inline: 16px; width: 100%;
547 314 }
548 315
549 - .chat_bubble:focus-within:before,.chat_bubble:hover:before {
550 - background-color: unset !important;
551 - }
316 + /* Optional: disable underline on title links */
317 + .__sri-title .__sri_title_link { border-bottom: none; }
552 318
553 - #popover-privacy > p:nth-child(3) > span > i {
554 - color: var(--crust) !important;
555 - }
556 - .main-center-box>* {
557 - margin-inline: auto;
558 - max-width: 850px;
559 - padding-inline: 16px;
560 - width: 100%;
561 - }
562 - #chat_box > div:nth-child(1), [aria-label="You said:"] {
563 - background-color: var(--surface0) !important;
564 - padding: 20px !important;
565 - border: 2px solid var(--overlay0) !important;
566 - border-radius: 25px !important;
567 - }
568 - .chat_bubble {
569 - padding-block: 32px;
570 - position: relative;
571 - border: 2px solid var(--overlay0);
572 - border-radius: 25px;
573 - margin-top: 25px;
574 - padding: 20px;
575 - background-color: var(--crust);
576 - }
577 - #prompt-box {
578 - border-top: 2px solid var(--peach);
579 - }
580 - :focus-visible {
581 - border-radius: 5px;
582 - outline: 2px solid var(--peach);
583 - }
584 - .s-f-w.--active .search_area {
585 - padding: 10px !important;
586 - }
587 - .chat_bubble .actions {
588 - display: inline-flex !important;
589 - gap: 8px !important;
590 - flex-direction: row !important;
591 - }
592 - #thread-sidebar-collapse:hover {
593 - color: var(--crust);
594 - }
595 - header .header-btn:hover {
596 - color: var(--crust);
597 - }
598 - .promptOptionsSelector .custom-assistants li.option, .promptOptionsSelector .default-assistants li.option {
599 - color: var(--text);
600 - }
319 + /* Mobile styles */
320 + @media all and (max-device-width: 766px) {
321 + .bg-p-50 { background-color: var(--surface0); }
322 +
323 + .landing-category-select .landing_cat_buttons > button.--active {
324 + align-items: center; border: 1px solid var(--primary-400); border-radius: 999px;
325 + color: var(--primary-500); display: flex; flex-shrink: 0; gap: 4px;
326 + padding: 8px 16px; background-color: var(--surface0); font-weight: 700;
327 + }
601 328
602 - /* OPTIONAL disable underline on title links in search result */
603 - .__sri-title .__sri_title_link {
604 - border-bottom: none;
329 + .landing-category-select .landing_cat_buttons > button {
330 + border: none; color: var(--primary); font-size: .875rem; height: 47px;
331 + margin: 0; min-width: unset !important; padding: 0 8px; position: relative;
332 + }
333 +
334 + /* Navigation styles for mobile */
335 + .landing_cat_buttons {
336 + border-bottom: none !important; display: flex;
337 + justify-content: space-between; width: 100%;
338 + }
339 +
340 + #adv_search_btn:checked + #mainContent .search-form .landing-category-select { top: 85px; }
605 341 }

jcrabapple's Avatar jcrabapple revised this gist 1740573874. Go to revision

1 file changed, 47 insertions, 30 deletions

kagi-catppuccin-mocha.css

@@ -238,36 +238,53 @@
238 238 --icon-purple: var(--sky);
239 239 }
240 240
241 - @media (prefers-color-scheme: dark) {
242 - :root {
243 - --rosewater: #f5e0dc;
244 - --flamingo: #f2cdcd;
245 - --pink: #f5c2e7;
246 - --mauve: #cba6f7;
247 - --red: #f38ba8;
248 - --maroon: #eba0ac;
249 - --peach: #fab387;
250 - --yellow: #f9e2af;
251 - --green: #a6e3a1;
252 - --teal: #94e2d5;
253 - --sky: #89dceb;
254 - --sapphire: #74c7ec;
255 - --blue: #89b4fa;
256 - --lavender: #b4befe;
257 - --text: #cdd6f4;
258 - --subtext1: #bac2de;
259 - --subtext0: #a6adc8;
260 - --overlay2: #9399b2;
261 - --overlay1: #7f849c;
262 - --overlay0: #6c7086;
263 - --surface2: #585b70;
264 - --surface1: #45475a;
265 - --surface0: #313244;
266 - --base: #1e1e2e;
267 - --mantle: #181825;
268 - --crust: #11111b;
269 - --color-scheme: dark;
270 - }
241 + /* Light theme variables */
242 + @media (prefers-color-scheme: light) {
243 + :root {
244 + /* Catppuccin Latte (light) colors */
245 + --rosewater: #dc8a78;
246 + --flamingo: #dd7878;
247 + --pink: #ea76cb;
248 + --mauve: #8839ef;
249 + --red: #d20f39;
250 + --maroon: #e64553;
251 + --peach: #fe640b;
252 + --yellow: #df8e1d;
253 + --green: #40a02b;
254 + --teal: #179299;
255 + --sky: #04a5e5;
256 + --sapphire: #209fb5;
257 + --blue: #1e66f5;
258 + --lavender: #7287fd;
259 + --text: #4c4f69;
260 + --subtext1: #5c5f77;
261 + --subtext0: #6c6f85;
262 + --overlay2: #7c7f93;
263 + --overlay1: #8c8fa1;
264 + --overlay0: #9ca0b0;
265 + --surface2: #acb0be;
266 + --surface1: #bcc0cc;
267 + --surface0: #ccd0da;
268 + --base: #eff1f5;
269 + --mantle: #e6e9ef;
270 + --crust: #dce0e8;
271 +
272 + /* Set light mode scheme */
273 + --color-scheme: light;
274 +
275 + /* Adjust specific UI elements for light mode */
276 + --app-bg: var(--base);
277 + --app-text: var(--text);
278 + --header-bg: var(--crust);
279 + --inline-widget-bg: var(--surface0);
280 + --inline-widget-hover-bg: var(--surface1);
281 +
282 + /* Ensure proper contrast for buttons and interactive elements */
283 + --btn-primary-bg: var(--mauve);
284 + --btn-primary-text: var(--crust);
285 + --checkbox-bg: var(--mauve);
286 + --checkbox-check: var(--crust);
287 + }
271 288 }
272 289
273 290 /* Media query for mobile devices */
Newer Older