         const padX = 14, padY = 10;
            const tw = ctx.measureText(text).width;
            w.width = tw + padX * 2;
            const x = w.x - w.width/2;
            const y = w.y;

            const boxH = Math.ceil(fsize + padY * 2);
            const r = Math.min(16, boxH / 2 - 2);
            ctx.save();
            ctx.globalAlpha = 0.95;
            const grd = ctx.createLinearGradient(0, y-20, 0, y+20);
            grd.addColorStop(0, 'rgba(28, 56, 88, 0.9)');
            grd.addColorStop(