diff --git a/domain_theme/domain_theme.module b/domain_theme/domain_theme.module
index f6f9fe1..11f5cc8 100644
--- a/domain_theme/domain_theme.module
+++ b/domain_theme/domain_theme.module
@@ -21,14 +21,16 @@
 function domain_theme_custom_theme() {
   global $conf;
   $_domain = domain_get_domain();
+
+  // Assign the theme selected, based on the active domain.
+  $theme = domain_theme_lookup($_domain['domain_id']);
+
   // Check for a custom admin theme.
-  if (isset($conf['admin_theme']) && path_is_admin(current_path())) {
+  $item = menu_get_item($_GET['q']);
+  if (isset($conf['admin_theme']) && !empty($item['access']) && path_is_admin(current_path())) {
     $theme = domain_theme_lookup($_domain['domain_id'], $conf['admin_theme']);
   }
-  else {
-    // Assign the theme selected, based on the active domain.
-    $theme = domain_theme_lookup($_domain['domain_id']);
-  }
+
   // The above returns -1 on failure.
   if ($theme != -1) {
     domain_theme_set_variables($theme);
