Let a widget's glow fade out instead of stopping at the tile's edge

`overflow: hidden` on the frame and its body cut a control's 22px
`--gl-glow` dead at the clip edge, and the gauge's own `<svg>` cut its
drop-shadow at the viewBox — the arc's top sits ~3.5 units from it.
`overflow: clip` with a margin wide enough for the blur (1.5rem on the
body, which already sits 1rem inside the frame; 0.5rem is all that leaves
the tile, which is the gutter).

That means the body no longer scrolls by default. `.dui-frame-scroll` was
already wired through from `scrolls()` into every look's Surfaces with no
CSS rule behind it, so the class is what opts markdown, agenda and
notification back into a real scroller.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01KYM38KSb4V4v2T71eifnZv
This commit is contained in:
2026-08-30 16:16:06 +02:00
co-authored by Claude Opus 5
parent 4c4920bda8
commit 7f78d541ab
3 changed files with 29 additions and 8 deletions
@@ -152,7 +152,11 @@
.gl-pressable {
position: relative;
overflow: hidden;
/* `clip` rather than `hidden`: the press ripple below is inset 0 and rounds
with the surface regardless, but a segment's `--gl-glow` thumb sits inside
this box too and needs room to fade rather than being cut off at it. */
overflow: clip;
overflow-clip-margin: 1.5rem;
isolation: isolate;
}