diff --git a/src/ui/material/draw_helpers.h b/src/ui/material/draw_helpers.h index 8f96232..94f834a 100644 --- a/src/ui/material/draw_helpers.h +++ b/src/ui/material/draw_helpers.h @@ -729,10 +729,18 @@ inline void DrawFullWindowBlurBackdrop(ImDrawList* dl, const ImVec2& pMin, const // panel skips acrylic (IsFullWindowBlurOverlayActive), so the backdrop is the SOLE applyBlur // caller — no other radius contends for the shared, radius-keyed blur cache. auto params = GetCurrentAcrylicTheme().card; - params.blurRadius = 64.0f; // strong full-window blur + params.blurRadius = 96.0f; // strong full-window blur (deeper than panels) params.fallbackColor.w = 1.0f; // full-strength blur so the live content reads effects::ImGuiAcrylic::DrawAcrylicRect(dl, pMin, pMax, params, 0.0f); - dl->AddRectFilled(pMin, pMax, WithAlpha(Background(), 70)); // subtle theme-tinted frost so the card reads as foreground + // Dim over the blur so the floating (card-less) modal reads as foreground. On DARK themes the + // theme-tinted frost darkens the backdrop and the light content pops. On LIGHT themes that same + // tint whitens the backdrop and leaves card-less content with no figure/ground separation — so + // light themes get a neutral dark veil instead, which also makes the modal's fields/buttons stand + // out from the (now slightly greyed) surround. Both a touch stronger than before (was alpha 70). + if (IsLightTheme()) + dl->AddRectFilled(pMin, pMax, IM_COL32(16, 18, 24, 56)); // neutral dark veil anchors on white + else + dl->AddRectFilled(pMin, pMax, WithAlpha(Background(), 90)); // theme-tinted darken, stronger } }