diff --git a/CHANGELOG.md b/CHANGELOG.md
index 6527108c..306273a1 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -3,6 +3,7 @@
- PostgreSQL: Display description of system variables
- PostgreSQL: Avoid warning about crdb_version (bug #924, regression from 5.0.5)
- CSS: Sticky table headers (bug #918)
+- CSS: Allow more custom styles with dark mode (bug #925)
- IMAP: New plugin driver created for fun
## Adminer 5.0.6 (released 2025-03-17)
diff --git a/adminer/include/design.inc.php b/adminer/include/design.inc.php
index a96581b4..5e23ff45 100644
--- a/adminer/include/design.inc.php
+++ b/adminer/include/design.inc.php
@@ -31,7 +31,11 @@ function page_header($title, $error = "", $breadcrumb = array(), $title2 = "") {
css();
- $dark = (count($css) == 1 ? !!preg_match('~-dark~', $css[0]) : null);
+ $has_dark = in_array("adminer-dark.css", $css);
+ $dark = (in_array("adminer.css", $css)
+ ? ($has_dark ? null : false) // both styles - autoswitching, only adminer.css - light
+ : ($has_dark ?: null) // only adminer-dark.css - dark, neither - autoswitching
+ );
if ($dark !== false) {
echo "\n";
}