diff --git a/package.json b/package.json
index 381841ed79619742c9bef5b87f8b1279865da3f4..08008a163b467be0258f5a7c46f3f51251a4ee0b 100644
--- a/package.json
+++ b/package.json
@@ -66,7 +66,7 @@
     "@sveltejs/adapter-node": "^5.0.0",
     "@sveltejs/kit": "^2.5.0",
     "@sveltejs/package": "^2.2.6",
-    "@sveltejs/vite-plugin-svelte": "^3.0.2",
+    "@sveltejs/vite-plugin-svelte": "^5.0.0",
     "@types/better-sqlite3": "^7.6.9",
     "@types/cookie": "^0.6.0",
     "@types/jsonwebtoken": "^9.0.5",
diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml
index 6880cbaddc5a82d7c30dca3a8ad03d600a954add..bb874554a5f41816a49042492c48940b9d8eafcc 100644
--- a/pnpm-lock.yaml
+++ b/pnpm-lock.yaml
@@ -10,13 +10,13 @@ importers:
     dependencies:
       '@lucia-auth/adapter-drizzle':
         specifier: '1'
-        version: 1.1.0(drizzle-orm@0.33.0(@types/better-sqlite3@7.6.11)(better-sqlite3@9.6.0))(lucia@3.2.0)
+        version: 1.1.0(drizzle-orm@0.33.0(@types/better-sqlite3@7.6.12)(better-sqlite3@9.6.0))(lucia@3.2.0)
       better-sqlite3:
         specifier: 8 || 9 || 11
         version: 9.6.0
       drizzle-orm:
         specifier: '0.33'
-        version: 0.33.0(@types/better-sqlite3@7.6.11)(better-sqlite3@9.6.0)
+        version: 0.33.0(@types/better-sqlite3@7.6.12)(better-sqlite3@9.6.0)
       openid-client:
         specifier: ^5.6.4
         version: 5.7.1
@@ -29,16 +29,16 @@ importers:
         version: 3.0.2(better-sqlite3@9.6.0)(lucia@3.2.0)
       '@sveltejs/adapter-node':
         specifier: ^5.0.0
-        version: 5.2.9(@sveltejs/kit@2.5.0(@sveltejs/vite-plugin-svelte@3.1.2(svelte@4.2.19)(vite@5.4.11(@types/node@22.9.1)))(svelte@4.2.19)(vite@5.4.11(@types/node@22.9.1)))
+        version: 5.2.9(@sveltejs/kit@2.5.0(@sveltejs/vite-plugin-svelte@5.0.2(svelte@4.2.19)(vite@5.4.11(@types/node@22.9.1)))(svelte@4.2.19)(vite@5.4.11(@types/node@22.9.1)))
       '@sveltejs/kit':
         specifier: ^2.5.0
-        version: 2.5.0(@sveltejs/vite-plugin-svelte@3.1.2(svelte@4.2.19)(vite@5.4.11(@types/node@22.9.1)))(svelte@4.2.19)(vite@5.4.11(@types/node@22.9.1))
+        version: 2.5.0(@sveltejs/vite-plugin-svelte@5.0.2(svelte@4.2.19)(vite@5.4.11(@types/node@22.9.1)))(svelte@4.2.19)(vite@5.4.11(@types/node@22.9.1))
       '@sveltejs/package':
         specifier: ^2.2.6
         version: 2.3.7(svelte@4.2.19)(typescript@5.6.3)
       '@sveltejs/vite-plugin-svelte':
-        specifier: ^3.0.2
-        version: 3.1.2(svelte@4.2.19)(vite@5.4.11(@types/node@22.9.1))
+        specifier: ^5.0.0
+        version: 5.0.2(svelte@4.2.19)(vite@5.4.11(@types/node@22.9.1))
       '@types/better-sqlite3':
         specifier: ^7.6.9
         version: 7.6.12
@@ -749,27 +749,24 @@ packages:
     peerDependencies:
       svelte: ^3.44.0 || ^4.0.0 || ^5.0.0-next.1
 
-  '@sveltejs/vite-plugin-svelte-inspector@2.1.0':
-    resolution: {integrity: sha512-9QX28IymvBlSCqsCll5t0kQVxipsfhFFL+L2t3nTWfXnddYwxBuAEtTtlaVQpRz9c37BhJjltSeY4AJSC03SSg==}
-    engines: {node: ^18.0.0 || >=20}
+  '@sveltejs/vite-plugin-svelte-inspector@4.0.1':
+    resolution: {integrity: sha512-J/Nmb2Q2y7mck2hyCX4ckVHcR5tu2J+MtBEQqpDrrgELZ2uvraQcK/ioCV61AqkdXFgriksOKIceDcQmqnGhVw==}
+    engines: {node: ^18.0.0 || ^20.0.0 || >=22}
     peerDependencies:
-      '@sveltejs/vite-plugin-svelte': ^3.0.0
-      svelte: ^4.0.0 || ^5.0.0-next.0
-      vite: ^5.0.0
+      '@sveltejs/vite-plugin-svelte': ^5.0.0
+      svelte: ^5.0.0
+      vite: ^6.0.0
 
-  '@sveltejs/vite-plugin-svelte@3.1.2':
-    resolution: {integrity: sha512-Txsm1tJvtiYeLUVRNqxZGKR/mI+CzuIQuc2gn+YCs9rMTowpNZ2Nqt53JdL8KF9bLhAf2ruR/dr9eZCwdTriRA==}
-    engines: {node: ^18.0.0 || >=20}
+  '@sveltejs/vite-plugin-svelte@5.0.2':
+    resolution: {integrity: sha512-GElAxQMlznx1pRdodtkmiyBZcjlaJntJ8APa2hBhnbUAJqKAFGdmwjRPJhh+2DMxwARRLBzQIs/iZ5EbR4X/og==}
+    engines: {node: ^18.0.0 || ^20.0.0 || >=22}
     peerDependencies:
-      svelte: ^4.0.0 || ^5.0.0-next.0
-      vite: ^5.0.0
+      svelte: ^5.0.0
+      vite: ^6.0.0
 
   '@tybys/wasm-util@0.8.1':
     resolution: {integrity: sha512-GSsTwyBl4pIzsxAY5wroZdyQKyhXk0d8PCRZtrSZ2WEB1cBdrp2EgGBwHOGCZtIIPun/DL3+AykCv+J6fyRH4Q==}
 
-  '@types/better-sqlite3@7.6.11':
-    resolution: {integrity: sha512-i8KcD3PgGtGBLl3+mMYA8PdKkButvPyARxA7IQAd6qeslht13qxb1zzO8dRCtE7U3IoJS782zDBAeoKiM695kg==}
-
   '@types/better-sqlite3@7.6.12':
     resolution: {integrity: sha512-fnQmj8lELIj7BSrZQAdBMHEHX8OZLYIHXqAKT1O7tDfLxaINzf00PMjw22r3N/xXh0w/sGHlO6SVaCQ2mj78lg==}
 
@@ -1464,12 +1461,12 @@ packages:
   magic-string@0.30.11:
     resolution: {integrity: sha512-+Wri9p0QHMy+545hKww7YAu5NyzF8iomPL/RQazugQ9+Ez4Ic3mERMd8ZTX5rfK944j+560ZJi8iAwgak1Ac7A==}
 
-  magic-string@0.30.12:
-    resolution: {integrity: sha512-Ea8I3sQMVXr8JhN4z+H/d8zwo+tYDgHE9+5G4Wnrwhs0gaK9fXTKx0Tw5Xwsd/bCPTTZNRAdpyzvoeORe9LYpw==}
-
   magic-string@0.30.14:
     resolution: {integrity: sha512-5c99P1WKTed11ZC0HMJOj6CDIue6F8ySu+bJL+85q1zBEIY8IklrJ1eiKC2NDRh3Ct3FcvmJPyQHb9erXMTJNw==}
 
+  magic-string@0.30.15:
+    resolution: {integrity: sha512-zXeaYRgZ6ldS1RJJUrMrYgNJ4fdwnyI6tVqoiIhyCyv5IVTK9BU8Ic2l253GGETQHxI4HNUwhJ3fjDhKqEoaAw==}
+
   magic-string@0.30.7:
     resolution: {integrity: sha512-8vBuFF/I/+OSLRmdf2wwFCJCz+nSn0m6DPvGH1fS/KiQoSaR+sETbov0eIk9KhEKy8CYqIkIAnbohxT/4H0kuA==}
     engines: {node: '>=12'}
@@ -1816,12 +1813,6 @@ packages:
       svelte:
         optional: true
 
-  svelte-hmr@0.16.0:
-    resolution: {integrity: sha512-Gyc7cOS3VJzLlfj7wKS0ZnzDVdv3Pn2IuVeJPk9m2skfhcu5bq3wtIZyQGggr7/Iim5rH5cncyQft/kRLupcnA==}
-    engines: {node: ^12.20 || ^14.13.1 || >= 16}
-    peerDependencies:
-      svelte: ^3.19.0 || ^4.0.0
-
   svelte2tsx@0.7.22:
     resolution: {integrity: sha512-hf55ujq17ufVpDQlJzaQfRr9EjlLIwGmFlpKq4uYrQAQFw/99q1OcVYyBT6568iJySgBUY9PdccURrORmfetmQ==}
     peerDependencies:
@@ -1946,10 +1937,10 @@ packages:
       terser:
         optional: true
 
-  vitefu@0.2.5:
-    resolution: {integrity: sha512-SgHtMLoqaeeGnd2evZ849ZbACbnwQCIwRH57t18FxcXoZop0uQu0uzlIhJBlF/eWVzuce0sHeqPcDo+evVcg8Q==}
+  vitefu@1.0.4:
+    resolution: {integrity: sha512-y6zEE3PQf6uu/Mt6DTJ9ih+kyJLr4XcSgHR2zUkM8SWDhuixEJxfJ6CZGMHh1Ec3vPLoEA0IHU5oWzVqw8ulow==}
     peerDependencies:
-      vite: ^3.0.0 || ^4.0.0 || ^5.0.0
+      vite: ^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0
     peerDependenciesMeta:
       vite:
         optional: true
@@ -2103,7 +2094,7 @@ snapshots:
   '@eslint/config-array@0.18.0':
     dependencies:
       '@eslint/object-schema': 2.1.4
-      debug: 4.3.7
+      debug: 4.4.0
       minimatch: 3.1.2
     transitivePeerDependencies:
       - supports-color
@@ -2113,7 +2104,7 @@ snapshots:
   '@eslint/eslintrc@3.1.0':
     dependencies:
       ajv: 6.12.6
-      debug: 4.3.7
+      debug: 4.4.0
       espree: 10.2.0
       globals: 14.0.0
       ignore: 5.3.2
@@ -2162,9 +2153,9 @@ snapshots:
       '@jridgewell/resolve-uri': 3.1.1
       '@jridgewell/sourcemap-codec': 1.5.0
 
-  '@lucia-auth/adapter-drizzle@1.1.0(drizzle-orm@0.33.0(@types/better-sqlite3@7.6.11)(better-sqlite3@9.6.0))(lucia@3.2.0)':
+  '@lucia-auth/adapter-drizzle@1.1.0(drizzle-orm@0.33.0(@types/better-sqlite3@7.6.12)(better-sqlite3@9.6.0))(lucia@3.2.0)':
     dependencies:
-      drizzle-orm: 0.33.0(@types/better-sqlite3@7.6.11)(better-sqlite3@9.6.0)
+      drizzle-orm: 0.33.0(@types/better-sqlite3@7.6.12)(better-sqlite3@9.6.0)
       lucia: 3.2.0
 
   '@lucia-auth/adapter-sqlite@3.0.2(better-sqlite3@9.6.0)(lucia@3.2.0)':
@@ -2322,7 +2313,7 @@ snapshots:
       estree-walker: 2.0.2
       fdir: 6.4.2(picomatch@4.0.2)
       is-reference: 1.2.1
-      magic-string: 0.30.12
+      magic-string: 0.30.14
       picomatch: 4.0.2
     optionalDependencies:
       rollup: 4.24.0
@@ -2453,17 +2444,17 @@ snapshots:
   '@rollup/rollup-win32-x64-msvc@4.25.0':
     optional: true
 
-  '@sveltejs/adapter-node@5.2.9(@sveltejs/kit@2.5.0(@sveltejs/vite-plugin-svelte@3.1.2(svelte@4.2.19)(vite@5.4.11(@types/node@22.9.1)))(svelte@4.2.19)(vite@5.4.11(@types/node@22.9.1)))':
+  '@sveltejs/adapter-node@5.2.9(@sveltejs/kit@2.5.0(@sveltejs/vite-plugin-svelte@5.0.2(svelte@4.2.19)(vite@5.4.11(@types/node@22.9.1)))(svelte@4.2.19)(vite@5.4.11(@types/node@22.9.1)))':
     dependencies:
       '@rollup/plugin-commonjs': 28.0.1(rollup@4.24.0)
       '@rollup/plugin-json': 6.1.0(rollup@4.24.0)
       '@rollup/plugin-node-resolve': 15.3.0(rollup@4.24.0)
-      '@sveltejs/kit': 2.5.0(@sveltejs/vite-plugin-svelte@3.1.2(svelte@4.2.19)(vite@5.4.11(@types/node@22.9.1)))(svelte@4.2.19)(vite@5.4.11(@types/node@22.9.1))
+      '@sveltejs/kit': 2.5.0(@sveltejs/vite-plugin-svelte@5.0.2(svelte@4.2.19)(vite@5.4.11(@types/node@22.9.1)))(svelte@4.2.19)(vite@5.4.11(@types/node@22.9.1))
       rollup: 4.24.0
 
-  '@sveltejs/kit@2.5.0(@sveltejs/vite-plugin-svelte@3.1.2(svelte@4.2.19)(vite@5.4.11(@types/node@22.9.1)))(svelte@4.2.19)(vite@5.4.11(@types/node@22.9.1))':
+  '@sveltejs/kit@2.5.0(@sveltejs/vite-plugin-svelte@5.0.2(svelte@4.2.19)(vite@5.4.11(@types/node@22.9.1)))(svelte@4.2.19)(vite@5.4.11(@types/node@22.9.1))':
     dependencies:
-      '@sveltejs/vite-plugin-svelte': 3.1.2(svelte@4.2.19)(vite@5.4.11(@types/node@22.9.1))
+      '@sveltejs/vite-plugin-svelte': 5.0.2(svelte@4.2.19)(vite@5.4.11(@types/node@22.9.1))
       '@types/cookie': 0.6.0
       cookie: 0.6.0
       devalue: 4.3.2
@@ -2490,26 +2481,25 @@ snapshots:
     transitivePeerDependencies:
       - typescript
 
-  '@sveltejs/vite-plugin-svelte-inspector@2.1.0(@sveltejs/vite-plugin-svelte@3.1.2(svelte@4.2.19)(vite@5.4.11(@types/node@22.9.1)))(svelte@4.2.19)(vite@5.4.11(@types/node@22.9.1))':
+  '@sveltejs/vite-plugin-svelte-inspector@4.0.1(@sveltejs/vite-plugin-svelte@5.0.2(svelte@4.2.19)(vite@5.4.11(@types/node@22.9.1)))(svelte@4.2.19)(vite@5.4.11(@types/node@22.9.1))':
     dependencies:
-      '@sveltejs/vite-plugin-svelte': 3.1.2(svelte@4.2.19)(vite@5.4.11(@types/node@22.9.1))
-      debug: 4.3.7
+      '@sveltejs/vite-plugin-svelte': 5.0.2(svelte@4.2.19)(vite@5.4.11(@types/node@22.9.1))
+      debug: 4.4.0
       svelte: 4.2.19
       vite: 5.4.11(@types/node@22.9.1)
     transitivePeerDependencies:
       - supports-color
 
-  '@sveltejs/vite-plugin-svelte@3.1.2(svelte@4.2.19)(vite@5.4.11(@types/node@22.9.1))':
+  '@sveltejs/vite-plugin-svelte@5.0.2(svelte@4.2.19)(vite@5.4.11(@types/node@22.9.1))':
     dependencies:
-      '@sveltejs/vite-plugin-svelte-inspector': 2.1.0(@sveltejs/vite-plugin-svelte@3.1.2(svelte@4.2.19)(vite@5.4.11(@types/node@22.9.1)))(svelte@4.2.19)(vite@5.4.11(@types/node@22.9.1))
-      debug: 4.3.7
+      '@sveltejs/vite-plugin-svelte-inspector': 4.0.1(@sveltejs/vite-plugin-svelte@5.0.2(svelte@4.2.19)(vite@5.4.11(@types/node@22.9.1)))(svelte@4.2.19)(vite@5.4.11(@types/node@22.9.1))
+      debug: 4.4.0
       deepmerge: 4.3.1
       kleur: 4.1.5
-      magic-string: 0.30.11
+      magic-string: 0.30.15
       svelte: 4.2.19
-      svelte-hmr: 0.16.0(svelte@4.2.19)
       vite: 5.4.11(@types/node@22.9.1)
-      vitefu: 0.2.5(vite@5.4.11(@types/node@22.9.1))
+      vitefu: 1.0.4(vite@5.4.11(@types/node@22.9.1))
     transitivePeerDependencies:
       - supports-color
 
@@ -2518,11 +2508,6 @@ snapshots:
       tslib: 2.7.0
     optional: true
 
-  '@types/better-sqlite3@7.6.11':
-    dependencies:
-      '@types/node': 22.7.4
-    optional: true
-
   '@types/better-sqlite3@7.6.12':
     dependencies:
       '@types/node': 22.9.1
@@ -2571,7 +2556,7 @@ snapshots:
       '@typescript-eslint/types': 8.9.0
       '@typescript-eslint/typescript-estree': 8.9.0(typescript@5.6.3)
       '@typescript-eslint/visitor-keys': 8.9.0
-      debug: 4.3.7
+      debug: 4.4.0
       eslint: 9.12.0
     optionalDependencies:
       typescript: 5.6.3
@@ -2587,7 +2572,7 @@ snapshots:
     dependencies:
       '@typescript-eslint/typescript-estree': 8.9.0(typescript@5.6.3)
       '@typescript-eslint/utils': 8.9.0(eslint@9.12.0)(typescript@5.6.3)
-      debug: 4.3.7
+      debug: 4.4.0
       ts-api-utils: 1.3.0(typescript@5.6.3)
     optionalDependencies:
       typescript: 5.6.3
@@ -2601,7 +2586,7 @@ snapshots:
     dependencies:
       '@typescript-eslint/types': 8.9.0
       '@typescript-eslint/visitor-keys': 8.9.0
-      debug: 4.3.7
+      debug: 4.4.0
       fast-glob: 3.3.2
       is-glob: 4.0.3
       minimatch: 9.0.5
@@ -2814,9 +2799,9 @@ snapshots:
 
   devalue@4.3.2: {}
 
-  drizzle-orm@0.33.0(@types/better-sqlite3@7.6.11)(better-sqlite3@9.6.0):
+  drizzle-orm@0.33.0(@types/better-sqlite3@7.6.12)(better-sqlite3@9.6.0):
     optionalDependencies:
-      '@types/better-sqlite3': 7.6.11
+      '@types/better-sqlite3': 7.6.12
       better-sqlite3: 9.6.0
 
   end-of-stream@1.4.4:
@@ -3164,11 +3149,11 @@ snapshots:
     dependencies:
       '@jridgewell/sourcemap-codec': 1.5.0
 
-  magic-string@0.30.12:
+  magic-string@0.30.14:
     dependencies:
       '@jridgewell/sourcemap-codec': 1.5.0
 
-  magic-string@0.30.14:
+  magic-string@0.30.15:
     dependencies:
       '@jridgewell/sourcemap-codec': 1.5.0
 
@@ -3537,10 +3522,6 @@ snapshots:
     optionalDependencies:
       svelte: 4.2.19
 
-  svelte-hmr@0.16.0(svelte@4.2.19):
-    dependencies:
-      svelte: 4.2.19
-
   svelte2tsx@0.7.22(svelte@4.2.19)(typescript@5.6.3):
     dependencies:
       dedent-js: 1.0.1
@@ -3665,7 +3646,7 @@ snapshots:
       '@types/node': 22.9.1
       fsevents: 2.3.3
 
-  vitefu@0.2.5(vite@5.4.11(@types/node@22.9.1)):
+  vitefu@1.0.4(vite@5.4.11(@types/node@22.9.1)):
     optionalDependencies:
       vite: 5.4.11(@types/node@22.9.1)