import{r as e}from"./rolldown-runtime-S-ySWqyJ.js";import{$r as t,Er as n,Fn as r,Jt as i,Lt as a,Rt as o,Wr as s,Xr as c,Xt as l,Yt as u,Zr as d,an as f,ii as p,kr as m,lr as h,mi as g,ni as _,oi as v,qt as y,rn as b,tr as x,xr as S,yi as ee,zn as te}from"./vendor-kpGXQpLu.js";import{n as C}from"./api--bJYSUUx.js";import{I as ne,K as re,L as ie,M as w,R as T,S as E,St as D,T as O,U as ae,W as k,Y as oe,Z as se,j as A,s as ce,w as j,z as M}from"./index-CN2x1YEW.js";import{r as le}from"./adminApi-gBUQa48w.js";import{t as N}from"./status-pill-BIqUpj4r.js";import{r as ue}from"./time-DscUFrit.js";import{t as P}from"./RatingBadge-D0U0JsRl.js";import{t as de}from"./flags-D8nItKSu.js";import{n as fe}from"./SparkLine-latDI_Xz.js";import{n as pe,t as F}from"./widget-footer-link-rWfqSRVw.js";import{t as me}from"./useLeaderboardV2-qqafVgsO.js";import{t as he}from"./rank-medal-QaGuxWj2.js";import{t as I}from"./AgentIcon-DBaKNy6I.js";import{t as L}from"./MatchRow-Bg9Bu07f.js";import{t as R}from"./FeaturedMatchCard-DjJQsH5r.js";import{t as ge}from"./TeamMomentumWidget-BXQCZeiC.js";import{n as _e}from"./useNews-BfiHJcA8.js";import{n as ve}from"./job-auto-flags-D-zQNKFG.js";var z=e(ee(),1);function ye(e,n){let r=new URLSearchParams;n?.tier&&r.set(`tier`,n.tier);let i=r.size>0?`?${r.toString()}`:``;return t({queryKey:[`trendingTeams`,e,n?.tier??``],queryFn:()=>C(`/games/${e}/sentiment/trending${i}`),staleTime:12e4})}var B=_();function be(e){let t=ye(e,{tier:E()?.filters.tier??`vct`}),n=(0,z.useMemo)(()=>{if(!t.data)return 1;let e=[...t.data.gainers,...t.data.losers].map(e=>Math.abs(e.delta));return Math.max(...e,.01)},[t.data]);return{...t,data:t.data?{...t.data,maxAbsDelta:n}:t.data}}function xe({delta:e,maxAbsDelta:t}){let n=t>0?t:1,r=Math.abs(e)/n*44,i=e>=0,a=i?`var(--glk-win, #10b981)`:`var(--glk-loss, #f43f5e)`,o=i?50:50-r;return(0,B.jsxs)(`svg`,{viewBox:`0 0 100 10`,className:`h-2.5 w-16 flex-shrink-0 @[18rem]:w-20 @[22rem]:w-24 @[26rem]:w-28`,preserveAspectRatio:`none`,"aria-hidden":`true`,children:[(0,B.jsx)(`line`,{x1:`50`,y1:`0`,x2:`50`,y2:`10`,stroke:`currentColor`,strokeWidth:`0.5`,className:`text-zinc-300 dark:text-zinc-700`}),r>0&&(0,B.jsx)(`rect`,{x:o,y:`2`,width:r,height:`6`,fill:a,rx:`1.5`,opacity:.75+Math.abs(e)/n*.25}),r>1&&i&&(0,B.jsx)(`polygon`,{points:`${o+r},5 ${Math.max(o+r-3,50)},2 ${Math.max(o+r-3,50)},8`,fill:a,opacity:.9}),r>1&&!i&&(0,B.jsx)(`polygon`,{points:`${o},5 ${Math.min(o+3,50)},2 ${Math.min(o+3,50)},8`,fill:a,opacity:.9})]})}function V({team:e,maxAbsDelta:t}){let n=e.delta>=0,r=(n?`+`:``)+e.delta.toFixed(2);return(0,B.jsxs)(`div`,{className:`flex items-center gap-2 rounded-md px-1 py-1.5 transition-colors hover:bg-zinc-50 dark:hover:bg-zinc-800/40`,children:[(0,B.jsx)(A,{name:e.name,abbreviation:e.abbreviation,logoUrl:e.logoUrl,size:`xs`,className:`flex-shrink-0`}),(0,B.jsx)(`span`,{className:`glk-tabular w-10 flex-shrink-0 truncate text-xs font-bold text-zinc-800 dark:text-zinc-200`,children:e.abbreviation??e.name.slice(0,4).toUpperCase()}),(0,B.jsx)(`div`,{className:`flex flex-1 items-center`,children:(0,B.jsx)(xe,{delta:e.delta,maxAbsDelta:t})}),(0,B.jsx)(`span`,{className:D(`glk-tabular w-12 flex-shrink-0 text-right text-xs font-bold`,n?`text-emerald-500 dark:text-emerald-400`:`text-rose-500 dark:text-rose-400`),children:r}),(0,B.jsx)(`span`,{className:`glk-tabular hidden min-w-[28px] flex-shrink-0 rounded-full bg-zinc-100 px-1.5 py-0.5 text-center text-2xs font-semibold text-zinc-500 @[18rem]:inline-block dark:bg-zinc-800 dark:text-zinc-500`,children:e.mentionCount})]})}function H({label:e,up:t}){return(0,B.jsxs)(`div`,{className:`mb-1 mt-0.5 flex items-center gap-1.5`,children:[t?(0,B.jsx)(u,{size:11,className:`flex-shrink-0 text-emerald-500 dark:text-emerald-400`,"aria-hidden":`true`}):(0,B.jsx)(l,{size:11,className:`flex-shrink-0 text-rose-500 dark:text-rose-400`,"aria-hidden":`true`}),(0,B.jsx)(`span`,{className:D(`glk-eyebrow`,t?`text-emerald-600 dark:text-emerald-500`:`text-rose-600 dark:text-rose-500`),children:e})]})}var U={id:`trendingTeams`,title:`Trending Teams`,column:`secondary`,canvasSize:`1x2`,contentShape:`list`,toggleable:!0,icon:(0,B.jsx)(u,{size:14,"aria-hidden":`true`}),useData:e=>be(e.gameSlug),renderData:e=>{let t=e.gainers.filter(e=>e.delta>0),n=e.losers.filter(e=>e.delta<0),r=e.maxAbsDelta;return(0,B.jsxs)(`div`,{children:[(0,B.jsxs)(`div`,{className:`mb-1 flex items-center justify-end gap-1 glk-eyebrow pr-1`,children:[(0,B.jsx)(`span`,{className:`mr-auto pl-[3.25rem]`,children:`Swing`}),(0,B.jsx)(`span`,{className:`w-12 text-right`,children:`delta`}),(0,B.jsx)(`span`,{className:`hidden w-7 text-center @[18rem]:inline-block`,children:`posts`})]}),t.length>0&&(0,B.jsxs)(`section`,{"aria-label":`Sentiment gainers`,children:[(0,B.jsx)(H,{label:`Gainers`,up:!0}),(0,B.jsx)(`div`,{className:`space-y-0`,children:t.map(e=>(0,B.jsx)(V,{team:e,maxAbsDelta:r},e.teamId))})]}),t.length>0&&n.length>0&&(0,B.jsx)(`div`,{className:`my-2.5 h-px bg-zinc-100 dark:bg-zinc-800`}),n.length>0&&(0,B.jsxs)(`section`,{"aria-label":`Sentiment losers`,children:[(0,B.jsx)(H,{label:`Losers`,up:!1}),(0,B.jsx)(`div`,{className:`space-y-0`,children:n.map(e=>(0,B.jsx)(V,{team:e,maxAbsDelta:r},e.teamId))})]}),(0,B.jsx)(`p`,{className:`mt-3 text-center text-2xs text-zinc-400 dark:text-zinc-500`,children:`Based on community sentiment · last 7 days vs prior 7 days`})]})},empty:{message:`No trending teams`,submessage:`Trends surface from the recent results delta.`,icon:(0,B.jsx)(u,{size:24,strokeWidth:1.5,"aria-hidden":`true`})}};function Se(){return(0,B.jsx)(`span`,{title:`Teams with the biggest shift in community sentiment this week vs last week. Delta = avg sentiment change across all mentions.`,className:`ml-1 text-zinc-400 hover:text-zinc-500 dark:text-zinc-500 dark:hover:text-zinc-400 cursor-help`,"aria-label":`About this widget`,children:(0,B.jsx)(m,{size:12,"aria-hidden":`true`})})}function Ce(e){return t({queryKey:[`sentimentHeadlines`,e],queryFn:()=>C(`/games/${e}/sentiment/headlines`),staleTime:12e4})}function we(e){let t=Ce(e);return{...t,data:t.data?{items:(t.data.headlines??[]).slice(0,6)}:t.data}}function Te(e,t){return e>=.6?`On a tear`:e>=.35?`Trending up`:e>=.15?`Gaining steam`:e>-.15?t===`roster_move`||t===`roster`?`Roster news`:t===`tournament_news`||t===`tournament`?`In the mix`:`Mixed takes`:e>-.35?`Under pressure`:e>-.6?`Struggling`:`In crisis`}function Ee(e){return e>=.35?`text-emerald-400 bg-emerald-500/10 border-emerald-500/20`:e>=.15?`text-emerald-500/80 bg-emerald-500/5 border-emerald-500/15`:e>-.15?`text-zinc-400 bg-zinc-500/10 border-zinc-500/20`:e>-.35?`text-rose-500/80 bg-rose-500/5 border-rose-500/15`:`text-rose-400 bg-rose-500/10 border-rose-500/20`}function De({sentiment:e}){return e>=.15?(0,B.jsx)(u,{size:10,"aria-hidden":`true`}):e<=-.15?(0,B.jsx)(l,{size:10,"aria-hidden":`true`}):(0,B.jsx)(r,{size:10,"aria-hidden":`true`})}function Oe({item:e,gameSlug:t}){let n=Te(e.sentiment,e.label),r=Ee(e.sentiment);return(0,B.jsxs)(v,{to:e.entityType===`team`?`/${t}/teams/${e.entitySlug}`:`/${t}/players/${e.entitySlug}`,className:`group/row -mx-2 flex items-start gap-3 rounded px-2 py-2 transition-colors hover:bg-zinc-50 dark:hover:bg-zinc-900/40`,children:[(0,B.jsx)(`div`,{className:`flex-shrink-0 pt-0.5`,children:(0,B.jsx)(A,{...e.entityType===`team`?{name:e.entityName,slug:e.entitySlug,abbreviation:e.team?.abbreviation,logoUrl:e.team?.logoUrl}:{name:e.team?.name??e.entityName,slug:e.team?.slug??void 0,abbreviation:e.team?.abbreviation,logoUrl:e.team?.logoUrl},size:`md`})}),(0,B.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,B.jsxs)(`div`,{className:`flex items-center gap-1.5`,children:[(0,B.jsx)(`span`,{className:`text-sm font-bold tracking-tight text-zinc-900 transition-colors group-hover/row:text-zinc-900 dark:text-zinc-50 dark:group-hover/row:text-zinc-100`,style:{fontFamily:`var(--font-display)`},children:e.entityName}),e.entityType===`player`&&e.team?.abbreviation&&(0,B.jsx)(`span`,{className:`glk-tabular text-xs font-semibold text-zinc-500 dark:text-zinc-500`,children:e.team.abbreviation}),(0,B.jsxs)(`span`,{className:D(`ml-auto flex flex-shrink-0 items-center gap-1 rounded-full border px-1.5 py-0.5 text-2xs font-semibold tracking-tight`,r),children:[(0,B.jsx)(De,{sentiment:e.sentiment}),n]})]}),(0,B.jsx)(`p`,{className:`mt-0.5 line-clamp-2 text-xs leading-relaxed text-zinc-600 dark:text-zinc-400`,children:e.summary}),(0,B.jsxs)(`div`,{className:`mt-1 flex items-center gap-1.5 glk-eyebrow`,children:[(0,B.jsxs)(`span`,{className:`glk-tabular`,children:[e.mentions,` signals`]}),(0,B.jsx)(`span`,{className:`opacity-50`,"aria-hidden":`true`,children:`·`}),(0,B.jsx)(`span`,{className:`normal-case tracking-normal`,children:ue(e.latestPublishedAt)})]})]})]})}var W={id:`hotTakes`,title:`Scene Beat`,column:`secondary`,canvasSize:`1x2`,contentShape:`list`,toggleable:!0,icon:(0,B.jsx)(h,{size:14,"aria-hidden":`true`}),useData:e=>we(e.gameSlug),renderData:(e,t)=>(0,B.jsxs)(`div`,{className:`flex flex-col gap-2`,children:[(0,B.jsxs)(`div`,{className:`flex items-center justify-between px-0.5`,children:[(0,B.jsx)(`span`,{className:`glk-eyebrow`,children:`Scene beat · last 7 days`}),(0,B.jsxs)(`div`,{className:`group/help relative`,children:[(0,B.jsx)(m,{size:13,className:`cursor-help text-zinc-400 hover:text-zinc-600 dark:text-zinc-600 dark:hover:text-zinc-400`,"aria-label":`About Scene Beat`}),(0,B.jsx)(`div`,{className:D(`pointer-events-none absolute right-0 top-full z-10 mt-1 w-60 rounded-md border border-zinc-200 bg-white px-3 py-2`,`text-xs leading-snug text-zinc-600 shadow-md`,`opacity-0 transition-opacity group-hover/help:opacity-100`,`dark:border-zinc-700 dark:bg-zinc-900 dark:text-zinc-400`),children:`The biggest narratives across the scene right now. Teams and players the community is talking about most, ranked by signal strength.`})]})]}),(0,B.jsx)(`div`,{className:`divide-y divide-zinc-100 dark:divide-zinc-800/50`,children:e.items.map(e=>(0,B.jsx)(Oe,{item:e,gameSlug:t.gameSlug},e.entityId))})]}),empty:{message:`No scene chatter`,submessage:`Quiet day on the community feeds.`,icon:(0,B.jsx)(h,{size:20,"aria-hidden":`true`})}};function G(e,t,n=20){return j(O.player,{gameSlug:e,playerSlug:t,limit:n},{enabled:!!t,placeholderData:p})}function ke(){let{preferences:e}=T(),n=e.watchlist.filter(e=>e.type===`player`);return t({queryKey:[`watchedPlayers`,n.map(e=>e.slug).join(`,`)],queryFn:()=>({items:n}),staleTime:1/0,gcTime:1/0})}function K(e,t=0){return e==null?`—`:t>0?e.toFixed(t):Math.round(e).toString()}function Ae({gameSlug:e,slug:t,onUnwatch:n}){let{data:r,isLoading:i}=G(e,t);if(i)return(0,B.jsx)(`div`,{className:`h-20 animate-pulse rounded-lg bg-zinc-100 dark:bg-zinc-800`});if(!r)return null;let a=de(r.country),s=r.role?r.role.charAt(0).toUpperCase()+r.role.slice(1).toLowerCase():null;return(0,B.jsxs)(`div`,{className:`relative`,children:[(0,B.jsxs)(v,{to:`/${e}/players/${t}`,className:`block rounded-lg bg-zinc-50 p-3 transition-colors hover:bg-zinc-100 dark:bg-zinc-800/40 dark:hover:bg-zinc-800/70`,children:[(0,B.jsxs)(`div`,{className:`mb-2 flex items-center justify-between`,children:[(0,B.jsxs)(`div`,{className:`flex items-center gap-2`,children:[r.avatarUrl?(0,B.jsx)(`img`,{src:r.avatarUrl.startsWith(`//`)?`https:${r.avatarUrl}`:r.avatarUrl,alt:r.ign,className:`h-8 w-8 rounded-full object-cover`}):(0,B.jsx)(`div`,{className:`flex h-8 w-8 items-center justify-center rounded-full bg-zinc-200 text-xs font-bold text-zinc-500 dark:bg-zinc-700 dark:text-zinc-400`,children:r.ign.charAt(0).toUpperCase()}),(0,B.jsxs)(`div`,{children:[(0,B.jsxs)(`span`,{className:`text-sm font-bold tracking-tight text-zinc-900 dark:text-zinc-50`,style:{fontFamily:`var(--font-display)`},children:[a&&(0,B.jsx)(`span`,{className:`mr-1`,children:a}),r.ign]}),(0,B.jsxs)(`div`,{className:`flex items-center gap-1.5 text-xs text-zinc-500 dark:text-zinc-400`,children:[r.team?.abbreviation&&(0,B.jsx)(`span`,{className:`font-semibold`,children:r.team.abbreviation}),s&&(0,B.jsxs)(`span`,{children:[`· `,s]})]})]})]}),r.rating&&(0,B.jsx)(P,{rating:Math.round(r.rating.rating),rd:Math.round(r.rating.rd)})]}),(0,B.jsx)(`div`,{className:`flex flex-wrap gap-x-4 gap-y-1.5`,children:[{label:`ACS`,value:K(r.careerAvgAcs)},{label:`K/D`,value:K(r.careerAvgKd,2)},{label:`ADR`,value:K(r.careerAvgAdr)},{label:`KAST`,value:r.careerAvgKast==null?`—`:`${K(r.careerAvgKast*100)}%`}].map(e=>(0,B.jsxs)(`div`,{children:[(0,B.jsx)(`div`,{className:`glk-eyebrow`,children:e.label}),(0,B.jsx)(`div`,{className:`glk-metric glk-metric-sm mt-0.5 text-zinc-900 dark:text-zinc-50`,children:e.value})]},e.label))})]}),(0,B.jsx)(`button`,{"aria-label":`Remove ${r.ign} from watchlist`,onClick:()=>n(t),className:`absolute right-2 top-2 rounded p-0.5 text-zinc-400 transition-colors hover:bg-zinc-200/60 hover:text-zinc-600 dark:text-zinc-500 dark:hover:bg-zinc-700/60 dark:hover:text-zinc-300`,children:(0,B.jsx)(o,{size:12,"aria-hidden":`true`})})]})}function je({gameSlug:e,slug:t,onUnwatch:n}){let{data:r,isLoading:i}=G(e,t);if(i)return(0,B.jsx)(`div`,{className:`h-8 animate-pulse rounded bg-zinc-100 dark:bg-zinc-800`});if(!r)return null;let a=de(r.country);return(0,B.jsxs)(`div`,{className:`flex items-center gap-1`,children:[(0,B.jsxs)(v,{to:`/${e}/players/${t}`,className:`flex min-w-0 flex-1 items-center gap-2 rounded-md px-2 py-1.5 transition-colors hover:bg-zinc-50 dark:hover:bg-zinc-800/50`,children:[(0,B.jsxs)(`span`,{className:`min-w-0 flex-1 truncate text-sm font-semibold text-zinc-800 dark:text-zinc-100`,children:[a&&(0,B.jsx)(`span`,{className:`mr-1`,children:a}),r.ign]}),(0,B.jsx)(`span`,{className:`text-xs text-zinc-500 dark:text-zinc-500`,children:r.team?.abbreviation??``}),(0,B.jsx)(`span`,{className:`glk-metric glk-metric-sm text-zinc-700 dark:text-zinc-200`,children:K(r.careerAvgAcs)}),r.rating&&(0,B.jsx)(P,{rating:Math.round(r.rating.rating),rd:Math.round(r.rating.rd)})]}),(0,B.jsx)(`button`,{"aria-label":`Remove ${r.ign} from watchlist`,onClick:()=>n(t),className:`shrink-0 rounded p-1 text-zinc-400 transition-colors hover:bg-zinc-200/60 hover:text-zinc-600 dark:text-zinc-500 dark:hover:bg-zinc-700/60 dark:hover:text-zinc-300`,children:(0,B.jsx)(o,{size:12,"aria-hidden":`true`})})]})}function Me({data:e,gameSlug:t}){let{removeFromWatchlist:n}=T(),{items:r}=e,i=r.length>=4;return(0,B.jsx)(`div`,{className:`space-y-2`,children:r.map(e=>i?(0,B.jsx)(je,{gameSlug:t,slug:e.slug,onUnwatch:n},e.slug):(0,B.jsx)(Ae,{gameSlug:t,slug:e.slug,onUnwatch:n},e.slug))})}var Ne={id:`watchedPlayers`,title:`Watchlist`,column:`secondary`,canvasSize:`1x1`,contentShape:`list`,toggleable:!0,icon:(0,B.jsx)(f,{size:14,"aria-hidden":`true`}),useData:()=>ke(),renderData:(e,t)=>(0,B.jsx)(Me,{data:e,gameSlug:t.gameSlug}),empty:{message:`Add players to your watchlist`,submessage:`Watched players show their recent form here.`,icon:(0,B.jsx)(f,{size:24,strokeWidth:1.5,"aria-hidden":`true`}),action:(0,B.jsx)(v,{to:`/valorant/players`,className:`font-semibold text-[var(--glk-brand)] hover:underline focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-[var(--glk-brand)]`,children:`Browse players →`})}};function Pe(){return t({queryKey:[`ad`],queryFn:()=>!0,staleTime:1/0})}var Fe={id:`ad`,title:`Sponsored`,column:`secondary`,canvasSize:`1x1`,contentShape:`metric`,icon:(0,B.jsx)(x,{size:14,"aria-hidden":`true`}),useData:Pe,renderData:()=>(0,B.jsx)(`div`,{className:`h-[232px] w-full`,children:(0,B.jsxs)(`div`,{className:`mx-auto flex h-full w-full max-w-[300px] flex-col items-center justify-center gap-3 rounded-xl border border-dashed border-zinc-200 bg-zinc-50/60 px-4 transition-colors hover:border-zinc-300 dark:border-zinc-700/60 dark:bg-zinc-800/20 dark:hover:border-zinc-600`,children:[(0,B.jsx)(`div`,{className:`flex h-8 w-8 items-center justify-center rounded-full bg-zinc-100 dark:bg-zinc-800`,children:(0,B.jsx)(x,{size:14,className:`text-zinc-400 dark:text-zinc-500`,"aria-hidden":`true`})}),(0,B.jsxs)(`div`,{className:`text-center`,children:[(0,B.jsx)(`p`,{className:`text-sm font-bold tracking-tight text-zinc-700 dark:text-zinc-300`,style:{fontFamily:`var(--font-display)`},children:`Support Glicko`}),(0,B.jsx)(`p`,{className:`glk-tabular mt-0.5 text-xs text-zinc-500 dark:text-zinc-500`,children:`Ad space · 300 × 232`})]}),(0,B.jsx)(`span`,{className:`glk-eyebrow rounded-full border border-zinc-200 px-2.5 py-0.5 dark:border-zinc-700`,children:`Advertise here`})]})}),empty:{message:`No sponsor`,icon:(0,B.jsx)(x,{size:24,strokeWidth:1.5})}};function Ie(e){return t({queryKey:[`gameMood`,e],queryFn:()=>C(`/games/${e}/sentiment/game-mood`),staleTime:12e4})}var Le={excited:`success`,hopeful:`success`,impressed:`success`,neutral:`neutral`,meme:`warning`,disappointed:`danger`,frustrated:`danger`,angry:`danger`},Re={excited:`Excited`,hopeful:`Hopeful`,impressed:`Impressed`,neutral:`Neutral`,meme:`Meme`,disappointed:`Disappointed`,frustrated:`Frustrated`,angry:`Angry`};function ze(e){return Le[e]??`neutral`}function Be(e){return Re[e]??e}function Ve(e){let t=e.toFixed(2);return e>0&&!t.startsWith(`-`)?`+${t}`:t}function He(e){let t=new Date(e).getTime(),n=Math.round((Date.now()-t)/6e4);if(n<1)return`just now`;if(n<60)return`${n}m ago`;let r=Math.round(n/60);return r<24?`${r}h ago`:`${Math.round(r/24)}d ago`}function Ue({latest:e,history:t}){let n=ze(e.mood),r=Be(e.mood),i=t.map(e=>e.avgSentiment),a=i.filter(e=>e!==null),o=a.length>=2,s=a[0]??null,c=i.map(e=>e===null?s:(s=e,e));return(0,B.jsxs)(`div`,{className:`flex flex-col gap-3`,children:[(0,B.jsx)(ce,{label:`Community mood · updated ${He(e.updatedAt)}`,value:r,displayValue:!0,accent:n===`danger`||n===`success`,sub:(0,B.jsxs)(`span`,{className:`inline-flex min-w-0 items-center gap-2`,children:[(0,B.jsx)(`span`,{className:`glk-tabular flex-shrink-0 text-zinc-400 dark:text-zinc-500`,title:`Sentiment score (−1 = negative, +1 = positive)`,children:Ve(e.sentiment)}),e.summary&&(0,B.jsx)(`span`,{className:`min-w-0 truncate text-zinc-500 dark:text-zinc-400`,children:e.summary})]}),trail:o?(0,B.jsx)(fe,{data:c,width:180,height:32}):void 0}),e.themes.length>0&&(0,B.jsx)(`div`,{className:`flex flex-wrap gap-1`,children:e.themes.slice(0,6).map(e=>(0,B.jsx)(`span`,{className:`rounded-full border border-zinc-200 bg-zinc-50 px-2 py-0.5 text-2xs font-medium text-zinc-600 dark:border-zinc-800 dark:bg-zinc-900 dark:text-zinc-400`,children:e},e))})]})}var We={id:`gameMood`,title:`Community Mood`,column:`secondary`,canvasSize:`1x1`,contentShape:`metric`,toggleable:!0,icon:(0,B.jsx)(c,{size:14,"aria-hidden":`true`}),useData:e=>Ie(e.gameSlug),isDataEmpty:e=>e.latest==null,renderData:e=>(0,B.jsx)(Ue,{latest:e.latest,history:e.history}),empty:{message:`No mood data yet`,submessage:`Check back once content flows in.`,icon:(0,B.jsx)(c,{size:24,strokeWidth:1.5,"aria-hidden":`true`})}};function Ge(e,t,n){let r=new Date,i=[...e.filter(e=>!(e.tier!==t||n&&e.region?.toLowerCase()!==n.toLowerCase()))].sort((e,t)=>new Date(t.startDate??0).getTime()-new Date(e.startDate??0).getTime()).filter((e,t,n)=>n.findIndex(t=>t.name===e.name)===n.indexOf(e)),a=e=>!!(e.startDate&&new Date(e.startDate)<=r&&(!e.endDate||new Date(e.endDate)>=r)),o=i.filter(e=>e.status===`ongoing`||e.status==null&&a(e)),s=i.filter(e=>e.status===`upcoming`||e.status==null&&e.startDate&&new Date(e.startDate)>r).slice(0,3),c=i.filter(e=>e.status===`completed`||e.status==null&&e.endDate&&new Date(e.endDate)<r).slice(0,3);return o.length+s.length>0?[...o,...s]:c}function Ke(e){let t=pe(e),n=E(),r=n?.filters.tier??`vct`,i=n?.filters.region??null;return{...t,data:t.data?Ge(t.data,r,i):t.data}}var qe={id:`tournamentContext`,title:`Tournament`,column:`secondary`,canvasSize:`1x2`,contentShape:`list`,toggleable:!0,icon:(0,B.jsx)(y,{size:14,"aria-hidden":`true`}),useData:e=>Ke(e.gameSlug),renderData:(e,t)=>{let n=new Date,r=e.filter(e=>e.status===`ongoing`||e.status==null&&e.startDate&&new Date(e.startDate)<=n&&(!e.endDate||new Date(e.endDate)>=n)),i=e.filter(e=>e.status===`upcoming`||e.status==null&&e.startDate&&new Date(e.startDate)>n),a=r.length===0&&i.length===0&&e.length>0;return(0,B.jsx)(`div`,{className:`space-y-3`,children:e.map(e=>{let r=e.status===`ongoing`||e.status==null&&e.startDate&&new Date(e.startDate)<=n&&(!e.endDate||new Date(e.endDate)>=n);return(0,B.jsx)(v,{to:`/${t.gameSlug}/tournaments/${e.slug}`,className:`group/row block rounded-lg px-1 py-1 transition-colors hover:bg-zinc-100 dark:hover:bg-zinc-800/50 focus-visible:ring-2 focus-visible:ring-[var(--glk-brand)] focus-visible:outline-none`,children:(0,B.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,B.jsxs)(`div`,{className:`flex items-start justify-between gap-2`,children:[(0,B.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,B.jsx)(`div`,{className:`truncate text-sm font-bold text-zinc-900 group-hover/row:text-zinc-900 dark:text-zinc-100 dark:group-hover/row:text-zinc-100`,title:e.name,children:e.name}),(0,B.jsxs)(`div`,{className:`mt-0.5 flex items-center gap-2 text-xs text-zinc-500 dark:text-zinc-400`,children:[e.region&&(0,B.jsx)(`span`,{className:`font-semibold uppercase tracking-wide text-zinc-600 dark:text-zinc-300`,children:e.region}),(0,B.jsx)(`span`,{className:`rounded px-1.5 py-0.5 text-2xs font-bold leading-none ${oe(e.tier)}`,children:se(e.tier)??`VCT`})]})]}),(0,B.jsx)(`div`,{className:`flex-shrink-0`,children:r?(0,B.jsx)(N,{tone:`live`,pulse:!0,children:`Live`}):a?(0,B.jsx)(N,{tone:`neutral`,size:`xs`,children:`Recent`}):(0,B.jsx)(N,{tone:`info`,size:`xs`,children:`Upcoming`})})]}),(0,B.jsxs)(`div`,{className:`flex min-w-0 flex-wrap gap-4 text-xs text-zinc-500 dark:text-zinc-400`,children:[e.prizePool&&(0,B.jsxs)(`div`,{children:[(0,B.jsx)(`span`,{children:`Prize `}),(0,B.jsx)(`span`,{className:`font-semibold text-zinc-700 dark:text-zinc-300`,children:e.prizePool})]}),e.startDate&&(0,B.jsxs)(`div`,{children:[new Date(e.startDate).toLocaleDateString(void 0,{month:`short`,day:`numeric`}),e.endDate&&(0,B.jsxs)(B.Fragment,{children:[` – `,new Date(e.endDate).toLocaleDateString(void 0,{month:`short`,day:`numeric`})]})]})]})]})},e.id)})})},empty:{message:`No tournaments scheduled`,icon:(0,B.jsx)(y,{size:24,strokeWidth:1.5,"aria-hidden":`true`})}};function Je(e){return e===`vcl`?`vcl`:e===`gc`?`gc`:`vct`}function Ye(e){switch(e){case`vct`:return`VCT`;case`vcl`:return`Challengers`;case`gc`:return`Game Changers`;case`all`:return`Global`}}function Xe(e){let t=Je(E()?.filters.tier),n=me(e,t,{limit:15}),r=(0,z.useMemo)(()=>(n.data?.teams??[]).slice(0,15),[n.data]);return{...n,data:n.data?{items:r,pool:t}:n.data}}var Ze={id:`powerRankings`,title:`Rankings`,column:`secondary`,canvasSize:`1x2`,contentShape:`list`,toggleable:!0,icon:(0,B.jsx)(S,{size:14,"aria-hidden":`true`}),href:e=>`/${e.gameSlug}/teams`,useData:e=>Xe(e.gameSlug),renderData:(e,t)=>{let n=e.pool,r=e.items,i=Ye(n);return(0,B.jsxs)(`div`,{children:[(0,B.jsx)(`div`,{className:`divide-y divide-zinc-100 dark:divide-white/[0.04]`,title:`Top teams in the ${i} pool — ranked by Glicko-2 rating.`,children:r.map((e,n)=>{let r=e.poolRank??n+1;return(0,B.jsxs)(v,{to:`/${t.gameSlug}/teams/${e.slug}`,title:`${e.name} — ${i} pool · rating ${e.rating}`,className:`group flex min-w-0 items-center gap-2 px-1 py-1.5 transition-colors hover:bg-zinc-50 dark:hover:bg-white/[0.03]`,children:[(0,B.jsx)(he,{rank:r,variant:`text`,className:`w-5 flex-shrink-0 text-right text-xs`}),(0,B.jsx)(A,{name:e.name,slug:e.slug,abbreviation:e.abbreviation,logoUrl:e.logoUrl,size:`xs`}),(0,B.jsx)(`span`,{className:`min-w-0 flex-1 truncate text-sm font-semibold text-zinc-900 dark:text-zinc-100`,children:e.name}),(0,B.jsxs)(`span`,{className:D(`glk-metric glk-metric-sm text-zinc-900 dark:text-zinc-100`,e.isProvisional&&`text-zinc-500 dark:text-zinc-400`),children:[e.rating,e.isProvisional&&(0,B.jsx)(`span`,{className:`ml-0.5 text-2xs text-zinc-400`,"aria-hidden":`true`,children:`*`})]})]},e.teamId)})}),(0,B.jsx)(F,{to:`/${t.gameSlug}/teams`,children:`View full rankings →`})]})},empty:{message:`No teams ranked`,submessage:`Rankings refresh after match results post.`,icon:(0,B.jsx)(S,{size:24,strokeWidth:1.5,"aria-hidden":`true`})}},Qe=50;function q(e,t={}){let{stat:n=`acs`,minMaps:r=10,limit:i=Qe,tier:a,tiers:o,region:s,subRegion:c,role:l,from:u}=t;return d({queryKey:[`leaderboard`,e,n,r,i,a,o,s,c,l,u],queryFn:({pageParam:t=0})=>{let d=new URLSearchParams({stat:n,min_maps:String(r),limit:String(i),offset:String(t)});return a&&a!==`all`&&d.set(`tier`,a),o&&o.length>0&&d.set(`tiers`,o.join(`,`)),s&&s!==`all`&&d.set(`region`,s),c&&d.set(`subRegion`,c),l&&l!==`all`&&d.set(`role`,l),u&&d.set(`from`,u),C(`/games/${e}/stats/leaderboard?${d}`)},initialPageParam:0,getNextPageParam:(e,t)=>{if(!(e.length<i))return t.length*i},staleTime:300*1e3})}function J(e=180){return(0,z.useMemo)(()=>{let t=new Date;return t.setDate(t.getDate()-e),t.toISOString().split(`T`)[0]},[e])}function $e({label:e,value:t,percent:n,className:r}){return(0,B.jsxs)(`div`,{className:D(`min-w-0`,r),children:[(0,B.jsxs)(`div`,{className:`flex min-w-0 items-baseline justify-between gap-2`,children:[(0,B.jsx)(`span`,{className:`min-w-0 flex-1 truncate text-sm font-semibold text-zinc-800 dark:text-zinc-200`,children:e}),(0,B.jsx)(`span`,{className:`glk-metric glk-metric-sm flex-shrink-0 text-zinc-900 dark:text-zinc-100`,children:t})]}),(0,B.jsx)(`div`,{className:`mt-1 h-1 w-full overflow-hidden rounded-full bg-zinc-100 dark:bg-zinc-800`,children:(0,B.jsx)(`div`,{className:`h-full rounded-full transition-all`,style:{width:`${Math.min(100,n)}%`,background:`linear-gradient(90deg, var(--glk-brand), var(--glk-brand) 40%, color-mix(in srgb, var(--glk-brand) 25%, transparent))`}})})]})}function et(e){let t=J(),n=E(),r=q(e,{stat:`acs`,limit:5,tier:n?.filters.tier??`vct`,region:n?.filters.region??null,subRegion:n?.filters.subRegion??null,minMaps:5,from:t}),i=r.data?.pages.flat();return{...r,data:i,isLoading:r.isLoading,isError:r.isError}}var tt={id:`leaderboard`,title:`Top Performers`,column:`secondary`,canvasSize:`1x2`,contentShape:`list`,toggleable:!0,icon:(0,B.jsx)(a,{size:14,"aria-hidden":`true`}),href:e=>`/${e.gameSlug}/players`,useData:e=>et(e.gameSlug),renderData:(e,t)=>{let n=e[0]?.value??1;return(0,B.jsxs)(`div`,{children:[(0,B.jsx)(`div`,{className:`space-y-1.5`,children:e.map((e,r)=>{let i=r+1;return(0,B.jsxs)(v,{to:`/${t.gameSlug}/players/${e.player.slug}`,className:`flex min-w-0 items-center gap-2 rounded-md px-1 py-0.5 transition-colors hover:bg-zinc-100 dark:hover:bg-zinc-800/50`,children:[(0,B.jsx)(he,{rank:i,className:`h-6 w-6 flex-shrink-0`}),e.player.team&&(0,B.jsx)(A,{name:e.player.team.name,slug:e.player.team.slug??``,abbreviation:e.player.team.abbreviation,logoUrl:e.player.team.logoUrl??null,size:`xs`,className:`flex-shrink-0`}),(0,B.jsx)($e,{label:e.player.ign,value:e.value,percent:e.value/n*100,className:`flex-1`})]},e.player.id)})}),(0,B.jsx)(F,{to:`/${t.gameSlug}/players`,children:`View full leaderboard →`})]})},empty:{message:`No leaders yet`,submessage:`Leaderboards build up after enough recent maps.`,icon:(0,B.jsx)(a,{size:24,strokeWidth:1.5,"aria-hidden":`true`})}};function nt(e){if(!e)return``;let t=new URLSearchParams;e.from&&t.set(`from`,e.from),e.to&&t.set(`to`,e.to),e.tier&&t.set(`tier`,e.tier);let n=t.toString();return n?`?${n}`:``}function Y(e,n){let r=nt(n);return t({queryKey:[`agentMeta`,e,n?.from??``,n?.to??``,n?.tier??``],queryFn:async()=>(await C(`/games/${e}/stats/agents${r}`)).agents,staleTime:300*1e3})}var X=60,rt=30;function Z(e){return new Date(Date.now()-e*24*60*60*1e3).toISOString()}function it(e){let t=E()?.filters.tier??`vct`,n=(0,z.useMemo)(()=>({from:Z(X),tier:t}),[t]),r=(0,z.useMemo)(()=>({from:Z(2*X),to:Z(X),tier:t}),[t]),i=Y(e,n),a=Y(e,r),o=i.isLoading,s=i.isError,c=(0,z.useMemo)(()=>{if(!i.data)return;let e=new Map(a.data?.map(e=>[e.agent,e.presenceRate])??[]);return{items:i.data.filter(e=>e.mapsPlayed>=rt).map(t=>({agent:t.agent,presenceRate:t.presenceRate,winRate:t.winRate,delta:e.has(t.agent)?t.presenceRate-(e.get(t.agent)??0):null})).sort((e,t)=>t.presenceRate-e.presenceRate).slice(0,10)}},[i.data,a.data]);return{...i,data:c,isLoading:o,isError:s}}function at(e){return e>=.55?`text-emerald-600 dark:text-emerald-400`:e<=.45?`text-rose-500 dark:text-rose-400`:`text-zinc-700 dark:text-zinc-300`}function ot({delta:e}){if(e==null)return(0,B.jsx)(`span`,{className:`text-2xs text-zinc-400`,children:`new`});let t=e*100;if(Math.abs(t)<1)return(0,B.jsx)(`span`,{className:`text-2xs text-zinc-400`,children:`—`});let n=t>0,r=n?u:l;return(0,B.jsxs)(`span`,{className:D(`inline-flex items-baseline gap-0.5 text-2xs font-bold tabular-nums`,n?`text-emerald-600 dark:text-emerald-400`:`text-rose-500 dark:text-rose-400`),children:[(0,B.jsx)(r,{size:10,strokeWidth:2.5,"aria-hidden":`true`,className:`self-center`}),n?`+`:``,t.toFixed(1)]})}var st={id:`agentMeta`,title:`Agent Meta`,column:`secondary`,canvasSize:`1x2`,contentShape:`list`,toggleable:!0,icon:(0,B.jsx)(b,{size:14,"aria-hidden":`true`}),useData:e=>it(e.gameSlug),renderData:e=>{let{items:t}=e;return(0,B.jsxs)(`div`,{children:[(0,B.jsxs)(`div`,{className:`mb-1 flex items-center gap-2 px-1 text-2xs uppercase tracking-wider text-zinc-400`,children:[(0,B.jsx)(`span`,{className:`w-6`}),(0,B.jsx)(`span`,{className:`flex-1`,children:`Agent`}),(0,B.jsx)(`span`,{className:`w-12 text-right`,title:`Maps the agent appeared in (either team)`,children:`Presence`}),(0,B.jsx)(`span`,{className:`w-12 text-right`,children:`Δ split`}),(0,B.jsx)(`span`,{className:`w-10 text-right`,children:`WR`})]}),(0,B.jsx)(`ul`,{className:`space-y-1`,children:t.map(e=>(0,B.jsxs)(`li`,{className:`flex items-center gap-2 rounded-md px-1 py-1.5 transition-colors hover:bg-zinc-50 dark:hover:bg-zinc-800/40`,children:[(0,B.jsx)(I,{name:e.agent,size:`xs`,className:`flex-shrink-0`}),(0,B.jsxs)(`div`,{className:`flex min-w-0 flex-1 flex-col`,children:[(0,B.jsx)(`span`,{className:`truncate text-sm font-semibold capitalize text-zinc-800 dark:text-zinc-200`,children:e.agent}),(0,B.jsx)(`div`,{className:`mt-1 h-1 w-full overflow-hidden rounded-full bg-zinc-100 dark:bg-zinc-800`,children:(0,B.jsx)(`div`,{className:`h-full rounded-full`,style:{width:`${Math.round(e.presenceRate*100)}%`,background:`linear-gradient(90deg, var(--glk-brand), color-mix(in srgb, var(--glk-brand) 30%, transparent))`}})})]}),(0,B.jsxs)(`span`,{className:`glk-tabular w-12 flex-shrink-0 text-right text-xs font-bold text-zinc-900 dark:text-zinc-100`,children:[Math.round(e.presenceRate*100),`%`]}),(0,B.jsx)(`span`,{className:`w-12 flex-shrink-0 text-right`,children:(0,B.jsx)(ot,{delta:e.delta})}),(0,B.jsxs)(`span`,{className:D(`glk-tabular w-10 flex-shrink-0 text-right text-xs font-semibold`,at(e.winRate)),children:[Math.round(e.winRate*100),`%`]})]},e.agent))}),(0,B.jsx)(`p`,{className:`mt-3 text-center text-2xs text-zinc-400 dark:text-zinc-500`,children:`Presence = % of maps the agent appeared in · Last 60 days`})]})},empty:{message:`No agent meta data`,submessage:`Agent stats appear after the recent map window settles.`,icon:(0,B.jsx)(b,{size:24,strokeWidth:1.5,"aria-hidden":`true`})}};function ct({children:e,scrollStep:t=320,className:n,viewportClassName:r}){let i=(0,z.useRef)(null),[a,o]=(0,z.useState)(!1),[s,c]=(0,z.useState)(!1),l=(0,z.useCallback)(()=>{let e=i.current;e&&(o(e.scrollLeft>2),c(e.scrollLeft+e.clientWidth<e.scrollWidth-2))},[]);(0,z.useEffect)(()=>{l();let e=i.current;if(!e)return;e.addEventListener(`scroll`,l,{passive:!0}),e.addEventListener(`scrollend`,l,{passive:!0});let t=new ResizeObserver(l);return t.observe(e),()=>{e.removeEventListener(`scroll`,l),e.removeEventListener(`scrollend`,l),t.disconnect()}},[l]),(0,z.useEffect)(()=>{let e=i.current;if(!e)return;let t=t=>{Math.abs(t.deltaY)>Math.abs(t.deltaX)&&(t.preventDefault(),e.scrollLeft+=t.deltaY)};return e.addEventListener(`wheel`,t,{passive:!1}),()=>e.removeEventListener(`wheel`,t)},[]);let u=e=>{i.current?.scrollBy({left:e===`left`?-t:t,behavior:`smooth`}),setTimeout(l,100),setTimeout(l,350)};return(0,B.jsxs)(`div`,{className:D(`relative flex min-w-0 flex-1 items-stretch`,n),children:[(0,B.jsx)(`div`,{className:D(`pointer-events-none absolute inset-y-0 left-0 z-[2] w-[30px] bg-gradient-to-r from-zinc-50 to-transparent transition-opacity duration-150 dark:from-glk-bg-app`,a?`opacity-100`:`opacity-0`),"aria-hidden":!0}),(0,B.jsx)(`div`,{className:D(`pointer-events-none absolute inset-y-0 right-0 z-[2] w-[30px] bg-gradient-to-l from-zinc-50 to-transparent transition-opacity duration-150 dark:from-glk-bg-app`,s?`opacity-100`:`opacity-0`),"aria-hidden":!0}),a&&(0,B.jsx)(`button`,{onClick:()=>u(`left`),"aria-label":`Scroll left`,className:`absolute left-0.5 top-1/2 z-[3] grid h-8 w-6 -translate-y-1/2 place-items-center rounded-[4px] border border-zinc-200 bg-white text-zinc-700 opacity-90 transition-opacity hover:opacity-100 dark:border-white/[0.1] dark:bg-zinc-900 dark:text-zinc-100`,children:(0,B.jsx)(`svg`,{width:`12`,height:`12`,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,strokeWidth:2.2,strokeLinecap:`round`,strokeLinejoin:`round`,children:(0,B.jsx)(`polyline`,{points:`15 18 9 12 15 6`})})}),s&&(0,B.jsx)(`button`,{onClick:()=>u(`right`),"aria-label":`Scroll right`,className:`absolute right-0.5 top-1/2 z-[3] grid h-8 w-6 -translate-y-1/2 place-items-center rounded-[4px] border border-zinc-200 bg-white text-zinc-700 opacity-90 transition-opacity hover:opacity-100 dark:border-white/[0.1] dark:bg-zinc-900 dark:text-zinc-100`,children:(0,B.jsx)(`svg`,{width:`12`,height:`12`,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,strokeWidth:2.2,strokeLinecap:`round`,strokeLinejoin:`round`,children:(0,B.jsx)(`polyline`,{points:`9 18 15 12 9 6`})})}),(0,B.jsx)(`div`,{ref:i,className:D(`flex min-w-0 flex-1 snap-x snap-mandatory items-stretch gap-3 overflow-x-auto scrollbar-none scroll-smooth`,r),children:e})]})}function lt(e){let{preferences:t}=T(),n=M(e,`upcoming`),r=M(e,`live`),i=M(e,`completed`),a=n.isLoading||r.isLoading||i.isLoading,o=n.isError||r.isError||i.isError,s;if(!a&&!o){let a=[...r.data??[],...n.data??[],...i.data??[]],o=new Set,c=a.filter(e=>o.has(e.id)?!1:(o.add(e.id),!0)),l=c.filter(e=>re(e.tournament?.tier)&&!ie(e)),u=[],d=[],f=Date.now();for(let e of l)if(w(e)){if(ne(e))continue;u.push(e)}else if(!e.playedAt){if(!e.scheduledAt||new Date(e.scheduledAt).getTime()<=f)continue;d.push(e)}u.sort(k),d.sort(k);let p=c.filter(e=>e.playedAt&&re(e.tournament?.tier)&&!w(e)).sort(ae),m=new Date().toLocaleDateString(`en-CA`),h=p.filter(e=>e.playedAt?new Date(e.playedAt).toLocaleDateString(`en-CA`)===m:!1),g=(h.length>0?h:p).slice(0,4),_=h.length>0?`Today's Results`:`Recent Results`;s={items:[...u,...d,...g],live:u,upcoming:d,results:g,resultsHeading:_,gameSlug:e,hideSpoilers:t.hideSpoilers}}return{...n,data:s,isLoading:a,isError:o,isFetching:n.isFetching||r.isFetching||i.isFetching,refetch:async()=>{await Promise.all([n.refetch(),r.refetch(),i.refetch()])}}}var ut={id:`matches`,title:`Matches`,column:`primary`,canvasSize:`2x2`,contentShape:`hero`,toggleable:!0,icon:(0,B.jsx)(a,{size:14,"aria-hidden":`true`}),href:e=>`/${e.gameSlug}/matches`,useData:e=>lt(e.gameSlug),renderData:e=>{let{live:t,upcoming:r,results:i,resultsHeading:a,gameSlug:o,hideSpoilers:s}=e;return(0,B.jsxs)(`div`,{children:[t.length>0&&(0,B.jsxs)(`section`,{className:`mb-4`,"aria-label":`Live matches`,children:[(0,B.jsxs)(`h3`,{className:`glk-eyebrow mb-2 flex items-center gap-1.5 !text-[var(--glk-brand)]`,children:[(0,B.jsx)(`span`,{className:`glk-live-dot`,"aria-hidden":`true`}),`Live Now`,t.length>1&&(0,B.jsx)(`span`,{className:`glk-tabular ml-1 rounded-full bg-[var(--glk-brand)]/10 px-1.5 text-2xs font-bold text-[var(--glk-brand)]`,children:t.length})]}),t.length===1?(0,B.jsx)(R,{match:t[0],gameSlug:o,hideSpoilers:s}):(0,B.jsx)(ct,{scrollStep:400,children:t.slice(0,5).map(e=>(0,B.jsx)(`div`,{className:`w-full flex-shrink-0 snap-start`,children:(0,B.jsx)(R,{match:e,gameSlug:o,hideSpoilers:s})},e.id))})]}),(i.length>0||r.length>0)&&(0,B.jsxs)(`section`,{className:`glk-card !p-0 mb-3 overflow-hidden`,"aria-label":`Matches schedule`,children:[i.length>0&&(0,B.jsxs)(B.Fragment,{children:[(0,B.jsxs)(`div`,{className:`glk-eyebrow flex items-center gap-1.5 bg-zinc-50/60 px-3 py-1.5 dark:bg-white/[0.02]`,children:[(0,B.jsx)(y,{size:11,"aria-hidden":`true`}),a]}),(0,B.jsx)(`div`,{className:`divide-y divide-zinc-100 dark:divide-white/[0.04]`,children:i.map(e=>(0,B.jsx)(L,{match:e,gameSlug:o,hideSpoilers:s,showTierBadge:!0,compact:!0},e.id))})]}),r.length>0&&(0,B.jsxs)(B.Fragment,{children:[(0,B.jsxs)(`div`,{className:`glk-eyebrow flex items-center gap-1.5 border-t border-zinc-200 bg-zinc-50/60 px-3 py-1.5 dark:border-white/[0.06] dark:bg-white/[0.02]`,children:[(0,B.jsx)(n,{size:11,"aria-hidden":`true`}),`Upcoming`]}),(0,B.jsx)(`div`,{className:`divide-y divide-zinc-100 dark:divide-white/[0.04]`,children:r.slice(0,4).map(e=>(0,B.jsx)(L,{match:e,gameSlug:o,hideSpoilers:s,showTierBadge:!0,compact:!0},e.id))})]})]}),(t.length>0||r.length>0||i.length>0)&&(0,B.jsx)(F,{to:`/${o}/matches`,children:`View all matches →`})]})},empty:{message:`No matches scheduled`,submessage:`Live, upcoming, and recent results will appear here.`,icon:(0,B.jsx)(a,{size:24,strokeWidth:1.5,"aria-hidden":`true`})}},dt={TEAM_MOMENTUM:`Momentum`,SENTIMENT_SHIFT:`Sentiment`};function ft(e){return e?new Date(e).toLocaleDateString(`en-US`,{month:`short`,day:`numeric`}):``}function pt(e){let t=_e(e,5);return{...t,data:t.data?{items:t.data.stories??[]}:t.data}}var mt={id:`latestStories`,title:`Latest Stories`,column:`primary`,canvasSize:`2x2`,contentShape:`hero`,toggleable:!0,icon:(0,B.jsx)(r,{size:14,"aria-hidden":`true`}),href:e=>`/${e.gameSlug}/news`,useData:e=>pt(e.gameSlug),renderData:(e,t)=>{let[n,...i]=e.items,a=`/${t.gameSlug}/news`;return(0,B.jsxs)(`div`,{className:`flex flex-col gap-3`,children:[(0,B.jsxs)(`div`,{className:`grid grid-cols-1 gap-4 @[28rem]:grid-cols-[minmax(0,1.4fr)_minmax(0,1fr)]`,children:[(0,B.jsxs)(`a`,{href:`${a}/${n.slug}`,className:`group block min-w-0 overflow-hidden rounded-lg`,children:[(0,B.jsxs)(`div`,{className:`relative aspect-[16/9] w-full overflow-hidden rounded-lg bg-zinc-100 dark:bg-zinc-800`,children:[n.heroImageUrl?(0,B.jsx)(`img`,{src:n.heroImageUrl,alt:``,loading:`lazy`,className:`absolute inset-0 h-full w-full object-cover transition-[filter] duration-300 group-hover:brightness-105`}):(0,B.jsx)(`div`,{className:`absolute inset-0 flex items-center justify-center`,children:(0,B.jsx)(r,{size:32,strokeWidth:1.25,className:`text-zinc-300 dark:text-zinc-700`,"aria-hidden":`true`})}),(0,B.jsx)(`div`,{"aria-hidden":`true`,className:`absolute inset-x-0 bottom-0 h-1/2 bg-gradient-to-t from-black/75 via-black/30 to-transparent`}),(0,B.jsxs)(`div`,{className:`absolute inset-x-0 bottom-0 p-3`,children:[(0,B.jsx)(`p`,{className:`glk-eyebrow mb-1 text-white/80`,children:dt[n.archetype]??`Story`}),(0,B.jsx)(`p`,{className:`line-clamp-2 text-sm font-bold leading-snug text-white`,style:{fontFamily:`var(--font-display)`,textShadow:`0 1px 2px rgba(0,0,0,0.55)`},children:n.title})]})]}),(0,B.jsxs)(`p`,{className:`mt-1.5 text-xs text-zinc-400`,children:[ft(n.publishedAt),n.readTimeSec!=null&&` · ${Math.max(1,Math.round(n.readTimeSec/60))} min read`]})]}),i.length>0&&(0,B.jsx)(`ul`,{className:`flex flex-col divide-y divide-zinc-100 dark:divide-zinc-800/60`,children:i.slice(0,4).map(e=>(0,B.jsx)(`li`,{children:(0,B.jsxs)(`a`,{href:`${a}/${e.slug}`,className:`group flex min-w-0 items-start gap-3 py-2.5 first:pt-0 last:pb-0`,children:[(0,B.jsx)(`div`,{className:`relative h-12 w-16 flex-shrink-0 overflow-hidden rounded-md bg-zinc-100 dark:bg-zinc-800`,children:e.heroImageUrl?(0,B.jsx)(`img`,{src:e.heroImageUrl,alt:``,loading:`lazy`,className:`absolute inset-0 h-full w-full object-cover`}):(0,B.jsx)(`div`,{className:`absolute inset-0 flex items-center justify-center`,children:(0,B.jsx)(r,{size:14,strokeWidth:1.5,className:`text-zinc-400 dark:text-zinc-600`,"aria-hidden":`true`})})}),(0,B.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,B.jsx)(`p`,{className:`glk-eyebrow mb-0.5 text-zinc-400`,children:dt[e.archetype]??`Story`}),(0,B.jsx)(`p`,{className:`line-clamp-2 text-xs font-semibold leading-snug text-zinc-800 dark:text-zinc-200`,children:e.title}),(0,B.jsx)(`p`,{className:`mt-0.5 text-2xs text-zinc-400`,children:ft(e.publishedAt)})]})]})},e.id))})]}),(0,B.jsx)(F,{to:a,className:`mt-1`,children:`All stories →`})]})},empty:{message:`No stories yet`,submessage:`Editorial coverage updates daily.`,icon:(0,B.jsx)(r,{size:24,strokeWidth:1.5,"aria-hidden":`true`})}};function ht(e){return(0,z.useMemo)(()=>{if(!e||e.length===0)return[];let t=new Map;for(let n of e){if(!n.agent)continue;let e=t.get(n.agent)??{maps:0,totalAcs:0,acsCount:0,totalKills:0,totalDeaths:0,kdCount:0,wins:0};e.maps++,n.acs!=null&&(e.totalAcs+=n.acs,e.acsCount++),n.kills!=null&&n.deaths!=null&&(e.totalKills+=n.kills,e.totalDeaths+=n.deaths,e.kdCount++),n.mapResult.winnerId===n.teamId&&e.wins++,t.set(n.agent,e)}let n=Array.from(t.values()).reduce((e,t)=>e+t.maps,0),r=[];for(let[e,i]of t)r.push({agent:e,maps:i.maps,pct:n>0?i.maps/n:0,avgAcs:i.acsCount>0?i.totalAcs/i.acsCount:null,avgRating:i.kdCount>0&&i.totalDeaths>0?i.totalKills/i.totalDeaths:null,winRate:i.maps>0?i.wins/i.maps:0,wins:i.wins,losses:i.maps-i.wins});return r.sort((e,t)=>t.maps-e.maps)},[e])}function gt(e){let{playerSlug:t}=g(),n=G(e??``,t),r=ht(n.data?.recentStats);return{...n,data:n.data?{items:r}:n.data}}function _t({agent:e}){let t=Math.round(e.winRate*100),n=Math.max(e.pct*100,4),r=Math.min(80,Math.max(2,n/100*80));return(0,B.jsxs)(`div`,{className:`flex min-w-0 items-center gap-2 py-1`,children:[(0,B.jsx)(I,{name:e.agent,size:`sm`,className:`flex-shrink-0`}),(0,B.jsx)(`span`,{className:`w-16 flex-shrink-0 truncate text-xs font-semibold text-zinc-700 dark:text-zinc-300`,children:e.agent}),(0,B.jsxs)(`svg`,{width:80,height:6,viewBox:`0 0 80 6`,className:`flex-1 min-w-[40px]`,"aria-hidden":`true`,children:[(0,B.jsx)(`rect`,{x:0,y:0,width:80,height:6,rx:6/2,className:`fill-zinc-200/70 dark:fill-zinc-700/40`}),(0,B.jsx)(`rect`,{x:0,y:0,width:r,height:6,rx:6/2,fill:`var(--glk-brand)`,opacity:.7})]}),(0,B.jsx)(`span`,{className:`hidden sm:inline w-10 text-right glk-metric glk-metric-sm text-zinc-700 dark:text-zinc-300`,children:e.avgAcs==null?`—`:Math.round(e.avgAcs)}),(0,B.jsx)(`span`,{className:D(`hidden sm:inline w-10 text-right glk-metric glk-metric-sm`,e.avgRating!=null&&e.avgRating>=1?`text-emerald-600 dark:text-emerald-400`:`text-red-500 dark:text-red-400`),children:e.avgRating==null?`—`:e.avgRating.toFixed(2)}),(0,B.jsxs)(`span`,{className:D(`w-10 text-right glk-metric glk-metric-sm`,t>=50?`text-emerald-600 dark:text-emerald-400`:`text-zinc-500 dark:text-zinc-400`),children:[t,`%`]}),(0,B.jsx)(`span`,{className:`w-8 text-right glk-tabular text-xs text-zinc-400`,children:e.maps})]})}var vt={id:`playerAgentPool`,title:`Agent Pool`,size:`sm`,column:`secondary`,canvasSize:`1x2`,contentShape:`list`,toggleable:!0,icon:(0,B.jsx)(b,{size:14,"aria-hidden":`true`}),useData:e=>gt(e.gameSlug),renderData:e=>(0,B.jsxs)(`div`,{children:[(0,B.jsxs)(`div`,{className:`glk-eyebrow mb-2 flex min-w-0 items-center justify-between`,children:[(0,B.jsx)(`span`,{className:`truncate`,children:`Agent`}),(0,B.jsxs)(`span`,{className:`flex flex-shrink-0 items-center gap-3`,children:[(0,B.jsx)(`span`,{className:`hidden sm:inline w-10 text-right`,children:`ACS`}),(0,B.jsx)(`span`,{className:`hidden sm:inline w-10 text-right`,children:`K/D`}),(0,B.jsx)(`span`,{className:`w-10 text-right`,children:`Win%`}),(0,B.jsx)(`span`,{className:`w-8 text-right`,children:`Maps`})]})]}),(0,B.jsx)(`div`,{className:`space-y-1`,children:e.items.map(e=>(0,B.jsx)(_t,{agent:e},e.agent))})]}),empty:{message:`No agent data yet`,submessage:`Stats will appear once this player has logged a map.`,icon:(0,B.jsx)(b,{size:24,strokeWidth:1.5,"aria-hidden":`true`})}};function yt(e,t){return j(O.playerRatingHistory,{gameSlug:e,playerSlug:t},{enabled:!!t})}var Q=30,bt=2;function xt(e,t=new Date){if(!e||e.length===0)return{points:[],direction:`flat`,delta:0};let n=t.getTime()-Q*24*60*60*1e3,r=new Map;for(let i of e){let e=new Date(i.snapshotDate).getTime();if(Number.isNaN(e)||e<n||e>t.getTime())continue;let a=i.snapshotDate.slice(0,10),o=r.get(a)??{sum:0,count:0,t:e};o.sum+=i.rating,o.count+=1,o.t=Math.min(o.t,e),r.set(a,o)}let i=Array.from(r.entries()).sort((e,t)=>e[1].t-t[1].t).map(([e,t])=>({date:e,rating:t.sum/t.count}));if(i.length<2)return{points:i,direction:`flat`,delta:0};let a=i[i.length-1].rating-i[0].rating;return{points:i,direction:a>bt?`up`:a<-bt?`down`:`flat`,delta:a}}function St(e){let{playerSlug:t}=g(),n=yt(e??``,t),r=(0,z.useMemo)(()=>xt(n.data),[n.data]);return{...n,data:n.data?{items:r.points.length>=2?r.points:[],direction:r.direction,delta:r.delta}:n.data}}var Ct={up:`var(--glk-win, #10b981)`,down:`var(--glk-brand, #dc2626)`,flat:`#a1a1aa`};function wt(e){return e===`up`?(0,B.jsx)(u,{size:14,"aria-hidden":`true`}):e===`down`?(0,B.jsx)(l,{size:14,"aria-hidden":`true`}):(0,B.jsx)(te,{size:14,"aria-hidden":`true`})}function Tt({points:e,direction:t,delta:n}){let r=e.map(e=>e.rating),i=Math.min(...r),a=Math.max(...r),o=a-i||1,s=e.length>1?e.length-1:1,c=e.map((e,t)=>({...e,x:28+t/s*184,y:58-(e.rating-i)/o*44})),l=c.map((e,t)=>`${t===0?`M`:`L`}${e.x.toFixed(1)},${e.y.toFixed(1)}`).join(` `),u=Ct[t],d=c[0],f=c[c.length-1],p=`${n>0?`+`:``}${n.toFixed(0)}`,m=t===`up`?`text-emerald-600 dark:text-emerald-400`:t===`down`?`text-[var(--glk-brand)]`:`text-zinc-500 dark:text-zinc-400`;return(0,B.jsxs)(`div`,{children:[(0,B.jsxs)(`div`,{className:`mb-2 flex items-center justify-between`,children:[(0,B.jsxs)(`div`,{children:[(0,B.jsxs)(`div`,{className:`glk-eyebrow`,children:[`Rating · `,Q,`d`]}),(0,B.jsx)(`div`,{className:`glk-metric glk-metric-md text-zinc-900 dark:text-zinc-100`,children:Math.round(f.rating)})]}),(0,B.jsxs)(`div`,{className:D(`flex items-center gap-1 text-xs font-semibold`,m),children:[wt(t),(0,B.jsx)(`span`,{className:`glk-tabular`,children:p})]})]}),(0,B.jsxs)(`svg`,{width:`100%`,viewBox:`0 0 240 72`,preserveAspectRatio:`none`,role:`img`,"aria-label":`30-day rating sparkline, trend ${t}, change ${p}`,children:[(0,B.jsx)(`path`,{d:l,fill:`none`,stroke:u,strokeWidth:1.6,strokeLinecap:`round`,strokeLinejoin:`round`}),(0,B.jsx)(`circle`,{cx:d.x,cy:d.y,r:2.5,fill:u}),(0,B.jsx)(`text`,{x:Math.max(4,d.x-4),y:d.y-6,textAnchor:`end`,className:`fill-zinc-500 dark:fill-zinc-400 glk-tabular`,fontSize:`9`,children:Math.round(d.rating)}),(0,B.jsx)(`circle`,{cx:f.x,cy:f.y,r:3,fill:u}),(0,B.jsx)(`text`,{x:Math.min(236,f.x+4),y:f.y-6,textAnchor:`start`,className:`fill-zinc-700 dark:fill-zinc-200 glk-tabular`,fontSize:`9`,fontWeight:700,children:Math.round(f.rating)})]}),(0,B.jsxs)(`div`,{className:`mt-1 flex items-center justify-between text-2xs text-zinc-400`,children:[(0,B.jsxs)(`span`,{children:[e.length,` day`,e.length===1?``:`s`,` sampled`]}),(0,B.jsxs)(`span`,{children:[`min `,Math.round(i),` · max `,Math.round(a)]})]})]})}var Et={id:`playerRatingTrend`,title:`Rating · 30d`,size:`sm`,column:`secondary`,canvasSize:`1x1`,contentShape:`chart`,toggleable:!0,icon:(0,B.jsx)(c,{size:14,"aria-hidden":`true`}),useData:e=>St(e.gameSlug),renderData:e=>(0,B.jsx)(Tt,{points:e.items,direction:e.direction,delta:e.delta}),empty:{message:`Not enough rating history`,submessage:`Needs ≥2 days in the last ${Q} to draw a trend.`,icon:(0,B.jsx)(c,{size:24,strokeWidth:1.5,"aria-hidden":`true`})}};function Dt(){return t({queryKey:[`admin`,`jobs`,`overview-widget`],queryFn:()=>le(`/admin/jobs/overview-widget`),staleTime:6e4,refetchInterval:6e4})}var Ot=5;function kt(){let{data:e,isLoading:t,isError:n,error:r}=Dt();return(0,B.jsxs)(`div`,{className:`glk-card !p-0`,children:[(0,B.jsxs)(`div`,{className:`flex items-center justify-between px-4 py-3 border-b border-zinc-200 dark:border-zinc-800`,children:[(0,B.jsxs)(`h3`,{className:`glk-eyebrow flex items-center gap-1.5`,children:[(0,B.jsx)(i,{size:11,"aria-hidden":`true`}),`Jobs needing attention`]}),(0,B.jsxs)(v,{to:`/admin/jobs`,className:`flex items-center gap-1 text-xs text-zinc-500 hover:text-zinc-700 dark:hover:text-zinc-300 transition-colors`,"aria-label":`Open all jobs`,children:[`All jobs `,(0,B.jsx)(s,{size:10,"aria-hidden":`true`})]})]}),(0,B.jsxs)(`div`,{className:`divide-y divide-zinc-200/70 dark:divide-zinc-800/50`,children:[t&&(0,B.jsx)(`div`,{className:`px-4 py-8 text-center text-zinc-500 text-sm`,children:`Loading…`}),!t&&n&&(0,B.jsxs)(`div`,{className:`px-4 py-6 text-center text-sm text-zinc-500`,children:[(0,B.jsxs)(`div`,{className:`mb-1 text-red-500 inline-flex items-center gap-1.5`,children:[(0,B.jsx)(i,{size:14,"aria-hidden":`true`}),`Couldn't load job health`]}),r instanceof Error&&(0,B.jsx)(`div`,{className:`text-xs text-zinc-500`,children:r.message})]}),!t&&!n&&e&&(0,B.jsx)(At,{rows:e.unhealthyJobTypes.slice(0,Ot),threshold:e.threshold})]})]})}function At({rows:e,threshold:t}){return e.length===0?(0,B.jsxs)(`div`,{className:`px-4 py-8 text-center text-sm text-zinc-500`,children:[(0,B.jsxs)(`div`,{className:`inline-flex items-center gap-1.5 text-emerald-600 dark:text-emerald-400`,children:[(0,B.jsx)(c,{size:14,"aria-hidden":`true`}),`All healthy`]}),(0,B.jsxs)(`div`,{className:`mt-1 text-xs text-zinc-500`,children:[`No job types above `,Math.round(t*100),`% failure in the last 24h.`]})]}):(0,B.jsx)(B.Fragment,{children:e.map(e=>(0,B.jsx)(jt,{row:e},e.type))})}function jt({row:e}){let t=e.autoFlags??[],n=t.length>0?ve(t):`Failing runs`,r=Mt(t);return(0,B.jsxs)(v,{to:`/admin/jobs/types/${encodeURIComponent(e.type)}`,className:D(`flex min-w-0 items-center gap-3 px-4 py-3`,`hover:bg-zinc-50 dark:hover:bg-zinc-900/40 transition-colors`),"aria-label":`Open ${e.label} type dashboard`,children:[(0,B.jsx)(N,{tone:r,size:`xs`,dot:!0,className:`flex-shrink-0`,children:n}),(0,B.jsxs)(`div`,{className:`flex-1 min-w-0`,children:[(0,B.jsx)(`p`,{className:`text-xs font-medium text-zinc-800 dark:text-zinc-200 truncate`,children:e.label}),(0,B.jsxs)(`p`,{className:`text-xs text-zinc-500 tabular-nums truncate`,children:[e.failed,` of `,e.total,` runs failed · `,Math.round(e.failureRate*100),`%`]})]}),e.lastFailureAt&&(0,B.jsx)(`span`,{className:`text-xs text-zinc-500 tabular-nums whitespace-nowrap`,children:Nt(e.lastFailureAt)}),(0,B.jsx)(s,{size:12,className:`text-zinc-400 flex-shrink-0`,"aria-hidden":`true`})]})}function Mt(e){return e.length===0||e.includes(`failed`)||e.includes(`invariant-violated`)?`danger`:e.includes(`slow`)||e.includes(`long-running`)||e.includes(`large-writes`)||e.includes(`warnings`)||e.includes(`stale`)?`warning`:`neutral`}function Nt(e){let t=Date.now()-new Date(e).getTime();if(!Number.isFinite(t)||t<0)return`now`;let n=Math.floor(t/1e3);if(n<60)return`${n}s`;let r=Math.floor(n/60);if(r<60)return`${r}m`;let i=Math.floor(r/60);return i<24?`${i}h`:`${Math.floor(i/24)}d`}var $={matches:ut,teamForm:ge,latestStories:mt,trendingTeams:{...U,icon:(0,z.createElement)(z.Fragment,null,U.icon,(0,z.createElement)(Se))},hotTakes:W,gameMood:We,powerRankings:Ze,leaderboard:tt,tournamentContext:qe,agentMeta:st,playerAgentPool:vt,playerRatingTrend:Et,ad:Fe,watchedPlayers:Ne};function Pt(e){return $[e]}var Ft=Object.keys($),It=new Set([`playerAgentPool`,`playerRatingTrend`]),Lt=Ft.filter(e=>!It.has(e));export{yt as a,G as c,kt as i,W as l,$ as n,J as o,Pt as r,q as s,Lt as t};