diff --git a/chrome/content/zotero/ace/aceWrapper.js b/chrome/content/zotero/ace/aceWrapper.js
index 5725d3253b..f30b1af3e4 100644
--- a/chrome/content/zotero/ace/aceWrapper.js
+++ b/chrome/content/zotero/ace/aceWrapper.js
@@ -1,26 +1,26 @@
/*
- ***** BEGIN LICENSE BLOCK *****
-
- Copyright © 2011 Center for History and New Media
- George Mason University, Fairfax, Virginia, USA
- http://zotero.org
-
- This file is part of Zotero.
-
- Zotero is free software: you can redistribute it and/or modify
- it under the terms of the GNU Affero General Public License as published by
- the Free Software Foundation, either version 3 of the License, or
- (at your option) any later version.
-
- Zotero is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU Affero General Public License for more details.
-
- You should have received a copy of the GNU Affero General Public License
- along with Zotero. If not, see .
-
- ***** END LICENSE BLOCK *****
+ ***** BEGIN LICENSE BLOCK *****
+
+ Copyright © 2011 Center for History and New Media
+ George Mason University, Fairfax, Virginia, USA
+ http://zotero.org
+
+ This file is part of Zotero.
+
+ Zotero is free software: you can redistribute it and/or modify
+ it under the terms of the GNU Affero General Public License as published by
+ the Free Software Foundation, either version 3 of the License, or
+ (at your option) any later version.
+
+ Zotero is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU Affero General Public License for more details.
+
+ You should have received a copy of the GNU Affero General Public License
+ along with Zotero. If not, see .
+
+ ***** END LICENSE BLOCK *****
*/
var editor, JavaScriptMode, TextMode, EditSession;
@@ -37,5 +37,9 @@ window.addEventListener("DOMContentLoaded", function(e) {
JavaScriptMode = require("ace/mode/javascript").Mode;
TextMode = require("ace/mode/text").Mode;
EditSession = require("ace/edit_session").EditSession;
- editor = ace.edit('ace-div');
-}, false);
\ No newline at end of file
+
+ const isDark = Zotero.getMainWindow()?.matchMedia('(prefers-color-scheme: dark)').matches;
+ editor = ace.edit('ace-div', {
+ theme: isDark ? 'ace/theme/monokai' : 'ace/theme/chrome'
+ });
+}, false);
diff --git a/chrome/content/zotero/runJS.html b/chrome/content/zotero/runJS.html
index 36256194b9..5dc6935ab9 100644
--- a/chrome/content/zotero/runJS.html
+++ b/chrome/content/zotero/runJS.html
@@ -1,7 +1,7 @@
-
+
Run JavaScript
-
+