From 5eee9933ca0ba0cea8e108f2ca1666160a96755b Mon Sep 17 00:00:00 2001 From: Andras Bacsai <5845193+andrasbacsai@users.noreply.github.com> Date: Thu, 5 Nov 2026 10:34:35 +0100 Subject: [PATCH] fix(theme): use sidebar text color for menu entries when the sidebar scheme differs Account menu entries, including Log out, now follow the sidebar text color when a custom theme sidebar uses the other light/dark scheme than the page. In the 3D style, the current page label keeps the sidebar text color, because that row has no Selected fill. Closes #12467 --- resources/css/app.css | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/resources/css/app.css b/resources/css/app.css index 53a72aeb49..d5e507383d 100644 --- a/resources/css/app.css +++ b/resources/css/app.css @@ -1631,6 +1631,11 @@ html[data-sidebar-scheme="light"] :where(.app-sidebar, .app-topbar-brand, .mobil border-color: var(--coollabs-line) !important; } +/* Menu entries (the account menu) follow the sidebar text, not the page scheme. */ +html[data-sidebar-scheme] :where(.app-sidebar, .mobile-sidebar-sheet [role="dialog"]) .listbox-option { + color: var(--color-fg); +} + /* Row and section separators (one-sided borders and divide-y) use the softer divider token, so lists read as one card instead of a stack of boxes. Card edges (full borders) keep the hairline/line tokens. */ @@ -6635,8 +6640,9 @@ html[data-theme="custom"] .mobile-sidebar-sheet nav.sidebar-nav { background-color: transparent !important; } -/* The current page in the sidebar uses the Selected color. */ -html[data-theme="custom"] :is(.app-sidebar, .mobile-sidebar-sheet) :is(.menu-item-active, .menu-subitem-active) { +/* In the Flat style, the current page in the sidebar uses the Selected color. The 3D style has + no row fill, so its label keeps the sidebar text color. */ +html[data-theme="custom"][data-nav-items="flat"] :is(.app-sidebar, .mobile-sidebar-sheet) :is(.menu-item-active, .menu-subitem-active) { background-color: var(--theme-selected); color: var(--theme-selected-text); }