diff --git a/build/js/Cookie.js b/build/js/Cookie.js
index bd0920092d2b13621c1ff86fe1e083151ade9c20..92d3c34022ad52624ae8e20d6875ecd6619862f6 100644
--- a/build/js/Cookie.js
+++ b/build/js/Cookie.js
@@ -100,4 +100,21 @@ export class Cookie {
             }
         });
     }
+
+    /**
+     * 
+     * @param {Cookie} cookie 
+     */
+    static async REMOVE_COOKIE(cookie) {
+        let response_promises = [];
+        response_promises.push(browser.cookie.remove({
+            url: "https://metager.de/",
+            name: cookie.key
+        }));
+        response_promises.push(browser.cookie.remove({
+            url: "https://metager.org/",
+            name: cookie.key
+        }));
+        return Promise.all(response_promises);
+    }
 }
\ No newline at end of file
diff --git a/build/js/SettingsManager.js b/build/js/SettingsManager.js
index f35231487d0245c9e41a593d2c3c1af76f25fb33..af359e76c49019ff20b92a3742c376a6a138912a 100644
--- a/build/js/SettingsManager.js
+++ b/build/js/SettingsManager.js
@@ -118,8 +118,8 @@ export class SettingsManager {
     if (!this.store_settings) return details.responseHeaders;
     await this.init();
     if (details.hasOwnProperty("responseHeaders")) {
-      let new_headers = []; // Cookie Array without set-cookie
       let settings_changed = false;
+      let cookies_to_remove = [];
       for (const header of details.responseHeaders) {
         if (header.name.match(/set-cookie/i)) {
           let cookie_responses = header.value.split("\n");
@@ -128,32 +128,32 @@ export class SettingsManager {
             let response_cookie = new Cookie(cookie);
 
             if (response_cookie.expired) {
-              new_cookies.push(cookie);
               delete this.settings[response_cookie.key];
+              // Remove cookie from browser
+              cookies_to_remove.push(response_cookie);
             } else if (response_cookie.key == "cost" || response_cookie.key == "tokens") {
               // Do not remove cost cookie as the token manager uses it
-              new_cookies.push(cookie);
               continue;
             } else {
               this.settings[response_cookie.key] = decodeURIComponent(
                 response_cookie.value
               );
+              cookies_to_remove.push(response_cookie);
             }
           }
-          if (new_cookies.length > 0) {
-            header.value = new_cookies.join("\n");
-            new_headers.push(header);
-          }
           settings_changed = true;
-        } else {
-          new_headers.push(header);
         }
       }
       if (settings_changed) {
-        await this.updateSettingRule();
-        await browser.storage.sync.set({ settings_settings: this.settings });
+        await this.sync().then(() => {
+          let removal_promises = [];
+          for (let cookie of cookies_to_remove) {
+            removal_promises.push(Cookie.REMOVE_COOKIE(cookie));
+          }
+          return Promise.all(removal_promises);
+        });
       }
-      return new_headers;
+      return;
     }
   }
 
diff --git a/web/settings/index.css b/web/settings/index.css
index 29fc4095798ad896cf62876e7b62e8c4b857237d..cda1542f118e5b9e57555a89d9830d0f37c4afec 100644
--- a/web/settings/index.css
+++ b/web/settings/index.css
@@ -6,8 +6,8 @@ body {
 }
 
 body {
-    width: 100vw;
-    max-width: 780px;
+    width: 380px;
+    max-width: 100%;
     margin: 0 auto;
     margin-bottom: 1rem;
 }