diff --git a/apps/svelte.dev/package.json b/apps/svelte.dev/package.json
index febfe8548f..654248784a 100644
--- a/apps/svelte.dev/package.json
+++ b/apps/svelte.dev/package.json
@@ -39,6 +39,7 @@
"do-not-zip": "^1.0.0",
"flexsearch": "^0.7.43",
"flru": "^1.0.2",
+ "icons": "workspace:*",
"port-authority": "^2.0.1",
"topojson-client": "^3.1.0",
"vitest": "^2.1.9",
diff --git a/apps/svelte.dev/src/lib/icons/arrow-left.svg b/apps/svelte.dev/src/lib/icons/arrow-left.svg
deleted file mode 100644
index ee413e3551..0000000000
--- a/apps/svelte.dev/src/lib/icons/arrow-left.svg
+++ /dev/null
@@ -1,11 +0,0 @@
-
diff --git a/apps/svelte.dev/src/lib/icons/bluesky-dark.svg b/apps/svelte.dev/src/lib/icons/bluesky-dark.svg
deleted file mode 100644
index 690f699a80..0000000000
--- a/apps/svelte.dev/src/lib/icons/bluesky-dark.svg
+++ /dev/null
@@ -1,3 +0,0 @@
-
diff --git a/apps/svelte.dev/src/lib/icons/chevron.svg b/apps/svelte.dev/src/lib/icons/chevron.svg
deleted file mode 100644
index 7334ed9673..0000000000
--- a/apps/svelte.dev/src/lib/icons/chevron.svg
+++ /dev/null
@@ -1,3 +0,0 @@
-
diff --git a/apps/svelte.dev/src/lib/icons/contents.svg b/apps/svelte.dev/src/lib/icons/contents.svg
deleted file mode 100644
index b24fac9f7a..0000000000
--- a/apps/svelte.dev/src/lib/icons/contents.svg
+++ /dev/null
@@ -1,29 +0,0 @@
-
-
\ No newline at end of file
diff --git a/apps/svelte.dev/src/lib/icons/discord-dark.svg b/apps/svelte.dev/src/lib/icons/discord-dark.svg
deleted file mode 100644
index 8a1029d2c4..0000000000
--- a/apps/svelte.dev/src/lib/icons/discord-dark.svg
+++ /dev/null
@@ -1 +0,0 @@
-
diff --git a/apps/svelte.dev/src/lib/icons/download-dark.svg b/apps/svelte.dev/src/lib/icons/download-dark.svg
deleted file mode 100644
index b769ca5914..0000000000
--- a/apps/svelte.dev/src/lib/icons/download-dark.svg
+++ /dev/null
@@ -1 +0,0 @@
-
diff --git a/apps/svelte.dev/src/lib/icons/download-light.svg b/apps/svelte.dev/src/lib/icons/download-light.svg
deleted file mode 100644
index a1f28e2b87..0000000000
--- a/apps/svelte.dev/src/lib/icons/download-light.svg
+++ /dev/null
@@ -1 +0,0 @@
-
diff --git a/apps/svelte.dev/src/lib/icons/external.svg b/apps/svelte.dev/src/lib/icons/external.svg
deleted file mode 100644
index 5a16c1ce92..0000000000
--- a/apps/svelte.dev/src/lib/icons/external.svg
+++ /dev/null
@@ -1,3 +0,0 @@
-
diff --git a/apps/svelte.dev/src/lib/icons/file-dark.svg b/apps/svelte.dev/src/lib/icons/file-dark.svg
deleted file mode 100644
index 1496d2264b..0000000000
--- a/apps/svelte.dev/src/lib/icons/file-dark.svg
+++ /dev/null
@@ -1,3 +0,0 @@
-
diff --git a/apps/svelte.dev/src/lib/icons/file-edit-inline-dark.svg b/apps/svelte.dev/src/lib/icons/file-edit-inline-dark.svg
deleted file mode 100644
index 4b7816bd33..0000000000
--- a/apps/svelte.dev/src/lib/icons/file-edit-inline-dark.svg
+++ /dev/null
@@ -1,3 +0,0 @@
-
diff --git a/apps/svelte.dev/src/lib/icons/file-edit.svg b/apps/svelte.dev/src/lib/icons/file-edit.svg
deleted file mode 100644
index faad58f4d8..0000000000
--- a/apps/svelte.dev/src/lib/icons/file-edit.svg
+++ /dev/null
@@ -1,3 +0,0 @@
-
diff --git a/apps/svelte.dev/src/lib/icons/file.svg b/apps/svelte.dev/src/lib/icons/file.svg
deleted file mode 100644
index 5ca191bd44..0000000000
--- a/apps/svelte.dev/src/lib/icons/file.svg
+++ /dev/null
@@ -1,3 +0,0 @@
-
diff --git a/apps/svelte.dev/src/lib/icons/github-dark.svg b/apps/svelte.dev/src/lib/icons/github-dark.svg
deleted file mode 100644
index 946addd279..0000000000
--- a/apps/svelte.dev/src/lib/icons/github-dark.svg
+++ /dev/null
@@ -1 +0,0 @@
-
diff --git a/apps/svelte.dev/src/lib/icons/lightbulb.svg b/apps/svelte.dev/src/lib/icons/lightbulb.svg
deleted file mode 100644
index f3c24132ee..0000000000
--- a/apps/svelte.dev/src/lib/icons/lightbulb.svg
+++ /dev/null
@@ -1 +0,0 @@
-
diff --git a/apps/svelte.dev/src/lib/icons/terminal.svg b/apps/svelte.dev/src/lib/icons/terminal.svg
deleted file mode 100644
index ece0700c41..0000000000
--- a/apps/svelte.dev/src/lib/icons/terminal.svg
+++ /dev/null
@@ -1,7 +0,0 @@
-
diff --git a/apps/svelte.dev/src/lib/icons/user-dark.svg b/apps/svelte.dev/src/lib/icons/user-dark.svg
deleted file mode 100644
index 91402ad157..0000000000
--- a/apps/svelte.dev/src/lib/icons/user-dark.svg
+++ /dev/null
@@ -1 +0,0 @@
-
diff --git a/apps/svelte.dev/src/routes/(authed)/playground/[id]/AppControls.svelte b/apps/svelte.dev/src/routes/(authed)/playground/[id]/AppControls.svelte
index 918b34fb32..87336ce167 100644
--- a/apps/svelte.dev/src/routes/(authed)/playground/[id]/AppControls.svelte
+++ b/apps/svelte.dev/src/routes/(authed)/playground/[id]/AppControls.svelte
@@ -272,12 +272,15 @@
&.login {
width: auto;
- background-image: url($lib/icons/user-light.svg);
- background-position: 0.4rem 50%;
- padding: 0 0.4rem 0 2.8rem;
-
- :root.dark & {
- background-image: url($lib/icons/user-dark.svg);
+ padding: 0 0.4rem;
+
+ &::before {
+ content: '';
+ width: 1.8rem;
+ height: 1.8rem;
+ margin: 0 0.5rem 0 0;
+ background: currentColor;
+ mask: url(icons/user) no-repeat 50% 50%;
}
}
}
diff --git a/apps/svelte.dev/src/routes/_home/Video.svelte b/apps/svelte.dev/src/routes/_home/Video.svelte
index e10b9a8e2a..d1614ed6f8 100644
--- a/apps/svelte.dev/src/routes/_home/Video.svelte
+++ b/apps/svelte.dev/src/routes/_home/Video.svelte
@@ -1,10 +1,10 @@