1(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,509694,597434,e=>{"use strict";var t=e.i(883966),r=e.i(475225),i=e.i(785183),a=e.i(93230),n=e.i(844171),o=(0,t.generateCategoricalChart)({chartName:"BarChart",GraphicalChild:r.Bar,defaultTooltipEventType:"axis",validateTooltipEventTypes:["axis","item"],axisComponents:[{axisType:"xAxis",AxisComp:i.XAxis},{axisType:"yAxis",AxisComp:a.YAxis}],formatAxisMap:n.formatAxisMap});e.s(["BarChart",0,o],509694);var l=e.i(843476),s=e.i(731195);let c={teal:"#025740",accent:"#0E9F87",mint:"#5CDDB6",brown:"#8A6F57",mute:"#B9A397",grid:"#E4DFD8",ink:"#14110E",sub:"#6B6662",cream:"#FAF7F4",white:"#FFFFFF"},u={serif:"var(--font-feature-deck), Georgia, serif",mono:"var(--font-mono), ui-monospace, monospace"},d={tick:{fill:c.sub,fontSize:11,fontFamily:u.mono},axisLine:{stroke:c.grid,strokeWidth:1},tickLine:{stroke:c.grid,strokeWidth:1}},m={stroke:c.grid,strokeWidth:1,vertical:!1,horizontal:!0};e.s(["C",0,c,"ChartCard",0,function(e){let{title:t,subtitle:r,source:i,sourceMinHeight:a,minChartWidth:n,cardRef:o,chrome:d="card",height:m,legend:h,raw:p,children:f}=e,y="flush"===d;return(0,l.jsxs)("figure",{ref:o,className:y?"flex h-full flex-col bg-white p-4 md:p-6":"flex h-full flex-col rounded-2xl bg-white p-6 md:p-8",style:{border:y?0:`1px solid ${c.grid}`,margin:0},children:[(0,l.jsxs)("figcaption",{style:{marginBottom:4},children:[r?(0,l.jsx)("div",{style:{fontFamily:u.mono,fontSize:11,letterSpacing:"0.12em",textTransform:"uppercase",color:c.sub,marginBottom:8},children:r}):null,(0,l.jsx)("h3",{style:{fontFamily:u.serif,fontSize:20,lineHeight:1.2,color:c.ink,margin:0,fontWeight:500},children:t})]}),h?(0,l.jsx)("div",{style:{display:"flex",flexWrap:"wrap",alignItems:"center",gap:16,marginTop:14,marginBottom:4,fontFamily:u.mono,fontSize:11,letterSpacing:"0.06em",textTransform:"uppercase",color:c.sub},children:h}):null,(0,l.jsx)("div",{style:{width:"100%",marginTop:18,flex:"1 1 auto",overflowX:n?"auto":void 0,overflowY:n?"hidden":void 0},children:(0,l.jsx)("div",{style:{width:"100%",minWidth:n},children:p?(0,l.jsx)("div",{style:{width:"100%",height:m??300},children:f}):(0,l.jsx)(s.ResponsiveContainer,{width:"100%",height:m??300,children:f})})}),i?(0,l.jsx)("div",{style:{marginTop:14,fontFamily:u.mono,fontSize:10,letterSpacing:"0.04em",color:c.mute,minHeight:a},children:i}):null]})},"FONT",0,u,"axis",0,d,"brandTooltip",0,function(e){function t(t){let{active:r,payload:i,label:a,formatter:n}=t;return r&&i&&0!==i.length?(0,l.jsxs)("div",{role:"tooltip",style:{background:c.white,border:`1px solid ${c.grid}`,borderRadius:12,padding:"10px 12px",minWidth:120,boxShadow:"0 1px 2px rgba(20, 17, 14, 0.06)",fontFamily:u.mono,lineHeight:1.35},children:[void 0!==a&&""!==a?(0,l.jsx)("div",{style:{fontFamily:u.serif,fontSize:13,color:c.ink,marginBottom:6*(i.length>0),fontWeight:500},children:String(a)}):null,i.map((t,r)=>{let i,a=t.value,o=t.name??"",s=t.color??(t.payload&&t.payload.fill)??c.teal,d=o;if(n){let e=n(a,o,t,r,t.payload??{});Array.isArray(e)?(i=e[0],null!=e[1]&&(d=e[1])):i=e}else i=e?e(a,o):a;return(0,l.jsxs)("div",{style:{display:"flex",alignItems:"center",justifyContent:"space-between",gap:14,padding:"2px 0"},children:[(0,l.jsxs)("span",{style:{display:"inline-flex",alignItems:"center",gap:7,fontSize:10,letterSpacing:"0.06em",textTransform:"uppercase",color:c.sub},children:[(0,l.jsx)("span",{"aria-hidden":!0,style:{width:8,height:8,borderRadius:2,background:s,flex:"0 0 auto"}}),d]}),(0,l.jsx)("span",{style:{fontFamily:u.serif,fontSize:14,color:c.ink,fontWeight:500,fontVariantNumeric:"tabular-nums"},children:i})]},`${o}-${r}`)})]}):null}return t.displayName="BrandTooltip",(0,l.jsx)(t,{})},"grid",0,m,"label",0,function(e){return{value:e,fill:c.sub,fontSize:11,fontFamily:u.mono,letterSpacing:"0.08em",style:{fill:c.sub,fontSize:11,fontFamily:u.mono,letterSpacing:"0.08em",textTransform:"uppercase"}}}],597434)},129228,555706,e=>{"use strict";var t=e.i(883966),r=e.i(271645),i=e.i(273050),a=e.i(771223),n=e.i(629873),o=e.i(898892),l=e.i(207670),s=e.i(372733),c=e.i(238279),u=e.i(997865),d=e.i(969212),m=e.i(734251),h=e.i(794395),p=e.i(781977),f=e.i(562728),y=e.i(198770),x=["type","layout","connectNulls","ref"],v=["key"];function g(e){return(g="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function b(e,t){if(null==e)return{};var r,i,a=function(e,t){if(null==e)return{};var r={};for(var i in e)if(Object.prototype.hasOwnProperty.call(e,i)){if(t.indexOf(i)>=0)continue;
1r[i]=e[i]}return r}(e,t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);for(i=0;i<n.length;i++)r=n[i],!(t.indexOf(r)>=0)&&Object.prototype.propertyIsEnumerable.call(e,r)&&(a[r]=e[r])}return a}function j(){return(j=Object.assign.bind()).apply(this,arguments)}function C(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);t&&(i=i.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),r.push.apply(r,i)}return r}function w(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?C(Object(r),!0).forEach(function(t){P(e,t,r[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):C(Object(r)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))})}return e}function A(e){return function(e){if(Array.isArray(e))return S(e)}(e)||function(e){if("u">typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||function(e){if(e){if("string"==typeof e)return S(e,void 0);var t=Object.prototype.toString.call(e).slice(8,-1);if("Object"===t&&e.constructor&&(t=e.constructor.name),"Map"===t||"Set"===t)return Array.from(e);if("Arguments"===t||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t))return S(e,void 0)}}(e)||function(){throw TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function S(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,i=Array(t);r<t;r++)i[r]=e[r];return i}function k(e,t){for(var r=0;r<t.length;r++){var i=t[r];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,L(i.key),i)}}function T(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch(e){}return(T=function(){return!!e})()}function F(e){return(F=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}function O(e,t){return(O=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e})(e,t)}function P(e,t,r){return(t=L(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function L(e){var t=function(e,t){if("object"!=g(e)||!e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var i=r.call(e,t||"default");if("object"!=g(i))return i;throw TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string");return"symbol"==g(t)?t:t+""}var $=function(e){var t,f;function C(){var e,t,r;if(!(this instanceof C))throw TypeError("Cannot call a class as a function");for(var i=arguments.length,a=Array(i),n=0;n<i;n++)a[n]=arguments[n];return t=C,r=[].concat(a),t=F(t),P(e=function(e,t){if(t&&("object"===g(t)||"function"==typeof t))return t;if(void 0!==t)throw TypeError("Derived constructors may only return object or undefined");var r=e;if(void 0===r)throw ReferenceError("this hasn't been initialised - super() hasn't been called");return r}(this,T()?Reflect.construct(t,r||[],F(this).constructor):t.apply(this,r)),"state",{isAnimationFinished:!0,totalLength:0}),P(e,"generateSimpleStrokeDasharray",function(e,t){return"".concat(t,"px ").concat(e-t,"px")}),P(e,"getStrokeDasharray",function(t,r,i){var a=i.reduce(function(e,t){return e+t});if(!a)return e.generateSimpleStrokeDasharray(r,t);for(var n=Math.floor(t/a),o=t%a,l=r-t,s=[],c=0,u=0;c<i.length;u+=i[c],++c)if(u+i[c]>o){s=[].concat(A(i.slice(0,c)),[o-u]);break}var d=s.length%2==0?[0,l]:[l];return[].concat(A(C.repeat(i,n)),A(s),d).map(function(e){return"".concat(e,"px")}).join(", ")}),P(e,"id",(0,h.uniqueId)("recharts-line-")),P(e,"pathRef",function(t){e.mainCurve=t}),P(e,"handleAnimationEnd",function(){e.setState({isAnimationFinished:!0}),e.props.onAnimationEnd&&e.props.onAnimationEnd()}),P(e,"handleAnimationStart",function(){e.setState({isAnimationFinished:!1}),e.props.onAnimationStart&&e.props.onAnimationStart()}),e}if("function"!=typeof e&&null!==e)throw TypeError("Super expression must either be null or a function");return C.prototype=Object.create(e&&e.prototype,{constructor:{value:C,writable:!0,configurable:!0}}),Object.defineProperty(C,"prototype",{writable:!1}),e&&O(C,e),t=[{key:"componentDidMount",value:function(){if(this.props.isAnimationActive){var e=this.getTotalLength();this.setState({totalLength:e})}}},{key:"componentDidUpdate",value:function(){if(this.props.isAnimationActive){var e=this.getTotalLength();e!==this.state.totalLength&&this.setState({totalLength:e})}}},{key:"getTotalLength",value:function(){var e=this.mainCurve;try{return e&&e.getTotalLength&&e.getTotalLength()||0}catch(e){return 0}}},{key:"renderErrorBar",value:function(e,t){if(this.props.isAnimationActive&&!this.state.isAnimationFinished)return null;var i=this.props,a=i.points,n=i.xAxis,o=i.yAxis,l=i.layout,s=i.children,c=(0,p.findAllByType)(s,m.ErrorBar);if(!c)return null;var d=function(e,t){return{x:e.x,y:e.y,value:e.value,errorVal:(0,y.getValueByDataKey)(e.payload,t)}};return r.default.createElement(u.Layer,{clipPath:e?"url(#clipPath-".concat(t,")"):null},c.map(function(e){return r.default.cloneElement(e,{key:"bar-".concat(e.props.dataKey),data:a,xAxis:n,yAxis:o,layout:l,dataPointFormatter:d})}))}},{key:"renderDots",value:function(e,t,i){if(this.props.isAnimationActive&&!this.state.isAnimationFinished)return null;var a=this.props,n=a.dot,o=a.points,l=a.dataKey,s=(0,p.filterProps)(this.props,!1),c=(0,p.filterProps)(n,!0),d=o.map(function(e,t){var r=w(w(w({key:"dot-".concat(t),r:3},s),c),{},{index:t,cx:e.x,cy:e.y,value:e.value,dataKey:l,payload:e.payload,points:o});return C.renderDotItem(n,r)}),m={clipPath:e?"url(#clipPath-".concat(t?"":"dots-").concat(i,")"):null};return r.default.createElement(u.Layer,j({className:"recharts-line-dots",key:"dots"},m),d)}},{key:"renderCurveStatically",value:function(e,t,i,a){var n=this.props,o=n.type,l=n.layout,c=n.connectNulls,u=(n.ref,b(n,x)),d=w(w(w({},(0,p.filterProps)(u,!0)),{},{fill:"none",className:"recharts-line-curve",clipPath:t?"url(#clipPath-".concat(i,")"):null,points:e},a),{},{type:o,layout:l,connectNulls:c});return r.default.createElement(s.Curve,j({},d,{pathRef:this.pathRef}))}},{key:"renderCurveWithAnimation",value:function(e,t){var a=this,n=this.props,o=n.points,l=n.strokeDasharray,s=n.isAnimationActive,c=n.animationBegin,u=n.animationDuration,d=n.animationEasing,m=n.animationId,p=n.animateNewValues,f=n.width,y=n.height,x=this.state,v=x.prevPoints,g=x.totalLength;return r.default.createElement(i.default,{begin:c,duration:u,isActive:s,easing:d,from:{t:0},to:{t:1},key:"line-".concat(m),onAnimationEnd:this.handleAnimationEnd,onAnimationStart:this.handleAnimationStart},function(r){var i,n=r.t;if(v){var s=v.length/o.length,c=o.map(function(e,t){var r=Math.floor(t*s);if(v[r]){var i=v[r],a=(0,h.interpolateNumber)(i.x,e.x),o=(0,h.interpolateNumber)(i.y,e.y);return w(w({},e),{},{x:a(n),y:o(n)})}if(p){var l=(0,h.interpolateNumber)(2*f,e.x),c=(0,h.interpolateNumber)(y/2,e.y);return w(w({},e),{},{x:l(n),y:c(n)})}return w(w({},e),{},{x:e.x,y:e.y})});return a.renderCurveStatically(c,e,t)}var u=(0,h.interpolateNumber)(0,g)(n);if(l){var d="".concat(l).split(/[,\s]+/gim).map(function(e){return parseFloat(e)});i=a.getStrokeDasharray(u,g,d)}else i=a.generateSimpleStrokeDasharray(g,u);return a.renderCurveStatically(o,e,t,{strokeDasharray:i})})}},{key:"renderCurve",value:function(e,t){var r=this.props,i=r.points,a=r.isAnimationActive,n=this.state,l=n.prevPoints,s=n.totalLength;return a&&i&&i.length&&(!l&&s>0||!(0,o.default)(l,i))?this.renderCurveWithAnimation(e,t):this.renderCurveStatically(i,e,t)}},{key:"render",value:function(){var e,t=this.props,i=t.hide,a=t.dot,o=t.points,s=t.className,c=t.xAxis,m=t.yAxis,h=t.top,f=t.left,y=t.width,x=t.height,v=t.isAnimationActive,g=t.id;if(i||!o||!o.length)return null;var b=this.state.isAnimationFinished,j=1===o.length,C=(0,l.default)("recharts-line",s),w=c&&c.allowDataOverflow,A=m&&m.allowDataOverflow,S=w||A,k=(0,n.default)(g)?this.id:g,T=null!=(e=(0,p.filterProps)(a,!1))?e:{r:3,strokeWidth:2},F=T.r,O=T.strokeWidth,P=((0,p.hasClipDot)(a)?a:{}).clipDot,L=void 0===P||P,$=2*(void 0===F?3:F)+(void 0===O?2:O);return r.default.createElement(u.Layer,{className:C},w||A?r.default.createElement("defs",null,r.default.createElement("clipPath",{id:"clipPath-".concat(k)},r.default.createElement("rect",{x:w?f:f-y/2,y:A?h:h-x/2,width:w?y:2*y,height:A?x:2*x})),!L&&r.default.createElement("clipPath",{id:"clipPath-dots-".concat(k)},r.default.createElement("rect",{x:f-$/2,y:h-$/2,width:y+$,height:x+$}))):null,!j&&this.renderCurve(S,k),this.renderErrorBar(S,k),(j||a)&&this.renderDots(S,L,k),(!v||b)&&d.LabelList.renderCallByParent(this.props,o))}}],f=[{key:"getDerivedStateFromProps",value:function(e,t){return e.animationId!==t.prevAnimationId?{prevAnimationId:e.animationId,curPoints:e.points,prevPoints:t.curPoints}:e.points!==t.curPoints?{curPoints:e.points}:null}},{key:"repeat",value:function(e,t){for(var r=e.length%2!=0?[].concat(A(e),[0]):e,i=[],a=0;a<t;
1++a)i=[].concat(A(i),A(r));return i}},{key:"renderDotItem",value:function(e,t){var i;if(r.default.isValidElement(e))i=r.default.cloneElement(e,t);else if((0,a.default)(e))i=e(t);else{var n=t.key,o=b(t,v),s=(0,l.default)("recharts-line-dot","boolean"!=typeof e?e.className:"");i=r.default.createElement(c.Dot,j({key:n},o,{className:s}))}return i}}],t&&k(C.prototype,t),f&&k(C,f),Object.defineProperty(C,"prototype",{writable:!1}),C}(r.PureComponent);P($,"displayName","Line"),P($,"defaultProps",{xAxisId:0,yAxisId:0,connectNulls:!1,activeDot:!0,dot:!0,legendType:"line",stroke:"#3182bd",strokeWidth:1,fill:"#fff",points:[],isAnimationActive:!f.Global.isSsr,animateNewValues:!0,animationBegin:0,animationDuration:1500,animationEasing:"ease",hide:!1,label:!1}),P($,"getComposedData",function(e){var t=e.props,r=e.xAxis,i=e.yAxis,a=e.xAxisTicks,o=e.yAxisTicks,l=e.dataKey,s=e.bandSize,c=e.displayedData,u=e.offset,d=t.layout;return w({points:c.map(function(e,t){var c=(0,y.getValueByDataKey)(e,l);return"horizontal"===d?{x:(0,y.getCateCoordinateOfLine)({axis:r,ticks:a,bandSize:s,entry:e,index:t}),y:(0,n.default)(c)?null:i.scale(c),value:c,payload:e}:{x:(0,n.default)(c)?null:r.scale(c),y:(0,y.getCateCoordinateOfLine)({axis:i,ticks:o,bandSize:s,entry:e,index:t}),value:c,payload:e}}),layout:d},u)}),e.s(["Line",0,$],555706);var B=e.i(785183),E=e.i(93230),I=e.i(844171),D=(0,t.generateCategoricalChart)({chartName:"LineChart",GraphicalChild:$,axisComponents:[{axisType:"xAxis",AxisComp:B.XAxis},{axisType:"yAxis",AxisComp:E.YAxis}],formatAxisMap:I.formatAxisMap});e.s(["LineChart",0,D],129228)},887701,e=>{"use strict";var t=e.i(843476),r=e.i(271645),i=e.i(509694),a=e.i(475225),n=e.i(129228),o=e.i(555706),l=e.i(785183),s=e.i(93230),c=e.i(872526),u=e.i(234239),d=e.i(322787),m=e.i(800494),h=e.i(969212),p=e.i(955153),f=e.i(896267),y=e.i(597434);let x=e=>Math.abs(e)>=1e3?`$${(e/1e3).toLocaleString("en-US")}K`:Math.abs(e)>0&&1>Math.abs(e)?`$${e.toFixed(2)}`:`$${e.toLocaleString("en-US")}`,v=e=>{let t=parseFloat(Number(e).toPrecision(6));return t>=1e3?`$${(t/1e3).toLocaleString("en-US")}K`:t>0&&t<1||t%1!=0?`$${t.toFixed(2)}`:`$${t}`};function g({color:e,children:r}){return(0,t.jsxs)("span",{style:{display:"inline-flex",alignItems:"center",gap:6,fontFamily:y.FONT.mono,fontSize:11,textTransform:"uppercase",letterSpacing:"0.06em",color:y.C.sub},children:[(0,t.jsx)("span",{style:{width:12,height:12,borderRadius:3,background:e,display:"inline-block"}}),r]})}function b(e){let{x:r,y:i,width:a,height:n,value:o,fill:l}=e;return null==o?null:(0,t.jsx)("text",{x:r+a+8,y:i+n/2,dy:4,fontFamily:y.FONT.serif,fontSize:13,fontWeight:600,fill:l??y.C.ink,textAnchor:"start",children:v(Number(o))})}let j={top:8,right:72,bottom:24,left:8},C={top:8,right:40,bottom:24,left:4};function w(){let[e,t]=r.default.useState(!1),[i,a]=r.default.useState(null),n=r.default.useRef(null);r.default.useEffect(()=>{let e=window.matchMedia("(max-width: 640px)"),r=()=>t(e.matches);return r(),e.addEventListener("change",r),()=>e.removeEventListener("change",r)},[]),r.default.useEffect(()=>{let e=n.current?.parentElement;if(!e||"u"<typeof ResizeObserver)return;let t=new ResizeObserver(e=>{let t=e[0];if(t){let e=t.contentRect.width;a(e>0?e:null)}});return t.observe(e),()=>t.disconnect()},[]);let o=!e&&(null==i||i<720),l=null==i?null:i-64;return{isSmall:e,cardRef:n,margin:e?C:j,minChartWidth:e||o?void 0:720,yAxisWidth:e?148:o&&null!=l?Math.max(148,Math.min(260,Math.round(.38*l))):260}}function A({rows:e,format:r}){let i=Math.max(...e.map(e=>e.value));return(0,t.jsx)("ul",{style:{display:"flex",flexDirection:"column",gap:14,margin:0,padding:0,listStyle:"none"},children:e.map(e=>{let a=!!e.inworld;return(0,t.jsxs)("li",{children:[(0,t.jsx)("div",{style:{fontFamily:y.FONT.mono,fontSize:11,letterSpacing:"0.04em",color:a?y.C.ink:y.C.sub,marginBottom:5},children:e.name}),(0,t.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:10},children:[(0,t.jsx)("div",{style:{flex:1,height:12,borderRadius:3,background:y.C.grid,overflow:"hidden"},children:(0,t.jsx)("div",{style:{width:`${Math.max(2,e.value/i*100)}%`,height:"100%",borderRadius:3,background:k(e)}})}),(0,t.jsx)("span",{style:{fontFamily:y.FONT.mono,fontSize:13,fontWeight:a?600:400,color:a?y.C.teal:y.C.sub,minWidth:54,textAlign:"right"},children:r(e.value)})]})]},e.name)})})}let S=[{name:"Google Gemini 3.1 Flash TTS*",value:180},{name:"ElevenLabs",value:100},{name:"Cartesia Sonic 3.5â ",value:35},{name:"OpenAI TTS",value:30},{name:"Inworld TTS-2 (Growth)",value:12.5,inworld:!0,now:!0}];function k(e){return e.now?y.C.teal:e.inworld?y.C.accent:y.C.mute}
1let T=[{name:"Gemini 3.1 Flash TTS · realtime*",value:180},{name:"Gemini 3.1 Flash TTS · batch*",value:90},{name:"Inworld Realtime TTS-2 (Enterprise)",value:10,inworld:!0,now:!0}],F=[{name:"Azure",value:1},{name:"Google STT",value:.96},{name:"Deepgram Nova-3",value:.46},{name:"AssemblyAI Universal-3 Pro",value:.45},{name:"Inworld STT-1 (was)",value:.35,inworld:!0},{name:"Inworld STT-1 now (Growth plan)",value:.1,inworld:!0,now:!0}],O="#C0473B",P=[{label:"$100K / mo",markup:60,dollars:"$60K"},{label:"$500K / mo",markup:300,dollars:"$300K"},{label:"$1M / mo",markup:600,dollars:"$600K"}];function L(e){let{x:r,y:i,width:a,index:n}=e,o=P[n];return null==o||null==r||null==a||null==i?null:(0,t.jsx)("text",{x:r+a/2,y:i-10,fontFamily:y.FONT.serif,fontSize:17,fontWeight:700,fill:O,textAnchor:"middle",children:`+${o.dollars}/yr`})}let $=[{name:"Public third-party rate",paid:100,saved:0},{name:"Inworld realtime inference",paid:50,saved:50,inworld:!0}],B=Array.from({length:11},(e,t)=>({volume:t,variable:1100*t,fixed:6600}));e.s(["ComputeConversion",0,function(){return(0,t.jsx)(y.ChartCard,{title:"When fixed compute wins",subtitle:"Variable token cost vs dedicated GPUs as volume grows (Illustrative)",source:"Source: Illustrative; Inworld $5/GPU-hr, GCP H100 ~$11/GPU-hr.",height:360,legend:(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)(g,{color:y.C.brown,children:"Per-token (variable)"}),(0,t.jsx)(g,{color:y.C.teal,children:"Dedicated GPU (fixed, from $5/GPU-hr)"})]}),children:(0,t.jsxs)(n.LineChart,{data:B,margin:{top:16,right:32,bottom:28,left:24},children:[(0,t.jsx)(c.CartesianGrid,{...y.grid}),(0,t.jsx)(l.XAxis,{...y.axis,dataKey:"volume",type:"number",domain:[0,10],tickFormatter:e=>`${e}x`,children:(0,t.jsx)(m.Label,{...(0,y.label)("Monthly volume (relative)"),position:"insideBottom",offset:-12})}),(0,t.jsx)(s.YAxis,{...y.axis,tickFormatter:e=>v(Number(e)),width:64,domain:[0,11e3],children:(0,t.jsx)(m.Label,{...(0,y.label)("Monthly cost ($)"),angle:-90,position:"insideLeft",style:{textAnchor:"middle"}})}),(0,t.jsx)(u.Tooltip,{content:(0,y.brandTooltip)(),cursor:{stroke:y.C.grid,strokeWidth:1},labelFormatter:e=>`Volume: ${e}x`,formatter:(e,t)=>[x(Number(e)),"variable"===t?"Per-token (variable)":"Dedicated GPU (fixed)"]}),(0,t.jsx)(p.ReferenceLine,{x:6,stroke:y.C.sub,strokeDasharray:"4 4",ifOverflow:"extendDomain"}),(0,t.jsx)(o.Line,{type:"monotone",dataKey:"variable",name:"variable",stroke:y.C.brown,strokeWidth:2.5,dot:!1,isAnimationActive:!0,animationDuration:900}),(0,t.jsx)(o.Line,{type:"monotone",dataKey:"fixed",name:"fixed",stroke:y.C.teal,strokeWidth:2.5,dot:!1,isAnimationActive:!0,animationDuration:900}),(0,t.jsx)(f.ReferenceDot,{x:6,y:6600,r:6,fill:y.C.teal,stroke:y.C.white,strokeWidth:2,label:{value:"Crossover: fixed GPUs win",position:"top",fill:y.C.teal,fontFamily:y.FONT.serif,fontSize:12,fontWeight:600,offset:14}})]})})},"RealtimeInferenceGap",0,function({height:e=200,chrome:r="card",inworldFirst:n=!1}={}){let o=w(),m=n?[...$].reverse():$;return(0,t.jsx)(y.ChartCard,{title:"Up to half the cost for your LLMs",subtitle:"The same top open models, up to 50% below the public third-party rate",source:"Inworld realtime inference serves the top open models up to 50% below what you would pay elsewhere, with better latency and reliability.",sourceMinHeight:30,minChartWidth:o.minChartWidth,cardRef:o.cardRef,chrome:r,height:e,legend:(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)(g,{color:y.C.teal,children:"You pay"}),(0,t.jsx)(g,{color:y.C.mint,children:"You save"})]}),children:(0,t.jsxs)(i.BarChart,{data:m,layout:"vertical",margin:o.margin,barCategoryGap:"22%",children:[(0,t.jsx)(c.CartesianGrid,{...y.grid,horizontal:!1,vertical:!0}),(0,t.jsx)(l.XAxis,{...y.axis,type:"number",domain:[0,100],ticks:[0,25,50,75,100],tickFormatter:e=>`${e}%`}),(0,t.jsx)(s.YAxis,{...y.axis,type:"category",dataKey:"name",width:o.yAxisWidth,interval:0}),(0,t.jsx)(u.Tooltip,{content:(0,y.brandTooltip)(),cursor:{fill:y.C.cream,opacity:.6},formatter:(e,t)=>[`${e}%`,"saved"===t?"You save":"You pay"]}),(0,t.jsxs)(a.Bar,{dataKey:"paid",stackId:"rate",isAnimationActive:!0,radius:[4,0,0,4],maxBarSize:26,children:[m.map((e,r)=>
1(0,t.jsx)(d.Cell,{fill:e.inworld?y.C.teal:y.C.mute},r)),(0,t.jsx)(h.LabelList,{content:function(e){let{x:r,y:i,width:a,height:n,index:o}=e,l=m[o];return null==l||null==r||null==a||null==n||a<24?null:(0,t.jsx)("text",{x:r+a-12,y:i+n/2,dy:5,fontFamily:y.FONT.serif,fontSize:16,fontWeight:700,fill:l.inworld?y.C.white:y.C.ink,textAnchor:"end",children:`${l.paid}%`})}})]}),(0,t.jsx)(a.Bar,{dataKey:"saved",stackId:"rate",isAnimationActive:!0,fill:y.C.mint,fillOpacity:.4,maxBarSize:26,radius:[0,4,4,0],children:(0,t.jsx)(h.LabelList,{content:function(e){let{x:r,y:i,width:a,height:n,index:o}=e,l=m[o];return null==l||0===l.saved||null==r||null==a||null==n||a<104?null:(0,t.jsx)("text",{x:r+a/2,y:i+n/2,dy:5,fontFamily:y.FONT.mono,fontSize:11,letterSpacing:"0.04em",fill:y.C.teal,textAnchor:"middle",children:"save up to 50%"})}})})]})})},"RealtimePremium",0,function(){let e=Math.max(...T.map(e=>e.value));return(0,t.jsx)(y.ChartCard,{title:"The realtime premium",subtitle:"The same Google model, $ per 1M characters · realtime (interactive) vs batch",source:"Google Gemini API pricing, June 2026. *Gemini 3.1 Flash TTS is billed by audio output tokens ($20/1M interactive, $10/1M batch); the dollar figures are the effective cost per 1M input characters on a typical query (internal measurement, 2026). Inworld Realtime TTS-2 starts at $10 on entry-level Enterprise commitments and steps down to $5 at the largest, with no realtime premium.",height:300,legend:(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)(g,{color:y.C.mute,children:"Google Gemini TTS"}),(0,t.jsx)(g,{color:y.C.teal,children:"Inworld Realtime TTS-2"})]}),children:(0,t.jsxs)(i.BarChart,{data:T,layout:"vertical",margin:{top:8,right:72,bottom:24,left:8},barCategoryGap:"26%",children:[(0,t.jsx)(c.CartesianGrid,{...y.grid,horizontal:!1,vertical:!0}),(0,t.jsx)(l.XAxis,{...y.axis,type:"number",domain:[0,1.15*e],tickFormatter:e=>v(Number(e)),children:(0,t.jsx)(m.Label,{...(0,y.label)("$ per 1M characters"),position:"insideBottom",offset:-12})}),(0,t.jsx)(s.YAxis,{...y.axis,type:"category",dataKey:"name",width:200,interval:0}),(0,t.jsx)(u.Tooltip,{content:(0,y.brandTooltip)(),cursor:{fill:y.C.cream,opacity:.6},formatter:e=>[x(Number(e)),"Effective / 1M chars"]}),(0,t.jsxs)(a.Bar,{dataKey:"value",isAnimationActive:!0,radius:[0,4,4,0],maxBarSize:26,children:[T.map((e,r)=>(0,t.jsx)(d.Cell,{fill:k(e)},r)),(0,t.jsx)(h.LabelList,{dataKey:"value",content:(0,t.jsx)(b,{})})]})]})})},"RouterMarkup",0,function(){return(0,t.jsx)(y.ChartCard,{title:"A gateway charges you more",subtitle:"What a typical 5% gateway markup costs per year. The Inworld Router: $0.",source:"A typical gateway adds ~5% on credit purchases. The Inworld Router passes routed models through at no markup.",height:320,legend:(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)(g,{color:O,children:"5% gateway markup (per year)"}),(0,t.jsx)(g,{color:y.C.teal,children:"Inworld Router: $0"})]}),children:(0,t.jsxs)(i.BarChart,{data:P,margin:{top:40,right:28,bottom:28,left:44},barCategoryGap:"34%",children:[(0,t.jsx)(c.CartesianGrid,{...y.grid}),(0,t.jsx)(l.XAxis,{...y.axis,dataKey:"label",children:(0,t.jsx)(m.Label,{...(0,y.label)("Monthly LLM spend"),position:"insideBottom",offset:-12})}),(0,t.jsx)(s.YAxis,{...y.axis,domain:[0,700],ticks:[0,200,400,600],tickFormatter:e=>0===e?"$0":`$${e}K`,width:56,children:(0,t.jsx)(m.Label,{...(0,y.label)("Markup paid per year"),angle:-90,position:"insideLeft",style:{textAnchor:"middle"}})}),(0,t.jsx)(u.Tooltip,{content:(0,y.brandTooltip)(),cursor:{fill:y.C.cream,opacity:.5},formatter:e=>[`$${e}K / yr`,"5% gateway markup"]}),(0,t.jsx)(p.ReferenceLine,{y:0,stroke:y.C.teal,strokeWidth:3,ifOverflow:"extendDomain"}),(0,t.jsx)(a.Bar,{dataKey:"markup",fill:O,isAnimationActive:!0,radius:[3,3,0,0],maxBarSize:90,children:(0,t.jsx)(h.LabelList,{dataKey:"markup",content:L})})]})})},"SttCompare",0,function({height:e=360,chrome:r="card",showWas:n=!0,inworldFirst:o=!1}={}){let p=w(),f=n?F:F.filter(e=>!e.name.includes("(was)")).map(e=>e.now?{...e,name:"Inworld STT-1 (Growth plan)"}:e),j=o?[...f].reverse():f;return(0,t.jsx)(y.ChartCard,{raw:p.isSmall,title:"Speech-to-text price vs the market",subtitle:"$ per hour, streaming",source:"Source: provider pricing, June 2026; Inworld new pricing. On-demand $0.15/hr, down to $0.10 at scale.",sourceMinHeight:30,minChartWidth:p.minChartWidth,cardRef:p.cardRef,chrome:r,height:e,legend:(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)(g,{color:y.C.mute,children:"Other providers"}),n&&(0,t.jsx)(g,{color:y.C.accent,children:"Inworld (was)"}),(0,t.jsx)(g,{color:y.C.teal,children:n?"Inworld (now)":"Inworld"})]}),children:p.isSmall?(0,t.jsx)(A,{rows:j,format:x}):(0,t.jsxs)(i.BarChart,{data:j,layout:"vertical",margin:p.margin,barCategoryGap:"22%",children:[(0,t.jsx)(c.CartesianGrid,{...y.grid,horizontal:!1,vertical:!0}),(0,t.jsx)(l.XAxis,{...y.axis,type:"number",domain:[0,1.2],ticks:[0,.3,.6,.9,1.2],tickFormatter:e=>v(Number(e)),children:(0,t.jsx)(m.Label,{...(0,y.label)("$ per hour (streaming)"),position:"insideBottom",offset:-12})}),(0,t.jsx)(s.YAxis,{...y.axis,type:"category",dataKey:"name",width:p.yAxisWidth,interval:0}),(0,t.jsx)(u.Tooltip,{content:(0,y.brandTooltip)(),cursor:{fill:y.C.cream,opacity:.6},formatter:e=>[x(Number(e)),"Price / hour"]}),(0,t.jsxs)(a.Bar,{dataKey:"value",isAnimationActive:!0,radius:[0,4,4,0],maxBarSize:26,children:[j.map((e,r)=>
1(0,t.jsx)(d.Cell,{fill:k(e)},r)),(0,t.jsx)(h.LabelList,{dataKey:"value",content:(0,t.jsx)(b,{})})]})]})})},"TtsCompare",0,function({height:e=360,chrome:r="card",inworldFirst:n=!1}={}){let o=w(),p=n?[...S].reverse():S;return(0,t.jsx)(y.ChartCard,{raw:o.isSmall,title:"Text-to-speech price vs the market",subtitle:"$ per 1M characters",source:"Provider API rates, June 2026. Inworld on the Growth plan; as low as $5 at enterprise scale. *Gemini 3.1 Flash TTS is billed by audio output tokens; ~$180/1M is the effective rate on a typical query. â Cartesia estimated from published tier pricing.",sourceMinHeight:30,minChartWidth:o.minChartWidth,cardRef:o.cardRef,chrome:r,height:e,legend:(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)(g,{color:y.C.mute,children:"Other providers"}),(0,t.jsx)(g,{color:y.C.teal,children:"Inworld"})]}),children:o.isSmall?(0,t.jsx)(A,{rows:p,format:v}):(0,t.jsxs)(i.BarChart,{data:p,layout:"vertical",margin:o.margin,barCategoryGap:"22%",children:[(0,t.jsx)(c.CartesianGrid,{...y.grid,horizontal:!1,vertical:!0}),(0,t.jsx)(l.XAxis,{...y.axis,type:"number",domain:[0,Math.max(200,50*Math.ceil(Math.max(...S.map(e=>
1e.value))/50))],ticks:[0,50,100,150,200],tickFormatter:e=>v(Number(e)),children:(0,t.jsx)(m.Label,{...(0,y.label)("$ per 1M characters"),position:"insideBottom",offset:-12})}),(0,t.jsx)(s.YAxis,{...y.axis,type:"category",dataKey:"name",width:o.yAxisWidth,interval:0}),(0,t.jsx)(u.Tooltip,{content:(0,y.brandTooltip)(),cursor:{fill:y.C.cream,opacity:.6},formatter:e=>[x(Number(e)),"Price / 1M chars"]}),(0,t.jsxs)(a.Bar,{dataKey:"value",isAnimationActive:!0,radius:[0,4,4,0],maxBarSize:26,children:[p.map((e,r)=>(0,t.jsx)(d.Cell,{fill:k(e)},r)),(0,t.jsx)(h.LabelList,{dataKey:"value",content:(0,t.jsx)(b,{})})]})]})})}])}]);
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.