diff --git a/frontend/components/Navbar.vue b/frontend/components/Navbar.vue
index 058cf045ad94bb994d92f7bb7078a84e5dad479f..2c331f6682a587a8272a70504efa393bb9e8e92c 100644
--- a/frontend/components/Navbar.vue
+++ b/frontend/components/Navbar.vue
@@ -32,9 +32,9 @@ const sections = ref([
         to: '/',
     },
     { id: "wiki", label: "Wiki", toWiki: "/" },
-    { id: "refseq", label: "RefSeq DB", toWiki: '/refseq/' },
-    { id: "structure", label: "Structure DB", toWiki: '/structure/' },
-    { id: "help", label: "Help", toWiki: "/help/defensefinder/" },
+    { id: "refseq", label: "RefSeq DB", toWiki: '/refseq' },
+    { id: "structure", label: "Structure DB", toWiki: '/structure' },
+    { id: "help", label: "Help", toWiki: "/help/defensefinder" },
 ]);
 
 const computedSections = computed(() => {
diff --git a/frontend/composables/useWikiUrl.ts b/frontend/composables/useWikiUrl.ts
index ef2ac1c5d06eae7e6ae38b9e6c3624283547ec9a..743e325d4297b5e5a21e4e6a19e5e232691d00da 100644
--- a/frontend/composables/useWikiUrl.ts
+++ b/frontend/composables/useWikiUrl.ts
@@ -1,4 +1,4 @@
-import { withTrailingSlash, withLeadingSlash, joinURL } from "ufo";
+import { withoutTrailingSlash, withLeadingSlash, joinURL } from "ufo";
 
 
 export function useWikiUrl(url: string | Ref<string>) {
@@ -6,7 +6,7 @@ export function useWikiUrl(url: string | Ref<string>) {
         const sanitzedUrl = toValue(url)
         if (sanitzedUrl.startsWith("/") && !sanitzedUrl.startsWith("//")) {
             const _base = withLeadingSlash(
-                withTrailingSlash(useRuntimeConfig().public.wikiUrl)
+                withoutTrailingSlash(useRuntimeConfig().public.wikiUrl)
             );
             if (_base !== "/" && !sanitzedUrl.startsWith(_base)) {
                 return joinURL(_base, sanitzedUrl);
diff --git a/frontend/nuxt.config.ts b/frontend/nuxt.config.ts
index ff25c03f935e61a57ab3ec0d28f6ce708978eea6..f616c4fb7cf1a86e411dc05c0de7f563a2ae942c 100644
--- a/frontend/nuxt.config.ts
+++ b/frontend/nuxt.config.ts
@@ -18,6 +18,7 @@ export default defineNuxtConfig({
     }
   },
   modules: [
+    '@unocss/nuxt',
     'vuetify-nuxt-module',
     '@nuxtjs/plausible',
     "nuxt-security",
@@ -48,10 +49,17 @@ export default defineNuxtConfig({
     vuetifyOptions: {
       labComponents: true,
       icons: {
-        defaultSet: 'mdi',
+        defaultSet: 'unocss-mdi',
         sets: ['mdi', 'fa', 'md'],
+        unocssIcons: {
+          // default is i-mdi:close-circle
+          // database: 'i-tabler:database',
+          // even from another collection, default is i-mdi:chevron-up
+          // generalconcept: 'i-mdi:book-education-outline',
+          // help: 'i-tabler:help'
+        }
       },
-      blueprint: md3,
+      blueprint: md3
 
 
     }
diff --git a/frontend/package-lock.json b/frontend/package-lock.json
index d1c5e03dfa6a193cf972f38dca3bbae4e824598b..f1197f76a5dcd62b1dc5c8ea45cc7b105d2249eb 100644
--- a/frontend/package-lock.json
+++ b/frontend/package-lock.json
@@ -23,23 +23,28 @@
         "vee-validate": "^4.12.4"
       },
       "devDependencies": {
+        "@iconify-json/material-symbols": "^1.1.76",
+        "@iconify-json/mdi": "^1.1.64",
+        "@iconify-json/tabler": "^1.1.109",
         "@nuxt/devtools": "latest",
         "@nuxtjs/plausible": "^0.2.4",
         "@nuxtjs/seo": "^2.0.0-rc.9",
         "@types/node": "^20.11.6",
+        "@unocss/nuxt": "^0.58.7",
+        "@unocss/preset-icons": "^0.58.7",
         "nuxt": "^3.9.3",
         "nuxt-security": "^0.14.2",
         "vuetify-nuxt-module": "^0.10.2"
       }
     },
     "node_modules/@ampproject/remapping": {
-      "version": "2.2.1",
-      "resolved": "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.2.1.tgz",
-      "integrity": "sha512-lFMjJTrFL3j7L9yBxwYfCq2k6qqwHyzuUl/XBnif78PWTJYyL/dfowQHWE3sp6U6ZzqWiiIZnpTMO96zhkjwtg==",
+      "version": "2.3.0",
+      "resolved": "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.3.0.tgz",
+      "integrity": "sha512-30iZtAPgz+LTIYoeivqYo853f02jBYSd5uGnGpkFV0M3xOt9aN73erkgYAmZU43x4VfqcnLxW9Kpg3R5LC4YYw==",
       "dev": true,
       "dependencies": {
-        "@jridgewell/gen-mapping": "^0.3.0",
-        "@jridgewell/trace-mapping": "^0.3.9"
+        "@jridgewell/gen-mapping": "^0.3.5",
+        "@jridgewell/trace-mapping": "^0.3.24"
       },
       "engines": {
         "node": ">=6.0.0"
@@ -157,13 +162,13 @@
       }
     },
     "node_modules/@babel/code-frame": {
-      "version": "7.23.5",
-      "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.23.5.tgz",
-      "integrity": "sha512-CgH3s1a96LipHCmSUmYFPwY7MNx8C3avkq7i4Wl3cfa662ldtUe4VM1TPXX70pfmrlWTb6jLqTYrZyT2ZTJBgA==",
+      "version": "7.24.2",
+      "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.24.2.tgz",
+      "integrity": "sha512-y5+tLQyV8pg3fsiln67BVLD1P13Eg4lh5RW9mF0zUuvLrv9uIQ4MCL+CRT+FTsBlBjcIan6PGsLcBN0m3ClUyQ==",
       "dev": true,
       "dependencies": {
-        "@babel/highlight": "^7.23.4",
-        "chalk": "^2.4.2"
+        "@babel/highlight": "^7.24.2",
+        "picocolors": "^1.0.0"
       },
       "engines": {
         "node": ">=6.9.0"
@@ -179,20 +184,20 @@
       }
     },
     "node_modules/@babel/core": {
-      "version": "7.24.0",
-      "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.24.0.tgz",
-      "integrity": "sha512-fQfkg0Gjkza3nf0c7/w6Xf34BW4YvzNfACRLmmb7XRLa6XHdR+K9AlJlxneFfWYf6uhOzuzZVTjF/8KfndZANw==",
+      "version": "7.24.3",
+      "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.24.3.tgz",
+      "integrity": "sha512-5FcvN1JHw2sHJChotgx8Ek0lyuh4kCKelgMTTqhYJJtloNvUfpAFMeNQUtdlIaktwrSV9LtCdqwk48wL2wBacQ==",
       "dev": true,
       "dependencies": {
         "@ampproject/remapping": "^2.2.0",
-        "@babel/code-frame": "^7.23.5",
-        "@babel/generator": "^7.23.6",
+        "@babel/code-frame": "^7.24.2",
+        "@babel/generator": "^7.24.1",
         "@babel/helper-compilation-targets": "^7.23.6",
         "@babel/helper-module-transforms": "^7.23.3",
-        "@babel/helpers": "^7.24.0",
-        "@babel/parser": "^7.24.0",
+        "@babel/helpers": "^7.24.1",
+        "@babel/parser": "^7.24.1",
         "@babel/template": "^7.24.0",
-        "@babel/traverse": "^7.24.0",
+        "@babel/traverse": "^7.24.1",
         "@babel/types": "^7.24.0",
         "convert-source-map": "^2.0.0",
         "debug": "^4.1.0",
@@ -218,14 +223,14 @@
       }
     },
     "node_modules/@babel/generator": {
-      "version": "7.23.6",
-      "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.23.6.tgz",
-      "integrity": "sha512-qrSfCYxYQB5owCmGLbl8XRpX1ytXlpueOb0N0UmQwA073KZxejgQTzAmJezxvpwQD9uGtK2shHdi55QT+MbjIw==",
+      "version": "7.24.1",
+      "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.24.1.tgz",
+      "integrity": "sha512-DfCRfZsBcrPEHUfuBMgbJ1Ut01Y/itOs+hY2nFLgqsqXd52/iSiVq5TITtUasIUgm+IIKdY2/1I7auiQOEeC9A==",
       "dev": true,
       "dependencies": {
-        "@babel/types": "^7.23.6",
-        "@jridgewell/gen-mapping": "^0.3.2",
-        "@jridgewell/trace-mapping": "^0.3.17",
+        "@babel/types": "^7.24.0",
+        "@jridgewell/gen-mapping": "^0.3.5",
+        "@jridgewell/trace-mapping": "^0.3.25",
         "jsesc": "^2.5.1"
       },
       "engines": {
@@ -270,9 +275,9 @@
       }
     },
     "node_modules/@babel/helper-create-class-features-plugin": {
-      "version": "7.23.7",
-      "resolved": "https://registry.npmjs.org/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.23.7.tgz",
-      "integrity": "sha512-xCoqR/8+BoNnXOY7RVSgv6X+o7pmT5q1d+gGcRlXYkI+9B31glE4jeejhKVpA04O1AtzOt7OSQ6VYKP5FcRl9g==",
+      "version": "7.24.1",
+      "resolved": "https://registry.npmjs.org/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.24.1.tgz",
+      "integrity": "sha512-1yJa9dX9g//V6fDebXoEfEsxkZHk3Hcbm+zLhyu6qVgYFLvmTALTeV+jNU9e5RnYtioBrGEOdoI2joMSNQ/+aA==",
       "dev": true,
       "dependencies": {
         "@babel/helper-annotate-as-pure": "^7.22.5",
@@ -280,7 +285,7 @@
         "@babel/helper-function-name": "^7.23.0",
         "@babel/helper-member-expression-to-functions": "^7.23.0",
         "@babel/helper-optimise-call-expression": "^7.22.5",
-        "@babel/helper-replace-supers": "^7.22.20",
+        "@babel/helper-replace-supers": "^7.24.1",
         "@babel/helper-skip-transparent-expression-wrappers": "^7.22.5",
         "@babel/helper-split-export-declaration": "^7.22.6",
         "semver": "^6.3.1"
@@ -391,22 +396,22 @@
       }
     },
     "node_modules/@babel/helper-plugin-utils": {
-      "version": "7.22.5",
-      "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.22.5.tgz",
-      "integrity": "sha512-uLls06UVKgFG9QD4OeFYLEGteMIAa5kpTPcFL28yuCIIzsf6ZyKZMllKVOCZFhiZ5ptnwX4mtKdWCBE/uT4amg==",
+      "version": "7.24.0",
+      "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.24.0.tgz",
+      "integrity": "sha512-9cUznXMG0+FxRuJfvL82QlTqIzhVW9sL0KjMPHhAOOvpQGL8QtdxnBKILjBqxlHyliz0yCa1G903ZXI/FuHy2w==",
       "dev": true,
       "engines": {
         "node": ">=6.9.0"
       }
     },
     "node_modules/@babel/helper-replace-supers": {
-      "version": "7.22.20",
-      "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.22.20.tgz",
-      "integrity": "sha512-qsW0In3dbwQUbK8kejJ4R7IHVGwHJlV6lpG6UA7a9hSa2YEiAib+N1T2kr6PEeUT+Fl7najmSOS6SmAwCHK6Tw==",
+      "version": "7.24.1",
+      "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.24.1.tgz",
+      "integrity": "sha512-QCR1UqC9BzG5vZl8BMicmZ28RuUBnHhAMddD8yHFHDRH9lLTZ9uUPehX8ctVPT8l0TKblJidqcgUUKGVrePleQ==",
       "dev": true,
       "dependencies": {
         "@babel/helper-environment-visitor": "^7.22.20",
-        "@babel/helper-member-expression-to-functions": "^7.22.15",
+        "@babel/helper-member-expression-to-functions": "^7.23.0",
         "@babel/helper-optimise-call-expression": "^7.22.5"
       },
       "engines": {
@@ -480,13 +485,13 @@
       }
     },
     "node_modules/@babel/helpers": {
-      "version": "7.24.0",
-      "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.24.0.tgz",
-      "integrity": "sha512-ulDZdc0Aj5uLc5nETsa7EPx2L7rM0YJM8r7ck7U73AXi7qOV44IHHRAYZHY6iU1rr3C5N4NtTmMRUJP6kwCWeA==",
+      "version": "7.24.1",
+      "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.24.1.tgz",
+      "integrity": "sha512-BpU09QqEe6ZCHuIHFphEFgvNSrubve1FtyMton26ekZ85gRGi6LrTF7zArARp2YvyFxloeiRmtSCq5sjh1WqIg==",
       "dev": true,
       "dependencies": {
         "@babel/template": "^7.24.0",
-        "@babel/traverse": "^7.24.0",
+        "@babel/traverse": "^7.24.1",
         "@babel/types": "^7.24.0"
       },
       "engines": {
@@ -494,23 +499,24 @@
       }
     },
     "node_modules/@babel/highlight": {
-      "version": "7.23.4",
-      "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.23.4.tgz",
-      "integrity": "sha512-acGdbYSfp2WheJoJm/EBBBLh/ID8KDc64ISZ9DYtBmC8/Q204PZJLHyzeB5qMzJ5trcOkybd78M4x2KWsUq++A==",
+      "version": "7.24.2",
+      "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.24.2.tgz",
+      "integrity": "sha512-Yac1ao4flkTxTteCDZLEvdxg2fZfz1v8M4QpaGypq/WPDqg3ijHYbDfs+LG5hvzSoqaSZ9/Z9lKSP3CjZjv+pA==",
       "dev": true,
       "dependencies": {
         "@babel/helper-validator-identifier": "^7.22.20",
         "chalk": "^2.4.2",
-        "js-tokens": "^4.0.0"
+        "js-tokens": "^4.0.0",
+        "picocolors": "^1.0.0"
       },
       "engines": {
         "node": ">=6.9.0"
       }
     },
     "node_modules/@babel/parser": {
-      "version": "7.24.0",
-      "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.24.0.tgz",
-      "integrity": "sha512-QuP/FxEAzMSjXygs8v4N9dvdXzEHN4W1oF3PxuWAtPo08UdM17u89RDMgjLn/mlc56iM0HlLmVkO/wgR+rDgHg==",
+      "version": "7.24.1",
+      "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.24.1.tgz",
+      "integrity": "sha512-Zo9c7N3xdOIQrNip7Lc9wvRPzlRtovHVE4lkz8WEDr7uYh/GMQhSiIgFxGIArRHYdJE5kxtZjAf8rT0xhdLCzg==",
       "bin": {
         "parser": "bin/babel-parser.js"
       },
@@ -578,12 +584,12 @@
       }
     },
     "node_modules/@babel/plugin-syntax-jsx": {
-      "version": "7.23.3",
-      "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.23.3.tgz",
-      "integrity": "sha512-EB2MELswq55OHUoRZLGg/zC7QWUKfNLpE57m/S2yr1uEneIgsTgrSzXP3NXEsMkVn76OlaVVnzN+ugObuYGwhg==",
+      "version": "7.24.1",
+      "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.24.1.tgz",
+      "integrity": "sha512-2eCtxZXf+kbkMIsXS4poTvT4Yu5rXiRa+9xGVT56raghjmBTKMpFNc9R4IDiB4emao9eO22Ox7CxuJG7BgExqA==",
       "dev": true,
       "dependencies": {
-        "@babel/helper-plugin-utils": "^7.22.5"
+        "@babel/helper-plugin-utils": "^7.24.0"
       },
       "engines": {
         "node": ">=6.9.0"
@@ -593,12 +599,12 @@
       }
     },
     "node_modules/@babel/plugin-syntax-typescript": {
-      "version": "7.23.3",
-      "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-typescript/-/plugin-syntax-typescript-7.23.3.tgz",
-      "integrity": "sha512-9EiNjVJOMwCO+43TqoTrgQ8jMwcAd0sWyXi9RPfIsLTj4R2MADDDQXELhffaUx/uJv2AYcxBgPwH6j4TIA4ytQ==",
+      "version": "7.24.1",
+      "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-typescript/-/plugin-syntax-typescript-7.24.1.tgz",
+      "integrity": "sha512-Yhnmvy5HZEnHUty6i++gcfH1/l68AHnItFHnaCv6hn9dNh0hQvvQJsxpi4BMBFN5DLeHBuucT/0DgzXif/OyRw==",
       "dev": true,
       "dependencies": {
-        "@babel/helper-plugin-utils": "^7.22.5"
+        "@babel/helper-plugin-utils": "^7.24.0"
       },
       "engines": {
         "node": ">=6.9.0"
@@ -608,13 +614,13 @@
       }
     },
     "node_modules/@babel/plugin-transform-modules-commonjs": {
-      "version": "7.23.3",
-      "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.23.3.tgz",
-      "integrity": "sha512-aVS0F65LKsdNOtcz6FRCpE4OgsP2OFnW46qNxNIX9h3wuzaNcSQsJysuMwqSibC98HPrf2vCgtxKNwS0DAlgcA==",
+      "version": "7.24.1",
+      "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.24.1.tgz",
+      "integrity": "sha512-szog8fFTUxBfw0b98gEWPaEqF42ZUD/T3bkynW/wtgx2p/XCP55WEsb+VosKceRSd6njipdZvNogqdtI4Q0chw==",
       "dev": true,
       "dependencies": {
         "@babel/helper-module-transforms": "^7.23.3",
-        "@babel/helper-plugin-utils": "^7.22.5",
+        "@babel/helper-plugin-utils": "^7.24.0",
         "@babel/helper-simple-access": "^7.22.5"
       },
       "engines": {
@@ -625,15 +631,15 @@
       }
     },
     "node_modules/@babel/plugin-transform-typescript": {
-      "version": "7.23.6",
-      "resolved": "https://registry.npmjs.org/@babel/plugin-transform-typescript/-/plugin-transform-typescript-7.23.6.tgz",
-      "integrity": "sha512-6cBG5mBvUu4VUD04OHKnYzbuHNP8huDsD3EDqqpIpsswTDoqHCjLoHb6+QgsV1WsT2nipRqCPgxD3LXnEO7XfA==",
+      "version": "7.24.1",
+      "resolved": "https://registry.npmjs.org/@babel/plugin-transform-typescript/-/plugin-transform-typescript-7.24.1.tgz",
+      "integrity": "sha512-liYSESjX2fZ7JyBFkYG78nfvHlMKE6IpNdTVnxmlYUR+j5ZLsitFbaAE+eJSK2zPPkNWNw4mXL51rQ8WrvdK0w==",
       "dev": true,
       "dependencies": {
         "@babel/helper-annotate-as-pure": "^7.22.5",
-        "@babel/helper-create-class-features-plugin": "^7.23.6",
-        "@babel/helper-plugin-utils": "^7.22.5",
-        "@babel/plugin-syntax-typescript": "^7.23.3"
+        "@babel/helper-create-class-features-plugin": "^7.24.1",
+        "@babel/helper-plugin-utils": "^7.24.0",
+        "@babel/plugin-syntax-typescript": "^7.24.1"
       },
       "engines": {
         "node": ">=6.9.0"
@@ -643,16 +649,16 @@
       }
     },
     "node_modules/@babel/preset-typescript": {
-      "version": "7.23.3",
-      "resolved": "https://registry.npmjs.org/@babel/preset-typescript/-/preset-typescript-7.23.3.tgz",
-      "integrity": "sha512-17oIGVlqz6CchO9RFYn5U6ZpWRZIngayYCtrPRSgANSwC2V1Jb+iP74nVxzzXJte8b8BYxrL1yY96xfhTBrNNQ==",
+      "version": "7.24.1",
+      "resolved": "https://registry.npmjs.org/@babel/preset-typescript/-/preset-typescript-7.24.1.tgz",
+      "integrity": "sha512-1DBaMmRDpuYQBPWD8Pf/WEwCrtgRHxsZnP4mIy9G/X+hFfbI47Q2G4t1Paakld84+qsk2fSsUPMKg71jkoOOaQ==",
       "dev": true,
       "dependencies": {
-        "@babel/helper-plugin-utils": "^7.22.5",
-        "@babel/helper-validator-option": "^7.22.15",
-        "@babel/plugin-syntax-jsx": "^7.23.3",
-        "@babel/plugin-transform-modules-commonjs": "^7.23.3",
-        "@babel/plugin-transform-typescript": "^7.23.3"
+        "@babel/helper-plugin-utils": "^7.24.0",
+        "@babel/helper-validator-option": "^7.23.5",
+        "@babel/plugin-syntax-jsx": "^7.24.1",
+        "@babel/plugin-transform-modules-commonjs": "^7.24.1",
+        "@babel/plugin-transform-typescript": "^7.24.1"
       },
       "engines": {
         "node": ">=6.9.0"
@@ -685,18 +691,18 @@
       }
     },
     "node_modules/@babel/traverse": {
-      "version": "7.24.0",
-      "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.24.0.tgz",
-      "integrity": "sha512-HfuJlI8qq3dEDmNU5ChzzpZRWq+oxCZQyMzIMEqLho+AQnhMnKQUzH6ydo3RBl/YjPCuk68Y6s0Gx0AeyULiWw==",
+      "version": "7.24.1",
+      "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.24.1.tgz",
+      "integrity": "sha512-xuU6o9m68KeqZbQuDt2TcKSxUw/mrsvavlEqQ1leZ/B+C9tk6E4sRWy97WaXgvq5E+nU3cXMxv3WKOCanVMCmQ==",
       "dev": true,
       "dependencies": {
-        "@babel/code-frame": "^7.23.5",
-        "@babel/generator": "^7.23.6",
+        "@babel/code-frame": "^7.24.1",
+        "@babel/generator": "^7.24.1",
         "@babel/helper-environment-visitor": "^7.22.20",
         "@babel/helper-function-name": "^7.23.0",
         "@babel/helper-hoist-variables": "^7.22.5",
         "@babel/helper-split-export-declaration": "^7.22.6",
-        "@babel/parser": "^7.24.0",
+        "@babel/parser": "^7.24.1",
         "@babel/types": "^7.24.0",
         "debug": "^4.3.1",
         "globals": "^11.1.0"
@@ -1080,6 +1086,24 @@
         "@iconify/types": "*"
       }
     },
+    "node_modules/@iconify-json/material-symbols": {
+      "version": "1.1.76",
+      "resolved": "https://registry.npmjs.org/@iconify-json/material-symbols/-/material-symbols-1.1.76.tgz",
+      "integrity": "sha512-U3S0n2eENEZmAK+b+zvNBPxHySm7eo9bFQaKODlbrFyjNfaZVwpQMs7pZ3ZmeX9YLp0CtV8XqzmRb2YdhLJIkQ==",
+      "dev": true,
+      "dependencies": {
+        "@iconify/types": "*"
+      }
+    },
+    "node_modules/@iconify-json/mdi": {
+      "version": "1.1.64",
+      "resolved": "https://registry.npmjs.org/@iconify-json/mdi/-/mdi-1.1.64.tgz",
+      "integrity": "sha512-zGeo5TjhNFAY6FmSDBLAzDO811t77r6v/mDi7CAL9w5eXqKez6bIjk8R9AL/RHIeq44ALP4Ozr4lMqFTkHr7ug==",
+      "dev": true,
+      "dependencies": {
+        "@iconify/types": "*"
+      }
+    },
     "node_modules/@iconify-json/noto": {
       "version": "1.1.18",
       "resolved": "https://registry.npmjs.org/@iconify-json/noto/-/noto-1.1.18.tgz",
@@ -1099,9 +1123,9 @@
       }
     },
     "node_modules/@iconify-json/tabler": {
-      "version": "1.1.107",
-      "resolved": "https://registry.npmjs.org/@iconify-json/tabler/-/tabler-1.1.107.tgz",
-      "integrity": "sha512-4Ur2DK5kJzCVH1klR163F30n869XWauC2UUGc0vK2VL8v5rZTzpHllHVLnUOyx7pbV3q5rSVAoAW7/jij3HEBg==",
+      "version": "1.1.109",
+      "resolved": "https://registry.npmjs.org/@iconify-json/tabler/-/tabler-1.1.109.tgz",
+      "integrity": "sha512-74RaBQZQ0761iFTrgmuSH1fovfx0fBKn+txRbRNbRzfh8XWtlAHqKUc3CzvzATMLnVsSRJDxjG3qY4oWH/+opw==",
       "dev": true,
       "dependencies": {
         "@iconify/types": "*"
@@ -1255,14 +1279,14 @@
       }
     },
     "node_modules/@jridgewell/gen-mapping": {
-      "version": "0.3.3",
-      "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.3.tgz",
-      "integrity": "sha512-HLhSWOLRi875zjjMG/r+Nv0oCW8umGb0BgEhyX3dDX3egwZtB8PqLnjz3yedt8R5StBrzcg4aBpnh8UA9D1BoQ==",
+      "version": "0.3.5",
+      "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.5.tgz",
+      "integrity": "sha512-IzL8ZoEDIBRWEzlCcRhOaCupYyN5gdIK+Q6fbFdPDg6HqX6jpkItn7DFIpW9LQzXG6Df9sA7+OKnq0qlz/GaQg==",
       "dev": true,
       "dependencies": {
-        "@jridgewell/set-array": "^1.0.1",
+        "@jridgewell/set-array": "^1.2.1",
         "@jridgewell/sourcemap-codec": "^1.4.10",
-        "@jridgewell/trace-mapping": "^0.3.9"
+        "@jridgewell/trace-mapping": "^0.3.24"
       },
       "engines": {
         "node": ">=6.0.0"
@@ -1278,9 +1302,9 @@
       }
     },
     "node_modules/@jridgewell/set-array": {
-      "version": "1.1.2",
-      "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.1.2.tgz",
-      "integrity": "sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw==",
+      "version": "1.2.1",
+      "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.2.1.tgz",
+      "integrity": "sha512-R8gLRTZeyp03ymzP/6Lil/28tGeGEzhx1q2k703KGWRAI1VdvPIXdG70VJc2pAMw3NA6JKL5hhFu1sJX0Mnn/A==",
       "dev": true,
       "engines": {
         "node": ">=6.0.0"
@@ -1302,9 +1326,9 @@
       "integrity": "sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg=="
     },
     "node_modules/@jridgewell/trace-mapping": {
-      "version": "0.3.20",
-      "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.20.tgz",
-      "integrity": "sha512-R8LcPeWZol2zR8mmH3JeKQ6QRCFb7XgUhV9ZlGhHLGyg4wpPiPZNQOOWhFZhxKw8u//yTbNGI42Bx/3paXEQ+Q==",
+      "version": "0.3.25",
+      "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.25.tgz",
+      "integrity": "sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ==",
       "dev": true,
       "dependencies": {
         "@jridgewell/resolve-uri": "^3.1.0",
@@ -3450,38 +3474,38 @@
       }
     },
     "node_modules/@unocss/nuxt": {
-      "version": "0.58.5",
-      "resolved": "https://registry.npmjs.org/@unocss/nuxt/-/nuxt-0.58.5.tgz",
-      "integrity": "sha512-x5iIGATNAhAGfN2w0f+ulRzmJTgu7PcJ8XAFmAx9QMKkVGnnurZEyW4IEm3Kr/EsRMhJXLtmZnsAGjC09qUh6A==",
-      "dev": true,
-      "dependencies": {
-        "@nuxt/kit": "^3.10.0",
-        "@unocss/config": "0.58.5",
-        "@unocss/core": "0.58.5",
-        "@unocss/preset-attributify": "0.58.5",
-        "@unocss/preset-icons": "0.58.5",
-        "@unocss/preset-tagify": "0.58.5",
-        "@unocss/preset-typography": "0.58.5",
-        "@unocss/preset-uno": "0.58.5",
-        "@unocss/preset-web-fonts": "0.58.5",
-        "@unocss/preset-wind": "0.58.5",
-        "@unocss/reset": "0.58.5",
-        "@unocss/vite": "0.58.5",
-        "@unocss/webpack": "0.58.5",
-        "unocss": "0.58.5"
+      "version": "0.58.7",
+      "resolved": "https://registry.npmjs.org/@unocss/nuxt/-/nuxt-0.58.7.tgz",
+      "integrity": "sha512-qhUBiewBIKliTeqP/WIdTSpzRst54UMs3+MdrWRygbTGc2VVNnKGVxLyOHP3fupxGPz/3oaFboD1aXCJtpbgTw==",
+      "dev": true,
+      "dependencies": {
+        "@nuxt/kit": "^3.11.1",
+        "@unocss/config": "0.58.7",
+        "@unocss/core": "0.58.7",
+        "@unocss/preset-attributify": "0.58.7",
+        "@unocss/preset-icons": "0.58.7",
+        "@unocss/preset-tagify": "0.58.7",
+        "@unocss/preset-typography": "0.58.7",
+        "@unocss/preset-uno": "0.58.7",
+        "@unocss/preset-web-fonts": "0.58.7",
+        "@unocss/preset-wind": "0.58.7",
+        "@unocss/reset": "0.58.7",
+        "@unocss/vite": "0.58.7",
+        "@unocss/webpack": "0.58.7",
+        "unocss": "0.58.7"
       },
       "funding": {
         "url": "https://github.com/sponsors/antfu"
       }
     },
     "node_modules/@unocss/nuxt/node_modules/@nuxt/kit": {
-      "version": "3.10.3",
-      "resolved": "https://registry.npmjs.org/@nuxt/kit/-/kit-3.10.3.tgz",
-      "integrity": "sha512-PUjYB9Mvx0qD9H1QZBwwtY4fLlCLET+Mm9BVqUOtXCaGoXd6u6BE4e/dGFPk2UEKkIcDGrUMSbqkHYvsEuK9NQ==",
+      "version": "3.11.1",
+      "resolved": "https://registry.npmjs.org/@nuxt/kit/-/kit-3.11.1.tgz",
+      "integrity": "sha512-8VVlhaY4N+wipgHmSXP+gLM+esms9TEBz13I/J++PbOUJuf2cJlUUTyqMoRVL0xudVKK/8fJgSndRkyidy1m2w==",
       "dev": true,
       "dependencies": {
-        "@nuxt/schema": "3.10.3",
-        "c12": "^1.9.0",
+        "@nuxt/schema": "3.11.1",
+        "c12": "^1.10.0",
         "consola": "^3.2.3",
         "defu": "^6.1.4",
         "globby": "^14.0.1",
@@ -3489,12 +3513,12 @@
         "ignore": "^5.3.1",
         "jiti": "^1.21.0",
         "knitwork": "^1.0.0",
-        "mlly": "^1.6.0",
+        "mlly": "^1.6.1",
         "pathe": "^1.1.2",
         "pkg-types": "^1.0.3",
         "scule": "^1.3.0",
         "semver": "^7.6.0",
-        "ufo": "^1.4.0",
+        "ufo": "^1.5.2",
         "unctx": "^2.3.1",
         "unimport": "^3.7.1",
         "untyped": "^1.4.2"
@@ -3504,9 +3528,9 @@
       }
     },
     "node_modules/@unocss/nuxt/node_modules/@nuxt/schema": {
-      "version": "3.10.3",
-      "resolved": "https://registry.npmjs.org/@nuxt/schema/-/schema-3.10.3.tgz",
-      "integrity": "sha512-a4cYbeskEVBPazgAhvUGkL/j7ho/iPWMK3vCEm6dRMjSqHVEITRosrj0aMfLbRrDpTrMjlRs0ZitxiaUfE/p5Q==",
+      "version": "3.11.1",
+      "resolved": "https://registry.npmjs.org/@nuxt/schema/-/schema-3.11.1.tgz",
+      "integrity": "sha512-XyGlJsf3DtkouBCvBHlvjz+xvN4vza3W7pY3YBNMnktxlMQtfFiF3aB3A2NGLmBnJPqD3oY0j7lljraELb5hkg==",
       "dev": true,
       "dependencies": {
         "@nuxt/ui-templates": "^1.3.1",
@@ -3517,7 +3541,7 @@
         "pkg-types": "^1.0.3",
         "scule": "^1.3.0",
         "std-env": "^3.7.0",
-        "ufo": "^1.4.0",
+        "ufo": "^1.5.2",
         "unimport": "^3.7.1",
         "untyped": "^1.4.2"
       },
@@ -3525,6 +3549,425 @@
         "node": "^14.18.0 || >=16.10.0"
       }
     },
+    "node_modules/@unocss/nuxt/node_modules/@unocss/astro": {
+      "version": "0.58.7",
+      "resolved": "https://registry.npmjs.org/@unocss/astro/-/astro-0.58.7.tgz",
+      "integrity": "sha512-htqhe+Qn9UUnND214LlwS8a9Ib0hzO+IxY79cz1GDYoDV+Z4ONXCkUxLLlnnBM/HupWKOu+bdBWWVGIOHAniig==",
+      "dev": true,
+      "dependencies": {
+        "@unocss/core": "0.58.7",
+        "@unocss/reset": "0.58.7",
+        "@unocss/vite": "0.58.7"
+      },
+      "funding": {
+        "url": "https://github.com/sponsors/antfu"
+      },
+      "peerDependencies": {
+        "vite": "^2.9.0 || ^3.0.0-0 || ^4.0.0 || ^5.0.0-0"
+      },
+      "peerDependenciesMeta": {
+        "vite": {
+          "optional": true
+        }
+      }
+    },
+    "node_modules/@unocss/nuxt/node_modules/@unocss/cli": {
+      "version": "0.58.7",
+      "resolved": "https://registry.npmjs.org/@unocss/cli/-/cli-0.58.7.tgz",
+      "integrity": "sha512-Vr5LABxFvZa8K71qVOnP7FkSA14/xEqhVOO+KZzcZafdW3TCvWa/dr3Lr5mDUufY82s5/5KGFosVQWQymA8HMg==",
+      "dev": true,
+      "dependencies": {
+        "@ampproject/remapping": "^2.3.0",
+        "@rollup/pluginutils": "^5.1.0",
+        "@unocss/config": "0.58.7",
+        "@unocss/core": "0.58.7",
+        "@unocss/preset-uno": "0.58.7",
+        "cac": "^6.7.14",
+        "chokidar": "^3.6.0",
+        "colorette": "^2.0.20",
+        "consola": "^3.2.3",
+        "fast-glob": "^3.3.2",
+        "magic-string": "^0.30.8",
+        "pathe": "^1.1.2",
+        "perfect-debounce": "^1.0.0"
+      },
+      "bin": {
+        "unocss": "bin/unocss.mjs"
+      },
+      "engines": {
+        "node": ">=14"
+      },
+      "funding": {
+        "url": "https://github.com/sponsors/antfu"
+      }
+    },
+    "node_modules/@unocss/nuxt/node_modules/@unocss/config": {
+      "version": "0.58.7",
+      "resolved": "https://registry.npmjs.org/@unocss/config/-/config-0.58.7.tgz",
+      "integrity": "sha512-ZMSFWJI8DfE/4HiIU+hkTSKUtEkennRn+raej5HCGTfy5xpdYCm9Zdrw/cYqkN2LPHM8o076Z2sD6H4MV5HrvA==",
+      "dev": true,
+      "dependencies": {
+        "@unocss/core": "0.58.7",
+        "unconfig": "^0.3.11"
+      },
+      "engines": {
+        "node": ">=14"
+      },
+      "funding": {
+        "url": "https://github.com/sponsors/antfu"
+      }
+    },
+    "node_modules/@unocss/nuxt/node_modules/@unocss/core": {
+      "version": "0.58.7",
+      "resolved": "https://registry.npmjs.org/@unocss/core/-/core-0.58.7.tgz",
+      "integrity": "sha512-Df5ytibV0MB7kWLggzLHsJUj08Of2oqXmPg7QjRUghMvCT3dl2LUIZXiztYPMH0F4x0cPebNoa/pavNt8xz9eQ==",
+      "dev": true,
+      "funding": {
+        "url": "https://github.com/sponsors/antfu"
+      }
+    },
+    "node_modules/@unocss/nuxt/node_modules/@unocss/extractor-arbitrary-variants": {
+      "version": "0.58.7",
+      "resolved": "https://registry.npmjs.org/@unocss/extractor-arbitrary-variants/-/extractor-arbitrary-variants-0.58.7.tgz",
+      "integrity": "sha512-wEuilON0u/e1milNp1UBWGps3Hdtm9qBfmc2YmsHN8KhpTSSCluzbrLSYfF++tU5iWmVWR2514Lc2waVDhuiwg==",
+      "dev": true,
+      "dependencies": {
+        "@unocss/core": "0.58.7"
+      },
+      "funding": {
+        "url": "https://github.com/sponsors/antfu"
+      }
+    },
+    "node_modules/@unocss/nuxt/node_modules/@unocss/inspector": {
+      "version": "0.58.7",
+      "resolved": "https://registry.npmjs.org/@unocss/inspector/-/inspector-0.58.7.tgz",
+      "integrity": "sha512-5vYsAuOj4ODgCm2Hmfhgcih+MdjsOxAHpUUDcZKAuVkr5j4dmrQnjWmS0fafR5vcjQch6T1JTsPE9x/Ws51UIw==",
+      "dev": true,
+      "dependencies": {
+        "@unocss/core": "0.58.7",
+        "@unocss/rule-utils": "0.58.7",
+        "gzip-size": "^6.0.0",
+        "sirv": "^2.0.4"
+      },
+      "funding": {
+        "url": "https://github.com/sponsors/antfu"
+      }
+    },
+    "node_modules/@unocss/nuxt/node_modules/@unocss/postcss": {
+      "version": "0.58.7",
+      "resolved": "https://registry.npmjs.org/@unocss/postcss/-/postcss-0.58.7.tgz",
+      "integrity": "sha512-4UhYTj7AaCDJKPEa9GX9L9dnH+6ci04i9ZYdNdu+Pvbki2Q2wAa2FwqLwH7+6WgWm10b9AXVacExw+4hC2reOg==",
+      "dev": true,
+      "dependencies": {
+        "@unocss/config": "0.58.7",
+        "@unocss/core": "0.58.7",
+        "@unocss/rule-utils": "0.58.7",
+        "css-tree": "^2.3.1",
+        "fast-glob": "^3.3.2",
+        "magic-string": "^0.30.8",
+        "postcss": "^8.4.38"
+      },
+      "engines": {
+        "node": ">=14"
+      },
+      "funding": {
+        "url": "https://github.com/sponsors/antfu"
+      },
+      "peerDependencies": {
+        "postcss": "^8.4.21"
+      }
+    },
+    "node_modules/@unocss/nuxt/node_modules/@unocss/preset-attributify": {
+      "version": "0.58.7",
+      "resolved": "https://registry.npmjs.org/@unocss/preset-attributify/-/preset-attributify-0.58.7.tgz",
+      "integrity": "sha512-WmhrRSOAhbKn+q7A65Kg/49YDZOqfKxj+VZvngwjzDmSfZcr9BHhc67eg9IOF4OPHdKw/3rhSvA+FTMGre2Lpw==",
+      "dev": true,
+      "dependencies": {
+        "@unocss/core": "0.58.7"
+      },
+      "funding": {
+        "url": "https://github.com/sponsors/antfu"
+      }
+    },
+    "node_modules/@unocss/nuxt/node_modules/@unocss/preset-mini": {
+      "version": "0.58.7",
+      "resolved": "https://registry.npmjs.org/@unocss/preset-mini/-/preset-mini-0.58.7.tgz",
+      "integrity": "sha512-ktfrMlOtnks9j1r1ZJFzPcmCbWRjOfXh7UwoGYhH7c3Fi9Zbn1HI9+wblroEBstvbGUZGyaH5Ht+0rCmRrg5HQ==",
+      "dev": true,
+      "dependencies": {
+        "@unocss/core": "0.58.7",
+        "@unocss/extractor-arbitrary-variants": "0.58.7",
+        "@unocss/rule-utils": "0.58.7"
+      },
+      "funding": {
+        "url": "https://github.com/sponsors/antfu"
+      }
+    },
+    "node_modules/@unocss/nuxt/node_modules/@unocss/preset-tagify": {
+      "version": "0.58.7",
+      "resolved": "https://registry.npmjs.org/@unocss/preset-tagify/-/preset-tagify-0.58.7.tgz",
+      "integrity": "sha512-IDR9+QDgPjcANRIWzlmubPPtgYTXGxWFqrEfRyz7ZQ4YLiA2sSLpVyOwOBW5mP7Bl2hF5oGlTKYyprk4pRzyUA==",
+      "dev": true,
+      "dependencies": {
+        "@unocss/core": "0.58.7"
+      },
+      "funding": {
+        "url": "https://github.com/sponsors/antfu"
+      }
+    },
+    "node_modules/@unocss/nuxt/node_modules/@unocss/preset-typography": {
+      "version": "0.58.7",
+      "resolved": "https://registry.npmjs.org/@unocss/preset-typography/-/preset-typography-0.58.7.tgz",
+      "integrity": "sha512-GCZGrFGBJO/k9widlpRvCKoouRaprgvNtt8mKpv38ToDSWexMZcaOTZHpKUPgljmjJ5As7ASwmDvjv6uiM5uYg==",
+      "dev": true,
+      "dependencies": {
+        "@unocss/core": "0.58.7",
+        "@unocss/preset-mini": "0.58.7"
+      }
+    },
+    "node_modules/@unocss/nuxt/node_modules/@unocss/preset-uno": {
+      "version": "0.58.7",
+      "resolved": "https://registry.npmjs.org/@unocss/preset-uno/-/preset-uno-0.58.7.tgz",
+      "integrity": "sha512-oirPRtIailoewLvim/VjcxHZrBotRzBNaFZFMD1GLwScAYrzS8DWJ3pozNn7+s2E80ZUBfgekRTgvUKAFMPSCw==",
+      "dev": true,
+      "dependencies": {
+        "@unocss/core": "0.58.7",
+        "@unocss/preset-mini": "0.58.7",
+        "@unocss/preset-wind": "0.58.7",
+        "@unocss/rule-utils": "0.58.7"
+      },
+      "funding": {
+        "url": "https://github.com/sponsors/antfu"
+      }
+    },
+    "node_modules/@unocss/nuxt/node_modules/@unocss/preset-web-fonts": {
+      "version": "0.58.7",
+      "resolved": "https://registry.npmjs.org/@unocss/preset-web-fonts/-/preset-web-fonts-0.58.7.tgz",
+      "integrity": "sha512-97BhHYFudIVmMmLIZl3nA6puFLr2EEgG3xxR8Sa2Ox2sFL46D6oZrsxg9qr73QdJNOU3qk7HtnCn0+rozDrixg==",
+      "dev": true,
+      "dependencies": {
+        "@unocss/core": "0.58.7",
+        "ofetch": "^1.3.4"
+      },
+      "funding": {
+        "url": "https://github.com/sponsors/antfu"
+      }
+    },
+    "node_modules/@unocss/nuxt/node_modules/@unocss/preset-wind": {
+      "version": "0.58.7",
+      "resolved": "https://registry.npmjs.org/@unocss/preset-wind/-/preset-wind-0.58.7.tgz",
+      "integrity": "sha512-rELMKcd/cwMnw6fPf/dmg63u41fRXJoXDO5rlO/+Fa8DF4/r8KJTUbjJbZfcOnh3n8jHz3NUz+QigdRBuDTEuw==",
+      "dev": true,
+      "dependencies": {
+        "@unocss/core": "0.58.7",
+        "@unocss/preset-mini": "0.58.7",
+        "@unocss/rule-utils": "0.58.7"
+      },
+      "funding": {
+        "url": "https://github.com/sponsors/antfu"
+      }
+    },
+    "node_modules/@unocss/nuxt/node_modules/@unocss/reset": {
+      "version": "0.58.7",
+      "resolved": "https://registry.npmjs.org/@unocss/reset/-/reset-0.58.7.tgz",
+      "integrity": "sha512-KiN5u5D4zJcU0Tg+wjgTWYIm8VEfHpi7t2a3YfNCLo9s/75Ty4tlYB9StEShYmVMCXBOu0mK1CwqQTNaFpfM1w==",
+      "dev": true,
+      "funding": {
+        "url": "https://github.com/sponsors/antfu"
+      }
+    },
+    "node_modules/@unocss/nuxt/node_modules/@unocss/rule-utils": {
+      "version": "0.58.7",
+      "resolved": "https://registry.npmjs.org/@unocss/rule-utils/-/rule-utils-0.58.7.tgz",
+      "integrity": "sha512-SbMwAUSgx5v4TXy+MXiWbqzoMjVHSeMaJpJOruU9PmtrOuZmqeajffMtI6pLtGlgrEL76frLRyMmSErxhyNelw==",
+      "dev": true,
+      "dependencies": {
+        "@unocss/core": "^0.58.7",
+        "magic-string": "^0.30.8"
+      },
+      "engines": {
+        "node": ">=14"
+      },
+      "funding": {
+        "url": "https://github.com/sponsors/antfu"
+      }
+    },
+    "node_modules/@unocss/nuxt/node_modules/@unocss/scope": {
+      "version": "0.58.7",
+      "resolved": "https://registry.npmjs.org/@unocss/scope/-/scope-0.58.7.tgz",
+      "integrity": "sha512-DaAHFT3azxq5eFiTRrDAqk8TSDlo6x5ImBowzdNO4B2QMt+o1X9uhbe8Qt+WlG3MOwhti87JT8ooNA1pzi3Iig==",
+      "dev": true
+    },
+    "node_modules/@unocss/nuxt/node_modules/@unocss/transformer-attributify-jsx": {
+      "version": "0.58.7",
+      "resolved": "https://registry.npmjs.org/@unocss/transformer-attributify-jsx/-/transformer-attributify-jsx-0.58.7.tgz",
+      "integrity": "sha512-6kVTHvcTdlKpvXuXRgUPKFTTWFxJH0OL6N77x2WZgbDQc40mv95JIUCVBA8EnpRyGGTQi3yasiXIS7Ur2UmsbA==",
+      "dev": true,
+      "dependencies": {
+        "@unocss/core": "0.58.7"
+      },
+      "funding": {
+        "url": "https://github.com/sponsors/antfu"
+      }
+    },
+    "node_modules/@unocss/nuxt/node_modules/@unocss/transformer-attributify-jsx-babel": {
+      "version": "0.58.7",
+      "resolved": "https://registry.npmjs.org/@unocss/transformer-attributify-jsx-babel/-/transformer-attributify-jsx-babel-0.58.7.tgz",
+      "integrity": "sha512-IxEPQG7Kn+NgYEogOSKfqfGMQR7WU8X2DctaGBoQlizMiDr+q9DXM1dgGU0bXMxnSpRF8DYFHvgHefRnNUUVPg==",
+      "dev": true,
+      "dependencies": {
+        "@babel/core": "^7.24.3",
+        "@babel/plugin-syntax-jsx": "^7.24.1",
+        "@babel/preset-typescript": "^7.24.1",
+        "@unocss/core": "0.58.7"
+      },
+      "funding": {
+        "url": "https://github.com/sponsors/antfu"
+      }
+    },
+    "node_modules/@unocss/nuxt/node_modules/@unocss/transformer-compile-class": {
+      "version": "0.58.7",
+      "resolved": "https://registry.npmjs.org/@unocss/transformer-compile-class/-/transformer-compile-class-0.58.7.tgz",
+      "integrity": "sha512-+IWWA9/hmaZIjxB4JY3fuWuK4fAMV/uoi0T3kANDOnK/HUmX5pUF9oTzC3LBa+1SwzZiMoTJgiQEGKv1qa2QjQ==",
+      "dev": true,
+      "dependencies": {
+        "@unocss/core": "0.58.7"
+      },
+      "funding": {
+        "url": "https://github.com/sponsors/antfu"
+      }
+    },
+    "node_modules/@unocss/nuxt/node_modules/@unocss/transformer-directives": {
+      "version": "0.58.7",
+      "resolved": "https://registry.npmjs.org/@unocss/transformer-directives/-/transformer-directives-0.58.7.tgz",
+      "integrity": "sha512-vMn86ARgrhCd+bZf1qvwBWhvQnOkAwOXbFGHM2cuuC0VVGJQcRE+dwTnUEJ5iqKGUNFWPJ/7NaV47kh58YITcg==",
+      "dev": true,
+      "dependencies": {
+        "@unocss/core": "0.58.7",
+        "@unocss/rule-utils": "0.58.7",
+        "css-tree": "^2.3.1"
+      }
+    },
+    "node_modules/@unocss/nuxt/node_modules/@unocss/transformer-variant-group": {
+      "version": "0.58.7",
+      "resolved": "https://registry.npmjs.org/@unocss/transformer-variant-group/-/transformer-variant-group-0.58.7.tgz",
+      "integrity": "sha512-9yGvrecxvY6wEc1tV4AsUDMNbj8xWk6aJ3LyZNzxOzmxmNUNAIK+y81/Hp7djn+w0ck6ss/uo6Ug7tGX+0bKUw==",
+      "dev": true,
+      "dependencies": {
+        "@unocss/core": "0.58.7"
+      },
+      "funding": {
+        "url": "https://github.com/sponsors/antfu"
+      }
+    },
+    "node_modules/@unocss/nuxt/node_modules/@unocss/vite": {
+      "version": "0.58.7",
+      "resolved": "https://registry.npmjs.org/@unocss/vite/-/vite-0.58.7.tgz",
+      "integrity": "sha512-S8TJojR1/7O9Sfykj2k4yOq6gZOnjMNZq5ug/6edA11Q/gz2WrT/sx6aPcfIm3xVBnmLxaHfy3r06W+SiIbZcg==",
+      "dev": true,
+      "dependencies": {
+        "@ampproject/remapping": "^2.3.0",
+        "@rollup/pluginutils": "^5.1.0",
+        "@unocss/config": "0.58.7",
+        "@unocss/core": "0.58.7",
+        "@unocss/inspector": "0.58.7",
+        "@unocss/scope": "0.58.7",
+        "@unocss/transformer-directives": "0.58.7",
+        "chokidar": "^3.6.0",
+        "fast-glob": "^3.3.2",
+        "magic-string": "^0.30.8"
+      },
+      "funding": {
+        "url": "https://github.com/sponsors/antfu"
+      },
+      "peerDependencies": {
+        "vite": "^2.9.0 || ^3.0.0-0 || ^4.0.0 || ^5.0.0-0"
+      }
+    },
+    "node_modules/@unocss/nuxt/node_modules/@unocss/webpack": {
+      "version": "0.58.7",
+      "resolved": "https://registry.npmjs.org/@unocss/webpack/-/webpack-0.58.7.tgz",
+      "integrity": "sha512-e5R95VfNUsC42bPQdXTd8KVJScq/rmhu6eiN/fSOc6+zEb4ODt6y3KkCQCMSdSyKLKQnwPVnQfnDF9v6WlJeXw==",
+      "dev": true,
+      "dependencies": {
+        "@ampproject/remapping": "^2.3.0",
+        "@rollup/pluginutils": "^5.1.0",
+        "@unocss/config": "0.58.7",
+        "@unocss/core": "0.58.7",
+        "chokidar": "^3.6.0",
+        "fast-glob": "^3.3.2",
+        "magic-string": "^0.30.8",
+        "unplugin": "^1.10.0",
+        "webpack-sources": "^3.2.3"
+      },
+      "funding": {
+        "url": "https://github.com/sponsors/antfu"
+      },
+      "peerDependencies": {
+        "webpack": "^4 || ^5"
+      }
+    },
+    "node_modules/@unocss/nuxt/node_modules/gzip-size": {
+      "version": "6.0.0",
+      "resolved": "https://registry.npmjs.org/gzip-size/-/gzip-size-6.0.0.tgz",
+      "integrity": "sha512-ax7ZYomf6jqPTQ4+XCpUGyXKHk5WweS+e05MBO4/y3WJ5RkmPXNKvX+bx1behVILVwr6JSQvZAku021CHPXG3Q==",
+      "dev": true,
+      "dependencies": {
+        "duplexer": "^0.1.2"
+      },
+      "engines": {
+        "node": ">=10"
+      },
+      "funding": {
+        "url": "https://github.com/sponsors/sindresorhus"
+      }
+    },
+    "node_modules/@unocss/nuxt/node_modules/unocss": {
+      "version": "0.58.7",
+      "resolved": "https://registry.npmjs.org/unocss/-/unocss-0.58.7.tgz",
+      "integrity": "sha512-WZEG5+RWlMvuMX8qOpZI9PAwBlFpRMnGlOtQV3M6BHsUbEPvC7IPx1fr4I22XizctRfNftUG3MWe5l74CcoD7Q==",
+      "dev": true,
+      "dependencies": {
+        "@unocss/astro": "0.58.7",
+        "@unocss/cli": "0.58.7",
+        "@unocss/core": "0.58.7",
+        "@unocss/extractor-arbitrary-variants": "0.58.7",
+        "@unocss/postcss": "0.58.7",
+        "@unocss/preset-attributify": "0.58.7",
+        "@unocss/preset-icons": "0.58.7",
+        "@unocss/preset-mini": "0.58.7",
+        "@unocss/preset-tagify": "0.58.7",
+        "@unocss/preset-typography": "0.58.7",
+        "@unocss/preset-uno": "0.58.7",
+        "@unocss/preset-web-fonts": "0.58.7",
+        "@unocss/preset-wind": "0.58.7",
+        "@unocss/reset": "0.58.7",
+        "@unocss/transformer-attributify-jsx": "0.58.7",
+        "@unocss/transformer-attributify-jsx-babel": "0.58.7",
+        "@unocss/transformer-compile-class": "0.58.7",
+        "@unocss/transformer-directives": "0.58.7",
+        "@unocss/transformer-variant-group": "0.58.7",
+        "@unocss/vite": "0.58.7"
+      },
+      "engines": {
+        "node": ">=14"
+      },
+      "funding": {
+        "url": "https://github.com/sponsors/antfu"
+      },
+      "peerDependencies": {
+        "@unocss/webpack": "0.58.7",
+        "vite": "^2.9.0 || ^3.0.0-0 || ^4.0.0 || ^5.0.0-0"
+      },
+      "peerDependenciesMeta": {
+        "@unocss/webpack": {
+          "optional": true
+        },
+        "vite": {
+          "optional": true
+        }
+      }
+    },
     "node_modules/@unocss/postcss": {
       "version": "0.58.5",
       "resolved": "https://registry.npmjs.org/@unocss/postcss/-/postcss-0.58.5.tgz",
@@ -3562,19 +4005,28 @@
       }
     },
     "node_modules/@unocss/preset-icons": {
-      "version": "0.58.5",
-      "resolved": "https://registry.npmjs.org/@unocss/preset-icons/-/preset-icons-0.58.5.tgz",
-      "integrity": "sha512-LDNXavHtWaIvMvBezT9O8yiqHJChVCEfTRO6YFVY0yy+wo5jHiuMh6iKeHVcwbYdn3NqHYmpi7b/hrXPMtODzA==",
+      "version": "0.58.7",
+      "resolved": "https://registry.npmjs.org/@unocss/preset-icons/-/preset-icons-0.58.7.tgz",
+      "integrity": "sha512-GeFaWiWGDktRs9TKqT4gb78Cjo7qlatOTijfJ1Zoyd3QMfbg7mRJPZGgHnLtpwYju+QKxG618fwlGvzARKhNfg==",
       "dev": true,
       "dependencies": {
         "@iconify/utils": "^2.1.22",
-        "@unocss/core": "0.58.5",
-        "ofetch": "^1.3.3"
+        "@unocss/core": "0.58.7",
+        "ofetch": "^1.3.4"
       },
       "funding": {
         "url": "https://github.com/sponsors/antfu"
       }
     },
+    "node_modules/@unocss/preset-icons/node_modules/@unocss/core": {
+      "version": "0.58.7",
+      "resolved": "https://registry.npmjs.org/@unocss/core/-/core-0.58.7.tgz",
+      "integrity": "sha512-Df5ytibV0MB7kWLggzLHsJUj08Of2oqXmPg7QjRUghMvCT3dl2LUIZXiztYPMH0F4x0cPebNoa/pavNt8xz9eQ==",
+      "dev": true,
+      "funding": {
+        "url": "https://github.com/sponsors/antfu"
+      }
+    },
     "node_modules/@unocss/preset-mini": {
       "version": "0.58.5",
       "resolved": "https://registry.npmjs.org/@unocss/preset-mini/-/preset-mini-0.58.5.tgz",
@@ -3775,6 +4227,8 @@
       "resolved": "https://registry.npmjs.org/@unocss/webpack/-/webpack-0.58.5.tgz",
       "integrity": "sha512-FR17fZRZA+dHJtk7mmUUOlWuuhAxahhsQlTG0WSHh1FVDtpHGwGKDqWHrfmhFRi0XOcV+5bkVc6cp05yjfYqdA==",
       "dev": true,
+      "optional": true,
+      "peer": true,
       "dependencies": {
         "@ampproject/remapping": "^2.2.1",
         "@rollup/pluginutils": "^5.1.0",
@@ -6615,9 +7069,9 @@
       }
     },
     "node_modules/destr": {
-      "version": "2.0.2",
-      "resolved": "https://registry.npmjs.org/destr/-/destr-2.0.2.tgz",
-      "integrity": "sha512-65AlobnZMiCET00KaFFjUefxDX0khFA/E4myqZ7a6Sq1yZtR8+FVIvilVX66vF2uobSumxooYZChiRPCKNqhmg==",
+      "version": "2.0.3",
+      "resolved": "https://registry.npmjs.org/destr/-/destr-2.0.3.tgz",
+      "integrity": "sha512-2N3BOUU4gYMpTP24s5rF5iP7BDr7uNTCs4ozw3kf/eKfvWSIu93GEBi5m427YoyJoeOzQ5smuu4nNAPGb8idSQ==",
       "dev": true
     },
     "node_modules/destroy": {
@@ -9231,9 +9685,9 @@
       }
     },
     "node_modules/node-fetch-native": {
-      "version": "1.6.1",
-      "resolved": "https://registry.npmjs.org/node-fetch-native/-/node-fetch-native-1.6.1.tgz",
-      "integrity": "sha512-bW9T/uJDPAJB2YNYEpWzE54U5O3MQidXsOyTfnbKYtTtFexRvGzb1waphBN4ZwP6EcIvYYEOwW0b72BpAqydTw==",
+      "version": "1.6.4",
+      "resolved": "https://registry.npmjs.org/node-fetch-native/-/node-fetch-native-1.6.4.tgz",
+      "integrity": "sha512-IhOigYzAKHd244OC0JIMIUrjzctirCmPkaIfhDeGcEETWof5zKYUW7e7MYvChGWh/4CJeXEgsRyGzuF334rOOQ==",
       "dev": true
     },
     "node_modules/node-forge": {
@@ -10732,14 +11186,14 @@
       }
     },
     "node_modules/ofetch": {
-      "version": "1.3.3",
-      "resolved": "https://registry.npmjs.org/ofetch/-/ofetch-1.3.3.tgz",
-      "integrity": "sha512-s1ZCMmQWXy4b5K/TW9i/DtiN8Ku+xCiHcjQ6/J/nDdssirrQNOoB165Zu8EqLMA2lln1JUth9a0aW9Ap2ctrUg==",
+      "version": "1.3.4",
+      "resolved": "https://registry.npmjs.org/ofetch/-/ofetch-1.3.4.tgz",
+      "integrity": "sha512-KLIET85ik3vhEfS+3fDlc/BAZiAp+43QEC/yCo5zkNoY2YaKvNkOaFr/6wCFgFH1kuYQM5pMNi0Tg8koiIemtw==",
       "dev": true,
       "dependencies": {
-        "destr": "^2.0.1",
-        "node-fetch-native": "^1.4.0",
-        "ufo": "^1.3.0"
+        "destr": "^2.0.3",
+        "node-fetch-native": "^1.6.3",
+        "ufo": "^1.5.3"
       }
     },
     "node_modules/ohash": {
@@ -11239,9 +11693,9 @@
       }
     },
     "node_modules/postcss": {
-      "version": "8.4.33",
-      "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.33.tgz",
-      "integrity": "sha512-Kkpbhhdjw2qQs2O2DGX+8m5OVqEcbB9HRBvuYM9pgrjEFUg30A9LmXNlTAUj4S9kgtGyrMbTzVjH7E+s5Re2yg==",
+      "version": "8.4.38",
+      "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.38.tgz",
+      "integrity": "sha512-Wglpdk03BSfXkHoQa3b/oulrotAkwrlLDRSOb9D0bN86FdRyE9lppSp33aHNPgBa0JKCoB+drFLZkQoRRYae5A==",
       "funding": [
         {
           "type": "opencollective",
@@ -11259,7 +11713,7 @@
       "dependencies": {
         "nanoid": "^3.3.7",
         "picocolors": "^1.0.0",
-        "source-map-js": "^1.0.2"
+        "source-map-js": "^1.2.0"
       },
       "engines": {
         "node": "^10 || ^12 || >=14"
@@ -12696,9 +13150,9 @@
       }
     },
     "node_modules/source-map-js": {
-      "version": "1.0.2",
-      "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.0.2.tgz",
-      "integrity": "sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==",
+      "version": "1.2.0",
+      "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.2.0.tgz",
+      "integrity": "sha512-itJW8lvSA0TXEphiRoawsCksnlf8SyvmFzIhltqAHluXd88pkCd+cXJVHTDwdCr0IzwptSm035IHQktUu1QUMg==",
       "engines": {
         "node": ">=0.10.0"
       }
@@ -13321,9 +13775,9 @@
       }
     },
     "node_modules/ufo": {
-      "version": "1.4.0",
-      "resolved": "https://registry.npmjs.org/ufo/-/ufo-1.4.0.tgz",
-      "integrity": "sha512-Hhy+BhRBleFjpJ2vchUNN40qgkh0366FWJGqVLYBHev0vpHTrXSA0ryT+74UiW6KWsldNurQMKGqCm1M2zBciQ==",
+      "version": "1.5.3",
+      "resolved": "https://registry.npmjs.org/ufo/-/ufo-1.5.3.tgz",
+      "integrity": "sha512-Y7HYmWaFwPUmkoQCUIAYpKqkOf+SbVj/2fJJZ4RJMCfZp0rTGwRbzQD+HghfnhKOjL9E01okqz+ncJskGYfBNw==",
       "dev": true
     },
     "node_modules/ultrahtml": {
@@ -13569,10 +14023,24 @@
         }
       }
     },
+    "node_modules/unocss/node_modules/@unocss/preset-icons": {
+      "version": "0.58.5",
+      "resolved": "https://registry.npmjs.org/@unocss/preset-icons/-/preset-icons-0.58.5.tgz",
+      "integrity": "sha512-LDNXavHtWaIvMvBezT9O8yiqHJChVCEfTRO6YFVY0yy+wo5jHiuMh6iKeHVcwbYdn3NqHYmpi7b/hrXPMtODzA==",
+      "dev": true,
+      "dependencies": {
+        "@iconify/utils": "^2.1.22",
+        "@unocss/core": "0.58.5",
+        "ofetch": "^1.3.3"
+      },
+      "funding": {
+        "url": "https://github.com/sponsors/antfu"
+      }
+    },
     "node_modules/unplugin": {
-      "version": "1.9.0",
-      "resolved": "https://registry.npmjs.org/unplugin/-/unplugin-1.9.0.tgz",
-      "integrity": "sha512-14PslvMY3gNbXnQtNIRB566Q057L5Fe7f5LDEamxVi0QQVxoz5hrveBwwZLcKyHtZ09ysmipxRRj5Lv+BGz2Iw==",
+      "version": "1.10.0",
+      "resolved": "https://registry.npmjs.org/unplugin/-/unplugin-1.10.0.tgz",
+      "integrity": "sha512-CuZtvvO8ua2Wl+9q2jEaqH6m3DoQ38N7pvBYQbbaeNlWGvK2l6GHiKi29aIHDPoSxdUzQ7Unevf1/ugil5X6Pg==",
       "dev": true,
       "dependencies": {
         "acorn": "^8.11.3",
diff --git a/frontend/package.json b/frontend/package.json
index 1b81e60848dc43dd017ef89c5607b9dc1b0cb3d7..3d3837b15214fdebc2a3d654a832afe529ea4eed 100644
--- a/frontend/package.json
+++ b/frontend/package.json
@@ -10,10 +10,15 @@
     "postinstall": "nuxt prepare"
   },
   "devDependencies": {
+    "@iconify-json/material-symbols": "^1.1.76",
+    "@iconify-json/mdi": "^1.1.64",
+    "@iconify-json/tabler": "^1.1.109",
     "@nuxt/devtools": "latest",
     "@nuxtjs/plausible": "^0.2.4",
     "@nuxtjs/seo": "^2.0.0-rc.9",
     "@types/node": "^20.11.6",
+    "@unocss/nuxt": "^0.58.7",
+    "@unocss/preset-icons": "^0.58.7",
     "nuxt": "^3.9.3",
     "nuxt-security": "^0.14.2",
     "vuetify-nuxt-module": "^0.10.2"
diff --git a/frontend/pages/index.vue b/frontend/pages/index.vue
index 82f4e13d1d5886da3720c153520338b9dd8c7fef..b55b447139c3a6aefca446b4be478feaf8157e23 100644
--- a/frontend/pages/index.vue
+++ b/frontend/pages/index.vue
@@ -4,87 +4,115 @@ function resetError(error) {
   navigateTo("/")
 }
 
+
 </script>
 <template>
   <v-row>
     <v-col>
       <v-card flat color="background">
-        <v-card-title>Defense Finder</v-card-title>
-        <v-card-text>
-          Welcome on DefenseFinder's web page. On this site, you can freely use (without any login) the DefenseFinder
-          webservice (see below) and get help to navigate the ever expanding world of defense systems.
-          There is a <a href="https://defensefinder.mdmlab.fr/wiki/">collaborative knowledge base</a> of defense systems
-          that provide
-          essential information
-          on any given defense systems. You can further explore defense systems across <a
-            href="https://defensefinder.mdmlab.fr/wiki/refseq/">all
-            fully sequenced
-            bacteria</a> and get insight on the <a href="https://defensefinder.mdmlab.fr/wiki/structure/">
-            structure</a> of each protein
-          of those systems
-          thanks
-          to protein structure prediction using alphafold for monomer and dimers.
-          <p>
-            We encourage you to contribute to this knowledge database, and if you see any non up-to-date information,
-            let
-            us
-            know, or <a href="https://defensefinder.mdmlab.fr/wiki/help/contributing-wiki/">contribute yourself</a>
-          </p>
-        </v-card-text>
-
+        <v-card flat color="transparent">
+          <v-card-item>
+            <v-card-title>Defense Finder</v-card-title>
+          </v-card-item>
+          <v-card-text class="py-1">
+            Welcome on DefenseFinder's web page. On this site, you can freely use (without any login) the DefenseFinder
+            webservice (see below) and get help to navigate the ever expanding world of defense systems.
+            There is a <a class="text-primary" :href="toValue(useWikiUrl('/').wikiUrl)">collaborative knowledge base</a>
+            of defense systems
+            that provide
+            essential information
+            on any given defense systems. You can further explore defense systems across <a class="text-primary"
+              :href="toValue(useWikiUrl('/refseq').wikiUrl)">all
+              fully sequenced
+              bacteria</a> and get insight on the <a class="text-primary"
+              :href="toValue(useWikiUrl('/structure').wikiUrl)">
+              structure</a> of each protein
+            of those systems
+            thanks
+            to protein structure prediction using alphafold for monomer and dimers.
+            <p>
+              We encourage you to contribute to this knowledge database, and if you see any non up-to-date information,
+              let
+              us
+              know, or <a class="text-primary" :href="toValue(useWikiUrl('/help/contributing-wiki').wikiUrl)">contribute
+                yourself</a>
+            </p>
+          </v-card-text>
+        </v-card>
 
-        <v-card-text>
-          If you are using DefenseFinder please cite:
-          <v-list color="transparent">
-            <v-list-item color="transparent"
-              title="Systematic and quantitative view of the antiviral arsenal of prokaryotes"
-              subtitle="Tesson F., Hervé A. , Touchon M., d'Humières C., Cury J., Bernheim A., Nature Communication, 2022">
-            </v-list-item>
-            <v-list-item color="transparent"
-              title="MacSyFinder v2: Improved modelling and search engine to identify molecular systems in genomes"
-              subtitle="Néron, B; Denise, R; Coluzzi, C; Touchon, M; Rocha, E.P.C.; Abby, S.S., Peer Community Journal, 2023">
-            </v-list-item>
+        <v-card flat color="transparent">
+          <v-card-text>
+            <v-alert border="start" color="info" variant="tonal">
+              <v-alert-title>Defense Finder Webservice</v-alert-title>
+              <p> Run Defense Finder analysis. It accepts both proteic and nucleic fasta files as inputs. The format is
+                guessed
+                automatically</p>
 
-          </v-list>
-        </v-card-text>
-        <v-card-text>
-          <p>
-            The list of all systems can be found <a
-              href="https://defensefinder.mdmlab.fr/wiki/defense-systems/">here</a>
-          </p>
-          <p>
-            Any issues concerning DefenseFinder, the software, can be raised here :
-            <a href="https://github.com/mdmparis/defense-finder"
-              target="_blank">https://github.com/mdmparis/defense-finder</a>
-          </p>
-          Any issues concerning this website can be raised here : <a href="https://gitlab.pasteur.fr/mdm-lab/wiki"
-            target="_blank">https://gitlab.pasteur.fr/mdm-lab/wiki</a>
-          <p>
-            This site uses session cookies only to save your past analyses for a month.
-          </p>
-        </v-card-text>
+              <p>A Run usually takes a couple of minutes. You can find your last run in the Analyses panel on the left.
+              </p>
+              <p>Multiple analyses can be run at the same time, they can all be found in the Analyses panel.</p>
 
-        <v-card-text>
-          <v-alert border="start" color="info" variant="tonal">
-            <v-alert-title>Defense Finder</v-alert-title>
-            <p> Run Defense Finder analysis. It accepts both proteic and nucleic fasta files as inputs. The format is
-              guessed
-              automatically</p>
+              <p>Errors most often arise from incorrect input formats: make sure you are using a valid fasta file as
+                input.</p>
+            </v-alert>
+          </v-card-text>
+          <NuxtErrorBoundary>
+            <SubmitAnalysis></SubmitAnalysis>
+            <template #error="{ error }">
+              <ErrorAlert :error="error"></ErrorAlert>
+            </template>
+          </NuxtErrorBoundary>
+        </v-card>
+        <v-card flat color="transparent">
+          <v-card-text class="py-1">
+            <v-row>
+              <v-col cols="12">
+                <v-card variant="text">
+                  <v-list>
+                    <v-list-subheader>If you are using DefenseFinder please cite:</v-list-subheader>
+                    <v-list-item href="https://doi.org/10.1038/s41467-022-30269-9" target="_blank"
+                      title="Systematic and quantitative view of the antiviral arsenal of prokaryotes"
+                      subtitle="Tesson F., Hervé A. , Touchon M., d'Humières C., Cury J., Bernheim A., Nature Communication, 2022">
+                    </v-list-item>
+                    <v-list-item href="https://doi.org/10.24072/pcjournal.250" target="_blank"
+                      title="MacSyFinder v2: Improved modelling and search engine to identify molecular systems in genomes"
+                      subtitle="Néron, B; Denise, R; Coluzzi, C; Touchon, M; Rocha, E.P.C.; Abby, S.S., Peer Community Journal, 2023">
+                    </v-list-item>
+                  </v-list>
+                </v-card>
+              </v-col></v-row>
+          </v-card-text>
+        </v-card>
+        <v-card flat color="transparent">
+          <v-card-text>
+            <v-row>
+              <v-col cols="12" md="4">
+                <v-card title="List defense systems" class="mx-auto" rel="noopener"
+                  :href="toValue(useWikiUrl('/defense-systems').wikiUrl)" color="primary" variant="tonal">
+                  <template v-slot:prepend>
+                    <v-icon icon="i-tabler:virus-off"></v-icon>
+                  </template>
 
-            <p>A Run usually takes a couple of minutes. You can find your last run in the Analyses panel on the left.
-            </p>
-            <p>Multiple analyses can be run at the same time, they can all be found in the Analyses panel.</p>
+                  <v-card-text>The list of all systems describes in the knowledge database can be found here.
+                  </v-card-text>
 
-            <p>Errors most often arise from incorrect input formats: make sure you are using a valid fasta file as
-              input.</p>
-          </v-alert>
-        </v-card-text>
-        <NuxtErrorBoundary>
-          <SubmitAnalysis></SubmitAnalysis>
-          <template #error="{ error }">
-            <ErrorAlert :error="error"></ErrorAlert>
-          </template>
-        </NuxtErrorBoundary>
+                </v-card>
+              </v-col>
+              <v-col cols="12" md="4">
+                <v-card prepend-icon="mdi-github" href="https://github.com/mdmparis/defense-finder" target="_blank"
+                  rel="noopener" color="primary" variant="tonal" class="mx-auto" title="DefenseFinder issues">
+                  <v-card-text>Any issues concerning DefenseFinder, the
+                    software, can be raised here.</v-card-text></v-card>
+              </v-col>
+              <v-col cols="12" md="4">
+                <v-card prepend-icon="mdi-gitlab" href="https://gitlab.pasteur.fr/mdm-lab/wiki" target="_blank"
+                  rel="noopener" color="primary" variant="tonal" class="mx-auto" title="Wiki issues">
+                  <v-card-text>Any issues concerning the knowledge database website can be raised
+                    here.</v-card-text></v-card>
+              </v-col>
+            </v-row>
+          </v-card-text>
+        </v-card>
       </v-card>
     </v-col>
   </v-row>