# Specification: Frosted Glass Background Effect

## Overview
Implement a high-fidelity "frosted glass" (acrylic) background effect for all GUI panels and popups within the Manual Slop interface. This effect will use a GPU-resident shader to blur the content behind active windows, improving readability and visual depth while preventing background text from clashing with foreground UI elements.

## Functional Requirements
- **GPU-Accelerated Blur:**
  - Implement a GLSL fragment shader (e.g., Gaussian or Kawase blur) within the existing `ShaderManager` pipeline.
  - The shader must sample the current frame buffer background and render a blurred version behind the active window's background.
- **Global Integration:**
  - The effect must automatically apply to all standard ImGui panels and popups.
  - Integrate with `imgui.begin()` and `imgui.begin_popup()` (or via a reusable wrapper helper).
- **Real-Time Tuning:**
  - Add controls to the **Live Shader Editor** to adjust the following parameters:
    - **Blur Radius:** Control the intensity of the Gaussian blur.
    - **Tint Intensity:** Control the strength of the "frost" overlay color.
    - **Base Opacity:** Control the overall transparency of the frosted layer.
- **Persistence:**
  - Save frosted glass parameters to `config.toml` under the `theme` or `shader` section.

## Technical Implementation
- **Shader Pipeline:** Use `PyOpenGL` to manage a dedicated background texture/FBO for sampling.
- **Coordinate Mapping:** Ensure the blur shader correctly maps screen coordinates to the region behind the current ImGui window.
- **State Integration:** Store tuning parameters in `App.shader_uniforms` and ensure they are updated every frame.

## Acceptance Criteria
- [ ] Panels and popups have a distinct, blurred background that clearly separates them from the content behind them.
- [ ] Changing the "Blur Radius" slider in the Shader Editor immediately updates the visual frostiness.
- [ ] The effect remains stable during window dragging and resizing.
- [ ] No significant performance degradation (maintaining target FPS).

## Out of Scope
- Implementing different blur types (e.g., motion blur, radial blur).
- Per-panel unique blur settings (initially global only).
