diff --git a/mail_signature/templates/mail_signature/index.html b/mail_signature/templates/mail_signature/index.html
index d2ff8fdd08d70f8738b0048cab9d5704fc00698b..0eb31192487cc26510123ec552dccc544aca9903 100644
--- a/mail_signature/templates/mail_signature/index.html
+++ b/mail_signature/templates/mail_signature/index.html
@@ -108,13 +108,24 @@
             </form>
             
             <div class="flex flex-col gap-3">
-                <div class="border border-gray-400 border-dotted p-2 rounded-md" id="preview"></div>
-                <textarea
-                    class="border border-gray-200 p-2 font-mono rounded-md w-full"
-                    rows="5"
-                    id="content"
-                    readonly
-                ></textarea>
+                <section class="flex flex-col gap-2">
+                    <div class="flex justify-between gap-2 items-center">
+                        <h2 class="font-bold mb-3">Náhled</h2>
+                        <button class="btn text-sm btn--condensed" id="copy">
+                            <div class="btn__body">Zkopírovat</div>
+                        </button>
+                    </div>
+                    <div class="border border-gray-400 border-dotted p-2 rounded-md" id="preview"></div>
+                </section>
+                <section>
+                    <h2 class="font-bold mb-3">HTML Kód</h2>
+                    <textarea
+                        class="border border-gray-200 p-2 font-mono rounded-md w-full"
+                        rows="5"
+                        id="content"
+                        readonly
+                    ></textarea>
+                </section>
             </div>
         </div>
     </main>
diff --git a/package.json b/package.json
index 5bcc00b9f9ca9884d7a31fe3d4ff25cfa16c2bb9..fe7a2cf7bbe0af97070cf13f149a3c39a9610b00 100644
--- a/package.json
+++ b/package.json
@@ -5,6 +5,7 @@
   "private": true,
   "dependencies": {
     "@tailwindcss/typography": "^0.5.9",
+    "alertifyjs": "^1.13.1",
     "css-loader": "^6.7.3",
     "jquery": "^3.6.3",
     "js-cookie": "^3.0.1",
diff --git a/static_src/mail_signature.js b/static_src/mail_signature.js
index d0b3319095abf7ef2e1a83eaa4d465c431fd9c08..c8683befbd141952d62a140d97bbecdad6c161ec 100644
--- a/static_src/mail_signature.js
+++ b/static_src/mail_signature.js
@@ -1,29 +1,44 @@
 import $ from "jquery";
 
+import alertify from "alertifyjs";
+
 const escapeHTML = (str) => {
     return new Option(str).innerHTML;
 }
 
+const selectHTML = (nodeId) => {
+    const node = document.getElementById(nodeId);
+
+    if (document.body.createTextRange) {
+        const range = document.body.createTextRange();
+        range.moveToElementText(node);
+        range.select();
+    } else if (window.getSelection) {
+        const selection = window.getSelection();
+        const range = document.createRange();
+        range.selectNodeContents(node);
+        selection.removeAllRanges();
+        selection.addRange(range);
+    } else {
+        throw new Error("Browser does not support selecting");
+    }
+}
+
 const generateSignature = () => {
     let result = `<style>
     @import url(https://gfonts.pirati.cz/css?family=Roboto);
     body { font-family: Roboto, Arial; background: white; color:black; }
-    .pv { font-family: Roboto Condensed, Arial, sans-serif; font-size: 10pt; font-weight: normal; margin: 1em; background: white; color: black; }
-    .pv>.bl { margin-bottom:0.5em; line-height: 1.1em; }
-    .name { font-size: 13pt; font-weight: bold; }
-    .social { box-sizing: content-box; font-weight: bold; color: white !important; background: black; margin: 0.1em; padding: 0.2em; width: 1em; height: 1em; display: inline-block; text-align: center; text-decoration:none; border-radius: 0.5em; }
-    .logo { margin-top: 1.5em; }
-    .logo img { height: 3.5em; margin-left:-0.1em; }
 </style>
-<div class="pv">`;
+<div style="background: white !important; color: black !important">
+<div style="font-family: Roboto Condensed, Arial, sans-serif; font-size: 10pt; font-weight: normal; margin: 1em">`;
 
     let name = $("#name").val();
     let func = $("#function").val();
 
     if (name !== "") {
         name = escapeHTML(name);
-        result += `<div class="bl">
-    <strong class="name">${name}</strong>`;
+        result += `<div style="margin-bottom:0.5em; line-height: 1.1em">
+    <strong style="font-size: 13pt; font-weight: bold">${name}</strong>`;
 
         func = escapeHTML(func);
         if (func !== "") {
@@ -39,38 +54,37 @@ const generateSignature = () => {
     let linkedin = $("#linkedin").val();
     
     if (email !== "" || phone !== "" || fejsbuk !== "" || linkedin !== "") {
-        result += "<div class=\"bl\">";
+        result += "<div style=\"margin-bottom:0.5em; line-height: 1.1em\">";
         
         if (email !== "") {
             email = escapeHTML(email);
-            result += `<a href="${email}">${email}</a><br>`;
+            result += `<a href="${email}" style="color: black !important">${email}</a><br>`;
         }
         
         if (phone !== "") {
             phone = escapeHTML(phone);
-            result += `<a href="${phone}">${phone}</a><br>`;
+            result += `<a href="${phone}" style="color: black !important">${phone}</a><br>`;
         }
         
         if (fejsbuk !== "") {
             fejsbuk = escapeHTML(fejsbuk);
-            result += `<a href="${fejsbuk}" class="social">f</a>`;
+            result += `<a href="${fejsbuk}" style="box-sizing: content-box; font-weight: bold; color: white !important; background: black; margin: 0.1em; padding: 0.2em; width: 1em; height: 1em; display: inline-block; text-align: center; text-decoration: none !important; border-radius: 0.5em">f</a>`;
         }
         
         if (linkedin !== "") {
             linkedin = escapeHTML(linkedin);
-            result += `<a href="${linkedin}" class="social">in</a>`;
+            result += `<a href="${linkedin}" style="box-sizing: content-box; font-weight: bold; color: white !important; background: black; margin: 0.1em; padding: 0.2em; width: 1em; height: 1em; display: inline-block; text-align: center; text-decoration: none !important; border-radius: 0.5em">in</a>`;
         }
         
         result += "</div>";
     }
 
-    result += `<div class="logo">
-        <img
-            src="data:image/png;base64,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"
-            alt="Logo Pirátské Strany"
-        >
-    </div>
-</div>`;
+    result += `<div style="margin-top: 1.5em;">
+<img
+    style="height: 3.5em; margin-left:-0.1em"
+    src="data:image/png;base64,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"
+    alt="Logo Pirátské Strany"
+></div></div></div>`;
     
     $("#preview").html(result);
     $("#content").val(result);
@@ -93,5 +107,46 @@ $(window).ready(
                 generateSignature();
             }
         );
+        
+        $("#copy").on(
+            "click",
+            event => {
+//                 https://developer.mozilla.org/en-US/docs/Mozilla/Add-ons/WebExtensions/Interact_with_the_clipboard
+//                 Can't do this on Firefox *yet*, NOTE - use when possible
+// 
+//                 const type = "text/html";
+//                 const blob = new Blob([$("#content").html()], { type });
+//                 const data = [new window.ClipboardItem({ [type]: blob })];
+// 
+//                 navigator.clipboard.write(data).then(
+//                     () => {
+//                         alertify.success(
+//                             "Zkopírováno do schránky."
+//                         );
+//                     },
+//                     () => {
+//                         alertify.error(
+//                             "Chyba při kopírování do schránky."
+//                         );
+//                     }
+//                 );
+                
+                try {
+                    selectHTML("preview");
+                    
+                    document.execCommand("copy");
+                    
+                    alertify.success(
+                        "Zkopírováno do schránky."
+                    );
+                } catch (exception) {
+                    console.log("Error copying: ", exception);
+                    
+                    alertify.error(
+                        "Chyba při kopírování do schránky. Prosím, zkopíruj text manuálně."
+                    );
+                }
+            }
+        );
     }
 );