1"use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[9471],{89471:function(e,t,r){r.r(t),r.d(t,{GlobeNews3D:function(){return D},lon2xyz:function(){return g}});var n=r(27573),s=r(34085),a=r(73813),i=r(72380),l=r(34050),o=r(7653),c=r(71612),d=r(87659),x=r(58575),u=r(13173),m=r(1804),p=r(23120),h=r(12618),f=r(98536);let g=(e,t,r)=>{let n=t*Math.PI/180,s=r*Math.PI/180,a=e*Math.cos(s)*Math.cos(n=-n),i=e*Math.sin(s),l=e*Math.cos(s)*Math.sin(n);return new c.Vector3(a,i,l)};function v(e){return"Bearish"===e?"#ff8d8d":"Bullish"===e?"#00FF9D":"#00D4FF"}function b(){let e=(0,s.H)(c.TextureLoader,"https://raw.githubusercontent.com/mrdoob/three.js/master/examples/textures/planets/earth_atmos_2048.jpg"),t=(0,o.useMemo)(()=>({map:{value:e},time:{value:0},scanColor:{value:new c.Color("#00D4FF")}}),[e]);return(0,s.F)(e=>{let{clock:r}=e;t.time.value=r.getElapsedTime()}),(0,n.jsxs)("mesh",{children:[(0,n.jsx)("sphereGeometry",{args:[1,64,64]}),(0,n.jsx)("shaderMaterial",{vertexShader:"\n varying vec2 vUv;\n varying vec3 vNormal;\n void main() {\n vUv = uv;\n vNormal = normalize(normalMatrix * normal);\n gl_Position = projectionMatrix * modelViewMatrix * vec4(position, 1.0);\n }\n",fragmentShader:"\n uniform sampler2D map;\n uniform float time;\n uniform vec3 scanColor;\n varying vec2 vUv;\n varying vec3 vNormal;\n\n void main() {\n vec4 texColor = texture2D(map, vUv);\n\n // Scanning light effect\n float scan = sin(vUv.y * 20.0 + time * 2.0) * 0.5 + 0.5;\n scan = pow(scan, 10.0) * 0.15;\n\n // Rim lighting\n float rim = 1.0 - max(dot(vNormal, vec3(0.0, 0.0, 1.0)), 0.0);\n rim = pow(rim, 3.0) * 0.5;\n\n vec3 finalColor = texColor.rgb + (scanColor * scan) + (scanColor * rim);\n gl_FragColor = vec4(finalColor, texColor.a);\n }\n",uniforms:t,transparent:!0})]})}function j(){let[e,t]=(0,o.useMemo)(()=>{let e=[];for(let t=0;t<500;t++)e.push(80*Math.random()-30,80*Math.random()-30,80*Math.random()-30);let t=new c.BufferGeometry;t.setAttribute("position",new c.Float32BufferAttribute(e,3));let r=document.createElement("canvas");r.width=32,r.height=32;let n=r.getContext("2d");if(n){let e=n.createRadialGradient(16,16,0,16,16,16);e.addColorStop(0,"rgba(255, 255, 255, 1)"),e.addColorStop(1,"rgba(255, 255, 255, 0)"),n.fillStyle=e,n.fillRect(0,0,32,32)}return[t,new c.CanvasTexture(r)]},[]);return(0,n.jsx)("points",{geometry:e,children:(0,n.jsx)("pointsMaterial",{size:.4,map:t,color:"#4d76cf",transparent:!0,opacity:1,sizeAttenuation:!0,blending:c.AdditiveBlending,depthWrite:!1})})}function y(){let e=(0,o.useMemo)(()=>new c.SphereGeometry(1.12,64,64),[]);return(0,n.jsx)("points",{geometry:e,children:(0,n.jsx)("pointsMaterial",{color:"#81ffff",transparent:!0,sizeAttenuation:!0,opacity:.12,size:.008})})}function w(){let[e,t]=(0,o.useState)(null);return((0,o.useEffect)(()=>{let e=document.createElement("canvas");e.width=128,e.height=128;let r=e.getContext("2d");if(!r)return;let n=r.createRadialGradient(64,64,0,64,64,64);n.addColorStop(0,"rgba(255, 255, 255, 0)"),n.addColorStop(.7,"rgba(255, 255, 255, 0.2)"),n.addColorStop(.9,"rgba(255, 255, 255, 0.8)"),n.addColorStop(1,"rgba(255, 255, 255, 0)"),r.fillStyle=n,r.fillRect(0,0,128,128);let s=new c.CanvasTexture(e);return s.needsUpdate=!0,t(s),()=>s.dispose()},[]),e)?(0,n.jsx)("sprite",{scale:[2.35,2.35,1],children:(0,n.jsx)("spriteMaterial",{map:e,color:"#00D4FF",transparent:!0,opacity:.6,blending:c.AdditiveBlending,depthWrite:!1})}):null}function N(){return(0,n.jsxs)("group",{children:[(0,n.jsxs)("mesh",{scale:1.05,children:[(0,n.jsx)("sphereGeometry",{args:[1,64,64]}),(0,n.jsx)("meshBasicMaterial",{color:"#71e8ff",transparent:!0,opacity:.12,side:c.BackSide,depthWrite:!1})]}),(0,n.jsxs)("mesh",{scale:1.085,children:[(0,n.jsx)("sphereGeometry",{args:[1,64,64]}),(0,n.jsx)("meshBasicMaterial",{color:"#0f5478",transparent:!0,opacity:.08,side:c.BackSide,depthWrite:!1})]}),(0,n.jsxs)("mesh",{scale:1.15,children:[(0,n.jsx)("sphereGeometry",{args:[1,64,64]}),(0,n.jsx)("meshBasicMaterial",{color:"#081f33",transparent:!0,opacity:.05,side:c.BackSide,depthWrite:!1})]})]})}function M(){return(0,n.jsxs)("mesh",{scale:1.016,children:[(0,n.jsx)("sphereGeometry",{args:[1,64,64]}),(0,n.jsx)("meshBasicMaterial",{color:"#00D4FF",transparent:!0,opacity:.34,side:c.BackSide,depthWrite:!1})]})}function k(){let e=(0,o.useRef)(null);return(0,s.F)(t=>{let{clock:r}=t;e.current&&(e.current.material.opacity=.02+.015*Math.sin(2.2*r.getElapsedTime()))}),(0,n.jsxs)("mesh",{ref:e,children:[(0,n.jsx)("sphereGeometry",{args:[1.002,32,32]}),(0,n.jsx)("meshBasicMaterial",{color:"#00D4FF",wireframe:!0,transparent:!0,opacity:.03})]})}let E=null;function S(){let[e,t]=(0,o.useState)(null);return((0,o.useEffect)(()=>{let e=e=>{let r=[];for(let t of e.features){let{type:e,coordinates:n}=t.geometry;for(let t of"Polygon"===e?[n]:n)for(let e of t)for(let t=0;t<e.length-1;t++){let[n,s]=e[t],[a,i]=e[t+1];if(Math.abs(a-n)>180)continue;
1let l=g(1.012,n,s),o=g(1.012,a,i);r.push(l.x,l.y,l.z,o.x,o.y,o.z)}}let n=new c.BufferGeometry;n.setAttribute("position",new c.Float32BufferAttribute(r,3)),t(n)};E?e(E):fetch("https://raw.githubusercontent.com/nvkelso/natural-earth-vector/master/geojson/ne_110m_admin_0_countries.geojson").then(e=>e.json()).then(t=>{E=t,e(t)}).catch(()=>{})},[]),e)?(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)("lineSegments",{geometry:e,children:(0,n.jsx)("lineBasicMaterial",{color:"#00D4FF",transparent:!0,opacity:.08,depthTest:!1,depthWrite:!1})}),(0,n.jsx)("lineSegments",{geometry:e,children:(0,n.jsx)("lineBasicMaterial",{color:"#00D4FF",transparent:!0,opacity:.85,depthTest:!0,depthWrite:!1,blending:c.AdditiveBlending,polygonOffset:!0,polygonOffsetFactor:-1,polygonOffsetUnits:-1})}),(0,n.jsx)("lineSegments",{geometry:e,scale:1.0012,children:(0,n.jsx)("lineBasicMaterial",{color:"#00D4FF",transparent:!0,opacity:.4,depthTest:!0,depthWrite:!1,blending:c.AdditiveBlending,polygonOffset:!0,polygonOffsetFactor:-1,polygonOffsetUnits:-1})})]}):(0,n.jsx)(k,{})}function F(e){let{color:t,isMajor:r}=e,s=r?.18:.12;return(0,n.jsxs)("group",{children:[(0,n.jsxs)("mesh",{rotation:[Math.PI/2,0,0],position:[0,0,s/2],children:[(0,n.jsx)("cylinderGeometry",{args:[.006,.006,s,8]}),(0,n.jsx)("meshBasicMaterial",{color:t,transparent:!0,opacity:.8,blending:c.AdditiveBlending})]}),(0,n.jsxs)("mesh",{position:[0,0,s],children:[(0,n.jsx)("sphereGeometry",{args:[.012,12,12]}),(0,n.jsx)("meshBasicMaterial",{color:"#ffffff"})]})]})}
1function A(e){let{color:t,isFocused:r}=e,a=(0,o.useRef)(null),[i,l]=(0,o.useState)(1);return(0,s.F)(()=>{if(!a.current)return;let e=i+(r?.015:.006);e>2&&(e=1),l(e),a.current.scale.set(e,e,e);let t=a.current.material,n=r?.6:.15;e<=1.5?t.opacity=(e-1)*2*n:t.opacity=(1-(e-1.5)*2)*n}),(0,n.jsxs)("mesh",{ref:a,children:[(0,n.jsx)("ringGeometry",{args:[.03,.034,32]}),(0,n.jsx)("meshBasicMaterial",{color:t,transparent:!0,opacity:0,side:c.DoubleSide,depthWrite:!1})]})}function C(e){var t;let{item:r,isSelected:s,onSelect:a,onHover:l}=e,[d,x]=(0,o.useState)(!1),u=s||d;if(!r.location)return null;let m=g(1.015,r.location.lon,r.location.lat),p=Date.now()-new Date(r.ts).getTime()>18e5?"#F59E0B":r.isAlert?"#FF2A5F":v(r.sentiment),h="high"===r.confidence;return(0,n.jsxs)("group",{position:[m.x,m.y,m.z],onClick:e=>{e.stopPropagation(),a(r)},onPointerOver:e=>{e.stopPropagation(),x(!0),l(!0)},onPointerOut:()=>{x(!1),l(!1)},onUpdate:e=>e.lookAt(new c.Vector3(0,0,0)),children:[(0,n.jsxs)("mesh",{children:[(0,n.jsx)("sphereGeometry",{args:[.08,16,16]}),(0,n.jsx)("meshBasicMaterial",{transparent:!0,opacity:0,depthWrite:!1})]}),(0,n.jsx)(A,{color:p,isFocused:u}),(0,n.jsx)(F,{color:p,isMajor:h}),d&&!s&&(0,n.jsx)(i.V,{position:[0,0,-.15],center:!0,distanceFactor:1.2,zIndexRange:[20,0],children:(0,n.jsx)("div",{style:{background:"rgba(3,10,26,0.92)",border:"1px solid rgba(0,212,255,0.45)",borderRadius:"6px",padding:"4px 12px",fontSize:"14px",fontWeight:700,color:"#ffffff",whiteSpace:"nowrap",pointerEvents:"none",letterSpacing:"0.1em",boxShadow:"0 0 15px ".concat(p,"44")},children:null===(t=r.source)||void 0===t?void 0:t.toUpperCase()})})]})}function P(e){let{newsItems:t,selectedId:r,onSelect:a,onHover:i}=e,c=(0,o.useRef)(null),d=(0,o.useRef)(null);return(0,o.useEffect)(()=>{if(!r){d.current=null;return}let e=t.find(e=>e.id===r);if(!(null==e?void 0:e.location)){d.current=null;return}let n=e.location.lon*Math.PI/180;d.current={y:n}},[r,t]),(0,s.F)((e,t)=>{if(c.current){if(null!==d.current){let e=c.current.rotation.y,r=d.current.y,n=r-e;for(;n>Math.PI;)n-=2*Math.PI;for(;n<-Math.PI;)n+=2*Math.PI;r=e+n,c.current.rotation.y+=(r-e)*Math.min(1,3*t),.005>Math.abs(r-c.current.rotation.y)&&(c.current.rotation.y=r,d.current=null)}else r||(c.current.rotation.y+=.08*t)}}),(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)("ambientLight",{intensity:.5}),(0,n.jsx)("pointLight",{position:[10,10,10],intensity:1.5,color:"#00D4FF"}),(0,n.jsx)(j,{}),(0,n.jsxs)("group",{ref:c,rotation:[0,0,23.5*Math.PI/180],children:[(0,n.jsx)(b,{}),(0,n.jsx)(y,{}),(0,n.jsx)(S,{}),t.map(e=>(0,n.jsx)(C,{item:e,isSelected:e.id===r,onSelect:a,onHover:i},e.id))]}),(0,n.jsx)(w,{}),(0,n.jsx)(N,{}),(0,n.jsx)(M,{}),(0,n.jsx)(l.z,{enablePan:!1,minDistance:1.5,maxDistance:6})]})}class z extends o.Component{static getDerivedStateFromError(){return{hasError:!0}}render(){return this.state.hasError?(0,n.jsx)("div",{className:"h-full w-full bg-[#030A1A] flex items-center justify-center",children:(0,n.jsx)("p",{className:"text-[#1E355A] text-xs font-mono uppercase tracking-widest",children:"3D rendering unavailable"})}):this.props.children}constructor(e){super(e),this.state={hasError:!1}}}function D(e){var t,r;let{className:s="",newsItems:i,crossMarketMatches:l=[],selectedId:c,onSelect:g}=e,b=void 0!==g,[j,y]=(0,o.useState)(null);(0,o.useEffect)(()=>{let e=e=>{"Escape"===e.key&&k()};return window.addEventListener("keydown",e),()=>window.removeEventListener("keydown",e)},[b,g]);let w=b?null!=c?c:null:j,N=null!==(t=i.find(e=>e.id===w))&&void 0!==t?t:null,M=N?(0,f.Hp)(N.relatedMarkets,l):[];function k(){b?g(null):y(null)}return(0,n.jsxs)("div",{className:"relative h-full w-full ".concat(s," bg-[#030A1A]"),children:[(0,n.jsx)(z,{children:(0,n.jsxs)(a.Xz,{camera:{position:[0,0,2.4],fov:45},dpr:[1,2],children:[(0,n.jsx)("color",{attach:"background",args:["#030A1A"]}),(0,n.jsx)(o.Suspense,{fallback:null,children:(0,n.jsx)(P,{newsItems:i,selectedId:null!=w?w:void 0,onSelect:function(e){b?g(e):y(e.id)},onHover:()=>{}})})]})}),(0,n.jsx)("div",{className:"pointer-events-none absolute inset-0 rounded-[2rem]",style:{background:"radial-gradient(ellipse at 50% 46%, rgba(139,224,255,0.04) 0%, rgba(58,115,150,0.03) 28%, rgba(9,25,44,0.00) 42%, rgba(6,18,33,0.18) 56%, rgba(4,12,24,0.44) 70%, rgba(3,10,26,0.78) 88%, rgba(2,6,16,0.92) 100%)",zIndex:2}}),N&&(0,n.jsx)("div",{className:"fixed inset-0 bg-black/50 z-30 pointer-events-auto",onClick:k}),N&&(0,n.jsxs)("div",{className:"fixed z-40 pointer-events-auto flex flex-col bottom-0 inset-x-0 max-h-[70vh] rounded-t-2xl border-t xl:bottom-auto xl:inset-x-auto xl:right-0 xl:top-0 xl:h-screen xl:w-[384px] xl:max-h-none xl:rounded-none xl:border-t-0 xl:border-l border-[#1E355A]/60 bg-[#071428]/95 backdrop-blur-xl shadow-2xl animate-in fade-in duration-200",children:[(0,n.jsxs)("div",{className:"flex items-center justify-between px-5 py-4 border-b border-[#1E355A]/30 flex-shrink-0",children:[(0,n.jsxs)("div",{className:"flex items-center gap-3",children:[(0,n.jsx)("div",{className:"h-1.5 w-1.5 rounded-full animate-ping",style:{background:v(N.sentiment)}}),(0,n.jsx)("span",{className:"text-xs font-black uppercase tracking-[0.2em]",style:{color:v(N.sentiment)},children:"Live Signal"}),"low"!==N.confidence&&(0,n.jsx)("span",{className:"text-xs font-bold px-2 py-0.5 rounded-full border ".concat("high"===N.confidence?"bg-accent/10 text-accent border-accent/20":"bg-warning/10 text-warning border-warning/20"),children:N.confidence.toUpperCase()})]}),(0,n.jsx)("button",{onClick:k,"aria-label":"Close",className:"text-[#6E88B0] hover:text-white text-lg leading-none transition-colors w-7 h-7 flex items-center justify-center rounded-lg hover:bg-[#1E355A]/40",children:"\xd7"})]}),(0,n.jsxs)("div",{className:"flex-1 overflow-y-auto px-5 py-4 space-y-4 overscroll-contain",children:[(0,n.jsx)("h2",{className:"font-display leading-snug text-foreground text-base",children:N.title}),(0,n.jsxs)("div",{className:"flex flex-wrap gap-x-4 gap-y-1.5 text-xs text-muted",children:[(0,n.jsxs)("div",{className:"flex items-center gap-1.5",children:[(0,n.jsx)("span",{className:"text-muted/60",children:"SOURCE:"}),(0,n.jsx)("span",{className:"text-foreground uppercase",children:null!==(r=N.source)&&void 0!==r?r:"â"})]}),N.location&&(0,n.jsxs)("div",{className:"flex items-center gap-1.5",children:[(0,n.jsx)("span",{className:"text-muted/60",children:"LOC:"}),(0,n.jsx)("span",{className:"text-accent",children:N.location.label})]}),(0,n.jsxs)("div",{className:"flex items-center gap-1.5",children:[(0,n.jsx)("span",{className:"text-muted/60",children:"TS:"}),(0,n.jsxs)("span",{suppressHydrationWarning:!0,children:[new Date(N.ts).toLocaleTimeString([],{hour:"2-digit",minute:"2-digit"})," UTC"]})]})]}),(0,n.jsxs)("div",{children:[(0,n.jsx)("div",{className:"text-xs font-black uppercase tracking-[0.15em] text-[#3d5a7a] mb-2",children:"Related Markets"}),N.relatedMarkets.length>0?(0,n.jsx)("div",{className:"space-y-1.5 max-h-40 overflow-y-auto overscroll-contain",children:N.relatedMarkets.map(e=>{let t=e.question.length>50?e.question.slice(0,50)+"â¦":e.question;return(0,n.jsxs)(d.default,{href:"/markets/".concat(e.slug||e.conditionId),className:"flex items-center justify-between w-full px-3 py-2.5 rounded-lg border border-[#1E355A]/50 bg-[#0c203d] hover:border-[#00D4FF]/50 transition-colors group",children:[(0,n.jsx)("span",{className:"text-xs text-[#b4c8e0] group-hover:text-white transition-colors flex-1 mr-3 truncate",title:e.question,children:t}),(0,n.jsxs)("span",{className:"text-xs font-bold flex-shrink-0 ".concat(e.yesPrice>.5?"text-up":"text-muted"),children:[e.yesPrice.toFixed(2)," YES"]})]},e.conditionId)})}):(0,n.jsx)("p",{className:"text-xs text-[#6E88B0] italic",children:"No matched markets"})]}),M.length>0&&(0,n.jsxs)("div",{children:[(0,n.jsxs)("div",{className:"flex items-center justify-between mb-2",children:[(0,n.jsx)("div",{className:"text-xs font-black uppercase tracking-[0.15em] text-[#3d5a7a]",children:"Cross-Market Match"}),(0,n.jsx)("span",{className:"rounded-full border border-accent/30 bg-accent/10 px-2 py-0.5 text-xs font-bold uppercase tracking-widest text-accent",children:"Preview"})]}),(0,n.jsxs)("div",{className:"space-y-3 rounded-xl border border-[#1E355A]/60 bg-[#071428]/90 p-3",children:[(0,n.jsxs)("div",{className:"flex flex-wrap items-center justify-between gap-2 border-b border-[#1E355A]/40 pb-2",children:[(0,n.jsxs)("div",{children:[(0,n.jsx)("div",{className:"text-xs font-black uppercase tracking-[0.14em] text-accent",children:"Exact Reviewed Context"}),(0,n.jsx)("div",{className:"mt-1 text-xs text-[#6E88B0]",children:"Preview module for future Cross-Market page"})]}),(0,n.jsxs)("span",{className:"text-xs font-bold uppercase tracking-widest text-[#b4c8e0]",children:[M.length," leg",1===M.length?"":"s"]})]}),M.map(e=>{var t,r;
1let s=e.venueMarkets[0],a=e.venueMarkets[1],i=!!(s.cutoffAt&&a.cutoffAt&&s.cutoffAt===a.cutoffAt),l=[s.priceAsOf,a.priceAsOf].filter(e=>!!e).sort().at(-1);return(0,n.jsxs)("div",{className:"space-y-4 rounded-xl border border-[#1E355A]/60 bg-[#0c203d]/40 p-4 shadow-inner",children:[(0,n.jsxs)("div",{className:"rounded-lg bg-accent/5 border border-accent/20 p-3",children:[(0,n.jsxs)("div",{className:"flex items-center gap-2 mb-2",children:[(0,n.jsx)(x.Z,{size:14,className:"text-accent"}),(0,n.jsx)("span",{className:"text-[10px] font-black uppercase tracking-[0.15em] text-accent",children:"Canonical Proposition"})]}),(0,n.jsxs)("p",{className:"text-xs font-medium leading-relaxed text-foreground italic",children:['"',e.venueMarkets[0].semanticProposition||e.eventTitle,'"']})]}),(0,n.jsxs)("div",{className:"space-y-2",children:[(0,n.jsxs)("div",{className:"flex items-center justify-between",children:[(0,n.jsx)("div",{className:"text-[10px] font-black uppercase tracking-[0.15em] text-[#3d5a7a]",children:"Match Health"}),(0,n.jsxs)("div",{className:"text-[10px] font-mono text-accent",children:[((null!==(t=e.equivalenceConfidence)&&void 0!==t?t:0)*100).toFixed(0),"% CONFIDENCE"]})]}),(0,n.jsx)("div",{className:"h-1 w-full bg-[#1E355A]/30 rounded-full overflow-hidden",children:(0,n.jsx)("div",{className:"h-full bg-accent transition-all duration-1000",style:{width:"".concat((null!==(r=e.equivalenceConfidence)&&void 0!==r?r:0)*100,"%")}})}),(0,n.jsxs)("div",{className:"grid grid-cols-1 gap-1.5 mt-2",children:[(0,n.jsxs)("div",{className:"flex items-center gap-2 text-[10px] text-muted font-mono",children:[(0,n.jsx)(u.Z,{size:10})," ",e.reviewLabel.toUpperCase()]}),(0,n.jsxs)("div",{className:"flex items-center gap-2 text-[10px] text-up/80 font-mono",children:[(0,n.jsx)(u.Z,{size:10})," PROPOSITIONS MATCH (SEMANTIC)"]}),i&&(0,n.jsxs)("div",{className:"flex items-center gap-2 text-[10px] text-up/80 font-mono",children:[(0,n.jsx)(u.Z,{size:10})," RESOLUTION WINDOWS ALIGNED"]}),(0,n.jsxs)("div",{className:"flex items-center gap-2 text-[10px] text-up/80 font-mono",children:[(0,n.jsx)(u.Z,{size:10})," REFERENCE OUTCOMES SYNCED"]})]})]}),(0,n.jsxs)("div",{className:"space-y-2",children:[(0,n.jsx)("div",{className:"text-[10px] font-black uppercase tracking-[0.15em] text-[#3d5a7a]",children:"Venue Directional Map"}),(0,n.jsxs)("div",{className:"overflow-hidden rounded-lg border border-[#1E355A]/50 bg-[#071428]/50",children:[(0,n.jsxs)("div",{className:"grid grid-cols-2 border-b border-[#1E355A]/40 bg-[#1E355A]/20 px-3 py-1.5 text-[9px] font-bold uppercase tracking-widest text-muted",children:[(0,n.jsx)("div",{children:s.venue}),(0,n.jsx)("div",{children:a.venue})]}),(0,n.jsxs)("div",{className:"grid grid-cols-2 px-3 py-2 text-xs items-center",children:[(0,n.jsx)("div",{className:"text-accent font-bold uppercase tracking-widest",children:s.outcomeLabel}),(0,n.jsx)("div",{className:"text-accent font-bold uppercase tracking-widest border-l border-[#1E355A]/40 pl-3",children:a.outcomeLabel})]}),(0,n.jsx)("div",{className:"px-3 py-1.5 bg-[#1E355A]/10 text-[9px] text-muted italic text-center border-t border-[#1E355A]/40",children:"Exact event and side map reviewed; final clause handling may still be pending."})]})]}),(0,n.jsxs)("div",{className:"space-y-2",children:[(0,n.jsxs)("div",{className:"flex items-center justify-between",children:[(0,n.jsx)("div",{className:"text-[10px] font-black uppercase tracking-[0.15em] text-[#3d5a7a]",children:"Price Snapshot"}),l&&(0,n.jsxs)("div",{className:"text-[10px] font-mono text-muted",children:["AS OF ",new Date(l).toLocaleTimeString([],{hour:"2-digit",minute:"2-digit"})]})]}),(0,n.jsx)("div",{className:"grid grid-cols-2 gap-3",children:e.venueMarkets.map(t=>(0,n.jsxs)("div",{className:"relative overflow-hidden rounded-lg border border-[#1E355A]/60 bg-[#071428]/80 p-2.5",children:[(0,n.jsx)("div",{className:"text-[9px] uppercase tracking-widest text-[#6E88B0] mb-1",children:t.venue}),(0,n.jsxs)("div",{className:"flex items-end justify-between",children:[(0,n.jsx)("div",{className:"text-lg font-mono font-bold text-foreground",children:"number"==typeof t.price?t.price.toFixed(3):"--"}),(0,n.jsx)("div",{className:"text-[10px] font-bold text-muted mb-0.5",children:t.outcomeLabel})]}),(0,n.jsx)("div",{className:"mt-2 h-1 w-full bg-[#1E355A]/40 rounded-full overflow-hidden",children:(0,n.jsx)("div",{className:"h-full bg-accent opacity-60",style:{width:"".concat("number"==typeof t.price?100*t.price:0,"%")}})})]},"".concat(e.id,"-").concat(t.venue,"-price")))})]}),(0,n.jsxs)("div",{className:"flex items-center justify-between px-3 py-2 rounded-lg bg-[#1E355A]/20 border border-[#1E355A]/30",children:[(0,n.jsxs)("div",{className:"flex items-center gap-2 text-[10px] text-muted font-mono",children:[(0,n.jsx)(m.Z,{size:12})," RESOLUTION WINDOW"]}),(0,n.jsx)("div",{className:"text-[10px] font-mono text-foreground uppercase tracking-tighter",children:s.cutoffAt?new Date(s.cutoffAt).toLocaleDateString():"TBD"})]}),e.reviewNotes&&(0,n.jsxs)("div",{className:"flex gap-2 p-2 rounded-lg bg-surface/30 border border-border/10",children:[(0,n.jsx)(p.Z,{size:12,className:"text-muted shrink-0 mt-0.5"}),(0,n.jsx)("p",{className:"text-[10px] leading-relaxed text-[#6E88B0]",children:e.reviewNotes})]}),(0,n.jsx)("div",{className:"grid grid-cols-2 gap-2",children:e.venueMarkets.map(t=>(0,n.jsxs)("a",{href:t.url,target:"_blank",rel:"noopener noreferrer",className:"flex items-center justify-center gap-1.5 py-1.5 rounded-md bg-[#1E355A]/30 hover:bg-[#1E355A]/50 border border-[#1E355A]/50 transition-all text-[10px] font-bold uppercase tracking-widest text-muted hover:text-foreground",children:[t.venue," ",(0,n.jsx)(h.Z,{size:10})]},"".concat(e.id,"-").concat(t.venue,"-").concat(t.marketId,"-link")))})]},e.id)}),(0,n.jsxs)("div",{className:"rounded-lg border border-dashed border-[#1E355A]/70 px-3 py-2 text-xs text-[#6E88B0]",children:["Future page: ",(0,n.jsx)("span",{className:"text-[#b4c8e0]",children:"/cross-market"}),". This drawer is the preview surface until daily coverage is broad enough."]}),(0,n.jsx)("div",{className:"text-xs font-bold uppercase tracking-widest text-[#6E88B0]",children:"Context only - not financial advice."})]})]})]}),(0,n.jsx)("div",{className:"px-5 py-4 border-t border-[#1E355A]/30 flex-shrink-0",children:(0,n.jsx)("a",{href:N.link,target:"_blank",rel:"noopener noreferrer",className:"flex items-center justify-center gap-2 w-full rounded-xl bg-[#00D4FF]/10 border border-[#00D4FF]/30 px-4 py-2.5 text-xs font-bold text-[#00D4FF] transition-all hover:bg-[#00D4FF]/20",children:"View Intelligence Source â"})})]})]})}},72380:function(e,t,r){let n,s;r.d(t,{V:function(){return b}});var a=r(57926),i=r(7653),l=r(42291),o=r(71612),c=r(34085);let d=new o.Vector3,x=new o.Vector3,u=new o.Vector3,m=new o.Vector2;function p(e,t,r){let n=d.setFromMatrixPosition(e.matrixWorld);n.project(t);let s=r.width/2,a=r.height/2;return[n.x*s+s,-(n.y*a)+a]}let h=e=>1e-10>Math.abs(e)?0:e;function f(e,t,r=""){let n="matrix3d(";for(let r=0;16!==r;r++)n+=h(t[r]*e.elements[r])+(15!==r?",":")");return r+n}let g=(n=[1,-1,1,1,1,-1,1,1,1,-1,1,1,1,-1,1,1],e=>f(e,n)),v=(s=e=>[1/e,1/e,1/e,1,-1/e,-1/e,-1/e,-1,1/e,1/e,1/e,1,1,1,1,1],(e,t)=>f(e,s(t),"translate(-50%,-50%)")),b=i.forwardRef(({children:e,eps:t=.001,style:r,className:n,prepend:s,center:f,fullscreen:b,portal:j,distanceFactor:y,sprite:w=!1,transform:N=!1,occlude:M,onOcclude:k,castShadow:E,receiveShadow:S,material:F,geometry:A,zIndexRange:C=[16777271,0],calculatePosition:P=p,as:z="div",wrapperClass:D,pointerEvents:W="auto",...B},I)=>{let{gl:R,camera:T,scene:O,size:L,raycaster:Z,events:G,viewport:U}=(0,c.D)(),[$]=i.useState(()=>document.createElement(z)),_=i.useRef(),V=i.useRef(null),H=i.useRef(0),q=i.useRef([0,0]),Y=i.useRef(null),X=i.useRef(null),J=(null==j?void 0:j.current)||G.connected||R.domElement.parentNode,K=i.useRef(null),Q=i.useRef(!1),ee=i.useMemo(()=>{var e;return M&&"blending"!==M||Array.isArray(M)&&M.length&&(e=M[0])&&"object"==typeof e&&"current"in e},[M]);i.useLayoutEffect(()=>{let e=R.domElement;M&&"blending"===M?(e.style.zIndex=`${Math.floor(C[0]/2)}`,e.style.position="absolute",e.style.pointerEvents="none"):(e.style.zIndex=null,e.style.position=null,e.style.pointerEvents=null)},[M]),i.useLayoutEffect(()=>{if(V.current){let e=_.current=l.createRoot($);if(O.updateMatrixWorld(),N)$.style.cssText="position:absolute;top:0;left:0;pointer-events:none;overflow:hidden;";else{let e=P(V.current,T,L);$.style.cssText=`position:absolute;top:0;left:0;transform:translate3d(${e[0]}px,${e[1]}px,0);transform-origin:0 0;`}
1return J&&(s?J.prepend($):J.appendChild($)),()=>{J&&J.removeChild($),e.unmount()}}},[J,N]),i.useLayoutEffect(()=>{D&&($.className=D)},[D]);let et=i.useMemo(()=>N?{position:"absolute",top:0,left:0,width:L.width,height:L.height,transformStyle:"preserve-3d",pointerEvents:"none"}:{position:"absolute",transform:f?"translate3d(-50%,-50%,0)":"none",...b&&{top:-L.height/2,left:-L.width/2,width:L.width,height:L.height},...r},[r,f,b,L,N]),er=i.useMemo(()=>({position:"absolute",pointerEvents:W}),[W]);i.useLayoutEffect(()=>{var t,s;Q.current=!1,N?null==(t=_.current)||t.render(i.createElement("div",{ref:Y,style:et},i.createElement("div",{ref:X,style:er},i.createElement("div",{ref:I,className:n,style:r,children:e})))):null==(s=_.current)||s.render(i.createElement("div",{ref:I,style:et,className:n,children:e}))});let en=i.useRef(!0);(0,c.F)(e=>{if(V.current){T.updateMatrixWorld(),V.current.updateWorldMatrix(!0,!1);let e=N?q.current:P(V.current,T,L);if(N||Math.abs(H.current-T.zoom)>t||Math.abs(q.current[0]-e[0])>t||Math.abs(q.current[1]-e[1])>t){let t=function(e,t){let r=d.setFromMatrixPosition(e.matrixWorld),n=x.setFromMatrixPosition(t.matrixWorld),s=r.sub(n),a=t.getWorldDirection(u);return s.angleTo(a)>Math.PI/2}(V.current,T),r=!1;ee&&(Array.isArray(M)?r=M.map(e=>e.current):"blending"!==M&&(r=[O]));let n=en.current;if(r){let e=function(e,t,r,n){let s=d.setFromMatrixPosition(e.matrixWorld),a=s.clone();a.project(t),m.set(a.x,a.y),r.setFromCamera(m,t);let i=r.intersectObjects(n,!0);if(i.length){let e=i[0].distance;return s.distanceTo(r.ray.origin)<e}return!0}(V.current,T,Z,r);en.current=e&&!t}else en.current=!t;n!==en.current&&(k?k(!en.current):$.style.display=en.current?"block":"none");let s=Math.floor(C[0]/2),a=M?ee?[C[0],s]:[s-1,0]:C;if($.style.zIndex=`${function(e,t,r){if(t instanceof o.PerspectiveCamera||t instanceof o.OrthographicCamera){let n=d.setFromMatrixPosition(e.matrixWorld),s=x.setFromMatrixPosition(t.matrixWorld),a=n.distanceTo(s),i=(r[1]-r[0])/(t.far-t.near),l=r[1]-i*t.far;return Math.round(i*a+l)}}(V.current,T,a)}`,N){let[e,t]=[L.width/2,L.height/2],r=T.projectionMatrix.elements[5]*t,{isOrthographicCamera:n,top:s,left:a,bottom:i,right:l}=T,o=g(T.matrixWorldInverse),c=n?`scale(${r})translate(${h(-(l+a)/2)}px,${h((s+i)/2)}px)`:`translateZ(${r}px)`,d=V.current.matrixWorld;w&&((d=T.matrixWorldInverse.clone().transpose().copyPosition(d).scale(V.current.scale)).elements[3]=d.elements[7]=d.elements[11]=0,d.elements[15]=1),$.style.width=L.width+"px",$.style.height=L.height+"px",$.style.perspective=n?"":`${r}px`,Y.current&&X.current&&(Y.current.style.transform=`${c}${o}translate(${e}px,${t}px)`,X.current.style.transform=v(d,1/((y||10)/400)))}else{let t=void 0===y?1:function(e,t){if(t instanceof o.OrthographicCamera)return t.zoom;if(!(t instanceof o.PerspectiveCamera))return 1;{let r=d.setFromMatrixPosition(e.matrixWorld),n=x.setFromMatrixPosition(t.matrixWorld);return 1/(2*Math.tan(t.fov*Math.PI/180/2)*r.distanceTo(n))}}(V.current,T)*y;$.style.transform=`translate3d(${e[0]}px,${e[1]}px,0) scale(${t})`}q.current=e,H.current=T.zoom}}if(!ee&&K.current&&!Q.current){if(N){if(Y.current){let e=Y.current.children[0];if(null!=e&&e.clientWidth&&null!=e&&e.clientHeight){let{isOrthographicCamera:t}=T;if(t||A)B.scale&&(Array.isArray(B.scale)?B.scale instanceof o.Vector3?K.current.scale.copy(B.scale.clone().divideScalar(1)):K.current.scale.set(1/B.scale[0],1/B.scale[1],1/B.scale[2]):K.current.scale.setScalar(1/B.scale));else{let t=(y||10)/400,r=e.clientWidth*t,n=e.clientHeight*t;K.current.scale.set(r,n,1)}Q.current=!0}}}else{let t=$.children[0];if(null!=t&&t.clientWidth&&null!=t&&t.clientHeight){let e=1/U.factor,r=t.clientWidth*e,n=t.clientHeight*e;K.current.scale.set(r,n,1),Q.current=!0}K.current.lookAt(e.camera.position)}}});let es=i.useMemo(()=>({vertexShader:N?void 0:` 2 /* 3 This shader is from the THREE's SpriteMaterial. 4 We need to turn the backing plane into a Sprite 5 (make it always face the camera) if "transfrom" 6 is false. 7 */ 8 #include <common> 9 10 void main() { 11 vec2 center = vec2(0., 1.); 12 float rotation = 0.0; 13 14 // This is somewhat arbitrary, but it seems to work well 15 // Need to figure out how to derive this dynamically if it even matters 16 float size = 0.03; 17 18 vec4 mvPosition = modelViewMatrix * vec4( 0.0, 0.0, 0.0, 1.0 ); 19 vec2 scale; 20 scale.x = length( vec3( modelMatrix[ 0 ].x, modelMatrix[ 0 ].y, modelMatrix[ 0 ].z ) ); 21 scale.y = length( vec3( modelMatrix[ 1 ].x, modelMatrix[ 1 ].y, modelMatrix[ 1 ].z ) ); 22 23 bool isPerspective = isPerspectiveMatrix( projectionMatrix ); 24 if ( isPerspective ) scale *= - mvPosition.z; 25 26 vec2 alignedPosition = ( position.xy - ( center - vec2( 0.5 ) ) ) * scale * size; 27 vec2 rotatedPosition; 28 rotatedPosition.x = cos( rotation ) * alignedPosition.x - sin( rotation ) * alignedPosition.y; 29 rotatedPosition.y = sin( rotation ) * alignedPosition.x + cos( rotation ) * alignedPosition.y; 30 mvPosition.xy += rotatedPosition; 31 32 gl_Position = projectionMatrix * mvPosition; 33 } 34 `,fragmentShader:` 35 void main() { 36 gl_FragColor = vec4(0.0, 0.0, 0.0, 0.0); 37 } 38 `}
38),[N]);return i.createElement("group",(0,a.Z)({},B,{ref:V}),M&&!ee&&i.createElement("mesh",{castShadow:E,receiveShadow:S,ref:K},A||i.createElement("planeGeometry",null),F||i.createElement("shaderMaterial",{side:o.DoubleSide,vertexShader:es.vertexShader,fragmentShader:es.fragmentShader})))})},23120:function(e,t,r){r.d(t,{Z:function(){return n}});/** 39 * @license lucide-react v0.428.0 - ISC 40 * 41 * This source code is licensed under the ISC license. 42 * See the LICENSE file in the root directory of this source tree. 43 */let n=(0,r(59565).Z)("Activity",[["path",{d:"M22 12h-2.48a2 2 0 0 0-1.93 1.46l-2.35 8.36a.25.25 0 0 1-.48 0L9.24 2.18a.25.25 0 0 0-.48 0l-2.35 8.36A2 2 0 0 1 4.49 12H2",key:"169zse"}]])},13173:function(e,t,r){r.d(t,{Z:function(){return n}});/** 44 * @license lucide-react v0.428.0 - ISC 45 * 46 * This source code is licensed under the ISC license. 47 * See the LICENSE file in the root directory of this source tree. 48 */let n=(0,r(59565).Z)("CircleCheck",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"m9 12 2 2 4-4",key:"dzmm74"}]])},1804:function(e,t,r){r.d(t,{Z:function(){return n}});/** 49 * @license lucide-react v0.428.0 - ISC 50 * 51 * This source code is licensed under the ISC license. 52 * See the LICENSE file in the root directory of this source tree. 53 */let n=(0,r(59565).Z)("Clock",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["polyline",{points:"12 6 12 12 16 14",key:"68esgv"}]])},12618:function(e,t,r){r.d(t,{Z:function(){return n}});/** 54 * @license lucide-react v0.428.0 - ISC 55 * 56 * This source code is licensed under the ISC license. 57 * See the LICENSE file in the root directory of this source tree. 58 */let n=(0,r(59565).Z)("ExternalLink",[["path",{d:"M15 3h6v6",key:"1q9fwt"}],["path",{d:"M10 14 21 3",key:"gplh6r"}],["path",{d:"M18 13v6a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h6",key:"a6xqqp"}]])},58575:function(e,t,r){r.d(t,{Z:function(){return n}});/** 59 * @license lucide-react v0.428.0 - ISC 60 * 61 * This source code is licensed under the ISC license. 62 * See the LICENSE file in the root directory of this source tree. 63 */let n=(0,r(59565).Z)("ShieldCheck",[["path",{d:"M20 13c0 5-3.5 7.5-7.66 8.95a1 1 0 0 1-.67-.01C7.5 20.5 4 18 4 13V6a1 1 0 0 1 1-1c2 0 4.5-1.2 6.24-2.72a1.17 1.17 0 0 1 1.52 0C14.51 3.81 17 5 19 5a1 1 0 0 1 1 1z",key:"oel41y"}],["path",{d:"m9 12 2 2 4-4",key:"dzmm74"}]])}}]);
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.