@apteva/apteva-darwin-arm64 0.4.31 → 0.4.41

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (86) hide show
  1. package/apteva +0 -0
  2. package/dist/ActivityPage.7907h64p.js +3 -0
  3. package/dist/ActivityPage.7907h64p.js.map +10 -0
  4. package/dist/ApiDocsPage.k3jjenpq.js +4 -0
  5. package/dist/{ApiDocsPage.4smnt8m3.js.map → ApiDocsPage.k3jjenpq.js.map} +2 -2
  6. package/dist/App.01nq20st.js +4 -0
  7. package/dist/App.01nq20st.js.map +10 -0
  8. package/dist/App.1maqvamf.js +4 -0
  9. package/dist/{App.ca1rz1ph.js.map → App.1maqvamf.js.map} +2 -2
  10. package/dist/App.2yjrh32f.js +4 -0
  11. package/dist/App.2yjrh32f.js.map +10 -0
  12. package/dist/App.3qw8nben.js +20 -0
  13. package/dist/{App.mvtqv6qc.js.map → App.3qw8nben.js.map} +5 -5
  14. package/dist/App.7fb3e7mp.js +4 -0
  15. package/dist/{App.ncgc9cxy.js.map → App.7fb3e7mp.js.map} +3 -3
  16. package/dist/App.7sy3wq8c.js +4 -0
  17. package/dist/App.7sy3wq8c.js.map +10 -0
  18. package/dist/App.apjrmctz.js +57 -0
  19. package/dist/App.apjrmctz.js.map +383 -0
  20. package/dist/App.av6t2yhe.js +4 -0
  21. package/dist/{App.0sbax9et.js.map → App.av6t2yhe.js.map} +2 -2
  22. package/dist/App.jqj5a094.js +46 -0
  23. package/dist/App.jqj5a094.js.map +13 -0
  24. package/dist/App.mc7xf85h.js +4 -0
  25. package/dist/{App.yv87t9m5.js.map → App.mc7xf85h.js.map} +2 -2
  26. package/dist/App.myxqcj9x.js +4 -0
  27. package/dist/App.myxqcj9x.js.map +10 -0
  28. package/dist/App.nm91r1mp.js +13 -0
  29. package/dist/{App.f8g7tych.js.map → App.nm91r1mp.js.map} +2 -2
  30. package/dist/App.qcknavjz.js +221 -0
  31. package/dist/{App.af2wg84v.js.map → App.qcknavjz.js.map} +9 -15
  32. package/dist/App.vc7vfhg4.js +4 -0
  33. package/dist/App.vc7vfhg4.js.map +10 -0
  34. package/dist/App.z4s9zkw5.js +4 -0
  35. package/dist/App.z4s9zkw5.js.map +10 -0
  36. package/dist/ConnectionsPage.z1pw5xe2.js +3 -0
  37. package/dist/McpPage.8vc97z0b.js +3 -0
  38. package/dist/{ActivityPage.41nbye4r.js.map → McpPage.8vc97z0b.js.map} +1 -1
  39. package/dist/SettingsPage.p61bz8kd.js +3 -0
  40. package/dist/SkillsPage.r9x43g3g.js +3 -0
  41. package/dist/TasksPage.1e0zkye4.js +3 -0
  42. package/dist/{McpPage.y396h6fy.js.map → TasksPage.1e0zkye4.js.map} +1 -1
  43. package/dist/TelemetryPage.p9vbe4gf.js +3 -0
  44. package/dist/TelemetryPage.p9vbe4gf.js.map +9 -0
  45. package/dist/TestsPage.d4xy504e.js +3 -0
  46. package/dist/ThreadsPage.m016am3x.js +3 -0
  47. package/dist/ThreadsPage.m016am3x.js.map +9 -0
  48. package/dist/index.html +1 -1
  49. package/dist/styles.css +1 -1
  50. package/package.json +1 -1
  51. package/dist/ActivityPage.41nbye4r.js +0 -3
  52. package/dist/ApiDocsPage.4smnt8m3.js +0 -4
  53. package/dist/App.0sbax9et.js +0 -4
  54. package/dist/App.0ws427h8.js +0 -4
  55. package/dist/App.0ws427h8.js.map +0 -10
  56. package/dist/App.6q6bar8b.js +0 -4
  57. package/dist/App.6q6bar8b.js.map +0 -10
  58. package/dist/App.80301vdb.js +0 -4
  59. package/dist/App.80301vdb.js.map +0 -10
  60. package/dist/App.af2wg84v.js +0 -267
  61. package/dist/App.ca1rz1ph.js +0 -4
  62. package/dist/App.ensa6z0r.js +0 -4
  63. package/dist/App.ensa6z0r.js.map +0 -10
  64. package/dist/App.f8g7tych.js +0 -13
  65. package/dist/App.mvtqv6qc.js +0 -20
  66. package/dist/App.ncgc9cxy.js +0 -4
  67. package/dist/App.p0fb1pds.js +0 -4
  68. package/dist/App.p0fb1pds.js.map +0 -10
  69. package/dist/App.pmaq48sj.js +0 -4
  70. package/dist/App.pmaq48sj.js.map +0 -10
  71. package/dist/App.yv87t9m5.js +0 -4
  72. package/dist/App.zjmfm8p6.js +0 -4
  73. package/dist/App.zjmfm8p6.js.map +0 -10
  74. package/dist/ConnectionsPage.anb3rv9a.js +0 -3
  75. package/dist/McpPage.y396h6fy.js +0 -3
  76. package/dist/SettingsPage.p1hc60gk.js +0 -3
  77. package/dist/SkillsPage.yj3xdsay.js +0 -3
  78. package/dist/TasksPage.sjv0khtv.js +0 -3
  79. package/dist/TasksPage.sjv0khtv.js.map +0 -9
  80. package/dist/TelemetryPage.2qm4w16r.js +0 -3
  81. package/dist/TelemetryPage.2qm4w16r.js.map +0 -9
  82. package/dist/TestsPage.zzs4qfj8.js +0 -3
  83. /package/dist/{ConnectionsPage.anb3rv9a.js.map → ConnectionsPage.z1pw5xe2.js.map} +0 -0
  84. /package/dist/{SettingsPage.p1hc60gk.js.map → SettingsPage.p61bz8kd.js.map} +0 -0
  85. /package/dist/{SkillsPage.yj3xdsay.js.map → SkillsPage.r9x43g3g.js.map} +0 -0
  86. /package/dist/{TestsPage.zzs4qfj8.js.map → TestsPage.d4xy504e.js.map} +0 -0
@@ -0,0 +1,4 @@
1
+ import{G as i,H as V,I as d,l as c,q as l}from"./App.7fb3e7mp.js";import{V as u}from"./App.7sy3wq8c.js";import{$ as k,X as g,aa as y,da as b,ja as p,ma as m}from"./App.3qw8nben.js";var Y=g(k(),1);var z=g(y(),1);function Jz({onSelectAgent:G}){let{authFetch:Z}=p(),{currentProjectId:W}=m(),[X,N]=Y.useState([]),[w,K]=Y.useState(!0),[$,J]=Y.useState("all"),[Q,q]=Y.useState("all"),[_,R]=Y.useState(null),[L,A]=Y.useState(!1),P=Y.useRef(null),{events:C}=b({category:"TASK"}),F=Y.useCallback(async()=>{try{let B=`/api/tasks?status=${$}`;if(W!==null)B+=`&project_id=${encodeURIComponent(W)}`;let U=await(await Z(B)).json();N(U.tasks||[])}catch(B){console.error("Failed to fetch tasks:",B)}finally{K(!1)}},[Z,$,W]);Y.useEffect(()=>{F()},[F]),Y.useEffect(()=>{if(!C.length)return;let B=C[0];if(!B||B.id===P.current)return;let H=B.type;if(H==="task_created"||H==="task_updated"||H==="task_deleted")P.current=B.id,console.log("[TasksPage] Telemetry event:",H),F()},[C,F]);let r=Y.useCallback(async(B)=>{R(B),A(!0);try{let H=await Z(`/api/tasks/${B.agentId}/${B.id}`);if(console.log("[TasksPage] Fetch task response status:",H.status),H.ok){let U=await H.json();if(console.log("[TasksPage] Task data:",U),console.log("[TasksPage] Has trajectory:",!!U.task?.trajectory,"Length:",U.task?.trajectory?.length),U.task)R({...U.task,agentId:B.agentId,agentName:B.agentName})}else console.error("[TasksPage] Failed to fetch task:",H.status,await H.text())}catch(H){console.error("Failed to fetch task details:",H)}finally{A(!1)}},[Z]),S=Y.useMemo(()=>{let B=new Map;for(let H of X){let U=H.agentId||H.agent_id,O=H.agentName||H.agent_name;if(U&&O&&!B.has(U))B.set(U,O)}return Array.from(B.entries()).sort((H,U)=>H[1].localeCompare(U[1]))},[X]),f=Y.useMemo(()=>{return[...Q==="all"?X:X.filter((H)=>(H.agentId||H.agent_id)===Q)].sort((H,U)=>{if(H.status==="running"&&U.status!=="running")return-1;if(U.status==="running"&&H.status!=="running")return 1;let O=H.status==="pending",v=U.status==="pending";if(O&&!v)return-1;if(v&&!O)return 1;if(O&&v||H.status==="running"&&U.status==="running"){let T=H.next_run||H.execute_at||null,h=U.next_run||U.execute_at||null,n=T?new Date(T).getTime():1/0,o=h?new Date(h).getTime():1/0;return n-o}let x=H.completed_at||H.executed_at||H.created_at,E=U.completed_at||U.executed_at||U.created_at;return new Date(E).getTime()-new Date(x).getTime()})},[X,Q]),I={pending:"bg-yellow-500/20 text-yellow-400",running:"bg-blue-500/20 text-blue-400",completed:"bg-green-500/20 text-green-400",failed:"bg-red-500/20 text-red-400",cancelled:"bg-gray-500/20 text-gray-400"};return z.jsxDEV("div",{className:"flex-1 flex overflow-hidden",children:[z.jsxDEV("div",{className:`flex-1 p-4 md:p-6 overflow-auto ${_?"hidden md:block md:w-1/2 lg:w-2/3":""}`,children:z.jsxDEV("div",{className:"max-w-4xl",children:[z.jsxDEV("div",{className:"mb-6",children:[z.jsxDEV("div",{className:"mb-4",children:[z.jsxDEV("h1",{className:"text-xl md:text-2xl font-semibold mb-1",children:"Tasks"},void 0,!1,void 0,this),z.jsxDEV("p",{className:"text-sm text-[#666]",children:"View tasks from all running agents"},void 0,!1,void 0,this)]},void 0,!0,void 0,this),z.jsxDEV("div",{className:"flex items-center gap-3 flex-wrap pb-1",children:[z.jsxDEV("div",{className:"flex gap-2 overflow-x-auto scrollbar-hide",children:[{value:"all",label:"All"},{value:"pending",label:"Pending"},{value:"running",label:"Running"},{value:"completed",label:"Completed"},{value:"failed",label:"Failed"}].map((B)=>z.jsxDEV("button",{onClick:()=>J(B.value),className:`px-3 py-1.5 rounded text-sm transition whitespace-nowrap ${$===B.value?"bg-[#f97316] text-black":"bg-[#1a1a1a] hover:bg-[#222]"}`,children:B.label},B.value,!1,void 0,this))},void 0,!1,void 0,this),S.length>0&&z.jsxDEV("div",{className:"w-48",children:z.jsxDEV(u,{value:Q,onChange:q,placeholder:"All agents",compact:!0,options:[{value:"all",label:"All agents"},...S.map(([B,H])=>({value:B,label:H}))]},void 0,!1,void 0,this)},void 0,!1,void 0,this)]},void 0,!0,void 0,this)]},void 0,!0,void 0,this),w?z.jsxDEV("div",{className:"text-center py-12 text-[#666]",children:"Loading tasks..."},void 0,!1,void 0,this):f.length===0?z.jsxDEV("div",{className:"text-center py-12",children:[z.jsxDEV(l,{className:"w-12 h-12 mx-auto mb-4 text-[#333]"},void 0,!1,void 0,this),z.jsxDEV("p",{className:"text-[#666]",children:"No tasks found"},void 0,!1,void 0,this),z.jsxDEV("p",{className:"text-sm text-[#444] mt-1",children:"Tasks will appear here when agents create them"},void 0,!1,void 0,this)]},void 0,!0,void 0,this):z.jsxDEV("div",{className:"space-y-3",children:f.map((B)=>z.jsxDEV("div",{onClick:()=>r(B),className:`bg-[#111] border rounded-lg p-4 cursor-pointer transition ${_?.id===B.id&&_?.agentId===B.agentId?"border-[#f97316]":"border-[#1a1a1a] hover:border-[#333]"}`,children:[z.jsxDEV("div",{className:"flex items-start justify-between mb-2",children:[z.jsxDEV("div",{className:"flex-1",children:[z.jsxDEV("h3",{className:"font-medium",children:B.title},void 0,!1,void 0,this),z.jsxDEV("p",{className:"text-sm text-[#666]",children:B.agentName},void 0,!1,void 0,this)]},void 0,!0,void 0,this),z.jsxDEV("span",{className:`px-2 py-1 rounded text-xs font-medium ${I[B.status]||I.pending}`,children:B.status},void 0,!1,void 0,this)]},void 0,!0,void 0,this),B.description&&z.jsxDEV("p",{className:"text-sm text-[#888] mb-2 line-clamp-2",children:B.description},void 0,!1,void 0,this),z.jsxDEV("div",{className:"flex flex-wrap items-center gap-x-4 gap-y-1 text-xs text-[#555]",children:[z.jsxDEV("span",{className:"flex items-center gap-1",children:[B.type==="recurring"?z.jsxDEV(i,{className:"w-3.5 h-3.5"},void 0,!1,void 0,this):B.execute_at?z.jsxDEV(V,{className:"w-3.5 h-3.5"},void 0,!1,void 0,this):z.jsxDEV(d,{className:"w-3.5 h-3.5"},void 0,!1,void 0,this),B.type==="recurring"&&B.recurrence?D(B.recurrence):B.type]},void 0,!0,void 0,this),z.jsxDEV("span",{children:["Priority: ",B.priority]},void 0,!0,void 0,this),B.next_run&&z.jsxDEV("span",{className:"text-[#f97316]",children:M(B.next_run)},void 0,!1,void 0,this),!B.next_run&&B.execute_at&&z.jsxDEV("span",{className:"text-[#f97316]",children:M(B.execute_at)},void 0,!1,void 0,this),z.jsxDEV("span",{children:["Created: ",new Date(B.created_at).toLocaleDateString()]},void 0,!0,void 0,this)]},void 0,!0,void 0,this)]},`${B.agentId}-${B.id}`,!0,void 0,this))},void 0,!1,void 0,this)]},void 0,!0,void 0,this)},void 0,!1,void 0,this),_&&z.jsxDEV(a,{task:_,statusColors:I,onClose:()=>R(null),onSelectAgent:G,loading:L},void 0,!1,void 0,this)]},void 0,!0,void 0,this)}function a({task:G,statusColors:Z,onClose:W,onSelectAgent:X,loading:N}){return z.jsxDEV("div",{className:"w-full md:w-1/2 lg:w-1/3 border-l border-[#1a1a1a] bg-[#0a0a0a] flex flex-col overflow-hidden",children:[z.jsxDEV("div",{className:"flex items-center justify-between p-4 border-b border-[#1a1a1a]",children:[z.jsxDEV("h2",{className:"font-medium truncate pr-2",children:"Task Details"},void 0,!1,void 0,this),z.jsxDEV("button",{onClick:W,className:"text-[#666] hover:text-[#e0e0e0] transition",children:z.jsxDEV(c,{},void 0,!1,void 0,this)},void 0,!1,void 0,this)]},void 0,!0,void 0,this),z.jsxDEV("div",{className:"flex-1 overflow-auto p-4 space-y-4",children:[z.jsxDEV("div",{children:[z.jsxDEV("div",{className:"flex items-start justify-between gap-2 mb-2",children:[z.jsxDEV("h3",{className:"text-lg font-medium",children:G.title},void 0,!1,void 0,this),z.jsxDEV("span",{className:`px-2 py-1 rounded text-xs font-medium flex-shrink-0 ${Z[G.status]}`,children:G.status},void 0,!1,void 0,this)]},void 0,!0,void 0,this),z.jsxDEV("button",{onClick:()=>X?.(G.agentId),className:"text-sm text-[#f97316] hover:underline",children:G.agentName},void 0,!1,void 0,this)]},void 0,!0,void 0,this),G.description&&z.jsxDEV("div",{children:[z.jsxDEV("h4",{className:"text-xs text-[#666] uppercase tracking-wider mb-1",children:"Description"},void 0,!1,void 0,this),z.jsxDEV("p",{className:"text-sm text-[#888] whitespace-pre-wrap",children:G.description},void 0,!1,void 0,this)]},void 0,!0,void 0,this),z.jsxDEV("div",{className:"grid grid-cols-2 gap-3 text-sm",children:[z.jsxDEV("div",{children:[z.jsxDEV("span",{className:"text-[#666]",children:"Type"},void 0,!1,void 0,this),z.jsxDEV("p",{className:"capitalize",children:G.type},void 0,!1,void 0,this)]},void 0,!0,void 0,this),z.jsxDEV("div",{children:[z.jsxDEV("span",{className:"text-[#666]",children:"Priority"},void 0,!1,void 0,this),z.jsxDEV("p",{children:G.priority},void 0,!1,void 0,this)]},void 0,!0,void 0,this),z.jsxDEV("div",{children:[z.jsxDEV("span",{className:"text-[#666]",children:"Source"},void 0,!1,void 0,this),z.jsxDEV("p",{className:"capitalize",children:G.source},void 0,!1,void 0,this)]},void 0,!0,void 0,this),G.recurrence&&z.jsxDEV("div",{children:[z.jsxDEV("span",{className:"text-[#666]",children:"Recurrence"},void 0,!1,void 0,this),z.jsxDEV("p",{children:D(G.recurrence)},void 0,!1,void 0,this),z.jsxDEV("p",{className:"text-xs text-[#444] mt-0.5 font-mono",children:G.recurrence},void 0,!1,void 0,this)]},void 0,!0,void 0,this)]},void 0,!0,void 0,this),z.jsxDEV("div",{className:"space-y-2 text-sm",children:[z.jsxDEV("div",{className:"flex justify-between",children:[z.jsxDEV("span",{className:"text-[#666]",children:"Created"},void 0,!1,void 0,this),z.jsxDEV("span",{children:new Date(G.created_at).toLocaleString()},void 0,!1,void 0,this)]},void 0,!0,void 0,this),G.execute_at&&z.jsxDEV("div",{className:"flex justify-between",children:[z.jsxDEV("span",{className:"text-[#666]",children:"Scheduled"},void 0,!1,void 0,this),z.jsxDEV("span",{className:"text-[#f97316]",children:M(G.execute_at)},void 0,!1,void 0,this)]},void 0,!0,void 0,this),G.executed_at&&z.jsxDEV("div",{className:"flex justify-between",children:[z.jsxDEV("span",{className:"text-[#666]",children:"Started"},void 0,!1,void 0,this),z.jsxDEV("span",{children:new Date(G.executed_at).toLocaleString()},void 0,!1,void 0,this)]},void 0,!0,void 0,this),G.completed_at&&z.jsxDEV("div",{className:"flex justify-between",children:[z.jsxDEV("span",{className:"text-[#666]",children:"Completed"},void 0,!1,void 0,this),z.jsxDEV("span",{children:new Date(G.completed_at).toLocaleString()},void 0,!1,void 0,this)]},void 0,!0,void 0,this),G.next_run&&z.jsxDEV("div",{className:"flex justify-between",children:[z.jsxDEV("span",{className:"text-[#666]",children:"Next Run"},void 0,!1,void 0,this),z.jsxDEV("span",{className:"text-[#f97316]",children:M(G.next_run)},void 0,!1,void 0,this)]},void 0,!0,void 0,this)]},void 0,!0,void 0,this),G.status==="failed"&&G.error&&z.jsxDEV("div",{className:"min-w-0",children:[z.jsxDEV("h4",{className:"text-xs text-red-400 uppercase tracking-wider mb-1",children:"Error"},void 0,!1,void 0,this),z.jsxDEV("div",{className:"bg-red-500/10 border border-red-500/20 rounded p-3 overflow-x-auto",children:z.jsxDEV("pre",{className:"text-sm text-red-400 whitespace-pre-wrap break-words",children:G.error},void 0,!1,void 0,this)},void 0,!1,void 0,this)]},void 0,!0,void 0,this),G.status==="completed"&&G.result&&z.jsxDEV("div",{className:"min-w-0",children:[z.jsxDEV("h4",{className:"text-xs text-green-400 uppercase tracking-wider mb-1",children:"Result"},void 0,!1,void 0,this),z.jsxDEV("div",{className:"bg-green-500/10 border border-green-500/20 rounded p-3 overflow-x-auto",children:z.jsxDEV("pre",{className:"text-sm text-green-400 whitespace-pre-wrap break-words",children:typeof G.result==="string"?G.result:JSON.stringify(G.result,null,2)},void 0,!1,void 0,this)},void 0,!1,void 0,this)]},void 0,!0,void 0,this),N&&!G.trajectory&&z.jsxDEV("div",{children:[z.jsxDEV("h4",{className:"text-xs text-[#666] uppercase tracking-wider mb-2",children:"Trajectory"},void 0,!1,void 0,this),z.jsxDEV("div",{className:"text-sm text-[#555]",children:"Loading trajectory..."},void 0,!1,void 0,this)]},void 0,!0,void 0,this),G.trajectory&&G.trajectory.length>0&&z.jsxDEV("div",{children:[z.jsxDEV("h4",{className:"text-xs text-[#666] uppercase tracking-wider mb-2",children:["Trajectory (",G.trajectory.length," steps)"]},void 0,!0,void 0,this),z.jsxDEV(e,{trajectory:G.trajectory},void 0,!1,void 0,this)]},void 0,!0,void 0,this)]},void 0,!0,void 0,this)]},void 0,!0,void 0,this)}function e({trajectory:G}){let[Z,W]=Y.useState(new Set),X=(K)=>{W(($)=>{let J=new Set($);if(J.has(K))J.delete(K);else J.add(K);return J})},N={user:{bg:"bg-blue-500/10",text:"text-blue-400",icon:"\uD83D\uDC64",label:"User"},assistant:{bg:"bg-purple-500/10",text:"text-purple-400",icon:"\uD83E\uDD16",label:"Assistant"}},w=(K)=>{let $=K.content;if(typeof $==="string"){let J=$.length>200,Q=Z.has(K.id);return z.jsxDEV("div",{children:[z.jsxDEV("p",{className:`text-sm text-[#ccc] whitespace-pre-wrap break-words ${!Q&&J?"line-clamp-4":""}`,children:$},void 0,!1,void 0,this),J&&z.jsxDEV("button",{onClick:()=>X(K.id),className:"text-xs text-[#666] hover:text-[#888] mt-1",children:Q?"Show less":"Show more..."},void 0,!1,void 0,this)]},void 0,!0,void 0,this)}return z.jsxDEV("div",{className:"space-y-2",children:$.map((J,Q)=>{if(J.type==="tool_use"){let q=JSON.stringify(J.input,null,2),_=q.length>150,R=`${K.id}-${Q}`,L=Z.has(R);return z.jsxDEV("div",{className:"bg-orange-500/10 border border-orange-500/20 rounded p-2",children:[z.jsxDEV("div",{className:"flex items-center gap-2 mb-1",children:[z.jsxDEV("span",{className:"text-orange-400",children:"\uD83D\uDD27"},void 0,!1,void 0,this),z.jsxDEV("span",{className:"text-xs font-medium text-orange-400",children:"Tool Call"},void 0,!1,void 0,this),z.jsxDEV("span",{className:"text-xs text-[#888]",children:J.name},void 0,!1,void 0,this)]},void 0,!0,void 0,this),z.jsxDEV("pre",{className:`text-xs text-[#888] overflow-x-auto ${!L&&_?"line-clamp-3":""}`,children:q},void 0,!1,void 0,this),_&&z.jsxDEV("button",{onClick:()=>X(R),className:"text-xs text-[#666] hover:text-[#888] mt-1",children:L?"Show less":"Show more..."},void 0,!1,void 0,this)]},Q,!0,void 0,this)}if(J.type==="tool_result"){let q=J.is_error,_=`${K.id}-${Q}`,R=Z.has(_),L=J.content.length>150;return z.jsxDEV("div",{className:`${q?"bg-red-500/10 border-red-500/20":"bg-teal-500/10 border-teal-500/20"} border rounded p-2`,children:[z.jsxDEV("div",{className:"flex items-center gap-2 mb-1",children:[z.jsxDEV("span",{children:q?"❌":"\uD83D\uDCCB"},void 0,!1,void 0,this),z.jsxDEV("span",{className:`text-xs font-medium ${q?"text-red-400":"text-teal-400"}`,children:"Tool Result"},void 0,!1,void 0,this)]},void 0,!0,void 0,this),z.jsxDEV("pre",{className:`text-xs text-[#888] overflow-x-auto whitespace-pre-wrap break-words ${!R&&L?"line-clamp-3":""}`,children:J.content},void 0,!1,void 0,this),L&&z.jsxDEV("button",{onClick:()=>X(_),className:"text-xs text-[#666] hover:text-[#888] mt-1",children:R?"Show less":"Show more..."},void 0,!1,void 0,this)]},Q,!0,void 0,this)}return null})},void 0,!1,void 0,this)};return z.jsxDEV("div",{className:"space-y-2",children:G.map((K)=>{let $=N[K.role]||N.assistant;return z.jsxDEV("div",{className:`${$.bg} border border-[#1a1a1a] rounded overflow-hidden p-3`,children:[z.jsxDEV("div",{className:"flex items-center gap-2 mb-2",children:[z.jsxDEV("span",{children:$.icon},void 0,!1,void 0,this),z.jsxDEV("span",{className:`text-xs font-medium ${$.text}`,children:$.label},void 0,!1,void 0,this),K.model&&z.jsxDEV("span",{className:"text-xs text-[#555]",children:["· ",K.model]},void 0,!0,void 0,this),z.jsxDEV("span",{className:"text-xs text-[#555]",children:["· ",new Date(K.created_at).toLocaleTimeString()]},void 0,!0,void 0,this)]},void 0,!0,void 0,this),w(K)]},K.id,!0,void 0,this)})},void 0,!1,void 0,this)}var j=["Sun","Mon","Tue","Wed","Thu","Fri","Sat"];function D(G){try{let Z=G.trim().split(/\s+/);if(Z.length!==5)return G;let[W,X,N,w,K]=Z;if(W.startsWith("*/")&&X==="*"&&N==="*"&&w==="*"&&K==="*"){let J=parseInt(W.slice(2));if(J===1)return"Every minute";return`Every ${J} minutes`}if(W!=="*"&&!W.includes("/")&&X==="*"&&N==="*"&&w==="*"&&K==="*")return"Every hour";if(X.startsWith("*/")&&N==="*"&&w==="*"&&K==="*"){let J=parseInt(X.slice(2));if(J===1)return"Every hour";return`Every ${J} hours`}let $=(J,Q)=>{let q=parseInt(J),_=parseInt(Q);if(isNaN(q))return"";let R=q>=12?"PM":"AM";return`${q===0?12:q>12?q-12:q}:${_.toString().padStart(2,"0")} ${R}`};if(X!=="*"&&!X.includes("/")&&N==="*"&&w==="*"){let J=$(X,W);if(K==="*")return`Daily at ${J}`;let Q=K.split(",").map((q)=>{let _=parseInt(q.trim());return j[_]||q});if(Q.length===7)return`Daily at ${J}`;if(Q.length===5&&!Q.includes("Sat")&&!Q.includes("Sun"))return`Weekdays at ${J}`;if(Q.length===1)return`Weekly on ${Q[0]} at ${J}`;return`${Q.join(" & ")} at ${J}`}return G}catch{return G}}function M(G){let Z=new Date(G),W=new Date,X=Z.getTime()-W.getTime(),N=Math.abs(X),w=X>0,K=Math.floor(N/60000),$=Math.floor(N/3600000),J=Math.floor(N/86400000),Q=Z.toLocaleTimeString([],{hour:"numeric",minute:"2-digit"}),q=Z.toDateString()===W.toDateString(),_=new Date(W);_.setDate(_.getDate()+1);let R=Z.toDateString()===_.toDateString(),L=new Date(W);L.setDate(L.getDate()-1);let A=Z.toDateString()===L.toDateString();if(q){if(K<1)return w?"now":"just now";if(K<60)return w?`in ${K} min (${Q})`:`${K} min ago`;return w?`in ${$}h (${Q})`:`${$}h ago`}if(R)return`Tomorrow at ${Q}`;if(A)return`Yesterday at ${Q}`;if(J<7)return`${j[Z.getDay()]} at ${Q}`;return Z.toLocaleDateString([],{month:"short",day:"numeric"})+` at ${Q}`}
2
+ export{Jz as d,a as e,e as f,D as g,M as h};
3
+
4
+ //# debugId=8FAAA8C9DC4BD64D64756E2164756E21
@@ -0,0 +1,10 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../src/web/components/tasks/TasksPage.tsx"],
4
+ "sourcesContent": [
5
+ "import React, { useState, useEffect, useCallback, useRef, useMemo } from \"react\";\nimport { TasksIcon, CloseIcon, RecurringIcon, ScheduledIcon, TaskOnceIcon } from \"../common/Icons\";\nimport { Select } from \"../common/Select\";\nimport { useAuth, useProjects } from \"../../context\";\nimport { useTelemetry } from \"../../context/TelemetryContext\";\nimport type { Task, TaskTrajectoryStep, ToolUseBlock, ToolResultBlock } from \"../../types\";\n\ninterface TasksPageProps {\n onSelectAgent?: (agentId: string) => void;\n}\n\nexport function TasksPage({ onSelectAgent }: TasksPageProps) {\n const { authFetch } = useAuth();\n const { currentProjectId } = useProjects();\n const [tasks, setTasks] = useState<Task[]>([]);\n const [loading, setLoading] = useState(true);\n const [filter, setFilter] = useState<string>(\"all\");\n const [agentFilter, setAgentFilter] = useState<string>(\"all\");\n const [selectedTask, setSelectedTask] = useState<Task | null>(null);\n const [loadingTask, setLoadingTask] = useState(false);\n const lastProcessedEventRef = useRef<string | null>(null);\n\n // Subscribe to task telemetry events for real-time updates\n const { events: taskEvents } = useTelemetry({ category: \"TASK\" });\n\n const fetchTasks = useCallback(async () => {\n try {\n let url = `/api/tasks?status=${filter}`;\n if (currentProjectId !== null) {\n url += `&project_id=${encodeURIComponent(currentProjectId)}`;\n }\n const res = await authFetch(url);\n const data = await res.json();\n setTasks(data.tasks || []);\n } catch (e) {\n console.error(\"Failed to fetch tasks:\", e);\n } finally {\n setLoading(false);\n }\n }, [authFetch, filter, currentProjectId]);\n\n // Initial fetch\n useEffect(() => {\n fetchTasks();\n }, [fetchTasks]);\n\n // Handle real-time task events from telemetry - use as trigger to refetch\n // since telemetry data is incomplete (missing id, agentId, status, etc.)\n useEffect(() => {\n if (!taskEvents.length) return;\n\n const latestEvent = taskEvents[0];\n if (!latestEvent || latestEvent.id === lastProcessedEventRef.current) return;\n\n // Only react to task mutation events\n const eventType = latestEvent.type;\n if (eventType === \"task_created\" || eventType === \"task_updated\" || eventType === \"task_deleted\") {\n lastProcessedEventRef.current = latestEvent.id;\n console.log(\"[TasksPage] Telemetry event:\", eventType);\n // Refetch to get complete task data\n fetchTasks();\n }\n }, [taskEvents, fetchTasks]);\n\n // Fetch full task details (including trajectory) when selecting a task\n const selectTask = useCallback(async (task: Task) => {\n // Set task immediately for quick feedback\n setSelectedTask(task);\n setLoadingTask(true);\n\n try {\n const res = await authFetch(`/api/tasks/${task.agentId}/${task.id}`);\n console.log(\"[TasksPage] Fetch task response status:\", res.status);\n if (res.ok) {\n const data = await res.json();\n console.log(\"[TasksPage] Task data:\", data);\n console.log(\"[TasksPage] Has trajectory:\", !!data.task?.trajectory, \"Length:\", data.task?.trajectory?.length);\n if (data.task) {\n // Merge with agentId/agentName since API might not include them\n setSelectedTask({ ...data.task, agentId: task.agentId, agentName: task.agentName });\n }\n } else {\n console.error(\"[TasksPage] Failed to fetch task:\", res.status, await res.text());\n }\n } catch (e) {\n console.error(\"Failed to fetch task details:\", e);\n } finally {\n setLoadingTask(false);\n }\n }, [authFetch]);\n\n // Extract unique agents from tasks for the agent filter\n const uniqueAgents = useMemo(() => {\n const map = new Map<string, string>();\n for (const t of tasks) {\n const id = t.agentId || (t as any).agent_id;\n const name = t.agentName || (t as any).agent_name;\n if (id && name && !map.has(id)) {\n map.set(id, name);\n }\n }\n return Array.from(map.entries()).sort((a, b) => a[1].localeCompare(b[1]));\n }, [tasks]);\n\n // Sort tasks: running first, then pending by next execution (soonest first), then completed/failed by date\n const sortedTasks = useMemo(() => {\n const filtered = agentFilter === \"all\" ? tasks : tasks.filter(t => (t.agentId || (t as any).agent_id) === agentFilter);\n return [...filtered].sort((a, b) => {\n // Running tasks first\n if (a.status === \"running\" && b.status !== \"running\") return -1;\n if (b.status === \"running\" && a.status !== \"running\") return 1;\n // Pending tasks next\n const aIsPending = a.status === \"pending\";\n const bIsPending = b.status === \"pending\";\n if (aIsPending && !bIsPending) return -1;\n if (bIsPending && !aIsPending) return 1;\n // For running/pending: sort by next execution time (soonest first)\n if (aIsPending && bIsPending || a.status === \"running\" && b.status === \"running\") {\n const aTime = a.next_run || a.execute_at || null;\n const bTime = b.next_run || b.execute_at || null;\n const aTs = aTime ? new Date(aTime).getTime() : Infinity;\n const bTs = bTime ? new Date(bTime).getTime() : Infinity;\n return aTs - bTs;\n }\n // For completed/failed: most recent first\n const aDate = a.completed_at || a.executed_at || a.created_at;\n const bDate = b.completed_at || b.executed_at || b.created_at;\n return new Date(bDate).getTime() - new Date(aDate).getTime();\n });\n }, [tasks, agentFilter]);\n\n const statusColors: Record<string, string> = {\n pending: \"bg-yellow-500/20 text-yellow-400\",\n running: \"bg-blue-500/20 text-blue-400\",\n completed: \"bg-green-500/20 text-green-400\",\n failed: \"bg-red-500/20 text-red-400\",\n cancelled: \"bg-gray-500/20 text-gray-400\",\n };\n\n const filterOptions = [\n { value: \"all\", label: \"All\" },\n { value: \"pending\", label: \"Pending\" },\n { value: \"running\", label: \"Running\" },\n { value: \"completed\", label: \"Completed\" },\n { value: \"failed\", label: \"Failed\" },\n ];\n\n return (\n <div className=\"flex-1 flex overflow-hidden\">\n {/* Task List */}\n <div className={`flex-1 p-4 md:p-6 overflow-auto ${selectedTask ? 'hidden md:block md:w-1/2 lg:w-2/3' : ''}`}>\n <div className=\"max-w-4xl\">\n <div className=\"mb-6\">\n <div className=\"mb-4\">\n <h1 className=\"text-xl md:text-2xl font-semibold mb-1\">Tasks</h1>\n <p className=\"text-sm text-[#666]\">\n View tasks from all running agents\n </p>\n </div>\n <div className=\"flex items-center gap-3 flex-wrap pb-1\">\n <div className=\"flex gap-2 overflow-x-auto scrollbar-hide\">\n {filterOptions.map(opt => (\n <button\n key={opt.value}\n onClick={() => setFilter(opt.value)}\n className={`px-3 py-1.5 rounded text-sm transition whitespace-nowrap ${\n filter === opt.value\n ? \"bg-[#f97316] text-black\"\n : \"bg-[#1a1a1a] hover:bg-[#222]\"\n }`}\n >\n {opt.label}\n </button>\n ))}\n </div>\n {uniqueAgents.length > 0 && (\n <div className=\"w-48\">\n <Select\n value={agentFilter}\n onChange={setAgentFilter}\n placeholder=\"All agents\"\n compact\n options={[\n { value: \"all\", label: \"All agents\" },\n ...uniqueAgents.map(([id, name]) => ({ value: id, label: name })),\n ]}\n />\n </div>\n )}\n </div>\n </div>\n\n {loading ? (\n <div className=\"text-center py-12 text-[#666]\">Loading tasks...</div>\n ) : sortedTasks.length === 0 ? (\n <div className=\"text-center py-12\">\n <TasksIcon className=\"w-12 h-12 mx-auto mb-4 text-[#333]\" />\n <p className=\"text-[#666]\">No tasks found</p>\n <p className=\"text-sm text-[#444] mt-1\">\n Tasks will appear here when agents create them\n </p>\n </div>\n ) : (\n <div className=\"space-y-3\">\n {sortedTasks.map(task => (\n <div\n key={`${task.agentId}-${task.id}`}\n onClick={() => selectTask(task)}\n className={`bg-[#111] border rounded-lg p-4 cursor-pointer transition ${\n selectedTask?.id === task.id && selectedTask?.agentId === task.agentId\n ? \"border-[#f97316]\"\n : \"border-[#1a1a1a] hover:border-[#333]\"\n }`}\n >\n <div className=\"flex items-start justify-between mb-2\">\n <div className=\"flex-1\">\n <h3 className=\"font-medium\">{task.title}</h3>\n <p className=\"text-sm text-[#666]\">{task.agentName}</p>\n </div>\n <span className={`px-2 py-1 rounded text-xs font-medium ${statusColors[task.status] || statusColors.pending}`}>\n {task.status}\n </span>\n </div>\n\n {task.description && (\n <p className=\"text-sm text-[#888] mb-2 line-clamp-2\">\n {task.description}\n </p>\n )}\n\n <div className=\"flex flex-wrap items-center gap-x-4 gap-y-1 text-xs text-[#555]\">\n <span className=\"flex items-center gap-1\">\n {task.type === \"recurring\"\n ? <RecurringIcon className=\"w-3.5 h-3.5\" />\n : task.execute_at\n ? <ScheduledIcon className=\"w-3.5 h-3.5\" />\n : <TaskOnceIcon className=\"w-3.5 h-3.5\" />\n }\n {task.type === \"recurring\" && task.recurrence ? formatCron(task.recurrence) : task.type}\n </span>\n <span>Priority: {task.priority}</span>\n {task.next_run && (\n <span className=\"text-[#f97316]\">{formatRelativeTime(task.next_run)}</span>\n )}\n {!task.next_run && task.execute_at && (\n <span className=\"text-[#f97316]\">{formatRelativeTime(task.execute_at)}</span>\n )}\n <span>Created: {new Date(task.created_at).toLocaleDateString()}</span>\n </div>\n </div>\n ))}\n </div>\n )}\n </div>\n </div>\n\n {/* Task Detail Panel */}\n {selectedTask && (\n <TaskDetailPanel\n task={selectedTask}\n statusColors={statusColors}\n onClose={() => setSelectedTask(null)}\n onSelectAgent={onSelectAgent}\n loading={loadingTask}\n />\n )}\n </div>\n );\n}\n\nexport interface TaskDetailPanelProps {\n task: Task;\n statusColors: Record<string, string>;\n onClose: () => void;\n onSelectAgent?: (agentId: string) => void;\n loading?: boolean;\n}\n\nexport function TaskDetailPanel({ task, statusColors, onClose, onSelectAgent, loading }: TaskDetailPanelProps) {\n return (\n <div className=\"w-full md:w-1/2 lg:w-1/3 border-l border-[#1a1a1a] bg-[#0a0a0a] flex flex-col overflow-hidden\">\n {/* Header */}\n <div className=\"flex items-center justify-between p-4 border-b border-[#1a1a1a]\">\n <h2 className=\"font-medium truncate pr-2\">Task Details</h2>\n <button onClick={onClose} className=\"text-[#666] hover:text-[#e0e0e0] transition\">\n <CloseIcon />\n </button>\n </div>\n\n {/* Content */}\n <div className=\"flex-1 overflow-auto p-4 space-y-4\">\n {/* Title & Status */}\n <div>\n <div className=\"flex items-start justify-between gap-2 mb-2\">\n <h3 className=\"text-lg font-medium\">{task.title}</h3>\n <span className={`px-2 py-1 rounded text-xs font-medium flex-shrink-0 ${statusColors[task.status]}`}>\n {task.status}\n </span>\n </div>\n <button\n onClick={() => onSelectAgent?.(task.agentId)}\n className=\"text-sm text-[#f97316] hover:underline\"\n >\n {task.agentName}\n </button>\n </div>\n\n {/* Description */}\n {task.description && (\n <div>\n <h4 className=\"text-xs text-[#666] uppercase tracking-wider mb-1\">Description</h4>\n <p className=\"text-sm text-[#888] whitespace-pre-wrap\">{task.description}</p>\n </div>\n )}\n\n {/* Metadata */}\n <div className=\"grid grid-cols-2 gap-3 text-sm\">\n <div>\n <span className=\"text-[#666]\">Type</span>\n <p className=\"capitalize\">{task.type}</p>\n </div>\n <div>\n <span className=\"text-[#666]\">Priority</span>\n <p>{task.priority}</p>\n </div>\n <div>\n <span className=\"text-[#666]\">Source</span>\n <p className=\"capitalize\">{task.source}</p>\n </div>\n {task.recurrence && (\n <div>\n <span className=\"text-[#666]\">Recurrence</span>\n <p>{formatCron(task.recurrence)}</p>\n <p className=\"text-xs text-[#444] mt-0.5 font-mono\">{task.recurrence}</p>\n </div>\n )}\n </div>\n\n {/* Timestamps */}\n <div className=\"space-y-2 text-sm\">\n <div className=\"flex justify-between\">\n <span className=\"text-[#666]\">Created</span>\n <span>{new Date(task.created_at).toLocaleString()}</span>\n </div>\n {task.execute_at && (\n <div className=\"flex justify-between\">\n <span className=\"text-[#666]\">Scheduled</span>\n <span className=\"text-[#f97316]\">{formatRelativeTime(task.execute_at)}</span>\n </div>\n )}\n {task.executed_at && (\n <div className=\"flex justify-between\">\n <span className=\"text-[#666]\">Started</span>\n <span>{new Date(task.executed_at).toLocaleString()}</span>\n </div>\n )}\n {task.completed_at && (\n <div className=\"flex justify-between\">\n <span className=\"text-[#666]\">Completed</span>\n <span>{new Date(task.completed_at).toLocaleString()}</span>\n </div>\n )}\n {task.next_run && (\n <div className=\"flex justify-between\">\n <span className=\"text-[#666]\">Next Run</span>\n <span className=\"text-[#f97316]\">{formatRelativeTime(task.next_run)}</span>\n </div>\n )}\n </div>\n\n {/* Error */}\n {task.status === \"failed\" && task.error && (\n <div className=\"min-w-0\">\n <h4 className=\"text-xs text-red-400 uppercase tracking-wider mb-1\">Error</h4>\n <div className=\"bg-red-500/10 border border-red-500/20 rounded p-3 overflow-x-auto\">\n <pre className=\"text-sm text-red-400 whitespace-pre-wrap break-words\">{task.error}</pre>\n </div>\n </div>\n )}\n\n {/* Result */}\n {task.status === \"completed\" && task.result && (\n <div className=\"min-w-0\">\n <h4 className=\"text-xs text-green-400 uppercase tracking-wider mb-1\">Result</h4>\n <div className=\"bg-green-500/10 border border-green-500/20 rounded p-3 overflow-x-auto\">\n <pre className=\"text-sm text-green-400 whitespace-pre-wrap break-words\">\n {typeof task.result === \"string\" ? task.result : JSON.stringify(task.result, null, 2)}\n </pre>\n </div>\n </div>\n )}\n\n {/* Trajectory */}\n {loading && !task.trajectory && (\n <div>\n <h4 className=\"text-xs text-[#666] uppercase tracking-wider mb-2\">Trajectory</h4>\n <div className=\"text-sm text-[#555]\">Loading trajectory...</div>\n </div>\n )}\n {task.trajectory && task.trajectory.length > 0 && (\n <div>\n <h4 className=\"text-xs text-[#666] uppercase tracking-wider mb-2\">\n Trajectory ({task.trajectory.length} steps)\n </h4>\n <TrajectoryView trajectory={task.trajectory} />\n </div>\n )}\n </div>\n </div>\n );\n}\n\nexport function TrajectoryView({ trajectory }: { trajectory: TaskTrajectoryStep[] }) {\n const [expanded, setExpanded] = useState<Set<string>>(new Set());\n\n const toggleStep = (id: string) => {\n setExpanded(prev => {\n const next = new Set(prev);\n if (next.has(id)) {\n next.delete(id);\n } else {\n next.add(id);\n }\n return next;\n });\n };\n\n const roleStyles = {\n user: { bg: \"bg-blue-500/10\", text: \"text-blue-400\", icon: \"👤\", label: \"User\" },\n assistant: { bg: \"bg-purple-500/10\", text: \"text-purple-400\", icon: \"🤖\", label: \"Assistant\" },\n };\n\n // Render content which can be string or array of blocks\n const renderContent = (step: TaskTrajectoryStep) => {\n const content = step.content;\n\n // String content (text message)\n if (typeof content === \"string\") {\n const isLong = content.length > 200;\n const isExpanded = expanded.has(step.id);\n\n return (\n <div>\n <p className={`text-sm text-[#ccc] whitespace-pre-wrap break-words ${!isExpanded && isLong ? 'line-clamp-4' : ''}`}>\n {content}\n </p>\n {isLong && (\n <button\n onClick={() => toggleStep(step.id)}\n className=\"text-xs text-[#666] hover:text-[#888] mt-1\"\n >\n {isExpanded ? \"Show less\" : \"Show more...\"}\n </button>\n )}\n </div>\n );\n }\n\n // Array content (tool_use or tool_result blocks)\n return (\n <div className=\"space-y-2\">\n {content.map((block, idx) => {\n if (block.type === \"tool_use\") {\n const inputStr = JSON.stringify(block.input, null, 2);\n const isLong = inputStr.length > 150;\n const blockId = `${step.id}-${idx}`;\n const isExpanded = expanded.has(blockId);\n\n return (\n <div key={idx} className=\"bg-orange-500/10 border border-orange-500/20 rounded p-2\">\n <div className=\"flex items-center gap-2 mb-1\">\n <span className=\"text-orange-400\">🔧</span>\n <span className=\"text-xs font-medium text-orange-400\">Tool Call</span>\n <span className=\"text-xs text-[#888]\">{block.name}</span>\n </div>\n <pre className={`text-xs text-[#888] overflow-x-auto ${!isExpanded && isLong ? 'line-clamp-3' : ''}`}>\n {inputStr}\n </pre>\n {isLong && (\n <button\n onClick={() => toggleStep(blockId)}\n className=\"text-xs text-[#666] hover:text-[#888] mt-1\"\n >\n {isExpanded ? \"Show less\" : \"Show more...\"}\n </button>\n )}\n </div>\n );\n }\n\n if (block.type === \"tool_result\") {\n const isError = block.is_error;\n const blockId = `${step.id}-${idx}`;\n const isExpanded = expanded.has(blockId);\n const isLong = block.content.length > 150;\n\n return (\n <div\n key={idx}\n className={`${isError ? 'bg-red-500/10 border-red-500/20' : 'bg-teal-500/10 border-teal-500/20'} border rounded p-2`}\n >\n <div className=\"flex items-center gap-2 mb-1\">\n <span>{isError ? \"❌\" : \"📋\"}</span>\n <span className={`text-xs font-medium ${isError ? 'text-red-400' : 'text-teal-400'}`}>\n Tool Result\n </span>\n </div>\n <pre className={`text-xs text-[#888] overflow-x-auto whitespace-pre-wrap break-words ${!isExpanded && isLong ? 'line-clamp-3' : ''}`}>\n {block.content}\n </pre>\n {isLong && (\n <button\n onClick={() => toggleStep(blockId)}\n className=\"text-xs text-[#666] hover:text-[#888] mt-1\"\n >\n {isExpanded ? \"Show less\" : \"Show more...\"}\n </button>\n )}\n </div>\n );\n }\n\n return null;\n })}\n </div>\n );\n };\n\n return (\n <div className=\"space-y-2\">\n {trajectory.map((step) => {\n const style = roleStyles[step.role] || roleStyles.assistant;\n\n return (\n <div\n key={step.id}\n className={`${style.bg} border border-[#1a1a1a] rounded overflow-hidden p-3`}\n >\n <div className=\"flex items-center gap-2 mb-2\">\n <span>{style.icon}</span>\n <span className={`text-xs font-medium ${style.text}`}>{style.label}</span>\n {step.model && (\n <span className=\"text-xs text-[#555]\">· {step.model}</span>\n )}\n <span className=\"text-xs text-[#555]\">\n · {new Date(step.created_at).toLocaleTimeString()}\n </span>\n </div>\n {renderContent(step)}\n </div>\n );\n })}\n </div>\n );\n}\n\n// --- Schedule formatting helpers ---\n\nconst DAY_NAMES = [\"Sun\", \"Mon\", \"Tue\", \"Wed\", \"Thu\", \"Fri\", \"Sat\"];\n\nexport function formatCron(cron: string): string {\n try {\n const parts = cron.trim().split(/\\s+/);\n if (parts.length !== 5) return cron;\n const [minute, hour, dayOfMonth, month, dayOfWeek] = parts;\n\n // Every N minutes: */N * * * *\n if (minute.startsWith(\"*/\") && hour === \"*\" && dayOfMonth === \"*\" && month === \"*\" && dayOfWeek === \"*\") {\n const n = parseInt(minute.slice(2));\n if (n === 1) return \"Every minute\";\n return `Every ${n} minutes`;\n }\n\n // Every hour: 0 * * * *\n if (minute !== \"*\" && !minute.includes(\"/\") && hour === \"*\" && dayOfMonth === \"*\" && month === \"*\" && dayOfWeek === \"*\") {\n return \"Every hour\";\n }\n\n // Every N hours: 0 */N * * *\n if (hour.startsWith(\"*/\") && dayOfMonth === \"*\" && month === \"*\" && dayOfWeek === \"*\") {\n const n = parseInt(hour.slice(2));\n if (n === 1) return \"Every hour\";\n return `Every ${n} hours`;\n }\n\n const formatTime = (h: string, m: string): string => {\n const hr = parseInt(h);\n const mn = parseInt(m);\n if (isNaN(hr)) return \"\";\n const ampm = hr >= 12 ? \"PM\" : \"AM\";\n const h12 = hr === 0 ? 12 : hr > 12 ? hr - 12 : hr;\n return `${h12}:${mn.toString().padStart(2, \"0\")} ${ampm}`;\n };\n\n if (hour !== \"*\" && !hour.includes(\"/\") && dayOfMonth === \"*\" && month === \"*\") {\n const timeStr = formatTime(hour, minute);\n\n if (dayOfWeek === \"*\") return `Daily at ${timeStr}`;\n\n const days = dayOfWeek.split(\",\").map(d => {\n const num = parseInt(d.trim());\n return DAY_NAMES[num] || d;\n });\n\n if (days.length === 7) return `Daily at ${timeStr}`;\n if (days.length === 5 && !days.includes(\"Sat\") && !days.includes(\"Sun\")) {\n return `Weekdays at ${timeStr}`;\n }\n if (days.length === 1) return `Weekly on ${days[0]} at ${timeStr}`;\n return `${days.join(\" & \")} at ${timeStr}`;\n }\n\n return cron;\n } catch {\n return cron;\n }\n}\n\nexport function formatRelativeTime(dateStr: string): string {\n const date = new Date(dateStr);\n const now = new Date();\n const diffMs = date.getTime() - now.getTime();\n const absDiffMs = Math.abs(diffMs);\n const isFuture = diffMs > 0;\n\n const minutes = Math.floor(absDiffMs / 60000);\n const hours = Math.floor(absDiffMs / 3600000);\n const days = Math.floor(absDiffMs / 86400000);\n\n const timeStr = date.toLocaleTimeString([], { hour: \"numeric\", minute: \"2-digit\" });\n\n const isToday = date.toDateString() === now.toDateString();\n const tomorrow = new Date(now);\n tomorrow.setDate(tomorrow.getDate() + 1);\n const isTomorrow = date.toDateString() === tomorrow.toDateString();\n const yesterday = new Date(now);\n yesterday.setDate(yesterday.getDate() - 1);\n const isYesterday = date.toDateString() === yesterday.toDateString();\n\n if (isToday) {\n if (minutes < 1) return isFuture ? \"now\" : \"just now\";\n if (minutes < 60) return isFuture ? `in ${minutes} min (${timeStr})` : `${minutes} min ago`;\n return isFuture ? `in ${hours}h (${timeStr})` : `${hours}h ago`;\n }\n\n if (isTomorrow) return `Tomorrow at ${timeStr}`;\n if (isYesterday) return `Yesterday at ${timeStr}`;\n\n if (days < 7) {\n const dayName = DAY_NAMES[date.getDay()];\n return `${dayName} at ${timeStr}`;\n }\n\n return date.toLocaleDateString([], { month: \"short\", day: \"numeric\" }) + ` at ${timeStr}`;\n}\n"
6
+ ],
7
+ "mappings": "qMAAA,sBAWO,CAAS,EAAS,EAAG,iBAAiC,CAC3D,IAAQ,aAAc,EAAQ,GACtB,oBAAqB,EAAY,GAClC,EAAO,GAAY,WAAiB,CAAC,CAAC,GACtC,EAAS,GAAc,WAAS,EAAI,GACpC,EAAQ,GAAa,WAAiB,KAAK,GAC3C,EAAa,GAAkB,WAAiB,KAAK,GACrD,EAAc,GAAmB,WAAsB,IAAI,GAC3D,EAAa,GAAkB,WAAS,EAAK,EAC9C,EAAwB,SAAsB,IAAI,GAGhD,OAAQ,GAAe,EAAa,CAAE,SAAU,MAAO,CAAC,EAE1D,EAAa,cAAY,SAAY,CACzC,GAAI,CACF,IAAI,EAAM,qBAAqB,IAC/B,GAAI,IAAqB,KACvB,GAAO,eAAe,mBAAmB,CAAgB,IAG3D,IAAM,EAAO,MADD,MAAM,EAAU,CAAG,GACR,KAAK,EAC5B,EAAS,EAAK,OAAS,CAAC,CAAC,EACzB,MAAO,EAAG,CACV,QAAQ,MAAM,yBAA0B,CAAC,SACzC,CACA,EAAW,EAAK,IAEjB,CAAC,EAAW,EAAQ,CAAgB,CAAC,EAGxC,YAAU,IAAM,CACd,EAAW,GACV,CAAC,CAAU,CAAC,EAIf,YAAU,IAAM,CACd,GAAI,CAAC,EAAW,OAAQ,OAExB,IAAM,EAAc,EAAW,GAC/B,GAAI,CAAC,GAAe,EAAY,KAAO,EAAsB,QAAS,OAGtE,IAAM,EAAY,EAAY,KAC9B,GAAI,IAAc,gBAAkB,IAAc,gBAAkB,IAAc,eAChF,EAAsB,QAAU,EAAY,GAC5C,QAAQ,IAAI,+BAAgC,CAAS,EAErD,EAAW,GAEZ,CAAC,EAAY,CAAU,CAAC,EAG3B,IAAM,EAAa,cAAY,MAAO,IAAe,CAEnD,EAAgB,CAAI,EACpB,EAAe,EAAI,EAEnB,GAAI,CACF,IAAM,EAAM,MAAM,EAAU,cAAc,EAAK,WAAW,EAAK,IAAI,EAEnE,GADA,QAAQ,IAAI,0CAA2C,EAAI,MAAM,EAC7D,EAAI,GAAI,CACV,IAAM,EAAO,MAAM,EAAI,KAAK,EAG5B,GAFA,QAAQ,IAAI,yBAA0B,CAAI,EAC1C,QAAQ,IAAI,8BAA+B,CAAC,CAAC,EAAK,MAAM,WAAY,UAAW,EAAK,MAAM,YAAY,MAAM,EACxG,EAAK,KAEP,EAAgB,IAAK,EAAK,KAAM,QAAS,EAAK,QAAS,UAAW,EAAK,SAAU,CAAC,EAGpF,aAAQ,MAAM,oCAAqC,EAAI,OAAQ,MAAM,EAAI,KAAK,CAAC,EAEjF,MAAO,EAAG,CACV,QAAQ,MAAM,gCAAiC,CAAC,SAChD,CACA,EAAe,EAAK,IAErB,CAAC,CAAS,CAAC,EAGR,EAAe,UAAQ,IAAM,CACjC,IAAM,EAAM,IAAI,IAChB,QAAW,KAAK,EAAO,CACrB,IAAM,EAAK,EAAE,SAAY,EAAU,SAC7B,EAAO,EAAE,WAAc,EAAU,WACvC,GAAI,GAAM,GAAQ,CAAC,EAAI,IAAI,CAAE,EAC3B,EAAI,IAAI,EAAI,CAAI,EAGpB,OAAO,MAAM,KAAK,EAAI,QAAQ,CAAC,EAAE,KAAK,CAAC,EAAG,IAAM,EAAE,GAAG,cAAc,EAAE,EAAE,CAAC,GACvE,CAAC,CAAK,CAAC,EAGJ,EAAc,UAAQ,IAAM,CAEhC,MAAO,CAAC,GADS,IAAgB,MAAQ,EAAQ,EAAM,OAAO,MAAM,EAAE,SAAY,EAAU,YAAc,CAAW,CAClG,EAAE,KAAK,CAAC,EAAG,IAAM,CAElC,GAAI,EAAE,SAAW,WAAa,EAAE,SAAW,UAAW,MAAO,GAC7D,GAAI,EAAE,SAAW,WAAa,EAAE,SAAW,UAAW,MAAO,GAE7D,IAAM,EAAa,EAAE,SAAW,UAC1B,EAAa,EAAE,SAAW,UAChC,GAAI,GAAc,CAAC,EAAY,MAAO,GACtC,GAAI,GAAc,CAAC,EAAY,MAAO,GAEtC,GAAI,GAAc,GAAc,EAAE,SAAW,WAAa,EAAE,SAAW,UAAW,CAChF,IAAM,EAAQ,EAAE,UAAY,EAAE,YAAc,KACtC,EAAQ,EAAE,UAAY,EAAE,YAAc,KACtC,EAAM,EAAQ,IAAI,KAAK,CAAK,EAAE,QAAQ,EAAI,IAC1C,EAAM,EAAQ,IAAI,KAAK,CAAK,EAAE,QAAQ,EAAI,IAChD,OAAO,EAAM,EAGf,IAAM,EAAQ,EAAE,cAAgB,EAAE,aAAe,EAAE,WAC7C,EAAQ,EAAE,cAAgB,EAAE,aAAe,EAAE,WACnD,OAAO,IAAI,KAAK,CAAK,EAAE,QAAQ,EAAI,IAAI,KAAK,CAAK,EAAE,QAAQ,EAC5D,GACA,CAAC,EAAO,CAAW,CAAC,EAEjB,EAAuC,CAC3C,QAAS,mCACT,QAAS,+BACT,UAAW,iCACX,OAAQ,6BACR,UAAW,8BACb,EAUA,OACE,SAsHE,MAtHF,CAAK,UAAU,8BAAf,SAsHE,CApHA,SAwGE,MAxGF,CAAK,UAAW,mCAAmC,EAAe,oCAAsC,KAAxG,SACE,SAsGE,MAtGF,CAAK,UAAU,YAAf,SAsGE,CArGA,SAsCE,MAtCF,CAAK,UAAU,OAAf,SAsCE,CArCA,SAKE,MALF,CAAK,UAAU,OAAf,SAKE,CAJA,SAA8D,KAA9D,CAAI,UAAU,yCAAd,uCAA8D,EAC9D,SAEE,IAFF,CAAG,UAAU,sBAAb,oEAEE,IAJJ,qBAKE,EACF,SA8BE,MA9BF,CAAK,UAAU,yCAAf,SA8BE,CA7BA,SAcE,MAdF,CAAK,UAAU,4CAAf,SArBU,CACpB,CAAE,MAAO,MAAO,MAAO,KAAM,EAC7B,CAAE,MAAO,UAAW,MAAO,SAAU,EACrC,CAAE,MAAO,UAAW,MAAO,SAAU,EACrC,CAAE,MAAO,YAAa,MAAO,WAAY,EACzC,CAAE,MAAO,SAAU,MAAO,QAAS,CACrC,EAgB6B,IAAI,KACjB,SAUE,SAVF,CAEE,QAAS,IAAM,EAAU,EAAI,KAAK,EAClC,UAAW,4DACT,IAAW,EAAI,MACX,0BACA,iCANR,SASG,EAAI,OARA,EAAI,MADX,cAUE,CACH,GAbH,qBAcE,EACD,EAAa,OAAS,GACrB,SAWE,MAXF,CAAK,UAAU,OAAf,SACE,SAAC,EAAD,CACE,MAAO,EACP,SAAU,EACV,YAAY,aACZ,QAAO,GACP,QAAS,CACP,CAAE,MAAO,MAAO,MAAO,YAAa,EACpC,GAAG,EAAa,IAAI,EAAE,EAAI,MAAW,CAAE,MAAO,EAAI,MAAO,CAAK,EAAE,CAClE,GARF,qBASA,GAVF,qBAWE,IA5BN,qBA8BE,IArCJ,qBAsCE,EAED,EACC,SAAiE,MAAjE,CAAK,UAAU,gCAAf,kDAAiE,EAC/D,EAAY,SAAW,EACzB,SAME,MANF,CAAK,UAAU,oBAAf,SAME,CALA,SAAC,EAAD,CAAW,UAAU,sCAArB,qBAA0D,EAC1D,SAA2C,IAA3C,CAAG,UAAU,cAAb,gDAA2C,EAC3C,SAEE,IAFF,CAAG,UAAU,2BAAb,gFAEE,IALJ,qBAME,EAEF,SAgDE,MAhDF,CAAK,UAAU,YAAf,SACG,EAAY,IAAI,KACf,SA4CE,MA5CF,CAEE,QAAS,IAAM,EAAW,CAAI,EAC9B,UAAW,6DACT,GAAc,KAAO,EAAK,IAAM,GAAc,UAAY,EAAK,QAC3D,mBACA,yCANR,SA4CE,CAnCA,SAQE,MARF,CAAK,UAAU,wCAAf,SAQE,CAPA,SAGE,MAHF,CAAK,UAAU,SAAf,SAGE,CAFA,SAA0C,KAA1C,CAAI,UAAU,cAAd,SAA6B,EAAK,OAAlC,qBAA0C,EAC1C,SAAqD,IAArD,CAAG,UAAU,sBAAb,SAAoC,EAAK,WAAzC,qBAAqD,IAFvD,qBAGE,EACF,SAEE,OAFF,CAAM,UAAW,yCAAyC,EAAa,EAAK,SAAW,EAAa,UAApG,SACG,EAAK,QADR,qBAEE,IAPJ,qBAQE,EAED,EAAK,aACJ,SAEE,IAFF,CAAG,UAAU,wCAAb,SACG,EAAK,aADR,qBAEE,EAGJ,SAkBE,MAlBF,CAAK,UAAU,kEAAf,SAkBE,CAjBA,SAQE,OARF,CAAM,UAAU,0BAAhB,SAQE,CAPC,EAAK,OAAS,YACX,SAAC,EAAD,CAAe,UAAU,eAAzB,qBAAuC,EACvC,EAAK,WACH,SAAC,EAAD,CAAe,UAAU,eAAzB,qBAAuC,EACvC,SAAC,EAAD,CAAc,UAAU,eAAxB,qBAAsC,EAE3C,EAAK,OAAS,aAAe,EAAK,WAAa,EAAW,EAAK,UAAU,EAAI,EAAK,OAPrF,qBAQE,EACF,SAAiC,OAAjC,UAAiC,CAAjC,aAAiB,EAAK,WAAtB,qBAAiC,EAChC,EAAK,UACJ,SAAsE,OAAtE,CAAM,UAAU,iBAAhB,SAAkC,EAAmB,EAAK,QAAQ,GAAlE,qBAAsE,EAEvE,CAAC,EAAK,UAAY,EAAK,YACtB,SAAwE,OAAxE,CAAM,UAAU,iBAAhB,SAAkC,EAAmB,EAAK,UAAU,GAApE,qBAAwE,EAE1E,SAAiE,OAAjE,UAAiE,CAAjE,YAAgB,IAAI,KAAK,EAAK,UAAU,EAAE,mBAAmB,IAA7D,qBAAiE,IAjBnE,qBAkBE,IA1CG,GAAG,EAAK,WAAW,EAAK,KAD/B,cA4CE,CACH,GA/CH,qBAgDE,IApGN,qBAsGE,GAvGJ,qBAwGE,EAGD,GACC,SAAC,EAAD,CACE,KAAM,EACN,aAAc,EACd,QAAS,IAAM,EAAgB,IAAI,EACnC,cAAe,EACf,QAAS,GALX,qBAMA,IApHJ,qBAsHE,EAYC,SAAS,CAAe,EAAG,OAAM,eAAc,UAAS,gBAAe,WAAiC,CAC7G,OACE,SAgIE,MAhIF,CAAK,UAAU,gGAAf,SAgIE,CA9HA,SAKE,MALF,CAAK,UAAU,kEAAf,SAKE,CAJA,SAAwD,KAAxD,CAAI,UAAU,4BAAd,8CAAwD,EACxD,SAEE,SAFF,CAAQ,QAAS,EAAS,UAAU,8CAApC,SACE,SAAC,EAAD,wBAAW,GADb,qBAEE,IAJJ,qBAKE,EAGF,SAqHE,MArHF,CAAK,UAAU,qCAAf,SAqHE,CAnHA,SAaE,MAbF,UAaE,CAZA,SAKE,MALF,CAAK,UAAU,8CAAf,SAKE,CAJA,SAAkD,KAAlD,CAAI,UAAU,sBAAd,SAAqC,EAAK,OAA1C,qBAAkD,EAClD,SAEE,OAFF,CAAM,UAAW,uDAAuD,EAAa,EAAK,UAA1F,SACG,EAAK,QADR,qBAEE,IAJJ,qBAKE,EACF,SAKE,SALF,CACE,QAAS,IAAM,IAAgB,EAAK,OAAO,EAC3C,UAAU,yCAFZ,SAIG,EAAK,WAJR,qBAKE,IAZJ,qBAaE,EAGD,EAAK,aACJ,SAGE,MAHF,UAGE,CAFA,SAA+E,KAA/E,CAAI,UAAU,oDAAd,6CAA+E,EAC/E,SAA2E,IAA3E,CAAG,UAAU,0CAAb,SAAwD,EAAK,aAA7D,qBAA2E,IAF7E,qBAGE,EAIJ,SAoBE,MApBF,CAAK,UAAU,iCAAf,SAoBE,CAnBA,SAGE,MAHF,UAGE,CAFA,SAAoC,OAApC,CAAM,UAAU,cAAhB,sCAAoC,EACpC,SAAuC,IAAvC,CAAG,UAAU,aAAb,SAA2B,EAAK,MAAhC,qBAAuC,IAFzC,qBAGE,EACF,SAGE,MAHF,UAGE,CAFA,SAAwC,OAAxC,CAAM,UAAU,cAAhB,0CAAwC,EACxC,SAAoB,IAApB,UAAI,EAAK,UAAT,qBAAoB,IAFtB,qBAGE,EACF,SAGE,MAHF,UAGE,CAFA,SAAsC,OAAtC,CAAM,UAAU,cAAhB,wCAAsC,EACtC,SAAyC,IAAzC,CAAG,UAAU,aAAb,SAA2B,EAAK,QAAhC,qBAAyC,IAF3C,qBAGE,EACD,EAAK,YACJ,SAIE,MAJF,UAIE,CAHA,SAA0C,OAA1C,CAAM,UAAU,cAAhB,4CAA0C,EAC1C,SAAkC,IAAlC,UAAI,EAAW,EAAK,UAAU,GAA9B,qBAAkC,EAClC,SAAuE,IAAvE,CAAG,UAAU,uCAAb,SAAqD,EAAK,YAA1D,qBAAuE,IAHzE,qBAIE,IAlBN,qBAoBE,EAGF,SA6BE,MA7BF,CAAK,UAAU,oBAAf,SA6BE,CA5BA,SAGE,MAHF,CAAK,UAAU,uBAAf,SAGE,CAFA,SAAuC,OAAvC,CAAM,UAAU,cAAhB,yCAAuC,EACvC,SAAoD,OAApD,UAAO,IAAI,KAAK,EAAK,UAAU,EAAE,eAAe,GAAhD,qBAAoD,IAFtD,qBAGE,EACD,EAAK,YACJ,SAGE,MAHF,CAAK,UAAU,uBAAf,SAGE,CAFA,SAAyC,OAAzC,CAAM,UAAU,cAAhB,2CAAyC,EACzC,SAAwE,OAAxE,CAAM,UAAU,iBAAhB,SAAkC,EAAmB,EAAK,UAAU,GAApE,qBAAwE,IAF1E,qBAGE,EAEH,EAAK,aACJ,SAGE,MAHF,CAAK,UAAU,uBAAf,SAGE,CAFA,SAAuC,OAAvC,CAAM,UAAU,cAAhB,yCAAuC,EACvC,SAAqD,OAArD,UAAO,IAAI,KAAK,EAAK,WAAW,EAAE,eAAe,GAAjD,qBAAqD,IAFvD,qBAGE,EAEH,EAAK,cACJ,SAGE,MAHF,CAAK,UAAU,uBAAf,SAGE,CAFA,SAAyC,OAAzC,CAAM,UAAU,cAAhB,2CAAyC,EACzC,SAAsD,OAAtD,UAAO,IAAI,KAAK,EAAK,YAAY,EAAE,eAAe,GAAlD,qBAAsD,IAFxD,qBAGE,EAEH,EAAK,UACJ,SAGE,MAHF,CAAK,UAAU,uBAAf,SAGE,CAFA,SAAwC,OAAxC,CAAM,UAAU,cAAhB,0CAAwC,EACxC,SAAsE,OAAtE,CAAM,UAAU,iBAAhB,SAAkC,EAAmB,EAAK,QAAQ,GAAlE,qBAAsE,IAFxE,qBAGE,IA3BN,qBA6BE,EAGD,EAAK,SAAW,UAAY,EAAK,OAChC,SAKE,MALF,CAAK,UAAU,UAAf,SAKE,CAJA,SAA0E,KAA1E,CAAI,UAAU,qDAAd,uCAA0E,EAC1E,SAEE,MAFF,CAAK,UAAU,qEAAf,SACE,SAAoF,MAApF,CAAK,UAAU,uDAAf,SAAuE,EAAK,OAA5E,qBAAoF,GADtF,qBAEE,IAJJ,qBAKE,EAIH,EAAK,SAAW,aAAe,EAAK,QACnC,SAOE,MAPF,CAAK,UAAU,UAAf,SAOE,CANA,SAA6E,KAA7E,CAAI,UAAU,uDAAd,wCAA6E,EAC7E,SAIE,MAJF,CAAK,UAAU,yEAAf,SACE,SAEE,MAFF,CAAK,UAAU,yDAAf,SACG,OAAO,EAAK,SAAW,SAAW,EAAK,OAAS,KAAK,UAAU,EAAK,OAAQ,KAAM,CAAC,GADtF,qBAEE,GAHJ,qBAIE,IANJ,qBAOE,EAIH,GAAW,CAAC,EAAK,YAChB,SAGE,MAHF,UAGE,CAFA,SAA8E,KAA9E,CAAI,UAAU,oDAAd,4CAA8E,EAC9E,SAA4D,MAA5D,CAAK,UAAU,sBAAf,uDAA4D,IAF9D,qBAGE,EAEH,EAAK,YAAc,EAAK,WAAW,OAAS,GAC3C,SAKE,MALF,UAKE,CAJA,SAEE,KAFF,CAAI,UAAU,oDAAd,SAEE,CAFF,eACe,EAAK,WAAW,OAD/B,iCAEE,EACF,SAAC,EAAD,CAAgB,WAAY,EAAK,YAAjC,qBAA6C,IAJ/C,qBAKE,IAnHN,qBAqHE,IA/HJ,qBAgIE,EAIC,SAAS,CAAc,EAAG,cAAoD,CACnF,IAAO,EAAU,GAAe,WAAsB,IAAI,GAAK,EAEzD,EAAa,CAAC,IAAe,CACjC,EAAY,KAAQ,CAClB,IAAM,EAAO,IAAI,IAAI,CAAI,EACzB,GAAI,EAAK,IAAI,CAAE,EACb,EAAK,OAAO,CAAE,EAEd,OAAK,IAAI,CAAE,EAEb,OAAO,EACR,GAGG,EAAa,CACjB,KAAM,CAAE,GAAI,iBAAkB,KAAM,gBAAiB,KAAM,eAAK,MAAO,MAAO,EAC9E,UAAW,CAAE,GAAI,mBAAoB,KAAM,kBAAmB,KAAM,eAAK,MAAO,WAAY,CAC9F,EAGM,EAAgB,CAAC,IAA6B,CAClD,IAAM,EAAU,EAAK,QAGrB,GAAI,OAAO,IAAY,SAAU,CAC/B,IAAM,EAAS,EAAQ,OAAS,IAC1B,EAAa,EAAS,IAAI,EAAK,EAAE,EAEvC,OACE,SAYE,MAZF,UAYE,CAXA,SAEE,IAFF,CAAG,UAAW,uDAAuD,CAAC,GAAc,EAAS,eAAiB,KAA9G,SACG,GADH,qBAEE,EACD,GACC,SAKE,SALF,CACE,QAAS,IAAM,EAAW,EAAK,EAAE,EACjC,UAAU,6CAFZ,SAIG,EAAa,YAAc,gBAJ9B,qBAKE,IAVN,qBAYE,EAKN,OACE,SAgEE,MAhEF,CAAK,UAAU,YAAf,SACG,EAAQ,IAAI,CAAC,EAAO,IAAQ,CAC3B,GAAI,EAAM,OAAS,WAAY,CAC7B,IAAM,EAAW,KAAK,UAAU,EAAM,MAAO,KAAM,CAAC,EAC9C,EAAS,EAAS,OAAS,IAC3B,EAAU,GAAG,EAAK,MAAM,IACxB,EAAa,EAAS,IAAI,CAAO,EAEvC,OACE,SAiBE,MAjBF,CAAe,UAAU,2DAAzB,SAiBE,CAhBA,SAIE,MAJF,CAAK,UAAU,+BAAf,SAIE,CAHA,SAAqC,OAArC,CAAM,UAAU,kBAAhB,8CAAqC,EACrC,SAAiE,OAAjE,CAAM,UAAU,sCAAhB,2CAAiE,EACjE,SAAoD,OAApD,CAAM,UAAU,sBAAhB,SAAuC,EAAM,MAA7C,qBAAoD,IAHtD,qBAIE,EACF,SAEE,MAFF,CAAK,UAAW,uCAAuC,CAAC,GAAc,EAAS,eAAiB,KAAhG,SACG,GADH,qBAEE,EACD,GACC,SAKE,SALF,CACE,QAAS,IAAM,EAAW,CAAO,EACjC,UAAU,6CAFZ,SAIG,EAAa,YAAc,gBAJ9B,qBAKE,IAfI,EAAV,cAiBE,EAIN,GAAI,EAAM,OAAS,cAAe,CAChC,IAAM,EAAU,EAAM,SAChB,EAAU,GAAG,EAAK,MAAM,IACxB,EAAa,EAAS,IAAI,CAAO,EACjC,EAAS,EAAM,QAAQ,OAAS,IAEtC,OACE,SAqBE,MArBF,CAEE,UAAW,GAAG,EAAU,kCAAoC,yDAF9D,SAqBE,CAjBA,SAKE,MALF,CAAK,UAAU,+BAAf,SAKE,CAJA,SAA6B,OAA7B,UAAO,EAAU,IAAK,gBAAtB,qBAA6B,EAC7B,SAEE,OAFF,CAAM,UAAW,uBAAuB,EAAU,eAAiB,kBAAnE,6CAEE,IAJJ,qBAKE,EACF,SAEE,MAFF,CAAK,UAAW,uEAAuE,CAAC,GAAc,EAAS,eAAiB,KAAhI,SACG,EAAM,SADT,qBAEE,EACD,GACC,SAKE,SALF,CACE,QAAS,IAAM,EAAW,CAAO,EACjC,UAAU,6CAFZ,SAIG,EAAa,YAAc,gBAJ9B,qBAKE,IAlBC,EADP,cAqBE,EAIN,OAAO,KACR,GA/DH,qBAgEE,GAIN,OACE,SAuBE,MAvBF,CAAK,UAAU,YAAf,SACG,EAAW,IAAI,CAAC,IAAS,CACxB,IAAM,EAAQ,EAAW,EAAK,OAAS,EAAW,UAElD,OACE,SAeE,MAfF,CAEE,UAAW,GAAG,EAAM,yDAFtB,SAeE,CAXA,SASE,MATF,CAAK,UAAU,+BAAf,SASE,CARA,SAAoB,OAApB,UAAO,EAAM,MAAb,qBAAoB,EACpB,SAAqE,OAArE,CAAM,UAAW,uBAAuB,EAAM,OAA9C,SAAuD,EAAM,OAA7D,qBAAqE,EACpE,EAAK,OACJ,SAAqD,OAArD,CAAM,UAAU,sBAAhB,SAAqD,CAArD,KAAwC,EAAK,QAA7C,qBAAqD,EAEvD,SAEE,OAFF,CAAM,UAAU,sBAAhB,SAEE,CAFF,KACI,IAAI,KAAK,EAAK,UAAU,EAAE,mBAAmB,IADjD,qBAEE,IARJ,qBASE,EACD,EAAc,CAAI,IAbd,EAAK,GADZ,cAeE,EAEL,GAtBH,qBAuBE,EAMN,IAAM,EAAY,CAAC,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,KAAK,EAE3D,SAAS,CAAU,CAAC,EAAsB,CAC/C,GAAI,CACF,IAAM,EAAQ,EAAK,KAAK,EAAE,MAAM,KAAK,EACrC,GAAI,EAAM,SAAW,EAAG,OAAO,EAC/B,IAAO,EAAQ,EAAM,EAAY,EAAO,GAAa,EAGrD,GAAI,EAAO,WAAW,IAAI,GAAK,IAAS,KAAO,IAAe,KAAO,IAAU,KAAO,IAAc,IAAK,CACvG,IAAM,EAAI,SAAS,EAAO,MAAM,CAAC,CAAC,EAClC,GAAI,IAAM,EAAG,MAAO,eACpB,MAAO,SAAS,YAIlB,GAAI,IAAW,KAAO,CAAC,EAAO,SAAS,GAAG,GAAK,IAAS,KAAO,IAAe,KAAO,IAAU,KAAO,IAAc,IAClH,MAAO,aAIT,GAAI,EAAK,WAAW,IAAI,GAAK,IAAe,KAAO,IAAU,KAAO,IAAc,IAAK,CACrF,IAAM,EAAI,SAAS,EAAK,MAAM,CAAC,CAAC,EAChC,GAAI,IAAM,EAAG,MAAO,aACpB,MAAO,SAAS,UAGlB,IAAM,EAAa,CAAC,EAAW,IAAsB,CACnD,IAAM,EAAK,SAAS,CAAC,EACf,EAAK,SAAS,CAAC,EACrB,GAAI,MAAM,CAAE,EAAG,MAAO,GACtB,IAAM,EAAO,GAAM,GAAK,KAAO,KAE/B,MAAO,GADK,IAAO,EAAI,GAAK,EAAK,GAAK,EAAK,GAAK,KAC/B,EAAG,SAAS,EAAE,SAAS,EAAG,GAAG,KAAK,KAGrD,GAAI,IAAS,KAAO,CAAC,EAAK,SAAS,GAAG,GAAK,IAAe,KAAO,IAAU,IAAK,CAC9E,IAAM,EAAU,EAAW,EAAM,CAAM,EAEvC,GAAI,IAAc,IAAK,MAAO,YAAY,IAE1C,IAAM,EAAO,EAAU,MAAM,GAAG,EAAE,IAAI,KAAK,CACzC,IAAM,EAAM,SAAS,EAAE,KAAK,CAAC,EAC7B,OAAO,EAAU,IAAQ,EAC1B,EAED,GAAI,EAAK,SAAW,EAAG,MAAO,YAAY,IAC1C,GAAI,EAAK,SAAW,GAAK,CAAC,EAAK,SAAS,KAAK,GAAK,CAAC,EAAK,SAAS,KAAK,EACpE,MAAO,eAAe,IAExB,GAAI,EAAK,SAAW,EAAG,MAAO,aAAa,EAAK,SAAS,IACzD,MAAO,GAAG,EAAK,KAAK,KAAK,QAAQ,IAGnC,OAAO,EACP,KAAM,CACN,OAAO,GAIJ,SAAS,CAAkB,CAAC,EAAyB,CAC1D,IAAM,EAAO,IAAI,KAAK,CAAO,EACvB,EAAM,IAAI,KACV,EAAS,EAAK,QAAQ,EAAI,EAAI,QAAQ,EACtC,EAAY,KAAK,IAAI,CAAM,EAC3B,EAAW,EAAS,EAEpB,EAAU,KAAK,MAAM,EAAY,KAAK,EACtC,EAAQ,KAAK,MAAM,EAAY,OAAO,EACtC,EAAO,KAAK,MAAM,EAAY,QAAQ,EAEtC,EAAU,EAAK,mBAAmB,CAAC,EAAG,CAAE,KAAM,UAAW,OAAQ,SAAU,CAAC,EAE5E,EAAU,EAAK,aAAa,IAAM,EAAI,aAAa,EACnD,EAAW,IAAI,KAAK,CAAG,EAC7B,EAAS,QAAQ,EAAS,QAAQ,EAAI,CAAC,EACvC,IAAM,EAAa,EAAK,aAAa,IAAM,EAAS,aAAa,EAC3D,EAAY,IAAI,KAAK,CAAG,EAC9B,EAAU,QAAQ,EAAU,QAAQ,EAAI,CAAC,EACzC,IAAM,EAAc,EAAK,aAAa,IAAM,EAAU,aAAa,EAEnE,GAAI,EAAS,CACX,GAAI,EAAU,EAAG,OAAO,EAAW,MAAQ,WAC3C,GAAI,EAAU,GAAI,OAAO,EAAW,MAAM,UAAgB,KAAa,GAAG,YAC1E,OAAO,EAAW,MAAM,OAAW,KAAa,GAAG,SAGrD,GAAI,EAAY,MAAO,eAAe,IACtC,GAAI,EAAa,MAAO,gBAAgB,IAExC,GAAI,EAAO,EAET,MAAO,GADS,EAAU,EAAK,OAAO,SACd,IAG1B,OAAO,EAAK,mBAAmB,CAAC,EAAG,CAAE,MAAO,QAAS,IAAK,SAAU,CAAC,EAAI,OAAO",
8
+ "debugId": "8FAAA8C9DC4BD64D64756E2164756E21",
9
+ "names": []
10
+ }
@@ -0,0 +1,3 @@
1
+ import{b as a}from"./App.1maqvamf.js";import"./App.myxqcj9x.js";import"./App.7fb3e7mp.js";import"./App.mc7xf85h.js";import"./App.7sy3wq8c.js";import"./App.3qw8nben.js";export{a as ConnectionsPage};
2
+
3
+ //# debugId=CAD556CD8F752CA664756E2164756E21
@@ -0,0 +1,3 @@
1
+ import{i as a}from"./App.2yjrh32f.js";import"./App.myxqcj9x.js";import"./App.7fb3e7mp.js";import"./App.mc7xf85h.js";import"./App.7sy3wq8c.js";import"./App.3qw8nben.js";export{a as McpPage};
2
+
3
+ //# debugId=5CDF90E5E35D1E2F64756E2164756E21
@@ -4,6 +4,6 @@
4
4
  "sourcesContent": [
5
5
  ],
6
6
  "mappings": "",
7
- "debugId": "A836402CCF3683F564756E2164756E21",
7
+ "debugId": "5CDF90E5E35D1E2F64756E2164756E21",
8
8
  "names": []
9
9
  }
@@ -0,0 +1,3 @@
1
+ import{c as a}from"./App.vc7vfhg4.js";import"./App.7fb3e7mp.js";import"./App.mc7xf85h.js";import"./App.7sy3wq8c.js";import"./App.3qw8nben.js";export{a as SettingsPage};
2
+
3
+ //# debugId=96AC58639A6F59EB64756E2164756E21
@@ -0,0 +1,3 @@
1
+ import{L as a}from"./App.nm91r1mp.js";import"./App.mc7xf85h.js";import"./App.7sy3wq8c.js";import"./App.3qw8nben.js";export{a as SkillsPage};
2
+
3
+ //# debugId=978D61F963804CD964756E2164756E21
@@ -0,0 +1,3 @@
1
+ import{d as a,e as b,f as c,g as d,h as e}from"./App.z4s9zkw5.js";import"./App.7fb3e7mp.js";import"./App.7sy3wq8c.js";import"./App.3qw8nben.js";export{e as formatRelativeTime,d as formatCron,c as TrajectoryView,a as TasksPage,b as TaskDetailPanel};
2
+
3
+ //# debugId=5CE043860ECD15A064756E2164756E21
@@ -4,6 +4,6 @@
4
4
  "sourcesContent": [
5
5
  ],
6
6
  "mappings": "",
7
- "debugId": "AE16487A5580EE3D64756E2164756E21",
7
+ "debugId": "5CE043860ECD15A064756E2164756E21",
8
8
  "names": []
9
9
  }
@@ -0,0 +1,3 @@
1
+ import{U as a}from"./App.apjrmctz.js";import"./App.7sy3wq8c.js";import"./App.01nq20st.js";import"./App.3qw8nben.js";export{a as TelemetryPage};
2
+
3
+ //# debugId=03BED515C9F1E45164756E2164756E21
@@ -0,0 +1,9 @@
1
+ {
2
+ "version": 3,
3
+ "sources": [],
4
+ "sourcesContent": [
5
+ ],
6
+ "mappings": "",
7
+ "debugId": "03BED515C9F1E45164756E2164756E21",
8
+ "names": []
9
+ }
@@ -0,0 +1,3 @@
1
+ import{M as a}from"./App.av6t2yhe.js";import"./App.mc7xf85h.js";import"./App.7sy3wq8c.js";import"./App.3qw8nben.js";export{a as TestsPage};
2
+
3
+ //# debugId=063BFD544599EBA364756E2164756E21
@@ -0,0 +1,3 @@
1
+ import{S as a}from"./App.jqj5a094.js";import"./App.01nq20st.js";import"./App.3qw8nben.js";export{a as ThreadsPage};
2
+
3
+ //# debugId=3CD9814CE3E4382864756E2164756E21
@@ -0,0 +1,9 @@
1
+ {
2
+ "version": 3,
3
+ "sources": [],
4
+ "sourcesContent": [
5
+ ],
6
+ "mappings": "",
7
+ "debugId": "3CD9814CE3E4382864756E2164756E21",
8
+ "names": []
9
+ }
package/dist/index.html CHANGED
@@ -11,6 +11,6 @@
11
11
  </head>
12
12
  <body>
13
13
  <div id="root"></div>
14
- <script type="module" src="/App.af2wg84v.js"></script>
14
+ <script type="module" src="/App.qcknavjz.js"></script>
15
15
  </body>
16
16
  </html>
package/dist/styles.css CHANGED
@@ -1 +1 @@
1
- *,:after,:before{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(59,130,246,.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(59,130,246,.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }/*! tailwindcss v3.4.19 | MIT License | https://tailwindcss.com*/*,:after,:before{box-sizing:border-box;border:0 solid #e5e7eb}:after,:before{--tw-content:""}:host,html{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:ui-sans-serif,system-ui,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{font-family:JetBrains Mono,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dd,dl,figure,h1,h2,h3,h4,h5,h6,hr,p,pre{margin:0}fieldset{margin:0}fieldset,legend{padding:0}menu,ol,ul{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}[role=button],button{cursor:pointer}:disabled{cursor:default}audio,canvas,embed,iframe,img,object,svg,video{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}.pointer-events-none{pointer-events:none}.visible{visibility:visible}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.sticky{position:sticky}.inset-0{inset:0}.inset-y-0{top:0;bottom:0}.-right-1{right:-.25rem}.-right-2{right:-.5rem}.-top-1{top:-.25rem}.-top-2{top:-.5rem}.bottom-0{bottom:0}.bottom-full{bottom:100%}.left-0{left:0}.left-0\.5{left:.125rem}.left-3{left:.75rem}.left-5{left:1.25rem}.right-0{right:0}.top-0{top:0}.top-0\.5{top:.125rem}.top-10{top:2.5rem}.top-full{top:100%}.z-10{z-index:10}.z-20{z-index:20}.z-40{z-index:40}.z-50{z-index:50}.z-\[9998\]{z-index:9998}.z-\[9999\]{z-index:9999}.col-span-2{grid-column:span 2/span 2}.mx-1\.5{margin-left:.375rem;margin-right:.375rem}.mx-4{margin-left:1rem;margin-right:1rem}.mx-auto{margin-left:auto;margin-right:auto}.my-0\.5{margin-top:.125rem;margin-bottom:.125rem}.my-1{margin-top:.25rem;margin-bottom:.25rem}.-mb-px{margin-bottom:-1px}.-ml-2{margin-left:-.5rem}.mb-0\.5{margin-bottom:.125rem}.mb-1{margin-bottom:.25rem}.mb-1\.5{margin-bottom:.375rem}.mb-2{margin-bottom:.5rem}.mb-3{margin-bottom:.75rem}.mb-4{margin-bottom:1rem}.mb-6{margin-bottom:1.5rem}.mb-8{margin-bottom:2rem}.ml-0\.5{margin-left:.125rem}.ml-1{margin-left:.25rem}.ml-2{margin-left:.5rem}.ml-3{margin-left:.75rem}.ml-4{margin-left:1rem}.ml-auto{margin-left:auto}.mr-2{margin-right:.5rem}.mt-0\.5{margin-top:.125rem}.mt-1{margin-top:.25rem}.mt-1\.5{margin-top:.375rem}.mt-2{margin-top:.5rem}.mt-3{margin-top:.75rem}.mt-4{margin-top:1rem}.mt-5{margin-top:1.25rem}.mt-6{margin-top:1.5rem}.mt-8{margin-top:2rem}.mt-auto{margin-top:auto}.line-clamp-1{-webkit-line-clamp:1}.line-clamp-1,.line-clamp-2{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical}.line-clamp-2{-webkit-line-clamp:2}.line-clamp-3{-webkit-line-clamp:3}.line-clamp-3,.line-clamp-4{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical}.line-clamp-4{-webkit-line-clamp:4}.block{display:block}.inline-block{display:inline-block}.inline{display:inline}.flex{display:flex}.inline-flex{display:inline-flex}.table{display:table}.grid{display:grid}.contents{display:contents}.hidden{display:none}.aspect-square{aspect-ratio:1/1}.aspect-video{aspect-ratio:16/9}.h-0\.5{height:.125rem}.h-1\.5{height:.375rem}.h-1\/2{height:50%}.h-1\/3{height:33.333333%}.h-10{height:2.5rem}.h-12{height:3rem}.h-16{height:4rem}.h-2{height:.5rem}.h-2\.5{height:.625rem}.h-2\/3{height:66.666667%}.h-20{height:5rem}.h-24{height:6rem}.h-3{height:.75rem}.h-3\.5{height:.875rem}.h-3\/4{height:75%}.h-32{height:8rem}.h-4{height:1rem}.h-40{height:10rem}.h-48{height:12rem}.h-5{height:1.25rem}.h-6{height:1.5rem}.h-7{height:1.75rem}.h-8{height:2rem}.h-9{height:2.25rem}.h-auto{height:auto}.h-full{height:100%}.h-screen{height:100vh}.max-h-32{max-height:8rem}.max-h-60{max-height:15rem}.max-h-64{max-height:16rem}.max-h-96{max-height:24rem}.max-h-\[150px\]{max-height:150px}.max-h-\[200px\]{max-height:200px}.max-h-\[500px\]{max-height:500px}.max-h-\[60vh\]{max-height:60vh}.max-h-\[80vh\]{max-height:80vh}.max-h-\[90vh\]{max-height:90vh}.max-h-\[calc\(80vh-180px\)\]{max-height:calc(80vh - 180px)}.min-h-0{min-height:0}.min-h-screen{min-height:100vh}.w-1\.5{width:.375rem}.w-1\/2{width:50%}.w-1\/3{width:33.333333%}.w-1\/4{width:25%}.w-10{width:2.5rem}.w-12{width:3rem}.w-14{width:3.5rem}.w-16{width:4rem}.w-2{width:.5rem}.w-2\.5{width:.625rem}.w-2\/3{width:66.666667%}.w-20{width:5rem}.w-24{width:6rem}.w-3{width:.75rem}.w-3\.5{width:.875rem}.w-3\/4{width:75%}.w-36{width:9rem}.w-4{width:1rem}.w-44{width:11rem}.w-48{width:12rem}.w-5{width:1.25rem}.w-5\/6{width:83.333333%}.w-56{width:14rem}.w-6{width:1.5rem}.w-64{width:16rem}.w-8{width:2rem}.w-80{width:20rem}.w-9{width:2.25rem}.w-\[480px\]{width:480px}.w-fit{width:-moz-fit-content;width:fit-content}.w-full{width:100%}.min-w-0{min-width:0}.min-w-\[200px\]{min-width:200px}.min-w-max{min-width:-moz-max-content;min-width:max-content}.max-w-2xl{max-width:42rem}.max-w-3xl{max-width:48rem}.max-w-4xl{max-width:56rem}.max-w-6xl{max-width:72rem}.max-w-7xl{max-width:80rem}.max-w-\[120px\]{max-width:120px}.max-w-\[150px\]{max-width:150px}.max-w-\[180px\]{max-width:180px}.max-w-full{max-width:100%}.max-w-lg{max-width:32rem}.max-w-md{max-width:28rem}.max-w-none{max-width:none}.max-w-sm{max-width:24rem}.max-w-xl{max-width:36rem}.flex-1{flex:1 1 0%}.flex-\[2\]{flex:2}.flex-\[3\]{flex:3}.flex-shrink-0,.shrink-0{flex-shrink:0}.-translate-x-full{--tw-translate-x:-100%}.-translate-x-full,.translate-x-0{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-x-0{--tw-translate-x:0px}.translate-x-0\.5{--tw-translate-x:0.125rem}.translate-x-0\.5,.translate-x-5{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-x-5{--tw-translate-x:1.25rem}.rotate-180{--tw-rotate:180deg}.rotate-180,.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}@keyframes pulse{50%{opacity:.5}}.animate-pulse{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}@keyframes spin{to{transform:rotate(1turn)}}.animate-spin{animation:spin 1s linear infinite}.cursor-not-allowed{cursor:not-allowed}.cursor-pointer{cursor:pointer}.cursor-text{cursor:text}.cursor-wait{cursor:wait}.select-all{-webkit-user-select:all;-moz-user-select:all;user-select:all}.resize-none{resize:none}.resize-y{resize:vertical}.resize{resize:both}.list-disc{list-style-type:disc}.columns-1{-moz-columns:1;column-count:1}.auto-rows-fr{grid-auto-rows:minmax(0,1fr)}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.flex-row{flex-direction:row}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-start{align-items:flex-start}.items-end{align-items:flex-end}.items-center{align-items:center}.items-stretch{align-items:stretch}.justify-end{justify-content:flex-end}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-0{gap:0}.gap-0\.5{gap:.125rem}.gap-1{gap:.25rem}.gap-1\.5{gap:.375rem}.gap-2{gap:.5rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.gap-6{gap:1.5rem}.gap-x-3{-moz-column-gap:.75rem;column-gap:.75rem}.gap-x-4{-moz-column-gap:1rem;column-gap:1rem}.gap-y-1{row-gap:.25rem}.space-y-0\.5>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(.125rem*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.125rem*var(--tw-space-y-reverse))}.space-y-1>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(.25rem*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.25rem*var(--tw-space-y-reverse))}.space-y-10>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(2.5rem*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(2.5rem*var(--tw-space-y-reverse))}.space-y-2>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(.5rem*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.5rem*var(--tw-space-y-reverse))}.space-y-2\.5>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(.625rem*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.625rem*var(--tw-space-y-reverse))}.space-y-3>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(.75rem*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.75rem*var(--tw-space-y-reverse))}.space-y-4>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(1rem*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1rem*var(--tw-space-y-reverse))}.space-y-6>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(1.5rem*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1.5rem*var(--tw-space-y-reverse))}.divide-y>:not([hidden])~:not([hidden]){--tw-divide-y-reverse:0;border-top-width:calc(1px*(1 - var(--tw-divide-y-reverse)));border-bottom-width:calc(1px*var(--tw-divide-y-reverse))}.divide-\[\#1a1a1a\]>:not([hidden])~:not([hidden]){--tw-divide-opacity:1;border-color:rgb(26 26 26/var(--tw-divide-opacity,1))}.self-end{align-self:flex-end}.overflow-auto{overflow:auto}.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.overflow-y-auto{overflow-y:auto}.truncate{overflow:hidden;text-overflow:ellipsis}.truncate,.whitespace-nowrap{white-space:nowrap}.whitespace-pre-line{white-space:pre-line}.whitespace-pre-wrap{white-space:pre-wrap}.break-words{overflow-wrap:break-word}.break-all{word-break:break-all}.rounded{border-radius:.25rem}.rounded-2xl{border-radius:1rem}.rounded-full{border-radius:9999px}.rounded-lg{border-radius:.5rem}.rounded-xl{border-radius:.75rem}.rounded-t{border-top-left-radius:.25rem;border-top-right-radius:.25rem}.border{border-width:1px}.border-2{border-width:2px}.border-b{border-bottom-width:1px}.border-b-2{border-bottom-width:2px}.border-l{border-left-width:1px}.border-r{border-right-width:1px}.border-t{border-top-width:1px}.border-dashed{border-style:dashed}.border-none{border-style:none}.border-\[\#1a1a1a\]{--tw-border-opacity:1;border-color:rgb(26 26 26/var(--tw-border-opacity,1))}.border-\[\#222\]{--tw-border-opacity:1;border-color:rgb(34 34 34/var(--tw-border-opacity,1))}.border-\[\#333\]{--tw-border-opacity:1;border-color:rgb(51 51 51/var(--tw-border-opacity,1))}.border-\[\#f97316\]{--tw-border-opacity:1;border-color:rgb(249 115 22/var(--tw-border-opacity,1))}.border-\[\#f97316\]\/20{border-color:rgba(249,115,22,.2)}.border-\[\#f97316\]\/30{border-color:rgba(249,115,22,.3)}.border-amber-300{--tw-border-opacity:1;border-color:rgb(252 211 77/var(--tw-border-opacity,1))}.border-amber-400{--tw-border-opacity:1;border-color:rgb(251 191 36/var(--tw-border-opacity,1))}.border-amber-500\/30{border-color:rgba(245,158,11,.3)}.border-blue-200{--tw-border-opacity:1;border-color:rgb(191 219 254/var(--tw-border-opacity,1))}.border-blue-300{--tw-border-opacity:1;border-color:rgb(147 197 253/var(--tw-border-opacity,1))}.border-blue-400{--tw-border-opacity:1;border-color:rgb(96 165 250/var(--tw-border-opacity,1))}.border-blue-500{--tw-border-opacity:1;border-color:rgb(59 130 246/var(--tw-border-opacity,1))}.border-blue-500\/30{border-color:rgba(59,130,246,.3)}.border-cyan-300{--tw-border-opacity:1;border-color:rgb(103 232 249/var(--tw-border-opacity,1))}.border-cyan-500\/30{border-color:rgba(6,182,212,.3)}.border-emerald-300{--tw-border-opacity:1;border-color:rgb(110 231 183/var(--tw-border-opacity,1))}.border-emerald-400{--tw-border-opacity:1;border-color:rgb(52 211 153/var(--tw-border-opacity,1))}.border-gray-500\/30{border-color:hsla(220,9%,46%,.3)}.border-green-200{--tw-border-opacity:1;border-color:rgb(187 247 208/var(--tw-border-opacity,1))}.border-green-400{--tw-border-opacity:1;border-color:rgb(74 222 128/var(--tw-border-opacity,1))}.border-green-500{--tw-border-opacity:1;border-color:rgb(34 197 94/var(--tw-border-opacity,1))}.border-green-500\/20{border-color:rgba(34,197,94,.2)}.border-green-500\/30{border-color:rgba(34,197,94,.3)}.border-indigo-300{--tw-border-opacity:1;border-color:rgb(165 180 252/var(--tw-border-opacity,1))}.border-neutral-200{--tw-border-opacity:1;border-color:rgb(229 229 229/var(--tw-border-opacity,1))}.border-neutral-300{--tw-border-opacity:1;border-color:rgb(212 212 212/var(--tw-border-opacity,1))}.border-neutral-700{--tw-border-opacity:1;border-color:rgb(64 64 64/var(--tw-border-opacity,1))}.border-neutral-900{--tw-border-opacity:1;border-color:rgb(23 23 23/var(--tw-border-opacity,1))}.border-orange-300{--tw-border-opacity:1;border-color:rgb(253 186 116/var(--tw-border-opacity,1))}.border-orange-500\/20{border-color:rgba(249,115,22,.2)}.border-orange-500\/30{border-color:rgba(249,115,22,.3)}.border-pink-500\/30{border-color:rgba(236,72,153,.3)}.border-purple-300{--tw-border-opacity:1;border-color:rgb(216 180 254/var(--tw-border-opacity,1))}.border-purple-500\/30{border-color:rgba(168,85,247,.3)}.border-red-200{--tw-border-opacity:1;border-color:rgb(254 202 202/var(--tw-border-opacity,1))}.border-red-400{--tw-border-opacity:1;border-color:rgb(248 113 113/var(--tw-border-opacity,1))}.border-red-500{--tw-border-opacity:1;border-color:rgb(239 68 68/var(--tw-border-opacity,1))}.border-red-500\/20{border-color:rgba(239,68,68,.2)}.border-red-500\/30{border-color:rgba(239,68,68,.3)}.border-rose-300{--tw-border-opacity:1;border-color:rgb(253 164 175/var(--tw-border-opacity,1))}.border-teal-500\/20{border-color:rgba(20,184,166,.2)}.border-transparent{border-color:transparent}.border-yellow-300{--tw-border-opacity:1;border-color:rgb(253 224 71/var(--tw-border-opacity,1))}.border-yellow-500\/20{border-color:rgba(234,179,8,.2)}.border-yellow-500\/30{border-color:rgba(234,179,8,.3)}.border-t-blue-500{--tw-border-opacity:1;border-top-color:rgb(59 130 246/var(--tw-border-opacity,1))}.border-t-transparent{border-top-color:transparent}.bg-\[\#0a0a0a\]{--tw-bg-opacity:1;background-color:rgb(10 10 10/var(--tw-bg-opacity,1))}.bg-\[\#0d0d0d\]{--tw-bg-opacity:1;background-color:rgb(13 13 13/var(--tw-bg-opacity,1))}.bg-\[\#0f0f0f\]{--tw-bg-opacity:1;background-color:rgb(15 15 15/var(--tw-bg-opacity,1))}.bg-\[\#111\]{--tw-bg-opacity:1;background-color:rgb(17 17 17/var(--tw-bg-opacity,1))}.bg-\[\#151515\]{--tw-bg-opacity:1;background-color:rgb(21 21 21/var(--tw-bg-opacity,1))}.bg-\[\#1a1a1a\]{--tw-bg-opacity:1;background-color:rgb(26 26 26/var(--tw-bg-opacity,1))}.bg-\[\#1a1a2a\]{--tw-bg-opacity:1;background-color:rgb(26 26 42/var(--tw-bg-opacity,1))}.bg-\[\#1a2a1a\]{--tw-bg-opacity:1;background-color:rgb(26 42 26/var(--tw-bg-opacity,1))}.bg-\[\#222\]{--tw-bg-opacity:1;background-color:rgb(34 34 34/var(--tw-bg-opacity,1))}.bg-\[\#333\]{--tw-bg-opacity:1;background-color:rgb(51 51 51/var(--tw-bg-opacity,1))}.bg-\[\#3b82f6\]{--tw-bg-opacity:1;background-color:rgb(59 130 246/var(--tw-bg-opacity,1))}.bg-\[\#3b82f6\]\/20{background-color:rgba(59,130,246,.2)}.bg-\[\#444\]{--tw-bg-opacity:1;background-color:rgb(68 68 68/var(--tw-bg-opacity,1))}.bg-\[\#555\]{--tw-bg-opacity:1;background-color:rgb(85 85 85/var(--tw-bg-opacity,1))}.bg-\[\#666\]{--tw-bg-opacity:1;background-color:rgb(102 102 102/var(--tw-bg-opacity,1))}.bg-\[\#888\]{--tw-bg-opacity:1;background-color:rgb(136 136 136/var(--tw-bg-opacity,1))}.bg-\[\#f97316\]{--tw-bg-opacity:1;background-color:rgb(249 115 22/var(--tw-bg-opacity,1))}.bg-\[\#f97316\]\/10{background-color:rgba(249,115,22,.1)}.bg-\[\#f97316\]\/20{background-color:rgba(249,115,22,.2)}.bg-\[\#f97316\]\/5{background-color:rgba(249,115,22,.05)}.bg-amber-100{--tw-bg-opacity:1;background-color:rgb(254 243 199/var(--tw-bg-opacity,1))}.bg-amber-500{--tw-bg-opacity:1;background-color:rgb(245 158 11/var(--tw-bg-opacity,1))}.bg-amber-900\/50{background-color:rgba(120,53,15,.5)}.bg-black\/20{background-color:rgba(0,0,0,.2)}.bg-black\/40{background-color:rgba(0,0,0,.4)}.bg-black\/50{background-color:rgba(0,0,0,.5)}.bg-black\/60{background-color:rgba(0,0,0,.6)}.bg-black\/70{background-color:rgba(0,0,0,.7)}.bg-blue-100{--tw-bg-opacity:1;background-color:rgb(219 234 254/var(--tw-bg-opacity,1))}.bg-blue-50{--tw-bg-opacity:1;background-color:rgb(239 246 255/var(--tw-bg-opacity,1))}.bg-blue-500{--tw-bg-opacity:1;background-color:rgb(59 130 246/var(--tw-bg-opacity,1))}.bg-blue-500\/10{background-color:rgba(59,130,246,.1)}.bg-blue-500\/20{background-color:rgba(59,130,246,.2)}.bg-blue-600{--tw-bg-opacity:1;background-color:rgb(37 99 235/var(--tw-bg-opacity,1))}.bg-blue-900\/50{background-color:rgba(30,58,138,.5)}.bg-current{background-color:currentColor}.bg-cyan-100{--tw-bg-opacity:1;background-color:rgb(207 250 254/var(--tw-bg-opacity,1))}.bg-cyan-400{--tw-bg-opacity:1;background-color:rgb(34 211 238/var(--tw-bg-opacity,1))}.bg-cyan-500\/10{background-color:rgba(6,182,212,.1)}.bg-cyan-500\/20{background-color:rgba(6,182,212,.2)}.bg-cyan-900\/50{background-color:rgba(22,78,99,.5)}.bg-emerald-100{--tw-bg-opacity:1;background-color:rgb(209 250 229/var(--tw-bg-opacity,1))}.bg-gray-500\/20{background-color:hsla(220,9%,46%,.2)}.bg-green-400{--tw-bg-opacity:1;background-color:rgb(74 222 128/var(--tw-bg-opacity,1))}.bg-green-50{--tw-bg-opacity:1;background-color:rgb(240 253 244/var(--tw-bg-opacity,1))}.bg-green-500{--tw-bg-opacity:1;background-color:rgb(34 197 94/var(--tw-bg-opacity,1))}.bg-green-500\/10{background-color:rgba(34,197,94,.1)}.bg-green-500\/20{background-color:rgba(34,197,94,.2)}.bg-green-500\/5{background-color:rgba(34,197,94,.05)}.bg-green-900\/50{background-color:rgba(20,83,45,.5)}.bg-indigo-100{--tw-bg-opacity:1;background-color:rgb(224 231 255/var(--tw-bg-opacity,1))}.bg-neutral-100{--tw-bg-opacity:1;background-color:rgb(245 245 245/var(--tw-bg-opacity,1))}.bg-neutral-200{--tw-bg-opacity:1;background-color:rgb(229 229 229/var(--tw-bg-opacity,1))}.bg-neutral-300{--tw-bg-opacity:1;background-color:rgb(212 212 212/var(--tw-bg-opacity,1))}.bg-neutral-50{--tw-bg-opacity:1;background-color:rgb(250 250 250/var(--tw-bg-opacity,1))}.bg-neutral-50\/50{background-color:hsla(0,0%,98%,.5)}.bg-neutral-500{--tw-bg-opacity:1;background-color:rgb(115 115 115/var(--tw-bg-opacity,1))}.bg-neutral-800{--tw-bg-opacity:1;background-color:rgb(38 38 38/var(--tw-bg-opacity,1))}.bg-neutral-900{--tw-bg-opacity:1;background-color:rgb(23 23 23/var(--tw-bg-opacity,1))}.bg-orange-100{--tw-bg-opacity:1;background-color:rgb(255 237 213/var(--tw-bg-opacity,1))}.bg-orange-500\/10{background-color:rgba(249,115,22,.1)}.bg-orange-500\/20{background-color:rgba(249,115,22,.2)}.bg-pink-500\/20{background-color:rgba(236,72,153,.2)}.bg-purple-100{--tw-bg-opacity:1;background-color:rgb(243 232 255/var(--tw-bg-opacity,1))}.bg-purple-500{--tw-bg-opacity:1;background-color:rgb(168 85 247/var(--tw-bg-opacity,1))}.bg-purple-500\/10{background-color:rgba(168,85,247,.1)}.bg-purple-500\/20{background-color:rgba(168,85,247,.2)}.bg-purple-900\/50{background-color:rgba(88,28,135,.5)}.bg-red-100{--tw-bg-opacity:1;background-color:rgb(254 226 226/var(--tw-bg-opacity,1))}.bg-red-400{--tw-bg-opacity:1;background-color:rgb(248 113 113/var(--tw-bg-opacity,1))}.bg-red-50{--tw-bg-opacity:1;background-color:rgb(254 242 242/var(--tw-bg-opacity,1))}.bg-red-500{--tw-bg-opacity:1;background-color:rgb(239 68 68/var(--tw-bg-opacity,1))}.bg-red-500\/10{background-color:rgba(239,68,68,.1)}.bg-red-500\/20{background-color:rgba(239,68,68,.2)}.bg-red-900\/50{background-color:rgba(127,29,29,.5)}.bg-rose-100{--tw-bg-opacity:1;background-color:rgb(255 228 230/var(--tw-bg-opacity,1))}.bg-teal-500\/10{background-color:rgba(20,184,166,.1)}.bg-transparent{background-color:transparent}.bg-white{--tw-bg-opacity:1;background-color:rgb(255 255 255/var(--tw-bg-opacity,1))}.bg-yellow-50{--tw-bg-opacity:1;background-color:rgb(254 252 232/var(--tw-bg-opacity,1))}.bg-yellow-500\/10{background-color:rgba(234,179,8,.1)}.bg-yellow-500\/20{background-color:rgba(234,179,8,.2)}.bg-yellow-900\/50{background-color:rgba(113,63,18,.5)}.object-contain{-o-object-fit:contain;object-fit:contain}.object-cover{-o-object-fit:cover;object-fit:cover}.p-0{padding:0}.p-0\.5{padding:.125rem}.p-1{padding:.25rem}.p-2{padding:.5rem}.p-2\.5{padding:.625rem}.p-3{padding:.75rem}.p-4{padding:1rem}.p-5{padding:1.25rem}.p-6{padding:1.5rem}.p-8{padding:2rem}.px-1{padding-left:.25rem;padding-right:.25rem}.px-1\.5{padding-left:.375rem;padding-right:.375rem}.px-2{padding-left:.5rem;padding-right:.5rem}.px-2\.5{padding-left:.625rem;padding-right:.625rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-4{padding-left:1rem;padding-right:1rem}.px-6{padding-left:1.5rem;padding-right:1.5rem}.py-0\.5{padding-top:.125rem;padding-bottom:.125rem}.py-1{padding-top:.25rem;padding-bottom:.25rem}.py-1\.5{padding-top:.375rem;padding-bottom:.375rem}.py-10{padding-top:2.5rem;padding-bottom:2.5rem}.py-12{padding-top:3rem;padding-bottom:3rem}.py-16{padding-top:4rem;padding-bottom:4rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.py-2\.5{padding-top:.625rem;padding-bottom:.625rem}.py-20{padding-top:5rem;padding-bottom:5rem}.py-3{padding-top:.75rem;padding-bottom:.75rem}.py-4{padding-top:1rem;padding-bottom:1rem}.py-6{padding-top:1.5rem;padding-bottom:1.5rem}.py-8{padding-top:2rem;padding-bottom:2rem}.pb-1{padding-bottom:.25rem}.pb-2{padding-bottom:.5rem}.pb-4{padding-bottom:1rem}.pr-2{padding-right:.5rem}.pt-1{padding-top:.25rem}.pt-3{padding-top:.75rem}.pt-6{padding-top:1.5rem}.text-left{text-align:left}.text-center{text-align:center}.text-right{text-align:right}.font-mono{font-family:JetBrains Mono,monospace}.\!text-2xl{font-size:1.5rem!important;line-height:2rem!important}.\!text-base{font-size:1rem!important;line-height:1.5rem!important}.\!text-lg{font-size:1.125rem!important;line-height:1.75rem!important}.\!text-sm{font-size:.875rem!important;line-height:1.25rem!important}.\!text-xl{font-size:1.25rem!important;line-height:1.75rem!important}.\!text-xs{font-size:.75rem!important;line-height:1rem!important}.text-2xl{font-size:1.5rem;line-height:2rem}.text-3xl{font-size:1.875rem;line-height:2.25rem}.text-4xl{font-size:2.25rem;line-height:2.5rem}.text-\[10px\]{font-size:10px}.text-\[11px\]{font-size:11px}.text-\[8px\]{font-size:8px}.text-base{font-size:1rem;line-height:1.5rem}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xl{font-size:1.25rem;line-height:1.75rem}.text-xs{font-size:.75rem;line-height:1rem}.font-bold{font-weight:700}.font-medium{font-weight:500}.font-semibold{font-weight:600}.uppercase{text-transform:uppercase}.lowercase{text-transform:lowercase}.capitalize{text-transform:capitalize}.leading-none{line-height:1}.leading-relaxed{line-height:1.625}.leading-snug{line-height:1.375}.tracking-wider{letter-spacing:.05em}.\!text-amber-700{--tw-text-opacity:1!important;color:rgb(180 83 9/var(--tw-text-opacity,1))!important}.\!text-blue-500{--tw-text-opacity:1!important;color:rgb(59 130 246/var(--tw-text-opacity,1))!important}.\!text-blue-600{--tw-text-opacity:1!important;color:rgb(37 99 235/var(--tw-text-opacity,1))!important}.\!text-blue-700{--tw-text-opacity:1!important;color:rgb(29 78 216/var(--tw-text-opacity,1))!important}.\!text-cyan-700{--tw-text-opacity:1!important;color:rgb(14 116 144/var(--tw-text-opacity,1))!important}.\!text-emerald-700{--tw-text-opacity:1!important;color:rgb(4 120 87/var(--tw-text-opacity,1))!important}.\!text-indigo-700{--tw-text-opacity:1!important;color:rgb(67 56 202/var(--tw-text-opacity,1))!important}.\!text-neutral-400{--tw-text-opacity:1!important;color:rgb(163 163 163/var(--tw-text-opacity,1))!important}.\!text-neutral-500{--tw-text-opacity:1!important;color:rgb(115 115 115/var(--tw-text-opacity,1))!important}.\!text-neutral-600{--tw-text-opacity:1!important;color:rgb(82 82 82/var(--tw-text-opacity,1))!important}.\!text-neutral-700{--tw-text-opacity:1!important;color:rgb(64 64 64/var(--tw-text-opacity,1))!important}.\!text-neutral-800{--tw-text-opacity:1!important;color:rgb(38 38 38/var(--tw-text-opacity,1))!important}.\!text-neutral-900{--tw-text-opacity:1!important;color:rgb(23 23 23/var(--tw-text-opacity,1))!important}.\!text-orange-700{--tw-text-opacity:1!important;color:rgb(194 65 12/var(--tw-text-opacity,1))!important}.\!text-purple-700{--tw-text-opacity:1!important;color:rgb(126 34 206/var(--tw-text-opacity,1))!important}.\!text-red-600{--tw-text-opacity:1!important;color:rgb(220 38 38/var(--tw-text-opacity,1))!important}.\!text-red-700{--tw-text-opacity:1!important;color:rgb(185 28 28/var(--tw-text-opacity,1))!important}.\!text-rose-700{--tw-text-opacity:1!important;color:rgb(190 18 60/var(--tw-text-opacity,1))!important}.\!text-white{--tw-text-opacity:1!important;color:rgb(255 255 255/var(--tw-text-opacity,1))!important}.text-\[\#333\]{--tw-text-opacity:1;color:rgb(51 51 51/var(--tw-text-opacity,1))}.text-\[\#3b82f6\]{--tw-text-opacity:1;color:rgb(59 130 246/var(--tw-text-opacity,1))}.text-\[\#444\]{--tw-text-opacity:1;color:rgb(68 68 68/var(--tw-text-opacity,1))}.text-\[\#555\]{--tw-text-opacity:1;color:rgb(85 85 85/var(--tw-text-opacity,1))}.text-\[\#666\]{--tw-text-opacity:1;color:rgb(102 102 102/var(--tw-text-opacity,1))}.text-\[\#6a6\]{--tw-text-opacity:1;color:rgb(102 170 102/var(--tw-text-opacity,1))}.text-\[\#888\]{--tw-text-opacity:1;color:rgb(136 136 136/var(--tw-text-opacity,1))}.text-\[\#aaa\]{--tw-text-opacity:1;color:rgb(170 170 170/var(--tw-text-opacity,1))}.text-\[\#ccc\]{--tw-text-opacity:1;color:rgb(204 204 204/var(--tw-text-opacity,1))}.text-\[\#e0e0e0\]{--tw-text-opacity:1;color:rgb(224 224 224/var(--tw-text-opacity,1))}.text-\[\#f97316\]{--tw-text-opacity:1;color:rgb(249 115 22/var(--tw-text-opacity,1))}.text-\[\#f97316\]\/70{color:rgba(249,115,22,.7)}.text-amber-400{--tw-text-opacity:1;color:rgb(251 191 36/var(--tw-text-opacity,1))}.text-amber-600{--tw-text-opacity:1;color:rgb(217 119 6/var(--tw-text-opacity,1))}.text-black{--tw-text-opacity:1;color:rgb(0 0 0/var(--tw-text-opacity,1))}.text-blue-400{--tw-text-opacity:1;color:rgb(96 165 250/var(--tw-text-opacity,1))}.text-blue-500{--tw-text-opacity:1;color:rgb(59 130 246/var(--tw-text-opacity,1))}.text-blue-600{--tw-text-opacity:1;color:rgb(37 99 235/var(--tw-text-opacity,1))}.text-blue-700{--tw-text-opacity:1;color:rgb(29 78 216/var(--tw-text-opacity,1))}.text-blue-800{--tw-text-opacity:1;color:rgb(30 64 175/var(--tw-text-opacity,1))}.text-cyan-400{--tw-text-opacity:1;color:rgb(34 211 238/var(--tw-text-opacity,1))}.text-cyan-600{--tw-text-opacity:1;color:rgb(8 145 178/var(--tw-text-opacity,1))}.text-emerald-500{--tw-text-opacity:1;color:rgb(16 185 129/var(--tw-text-opacity,1))}.text-emerald-600{--tw-text-opacity:1;color:rgb(5 150 105/var(--tw-text-opacity,1))}.text-gray-400{--tw-text-opacity:1;color:rgb(156 163 175/var(--tw-text-opacity,1))}.text-green-400{--tw-text-opacity:1;color:rgb(74 222 128/var(--tw-text-opacity,1))}.text-green-600{--tw-text-opacity:1;color:rgb(22 163 74/var(--tw-text-opacity,1))}.text-green-700{--tw-text-opacity:1;color:rgb(21 128 61/var(--tw-text-opacity,1))}.text-green-800{--tw-text-opacity:1;color:rgb(22 101 52/var(--tw-text-opacity,1))}.text-indigo-600{--tw-text-opacity:1;color:rgb(79 70 229/var(--tw-text-opacity,1))}.text-neutral-400{--tw-text-opacity:1;color:rgb(163 163 163/var(--tw-text-opacity,1))}.text-neutral-500{--tw-text-opacity:1;color:rgb(115 115 115/var(--tw-text-opacity,1))}.text-neutral-600{--tw-text-opacity:1;color:rgb(82 82 82/var(--tw-text-opacity,1))}.text-neutral-700{--tw-text-opacity:1;color:rgb(64 64 64/var(--tw-text-opacity,1))}.text-neutral-800{--tw-text-opacity:1;color:rgb(38 38 38/var(--tw-text-opacity,1))}.text-neutral-900{--tw-text-opacity:1;color:rgb(23 23 23/var(--tw-text-opacity,1))}.text-orange-400{--tw-text-opacity:1;color:rgb(251 146 60/var(--tw-text-opacity,1))}.text-pink-400{--tw-text-opacity:1;color:rgb(244 114 182/var(--tw-text-opacity,1))}.text-purple-400{--tw-text-opacity:1;color:rgb(192 132 252/var(--tw-text-opacity,1))}.text-purple-600{--tw-text-opacity:1;color:rgb(147 51 234/var(--tw-text-opacity,1))}.text-red-300{--tw-text-opacity:1;color:rgb(252 165 165/var(--tw-text-opacity,1))}.text-red-400{--tw-text-opacity:1;color:rgb(248 113 113/var(--tw-text-opacity,1))}.text-red-400\/70{color:hsla(0,91%,71%,.7)}.text-red-500{--tw-text-opacity:1;color:rgb(239 68 68/var(--tw-text-opacity,1))}.text-red-600{--tw-text-opacity:1;color:rgb(220 38 38/var(--tw-text-opacity,1))}.text-red-700{--tw-text-opacity:1;color:rgb(185 28 28/var(--tw-text-opacity,1))}.text-red-800{--tw-text-opacity:1;color:rgb(153 27 27/var(--tw-text-opacity,1))}.text-teal-400{--tw-text-opacity:1;color:rgb(45 212 191/var(--tw-text-opacity,1))}.text-white{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1))}.text-yellow-400{--tw-text-opacity:1;color:rgb(250 204 21/var(--tw-text-opacity,1))}.text-yellow-400\/80{color:rgba(250,204,21,.8)}.text-yellow-500{--tw-text-opacity:1;color:rgb(234 179 8/var(--tw-text-opacity,1))}.text-yellow-800{--tw-text-opacity:1;color:rgb(133 77 14/var(--tw-text-opacity,1))}.line-through{text-decoration-line:line-through}.placeholder-\[\#444\]::-moz-placeholder{--tw-placeholder-opacity:1;color:rgb(68 68 68/var(--tw-placeholder-opacity,1))}.placeholder-\[\#444\]::placeholder{--tw-placeholder-opacity:1;color:rgb(68 68 68/var(--tw-placeholder-opacity,1))}.placeholder-neutral-400::-moz-placeholder{--tw-placeholder-opacity:1;color:rgb(163 163 163/var(--tw-placeholder-opacity,1))}.placeholder-neutral-400::placeholder{--tw-placeholder-opacity:1;color:rgb(163 163 163/var(--tw-placeholder-opacity,1))}.opacity-0{opacity:0}.opacity-100{opacity:1}.opacity-25{opacity:.25}.opacity-30{opacity:.3}.opacity-50{opacity:.5}.opacity-60{opacity:.6}.opacity-75{opacity:.75}.shadow-2xl{--tw-shadow:0 25px 50px -12px rgba(0,0,0,.25);--tw-shadow-colored:0 25px 50px -12px var(--tw-shadow-color)}.shadow-2xl,.shadow-lg{box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.shadow-lg{--tw-shadow:0 10px 15px -3px rgba(0,0,0,.1),0 4px 6px -4px rgba(0,0,0,.1);--tw-shadow-colored:0 10px 15px -3px var(--tw-shadow-color),0 4px 6px -4px var(--tw-shadow-color)}.shadow-sm{--tw-shadow:0 1px 2px 0 rgba(0,0,0,.05);--tw-shadow-colored:0 1px 2px 0 var(--tw-shadow-color)}.shadow-sm,.shadow-xl{box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.shadow-xl{--tw-shadow:0 20px 25px -5px rgba(0,0,0,.1),0 8px 10px -6px rgba(0,0,0,.1);--tw-shadow-colored:0 20px 25px -5px var(--tw-shadow-color),0 8px 10px -6px var(--tw-shadow-color)}.outline{outline-style:solid}.ring-2{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000)}.ring-blue-400{--tw-ring-opacity:1;--tw-ring-color:rgb(96 165 250/var(--tw-ring-opacity,1))}.ring-white{--tw-ring-opacity:1;--tw-ring-color:rgb(255 255 255/var(--tw-ring-opacity,1))}.ring-offset-2{--tw-ring-offset-width:2px}.ring-offset-\[\#111\]{--tw-ring-offset-color:#111}.blur{--tw-blur:blur(8px)}.blur,.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.backdrop-blur-\[2px\]{--tw-backdrop-blur:blur(2px);-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,-webkit-backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter,-webkit-backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-all{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-opacity{transition-property:opacity;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-transform{transition-property:transform;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.duration-1000{transition-duration:1s}.duration-200{transition-duration:.2s}.duration-300{transition-duration:.3s}.duration-500{transition-duration:.5s}.ease-in-out{transition-timing-function:cubic-bezier(.4,0,.2,1)}.ease-out{transition-timing-function:cubic-bezier(0,0,.2,1)}body,html{background-color:#0a0a0a;min-height:100%;margin:0;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*{-ms-overflow-style:none;scrollbar-width:none}::-webkit-scrollbar{display:none}::-moz-selection{background-color:#f97316;color:#0a0a0a}::selection{background-color:#f97316;color:#0a0a0a}.line-clamp-2{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.scrollbar-hide{-ms-overflow-style:none;scrollbar-width:none}.scrollbar-hide::-webkit-scrollbar{display:none}@keyframes slideIn{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.last\:mb-0:last-child{margin-bottom:0}.last\:border-0:last-child{border-width:0}.last\:border-b-0:last-child{border-bottom-width:0}.hover\:scale-110:hover{--tw-scale-x:1.1;--tw-scale-y:1.1;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.hover\:border-\[\#333\]:hover{--tw-border-opacity:1;border-color:rgb(51 51 51/var(--tw-border-opacity,1))}.hover\:border-\[\#444\]:hover{--tw-border-opacity:1;border-color:rgb(68 68 68/var(--tw-border-opacity,1))}.hover\:border-\[\#555\]:hover{--tw-border-opacity:1;border-color:rgb(85 85 85/var(--tw-border-opacity,1))}.hover\:border-\[\#666\]:hover{--tw-border-opacity:1;border-color:rgb(102 102 102/var(--tw-border-opacity,1))}.hover\:border-\[\#f97316\]:hover{--tw-border-opacity:1;border-color:rgb(249 115 22/var(--tw-border-opacity,1))}.hover\:border-blue-300:hover{--tw-border-opacity:1;border-color:rgb(147 197 253/var(--tw-border-opacity,1))}.hover\:border-blue-500\/50:hover{border-color:rgba(59,130,246,.5)}.hover\:border-green-500\/50:hover{border-color:rgba(34,197,94,.5)}.hover\:border-neutral-300:hover{--tw-border-opacity:1;border-color:rgb(212 212 212/var(--tw-border-opacity,1))}.hover\:border-red-500\/50:hover{border-color:rgba(239,68,68,.5)}.hover\:bg-\[\#0a0a0a\]:hover{--tw-bg-opacity:1;background-color:rgb(10 10 10/var(--tw-bg-opacity,1))}.hover\:bg-\[\#111\]:hover{--tw-bg-opacity:1;background-color:rgb(17 17 17/var(--tw-bg-opacity,1))}.hover\:bg-\[\#111\]\/50:hover{background-color:hsla(0,0%,7%,.5)}.hover\:bg-\[\#1a1a1a\]:hover{--tw-bg-opacity:1;background-color:rgb(26 26 26/var(--tw-bg-opacity,1))}.hover\:bg-\[\#1a1a3a\]:hover{--tw-bg-opacity:1;background-color:rgb(26 26 58/var(--tw-bg-opacity,1))}.hover\:bg-\[\#1a3a1a\]:hover{--tw-bg-opacity:1;background-color:rgb(26 58 26/var(--tw-bg-opacity,1))}.hover\:bg-\[\#222\]:hover{--tw-bg-opacity:1;background-color:rgb(34 34 34/var(--tw-bg-opacity,1))}.hover\:bg-\[\#333\]:hover{--tw-bg-opacity:1;background-color:rgb(51 51 51/var(--tw-bg-opacity,1))}.hover\:bg-\[\#3b82f6\]\/30:hover{background-color:rgba(59,130,246,.3)}.hover\:bg-\[\#ea580c\]:hover{--tw-bg-opacity:1;background-color:rgb(234 88 12/var(--tw-bg-opacity,1))}.hover\:bg-\[\#f97316\]\/30:hover{background-color:rgba(249,115,22,.3)}.hover\:bg-\[\#fb923c\]:hover{--tw-bg-opacity:1;background-color:rgb(251 146 60/var(--tw-bg-opacity,1))}.hover\:bg-amber-600:hover{--tw-bg-opacity:1;background-color:rgb(217 119 6/var(--tw-bg-opacity,1))}.hover\:bg-blue-100:hover{--tw-bg-opacity:1;background-color:rgb(219 234 254/var(--tw-bg-opacity,1))}.hover\:bg-blue-50:hover{--tw-bg-opacity:1;background-color:rgb(239 246 255/var(--tw-bg-opacity,1))}.hover\:bg-blue-600:hover{--tw-bg-opacity:1;background-color:rgb(37 99 235/var(--tw-bg-opacity,1))}.hover\:bg-blue-700:hover{--tw-bg-opacity:1;background-color:rgb(29 78 216/var(--tw-bg-opacity,1))}.hover\:bg-green-500\/20:hover{background-color:rgba(34,197,94,.2)}.hover\:bg-neutral-100:hover{--tw-bg-opacity:1;background-color:rgb(245 245 245/var(--tw-bg-opacity,1))}.hover\:bg-neutral-200:hover{--tw-bg-opacity:1;background-color:rgb(229 229 229/var(--tw-bg-opacity,1))}.hover\:bg-neutral-300:hover{--tw-bg-opacity:1;background-color:rgb(212 212 212/var(--tw-bg-opacity,1))}.hover\:bg-neutral-50:hover{--tw-bg-opacity:1;background-color:rgb(250 250 250/var(--tw-bg-opacity,1))}.hover\:bg-neutral-600:hover{--tw-bg-opacity:1;background-color:rgb(82 82 82/var(--tw-bg-opacity,1))}.hover\:bg-neutral-700:hover{--tw-bg-opacity:1;background-color:rgb(64 64 64/var(--tw-bg-opacity,1))}.hover\:bg-red-50:hover{--tw-bg-opacity:1;background-color:rgb(254 242 242/var(--tw-bg-opacity,1))}.hover\:bg-red-500\/30:hover{background-color:rgba(239,68,68,.3)}.hover\:bg-red-600:hover{--tw-bg-opacity:1;background-color:rgb(220 38 38/var(--tw-bg-opacity,1))}.hover\:bg-yellow-500\/20:hover{background-color:rgba(234,179,8,.2)}.hover\:\!text-neutral-600:hover{--tw-text-opacity:1!important;color:rgb(82 82 82/var(--tw-text-opacity,1))!important}.hover\:\!text-neutral-700:hover{--tw-text-opacity:1!important;color:rgb(64 64 64/var(--tw-text-opacity,1))!important}.hover\:text-\[\#60a5fa\]:hover{--tw-text-opacity:1;color:rgb(96 165 250/var(--tw-text-opacity,1))}.hover\:text-\[\#888\]:hover{--tw-text-opacity:1;color:rgb(136 136 136/var(--tw-text-opacity,1))}.hover\:text-\[\#e0e0e0\]:hover{--tw-text-opacity:1;color:rgb(224 224 224/var(--tw-text-opacity,1))}.hover\:text-\[\#f97316\]:hover{--tw-text-opacity:1;color:rgb(249 115 22/var(--tw-text-opacity,1))}.hover\:text-\[\#fb923c\]:hover{--tw-text-opacity:1;color:rgb(251 146 60/var(--tw-text-opacity,1))}.hover\:text-green-300:hover{--tw-text-opacity:1;color:rgb(134 239 172/var(--tw-text-opacity,1))}.hover\:text-green-400:hover{--tw-text-opacity:1;color:rgb(74 222 128/var(--tw-text-opacity,1))}.hover\:text-neutral-600:hover{--tw-text-opacity:1;color:rgb(82 82 82/var(--tw-text-opacity,1))}.hover\:text-neutral-900:hover{--tw-text-opacity:1;color:rgb(23 23 23/var(--tw-text-opacity,1))}.hover\:text-red-300:hover{--tw-text-opacity:1;color:rgb(252 165 165/var(--tw-text-opacity,1))}.hover\:text-red-400:hover{--tw-text-opacity:1;color:rgb(248 113 113/var(--tw-text-opacity,1))}.hover\:text-red-500:hover{--tw-text-opacity:1;color:rgb(239 68 68/var(--tw-text-opacity,1))}.hover\:text-white:hover{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1))}.hover\:underline:hover{text-decoration-line:underline}.hover\:shadow:hover{--tw-shadow:0 1px 3px 0 rgba(0,0,0,.1),0 1px 2px -1px rgba(0,0,0,.1);--tw-shadow-colored:0 1px 3px 0 var(--tw-shadow-color),0 1px 2px -1px var(--tw-shadow-color)}.hover\:shadow-md:hover,.hover\:shadow:hover{box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.hover\:shadow-md:hover{--tw-shadow:0 4px 6px -1px rgba(0,0,0,.1),0 2px 4px -2px rgba(0,0,0,.1);--tw-shadow-colored:0 4px 6px -1px var(--tw-shadow-color),0 2px 4px -2px var(--tw-shadow-color)}.focus\:border-\[\#f97316\]:focus{--tw-border-opacity:1;border-color:rgb(249 115 22/var(--tw-border-opacity,1))}.focus\:border-transparent:focus{border-color:transparent}.focus\:outline-none:focus{outline:2px solid transparent;outline-offset:2px}.focus\:ring-2:focus{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000)}.focus\:ring-blue-500:focus{--tw-ring-opacity:1;--tw-ring-color:rgb(59 130 246/var(--tw-ring-opacity,1))}.active\:scale-\[0\.98\]:active{--tw-scale-x:0.98;--tw-scale-y:0.98;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:opacity-30:disabled{opacity:.3}.disabled\:opacity-50:disabled{opacity:.5}.group:hover .group-hover\:bg-blue-100{--tw-bg-opacity:1;background-color:rgb(219 234 254/var(--tw-bg-opacity,1))}.group:hover .group-hover\:\!text-blue-500{--tw-text-opacity:1!important;color:rgb(59 130 246/var(--tw-text-opacity,1))!important}.group:hover .group-hover\:\!text-blue-600{--tw-text-opacity:1!important;color:rgb(37 99 235/var(--tw-text-opacity,1))!important}.group:hover .group-hover\:opacity-100{opacity:1}.dark\:border-amber-500:is(.dark *){--tw-border-opacity:1;border-color:rgb(245 158 11/var(--tw-border-opacity,1))}.dark\:border-blue-400:is(.dark *){--tw-border-opacity:1;border-color:rgb(96 165 250/var(--tw-border-opacity,1))}.dark\:border-blue-500:is(.dark *){--tw-border-opacity:1;border-color:rgb(59 130 246/var(--tw-border-opacity,1))}.dark\:border-blue-800:is(.dark *){--tw-border-opacity:1;border-color:rgb(30 64 175/var(--tw-border-opacity,1))}.dark\:border-cyan-500:is(.dark *){--tw-border-opacity:1;border-color:rgb(6 182 212/var(--tw-border-opacity,1))}.dark\:border-emerald-400:is(.dark *){--tw-border-opacity:1;border-color:rgb(52 211 153/var(--tw-border-opacity,1))}.dark\:border-emerald-500:is(.dark *){--tw-border-opacity:1;border-color:rgb(16 185 129/var(--tw-border-opacity,1))}.dark\:border-green-500:is(.dark *){--tw-border-opacity:1;border-color:rgb(34 197 94/var(--tw-border-opacity,1))}.dark\:border-green-800:is(.dark *){--tw-border-opacity:1;border-color:rgb(22 101 52/var(--tw-border-opacity,1))}.dark\:border-indigo-500:is(.dark *){--tw-border-opacity:1;border-color:rgb(99 102 241/var(--tw-border-opacity,1))}.dark\:border-neutral-600:is(.dark *){--tw-border-opacity:1;border-color:rgb(82 82 82/var(--tw-border-opacity,1))}.dark\:border-neutral-700:is(.dark *){--tw-border-opacity:1;border-color:rgb(64 64 64/var(--tw-border-opacity,1))}.dark\:border-neutral-800:is(.dark *){--tw-border-opacity:1;border-color:rgb(38 38 38/var(--tw-border-opacity,1))}.dark\:border-orange-500:is(.dark *){--tw-border-opacity:1;border-color:rgb(249 115 22/var(--tw-border-opacity,1))}.dark\:border-purple-500:is(.dark *){--tw-border-opacity:1;border-color:rgb(168 85 247/var(--tw-border-opacity,1))}.dark\:border-red-400:is(.dark *){--tw-border-opacity:1;border-color:rgb(248 113 113/var(--tw-border-opacity,1))}.dark\:border-red-500:is(.dark *){--tw-border-opacity:1;border-color:rgb(239 68 68/var(--tw-border-opacity,1))}.dark\:border-red-800:is(.dark *){--tw-border-opacity:1;border-color:rgb(153 27 27/var(--tw-border-opacity,1))}.dark\:border-rose-500:is(.dark *){--tw-border-opacity:1;border-color:rgb(244 63 94/var(--tw-border-opacity,1))}.dark\:border-white:is(.dark *){--tw-border-opacity:1;border-color:rgb(255 255 255/var(--tw-border-opacity,1))}.dark\:bg-amber-500\/20:is(.dark *){background-color:rgba(245,158,11,.2)}.dark\:bg-amber-900\/40:is(.dark *){background-color:rgba(120,53,15,.4)}.dark\:bg-black:is(.dark *){--tw-bg-opacity:1;background-color:rgb(0 0 0/var(--tw-bg-opacity,1))}.dark\:bg-blue-500\/20:is(.dark *){background-color:rgba(59,130,246,.2)}.dark\:bg-blue-900\/20:is(.dark *){background-color:rgba(30,58,138,.2)}.dark\:bg-blue-900\/30:is(.dark *){background-color:rgba(30,58,138,.3)}.dark\:bg-blue-900\/40:is(.dark *){background-color:rgba(30,58,138,.4)}.dark\:bg-cyan-500\/20:is(.dark *){background-color:rgba(6,182,212,.2)}.dark\:bg-cyan-900\/40:is(.dark *){background-color:rgba(22,78,99,.4)}.dark\:bg-emerald-500\/20:is(.dark *){background-color:rgba(16,185,129,.2)}.dark\:bg-emerald-900\/40:is(.dark *){background-color:rgba(6,78,59,.4)}.dark\:bg-green-900\/20:is(.dark *){background-color:rgba(20,83,45,.2)}.dark\:bg-indigo-500\/20:is(.dark *){background-color:rgba(99,102,241,.2)}.dark\:bg-indigo-900\/40:is(.dark *){background-color:rgba(49,46,129,.4)}.dark\:bg-neutral-600:is(.dark *){--tw-bg-opacity:1;background-color:rgb(82 82 82/var(--tw-bg-opacity,1))}.dark\:bg-neutral-700:is(.dark *){--tw-bg-opacity:1;background-color:rgb(64 64 64/var(--tw-bg-opacity,1))}.dark\:bg-neutral-800:is(.dark *){--tw-bg-opacity:1;background-color:rgb(38 38 38/var(--tw-bg-opacity,1))}.dark\:bg-neutral-800\/50:is(.dark *){background-color:rgba(38,38,38,.5)}.dark\:bg-neutral-900:is(.dark *){--tw-bg-opacity:1;background-color:rgb(23 23 23/var(--tw-bg-opacity,1))}.dark\:bg-orange-900\/40:is(.dark *){background-color:rgba(124,45,18,.4)}.dark\:bg-purple-500\/20:is(.dark *){background-color:rgba(168,85,247,.2)}.dark\:bg-purple-900\/40:is(.dark *){background-color:rgba(88,28,135,.4)}.dark\:bg-red-900\/20:is(.dark *){background-color:rgba(127,29,29,.2)}.dark\:bg-red-900\/30:is(.dark *){background-color:rgba(127,29,29,.3)}.dark\:bg-red-900\/40:is(.dark *){background-color:rgba(127,29,29,.4)}.dark\:bg-rose-900\/40:is(.dark *){background-color:rgba(136,19,55,.4)}.dark\:bg-white:is(.dark *){--tw-bg-opacity:1;background-color:rgb(255 255 255/var(--tw-bg-opacity,1))}.dark\:\!text-amber-300:is(.dark *){--tw-text-opacity:1!important;color:rgb(252 211 77/var(--tw-text-opacity,1))!important}.dark\:\!text-blue-300:is(.dark *){--tw-text-opacity:1!important;color:rgb(147 197 253/var(--tw-text-opacity,1))!important}.dark\:\!text-blue-400:is(.dark *){--tw-text-opacity:1!important;color:rgb(96 165 250/var(--tw-text-opacity,1))!important}.dark\:\!text-cyan-300:is(.dark *){--tw-text-opacity:1!important;color:rgb(103 232 249/var(--tw-text-opacity,1))!important}.dark\:\!text-emerald-300:is(.dark *){--tw-text-opacity:1!important;color:rgb(110 231 183/var(--tw-text-opacity,1))!important}.dark\:\!text-indigo-300:is(.dark *){--tw-text-opacity:1!important;color:rgb(165 180 252/var(--tw-text-opacity,1))!important}.dark\:\!text-neutral-100:is(.dark *){--tw-text-opacity:1!important;color:rgb(245 245 245/var(--tw-text-opacity,1))!important}.dark\:\!text-neutral-200:is(.dark *){--tw-text-opacity:1!important;color:rgb(229 229 229/var(--tw-text-opacity,1))!important}.dark\:\!text-neutral-300:is(.dark *){--tw-text-opacity:1!important;color:rgb(212 212 212/var(--tw-text-opacity,1))!important}.dark\:\!text-neutral-400:is(.dark *){--tw-text-opacity:1!important;color:rgb(163 163 163/var(--tw-text-opacity,1))!important}.dark\:\!text-neutral-500:is(.dark *){--tw-text-opacity:1!important;color:rgb(115 115 115/var(--tw-text-opacity,1))!important}.dark\:\!text-neutral-600:is(.dark *){--tw-text-opacity:1!important;color:rgb(82 82 82/var(--tw-text-opacity,1))!important}.dark\:\!text-neutral-900:is(.dark *){--tw-text-opacity:1!important;color:rgb(23 23 23/var(--tw-text-opacity,1))!important}.dark\:\!text-orange-300:is(.dark *){--tw-text-opacity:1!important;color:rgb(253 186 116/var(--tw-text-opacity,1))!important}.dark\:\!text-purple-300:is(.dark *){--tw-text-opacity:1!important;color:rgb(216 180 254/var(--tw-text-opacity,1))!important}.dark\:\!text-red-300:is(.dark *){--tw-text-opacity:1!important;color:rgb(252 165 165/var(--tw-text-opacity,1))!important}.dark\:\!text-red-400:is(.dark *){--tw-text-opacity:1!important;color:rgb(248 113 113/var(--tw-text-opacity,1))!important}.dark\:\!text-rose-300:is(.dark *){--tw-text-opacity:1!important;color:rgb(253 164 175/var(--tw-text-opacity,1))!important}.dark\:\!text-white:is(.dark *){--tw-text-opacity:1!important;color:rgb(255 255 255/var(--tw-text-opacity,1))!important}.dark\:text-amber-400:is(.dark *){--tw-text-opacity:1;color:rgb(251 191 36/var(--tw-text-opacity,1))}.dark\:text-blue-300:is(.dark *){--tw-text-opacity:1;color:rgb(147 197 253/var(--tw-text-opacity,1))}.dark\:text-blue-400:is(.dark *){--tw-text-opacity:1;color:rgb(96 165 250/var(--tw-text-opacity,1))}.dark\:text-cyan-400:is(.dark *){--tw-text-opacity:1;color:rgb(34 211 238/var(--tw-text-opacity,1))}.dark\:text-emerald-400:is(.dark *){--tw-text-opacity:1;color:rgb(52 211 153/var(--tw-text-opacity,1))}.dark\:text-green-300:is(.dark *){--tw-text-opacity:1;color:rgb(134 239 172/var(--tw-text-opacity,1))}.dark\:text-green-400:is(.dark *){--tw-text-opacity:1;color:rgb(74 222 128/var(--tw-text-opacity,1))}.dark\:text-indigo-400:is(.dark *){--tw-text-opacity:1;color:rgb(129 140 248/var(--tw-text-opacity,1))}.dark\:text-neutral-100:is(.dark *){--tw-text-opacity:1;color:rgb(245 245 245/var(--tw-text-opacity,1))}.dark\:text-neutral-200:is(.dark *){--tw-text-opacity:1;color:rgb(229 229 229/var(--tw-text-opacity,1))}.dark\:text-neutral-300:is(.dark *){--tw-text-opacity:1;color:rgb(212 212 212/var(--tw-text-opacity,1))}.dark\:text-neutral-400:is(.dark *){--tw-text-opacity:1;color:rgb(163 163 163/var(--tw-text-opacity,1))}.dark\:text-neutral-500:is(.dark *){--tw-text-opacity:1;color:rgb(115 115 115/var(--tw-text-opacity,1))}.dark\:text-purple-400:is(.dark *){--tw-text-opacity:1;color:rgb(192 132 252/var(--tw-text-opacity,1))}.dark\:text-red-300:is(.dark *){--tw-text-opacity:1;color:rgb(252 165 165/var(--tw-text-opacity,1))}.dark\:text-red-400:is(.dark *){--tw-text-opacity:1;color:rgb(248 113 113/var(--tw-text-opacity,1))}.dark\:text-white:is(.dark *){--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1))}.dark\:placeholder-neutral-500:is(.dark *)::-moz-placeholder{--tw-placeholder-opacity:1;color:rgb(115 115 115/var(--tw-placeholder-opacity,1))}.dark\:placeholder-neutral-500:is(.dark *)::placeholder{--tw-placeholder-opacity:1;color:rgb(115 115 115/var(--tw-placeholder-opacity,1))}.dark\:hover\:border-blue-600:hover:is(.dark *){--tw-border-opacity:1;border-color:rgb(37 99 235/var(--tw-border-opacity,1))}.dark\:hover\:border-neutral-600:hover:is(.dark *){--tw-border-opacity:1;border-color:rgb(82 82 82/var(--tw-border-opacity,1))}.dark\:hover\:bg-blue-900:hover:is(.dark *){--tw-bg-opacity:1;background-color:rgb(30 58 138/var(--tw-bg-opacity,1))}.dark\:hover\:bg-blue-900\/40:hover:is(.dark *){background-color:rgba(30,58,138,.4)}.dark\:hover\:bg-neutral-600:hover:is(.dark *){--tw-bg-opacity:1;background-color:rgb(82 82 82/var(--tw-bg-opacity,1))}.dark\:hover\:bg-neutral-700:hover:is(.dark *){--tw-bg-opacity:1;background-color:rgb(64 64 64/var(--tw-bg-opacity,1))}.dark\:hover\:bg-neutral-800:hover:is(.dark *){--tw-bg-opacity:1;background-color:rgb(38 38 38/var(--tw-bg-opacity,1))}.dark\:hover\:\!text-neutral-200:hover:is(.dark *){--tw-text-opacity:1!important;color:rgb(229 229 229/var(--tw-text-opacity,1))!important}.dark\:hover\:\!text-neutral-300:hover:is(.dark *){--tw-text-opacity:1!important;color:rgb(212 212 212/var(--tw-text-opacity,1))!important}.dark\:hover\:text-neutral-300:hover:is(.dark *){--tw-text-opacity:1;color:rgb(212 212 212/var(--tw-text-opacity,1))}.dark\:hover\:text-white:hover:is(.dark *){--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1))}.group:hover .dark\:group-hover\:bg-blue-900\/30:is(.dark *){background-color:rgba(30,58,138,.3)}.group:hover .dark\:group-hover\:\!text-blue-400:is(.dark *){--tw-text-opacity:1!important;color:rgb(96 165 250/var(--tw-text-opacity,1))!important}@media (min-width:640px){.sm\:mb-8{margin-bottom:2rem}.sm\:inline{display:inline}.sm\:grid{display:grid}.sm\:hidden{display:none}.sm\:h-16{height:4rem}.sm\:w-16{width:4rem}.sm\:w-\[500px\]{width:500px}.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.sm\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.sm\:py-8{padding-top:2rem;padding-bottom:2rem}.sm\:text-2xl{font-size:1.5rem;line-height:2rem}.sm\:text-base{font-size:1rem;line-height:1.5rem}}@media (min-width:768px){.md\:relative{position:relative}.md\:z-auto{z-index:auto}.md\:ml-4{margin-left:1rem}.md\:block{display:block}.md\:flex{display:flex}.md\:hidden{display:none}.md\:w-1\/2{width:50%}.md\:w-56{width:14rem}.md\:max-w-\[180px\]{max-width:180px}.md\:translate-x-0{--tw-translate-x:0px;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.md\:columns-2{-moz-columns:2;column-count:2}.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.md\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.md\:flex-row{flex-direction:row}.md\:gap-4{gap:1rem}.md\:p-6{padding:1.5rem}.md\:px-4{padding-left:1rem;padding-right:1rem}.md\:px-6{padding-left:1.5rem;padding-right:1.5rem}.md\:text-2xl{font-size:1.5rem;line-height:2rem}}@media (min-width:1024px){.lg\:w-1\/3{width:33.333333%}.lg\:w-2\/3{width:66.666667%}.lg\:w-\[540px\]{width:540px}.lg\:w-\[600px\]{width:600px}.lg\:max-w-2xl{max-width:42rem}.lg\:columns-3{-moz-columns:3;column-count:3}.lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.lg\:grid-cols-6{grid-template-columns:repeat(6,minmax(0,1fr))}}@media (min-width:1280px){.xl\:w-\[700px\]{width:700px}.xl\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}}
1
+ *,:after,:before{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(59,130,246,.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(59,130,246,.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }/*! tailwindcss v3.4.19 | MIT License | https://tailwindcss.com*/*,:after,:before{box-sizing:border-box;border:0 solid #e5e7eb}:after,:before{--tw-content:""}:host,html{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:ui-sans-serif,system-ui,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{font-family:JetBrains Mono,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dd,dl,figure,h1,h2,h3,h4,h5,h6,hr,p,pre{margin:0}fieldset{margin:0}fieldset,legend{padding:0}menu,ol,ul{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}[role=button],button{cursor:pointer}:disabled{cursor:default}audio,canvas,embed,iframe,img,object,svg,video{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}.pointer-events-none{pointer-events:none}.visible{visibility:visible}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.sticky{position:sticky}.inset-0{inset:0}.inset-y-0{top:0;bottom:0}.-right-1{right:-.25rem}.-right-2{right:-.5rem}.-top-1{top:-.25rem}.-top-2{top:-.5rem}.bottom-0{bottom:0}.bottom-full{bottom:100%}.left-0{left:0}.left-0\.5{left:.125rem}.left-3{left:.75rem}.left-5{left:1.25rem}.left-\[-4\.5px\]{left:-4.5px}.right-0{right:0}.top-0{top:0}.top-0\.5{top:.125rem}.top-10{top:2.5rem}.top-\[14px\]{top:14px}.top-full{top:100%}.z-10{z-index:10}.z-20{z-index:20}.z-40{z-index:40}.z-50{z-index:50}.z-\[9998\]{z-index:9998}.z-\[9999\]{z-index:9999}.col-span-2{grid-column:span 2/span 2}.mx-1\.5{margin-left:.375rem;margin-right:.375rem}.mx-4{margin-left:1rem;margin-right:1rem}.mx-auto{margin-left:auto;margin-right:auto}.my-0\.5{margin-top:.125rem;margin-bottom:.125rem}.my-1{margin-top:.25rem;margin-bottom:.25rem}.-mb-px{margin-bottom:-1px}.-ml-2{margin-left:-.5rem}.mb-0\.5{margin-bottom:.125rem}.mb-1{margin-bottom:.25rem}.mb-1\.5{margin-bottom:.375rem}.mb-2{margin-bottom:.5rem}.mb-3{margin-bottom:.75rem}.mb-4{margin-bottom:1rem}.mb-6{margin-bottom:1.5rem}.mb-8{margin-bottom:2rem}.ml-0\.5{margin-left:.125rem}.ml-1{margin-left:.25rem}.ml-2{margin-left:.5rem}.ml-3{margin-left:.75rem}.ml-4{margin-left:1rem}.ml-auto{margin-left:auto}.mr-2{margin-right:.5rem}.mt-0\.5{margin-top:.125rem}.mt-1{margin-top:.25rem}.mt-1\.5{margin-top:.375rem}.mt-2{margin-top:.5rem}.mt-3{margin-top:.75rem}.mt-4{margin-top:1rem}.mt-5{margin-top:1.25rem}.mt-6{margin-top:1.5rem}.mt-8{margin-top:2rem}.mt-auto{margin-top:auto}.line-clamp-1{-webkit-line-clamp:1}.line-clamp-1,.line-clamp-2{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical}.line-clamp-2{-webkit-line-clamp:2}.line-clamp-3{-webkit-line-clamp:3}.line-clamp-3,.line-clamp-4{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical}.line-clamp-4{-webkit-line-clamp:4}.block{display:block}.inline-block{display:inline-block}.inline{display:inline}.flex{display:flex}.inline-flex{display:inline-flex}.table{display:table}.grid{display:grid}.contents{display:contents}.hidden{display:none}.aspect-square{aspect-ratio:1/1}.aspect-video{aspect-ratio:16/9}.h-0\.5{height:.125rem}.h-1\.5{height:.375rem}.h-1\/2{height:50%}.h-1\/3{height:33.333333%}.h-10{height:2.5rem}.h-12{height:3rem}.h-16{height:4rem}.h-2{height:.5rem}.h-2\.5{height:.625rem}.h-2\/3{height:66.666667%}.h-20{height:5rem}.h-24{height:6rem}.h-3{height:.75rem}.h-3\.5{height:.875rem}.h-3\/4{height:75%}.h-32{height:8rem}.h-4{height:1rem}.h-40{height:10rem}.h-48{height:12rem}.h-5{height:1.25rem}.h-6{height:1.5rem}.h-7{height:1.75rem}.h-8{height:2rem}.h-9{height:2.25rem}.h-\[9px\]{height:9px}.h-auto{height:auto}.h-full{height:100%}.h-screen{height:100vh}.max-h-32{max-height:8rem}.max-h-60{max-height:15rem}.max-h-64{max-height:16rem}.max-h-96{max-height:24rem}.max-h-\[150px\]{max-height:150px}.max-h-\[200px\]{max-height:200px}.max-h-\[500px\]{max-height:500px}.max-h-\[60vh\]{max-height:60vh}.max-h-\[80vh\]{max-height:80vh}.max-h-\[90vh\]{max-height:90vh}.max-h-\[calc\(80vh-180px\)\]{max-height:calc(80vh - 180px)}.min-h-0{min-height:0}.min-h-screen{min-height:100vh}.w-1\.5{width:.375rem}.w-1\/2{width:50%}.w-1\/3{width:33.333333%}.w-1\/4{width:25%}.w-10{width:2.5rem}.w-12{width:3rem}.w-14{width:3.5rem}.w-16{width:4rem}.w-2{width:.5rem}.w-2\.5{width:.625rem}.w-2\/3{width:66.666667%}.w-20{width:5rem}.w-24{width:6rem}.w-3{width:.75rem}.w-3\.5{width:.875rem}.w-3\/4{width:75%}.w-36{width:9rem}.w-4{width:1rem}.w-44{width:11rem}.w-48{width:12rem}.w-5{width:1.25rem}.w-5\/6{width:83.333333%}.w-56{width:14rem}.w-6{width:1.5rem}.w-64{width:16rem}.w-8{width:2rem}.w-80{width:20rem}.w-9{width:2.25rem}.w-\[480px\]{width:480px}.w-\[9px\]{width:9px}.w-fit{width:-moz-fit-content;width:fit-content}.w-full{width:100%}.min-w-0{min-width:0}.min-w-\[200px\]{min-width:200px}.min-w-\[260px\]{min-width:260px}.min-w-max{min-width:-moz-max-content;min-width:max-content}.max-w-2xl{max-width:42rem}.max-w-3xl{max-width:48rem}.max-w-4xl{max-width:56rem}.max-w-6xl{max-width:72rem}.max-w-7xl{max-width:80rem}.max-w-\[120px\]{max-width:120px}.max-w-\[150px\]{max-width:150px}.max-w-\[180px\]{max-width:180px}.max-w-\[360px\]{max-width:360px}.max-w-full{max-width:100%}.max-w-lg{max-width:32rem}.max-w-md{max-width:28rem}.max-w-none{max-width:none}.max-w-sm{max-width:24rem}.max-w-xl{max-width:36rem}.flex-1{flex:1 1 0%}.flex-shrink-0,.shrink-0{flex-shrink:0}.-translate-x-full{--tw-translate-x:-100%}.-translate-x-full,.translate-x-0{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-x-0{--tw-translate-x:0px}.translate-x-0\.5{--tw-translate-x:0.125rem}.translate-x-0\.5,.translate-x-5{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-x-5{--tw-translate-x:1.25rem}.rotate-180{--tw-rotate:180deg}.rotate-180,.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}@keyframes pulse{50%{opacity:.5}}.animate-pulse{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}@keyframes spin{to{transform:rotate(1turn)}}.animate-spin{animation:spin 1s linear infinite}.cursor-not-allowed{cursor:not-allowed}.cursor-pointer{cursor:pointer}.cursor-text{cursor:text}.cursor-wait{cursor:wait}.select-all{-webkit-user-select:all;-moz-user-select:all;user-select:all}.resize-none{resize:none}.resize-y{resize:vertical}.resize{resize:both}.list-disc{list-style-type:disc}.columns-1{-moz-columns:1;column-count:1}.auto-rows-fr{grid-auto-rows:minmax(0,1fr)}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.flex-row{flex-direction:row}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-start{align-items:flex-start}.items-end{align-items:flex-end}.items-center{align-items:center}.items-stretch{align-items:stretch}.justify-end{justify-content:flex-end}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-0{gap:0}.gap-0\.5{gap:.125rem}.gap-1{gap:.25rem}.gap-1\.5{gap:.375rem}.gap-2{gap:.5rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.gap-6{gap:1.5rem}.gap-x-4{-moz-column-gap:1rem;column-gap:1rem}.gap-y-1{row-gap:.25rem}.space-y-0\.5>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(.125rem*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.125rem*var(--tw-space-y-reverse))}.space-y-1>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(.25rem*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.25rem*var(--tw-space-y-reverse))}.space-y-10>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(2.5rem*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(2.5rem*var(--tw-space-y-reverse))}.space-y-2>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(.5rem*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.5rem*var(--tw-space-y-reverse))}.space-y-3>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(.75rem*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.75rem*var(--tw-space-y-reverse))}.space-y-4>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(1rem*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1rem*var(--tw-space-y-reverse))}.space-y-6>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(1.5rem*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1.5rem*var(--tw-space-y-reverse))}.divide-y>:not([hidden])~:not([hidden]){--tw-divide-y-reverse:0;border-top-width:calc(1px*(1 - var(--tw-divide-y-reverse)));border-bottom-width:calc(1px*var(--tw-divide-y-reverse))}.divide-\[\#1a1a1a\]>:not([hidden])~:not([hidden]){--tw-divide-opacity:1;border-color:rgb(26 26 26/var(--tw-divide-opacity,1))}.self-end{align-self:flex-end}.overflow-auto{overflow:auto}.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.overflow-y-auto{overflow-y:auto}.truncate{overflow:hidden;text-overflow:ellipsis}.truncate,.whitespace-nowrap{white-space:nowrap}.whitespace-pre-line{white-space:pre-line}.whitespace-pre-wrap{white-space:pre-wrap}.break-words{overflow-wrap:break-word}.break-all{word-break:break-all}.rounded{border-radius:.25rem}.rounded-2xl{border-radius:1rem}.rounded-full{border-radius:9999px}.rounded-lg{border-radius:.5rem}.rounded-xl{border-radius:.75rem}.rounded-t{border-top-left-radius:.25rem;border-top-right-radius:.25rem}.border{border-width:1px}.border-2{border-width:2px}.border-b{border-bottom-width:1px}.border-b-2{border-bottom-width:2px}.border-l{border-left-width:1px}.border-r{border-right-width:1px}.border-t{border-top-width:1px}.border-dashed{border-style:dashed}.border-none{border-style:none}.border-\[\#1a1a1a\]{--tw-border-opacity:1;border-color:rgb(26 26 26/var(--tw-border-opacity,1))}.border-\[\#222\]{--tw-border-opacity:1;border-color:rgb(34 34 34/var(--tw-border-opacity,1))}.border-\[\#333\]{--tw-border-opacity:1;border-color:rgb(51 51 51/var(--tw-border-opacity,1))}.border-\[\#f97316\]{--tw-border-opacity:1;border-color:rgb(249 115 22/var(--tw-border-opacity,1))}.border-\[\#f97316\]\/20{border-color:rgba(249,115,22,.2)}.border-\[\#f97316\]\/30{border-color:rgba(249,115,22,.3)}.border-amber-300{--tw-border-opacity:1;border-color:rgb(252 211 77/var(--tw-border-opacity,1))}.border-amber-400{--tw-border-opacity:1;border-color:rgb(251 191 36/var(--tw-border-opacity,1))}.border-amber-500\/30{border-color:rgba(245,158,11,.3)}.border-blue-200{--tw-border-opacity:1;border-color:rgb(191 219 254/var(--tw-border-opacity,1))}.border-blue-300{--tw-border-opacity:1;border-color:rgb(147 197 253/var(--tw-border-opacity,1))}.border-blue-400{--tw-border-opacity:1;border-color:rgb(96 165 250/var(--tw-border-opacity,1))}.border-blue-500{--tw-border-opacity:1;border-color:rgb(59 130 246/var(--tw-border-opacity,1))}.border-blue-500\/30{border-color:rgba(59,130,246,.3)}.border-cyan-300{--tw-border-opacity:1;border-color:rgb(103 232 249/var(--tw-border-opacity,1))}.border-cyan-500\/30{border-color:rgba(6,182,212,.3)}.border-emerald-300{--tw-border-opacity:1;border-color:rgb(110 231 183/var(--tw-border-opacity,1))}.border-emerald-400{--tw-border-opacity:1;border-color:rgb(52 211 153/var(--tw-border-opacity,1))}.border-gray-500\/30{border-color:hsla(220,9%,46%,.3)}.border-green-200{--tw-border-opacity:1;border-color:rgb(187 247 208/var(--tw-border-opacity,1))}.border-green-400{--tw-border-opacity:1;border-color:rgb(74 222 128/var(--tw-border-opacity,1))}.border-green-500{--tw-border-opacity:1;border-color:rgb(34 197 94/var(--tw-border-opacity,1))}.border-green-500\/20{border-color:rgba(34,197,94,.2)}.border-green-500\/30{border-color:rgba(34,197,94,.3)}.border-indigo-300{--tw-border-opacity:1;border-color:rgb(165 180 252/var(--tw-border-opacity,1))}.border-neutral-200{--tw-border-opacity:1;border-color:rgb(229 229 229/var(--tw-border-opacity,1))}.border-neutral-300{--tw-border-opacity:1;border-color:rgb(212 212 212/var(--tw-border-opacity,1))}.border-neutral-700{--tw-border-opacity:1;border-color:rgb(64 64 64/var(--tw-border-opacity,1))}.border-neutral-900{--tw-border-opacity:1;border-color:rgb(23 23 23/var(--tw-border-opacity,1))}.border-orange-300{--tw-border-opacity:1;border-color:rgb(253 186 116/var(--tw-border-opacity,1))}.border-orange-500\/20{border-color:rgba(249,115,22,.2)}.border-orange-500\/30{border-color:rgba(249,115,22,.3)}.border-pink-500\/30{border-color:rgba(236,72,153,.3)}.border-purple-300{--tw-border-opacity:1;border-color:rgb(216 180 254/var(--tw-border-opacity,1))}.border-purple-500\/30{border-color:rgba(168,85,247,.3)}.border-red-200{--tw-border-opacity:1;border-color:rgb(254 202 202/var(--tw-border-opacity,1))}.border-red-400{--tw-border-opacity:1;border-color:rgb(248 113 113/var(--tw-border-opacity,1))}.border-red-500{--tw-border-opacity:1;border-color:rgb(239 68 68/var(--tw-border-opacity,1))}.border-red-500\/20{border-color:rgba(239,68,68,.2)}.border-red-500\/30{border-color:rgba(239,68,68,.3)}.border-rose-300{--tw-border-opacity:1;border-color:rgb(253 164 175/var(--tw-border-opacity,1))}.border-teal-500\/20{border-color:rgba(20,184,166,.2)}.border-transparent{border-color:transparent}.border-yellow-300{--tw-border-opacity:1;border-color:rgb(253 224 71/var(--tw-border-opacity,1))}.border-yellow-500\/20{border-color:rgba(234,179,8,.2)}.border-yellow-500\/30{border-color:rgba(234,179,8,.3)}.border-t-blue-500{--tw-border-opacity:1;border-top-color:rgb(59 130 246/var(--tw-border-opacity,1))}.border-t-transparent{border-top-color:transparent}.bg-\[\#0a0a0a\]{--tw-bg-opacity:1;background-color:rgb(10 10 10/var(--tw-bg-opacity,1))}.bg-\[\#0a0a0a\]\/95{background-color:hsla(0,0%,4%,.95)}.bg-\[\#0d0d0d\]{--tw-bg-opacity:1;background-color:rgb(13 13 13/var(--tw-bg-opacity,1))}.bg-\[\#0f0f0f\]{--tw-bg-opacity:1;background-color:rgb(15 15 15/var(--tw-bg-opacity,1))}.bg-\[\#111\]{--tw-bg-opacity:1;background-color:rgb(17 17 17/var(--tw-bg-opacity,1))}.bg-\[\#151515\]{--tw-bg-opacity:1;background-color:rgb(21 21 21/var(--tw-bg-opacity,1))}.bg-\[\#1a1a1a\]{--tw-bg-opacity:1;background-color:rgb(26 26 26/var(--tw-bg-opacity,1))}.bg-\[\#1a1a2a\]{--tw-bg-opacity:1;background-color:rgb(26 26 42/var(--tw-bg-opacity,1))}.bg-\[\#1a2a1a\]{--tw-bg-opacity:1;background-color:rgb(26 42 26/var(--tw-bg-opacity,1))}.bg-\[\#222\]{--tw-bg-opacity:1;background-color:rgb(34 34 34/var(--tw-bg-opacity,1))}.bg-\[\#333\]{--tw-bg-opacity:1;background-color:rgb(51 51 51/var(--tw-bg-opacity,1))}.bg-\[\#3b82f6\]{--tw-bg-opacity:1;background-color:rgb(59 130 246/var(--tw-bg-opacity,1))}.bg-\[\#3b82f6\]\/20{background-color:rgba(59,130,246,.2)}.bg-\[\#444\]{--tw-bg-opacity:1;background-color:rgb(68 68 68/var(--tw-bg-opacity,1))}.bg-\[\#555\]{--tw-bg-opacity:1;background-color:rgb(85 85 85/var(--tw-bg-opacity,1))}.bg-\[\#666\]{--tw-bg-opacity:1;background-color:rgb(102 102 102/var(--tw-bg-opacity,1))}.bg-\[\#888\]{--tw-bg-opacity:1;background-color:rgb(136 136 136/var(--tw-bg-opacity,1))}.bg-\[\#f97316\]{--tw-bg-opacity:1;background-color:rgb(249 115 22/var(--tw-bg-opacity,1))}.bg-\[\#f97316\]\/10{background-color:rgba(249,115,22,.1)}.bg-\[\#f97316\]\/20{background-color:rgba(249,115,22,.2)}.bg-\[\#f97316\]\/5{background-color:rgba(249,115,22,.05)}.bg-amber-100{--tw-bg-opacity:1;background-color:rgb(254 243 199/var(--tw-bg-opacity,1))}.bg-amber-500{--tw-bg-opacity:1;background-color:rgb(245 158 11/var(--tw-bg-opacity,1))}.bg-amber-900\/50{background-color:rgba(120,53,15,.5)}.bg-black\/20{background-color:rgba(0,0,0,.2)}.bg-black\/40{background-color:rgba(0,0,0,.4)}.bg-black\/50{background-color:rgba(0,0,0,.5)}.bg-black\/60{background-color:rgba(0,0,0,.6)}.bg-black\/70{background-color:rgba(0,0,0,.7)}.bg-blue-100{--tw-bg-opacity:1;background-color:rgb(219 234 254/var(--tw-bg-opacity,1))}.bg-blue-400{--tw-bg-opacity:1;background-color:rgb(96 165 250/var(--tw-bg-opacity,1))}.bg-blue-50{--tw-bg-opacity:1;background-color:rgb(239 246 255/var(--tw-bg-opacity,1))}.bg-blue-500{--tw-bg-opacity:1;background-color:rgb(59 130 246/var(--tw-bg-opacity,1))}.bg-blue-500\/10{background-color:rgba(59,130,246,.1)}.bg-blue-500\/20{background-color:rgba(59,130,246,.2)}.bg-blue-600{--tw-bg-opacity:1;background-color:rgb(37 99 235/var(--tw-bg-opacity,1))}.bg-blue-900\/50{background-color:rgba(30,58,138,.5)}.bg-current{background-color:currentColor}.bg-cyan-100{--tw-bg-opacity:1;background-color:rgb(207 250 254/var(--tw-bg-opacity,1))}.bg-cyan-400{--tw-bg-opacity:1;background-color:rgb(34 211 238/var(--tw-bg-opacity,1))}.bg-cyan-500\/10{background-color:rgba(6,182,212,.1)}.bg-cyan-500\/20{background-color:rgba(6,182,212,.2)}.bg-cyan-900\/50{background-color:rgba(22,78,99,.5)}.bg-emerald-100{--tw-bg-opacity:1;background-color:rgb(209 250 229/var(--tw-bg-opacity,1))}.bg-gray-400{--tw-bg-opacity:1;background-color:rgb(156 163 175/var(--tw-bg-opacity,1))}.bg-gray-500\/20{background-color:hsla(220,9%,46%,.2)}.bg-green-400{--tw-bg-opacity:1;background-color:rgb(74 222 128/var(--tw-bg-opacity,1))}.bg-green-50{--tw-bg-opacity:1;background-color:rgb(240 253 244/var(--tw-bg-opacity,1))}.bg-green-500{--tw-bg-opacity:1;background-color:rgb(34 197 94/var(--tw-bg-opacity,1))}.bg-green-500\/10{background-color:rgba(34,197,94,.1)}.bg-green-500\/20{background-color:rgba(34,197,94,.2)}.bg-green-500\/5{background-color:rgba(34,197,94,.05)}.bg-green-900\/50{background-color:rgba(20,83,45,.5)}.bg-indigo-100{--tw-bg-opacity:1;background-color:rgb(224 231 255/var(--tw-bg-opacity,1))}.bg-neutral-100{--tw-bg-opacity:1;background-color:rgb(245 245 245/var(--tw-bg-opacity,1))}.bg-neutral-200{--tw-bg-opacity:1;background-color:rgb(229 229 229/var(--tw-bg-opacity,1))}.bg-neutral-300{--tw-bg-opacity:1;background-color:rgb(212 212 212/var(--tw-bg-opacity,1))}.bg-neutral-50{--tw-bg-opacity:1;background-color:rgb(250 250 250/var(--tw-bg-opacity,1))}.bg-neutral-50\/50{background-color:hsla(0,0%,98%,.5)}.bg-neutral-500{--tw-bg-opacity:1;background-color:rgb(115 115 115/var(--tw-bg-opacity,1))}.bg-neutral-800{--tw-bg-opacity:1;background-color:rgb(38 38 38/var(--tw-bg-opacity,1))}.bg-neutral-900{--tw-bg-opacity:1;background-color:rgb(23 23 23/var(--tw-bg-opacity,1))}.bg-orange-100{--tw-bg-opacity:1;background-color:rgb(255 237 213/var(--tw-bg-opacity,1))}.bg-orange-400{--tw-bg-opacity:1;background-color:rgb(251 146 60/var(--tw-bg-opacity,1))}.bg-orange-500\/10{background-color:rgba(249,115,22,.1)}.bg-orange-500\/20{background-color:rgba(249,115,22,.2)}.bg-pink-500\/20{background-color:rgba(236,72,153,.2)}.bg-purple-100{--tw-bg-opacity:1;background-color:rgb(243 232 255/var(--tw-bg-opacity,1))}.bg-purple-400{--tw-bg-opacity:1;background-color:rgb(192 132 252/var(--tw-bg-opacity,1))}.bg-purple-500{--tw-bg-opacity:1;background-color:rgb(168 85 247/var(--tw-bg-opacity,1))}.bg-purple-500\/10{background-color:rgba(168,85,247,.1)}.bg-purple-500\/20{background-color:rgba(168,85,247,.2)}.bg-purple-900\/50{background-color:rgba(88,28,135,.5)}.bg-red-100{--tw-bg-opacity:1;background-color:rgb(254 226 226/var(--tw-bg-opacity,1))}.bg-red-400{--tw-bg-opacity:1;background-color:rgb(248 113 113/var(--tw-bg-opacity,1))}.bg-red-50{--tw-bg-opacity:1;background-color:rgb(254 242 242/var(--tw-bg-opacity,1))}.bg-red-500{--tw-bg-opacity:1;background-color:rgb(239 68 68/var(--tw-bg-opacity,1))}.bg-red-500\/10{background-color:rgba(239,68,68,.1)}.bg-red-500\/20{background-color:rgba(239,68,68,.2)}.bg-red-900\/50{background-color:rgba(127,29,29,.5)}.bg-rose-100{--tw-bg-opacity:1;background-color:rgb(255 228 230/var(--tw-bg-opacity,1))}.bg-teal-500\/10{background-color:rgba(20,184,166,.1)}.bg-transparent{background-color:transparent}.bg-white{--tw-bg-opacity:1;background-color:rgb(255 255 255/var(--tw-bg-opacity,1))}.bg-yellow-400{--tw-bg-opacity:1;background-color:rgb(250 204 21/var(--tw-bg-opacity,1))}.bg-yellow-50{--tw-bg-opacity:1;background-color:rgb(254 252 232/var(--tw-bg-opacity,1))}.bg-yellow-500\/10{background-color:rgba(234,179,8,.1)}.bg-yellow-500\/20{background-color:rgba(234,179,8,.2)}.bg-yellow-900\/50{background-color:rgba(113,63,18,.5)}.object-contain{-o-object-fit:contain;object-fit:contain}.object-cover{-o-object-fit:cover;object-fit:cover}.p-0{padding:0}.p-0\.5{padding:.125rem}.p-1{padding:.25rem}.p-2{padding:.5rem}.p-2\.5{padding:.625rem}.p-3{padding:.75rem}.p-4{padding:1rem}.p-5{padding:1.25rem}.p-6{padding:1.5rem}.p-8{padding:2rem}.px-1{padding-left:.25rem;padding-right:.25rem}.px-1\.5{padding-left:.375rem;padding-right:.375rem}.px-2{padding-left:.5rem;padding-right:.5rem}.px-2\.5{padding-left:.625rem;padding-right:.625rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-4{padding-left:1rem;padding-right:1rem}.px-6{padding-left:1.5rem;padding-right:1.5rem}.py-0\.5{padding-top:.125rem;padding-bottom:.125rem}.py-1{padding-top:.25rem;padding-bottom:.25rem}.py-1\.5{padding-top:.375rem;padding-bottom:.375rem}.py-10{padding-top:2.5rem;padding-bottom:2.5rem}.py-12{padding-top:3rem;padding-bottom:3rem}.py-16{padding-top:4rem;padding-bottom:4rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.py-2\.5{padding-top:.625rem;padding-bottom:.625rem}.py-20{padding-top:5rem;padding-bottom:5rem}.py-3{padding-top:.75rem;padding-bottom:.75rem}.py-4{padding-top:1rem;padding-bottom:1rem}.py-6{padding-top:1.5rem;padding-bottom:1.5rem}.py-8{padding-top:2rem;padding-bottom:2rem}.pb-1{padding-bottom:.25rem}.pb-2{padding-bottom:.5rem}.pb-4{padding-bottom:1rem}.pb-6{padding-bottom:1.5rem}.pl-6{padding-left:1.5rem}.pr-2{padding-right:.5rem}.pr-3{padding-right:.75rem}.pt-0\.5{padding-top:.125rem}.pt-1{padding-top:.25rem}.pt-3{padding-top:.75rem}.pt-6{padding-top:1.5rem}.text-left{text-align:left}.text-center{text-align:center}.text-right{text-align:right}.font-mono{font-family:JetBrains Mono,monospace}.\!text-2xl{font-size:1.5rem!important;line-height:2rem!important}.\!text-base{font-size:1rem!important;line-height:1.5rem!important}.\!text-lg{font-size:1.125rem!important;line-height:1.75rem!important}.\!text-sm{font-size:.875rem!important;line-height:1.25rem!important}.\!text-xl{font-size:1.25rem!important;line-height:1.75rem!important}.\!text-xs{font-size:.75rem!important;line-height:1rem!important}.text-2xl{font-size:1.5rem;line-height:2rem}.text-3xl{font-size:1.875rem;line-height:2.25rem}.text-4xl{font-size:2.25rem;line-height:2.5rem}.text-\[10px\]{font-size:10px}.text-\[11px\]{font-size:11px}.text-\[8px\]{font-size:8px}.text-base{font-size:1rem;line-height:1.5rem}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xl{font-size:1.25rem;line-height:1.75rem}.text-xs{font-size:.75rem;line-height:1rem}.font-bold{font-weight:700}.font-medium{font-weight:500}.font-semibold{font-weight:600}.uppercase{text-transform:uppercase}.lowercase{text-transform:lowercase}.capitalize{text-transform:capitalize}.leading-none{line-height:1}.leading-relaxed{line-height:1.625}.leading-snug{line-height:1.375}.tracking-wider{letter-spacing:.05em}.\!text-amber-700{--tw-text-opacity:1!important;color:rgb(180 83 9/var(--tw-text-opacity,1))!important}.\!text-blue-500{--tw-text-opacity:1!important;color:rgb(59 130 246/var(--tw-text-opacity,1))!important}.\!text-blue-600{--tw-text-opacity:1!important;color:rgb(37 99 235/var(--tw-text-opacity,1))!important}.\!text-blue-700{--tw-text-opacity:1!important;color:rgb(29 78 216/var(--tw-text-opacity,1))!important}.\!text-cyan-700{--tw-text-opacity:1!important;color:rgb(14 116 144/var(--tw-text-opacity,1))!important}.\!text-emerald-700{--tw-text-opacity:1!important;color:rgb(4 120 87/var(--tw-text-opacity,1))!important}.\!text-indigo-700{--tw-text-opacity:1!important;color:rgb(67 56 202/var(--tw-text-opacity,1))!important}.\!text-neutral-400{--tw-text-opacity:1!important;color:rgb(163 163 163/var(--tw-text-opacity,1))!important}.\!text-neutral-500{--tw-text-opacity:1!important;color:rgb(115 115 115/var(--tw-text-opacity,1))!important}.\!text-neutral-600{--tw-text-opacity:1!important;color:rgb(82 82 82/var(--tw-text-opacity,1))!important}.\!text-neutral-700{--tw-text-opacity:1!important;color:rgb(64 64 64/var(--tw-text-opacity,1))!important}.\!text-neutral-800{--tw-text-opacity:1!important;color:rgb(38 38 38/var(--tw-text-opacity,1))!important}.\!text-neutral-900{--tw-text-opacity:1!important;color:rgb(23 23 23/var(--tw-text-opacity,1))!important}.\!text-orange-700{--tw-text-opacity:1!important;color:rgb(194 65 12/var(--tw-text-opacity,1))!important}.\!text-purple-700{--tw-text-opacity:1!important;color:rgb(126 34 206/var(--tw-text-opacity,1))!important}.\!text-red-600{--tw-text-opacity:1!important;color:rgb(220 38 38/var(--tw-text-opacity,1))!important}.\!text-red-700{--tw-text-opacity:1!important;color:rgb(185 28 28/var(--tw-text-opacity,1))!important}.\!text-rose-700{--tw-text-opacity:1!important;color:rgb(190 18 60/var(--tw-text-opacity,1))!important}.\!text-white{--tw-text-opacity:1!important;color:rgb(255 255 255/var(--tw-text-opacity,1))!important}.text-\[\#333\]{--tw-text-opacity:1;color:rgb(51 51 51/var(--tw-text-opacity,1))}.text-\[\#3b82f6\]{--tw-text-opacity:1;color:rgb(59 130 246/var(--tw-text-opacity,1))}.text-\[\#444\]{--tw-text-opacity:1;color:rgb(68 68 68/var(--tw-text-opacity,1))}.text-\[\#555\]{--tw-text-opacity:1;color:rgb(85 85 85/var(--tw-text-opacity,1))}.text-\[\#666\]{--tw-text-opacity:1;color:rgb(102 102 102/var(--tw-text-opacity,1))}.text-\[\#6a6\]{--tw-text-opacity:1;color:rgb(102 170 102/var(--tw-text-opacity,1))}.text-\[\#888\]{--tw-text-opacity:1;color:rgb(136 136 136/var(--tw-text-opacity,1))}.text-\[\#aaa\]{--tw-text-opacity:1;color:rgb(170 170 170/var(--tw-text-opacity,1))}.text-\[\#ccc\]{--tw-text-opacity:1;color:rgb(204 204 204/var(--tw-text-opacity,1))}.text-\[\#e0e0e0\]{--tw-text-opacity:1;color:rgb(224 224 224/var(--tw-text-opacity,1))}.text-\[\#f97316\]{--tw-text-opacity:1;color:rgb(249 115 22/var(--tw-text-opacity,1))}.text-\[\#f97316\]\/70{color:rgba(249,115,22,.7)}.text-amber-400{--tw-text-opacity:1;color:rgb(251 191 36/var(--tw-text-opacity,1))}.text-amber-600{--tw-text-opacity:1;color:rgb(217 119 6/var(--tw-text-opacity,1))}.text-black{--tw-text-opacity:1;color:rgb(0 0 0/var(--tw-text-opacity,1))}.text-blue-400{--tw-text-opacity:1;color:rgb(96 165 250/var(--tw-text-opacity,1))}.text-blue-500{--tw-text-opacity:1;color:rgb(59 130 246/var(--tw-text-opacity,1))}.text-blue-600{--tw-text-opacity:1;color:rgb(37 99 235/var(--tw-text-opacity,1))}.text-blue-700{--tw-text-opacity:1;color:rgb(29 78 216/var(--tw-text-opacity,1))}.text-blue-800{--tw-text-opacity:1;color:rgb(30 64 175/var(--tw-text-opacity,1))}.text-cyan-400{--tw-text-opacity:1;color:rgb(34 211 238/var(--tw-text-opacity,1))}.text-cyan-600{--tw-text-opacity:1;color:rgb(8 145 178/var(--tw-text-opacity,1))}.text-emerald-500{--tw-text-opacity:1;color:rgb(16 185 129/var(--tw-text-opacity,1))}.text-emerald-600{--tw-text-opacity:1;color:rgb(5 150 105/var(--tw-text-opacity,1))}.text-gray-400{--tw-text-opacity:1;color:rgb(156 163 175/var(--tw-text-opacity,1))}.text-green-400{--tw-text-opacity:1;color:rgb(74 222 128/var(--tw-text-opacity,1))}.text-green-600{--tw-text-opacity:1;color:rgb(22 163 74/var(--tw-text-opacity,1))}.text-green-700{--tw-text-opacity:1;color:rgb(21 128 61/var(--tw-text-opacity,1))}.text-green-800{--tw-text-opacity:1;color:rgb(22 101 52/var(--tw-text-opacity,1))}.text-indigo-600{--tw-text-opacity:1;color:rgb(79 70 229/var(--tw-text-opacity,1))}.text-neutral-400{--tw-text-opacity:1;color:rgb(163 163 163/var(--tw-text-opacity,1))}.text-neutral-500{--tw-text-opacity:1;color:rgb(115 115 115/var(--tw-text-opacity,1))}.text-neutral-600{--tw-text-opacity:1;color:rgb(82 82 82/var(--tw-text-opacity,1))}.text-neutral-700{--tw-text-opacity:1;color:rgb(64 64 64/var(--tw-text-opacity,1))}.text-neutral-800{--tw-text-opacity:1;color:rgb(38 38 38/var(--tw-text-opacity,1))}.text-neutral-900{--tw-text-opacity:1;color:rgb(23 23 23/var(--tw-text-opacity,1))}.text-orange-400{--tw-text-opacity:1;color:rgb(251 146 60/var(--tw-text-opacity,1))}.text-pink-400{--tw-text-opacity:1;color:rgb(244 114 182/var(--tw-text-opacity,1))}.text-purple-400{--tw-text-opacity:1;color:rgb(192 132 252/var(--tw-text-opacity,1))}.text-purple-600{--tw-text-opacity:1;color:rgb(147 51 234/var(--tw-text-opacity,1))}.text-red-300{--tw-text-opacity:1;color:rgb(252 165 165/var(--tw-text-opacity,1))}.text-red-400{--tw-text-opacity:1;color:rgb(248 113 113/var(--tw-text-opacity,1))}.text-red-400\/70{color:hsla(0,91%,71%,.7)}.text-red-500{--tw-text-opacity:1;color:rgb(239 68 68/var(--tw-text-opacity,1))}.text-red-600{--tw-text-opacity:1;color:rgb(220 38 38/var(--tw-text-opacity,1))}.text-red-700{--tw-text-opacity:1;color:rgb(185 28 28/var(--tw-text-opacity,1))}.text-red-800{--tw-text-opacity:1;color:rgb(153 27 27/var(--tw-text-opacity,1))}.text-teal-400{--tw-text-opacity:1;color:rgb(45 212 191/var(--tw-text-opacity,1))}.text-white{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1))}.text-yellow-400{--tw-text-opacity:1;color:rgb(250 204 21/var(--tw-text-opacity,1))}.text-yellow-400\/80{color:rgba(250,204,21,.8)}.text-yellow-500{--tw-text-opacity:1;color:rgb(234 179 8/var(--tw-text-opacity,1))}.text-yellow-800{--tw-text-opacity:1;color:rgb(133 77 14/var(--tw-text-opacity,1))}.line-through{text-decoration-line:line-through}.placeholder-\[\#444\]::-moz-placeholder{--tw-placeholder-opacity:1;color:rgb(68 68 68/var(--tw-placeholder-opacity,1))}.placeholder-\[\#444\]::placeholder{--tw-placeholder-opacity:1;color:rgb(68 68 68/var(--tw-placeholder-opacity,1))}.placeholder-neutral-400::-moz-placeholder{--tw-placeholder-opacity:1;color:rgb(163 163 163/var(--tw-placeholder-opacity,1))}.placeholder-neutral-400::placeholder{--tw-placeholder-opacity:1;color:rgb(163 163 163/var(--tw-placeholder-opacity,1))}.opacity-0{opacity:0}.opacity-100{opacity:1}.opacity-25{opacity:.25}.opacity-30{opacity:.3}.opacity-50{opacity:.5}.opacity-60{opacity:.6}.opacity-75{opacity:.75}.shadow-2xl{--tw-shadow:0 25px 50px -12px rgba(0,0,0,.25);--tw-shadow-colored:0 25px 50px -12px var(--tw-shadow-color)}.shadow-2xl,.shadow-lg{box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.shadow-lg{--tw-shadow:0 10px 15px -3px rgba(0,0,0,.1),0 4px 6px -4px rgba(0,0,0,.1);--tw-shadow-colored:0 10px 15px -3px var(--tw-shadow-color),0 4px 6px -4px var(--tw-shadow-color)}.shadow-sm{--tw-shadow:0 1px 2px 0 rgba(0,0,0,.05);--tw-shadow-colored:0 1px 2px 0 var(--tw-shadow-color)}.shadow-sm,.shadow-xl{box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.shadow-xl{--tw-shadow:0 20px 25px -5px rgba(0,0,0,.1),0 8px 10px -6px rgba(0,0,0,.1);--tw-shadow-colored:0 20px 25px -5px var(--tw-shadow-color),0 8px 10px -6px var(--tw-shadow-color)}.outline{outline-style:solid}.ring-2{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000)}.ring-\[\#0a0a0a\]{--tw-ring-opacity:1;--tw-ring-color:rgb(10 10 10/var(--tw-ring-opacity,1))}.ring-blue-400{--tw-ring-opacity:1;--tw-ring-color:rgb(96 165 250/var(--tw-ring-opacity,1))}.ring-white{--tw-ring-opacity:1;--tw-ring-color:rgb(255 255 255/var(--tw-ring-opacity,1))}.ring-offset-2{--tw-ring-offset-width:2px}.ring-offset-\[\#111\]{--tw-ring-offset-color:#111}.blur{--tw-blur:blur(8px)}.blur,.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.backdrop-blur-\[2px\]{--tw-backdrop-blur:blur(2px)}.backdrop-blur-\[2px\],.backdrop-blur-sm{-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.backdrop-blur-sm{--tw-backdrop-blur:blur(4px)}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,-webkit-backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter,-webkit-backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-all{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-opacity{transition-property:opacity;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-transform{transition-property:transform;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.duration-1000{transition-duration:1s}.duration-200{transition-duration:.2s}.duration-300{transition-duration:.3s}.duration-500{transition-duration:.5s}.ease-in-out{transition-timing-function:cubic-bezier(.4,0,.2,1)}.ease-out{transition-timing-function:cubic-bezier(0,0,.2,1)}body,html{background-color:#0a0a0a;min-height:100%;margin:0;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*{-ms-overflow-style:none;scrollbar-width:none}::-webkit-scrollbar{display:none}::-moz-selection{background-color:#f97316;color:#0a0a0a}::selection{background-color:#f97316;color:#0a0a0a}.line-clamp-2{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.scrollbar-hide{-ms-overflow-style:none;scrollbar-width:none}.scrollbar-hide::-webkit-scrollbar{display:none}@keyframes slideIn{0%{opacity:0;transform:translateY(-12px);max-height:0}40%{opacity:.6;max-height:100px}to{opacity:1;transform:translateY(0);max-height:100px}}@keyframes highlightFade{0%{background-color:rgba(249,115,22,.08)}to{background-color:transparent}}.animate-slideIn{animation:slideIn .5s cubic-bezier(.16,1,.3,1),highlightFade 2s ease-out .5s;overflow:hidden}.last\:mb-0:last-child{margin-bottom:0}.last\:border-0:last-child{border-width:0}.last\:border-b-0:last-child{border-bottom-width:0}.hover\:scale-110:hover{--tw-scale-x:1.1;--tw-scale-y:1.1;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.hover\:border-\[\#333\]:hover{--tw-border-opacity:1;border-color:rgb(51 51 51/var(--tw-border-opacity,1))}.hover\:border-\[\#444\]:hover{--tw-border-opacity:1;border-color:rgb(68 68 68/var(--tw-border-opacity,1))}.hover\:border-\[\#555\]:hover{--tw-border-opacity:1;border-color:rgb(85 85 85/var(--tw-border-opacity,1))}.hover\:border-\[\#666\]:hover{--tw-border-opacity:1;border-color:rgb(102 102 102/var(--tw-border-opacity,1))}.hover\:border-\[\#f97316\]:hover{--tw-border-opacity:1;border-color:rgb(249 115 22/var(--tw-border-opacity,1))}.hover\:border-blue-300:hover{--tw-border-opacity:1;border-color:rgb(147 197 253/var(--tw-border-opacity,1))}.hover\:border-blue-500\/50:hover{border-color:rgba(59,130,246,.5)}.hover\:border-green-500\/50:hover{border-color:rgba(34,197,94,.5)}.hover\:border-neutral-300:hover{--tw-border-opacity:1;border-color:rgb(212 212 212/var(--tw-border-opacity,1))}.hover\:border-red-500\/50:hover{border-color:rgba(239,68,68,.5)}.hover\:bg-\[\#0a0a0a\]:hover{--tw-bg-opacity:1;background-color:rgb(10 10 10/var(--tw-bg-opacity,1))}.hover\:bg-\[\#111\]:hover{--tw-bg-opacity:1;background-color:rgb(17 17 17/var(--tw-bg-opacity,1))}.hover\:bg-\[\#111\]\/50:hover{background-color:hsla(0,0%,7%,.5)}.hover\:bg-\[\#151515\]:hover{--tw-bg-opacity:1;background-color:rgb(21 21 21/var(--tw-bg-opacity,1))}.hover\:bg-\[\#1a1a1a\]:hover{--tw-bg-opacity:1;background-color:rgb(26 26 26/var(--tw-bg-opacity,1))}.hover\:bg-\[\#1a1a3a\]:hover{--tw-bg-opacity:1;background-color:rgb(26 26 58/var(--tw-bg-opacity,1))}.hover\:bg-\[\#1a3a1a\]:hover{--tw-bg-opacity:1;background-color:rgb(26 58 26/var(--tw-bg-opacity,1))}.hover\:bg-\[\#222\]:hover{--tw-bg-opacity:1;background-color:rgb(34 34 34/var(--tw-bg-opacity,1))}.hover\:bg-\[\#333\]:hover{--tw-bg-opacity:1;background-color:rgb(51 51 51/var(--tw-bg-opacity,1))}.hover\:bg-\[\#3b82f6\]\/30:hover{background-color:rgba(59,130,246,.3)}.hover\:bg-\[\#ea580c\]:hover{--tw-bg-opacity:1;background-color:rgb(234 88 12/var(--tw-bg-opacity,1))}.hover\:bg-\[\#f97316\]\/10:hover{background-color:rgba(249,115,22,.1)}.hover\:bg-\[\#f97316\]\/20:hover{background-color:rgba(249,115,22,.2)}.hover\:bg-\[\#f97316\]\/30:hover{background-color:rgba(249,115,22,.3)}.hover\:bg-\[\#fb923c\]:hover{--tw-bg-opacity:1;background-color:rgb(251 146 60/var(--tw-bg-opacity,1))}.hover\:bg-amber-600:hover{--tw-bg-opacity:1;background-color:rgb(217 119 6/var(--tw-bg-opacity,1))}.hover\:bg-blue-100:hover{--tw-bg-opacity:1;background-color:rgb(219 234 254/var(--tw-bg-opacity,1))}.hover\:bg-blue-50:hover{--tw-bg-opacity:1;background-color:rgb(239 246 255/var(--tw-bg-opacity,1))}.hover\:bg-blue-600:hover{--tw-bg-opacity:1;background-color:rgb(37 99 235/var(--tw-bg-opacity,1))}.hover\:bg-blue-700:hover{--tw-bg-opacity:1;background-color:rgb(29 78 216/var(--tw-bg-opacity,1))}.hover\:bg-green-500\/20:hover{background-color:rgba(34,197,94,.2)}.hover\:bg-neutral-100:hover{--tw-bg-opacity:1;background-color:rgb(245 245 245/var(--tw-bg-opacity,1))}.hover\:bg-neutral-200:hover{--tw-bg-opacity:1;background-color:rgb(229 229 229/var(--tw-bg-opacity,1))}.hover\:bg-neutral-300:hover{--tw-bg-opacity:1;background-color:rgb(212 212 212/var(--tw-bg-opacity,1))}.hover\:bg-neutral-50:hover{--tw-bg-opacity:1;background-color:rgb(250 250 250/var(--tw-bg-opacity,1))}.hover\:bg-neutral-600:hover{--tw-bg-opacity:1;background-color:rgb(82 82 82/var(--tw-bg-opacity,1))}.hover\:bg-neutral-700:hover{--tw-bg-opacity:1;background-color:rgb(64 64 64/var(--tw-bg-opacity,1))}.hover\:bg-red-50:hover{--tw-bg-opacity:1;background-color:rgb(254 242 242/var(--tw-bg-opacity,1))}.hover\:bg-red-500\/30:hover{background-color:rgba(239,68,68,.3)}.hover\:bg-red-600:hover{--tw-bg-opacity:1;background-color:rgb(220 38 38/var(--tw-bg-opacity,1))}.hover\:bg-yellow-500\/20:hover{background-color:rgba(234,179,8,.2)}.hover\:bg-yellow-500\/30:hover{background-color:rgba(234,179,8,.3)}.hover\:\!text-neutral-600:hover{--tw-text-opacity:1!important;color:rgb(82 82 82/var(--tw-text-opacity,1))!important}.hover\:\!text-neutral-700:hover{--tw-text-opacity:1!important;color:rgb(64 64 64/var(--tw-text-opacity,1))!important}.hover\:text-\[\#60a5fa\]:hover{--tw-text-opacity:1;color:rgb(96 165 250/var(--tw-text-opacity,1))}.hover\:text-\[\#888\]:hover{--tw-text-opacity:1;color:rgb(136 136 136/var(--tw-text-opacity,1))}.hover\:text-\[\#e0e0e0\]:hover{--tw-text-opacity:1;color:rgb(224 224 224/var(--tw-text-opacity,1))}.hover\:text-\[\#f97316\]:hover{--tw-text-opacity:1;color:rgb(249 115 22/var(--tw-text-opacity,1))}.hover\:text-\[\#fb923c\]:hover{--tw-text-opacity:1;color:rgb(251 146 60/var(--tw-text-opacity,1))}.hover\:text-green-300:hover{--tw-text-opacity:1;color:rgb(134 239 172/var(--tw-text-opacity,1))}.hover\:text-green-400:hover{--tw-text-opacity:1;color:rgb(74 222 128/var(--tw-text-opacity,1))}.hover\:text-neutral-600:hover{--tw-text-opacity:1;color:rgb(82 82 82/var(--tw-text-opacity,1))}.hover\:text-neutral-900:hover{--tw-text-opacity:1;color:rgb(23 23 23/var(--tw-text-opacity,1))}.hover\:text-red-300:hover{--tw-text-opacity:1;color:rgb(252 165 165/var(--tw-text-opacity,1))}.hover\:text-red-400:hover{--tw-text-opacity:1;color:rgb(248 113 113/var(--tw-text-opacity,1))}.hover\:text-red-500:hover{--tw-text-opacity:1;color:rgb(239 68 68/var(--tw-text-opacity,1))}.hover\:text-white:hover{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1))}.hover\:underline:hover{text-decoration-line:underline}.hover\:shadow:hover{--tw-shadow:0 1px 3px 0 rgba(0,0,0,.1),0 1px 2px -1px rgba(0,0,0,.1);--tw-shadow-colored:0 1px 3px 0 var(--tw-shadow-color),0 1px 2px -1px var(--tw-shadow-color)}.hover\:shadow-md:hover,.hover\:shadow:hover{box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.hover\:shadow-md:hover{--tw-shadow:0 4px 6px -1px rgba(0,0,0,.1),0 2px 4px -2px rgba(0,0,0,.1);--tw-shadow-colored:0 4px 6px -1px var(--tw-shadow-color),0 2px 4px -2px var(--tw-shadow-color)}.focus\:border-\[\#f97316\]:focus{--tw-border-opacity:1;border-color:rgb(249 115 22/var(--tw-border-opacity,1))}.focus\:border-transparent:focus{border-color:transparent}.focus\:outline-none:focus{outline:2px solid transparent;outline-offset:2px}.focus\:ring-2:focus{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000)}.focus\:ring-blue-500:focus{--tw-ring-opacity:1;--tw-ring-color:rgb(59 130 246/var(--tw-ring-opacity,1))}.active\:scale-\[0\.98\]:active{--tw-scale-x:0.98;--tw-scale-y:0.98;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:cursor-wait:disabled{cursor:wait}.disabled\:opacity-30:disabled{opacity:.3}.disabled\:opacity-50:disabled{opacity:.5}.group:hover .group-hover\:bg-blue-100{--tw-bg-opacity:1;background-color:rgb(219 234 254/var(--tw-bg-opacity,1))}.group:hover .group-hover\:\!text-blue-500{--tw-text-opacity:1!important;color:rgb(59 130 246/var(--tw-text-opacity,1))!important}.group:hover .group-hover\:\!text-blue-600{--tw-text-opacity:1!important;color:rgb(37 99 235/var(--tw-text-opacity,1))!important}.group:hover .group-hover\:opacity-100{opacity:1}.dark\:border-amber-500:is(.dark *){--tw-border-opacity:1;border-color:rgb(245 158 11/var(--tw-border-opacity,1))}.dark\:border-blue-400:is(.dark *){--tw-border-opacity:1;border-color:rgb(96 165 250/var(--tw-border-opacity,1))}.dark\:border-blue-500:is(.dark *){--tw-border-opacity:1;border-color:rgb(59 130 246/var(--tw-border-opacity,1))}.dark\:border-blue-800:is(.dark *){--tw-border-opacity:1;border-color:rgb(30 64 175/var(--tw-border-opacity,1))}.dark\:border-cyan-500:is(.dark *){--tw-border-opacity:1;border-color:rgb(6 182 212/var(--tw-border-opacity,1))}.dark\:border-emerald-400:is(.dark *){--tw-border-opacity:1;border-color:rgb(52 211 153/var(--tw-border-opacity,1))}.dark\:border-emerald-500:is(.dark *){--tw-border-opacity:1;border-color:rgb(16 185 129/var(--tw-border-opacity,1))}.dark\:border-green-500:is(.dark *){--tw-border-opacity:1;border-color:rgb(34 197 94/var(--tw-border-opacity,1))}.dark\:border-green-800:is(.dark *){--tw-border-opacity:1;border-color:rgb(22 101 52/var(--tw-border-opacity,1))}.dark\:border-indigo-500:is(.dark *){--tw-border-opacity:1;border-color:rgb(99 102 241/var(--tw-border-opacity,1))}.dark\:border-neutral-600:is(.dark *){--tw-border-opacity:1;border-color:rgb(82 82 82/var(--tw-border-opacity,1))}.dark\:border-neutral-700:is(.dark *){--tw-border-opacity:1;border-color:rgb(64 64 64/var(--tw-border-opacity,1))}.dark\:border-neutral-800:is(.dark *){--tw-border-opacity:1;border-color:rgb(38 38 38/var(--tw-border-opacity,1))}.dark\:border-orange-500:is(.dark *){--tw-border-opacity:1;border-color:rgb(249 115 22/var(--tw-border-opacity,1))}.dark\:border-purple-500:is(.dark *){--tw-border-opacity:1;border-color:rgb(168 85 247/var(--tw-border-opacity,1))}.dark\:border-red-400:is(.dark *){--tw-border-opacity:1;border-color:rgb(248 113 113/var(--tw-border-opacity,1))}.dark\:border-red-500:is(.dark *){--tw-border-opacity:1;border-color:rgb(239 68 68/var(--tw-border-opacity,1))}.dark\:border-red-800:is(.dark *){--tw-border-opacity:1;border-color:rgb(153 27 27/var(--tw-border-opacity,1))}.dark\:border-rose-500:is(.dark *){--tw-border-opacity:1;border-color:rgb(244 63 94/var(--tw-border-opacity,1))}.dark\:border-white:is(.dark *){--tw-border-opacity:1;border-color:rgb(255 255 255/var(--tw-border-opacity,1))}.dark\:bg-amber-500\/20:is(.dark *){background-color:rgba(245,158,11,.2)}.dark\:bg-amber-900\/40:is(.dark *){background-color:rgba(120,53,15,.4)}.dark\:bg-black:is(.dark *){--tw-bg-opacity:1;background-color:rgb(0 0 0/var(--tw-bg-opacity,1))}.dark\:bg-blue-500\/20:is(.dark *){background-color:rgba(59,130,246,.2)}.dark\:bg-blue-900\/20:is(.dark *){background-color:rgba(30,58,138,.2)}.dark\:bg-blue-900\/30:is(.dark *){background-color:rgba(30,58,138,.3)}.dark\:bg-blue-900\/40:is(.dark *){background-color:rgba(30,58,138,.4)}.dark\:bg-cyan-500\/20:is(.dark *){background-color:rgba(6,182,212,.2)}.dark\:bg-cyan-900\/40:is(.dark *){background-color:rgba(22,78,99,.4)}.dark\:bg-emerald-500\/20:is(.dark *){background-color:rgba(16,185,129,.2)}.dark\:bg-emerald-900\/40:is(.dark *){background-color:rgba(6,78,59,.4)}.dark\:bg-green-900\/20:is(.dark *){background-color:rgba(20,83,45,.2)}.dark\:bg-indigo-500\/20:is(.dark *){background-color:rgba(99,102,241,.2)}.dark\:bg-indigo-900\/40:is(.dark *){background-color:rgba(49,46,129,.4)}.dark\:bg-neutral-600:is(.dark *){--tw-bg-opacity:1;background-color:rgb(82 82 82/var(--tw-bg-opacity,1))}.dark\:bg-neutral-700:is(.dark *){--tw-bg-opacity:1;background-color:rgb(64 64 64/var(--tw-bg-opacity,1))}.dark\:bg-neutral-800:is(.dark *){--tw-bg-opacity:1;background-color:rgb(38 38 38/var(--tw-bg-opacity,1))}.dark\:bg-neutral-800\/50:is(.dark *){background-color:rgba(38,38,38,.5)}.dark\:bg-neutral-900:is(.dark *){--tw-bg-opacity:1;background-color:rgb(23 23 23/var(--tw-bg-opacity,1))}.dark\:bg-orange-900\/40:is(.dark *){background-color:rgba(124,45,18,.4)}.dark\:bg-purple-500\/20:is(.dark *){background-color:rgba(168,85,247,.2)}.dark\:bg-purple-900\/40:is(.dark *){background-color:rgba(88,28,135,.4)}.dark\:bg-red-900\/20:is(.dark *){background-color:rgba(127,29,29,.2)}.dark\:bg-red-900\/30:is(.dark *){background-color:rgba(127,29,29,.3)}.dark\:bg-red-900\/40:is(.dark *){background-color:rgba(127,29,29,.4)}.dark\:bg-rose-900\/40:is(.dark *){background-color:rgba(136,19,55,.4)}.dark\:bg-white:is(.dark *){--tw-bg-opacity:1;background-color:rgb(255 255 255/var(--tw-bg-opacity,1))}.dark\:\!text-amber-300:is(.dark *){--tw-text-opacity:1!important;color:rgb(252 211 77/var(--tw-text-opacity,1))!important}.dark\:\!text-blue-300:is(.dark *){--tw-text-opacity:1!important;color:rgb(147 197 253/var(--tw-text-opacity,1))!important}.dark\:\!text-blue-400:is(.dark *){--tw-text-opacity:1!important;color:rgb(96 165 250/var(--tw-text-opacity,1))!important}.dark\:\!text-cyan-300:is(.dark *){--tw-text-opacity:1!important;color:rgb(103 232 249/var(--tw-text-opacity,1))!important}.dark\:\!text-emerald-300:is(.dark *){--tw-text-opacity:1!important;color:rgb(110 231 183/var(--tw-text-opacity,1))!important}.dark\:\!text-indigo-300:is(.dark *){--tw-text-opacity:1!important;color:rgb(165 180 252/var(--tw-text-opacity,1))!important}.dark\:\!text-neutral-100:is(.dark *){--tw-text-opacity:1!important;color:rgb(245 245 245/var(--tw-text-opacity,1))!important}.dark\:\!text-neutral-200:is(.dark *){--tw-text-opacity:1!important;color:rgb(229 229 229/var(--tw-text-opacity,1))!important}.dark\:\!text-neutral-300:is(.dark *){--tw-text-opacity:1!important;color:rgb(212 212 212/var(--tw-text-opacity,1))!important}.dark\:\!text-neutral-400:is(.dark *){--tw-text-opacity:1!important;color:rgb(163 163 163/var(--tw-text-opacity,1))!important}.dark\:\!text-neutral-500:is(.dark *){--tw-text-opacity:1!important;color:rgb(115 115 115/var(--tw-text-opacity,1))!important}.dark\:\!text-neutral-600:is(.dark *){--tw-text-opacity:1!important;color:rgb(82 82 82/var(--tw-text-opacity,1))!important}.dark\:\!text-neutral-900:is(.dark *){--tw-text-opacity:1!important;color:rgb(23 23 23/var(--tw-text-opacity,1))!important}.dark\:\!text-orange-300:is(.dark *){--tw-text-opacity:1!important;color:rgb(253 186 116/var(--tw-text-opacity,1))!important}.dark\:\!text-purple-300:is(.dark *){--tw-text-opacity:1!important;color:rgb(216 180 254/var(--tw-text-opacity,1))!important}.dark\:\!text-red-300:is(.dark *){--tw-text-opacity:1!important;color:rgb(252 165 165/var(--tw-text-opacity,1))!important}.dark\:\!text-red-400:is(.dark *){--tw-text-opacity:1!important;color:rgb(248 113 113/var(--tw-text-opacity,1))!important}.dark\:\!text-rose-300:is(.dark *){--tw-text-opacity:1!important;color:rgb(253 164 175/var(--tw-text-opacity,1))!important}.dark\:\!text-white:is(.dark *){--tw-text-opacity:1!important;color:rgb(255 255 255/var(--tw-text-opacity,1))!important}.dark\:text-amber-400:is(.dark *){--tw-text-opacity:1;color:rgb(251 191 36/var(--tw-text-opacity,1))}.dark\:text-blue-300:is(.dark *){--tw-text-opacity:1;color:rgb(147 197 253/var(--tw-text-opacity,1))}.dark\:text-blue-400:is(.dark *){--tw-text-opacity:1;color:rgb(96 165 250/var(--tw-text-opacity,1))}.dark\:text-cyan-400:is(.dark *){--tw-text-opacity:1;color:rgb(34 211 238/var(--tw-text-opacity,1))}.dark\:text-emerald-400:is(.dark *){--tw-text-opacity:1;color:rgb(52 211 153/var(--tw-text-opacity,1))}.dark\:text-green-300:is(.dark *){--tw-text-opacity:1;color:rgb(134 239 172/var(--tw-text-opacity,1))}.dark\:text-green-400:is(.dark *){--tw-text-opacity:1;color:rgb(74 222 128/var(--tw-text-opacity,1))}.dark\:text-indigo-400:is(.dark *){--tw-text-opacity:1;color:rgb(129 140 248/var(--tw-text-opacity,1))}.dark\:text-neutral-100:is(.dark *){--tw-text-opacity:1;color:rgb(245 245 245/var(--tw-text-opacity,1))}.dark\:text-neutral-200:is(.dark *){--tw-text-opacity:1;color:rgb(229 229 229/var(--tw-text-opacity,1))}.dark\:text-neutral-300:is(.dark *){--tw-text-opacity:1;color:rgb(212 212 212/var(--tw-text-opacity,1))}.dark\:text-neutral-400:is(.dark *){--tw-text-opacity:1;color:rgb(163 163 163/var(--tw-text-opacity,1))}.dark\:text-neutral-500:is(.dark *){--tw-text-opacity:1;color:rgb(115 115 115/var(--tw-text-opacity,1))}.dark\:text-purple-400:is(.dark *){--tw-text-opacity:1;color:rgb(192 132 252/var(--tw-text-opacity,1))}.dark\:text-red-300:is(.dark *){--tw-text-opacity:1;color:rgb(252 165 165/var(--tw-text-opacity,1))}.dark\:text-red-400:is(.dark *){--tw-text-opacity:1;color:rgb(248 113 113/var(--tw-text-opacity,1))}.dark\:text-white:is(.dark *){--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1))}.dark\:placeholder-neutral-500:is(.dark *)::-moz-placeholder{--tw-placeholder-opacity:1;color:rgb(115 115 115/var(--tw-placeholder-opacity,1))}.dark\:placeholder-neutral-500:is(.dark *)::placeholder{--tw-placeholder-opacity:1;color:rgb(115 115 115/var(--tw-placeholder-opacity,1))}.dark\:hover\:border-blue-600:hover:is(.dark *){--tw-border-opacity:1;border-color:rgb(37 99 235/var(--tw-border-opacity,1))}.dark\:hover\:border-neutral-600:hover:is(.dark *){--tw-border-opacity:1;border-color:rgb(82 82 82/var(--tw-border-opacity,1))}.dark\:hover\:bg-blue-900:hover:is(.dark *){--tw-bg-opacity:1;background-color:rgb(30 58 138/var(--tw-bg-opacity,1))}.dark\:hover\:bg-blue-900\/40:hover:is(.dark *){background-color:rgba(30,58,138,.4)}.dark\:hover\:bg-neutral-600:hover:is(.dark *){--tw-bg-opacity:1;background-color:rgb(82 82 82/var(--tw-bg-opacity,1))}.dark\:hover\:bg-neutral-700:hover:is(.dark *){--tw-bg-opacity:1;background-color:rgb(64 64 64/var(--tw-bg-opacity,1))}.dark\:hover\:bg-neutral-800:hover:is(.dark *){--tw-bg-opacity:1;background-color:rgb(38 38 38/var(--tw-bg-opacity,1))}.dark\:hover\:\!text-neutral-200:hover:is(.dark *){--tw-text-opacity:1!important;color:rgb(229 229 229/var(--tw-text-opacity,1))!important}.dark\:hover\:\!text-neutral-300:hover:is(.dark *){--tw-text-opacity:1!important;color:rgb(212 212 212/var(--tw-text-opacity,1))!important}.dark\:hover\:text-neutral-300:hover:is(.dark *){--tw-text-opacity:1;color:rgb(212 212 212/var(--tw-text-opacity,1))}.dark\:hover\:text-white:hover:is(.dark *){--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1))}.group:hover .dark\:group-hover\:bg-blue-900\/30:is(.dark *){background-color:rgba(30,58,138,.3)}.group:hover .dark\:group-hover\:\!text-blue-400:is(.dark *){--tw-text-opacity:1!important;color:rgb(96 165 250/var(--tw-text-opacity,1))!important}@media (min-width:640px){.sm\:mb-8{margin-bottom:2rem}.sm\:inline{display:inline}.sm\:grid{display:grid}.sm\:hidden{display:none}.sm\:h-16{height:4rem}.sm\:w-16{width:4rem}.sm\:w-\[500px\]{width:500px}.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.sm\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.sm\:py-8{padding-top:2rem;padding-bottom:2rem}.sm\:text-2xl{font-size:1.5rem;line-height:2rem}.sm\:text-base{font-size:1rem;line-height:1.5rem}}@media (min-width:768px){.md\:relative{position:relative}.md\:z-auto{z-index:auto}.md\:ml-4{margin-left:1rem}.md\:block{display:block}.md\:flex{display:flex}.md\:hidden{display:none}.md\:w-1\/2{width:50%}.md\:w-56{width:14rem}.md\:max-w-\[180px\]{max-width:180px}.md\:translate-x-0{--tw-translate-x:0px;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.md\:columns-2{-moz-columns:2;column-count:2}.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.md\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.md\:flex-row{flex-direction:row}.md\:gap-4{gap:1rem}.md\:p-6{padding:1.5rem}.md\:px-4{padding-left:1rem;padding-right:1rem}.md\:px-6{padding-left:1.5rem;padding-right:1.5rem}.md\:text-2xl{font-size:1.5rem;line-height:2rem}}@media (min-width:1024px){.lg\:w-1\/3{width:33.333333%}.lg\:w-2\/3{width:66.666667%}.lg\:w-\[540px\]{width:540px}.lg\:w-\[600px\]{width:600px}.lg\:max-w-2xl{max-width:42rem}.lg\:columns-3{-moz-columns:3;column-count:3}.lg\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.lg\:grid-cols-6{grid-template-columns:repeat(6,minmax(0,1fr))}}@media (min-width:1280px){.xl\:w-\[700px\]{width:700px}.xl\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@apteva/apteva-darwin-arm64",
3
- "version": "0.4.31",
3
+ "version": "0.4.41",
4
4
  "description": "Apteva binary for darwin arm64",
5
5
  "os": ["darwin"],
6
6
  "cpu": ["arm64"],
@@ -1,3 +0,0 @@
1
- import{d as a}from"./App.6q6bar8b.js";import"./App.ncgc9cxy.js";import"./App.mvtqv6qc.js";export{a as ActivityPage};
2
-
3
- //# debugId=A836402CCF3683F564756E2164756E21