diff --git a/ext/css/search-settings.css b/ext/css/search-settings.css
index b145745675..5693c5f2f7 100644
--- a/ext/css/search-settings.css
+++ b/ext/css/search-settings.css
@@ -384,12 +384,6 @@ button.icon-button.modal-header-button>.icon-button-inner>.icon {
.settings-item-children.settings-item-children-group .settings-item-children {
padding-left: 0;
}
-:root:not([data-advanced=true]) .advanced-only {
- display: none;
-}
-:root:not([data-advanced=false]) .basic-only {
- display: none;
-}
.settings-item.settings-item-button,
a.settings-item.settings-item-button {
cursor: pointer;
diff --git a/ext/css/settings.css b/ext/css/settings.css
index 7e6c4bc158..65f05dcf16 100644
--- a/ext/css/settings.css
+++ b/ext/css/settings.css
@@ -638,18 +638,6 @@ a.heading-link-light {
.settings-item-children.settings-item-children-group .settings-item-children {
padding-left: 0;
}
-:root:not([data-debug=true]) .debug-only {
- display: none;
-}
-:root:not([data-advanced=true]) .advanced-only {
- display: none;
-}
-:root:not([data-advanced=false]) .basic-only {
- display: none;
-}
-:root:not([data-language=ja]):not([data-language=zh]):not([data-language=yue]) .jpzhyue-only {
- display: none;
-}
.settings-item.settings-item-button,
a.settings-item.settings-item-button {
cursor: pointer;
diff --git a/ext/css/visibility-modifiers.css b/ext/css/visibility-modifiers.css
new file mode 100644
index 0000000000..f461b9c11f
--- /dev/null
+++ b/ext/css/visibility-modifiers.css
@@ -0,0 +1,15 @@
+:root:not([data-debug=true]) .debug-only {
+ display: none;
+}
+:root:not([data-advanced=true]) .advanced-only {
+ display: none;
+}
+:root:not([data-advanced=false]) .basic-only {
+ display: none;
+}
+:root:not([data-language=ja]):not([data-language=zh]):not([data-language=yue]) .jpzhyue-only {
+ display: none;
+}
+:root:is([data-language=ja], [data-language=zh], [data-language=yue], [data-language=ko]) .not-jpzhyueko {
+ display: none;
+}
diff --git a/ext/js/language/text-scanner.js b/ext/js/language/text-scanner.js
index f76bdf5251..4af6d00e93 100644
--- a/ext/js/language/text-scanner.js
+++ b/ext/js/language/text-scanner.js
@@ -24,6 +24,8 @@ import {clone} from '../core/utilities.js';
import {anyNodeMatchesSelector, everyNodeMatchesSelector, getActiveModifiers, getActiveModifiersAndButtons, isPointInSelection} from '../dom/document-util.js';
import {TextSourceElement} from '../dom/text-source-element.js';
+const SCAN_RESOLUTION_EXCLUDED_LANGUAGES = new Set(['ja', 'zh', 'yue', 'ko']);
+
/**
* @augments EventDispatcherYomitan Settings