a8eb6504ac
The QR code on /qr-login was not rendering because it depended on loading qrcode@1.5.4 from the jsdelivr CDN, which may be blocked in some network environments. - Add segno>=1.6.0 (pure-Python QR library, no Pillow needed) to requirements.txt - Generate QR code as a base64 SVG data URI server-side in the challenge endpoint - Add qr_code_svg field to CreateChallengeResponse Pydantic model - Replace canvas+CDN script in qr_login.html with an <img :src="qrCodeSvg"> - Remove the $nextTick/QRCode.toCanvas() client-side rendering block - Extract QR rendering parameters (_QR_ERROR_LEVEL, _QR_SCALE) as module constants Co-authored-by: christianlouis <361235+christianlouis@users.noreply.github.com>