diff --git a/src/css/injected.scss b/src/css/injected.scss
index 30204cc5..ffd35f06 100644
--- a/src/css/injected.scss
+++ b/src/css/injected.scss
@@ -444,6 +444,7 @@ ul.magicDelete > li.deleting {
.addedButton svg {
margin: 6px;
fill: var(--theme-primary);
+ color: var(--theme-primary);
}
#menu,
.sub,
diff --git a/src/interface/components/icons/LucideMoon.svelte b/src/interface/components/icons/LucideMoon.svelte
new file mode 100644
index 00000000..7b679166
--- /dev/null
+++ b/src/interface/components/icons/LucideMoon.svelte
@@ -0,0 +1,17 @@
+
+
+
diff --git a/src/interface/components/icons/LucideSun.svelte b/src/interface/components/icons/LucideSun.svelte
new file mode 100644
index 00000000..1914ef63
--- /dev/null
+++ b/src/interface/components/icons/LucideSun.svelte
@@ -0,0 +1,25 @@
+
+
+
diff --git a/src/interface/pages/themeCreator.svelte b/src/interface/pages/themeCreator.svelte
index 48261bd2..d9a49b46 100644
--- a/src/interface/pages/themeCreator.svelte
+++ b/src/interface/pages/themeCreator.svelte
@@ -28,6 +28,8 @@
import { themeUpdates } from '../hooks/ThemeUpdates'
import { CloseThemeCreator } from '@/plugins/built-in/themes/ThemeCreator'
import ThemeBlobImage from '@/interface/components/themes/ThemeBlobImage.svelte'
+ import LucideMoon from '@/interface/components/icons/LucideMoon.svelte'
+ import LucideSun from '@/interface/components/icons/LucideSun.svelte'
const { themeID } = $props<{ themeID: string }>()
const themeManager = ThemeManager.getInstance();
@@ -253,19 +255,23 @@
{:else if item.type === 'lightDarkToggle'}
{/if}
diff --git a/src/lib/icons/lucideMoon.ts b/src/lib/icons/lucideMoon.ts
new file mode 100644
index 00000000..fd880246
--- /dev/null
+++ b/src/lib/icons/lucideMoon.ts
@@ -0,0 +1,6 @@
+/**
+ * Lucide "moon" icon (https://lucide.dev/icons/moon, ISC License).
+ */
+export const LUCIDE_MOON_ICON_SVG = `
+
+`.trim();
diff --git a/src/lib/icons/lucideSun.ts b/src/lib/icons/lucideSun.ts
new file mode 100644
index 00000000..be2f252d
--- /dev/null
+++ b/src/lib/icons/lucideSun.ts
@@ -0,0 +1,15 @@
+/**
+ * Lucide "sun" icon (https://lucide.dev/icons/sun, ISC License).
+ * Thin strokes — reads clearly as a sun, not a gear.
+ */
+export const LUCIDE_SUN_ICON_SVG = `
+
+
+
+
+
+
+
+
+
+`.trim();
diff --git a/src/seqta/ui/AddBetterSEQTAElements.ts b/src/seqta/ui/AddBetterSEQTAElements.ts
index ca01d6da..e572e5bd 100644
--- a/src/seqta/ui/AddBetterSEQTAElements.ts
+++ b/src/seqta/ui/AddBetterSEQTAElements.ts
@@ -14,6 +14,8 @@ import stringToHTML from "@/seqta/utils/stringToHTML";
import { settingsState } from "@/seqta/utils/listeners/SettingsState";
import { updateAllColors } from "./colors/Manager";
import { delay } from "@/seqta/utils/delay";
+import { LUCIDE_MOON_ICON_SVG } from "@/lib/icons/lucideMoon";
+import { LUCIDE_SUN_ICON_SVG } from "@/lib/icons/lucideSun";
let cachedUserInfo: any = null;
@@ -413,14 +415,14 @@ function GetLightDarkModeString() {
}
async function addDarkLightToggle(parent?: Element) {
- const SUN_ICON_SVG = /* html */ ``;
- const MOON_ICON_SVG = /* html */ ``;
+ const SUN_ICON_SVG = LUCIDE_SUN_ICON_SVG;
+ const MOON_ICON_SVG = LUCIDE_MOON_ICON_SVG;
const toggleTarget = parent ?? document.getElementById("content")!;
toggleTarget.append(
stringToHTML(/* html */ `
`).firstChild!,