diff --git a/src/Toolkit/tests/Fixtures/Kernel.php b/src/Toolkit/tests/Fixtures/Kernel.php
index 0559630917e..440fe8ed79e 100644
--- a/src/Toolkit/tests/Fixtures/Kernel.php
+++ b/src/Toolkit/tests/Fixtures/Kernel.php
@@ -67,6 +67,15 @@ protected function configureContainer(ContainerConfigurator $container): void
'defaults' => [],
]);
+ // Kit icons are vendored under tests/Fixtures/icons to render offline.
+ // To re-import: flip `on_demand`/`auto_lock` on, run the suite once, revert.
+ $container->extension('ux_icons', [
+ 'icon_dir' => __DIR__.'/icons',
+ 'iconify' => [
+ 'on_demand' => false,
+ ],
+ ]);
+
$container->services()
->set(SecurityTwigStubExtension::class)
->tag('twig.extension')
diff --git a/src/Toolkit/tests/Fixtures/icons/flowbite/adjustments-horizontal-outline.svg b/src/Toolkit/tests/Fixtures/icons/flowbite/adjustments-horizontal-outline.svg
new file mode 100644
index 00000000000..47d9f7efa9c
--- /dev/null
+++ b/src/Toolkit/tests/Fixtures/icons/flowbite/adjustments-horizontal-outline.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/src/Toolkit/tests/Fixtures/icons/flowbite/adjustments-vertical-outline.svg b/src/Toolkit/tests/Fixtures/icons/flowbite/adjustments-vertical-outline.svg
new file mode 100644
index 00000000000..64dbf885e97
--- /dev/null
+++ b/src/Toolkit/tests/Fixtures/icons/flowbite/adjustments-vertical-outline.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/src/Toolkit/tests/Fixtures/icons/flowbite/arrow-left-to-bracket-outline.svg b/src/Toolkit/tests/Fixtures/icons/flowbite/arrow-left-to-bracket-outline.svg
new file mode 100644
index 00000000000..29a497189de
--- /dev/null
+++ b/src/Toolkit/tests/Fixtures/icons/flowbite/arrow-left-to-bracket-outline.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/src/Toolkit/tests/Fixtures/icons/flowbite/arrow-right-outline.svg b/src/Toolkit/tests/Fixtures/icons/flowbite/arrow-right-outline.svg
new file mode 100644
index 00000000000..f8a688e7ab8
--- /dev/null
+++ b/src/Toolkit/tests/Fixtures/icons/flowbite/arrow-right-outline.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/src/Toolkit/tests/Fixtures/icons/flowbite/calendar-edit-outline.svg b/src/Toolkit/tests/Fixtures/icons/flowbite/calendar-edit-outline.svg
new file mode 100644
index 00000000000..507a8d8f1e7
--- /dev/null
+++ b/src/Toolkit/tests/Fixtures/icons/flowbite/calendar-edit-outline.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/src/Toolkit/tests/Fixtures/icons/flowbite/caret-down-solid.svg b/src/Toolkit/tests/Fixtures/icons/flowbite/caret-down-solid.svg
new file mode 100644
index 00000000000..80c49a3a751
--- /dev/null
+++ b/src/Toolkit/tests/Fixtures/icons/flowbite/caret-down-solid.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/src/Toolkit/tests/Fixtures/icons/flowbite/caret-left-solid.svg b/src/Toolkit/tests/Fixtures/icons/flowbite/caret-left-solid.svg
new file mode 100644
index 00000000000..89626ad7229
--- /dev/null
+++ b/src/Toolkit/tests/Fixtures/icons/flowbite/caret-left-solid.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/src/Toolkit/tests/Fixtures/icons/flowbite/caret-right-solid.svg b/src/Toolkit/tests/Fixtures/icons/flowbite/caret-right-solid.svg
new file mode 100644
index 00000000000..95256f72f95
--- /dev/null
+++ b/src/Toolkit/tests/Fixtures/icons/flowbite/caret-right-solid.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/src/Toolkit/tests/Fixtures/icons/flowbite/caret-up-solid.svg b/src/Toolkit/tests/Fixtures/icons/flowbite/caret-up-solid.svg
new file mode 100644
index 00000000000..197255b314c
--- /dev/null
+++ b/src/Toolkit/tests/Fixtures/icons/flowbite/caret-up-solid.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/src/Toolkit/tests/Fixtures/icons/flowbite/cart-outline.svg b/src/Toolkit/tests/Fixtures/icons/flowbite/cart-outline.svg
new file mode 100644
index 00000000000..08c5b2f8eb4
--- /dev/null
+++ b/src/Toolkit/tests/Fixtures/icons/flowbite/cart-outline.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/src/Toolkit/tests/Fixtures/icons/flowbite/check-circle-outline.svg b/src/Toolkit/tests/Fixtures/icons/flowbite/check-circle-outline.svg
new file mode 100644
index 00000000000..af7cd0ffd87
--- /dev/null
+++ b/src/Toolkit/tests/Fixtures/icons/flowbite/check-circle-outline.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/src/Toolkit/tests/Fixtures/icons/flowbite/chevron-down-outline.svg b/src/Toolkit/tests/Fixtures/icons/flowbite/chevron-down-outline.svg
new file mode 100644
index 00000000000..ec3d40a4995
--- /dev/null
+++ b/src/Toolkit/tests/Fixtures/icons/flowbite/chevron-down-outline.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/src/Toolkit/tests/Fixtures/icons/flowbite/chevron-left-outline.svg b/src/Toolkit/tests/Fixtures/icons/flowbite/chevron-left-outline.svg
new file mode 100644
index 00000000000..75845185c36
--- /dev/null
+++ b/src/Toolkit/tests/Fixtures/icons/flowbite/chevron-left-outline.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/src/Toolkit/tests/Fixtures/icons/flowbite/chevron-right-outline.svg b/src/Toolkit/tests/Fixtures/icons/flowbite/chevron-right-outline.svg
new file mode 100644
index 00000000000..4b099d1e4f7
--- /dev/null
+++ b/src/Toolkit/tests/Fixtures/icons/flowbite/chevron-right-outline.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/src/Toolkit/tests/Fixtures/icons/flowbite/chevron-up-outline.svg b/src/Toolkit/tests/Fixtures/icons/flowbite/chevron-up-outline.svg
new file mode 100644
index 00000000000..8b75b761af0
--- /dev/null
+++ b/src/Toolkit/tests/Fixtures/icons/flowbite/chevron-up-outline.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/src/Toolkit/tests/Fixtures/icons/flowbite/clock-outline.svg b/src/Toolkit/tests/Fixtures/icons/flowbite/clock-outline.svg
new file mode 100644
index 00000000000..b1de55a9683
--- /dev/null
+++ b/src/Toolkit/tests/Fixtures/icons/flowbite/clock-outline.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/src/Toolkit/tests/Fixtures/icons/flowbite/close-outline.svg b/src/Toolkit/tests/Fixtures/icons/flowbite/close-outline.svg
new file mode 100644
index 00000000000..58d80cf4660
--- /dev/null
+++ b/src/Toolkit/tests/Fixtures/icons/flowbite/close-outline.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/src/Toolkit/tests/Fixtures/icons/flowbite/database-outline.svg b/src/Toolkit/tests/Fixtures/icons/flowbite/database-outline.svg
new file mode 100644
index 00000000000..1f965159dee
--- /dev/null
+++ b/src/Toolkit/tests/Fixtures/icons/flowbite/database-outline.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/src/Toolkit/tests/Fixtures/icons/flowbite/dots-horizontal-outline.svg b/src/Toolkit/tests/Fixtures/icons/flowbite/dots-horizontal-outline.svg
new file mode 100644
index 00000000000..20ad33af08f
--- /dev/null
+++ b/src/Toolkit/tests/Fixtures/icons/flowbite/dots-horizontal-outline.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/src/Toolkit/tests/Fixtures/icons/flowbite/dots-vertical-outline.svg b/src/Toolkit/tests/Fixtures/icons/flowbite/dots-vertical-outline.svg
new file mode 100644
index 00000000000..7287595121c
--- /dev/null
+++ b/src/Toolkit/tests/Fixtures/icons/flowbite/dots-vertical-outline.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/src/Toolkit/tests/Fixtures/icons/flowbite/download-outline.svg b/src/Toolkit/tests/Fixtures/icons/flowbite/download-outline.svg
new file mode 100644
index 00000000000..9fb5cb1c1af
--- /dev/null
+++ b/src/Toolkit/tests/Fixtures/icons/flowbite/download-outline.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/src/Toolkit/tests/Fixtures/icons/flowbite/exclamation-circle-outline.svg b/src/Toolkit/tests/Fixtures/icons/flowbite/exclamation-circle-outline.svg
new file mode 100644
index 00000000000..005f9afe525
--- /dev/null
+++ b/src/Toolkit/tests/Fixtures/icons/flowbite/exclamation-circle-outline.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/src/Toolkit/tests/Fixtures/icons/flowbite/expand-outline.svg b/src/Toolkit/tests/Fixtures/icons/flowbite/expand-outline.svg
new file mode 100644
index 00000000000..911061409e3
--- /dev/null
+++ b/src/Toolkit/tests/Fixtures/icons/flowbite/expand-outline.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/src/Toolkit/tests/Fixtures/icons/flowbite/eye-outline.svg b/src/Toolkit/tests/Fixtures/icons/flowbite/eye-outline.svg
new file mode 100644
index 00000000000..fce4ae736fd
--- /dev/null
+++ b/src/Toolkit/tests/Fixtures/icons/flowbite/eye-outline.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/src/Toolkit/tests/Fixtures/icons/flowbite/face-grin-outline.svg b/src/Toolkit/tests/Fixtures/icons/flowbite/face-grin-outline.svg
new file mode 100644
index 00000000000..2eca6dbb53c
--- /dev/null
+++ b/src/Toolkit/tests/Fixtures/icons/flowbite/face-grin-outline.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/src/Toolkit/tests/Fixtures/icons/flowbite/file-code-outline.svg b/src/Toolkit/tests/Fixtures/icons/flowbite/file-code-outline.svg
new file mode 100644
index 00000000000..ee257ca4ee7
--- /dev/null
+++ b/src/Toolkit/tests/Fixtures/icons/flowbite/file-code-outline.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/src/Toolkit/tests/Fixtures/icons/flowbite/file-image-outline.svg b/src/Toolkit/tests/Fixtures/icons/flowbite/file-image-outline.svg
new file mode 100644
index 00000000000..8af7e986e9a
--- /dev/null
+++ b/src/Toolkit/tests/Fixtures/icons/flowbite/file-image-outline.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/src/Toolkit/tests/Fixtures/icons/flowbite/fire-outline.svg b/src/Toolkit/tests/Fixtures/icons/flowbite/fire-outline.svg
new file mode 100644
index 00000000000..03a8041dfb2
--- /dev/null
+++ b/src/Toolkit/tests/Fixtures/icons/flowbite/fire-outline.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/src/Toolkit/tests/Fixtures/icons/flowbite/grid-outline.svg b/src/Toolkit/tests/Fixtures/icons/flowbite/grid-outline.svg
new file mode 100644
index 00000000000..55a8ee8bb3b
--- /dev/null
+++ b/src/Toolkit/tests/Fixtures/icons/flowbite/grid-outline.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/src/Toolkit/tests/Fixtures/icons/flowbite/heart-outline.svg b/src/Toolkit/tests/Fixtures/icons/flowbite/heart-outline.svg
new file mode 100644
index 00000000000..69e59141c4e
--- /dev/null
+++ b/src/Toolkit/tests/Fixtures/icons/flowbite/heart-outline.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/src/Toolkit/tests/Fixtures/icons/flowbite/image-outline.svg b/src/Toolkit/tests/Fixtures/icons/flowbite/image-outline.svg
new file mode 100644
index 00000000000..971c49b8431
--- /dev/null
+++ b/src/Toolkit/tests/Fixtures/icons/flowbite/image-outline.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/src/Toolkit/tests/Fixtures/icons/flowbite/inbox-full-outline.svg b/src/Toolkit/tests/Fixtures/icons/flowbite/inbox-full-outline.svg
new file mode 100644
index 00000000000..3156db078f2
--- /dev/null
+++ b/src/Toolkit/tests/Fixtures/icons/flowbite/inbox-full-outline.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/src/Toolkit/tests/Fixtures/icons/flowbite/info-circle-outline.svg b/src/Toolkit/tests/Fixtures/icons/flowbite/info-circle-outline.svg
new file mode 100644
index 00000000000..d6592972213
--- /dev/null
+++ b/src/Toolkit/tests/Fixtures/icons/flowbite/info-circle-outline.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/src/Toolkit/tests/Fixtures/icons/flowbite/lock-outline.svg b/src/Toolkit/tests/Fixtures/icons/flowbite/lock-outline.svg
new file mode 100644
index 00000000000..18cd0f7e31b
--- /dev/null
+++ b/src/Toolkit/tests/Fixtures/icons/flowbite/lock-outline.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/src/Toolkit/tests/Fixtures/icons/flowbite/map-pin-alt-outline.svg b/src/Toolkit/tests/Fixtures/icons/flowbite/map-pin-alt-outline.svg
new file mode 100644
index 00000000000..7c3f4d9b3fc
--- /dev/null
+++ b/src/Toolkit/tests/Fixtures/icons/flowbite/map-pin-alt-outline.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/src/Toolkit/tests/Fixtures/icons/flowbite/ordered-list-outline.svg b/src/Toolkit/tests/Fixtures/icons/flowbite/ordered-list-outline.svg
new file mode 100644
index 00000000000..4cca2fbb558
--- /dev/null
+++ b/src/Toolkit/tests/Fixtures/icons/flowbite/ordered-list-outline.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/src/Toolkit/tests/Fixtures/icons/flowbite/paper-clip-outline.svg b/src/Toolkit/tests/Fixtures/icons/flowbite/paper-clip-outline.svg
new file mode 100644
index 00000000000..faa7620d256
--- /dev/null
+++ b/src/Toolkit/tests/Fixtures/icons/flowbite/paper-clip-outline.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/src/Toolkit/tests/Fixtures/icons/flowbite/paper-plane-outline.svg b/src/Toolkit/tests/Fixtures/icons/flowbite/paper-plane-outline.svg
new file mode 100644
index 00000000000..ab3582d23fb
--- /dev/null
+++ b/src/Toolkit/tests/Fixtures/icons/flowbite/paper-plane-outline.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/src/Toolkit/tests/Fixtures/icons/flowbite/server-outline.svg b/src/Toolkit/tests/Fixtures/icons/flowbite/server-outline.svg
new file mode 100644
index 00000000000..2434983e7b7
--- /dev/null
+++ b/src/Toolkit/tests/Fixtures/icons/flowbite/server-outline.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/src/Toolkit/tests/Fixtures/icons/flowbite/user-circle-outline.svg b/src/Toolkit/tests/Fixtures/icons/flowbite/user-circle-outline.svg
new file mode 100644
index 00000000000..0037e4dcc6c
--- /dev/null
+++ b/src/Toolkit/tests/Fixtures/icons/flowbite/user-circle-outline.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/src/Toolkit/tests/Fixtures/icons/flowbite/user-headset-outline.svg b/src/Toolkit/tests/Fixtures/icons/flowbite/user-headset-outline.svg
new file mode 100644
index 00000000000..7f92054a5c8
--- /dev/null
+++ b/src/Toolkit/tests/Fixtures/icons/flowbite/user-headset-outline.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/src/Toolkit/tests/Fixtures/icons/flowbite/user-outline.svg b/src/Toolkit/tests/Fixtures/icons/flowbite/user-outline.svg
new file mode 100644
index 00000000000..f5b0c09e30f
--- /dev/null
+++ b/src/Toolkit/tests/Fixtures/icons/flowbite/user-outline.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/src/Toolkit/tests/Fixtures/icons/flowbite/user-solid.svg b/src/Toolkit/tests/Fixtures/icons/flowbite/user-solid.svg
new file mode 100644
index 00000000000..2d30ee2e2e3
--- /dev/null
+++ b/src/Toolkit/tests/Fixtures/icons/flowbite/user-solid.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/src/Toolkit/tests/Fixtures/icons/lucide/app-window.svg b/src/Toolkit/tests/Fixtures/icons/lucide/app-window.svg
new file mode 100644
index 00000000000..16ac0f12a2d
--- /dev/null
+++ b/src/Toolkit/tests/Fixtures/icons/lucide/app-window.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/src/Toolkit/tests/Fixtures/icons/lucide/arrow-left.svg b/src/Toolkit/tests/Fixtures/icons/lucide/arrow-left.svg
new file mode 100644
index 00000000000..510b8f451be
--- /dev/null
+++ b/src/Toolkit/tests/Fixtures/icons/lucide/arrow-left.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/src/Toolkit/tests/Fixtures/icons/lucide/arrow-right.svg b/src/Toolkit/tests/Fixtures/icons/lucide/arrow-right.svg
new file mode 100644
index 00000000000..059d3940ec4
--- /dev/null
+++ b/src/Toolkit/tests/Fixtures/icons/lucide/arrow-right.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/src/Toolkit/tests/Fixtures/icons/lucide/arrow-up-right.svg b/src/Toolkit/tests/Fixtures/icons/lucide/arrow-up-right.svg
new file mode 100644
index 00000000000..47f0a233534
--- /dev/null
+++ b/src/Toolkit/tests/Fixtures/icons/lucide/arrow-up-right.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/src/Toolkit/tests/Fixtures/icons/lucide/arrow-up.svg b/src/Toolkit/tests/Fixtures/icons/lucide/arrow-up.svg
new file mode 100644
index 00000000000..86bcb102a32
--- /dev/null
+++ b/src/Toolkit/tests/Fixtures/icons/lucide/arrow-up.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/src/Toolkit/tests/Fixtures/icons/lucide/audio-lines.svg b/src/Toolkit/tests/Fixtures/icons/lucide/audio-lines.svg
new file mode 100644
index 00000000000..989bb2cac96
--- /dev/null
+++ b/src/Toolkit/tests/Fixtures/icons/lucide/audio-lines.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/src/Toolkit/tests/Fixtures/icons/lucide/badge-check.svg b/src/Toolkit/tests/Fixtures/icons/lucide/badge-check.svg
new file mode 100644
index 00000000000..a4704989d67
--- /dev/null
+++ b/src/Toolkit/tests/Fixtures/icons/lucide/badge-check.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/src/Toolkit/tests/Fixtures/icons/lucide/bell.svg b/src/Toolkit/tests/Fixtures/icons/lucide/bell.svg
new file mode 100644
index 00000000000..782123a834f
--- /dev/null
+++ b/src/Toolkit/tests/Fixtures/icons/lucide/bell.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/src/Toolkit/tests/Fixtures/icons/lucide/bluetooth.svg b/src/Toolkit/tests/Fixtures/icons/lucide/bluetooth.svg
new file mode 100644
index 00000000000..4cd7c7677d1
--- /dev/null
+++ b/src/Toolkit/tests/Fixtures/icons/lucide/bluetooth.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/src/Toolkit/tests/Fixtures/icons/lucide/bold.svg b/src/Toolkit/tests/Fixtures/icons/lucide/bold.svg
new file mode 100644
index 00000000000..41c74843a62
--- /dev/null
+++ b/src/Toolkit/tests/Fixtures/icons/lucide/bold.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/src/Toolkit/tests/Fixtures/icons/lucide/bookmark.svg b/src/Toolkit/tests/Fixtures/icons/lucide/bookmark.svg
new file mode 100644
index 00000000000..72c6ffb4bae
--- /dev/null
+++ b/src/Toolkit/tests/Fixtures/icons/lucide/bookmark.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/src/Toolkit/tests/Fixtures/icons/lucide/check.svg b/src/Toolkit/tests/Fixtures/icons/lucide/check.svg
new file mode 100644
index 00000000000..008943df3eb
--- /dev/null
+++ b/src/Toolkit/tests/Fixtures/icons/lucide/check.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/src/Toolkit/tests/Fixtures/icons/lucide/chevron-down.svg b/src/Toolkit/tests/Fixtures/icons/lucide/chevron-down.svg
new file mode 100644
index 00000000000..3182a2a6fe3
--- /dev/null
+++ b/src/Toolkit/tests/Fixtures/icons/lucide/chevron-down.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/src/Toolkit/tests/Fixtures/icons/lucide/chevron-left.svg b/src/Toolkit/tests/Fixtures/icons/lucide/chevron-left.svg
new file mode 100644
index 00000000000..93f1e3c1efb
--- /dev/null
+++ b/src/Toolkit/tests/Fixtures/icons/lucide/chevron-left.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/src/Toolkit/tests/Fixtures/icons/lucide/chevron-right.svg b/src/Toolkit/tests/Fixtures/icons/lucide/chevron-right.svg
new file mode 100644
index 00000000000..c2d3c5fd390
--- /dev/null
+++ b/src/Toolkit/tests/Fixtures/icons/lucide/chevron-right.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/src/Toolkit/tests/Fixtures/icons/lucide/chevron-up.svg b/src/Toolkit/tests/Fixtures/icons/lucide/chevron-up.svg
new file mode 100644
index 00000000000..2a4b098fd5b
--- /dev/null
+++ b/src/Toolkit/tests/Fixtures/icons/lucide/chevron-up.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/src/Toolkit/tests/Fixtures/icons/lucide/chevrons-up-down.svg b/src/Toolkit/tests/Fixtures/icons/lucide/chevrons-up-down.svg
new file mode 100644
index 00000000000..de1adf56e9e
--- /dev/null
+++ b/src/Toolkit/tests/Fixtures/icons/lucide/chevrons-up-down.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/src/Toolkit/tests/Fixtures/icons/lucide/circle-alert.svg b/src/Toolkit/tests/Fixtures/icons/lucide/circle-alert.svg
new file mode 100644
index 00000000000..67c653e0224
--- /dev/null
+++ b/src/Toolkit/tests/Fixtures/icons/lucide/circle-alert.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/src/Toolkit/tests/Fixtures/icons/lucide/circle-check-big.svg b/src/Toolkit/tests/Fixtures/icons/lucide/circle-check-big.svg
new file mode 100644
index 00000000000..d08afccb78c
--- /dev/null
+++ b/src/Toolkit/tests/Fixtures/icons/lucide/circle-check-big.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/src/Toolkit/tests/Fixtures/icons/lucide/circle-check.svg b/src/Toolkit/tests/Fixtures/icons/lucide/circle-check.svg
new file mode 100644
index 00000000000..2029fbddc96
--- /dev/null
+++ b/src/Toolkit/tests/Fixtures/icons/lucide/circle-check.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/src/Toolkit/tests/Fixtures/icons/lucide/circle-fading-arrow-up.svg b/src/Toolkit/tests/Fixtures/icons/lucide/circle-fading-arrow-up.svg
new file mode 100644
index 00000000000..c6b1b701a1a
--- /dev/null
+++ b/src/Toolkit/tests/Fixtures/icons/lucide/circle-fading-arrow-up.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/src/Toolkit/tests/Fixtures/icons/lucide/circle-fading-plus.svg b/src/Toolkit/tests/Fixtures/icons/lucide/circle-fading-plus.svg
new file mode 100644
index 00000000000..d1b901347c8
--- /dev/null
+++ b/src/Toolkit/tests/Fixtures/icons/lucide/circle-fading-plus.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/src/Toolkit/tests/Fixtures/icons/lucide/clock.svg b/src/Toolkit/tests/Fixtures/icons/lucide/clock.svg
new file mode 100644
index 00000000000..74092c153bd
--- /dev/null
+++ b/src/Toolkit/tests/Fixtures/icons/lucide/clock.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/src/Toolkit/tests/Fixtures/icons/lucide/code.svg b/src/Toolkit/tests/Fixtures/icons/lucide/code.svg
new file mode 100644
index 00000000000..5c5c534be37
--- /dev/null
+++ b/src/Toolkit/tests/Fixtures/icons/lucide/code.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/src/Toolkit/tests/Fixtures/icons/lucide/copy.svg b/src/Toolkit/tests/Fixtures/icons/lucide/copy.svg
new file mode 100644
index 00000000000..a9576857354
--- /dev/null
+++ b/src/Toolkit/tests/Fixtures/icons/lucide/copy.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/src/Toolkit/tests/Fixtures/icons/lucide/corner-down-left.svg b/src/Toolkit/tests/Fixtures/icons/lucide/corner-down-left.svg
new file mode 100644
index 00000000000..7db90f59588
--- /dev/null
+++ b/src/Toolkit/tests/Fixtures/icons/lucide/corner-down-left.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/src/Toolkit/tests/Fixtures/icons/lucide/credit-card.svg b/src/Toolkit/tests/Fixtures/icons/lucide/credit-card.svg
new file mode 100644
index 00000000000..848de421012
--- /dev/null
+++ b/src/Toolkit/tests/Fixtures/icons/lucide/credit-card.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/src/Toolkit/tests/Fixtures/icons/lucide/dot.svg b/src/Toolkit/tests/Fixtures/icons/lucide/dot.svg
new file mode 100644
index 00000000000..82eadf4dbb6
--- /dev/null
+++ b/src/Toolkit/tests/Fixtures/icons/lucide/dot.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/src/Toolkit/tests/Fixtures/icons/lucide/ellipsis.svg b/src/Toolkit/tests/Fixtures/icons/lucide/ellipsis.svg
new file mode 100644
index 00000000000..17ef08c0182
--- /dev/null
+++ b/src/Toolkit/tests/Fixtures/icons/lucide/ellipsis.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/src/Toolkit/tests/Fixtures/icons/lucide/external-link.svg b/src/Toolkit/tests/Fixtures/icons/lucide/external-link.svg
new file mode 100644
index 00000000000..fe374b16a48
--- /dev/null
+++ b/src/Toolkit/tests/Fixtures/icons/lucide/external-link.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/src/Toolkit/tests/Fixtures/icons/lucide/file.svg b/src/Toolkit/tests/Fixtures/icons/lucide/file.svg
new file mode 100644
index 00000000000..ecdbd7542d8
--- /dev/null
+++ b/src/Toolkit/tests/Fixtures/icons/lucide/file.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/src/Toolkit/tests/Fixtures/icons/lucide/folder.svg b/src/Toolkit/tests/Fixtures/icons/lucide/folder.svg
new file mode 100644
index 00000000000..f5c902ed103
--- /dev/null
+++ b/src/Toolkit/tests/Fixtures/icons/lucide/folder.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/src/Toolkit/tests/Fixtures/icons/lucide/git-branch.svg b/src/Toolkit/tests/Fixtures/icons/lucide/git-branch.svg
new file mode 100644
index 00000000000..e8b5a401114
--- /dev/null
+++ b/src/Toolkit/tests/Fixtures/icons/lucide/git-branch.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/src/Toolkit/tests/Fixtures/icons/lucide/inbox.svg b/src/Toolkit/tests/Fixtures/icons/lucide/inbox.svg
new file mode 100644
index 00000000000..c0dcec5158c
--- /dev/null
+++ b/src/Toolkit/tests/Fixtures/icons/lucide/inbox.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/src/Toolkit/tests/Fixtures/icons/lucide/info.svg b/src/Toolkit/tests/Fixtures/icons/lucide/info.svg
new file mode 100644
index 00000000000..db8abdfc3e3
--- /dev/null
+++ b/src/Toolkit/tests/Fixtures/icons/lucide/info.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/src/Toolkit/tests/Fixtures/icons/lucide/italic.svg b/src/Toolkit/tests/Fixtures/icons/lucide/italic.svg
new file mode 100644
index 00000000000..501b33dde1c
--- /dev/null
+++ b/src/Toolkit/tests/Fixtures/icons/lucide/italic.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/src/Toolkit/tests/Fixtures/icons/lucide/loader-2.svg b/src/Toolkit/tests/Fixtures/icons/lucide/loader-2.svg
new file mode 100644
index 00000000000..366b4a8a7a6
--- /dev/null
+++ b/src/Toolkit/tests/Fixtures/icons/lucide/loader-2.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/src/Toolkit/tests/Fixtures/icons/lucide/loader.svg b/src/Toolkit/tests/Fixtures/icons/lucide/loader.svg
new file mode 100644
index 00000000000..9573c8557ac
--- /dev/null
+++ b/src/Toolkit/tests/Fixtures/icons/lucide/loader.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/src/Toolkit/tests/Fixtures/icons/lucide/mail.svg b/src/Toolkit/tests/Fixtures/icons/lucide/mail.svg
new file mode 100644
index 00000000000..ff02774ad6b
--- /dev/null
+++ b/src/Toolkit/tests/Fixtures/icons/lucide/mail.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/src/Toolkit/tests/Fixtures/icons/lucide/maximize.svg b/src/Toolkit/tests/Fixtures/icons/lucide/maximize.svg
new file mode 100644
index 00000000000..c245683cefb
--- /dev/null
+++ b/src/Toolkit/tests/Fixtures/icons/lucide/maximize.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/src/Toolkit/tests/Fixtures/icons/lucide/minimize.svg b/src/Toolkit/tests/Fixtures/icons/lucide/minimize.svg
new file mode 100644
index 00000000000..71775a3fa8c
--- /dev/null
+++ b/src/Toolkit/tests/Fixtures/icons/lucide/minimize.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/src/Toolkit/tests/Fixtures/icons/lucide/minus.svg b/src/Toolkit/tests/Fixtures/icons/lucide/minus.svg
new file mode 100644
index 00000000000..b41cbe697ae
--- /dev/null
+++ b/src/Toolkit/tests/Fixtures/icons/lucide/minus.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/src/Toolkit/tests/Fixtures/icons/lucide/more-horizontal.svg b/src/Toolkit/tests/Fixtures/icons/lucide/more-horizontal.svg
new file mode 100644
index 00000000000..17ef08c0182
--- /dev/null
+++ b/src/Toolkit/tests/Fixtures/icons/lucide/more-horizontal.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/src/Toolkit/tests/Fixtures/icons/lucide/plus.svg b/src/Toolkit/tests/Fixtures/icons/lucide/plus.svg
new file mode 100644
index 00000000000..9b2ee5b23c8
--- /dev/null
+++ b/src/Toolkit/tests/Fixtures/icons/lucide/plus.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/src/Toolkit/tests/Fixtures/icons/lucide/refresh-ccw.svg b/src/Toolkit/tests/Fixtures/icons/lucide/refresh-ccw.svg
new file mode 100644
index 00000000000..8722c73175d
--- /dev/null
+++ b/src/Toolkit/tests/Fixtures/icons/lucide/refresh-ccw.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/src/Toolkit/tests/Fixtures/icons/lucide/save.svg b/src/Toolkit/tests/Fixtures/icons/lucide/save.svg
new file mode 100644
index 00000000000..504deb25ef6
--- /dev/null
+++ b/src/Toolkit/tests/Fixtures/icons/lucide/save.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/src/Toolkit/tests/Fixtures/icons/lucide/search.svg b/src/Toolkit/tests/Fixtures/icons/lucide/search.svg
new file mode 100644
index 00000000000..127257132a8
--- /dev/null
+++ b/src/Toolkit/tests/Fixtures/icons/lucide/search.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/src/Toolkit/tests/Fixtures/icons/lucide/shield-alert.svg b/src/Toolkit/tests/Fixtures/icons/lucide/shield-alert.svg
new file mode 100644
index 00000000000..b8149db6842
--- /dev/null
+++ b/src/Toolkit/tests/Fixtures/icons/lucide/shield-alert.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/src/Toolkit/tests/Fixtures/icons/lucide/star.svg b/src/Toolkit/tests/Fixtures/icons/lucide/star.svg
new file mode 100644
index 00000000000..efd59e56771
--- /dev/null
+++ b/src/Toolkit/tests/Fixtures/icons/lucide/star.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/src/Toolkit/tests/Fixtures/icons/lucide/trash-2.svg b/src/Toolkit/tests/Fixtures/icons/lucide/trash-2.svg
new file mode 100644
index 00000000000..bf3d9589c2e
--- /dev/null
+++ b/src/Toolkit/tests/Fixtures/icons/lucide/trash-2.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/src/Toolkit/tests/Fixtures/icons/lucide/triangle-alert.svg b/src/Toolkit/tests/Fixtures/icons/lucide/triangle-alert.svg
new file mode 100644
index 00000000000..ae83c2edcc7
--- /dev/null
+++ b/src/Toolkit/tests/Fixtures/icons/lucide/triangle-alert.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/src/Toolkit/tests/Fixtures/icons/lucide/underline.svg b/src/Toolkit/tests/Fixtures/icons/lucide/underline.svg
new file mode 100644
index 00000000000..3e959ad5fa5
--- /dev/null
+++ b/src/Toolkit/tests/Fixtures/icons/lucide/underline.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/src/Toolkit/tests/Fixtures/icons/lucide/x.svg b/src/Toolkit/tests/Fixtures/icons/lucide/x.svg
new file mode 100644
index 00000000000..7e18c3f6458
--- /dev/null
+++ b/src/Toolkit/tests/Fixtures/icons/lucide/x.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/src/Toolkit/tests/Fixtures/icons/ri/javascript-fill.svg b/src/Toolkit/tests/Fixtures/icons/ri/javascript-fill.svg
new file mode 100644
index 00000000000..93aa9273756
--- /dev/null
+++ b/src/Toolkit/tests/Fixtures/icons/ri/javascript-fill.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/src/Toolkit/tests/Fixtures/icons/tabler/cloud.svg b/src/Toolkit/tests/Fixtures/icons/tabler/cloud.svg
new file mode 100644
index 00000000000..a57fe23fc26
--- /dev/null
+++ b/src/Toolkit/tests/Fixtures/icons/tabler/cloud.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/src/Toolkit/tests/Fixtures/icons/tabler/folder-code.svg b/src/Toolkit/tests/Fixtures/icons/tabler/folder-code.svg
new file mode 100644
index 00000000000..33c4eb08504
--- /dev/null
+++ b/src/Toolkit/tests/Fixtures/icons/tabler/folder-code.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/src/Toolkit/tests/Fixtures/icons/tabler/plus.svg b/src/Toolkit/tests/Fixtures/icons/tabler/plus.svg
new file mode 100644
index 00000000000..37544be31e5
--- /dev/null
+++ b/src/Toolkit/tests/Fixtures/icons/tabler/plus.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/src/Toolkit/tests/Fixtures/icons/tabler/search.svg b/src/Toolkit/tests/Fixtures/icons/tabler/search.svg
new file mode 100644
index 00000000000..2d679f02e43
--- /dev/null
+++ b/src/Toolkit/tests/Fixtures/icons/tabler/search.svg
@@ -0,0 +1 @@
+
\ No newline at end of file