From b5b71df3facb7a318c5bc9820e42431cfe0eca82 Mon Sep 17 00:00:00 2001 From: BoulderBadgeDad Date: Mon, 22 Jun 2026 15:02:19 -0700 Subject: [PATCH] perf(dashboard): trim blur radii (orbs 40->28px, header backdrop 28->18px) GPU fill/blur cost scales with radius. The sidebar aura orbs already fade to transparent at 70% of their gradient, so dropping their blur 40->28px shrinks the composited bounding box with no perceptible softness loss. The frosted header's backdrop-filter is re-blurred whenever the orbs drift behind it; 28->18px cuts that per-frame work ~a third while keeping the frosted look. Relief is biggest on weak GPUs (the machines people complain about). --- webui/static/style.css | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/webui/static/style.css b/webui/static/style.css index 432bc341..ac2efa01 100644 --- a/webui/static/style.css +++ b/webui/static/style.css @@ -108,7 +108,10 @@ body { position: fixed; pointer-events: none; border-radius: 50%; - filter: blur(40px); + /* The radial-gradient already fades to transparent at 70%, so a smaller blur + still reads as a soft aura — but shrinks the composited (orb + feather) + bounding box and the blur work. 40px -> 28px: ~imperceptible, cheaper fill. */ + filter: blur(28px); will-change: transform, opacity; } @@ -317,8 +320,11 @@ body.reduce-effects .sidebar::after { accent-gradient top now read as a soft blur instead of bleeding through sharply. (Only visible where the background is translucent — the opaque base toward the bottom still stops any bleed.) */ - backdrop-filter: blur(28px) saturate(1.3); - -webkit-backdrop-filter: blur(28px) saturate(1.3); + /* Backdrop blur is re-evaluated whenever content drifts behind it (the + ambient orbs do). Cost scales with radius — 28px -> 18px keeps the frosted + read while cutting the per-frame blur work by ~a third. */ + backdrop-filter: blur(18px) saturate(1.3); + -webkit-backdrop-filter: blur(18px) saturate(1.3); /* Subtle inner glow */ box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1);