diff --git a/postcss.config.js b/postcss.config.js
new file mode 100644
index 00000000..55ea22be
--- /dev/null
+++ b/postcss.config.js
@@ -0,0 +1,15 @@
+module.exports = {
+ plugins: [
+ require("postcss-import"),
+ require("autoprefixer")({
+ browsers: [
+ "Chrome >= 40",
+ "Firefox >= 35",
+ "Edge >= 14"
+ ]
+ }),
+ require("postcss-css-variables")({
+ preserve: true
+ }),
+ ]
+};
diff --git a/src/web/html/index.html b/src/web/html/index.html
index c4d76b86..45f9ed01 100755
--- a/src/web/html/index.html
+++ b/src/web/html/index.html
@@ -223,7 +223,7 @@
-
+
diff --git a/src/web/stylesheets/index.css b/src/web/stylesheets/index.css
new file mode 100644
index 00000000..a2892e5e
--- /dev/null
+++ b/src/web/stylesheets/index.css
@@ -0,0 +1,34 @@
+/**
+ * CyberChef styles
+ *
+ * @author n1474335 [n1474335@gmail.com]
+ * @copyright Crown Copyright 2017
+ * @license Apache-2.0
+ */
+
+/* Themes */
+@import "./themes/_classic.css";
+@import "./themes/_dark.css";
+
+/* Utilities */
+@import "./utils/_overrides.css";
+@import "./utils/_general.css";
+
+/* Preloader styles */
+@import "./preloader.css";
+
+/* Components */
+@import "./components/_alert.css";
+@import "./components/_button.css";
+@import "./components/_list.css";
+@import "./components/_operation.css";
+@import "./components/_pane.css";
+
+/* Layout */
+@import "./layout/_banner.css";
+@import "./layout/_controls.css";
+@import "./layout/_io.css";
+@import "./layout/_modals.css";
+@import "./layout/_operations.css";
+@import "./layout/_recipe.css";
+@import "./layout/_structure.css";