Index: trip-planner-front/node_modules/mini-css-extract-plugin/dist/index.js
===================================================================
--- trip-planner-front/node_modules/mini-css-extract-plugin/dist/index.js	(revision 6a3a178323fd905112b5392bd9d3cb83b66ef2d3)
+++ trip-planner-front/node_modules/mini-css-extract-plugin/dist/index.js	(revision 571e0df9a7a5e798c9941a85842f785177bedbbd)
@@ -7,6 +7,4 @@
 
 var _schemaUtils = require("schema-utils");
-
-var _identifier = require("webpack/lib/util/identifier");
 
 var _pluginOptions = _interopRequireDefault(require("./plugin-options.json"));
@@ -54,4 +52,6 @@
         identifierIndex,
         content,
+        layer,
+        supports,
         media,
         sourceMap,
@@ -65,4 +65,6 @@
         this._identifierIndex = identifierIndex;
         this.content = content;
+        this.layer = layer;
+        this.supports = supports;
         this.media = media;
         this.sourceMap = sourceMap;
@@ -108,7 +110,9 @@
 
       updateCacheModule(module) {
-        if (this.content !== module.content || this.media !== module.media || this.sourceMap !== module.sourceMap || this.assets !== module.assets || this.assetsInfo !== module.assetsInfo) {
+        if (this.content !== module.content || this.layer !== module.layer || this.supports !== module.supports || this.media !== module.media || this.sourceMap !== module.sourceMap || this.assets !== module.assets || this.assetsInfo !== module.assetsInfo) {
           this._needBuild = true;
           this.content = module.content;
+          this.layer = module.layer;
+          this.supports = module.supports;
           this.media = module.media;
           this.sourceMap = module.sourceMap;
@@ -143,4 +147,10 @@
         const hash = webpack.util.createHash(hashFunction);
         hash.update(this.content);
+
+        if (this.layer) {
+          hash.update(this.layer);
+        }
+
+        hash.update(this.supports || "");
         hash.update(this.media || "");
         hash.update(this.sourceMap || "");
@@ -161,4 +171,6 @@
         write(this._identifierIndex);
         write(this.content);
+        write(this.layer);
+        write(this.supports);
         write(this.media);
         write(this.sourceMap);
@@ -190,4 +202,6 @@
         const identifierIndex = read();
         const content = read();
+        const layer = read();
+        const supports = read();
         const media = read();
         const sourceMap = read();
@@ -199,4 +213,6 @@
           identifierIndex,
           content,
+          layer,
+          supports,
           media,
           sourceMap,
@@ -225,4 +241,6 @@
         identifier,
         content,
+        layer,
+        supports,
         media,
         sourceMap
@@ -232,4 +250,6 @@
         this.identifierIndex = identifierIndex;
         this.content = content;
+        this.layer = layer;
+        this.supports = supports;
         this.media = media;
         this.sourceMap = sourceMap;
@@ -256,4 +276,6 @@
         write(this.identifier);
         write(this.content);
+        write(this.layer);
+        write(this.supports);
         write(this.media);
         write(this.sourceMap);
@@ -284,4 +306,6 @@
           identifier: read(),
           content: read(),
+          layer: read(),
+          supports: read(),
           media: read(),
           sourceMap: read()
@@ -307,5 +331,8 @@
       filename: DEFAULT_FILENAME,
       ignoreOrder: false,
-      experimentalUseImportModule: false
+      // TODO remove in the next major release
+      // eslint-disable-next-line no-undefined
+      experimentalUseImportModule: undefined,
+      runtime: true
     }, options);
     this.runtimeOptions = {
@@ -347,8 +374,4 @@
 
     if (this.options.experimentalUseImportModule) {
-      if (!compiler.options.experiments) {
-        throw new Error("experimentalUseImportModule is only support for webpack >= 5.33.2");
-      }
-
       if (typeof compiler.options.experiments.executeModule === "undefined") {
         // eslint-disable-next-line no-param-reassign
@@ -469,10 +492,14 @@
           chunk.contentHash[_utils.MODULE_TYPE] = hash.digest(hashDigest).substring(0, hashDigestLength);
         }
-      });
+      }); // All the code below is dedicated to the runtime and can be skipped when the `runtime` option is `false`
+
+      if (!this.options.runtime) {
+        return;
+      }
+
       const {
-        Template
-      } = webpack;
-      const {
+        Template,
         RuntimeGlobals,
+        RuntimeModule,
         runtime
       } = webpack; // eslint-disable-next-line no-shadow
@@ -497,8 +524,4 @@
         return obj;
       };
-
-      const {
-        RuntimeModule
-      } = webpack;
 
       class CssLoadingRuntimeModule extends RuntimeModule {
@@ -715,12 +738,24 @@
         }
 
+        if (module.supports) {
+          source.add(`@supports (${module.supports}) {\n`);
+        }
+
         if (module.media) {
           source.add(`@media ${module.media} {\n`);
         }
 
+        const needLayer = typeof module.layer !== "undefined";
+
+        if (needLayer) {
+          source.add(`@layer${module.layer.length > 0 ? ` ${module.layer}` : ""} {\n`);
+        }
+
         const {
           path: filename
         } = compilation.getPathWithInfo(filenameTemplate, pathData);
-        const undoPath = (0, _identifier.getUndoPath)(filename, compiler.outputPath, false);
+        const undoPath = (0, _utils.getUndoPath)(filename, compiler.outputPath, false);
+        content = content.replace(new RegExp(_utils.ABSOLUTE_PUBLIC_PATH, "g"), "");
+        content = content.replace(new RegExp(_utils.SINGLE_DOT_PATH_SEGMENT, "g"), ".");
         content = content.replace(new RegExp(_utils.AUTO_PUBLIC_PATH, "g"), undoPath);
 
@@ -733,5 +768,13 @@
         source.add("\n");
 
+        if (needLayer) {
+          source.add("}\n");
+        }
+
         if (module.media) {
+          source.add("}\n");
+        }
+
+        if (module.supports) {
           source.add("}\n");
         }
Index: trip-planner-front/node_modules/mini-css-extract-plugin/dist/loader.js
===================================================================
--- trip-planner-front/node_modules/mini-css-extract-plugin/dist/loader.js	(revision 6a3a178323fd905112b5392bd9d3cb83b66ef2d3)
+++ trip-planner-front/node_modules/mini-css-extract-plugin/dist/loader.js	(revision 571e0df9a7a5e798c9941a85842f785177bedbbd)
@@ -88,5 +88,5 @@
       const exports = originalExports.__esModule ? originalExports.default : originalExports;
       namedExport = // eslint-disable-next-line no-underscore-dangle
-      originalExports.__esModule && !("locals" in originalExports.default);
+      originalExports.__esModule && (!originalExports.default || !("locals" in originalExports.default));
 
       if (namedExport) {
@@ -109,5 +109,5 @@
         dependencies = [[null, exports]];
       } else {
-        dependencies = exports.map(([id, content, media, sourceMap]) => {
+        dependencies = exports.map(([id, content, media, sourceMap, supports, layer]) => {
           let identifier = id;
           let context;
@@ -129,4 +129,6 @@
             content: Buffer.from(content),
             media,
+            supports,
+            layer,
             sourceMap: sourceMap ? Buffer.from(JSON.stringify(sourceMap)) : // eslint-disable-next-line no-undefined
             undefined
@@ -165,16 +167,18 @@
   }
 
-  if (optionsFromPlugin.experimentalUseImportModule) {
+  if (typeof optionsFromPlugin.experimentalUseImportModule === "undefined" && typeof this.importModule === "function" || optionsFromPlugin.experimentalUseImportModule) {
     if (!this.importModule) {
-      callback(new Error("You are using experimentalUseImportModule but 'this.importModule' is not available in loader context. You need to have at least webpack 5.33.2."));
+      callback(new Error("You are using 'experimentalUseImportModule' but 'this.importModule' is not available in loader context. You need to have at least webpack 5.33.2."));
       return;
     }
 
-    this.importModule(`${this.resourcePath}.webpack[javascript/auto]!=!${request}`, {
+    const isAbsolutePublicPath = /^[a-zA-Z][a-zA-Z\d+\-.]*?:/.test(publicPath);
+    const publicPathForExtract = isAbsolutePublicPath ? publicPath : `${_utils.ABSOLUTE_PUBLIC_PATH}${publicPath.replace(/\./g, _utils.SINGLE_DOT_PATH_SEGMENT)}`;
+    this.importModule(`${this.resourcePath}.webpack[javascript/auto]!=!!!${request}`, {
       layer: options.layer,
-      publicPath
-    }, (err, exports) => {
-      if (err) {
-        callback(err);
+      publicPath: publicPathForExtract
+    }, (error, exports) => {
+      if (error) {
+        callback(error);
         return;
       }
@@ -307,3 +311,5 @@
 
 
-function _default() {}
+function _default(content) {
+  console.log(content);
+}
Index: trip-planner-front/node_modules/mini-css-extract-plugin/dist/plugin-options.json
===================================================================
--- trip-planner-front/node_modules/mini-css-extract-plugin/dist/plugin-options.json	(revision 6a3a178323fd905112b5392bd9d3cb83b66ef2d3)
+++ trip-planner-front/node_modules/mini-css-extract-plugin/dist/plugin-options.json	(revision 571e0df9a7a5e798c9941a85842f785177bedbbd)
@@ -39,5 +39,5 @@
     },
     "insert": {
-      "description": "Inserts `<link>` at the given position.",
+      "description": "Inserts the `link` tag at the given position for non-initial (async) (https://webpack.js.org/concepts/under-the-hood/#chunks) CSS chunks.",
       "link": "https://github.com/webpack-contrib/mini-css-extract-plugin#insert",
       "anyOf": [
@@ -51,5 +51,5 @@
     },
     "attributes": {
-      "description": "Adds custom attributes to tag.",
+      "description": "Adds custom attributes to the `link` tag for non-initial (async) (https://webpack.js.org/concepts/under-the-hood/#chunks) CSS chunks.",
       "link": "https://github.com/webpack-contrib/mini-css-extract-plugin#attributes",
       "type": "object"
@@ -66,4 +66,9 @@
       "description": "This option allows loading asynchronous chunks with a custom link type",
       "link": "https://github.com/webpack-contrib/mini-css-extract-plugin#linktype"
+    },
+    "runtime": {
+      "type": "boolean",
+      "description": "Enabled/Disables runtime generation. CSS will be still extracted and can be used for a custom loading methods.",
+      "link": "https://github.com/webpack-contrib/mini-css-extract-plugin#noRuntime"
     }
   }
Index: trip-planner-front/node_modules/mini-css-extract-plugin/dist/utils.js
===================================================================
--- trip-planner-front/node_modules/mini-css-extract-plugin/dist/utils.js	(revision 6a3a178323fd905112b5392bd9d3cb83b66ef2d3)
+++ trip-planner-front/node_modules/mini-css-extract-plugin/dist/utils.js	(revision 571e0df9a7a5e798c9941a85842f785177bedbbd)
@@ -9,5 +9,6 @@
 exports.compareModulesByIdentifier = compareModulesByIdentifier;
 exports.stringifyRequest = stringifyRequest;
-exports.AUTO_PUBLIC_PATH = exports.MODULE_TYPE = void 0;
+exports.getUndoPath = getUndoPath;
+exports.SINGLE_DOT_PATH_SEGMENT = exports.ABSOLUTE_PUBLIC_PATH = exports.AUTO_PUBLIC_PATH = exports.MODULE_TYPE = void 0;
 
 var _module = _interopRequireDefault(require("module"));
@@ -72,6 +73,10 @@
 const MODULE_TYPE = "css/mini-extract";
 exports.MODULE_TYPE = MODULE_TYPE;
-const AUTO_PUBLIC_PATH = "__MINI_CSS_EXTRACT_PLUGIN_PUBLIC_PATH__";
+const AUTO_PUBLIC_PATH = "__mini_css_extract_plugin_public_path_auto__";
 exports.AUTO_PUBLIC_PATH = AUTO_PUBLIC_PATH;
+const ABSOLUTE_PUBLIC_PATH = "webpack:///mini-css-extract-plugin/";
+exports.ABSOLUTE_PUBLIC_PATH = ABSOLUTE_PUBLIC_PATH;
+const SINGLE_DOT_PATH_SEGMENT = "__mini_css_extract_plugin_single_dot_path_segment__";
+exports.SINGLE_DOT_PATH_SEGMENT = SINGLE_DOT_PATH_SEGMENT;
 
 function isAbsolutePath(str) {
@@ -115,2 +120,35 @@
   }).join("!"));
 }
+
+function getUndoPath(filename, outputPath, enforceRelative) {
+  let depth = -1;
+  let append = ""; // eslint-disable-next-line no-param-reassign
+
+  outputPath = outputPath.replace(/[\\/]$/, "");
+
+  for (const part of filename.split(/[/\\]+/)) {
+    if (part === "..") {
+      if (depth > -1) {
+        // eslint-disable-next-line no-plusplus
+        depth--;
+      } else {
+        const i = outputPath.lastIndexOf("/");
+        const j = outputPath.lastIndexOf("\\");
+        const pos = i < 0 ? j : j < 0 ? i : Math.max(i, j);
+
+        if (pos < 0) {
+          return `${outputPath}/`;
+        }
+
+        append = `${outputPath.slice(pos + 1)}/${append}`; // eslint-disable-next-line no-param-reassign
+
+        outputPath = outputPath.slice(0, pos);
+      }
+    } else if (part !== ".") {
+      // eslint-disable-next-line no-plusplus
+      depth++;
+    }
+  }
+
+  return depth > 0 ? `${"../".repeat(depth)}${append}` : enforceRelative ? `./${append}` : append;
+}
