feat(izui): implement role-based window policy (Phase 1-2)
Phase 1: Role inference in window-open handler. Computes role from
existing params (overlay->overlay, modal+keepLive->palette,
modal->quick-view, escapeMode:navigate->workspace, etc.)
Phase 2: Rewrote handleEscapeForWindow as policy table lookup.
~80 lines of nested if/else replaced with escPolicy(sessionState, role)
pure function + ~25 line handler. All 105 tests pass.