diff --git a/packages/person-select/package.json b/packages/person-select/package.json
index bac627fecdc660387ee44434ab646e32bbc46eda..d5053d5f975ec0832abec7ae0ce666072f8056a3 100644
--- a/packages/person-select/package.json
+++ b/packages/person-select/package.json
@@ -26,6 +26,7 @@
     "vpu-common": "file:./vendor/common"
   },
   "dependencies": {
+    "bulma": "^0.7.5",
     "jquery": "^3.4.1",
     "lit-element": "^2.1.0",
     "select2": "^4.0.9"
diff --git a/packages/person-select/rollup.config.js b/packages/person-select/rollup.config.js
index 28a808ecf55172fd3c07cb61f78e10d0b691e0bc..547f419daf47a73aa7db2d18cb119d2d694f8942 100644
--- a/packages/person-select/rollup.config.js
+++ b/packages/person-select/rollup.config.js
@@ -34,12 +34,14 @@ export default {
             include: 'node_modules/**'
         }),
         url({
-          limit: 0,
-          include: [
-            "node_modules/select2/**/*.css",
-          ],
-          emitFiles: true,
-          fileName: 'shared/[name].[hash][extname]'
+            limit: 0,
+            include: [
+                "node_modules/bulma/**/*.css",
+                "node_modules/bulma/**/*.sass",
+                "node_modules/select2/**/*.css",
+            ],
+            emitFiles: true,
+            fileName: 'shared/[name].[hash][extname]'
         }),
         json(),
         (build !== 'local' && build !== 'test') ? terser() : false,
diff --git a/packages/person-select/src/person-select-demo.js b/packages/person-select/src/person-select-demo.js
index a7a09a4e461d3b8f7be353404cffea745a476b82..a68d02597d56318f82b8290c239b8056dc1c7371 100644
--- a/packages/person-select/src/person-select-demo.js
+++ b/packages/person-select/src/person-select-demo.js
@@ -2,6 +2,8 @@ import {i18n} from './i18n.js';
 import {html, LitElement} from 'lit-element';
 import './person-select.js';
 import * as commonUtils from 'vpu-common/utils';
+import bulmaCSSPath from "bulma/css/bulma.min.css";
+import {getAssetURL} from "./utils";
 
 class PersonSelectDemo extends LitElement {
     constructor() {
@@ -24,10 +26,9 @@ class PersonSelectDemo extends LitElement {
     }
 
     render() {
+        const bulmaCSS = getAssetURL(bulmaCSSPath);
         return html`
-            <style>
-            </style>
-            <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/bulma/0.7.5/css/bulma.min.css">
+            <link rel="stylesheet" href="${bulmaCSS}">
 
             <section class="section">
                 <div class="container">
diff --git a/packages/person-select/src/person-select.js b/packages/person-select/src/person-select.js
index 8f9bd760395b32e8e9a344ed3e98f2107612cd3a..51d9de146eaabef3ece9e0a43c55b5b770c75af5 100644
--- a/packages/person-select/src/person-select.js
+++ b/packages/person-select/src/person-select.js
@@ -8,8 +8,10 @@ import {html} from 'lit-element';
 import {i18n} from './i18n.js';
 import VPULitElementJQuery from 'vpu-common/vpu-lit-element-jquery';
 import * as commonUtils from 'vpu-common/utils';
+import * as utils from "./utils";
 import select2CSSPath from 'select2/dist/css/select2.min.css';
 import {send as notify} from "vpu-common/notification";
+import bulmaCSSPath from "bulma/css/bulma.min.css";
 
 
 select2(window, $);
@@ -216,9 +218,9 @@ class PersonSelect extends VPULitElementJQuery {
 
     render() {
         const select2CSS = getAssetURL(select2CSSPath);
-
+        const bulmaCSS = getAssetURL(bulmaCSSPath);
         return html`
-            <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/bulma/0.7.5/css/bulma.min.css">
+            <link rel="stylesheet" href="${bulmaCSS}">
             <link rel="stylesheet" href="${select2CSS}">
             <style>
                 #${this.selectId} {
diff --git a/packages/person-select/src/utils.js b/packages/person-select/src/utils.js
index c56cdbfc34bf97116504fc85e6eeea52e423aa6d..ffa65251ebd049880c9271e990ebea64c6dbebce 100644
--- a/packages/person-select/src/utils.js
+++ b/packages/person-select/src/utils.js
@@ -6,7 +6,7 @@ export const getAssetURL = (path) => {
     // newer browsers only
     //var url = import.meta.url;
     return new URL(path, url).href;
-}
+};
 
 /**
  * Finds an object in a JSON result by identifier
@@ -27,4 +27,4 @@ export const findObjectInApiResults = (identifier, results, identifierAttribute
             return object;
         }
     }
-}
+};
diff --git a/packages/person-select/vendor/auth b/packages/person-select/vendor/auth
index 6a6413f48e0cd5508546841905f73a9486211bd0..fd7e46df47782d2f4438ed81aff7bfc7f5ddf1d9 160000
--- a/packages/person-select/vendor/auth
+++ b/packages/person-select/vendor/auth
@@ -1 +1 @@
-Subproject commit 6a6413f48e0cd5508546841905f73a9486211bd0
+Subproject commit fd7e46df47782d2f4438ed81aff7bfc7f5ddf1d9
diff --git a/packages/person-select/vendor/common b/packages/person-select/vendor/common
index f65096b99b737a046d07ad6616eec31788850422..5e3da6e22fd0d14b95fbc032d385c020ae47fba7 160000
--- a/packages/person-select/vendor/common
+++ b/packages/person-select/vendor/common
@@ -1 +1 @@
-Subproject commit f65096b99b737a046d07ad6616eec31788850422
+Subproject commit 5e3da6e22fd0d14b95fbc032d385c020ae47fba7