opencami 1.5.1 → 1.6.0

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 (79) hide show
  1. package/README.md +4 -1
  2. package/dist/client/assets/{CSPContext-BBLAL_m_.js → CSPContext-Bq8j4nl9.js} +1 -1
  3. package/dist/client/assets/DirectionContext-BdX86BHP.js +1 -0
  4. package/dist/client/assets/_sessionKey-DsjnpErt.js +14 -0
  5. package/dist/client/assets/agents-DwxKcpP6.js +2 -0
  6. package/dist/client/assets/agents-screen-DwIY8hze.js +1 -0
  7. package/dist/client/assets/bots-CRlm-3-d.js +2 -0
  8. package/dist/client/assets/bots-screen-c78I920d.js +1 -0
  9. package/dist/client/assets/button-Dg7VFQQn.js +1 -0
  10. package/dist/client/assets/composite-DBl8R3ae.js +1 -0
  11. package/dist/client/assets/{connect-DHr3hhUR.js → connect-NYvOqiBJ.js} +1 -1
  12. package/dist/client/assets/file-explorer-screen-BSMbs0vi.js +1 -0
  13. package/dist/client/assets/files-BJbMx0_w.js +2 -0
  14. package/dist/client/assets/{index-B2iG4EM1.js → index-CMATW8VA.js} +1 -1
  15. package/dist/client/assets/{index-GTR-Xzl2.js → index-rOIRO-8E.js} +1 -1
  16. package/dist/client/assets/keyboard-shortcuts-dialog-BTGWdJMl.js +1 -0
  17. package/dist/client/assets/{main-mIHr_ble.js → main-B_dlfHME.js} +9 -9
  18. package/dist/client/assets/markdown-BVzT7z4x.js +87 -0
  19. package/dist/client/assets/memory-S3Yws6a5.js +2 -0
  20. package/dist/client/assets/memory-screen-C-Z9o31m.js +1 -0
  21. package/dist/client/assets/menu-DHNgWk_8.js +1 -0
  22. package/dist/client/assets/{opencami-logo-CRIdKbbZ.js → opencami-logo-BQQETnJG.js} +1 -1
  23. package/dist/client/assets/owner-CpRnf1fI.js +1 -0
  24. package/dist/client/assets/popupStateMapping-BRPDXnjv.js +1 -0
  25. package/dist/client/assets/proxy-BcUh9kMA.js +9 -0
  26. package/dist/client/assets/{react-Cfq4ot0g.js → react-irH8OzhB.js} +1 -1
  27. package/dist/client/assets/search-dialog-B96zx_ng.js +1 -0
  28. package/dist/client/assets/session-export-dialog-DPuHnhgv.js +1 -0
  29. package/dist/client/assets/settings-dialog-DZcRCaPj.js +1 -0
  30. package/dist/client/assets/skills-YZe3I63y.js +2 -0
  31. package/dist/client/assets/{skills-panel-Cv-N_MDk.js → skills-panel-WDUfIwnI.js} +2 -2
  32. package/dist/client/assets/styles-Bwo-K6Y4.css +1 -0
  33. package/dist/client/assets/{switch-Bh9tVOYh.js → switch-DPocNFRG.js} +1 -1
  34. package/dist/client/assets/tabs-B0cro1hL.js +1 -0
  35. package/dist/client/assets/tooltip-Dg9fy-vT.js +1 -0
  36. package/dist/client/assets/use-file-explorer-state-DzT0bksg.js +12 -0
  37. package/dist/client/assets/{useButton-DsMdJPGn.js → useButton-Cbl_9oFG.js} +1 -1
  38. package/dist/client/assets/useCompositeItem-BDAzTxVe.js +1 -0
  39. package/dist/client/assets/{useControlled-wOKVgKF4.js → useControlled-Dscz_s4f.js} +1 -1
  40. package/dist/client/assets/{useMutation-fJnleJAb.js → useMutation-B1FlDsNN.js} +1 -1
  41. package/dist/client/assets/visuallyHidden-ONmQ-0U2.js +1 -0
  42. package/dist/server/assets/{_sessionKey-B5UHBd2U.js → _sessionKey-B0ZlLAjH.js} +172 -567
  43. package/dist/server/assets/_tanstack-start-manifest_v-D5UVTs1o.js +4 -0
  44. package/dist/server/assets/{file-explorer-screen-CVlFiAFu.js → file-explorer-screen-DH4UFK03.js} +3 -2
  45. package/dist/server/assets/{files-BIEcSPGp.js → files-DYdXlQDr.js} +1 -1
  46. package/dist/server/assets/{index--_jH_0mX.js → index-CiUjUD0t.js} +1 -1
  47. package/dist/server/assets/{keyboard-shortcuts-dialog-CsNP85q8.js → keyboard-shortcuts-dialog-Cr6fOqHz.js} +1 -2
  48. package/dist/server/assets/markdown-BFE5y9YH.js +565 -0
  49. package/dist/server/assets/memory-BqZOoD7Q.js +11 -0
  50. package/dist/server/assets/memory-screen-BK5phS8K.js +235 -0
  51. package/dist/server/assets/menu-D90CDTi2.js +45 -0
  52. package/dist/server/assets/{router-DJA7GtMo.js → router-Uuagl6O7.js} +55 -45
  53. package/dist/server/assets/{search-dialog-C2a3OYm_.js → search-dialog-DZTS5SEi.js} +6 -4
  54. package/dist/server/assets/{session-export-dialog-CwclV0Aj.js → session-export-dialog-C53RRAah.js} +1 -2
  55. package/dist/server/assets/{settings-dialog-CHVzrou9.js → settings-dialog-CSYDj2qm.js} +75 -20
  56. package/dist/server/assets/{use-file-explorer-state-Il1LlBAe.js → use-file-explorer-state-s7CS50ho.js} +0 -41
  57. package/dist/server/server.js +2 -2
  58. package/package.json +1 -1
  59. package/dist/client/assets/DirectionContext-DXnZc0zz.js +0 -1
  60. package/dist/client/assets/_sessionKey-BidmO1-D.js +0 -100
  61. package/dist/client/assets/agents-CtZs_u1j.js +0 -2
  62. package/dist/client/assets/agents-screen-Basce5qo.js +0 -1
  63. package/dist/client/assets/bots-C_dWjy3z.js +0 -2
  64. package/dist/client/assets/bots-screen-n_xhYOEE.js +0 -1
  65. package/dist/client/assets/button-BaHefIXU.js +0 -1
  66. package/dist/client/assets/file-explorer-screen-8t6M4Xco.js +0 -1
  67. package/dist/client/assets/files-BdlpK3Cy.js +0 -2
  68. package/dist/client/assets/keyboard-shortcuts-dialog-CcKSlK52.js +0 -1
  69. package/dist/client/assets/search-dialog-D19x_xaG.js +0 -1
  70. package/dist/client/assets/session-export-dialog-DRlJwhMa.js +0 -1
  71. package/dist/client/assets/settings-dialog-BA5FjiyP.js +0 -1
  72. package/dist/client/assets/skills-lmNPZksG.js +0 -2
  73. package/dist/client/assets/styles-JgjN_ZCd.css +0 -1
  74. package/dist/client/assets/tabs-BfaEc9zS.js +0 -1
  75. package/dist/client/assets/tooltip-w9D-e_R-.js +0 -1
  76. package/dist/client/assets/use-file-explorer-state-CLaDuI9X.js +0 -12
  77. package/dist/client/assets/useCompositeItem-CaYygSfB.js +0 -1
  78. package/dist/client/assets/visuallyHidden-CqGRL_Oq.js +0 -9
  79. package/dist/server/assets/_tanstack-start-manifest_v-D11xMFUx.js +0 -4
@@ -1 +0,0 @@
1
- import{r as o,j as t}from"./main-mIHr_ble.js";import{B as L,H as w,V as Fe,z as ze,d as Ke,P as Re,D as Be,R as Me,s as De,T as _e,c as W,o as Ue,v as He,e as Ye,f as qe,g as Ge,h as Je,J as H,i as Xe}from"./button-BaHefIXU.js";import{D as $e,a as Qe,b as Ze,c as et,d as Y}from"./use-file-explorer-state-CLaDuI9X.js";import{S as m}from"./switch-Bh9tVOYh.js";import{T as g,a as y,b as v}from"./tabs-BfaEc9zS.js";import{u as tt}from"./index-B2iG4EM1.js";import{u as at,g as q}from"./_sessionKey-BidmO1-D.js";import"./useButton-DsMdJPGn.js";import"./tooltip-w9D-e_R-.js";import"./DirectionContext-DXnZc0zz.js";import"./visuallyHidden-CqGRL_Oq.js";import"./useCompositeItem-CaYygSfB.js";import"./react-Cfq4ot0g.js";import"./useControlled-wOKVgKF4.js";import"./CSPContext-BBLAL_m_.js";import"./useMutation-fJnleJAb.js";import"./opencami-logo-CRIdKbbZ.js";import"./index-T4TOjvD0.js";function f({title:n,tabId:r,activeTab:j,children:a}){const c=r&&j&&r!==j;return t.jsxs("div",{className:W("border-b border-primary-200 py-2 last:border-0",c&&"md:hidden"),children:[t.jsx("h3",{className:"mb-1.5 text-sm font-semibold text-primary-700",children:n}),t.jsx("div",{className:"space-y-1.5",children:a})]})}function l({label:n,description:r,inline:j,children:a}){return j?t.jsxs("div",{className:"flex items-center justify-between",children:[t.jsxs("div",{className:"flex-1 select-none",children:[t.jsx("div",{className:"text-[13px] font-medium text-primary-800",children:n}),r&&t.jsx("div",{className:"text-xs text-primary-500",children:r})]}),t.jsx("div",{className:"flex items-center gap-2",children:a})]}):t.jsxs("div",{className:"space-y-1",children:[t.jsxs("div",{className:"select-none",children:[t.jsx("div",{className:"text-[13px] font-medium text-primary-800",children:n}),r&&t.jsx("div",{className:"text-xs text-primary-500",children:r})]}),t.jsx("div",{className:"flex items-center gap-2 flex-wrap",children:a})]})}const te=[{value:"14px",label:"S"},{value:"16px",label:"M"},{value:"18px",label:"L"},{value:"20px",label:"XL"}],O=[{value:"system",label:"System",cssValue:'-apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif',previewClass:"font-sans"},{value:"inter",label:"Inter",cssValue:'"Inter", sans-serif',previewClass:'font-["Inter",sans-serif]'},{value:"roboto",label:"Roboto",cssValue:'"Roboto", sans-serif',previewClass:'font-["Roboto",sans-serif]'}],ae=[{value:"compact",label:"Compact"},{value:"comfortable",label:"Comfortable"},{value:"spacious",label:"Spacious"}],F=[{value:"green",label:"Green",accent:"#22c55e",hover:"#16a34a",light:"rgba(34, 197, 94, 0.10)"},{value:"blue",label:"Blue",accent:"#3b82f6",hover:"#2563eb",light:"rgba(59, 130, 246, 0.10)"},{value:"purple",label:"Purple",accent:"#8b5cf6",hover:"#7c3aed",light:"rgba(139, 92, 246, 0.10)"},{value:"orange",label:"Orange",accent:"#f97316",hover:"#ea580c",light:"rgba(249, 115, 22, 0.10)"},{value:"pink",label:"Pink",accent:"#ec4899",hover:"#db2777",light:"rgba(236, 72, 153, 0.10)"},{value:"red",label:"Red",accent:"#ef4444",hover:"#dc2626",light:"rgba(239, 68, 68, 0.10)"},{value:"cyan",label:"Cyan",accent:"#06b6d4",hover:"#0891b2",light:"rgba(6, 182, 212, 0.10)"},{value:"yellow",label:"Yellow",accent:"#eab308",hover:"#ca8a04",light:"rgba(234, 179, 8, 0.10)"}],z=[{value:"narrow",label:"Narrow",cssValue:"640px"},{value:"medium",label:"Medium",cssValue:"800px"},{value:"wide",label:"Wide",cssValue:"1000px"},{value:"full",label:"Full",cssValue:"100%"}],K=[{value:"compact",label:"Compact",cssValue:"200px"},{value:"normal",label:"Normal",cssValue:"260px"},{value:"wide",label:"Wide",cssValue:"320px"},{value:"xl",label:"XL",cssValue:"400px"}],se=[{value:"default",label:"Default"},{value:"bubbles",label:"Bubbles"},{value:"minimal",label:"Minimal"}];function G(n){return te.some(r=>r.value===n)}function J(n){return O.some(r=>r.value===n)}function X(n){return ae.some(r=>r.value===n)}function $(n){return F.some(r=>r.value===n)}function Q(n){return z.some(r=>r.value===n)}function Z(n){return K.some(r=>r.value===n)}function ee(n){return se.some(r=>r.value===n)}function jt({open:n,onOpenChange:r,onClose:j}){const{settings:a,updateSettings:c}=tt(),{settings:d,updateSettings:h,status:C,testApiKey:le}=at(),[p,re]=o.useState("appearance"),[x,B]=o.useState(d.llmApiKey),[M,D]=o.useState(!1),[S,N]=o.useState(null),[ne,ie]=o.useState(()=>{if(typeof window>"u")return"16px";try{const e=localStorage.getItem("opencami-text-size");if(e&&G(e))return e}catch{}return"16px"}),[oe,ce]=o.useState(()=>{if(typeof window>"u")return!0;try{const e=localStorage.getItem("opencami-tts-enabled");return e===null?!0:e==="true"}catch{return!0}}),[_,de]=o.useState(()=>{if(typeof window>"u")return"auto";try{return localStorage.getItem("opencami-tts-provider")||"auto"}catch{return"auto"}}),[ue,me]=o.useState(()=>{if(typeof window>"u")return"nova";try{return localStorage.getItem("opencami-tts-voice")||"nova"}catch{return"nova"}}),[pe,he]=o.useState(()=>{if(typeof window>"u")return"auto";try{return localStorage.getItem("opencami-stt-provider")||"auto"}catch{return"auto"}});o.useEffect(()=>{if(!(typeof window>"u"))try{const e=localStorage.getItem("opencami-font-family");e&&J(e)?(k(e),a.fontFamily!==e&&c({fontFamily:e})):k(a.fontFamily);const s=localStorage.getItem("opencami-density");s&&X(s)?(P(s),a.density!==s&&c({density:s})):P(a.density);const i=localStorage.getItem("opencami-accent-color");i&&$(i)?(I(i),a.accentColor!==i&&c({accentColor:i})):I(a.accentColor);const u=localStorage.getItem("opencami-chat-width");u&&Q(u)?(A(u),a.chatWidth!==u&&c({chatWidth:u})):A(a.chatWidth);const b=localStorage.getItem("opencami-sidebar-width");b&&Z(b)?(E(b),a.sidebarWidth!==b&&c({sidebarWidth:b})):E(a.sidebarWidth);const V=localStorage.getItem("opencami-bubble-style");V&&ee(V)?(T(V),a.bubbleStyle!==V&&c({bubbleStyle:V})):T(a.bubbleStyle)}catch{k(a.fontFamily),P(a.density),I(a.accentColor),A(a.chatWidth),E(a.sidebarWidth),T(a.bubbleStyle)}},[]),o.useEffect(()=>{k(a.fontFamily)},[a.fontFamily]),o.useEffect(()=>{P(a.density)},[a.density]),o.useEffect(()=>{I(a.accentColor)},[a.accentColor]),o.useEffect(()=>{A(a.chatWidth)},[a.chatWidth]),o.useEffect(()=>{E(a.sidebarWidth)},[a.sidebarWidth]),o.useEffect(()=>{T(a.bubbleStyle)},[a.bubbleStyle]);const xe=e=>{de(e);try{localStorage.setItem("opencami-tts-provider",e)}catch{}},be=e=>{me(e);try{localStorage.setItem("opencami-tts-voice",e)}catch{}},fe=e=>{he(e);try{localStorage.setItem("opencami-stt-provider",e)}catch{}};function ge(e){typeof document>"u"||document.documentElement.style.setProperty("--opencami-text-size",e)}function k(e){if(typeof document>"u")return;const i=O.find(u=>u.value===e)?.cssValue??O[0].cssValue;document.documentElement.style.setProperty("--opencami-font-family",i)}function P(e){if(typeof document>"u")return;const s=document.documentElement;if(s.style.setProperty("--opencami-density",e),e==="compact"){s.style.setProperty("--opencami-msg-padding-y","0.25rem"),s.style.setProperty("--opencami-msg-gap","0.25rem"),s.style.setProperty("--opencami-user-bubble-py","0.4rem");return}if(e==="spacious"){s.style.setProperty("--opencami-msg-padding-y","1.25rem"),s.style.setProperty("--opencami-msg-gap","1rem"),s.style.setProperty("--opencami-user-bubble-py","1rem");return}s.style.setProperty("--opencami-msg-padding-y","0.75rem"),s.style.setProperty("--opencami-msg-gap","0.5rem"),s.style.setProperty("--opencami-user-bubble-py","0.625rem")}function I(e){if(typeof document>"u")return;const s=F.find(u=>u.value===e)??F[0],i=document.documentElement;i.style.setProperty("--opencami-accent",s.accent),i.style.setProperty("--opencami-accent-hover",s.hover),i.style.setProperty("--opencami-accent-light",s.light)}function A(e){if(typeof document>"u")return;const s=z.find(i=>i.value===e)??z[2];document.documentElement.style.setProperty("--opencami-chat-width",s.cssValue)}function E(e){if(typeof document>"u")return;const s=K.find(i=>i.value===e)??K[1];document.documentElement.style.setProperty("--opencami-sidebar-width",s.cssValue)}function T(e){typeof document>"u"||document.documentElement.setAttribute("data-opencami-bubble-style",e)}const ye=e=>{if(G(e)){ie(e),ge(e);try{localStorage.setItem("opencami-text-size",e)}catch{}}},ve=e=>{if(J(e)){k(e),c({fontFamily:e});try{localStorage.setItem("opencami-font-family",e)}catch{}}},je=e=>{if(X(e)){P(e),c({density:e});try{localStorage.setItem("opencami-density",e)}catch{}}},Se=e=>{if($(e)){I(e),c({accentColor:e});try{localStorage.setItem("opencami-accent-color",e)}catch{}}},we=e=>{if(Q(e)){A(e),c({chatWidth:e});try{localStorage.setItem("opencami-chat-width",e)}catch{}}},Ce=e=>{if(Z(e)){E(e),c({sidebarWidth:e});try{localStorage.setItem("opencami-sidebar-width",e)}catch{}}},Ne=e=>{if(ee(e)){T(e),c({bubbleStyle:e});try{localStorage.setItem("opencami-bubble-style",e)}catch{}}},ke=e=>{ce(e);try{localStorage.setItem("opencami-tts-enabled",String(e))}catch{}window.dispatchEvent(new StorageEvent("storage",{key:"opencami-tts-enabled",newValue:String(e)}))},[U,Pe]=o.useState(!1),R=o.useRef(null),[Ie,Ae]=o.useState(()=>{if(typeof window>"u")return!0;try{const e=localStorage.getItem("opencami-personas-enabled");return e===null?!0:e==="true"}catch{return!0}});o.useEffect(()=>{let e=!0;async function s(){R.current?.abort();const i=new AbortController;R.current=i;try{const u=await fetch("/api/personas",{signal:i.signal});if(!u.ok)return;const b=await u.json();e&&b.ok&&Pe(b.available)}catch(u){if(u instanceof Error&&u.name==="AbortError")return}}return s(),()=>{e=!1,R.current?.abort()}},[]);const Ee=e=>{Ae(e);try{localStorage.setItem("opencami-personas-enabled",String(e))}catch{}window.dispatchEvent(new StorageEvent("storage",{key:"opencami-personas-enabled",newValue:String(e)}))},Te=async()=>{if(x.trim()){D(!0),N(null);try{const e=await le(x.trim());N(e),e.valid&&h({llmApiKey:x.trim()})}finally{D(!1)}}},Ve=()=>{h({llmApiKey:x.trim()}),N(null)},Le=()=>{B(""),h({llmApiKey:""}),N(null)},We=[{value:"system",label:"Auto",icon:Ue},{value:"light",label:"Light",icon:He},{value:"dark",label:"Dark",icon:Ye},{value:"chameleon",label:"Cham",icon:qe},{value:"frost-light",label:"Ice",icon:Ge}];function Oe(e){if(typeof document>"u")return;const s=document.documentElement,i=window.matchMedia("(prefers-color-scheme: dark)");s.classList.remove("light","dark","system","chameleon","frost","frost-light","frost-dark"),s.classList.add(e),(e==="frost-light"||e==="frost-dark")&&s.classList.add("frost"),e==="frost-dark"&&s.classList.add("dark"),e==="system"&&i.matches&&s.classList.add("dark")}return t.jsx($e,{open:n,onOpenChange:r,children:t.jsx(Qe,{className:"w-[min(680px,92vw)] max-h-[85vh] overflow-y-auto",children:t.jsxs("div",{className:"p-3",children:[t.jsxs("div",{className:"flex items-start justify-between",children:[t.jsxs("div",{children:[t.jsx(Ze,{className:"mb-1",children:"Settings"}),t.jsx(et,{className:"hidden",children:"Configure OpenCami"})]}),t.jsx(Y,{render:t.jsx(L,{size:"icon-sm",variant:"ghost",className:"text-primary-500 hover:bg-primary-100 hover:text-primary-700","aria-label":"Close",children:t.jsx(w,{icon:Fe,size:20,strokeWidth:1.5})})})]}),t.jsxs("div",{className:"mt-2 flex md:flex-row flex-col md:gap-3 gap-0 md:min-h-[400px]",children:[t.jsx("nav",{className:"hidden md:flex flex-col gap-0.5 min-w-[160px] border-r border-primary-200 pr-3",children:[{id:"connection",label:"Connection",icon:ze},{id:"appearance",label:"Appearance",icon:Ke},{id:"chat",label:"Chat",icon:Re},{id:"personas",label:"Personas",icon:Be},{id:"voice",label:"Voice",icon:Me},{id:"llm",label:"LLM Features",icon:De},{id:"about",label:"About",icon:_e}].map(e=>t.jsxs("button",{onClick:()=>re(e.id),className:W("flex items-center gap-2 px-2.5 py-1.5 rounded-md text-sm text-left transition-colors",p===e.id?"text-primary-900 font-medium":"text-primary-600 hover:text-primary-900 hover:bg-primary-50"),style:p===e.id?{backgroundColor:"var(--opencami-accent-light)"}:void 0,children:[t.jsx(w,{icon:e.icon,size:16,strokeWidth:1.5}),e.label]},e.id))}),t.jsxs("div",{className:"flex-1 overflow-y-auto md:max-h-[calc(85vh-90px)] max-h-none",children:[t.jsx(f,{title:"Connection",tabId:"connection",activeTab:p,children:t.jsx(l,{inline:!0,label:"Status",children:t.jsxs("span",{className:"flex items-center gap-1.5 text-sm text-green-600",children:[t.jsx("span",{className:"size-2 rounded-full bg-green-500"}),"Connected"]})})}),t.jsxs(f,{title:"Appearance",tabId:"appearance",activeTab:p,children:[t.jsx(l,{label:"Theme",children:t.jsx(g,{value:a.theme,onValueChange:e=>{const s=e;Oe(s),c({theme:s})},children:t.jsx(y,{variant:"default",className:"gap-1.5 flex-wrap *:data-[slot=tab-indicator]:duration-0",children:We.map(e=>t.jsxs(v,{value:e.value,className:"text-[11px] px-1 py-0.5 gap-0.5",children:[e.icon&&t.jsx(w,{icon:e.icon,size:13,strokeWidth:1.5}),t.jsx("span",{children:e.label})]},e.value))})})}),t.jsx(l,{label:"Accent Color",children:t.jsx("div",{className:"flex gap-0.5 flex-wrap",children:F.map(e=>{const s=a.accentColor===e.value;return t.jsx("button",{type:"button",onClick:()=>Se(e.value),className:W("flex items-center justify-center rounded-md p-1 transition-all duration-150",s?"scale-110":"hover:bg-primary-50 hover:scale-105"),children:t.jsx("span",{className:W("size-6 rounded-full transition-shadow duration-150",s?"ring-2 ring-offset-2":"border-2 border-primary-200"),style:{backgroundColor:e.accent,...s?{"--tw-ring-color":e.accent}:{}}})},e.value)})})}),t.jsx(l,{label:"Text Size",children:t.jsx(g,{value:ne,onValueChange:ye,children:t.jsx(y,{variant:"default",className:"gap-2 *:data-[slot=tab-indicator]:duration-0",children:te.map(e=>t.jsx(v,{value:e.value,children:t.jsx("span",{className:"tabular-nums text-xs",children:e.label})},e.value))})})}),t.jsx(l,{inline:!0,label:"Font",children:t.jsx(g,{value:a.fontFamily,onValueChange:ve,children:t.jsx(y,{variant:"default",className:"gap-1 *:data-[slot=tab-indicator]:duration-0",children:O.map(e=>t.jsx(v,{value:e.value,children:t.jsx("span",{className:"text-xs",style:{fontFamily:e.cssValue},children:e.label})},e.value))})})}),t.jsx(l,{inline:!0,label:"Density",children:t.jsx(g,{value:a.density,onValueChange:je,children:t.jsx(y,{variant:"default",className:"gap-1 *:data-[slot=tab-indicator]:duration-0",children:ae.map(e=>t.jsx(v,{value:e.value,children:t.jsx("span",{className:"text-xs",children:e.label})},e.value))})})}),t.jsx(l,{inline:!0,label:"Bubbles",children:t.jsx(g,{value:a.bubbleStyle,onValueChange:Ne,children:t.jsx(y,{variant:"default",className:"gap-1 *:data-[slot=tab-indicator]:duration-0",children:se.map(e=>t.jsx(v,{value:e.value,children:t.jsx("span",{className:"text-xs",children:e.label})},e.value))})})}),t.jsx(l,{inline:!0,label:"Chat Width",children:t.jsx(g,{value:a.chatWidth,onValueChange:we,children:t.jsx(y,{variant:"default",className:"gap-1 *:data-[slot=tab-indicator]:duration-0",children:z.map(e=>t.jsx(v,{value:e.value,children:t.jsx("span",{className:"text-xs",children:e.label})},e.value))})})}),t.jsx(l,{inline:!0,label:"Sidebar",children:t.jsx(g,{value:a.sidebarWidth,onValueChange:Ce,children:t.jsx(y,{variant:"default",className:"gap-1 *:data-[slot=tab-indicator]:duration-0",children:K.map(e=>t.jsx(v,{value:e.value,children:t.jsx("span",{className:"text-xs",children:e.label})},e.value))})})})]}),t.jsxs(f,{title:"Chat",tabId:"chat",activeTab:p,children:[t.jsx(l,{inline:!0,label:"Show tool messages",children:t.jsx(m,{checked:a.showToolMessages,onCheckedChange:e=>c({showToolMessages:e})})}),t.jsx(l,{inline:!0,label:"Show reasoning blocks",children:t.jsx(m,{checked:a.showReasoningBlocks,onCheckedChange:e=>c({showReasoningBlocks:e})})}),t.jsx(l,{inline:!0,label:"Show search sources",children:t.jsx(m,{checked:a.showSearchSources,onCheckedChange:e=>c({showSearchSources:e})})}),t.jsx(l,{inline:!0,label:"Agent Manager (Beta)",description:"Show Agent Manager in sidebar for creating and managing agents",children:t.jsx(m,{checked:(()=>{try{return localStorage.getItem("opencami-agent-manager")==="true"}catch{return!1}})(),onCheckedChange:e=>{localStorage.setItem("opencami-agent-manager",String(e)),window.location.reload()}})}),t.jsx(l,{inline:!0,label:"Skills Browser (Beta)",description:"Browse and install skills from ClawHub",children:t.jsx(m,{checked:(()=>{try{return localStorage.getItem("opencami-skills-browser")==="true"}catch{return!1}})(),onCheckedChange:e=>{localStorage.setItem("opencami-skills-browser",String(e)),window.location.reload()}})}),t.jsx(l,{inline:!0,label:"Cron Jobs Panel (Beta)",description:"Show Cron Jobs in sidebar for managing OpenClaw cron schedules",children:t.jsx(m,{checked:(()=>{try{return localStorage.getItem("opencami-cron-manager")==="true"}catch{return!1}})(),onCheckedChange:e=>{localStorage.setItem("opencami-cron-manager",String(e)),window.location.reload()}})}),t.jsx(l,{inline:!0,label:"Inline File Preview",description:"Make file paths in messages clickable to preview file contents",children:t.jsx(m,{checked:a.inlineFilePreview,onCheckedChange:e=>c({inlineFilePreview:e})})})]}),t.jsxs(f,{title:"Personas",tabId:"personas",activeTab:p,children:[U?t.jsx(l,{inline:!0,label:"Persona Picker",description:"Show persona picker in chat (20 personalities)",children:t.jsx(m,{checked:Ie,onCheckedChange:Ee})}):t.jsx(l,{inline:!0,label:"Persona Picker",description:"Install the Personas skill to unlock 20 AI personalities",children:t.jsx(m,{checked:!1,disabled:!0})}),!U&&t.jsx("div",{className:"pt-1",children:t.jsx("a",{href:"https://www.clawhub.ai/robbyczgw-cla/personas",target:"_blank",rel:"noopener noreferrer",className:"text-xs text-primary-600 hover:text-primary-900 hover:underline",children:"Get it on ClawHub →"})})]}),t.jsxs(f,{title:"Text-to-Speech",tabId:"voice",activeTab:p,children:[t.jsx(l,{inline:!0,label:"Voice Playback",description:"Add a 🔊 button to AI messages for text-to-speech",children:t.jsx(m,{checked:oe,onCheckedChange:ke})}),t.jsx(l,{inline:!0,label:"TTS Provider",description:"Choose which service generates speech",children:t.jsxs("select",{value:_,onChange:e=>xe(e.target.value),className:"rounded-md border border-primary-200 bg-surface px-2 py-1 text-sm focus:outline-none focus:ring-2 focus:ring-primary-500",children:[t.jsx("option",{value:"auto",children:"Auto"}),t.jsx("option",{value:"elevenlabs",children:"ElevenLabs"}),t.jsx("option",{value:"openai",children:"OpenAI"}),t.jsx("option",{value:"edge",children:"Edge TTS (free)"})]})}),_==="openai"&&t.jsx(l,{inline:!0,label:"Voice",description:"OpenAI voice selection",children:t.jsx("select",{value:ue,onChange:e=>be(e.target.value),className:"rounded-md border border-primary-200 bg-surface px-2 py-1 text-sm focus:outline-none focus:ring-2 focus:ring-primary-500",children:["alloy","echo","fable","onyx","nova","shimmer"].map(e=>t.jsx("option",{value:e,children:e.charAt(0).toUpperCase()+e.slice(1)},e))})})]}),t.jsx(f,{title:"Speech-to-Text",tabId:"voice",activeTab:p,children:t.jsx(l,{inline:!0,label:"STT Provider",description:"Choose which service transcribes your voice",children:t.jsxs("select",{value:pe,onChange:e=>fe(e.target.value),className:"rounded-md border border-primary-200 bg-surface px-2 py-1 text-sm focus:outline-none focus:ring-2 focus:ring-primary-500",children:[t.jsx("option",{value:"auto",children:"Auto"}),t.jsx("option",{value:"elevenlabs",children:"ElevenLabs"}),t.jsx("option",{value:"openai",children:"OpenAI"}),t.jsx("option",{value:"browser",children:"Browser (free)"})]})})}),t.jsxs(f,{title:"LLM Features",tabId:"llm",activeTab:p,children:[t.jsxs("div",{className:"text-xs text-primary-500 mb-3",children:["Enhance session titles and follow-up suggestions using an LLM provider.",C.hasEnvKey&&d.llmProvider==="openai"&&t.jsx("span",{className:"block mt-1 text-green-600",children:"✓ Server has OPENAI_API_KEY configured"}),C.hasOpenRouterKey&&d.llmProvider==="openrouter"&&t.jsx("span",{className:"block mt-1 text-green-600",children:"✓ Server has OPENROUTER_API_KEY configured"})]}),t.jsx(l,{inline:!0,label:"Provider",description:"Choose LLM provider for titles & follow-ups",children:t.jsxs("select",{value:d.llmProvider,onChange:e=>{const s=e.target.value;h({llmProvider:s,llmBaseUrl:"",llmModel:""})},className:"px-2 py-1 text-sm rounded-md border border-primary-200 bg-surface focus:outline-none focus:ring-2 focus:ring-primary-500",children:[t.jsx("option",{value:"openai",children:"OpenAI"}),t.jsx("option",{value:"openrouter",children:"OpenRouter"}),t.jsx("option",{value:"ollama",children:"Ollama (local)"}),t.jsx("option",{value:"custom",children:"Custom"})]})}),t.jsx(l,{inline:!0,label:"Smart session titles",description:"Generate concise titles using AI",children:t.jsx(m,{checked:d.useLlmTitles,onCheckedChange:e=>h({useLlmTitles:e}),disabled:!C.isAvailable})}),t.jsx(l,{inline:!0,label:"Smart follow-up suggestions",description:"AI-generated contextual follow-ups",children:t.jsx(m,{checked:d.useLlmFollowUps,onCheckedChange:e=>h({useLlmFollowUps:e}),disabled:!C.isAvailable})}),t.jsxs("div",{className:"mt-2 space-y-2",children:[t.jsxs("div",{children:[t.jsx("div",{className:"text-xs text-primary-500 mb-1",children:"Model"}),t.jsx("input",{type:"text",value:d.llmModel,onChange:e=>h({llmModel:e.target.value}),placeholder:q(d.llmProvider).model||"model-name",className:"w-full px-3 py-1.5 text-sm rounded-md border border-primary-200 bg-surface focus:outline-none focus:ring-2 focus:ring-primary-500"})]}),(d.llmProvider==="custom"||d.llmProvider==="ollama")&&t.jsxs("div",{children:[t.jsx("div",{className:"text-xs text-primary-500 mb-1",children:"Base URL"}),t.jsx("input",{type:"text",value:d.llmBaseUrl,onChange:e=>h({llmBaseUrl:e.target.value}),placeholder:q(d.llmProvider).baseUrl||"https://...",className:"w-full px-3 py-1.5 text-sm rounded-md border border-primary-200 bg-surface focus:outline-none focus:ring-2 focus:ring-primary-500"})]})]}),t.jsxs("div",{className:"mt-4 pt-3 border-t border-primary-100",children:[t.jsx("div",{className:"text-sm text-primary-800 mb-2",children:d.llmProvider==="ollama"?"API Key (optional)":"API Key"}),t.jsx("div",{className:"text-xs text-primary-500 mb-2",children:d.llmProvider==="ollama"?"Not required for local Ollama":C.hasEnvKey&&d.llmProvider==="openai"?"Optional: Override server key with your own":`Required for ${d.llmProvider==="openrouter"?"OpenRouter":"LLM features"} (stored locally)`}),t.jsxs("div",{className:"text-xs text-amber-600 bg-amber-50 border border-amber-200 rounded-md px-2 py-1.5 mb-2",children:["⚠️ ",t.jsx("strong",{children:"Security Note:"})," API keys are stored in your browser's localStorage. This is convenient but not secure for shared computers. For production use, configure keys server-side via environment variables (OPENAI_API_KEY, OPENROUTER_API_KEY)."]}),t.jsxs("div",{className:"flex gap-2",children:[t.jsx("input",{type:"password",value:x,onChange:e=>{B(e.target.value),N(null)},placeholder:"sk-...",className:"flex-1 px-3 py-1.5 text-sm rounded-md border border-primary-200 bg-surface focus:outline-none focus:ring-2 focus:ring-primary-500"}),t.jsx(L,{size:"sm",variant:"outline",onClick:Te,disabled:!x.trim()||M,className:"min-w-[60px]",children:M?t.jsx(w,{icon:Je,size:16,className:"animate-spin"}):"Test"})]}),S&&t.jsxs("div",{className:`mt-2 flex items-center gap-1.5 text-xs ${S.valid?"text-green-600":"text-red-600"}`,children:[t.jsx(w,{icon:S.valid?H:Xe,size:14}),S.valid?"API key is valid":S.error||"Invalid API key"]}),d.llmApiKey&&t.jsxs("div",{className:"mt-2 flex items-center justify-between",children:[t.jsxs("span",{className:"text-xs text-green-600 flex items-center gap-1",children:[t.jsx(w,{icon:H,size:14}),"Key saved"]}),t.jsx(L,{size:"sm",variant:"ghost",onClick:Le,className:"text-xs text-red-600 hover:text-red-700 hover:bg-red-50",children:"Clear"})]}),x&&x!==d.llmApiKey&&!S?.valid&&t.jsx(L,{size:"sm",variant:"outline",onClick:Ve,className:"mt-2 w-full",children:"Save without testing"})]})]}),t.jsxs(f,{title:"About",tabId:"about",activeTab:p,children:[t.jsx("div",{className:"text-sm text-primary-800",children:"OpenCami"}),t.jsxs("div",{className:"flex gap-4 pt-2",children:[t.jsx("a",{href:"https://github.com/robbyczgw-cla/opencami",target:"_blank",rel:"noopener noreferrer",className:"text-sm text-primary-600 hover:text-primary-900 hover:underline",children:"GitHub"}),t.jsx("a",{href:"https://docs.openclaw.ai",target:"_blank",rel:"noopener noreferrer",className:"text-sm text-primary-600 hover:text-primary-900 hover:underline",children:"OpenClaw docs"})]})]})]})]}),t.jsx("div",{className:"mt-2 flex justify-end",children:t.jsx(Y,{onClick:j,children:"Close"})})]})})})}export{jt as SettingsDialog};
@@ -1,2 +0,0 @@
1
- const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/skills-panel-Cv-N_MDk.js","assets/main-mIHr_ble.js","assets/button-BaHefIXU.js","assets/tabs-BfaEc9zS.js","assets/useControlled-wOKVgKF4.js","assets/useButton-DsMdJPGn.js","assets/useCompositeItem-CaYygSfB.js","assets/DirectionContext-DXnZc0zz.js","assets/CSPContext-BBLAL_m_.js"])))=>i.map(i=>d[i]);
2
- import{j as e,r as t,_ as r}from"./main-mIHr_ble.js";const l=t.lazy(()=>r(()=>import("./skills-panel-Cv-N_MDk.js"),__vite__mapDeps([0,1,2,3,4,5,6,7,8])).then(s=>({default:s.SkillsPanel})));function a(){return e.jsx(t.Suspense,{fallback:e.jsx("div",{className:"flex h-screen items-center justify-center text-primary-500 text-sm",children:"Loading…"}),children:e.jsx(l,{})})}export{a as component};
@@ -1 +0,0 @@
1
- @import"https://fonts.googleapis.com/css2?family=EB+Garamond:opsz,wght@8..120,400..800&family=Inter:wght@400;500;600&family=Roboto:wght@400;500;700&display=swap";@layer components;@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-translate-x:0;--tw-translate-y:0;--tw-translate-z:0;--tw-scale-x:1;--tw-scale-y:1;--tw-scale-z:1;--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-space-y-reverse:0;--tw-divide-y-reverse:0;--tw-border-style:solid;--tw-leading:initial;--tw-font-weight:initial;--tw-tracking:initial;--tw-ordinal:initial;--tw-slashed-zero:initial;--tw-numeric-figure:initial;--tw-numeric-spacing:initial;--tw-numeric-fraction:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-backdrop-blur:initial;--tw-backdrop-brightness:initial;--tw-backdrop-contrast:initial;--tw-backdrop-grayscale:initial;--tw-backdrop-hue-rotate:initial;--tw-backdrop-invert:initial;--tw-backdrop-opacity:initial;--tw-backdrop-saturate:initial;--tw-backdrop-sepia:initial;--tw-duration:initial;--tw-ease:initial;--tw-content:""}}}@layer theme{:root,:host{--font-sans:-apple-system,BlinkMacSystemFont,"Segoe UI","Roboto","Oxygen","Ubuntu","Cantarell","Fira Sans","Droid Sans","Helvetica Neue",sans-serif;--font-mono:"JetBrains Mono",monospace;--color-red-50:oklch(97.1% .013 17.38);--color-red-100:oklch(93.6% .032 17.717);--color-red-200:oklch(88.5% .062 18.334);--color-red-300:oklch(80.8% .114 19.571);--color-red-400:oklch(70.4% .191 22.216);--color-red-500:oklch(63.7% .237 25.331);--color-red-600:oklch(57.7% .245 27.325);--color-red-700:oklch(50.5% .213 27.518);--color-red-800:oklch(44.4% .177 26.899);--color-red-900:oklch(39.6% .141 25.723);--color-amber-50:oklch(98.7% .022 95.277);--color-amber-100:oklch(96.2% .059 95.617);--color-amber-200:oklch(92.4% .12 95.746);--color-amber-400:oklch(82.8% .189 84.429);--color-amber-600:oklch(66.6% .179 58.318);--color-yellow-200:oklch(94.5% .129 101.54);--color-yellow-400:oklch(85.2% .199 91.936);--color-yellow-500:oklch(79.5% .184 86.047);--color-yellow-600:oklch(68.1% .162 75.834);--color-green-50:oklch(98.2% .018 155.826);--color-green-100:oklch(96.2% .044 156.743);--color-green-500:oklch(72.3% .219 149.579);--color-green-600:oklch(62.7% .194 149.214);--color-green-700:oklch(52.7% .154 150.069);--color-emerald-50:oklch(97.9% .021 166.113);--color-emerald-100:oklch(95% .052 163.051);--color-emerald-400:oklch(76.5% .177 163.223);--color-emerald-500:oklch(69.6% .17 162.48);--color-emerald-600:oklch(59.6% .145 163.225);--color-cyan-300:oklch(86.5% .127 207.078);--color-cyan-400:oklch(78.9% .154 211.53);--color-cyan-500:oklch(71.5% .143 215.221);--color-sky-50:oklch(97.7% .013 236.62);--color-sky-100:oklch(95.1% .026 236.824);--color-sky-500:oklch(68.5% .169 237.323);--color-sky-600:oklch(58.8% .158 241.966);--color-blue-100:oklch(93.2% .032 255.585);--color-blue-500:oklch(62.3% .214 259.815);--color-blue-700:oklch(48.8% .243 264.376);--color-blue-800:oklch(42.4% .199 265.638);--color-violet-50:oklch(96.9% .016 293.756);--color-violet-100:oklch(94.3% .029 294.588);--color-violet-600:oklch(54.1% .281 293.009);--color-zinc-800:oklch(27.4% .006 286.033);--color-neutral-50:oklch(98.5% 0 0);--color-neutral-100:oklch(97% 0 0);--color-neutral-300:oklch(87% 0 0);--color-neutral-400:oklch(70.8% 0 0);--color-neutral-500:oklch(55.6% 0 0);--color-neutral-700:oklch(37.1% 0 0);--color-neutral-800:oklch(26.9% 0 0);--color-neutral-900:oklch(20.5% 0 0);--color-black:#000;--color-white:#fff;--spacing:.25rem;--container-lg:32rem;--container-2xl:42rem;--container-3xl:48rem;--text-xs:.75rem;--text-xs--line-height:calc(1/.75);--text-sm:.875rem;--text-sm--line-height:calc(1.25/.875);--text-base:1rem;--text-base--line-height: 1.5 ;--text-lg:1.125rem;--text-lg--line-height:calc(1.75/1.125);--text-xl:1.25rem;--text-xl--line-height:calc(1.75/1.25);--text-2xl:1.5rem;--text-2xl--line-height:calc(2/1.5);--text-3xl:1.875rem;--text-3xl--line-height: 1.2 ;--font-weight-medium:500;--font-weight-semibold:600;--tracking-tight:-.025em;--tracking-wide:.025em;--tracking-wider:.05em;--leading-tight:1.25;--leading-relaxed:1.625;--radius-sm:.25rem;--radius-md:.375rem;--radius-lg:.5rem;--radius-xl:.75rem;--radius-2xl:1rem;--ease-out:cubic-bezier(0,0,.2,1);--ease-in-out:cubic-bezier(.4,0,.2,1);--animate-spin:spin 1s linear infinite;--animate-ping:ping 1s cubic-bezier(0,0,.2,1)infinite;--animate-pulse:pulse 2s cubic-bezier(.4,0,.6,1)infinite;--blur-sm:8px;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4,0,.2,1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono);--color-surface:var(--color-white);--color-ink:var(--color-black);--color-primary-50:oklch(99.2% .002 80);--color-primary-100:oklch(98.21% 0 89.88);--color-primary-200:oklch(94.61% 0 89.88);--color-primary-300:oklch(95% .004 80);--color-primary-400:oklch(87.5% .005 80);--color-primary-500:oklch(78.5% .006 80);--color-primary-600:oklch(67% .007 80);--color-primary-700:oklch(56% .006 80);--color-primary-800:oklch(45% .005 80);--color-primary-900:oklch(35% .004 80);--color-primary-950:oklch(25% .003 80)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}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;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab,red,red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer utilities{.pointer-events-auto{pointer-events:auto}.pointer-events-none{pointer-events:none}.collapse{visibility:collapse}.visible{visibility:visible}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.inset-0{inset:calc(var(--spacing)*0)}.inset-2{inset:calc(var(--spacing)*2)}.inset-y-0{inset-block:calc(var(--spacing)*0)}.-top-1{top:calc(var(--spacing)*-1)}.-top-1\.5{top:calc(var(--spacing)*-1.5)}.top-1\/2{top:50%}.top-full{top:100%}.-right-1{right:calc(var(--spacing)*-1)}.-right-1\.5{right:calc(var(--spacing)*-1.5)}.right-0{right:calc(var(--spacing)*0)}.right-2{right:calc(var(--spacing)*2)}.right-10{right:calc(var(--spacing)*10)}.bottom-0{bottom:calc(var(--spacing)*0)}.bottom-10{bottom:calc(var(--spacing)*10)}.bottom-full{bottom:100%}.left-0{left:calc(var(--spacing)*0)}.left-1\/2{left:50%}.left-2{left:calc(var(--spacing)*2)}.left-3{left:calc(var(--spacing)*3)}.z-0{z-index:0}.z-10{z-index:10}.z-20{z-index:20}.z-40{z-index:40}.z-50{z-index:50}.col-span-2{grid-column:span 2/span 2}.container{width:100%}@media(min-width:40rem){.container{max-width:40rem}}@media(min-width:48rem){.container{max-width:48rem}}@media(min-width:64rem){.container{max-width:64rem}}@media(min-width:80rem){.container{max-width:80rem}}@media(min-width:96rem){.container{max-width:96rem}}.-mx-2{margin-inline:calc(var(--spacing)*-2)}.mx-1{margin-inline:calc(var(--spacing)*1)}.mx-auto{margin-inline:auto}.my-1{margin-block:calc(var(--spacing)*1)}.my-3{margin-block:calc(var(--spacing)*3)}.mt-0\.5{margin-top:calc(var(--spacing)*.5)}.mt-1{margin-top:calc(var(--spacing)*1)}.mt-1\.5{margin-top:calc(var(--spacing)*1.5)}.mt-2{margin-top:calc(var(--spacing)*2)}.mt-3{margin-top:calc(var(--spacing)*3)}.mt-4{margin-top:calc(var(--spacing)*4)}.mt-5{margin-top:calc(var(--spacing)*5)}.mt-6{margin-top:calc(var(--spacing)*6)}.mr-1{margin-right:calc(var(--spacing)*1)}.mr-1\.5{margin-right:calc(var(--spacing)*1.5)}.mr-2{margin-right:calc(var(--spacing)*2)}.-mb-4{margin-bottom:calc(var(--spacing)*-4)}.mb-0\.5{margin-bottom:calc(var(--spacing)*.5)}.mb-1{margin-bottom:calc(var(--spacing)*1)}.mb-1\.5{margin-bottom:calc(var(--spacing)*1.5)}.mb-2{margin-bottom:calc(var(--spacing)*2)}.mb-3{margin-bottom:calc(var(--spacing)*3)}.mb-4{margin-bottom:calc(var(--spacing)*4)}.mb-6{margin-bottom:calc(var(--spacing)*6)}.mb-10{margin-bottom:calc(var(--spacing)*10)}.-ml-1\.5{margin-left:calc(var(--spacing)*-1.5)}.ml-0\.5{margin-left:calc(var(--spacing)*.5)}.ml-1{margin-left:calc(var(--spacing)*1)}.ml-2{margin-left:calc(var(--spacing)*2)}.ml-3{margin-left:calc(var(--spacing)*3)}.ml-4{margin-left:calc(var(--spacing)*4)}.ml-auto{margin-left:auto}.line-clamp-1{-webkit-line-clamp:1;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.line-clamp-2{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.block{display:block}.contents{display:contents}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-block{display:inline-block}.inline-flex{display:inline-flex}.table{display:table}.aspect-square{aspect-ratio:1}.size-1\.5{width:calc(var(--spacing)*1.5);height:calc(var(--spacing)*1.5)}.size-2{width:calc(var(--spacing)*2);height:calc(var(--spacing)*2)}.size-2\.5{width:calc(var(--spacing)*2.5);height:calc(var(--spacing)*2.5)}.size-3{width:calc(var(--spacing)*3);height:calc(var(--spacing)*3)}.size-4{width:calc(var(--spacing)*4);height:calc(var(--spacing)*4)}.size-5{width:calc(var(--spacing)*5);height:calc(var(--spacing)*5)}.size-6{width:calc(var(--spacing)*6);height:calc(var(--spacing)*6)}.size-7{width:calc(var(--spacing)*7);height:calc(var(--spacing)*7)}.size-8{width:calc(var(--spacing)*8);height:calc(var(--spacing)*8)}.size-9{width:calc(var(--spacing)*9);height:calc(var(--spacing)*9)}.size-10{width:calc(var(--spacing)*10);height:calc(var(--spacing)*10)}.size-11{width:calc(var(--spacing)*11);height:calc(var(--spacing)*11)}.size-12{width:calc(var(--spacing)*12);height:calc(var(--spacing)*12)}.h-\(--active-tab-height\){height:var(--active-tab-height)}.h-\(--collapsible-panel-height\){height:var(--collapsible-panel-height)}.h-1\.5{height:calc(var(--spacing)*1.5)}.h-2{height:calc(var(--spacing)*2)}.h-4{height:calc(var(--spacing)*4)}.h-5{height:calc(var(--spacing)*5)}.h-6{height:calc(var(--spacing)*6)}.h-7{height:calc(var(--spacing)*7)}.h-8{height:calc(var(--spacing)*8)}.h-9{height:calc(var(--spacing)*9)}.h-10{height:calc(var(--spacing)*10)}.h-12{height:calc(var(--spacing)*12)}.h-\[calc\(var\(--thumb-size\)\+2px\)\]{height:calc(var(--thumb-size) + 2px)}.h-auto{height:auto}.h-full{height:100%}.h-px{height:1px}.h-screen{height:100vh}.max-h-32{max-height:calc(var(--spacing)*32)}.max-h-44{max-height:calc(var(--spacing)*44)}.max-h-56{max-height:calc(var(--spacing)*56)}.max-h-80{max-height:calc(var(--spacing)*80)}.max-h-\[60vh\]{max-height:60vh}.max-h-\[80vh\]{max-height:80vh}.max-h-\[85vh\]{max-height:85vh}.max-h-\[88vh\]{max-height:88vh}.max-h-\[300px\]{max-height:300px}.max-h-\[360px\]{max-height:360px}.max-h-\[calc\(88vh-72px\)\]{max-height:calc(88vh - 72px)}.max-h-none{max-height:none}.min-h-0{min-height:calc(var(--spacing)*0)}.min-h-8{min-height:calc(var(--spacing)*8)}.min-h-\[28px\]{min-height:28px}.min-h-\[36px\]{min-height:36px}.min-h-full{min-height:100%}.min-h-screen{min-height:100vh}.w-\(--active-tab-width\){width:var(--active-tab-width)}.w-1\.5{width:calc(var(--spacing)*1.5)}.w-1\/2{width:50%}.w-2{width:calc(var(--spacing)*2)}.w-4{width:calc(var(--spacing)*4)}.w-5{width:calc(var(--spacing)*5)}.w-6{width:calc(var(--spacing)*6)}.w-7{width:calc(var(--spacing)*7)}.w-8{width:calc(var(--spacing)*8)}.w-10{width:calc(var(--spacing)*10)}.w-12{width:calc(var(--spacing)*12)}.w-16{width:calc(var(--spacing)*16)}.w-20{width:calc(var(--spacing)*20)}.w-\[300px\]{width:300px}.w-\[calc\(var\(--thumb-size\)\*2-2px\)\]{width:calc(var(--thumb-size)*2 - 2px)}.w-\[min\(380px\,90vw\)\]{width:min(380px,90vw)}.w-\[min\(400px\,92vw\)\]{width:min(400px,92vw)}.w-\[min\(420px\,90vw\)\]{width:min(420px,90vw)}.w-\[min\(500px\,92vw\)\]{width:min(500px,92vw)}.w-\[min\(600px\,92vw\)\]{width:min(600px,92vw)}.w-\[min\(680px\,92vw\)\]{width:min(680px,92vw)}.w-\[min\(1000px\,95vw\)\]{width:min(1000px,95vw)}.w-\[var\(--opencami-sidebar-width\)\]{width:var(--opencami-sidebar-width)}.w-fit{width:fit-content}.w-full{width:100%}.max-w-2xl{max-width:var(--container-2xl)}.max-w-3xl{max-width:var(--container-3xl)}.max-w-\[85\%\]{max-width:85%}.max-w-\[140px\]{max-width:140px}.max-w-\[160px\]{max-width:160px}.max-w-\[180px\]{max-width:180px}.max-w-\[200px\]{max-width:200px}.max-w-\[300px\]{max-width:300px}.max-w-\[var\(--opencami-chat-width\)\]{max-width:var(--opencami-chat-width)}.max-w-full{max-width:100%}.max-w-lg{max-width:var(--container-lg)}.min-w-0{min-width:calc(var(--spacing)*0)}.min-w-5{min-width:calc(var(--spacing)*5)}.min-w-\[60px\]{min-width:60px}.min-w-\[80px\]{min-width:80px}.min-w-\[90px\]{min-width:90px}.min-w-\[110px\]{min-width:110px}.min-w-\[140px\]{min-width:140px}.min-w-\[160px\]{min-width:160px}.min-w-\[180px\]{min-width:180px}.min-w-\[190px\]{min-width:190px}.flex-1{flex:1}.flex-shrink-0,.shrink-0{flex-shrink:0}.grow{flex-grow:1}.border-collapse{border-collapse:collapse}.origin-left{transform-origin:0}.origin-top-right{transform-origin:100% 0}.-translate-x-1\/2{--tw-translate-x: -50% ;translate:var(--tw-translate-x)var(--tw-translate-y)}.-translate-x-full{--tw-translate-x:-100%;translate:var(--tw-translate-x)var(--tw-translate-y)}.translate-x-\(--active-tab-left\){--tw-translate-x:var(--active-tab-left);translate:var(--tw-translate-x)var(--tw-translate-y)}.translate-x-0{--tw-translate-x:calc(var(--spacing)*0);translate:var(--tw-translate-x)var(--tw-translate-y)}.-translate-y-\(--active-tab-bottom\){--tw-translate-y:calc(var(--active-tab-bottom)*-1);translate:var(--tw-translate-x)var(--tw-translate-y)}.-translate-y-1\/2{--tw-translate-y: -50% ;translate:var(--tw-translate-x)var(--tw-translate-y)}.translate-y-0{--tw-translate-y:calc(var(--spacing)*0);translate:var(--tw-translate-x)var(--tw-translate-y)}.translate-y-4{--tw-translate-y:calc(var(--spacing)*4);translate:var(--tw-translate-x)var(--tw-translate-y)}.scale-95{--tw-scale-x:95%;--tw-scale-y:95%;--tw-scale-z:95%;scale:var(--tw-scale-x)var(--tw-scale-y)}.scale-98{--tw-scale-x:98%;--tw-scale-y:98%;--tw-scale-z:98%;scale:var(--tw-scale-x)var(--tw-scale-y)}.scale-100{--tw-scale-x:100%;--tw-scale-y:100%;--tw-scale-z:100%;scale:var(--tw-scale-x)var(--tw-scale-y)}.scale-110{--tw-scale-x:110%;--tw-scale-y:110%;--tw-scale-z:110%;scale:var(--tw-scale-x)var(--tw-scale-y)}.rotate-90{rotate:90deg}.transform{transform:var(--tw-rotate-x,)var(--tw-rotate-y,)var(--tw-rotate-z,)var(--tw-skew-x,)var(--tw-skew-y,)}.animate-\[shimmer_2s_infinite_linear\]{animation:2s linear infinite shimmer}.animate-\[shimmer_4s_infinite_linear\]{animation:4s linear infinite shimmer}.animate-ping{animation:var(--animate-ping)}.animate-pulse{animation:var(--animate-pulse)}.animate-spin{animation:var(--animate-spin)}.cursor-not-allowed{cursor:not-allowed}.cursor-pointer{cursor:pointer}.cursor-text{cursor:text}.cursor-wait{cursor:wait}.touch-manipulation{touch-action:manipulation}.touch-none{touch-action:none}.resize{resize:both}.resize-none{resize:none}.scroll-mt-0{scroll-margin-top:calc(var(--spacing)*0)}.scroll-mt-4{scroll-margin-top:calc(var(--spacing)*4)}.list-decimal{list-style-type:decimal}.list-disc{list-style-type:disc}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-cols-\[auto_1fr\]{grid-template-columns:auto 1fr}.grid-cols-\[auto_1fr_auto_auto\]{grid-template-columns:auto 1fr auto auto}.grid-cols-\[auto_minmax\(0\,1fr\)\]{grid-template-columns:auto minmax(0,1fr)}.flex-col{flex-direction:column}.flex-row-reverse{flex-direction:row-reverse}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.items-end{align-items:flex-end}.items-start{align-items:flex-start}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.justify-end{justify-content:flex-end}.justify-start{justify-content:flex-start}.gap-0{gap:calc(var(--spacing)*0)}.gap-0\.5{gap:calc(var(--spacing)*.5)}.gap-1{gap:calc(var(--spacing)*1)}.gap-1\.5{gap:calc(var(--spacing)*1.5)}.gap-2{gap:calc(var(--spacing)*2)}.gap-3{gap:calc(var(--spacing)*3)}.gap-4{gap:calc(var(--spacing)*4)}.gap-6{gap:calc(var(--spacing)*6)}.gap-\[var\(--opencami-msg-gap\)\]{gap:var(--opencami-msg-gap)}.gap-px{gap:1px}:where(.space-y-0\.5>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*.5)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*.5)*calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-1>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*1)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*1)*calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-1\.5>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*1.5)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*1.5)*calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-2>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*2)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*2)*calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-3>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*3)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*3)*calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-4>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*4)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*4)*calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-6>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*6)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*6)*calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-10>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*10)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*10)*calc(1 - var(--tw-space-y-reverse)))}.gap-x-0\.5{column-gap:calc(var(--spacing)*.5)}:where(.divide-y>:not(:last-child)){--tw-divide-y-reverse:0;border-bottom-style:var(--tw-border-style);border-top-style:var(--tw-border-style);border-top-width:calc(1px*var(--tw-divide-y-reverse));border-bottom-width:calc(1px*calc(1 - var(--tw-divide-y-reverse)))}:where(.divide-primary-100>:not(:last-child)){border-color:var(--color-primary-100)}:where(.divide-primary-200>:not(:last-child)){border-color:var(--color-primary-200)}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.overflow-auto{overflow:auto}.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.overflow-x-hidden{overflow-x:hidden}.overflow-y-auto{overflow-y:auto}.rounded{border-radius:.25rem}.rounded-\(--thumb-size\){border-radius:var(--thumb-size)}.rounded-2xl{border-radius:var(--radius-2xl)}.rounded-\[12px\]{border-radius:12px}.rounded-\[20px\]{border-radius:20px}.rounded-\[22px\]{border-radius:22px}.rounded-full{border-radius:3.40282e38px}.rounded-lg{border-radius:var(--radius-lg)}.rounded-md{border-radius:var(--radius-md)}.rounded-none{border-radius:0}.rounded-sm{border-radius:var(--radius-sm)}.rounded-xl{border-radius:var(--radius-xl)}.border{border-style:var(--tw-border-style);border-width:1px}.border-0{border-style:var(--tw-border-style);border-width:0}.border-2{border-style:var(--tw-border-style);border-width:2px}.border-y{border-block-style:var(--tw-border-style);border-block-width:1px}.border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.border-r{border-right-style:var(--tw-border-style);border-right-width:1px}.border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.border-l{border-left-style:var(--tw-border-style);border-left-width:1px}.border-l-2{border-left-style:var(--tw-border-style);border-left-width:2px}.border-dashed{--tw-border-style:dashed;border-style:dashed}.border-none{--tw-border-style:none;border-style:none}.border-amber-100{border-color:var(--color-amber-100)}.border-amber-200{border-color:var(--color-amber-200)}.border-current{border-color:currentColor}.border-cyan-500\/10{border-color:#00b7d71a}@supports (color:color-mix(in lab,red,red)){.border-cyan-500\/10{border-color:color-mix(in oklab,var(--color-cyan-500)10%,transparent)}}.border-cyan-500\/20{border-color:#00b7d733}@supports (color:color-mix(in lab,red,red)){.border-cyan-500\/20{border-color:color-mix(in oklab,var(--color-cyan-500)20%,transparent)}}.border-cyan-500\/30{border-color:#00b7d74d}@supports (color:color-mix(in lab,red,red)){.border-cyan-500\/30{border-color:color-mix(in oklab,var(--color-cyan-500)30%,transparent)}}.border-emerald-100{border-color:var(--color-emerald-100)}.border-primary-50{border-color:var(--color-primary-50)}.border-primary-100{border-color:var(--color-primary-100)}.border-primary-200{border-color:var(--color-primary-200)}.border-primary-200\/70{border-color:#edededb3}@supports (color:color-mix(in lab,red,red)){.border-primary-200\/70{border-color:color-mix(in oklab,var(--color-primary-200)70%,transparent)}}.border-primary-200\/80{border-color:#edededcc}@supports (color:color-mix(in lab,red,red)){.border-primary-200\/80{border-color:color-mix(in oklab,var(--color-primary-200)80%,transparent)}}.border-primary-300{border-color:var(--color-primary-300)}.border-primary-400{border-color:var(--color-primary-400)}.border-primary-700{border-color:var(--color-primary-700)}.border-primary-900{border-color:var(--color-primary-900)}.border-red-100{border-color:var(--color-red-100)}.border-red-200{border-color:var(--color-red-200)}.border-red-300{border-color:var(--color-red-300)}.border-sky-100{border-color:var(--color-sky-100)}.border-transparent{border-color:#0000}.border-violet-100{border-color:var(--color-violet-100)}.border-white\/10{border-color:#ffffff1a}@supports (color:color-mix(in lab,red,red)){.border-white\/10{border-color:color-mix(in oklab,var(--color-white)10%,transparent)}}.border-t-transparent{border-top-color:#0000}.bg-\[var\(--opencami-accent\)\]{background-color:var(--opencami-accent)}.bg-\[var\(--opencami-accent-light\)\]{background-color:var(--opencami-accent-light)}.bg-amber-50{background-color:var(--color-amber-50)}.bg-black{background-color:var(--color-black)}.bg-black\/40{background-color:#0006}@supports (color:color-mix(in lab,red,red)){.bg-black\/40{background-color:color-mix(in oklab,var(--color-black)40%,transparent)}}.bg-black\/50{background-color:#00000080}@supports (color:color-mix(in lab,red,red)){.bg-black\/50{background-color:color-mix(in oklab,var(--color-black)50%,transparent)}}.bg-blue-100{background-color:var(--color-blue-100)}.bg-cyan-500\/5{background-color:#00b7d70d}@supports (color:color-mix(in lab,red,red)){.bg-cyan-500\/5{background-color:color-mix(in oklab,var(--color-cyan-500)5%,transparent)}}.bg-cyan-500\/10{background-color:#00b7d71a}@supports (color:color-mix(in lab,red,red)){.bg-cyan-500\/10{background-color:color-mix(in oklab,var(--color-cyan-500)10%,transparent)}}.bg-cyan-500\/20{background-color:#00b7d733}@supports (color:color-mix(in lab,red,red)){.bg-cyan-500\/20{background-color:color-mix(in oklab,var(--color-cyan-500)20%,transparent)}}.bg-emerald-50{background-color:var(--color-emerald-50)}.bg-emerald-500{background-color:var(--color-emerald-500)}.bg-green-50{background-color:var(--color-green-50)}.bg-green-100{background-color:var(--color-green-100)}.bg-green-500{background-color:var(--color-green-500)}.bg-ink\/40{background-color:#0006}@supports (color:color-mix(in lab,red,red)){.bg-ink\/40{background-color:color-mix(in oklab,var(--color-ink)40%,transparent)}}.bg-neutral-50{background-color:var(--color-neutral-50)}.bg-neutral-800{background-color:var(--color-neutral-800)}.bg-neutral-900\/95{background-color:#171717f2}@supports (color:color-mix(in lab,red,red)){.bg-neutral-900\/95{background-color:color-mix(in oklab,var(--color-neutral-900)95%,transparent)}}.bg-primary-50{background-color:var(--color-primary-50)}.bg-primary-50\/50{background-color:#fdfcfb80}@supports (color:color-mix(in lab,red,red)){.bg-primary-50\/50{background-color:color-mix(in oklab,var(--color-primary-50)50%,transparent)}}.bg-primary-50\/60{background-color:#fdfcfb99}@supports (color:color-mix(in lab,red,red)){.bg-primary-50\/60{background-color:color-mix(in oklab,var(--color-primary-50)60%,transparent)}}.bg-primary-50\/90{background-color:#fdfcfbe6}@supports (color:color-mix(in lab,red,red)){.bg-primary-50\/90{background-color:color-mix(in oklab,var(--color-primary-50)90%,transparent)}}.bg-primary-100{background-color:var(--color-primary-100)}.bg-primary-100\/70{background-color:#f9f9f9b3}@supports (color:color-mix(in lab,red,red)){.bg-primary-100\/70{background-color:color-mix(in oklab,var(--color-primary-100)70%,transparent)}}.bg-primary-200{background-color:var(--color-primary-200)}.bg-primary-400{background-color:var(--color-primary-400)}.bg-primary-500{background-color:var(--color-primary-500)}.bg-primary-600{background-color:var(--color-primary-600)}.bg-primary-700{background-color:var(--color-primary-700)}.bg-primary-950{background-color:var(--color-primary-950)}.bg-primary-950\/20{background-color:#22212033}@supports (color:color-mix(in lab,red,red)){.bg-primary-950\/20{background-color:color-mix(in oklab,var(--color-primary-950)20%,transparent)}}.bg-red-50{background-color:var(--color-red-50)}.bg-red-100{background-color:var(--color-red-100)}.bg-red-500{background-color:var(--color-red-500)}.bg-red-600{background-color:var(--color-red-600)}.bg-sky-50{background-color:var(--color-sky-50)}.bg-surface{background-color:var(--color-surface)}.bg-transparent{background-color:#0000}.bg-violet-50{background-color:var(--color-violet-50)}.bg-white{background-color:var(--color-white)}.bg-yellow-200{background-color:var(--color-yellow-200)}.bg-yellow-500{background-color:var(--color-yellow-500)}.bg-size-\[200\%_auto\]{background-size:200%}.bg-clip-text{-webkit-background-clip:text;background-clip:text}.object-contain{object-fit:contain}.object-cover{object-fit:cover}.p-0{padding:calc(var(--spacing)*0)}.p-0\.5{padding:calc(var(--spacing)*.5)}.p-1{padding:calc(var(--spacing)*1)}.p-1\.5{padding:calc(var(--spacing)*1.5)}.p-2{padding:calc(var(--spacing)*2)}.p-2\.5{padding:calc(var(--spacing)*2.5)}.p-3{padding:calc(var(--spacing)*3)}.p-4{padding:calc(var(--spacing)*4)}.p-5{padding:calc(var(--spacing)*5)}.p-6{padding:calc(var(--spacing)*6)}.p-8{padding:calc(var(--spacing)*8)}.p-px{padding:1px}.px-0{padding-inline:calc(var(--spacing)*0)}.px-0\.5{padding-inline:calc(var(--spacing)*.5)}.px-1{padding-inline:calc(var(--spacing)*1)}.px-1\.5{padding-inline:calc(var(--spacing)*1.5)}.px-2{padding-inline:calc(var(--spacing)*2)}.px-2\.5{padding-inline:calc(var(--spacing)*2.5)}.px-3{padding-inline:calc(var(--spacing)*3)}.px-4{padding-inline:calc(var(--spacing)*4)}.px-5{padding-inline:calc(var(--spacing)*5)}.px-6{padding-inline:calc(var(--spacing)*6)}.py-0\.5{padding-block:calc(var(--spacing)*.5)}.py-1{padding-block:calc(var(--spacing)*1)}.py-1\.5{padding-block:calc(var(--spacing)*1.5)}.py-2{padding-block:calc(var(--spacing)*2)}.py-2\.5{padding-block:calc(var(--spacing)*2.5)}.py-3{padding-block:calc(var(--spacing)*3)}.py-4{padding-block:calc(var(--spacing)*4)}.py-8{padding-block:calc(var(--spacing)*8)}.py-10{padding-block:calc(var(--spacing)*10)}.py-12{padding-block:calc(var(--spacing)*12)}.py-16{padding-block:calc(var(--spacing)*16)}.py-\[var\(--opencami-msg-padding-y\)\]{padding-block:var(--opencami-msg-padding-y)}.py-\[var\(--opencami-user-bubble-py\)\]{padding-block:var(--opencami-user-bubble-py)}.pt-0{padding-top:calc(var(--spacing)*0)}.pt-1{padding-top:calc(var(--spacing)*1)}.pt-2{padding-top:calc(var(--spacing)*2)}.pt-3{padding-top:calc(var(--spacing)*3)}.pt-4{padding-top:calc(var(--spacing)*4)}.pt-6{padding-top:calc(var(--spacing)*6)}.pr-0\.5{padding-right:calc(var(--spacing)*.5)}.pr-1{padding-right:calc(var(--spacing)*1)}.pr-2{padding-right:calc(var(--spacing)*2)}.pr-3{padding-right:calc(var(--spacing)*3)}.pb-0\.5{padding-bottom:calc(var(--spacing)*.5)}.pb-1{padding-bottom:calc(var(--spacing)*1)}.pb-3{padding-bottom:calc(var(--spacing)*3)}.pb-4{padding-bottom:calc(var(--spacing)*4)}.pl-1\.5{padding-left:calc(var(--spacing)*1.5)}.pl-2{padding-left:calc(var(--spacing)*2)}.pl-4{padding-left:calc(var(--spacing)*4)}.pl-9{padding-left:calc(var(--spacing)*9)}.pl-\[18px\]{padding-left:18px}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.font-\[\"Inter\"\,sans-serif\]{font-family:Inter,sans-serif}.font-\[\"Roboto\"\,sans-serif\]{font-family:Roboto,sans-serif}.font-mono{font-family:var(--font-mono)}.font-sans{font-family:var(--font-sans)}.text-2xl{font-size:var(--text-2xl);line-height:var(--tw-leading,var(--text-2xl--line-height))}.text-3xl{font-size:var(--text-3xl);line-height:var(--tw-leading,var(--text-3xl--line-height))}.text-base{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}.text-lg{font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-xl{font-size:var(--text-xl);line-height:var(--tw-leading,var(--text-xl--line-height))}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.text-\[9px\]{font-size:9px}.text-\[10px\]{font-size:10px}.text-\[11px\]{font-size:11px}.text-\[13px\]{font-size:13px}.leading-none{--tw-leading:1;line-height:1}.leading-relaxed{--tw-leading:var(--leading-relaxed);line-height:var(--leading-relaxed)}.leading-tight{--tw-leading:var(--leading-tight);line-height:var(--leading-tight)}.font-\[450\]{--tw-font-weight:450;font-weight:450}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.tracking-\[-0\.02em\]{--tw-tracking:-.02em;letter-spacing:-.02em}.tracking-tight{--tw-tracking:var(--tracking-tight);letter-spacing:var(--tracking-tight)}.tracking-wide{--tw-tracking:var(--tracking-wide);letter-spacing:var(--tracking-wide)}.tracking-wider{--tw-tracking:var(--tracking-wider);letter-spacing:var(--tracking-wider)}.text-balance{text-wrap:balance}.text-pretty{text-wrap:pretty}.break-words{overflow-wrap:break-word}.break-all{word-break:break-all}.whitespace-normal{white-space:normal}.whitespace-nowrap{white-space:nowrap}.whitespace-pre{white-space:pre}.whitespace-pre-wrap{white-space:pre-wrap}.text-\[var\(--opencami-accent\)\]{color:var(--opencami-accent)}.text-amber-400{color:var(--color-amber-400)}.text-amber-600{color:var(--color-amber-600)}.text-black{color:var(--color-black)}.text-blue-500{color:var(--color-blue-500)}.text-blue-700{color:var(--color-blue-700)}.text-cyan-300{color:var(--color-cyan-300)}.text-cyan-400{color:var(--color-cyan-400)}.text-cyan-500\/70{color:#00b7d7b3}@supports (color:color-mix(in lab,red,red)){.text-cyan-500\/70{color:color-mix(in oklab,var(--color-cyan-500)70%,transparent)}}.text-emerald-500{color:var(--color-emerald-500)}.text-emerald-600{color:var(--color-emerald-600)}.text-green-600{color:var(--color-green-600)}.text-green-600\/80{color:#00a544cc}@supports (color:color-mix(in lab,red,red)){.text-green-600\/80{color:color-mix(in oklab,var(--color-green-600)80%,transparent)}}.text-green-700{color:var(--color-green-700)}.text-neutral-300{color:var(--color-neutral-300)}.text-primary-50{color:var(--color-primary-50)}.text-primary-100{color:var(--color-primary-100)}.text-primary-300{color:var(--color-primary-300)}.text-primary-400{color:var(--color-primary-400)}.text-primary-500{color:var(--color-primary-500)}.text-primary-500\/70{color:#bbb9b5b3}@supports (color:color-mix(in lab,red,red)){.text-primary-500\/70{color:color-mix(in oklab,var(--color-primary-500)70%,transparent)}}.text-primary-500\/75{color:#bbb9b5bf}@supports (color:color-mix(in lab,red,red)){.text-primary-500\/75{color:color-mix(in oklab,var(--color-primary-500)75%,transparent)}}.text-primary-500\/80{color:#bbb9b5cc}@supports (color:color-mix(in lab,red,red)){.text-primary-500\/80{color:color-mix(in oklab,var(--color-primary-500)80%,transparent)}}.text-primary-600{color:var(--color-primary-600)}.text-primary-600\/80{color:#979590cc}@supports (color:color-mix(in lab,red,red)){.text-primary-600\/80{color:color-mix(in oklab,var(--color-primary-600)80%,transparent)}}.text-primary-700{color:var(--color-primary-700)}.text-primary-700\/80{color:#767471cc}@supports (color:color-mix(in lab,red,red)){.text-primary-700\/80{color:color-mix(in oklab,var(--color-primary-700)80%,transparent)}}.text-primary-800{color:var(--color-primary-800)}.text-primary-900{color:var(--color-primary-900)}.text-primary-950{color:var(--color-primary-950)}.text-red-500{color:var(--color-red-500)}.text-red-600{color:var(--color-red-600)}.text-red-600\/80{color:#e40014cc}@supports (color:color-mix(in lab,red,red)){.text-red-600\/80{color:color-mix(in oklab,var(--color-red-600)80%,transparent)}}.text-red-700{color:var(--color-red-700)}.text-sky-500{color:var(--color-sky-500)}.text-sky-600{color:var(--color-sky-600)}.text-transparent{color:#0000}.text-violet-600{color:var(--color-violet-600)}.text-white{color:var(--color-white)}.text-yellow-600{color:var(--color-yellow-600)}.capitalize{text-transform:capitalize}.lowercase{text-transform:lowercase}.uppercase{text-transform:uppercase}.italic{font-style:italic}.tabular-nums{--tw-numeric-spacing:tabular-nums;font-variant-numeric:var(--tw-ordinal,)var(--tw-slashed-zero,)var(--tw-numeric-figure,)var(--tw-numeric-spacing,)var(--tw-numeric-fraction,)}.underline{text-decoration-line:underline}.decoration-\[var\(--opencami-accent-light\)\]{-webkit-text-decoration-color:var(--opencami-accent-light);text-decoration-color:var(--opencami-accent-light)}.decoration-primary-300{-webkit-text-decoration-color:var(--color-primary-300);text-decoration-color:var(--color-primary-300)}.underline-offset-4{text-underline-offset:4px}.opacity-0{opacity:0}.opacity-50{opacity:.5}.opacity-60{opacity:.6}.opacity-75{opacity:.75}.opacity-100{opacity:1}.shadow-sm\/5{--tw-shadow-alpha:5%;--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,oklab(0% 0 0/.05)),0 1px 2px -1px var(--tw-shadow-color,oklab(0% 0 0/.05));box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-2xl{--tw-shadow:0 25px 50px -12px var(--tw-shadow-color,#00000040);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-2xs{--tw-shadow:0 1px var(--tw-shadow-color,#0000000d);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-\[0px_12px_32px_0px_rgba\(0\,0\,0\,0\.05\)\]{--tw-shadow:0px 12px 32px 0px var(--tw-shadow-color,#0000000d);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-lg{--tw-shadow:0 10px 15px -3px var(--tw-shadow-color,#0000001a),0 4px 6px -4px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-md{--tw-shadow:0 4px 6px -1px var(--tw-shadow-color,#0000001a),0 2px 4px -2px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-none{--tw-shadow:0 0 #0000;box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-sm{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a),0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-xl{--tw-shadow:0 20px 25px -5px var(--tw-shadow-color,#0000001a),0 8px 10px -6px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.ring-2{--tw-ring-shadow:var(--tw-ring-inset,)0 0 0 calc(2px + var(--tw-ring-offset-width))var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.ring-surface{--tw-ring-color:var(--color-surface)}.ring-offset-2{--tw-ring-offset-width:2px;--tw-ring-offset-shadow:var(--tw-ring-inset,)0 0 0 var(--tw-ring-offset-width)var(--tw-ring-offset-color)}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.outline-black{outline-color:var(--color-black)}.outline-ink\/10{outline-color:#0000001a}@supports (color:color-mix(in lab,red,red)){.outline-ink\/10{outline-color:color-mix(in oklab,var(--color-ink)10%,transparent)}}.outline-primary-900\/10{outline-color:#3c3a381a}@supports (color:color-mix(in lab,red,red)){.outline-primary-900\/10{outline-color:color-mix(in oklab,var(--color-primary-900)10%,transparent)}}.blur{--tw-blur:blur(8px);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-sm{--tw-backdrop-blur:blur(var(--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,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\[background-color\,box-shadow\]{transition-property:background-color,box-shadow;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\[color\,background-color\,box-shadow\]{transition-property:color,background-color,box-shadow;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\[width\,translate\]{transition-property:width,translate;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-all{transition-property:all;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-opacity{transition-property:opacity;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-shadow{transition-property:box-shadow;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-transform{transition-property:transform,translate,scale,rotate;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.duration-0{--tw-duration:0s;transition-duration:0s}.duration-100{--tw-duration:.1s;transition-duration:.1s}.duration-150{--tw-duration:.15s;transition-duration:.15s}.duration-200{--tw-duration:.2s;transition-duration:.2s}.duration-500{--tw-duration:.5s;transition-duration:.5s}.ease-in-out{--tw-ease:var(--ease-in-out);transition-timing-function:var(--ease-in-out)}.ease-out{--tw-ease:var(--ease-out);transition-timing-function:var(--ease-out)}.will-change-transform{will-change:transform}.outline-none{--tw-outline-style:none;outline-style:none}.select-none{-webkit-user-select:none;user-select:none}.\[--thumb-size\:--spacing\(5\)\]{--thumb-size:calc(var(--spacing)*5)}.\[transition\:translate_\.15s\,border-radius_\.15s\,scale_\.1s_\.1s\,transform-origin_\.15s\]{transition:translate .15s,border-radius .15s,scale .1s .1s,transform-origin .15s}.group-focus-within\:opacity-100:is(:where(.group):focus-within *){opacity:1}@media(hover:hover){.group-hover\:pointer-events-auto:is(:where(.group):hover *){pointer-events:auto}.group-hover\:h-2:is(:where(.group):hover *){height:calc(var(--spacing)*2)}.group-hover\:translate-x-0\.5:is(:where(.group):hover *){--tw-translate-x:calc(var(--spacing)*.5);translate:var(--tw-translate-x)var(--tw-translate-y)}.group-hover\:scale-100:is(:where(.group):hover *){--tw-scale-x:100%;--tw-scale-y:100%;--tw-scale-z:100%;scale:var(--tw-scale-x)var(--tw-scale-y)}.group-hover\:text-primary-600:is(:where(.group):hover *){color:var(--color-primary-600)}.group-hover\:text-primary-700:is(:where(.group):hover *){color:var(--color-primary-700)}.group-hover\:opacity-100:is(:where(.group):hover *),.group-hover\/scroll-area\:opacity-100:is(:where(.group\/scroll-area):hover *){opacity:1}}.group-data-panel-open\:rotate-90:is(:where(.group)[data-panel-open] *){rotate:90deg}.group-data-panel-open\:rotate-180:is(:where(.group)[data-panel-open] *){rotate:180deg}.marker\:text-primary-400 ::marker{color:var(--color-primary-400)}.marker\:text-primary-400::marker{color:var(--color-primary-400)}.marker\:text-primary-400 ::-webkit-details-marker{color:var(--color-primary-400)}.marker\:text-primary-400::-webkit-details-marker{color:var(--color-primary-400)}.marker\:text-primary-500 ::marker{color:var(--color-primary-500)}.marker\:text-primary-500::marker{color:var(--color-primary-500)}.marker\:text-primary-500 ::-webkit-details-marker{color:var(--color-primary-500)}.marker\:text-primary-500::-webkit-details-marker{color:var(--color-primary-500)}.selection\:bg-blue-800\/50 ::selection{background-color:#193cb880}@supports (color:color-mix(in lab,red,red)){.selection\:bg-blue-800\/50 ::selection{background-color:color-mix(in oklab,var(--color-blue-800)50%,transparent)}}.selection\:bg-blue-800\/50::selection{background-color:#193cb880}@supports (color:color-mix(in lab,red,red)){.selection\:bg-blue-800\/50::selection{background-color:color-mix(in oklab,var(--color-blue-800)50%,transparent)}}.placeholder\:text-primary-300::placeholder{color:var(--color-primary-300)}.placeholder\:text-primary-400::placeholder{color:var(--color-primary-400)}.placeholder\:text-primary-500::placeholder{color:var(--color-primary-500)}.last\:border-0:last-child{border-style:var(--tw-border-style);border-width:0}.last\:border-b-0:last-child{border-bottom-style:var(--tw-border-style);border-bottom-width:0}@media(hover:hover){.hover\:scale-105:hover{--tw-scale-x:105%;--tw-scale-y:105%;--tw-scale-z:105%;scale:var(--tw-scale-x)var(--tw-scale-y)}.hover\:border-primary-100:hover{border-color:var(--color-primary-100)}.hover\:border-primary-200:hover{border-color:var(--color-primary-200)}.hover\:border-primary-300:hover{border-color:var(--color-primary-300)}.hover\:bg-\[var\(--opencami-accent-hover\)\]:hover{background-color:var(--opencami-accent-hover)}.hover\:bg-cyan-500\/5:hover{background-color:#00b7d70d}@supports (color:color-mix(in lab,red,red)){.hover\:bg-cyan-500\/5:hover{background-color:color-mix(in oklab,var(--color-cyan-500)5%,transparent)}}.hover\:bg-cyan-500\/20:hover{background-color:#00b7d733}@supports (color:color-mix(in lab,red,red)){.hover\:bg-cyan-500\/20:hover{background-color:color-mix(in oklab,var(--color-cyan-500)20%,transparent)}}.hover\:bg-neutral-800\/80:hover{background-color:#262626cc}@supports (color:color-mix(in lab,red,red)){.hover\:bg-neutral-800\/80:hover{background-color:color-mix(in oklab,var(--color-neutral-800)80%,transparent)}}.hover\:bg-primary-50:hover{background-color:var(--color-primary-50)}.hover\:bg-primary-50\/50:hover{background-color:#fdfcfb80}@supports (color:color-mix(in lab,red,red)){.hover\:bg-primary-50\/50:hover{background-color:color-mix(in oklab,var(--color-primary-50)50%,transparent)}}.hover\:bg-primary-100:hover{background-color:var(--color-primary-100)}.hover\:bg-primary-200:hover{background-color:var(--color-primary-200)}.hover\:bg-red-50:hover{background-color:var(--color-red-50)}.hover\:bg-red-50\/80:hover{background-color:#fef2f2cc}@supports (color:color-mix(in lab,red,red)){.hover\:bg-red-50\/80:hover{background-color:color-mix(in oklab,var(--color-red-50)80%,transparent)}}.hover\:bg-red-200:hover{background-color:var(--color-red-200)}.hover\:bg-red-700:hover{background-color:var(--color-red-700)}.hover\:bg-transparent:hover{background-color:#0000}.hover\:text-primary-600:hover{color:var(--color-primary-600)}.hover\:text-primary-700:hover{color:var(--color-primary-700)}.hover\:text-primary-800:hover{color:var(--color-primary-800)}.hover\:text-primary-900:hover{color:var(--color-primary-900)}.hover\:text-primary-950:hover{color:var(--color-primary-950)}.hover\:text-red-600:hover{color:var(--color-red-600)}.hover\:text-red-700:hover{color:var(--color-red-700)}.hover\:underline:hover{text-decoration-line:underline}.hover\:decoration-primary-600:hover{-webkit-text-decoration-color:var(--color-primary-600);text-decoration-color:var(--color-primary-600)}.hover\:opacity-90:hover{opacity:.9}.hover\:shadow-sm:hover{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a),0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}}.focus\:border-primary-300:focus{border-color:var(--color-primary-300)}.focus\:border-primary-400:focus{border-color:var(--color-primary-400)}.focus\:ring-2:focus{--tw-ring-shadow:var(--tw-ring-inset,)0 0 0 calc(2px + var(--tw-ring-offset-width))var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.focus\:ring-primary-500:focus{--tw-ring-color:var(--color-primary-500)}.focus\:ring-primary-500\/20:focus{--tw-ring-color:#bbb9b533}@supports (color:color-mix(in lab,red,red)){.focus\:ring-primary-500\/20:focus{--tw-ring-color:color-mix(in oklab,var(--color-primary-500)20%,transparent)}}.focus\:ring-offset-1:focus{--tw-ring-offset-width:1px;--tw-ring-offset-shadow:var(--tw-ring-inset,)0 0 0 var(--tw-ring-offset-width)var(--tw-ring-offset-color)}.focus\:outline-none:focus{--tw-outline-style:none;outline-style:none}.focus-visible\:rounded-lg:focus-visible{border-radius:var(--radius-lg)}.focus-visible\:bg-primary-50:focus-visible{background-color:var(--color-primary-50)}.focus-visible\:bg-primary-100:focus-visible{background-color:var(--color-primary-100)}.focus-visible\:text-primary-900:focus-visible{color:var(--color-primary-900)}.focus-visible\:ring-0:focus-visible{--tw-ring-shadow:var(--tw-ring-inset,)0 0 0 calc(0px + var(--tw-ring-offset-width))var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.focus-visible\:ring-2:focus-visible{--tw-ring-shadow:var(--tw-ring-inset,)0 0 0 calc(2px + var(--tw-ring-offset-width))var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.focus-visible\:ring-\[var\(--opencami-accent\)\]:focus-visible{--tw-ring-color:var(--opencami-accent)}.focus-visible\:ring-primary-300:focus-visible{--tw-ring-color:var(--color-primary-300)}.focus-visible\:ring-primary-950:focus-visible{--tw-ring-color:var(--color-primary-950)}.focus-visible\:ring-red-300:focus-visible{--tw-ring-color:var(--color-red-300)}.focus-visible\:ring-offset-1:focus-visible{--tw-ring-offset-width:1px;--tw-ring-offset-shadow:var(--tw-ring-inset,)0 0 0 var(--tw-ring-offset-width)var(--tw-ring-offset-color)}.focus-visible\:ring-offset-2:focus-visible{--tw-ring-offset-width:2px;--tw-ring-offset-shadow:var(--tw-ring-inset,)0 0 0 var(--tw-ring-offset-width)var(--tw-ring-offset-color)}.focus-visible\:outline-none:focus-visible{--tw-outline-style:none;outline-style:none}.disabled\:pointer-events-none:disabled{pointer-events:none}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:opacity-50:disabled{opacity:.5}@media(hover:hover){.disabled\:hover\:border-primary-200:disabled:hover{border-color:var(--color-primary-200)}.disabled\:hover\:bg-primary-50:disabled:hover{background-color:var(--color-primary-50)}}:where(:is([role=switch]:active,[data-slot=label]:active)) .in-\[\[role\=switch\]\:active\,\[data-slot\=label\]\:active\]\:rounded-\[var\(--thumb-size\)\/calc\(var\(--thumb-size\)\*1\.1\)\]{border-radius:var(--thumb-size)/calc(var(--thumb-size)*1.1)}:where(:is([role=switch]:active,[data-slot=label]:active)) .in-\[\[role\=switch\]\:active\,\[data-slot\=label\]\:active\]\:not-data-disabled\:scale-x-110:not([data-disabled]){--tw-scale-x:110%;scale:var(--tw-scale-x)var(--tw-scale-y)}.aria-expanded\:bg-primary-200[aria-expanded=true]{background-color:var(--color-primary-200)}.aria-expanded\:opacity-100[aria-expanded=true]{opacity:1}.data-active\:text-primary-900[data-active]{color:var(--color-primary-900)}.data-checked\:origin-\[var\(--thumb-size\)_50\%\][data-checked]{transform-origin:var(--thumb-size)50%}.data-checked\:translate-x-\[calc\(var\(--thumb-size\)-4px\)\][data-checked]{--tw-translate-x:calc(var(--thumb-size) - 4px);translate:var(--tw-translate-x)var(--tw-translate-y)}.data-checked\:bg-primary-900[data-checked]{background-color:var(--color-primary-900)}.data-disabled\:pointer-events-none[data-disabled]{pointer-events:none}.data-disabled\:opacity-64[data-disabled]{opacity:.64}.data-ending-style\:h-0[data-ending-style]{height:calc(var(--spacing)*0)}.data-highlighted\:bg-primary-100[data-highlighted]{background-color:var(--color-primary-100)}.data-highlighted\:bg-red-50\/80[data-highlighted]{background-color:#fef2f2cc}@supports (color:color-mix(in lab,red,red)){.data-highlighted\:bg-red-50\/80[data-highlighted]{background-color:color-mix(in oklab,var(--color-red-50)80%,transparent)}}.data-hovering\:opacity-100[data-hovering]{opacity:1}.data-panel-open\:text-primary-700[data-panel-open]{color:var(--color-primary-700)}.data-scrolling\:opacity-100[data-scrolling]{opacity:1}.data-starting-style\:h-0[data-starting-style]{height:calc(var(--spacing)*0)}.data-unchecked\:bg-primary-200[data-unchecked]{background-color:var(--color-primary-200)}.data-\[orientation\=horizontal\]\:h-0\.5[data-orientation=horizontal]{height:calc(var(--spacing)*.5)}.data-\[orientation\=horizontal\]\:translate-y-px[data-orientation=horizontal]{--tw-translate-y:1px;translate:var(--tw-translate-x)var(--tw-translate-y)}.data-\[orientation\=horizontal\]\:py-1[data-orientation=horizontal]{padding-block:calc(var(--spacing)*1)}.data-\[orientation\=vertical\]\:w-0\.5[data-orientation=vertical]{width:calc(var(--spacing)*.5)}.data-\[orientation\=vertical\]\:w-full[data-orientation=vertical]{width:100%}.data-\[orientation\=vertical\]\:-translate-x-px[data-orientation=vertical]{--tw-translate-x:-1px;translate:var(--tw-translate-x)var(--tw-translate-y)}.data-\[orientation\=vertical\]\:flex-col[data-orientation=vertical]{flex-direction:column}.data-\[orientation\=vertical\]\:flex-row[data-orientation=vertical]{flex-direction:row}.data-\[orientation\=vertical\]\:justify-start[data-orientation=vertical]{justify-content:flex-start}.data-\[orientation\=vertical\]\:px-1[data-orientation=vertical]{padding-inline:calc(var(--spacing)*1)}:is(.\*\:data-\[slot\=tab-indicator\]\:duration-0>*)[data-slot=tab-indicator]{--tw-duration:0s;transition-duration:0s}.data-\[state\=closed\]\:scale-95[data-state=closed]{--tw-scale-x:95%;--tw-scale-y:95%;--tw-scale-z:95%;scale:var(--tw-scale-x)var(--tw-scale-y)}.data-\[state\=closed\]\:opacity-0[data-state=closed]{opacity:0}.data-\[state\=open\]\:scale-100[data-state=open]{--tw-scale-x:100%;--tw-scale-y:100%;--tw-scale-z:100%;scale:var(--tw-scale-x)var(--tw-scale-y)}.data-\[state\=open\]\:opacity-100[data-state=open]{opacity:1}@media(min-width:40rem){.sm\:col-span-1{grid-column:span 1/span 1}.sm\:flex{display:flex}.sm\:max-w-\[768px\]{max-width:768px}.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.sm\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.sm\:\[--thumb-size\:--spacing\(4\)\]{--thumb-size:calc(var(--spacing)*4)}}@media(min-width:48rem){.md\:right-5{right:calc(var(--spacing)*5)}.md\:left-5{left:calc(var(--spacing)*5)}.md\:flex{display:flex}.md\:hidden{display:none}.md\:inline{display:inline}.md\:max-h-\[calc\(85vh-90px\)\]{max-height:calc(85vh - 90px)}.md\:min-h-\[400px\]{min-height:400px}.md\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.md\:flex-row{flex-direction:row}.md\:gap-3{gap:calc(var(--spacing)*3)}:where(.md\:space-y-6>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*6)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*6)*calc(1 - var(--tw-space-y-reverse)))}.md\:px-5{padding-inline:calc(var(--spacing)*5)}.md\:pb-3{padding-bottom:calc(var(--spacing)*3)}}@media(min-width:64rem){.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:80rem){.xl\:grid-cols-8{grid-template-columns:repeat(8,minmax(0,1fr))}}.dark\:border-neutral-700:where(.dark,.dark *){border-color:var(--color-neutral-700)}.dark\:border-primary-700:where(.dark,.dark *){border-color:var(--color-primary-700)}.dark\:border-red-800:where(.dark,.dark *){border-color:var(--color-red-800)}.dark\:bg-neutral-700:where(.dark,.dark *){background-color:var(--color-neutral-700)}.dark\:bg-neutral-800:where(.dark,.dark *){background-color:var(--color-neutral-800)}.dark\:bg-neutral-900:where(.dark,.dark *){background-color:var(--color-neutral-900)}.dark\:bg-primary-700:where(.dark,.dark *){background-color:var(--color-primary-700)}.dark\:bg-red-900\/20:where(.dark,.dark *){background-color:#82181a33}@supports (color:color-mix(in lab,red,red)){.dark\:bg-red-900\/20:where(.dark,.dark *){background-color:color-mix(in oklab,var(--color-red-900)20%,transparent)}}.dark\:bg-surface\/40:where(.dark,.dark *){background-color:#fff6}@supports (color:color-mix(in lab,red,red)){.dark\:bg-surface\/40:where(.dark,.dark *){background-color:color-mix(in oklab,var(--color-surface)40%,transparent)}}.dark\:bg-zinc-800:where(.dark,.dark *){background-color:var(--color-zinc-800)}.dark\:text-emerald-400:where(.dark,.dark *){color:var(--color-emerald-400)}.dark\:text-neutral-100:where(.dark,.dark *){color:var(--color-neutral-100)}.dark\:text-neutral-300:where(.dark,.dark *){color:var(--color-neutral-300)}.dark\:text-neutral-400:where(.dark,.dark *){color:var(--color-neutral-400)}.dark\:text-neutral-500:where(.dark,.dark *){color:var(--color-neutral-500)}.dark\:text-primary-300:where(.dark,.dark *){color:var(--color-primary-300)}.dark\:text-primary-400:where(.dark,.dark *){color:var(--color-primary-400)}.dark\:text-red-400:where(.dark,.dark *){color:var(--color-red-400)}.dark\:text-white:where(.dark,.dark *){color:var(--color-white)}.dark\:text-yellow-400:where(.dark,.dark *){color:var(--color-yellow-400)}@media(hover:hover){.dark\:hover\:bg-neutral-800:where(.dark,.dark *):hover{background-color:var(--color-neutral-800)}}.\[\&_\.line\]\:break-words .line{overflow-wrap:break-word}.\[\&_\.line\]\:whitespace-pre-wrap .line{white-space:pre-wrap}.\[\&_\.line\]\:before\:mr-4 .line:before{content:var(--tw-content);margin-right:calc(var(--spacing)*4)}.\[\&_\.line\]\:before\:inline-block .line:before{content:var(--tw-content);display:inline-block}.\[\&_\.line\]\:before\:w-8 .line:before{content:var(--tw-content);width:calc(var(--spacing)*8)}.\[\&_\.line\]\:before\:text-right .line:before{content:var(--tw-content);text-align:right}.\[\&_\.line\]\:before\:text-primary-500\/60 .line:before{content:var(--tw-content);color:#bbb9b599}@supports (color:color-mix(in lab,red,red)){.\[\&_\.line\]\:before\:text-primary-500\/60 .line:before{color:color-mix(in oklab,var(--color-primary-500)60%,transparent)}}.\[\&_\.line\]\:before\:content-\[counter\(line\)\] .line:before{--tw-content:counter(line);content:var(--tw-content)}.\[\&_\.line\]\:before\:select-none .line:before{content:var(--tw-content);-webkit-user-select:none;user-select:none}.\[\&_\.line\]\:before\:\[counter-increment\:line\] .line:before{content:var(--tw-content);counter-increment:line}.\[\&_svg\]\:pointer-events-none svg{pointer-events:none}.\[\&_svg\]\:-mx-0\.5 svg{margin-inline:calc(var(--spacing)*-.5)}.\[\&_svg\]\:size-5 svg{width:calc(var(--spacing)*5);height:calc(var(--spacing)*5)}.\[\&_svg\]\:shrink-0 svg{flex-shrink:0}.\[\&_svg\:not\(\[class\*\=\"size-\"\]\)\]\:size-4 svg:not([class*=size-]){width:calc(var(--spacing)*4);height:calc(var(--spacing)*4)}.\[\&\:hover\:not\(\:has\(button\:hover\)\)\]\:bg-primary-200:hover:not(:has(button:hover)){background-color:var(--color-primary-200)}.\[\&\>pre\]\:w-full>pre{width:100%}.\[\&\>pre\]\:max-w-full>pre{max-width:100%}.\[\&\>pre\]\:min-w-0>pre{min-width:calc(var(--spacing)*0)}.\[\&\>pre\]\:overflow-x-auto>pre{overflow-x:auto}.\[\&\>pre\]\:px-3>pre{padding-inline:calc(var(--spacing)*3)}.\[\&\>pre\]\:py-3>pre{padding-block:calc(var(--spacing)*3)}.\[\&\>pre\]\:break-words>pre{overflow-wrap:break-word}.\[\&\>pre\]\:whitespace-pre>pre{white-space:pre}.\[\&\>pre\]\:whitespace-pre-wrap>pre{white-space:pre-wrap}.\[\&\>pre\]\:\[counter-reset\:line\]>pre{counter-reset:line}.\[\&\[hidden\]\:not\(\[hidden\=\"until-found\"\]\)\]\:hidden[hidden]:not([hidden=until-found]){display:none}}.root{isolation:isolate}html{padding-top:env(safe-area-inset-top);padding-bottom:env(safe-area-inset-bottom);padding-left:env(safe-area-inset-left);padding-right:env(safe-area-inset-right)}.safe-area-top{padding-top:env(safe-area-inset-top)}:root{--opencami-text-size:16px;--opencami-font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;--opencami-density:comfortable;--opencami-msg-padding-y:.75rem;--opencami-msg-gap:.5rem;--opencami-user-bubble-py:.625rem;--opencami-accent:#22c55e;--opencami-accent-hover:#16a34a;--opencami-accent-light:#22c55e1a;--opencami-chat-width:1000px;--opencami-sidebar-width:260px}.opencami-text-size{font-size:var(--opencami-text-size)}.dark{color-scheme:dark;--color-primary-50:oklch(12.44% 0 89.88);--color-primary-100:oklch(15.84% 0 89.88);--color-primary-200:oklch(20.78% 0 89.88);--color-primary-300:oklch(30% .006 80);--color-primary-400:oklch(40% .006 80);--color-primary-500:oklch(52% .006 80);--color-primary-600:oklch(65% .006 80);--color-primary-700:oklch(73% .006 80);--color-primary-800:oklch(83% .005 80);--color-primary-900:oklch(89.5% .004 80);--color-primary-950:oklch(94.5% .003 80);--color-surface:var(--color-black);--color-ink:var(--color-white)}.light,.system{color-scheme:light}@media(prefers-color-scheme:dark){.system{color-scheme:dark;--color-primary-50:oklch(12.44% 0 89.88);--color-primary-100:oklch(15.84% 0 89.88);--color-primary-200:oklch(20.78% 0 89.88);--color-primary-300:oklch(30% .006 80);--color-primary-400:oklch(40% .006 80);--color-primary-500:oklch(52% .006 80);--color-primary-600:oklch(65% .006 80);--color-primary-700:oklch(73% .006 80);--color-primary-800:oklch(83% .005 80);--color-primary-900:oklch(89.5% .004 80);--color-primary-950:oklch(94.5% .003 80);--color-surface:var(--color-black);--color-ink:var(--color-white);--color-surface-deep:oklch(18% 0 0)}}.chameleon{color-scheme:light;--color-primary-50:oklch(97.5% .012 155);--color-primary-100:oklch(95.5% .018 155);--color-primary-200:oklch(91.5% .025 155);--color-primary-300:oklch(86% .035 160);--color-primary-400:oklch(75% .045 165);--color-primary-500:oklch(62% .055 168);--color-primary-600:oklch(50% .055 168);--color-primary-700:oklch(42% .045 165);--color-primary-800:oklch(35% .035 160);--color-primary-900:oklch(28% .025 155);--color-primary-950:oklch(22% .018 155);--color-surface:oklch(98% .008 155);--color-ink:oklch(25% .025 155)}.frost{color-scheme:light;--color-primary-50:oklch(98.5% .008 250);--color-primary-100:oklch(96% .01 250);--color-primary-200:oklch(90.5% .015 250);--color-primary-300:oklch(84% .018 250);--color-primary-400:oklch(73% .02 250);--color-primary-500:oklch(60% .02 250);--color-primary-600:oklch(50% .018 250);--color-primary-700:oklch(40% .015 250);--color-primary-800:oklch(30% .012 250);--color-primary-900:oklch(24% .01 250);--color-primary-950:oklch(18% .008 250);--color-surface:oklch(99% .005 250);--color-ink:oklch(24% .01 250)}.frost.dark,.frost-dark{color-scheme:dark;--color-primary-50:oklch(15% .01 260);--color-primary-100:oklch(19% .012 260);--color-primary-200:oklch(24% .014 260);--color-primary-300:oklch(34% .014 260);--color-primary-400:oklch(44% .012 260);--color-primary-500:oklch(56% .012 260);--color-primary-600:oklch(68% .01 260);--color-primary-700:oklch(76% .01 260);--color-primary-800:oklch(86% .008 260);--color-primary-900:oklch(93% .005 260);--color-primary-950:oklch(97% .003 260);--color-surface:oklch(6% .008 260);--color-ink:oklch(97% .003 260)}@media(prefers-color-scheme:dark){.frost:not(.frost-light):not(:where(.light,.light *)){color-scheme:dark;--color-primary-50:oklch(15% .01 260);--color-primary-100:oklch(19% .012 260);--color-primary-200:oklch(24% .014 260);--color-primary-300:oklch(34% .014 260);--color-primary-400:oklch(44% .012 260);--color-primary-500:oklch(56% .012 260);--color-primary-600:oklch(68% .01 260);--color-primary-700:oklch(76% .01 260);--color-primary-800:oklch(86% .008 260);--color-primary-900:oklch(93% .005 260);--color-primary-950:oklch(97% .003 260);--color-surface:oklch(6% .008 260);--color-ink:oklch(97% .003 260)}}html.frost body{background:radial-gradient(1200px 700px at -10% -10%,var(--opencami-accent),transparent 60%),radial-gradient(900px 500px at 110% -5%,var(--opencami-accent),transparent 65%),linear-gradient(180deg,#ffffff59,#fff3)}@supports (color:color-mix(in lab,red,red)){html.frost body{background:radial-gradient(1200px 700px at -10% -10%,color-mix(in srgb,var(--opencami-accent)14%,transparent),transparent 60%),radial-gradient(900px 500px at 110% -5%,color-mix(in srgb,var(--opencami-accent)10%,transparent),transparent 65%),linear-gradient(180deg,#ffffff59,#fff3)}}html.frost.dark body,html.frost-dark body{background:radial-gradient(1200px 700px at -10% -10%,var(--opencami-accent),transparent 62%),radial-gradient(900px 500px at 110% -5%,var(--opencami-accent),transparent 68%),linear-gradient(180deg,#0a0c12eb,#0a0c12db)}@supports (color:color-mix(in lab,red,red)){html.frost.dark body,html.frost-dark body{background:radial-gradient(1200px 700px at -10% -10%,color-mix(in srgb,var(--opencami-accent)18%,transparent),transparent 62%),radial-gradient(900px 500px at 110% -5%,color-mix(in srgb,var(--opencami-accent)14%,transparent),transparent 68%),linear-gradient(180deg,#0a0c12eb,#0a0c12db)}}@media(prefers-color-scheme:dark){html.frost:not(.frost-light) body{background:radial-gradient(1200px 700px at -10% -10%,var(--opencami-accent),transparent 62%),radial-gradient(900px 500px at 110% -5%,var(--opencami-accent),transparent 68%),linear-gradient(180deg,#0a0c12eb,#0a0c12db)}@supports (color:color-mix(in lab,red,red)){html.frost:not(.frost-light) body{background:radial-gradient(1200px 700px at -10% -10%,color-mix(in srgb,var(--opencami-accent)18%,transparent),transparent 62%),radial-gradient(900px 500px at 110% -5%,color-mix(in srgb,var(--opencami-accent)14%,transparent),transparent 68%),linear-gradient(180deg,#0a0c12eb,#0a0c12db)}}}.frost aside,.frost .tauri-drag-header,.frost .DialogPopup,.frost [role=dialog],.frost .opencami-frost-panel,.frost .bg-surface.cursor-text{-webkit-backdrop-filter:blur(20px)}.frost aside,.frost .tauri-drag-header,.frost .bg-surface.cursor-text{box-shadow:0 8px 32px #00000014;background:#fff9!important;border-color:#ffffff4d!important}@media(prefers-color-scheme:dark){.frost aside,.frost .tauri-drag-header,.frost .bg-surface.cursor-text{box-shadow:0 8px 32px #00000059;background:#0f0f0fb3!important;border-color:#ffffff29!important}}.frost .group.inline-flex.items-center.justify-between{border:1px solid #0000}.frost .group.inline-flex.items-center.justify-between:hover{background:#fff6;border-color:#ffffff52}.frost .group.inline-flex.items-center.justify-between.bg-\[var\(--opencami-accent-light\)\]{box-shadow:0 0 0 1px var(--opencami-accent),0 8px 24px var(--opencami-accent)}@supports (color:color-mix(in lab,red,red)){.frost .group.inline-flex.items-center.justify-between.bg-\[var\(--opencami-accent-light\)\]{box-shadow:0 0 0 1px color-mix(in srgb,var(--opencami-accent)38%,transparent),0 8px 24px color-mix(in srgb,var(--opencami-accent)22%,transparent)}}.frost .opencami-message-user{background:var(--opencami-accent)}@supports (color:color-mix(in lab,red,red)){.frost .opencami-message-user{background:color-mix(in srgb,var(--opencami-accent)18%,#ffffff80)}}.frost .opencami-message-user{border:1px solid var(--opencami-accent)}@supports (color:color-mix(in lab,red,red)){.frost .opencami-message-user{border:1px solid color-mix(in srgb,var(--opencami-accent)28%,#fff6)}}.frost .opencami-message-user{box-shadow:0 4px 16px #00000014}.frost .opencami-message-assistant{background:#ffffff59;border:1px solid #ffffff3d;border-radius:14px;padding:.5rem .75rem}@media(prefers-color-scheme:dark){.frost .opencami-message-assistant{background:#16181e80;border-color:#ffffff26}}.frost [data-slot=tabs-list],.frost [role=menu],.frost [data-slot=button][class*=outline],.frost [role=dialog]{-webkit-backdrop-filter:blur(20px)}.frost [role=dialog],.frost [role=menu]{background:#ffffff8c;border:1px solid #ffffff4d;box-shadow:0 8px 32px #0000001a}@media(prefers-color-scheme:dark){.frost [role=dialog],.frost [role=menu]{background:#0f0f0fb8;border-color:#ffffff2e;box-shadow:0 8px 32px #00000059}}.frost .opencami-accent-bg,.frost .opencami-accent-bg-hover:hover,.frost [data-slot=button]:focus-visible{box-shadow:0 0 0 1px var(--opencami-accent),0 8px 24px var(--opencami-accent)}@supports (color:color-mix(in lab,red,red)){.frost .opencami-accent-bg,.frost .opencami-accent-bg-hover:hover,.frost [data-slot=button]:focus-visible{box-shadow:0 0 0 1px color-mix(in srgb,var(--opencami-accent)42%,transparent),0 8px 24px color-mix(in srgb,var(--opencami-accent)24%,transparent)}}html,body{margin:calc(var(--spacing)*0);font-family:var(--opencami-font-family,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif);letter-spacing:-.15px;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overscroll-behavior:none}.font-sans{letter-spacing:-.15px}.inline-code{background:var(--color-primary-100);border:1px solid var(--color-primary-200);color:var(--color-primary-900);white-space:nowrap;border-radius:.5rem;padding:.1rem .4rem;font-family:JetBrains Mono,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:.95em}.code-block .shiki{margin:0;background:0 0!important}.code-block .shiki code{font-size:.875rem;line-height:1.5;display:block}code{font-family:JetBrains Mono,Menlo,Monaco,Consolas,Courier New,monospace}@keyframes shimmer{0%{background-position:200%}to{background-position:-200%}}@keyframes stream-fade-in{0%{opacity:.4}to{opacity:1}}.stream-fade-in{animation:.25s ease-out stream-fade-in}@keyframes message-highlight-pulse{0%{background-color:color-mix(in srgb,var(--opencami-accent,#22c55e)18%,transparent)}to{background-color:#0000}}.opencami-message-highlight{border-radius:.75rem;animation:1.8s ease-out message-highlight-pulse}@media(prefers-reduced-motion:reduce){.stream-fade-in,.opencami-message-highlight{animation:none}*{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.tauri-drag-header{padding-left:env(titlebar-area-x,1rem)}@supports (padding-left:env(titlebar-area-x)){.tauri-drag-header{padding-left:calc(env(titlebar-area-x) + env(titlebar-area-width) + .5rem)}}html.tauri .tauri-drag-header{padding-left:5rem}::selection{background:var(--opencami-accent-light)}.opencami-accent-text{color:var(--opencami-accent)}.opencami-accent-bg{background:var(--opencami-accent);color:#fff}.opencami-accent-bg-hover:hover{background:var(--opencami-accent-hover)}.opencami-accent-soft{background:var(--opencami-accent-light);color:var(--opencami-accent)}[data-opencami-bubble-style=bubbles] .opencami-message-assistant{background:var(--color-primary-100);max-width:80%;padding:.75rem 1rem}[data-opencami-bubble-style=bubbles] .opencami-message-user{background:var(--opencami-accent);color:#fff;max-width:80%}[data-opencami-bubble-style=minimal] .opencami-message-assistant,[data-opencami-bubble-style=minimal] .opencami-message-user{background:0 0;border-radius:0;max-width:100%;padding:0}[data-opencami-bubble-style=minimal] .opencami-message-item{border-top:1px solid var(--color-primary-200);padding-top:.75rem}@property --tw-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-z{syntax:"*";inherits:false;initial-value:0}@property --tw-scale-x{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-y{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-z{syntax:"*";inherits:false;initial-value:1}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-space-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-divide-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-leading{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-tracking{syntax:"*";inherits:false}@property --tw-ordinal{syntax:"*";inherits:false}@property --tw-slashed-zero{syntax:"*";inherits:false}@property --tw-numeric-figure{syntax:"*";inherits:false}@property --tw-numeric-spacing{syntax:"*";inherits:false}@property --tw-numeric-fraction{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-backdrop-blur{syntax:"*";inherits:false}@property --tw-backdrop-brightness{syntax:"*";inherits:false}@property --tw-backdrop-contrast{syntax:"*";inherits:false}@property --tw-backdrop-grayscale{syntax:"*";inherits:false}@property --tw-backdrop-hue-rotate{syntax:"*";inherits:false}@property --tw-backdrop-invert{syntax:"*";inherits:false}@property --tw-backdrop-opacity{syntax:"*";inherits:false}@property --tw-backdrop-saturate{syntax:"*";inherits:false}@property --tw-backdrop-sepia{syntax:"*";inherits:false}@property --tw-duration{syntax:"*";inherits:false}@property --tw-ease{syntax:"*";inherits:false}@property --tw-content{syntax:"*";inherits:false;initial-value:""}@keyframes spin{to{transform:rotate(360deg)}}@keyframes ping{75%,to{opacity:0;transform:scale(2)}}@keyframes pulse{50%{opacity:.5}}
@@ -1 +0,0 @@
1
- import{r as o,j as z}from"./main-mIHr_ble.js";import{ab as ht,af as X,E as Rt,ag as et,aa as Mt,c as Z}from"./button-BaHefIXU.js";import{u as yt}from"./useControlled-wOKVgKF4.js";import{h as Et,i as Ct,a as Y,u as nt,d as St,f as wt,g as it,n as at,C as Pt}from"./useButton-DsMdJPGn.js";import{C as gt,u as At,s as st,A as Ht,a as Lt,i as rt,g as Dt,b as kt,c as Ot,d as J,e as zt,f as _t,h as U,j as Q,k as Kt,H as Nt,E as Bt,l as lt,m as tt,n as Wt,o as jt,V as Ft,p as Yt,q as $t,r as Vt,M as Gt}from"./useCompositeItem-CaYygSfB.js";import{r as ct,u as bt,d as Ut,o as ut,e as Zt,g as qt}from"./DirectionContext-DXnZc0zz.js";import{u as Xt}from"./CSPContext-BBLAL_m_.js";function Jt(){const[,t]=o.useState({});return o.useCallback(()=>{t({})},[])}function dt(t){const s=Et(t);let l=parseFloat(s.width)||0,b=parseFloat(s.height)||0;const i=Ct(t),a=i?t.offsetWidth:l,r=i?t.offsetHeight:b;return(ct(l)!==a||ct(b)!==r)&&(l=a,b=r),{width:l,height:b}}const pt=o.createContext(void 0);function q(){const t=o.useContext(pt);if(t===void 0)throw new Error(ht(64));return t}let Qt=(function(t){return t.activationDirection="data-activation-direction",t.orientation="data-orientation",t})({});const ot={tabActivationDirection:t=>({[Qt.activationDirection]:t})},te=o.forwardRef(function(s,l){const{className:b,defaultValue:i=0,onValueChange:a,orientation:r="horizontal",render:w,value:R,...P}=s,x=bt(),y=Object.hasOwn(s,"defaultValue"),d=o.useRef([]),[O,D]=o.useState(()=>new Map),[T,M]=yt({controlled:R,default:i,name:"Tabs",state:"value"}),v=R!==void 0,[h,c]=o.useState(()=>new Map),[E,p]=o.useState("none"),g=Y((e,m)=>{a?.(e,m),!m.isCanceled&&(M(e),p(m.activationDirection))}),f=Y((e,m)=>{D(u=>{if(u.get(e)===m)return u;const I=new Map(u);return I.set(e,m),I})}),A=Y((e,m)=>{D(u=>{if(!u.has(e)||u.get(e)!==m)return u;const I=new Map(u);return I.delete(e),I})}),n=o.useCallback(e=>O.get(e),[O]),C=o.useCallback(e=>{for(const m of h.values())if(e===m?.value)return m?.id},[h]),k=o.useCallback(e=>{if(e===void 0)return null;for(const[m,u]of h.entries())if(u!=null&&e===(u.value??u.index))return m;return null},[h]),H=o.useMemo(()=>({direction:x,getTabElementBySelectedValue:k,getTabIdByPanelValue:C,getTabPanelIdByValue:n,onValueChange:g,orientation:r,registerMountedTabPanel:f,setTabMap:c,unregisterMountedTabPanel:A,tabActivationDirection:E,value:T}),[x,k,C,n,g,r,f,c,A,E,T]),S=o.useMemo(()=>{for(const e of h.values())if(e!=null&&e.value===T)return e},[h,T]),L=o.useMemo(()=>{for(const e of h.values())if(e!=null&&!e.disabled)return e.value},[h]);nt(()=>{if(v||h.size===0)return;const e=S?.disabled,m=S==null&&T!==null;if(y&&e&&T===i||!e&&!m)return;const I=L??null;T!==I&&(M(I),p("none"))},[i,L,y,v,S,p,M,h,T]);const K=X("div",s,{state:{orientation:r,tabActivationDirection:E},ref:l,props:P,stateAttributesMapping:ot});return z.jsx(pt.Provider,{value:H,children:z.jsx(gt,{elementsRef:d,children:K})})}),mt="data-composite-item-active",vt=o.createContext(void 0);function xt(){const t=o.useContext(vt);if(t===void 0)throw new Error(ht(65));return t}const ee=o.forwardRef(function(s,l){const{className:b,disabled:i=!1,render:a,value:r,id:w,nativeButton:R=!0,...P}=s,{value:x,getTabPanelIdByValue:y,orientation:d}=q(),{activateOnFocus:O,highlightedTabIndex:D,onTabActivation:T,setHighlightedTabIndex:M,tabsListElement:v}=xt(),h=St(w),c=o.useMemo(()=>({disabled:i,id:h,value:r}),[i,h,r]),{compositeProps:E,compositeRef:p,index:g}=At({metadata:c}),f=r===x,A=o.useRef(!1);nt(()=>{if(A.current){A.current=!1;return}if(!(f&&g>-1&&D!==g))return;const u=v;if(u!=null){const I=Ut(ut(u));if(I&&Zt(u,I))return}i||M(g)},[f,g,D,M,i,v]);const{getButtonProps:n,buttonRef:C}=wt({disabled:i,native:R,focusableWhenDisabled:!0}),k=y(r),H=o.useRef(!1),S=o.useRef(!1);function L(u){f||i||T(r,it(at,u.nativeEvent,void 0,{activationDirection:"none"}))}function _(u){f||(g>-1&&!i&&M(g),!i&&O&&(!H.current||H.current&&S.current)&&T(r,it(at,u.nativeEvent,void 0,{activationDirection:"none"})))}function K(u){if(f||i)return;H.current=!0;function I(){H.current=!1,S.current=!1}(!u.button||u.button===0)&&(S.current=!0,ut(u.currentTarget).addEventListener("pointerup",I,{once:!0}))}const e=o.useMemo(()=>({disabled:i,active:f,orientation:d}),[i,f,d]);return X("button",s,{state:e,ref:[l,C,p],props:[E,{role:"tab","aria-controls":k,"aria-selected":f,id:h,onClick:L,onFocus:_,onPointerDown:K,[mt]:f?"":void 0,onKeyDownCapture(){A.current=!0}},P,n]})}),ne='!function(){const t=document.currentScript.previousElementSibling;if(!t)return;const e=t.closest(\'[role="tablist"]\');if(!e)return;const i=e.querySelector("[data-active]");if(!i)return;if(0===i.offsetWidth||0===e.offsetWidth)return;let o=0,n=0,h=0,l=0,r=0,f=0;function s(t){const e=getComputedStyle(t);let i=parseFloat(e.width)||0,o=parseFloat(e.height)||0;return(Math.round(i)!==t.offsetWidth||Math.round(o)!==t.offsetHeight)&&(i=t.offsetWidth,o=t.offsetHeight),{width:i,height:o}}if(null!=i&&null!=e){const{width:t,height:c}=s(i),{width:u,height:d}=s(e),a=i.getBoundingClientRect(),g=e.getBoundingClientRect(),p=u>0?g.width/u:1,b=d>0?g.height/d:1;if(Math.abs(p)>Number.EPSILON&&Math.abs(b)>Number.EPSILON){const t=a.left-g.left,i=a.top-g.top;o=t/p+e.scrollLeft-e.clientLeft,h=i/b+e.scrollTop-e.clientTop}else o=i.offsetLeft,h=i.offsetTop;r=t,f=c,n=e.scrollWidth-o-r,l=e.scrollHeight-h-f}function c(e,i){t.style.setProperty(`--active-tab-${e}`,`${i}px`)}c("left",o),c("right",n),c("top",h),c("bottom",l),c("width",r),c("height",f),r>0&&f>0&&t.removeAttribute("hidden")}();';let F=(function(t){return t.activeTabLeft="--active-tab-left",t.activeTabRight="--active-tab-right",t.activeTabTop="--active-tab-top",t.activeTabBottom="--active-tab-bottom",t.activeTabWidth="--active-tab-width",t.activeTabHeight="--active-tab-height",t})({});const oe={...ot,activeTabPosition:()=>null,activeTabSize:()=>null},ie=o.forwardRef(function(s,l){const{className:b,render:i,renderBeforeHydration:a=!1,...r}=s,{nonce:w}=Xt(),{getTabElementBySelectedValue:R,orientation:P,tabActivationDirection:x,value:y}=q(),{tabsListElement:d}=xt(),[O,D]=o.useState(!1),{value:T}=q();qt(()=>D(!0));const M=Jt();o.useEffect(()=>{if(y!=null&&d!=null&&typeof ResizeObserver<"u"){const L=new ResizeObserver(M);return L.observe(d),()=>{L.disconnect()}}},[y,d,M]);let v=0,h=0,c=0,E=0,p=0,g=0,f=!1;if(y!=null&&d!=null){const L=R(y);if(f=!0,L!=null){const{width:_,height:K}=dt(L),{width:e,height:m}=dt(d),u=L.getBoundingClientRect(),I=d.getBoundingClientRect(),j=e>0?I.width/e:1,G=m>0?I.height/m:1;if(Math.abs(j)>Number.EPSILON&&Math.abs(G)>Number.EPSILON){const N=u.left-I.left,$=u.top-I.top;v=N/j+d.scrollLeft-d.clientLeft,c=$/G+d.scrollTop-d.clientTop}else v=L.offsetLeft,c=L.offsetTop;p=_,g=K,h=d.scrollWidth-v-p,E=d.scrollHeight-c-g}}const A=o.useMemo(()=>f?{left:v,right:h,top:c,bottom:E}:null,[v,h,c,E,f]),n=o.useMemo(()=>f?{width:p,height:g}:null,[p,g,f]),C=o.useMemo(()=>{if(f)return{[F.activeTabLeft]:`${v}px`,[F.activeTabRight]:`${h}px`,[F.activeTabTop]:`${c}px`,[F.activeTabBottom]:`${E}px`,[F.activeTabWidth]:`${p}px`,[F.activeTabHeight]:`${g}px`}},[v,h,c,E,p,g,f]),k=f&&p>0&&g>0,H=o.useMemo(()=>({orientation:P,activeTabPosition:A,activeTabSize:n,tabActivationDirection:x}),[P,A,n,x]),S=X("span",s,{state:H,ref:l,props:[{role:"presentation",style:C,hidden:!k},r,{suppressHydrationWarning:!0}],stateAttributesMapping:oe});return T==null?null:z.jsxs(o.Fragment,{children:[S,!O&&a&&z.jsx("script",{nonce:w,dangerouslySetInnerHTML:{__html:ne},suppressHydrationWarning:!0})]})});function ae(t){return t==null||t.hasAttribute("disabled")||t.getAttribute("aria-disabled")==="true"}const se=[];function re(t){const{itemSizes:s,cols:l=1,loopFocus:b=!0,dense:i=!1,orientation:a="both",direction:r,highlightedIndex:w,onHighlightedIndexChange:R,rootRef:P,enableHomeAndEndKeys:x=!1,stopEventPropagation:y=!1,disabledIndices:d,modifierKeys:O=se}=t,[D,T]=o.useState(0),M=l>1,v=o.useRef(null),h=Rt(v,P),c=o.useRef([]),E=o.useRef(!1),p=w??D,g=Y((n,C=!1)=>{if((R??T)(n),C){const k=c.current[n];st(v.current,k,r,a)}}),f=Y(n=>{if(n.size===0||E.current)return;E.current=!0;const C=Array.from(n.keys()),k=C.find(S=>S?.hasAttribute(mt))??null,H=k?C.indexOf(k):-1;H!==-1&&g(H),st(v.current,k,r,a)}),A=o.useMemo(()=>({"aria-orientation":a==="both"?void 0:a,ref:h,onFocus(n){!v.current||!rt(n.target)||n.target.setSelectionRange(0,n.target.value.length??0)},onKeyDown(n){const C=x?Ht:Lt;if(!C.has(n.key)||le(n,O)||!v.current)return;const H=r==="rtl",S=H?lt:Q,L={horizontal:S,vertical:U,both:S}[a],_=H?Q:lt,K={horizontal:_,vertical:tt,both:_}[a];if(rt(n.target)&&!ae(n.target)){const B=n.target.selectionStart,N=n.target.selectionEnd,$=n.target.value??"";if(B==null||n.shiftKey||B!==N||n.key!==K&&B<$.length||n.key!==L&&B>0)return}let e=p;const m=Dt(c,d),u=kt(c,d);if(M){const B=s||Array.from({length:c.current.length},()=>({width:1,height:1})),N=Ot(B,l,i),$=N.findIndex(W=>W!=null&&!J(c,W,d)),Tt=N.reduce((W,V,It)=>V!=null&&!J(c,V,d)?It:W,-1);e=N[zt({current:N.map(W=>W?c.current[W]:null)},{event:n,orientation:a,loopFocus:b,cols:l,disabledIndices:Kt([...d||c.current.map((W,V)=>J(c,V)?V:void 0),void 0],N),minIndex:$,maxIndex:Tt,prevIndex:_t(p>u?m:p,B,N,l,n.key===U?"bl":n.key===Q?"tr":"tl"),rtl:H})]}const I={horizontal:[S],vertical:[U],both:[S,U]}[a],j={horizontal:[_],vertical:[tt],both:[_,tt]}[a],G=M?C:{horizontal:x?$t:Vt,vertical:x?Ft:Yt,both:C}[a];x&&(n.key===Nt?e=m:n.key===Bt&&(e=u)),e===p&&(I.includes(n.key)||j.includes(n.key))&&(b&&e===u&&I.includes(n.key)?e=m:b&&e===m&&j.includes(n.key)?e=u:e=Wt(c,{startingIndex:e,decrement:j.includes(n.key),disabledIndices:d})),e!==p&&!jt(c,e)&&(y&&n.stopPropagation(),G.has(n.key)&&n.preventDefault(),g(e,!0),queueMicrotask(()=>{c.current[e]?.focus()}))}}),[l,i,r,d,c,x,p,M,s,b,h,O,g,a,y]);return o.useMemo(()=>({props:A,highlightedIndex:p,onHighlightedIndexChange:g,elementsRef:c,disabledIndices:d,onMapChange:f,relayKeyboardEvent:A.onKeyDown}),[A,p,g,c,d,f])}function le(t,s){for(const l of Gt.values())if(!s.includes(l)&&t.getModifierState(l))return!0;return!1}function ce(t){const{render:s,className:l,refs:b=et,props:i=et,state:a=Mt,stateAttributesMapping:r,highlightedIndex:w,onHighlightedIndexChange:R,orientation:P,dense:x,itemSizes:y,loopFocus:d,cols:O,enableHomeAndEndKeys:D,onMapChange:T,stopEventPropagation:M=!0,rootRef:v,disabledIndices:h,modifierKeys:c,highlightItemOnHover:E=!1,tag:p="div",...g}=t,f=bt(),{props:A,highlightedIndex:n,onHighlightedIndexChange:C,elementsRef:k,onMapChange:H,relayKeyboardEvent:S}=re({itemSizes:y,cols:O,loopFocus:d,dense:x,orientation:P,highlightedIndex:w,onHighlightedIndexChange:R,rootRef:v,stopEventPropagation:M,enableHomeAndEndKeys:D,direction:f,disabledIndices:h,modifierKeys:c}),L=X(p,t,{state:a,ref:b,props:[A,...i,g],stateAttributesMapping:r}),_=o.useMemo(()=>({highlightedIndex:n,onHighlightedIndexChange:C,highlightItemOnHover:E,relayKeyboardEvent:S}),[n,C,E,S]);return z.jsx(Pt.Provider,{value:_,children:z.jsx(gt,{elementsRef:k,onMapChange:K=>{T?.(K),H(K)},children:L})})}const ue=o.forwardRef(function(s,l){const{activateOnFocus:b=!1,className:i,loopFocus:a=!0,render:r,...w}=s,{getTabElementBySelectedValue:R,onValueChange:P,orientation:x,value:y,setTabMap:d,tabActivationDirection:O}=q(),[D,T]=o.useState(0),[M,v]=o.useState(null),h=de(y,x,M,R),c=Y((f,A)=>{if(f!==y){const n=h(f);A.activationDirection=n,P(f,A)}}),E=o.useMemo(()=>({orientation:x,tabActivationDirection:O}),[x,O]),p={"aria-orientation":x==="vertical"?"vertical":void 0,role:"tablist"},g=o.useMemo(()=>({activateOnFocus:b,highlightedTabIndex:D,onTabActivation:c,setHighlightedTabIndex:T,tabsListElement:M,value:y}),[b,D,c,T,M,y]);return z.jsx(vt.Provider,{value:g,children:z.jsx(ce,{render:r,className:i,state:E,refs:[l,v],props:[p,w],stateAttributesMapping:ot,highlightedIndex:D,enableHomeAndEndKeys:!0,loopFocus:a,orientation:x,onHighlightedIndexChange:T,onMapChange:d,disabledIndices:et})})});function ft(t,s){const{left:l,top:b}=t.getBoundingClientRect(),{left:i,top:a}=s.getBoundingClientRect(),r=l-i,w=b-a;return{left:r,top:w}}function de(t,s,l,b){const[i,a]=o.useState(null);return nt(()=>{if(t==null||l==null){a(null);return}const r=b(t);if(r==null){a(null);return}const{left:w,top:R}=ft(r,l);a(s==="horizontal"?w:R)},[s,b,l,t]),o.useCallback(r=>{if(r===t)return"none";if(r==null)return a(null),"none";if(r!=null&&l!=null){const w=b(r);if(w!=null){const{left:R,top:P}=ft(w,l);if(i==null)return a(s==="horizontal"?R:P),"none";if(s==="horizontal"){if(R<i)return a(R),"left";if(R>i)return a(R),"right"}else{if(P<i)return a(P),"up";if(P>i)return a(P),"down"}}}return"none"},[b,s,i,l,t])}function xe({className:t,...s}){return z.jsx(te,{className:Z("flex flex-col gap-2 data-[orientation=vertical]:flex-row",t),"data-slot":"tabs",...s})}function Te({variant:t="default",className:s,children:l,...b}){return z.jsxs(ue,{className:Z("relative z-0 flex w-fit items-center justify-center gap-x-0.5 text-primary-600","data-[orientation=vertical]:flex-col",t==="default"?"p-0.5 text-primary-600/80":"data-[orientation=vertical]:px-1 data-[orientation=horizontal]:py-1",s),"data-slot":"tabs-list",...b,children:[l,z.jsx(ie,{className:Z("-translate-y-(--active-tab-bottom) absolute bottom-0 left-0 h-(--active-tab-height) w-(--active-tab-width) translate-x-(--active-tab-left) transition-[width,translate] duration-200 ease-in-out",t==="underline"?"data-[orientation=vertical]:-translate-x-px z-10 bg-[var(--opencami-accent)] data-[orientation=horizontal]:h-0.5 data-[orientation=vertical]:w-0.5 data-[orientation=horizontal]:translate-y-px":"z-0 rounded-md bg-[var(--opencami-accent-light)]"),"data-slot":"tab-indicator"})]})}function Ie({className:t,...s}){return z.jsx(ee,{className:Z('[&_svg]:-mx-0.5 relative z-10 flex h-8 shrink-0 grow cursor-pointer items-center justify-center gap-1.5 whitespace-nowrap rounded-md px-3 text-sm font-medium outline-none transition-[color,background-color,box-shadow] hover:text-primary-900 focus-visible:ring-2 focus-visible:ring-[var(--opencami-accent)] data-disabled:pointer-events-none data-[orientation=vertical]:w-full data-[orientation=vertical]:justify-start data-active:text-primary-900 data-disabled:opacity-64 [&_svg:not([class*="size-"])]:size-4 [&_svg]:pointer-events-none [&_svg]:shrink-0',t),"data-slot":"tabs-tab",...s})}export{xe as T,Te as a,Ie as b};
@@ -1 +0,0 @@
1
- import{r as g,j as Q,f as De,i as Vr,w as Hr}from"./main-mIHr_ble.js";import{ab as ot,C as Fe,aa as Je,af as Mt,ah as Br,ae as jr,c as Nn}from"./button-BaHefIXU.js";import{g as Vn,e as se,h as he,d as Yt,n as tt,w as Hn,m as ye,x as Ce,y as ge,z as me,B as $r,C as Wr,D as _r,E as Yr,F as Ue,G as nt,H as de,I as Ur,J as Bn,K as jn,L as xt,M as $n,N as Ut,O as Wn,P as Ee,f as dt,r as Rt,Q as zr,R as Xr,S as pe,p as qr,q as Kr,T as Gr,U as Qr,V as Jr,W as Zr,X as _n,Y as Yn,o as Un,u as eo}from"./DirectionContext-DXnZc0zz.js";import{u as X,q as Lt,g as te,n as Gt,k as to,a as $,E as no,l as xe,F as Be,e as z,G as Oe,H as vn,h as Re,i as we,I as Qt,J as Jt,B as We,A as Le,K as ro,L as zn,M as oo,j as Zt,s as en,N as kt,z as tn,o as so,m as wt,y as vt,t as be,O as io,v as co,d as ao}from"./useButton-DsMdJPGn.js";import{a as lo}from"./visuallyHidden-CqGRL_Oq.js";const rc=500,oc=500,uo={style:{transition:"none"}},sc="data-base-ui-click-trigger",ic={fallbackAxisSide:"none"},fo={fallbackAxisSide:"end"},go={clipPath:"inset(50%)",position:"fixed",top:0,left:0},St={isSidebarCollapsed:!1},Xn=["chat","ui"];function cc(t){const e=t.getQueryData(Xn);return e&&typeof e=="object"?{...St,...e}:St}function ac(t,e){t.setQueryData(Xn,function(r){const o=r&&typeof r=="object"?{...St,...r}:St;return e(o)})}const qn=g.createContext(void 0);function Dt(t){const e=g.useContext(qn);if(e===void 0&&!t)throw new Error(ot(72));return e}const Qe=0;class ze{static create(){return new ze}currentId=Qe;start(e,n){this.clear(),this.currentId=setTimeout(()=>{this.currentId=Qe,n()},e)}isStarted(){return this.currentId!==Qe}clear=()=>{this.currentId!==Qe&&(clearTimeout(this.currentId),this.currentId=Qe)};disposeEffect=()=>this.clear}function _e(){const t=Fe(ze.create).current;return Vn(t.disposeEffect),t}function je(t){const e=Fe(po,t).current;return e.next=t,X(e.effect),e}function po(t){const e={current:t,next:t,effect:()=>{e.current=e.next}};return e}function Ze(t,e,n=!0){return t.filter(o=>o.parentId===e&&(!n||o.context?.open)).flatMap(o=>[o,...Ze(t,o.id,n)])}function lc(t,e){let n=[],r=t.find(o=>o.id===e)?.parentId;for(;r;){const o=t.find(s=>s.id===r);r=o?.parentId,o&&(n=n.concat(o))}return n}var mo=["input:not([inert]):not([inert] *)","select:not([inert]):not([inert] *)","textarea:not([inert]):not([inert] *)","a[href]:not([inert]):not([inert] *)","button:not([inert]):not([inert] *)","[tabindex]:not(slot):not([inert]):not([inert] *)","audio[controls]:not([inert]):not([inert] *)","video[controls]:not([inert]):not([inert] *)",'[contenteditable]:not([contenteditable="false"]):not([inert]):not([inert] *)',"details>summary:first-of-type:not([inert]):not([inert] *)","details:not([inert]):not([inert] *)"],Tt=mo.join(","),Kn=typeof Element>"u",Ye=Kn?function(){}:Element.prototype.matches||Element.prototype.msMatchesSelector||Element.prototype.webkitMatchesSelector,Ct=!Kn&&Element.prototype.getRootNode?function(t){var e;return t==null||(e=t.getRootNode)===null||e===void 0?void 0:e.call(t)}:function(t){return t?.ownerDocument},Ot=function(e,n){var r;n===void 0&&(n=!0);var o=e==null||(r=e.getAttribute)===null||r===void 0?void 0:r.call(e,"inert"),s=o===""||o==="true",i=s||n&&e&&(typeof e.closest=="function"?e.closest("[inert]"):Ot(e.parentNode));return i},ho=function(e){var n,r=e==null||(n=e.getAttribute)===null||n===void 0?void 0:n.call(e,"contenteditable");return r===""||r==="true"},Gn=function(e,n,r){if(Ot(e))return[];var o=Array.prototype.slice.apply(e.querySelectorAll(Tt));return n&&Ye.call(e,Tt)&&o.unshift(e),o=o.filter(r),o},Pt=function(e,n,r){for(var o=[],s=Array.from(e);s.length;){var i=s.shift();if(!Ot(i,!1))if(i.tagName==="SLOT"){var c=i.assignedElements(),l=c.length?c:i.children,a=Pt(l,!0,r);r.flatten?o.push.apply(o,a):o.push({scopeParent:i,candidates:a})}else{var u=Ye.call(i,Tt);u&&r.filter(i)&&(n||!e.includes(i))&&o.push(i);var f=i.shadowRoot||typeof r.getShadowRoot=="function"&&r.getShadowRoot(i),m=!Ot(f,!1)&&(!r.shadowRootFilter||r.shadowRootFilter(i));if(f&&m){var d=Pt(f===!0?i.children:f.children,!0,r);r.flatten?o.push.apply(o,d):o.push({scopeParent:i,candidates:d})}else s.unshift.apply(s,i.children)}}return o},Qn=function(e){return!isNaN(parseInt(e.getAttribute("tabindex"),10))},Jn=function(e){if(!e)throw new Error("No node provided");return e.tabIndex<0&&(/^(AUDIO|VIDEO|DETAILS)$/.test(e.tagName)||ho(e))&&!Qn(e)?0:e.tabIndex},vo=function(e,n){var r=Jn(e);return r<0&&n&&!Qn(e)?0:r},yo=function(e,n){return e.tabIndex===n.tabIndex?e.documentOrder-n.documentOrder:e.tabIndex-n.tabIndex},Zn=function(e){return e.tagName==="INPUT"},bo=function(e){return Zn(e)&&e.type==="hidden"},Eo=function(e){var n=e.tagName==="DETAILS"&&Array.prototype.slice.apply(e.children).some(function(r){return r.tagName==="SUMMARY"});return n},xo=function(e,n){for(var r=0;r<e.length;r++)if(e[r].checked&&e[r].form===n)return e[r]},Ro=function(e){if(!e.name)return!0;var n=e.form||Ct(e),r=function(c){return n.querySelectorAll('input[type="radio"][name="'+c+'"]')},o;if(typeof window<"u"&&typeof window.CSS<"u"&&typeof window.CSS.escape=="function")o=r(window.CSS.escape(e.name));else try{o=r(e.name)}catch(i){return console.error("Looks like you have a radio button with a name attribute containing invalid CSS selector characters and need the CSS.escape polyfill: %s",i.message),!1}var s=xo(o,e.form);return!s||s===e},wo=function(e){return Zn(e)&&e.type==="radio"},So=function(e){return wo(e)&&!Ro(e)},To=function(e){var n,r=e&&Ct(e),o=(n=r)===null||n===void 0?void 0:n.host,s=!1;if(r&&r!==e){var i,c,l;for(s=!!((i=o)!==null&&i!==void 0&&(c=i.ownerDocument)!==null&&c!==void 0&&c.contains(o)||e!=null&&(l=e.ownerDocument)!==null&&l!==void 0&&l.contains(e));!s&&o;){var a,u,f;r=Ct(o),o=(a=r)===null||a===void 0?void 0:a.host,s=!!((u=o)!==null&&u!==void 0&&(f=u.ownerDocument)!==null&&f!==void 0&&f.contains(o))}}return s},yn=function(e){var n=e.getBoundingClientRect(),r=n.width,o=n.height;return r===0&&o===0},Co=function(e,n){var r=n.displayCheck,o=n.getShadowRoot;if(r==="full-native"&&"checkVisibility"in e){var s=e.checkVisibility({checkOpacity:!1,opacityProperty:!1,contentVisibilityAuto:!0,visibilityProperty:!0,checkVisibilityCSS:!0});return!s}if(getComputedStyle(e).visibility==="hidden")return!0;var i=Ye.call(e,"details>summary:first-of-type"),c=i?e.parentElement:e;if(Ye.call(c,"details:not([open]) *"))return!0;if(!r||r==="full"||r==="full-native"||r==="legacy-full"){if(typeof o=="function"){for(var l=e;e;){var a=e.parentElement,u=Ct(e);if(a&&!a.shadowRoot&&o(a)===!0)return yn(e);e.assignedSlot?e=e.assignedSlot:!a&&u!==e.ownerDocument?e=u.host:e=a}e=l}if(To(e))return!e.getClientRects().length;if(r!=="legacy-full")return!0}else if(r==="non-zero-area")return yn(e);return!1},Oo=function(e){if(/^(INPUT|BUTTON|SELECT|TEXTAREA)$/.test(e.tagName))for(var n=e.parentElement;n;){if(n.tagName==="FIELDSET"&&n.disabled){for(var r=0;r<n.children.length;r++){var o=n.children.item(r);if(o.tagName==="LEGEND")return Ye.call(n,"fieldset[disabled] *")?!0:!o.contains(e)}return!0}n=n.parentElement}return!1},zt=function(e,n){return!(n.disabled||bo(n)||Co(n,e)||Eo(n)||Oo(n))},Xt=function(e,n){return!(So(n)||Jn(n)<0||!zt(e,n))},Po=function(e){var n=parseInt(e.getAttribute("tabindex"),10);return!!(isNaN(n)||n>=0)},er=function(e){var n=[],r=[];return e.forEach(function(o,s){var i=!!o.scopeParent,c=i?o.scopeParent:o,l=vo(c,i),a=i?er(o.candidates):c;l===0?i?n.push.apply(n,a):n.push(c):r.push({documentOrder:s,tabIndex:l,item:o,isScope:i,content:a})}),r.sort(yo).reduce(function(o,s){return s.isScope?o.push.apply(o,s.content):o.push(s.content),o},[]).concat(n)},nn=function(e,n){n=n||{};var r;return n.getShadowRoot?r=Pt([e],n.includeContainer,{filter:Xt.bind(null,n),flatten:!1,getShadowRoot:n.getShadowRoot,shadowRootFilter:Po}):r=Gn(e,n.includeContainer,Xt.bind(null,n)),er(r)},uc=function(e,n){n=n||{};var r;return n.getShadowRoot?r=Pt([e],n.includeContainer,{filter:zt.bind(null,n),flatten:!0,getShadowRoot:n.getShadowRoot}):r=Gn(e,n.includeContainer,zt.bind(null,n)),r},fc=function(e,n){if(n=n||{},!e)throw new Error("No node provided");return Ye.call(e,Tt)===!1?!1:Xt(n,e)};const rn=()=>({getShadowRoot:!0,displayCheck:typeof ResizeObserver=="function"&&ResizeObserver.toString().includes("[native code]")?"full":"none"});function tr(t,e){const n=nn(t,rn()),r=n.length;if(r===0)return;const o=Yt(he(t)),s=n.indexOf(o),i=s===-1?e===1?0:r-1:s+e;return n[i]}function Io(t){return tr(he(t).body,1)||t}function Ao(t){return tr(he(t).body,-1)||t}function nr(t,e){if(!t)return null;const n=nn(he(t).body,rn()),r=n.length;if(r===0)return null;const o=n.indexOf(t);if(o===-1)return null;const s=(o+e+r)%r;return n[s]}function dc(t){return nr(t,1)}function gc(t){return nr(t,-1)}function Bt(t,e){const n=e||t.currentTarget,r=t.relatedTarget;return!r||!se(n,r)}function Mo(t){nn(t,rn()).forEach(n=>{n.dataset.tabindex=n.getAttribute("tabindex")||"",n.setAttribute("tabindex","-1")})}function bn(t){t.querySelectorAll("[data-tabindex]").forEach(n=>{const r=n.dataset.tabindex;delete n.dataset.tabindex,r?n.setAttribute("tabindex",r):n.removeAttribute("tabindex")})}function rr(){const t=new Map;return{emit(e,n){t.get(e)?.forEach(r=>r(n))},on(e,n){t.has(e)||t.set(e,new Set),t.get(e).add(n)},off(e,n){t.get(e)?.delete(n)}}}class Lo{nodesRef={current:[]};events=rr();addNode(e){this.nodesRef.current.push(e)}removeNode(e){const n=this.nodesRef.current.findIndex(r=>r===e);n!==-1&&this.nodesRef.current.splice(n,1)}}const or=g.createContext(null),sr=g.createContext(null),st=()=>g.useContext(or)?.id||null,it=t=>{const e=g.useContext(sr);return t??e};function pc(t){const e=Lt(),n=it(t),r=st();return X(()=>{if(!e)return;const o={id:e,parentId:r};return n?.addNode(o),()=>{n?.removeNode(o)}},[n,e,r]),e}function mc(t){const{children:e,id:n}=t,r=st();return Q.jsx(or.Provider,{value:g.useMemo(()=>({id:n,parentId:r}),[n,r]),children:e})}function hc(t){const{children:e,externalTree:n}=t,r=Fe(()=>n??new Lo).current;return Q.jsx(sr.Provider,{value:r,children:e})}function Ft(t){return`data-base-ui-${t}`}function yt(t,e,n){if(n&&!tt(n))return 0;if(typeof t=="number")return t;if(typeof t=="function"){const r=t();return typeof r=="number"?r:r?.[e]}return t?.[e]}const ir=g.createContext({hasProvider:!1,timeoutMs:0,delayRef:{current:0},initialDelayRef:{current:0},timeout:new ze,currentIdRef:{current:null},currentContextRef:{current:null}});function ko(t){const{children:e,delay:n,timeoutMs:r=0}=t,o=g.useRef(n),s=g.useRef(n),i=g.useRef(null),c=g.useRef(null),l=_e();return Q.jsx(ir.Provider,{value:g.useMemo(()=>({hasProvider:!0,delayRef:o,initialDelayRef:s,currentIdRef:i,timeoutMs:r,currentContextRef:c,timeout:l}),[r,l]),children:e})}function Do(t,e={open:!1}){const n="rootStore"in t?t.rootStore:t,r=n.useState("floatingId"),{enabled:o=!0,open:s}=e,i=g.useContext(ir),{currentIdRef:c,delayRef:l,timeoutMs:a,initialDelayRef:u,currentContextRef:f,hasProvider:m,timeout:d}=i,[p,h]=g.useState(!1);return X(()=>{function E(){h(!1),f.current?.setIsInstantPhase(!1),c.current=null,f.current=null,l.current=u.current}if(o&&c.current&&!s&&c.current===r){if(h(!1),a){const v=r;return d.start(a,()=>{n.select("open")||c.current&&c.current!==v||E()}),()=>{d.clear()}}E()}},[o,s,r,c,l,a,u,f,d,n]),X(()=>{if(!o||!s)return;const E=f.current,v=c.current;d.clear(),f.current={onOpenChange:n.setOpen,setIsInstantPhase:h},c.current=r,l.current={open:0,close:yt(u.current,"close")},v!==null&&v!==r?(h(!0),E?.setIsInstantPhase(!0),E?.onOpenChange(!1,te(Gt))):(h(!1),E?.setIsInstantPhase(!1))},[o,s,r,n,c,l,a,u,f,d]),X(()=>()=>{f.current=null},[f]),g.useMemo(()=>({hasProvider:m,delayRef:l,isInstantPhase:p}),[m,l,p])}const gt=null;class Fo{callbacks=[];callbacksCount=0;nextId=1;startId=1;isScheduled=!1;tick=e=>{this.isScheduled=!1;const n=this.callbacks,r=this.callbacksCount;if(this.callbacks=[],this.callbacksCount=0,this.startId=this.nextId,r>0)for(let o=0;o<n.length;o+=1)n[o]?.(e)};request(e){const n=this.nextId;return this.nextId+=1,this.callbacks.push(e),this.callbacksCount+=1,!this.isScheduled&&(requestAnimationFrame(this.tick),this.isScheduled=!0),n}cancel(e){const n=e-this.startId;n<0||n>=this.callbacks.length||(this.callbacks[n]=null,this.callbacksCount-=1)}}const pt=new Fo;class Te{static create(){return new Te}static request(e){return pt.request(e)}static cancel(e){return pt.cancel(e)}currentId=gt;request(e){this.cancel(),this.currentId=pt.request(()=>{this.currentId=gt,e()})}cancel=()=>{this.currentId!==gt&&(pt.cancel(this.currentId),this.currentId=gt)};disposeEffect=()=>this.cancel}function No(){const t=Fe(Te.create).current;return Vn(t.disposeEffect),t}const En=g.forwardRef(function(e,n){const[r,o]=g.useState();X(()=>{Hn&&o("button")},[]);const s={tabIndex:0,role:r};return Q.jsx("span",{...e,ref:n,style:lo,"aria-hidden":r?void 0:!0,...s,"data-base-ui-focus-guard":""})}),cr=g.createContext(null),Vo=()=>g.useContext(cr),Ho=Ft("portal");function ar(t={}){const{ref:e,container:n,componentProps:r=Je,elementProps:o,elementState:s}=t,i=Lt(),l=Vo()?.portalNode,[a,u]=g.useState(null),[f,m]=g.useState(null),d=$(v=>{v!==null&&m(v)}),p=g.useRef(null);X(()=>{if(n===null){p.current&&(p.current=null,m(null),u(null));return}if(i==null)return;const v=(n&&(no(n)?n:n.current))??l??document.body;if(v==null){p.current&&(p.current=null,m(null),u(null));return}p.current!==v&&(p.current=v,m(null),u(v))},[n,l,i]);const h=Mt("div",r,{ref:[e,d],state:s,props:[{id:i,[Ho]:""},o]});return{portalNode:f,portalSubtree:a&&h?De.createPortal(h,a):null}}const vc=g.forwardRef(function(e,n){const{children:r,container:o,className:s,render:i,renderGuards:c,...l}=e,{portalNode:a,portalSubtree:u}=ar({container:o,ref:n,componentProps:e,elementProps:l}),f=g.useRef(null),m=g.useRef(null),d=g.useRef(null),p=g.useRef(null),[h,E]=g.useState(null),v=h?.modal,y=h?.open,T=typeof c=="boolean"?c:!!h&&!h.modal&&h.open&&!!a;g.useEffect(()=>{if(!a||v)return;function C(w){a&&w.relatedTarget&&Bt(w)&&(w.type==="focusin"?bn:Mo)(a)}return a.addEventListener("focusin",C,!0),a.addEventListener("focusout",C,!0),()=>{a.removeEventListener("focusin",C,!0),a.removeEventListener("focusout",C,!0)}},[a,v]),g.useEffect(()=>{!a||y||bn(a)},[y,a]);const R=g.useMemo(()=>({beforeOutsideRef:f,afterOutsideRef:m,beforeInsideRef:d,afterInsideRef:p,portalNode:a,setFocusManagerState:E}),[a]);return Q.jsxs(g.Fragment,{children:[u,Q.jsxs(cr.Provider,{value:R,children:[T&&a&&Q.jsx(En,{"data-type":"outside",ref:f,onFocus:C=>{if(Bt(C,a))d.current?.focus();else{const w=h?h.domReference:null;Ao(w)?.focus()}}}),T&&a&&Q.jsx("span",{"aria-owns":a.id,style:go}),a&&De.createPortal(r,a),T&&a&&Q.jsx(En,{"data-type":"outside",ref:m,onFocus:C=>{if(Bt(C,a))p.current?.focus();else{const w=h?h.domReference:null;Io(w)?.focus(),h?.closeOnFocusOut&&h?.onOpenChange(!1,te(to,C.nativeEvent))}}})]})]})});function Bo(t){return t==null?t:"current"in t?t.current:t}function jo(t,e){let n=null,r=null,o=!1;return{contextElement:t||void 0,getBoundingClientRect(){const s=t?.getBoundingClientRect()||{width:0,height:0,x:0,y:0},i=e.axis==="x"||e.axis==="both",c=e.axis==="y"||e.axis==="both",l=["mouseenter","mousemove"].includes(e.dataRef.current.openEvent?.type||"")&&e.pointerType!=="touch";let a=s.width,u=s.height,f=s.x,m=s.y;return n==null&&e.x&&i&&(n=s.x-e.x),r==null&&e.y&&c&&(r=s.y-e.y),f-=n||0,m-=r||0,a=0,u=0,!o||l?(a=e.axis==="y"?s.width:0,u=e.axis==="x"?s.height:0,f=i&&e.x!=null?e.x:f,m=c&&e.y!=null?e.y:m):o&&!l&&(u=e.axis==="x"?s.height:u,a=e.axis==="y"?s.width:a),o=!0,{width:a,height:u,x:f,y:m,top:m,right:f+a,bottom:m+u,left:f}}}}function xn(t){return t!=null&&t.clientX!=null}function $o(t,e={}){const n="rootStore"in t?t.rootStore:t,r=n.useState("open"),o=n.useState("floatingElement"),s=n.useState("domReferenceElement"),i=n.context.dataRef,{enabled:c=!0,axis:l="both",x:a=null,y:u=null}=e,f=g.useRef(!1),m=g.useRef(null),[d,p]=g.useState(),[h,E]=g.useState([]),v=$((w,O,P)=>{f.current||i.current.openEvent&&!xn(i.current.openEvent)||n.set("positionReference",jo(P??s,{x:w,y:O,axis:l,dataRef:i,pointerType:d}))}),y=$(w=>{a!=null||u!=null||(r?m.current||E([]):v(w.clientX,w.clientY,w.currentTarget))}),T=tt(d)?o:r,R=g.useCallback(()=>{if(!T||!c||a!=null||u!=null)return;const w=xe(o);function O(P){const H=ye(P);se(o,H)?(w.removeEventListener("mousemove",O),m.current=null):v(P.clientX,P.clientY)}if(!i.current.openEvent||xn(i.current.openEvent)){w.addEventListener("mousemove",O);const P=()=>{w.removeEventListener("mousemove",O),m.current=null};return m.current=P,P}n.set("positionReference",s)},[T,c,a,u,o,i,s,n,v]);g.useEffect(()=>R(),[R,h]),g.useEffect(()=>{c&&!o&&(f.current=!1)},[c,o]),g.useEffect(()=>{!c&&r&&(f.current=!0)},[c,r]),X(()=>{c&&(a!=null||u!=null)&&(f.current=!1,v(a,u))},[c,a,u,v]);const C=g.useMemo(()=>{function w(O){p(O.pointerType)}return{onPointerDown:w,onPointerEnter:w,onMouseMove:y,onMouseEnter:y}},[y]);return g.useMemo(()=>c?{reference:C,trigger:C}:{},[c,C])}function Rn(t,e,n){let{reference:r,floating:o}=t;const s=me(e),i=Bn(e),c=$n(i),l=ge(e),a=s==="y",u=r.x+r.width/2-o.width/2,f=r.y+r.height/2-o.height/2,m=r[c]/2-o[c]/2;let d;switch(l){case"top":d={x:u,y:r.y-o.height};break;case"bottom":d={x:u,y:r.y+r.height};break;case"right":d={x:r.x+r.width,y:f};break;case"left":d={x:r.x-o.width,y:f};break;default:d={x:r.x,y:r.y}}switch(Ue(e)){case"start":d[i]-=m*(n&&a?-1:1);break;case"end":d[i]+=m*(n&&a?-1:1);break}return d}async function Wo(t,e){var n;e===void 0&&(e={});const{x:r,y:o,platform:s,rects:i,elements:c,strategy:l}=t,{boundary:a="clippingAncestors",rootBoundary:u="viewport",elementContext:f="floating",altBoundary:m=!1,padding:d=0}=Ce(e,t),p=jn(d),E=c[m?f==="floating"?"reference":"floating":f],v=xt(await s.getClippingRect({element:(n=await(s.isElement==null?void 0:s.isElement(E)))==null||n?E:E.contextElement||await(s.getDocumentElement==null?void 0:s.getDocumentElement(c.floating)),boundary:a,rootBoundary:u,strategy:l})),y=f==="floating"?{x:r,y:o,width:i.floating.width,height:i.floating.height}:i.reference,T=await(s.getOffsetParent==null?void 0:s.getOffsetParent(c.floating)),R=await(s.isElement==null?void 0:s.isElement(T))?await(s.getScale==null?void 0:s.getScale(T))||{x:1,y:1}:{x:1,y:1},C=xt(s.convertOffsetParentRelativeRectToViewportRelativeRect?await s.convertOffsetParentRelativeRectToViewportRelativeRect({elements:c,rect:y,offsetParent:T,strategy:l}):y);return{top:(v.top-C.top+p.top)/R.y,bottom:(C.bottom-v.bottom+p.bottom)/R.y,left:(v.left-C.left+p.left)/R.x,right:(C.right-v.right+p.right)/R.x}}const _o=async(t,e,n)=>{const{placement:r="bottom",strategy:o="absolute",middleware:s=[],platform:i}=n,c=s.filter(Boolean),l=await(i.isRTL==null?void 0:i.isRTL(e));let a=await i.getElementRects({reference:t,floating:e,strategy:o}),{x:u,y:f}=Rn(a,r,l),m=r,d={},p=0;for(let E=0;E<c.length;E++){var h;const{name:v,fn:y}=c[E],{x:T,y:R,data:C,reset:w}=await y({x:u,y:f,initialPlacement:r,placement:m,strategy:o,middlewareData:d,rects:a,platform:{...i,detectOverflow:(h=i.detectOverflow)!=null?h:Wo},elements:{reference:t,floating:e}});u=T??u,f=R??f,d={...d,[v]:{...d[v],...C}},w&&p<=50&&(p++,typeof w=="object"&&(w.placement&&(m=w.placement),w.rects&&(a=w.rects===!0?await i.getElementRects({reference:t,floating:e,strategy:o}):w.rects),{x:u,y:f}=Rn(a,m,l)),E=-1)}return{x:u,y:f,placement:m,strategy:o,middlewareData:d}},Yo=function(t){return t===void 0&&(t={}),{name:"flip",options:t,async fn(e){var n,r;const{placement:o,middlewareData:s,rects:i,initialPlacement:c,platform:l,elements:a}=e,{mainAxis:u=!0,crossAxis:f=!0,fallbackPlacements:m,fallbackStrategy:d="bestFit",fallbackAxisSideDirection:p="none",flipAlignment:h=!0,...E}=Ce(t,e);if((n=s.arrow)!=null&&n.alignmentOffset)return{};const v=ge(o),y=me(c),T=ge(c)===c,R=await(l.isRTL==null?void 0:l.isRTL(a.floating)),C=m||(T||!h?[$r(c)]:Wr(c)),w=p!=="none";!m&&w&&C.push(..._r(c,h,p,R));const O=[c,...C],P=await l.detectOverflow(e,E),H=[];let M=((r=s.flip)==null?void 0:r.overflows)||[];if(u&&H.push(P[v]),f){const D=Yr(o,i,R);H.push(P[D[0]],P[D[1]])}if(M=[...M,{placement:o,overflows:H}],!H.every(D=>D<=0)){var N,I;const D=(((N=s.flip)==null?void 0:N.index)||0)+1,k=O[D];if(k&&(!(f==="alignment"?y!==me(k):!1)||M.every(x=>me(x.placement)===y?x.overflows[0]>0:!0)))return{data:{index:D,overflows:M},reset:{placement:k}};let V=(I=M.filter(A=>A.overflows[0]<=0).sort((A,x)=>A.overflows[1]-x.overflows[1])[0])==null?void 0:I.placement;if(!V)switch(d){case"bestFit":{var b;const A=(b=M.filter(x=>{if(w){const L=me(x.placement);return L===y||L==="y"}return!0}).map(x=>[x.placement,x.overflows.filter(L=>L>0).reduce((L,U)=>L+U,0)]).sort((x,L)=>x[1]-L[1])[0])==null?void 0:b[0];A&&(V=A);break}case"initialPlacement":V=c;break}if(o!==V)return{reset:{placement:V}}}return{}}}};function wn(t,e){return{top:t.top-e.height,right:t.right-e.width,bottom:t.bottom-e.height,left:t.left-e.width}}function Sn(t){return Ur.some(e=>t[e]>=0)}const Uo=function(t){return t===void 0&&(t={}),{name:"hide",options:t,async fn(e){const{rects:n,platform:r}=e,{strategy:o="referenceHidden",...s}=Ce(t,e);switch(o){case"referenceHidden":{const i=await r.detectOverflow(e,{...s,elementContext:"reference"}),c=wn(i,n.reference);return{data:{referenceHiddenOffsets:c,referenceHidden:Sn(c)}}}case"escaped":{const i=await r.detectOverflow(e,{...s,altBoundary:!0}),c=wn(i,n.floating);return{data:{escapedOffsets:c,escaped:Sn(c)}}}default:return{}}}}},lr=new Set(["left","top"]);async function zo(t,e){const{placement:n,platform:r,elements:o}=t,s=await(r.isRTL==null?void 0:r.isRTL(o.floating)),i=ge(n),c=Ue(n),l=me(n)==="y",a=lr.has(i)?-1:1,u=s&&l?-1:1,f=Ce(e,t);let{mainAxis:m,crossAxis:d,alignmentAxis:p}=typeof f=="number"?{mainAxis:f,crossAxis:0,alignmentAxis:null}:{mainAxis:f.mainAxis||0,crossAxis:f.crossAxis||0,alignmentAxis:f.alignmentAxis};return c&&typeof p=="number"&&(d=c==="end"?p*-1:p),l?{x:d*u,y:m*a}:{x:m*a,y:d*u}}const Xo=function(t){return t===void 0&&(t=0),{name:"offset",options:t,async fn(e){var n,r;const{x:o,y:s,placement:i,middlewareData:c}=e,l=await zo(e,t);return i===((n=c.offset)==null?void 0:n.placement)&&(r=c.arrow)!=null&&r.alignmentOffset?{}:{x:o+l.x,y:s+l.y,data:{...l,placement:i}}}}},qo=function(t){return t===void 0&&(t={}),{name:"shift",options:t,async fn(e){const{x:n,y:r,placement:o,platform:s}=e,{mainAxis:i=!0,crossAxis:c=!1,limiter:l={fn:v=>{let{x:y,y:T}=v;return{x:y,y:T}}},...a}=Ce(t,e),u={x:n,y:r},f=await s.detectOverflow(e,a),m=me(ge(o)),d=Wn(m);let p=u[d],h=u[m];if(i){const v=d==="y"?"top":"left",y=d==="y"?"bottom":"right",T=p+f[v],R=p-f[y];p=Ut(T,p,R)}if(c){const v=m==="y"?"top":"left",y=m==="y"?"bottom":"right",T=h+f[v],R=h-f[y];h=Ut(T,h,R)}const E=l.fn({...e,[d]:p,[m]:h});return{...E,data:{x:E.x-n,y:E.y-r,enabled:{[d]:i,[m]:c}}}}}},Ko=function(t){return t===void 0&&(t={}),{options:t,fn(e){const{x:n,y:r,placement:o,rects:s,middlewareData:i}=e,{offset:c=0,mainAxis:l=!0,crossAxis:a=!0}=Ce(t,e),u={x:n,y:r},f=me(o),m=Wn(f);let d=u[m],p=u[f];const h=Ce(c,e),E=typeof h=="number"?{mainAxis:h,crossAxis:0}:{mainAxis:0,crossAxis:0,...h};if(l){const T=m==="y"?"height":"width",R=s.reference[m]-s.floating[T]+E.mainAxis,C=s.reference[m]+s.reference[T]-E.mainAxis;d<R?d=R:d>C&&(d=C)}if(a){var v,y;const T=m==="y"?"width":"height",R=lr.has(ge(o)),C=s.reference[f]-s.floating[T]+(R&&((v=i.offset)==null?void 0:v[f])||0)+(R?0:E.crossAxis),w=s.reference[f]+s.reference[T]+(R?0:((y=i.offset)==null?void 0:y[f])||0)-(R?E.crossAxis:0);p<C?p=C:p>w&&(p=w)}return{[m]:d,[f]:p}}}},Go=function(t){return t===void 0&&(t={}),{name:"size",options:t,async fn(e){var n,r;const{placement:o,rects:s,platform:i,elements:c}=e,{apply:l=()=>{},...a}=Ce(t,e),u=await i.detectOverflow(e,a),f=ge(o),m=Ue(o),d=me(o)==="y",{width:p,height:h}=s.floating;let E,v;f==="top"||f==="bottom"?(E=f,v=m===(await(i.isRTL==null?void 0:i.isRTL(c.floating))?"start":"end")?"left":"right"):(v=f,E=m==="end"?"top":"bottom");const y=h-u.top-u.bottom,T=p-u.left-u.right,R=nt(h-u[E],y),C=nt(p-u[v],T),w=!e.middlewareData.shift;let O=R,P=C;if((n=e.middlewareData.shift)!=null&&n.enabled.x&&(P=T),(r=e.middlewareData.shift)!=null&&r.enabled.y&&(O=y),w&&!m){const M=de(u.left,0),N=de(u.right,0),I=de(u.top,0),b=de(u.bottom,0);d?P=p-2*(M!==0||N!==0?M+N:de(u.left,u.right)):O=h-2*(I!==0||b!==0?I+b:de(u.top,u.bottom))}await l({...e,availableWidth:P,availableHeight:O});const H=await i.getDimensions(c.floating);return p!==H.width||h!==H.height?{reset:{rects:!0}}:{}}}};function ur(t){const e=Re(t);let n=parseFloat(e.width)||0,r=parseFloat(e.height)||0;const o=we(t),s=o?t.offsetWidth:n,i=o?t.offsetHeight:r,c=Rt(n)!==s||Rt(r)!==i;return c&&(n=s,r=i),{width:n,height:r,$:c}}function on(t){return z(t)?t:t.contextElement}function $e(t){const e=on(t);if(!we(e))return Ee(1);const n=e.getBoundingClientRect(),{width:r,height:o,$:s}=ur(e);let i=(s?Rt(n.width):n.width)/r,c=(s?Rt(n.height):n.height)/o;return(!i||!Number.isFinite(i))&&(i=1),(!c||!Number.isFinite(c))&&(c=1),{x:i,y:c}}const Qo=Ee(0);function fr(t){const e=xe(t);return!Qt()||!e.visualViewport?Qo:{x:e.visualViewport.offsetLeft,y:e.visualViewport.offsetTop}}function Jo(t,e,n){return e===void 0&&(e=!1),!n||e&&n!==xe(t)?!1:e}function ke(t,e,n,r){e===void 0&&(e=!1),n===void 0&&(n=!1);const o=t.getBoundingClientRect(),s=on(t);let i=Ee(1);e&&(r?z(r)&&(i=$e(r)):i=$e(t));const c=Jo(s,n,r)?fr(s):Ee(0);let l=(o.left+c.x)/i.x,a=(o.top+c.y)/i.y,u=o.width/i.x,f=o.height/i.y;if(s){const m=xe(s),d=r&&z(r)?xe(r):r;let p=m,h=vn(p);for(;h&&r&&d!==p;){const E=$e(h),v=h.getBoundingClientRect(),y=Re(h),T=v.left+(h.clientLeft+parseFloat(y.paddingLeft))*E.x,R=v.top+(h.clientTop+parseFloat(y.paddingTop))*E.y;l*=E.x,a*=E.y,u*=E.x,f*=E.y,l+=T,a+=R,p=xe(h),h=vn(p)}}return xt({width:u,height:f,x:l,y:a})}function Nt(t,e){const n=kt(t).scrollLeft;return e?e.left+n:ke(Oe(t)).left+n}function dr(t,e){const n=t.getBoundingClientRect(),r=n.left+e.scrollLeft-Nt(t,n),o=n.top+e.scrollTop;return{x:r,y:o}}function Zo(t){let{elements:e,rect:n,offsetParent:r,strategy:o}=t;const s=o==="fixed",i=Oe(r),c=e?Jt(e.floating):!1;if(r===i||c&&s)return n;let l={scrollLeft:0,scrollTop:0},a=Ee(1);const u=Ee(0),f=we(r);if((f||!f&&!s)&&((Zt(r)!=="body"||en(i))&&(l=kt(r)),we(r))){const d=ke(r);a=$e(r),u.x=d.x+r.clientLeft,u.y=d.y+r.clientTop}const m=i&&!f&&!s?dr(i,l):Ee(0);return{width:n.width*a.x,height:n.height*a.y,x:n.x*a.x-l.scrollLeft*a.x+u.x+m.x,y:n.y*a.y-l.scrollTop*a.y+u.y+m.y}}function es(t){return Array.from(t.getClientRects())}function ts(t){const e=Oe(t),n=kt(t),r=t.ownerDocument.body,o=de(e.scrollWidth,e.clientWidth,r.scrollWidth,r.clientWidth),s=de(e.scrollHeight,e.clientHeight,r.scrollHeight,r.clientHeight);let i=-n.scrollLeft+Nt(t);const c=-n.scrollTop;return Re(r).direction==="rtl"&&(i+=de(e.clientWidth,r.clientWidth)-o),{width:o,height:s,x:i,y:c}}const Tn=25;function ns(t,e){const n=xe(t),r=Oe(t),o=n.visualViewport;let s=r.clientWidth,i=r.clientHeight,c=0,l=0;if(o){s=o.width,i=o.height;const u=Qt();(!u||u&&e==="fixed")&&(c=o.offsetLeft,l=o.offsetTop)}const a=Nt(r);if(a<=0){const u=r.ownerDocument,f=u.body,m=getComputedStyle(f),d=u.compatMode==="CSS1Compat"&&parseFloat(m.marginLeft)+parseFloat(m.marginRight)||0,p=Math.abs(r.clientWidth-f.clientWidth-d);p<=Tn&&(s-=p)}else a<=Tn&&(s+=a);return{width:s,height:i,x:c,y:l}}const rs=new Set(["absolute","fixed"]);function os(t,e){const n=ke(t,!0,e==="fixed"),r=n.top+t.clientTop,o=n.left+t.clientLeft,s=we(t)?$e(t):Ee(1),i=t.clientWidth*s.x,c=t.clientHeight*s.y,l=o*s.x,a=r*s.y;return{width:i,height:c,x:l,y:a}}function Cn(t,e,n){let r;if(e==="viewport")r=ns(t,n);else if(e==="document")r=ts(Oe(t));else if(z(e))r=os(e,n);else{const o=fr(t);r={x:e.x-o.x,y:e.y-o.y,width:e.width,height:e.height}}return xt(r)}function gr(t,e){const n=We(t);return n===e||!z(n)||Le(n)?!1:Re(n).position==="fixed"||gr(n,e)}function ss(t,e){const n=e.get(t);if(n)return n;let r=Be(t,[],!1).filter(c=>z(c)&&Zt(c)!=="body"),o=null;const s=Re(t).position==="fixed";let i=s?We(t):t;for(;z(i)&&!Le(i);){const c=Re(i),l=zn(i);!l&&c.position==="fixed"&&(o=null),(s?!l&&!o:!l&&c.position==="static"&&!!o&&rs.has(o.position)||en(i)&&!l&&gr(t,i))?r=r.filter(u=>u!==i):o=c,i=We(i)}return e.set(t,r),r}function is(t){let{element:e,boundary:n,rootBoundary:r,strategy:o}=t;const i=[...n==="clippingAncestors"?Jt(e)?[]:ss(e,this._c):[].concat(n),r],c=i[0],l=i.reduce((a,u)=>{const f=Cn(e,u,o);return a.top=de(f.top,a.top),a.right=nt(f.right,a.right),a.bottom=nt(f.bottom,a.bottom),a.left=de(f.left,a.left),a},Cn(e,c,o));return{width:l.right-l.left,height:l.bottom-l.top,x:l.left,y:l.top}}function cs(t){const{width:e,height:n}=ur(t);return{width:e,height:n}}function as(t,e,n){const r=we(e),o=Oe(e),s=n==="fixed",i=ke(t,!0,s,e);let c={scrollLeft:0,scrollTop:0};const l=Ee(0);function a(){l.x=Nt(o)}if(r||!r&&!s)if((Zt(e)!=="body"||en(o))&&(c=kt(e)),r){const d=ke(e,!0,s,e);l.x=d.x+e.clientLeft,l.y=d.y+e.clientTop}else o&&a();s&&!r&&o&&a();const u=o&&!r&&!s?dr(o,c):Ee(0),f=i.left+c.scrollLeft-l.x-u.x,m=i.top+c.scrollTop-l.y-u.y;return{x:f,y:m,width:i.width,height:i.height}}function jt(t){return Re(t).position==="static"}function On(t,e){if(!we(t)||Re(t).position==="fixed")return null;if(e)return e(t);let n=t.offsetParent;return Oe(t)===n&&(n=n.ownerDocument.body),n}function pr(t,e){const n=xe(t);if(Jt(t))return n;if(!we(t)){let o=We(t);for(;o&&!Le(o);){if(z(o)&&!jt(o))return o;o=We(o)}return n}let r=On(t,e);for(;r&&ro(r)&&jt(r);)r=On(r,e);return r&&Le(r)&&jt(r)&&!zn(r)?n:r||oo(t)||n}const ls=async function(t){const e=this.getOffsetParent||pr,n=this.getDimensions,r=await n(t.floating);return{reference:as(t.reference,await e(t.floating),t.strategy),floating:{x:0,y:0,width:r.width,height:r.height}}};function us(t){return Re(t).direction==="rtl"}const fs={convertOffsetParentRelativeRectToViewportRelativeRect:Zo,getDocumentElement:Oe,getClippingRect:is,getOffsetParent:pr,getElementRects:ls,getClientRects:es,getDimensions:cs,getScale:$e,isElement:z,isRTL:us};function mr(t,e){return t.x===e.x&&t.y===e.y&&t.width===e.width&&t.height===e.height}function ds(t,e){let n=null,r;const o=Oe(t);function s(){var c;clearTimeout(r),(c=n)==null||c.disconnect(),n=null}function i(c,l){c===void 0&&(c=!1),l===void 0&&(l=1),s();const a=t.getBoundingClientRect(),{left:u,top:f,width:m,height:d}=a;if(c||e(),!m||!d)return;const p=dt(f),h=dt(o.clientWidth-(u+m)),E=dt(o.clientHeight-(f+d)),v=dt(u),T={rootMargin:-p+"px "+-h+"px "+-E+"px "+-v+"px",threshold:de(0,nt(1,l))||1};let R=!0;function C(w){const O=w[0].intersectionRatio;if(O!==l){if(!R)return i();O?i(!1,O):r=setTimeout(()=>{i(!1,1e-7)},1e3)}O===1&&!mr(a,t.getBoundingClientRect())&&i(),R=!1}try{n=new IntersectionObserver(C,{...T,root:o.ownerDocument})}catch{n=new IntersectionObserver(C,T)}n.observe(t)}return i(!0),s}function Pn(t,e,n,r){r===void 0&&(r={});const{ancestorScroll:o=!0,ancestorResize:s=!0,elementResize:i=typeof ResizeObserver=="function",layoutShift:c=typeof IntersectionObserver=="function",animationFrame:l=!1}=r,a=on(t),u=o||s?[...a?Be(a):[],...Be(e)]:[];u.forEach(v=>{o&&v.addEventListener("scroll",n,{passive:!0}),s&&v.addEventListener("resize",n)});const f=a&&c?ds(a,n):null;let m=-1,d=null;i&&(d=new ResizeObserver(v=>{let[y]=v;y&&y.target===a&&d&&(d.unobserve(e),cancelAnimationFrame(m),m=requestAnimationFrame(()=>{var T;(T=d)==null||T.observe(e)})),n()}),a&&!l&&d.observe(a),d.observe(e));let p,h=l?ke(t):null;l&&E();function E(){const v=ke(t);h&&!mr(h,v)&&n(),h=v,p=requestAnimationFrame(E)}return n(),()=>{var v;u.forEach(y=>{o&&y.removeEventListener("scroll",n),s&&y.removeEventListener("resize",n)}),f?.(),(v=d)==null||v.disconnect(),d=null,l&&cancelAnimationFrame(p)}}const gs=Xo,ps=qo,ms=Yo,hs=Go,vs=Uo,ys=Ko,bs=(t,e,n)=>{const r=new Map,o={platform:fs,...n},s={...o.platform,_c:r};return _o(t,e,{...o,platform:s})};var Es=typeof document<"u",xs=function(){},bt=Es?g.useLayoutEffect:xs;function It(t,e){if(t===e)return!0;if(typeof t!=typeof e)return!1;if(typeof t=="function"&&t.toString()===e.toString())return!0;let n,r,o;if(t&&e&&typeof t=="object"){if(Array.isArray(t)){if(n=t.length,n!==e.length)return!1;for(r=n;r--!==0;)if(!It(t[r],e[r]))return!1;return!0}if(o=Object.keys(t),n=o.length,n!==Object.keys(e).length)return!1;for(r=n;r--!==0;)if(!{}.hasOwnProperty.call(e,o[r]))return!1;for(r=n;r--!==0;){const s=o[r];if(!(s==="_owner"&&t.$$typeof)&&!It(t[s],e[s]))return!1}return!0}return t!==t&&e!==e}function hr(t){return typeof window>"u"?1:(t.ownerDocument.defaultView||window).devicePixelRatio||1}function In(t,e){const n=hr(t);return Math.round(e*n)/n}function $t(t){const e=g.useRef(t);return bt(()=>{e.current=t}),e}function Rs(t){t===void 0&&(t={});const{placement:e="bottom",strategy:n="absolute",middleware:r=[],platform:o,elements:{reference:s,floating:i}={},transform:c=!0,whileElementsMounted:l,open:a}=t,[u,f]=g.useState({x:0,y:0,strategy:n,placement:e,middlewareData:{},isPositioned:!1}),[m,d]=g.useState(r);It(m,r)||d(r);const[p,h]=g.useState(null),[E,v]=g.useState(null),y=g.useCallback(x=>{x!==w.current&&(w.current=x,h(x))},[]),T=g.useCallback(x=>{x!==O.current&&(O.current=x,v(x))},[]),R=s||p,C=i||E,w=g.useRef(null),O=g.useRef(null),P=g.useRef(u),H=l!=null,M=$t(l),N=$t(o),I=$t(a),b=g.useCallback(()=>{if(!w.current||!O.current)return;const x={placement:e,strategy:n,middleware:m};N.current&&(x.platform=N.current),bs(w.current,O.current,x).then(L=>{const U={...L,isPositioned:I.current!==!1};D.current&&!It(P.current,U)&&(P.current=U,De.flushSync(()=>{f(U)}))})},[m,e,n,N,I]);bt(()=>{a===!1&&P.current.isPositioned&&(P.current.isPositioned=!1,f(x=>({...x,isPositioned:!1})))},[a]);const D=g.useRef(!1);bt(()=>(D.current=!0,()=>{D.current=!1}),[]),bt(()=>{if(R&&(w.current=R),C&&(O.current=C),R&&C){if(M.current)return M.current(R,C,b);b()}},[R,C,b,M,H]);const k=g.useMemo(()=>({reference:w,floating:O,setReference:y,setFloating:T}),[y,T]),V=g.useMemo(()=>({reference:R,floating:C}),[R,C]),A=g.useMemo(()=>{const x={position:n,left:0,top:0};if(!V.floating)return x;const L=In(V.floating,u.x),U=In(V.floating,u.y);return c?{...x,transform:"translate("+L+"px, "+U+"px)",...hr(V.floating)>=1.5&&{willChange:"transform"}}:{position:n,left:L,top:U}},[n,c,V.floating,u.x,u.y]);return g.useMemo(()=>({...u,update:b,refs:k,elements:V,floatingStyles:A}),[u,b,k,V,A])}const ws=(t,e)=>({...gs(t),options:[t,e]}),Ss=(t,e)=>({...ps(t),options:[t,e]}),Ts=(t,e)=>({...ys(t),options:[t,e]}),Cs=(t,e)=>({...ms(t),options:[t,e]}),Os=(t,e)=>({...hs(t),options:[t,e]}),Ps=(t,e)=>({...vs(t),options:[t,e]}),Is={intentional:"onClick",sloppy:"onPointerDown"};function As(t){return{escapeKey:typeof t=="boolean"?t:t?.escapeKey??!1,outsidePress:typeof t=="boolean"?t:t?.outsidePress??!0}}function Ms(t,e={}){const n="rootStore"in t?t.rootStore:t,r=n.useState("open"),o=n.useState("floatingElement"),s=n.useState("referenceElement"),i=n.useState("domReferenceElement"),{onOpenChange:c,dataRef:l}=n.context,{enabled:a=!0,escapeKey:u=!0,outsidePress:f=!0,outsidePressEvent:m="sloppy",referencePress:d=!1,referencePressEvent:p="sloppy",ancestorScroll:h=!1,bubbles:E,externalTree:v}=e,y=it(v),T=$(typeof f=="function"?f:()=>!1),R=typeof f=="function"?T:f,C=g.useRef(!1),{escapeKey:w,outsidePress:O}=As(E),P=g.useRef(null),H=_e(),M=_e(),N=$(()=>{M.clear(),l.current.insideReactTree=!1}),I=g.useRef(!1),b=g.useRef(""),D=$(S=>{b.current=S.pointerType}),k=$(()=>{const S=b.current,_=S==="pen"||!S?"mouse":S,F=typeof m=="function"?m():m;return typeof F=="string"?F:F[_]}),V=$(S=>{if(!r||!a||!u||S.key!=="Escape"||I.current)return;const _=l.current.floatingContext?.nodeId,F=y?Ze(y.nodesRef.current,_):[];if(!w&&F.length>0){let J=!0;if(F.forEach(re=>{re.context?.open&&!re.context.dataRef.current.__escapeKeyBubbles&&(J=!1)}),!J)return}const ie=zr(S)?S.nativeEvent:S,j=te(tn,ie);n.setOpen(!1,j),!w&&!j.isPropagationAllowed&&S.stopPropagation()}),A=$(S=>{const _=k();return _==="intentional"&&S.type!=="click"||_==="sloppy"&&S.type==="click"}),x=$(()=>{l.current.insideReactTree=!0,M.start(0,N)}),L=$((S,_=!1)=>{if(A(S)){N();return}if(l.current.insideReactTree){N();return}if(k()==="intentional"&&_||typeof R=="function"&&!R(S))return;const F=ye(S),ie=`[${Ft("inert")}]`,j=he(n.select("floatingElement")).querySelectorAll(ie),J=n.context.triggerElements;if(F&&(J.hasElement(F)||J.hasMatchingElement(oe=>se(oe,F))))return;let re=z(F)?F:null;for(;re&&!Le(re);){const oe=We(re);if(Le(oe)||!z(oe))break;re=oe}if(j.length&&z(F)&&!Xr(F)&&!se(F,n.select("floatingElement"))&&Array.from(j).every(oe=>!se(re,oe)))return;if(we(F)&&!("touches"in S)){const oe=Le(F),Se=Re(F),Ie=/auto|scroll/,ct=oe||Ie.test(Se.overflowX),at=oe||Ie.test(Se.overflowY),lt=ct&&F.clientWidth>0&&F.scrollWidth>F.clientWidth,Ke=at&&F.clientHeight>0&&F.scrollHeight>F.clientHeight,ut=Se.direction==="rtl",Ne=Ke&&(ut?S.offsetX<=F.offsetWidth-F.clientWidth:S.offsetX>F.clientWidth),Me=lt&&S.offsetY>F.clientHeight;if(Ne||Me)return}const qe=l.current.floatingContext?.nodeId,Pe=y&&Ze(y.nodesRef.current,qe).some(oe=>pe(S,oe.context?.elements.floating));if(pe(S,n.select("floatingElement"))||pe(S,n.select("domReferenceElement"))||Pe)return;const Ae=y?Ze(y.nodesRef.current,qe):[];if(Ae.length>0){let oe=!0;if(Ae.forEach(Se=>{Se.context?.open&&!Se.context.dataRef.current.__outsidePressBubbles&&(oe=!1)}),!oe)return}n.setOpen(!1,te(so,S)),N()}),U=$(S=>{k()!=="sloppy"||S.pointerType==="touch"||!n.select("open")||!a||pe(S,n.select("floatingElement"))||pe(S,n.select("domReferenceElement"))||L(S)}),W=$(S=>{if(k()!=="sloppy"||!n.select("open")||!a||pe(S,n.select("floatingElement"))||pe(S,n.select("domReferenceElement")))return;const _=S.touches[0];_&&(P.current={startTime:Date.now(),startX:_.clientX,startY:_.clientY,dismissOnTouchEnd:!1,dismissOnMouseDown:!0},H.start(1e3,()=>{P.current&&(P.current.dismissOnTouchEnd=!1,P.current.dismissOnMouseDown=!1)}))}),ne=$(S=>{const _=ye(S);function F(){W(S),_?.removeEventListener(S.type,F)}_?.addEventListener(S.type,F)}),K=$(S=>{const _=C.current;if(C.current=!1,H.clear(),S.type==="mousedown"&&P.current&&!P.current.dismissOnMouseDown)return;const F=ye(S);function ie(){S.type==="pointerdown"?U(S):L(S,_),F?.removeEventListener(S.type,ie)}F?.addEventListener(S.type,ie)}),G=$(S=>{if(k()!=="sloppy"||!P.current||pe(S,n.select("floatingElement"))||pe(S,n.select("domReferenceElement")))return;const _=S.touches[0];if(!_)return;const F=Math.abs(_.clientX-P.current.startX),ie=Math.abs(_.clientY-P.current.startY),j=Math.sqrt(F*F+ie*ie);j>5&&(P.current.dismissOnTouchEnd=!0),j>10&&(L(S),H.clear(),P.current=null)}),Z=$(S=>{const _=ye(S);function F(){G(S),_?.removeEventListener(S.type,F)}_?.addEventListener(S.type,F)}),B=$(S=>{k()!=="sloppy"||!P.current||pe(S,n.select("floatingElement"))||pe(S,n.select("domReferenceElement"))||(P.current.dismissOnTouchEnd&&L(S),H.clear(),P.current=null)}),Y=$(S=>{const _=ye(S);function F(){B(S),_?.removeEventListener(S.type,F)}_?.addEventListener(S.type,F)});g.useEffect(()=>{if(!r||!a)return;l.current.__escapeKeyBubbles=w,l.current.__outsidePressBubbles=O;const S=new ze;function _(re){n.setOpen(!1,te(Gt,re))}function F(){S.clear(),I.current=!0}function ie(){S.start(Qt()?5:0,()=>{I.current=!1})}const j=he(o);j.addEventListener("pointerdown",D,!0),u&&(j.addEventListener("keydown",V),j.addEventListener("compositionstart",F),j.addEventListener("compositionend",ie)),R&&(j.addEventListener("click",K,!0),j.addEventListener("pointerdown",K,!0),j.addEventListener("touchstart",ne,!0),j.addEventListener("touchmove",Z,!0),j.addEventListener("touchend",Y,!0),j.addEventListener("mousedown",K,!0));let J=[];return h&&(z(i)&&(J=Be(i)),z(o)&&(J=J.concat(Be(o))),!z(s)&&s&&s.contextElement&&(J=J.concat(Be(s.contextElement)))),J=J.filter(re=>re!==j.defaultView?.visualViewport),J.forEach(re=>{re.addEventListener("scroll",_,{passive:!0})}),()=>{j.removeEventListener("pointerdown",D,!0),u&&(j.removeEventListener("keydown",V),j.removeEventListener("compositionstart",F),j.removeEventListener("compositionend",ie)),R&&(j.removeEventListener("click",K,!0),j.removeEventListener("pointerdown",K,!0),j.removeEventListener("touchstart",ne,!0),j.removeEventListener("touchmove",Z,!0),j.removeEventListener("touchend",Y,!0),j.removeEventListener("mousedown",K,!0)),J.forEach(re=>{re.removeEventListener("scroll",_)}),S.clear(),C.current=!1}},[l,o,s,i,u,R,r,c,h,a,w,O,V,L,K,U,ne,Z,Y,D,n]),g.useEffect(N,[R,N]);const ce=g.useMemo(()=>({onKeyDown:V,...d&&{[Is[p]]:S=>{n.setOpen(!1,te(wt,S.nativeEvent))},...p!=="intentional"&&{onClick(S){n.setOpen(!1,te(wt,S.nativeEvent))}}}}),[V,n,d,p]),ae=$(S=>{const _=ye(S.nativeEvent);!se(n.select("floatingElement"),_)||S.button!==0||(C.current=!0)}),le=$(S=>{!r||!a||S.button!==0||(C.current=!0)}),Xe=g.useMemo(()=>({onKeyDown:V,onPointerDown:ae,onMouseDown:ae,onMouseUp:ae,onClickCapture:x,onMouseDownCapture(S){x(),le(S)},onPointerDownCapture(S){x(),le(S)},onMouseUpCapture:x,onTouchEndCapture:x,onTouchMoveCapture:x}),[V,ae,x,le]);return g.useMemo(()=>a?{reference:ce,floating:Xe,trigger:ce}:{},[a,ce,Xe])}var At=Symbol("NOT_FOUND");function Ls(t,e=`expected a function, instead received ${typeof t}`){if(typeof t!="function")throw new TypeError(e)}function ks(t,e=`expected an object, instead received ${typeof t}`){if(typeof t!="object")throw new TypeError(e)}function Ds(t,e="expected all items to be functions, instead received the following types: "){if(!t.every(n=>typeof n=="function")){const n=t.map(r=>typeof r=="function"?`function ${r.name||"unnamed"}()`:typeof r).join(", ");throw new TypeError(`${e}[${n}]`)}}var An=t=>Array.isArray(t)?t:[t];function Fs(t){const e=Array.isArray(t[0])?t[0]:t;return Ds(e,"createSelector expects all input-selectors to be functions, but received the following types: "),e}function Ns(t,e){const n=[],{length:r}=t;for(let o=0;o<r;o++)n.push(t[o].apply(null,e));return n}function Vs(t){let e;return{get(n){return e&&t(e.key,n)?e.value:At},put(n,r){e={key:n,value:r}},getEntries(){return e?[e]:[]},clear(){e=void 0}}}function Hs(t,e){let n=[];function r(c){const l=n.findIndex(a=>e(c,a.key));if(l>-1){const a=n[l];return l>0&&(n.splice(l,1),n.unshift(a)),a.value}return At}function o(c,l){r(c)===At&&(n.unshift({key:c,value:l}),n.length>t&&n.pop())}function s(){return n}function i(){n=[]}return{get:r,put:o,getEntries:s,clear:i}}var Bs=(t,e)=>t===e;function js(t){return function(n,r){if(n===null||r===null||n.length!==r.length)return!1;const{length:o}=n;for(let s=0;s<o;s++)if(!t(n[s],r[s]))return!1;return!0}}function $s(t,e){const n=typeof e=="object"?e:{equalityCheck:e},{equalityCheck:r=Bs,maxSize:o=1,resultEqualityCheck:s}=n,i=js(r);let c=0;const l=o<=1?Vs(i):Hs(o,i);function a(){let u=l.get(arguments);if(u===At){if(u=t.apply(null,arguments),c++,s){const m=l.getEntries().find(d=>s(d.value,u));m&&(u=m.value,c!==0&&c--)}l.put(arguments,u)}return u}return a.clearCache=()=>{l.clear(),a.resetResultsCount()},a.resultsCount=()=>c,a.resetResultsCount=()=>{c=0},a}var Ws=class{constructor(t){this.value=t}deref(){return this.value}},_s=typeof WeakRef<"u"?WeakRef:Ws,Ys=0,Mn=1;function mt(){return{s:Ys,v:void 0,o:null,p:null}}function vr(t,e={}){let n=mt();const{resultEqualityCheck:r}=e;let o,s=0;function i(){let c=n;const{length:l}=arguments;for(let f=0,m=l;f<m;f++){const d=arguments[f];if(typeof d=="function"||typeof d=="object"&&d!==null){let p=c.o;p===null&&(c.o=p=new WeakMap);const h=p.get(d);h===void 0?(c=mt(),p.set(d,c)):c=h}else{let p=c.p;p===null&&(c.p=p=new Map);const h=p.get(d);h===void 0?(c=mt(),p.set(d,c)):c=h}}const a=c;let u;if(c.s===Mn)u=c.v;else if(u=t.apply(null,arguments),s++,r){const f=o?.deref?.()??o;f!=null&&r(f,u)&&(u=f,s!==0&&s--),o=typeof u=="object"&&u!==null||typeof u=="function"?new _s(u):u}return a.s=Mn,a.v=u,u}return i.clearCache=()=>{n=mt(),i.resetResultsCount()},i.resultsCount=()=>s,i.resetResultsCount=()=>{s=0},i}function yr(t,...e){const n=typeof t=="function"?{memoize:t,memoizeOptions:e}:t,r=(...o)=>{let s=0,i=0,c,l={},a=o.pop();typeof a=="object"&&(l=a,a=o.pop()),Ls(a,`createSelector expects an output function after the inputs, but received: [${typeof a}]`);const u={...n,...l},{memoize:f,memoizeOptions:m=[],argsMemoize:d=vr,argsMemoizeOptions:p=[]}=u,h=An(m),E=An(p),v=Fs(o),y=f(function(){return s++,a.apply(null,arguments)},...h),T=d(function(){i++;const C=Ns(v,arguments);return c=y.apply(null,C),c},...E);return Object.assign(T,{resultFunc:a,memoizedResultFunc:y,dependencies:v,dependencyRecomputations:()=>i,resetDependencyRecomputations:()=>{i=0},lastResult:()=>c,recomputations:()=>s,resetRecomputations:()=>{s=0},memoize:f,argsMemoize:d})};return Object.assign(r,{withTypes:()=>r}),r}var Us=yr(vr),zs=Object.assign((t,e=Us)=>{ks(t,`createStructuredSelector expects first argument to be an object where each property is a selector, instead received a ${typeof t}`);const n=Object.keys(t),r=n.map(s=>t[s]);return e(r,(...s)=>s.reduce((i,c,l)=>(i[n[l]]=c,i),{}))},{withTypes:()=>zs});yr({memoize:$s,memoizeOptions:{maxSize:1,equalityCheck:Object.is}});const q=(t,e,n,r,o,s,...i)=>{if(i.length>0)throw new Error(ot(1));let c;if(t)c=t;else throw new Error("Missing arguments");return c};var Xs=Vr();const qs=Br(19),Ks=qs?Qs:Js;function Gs(t,e,n,r,o){return Ks(t,e,n,r,o)}function Qs(t,e,n,r,o){const s=g.useCallback(()=>e(t.getSnapshot(),n,r,o),[t,e,n,r,o]);return Xs.useSyncExternalStore(t.subscribe,s,s)}function Js(t,e,n,r,o){return Hr.useSyncExternalStoreWithSelector(t.subscribe,t.getSnapshot,t.getSnapshot,s=>e(s,n,r,o))}class et{constructor(e){this.state=e,this.listeners=new Set,this.updateTick=0}subscribe=e=>(this.listeners.add(e),()=>{this.listeners.delete(e)});getSnapshot=()=>this.state;setState(e){if(this.state===e)return;this.state=e,this.updateTick+=1;const n=this.updateTick;for(const r of this.listeners){if(n!==this.updateTick)return;r(e)}}update(e){for(const n in e)if(!Object.is(this.state[n],e[n])){et.prototype.setState.call(this,{...this.state,...e});return}}set(e,n){Object.is(this.state[e],n)||et.prototype.setState.call(this,{...this.state,[e]:n})}notifyAll(){const e={...this.state};et.prototype.setState.call(this,e)}}class br extends et{constructor(e,n={},r){super(e),this.context=n,this.selectors=r}controlledValues=new Map;useSyncedValue(e,n){g.useDebugValue(e),X(()=>{this.state[e]!==n&&this.set(e,n)},[e,n])}useSyncedValueWithCleanup(e,n){const r=this;X(()=>(r.state[e]!==n&&r.set(e,n),()=>{r.set(e,void 0)}),[r,e,n])}useSyncedValues(e){const n=this,r=Object.values(e);X(()=>{n.update(e)},[n,...r])}useControlledProp(e,n,r){g.useDebugValue(e);const o=this,s=n!==void 0;this.controlledValues.has(e)||(this.controlledValues.set(e,s),!s&&!Object.is(this.state[e],r)&&super.setState({...this.state,[e]:r})),X(()=>{s&&!Object.is(o.state[e],n)&&super.setState({...o.state,[e]:n})},[o,e,n,r,s])}set(e,n){this.controlledValues.get(e)!==!0&&super.set(e,n)}update(e){const n={...e};for(const r in n)if(Object.hasOwn(n,r)&&this.controlledValues.get(r)===!0){delete n[r];continue}super.update(n)}setState(e){const n={...e};for(const r in n)if(Object.hasOwn(n,r)&&this.controlledValues.get(r)===!0){delete n[r];continue}super.setState({...this.state,...n})}select=(e,n,r,o)=>{const s=this.selectors[e];return s(this.state,n,r,o)};useState=(e,n,r,o)=>{g.useDebugValue(e);const s=this.selectors[e];return Gs(this,s,n,r,o)};useContextCallback(e,n){g.useDebugValue(e);const r=$(n??jr);this.context[e]=r}useStateSetter(e){const n=g.useRef(void 0);return n.current===void 0&&(n.current=r=>{this.set(e,r)}),n.current}observe(e,n){let r;typeof e=="function"?r=e:r=this.selectors[e];let o=r(this.state);return n(o,o,this),this.subscribe(s=>{const i=r(s);if(!Object.is(o,i)){const c=o;o=i,n(i,c,this)}})}}const Zs={open:q(t=>t.open),domReferenceElement:q(t=>t.domReferenceElement),referenceElement:q(t=>t.positionReference??t.referenceElement),floatingElement:q(t=>t.floatingElement),floatingId:q(t=>t.floatingId)};class sn extends br{constructor(e){const{nested:n,noEmit:r,onOpenChange:o,triggerElements:s,...i}=e;super({...i,positionReference:i.referenceElement,domReferenceElement:i.referenceElement},{onOpenChange:o,dataRef:{current:{}},events:rr(),nested:n,noEmit:r,triggerElements:s},Zs)}setOpen=(e,n)=>{if((!e||!this.state.open||qr(n.event))&&(this.context.dataRef.current.openEvent=e?n.event:void 0),!this.context.noEmit){const r={open:e,reason:n.reason,nativeEvent:n.event,nested:this.context.nested,triggerElement:n.trigger};this.context.events.emit("openchange",r)}this.context.onOpenChange?.(e,n)}}function ei(t,e=!1,n=!1){const[r,o]=g.useState(t&&e?"idle":void 0),[s,i]=g.useState(t);return t&&!s&&(i(!0),o("starting")),!t&&s&&r!=="ending"&&!n&&o("ending"),!t&&!s&&r==="ending"&&o(void 0),X(()=>{if(!t&&s&&r!=="ending"&&n){const c=Te.request(()=>{o("ending")});return()=>{Te.cancel(c)}}},[t,s,r,n]),X(()=>{if(!t||e)return;const c=Te.request(()=>{o(void 0)});return()=>{Te.cancel(c)}},[e,t]),X(()=>{if(!t||!e)return;t&&s&&r!=="idle"&&o("starting");const c=Te.request(()=>{o("idle")});return()=>{Te.cancel(c)}},[e,t,s,o,r]),g.useMemo(()=>({mounted:s,setMounted:i,transitionStatus:r}),[s,r])}let rt=(function(t){return t.startingStyle="data-starting-style",t.endingStyle="data-ending-style",t})({});const ti={[rt.startingStyle]:""},ni={[rt.endingStyle]:""},ri={transitionStatus(t){return t==="starting"?ti:t==="ending"?ni:null}};function oi(t,e=!1,n=!0){const r=No();return $((o,s=null)=>{r.cancel();function i(){De.flushSync(o)}const c=Bo(t);if(c==null)return;const l=c;if(typeof l.getAnimations!="function"||globalThis.BASE_UI_ANIMATIONS_DISABLED)o();else{let a=function(){const f=rt.startingStyle;if(!l.hasAttribute(f)){r.request(u);return}const m=new MutationObserver(()=>{l.hasAttribute(f)||(m.disconnect(),u())});m.observe(l,{attributes:!0,attributeFilter:[f]}),s?.addEventListener("abort",()=>m.disconnect(),{once:!0})},u=function(){Promise.all(l.getAnimations().map(f=>f.finished)).then(()=>{s?.aborted||i()}).catch(()=>{const f=l.getAnimations();if(n){if(s?.aborted)return;i()}else f.length>0&&f.some(m=>m.pending||m.playState!=="finished")&&u()})};if(e){a();return}r.request(u)}})}function Er(t){const{enabled:e=!0,open:n,ref:r,onComplete:o}=t,s=$(o),i=oi(r,n,!1);g.useEffect(()=>{if(!e)return;const c=new AbortController;return i(s,c.signal),()=>{c.abort()}},[e,n,s,i])}function si(t,e){const n=g.useRef(null),r=g.useRef(null);return g.useCallback(o=>{if(t!==void 0){if(n.current!==null){const s=n.current,i=r.current,c=e.context.triggerElements.getById(s);i&&c===i&&e.context.triggerElements.delete(s),n.current=null,r.current=null}o!==null&&(n.current=t,r.current=o,e.context.triggerElements.add(t,o))}},[e,t])}function ii(t,e,n,r){const o=n.useState("isMountedByTrigger",t),s=si(t,n),i=$(c=>{if(s(c),!c||!n.select("open"))return;const l=n.select("activeTriggerId");if(l===t){n.update({activeTriggerElement:c,...r});return}l==null&&n.update({activeTriggerId:t,activeTriggerElement:c,...r})});return X(()=>{o&&n.update({activeTriggerElement:e.current,...r})},[o,n,e,...Object.values(r)]),{registerTrigger:i,isMountedByThisTrigger:o}}function ci(t){const e=t.useState("open");X(()=>{if(e&&!t.select("activeTriggerId")&&t.context.triggerElements.size===1){const n=t.context.triggerElements.entries().next();if(!n.done){const[r,o]=n.value;t.update({activeTriggerId:r,activeTriggerElement:o})}}},[e,t])}function ai(t,e,n){const{mounted:r,setMounted:o,transitionStatus:s}=ei(t);e.useSyncedValues({mounted:r,transitionStatus:s});const i=$(()=>{o(!1),e.update({activeTriggerId:null,activeTriggerElement:null,mounted:!1}),n?.(),e.context.onOpenChangeComplete?.(!1)}),c=e.useState("preventUnmountingOnClose");return Er({enabled:!c,open:t,ref:e.context.popupRef,onComplete(){t||i()}}),{forceUnmount:i,transitionStatus:s}}class cn{constructor(){this.elements=new Set,this.idMap=new Map}add(e,n){const r=this.idMap.get(e);r!==n&&(r!==void 0&&this.elements.delete(r),this.elements.add(n),this.idMap.set(e,n))}delete(e){const n=this.idMap.get(e);n&&(this.elements.delete(n),this.idMap.delete(e))}hasElement(e){return this.elements.has(e)}hasMatchingElement(e){for(const n of this.elements)if(e(n))return!0;return!1}getById(e){return this.idMap.get(e)}entries(){return this.idMap.entries()}get size(){return this.idMap.size}}function li(){return new sn({open:!1,floatingElement:null,referenceElement:null,triggerElements:new cn,floatingId:"",nested:!1,noEmit:!1,onOpenChange:void 0})}function ui(){return{open:!1,mounted:!1,transitionStatus:"idle",floatingRootContext:li(),preventUnmountingOnClose:!1,payload:void 0,activeTriggerId:null,activeTriggerElement:null,popupElement:null,positionerElement:null,activeTriggerProps:Je,inactiveTriggerProps:Je,popupProps:Je}}const fi={open:q(t=>t.open),mounted:q(t=>t.mounted),transitionStatus:q(t=>t.transitionStatus),floatingRootContext:q(t=>t.floatingRootContext),preventUnmountingOnClose:q(t=>t.preventUnmountingOnClose),payload:q(t=>t.payload),activeTriggerId:q(t=>t.activeTriggerId),activeTriggerElement:q(t=>t.mounted?t.activeTriggerElement:null),isTriggerActive:q((t,e)=>e!==void 0&&t.activeTriggerId===e),isOpenedByTrigger:q((t,e)=>e!==void 0&&t.activeTriggerId===e&&t.open),isMountedByTrigger:q((t,e)=>e!==void 0&&t.activeTriggerId===e&&t.mounted),triggerProps:q((t,e)=>e?t.activeTriggerProps:t.inactiveTriggerProps),popupProps:q(t=>t.popupProps),popupElement:q(t=>t.popupElement),positionerElement:q(t=>t.positionerElement)};function di(t){const{open:e=!1,onOpenChange:n,elements:r={}}=t,o=Lt(),s=st()!=null,i=Fe(()=>new sn({open:e,onOpenChange:n,referenceElement:r.reference??null,floatingElement:r.floating??null,triggerElements:r.triggers??new cn,floatingId:o,nested:s,noEmit:t.noEmit||!1})).current;return X(()=>{const c={open:e,floatingId:o};r.reference!==void 0&&(c.referenceElement=r.reference,c.domReferenceElement=z(r.reference)?r.reference:null),r.floating!==void 0&&(c.floatingElement=r.floating),i.update(c)},[e,o,r.reference,r.floating,i]),i.context.onOpenChange=n,i.context.nested=s,i.context.noEmit=t.noEmit||!1,i}function gi(t={}){const{nodeId:e,externalTree:n}=t,r=di(t),o=t.rootContext||r,s={reference:o.useState("referenceElement"),floating:o.useState("floatingElement"),domReference:o.useState("domReferenceElement")},[i,c]=g.useState(null),l=g.useRef(null),a=it(n);X(()=>{s.domReference&&(l.current=s.domReference)},[s.domReference]);const u=Rs({...t,elements:{...s,...i&&{reference:i}}}),f=g.useCallback(O=>{const P=z(O)?{getBoundingClientRect:()=>O.getBoundingClientRect(),getClientRects:()=>O.getClientRects(),contextElement:O}:O;c(P),u.refs.setReference(P)},[u.refs]),[m,d]=g.useState(null),[p,h]=g.useState(null);o.useSyncedValue("referenceElement",m),o.useSyncedValue("domReferenceElement",z(m)?m:null),o.useSyncedValue("floatingElement",p);const E=g.useCallback(O=>{(z(O)||O===null)&&(l.current=O,d(O)),(z(u.refs.reference.current)||u.refs.reference.current===null||O!==null&&!z(O))&&u.refs.setReference(O)},[u.refs,d]),v=g.useCallback(O=>{h(O),u.refs.setFloating(O)},[u.refs]),y=g.useMemo(()=>({...u.refs,setReference:E,setFloating:v,setPositionReference:f,domReference:l}),[u.refs,E,v,f]),T=g.useMemo(()=>({...u.elements,domReference:s.domReference}),[u.elements,s.domReference]),R=o.useState("open"),C=o.useState("floatingId"),w=g.useMemo(()=>({...u,dataRef:o.context.dataRef,open:R,onOpenChange:o.setOpen,events:o.context.events,floatingId:C,refs:y,elements:T,nodeId:e,rootStore:o}),[u,y,T,e,o,R,C]);return X(()=>{o.context.dataRef.current.floatingContext=w;const O=a?.nodesRef.current.find(P=>P.id===e);O&&(O.context=w)}),g.useMemo(()=>({...u,context:w,refs:y,elements:T,rootStore:o}),[u,y,T,w,o])}function pi(t){const{popupStore:e,noEmit:n=!1,treatPopupAsFloatingElement:r=!1,onOpenChange:o}=t,s=Lt(),i=st()!=null,c=e.useState("open"),l=e.useState("activeTriggerElement"),a=e.useState(r?"popupElement":"positionerElement"),u=e.context.triggerElements,f=Fe(()=>new sn({open:c,referenceElement:l,floatingElement:a,triggerElements:u,onOpenChange:o,floatingId:s,nested:i,noEmit:n})).current;return X(()=>{const m={open:c,floatingId:s,referenceElement:l,floatingElement:a};z(l)&&(m.domReferenceElement=l),f.state.positionReference===f.state.referenceElement&&(m.positionReference=l),f.update(m)},[c,s,l,a,f]),f.context.onOpenChange=o,f.context.nested=i,f.context.noEmit=n,f}const Wt=Qr&&Hn;function mi(t,e={}){const n="rootStore"in t?t.rootStore:t,{events:r,dataRef:o}=n.context,{enabled:s=!0,visibleOnly:i=!0,delay:c}=e,l=g.useRef(!1),a=g.useRef(null),u=_e(),f=g.useRef(!0);g.useEffect(()=>{const d=n.select("domReferenceElement");if(!s)return;const p=xe(d);function h(){const y=n.select("domReferenceElement");!n.select("open")&&we(y)&&y===Yt(he(y))&&(l.current=!0)}function E(){f.current=!0}function v(){f.current=!1}return p.addEventListener("blur",h),Wt&&(p.addEventListener("keydown",E,!0),p.addEventListener("pointerdown",v,!0)),()=>{p.removeEventListener("blur",h),Wt&&(p.removeEventListener("keydown",E,!0),p.removeEventListener("pointerdown",v,!0))}},[n,s]),g.useEffect(()=>{if(!s)return;function d(p){if(p.reason===wt||p.reason===tn){const h=n.select("domReferenceElement");z(h)&&(a.current=h,l.current=!0)}}return r.on("openchange",d),()=>{r.off("openchange",d)}},[r,s,n]);const m=g.useMemo(()=>({onMouseLeave(){l.current=!1,a.current=null},onFocus(d){const p=d.currentTarget;if(l.current){if(a.current===p)return;l.current=!1,a.current=null}const h=ye(d.nativeEvent);if(i&&z(h)){if(Wt&&!d.relatedTarget){if(!f.current&&!Kr(h))return}else if(!Gr(h))return}const E=d.relatedTarget&&n.context.triggerElements.hasElement(d.relatedTarget),{nativeEvent:v,currentTarget:y}=d,T=typeof c=="function"?c():c;if(n.select("open")&&E||T===0||T===void 0){n.setOpen(!0,te(vt,v,y));return}u.start(T,()=>{l.current||n.setOpen(!0,te(vt,v,y))})},onBlur(d){l.current=!1,a.current=null;const p=d.relatedTarget,h=d.nativeEvent,E=z(p)&&p.hasAttribute(Ft("focus-guard"))&&p.getAttribute("data-type")==="outside";u.start(0,()=>{const v=n.select("domReferenceElement"),y=Yt(v?v.ownerDocument:document);if(!p&&y===v||se(o.current.floatingContext?.refs.floating.current,y)||se(v,y)||E)return;const T=p??y;if(z(T)){const R=n.context.triggerElements;if(R.hasElement(T)||R.hasMatchingElement(C=>se(C,T)))return}n.setOpen(!1,te(vt,h))})}}),[o,n,i,u,c]);return g.useMemo(()=>s?{reference:m,trigger:m}:{},[s,m])}const qt=Ft("safe-polygon"),hi=`button,a,[role="button"],select,[tabindex]:not([tabindex="-1"]),${Jr}`;function vi(t){return t?!!t.closest(hi):!1}function xr(t){const e=g.useRef(void 0),n=g.useRef(!1),r=g.useRef(void 0),o=g.useRef(!0),s=g.useRef(!1),i=g.useRef(()=>{}),c=g.useRef(!1),l=_e(),a=_e(),u=g.useRef(void 0);return g.useMemo(()=>{const f=t.context.dataRef.current;return f.hoverInteractionState||(f.hoverInteractionState={pointerTypeRef:e,interactedInsideRef:n,handlerRef:r,blockMouseMoveRef:o,performedPointerEventsMutationRef:s,unbindMouseMoveRef:i,restTimeoutPendingRef:c,openChangeTimeout:l,restTimeout:a,handleCloseOptionsRef:u}),f.hoverInteractionState},[t,e,n,r,o,s,i,c,l,a,u])}const yi=new Set(["click","mousedown"]);function bi(t,e={}){const n="rootStore"in t?t.rootStore:t,r=n.useState("open"),o=n.useState("floatingElement"),s=n.useState("domReferenceElement"),{dataRef:i}=n.context,{enabled:c=!0,closeDelay:l=0,externalTree:a}=e,{pointerTypeRef:u,interactedInsideRef:f,handlerRef:m,performedPointerEventsMutationRef:d,unbindMouseMoveRef:p,restTimeoutPendingRef:h,openChangeTimeout:E,handleCloseOptionsRef:v}=xr(n),y=it(a),T=st(),R=$(()=>f.current?!0:i.current.openEvent?yi.has(i.current.openEvent.type):!1),C=$(()=>{const M=i.current.openEvent?.type;return M?.includes("mouse")&&M!=="mousedown"}),w=g.useCallback((M,N=!0)=>{const I=Ei(l,u.current);I&&!m.current?E.start(I,()=>n.setOpen(!1,te(be,M))):N&&(E.clear(),n.setOpen(!1,te(be,M)))},[l,m,n,u,E]),O=$(()=>{p.current(),m.current=void 0}),P=$(()=>{if(d.current){const M=he(o).body;M.style.pointerEvents="",M.removeAttribute(qt),d.current=!1}}),H=$(M=>{const N=ye(M);if(!vi(N)){f.current=!1;return}f.current=!0});X(()=>{r||(u.current=void 0,h.current=!1,f.current=!1,O(),P())},[r,u,h,f,O,P]),g.useEffect(()=>()=>{O()},[O]),g.useEffect(()=>P,[P]),X(()=>{if(c&&r&&v.current?.blockPointerEvents&&C()&&z(s)&&o){d.current=!0;const M=he(o).body;M.setAttribute(qt,"");const N=s,I=o,b=y?.nodesRef.current.find(D=>D.id===T)?.context?.elements.floating;return b&&(b.style.pointerEvents=""),M.style.pointerEvents="none",N.style.pointerEvents="auto",I.style.pointerEvents="auto",()=>{M.style.pointerEvents="",N.style.pointerEvents="",I.style.pointerEvents=""}}},[c,r,s,o,v,C,y,T,d]),g.useEffect(()=>{if(!c)return;function M(D){if(R()||!i.current.floatingContext||!n.select("open"))return;const k=n.context.triggerElements;D.relatedTarget&&k.hasElement(D.relatedTarget)||(P(),O(),R()||w(D))}function N(D){E.clear(),P(),m.current?.(D),O()}function I(D){R()||w(D,!1)}const b=o;return b&&(b.addEventListener("mouseleave",M),b.addEventListener("mouseenter",N),b.addEventListener("mouseleave",I),b.addEventListener("pointerdown",H,!0)),()=>{b&&(b.removeEventListener("mouseleave",M),b.removeEventListener("mouseenter",N),b.removeEventListener("mouseleave",I),b.removeEventListener("pointerdown",H,!0))}})}function Ei(t,e){return e&&!tt(e)?0:typeof t=="function"?t():t}function _t(t){return typeof t=="function"?t():t}const xi={current:null};function Ri(t,e={}){const n="rootStore"in t?t.rootStore:t,{dataRef:r,events:o}=n.context,{enabled:s=!0,delay:i=0,handleClose:c=null,mouseOnly:l=!1,restMs:a=0,move:u=!0,triggerElementRef:f=xi,externalTree:m,isActiveTrigger:d=!0}=e,p=it(m),{pointerTypeRef:h,interactedInsideRef:E,handlerRef:v,blockMouseMoveRef:y,performedPointerEventsMutationRef:T,unbindMouseMoveRef:R,restTimeoutPendingRef:C,openChangeTimeout:w,restTimeout:O,handleCloseOptionsRef:P}=xr(n),H=je(c),M=je(i),N=je(a);d&&(P.current=H.current?.__options);const I=$(()=>E.current?!0:r.current.openEvent?["click","mousedown"].includes(r.current.openEvent.type):!1),b=g.useCallback((A,x=!0)=>{const L=yt(M.current,"close",h.current);L&&!v.current?w.start(L,()=>n.setOpen(!1,te(be,A))):x&&(w.clear(),n.setOpen(!1,te(be,A)))},[M,v,n,h,w]),D=$(()=>{R.current(),v.current=void 0}),k=$(()=>{if(T.current){const A=he(n.select("domReferenceElement")).body;A.style.pointerEvents="",A.removeAttribute(qt),T.current=!1}});g.useEffect(()=>{if(!s)return;function A(x){x.open||(w.clear(),O.clear(),y.current=!0,C.current=!1)}return o.on("openchange",A),()=>{o.off("openchange",A)}},[s,o,w,O,y,C]);const V=$(A=>{if(I()||!r.current.floatingContext)return;const x=n.context.triggerElements;if(A.relatedTarget&&x.hasElement(A.relatedTarget))return;const L=f.current;H.current?.({...r.current.floatingContext,tree:p,x:A.clientX,y:A.clientY,onClose(){k(),D(),!I()&&L===n.select("domReferenceElement")&&b(A)}})(A)});return g.useEffect(()=>{if(!s)return;const A=f.current??(d?n.select("domReferenceElement"):null);if(!z(A))return;function x(W){if(w.clear(),y.current=!1,l&&!tt(h.current)||_t(N.current)>0&&!yt(M.current,"open"))return;const ne=yt(M.current,"open",h.current),K=n.select("domReferenceElement"),G=n.context.triggerElements,Z=(G.hasElement(W.target)||G.hasMatchingElement(ae=>se(ae,W.target)))&&(!K||!se(K,W.target)),B=W.currentTarget??null,Y=n.select("open"),ce=!Y||Z;Z&&Y?n.setOpen(!0,te(be,W,B)):ne?w.start(ne,()=>{ce&&n.setOpen(!0,te(be,W,B))}):ce&&n.setOpen(!0,te(be,W,B))}function L(W){if(I()){k();return}R.current();const ne=n.select("domReferenceElement"),K=he(ne);O.clear(),C.current=!1;const G=n.context.triggerElements;if(W.relatedTarget&&G.hasElement(W.relatedTarget))return;if(H.current&&r.current.floatingContext){n.select("open")||w.clear();const B=f.current;v.current=H.current({...r.current.floatingContext,tree:p,x:W.clientX,y:W.clientY,onClose(){k(),D(),!I()&&B===n.select("domReferenceElement")&&b(W,!0)}});const Y=v.current;Y(W),K.addEventListener("mousemove",Y),R.current=()=>{K.removeEventListener("mousemove",Y)};return}(h.current!=="touch"||!se(n.select("floatingElement"),W.relatedTarget))&&b(W)}function U(W){V(W)}return n.select("open")&&A.addEventListener("mouseleave",U),u&&A.addEventListener("mousemove",x,{once:!0}),A.addEventListener("mouseenter",x),A.addEventListener("mouseleave",L),()=>{A.removeEventListener("mouseleave",U),u&&A.removeEventListener("mousemove",x),A.removeEventListener("mouseenter",x),A.removeEventListener("mouseleave",L)}},[D,k,y,r,M,b,n,s,H,V,d,I,l,u,h,N,O,C,w,f,p,R,v]),g.useMemo(()=>{function A(x){h.current=x.pointerType}return{onPointerDown:A,onPointerEnter:A,onMouseMove(x){const{nativeEvent:L}=x,U=x.currentTarget,W=n.select("domReferenceElement"),ne=n.context.triggerElements,K=n.select("open"),G=(ne.hasElement(x.target)||ne.hasMatchingElement(B=>se(B,x.target)))&&(!W||!se(W,x.target));if(l&&!tt(h.current)||K&&!G||_t(N.current)===0||!G&&C.current&&x.movementX**2+x.movementY**2<2)return;O.clear();function Z(){if(C.current=!1,I())return;const B=n.select("open");!y.current&&(!B||G)&&n.setOpen(!0,te(be,L,U))}h.current==="touch"?De.flushSync(()=>{Z()}):G&&K?Z():(C.current=!0,O.start(_t(N.current),Z))}}},[y,I,l,n,h,N,O,C])}function wi(t=[]){const e=t.map(a=>a?.reference),n=t.map(a=>a?.floating),r=t.map(a=>a?.item),o=t.map(a=>a?.trigger),s=g.useCallback(a=>ht(a,t,"reference"),e),i=g.useCallback(a=>ht(a,t,"floating"),n),c=g.useCallback(a=>ht(a,t,"item"),r),l=g.useCallback(a=>ht(a,t,"trigger"),o);return g.useMemo(()=>({getReferenceProps:s,getFloatingProps:i,getItemProps:c,getTriggerProps:l}),[s,i,c,l])}function ht(t,e,n){const r=new Map,o=n==="item",s={};n==="floating"&&(s.tabIndex=-1,s[Zr]="");for(const i in t)o&&t&&(i===_n||i===Yn)||(s[i]=t[i]);for(let i=0;i<e.length;i+=1){let c;const l=e[i]?.[n];typeof l=="function"?c=t?l(t):null:c=l,c&&Ln(s,c,o,r)}return Ln(s,t,o,r),s}function Ln(t,e,n,r){for(const o in e){const s=e[o];n&&(o===_n||o===Yn)||(o.startsWith("on")?(r.has(o)||r.set(o,[]),typeof s=="function"&&(r.get(o)?.push(s),t[o]=(...i)=>r.get(o)?.map(c=>c(...i)).find(c=>c!==void 0))):t[o]=s)}}function kn(t,e){const[n,r]=t;let o=!1;const s=e.length;for(let i=0,c=s-1;i<s;c=i++){const[l,a]=e[i]||[0,0],[u,f]=e[c]||[0,0];a>=r!=f>=r&&n<=(u-l)*(r-a)/(f-a)+l&&(o=!o)}return o}function Si(t,e){return t[0]>=e.x&&t[0]<=e.x+e.width&&t[1]>=e.y&&t[1]<=e.y+e.height}function Ti(t={}){const{buffer:e=.5,blockPointerEvents:n=!1,requireIntent:r=!0}=t,o=new ze;let s=!1,i=null,c=null,l=typeof performance<"u"?performance.now():0;function a(f,m){const d=performance.now(),p=d-l;if(i===null||c===null||p===0)return i=f,c=m,l=d,null;const h=f-i,E=m-c,y=Math.sqrt(h*h+E*E)/p;return i=f,c=m,l=d,y}const u=({x:f,y:m,placement:d,elements:p,onClose:h,nodeId:E,tree:v})=>function(T){function R(){o.clear(),h()}if(o.clear(),!p.domReference||!p.floating||d==null||f==null||m==null)return;const{clientX:C,clientY:w}=T,O=[C,w],P=ye(T),H=T.type==="mouseleave",M=se(p.floating,P),N=se(p.domReference,P),I=p.domReference.getBoundingClientRect(),b=p.floating.getBoundingClientRect(),D=d.split("-")[0],k=f>b.right-b.width/2,V=m>b.bottom-b.height/2,A=Si(O,I),x=b.width>I.width,L=b.height>I.height,U=(x?I:b).left,W=(x?I:b).right,ne=(L?I:b).top,K=(L?I:b).bottom;if(M&&(s=!0,!H))return;if(N&&(s=!1),N&&!H){s=!0;return}if(H&&z(T.relatedTarget)&&se(p.floating,T.relatedTarget)||v&&Ze(v.nodesRef.current,E).some(({context:B})=>B?.open))return;if(D==="top"&&m>=I.bottom-1||D==="bottom"&&m<=I.top+1||D==="left"&&f>=I.right-1||D==="right"&&f<=I.left+1)return R();let G=[];switch(D){case"top":G=[[U,I.top+1],[U,b.bottom-1],[W,b.bottom-1],[W,I.top+1]];break;case"bottom":G=[[U,b.top+1],[U,I.bottom-1],[W,I.bottom-1],[W,b.top+1]];break;case"left":G=[[b.right-1,K],[b.right-1,ne],[I.left+1,ne],[I.left+1,K]];break;case"right":G=[[I.right-1,K],[I.right-1,ne],[b.left+1,ne],[b.left+1,K]];break}function Z([B,Y]){switch(D){case"top":{const ce=[x?B+e/2:k?B+e*4:B-e*4,Y+e+1],ae=[x?B-e/2:k?B+e*4:B-e*4,Y+e+1],le=[[b.left,k||x?b.bottom-e:b.top],[b.right,k?x?b.bottom-e:b.top:b.bottom-e]];return[ce,ae,...le]}case"bottom":{const ce=[x?B+e/2:k?B+e*4:B-e*4,Y-e],ae=[x?B-e/2:k?B+e*4:B-e*4,Y-e],le=[[b.left,k||x?b.top+e:b.bottom],[b.right,k?x?b.top+e:b.bottom:b.top+e]];return[ce,ae,...le]}case"left":{const ce=[B+e+1,L?Y+e/2:V?Y+e*4:Y-e*4],ae=[B+e+1,L?Y-e/2:V?Y+e*4:Y-e*4];return[...[[V||L?b.right-e:b.left,b.top],[V?L?b.right-e:b.left:b.right-e,b.bottom]],ce,ae]}case"right":{const ce=[B-e,L?Y+e/2:V?Y+e*4:Y-e*4],ae=[B-e,L?Y-e/2:V?Y+e*4:Y-e*4],le=[[V||L?b.left+e:b.right,b.top],[V?L?b.left+e:b.right:b.left+e,b.bottom]];return[ce,ae,...le]}default:return[]}}if(!kn([C,w],G)){if(s&&!A)return R();if(!H&&r){const B=a(T.clientX,T.clientY);if(B!==null&&B<.1)return R()}kn([C,w],Z([f,m]))?!s&&r&&o.start(40,R):R()}};return u.__options={blockPointerEvents:n},u}const Ci={...fi,disabled:q(t=>t.disabled),instantType:q(t=>t.instantType),isInstantPhase:q(t=>t.isInstantPhase),trackCursorAxis:q(t=>t.trackCursorAxis),disableHoverablePopup:q(t=>t.disableHoverablePopup),lastOpenChangeReason:q(t=>t.openChangeReason),closeDelay:q(t=>t.closeDelay),hasViewport:q(t=>t.hasViewport)};class an extends br{constructor(e){super({...Oi(),...e},{popupRef:g.createRef(),onOpenChange:void 0,onOpenChangeComplete:void 0,triggerElements:new cn},Ci)}setOpen=(e,n)=>{const r=n.reason,o=r===be,s=e&&r===vt,i=!e&&(r===wt||r===tn);if(n.preventUnmountOnClose=()=>{this.set("preventUnmountingOnClose",!0)},this.context.onOpenChange?.(e,n),n.isCanceled)return;const c=()=>{const l={open:e,openChangeReason:r};s?l.instantType="focus":i?l.instantType="dismiss":r===be&&(l.instantType=void 0);const a=n.trigger?.id??null;(a||e)&&(l.activeTriggerId=a,l.activeTriggerElement=n.trigger??null),this.update(l)};o?De.flushSync(c):c()};static useStore(e,n){const r=Fe(()=>new an(n)).current,o=e??r,s=pi({popupStore:o,onOpenChange:o.setOpen});return o.state.floatingRootContext=s,o}}function Oi(){return{...ui(),disabled:!1,instantType:void 0,isInstantPhase:!1,trackCursorAxis:"none",disableHoverablePopup:!1,openChangeReason:null,closeDelay:0,hasViewport:!1}}function Pi(t){const{disabled:e=!1,defaultOpen:n=!1,open:r,disableHoverablePopup:o=!1,trackCursorAxis:s="none",actionsRef:i,onOpenChange:c,onOpenChangeComplete:l,handle:a,triggerId:u,defaultTriggerId:f=null,children:m}=t,d=an.useStore(a?.store,{open:r??n,activeTriggerId:u!==void 0?u:f});d.useControlledProp("open",r,n),d.useControlledProp("activeTriggerId",u,f),d.useContextCallback("onOpenChange",c),d.useContextCallback("onOpenChangeComplete",l);const p=d.useState("open"),h=!e&&p,E=d.useState("activeTriggerId"),v=d.useState("payload");d.useSyncedValues({trackCursorAxis:s,disableHoverablePopup:o}),X(()=>{p&&e&&d.setOpen(!1,te(io))},[p,e,d]),d.useSyncedValue("disabled",e),ci(d);const{forceUnmount:y,transitionStatus:T}=ai(h,d),R=d.useState("isInstantPhase"),C=d.useState("instantType"),w=d.useState("lastOpenChangeReason"),O=g.useRef(null);X(()=>{T==="ending"&&w===Gt||T!=="ending"&&R?(C!=="delay"&&(O.current=C),d.set("instantType","delay")):O.current!==null&&(d.set("instantType",O.current),O.current=null)},[T,R,w,C,d]),X(()=>{h&&E==null&&d.set("payload",void 0)},[d,E,h]);const P=g.useCallback(()=>{d.setOpen(!1,Ii(d,co))},[d]);g.useImperativeHandle(i,()=>({unmount:y,close:P}),[y,P]);const H=d.useState("floatingRootContext"),M=mi(H,{enabled:!e}),N=Ms(H,{enabled:!e,referencePress:!0}),I=$o(H,{enabled:!e&&s!=="none",axis:s==="none"?void 0:s}),{getReferenceProps:b,getFloatingProps:D,getTriggerProps:k}=wi([M,N,I]),V=g.useMemo(()=>b(),[b]),A=g.useMemo(()=>k(),[k]),x=g.useMemo(()=>D(),[D]);return d.useSyncedValues({activeTriggerProps:V,inactiveTriggerProps:A,popupProps:x}),Q.jsx(qn.Provider,{value:d,children:typeof m=="function"?m({payload:v}):m})}function Ii(t,e){const n=te(e);return n.preventUnmountOnClose=()=>{t.set("preventUnmountingOnClose",!0)},n}let ln=(function(t){return t.open="data-open",t.closed="data-closed",t[t.startingStyle=rt.startingStyle]="startingStyle",t[t.endingStyle=rt.endingStyle]="endingStyle",t.anchorHidden="data-anchor-hidden",t})({}),Kt=(function(t){return t.popupOpen="data-popup-open",t.pressed="data-pressed",t})({});const Ai={[Kt.popupOpen]:""},Mi={[Kt.popupOpen]:"",[Kt.pressed]:""},Li={[ln.open]:""},ki={[ln.closed]:""},Di={[ln.anchorHidden]:""},Fi={open(t){return t?Ai:null}},yc={open(t){return t?Mi:null}},Rr={open(t){return t?Li:ki},anchorHidden(t){return t?Di:null}},wr=g.createContext(void 0);function Ni(){return g.useContext(wr)}const Vi=600,Hi=g.forwardRef(function(e,n){const{className:r,render:o,handle:s,payload:i,disabled:c,delay:l,closeDelay:a,id:u,...f}=e,m=Dt(!0),d=s?.store??m;if(!d)throw new Error(ot(82));const p=ao(u),h=d.useState("isTriggerActive",p),E=d.useState("isOpenedByTrigger",p),v=d.useState("floatingRootContext"),y=g.useRef(null),T=l??Vi,R=a??0,{registerTrigger:C,isMountedByThisTrigger:w}=ii(p,y,d,{payload:i,closeDelay:R}),O=Ni(),{delayRef:P,isInstantPhase:H,hasProvider:M}=Do(v,{open:E});d.useSyncedValue("isInstantPhase",H);const N=d.useState("disabled"),I=c??N,b=d.useState("trackCursorAxis"),D=d.useState("disableHoverablePopup"),k=Ri(v,{enabled:!I,mouseOnly:!0,move:!1,handleClose:!D&&b!=="both"?Ti():null,restMs(){const L=O?.delay,U=typeof P.current=="object"?P.current.open:void 0;let W=T;return M&&(U!==0?W=l??L??T:W=0),W},delay(){const L=typeof P.current=="object"?P.current.close:void 0;let U=R;return a==null&&M&&(U=L),{close:U}},triggerElementRef:y,isActiveTrigger:h}),V=g.useMemo(()=>({open:E}),[E]),A=d.useState("triggerProps",w);return Mt("button",e,{state:V,ref:[n,C,y],props:[k,A,{id:p},f],stateAttributesMapping:Fi})}),Sr=g.createContext(void 0);function Bi(){const t=g.useContext(Sr);if(t===void 0)throw new Error(ot(70));return t}const ji=g.forwardRef(function(e,n){const{children:r,container:o,className:s,render:i,...c}=e,{portalNode:l,portalSubtree:a}=ar({container:o,ref:n,componentProps:e,elementProps:c});return!a&&!l?null:Q.jsxs(g.Fragment,{children:[a,l&&De.createPortal(r,l)]})}),$i=g.forwardRef(function(e,n){const{keepMounted:r=!1,...o}=e;return Dt().useState("mounted")||r?Q.jsx(Sr.Provider,{value:r,children:Q.jsx(ji,{ref:n,...o})}):null}),Tr=g.createContext(void 0);function Wi(){const t=g.useContext(Tr);if(t===void 0)throw new Error(ot(71));return t}const _i=t=>({name:"arrow",options:t,async fn(e){const{x:n,y:r,placement:o,rects:s,platform:i,elements:c,middlewareData:l}=e,{element:a,padding:u=0,offsetParent:f="real"}=Ce(t,e)||{};if(a==null)return{};const m=jn(u),d={x:n,y:r},p=Bn(o),h=$n(p),E=await i.getDimensions(a),v=p==="y",y=v?"top":"left",T=v?"bottom":"right",R=v?"clientHeight":"clientWidth",C=s.reference[h]+s.reference[p]-d[p]-s.floating[h],w=d[p]-s.reference[p],O=f==="real"?await i.getOffsetParent?.(a):c.floating;let P=c.floating[R]||s.floating[h];(!P||!await i.isElement?.(O))&&(P=c.floating[R]||s.floating[h]);const H=C/2-w/2,M=P/2-E[h]/2-1,N=Math.min(m[y],M),I=Math.min(m[T],M),b=N,D=P-E[h]-I,k=P/2-E[h]/2+H,V=Ut(b,k,D),A=!l.arrow&&Ue(o)!=null&&k!==V&&s.reference[h]/2-(k<b?N:I)-E[h]/2<0,x=A?k<b?k-b:k-D:0;return{[p]:d[p]+x,data:{[p]:V,centerOffset:k-V-x,...A&&{alignmentOffset:x}},reset:A}}}),Yi=(t,e)=>({..._i(t),options:[t,e]}),Ui={name:"hide",async fn(t){const{width:e,height:n,x:r,y:o}=t.rects.reference,s=e===0&&n===0&&r===0&&o===0;return{data:{referenceHidden:(await Ps().fn(t)).data?.referenceHidden||s}}}},Et={sideX:"left",sideY:"top"},zi={name:"adaptiveOrigin",async fn(t){const{x:e,y:n,rects:{floating:r},elements:{floating:o},platform:s,strategy:i,placement:c}=t,l=xe(o),a=l.getComputedStyle(o);if(!(a.transitionDuration!=="0s"&&a.transitionDuration!==""))return{x:e,y:n,data:Et};const f=await s.getOffsetParent?.(o);let m={width:0,height:0};if(i==="fixed"&&l?.visualViewport)m={width:l.visualViewport.width,height:l.visualViewport.height};else if(f===l){const y=Un(o);m={width:y.documentElement.clientWidth,height:y.documentElement.clientHeight}}else await s.isElement?.(f)&&(m=await s.getDimensions(f));const d=ge(c);let p=e,h=n;d==="left"&&(p=m.width-(e+r.width)),d==="top"&&(h=m.height-(n+r.height));const E=d==="left"?"right":Et.sideX,v=d==="top"?"bottom":Et.sideY;return{x:p,y:h,data:{sideX:E,sideY:v}}}};function Cr(t,e,n){const r=t==="inline-start"||t==="inline-end";return{top:"top",right:r?n?"inline-start":"inline-end":"right",bottom:"bottom",left:r?n?"inline-end":"inline-start":"left"}[e]}function Dn(t,e,n){const{rects:r,placement:o}=t;return{side:Cr(e,ge(o),n),align:Ue(o)||"center",anchor:{width:r.reference.width,height:r.reference.height},positioner:{width:r.floating.width,height:r.floating.height}}}function Xi(t){const{anchor:e,positionMethod:n="absolute",side:r="bottom",sideOffset:o=0,align:s="center",alignOffset:i=0,collisionBoundary:c,collisionPadding:l=5,sticky:a=!1,arrowPadding:u=5,disableAnchorTracking:f=!1,keepMounted:m=!1,floatingRootContext:d,mounted:p,collisionAvoidance:h,shiftCrossAxis:E=!1,nodeId:v,adaptiveOrigin:y,lazyFlip:T=!1,externalTree:R}=t,[C,w]=g.useState(null);!p&&C!==null&&w(null);const O=h.side||"flip",P=h.align||"flip",H=h.fallbackAxisSide||"end",M=typeof e=="function"?e:void 0,N=$(M),I=M?N:e,b=je(e),k=eo()==="rtl",V=C||{top:"top",right:"right",bottom:"bottom",left:"left","inline-end":k?"left":"right","inline-start":k?"right":"left"}[r],A=s==="center"?V:`${V}-${s}`;let x=l;const L=1,U=r==="bottom"?L:0,W=r==="top"?L:0,ne=r==="right"?L:0,K=r==="left"?L:0;typeof x=="number"?x={top:x+U,right:x+K,bottom:x+W,left:x+ne}:x&&(x={top:(x.top||0)+U,right:(x.right||0)+K,bottom:(x.bottom||0)+W,left:(x.left||0)+ne});const G={boundary:c==="clipping-ancestors"?"clippingAncestors":c,padding:x},Z=g.useRef(null),B=je(o),Y=je(i),le=[ws(ee=>{const ue=Dn(ee,r,k),ve=typeof B.current=="function"?B.current(ue):B.current,fe=typeof Y.current=="function"?Y.current(ue):Y.current;return{mainAxis:ve,crossAxis:fe,alignmentAxis:fe}},[typeof o!="function"?o:0,typeof i!="function"?i:0,k,r])],Xe=P==="none"&&O!=="shift",S=!Xe&&(a||E||O==="shift"),_=O==="none"?null:Cs({...G,padding:{top:x.top+L,right:x.right+L,bottom:x.bottom+L,left:x.left+L},mainAxis:!E&&O==="flip",crossAxis:P==="flip"?"alignment":!1,fallbackAxisSideDirection:H}),F=Xe?null:Ss(ee=>{const ue=Un(ee.elements.floating).documentElement;return{...G,rootBoundary:E?{x:0,y:0,width:ue.clientWidth,height:ue.clientHeight}:void 0,mainAxis:P!=="none",crossAxis:S,limiter:a||E?void 0:Ts(ve=>{if(!Z.current)return{};const{width:fe,height:Ve}=Z.current.getBoundingClientRect(),He=me(ge(ve.placement)),ft=He==="y"?fe:Ve,Vt=He==="y"?x.left+x.right:x.top+x.bottom;return{offset:ft/2+Vt/2}})}},[G,a,E,x,P]);O==="shift"||P==="shift"||s==="center"?le.push(F,_):le.push(_,F),le.push(Os({...G,apply({elements:{floating:ee},rects:{reference:ue},availableWidth:ve,availableHeight:fe}){Object.entries({"--available-width":`${ve}px`,"--available-height":`${fe}px`,"--anchor-width":`${ue.width}px`,"--anchor-height":`${ue.height}px`}).forEach(([Ve,He])=>{ee.style.setProperty(Ve,He)})}}),Yi(()=>({element:Z.current||document.createElement("div"),padding:u,offsetParent:"floating"}),[u]),{name:"transformOrigin",fn(ee){const{elements:ue,middlewareData:ve,placement:fe,rects:Ve,y:He}=ee,ft=ge(fe),Vt=me(ft),mn=Z.current,Pr=ve.arrow?.x||0,Ir=ve.arrow?.y||0,Ar=mn?.clientWidth||0,Mr=mn?.clientHeight||0,Ht=Pr+Ar/2,hn=Ir+Mr/2,Lr=Math.abs(ve.shift?.y||0),kr=Ve.reference.height/2,Ge=typeof o=="function"?o(Dn(ee,r,k)):o,Dr=Lr>Ge,Fr={top:`${Ht}px calc(100% + ${Ge}px)`,bottom:`${Ht}px ${-Ge}px`,left:`calc(100% + ${Ge}px) ${hn}px`,right:`${-Ge}px ${hn}px`}[ft],Nr=`${Ht}px ${Ve.reference.y+kr-He}px`;return ue.floating.style.setProperty("--transform-origin",S&&Vt==="y"&&Dr?Nr:Fr),{}}},Ui,y),X(()=>{!p&&d&&d.update({referenceElement:null,floatingElement:null,domReferenceElement:null})},[p,d]);const ie=g.useMemo(()=>({elementResize:!f&&typeof ResizeObserver<"u",layoutShift:!f&&typeof IntersectionObserver<"u"}),[f]),{refs:j,elements:J,x:re,y:qe,middlewareData:Pe,update:Ae,placement:oe,context:Se,isPositioned:Ie,floatingStyles:ct}=gi({rootContext:d,placement:A,middleware:le,strategy:n,whileElementsMounted:m?void 0:(...ee)=>Pn(...ee,ie),nodeId:v,externalTree:R}),{sideX:at,sideY:lt}=Pe.adaptiveOrigin||Et,Ke=Ie?n:"fixed",ut=g.useMemo(()=>y?{position:Ke,[at]:re,[lt]:qe}:{position:Ke,...ct},[y,Ke,at,re,lt,qe,ct]),Ne=g.useRef(null);X(()=>{if(!p)return;const ee=b.current,ue=typeof ee=="function"?ee():ee,fe=(Fn(ue)?ue.current:ue)||null||null;fe!==Ne.current&&(j.setPositionReference(fe),Ne.current=fe)},[p,j,I,b]),g.useEffect(()=>{if(!p)return;const ee=b.current;typeof ee!="function"&&Fn(ee)&&ee.current!==Ne.current&&(j.setPositionReference(ee.current),Ne.current=ee.current)},[p,j,I,b]),g.useEffect(()=>{if(m&&p&&J.domReference&&J.floating)return Pn(J.domReference,J.floating,Ae,ie)},[m,p,J,Ae,ie]);const Me=ge(oe),un=Cr(r,Me,k),fn=Ue(oe)||"center",dn=!!Pe.hide?.referenceHidden;X(()=>{T&&p&&Ie&&w(Me)},[T,p,Ie,Me]);const gn=g.useMemo(()=>({position:"absolute",top:Pe.arrow?.y,left:Pe.arrow?.x}),[Pe.arrow]),pn=Pe.arrow?.centerOffset!==0;return g.useMemo(()=>({positionerStyles:ut,arrowStyles:gn,arrowRef:Z,arrowUncentered:pn,side:un,align:fn,physicalSide:Me,anchorHidden:dn,refs:j,context:Se,isPositioned:Ie,update:Ae}),[ut,gn,Z,pn,un,fn,Me,dn,j,Se,Ie,Ae])}function Fn(t){return t!=null&&"current"in t}function Or(t){return t==="starting"?uo:Je}const qi=g.forwardRef(function(e,n){const{render:r,className:o,anchor:s,positionMethod:i="absolute",side:c="top",align:l="center",sideOffset:a=0,alignOffset:u=0,collisionBoundary:f="clipping-ancestors",collisionPadding:m=5,arrowPadding:d=5,sticky:p=!1,disableAnchorTracking:h=!1,collisionAvoidance:E=fo,...v}=e,y=Dt(),T=Bi(),R=y.useState("open"),C=y.useState("mounted"),w=y.useState("trackCursorAxis"),O=y.useState("disableHoverablePopup"),P=y.useState("floatingRootContext"),H=y.useState("instantType"),M=y.useState("transitionStatus"),N=y.useState("hasViewport"),I=Xi({anchor:s,positionMethod:i,floatingRootContext:P,mounted:C,side:c,sideOffset:a,align:l,alignOffset:u,collisionBoundary:f,collisionPadding:m,sticky:p,arrowPadding:d,disableAnchorTracking:h,keepMounted:T,collisionAvoidance:E,adaptiveOrigin:N?zi:void 0}),b=g.useMemo(()=>{const A={};return(!R||w==="both"||O)&&(A.pointerEvents="none"),{role:"presentation",hidden:!C,style:{...I.positionerStyles,...A}}},[R,w,O,C,I.positionerStyles]),D=g.useMemo(()=>({open:R,side:I.side,align:I.align,anchorHidden:I.anchorHidden,instant:w!=="none"?"tracking-cursor":H}),[R,I.side,I.align,I.anchorHidden,w,H]),k=g.useMemo(()=>({...D,arrowRef:I.arrowRef,arrowStyles:I.arrowStyles,arrowUncentered:I.arrowUncentered}),[D,I.arrowRef,I.arrowStyles,I.arrowUncentered]),V=Mt("div",e,{state:D,props:[b,Or(M),v],ref:[n,y.useStateSetter("positionerElement")],stateAttributesMapping:Rr});return Q.jsx(Tr.Provider,{value:k,children:V})}),Ki={...Rr,...ri},Gi=g.forwardRef(function(e,n){const{className:r,render:o,...s}=e,i=Dt(),{side:c,align:l}=Wi(),a=i.useState("open"),u=i.useState("instantType"),f=i.useState("transitionStatus"),m=i.useState("popupProps"),d=i.useState("floatingRootContext");Er({open:a,ref:i.context.popupRef,onComplete(){a&&i.context.onOpenChangeComplete?.(!0)}});const p=i.useState("disabled"),h=i.useState("closeDelay");bi(d,{enabled:!p,closeDelay:h});const E=g.useMemo(()=>({open:a,side:c,align:l,instant:u,transitionStatus:f}),[a,c,l,u,f]);return Mt("div",e,{state:E,ref:[n,i.context.popupRef,i.useStateSetter("popupElement")],props:[m,Or(f),s],stateAttributesMapping:Ki})}),Qi=function(e){const{delay:n,closeDelay:r,timeout:o=400}=e,s=g.useMemo(()=>({delay:n,closeDelay:r}),[n,r]),i=g.useMemo(()=>({open:n,close:r}),[n,r]);return Q.jsx(wr.Provider,{value:s,children:Q.jsx(ko,{delay:i,timeoutMs:o,children:e.children})})};function bc({children:t}){return Q.jsx(Qi,{delay:0,closeDelay:0,timeout:0,children:t})}function Ec({children:t,...e}){return Q.jsx(Pi,{...e,children:t})}function xc({className:t,...e}){return Q.jsx(Hi,{className:Nn(t),...e})}function Rc({className:t,side:e="top",children:n}){return Q.jsx($i,{children:Q.jsx(qi,{side:e,children:Q.jsx(Gi,{className:Nn("rounded-md border border-primary-900 bg-primary-950 px-2 py-1 text-xs text-primary-50 shadow-sm",t),children:n})})})}export{ii as $,Er as A,vc as B,sc as C,ze as D,Te as E,En as F,ci as G,ai as H,pi as I,Ms as J,wi as K,fi as L,ui as M,q as N,bi as O,cn as P,Or as Q,br as R,ic as S,bc as T,fo as U,Xi as V,mc as W,Lo as X,pc as Y,hc as Z,rc as _,Ec as a,Ri as a0,Ti as a1,mi as a2,gc as a3,dc as a4,yc as a5,oc as a6,ei as a7,oi as a8,rt as a9,xc as b,Rc as c,Xn as d,it as e,Vo as f,cc as g,_e as h,No as i,rn as j,Ft as k,lc as l,Ze as m,Bt as n,Io as o,Ao as p,fc as q,Bo as r,ac as s,nn as t,je as u,uc as v,st as w,Rr as x,ri as y,ln as z};