diff --git a/package-lock.json b/package-lock.json
index fce20056b9822325db30158a0f2d230b21be0613..1d82c562ba184472ad372b26858d5cbaba408f35 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -62,6 +62,7 @@
         "typescript": "^4.7.4",
         "vite": "^5.4.8",
         "vite-plugin-dts": "^4.3.0",
+        "vite-plugin-lib-inject-css": "^2.1.1",
         "vitest": "^2.1.2"
       },
       "peerDependencies": {
@@ -93,6 +94,153 @@
         "node": ">=6.0.0"
       }
     },
+    "node_modules/@ast-grep/napi": {
+      "version": "0.22.6",
+      "resolved": "https://registry.npmjs.org/@ast-grep/napi/-/napi-0.22.6.tgz",
+      "integrity": "sha512-kNF87HiI4omHC7VzyBZSvqOAXtMlSDRF2YX+O5ya0XKv/7/GYms1opLQ+BQ9twLLDj0WsSFX4MYg0TrinZTxTg==",
+      "dev": true,
+      "engines": {
+        "node": ">= 10"
+      },
+      "optionalDependencies": {
+        "@ast-grep/napi-darwin-arm64": "0.22.6",
+        "@ast-grep/napi-darwin-x64": "0.22.6",
+        "@ast-grep/napi-linux-arm64-gnu": "0.22.6",
+        "@ast-grep/napi-linux-x64-gnu": "0.22.6",
+        "@ast-grep/napi-linux-x64-musl": "0.22.6",
+        "@ast-grep/napi-win32-arm64-msvc": "0.22.6",
+        "@ast-grep/napi-win32-ia32-msvc": "0.22.6",
+        "@ast-grep/napi-win32-x64-msvc": "0.22.6"
+      }
+    },
+    "node_modules/@ast-grep/napi-darwin-arm64": {
+      "version": "0.22.6",
+      "resolved": "https://registry.npmjs.org/@ast-grep/napi-darwin-arm64/-/napi-darwin-arm64-0.22.6.tgz",
+      "integrity": "sha512-L9rEGJ8fNi5LxbZj860wbXxjX7DLNV799zcTaPOSzYadvNyhMY3LWvDXd45Vtx6Dh8QRtCoEMQmw8KaRCEjm9A==",
+      "cpu": [
+        "arm64"
+      ],
+      "dev": true,
+      "optional": true,
+      "os": [
+        "darwin"
+      ],
+      "engines": {
+        "node": ">= 10"
+      }
+    },
+    "node_modules/@ast-grep/napi-darwin-x64": {
+      "version": "0.22.6",
+      "resolved": "https://registry.npmjs.org/@ast-grep/napi-darwin-x64/-/napi-darwin-x64-0.22.6.tgz",
+      "integrity": "sha512-0iuM6iDJNhcPd6a/JJr64AallR7ttGW/MvUujfQdvJEZY5p9LK35xm23dULznW0tIMgwtMKPRaprgk8LPondKg==",
+      "cpu": [
+        "x64"
+      ],
+      "dev": true,
+      "optional": true,
+      "os": [
+        "darwin"
+      ],
+      "engines": {
+        "node": ">= 10"
+      }
+    },
+    "node_modules/@ast-grep/napi-linux-arm64-gnu": {
+      "version": "0.22.6",
+      "resolved": "https://registry.npmjs.org/@ast-grep/napi-linux-arm64-gnu/-/napi-linux-arm64-gnu-0.22.6.tgz",
+      "integrity": "sha512-9PAqNJlAQfFm1RW0DVCM/S4gFHdppxUTWacB3qEeJZXgdLnoH0KGQa4z3Xo559SPYDKZy0VnY02mZ3XJ+v6/Vw==",
+      "cpu": [
+        "arm64"
+      ],
+      "dev": true,
+      "optional": true,
+      "os": [
+        "linux"
+      ],
+      "engines": {
+        "node": ">= 10"
+      }
+    },
+    "node_modules/@ast-grep/napi-linux-x64-gnu": {
+      "version": "0.22.6",
+      "resolved": "https://registry.npmjs.org/@ast-grep/napi-linux-x64-gnu/-/napi-linux-x64-gnu-0.22.6.tgz",
+      "integrity": "sha512-nZf+gxXVrZqvP1LN6HwzOMA4brF3umBXfMequQzv8S6HeJ4c34P23F0Tw8mHtQpVYP9PQWJUvt3LJQ8Xvd5Hiw==",
+      "cpu": [
+        "x64"
+      ],
+      "dev": true,
+      "optional": true,
+      "os": [
+        "linux"
+      ],
+      "engines": {
+        "node": ">= 10"
+      }
+    },
+    "node_modules/@ast-grep/napi-linux-x64-musl": {
+      "version": "0.22.6",
+      "resolved": "https://registry.npmjs.org/@ast-grep/napi-linux-x64-musl/-/napi-linux-x64-musl-0.22.6.tgz",
+      "integrity": "sha512-gcJeBMgJQf2pZZo0lgH0Vg4ycyujM7Am8VlomXhavC/dPpkddA1tiHSIC4fCNneLU1EqHITy3ALSmM4GLdsjBw==",
+      "cpu": [
+        "x64"
+      ],
+      "dev": true,
+      "optional": true,
+      "os": [
+        "linux"
+      ],
+      "engines": {
+        "node": ">= 10"
+      }
+    },
+    "node_modules/@ast-grep/napi-win32-arm64-msvc": {
+      "version": "0.22.6",
+      "resolved": "https://registry.npmjs.org/@ast-grep/napi-win32-arm64-msvc/-/napi-win32-arm64-msvc-0.22.6.tgz",
+      "integrity": "sha512-YDDzvPIyl4ti8xZfjvGSGVCX9JJjMQjyWPlXcwRpiLRnHThtHTDL8PyE2yq+gAPuZ28QbrygMkP9EKXIyYFVcQ==",
+      "cpu": [
+        "arm64"
+      ],
+      "dev": true,
+      "optional": true,
+      "os": [
+        "win32"
+      ],
+      "engines": {
+        "node": ">= 10"
+      }
+    },
+    "node_modules/@ast-grep/napi-win32-ia32-msvc": {
+      "version": "0.22.6",
+      "resolved": "https://registry.npmjs.org/@ast-grep/napi-win32-ia32-msvc/-/napi-win32-ia32-msvc-0.22.6.tgz",
+      "integrity": "sha512-w5P0MDcBD3bifC2K9nCDEFYacy8HQnXdf6fX6cIE/7xL8XEDs6D1lQjGewrZDcMAXVXUQfupj4P27ZsJRmuIoQ==",
+      "cpu": [
+        "ia32"
+      ],
+      "dev": true,
+      "optional": true,
+      "os": [
+        "win32"
+      ],
+      "engines": {
+        "node": ">= 10"
+      }
+    },
+    "node_modules/@ast-grep/napi-win32-x64-msvc": {
+      "version": "0.22.6",
+      "resolved": "https://registry.npmjs.org/@ast-grep/napi-win32-x64-msvc/-/napi-win32-x64-msvc-0.22.6.tgz",
+      "integrity": "sha512-1aaHvgsCBwUP0tDf4HXPMpUV/nUwsOWgRCiBc2zIJjdEjT9TTk795EIX9Z1Nc0OMCrxVEceyiKcYTofXa0Fpxw==",
+      "cpu": [
+        "x64"
+      ],
+      "dev": true,
+      "optional": true,
+      "os": [
+        "win32"
+      ],
+      "engines": {
+        "node": ">= 10"
+      }
+    },
     "node_modules/@babel/code-frame": {
       "version": "7.26.2",
       "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.26.2.tgz",
@@ -13803,6 +13951,20 @@
         }
       }
     },
+    "node_modules/vite-plugin-lib-inject-css": {
+      "version": "2.1.1",
+      "resolved": "https://registry.npmjs.org/vite-plugin-lib-inject-css/-/vite-plugin-lib-inject-css-2.1.1.tgz",
+      "integrity": "sha512-RIMeVnqBK/8I0E9nnQWzws6pdj5ilRMPJSnXYb6nWxNR4EmDPnksnb/ACoR5Fy7QfzULqS4gtQMrjwnNCC9zoA==",
+      "dev": true,
+      "dependencies": {
+        "@ast-grep/napi": "^0.22.3",
+        "magic-string": "^0.30.10",
+        "picocolors": "^1.0.0"
+      },
+      "peerDependencies": {
+        "vite": "*"
+      }
+    },
     "node_modules/vite/node_modules/@esbuild/aix-ppc64": {
       "version": "0.21.5",
       "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.21.5.tgz",
diff --git a/package.json b/package.json
index 77d9eac30d2a723f119cb2daba11d1f3f9398cb9..5e9430c50d7ba3b59acd71aa70e2a9863abe82d4 100644
--- a/package.json
+++ b/package.json
@@ -6,7 +6,10 @@
   "main": "dist/index.js",
   "module": "dist/index.es.js",
   "types": "dist/index.d.ts",
-   "exports": {
+  "sideEffects": [
+    "**/*.css"
+  ],
+  "exports": {
     ".": {
       "import": "./dist/index.js"
     }
@@ -69,6 +72,7 @@
     "typescript": "^4.7.4",
     "vite": "^5.4.8",
     "vite-plugin-dts": "^4.3.0",
+    "vite-plugin-lib-inject-css": "^2.1.1",
     "vitest": "^2.1.2"
   },
   "peerDependencies": {
diff --git a/vite.config.ts b/vite.config.ts
index a98e50d1c45a170257a4468b9f391d34faaf13ee..ebd337e9e0d02b358d74aca8d6fa42deb83e61b8 100644
--- a/vite.config.ts
+++ b/vite.config.ts
@@ -6,6 +6,8 @@ import { extname, join, relative, resolve } from "node:path";
 import { glob } from "glob";
 import { fileURLToPath } from "node:url";
 import { peerDependencies } from "./package.json";
+import { libInjectCss } from 'vite-plugin-lib-inject-css';
+
 export default defineConfig({
   build: {
     lib: {
@@ -36,13 +38,13 @@ export default defineConfig({
       ),
       output: {
         assetFileNames: "assets/[name][extname]",
-        chunkFileNames: "assets/[name].js",
+        chunkFileNames: "chunks/[name].[hash].js",
         entryFileNames: "[name].js"
       },
       external: [...Object.keys(peerDependencies)]
     }
   },
-  plugins: [react(), dts()],
+  plugins: [react(), dts(), libInjectCss()],
   test: {
     setupFiles: "./src/setupTests.ts",
     environment: "jsdom",