!/**
 * Highcharts JS v13.0.0 (2026-06-11)
 * @module highcharts/modules/funnel
 * @requires highcharts
 *
 * Highcharts funnel module
 *
 * (c) 2010-2026 Highsoft AS
 * Author: Torstein Hønsi
 *
 * 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/funnel",["highcharts/highcharts"],function(t){return e(t,t.SeriesRegistry)}):"object"==typeof exports?exports["highcharts/modules/funnel"]=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 s(t){var e=a[t];if(void 0!==e)return e.exports;var d=a[t]={exports:{}};return i[t](d,d.exports,s),d.exports}s.n=t=>{var e=t&&t.__esModule?()=>t.default:()=>t;return s.d(e,{a:e}),e},s.d=(t,e)=>{for(var i in e)s.o(e,i)&&!s.o(t,i)&&Object.defineProperty(t,i,{enumerable:!0,get:e[i]})},s.o=(t,e)=>Object.prototype.hasOwnProperty.call(t,e);var d={};s.d(d,{default:()=>A});var o=s(944),r=s.n(o);let{defaultOptions:n}=r(),{noop:l}=r(),h={radius:0,scope:"stack",where:void 0};var p=s(512),c=s.n(p);let{composed:g,noop:u}=r(),{column:x,pie:y}=c().seriesTypes,f=c().series.prototype.alignDataLabel;function b(t,e){return/%$/.test(t)?e*parseInt(t,10)/100:parseInt(t,10)}class L extends y{alignDataLabel(t,e,i,a,s){let d=t.series,r=d.options.reversed,n=t.dlBox||t.shapeArgs,{align:l,verticalAlign:h}=i,p=(0,o.splat)(i.padding||0),c=((d.options||{}).dataLabels||{}).inside,g=d.center[1],u=t.plotY||0,x=e.height??e.getBBox().height,y=d.getWidthAt((r?2*g-u:u)-n.height/2+x),b="middle"===h?(n.topWidth-n.bottomWidth)/4:(y-n.bottomWidth)/2,L=n.y,m=n.x;"middle"===h?L=n.y-n.height/2+x/2:"top"===h&&(L=n.y-n.height+x+p[0]),("top"===h&&!r||"bottom"===h&&r||"middle"===h)&&("right"===l?m=n.x-p[1%p.length]+b:"left"===l&&(m=n.x+p[3%p.length]-b)),a={x:m,y:r?L-n.height:L,width:n.bottomWidth,height:n.height},i.verticalAlign="bottom",c&&(i.distance=void 0),c&&t.visible&&f.call(d,t,e,i,a,s),c&&(!t.visible&&t.dataLabel&&(t.dataLabel.placed=!1),t.contrastColor&&e.css({color:t.contrastColor}))}drawDataLabels(){((0,o.splat)(this.options.dataLabels||{})[0].inside?x:y).prototype.drawDataLabels.call(this)}getDataLabelPosition(t,e){let i=t.plotY||0,a=t.half?1:-1,s=this.getXPos(i,!!t.half,t);return{distance:e,natural:{x:0,y:i},computed:{},alignment:t.half?"right":"left",connectorPosition:{breakAt:{x:s+(e-5)*a,y:i},touchingSliceAt:{x:s+e*a,y:i}}}}translate(){var t;let e=this,i=e.chart,a=e.options,s=a.reversed,d=a.ignoreHiddenPoint,r=(t=a.borderRadius,(0,o.isObject)(t)||(t={radius:t||0}),(0,o.merge)(h,void 0,t)),n=i.plotWidth,l=i.plotHeight,p=a.center,c=b(p[0],n),g=b(p[1],l),x=b(a.width,n),y=b(a.height,l),f=b(a.neckWidth,n),L=b(a.neckHeight,l),m=g-y/2+y-L,v=e.points,M=(0,o.relativeLength)(r.radius,x),W=r.scope,A=+("left"===a.dataLabels.position),P=t=>{let e=Math.tan(t/2),i=Math.cos(S),a=Math.sin(S),d=M,o=d/e,r=Math.tan((Math.PI-t)/3.2104);return o>D&&(d=(o=D)*e),{dx:[o*i,(o-(r*=d))*i,o-r,o],dy:[o*a,(o-r)*a,o-r,o].map(t=>s?-t:t)}},C=0,H=0,k,w,O,S,D,I,j,R,Y,_,B,T;for(let t of(e.getWidthAt=function(t){let e=g-y/2;return t>m||y===L?f:f+(x-f)*(1-(t-e)/(y-L))},e.getXPos=function(t,i,a){return c+(i?-1:1)*(e.getWidthAt(s?2*g-t:t)/2+(a.dataLabel?.dataLabelPosition?.distance??(0,o.relativeLength)(this.options.dataLabels?.distance||0,x)))},e.center=[c,g,y],e.centerX=c,v))t.y&&t.isValid()&&(!d||!1!==t.visible)&&(C+=t.y);for(let t of v){if(T=null,O=C?t.y/C:0,_=(j=g-y/2+H*y)+O*y,R=(I=c-(k=e.getWidthAt(j))/2)+k,B=(Y=c-(k=e.getWidthAt(_))/2)+k,(0,o.correctFloat)(j)>=m?(I=Y=c-f/2,R=B=c+f/2):_>m&&(T=_,B=(Y=c-(k=e.getWidthAt(m))/2)+k,_=m),s&&(j=2*g-j,_=2*g-_,null!==T&&(T=2*g-T)),M&&("point"===W||0===t.index||t.index===v.length-1||null!==T)){let e=Math.abs(_-j),i=R-B,a=B-Y,s=Math.sqrt(i*i+e*e);S=Math.atan(0!==i?e/i:1/0),D=s/2,null!==T&&(D=Math.min(D,Math.abs(T-_)/2)),a>=1&&(D=Math.min(D,a/2));let d=P(S);if(w="stack"===W&&0!==t.index?[["M",I,j],["L",R,j]]:[["M",I+d.dx[0],j+d.dy[0]],["C",I+d.dx[1],j+d.dy[1],I+d.dx[2],j,I+d.dx[3],j],["L",R-d.dx[3],j],["C",R-d.dx[2],j,R-d.dx[1],j+d.dy[1],R-d.dx[0],j+d.dy[0]]],null!==T){let e=P(Math.PI/2);d=P(Math.PI/2+S),w.push(["L",B+d.dx[0],_-d.dy[0]],["C",B+d.dx[1],_-d.dy[1],B,_+d.dy[2],B,_+d.dy[3]]),"stack"===W&&t.index!==v.length-1?w.push(["L",B,T],["L",Y,T]):w.push(["L",B,T-e.dy[3]],["C",B,T-e.dy[2],B-e.dx[2],T,B-e.dx[3],T],["L",Y+e.dx[3],T],["C",Y+e.dx[2],T,Y,T-e.dy[2],Y,T-e.dy[3]]),w.push(["L",Y,_+d.dy[3]],["C",Y,_+d.dy[2],Y-d.dx[1],_-d.dy[1],Y-d.dx[0],_-d.dy[0]])}else a>=1?(d=P(Math.PI-S),"stack"===W&&0===t.index?w.push(["L",B,_],["L",Y,_]):w.push(["L",B+d.dx[0],_-d.dy[0]],["C",B+d.dx[1],_-d.dy[1],B-d.dx[2],_,B-d.dx[3],_],["L",Y+d.dx[3],_],["C",Y+d.dx[2],_,Y-d.dx[1],_-d.dy[1],Y-d.dx[0],_-d.dy[0]])):(d=P(Math.PI-2*S),w.push(["L",Y+d.dx[0],_-d.dy[0]],["C",Y+d.dx[1],_-d.dy[1],Y-d.dx[1],_-d.dy[1],Y-d.dx[0],_-d.dy[0]]))}else w=[["M",I,j],["L",R,j],["L",B,_]],null!==T&&w.push(["L",B,T],["L",Y,T]),w.push(["L",Y,_]);w.push(["Z"]),t.shapeType="path",t.shapeArgs={d:w},t.percentage=100*O,t.plotX=c,t.plotY=(j+(T||_))/2,t.tooltipPos=[c,t.plotY],t.dlBox={x:Y,y:j,topWidth:R-I,bottomWidth:B-Y,height:Math.abs((0,o.pick)(T,_)-j),width:NaN},t.slice=u,t.half=A,t.isValid()&&(!d||!1!==t.visible)&&(H+=O)}(0,o.fireEvent)(e,"afterTranslate")}sortByAngle(t){t.sort((t,e)=>t.plotY-e.plotY)}}function m(){for(let t of this.series){let e=t.options&&t.options.dataLabels;(0,o.isArray)(e)&&(e=e[0]),t.is("pie")&&t.placeDataLabels&&e&&!e.inside&&t.placeDataLabels()}}L.defaultOptions=(0,o.merge)(y.defaultOptions,{animation:!1,borderRadius:0,center:["50%","50%"],width:"90%",neckWidth:"30%",height:"100%",neckHeight:"25%",reversed:!1,size:!0,dataLabels:{connectorWidth:1,verticalAlign:"middle"},states:{select:{color:"var(--highcharts-neutral-color-20)",borderColor:"var(--highcharts-neutral-color-100)"}}}),(0,o.extend)(L.prototype,{animate:u}),(L||(L={})).compose=function(t){(0,o.pushUnique)(g,"FunnelSeries")&&(0,o.addEvent)(t,"afterHideAllOverlappingLabels",m)},c().registerSeriesType("funnel",L);let v=L;class M extends v{}M.defaultOptions=(0,o.merge)(v.defaultOptions,{neckHeight:"0%",neckWidth:"0%",reversed:!0}),c().registerSeriesType("pyramid",M);let W=r();v.compose(W.Chart);let A=r();return d.default})());