diff --git a/package-lock.json b/package-lock.json
index 9e018fd..a2d4997 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -20,7 +20,7 @@
         "@babel/plugin-transform-optional-chaining": "7.25.9",
         "@babel/preset-env": "7.26.9",
         "@babel/preset-react": "7.26.3",
-        "@scratch/scratch-gui": "v11.1.0-feature-parity.4",
+        "@scratch/scratch-gui": "11.2.0-feature-parity.1",
         "async": "3.2.6",
         "autoprefixer": "10.4.20",
         "babel-eslint": "10.1.0",
@@ -85,14 +85,14 @@
       }
     },
     "node_modules/@asamuzakjp/css-color": {
-      "version": "3.1.1",
-      "resolved": "https://registry.npmjs.org/@asamuzakjp/css-color/-/css-color-3.1.1.tgz",
-      "integrity": "sha512-hpRD68SV2OMcZCsrbdkccTw5FXjNDLo5OuqSHyHZfwweGsDWZwDJ2+gONyNAbazZclobMirACLw0lk8WVxIqxA==",
+      "version": "3.1.5",
+      "resolved": "https://registry.npmjs.org/@asamuzakjp/css-color/-/css-color-3.1.5.tgz",
+      "integrity": "sha512-w7AmVyTTiU41fNLsFDf+gA2Dwtbx2EJtn2pbJNAGSRAg50loXy1uLXA3hEpD8+eydcomTurw09tq5/AyceCaGg==",
       "dev": true,
       "license": "MIT",
       "dependencies": {
-        "@csstools/css-calc": "^2.1.2",
-        "@csstools/css-color-parser": "^3.0.8",
+        "@csstools/css-calc": "^2.1.3",
+        "@csstools/css-color-parser": "^3.0.9",
         "@csstools/css-parser-algorithms": "^3.0.4",
         "@csstools/css-tokenizer": "^3.0.3",
         "lru-cache": "^10.4.3"
@@ -1870,9 +1870,9 @@
       }
     },
     "node_modules/@csstools/css-calc": {
-      "version": "2.1.2",
-      "resolved": "https://registry.npmjs.org/@csstools/css-calc/-/css-calc-2.1.2.tgz",
-      "integrity": "sha512-TklMyb3uBB28b5uQdxjReG4L80NxAqgrECqLZFQbyLekwwlcDDS8r3f07DKqeo8C4926Br0gf/ZDe17Zv4wIuw==",
+      "version": "2.1.3",
+      "resolved": "https://registry.npmjs.org/@csstools/css-calc/-/css-calc-2.1.3.tgz",
+      "integrity": "sha512-XBG3talrhid44BY1x3MHzUx/aTG8+x/Zi57M4aTKK9RFB4aLlF3TTSzfzn8nWVHWL3FgAXAxmupmDd6VWww+pw==",
       "dev": true,
       "funding": [
         {
@@ -1894,9 +1894,9 @@
       }
     },
     "node_modules/@csstools/css-color-parser": {
-      "version": "3.0.8",
-      "resolved": "https://registry.npmjs.org/@csstools/css-color-parser/-/css-color-parser-3.0.8.tgz",
-      "integrity": "sha512-pdwotQjCCnRPuNi06jFuP68cykU1f3ZWExLe/8MQ1LOs8Xq+fTkYgd+2V8mWUWMrOn9iS2HftPVaMZDaXzGbhQ==",
+      "version": "3.0.9",
+      "resolved": "https://registry.npmjs.org/@csstools/css-color-parser/-/css-color-parser-3.0.9.tgz",
+      "integrity": "sha512-wILs5Zk7BU86UArYBJTPy/FMPPKVKHMj1ycCEyf3VUptol0JNRLFU/BZsJ4aiIHJEbSLiizzRrw8Pc1uAEDrXw==",
       "dev": true,
       "funding": [
         {
@@ -1911,7 +1911,7 @@
       "license": "MIT",
       "dependencies": {
         "@csstools/color-helpers": "^5.0.2",
-        "@csstools/css-calc": "^2.1.2"
+        "@csstools/css-calc": "^2.1.3"
       },
       "engines": {
         "node": ">=18"
@@ -3023,16 +3023,16 @@
       }
     },
     "node_modules/@scratch/scratch-gui": {
-      "version": "11.1.0-feature-parity.4",
-      "resolved": "https://registry.npmjs.org/@scratch/scratch-gui/-/scratch-gui-11.1.0-feature-parity.4.tgz",
-      "integrity": "sha512-9/Z3JuYPnAiHkG6KlqxDNs8LzozR4r1dYzVNU4P4JFdPYw2A9yWz6CI3S4+l3vABJPG+bcAU6FYyGp8OUQ+gug==",
+      "version": "11.2.0-feature-parity.1",
+      "resolved": "https://registry.npmjs.org/@scratch/scratch-gui/-/scratch-gui-11.2.0-feature-parity.1.tgz",
+      "integrity": "sha512-hcwEAui7eyh47BR6PjNfBGDQLRINzYC4NHA9GQkDk1ue6nZ3LKPMR6bcUnB/AdqJ90XDyQtK+9qZ72auqTDbpw==",
       "dev": true,
       "license": "AGPL-3.0-only",
       "dependencies": {
         "@microbit/microbit-universal-hex": "0.2.2",
-        "@scratch/scratch-render": "11.1.0-feature-parity.4",
-        "@scratch/scratch-svg-renderer": "11.1.0-feature-parity.4",
-        "@scratch/scratch-vm": "11.1.0-feature-parity.4",
+        "@scratch/scratch-render": "11.2.0-feature-parity.1",
+        "@scratch/scratch-svg-renderer": "11.2.0-feature-parity.1",
+        "@scratch/scratch-vm": "11.2.0-feature-parity.1",
         "arraybuffer-loader": "1.0.8",
         "autoprefixer": "9.8.8",
         "balance-text": "3.3.1",
@@ -3081,12 +3081,12 @@
         "react-virtualized": "9.22.6",
         "react-visibility-sensor": "5.0.2",
         "redux-throttle": "0.1.1",
-        "scratch-audio": "2.0.110",
-        "scratch-blocks": "1.1.206",
-        "scratch-l10n": "5.0.184",
-        "scratch-paint": "3.0.196",
-        "scratch-render-fonts": "1.0.180",
-        "scratch-storage": "4.0.95",
+        "scratch-audio": "2.0.119",
+        "scratch-blocks": "1.1.209",
+        "scratch-l10n": "5.0.198",
+        "scratch-paint": "3.0.207",
+        "scratch-render-fonts": "1.0.182",
+        "scratch-storage": "4.0.106",
         "startaudiocontext": "1.2.1",
         "style-loader": "4.0.0",
         "text-encoding": "0.7.0",
@@ -3157,30 +3157,14 @@
       "dev": true,
       "license": "ISC"
     },
-    "node_modules/@scratch/scratch-gui/node_modules/scratch-l10n": {
-      "version": "5.0.184",
-      "resolved": "https://registry.npmjs.org/scratch-l10n/-/scratch-l10n-5.0.184.tgz",
-      "integrity": "sha512-3fkXrec/GLAXjBMTzEjgy+i87T3SCIR/efwxxFgmWBfy6K8K8HS9lTnLNuhprkIwSirD4BoO2+zJA//zsj6haw==",
-      "dev": true,
-      "license": "AGPL-3.0-only",
-      "dependencies": {
-        "@transifex/api": "4.3.0",
-        "download": "8.0.0",
-        "transifex": "1.6.6"
-      },
-      "bin": {
-        "build-i18n-src": "scripts/build-i18n-src.js",
-        "tx-push-src": "scripts/tx-push-src.js"
-      }
-    },
     "node_modules/@scratch/scratch-render": {
-      "version": "11.1.0-feature-parity.4",
-      "resolved": "https://registry.npmjs.org/@scratch/scratch-render/-/scratch-render-11.1.0-feature-parity.4.tgz",
-      "integrity": "sha512-xzFmMjdUwShdgp9y/bPniJQOSrzRGjYxq4cBLh5HjMmoZeFHjQ5wSnoV6DvkMO70mnOVqtx7kFVJKtnlRO609A==",
+      "version": "11.2.0-feature-parity.1",
+      "resolved": "https://registry.npmjs.org/@scratch/scratch-render/-/scratch-render-11.2.0-feature-parity.1.tgz",
+      "integrity": "sha512-qRcCjM/70Mjrgupz01l2VtInBOI3+ewRrGNik14WlGWq1ZkWzKOhRJGMyhOgdubjSg/aZn6lR88R6Ag+b6xibQ==",
       "dev": true,
       "license": "AGPL-3.0-only",
       "dependencies": {
-        "@scratch/scratch-svg-renderer": "11.1.0-feature-parity.4",
+        "@scratch/scratch-svg-renderer": "11.2.0-feature-parity.1",
         "grapheme-breaker": "0.3.2",
         "hull.js": "0.2.10",
         "ify-loader": "1.1.0",
@@ -3200,9 +3184,9 @@
       "dev": true
     },
     "node_modules/@scratch/scratch-svg-renderer": {
-      "version": "11.1.0-feature-parity.4",
-      "resolved": "https://registry.npmjs.org/@scratch/scratch-svg-renderer/-/scratch-svg-renderer-11.1.0-feature-parity.4.tgz",
-      "integrity": "sha512-ZwOa/hAp6WNTEbNF4NnLNPnuFE1YXaKdZ/VCH4CPbOuyP/XEhLN4+JfJXcEFvTPSXK+LZLHqTWlBrW/kCO776A==",
+      "version": "11.2.0-feature-parity.1",
+      "resolved": "https://registry.npmjs.org/@scratch/scratch-svg-renderer/-/scratch-svg-renderer-11.2.0-feature-parity.1.tgz",
+      "integrity": "sha512-8CX2K2hnL2bbDaCg8x9kxRXCiXZcuthj8T7BGqpdvUMOirwsZ5YDOb+1XVAY9xcR3TkFtmnPDgtPvJOZUt7fNg==",
       "dev": true,
       "license": "AGPL-3.0-only",
       "dependencies": {
@@ -3219,14 +3203,14 @@
       }
     },
     "node_modules/@scratch/scratch-vm": {
-      "version": "11.1.0-feature-parity.4",
-      "resolved": "https://registry.npmjs.org/@scratch/scratch-vm/-/scratch-vm-11.1.0-feature-parity.4.tgz",
-      "integrity": "sha512-ObehYJtTT0gTOYOBzRdSjUEAgh17RRrt9dYIPmBn6XrGBS0eJzZowLD8Fxzkh0CCLdxz4a6/Bu352VhZDXq2Wg==",
+      "version": "11.2.0-feature-parity.1",
+      "resolved": "https://registry.npmjs.org/@scratch/scratch-vm/-/scratch-vm-11.2.0-feature-parity.1.tgz",
+      "integrity": "sha512-WRwtNgK0AnWaSQfPq8Rz7vdC44L1ZFPOte0Y5k12Bx7FASOSFJtl3GG2vnBqKoZIxoQJ8XT9H7sIiDnH30P4ew==",
       "dev": true,
       "license": "AGPL-3.0-only",
       "dependencies": {
-        "@scratch/scratch-render": "11.1.0-feature-parity.4",
-        "@scratch/scratch-svg-renderer": "11.1.0-feature-parity.4",
+        "@scratch/scratch-render": "11.2.0-feature-parity.1",
+        "@scratch/scratch-svg-renderer": "11.2.0-feature-parity.1",
         "@vernier/godirect": "1.8.3",
         "arraybuffer-loader": "1.0.8",
         "atob": "2.1.2",
@@ -3239,10 +3223,10 @@
         "immutable": "3.8.2",
         "jszip": "3.10.1",
         "minilog": "3.1.0",
-        "scratch-audio": "2.0.110",
+        "scratch-audio": "2.0.119",
         "scratch-parser": "6.0.0",
-        "scratch-sb1-converter": "2.0.99",
-        "scratch-storage": "4.0.95",
+        "scratch-sb1-converter": "2.0.107",
+        "scratch-storage": "4.0.106",
         "scratch-translate-extension-languages": "1.0.7",
         "text-encoding": "0.7.0",
         "uuid": "8.3.2",
@@ -3419,9 +3403,9 @@
       }
     },
     "node_modules/@transifex/api/node_modules/core-js": {
-      "version": "3.40.0",
-      "resolved": "https://registry.npmjs.org/core-js/-/core-js-3.40.0.tgz",
-      "integrity": "sha512-7vsMc/Lty6AGnn7uFpYT56QesI5D2Y/UkgKounk87OP9Z2H9Z8kj6jzcSGAxFmUtDOS0ntK6lbQz+Nsa0Jj6mQ==",
+      "version": "3.41.0",
+      "resolved": "https://registry.npmjs.org/core-js/-/core-js-3.41.0.tgz",
+      "integrity": "sha512-SJ4/EHwS36QMJd6h/Rg+GyR4A5xE0FSI3eZ+iBVpfqf1x0eTSg1smWLHrA+2jQThZSh97fmSgFSU8B61nxosxA==",
       "dev": true,
       "hasInstallScript": true,
       "license": "MIT",
@@ -6883,13 +6867,13 @@
       }
     },
     "node_modules/cssstyle": {
-      "version": "4.3.0",
-      "resolved": "https://registry.npmjs.org/cssstyle/-/cssstyle-4.3.0.tgz",
-      "integrity": "sha512-6r0NiY0xizYqfBvWp1G7WXJ06/bZyrk7Dc6PHql82C/pKGUTKu4yAX4Y8JPamb1ob9nBKuxWzCGTRuGwU3yxJQ==",
+      "version": "4.3.1",
+      "resolved": "https://registry.npmjs.org/cssstyle/-/cssstyle-4.3.1.tgz",
+      "integrity": "sha512-ZgW+Jgdd7i52AaLYCriF8Mxqft0gD/R9i9wi6RWBhs1pqdPEzPjym7rvRKi397WmQFf3SlyUsszhw+VVCbx79Q==",
       "dev": true,
       "license": "MIT",
       "dependencies": {
-        "@asamuzakjp/css-color": "^3.1.1",
+        "@asamuzakjp/css-color": "^3.1.2",
         "rrweb-cssom": "^0.8.0"
       },
       "engines": {
@@ -14543,22 +14527,22 @@
       }
     },
     "node_modules/parse5": {
-      "version": "7.2.1",
-      "resolved": "https://registry.npmjs.org/parse5/-/parse5-7.2.1.tgz",
-      "integrity": "sha512-BuBYQYlv1ckiPdQi/ohiivi9Sagc9JG+Ozs0r7b/0iK3sKmrb0b9FdWdBbOdx6hBCM/F9Ir82ofnBhtZOjCRPQ==",
+      "version": "7.3.0",
+      "resolved": "https://registry.npmjs.org/parse5/-/parse5-7.3.0.tgz",
+      "integrity": "sha512-IInvU7fabl34qmi9gY8XOVxhYyMyuH2xUNpb2q8/Y+7552KlejkRvqvD19nMoUW/uQGGbqNpA6Tufu5FL5BZgw==",
       "dev": true,
       "license": "MIT",
       "dependencies": {
-        "entities": "^4.5.0"
+        "entities": "^6.0.0"
       },
       "funding": {
         "url": "https://github.com/inikulin/parse5?sponsor=1"
       }
     },
     "node_modules/parse5/node_modules/entities": {
-      "version": "4.5.0",
-      "resolved": "https://registry.npmjs.org/entities/-/entities-4.5.0.tgz",
-      "integrity": "sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw==",
+      "version": "6.0.0",
+      "resolved": "https://registry.npmjs.org/entities/-/entities-6.0.0.tgz",
+      "integrity": "sha512-aKstq2TDOndCn4diEyp9Uq/Flu2i1GlLkc6XIDQSDMuaFE3OPW5OphLCyQ5SpSJZTb4reN+kTcYru5yIfXoRPw==",
       "dev": true,
       "license": "BSD-2-Clause",
       "engines": {
@@ -16584,9 +16568,9 @@
       }
     },
     "node_modules/scratch-audio": {
-      "version": "2.0.110",
-      "resolved": "https://registry.npmjs.org/scratch-audio/-/scratch-audio-2.0.110.tgz",
-      "integrity": "sha512-bIRkCJZ2pCtT1DVNjIKdwzPxc9q8858gJwwtWQcsQcKT0yeXNpjdr8w+2vtT+w4KUGafpRMkid2NzdfakU66YA==",
+      "version": "2.0.119",
+      "resolved": "https://registry.npmjs.org/scratch-audio/-/scratch-audio-2.0.119.tgz",
+      "integrity": "sha512-s+cHLFDYETPEXBz2dMXgQNB0hVlIB2bnnAl3LqYDyHkMqCUP2pEpCm0d+JP4pu+cRS2RJ8gDYfdc7zAEoujfVA==",
       "dev": true,
       "license": "AGPL-3.0-only",
       "dependencies": {
@@ -16596,9 +16580,9 @@
       }
     },
     "node_modules/scratch-blocks": {
-      "version": "1.1.206",
-      "resolved": "https://registry.npmjs.org/scratch-blocks/-/scratch-blocks-1.1.206.tgz",
-      "integrity": "sha512-pjry8XGFlP2Gm3VJEuz7983oJE3fp2Gd1AzLDGaQSV8hDcAISzEd5GF0PoTZ2qQStp5G4b3eK/Xs9M+LEKmuJw==",
+      "version": "1.1.209",
+      "resolved": "https://registry.npmjs.org/scratch-blocks/-/scratch-blocks-1.1.209.tgz",
+      "integrity": "sha512-jovPd8X79zf8QqApn9onIiDvv0n1rZ561Q+K2DXg6inM6IObVwkbbuEH4W8ZLsmAcRX8FriQ7zInyhaufd3EDw==",
       "dev": true,
       "license": "Apache-2.0",
       "dependencies": {
@@ -16674,7 +16658,7 @@
         "node": ">=4.0.0"
       }
     },
-    "node_modules/scratch-l10n": {
+    "node_modules/scratch-blocks/node_modules/scratch-l10n": {
       "version": "3.18.357",
       "resolved": "https://registry.npmjs.org/scratch-l10n/-/scratch-l10n-3.18.357.tgz",
       "integrity": "sha512-Rs3YmUa2dzpYqT1O/YT15g99sIwnC7j9TOOmOhUphVKLeiYUvJWiRPKZCugA7/hbIMYZV5VLkmuDgGXhgfSOBw==",
@@ -16690,10 +16674,26 @@
         "tx-push-src": "scripts/tx-push-src.js"
       }
     },
+    "node_modules/scratch-l10n": {
+      "version": "5.0.198",
+      "resolved": "https://registry.npmjs.org/scratch-l10n/-/scratch-l10n-5.0.198.tgz",
+      "integrity": "sha512-XpJIRGQinykaLEhjO+7bQLPmmunXd7ZN/6QAvP2AItb6QY5mJqhoaWvDZ9lR9e2n6vh8EOxdWabhchEKDEpCiA==",
+      "dev": true,
+      "license": "AGPL-3.0-only",
+      "dependencies": {
+        "@transifex/api": "4.3.0",
+        "download": "8.0.0",
+        "transifex": "1.6.6"
+      },
+      "bin": {
+        "build-i18n-src": "scripts/build-i18n-src.js",
+        "tx-push-src": "scripts/tx-push-src.js"
+      }
+    },
     "node_modules/scratch-paint": {
-      "version": "3.0.196",
-      "resolved": "https://registry.npmjs.org/scratch-paint/-/scratch-paint-3.0.196.tgz",
-      "integrity": "sha512-iOGtyynYpe13zZv4j3JupyqJnK3bdt456+XR+Vwqc3lg9puwmamdsNvE/MU2uEog2w7k1E05OKe9Xa8mQPoE5Q==",
+      "version": "3.0.207",
+      "resolved": "https://registry.npmjs.org/scratch-paint/-/scratch-paint-3.0.207.tgz",
+      "integrity": "sha512-jI/rhGPaXxG1K3nKzaLFG5qLic+spmJOa4yJPs3ydCGCSyWunUghhReCX96d4SGS8TtzbTskU+f0FcKhCyJMag==",
       "dev": true,
       "license": "AGPL-3.0-only",
       "dependencies": {
@@ -16744,18 +16744,18 @@
       }
     },
     "node_modules/scratch-render-fonts": {
-      "version": "1.0.180",
-      "resolved": "https://registry.npmjs.org/scratch-render-fonts/-/scratch-render-fonts-1.0.180.tgz",
-      "integrity": "sha512-JB3kt/lHjMxXmfYvH/DEAAI2PDqHm91ACo9esHMvzDK9ZYCw/WEsBQdy2qPhdvIcARCxRyTgGq/Jh1HD1uiTdw==",
+      "version": "1.0.182",
+      "resolved": "https://registry.npmjs.org/scratch-render-fonts/-/scratch-render-fonts-1.0.182.tgz",
+      "integrity": "sha512-T8oNXeFippbp5OK65EeFB/zheVN7e1GR2xKDSRH+IEU9bD0nsLC+WwIBje3KgpofvIMP3sKEvkRg0ZHBH3TO/Q==",
       "dev": true,
       "dependencies": {
         "base64-loader": "^1.0.0"
       }
     },
     "node_modules/scratch-sb1-converter": {
-      "version": "2.0.99",
-      "resolved": "https://registry.npmjs.org/scratch-sb1-converter/-/scratch-sb1-converter-2.0.99.tgz",
-      "integrity": "sha512-koyiA6xVFuJu6eGWFVACEy3sIjYJgeaUEgdmvZszlaDWuRXZhaAbnI1Q0TjtViaRzQub8HZvh9h9GkQ50tCvag==",
+      "version": "2.0.107",
+      "resolved": "https://registry.npmjs.org/scratch-sb1-converter/-/scratch-sb1-converter-2.0.107.tgz",
+      "integrity": "sha512-DpupSyhWJhE5pnXYP5mHgtFisWLHixBYup0CyXCUbEGzsiNv9II+u6JhWh082larI5UDLDMdJKG9dWKCB7+U9Q==",
       "dev": true,
       "license": "AGPL-3.0-only",
       "dependencies": {
@@ -16765,9 +16765,9 @@
       }
     },
     "node_modules/scratch-storage": {
-      "version": "4.0.95",
-      "resolved": "https://registry.npmjs.org/scratch-storage/-/scratch-storage-4.0.95.tgz",
-      "integrity": "sha512-rj9f+Y5k1TEMfULRk4t6bBP0kD298CmYvYoTEetgFfI/o45+iF8BtRy/Incamf4XaMhebzfVuHp/LbMQxBnpHA==",
+      "version": "4.0.106",
+      "resolved": "https://registry.npmjs.org/scratch-storage/-/scratch-storage-4.0.106.tgz",
+      "integrity": "sha512-QjzF2dXuS+YEZW+cx0No3Ite1ig0DFiI8akEyH5wdgGyAvfaqsxMx24ITnMjtdtR3s+HcFODwWpDO2f0k8UZGg==",
       "dev": true,
       "license": "AGPL-3.0-only",
       "dependencies": {
@@ -18495,9 +18495,9 @@
       }
     },
     "node_modules/tr46": {
-      "version": "5.1.0",
-      "resolved": "https://registry.npmjs.org/tr46/-/tr46-5.1.0.tgz",
-      "integrity": "sha512-IUWnUK7ADYR5Sl1fZlO1INDUhVhatWl7BtJWsIhwJ0UAK7ilzzIa8uIqOO/aYVWHZPJkKbEL+362wrzoeRF7bw==",
+      "version": "5.1.1",
+      "resolved": "https://registry.npmjs.org/tr46/-/tr46-5.1.1.tgz",
+      "integrity": "sha512-hdF5ZgjTqgAntKkklYw0R03MG2x/bSzTtkxmIRw/sTNV8YXsCJ1tfLAX23lhxhHJlEf3CRCOCGGWw3vI3GaSPw==",
       "dev": true,
       "license": "MIT",
       "dependencies": {
diff --git a/package.json b/package.json
index 7d861fc..274630f 100644
--- a/package.json
+++ b/package.json
@@ -39,7 +39,7 @@
     "@babel/plugin-transform-optional-chaining": "7.25.9",
     "@babel/preset-env": "7.26.9",
     "@babel/preset-react": "7.26.3",
-    "@scratch/scratch-gui": "v11.1.0-feature-parity.4",
+    "@scratch/scratch-gui": "11.2.0-feature-parity.1",
     "async": "3.2.6",
     "autoprefixer": "10.4.20",
     "babel-eslint": "10.1.0",