diff --git a/compile_themes.bat b/compile_themes.bat
index 09d80826ae2fd8a199455467fc9176a4a1073882..460d1c11704b80a49674276031f87aa63a2f66c0 100644
--- a/compile_themes.bat
+++ b/compile_themes.bat
@@ -6,8 +6,6 @@ for /d %%i in (%~dp0\themes\*) do (
 )
 cd %back%
 
-
-PAUSE
 EXIT /B %ERRORLEVEL%
 
 :compileDirectory
diff --git a/src/npc/descriptions/limbs.js b/src/npc/descriptions/limbs.js
index 2421844d9ece4bdc4c791d55214db41198ebabbf..fc556744b0eca312249feb0ffd5aabec7b22598d 100644
--- a/src/npc/descriptions/limbs.js
+++ b/src/npc/descriptions/limbs.js
@@ -175,7 +175,7 @@ App.Desc.limbChange = function() {
 			if (slave.PLimb > 1) {
 				r += row("Cybernetic limb", 6);
 			} else {
-				r += "<div class=full'><span class='detail'>Install an advanced interface to attach cybernetic limbs.</span></div>";
+				r += "<div class='full'><span class='detail'>Install an advanced interface to attach cybernetic limbs.</span></div>";
 			}
 		}
 
diff --git a/src/uncategorized/arcade.tw b/src/uncategorized/arcade.tw
index d64d67cf085dd86e50bf947e4a5a8c016aada927..505e3c60b7c22636328677543911bee6fa126a69 100644
--- a/src/uncategorized/arcade.tw
+++ b/src/uncategorized/arcade.tw
@@ -188,3 +188,5 @@
 		Use a noun or similar short phrase
 	</span>
 </p>
+
+<<run App.UI.SlaveList.ScrollPosition.restore()>>
diff --git a/src/uncategorized/dairy.tw b/src/uncategorized/dairy.tw
index 5631c32cfa76f235a4b156b71b177f56a7f5578a..91aa1c216201f8fa768d2e9c902b04968967ebf3 100644
--- a/src/uncategorized/dairy.tw
+++ b/src/uncategorized/dairy.tw
@@ -771,3 +771,5 @@
 		Use a noun or similar short phrase
 	</span>
 </p>
+
+<<run App.UI.SlaveList.ScrollPosition.restore()>>
diff --git a/src/uncategorized/main.tw b/src/uncategorized/main.tw
index 85c54fa7b0d4ee869efc1040417f4fdc8be97e52..7eb8508310d8c183d695d4fdd17a5eabb8d22833 100644
--- a/src/uncategorized/main.tw
+++ b/src/uncategorized/main.tw
@@ -1,13 +1,8 @@
 :: Main [nobr jump-to-safe jump-from-safe]
 
-/* make sure the first thing that happens is the error check */
-<<set _errors = App.MainView.errors()>>
-<span id="errors"></span>
-<<script>>
-	$(document).one(':passagerender', event => {
-		event.content.prepend(State.temporary.errors);
-	});
-<</script>>
+<<includeDOM App.MainView.errors()>>
+
+<<set $nextButton = "END WEEK", $nextLink = "End Week", $encyclopedia = "How to Play">>
 
 <<if $tabChoice.SlaveInteract != 'Description'>>
 	<<set $tabChoice.SlaveInteract = 'Description'>>
@@ -15,7 +10,6 @@
 
 <<run penthouseCensus()>>
 
-<<set $nextButton = "END WEEK", $nextLink = "End Week", $encyclopedia = "How to Play">>
 <<set $costs = Math.trunc(calculateCosts.predict())>>
 
 <<set $currentRule = $defaultRules[0]>>
@@ -23,26 +17,11 @@
 <<run SlaveSort.slaves($slaves)>>
 
 <<if $newModelUI == 1>>
-	<span id="building"></span>
-	<<script>>
-		$(document).one(':passageend', () => {
-			$('#building').append(
-				V.building.render(),
-			);
-		});
-	<</script>>
+    <<includeDOM V.building.render()>>
 <</if>>
 
 <<if $seeArcology == 1>>
-	<div id="arc-desc"></div>
-	<<script>>
-		$(document).one(':passageend', () => {
-			$('#arc-desc').append(
-				App.Desc.playerArcology(App.UI.DOM.combineNodes("| ",
-					App.UI.DOM.passageLink("Hide", "Main", () => {V.seeArcology = 0})))
-			);
-		});
-	<</script>>
+    <<includeDOM App.Desc.playerArcology(App.UI.DOM.combineNodes("| ", App.UI.DOM.passageLink("Hide", "Main", () => {V.seeArcology = 0})))>>
 <</if>>
 
 <<if $seeDesk == 1>>
diff --git a/themes/light/main.css b/themes/light/main.css
index 0e05e085faf9561d8d707ec5c949256593b852ad..bb19aad20a90d43911f0aa1687dbce8a2d0e35eb 100644
--- a/themes/light/main.css
+++ b/themes/light/main.css
@@ -1,3 +1,7 @@
 .lrgRender > div.mask, .lrgVector > div.mask {
 	background: linear-gradient(90deg, rgba(255, 255, 255, 1), rgba(255, 255, 255, 0.8) 60%, rgba(255, 255, 255, 0));
 }
+
+.clear-formatting {
+	color: var(--text-color);
+}