!/**
 * Highcharts JS v13.0.0 (2026-06-11)
 * @module highcharts/modules/variable-pie
 * @requires highcharts
 *
 * Variable Pie module for Highcharts
 *
 * (c) 2010-2026 Highsoft AS
 * Author: Grzegorz Blachliński
 *
 * A commercial license may be required depending on use,
 * see www.highcharts.com/license
 */function(t,e){"object"==typeof exports&&"object"==typeof module?module.exports=e(t._Highcharts,t._Highcharts.SeriesRegistry):"function"==typeof define&&define.amd?define("highcharts/modules/variable-pie",["highcharts/highcharts"],function(t){return e(t,t.SeriesRegistry)}):"object"==typeof exports?exports["highcharts/modules/variable-pie"]=e(t._Highcharts,t._Highcharts.SeriesRegistry):t.Highcharts=e(t.Highcharts,t.Highcharts.SeriesRegistry)}("u"<typeof window?this:window,(t,e)=>(()=>{"use strict";var i={512:t=>{t.exports=e},944:e=>{e.exports=t}},a={};function r(t){var e=a[t];if(void 0!==e)return e.exports;var s=a[t]={exports:{}};return i[t](s,s.exports,r),s.exports}r.n=t=>{var e=t&&t.__esModule?()=>t.default:()=>t;return r.d(e,{a:e}),e},r.d=(t,e)=>{for(var i in e)r.o(e,i)&&!r.o(t,i)&&Object.defineProperty(t,i,{enumerable:!0,get:e[i]})},r.o=(t,e)=>Object.prototype.hasOwnProperty.call(t,e);var s={};r.d(s,{default:()=>d});var n=r(944),o=r.n(n),h=r(512),l=r.n(h);let{pie:p}=l().seriesTypes;class c extends p{calculateExtremes(){let t,e,i=this.chart,a=i.plotWidth,r=i.plotHeight,s=this.options,o=2*(s.slicedOffset||0),h=[...this.getColumn("z",!1,!0)],l=Math.min(a,r)-o,p={},c=this.center||this.getCenter();for(let t of["minPointSize","maxPointSize"]){let e=s[t],i=/%$/.test(e);e=parseInt(e,10),p[t]=i?l*e/100:2*e}this.minPxSize=c[3]+p.minPointSize,this.maxPxSize=(0,n.clamp)(c[2],c[3]+p.minPointSize,p.maxPointSize),h.length&&(t=(0,n.pick)(s.zMin,(0,n.arrayMin)(h.filter(this.zValEval))),e=(0,n.pick)(s.zMax,(0,n.arrayMax)(h.filter(this.zValEval))),this.getRadii(t,e,this.minPxSize,this.maxPxSize))}getRadii(t,e,i,a){let r,s,n,o=[...this.getColumn("z",!1,!0)],h=[],l="radius"!==this.options.sizeBy,p=e-t;for(let c=0;c<o.length;c++)(s=this.zValEval(o[c])?o[c]:t)<=t?n=i/2:s>=e?n=a/2:(r=p>0?(s-t)/p:.5,l&&(r=Math.sqrt(r)),n=Math.ceil(i+r*(a-i))/2),h.push(n);this.radii=h}redraw(){this.center=null,super.redraw()}getDataLabelPosition(t,e){let{center:i,options:a}=this,r=t.angle||0,s=this.radii[t.index],n=i[0]+Math.cos(r)*s,o=i[1]+Math.sin(r)*s,h=Math.min((a.slicedOffset||0)+(a.borderWidth||0),e/5);return{distance:e,natural:{x:n+Math.cos(r)*e,y:o+Math.sin(r)*e},computed:{},alignment:t.half?"right":"left",connectorPosition:{breakAt:{x:n+Math.cos(r)*h,y:o+Math.sin(r)*h},touchingSliceAt:{x:n,y:o}}}}translate(t){this.generatePoints();let e=this.options,i=e.slicedOffset,a=e.startAngle||0,r=Math.PI/180*(a-90),s=Math.PI/180*((0,n.pick)(e.endAngle,a+360)-90),o=s-r,h=this.points,l=e.ignoreHiddenPoint,p=0,c,d,g,u,f,M,x;this.startAngleRad=r,this.endAngleRad=s,this.calculateExtremes(),t||(this.center=t=this.getCenter());for(let e=0;e<h.length;e++)M=h[e],x=this.radii[e],c=r+p*o,(!l||M.visible)&&(p+=M.percentage/100),d=r+p*o,M.shapeType="arc",M.shapeArgs={x:t[0],y:t[1],r:x,innerR:t[3]/2,start:Math.round(1e3*c)/1e3,end:Math.round(1e3*d)/1e3},(g=(d+c)/2)>1.5*Math.PI?g-=2*Math.PI:g<-Math.PI/2&&(g+=2*Math.PI),M.slicedTranslation={translateX:Math.round(Math.cos(g)*i),translateY:Math.round(Math.sin(g)*i)},u=Math.cos(g)*t[2]/2,f=Math.sin(g)*t[2]/2,M.tooltipPos=[t[0]+.7*u,t[1]+.7*f],M.half=+(g<-Math.PI/2||g>Math.PI/2),M.angle=g;(0,n.fireEvent)(this,"afterTranslate")}zValEval(t){return!("number"!=typeof t||isNaN(t))||null}}c.defaultOptions=(0,n.merge)(p.defaultOptions,{minPointSize:"10%",maxPointSize:"100%",zMin:void 0,zMax:void 0,sizeBy:"area",tooltip:{pointFormat:'<span style="color:{point.color}">●</span> {series.name}<br/>Value: {point.y}<br/>Size: {point.z}<br/>'}}),(0,n.extend)(c.prototype,{pointArrayMap:["y","z"],parallelArrays:["x","y","z"]}),l().registerSeriesType("variablepie",c);let d=o();return s.default})());