Introduce ScreenLockDetectorBase and move platform logic into
ScreenLockDetectorLinux and ScreenLockDetectorMacOS. Rename mac files to
*_macos, add new base/linux source files, and update CMakeLists to
include them. Convert ScreenLockDetector into a factory/facade that
creates and forwards signals to the platform detector. Add refactoring
docs and a migration guide.
Add RenderWidgetBase and update CustomWidget and VulkanWidget to
implement its interface. Refactor MainWindow to use a single
RenderWidgetBase pointer, unify controls and status UI, and remove the
dual-tab setup. Add design and quickstart docs and register the new
header in CMakeLists.txt.