score:1

Accepted answer

the problem isn't with display:flex it is with:

html{
    zoom: 90%;
}

this must mess with how chartjs calculates the datapoint position, if you remove the above code from your stylesheet then it will fix your problem.

i have created a fiddle to tidy up your sylesheet and demonstrate this working: https://jsfiddle.net/kopf7d0l/

score:1

you can inverse zoom in div chart

body{
 zoom:90%;
}

.chart{
 zoom:calc(1/0.9);
}

Related Query