@tom2012/cc-web 2026.5.8-a → 2026.5.11-b

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 (40) hide show
  1. package/backend/dist/flows/runner.d.ts +44 -0
  2. package/backend/dist/flows/runner.d.ts.map +1 -0
  3. package/backend/dist/flows/runner.js +656 -0
  4. package/backend/dist/flows/runner.js.map +1 -0
  5. package/backend/dist/flows/store.d.ts +31 -0
  6. package/backend/dist/flows/store.d.ts.map +1 -0
  7. package/backend/dist/flows/store.js +201 -0
  8. package/backend/dist/flows/store.js.map +1 -0
  9. package/backend/dist/flows/types.d.ts +100 -0
  10. package/backend/dist/flows/types.d.ts.map +1 -0
  11. package/backend/dist/flows/types.js +9 -0
  12. package/backend/dist/flows/types.js.map +1 -0
  13. package/backend/dist/index.d.ts.map +1 -1
  14. package/backend/dist/index.js +7 -0
  15. package/backend/dist/index.js.map +1 -1
  16. package/backend/dist/routes/flows.d.ts +3 -0
  17. package/backend/dist/routes/flows.d.ts.map +1 -0
  18. package/backend/dist/routes/flows.js +244 -0
  19. package/backend/dist/routes/flows.js.map +1 -0
  20. package/frontend/dist/assets/{ChatOverlay-Dewml63P.js → ChatOverlay-DOPyrrXA.js} +2 -2
  21. package/frontend/dist/assets/{GraphPreview-DKqon8iY.js → GraphPreview-CKjnNwAU.js} +1 -1
  22. package/frontend/dist/assets/{MobilePage-0yihNWS5.js → MobilePage-Cv3IL4tK.js} +3 -3
  23. package/frontend/dist/assets/{OfficePreview-CLoz-Kzs.js → OfficePreview-C1KT27Ss.js} +2 -2
  24. package/frontend/dist/assets/{PdfPreview-ceFK86bz.js → PdfPreview-DPO8NU-g.js} +1 -1
  25. package/frontend/dist/assets/{ProjectPage-Dx8ti9Xg.js → ProjectPage-CCE5a09C.js} +5 -5
  26. package/frontend/dist/assets/SettingsPage-CSsVqoPw.js +13 -0
  27. package/frontend/dist/assets/{SkillHubPage-0i_Vbges.js → SkillHubPage-DTWHYFS5.js} +1 -1
  28. package/frontend/dist/assets/{chevron-down-CabXIthZ.js → chevron-down-Br-a5rS0.js} +1 -1
  29. package/frontend/dist/assets/{index-PkEuCOb6.js → index-BjokCGs1.js} +2 -2
  30. package/frontend/dist/assets/{index-DKiLzICV.js → index-CIhDjRmt.js} +1 -1
  31. package/frontend/dist/assets/{index-QPAdq047.js → index-Ci2OcLAl.js} +1 -1
  32. package/frontend/dist/assets/index-nnLME6Go.css +1 -0
  33. package/frontend/dist/assets/{jszip.min-C5eqdtGO.js → jszip.min-CNWZX5Wv.js} +1 -1
  34. package/frontend/dist/assets/{search-CO9hGSbE.js → search-B92cpQPd.js} +1 -1
  35. package/frontend/dist/assets/select-Bk7v5W9n.js +13 -0
  36. package/frontend/dist/index.html +2 -2
  37. package/package.json +1 -1
  38. package/frontend/dist/assets/SettingsPage-DqXMFZN7.js +0 -13
  39. package/frontend/dist/assets/index-BJDTvhqr.css +0 -1
  40. package/frontend/dist/assets/index-DFmoROkt.js +0 -13
@@ -0,0 +1,13 @@
1
+ import{c as e,r as t,j as n,U as r,W as o,R as i,$ as a,bb as l,a1 as s,a0 as c,aX as d,V as u,Y as f,d as p,bc as h,bd as m,Z as g,a2 as v,a4 as y,a5 as w,a6 as x,a7 as b,x as S}from"./index-BjokCGs1.js";import{u as R,c as C,C as j}from"./index-Ci2OcLAl.js";import{C as N}from"./chevron-down-Br-a5rS0.js";
2
+ /**
3
+ * @license lucide-react v0.309.0 - ISC
4
+ *
5
+ * This source code is licensed under the ISC license.
6
+ * See the LICENSE file in the root directory of this source tree.
7
+ */const T=e("AlertTriangle",[["path",{d:"m21.73 18-8-14a2 2 0 0 0-3.48 0l-8 14A2 2 0 0 0 4 21h16a2 2 0 0 0 1.73-3Z",key:"c3ski4"}],["path",{d:"M12 9v4",key:"juzpu7"}],["path",{d:"M12 17h.01",key:"p32p05"}]]),A=e("Save",[["path",{d:"M19 21H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h11l5 5v11a2 2 0 0 1-2 2z",key:"1owoqh"}],["polyline",{points:"17 21 17 13 7 13 7 21",key:"1md35c"}],["polyline",{points:"7 3 7 8 15 8",key:"8nz8an"}]]),P=e("Upload",[["path",{d:"M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4",key:"ih7n3h"}],["polyline",{points:"17 8 12 3 7 8",key:"t8dd8p"}],["line",{x1:"12",x2:"12",y1:"3",y2:"15",key:"widbto"}]]);
8
+ /**
9
+ * @license lucide-react v0.309.0 - ISC
10
+ *
11
+ * This source code is licensed under the ISC license.
12
+ * See the LICENSE file in the root directory of this source tree.
13
+ */function E(e){const r=D(e),o=t.forwardRef((e,o)=>{const{children:i,...a}=e,l=t.Children.toArray(i),s=l.find(_);if(s){const e=s.props.children,i=l.map(n=>n===s?t.Children.count(e)>1?t.Children.only(null):t.isValidElement(e)?e.props.children:null:n);return n.jsx(r,{...a,ref:o,children:t.isValidElement(e)?t.cloneElement(e,void 0,i):null})}return n.jsx(r,{...a,ref:o,children:i})});return o.displayName=`${e}.Slot`,o}function D(e){const n=t.forwardRef((e,n)=>{const{children:o,...i}=e;if(t.isValidElement(o)){const e=function(e){var t,n;let r=null==(t=Object.getOwnPropertyDescriptor(e.props,"ref"))?void 0:t.get,o=r&&"isReactWarning"in r&&r.isReactWarning;if(o)return e.ref;if(r=null==(n=Object.getOwnPropertyDescriptor(e,"ref"))?void 0:n.get,o=r&&"isReactWarning"in r&&r.isReactWarning,o)return e.props.ref;return e.props.ref||e.ref}(o),a=function(e,t){const n={...t};for(const r in t){const o=e[r],i=t[r];/^on[A-Z]/.test(r)?o&&i?n[r]=(...e)=>{const t=i(...e);return o(...e),t}:o&&(n[r]=o):"style"===r?n[r]={...o,...i}:"className"===r&&(n[r]=[o,i].filter(Boolean).join(" "))}return{...e,...n}}(i,o.props);return o.type!==t.Fragment&&(a.ref=n?r(n,e):e),t.cloneElement(o,a)}return t.Children.count(o)>1?t.Children.only(null):null});return n.displayName=`${e}.SlotClone`,n}var k=Symbol("radix.slottable");function _(e){return t.isValidElement(e)&&"function"==typeof e.type&&"__radixId"in e.type&&e.type.__radixId===k}function I(e){const t=e+"CollectionProvider",[r,l]=o(t),[s,c]=r(t,{collectionRef:{current:null},itemMap:new Map}),d=e=>{const{scope:t,children:r}=e,o=i.useRef(null),a=i.useRef(new Map).current;return n.jsx(s,{scope:t,itemMap:a,collectionRef:o,children:r})};d.displayName=t;const u=e+"CollectionSlot",f=E(u),p=i.forwardRef((e,t)=>{const{scope:r,children:o}=e,i=c(u,r),l=a(t,i.collectionRef);return n.jsx(f,{ref:l,children:o})});p.displayName=u;const h=e+"CollectionItemSlot",m="data-radix-collection-item",g=E(h),v=i.forwardRef((e,t)=>{const{scope:r,children:o,...l}=e,s=i.useRef(null),d=a(t,s),u=c(h,r);return i.useEffect(()=>(u.itemMap.set(s,{ref:s,...l}),()=>{u.itemMap.delete(s)})),n.jsx(g,{[m]:"",ref:d,children:o})});return v.displayName=h,[{Provider:d,Slot:p,ItemSlot:v},function(t){const n=c(e+"CollectionConsumer",t);return i.useCallback(()=>{const e=n.collectionRef.current;if(!e)return[];const t=Array.from(e.querySelectorAll(`[${m}]`));return Array.from(n.itemMap.values()).sort((e,n)=>t.indexOf(e.ref.current)-t.indexOf(n.ref.current))},[n.collectionRef,n.itemMap])},l]}var O="rovingFocusGroup.onEntryFocus",L={bubbles:!1,cancelable:!0},M="RovingFocusGroup",[F,H,V]=I(M),[W,B]=o(M,[V]),[z,$]=W(M),K=t.forwardRef((e,t)=>n.jsx(F.Provider,{scope:e.__scopeRovingFocusGroup,children:n.jsx(F.Slot,{scope:e.__scopeRovingFocusGroup,children:n.jsx(U,{...e,ref:t})})}));K.displayName=M;var U=t.forwardRef((e,r)=>{const{__scopeRovingFocusGroup:o,orientation:i,loop:l=!1,dir:f,currentTabStopId:p,defaultCurrentTabStopId:h,onCurrentTabStopIdChange:m,onEntryFocus:g,preventScrollOnEntryFocus:v=!1,...y}=e,w=t.useRef(null),x=a(r,w),b=R(f),[S,C]=d({prop:p,defaultProp:h??null,onChange:m,caller:M}),[j,N]=t.useState(!1),T=u(g),A=H(o),P=t.useRef(!1),[E,D]=t.useState(0);return t.useEffect(()=>{const e=w.current;if(e)return e.addEventListener(O,T),()=>e.removeEventListener(O,T)},[T]),n.jsx(z,{scope:o,orientation:i,dir:b,loop:l,currentTabStopId:S,onItemFocus:t.useCallback(e=>C(e),[C]),onItemShiftTab:t.useCallback(()=>N(!0),[]),onFocusableItemAdd:t.useCallback(()=>D(e=>e+1),[]),onFocusableItemRemove:t.useCallback(()=>D(e=>e-1),[]),children:n.jsx(s.div,{tabIndex:j||0===E?-1:0,"data-orientation":i,...y,ref:x,style:{outline:"none",...e.style},onMouseDown:c(e.onMouseDown,()=>{P.current=!0}),onFocus:c(e.onFocus,e=>{const t=!P.current;if(e.target===e.currentTarget&&t&&!j){const t=new CustomEvent(O,L);if(e.currentTarget.dispatchEvent(t),!t.defaultPrevented){const e=A().filter(e=>e.focusable);G([e.find(e=>e.active),e.find(e=>e.id===S),...e].filter(Boolean).map(e=>e.ref.current),v)}}P.current=!1}),onBlur:c(e.onBlur,()=>N(!1))})})}),q="RovingFocusGroupItem",Y=t.forwardRef((e,r)=>{const{__scopeRovingFocusGroup:o,focusable:i=!0,active:a=!1,tabStopId:d,children:u,...f}=e,p=l(),h=d||p,m=$(q,o),g=m.currentTabStopId===h,v=H(o),{onFocusableItemAdd:y,onFocusableItemRemove:w,currentTabStopId:x}=m;return t.useEffect(()=>{if(i)return y(),()=>w()},[i,y,w]),n.jsx(F.ItemSlot,{scope:o,id:h,focusable:i,active:a,children:n.jsx(s.span,{tabIndex:g?0:-1,"data-orientation":m.orientation,...f,ref:r,onMouseDown:c(e.onMouseDown,e=>{i?m.onItemFocus(h):e.preventDefault()}),onFocus:c(e.onFocus,()=>m.onItemFocus(h)),onKeyDown:c(e.onKeyDown,e=>{if("Tab"===e.key&&e.shiftKey)return void m.onItemShiftTab();if(e.target!==e.currentTarget)return;const t=function(e,t,n){const r=function(e,t){return"rtl"!==t?e:"ArrowLeft"===e?"ArrowRight":"ArrowRight"===e?"ArrowLeft":e}(e.key,n);return"vertical"===t&&["ArrowLeft","ArrowRight"].includes(r)||"horizontal"===t&&["ArrowUp","ArrowDown"].includes(r)?void 0:X[r]}(e,m.orientation,m.dir);if(void 0!==t){if(e.metaKey||e.ctrlKey||e.altKey||e.shiftKey)return;e.preventDefault();let o=v().filter(e=>e.focusable).map(e=>e.ref.current);if("last"===t)o.reverse();else if("prev"===t||"next"===t){"prev"===t&&o.reverse();const i=o.indexOf(e.currentTarget);o=m.loop?(r=i+1,(n=o).map((e,t)=>n[(r+t)%n.length])):o.slice(i+1)}setTimeout(()=>G(o))}var n,r}),children:"function"==typeof u?u({isCurrentTabStop:g,hasTabStop:null!=x}):u})})});Y.displayName=q;var X={ArrowLeft:"prev",ArrowUp:"prev",ArrowRight:"next",ArrowDown:"next",PageUp:"first",Home:"first",PageDown:"last",End:"last"};function G(e,t=!1){const n=document.activeElement;for(const r of e){if(r===n)return;if(r.focus({preventScroll:t}),document.activeElement!==n)return}}var Z=K,J=Y,Q="Tabs",[ee]=o(Q,[B]),te=B(),[ne,re]=ee(Q),oe=t.forwardRef((e,t)=>{const{__scopeTabs:r,value:o,onValueChange:i,defaultValue:a,orientation:c="horizontal",dir:u,activationMode:f="automatic",...p}=e,h=R(u),[m,g]=d({prop:o,onChange:i,defaultProp:a??"",caller:Q});return n.jsx(ne,{scope:r,baseId:l(),value:m,onValueChange:g,orientation:c,dir:h,activationMode:f,children:n.jsx(s.div,{dir:h,"data-orientation":c,...p,ref:t})})});oe.displayName=Q;var ie="TabsList",ae=t.forwardRef((e,t)=>{const{__scopeTabs:r,loop:o=!0,...i}=e,a=re(ie,r),l=te(r);return n.jsx(Z,{asChild:!0,...l,orientation:a.orientation,dir:a.dir,loop:o,children:n.jsx(s.div,{role:"tablist","aria-orientation":a.orientation,...i,ref:t})})});ae.displayName=ie;var le="TabsTrigger",se=t.forwardRef((e,t)=>{const{__scopeTabs:r,value:o,disabled:i=!1,...a}=e,l=re(le,r),d=te(r),u=ue(l.baseId,o),f=fe(l.baseId,o),p=o===l.value;return n.jsx(J,{asChild:!0,...d,focusable:!i,active:p,children:n.jsx(s.button,{type:"button",role:"tab","aria-selected":p,"aria-controls":f,"data-state":p?"active":"inactive","data-disabled":i?"":void 0,disabled:i,id:u,...a,ref:t,onMouseDown:c(e.onMouseDown,e=>{i||0!==e.button||!1!==e.ctrlKey?e.preventDefault():l.onValueChange(o)}),onKeyDown:c(e.onKeyDown,e=>{[" ","Enter"].includes(e.key)&&l.onValueChange(o)}),onFocus:c(e.onFocus,()=>{const e="manual"!==l.activationMode;p||i||!e||l.onValueChange(o)})})})});se.displayName=le;var ce="TabsContent",de=t.forwardRef((e,r)=>{const{__scopeTabs:o,value:i,forceMount:a,children:l,...c}=e,d=re(ce,o),u=ue(d.baseId,i),p=fe(d.baseId,i),h=i===d.value,m=t.useRef(h);return t.useEffect(()=>{const e=requestAnimationFrame(()=>m.current=!1);return()=>cancelAnimationFrame(e)},[]),n.jsx(f,{present:a||h,children:({present:t})=>n.jsx(s.div,{"data-state":h?"active":"inactive","data-orientation":d.orientation,role:"tabpanel","aria-labelledby":u,hidden:!t,id:p,tabIndex:0,...c,ref:r,style:{...e.style,animationDuration:m.current?"0s":void 0},children:t&&l})})});function ue(e,t){return`${e}-trigger-${t}`}function fe(e,t){return`${e}-content-${t}`}de.displayName=ce;var pe=ae,he=se,me=de;const ge=oe,ve=t.forwardRef(({className:e,...t},r)=>n.jsx(pe,{ref:r,className:p("flex rounded-md bg-muted p-1 text-muted-foreground data-[orientation=horizontal]:h-10 data-[orientation=horizontal]:items-center data-[orientation=horizontal]:justify-center data-[orientation=horizontal]:inline-flex data-[orientation=vertical]:flex-col data-[orientation=vertical]:items-center data-[orientation=vertical]:justify-start",e),...t}));ve.displayName=pe.displayName;const ye=t.forwardRef(({className:e,...t},r)=>n.jsx(he,{ref:r,className:p("inline-flex items-center justify-center whitespace-nowrap rounded-sm text-sm font-medium ring-offset-background transition-all focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50 data-[state=active]:bg-background data-[state=active]:text-foreground data-[state=active]:shadow-sm data-[orientation=horizontal]:px-3 data-[orientation=horizontal]:py-1.5",e),...t}));ye.displayName=he.displayName;const we=t.forwardRef(({className:e,...t},r)=>n.jsx(me,{ref:r,className:p("mt-2 ring-offset-background focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2",e),...t}));we.displayName=me.displayName;const xe=["top","right","bottom","left"],be=Math.min,Se=Math.max,Re=Math.round,Ce=Math.floor,je=e=>({x:e,y:e}),Ne={left:"right",right:"left",bottom:"top",top:"bottom"};function Te(e,t,n){return Se(e,be(t,n))}function Ae(e,t){return"function"==typeof e?e(t):e}function Pe(e){return e.split("-")[0]}function Ee(e){return e.split("-")[1]}function De(e){return"x"===e?"y":"x"}function ke(e){return"y"===e?"height":"width"}function _e(e){const t=e[0];return"t"===t||"b"===t?"y":"x"}function Ie(e){return De(_e(e))}function Oe(e){return e.includes("start")?e.replace("start","end"):e.replace("end","start")}const Le=["left","right"],Me=["right","left"],Fe=["top","bottom"],He=["bottom","top"];function Ve(e,t,n,r){const o=Ee(e);let i=function(e,t,n){switch(e){case"top":case"bottom":return n?t?Me:Le:t?Le:Me;case"left":case"right":return t?Fe:He;default:return[]}}(Pe(e),"start"===n,r);return o&&(i=i.map(e=>e+"-"+o),t&&(i=i.concat(i.map(Oe)))),i}function We(e){const t=Pe(e);return Ne[t]+e.slice(t.length)}function Be(e){return"number"!=typeof e?function(e){return{top:0,right:0,bottom:0,left:0,...e}}(e):{top:e,right:e,bottom:e,left:e}}function ze(e){const{x:t,y:n,width:r,height:o}=e;return{width:r,height:o,top:n,left:t,right:t+r,bottom:n+o,x:t,y:n}}function $e(e,t,n){let{reference:r,floating:o}=e;const i=_e(t),a=Ie(t),l=ke(a),s=Pe(t),c="y"===i,d=r.x+r.width/2-o.width/2,u=r.y+r.height/2-o.height/2,f=r[l]/2-o[l]/2;let p;switch(s){case"top":p={x:d,y:r.y-o.height};break;case"bottom":p={x:d,y:r.y+r.height};break;case"right":p={x:r.x+r.width,y:u};break;case"left":p={x:r.x-o.width,y:u};break;default:p={x:r.x,y:r.y}}switch(Ee(t)){case"start":p[a]-=f*(n&&c?-1:1);break;case"end":p[a]+=f*(n&&c?-1:1)}return p}async function Ke(e,t){var n;void 0===t&&(t={});const{x:r,y:o,platform:i,rects:a,elements:l,strategy:s}=e,{boundary:c="clippingAncestors",rootBoundary:d="viewport",elementContext:u="floating",altBoundary:f=!1,padding:p=0}=Ae(t,e),h=Be(p),m=l[f?"floating"===u?"reference":"floating":u],g=ze(await i.getClippingRect({element:null==(n=await(null==i.isElement?void 0:i.isElement(m)))||n?m:m.contextElement||await(null==i.getDocumentElement?void 0:i.getDocumentElement(l.floating)),boundary:c,rootBoundary:d,strategy:s})),v="floating"===u?{x:r,y:o,width:a.floating.width,height:a.floating.height}:a.reference,y=await(null==i.getOffsetParent?void 0:i.getOffsetParent(l.floating)),w=await(null==i.isElement?void 0:i.isElement(y))&&await(null==i.getScale?void 0:i.getScale(y))||{x:1,y:1},x=ze(i.convertOffsetParentRelativeRectToViewportRelativeRect?await i.convertOffsetParentRelativeRectToViewportRelativeRect({elements:l,rect:v,offsetParent:y,strategy:s}):v);return{top:(g.top-x.top+h.top)/w.y,bottom:(x.bottom-g.bottom+h.bottom)/w.y,left:(g.left-x.left+h.left)/w.x,right:(x.right-g.right+h.right)/w.x}}function Ue(e,t){return{top:e.top-t.height,right:e.right-t.width,bottom:e.bottom-t.height,left:e.left-t.width}}function qe(e){return xe.some(t=>e[t]>=0)}const Ye=new Set(["left","top"]);function Xe(){return"undefined"!=typeof window}function Ge(e){return Qe(e)?(e.nodeName||"").toLowerCase():"#document"}function Ze(e){var t;return(null==e||null==(t=e.ownerDocument)?void 0:t.defaultView)||window}function Je(e){var t;return null==(t=(Qe(e)?e.ownerDocument:e.document)||window.document)?void 0:t.documentElement}function Qe(e){return!!Xe()&&(e instanceof Node||e instanceof Ze(e).Node)}function et(e){return!!Xe()&&(e instanceof Element||e instanceof Ze(e).Element)}function tt(e){return!!Xe()&&(e instanceof HTMLElement||e instanceof Ze(e).HTMLElement)}function nt(e){return!(!Xe()||"undefined"==typeof ShadowRoot)&&(e instanceof ShadowRoot||e instanceof Ze(e).ShadowRoot)}function rt(e){const{overflow:t,overflowX:n,overflowY:r,display:o}=pt(e);return/auto|scroll|overlay|hidden|clip/.test(t+r+n)&&"inline"!==o&&"contents"!==o}function ot(e){return/^(table|td|th)$/.test(Ge(e))}function it(e){try{if(e.matches(":popover-open"))return!0}catch(t){}try{return e.matches(":modal")}catch(t){return!1}}const at=/transform|translate|scale|rotate|perspective|filter/,lt=/paint|layout|strict|content/,st=e=>!!e&&"none"!==e;let ct;function dt(e){const t=et(e)?pt(e):e;return st(t.transform)||st(t.translate)||st(t.scale)||st(t.rotate)||st(t.perspective)||!ut()&&(st(t.backdropFilter)||st(t.filter))||at.test(t.willChange||"")||lt.test(t.contain||"")}function ut(){return null==ct&&(ct="undefined"!=typeof CSS&&CSS.supports&&CSS.supports("-webkit-backdrop-filter","none")),ct}function ft(e){return/^(html|body|#document)$/.test(Ge(e))}function pt(e){return Ze(e).getComputedStyle(e)}function ht(e){return et(e)?{scrollLeft:e.scrollLeft,scrollTop:e.scrollTop}:{scrollLeft:e.scrollX,scrollTop:e.scrollY}}function mt(e){if("html"===Ge(e))return e;const t=e.assignedSlot||e.parentNode||nt(e)&&e.host||Je(e);return nt(t)?t.host:t}function gt(e){const t=mt(e);return ft(t)?e.ownerDocument?e.ownerDocument.body:e.body:tt(t)&&rt(t)?t:gt(t)}function vt(e,t,n){var r;void 0===t&&(t=[]),void 0===n&&(n=!0);const o=gt(e),i=o===(null==(r=e.ownerDocument)?void 0:r.body),a=Ze(o);if(i){const e=yt(a);return t.concat(a,a.visualViewport||[],rt(o)?o:[],e&&n?vt(e):[])}return t.concat(o,vt(o,[],n))}function yt(e){return e.parent&&Object.getPrototypeOf(e.parent)?e.frameElement:null}function wt(e){const t=pt(e);let n=parseFloat(t.width)||0,r=parseFloat(t.height)||0;const o=tt(e),i=o?e.offsetWidth:n,a=o?e.offsetHeight:r,l=Re(n)!==i||Re(r)!==a;return l&&(n=i,r=a),{width:n,height:r,$:l}}function xt(e){return et(e)?e:e.contextElement}function bt(e){const t=xt(e);if(!tt(t))return je(1);const n=t.getBoundingClientRect(),{width:r,height:o,$:i}=wt(t);let a=(i?Re(n.width):n.width)/r,l=(i?Re(n.height):n.height)/o;return a&&Number.isFinite(a)||(a=1),l&&Number.isFinite(l)||(l=1),{x:a,y:l}}const St=je(0);function Rt(e){const t=Ze(e);return ut()&&t.visualViewport?{x:t.visualViewport.offsetLeft,y:t.visualViewport.offsetTop}:St}function Ct(e,t,n,r){void 0===t&&(t=!1),void 0===n&&(n=!1);const o=e.getBoundingClientRect(),i=xt(e);let a=je(1);t&&(r?et(r)&&(a=bt(r)):a=bt(e));const l=function(e,t,n){return void 0===t&&(t=!1),!(!n||t&&n!==Ze(e))&&t}(i,n,r)?Rt(i):je(0);let s=(o.left+l.x)/a.x,c=(o.top+l.y)/a.y,d=o.width/a.x,u=o.height/a.y;if(i){const e=Ze(i),t=r&&et(r)?Ze(r):r;let n=e,o=yt(n);for(;o&&r&&t!==n;){const e=bt(o),t=o.getBoundingClientRect(),r=pt(o),i=t.left+(o.clientLeft+parseFloat(r.paddingLeft))*e.x,a=t.top+(o.clientTop+parseFloat(r.paddingTop))*e.y;s*=e.x,c*=e.y,d*=e.x,u*=e.y,s+=i,c+=a,n=Ze(o),o=yt(n)}}return ze({width:d,height:u,x:s,y:c})}function jt(e,t){const n=ht(e).scrollLeft;return t?t.left+n:Ct(Je(e)).left+n}function Nt(e,t){const n=e.getBoundingClientRect();return{x:n.left+t.scrollLeft-jt(e,n),y:n.top+t.scrollTop}}function Tt(e,t,n){let r;if("viewport"===t)r=function(e,t){const n=Ze(e),r=Je(e),o=n.visualViewport;let i=r.clientWidth,a=r.clientHeight,l=0,s=0;if(o){i=o.width,a=o.height;const e=ut();(!e||e&&"fixed"===t)&&(l=o.offsetLeft,s=o.offsetTop)}const c=jt(r);if(c<=0){const e=r.ownerDocument,t=e.body,n=getComputedStyle(t),o="CSS1Compat"===e.compatMode&&parseFloat(n.marginLeft)+parseFloat(n.marginRight)||0,a=Math.abs(r.clientWidth-t.clientWidth-o);a<=25&&(i-=a)}else c<=25&&(i+=c);return{width:i,height:a,x:l,y:s}}(e,n);else if("document"===t)r=function(e){const t=Je(e),n=ht(e),r=e.ownerDocument.body,o=Se(t.scrollWidth,t.clientWidth,r.scrollWidth,r.clientWidth),i=Se(t.scrollHeight,t.clientHeight,r.scrollHeight,r.clientHeight);let a=-n.scrollLeft+jt(e);const l=-n.scrollTop;return"rtl"===pt(r).direction&&(a+=Se(t.clientWidth,r.clientWidth)-o),{width:o,height:i,x:a,y:l}}(Je(e));else if(et(t))r=function(e,t){const n=Ct(e,!0,"fixed"===t),r=n.top+e.clientTop,o=n.left+e.clientLeft,i=tt(e)?bt(e):je(1);return{width:e.clientWidth*i.x,height:e.clientHeight*i.y,x:o*i.x,y:r*i.y}}(t,n);else{const n=Rt(e);r={x:t.x-n.x,y:t.y-n.y,width:t.width,height:t.height}}return ze(r)}function At(e,t){const n=mt(e);return!(n===t||!et(n)||ft(n))&&("fixed"===pt(n).position||At(n,t))}function Pt(e,t,n){const r=tt(t),o=Je(t),i="fixed"===n,a=Ct(e,!0,i,t);let l={scrollLeft:0,scrollTop:0};const s=je(0);function c(){s.x=jt(o)}if(r||!r&&!i)if(("body"!==Ge(t)||rt(o))&&(l=ht(t)),r){const e=Ct(t,!0,i,t);s.x=e.x+t.clientLeft,s.y=e.y+t.clientTop}else o&&c();i&&!r&&o&&c();const d=!o||r||i?je(0):Nt(o,l);return{x:a.left+l.scrollLeft-s.x-d.x,y:a.top+l.scrollTop-s.y-d.y,width:a.width,height:a.height}}function Et(e){return"static"===pt(e).position}function Dt(e,t){if(!tt(e)||"fixed"===pt(e).position)return null;if(t)return t(e);let n=e.offsetParent;return Je(e)===n&&(n=n.ownerDocument.body),n}function kt(e,t){const n=Ze(e);if(it(e))return n;if(!tt(e)){let t=mt(e);for(;t&&!ft(t);){if(et(t)&&!Et(t))return t;t=mt(t)}return n}let r=Dt(e,t);for(;r&&ot(r)&&Et(r);)r=Dt(r,t);return r&&ft(r)&&Et(r)&&!dt(r)?n:r||function(e){let t=mt(e);for(;tt(t)&&!ft(t);){if(dt(t))return t;if(it(t))return null;t=mt(t)}return null}(e)||n}const _t={convertOffsetParentRelativeRectToViewportRelativeRect:function(e){let{elements:t,rect:n,offsetParent:r,strategy:o}=e;const i="fixed"===o,a=Je(r),l=!!t&&it(t.floating);if(r===a||l&&i)return n;let s={scrollLeft:0,scrollTop:0},c=je(1);const d=je(0),u=tt(r);if((u||!u&&!i)&&(("body"!==Ge(r)||rt(a))&&(s=ht(r)),u)){const e=Ct(r);c=bt(r),d.x=e.x+r.clientLeft,d.y=e.y+r.clientTop}const f=!a||u||i?je(0):Nt(a,s);return{width:n.width*c.x,height:n.height*c.y,x:n.x*c.x-s.scrollLeft*c.x+d.x+f.x,y:n.y*c.y-s.scrollTop*c.y+d.y+f.y}},getDocumentElement:Je,getClippingRect:function(e){let{element:t,boundary:n,rootBoundary:r,strategy:o}=e;const i=[..."clippingAncestors"===n?it(t)?[]:function(e,t){const n=t.get(e);if(n)return n;let r=vt(e,[],!1).filter(e=>et(e)&&"body"!==Ge(e)),o=null;const i="fixed"===pt(e).position;let a=i?mt(e):e;for(;et(a)&&!ft(a);){const t=pt(a),n=dt(a);n||"fixed"!==t.position||(o=null),(i?!n&&!o:!n&&"static"===t.position&&o&&("absolute"===o.position||"fixed"===o.position)||rt(a)&&!n&&At(e,a))?r=r.filter(e=>e!==a):o=t,a=mt(a)}return t.set(e,r),r}(t,this._c):[].concat(n),r],a=Tt(t,i[0],o);let l=a.top,s=a.right,c=a.bottom,d=a.left;for(let u=1;u<i.length;u++){const e=Tt(t,i[u],o);l=Se(e.top,l),s=be(e.right,s),c=be(e.bottom,c),d=Se(e.left,d)}return{width:s-d,height:c-l,x:d,y:l}},getOffsetParent:kt,getElementRects:async function(e){const t=this.getOffsetParent||kt,n=this.getDimensions,r=await n(e.floating);return{reference:Pt(e.reference,await t(e.floating),e.strategy),floating:{x:0,y:0,width:r.width,height:r.height}}},getClientRects:function(e){return Array.from(e.getClientRects())},getDimensions:function(e){const{width:t,height:n}=wt(e);return{width:t,height:n}},getScale:bt,isElement:et,isRTL:function(e){return"rtl"===pt(e).direction}};function It(e,t){return e.x===t.x&&e.y===t.y&&e.width===t.width&&e.height===t.height}function Ot(e,t,n,r){void 0===r&&(r={});const{ancestorScroll:o=!0,ancestorResize:i=!0,elementResize:a="function"==typeof ResizeObserver,layoutShift:l="function"==typeof IntersectionObserver,animationFrame:s=!1}=r,c=xt(e),d=o||i?[...c?vt(c):[],...t?vt(t):[]]:[];d.forEach(e=>{o&&e.addEventListener("scroll",n,{passive:!0}),i&&e.addEventListener("resize",n)});const u=c&&l?function(e,t){let n,r=null;const o=Je(e);function i(){var e;clearTimeout(n),null==(e=r)||e.disconnect(),r=null}return function a(l,s){void 0===l&&(l=!1),void 0===s&&(s=1),i();const c=e.getBoundingClientRect(),{left:d,top:u,width:f,height:p}=c;if(l||t(),!f||!p)return;const h={rootMargin:-Ce(u)+"px "+-Ce(o.clientWidth-(d+f))+"px "+-Ce(o.clientHeight-(u+p))+"px "+-Ce(d)+"px",threshold:Se(0,be(1,s))||1};let m=!0;function g(t){const r=t[0].intersectionRatio;if(r!==s){if(!m)return a();r?a(!1,r):n=setTimeout(()=>{a(!1,1e-7)},1e3)}1!==r||It(c,e.getBoundingClientRect())||a(),m=!1}try{r=new IntersectionObserver(g,{...h,root:o.ownerDocument})}catch(v){r=new IntersectionObserver(g,h)}r.observe(e)}(!0),i}(c,n):null;let f,p=-1,h=null;a&&(h=new ResizeObserver(e=>{let[r]=e;r&&r.target===c&&h&&t&&(h.unobserve(t),cancelAnimationFrame(p),p=requestAnimationFrame(()=>{var e;null==(e=h)||e.observe(t)})),n()}),c&&!s&&h.observe(c),t&&h.observe(t));let m=s?Ct(e):null;return s&&function t(){const r=Ct(e);m&&!It(m,r)&&n();m=r,f=requestAnimationFrame(t)}(),n(),()=>{var e;d.forEach(e=>{o&&e.removeEventListener("scroll",n),i&&e.removeEventListener("resize",n)}),null==u||u(),null==(e=h)||e.disconnect(),h=null,s&&cancelAnimationFrame(f)}}const Lt=function(e){return void 0===e&&(e=0),{name:"offset",options:e,async fn(t){var n,r;const{x:o,y:i,placement:a,middlewareData:l}=t,s=await async function(e,t){const{placement:n,platform:r,elements:o}=e,i=await(null==r.isRTL?void 0:r.isRTL(o.floating)),a=Pe(n),l=Ee(n),s="y"===_e(n),c=Ye.has(a)?-1:1,d=i&&s?-1:1,u=Ae(t,e);let{mainAxis:f,crossAxis:p,alignmentAxis:h}="number"==typeof u?{mainAxis:u,crossAxis:0,alignmentAxis:null}:{mainAxis:u.mainAxis||0,crossAxis:u.crossAxis||0,alignmentAxis:u.alignmentAxis};return l&&"number"==typeof h&&(p="end"===l?-1*h:h),s?{x:p*d,y:f*c}:{x:f*c,y:p*d}}(t,e);return a===(null==(n=l.offset)?void 0:n.placement)&&null!=(r=l.arrow)&&r.alignmentOffset?{}:{x:o+s.x,y:i+s.y,data:{...s,placement:a}}}}},Mt=function(e){return void 0===e&&(e={}),{name:"shift",options:e,async fn(t){const{x:n,y:r,placement:o,platform:i}=t,{mainAxis:a=!0,crossAxis:l=!1,limiter:s={fn:e=>{let{x:t,y:n}=e;return{x:t,y:n}}},...c}=Ae(e,t),d={x:n,y:r},u=await i.detectOverflow(t,c),f=_e(Pe(o)),p=De(f);let h=d[p],m=d[f];if(a){const e="y"===p?"bottom":"right";h=Te(h+u["y"===p?"top":"left"],h,h-u[e])}if(l){const e="y"===f?"bottom":"right";m=Te(m+u["y"===f?"top":"left"],m,m-u[e])}const g=s.fn({...t,[p]:h,[f]:m});return{...g,data:{x:g.x-n,y:g.y-r,enabled:{[p]:a,[f]:l}}}}}},Ft=function(e){return void 0===e&&(e={}),{name:"flip",options:e,async fn(t){var n,r;const{placement:o,middlewareData:i,rects:a,initialPlacement:l,platform:s,elements:c}=t,{mainAxis:d=!0,crossAxis:u=!0,fallbackPlacements:f,fallbackStrategy:p="bestFit",fallbackAxisSideDirection:h="none",flipAlignment:m=!0,...g}=Ae(e,t);if(null!=(n=i.arrow)&&n.alignmentOffset)return{};const v=Pe(o),y=_e(l),w=Pe(l)===l,x=await(null==s.isRTL?void 0:s.isRTL(c.floating)),b=f||(w||!m?[We(l)]:function(e){const t=We(e);return[Oe(e),t,Oe(t)]}(l)),S="none"!==h;!f&&S&&b.push(...Ve(l,m,h,x));const R=[l,...b],C=await s.detectOverflow(t,g),j=[];let N=(null==(r=i.flip)?void 0:r.overflows)||[];if(d&&j.push(C[v]),u){const e=function(e,t,n){void 0===n&&(n=!1);const r=Ee(e),o=Ie(e),i=ke(o);let a="x"===o?r===(n?"end":"start")?"right":"left":"start"===r?"bottom":"top";return t.reference[i]>t.floating[i]&&(a=We(a)),[a,We(a)]}(o,a,x);j.push(C[e[0]],C[e[1]])}if(N=[...N,{placement:o,overflows:j}],!j.every(e=>e<=0)){var T,A;const e=((null==(T=i.flip)?void 0:T.index)||0)+1,t=R[e];if(t){if(!("alignment"===u&&y!==_e(t))||N.every(e=>_e(e.placement)!==y||e.overflows[0]>0))return{data:{index:e,overflows:N},reset:{placement:t}}}let n=null==(A=N.filter(e=>e.overflows[0]<=0).sort((e,t)=>e.overflows[1]-t.overflows[1])[0])?void 0:A.placement;if(!n)switch(p){case"bestFit":{var P;const e=null==(P=N.filter(e=>{if(S){const t=_e(e.placement);return t===y||"y"===t}return!0}).map(e=>[e.placement,e.overflows.filter(e=>e>0).reduce((e,t)=>e+t,0)]).sort((e,t)=>e[1]-t[1])[0])?void 0:P[0];e&&(n=e);break}case"initialPlacement":n=l}if(o!==n)return{reset:{placement:n}}}return{}}}},Ht=function(e){return void 0===e&&(e={}),{name:"size",options:e,async fn(t){var n,r;const{placement:o,rects:i,platform:a,elements:l}=t,{apply:s=()=>{},...c}=Ae(e,t),d=await a.detectOverflow(t,c),u=Pe(o),f=Ee(o),p="y"===_e(o),{width:h,height:m}=i.floating;let g,v;"top"===u||"bottom"===u?(g=u,v=f===(await(null==a.isRTL?void 0:a.isRTL(l.floating))?"start":"end")?"left":"right"):(v=u,g="end"===f?"top":"bottom");const y=m-d.top-d.bottom,w=h-d.left-d.right,x=be(m-d[g],y),b=be(h-d[v],w),S=!t.middlewareData.shift;let R=x,C=b;if(null!=(n=t.middlewareData.shift)&&n.enabled.x&&(C=w),null!=(r=t.middlewareData.shift)&&r.enabled.y&&(R=y),S&&!f){const e=Se(d.left,0),t=Se(d.right,0),n=Se(d.top,0),r=Se(d.bottom,0);p?C=h-2*(0!==e||0!==t?e+t:Se(d.left,d.right)):R=m-2*(0!==n||0!==r?n+r:Se(d.top,d.bottom))}await s({...t,availableWidth:C,availableHeight:R});const j=await a.getDimensions(l.floating);return h!==j.width||m!==j.height?{reset:{rects:!0}}:{}}}},Vt=function(e){return void 0===e&&(e={}),{name:"hide",options:e,async fn(t){const{rects:n,platform:r}=t,{strategy:o="referenceHidden",...i}=Ae(e,t);switch(o){case"referenceHidden":{const e=Ue(await r.detectOverflow(t,{...i,elementContext:"reference"}),n.reference);return{data:{referenceHiddenOffsets:e,referenceHidden:qe(e)}}}case"escaped":{const e=Ue(await r.detectOverflow(t,{...i,altBoundary:!0}),n.floating);return{data:{escapedOffsets:e,escaped:qe(e)}}}default:return{}}}}},Wt=e=>({name:"arrow",options:e,async fn(t){const{x:n,y:r,placement:o,rects:i,platform:a,elements:l,middlewareData:s}=t,{element:c,padding:d=0}=Ae(e,t)||{};if(null==c)return{};const u=Be(d),f={x:n,y:r},p=Ie(o),h=ke(p),m=await a.getDimensions(c),g="y"===p,v=g?"top":"left",y=g?"bottom":"right",w=g?"clientHeight":"clientWidth",x=i.reference[h]+i.reference[p]-f[p]-i.floating[h],b=f[p]-i.reference[p],S=await(null==a.getOffsetParent?void 0:a.getOffsetParent(c));let R=S?S[w]:0;R&&await(null==a.isElement?void 0:a.isElement(S))||(R=l.floating[w]||i.floating[h]);const C=x/2-b/2,j=R/2-m[h]/2-1,N=be(u[v],j),T=be(u[y],j),A=N,P=R-m[h]-T,E=R/2-m[h]/2+C,D=Te(A,E,P),k=!s.arrow&&null!=Ee(o)&&E!==D&&i.reference[h]/2-(E<A?N:T)-m[h]/2<0,_=k?E<A?E-A:E-P:0;return{[p]:f[p]+_,data:{[p]:D,centerOffset:E-D-_,...k&&{alignmentOffset:_}},reset:k}}}),Bt=function(e){return void 0===e&&(e={}),{options:e,fn(t){const{x:n,y:r,placement:o,rects:i,middlewareData:a}=t,{offset:l=0,mainAxis:s=!0,crossAxis:c=!0}=Ae(e,t),d={x:n,y:r},u=_e(o),f=De(u);let p=d[f],h=d[u];const m=Ae(l,t),g="number"==typeof m?{mainAxis:m,crossAxis:0}:{mainAxis:0,crossAxis:0,...m};if(s){const e="y"===f?"height":"width",t=i.reference[f]-i.floating[e]+g.mainAxis,n=i.reference[f]+i.reference[e]-g.mainAxis;p<t?p=t:p>n&&(p=n)}if(c){var v,y;const e="y"===f?"width":"height",t=Ye.has(Pe(o)),n=i.reference[u]-i.floating[e]+(t&&(null==(v=a.offset)?void 0:v[u])||0)+(t?0:g.crossAxis),r=i.reference[u]+i.reference[e]+(t?0:(null==(y=a.offset)?void 0:y[u])||0)-(t?g.crossAxis:0);h<n?h=n:h>r&&(h=r)}return{[f]:p,[u]:h}}}},zt=(e,t,n)=>{const r=new Map,o={platform:_t,...n},i={...o.platform,_c:r};return(async(e,t,n)=>{const{placement:r="bottom",strategy:o="absolute",middleware:i=[],platform:a}=n,l=a.detectOverflow?a:{...a,detectOverflow:Ke},s=await(null==a.isRTL?void 0:a.isRTL(t));let c=await a.getElementRects({reference:e,floating:t,strategy:o}),{x:d,y:u}=$e(c,r,s),f=r,p=0;const h={};for(let m=0;m<i.length;m++){const n=i[m];if(!n)continue;const{name:g,fn:v}=n,{x:y,y:w,data:x,reset:b}=await v({x:d,y:u,initialPlacement:r,placement:f,strategy:o,middlewareData:h,rects:c,platform:l,elements:{reference:e,floating:t}});d=null!=y?y:d,u=null!=w?w:u,h[g]={...h[g],...x},b&&p<50&&(p++,"object"==typeof b&&(b.placement&&(f=b.placement),b.rects&&(c=!0===b.rects?await a.getElementRects({reference:e,floating:t,strategy:o}):b.rects),({x:d,y:u}=$e(c,f,s))),m=-1)}return{x:d,y:u,placement:f,strategy:o,middlewareData:h}})(e,t,{...o,platform:i})};var $t="undefined"!=typeof document?t.useLayoutEffect:function(){};function Kt(e,t){if(e===t)return!0;if(typeof e!=typeof t)return!1;if("function"==typeof e&&e.toString()===t.toString())return!0;let n,r,o;if(e&&t&&"object"==typeof e){if(Array.isArray(e)){if(n=e.length,n!==t.length)return!1;for(r=n;0!==r--;)if(!Kt(e[r],t[r]))return!1;return!0}if(o=Object.keys(e),n=o.length,n!==Object.keys(t).length)return!1;for(r=n;0!==r--;)if(!{}.hasOwnProperty.call(t,o[r]))return!1;for(r=n;0!==r--;){const n=o[r];if(("_owner"!==n||!e.$$typeof)&&!Kt(e[n],t[n]))return!1}return!0}return e!=e&&t!=t}function Ut(e){if("undefined"==typeof window)return 1;return(e.ownerDocument.defaultView||window).devicePixelRatio||1}function qt(e,t){const n=Ut(e);return Math.round(t*n)/n}function Yt(e){const n=t.useRef(e);return $t(()=>{n.current=e}),n}const Xt=(e,t)=>{const n=Lt(e);return{name:n.name,fn:n.fn,options:[e,t]}},Gt=(e,t)=>{const n=Mt(e);return{name:n.name,fn:n.fn,options:[e,t]}},Zt=(e,t)=>{const n=Ft(e);return{name:n.name,fn:n.fn,options:[e,t]}},Jt=(e,t)=>{const n=Ht(e);return{name:n.name,fn:n.fn,options:[e,t]}},Qt=(e,t)=>{const n=Vt(e);return{name:n.name,fn:n.fn,options:[e,t]}},en=(e,t)=>{const n=(e=>({name:"arrow",options:e,fn(t){const{element:n,padding:r}="function"==typeof e?e(t):e;return n&&(o=n,{}.hasOwnProperty.call(o,"current"))?null!=n.current?Wt({element:n.current,padding:r}).fn(t):{}:n?Wt({element:n,padding:r}).fn(t):{};var o}}))(e);return{name:n.name,fn:n.fn,options:[e,t]}};var tn=t.forwardRef((e,t)=>{const{children:r,width:o=10,height:i=5,...a}=e;return n.jsx(s.svg,{...a,ref:t,width:o,height:i,viewBox:"0 0 30 10",preserveAspectRatio:"none",children:e.asChild?r:n.jsx("polygon",{points:"0,0 30,0 15,10"})})});tn.displayName="Arrow";var nn=tn;function rn(e){const[n,r]=t.useState(void 0);return m(()=>{if(e){r({width:e.offsetWidth,height:e.offsetHeight});const t=new ResizeObserver(t=>{if(!Array.isArray(t))return;if(!t.length)return;const n=t[0];let o,i;if("borderBoxSize"in n){const e=n.borderBoxSize,t=Array.isArray(e)?e[0]:e;o=t.inlineSize,i=t.blockSize}else o=e.offsetWidth,i=e.offsetHeight;r({width:o,height:i})});return t.observe(e,{box:"border-box"}),()=>t.unobserve(e)}r(void 0)},[e]),n}var on="Popper",[an,ln]=o(on),[sn,cn]=an(on),dn=e=>{const{__scopePopper:r,children:o}=e,[i,a]=t.useState(null);return n.jsx(sn,{scope:r,anchor:i,onAnchorChange:a,children:o})};dn.displayName=on;var un="PopperAnchor",fn=t.forwardRef((e,r)=>{const{__scopePopper:o,virtualRef:i,...l}=e,c=cn(un,o),d=t.useRef(null),u=a(r,d),f=t.useRef(null);return t.useEffect(()=>{const e=f.current;f.current=(null==i?void 0:i.current)||d.current,e!==f.current&&c.onAnchorChange(f.current)}),i?null:n.jsx(s.div,{...l,ref:u})});fn.displayName=un;var pn="PopperContent",[hn,mn]=an(pn),gn=t.forwardRef((e,r)=>{var o,i,l,c,d,f;const{__scopePopper:p,side:g="bottom",sideOffset:v=0,align:y="center",alignOffset:w=0,arrowPadding:x=0,avoidCollisions:b=!0,collisionBoundary:S=[],collisionPadding:R=0,sticky:C="partial",hideWhenDetached:j=!1,updatePositionStrategy:N="optimized",onPlaced:T,...A}=e,P=cn(pn,p),[E,D]=t.useState(null),k=a(r,e=>D(e)),[_,I]=t.useState(null),O=rn(_),L=(null==O?void 0:O.width)??0,M=(null==O?void 0:O.height)??0,F=g+("center"!==y?"-"+y:""),H="number"==typeof R?R:{top:0,right:0,bottom:0,left:0,...R},V=Array.isArray(S)?S:[S],W=V.length>0,B={padding:H,boundary:V.filter(xn),altBoundary:W},{refs:z,floatingStyles:$,placement:K,isPositioned:U,middlewareData:q}=function(e){void 0===e&&(e={});const{placement:n="bottom",strategy:r="absolute",middleware:o=[],platform:i,elements:{reference:a,floating:l}={},transform:s=!0,whileElementsMounted:c,open:d}=e,[u,f]=t.useState({x:0,y:0,strategy:r,placement:n,middlewareData:{},isPositioned:!1}),[p,m]=t.useState(o);Kt(p,o)||m(o);const[g,v]=t.useState(null),[y,w]=t.useState(null),x=t.useCallback(e=>{e!==C.current&&(C.current=e,v(e))},[]),b=t.useCallback(e=>{e!==j.current&&(j.current=e,w(e))},[]),S=a||g,R=l||y,C=t.useRef(null),j=t.useRef(null),N=t.useRef(u),T=null!=c,A=Yt(c),P=Yt(i),E=Yt(d),D=t.useCallback(()=>{if(!C.current||!j.current)return;const e={placement:n,strategy:r,middleware:p};P.current&&(e.platform=P.current),zt(C.current,j.current,e).then(e=>{const t={...e,isPositioned:!1!==E.current};k.current&&!Kt(N.current,t)&&(N.current=t,h.flushSync(()=>{f(t)}))})},[p,n,r,P,E]);$t(()=>{!1===d&&N.current.isPositioned&&(N.current.isPositioned=!1,f(e=>({...e,isPositioned:!1})))},[d]);const k=t.useRef(!1);$t(()=>(k.current=!0,()=>{k.current=!1}),[]),$t(()=>{if(S&&(C.current=S),R&&(j.current=R),S&&R){if(A.current)return A.current(S,R,D);D()}},[S,R,D,A,T]);const _=t.useMemo(()=>({reference:C,floating:j,setReference:x,setFloating:b}),[x,b]),I=t.useMemo(()=>({reference:S,floating:R}),[S,R]),O=t.useMemo(()=>{const e={position:r,left:0,top:0};if(!I.floating)return e;const t=qt(I.floating,u.x),n=qt(I.floating,u.y);return s?{...e,transform:"translate("+t+"px, "+n+"px)",...Ut(I.floating)>=1.5&&{willChange:"transform"}}:{position:r,left:t,top:n}},[r,s,I.floating,u.x,u.y]);return t.useMemo(()=>({...u,update:D,refs:_,elements:I,floatingStyles:O}),[u,D,_,I,O])}({strategy:"fixed",placement:F,whileElementsMounted:(...e)=>Ot(...e,{animationFrame:"always"===N}),elements:{reference:P.anchor},middleware:[Xt({mainAxis:v+M,alignmentAxis:w}),b&&Gt({mainAxis:!0,crossAxis:!1,limiter:"partial"===C?{fn:Bt(Y).fn,options:[Y,X]}:void 0,...B}),b&&Zt({...B}),Jt({...B,apply:({elements:e,rects:t,availableWidth:n,availableHeight:r})=>{const{width:o,height:i}=t.reference,a=e.floating.style;a.setProperty("--radix-popper-available-width",`${n}px`),a.setProperty("--radix-popper-available-height",`${r}px`),a.setProperty("--radix-popper-anchor-width",`${o}px`),a.setProperty("--radix-popper-anchor-height",`${i}px`)}}),_&&en({element:_,padding:x}),bn({arrowWidth:L,arrowHeight:M}),j&&Qt({strategy:"referenceHidden",...B})]});var Y,X;const[G,Z]=Sn(K),J=u(T);m(()=>{U&&(null==J||J())},[U,J]);const Q=null==(o=q.arrow)?void 0:o.x,ee=null==(i=q.arrow)?void 0:i.y,te=0!==(null==(l=q.arrow)?void 0:l.centerOffset),[ne,re]=t.useState();return m(()=>{E&&re(window.getComputedStyle(E).zIndex)},[E]),n.jsx("div",{ref:z.setFloating,"data-radix-popper-content-wrapper":"",style:{...$,transform:U?$.transform:"translate(0, -200%)",minWidth:"max-content",zIndex:ne,"--radix-popper-transform-origin":[null==(c=q.transformOrigin)?void 0:c.x,null==(d=q.transformOrigin)?void 0:d.y].join(" "),...(null==(f=q.hide)?void 0:f.referenceHidden)&&{visibility:"hidden",pointerEvents:"none"}},dir:e.dir,children:n.jsx(hn,{scope:p,placedSide:G,onArrowChange:I,arrowX:Q,arrowY:ee,shouldHideArrow:te,children:n.jsx(s.div,{"data-side":G,"data-align":Z,...A,ref:k,style:{...A.style,animation:U?void 0:"none"}})})})});gn.displayName=pn;var vn="PopperArrow",yn={top:"bottom",right:"left",bottom:"top",left:"right"},wn=t.forwardRef(function(e,t){const{__scopePopper:r,...o}=e,i=mn(vn,r),a=yn[i.placedSide];return n.jsx("span",{ref:i.onArrowChange,style:{position:"absolute",left:i.arrowX,top:i.arrowY,[a]:0,transformOrigin:{top:"",right:"0 0",bottom:"center 0",left:"100% 0"}[i.placedSide],transform:{top:"translateY(100%)",right:"translateY(50%) rotate(90deg) translateX(-50%)",bottom:"rotate(180deg)",left:"translateY(50%) rotate(-90deg) translateX(50%)"}[i.placedSide],visibility:i.shouldHideArrow?"hidden":void 0},children:n.jsx(nn,{...o,ref:t,style:{...o.style,display:"block"}})})});function xn(e){return null!==e}wn.displayName=vn;var bn=e=>({name:"transformOrigin",options:e,fn(t){var n,r,o;const{placement:i,rects:a,middlewareData:l}=t,s=0!==(null==(n=l.arrow)?void 0:n.centerOffset),c=s?0:e.arrowWidth,d=s?0:e.arrowHeight,[u,f]=Sn(i),p={start:"0%",center:"50%",end:"100%"}[f],h=((null==(r=l.arrow)?void 0:r.x)??0)+c/2,m=((null==(o=l.arrow)?void 0:o.y)??0)+d/2;let g="",v="";return"bottom"===u?(g=s?p:`${h}px`,v=-d+"px"):"top"===u?(g=s?p:`${h}px`,v=`${a.floating.height+d}px`):"right"===u?(g=-d+"px",v=s?p:`${m}px`):"left"===u&&(g=`${a.floating.width+d}px`,v=s?p:`${m}px`),{data:{x:g,y:v}}}});function Sn(e){const[t,n="center"]=e.split("-");return[t,n]}var Rn=dn,Cn=fn,jn=gn,Nn=wn;function Tn(e){const r=An(e),o=t.forwardRef((e,o)=>{const{children:i,...a}=e,l=t.Children.toArray(i),s=l.find(En);if(s){const e=s.props.children,i=l.map(n=>n===s?t.Children.count(e)>1?t.Children.only(null):t.isValidElement(e)?e.props.children:null:n);return n.jsx(r,{...a,ref:o,children:t.isValidElement(e)?t.cloneElement(e,void 0,i):null})}return n.jsx(r,{...a,ref:o,children:i})});return o.displayName=`${e}.Slot`,o}function An(e){const n=t.forwardRef((e,n)=>{const{children:o,...i}=e;if(t.isValidElement(o)){const e=function(e){var t,n;let r=null==(t=Object.getOwnPropertyDescriptor(e.props,"ref"))?void 0:t.get,o=r&&"isReactWarning"in r&&r.isReactWarning;if(o)return e.ref;if(r=null==(n=Object.getOwnPropertyDescriptor(e,"ref"))?void 0:n.get,o=r&&"isReactWarning"in r&&r.isReactWarning,o)return e.props.ref;return e.props.ref||e.ref}(o),a=function(e,t){const n={...t};for(const r in t){const o=e[r],i=t[r];/^on[A-Z]/.test(r)?o&&i?n[r]=(...e)=>{const t=i(...e);return o(...e),t}:o&&(n[r]=o):"style"===r?n[r]={...o,...i}:"className"===r&&(n[r]=[o,i].filter(Boolean).join(" "))}return{...e,...n}}(i,o.props);return o.type!==t.Fragment&&(a.ref=n?r(n,e):e),t.cloneElement(o,a)}return t.Children.count(o)>1?t.Children.only(null):null});return n.displayName=`${e}.SlotClone`,n}var Pn=Symbol("radix.slottable");function En(e){return t.isValidElement(e)&&"function"==typeof e.type&&"__radixId"in e.type&&e.type.__radixId===Pn}function Dn(e){const n=t.useRef({value:e,previous:e});return t.useMemo(()=>(n.current.value!==e&&(n.current.previous=n.current.value,n.current.value=e),n.current.previous),[e])}var kn=Object.freeze({position:"absolute",border:0,width:1,height:1,padding:0,margin:-1,overflow:"hidden",clip:"rect(0, 0, 0, 0)",whiteSpace:"nowrap",wordWrap:"normal"});t.forwardRef((e,t)=>n.jsx(s.span,{...e,ref:t,style:{...kn,...e.style}})).displayName="VisuallyHidden";var _n=[" ","Enter","ArrowUp","ArrowDown"],In=[" ","Enter"],On="Select",[Ln,Mn,Fn]=I(On),[Hn]=o(On,[Fn,ln]),Vn=ln(),[Wn,Bn]=Hn(On),[zn,$n]=Hn(On),Kn=e=>{const{__scopeSelect:r,children:o,open:i,defaultOpen:a,onOpenChange:s,value:c,defaultValue:u,onValueChange:f,dir:p,name:h,autoComplete:m,disabled:g,required:v,form:y}=e,w=Vn(r),[x,b]=t.useState(null),[S,C]=t.useState(null),[j,N]=t.useState(!1),T=R(p),[A,P]=d({prop:i,defaultProp:a??!1,onChange:s,caller:On}),[E,D]=d({prop:c,defaultProp:u,onChange:f,caller:On}),k=t.useRef(null),_=!x||(y||!!x.closest("form")),[I,O]=t.useState(new Set),L=Array.from(I).map(e=>e.props.value).join(";");return n.jsx(Rn,{...w,children:n.jsxs(Wn,{required:v,scope:r,trigger:x,onTriggerChange:b,valueNode:S,onValueNodeChange:C,valueNodeHasChildren:j,onValueNodeHasChildrenChange:N,contentId:l(),value:E,onValueChange:D,open:A,onOpenChange:P,dir:T,triggerPointerDownPosRef:k,disabled:g,children:[n.jsx(Ln.Provider,{scope:r,children:n.jsx(zn,{scope:e.__scopeSelect,onNativeOptionAdd:t.useCallback(e=>{O(t=>new Set(t).add(e))},[]),onNativeOptionRemove:t.useCallback(e=>{O(t=>{const n=new Set(t);return n.delete(e),n})},[]),children:o})}),_?n.jsxs(Dr,{"aria-hidden":!0,required:v,tabIndex:-1,name:h,autoComplete:m,value:E,onChange:e=>D(e.target.value),disabled:g,form:y,children:[void 0===E?n.jsx("option",{value:""}):null,Array.from(I)]},L):null]})})};Kn.displayName=On;var Un="SelectTrigger",qn=t.forwardRef((e,r)=>{const{__scopeSelect:o,disabled:i=!1,...l}=e,d=Vn(o),u=Bn(Un,o),f=u.disabled||i,p=a(r,u.onTriggerChange),h=Mn(o),m=t.useRef("touch"),[g,v,y]=_r(e=>{const t=h().filter(e=>!e.disabled),n=t.find(e=>e.value===u.value),r=Ir(t,e,n);void 0!==r&&u.onValueChange(r.value)}),w=e=>{f||(u.onOpenChange(!0),y()),e&&(u.triggerPointerDownPosRef.current={x:Math.round(e.pageX),y:Math.round(e.pageY)})};return n.jsx(Cn,{asChild:!0,...d,children:n.jsx(s.button,{type:"button",role:"combobox","aria-controls":u.contentId,"aria-expanded":u.open,"aria-required":u.required,"aria-autocomplete":"none",dir:u.dir,"data-state":u.open?"open":"closed",disabled:f,"data-disabled":f?"":void 0,"data-placeholder":kr(u.value)?"":void 0,...l,ref:p,onClick:c(l.onClick,e=>{e.currentTarget.focus(),"mouse"!==m.current&&w(e)}),onPointerDown:c(l.onPointerDown,e=>{m.current=e.pointerType;const t=e.target;t.hasPointerCapture(e.pointerId)&&t.releasePointerCapture(e.pointerId),0===e.button&&!1===e.ctrlKey&&"mouse"===e.pointerType&&(w(e),e.preventDefault())}),onKeyDown:c(l.onKeyDown,e=>{const t=""!==g.current;e.ctrlKey||e.altKey||e.metaKey||1!==e.key.length||v(e.key),t&&" "===e.key||_n.includes(e.key)&&(w(),e.preventDefault())})})})});qn.displayName=Un;var Yn="SelectValue",Xn=t.forwardRef((e,t)=>{const{__scopeSelect:r,className:o,style:i,children:l,placeholder:c="",...d}=e,u=Bn(Yn,r),{onValueNodeHasChildrenChange:f}=u,p=void 0!==l,h=a(t,u.onValueNodeChange);return m(()=>{f(p)},[f,p]),n.jsx(s.span,{...d,ref:h,style:{pointerEvents:"none"},children:kr(u.value)?n.jsx(n.Fragment,{children:c}):l})});Xn.displayName=Yn;var Gn=t.forwardRef((e,t)=>{const{__scopeSelect:r,children:o,...i}=e;return n.jsx(s.span,{"aria-hidden":!0,...i,ref:t,children:o||"▼"})});Gn.displayName="SelectIcon";var Zn=e=>n.jsx(g,{asChild:!0,...e});Zn.displayName="SelectPortal";var Jn="SelectContent",Qn=t.forwardRef((e,r)=>{const o=Bn(Jn,e.__scopeSelect),[i,a]=t.useState();if(m(()=>{a(new DocumentFragment)},[]),!o.open){const t=i;return t?h.createPortal(n.jsx(tr,{scope:e.__scopeSelect,children:n.jsx(Ln.Slot,{scope:e.__scopeSelect,children:n.jsx("div",{children:e.children})})}),t):null}return n.jsx(or,{...e,ref:r})});Qn.displayName=Jn;var er=10,[tr,nr]=Hn(Jn),rr=Tn("SelectContent.RemoveScroll"),or=t.forwardRef((e,r)=>{const{__scopeSelect:o,position:i="item-aligned",onCloseAutoFocus:l,onEscapeKeyDown:s,onPointerDownOutside:d,side:u,sideOffset:f,align:p,alignOffset:h,arrowPadding:m,collisionBoundary:g,collisionPadding:S,sticky:R,hideWhenDetached:C,avoidCollisions:j,...N}=e,T=Bn(Jn,o),[A,P]=t.useState(null),[E,D]=t.useState(null),k=a(r,e=>P(e)),[_,I]=t.useState(null),[O,L]=t.useState(null),M=Mn(o),[F,H]=t.useState(!1),V=t.useRef(!1);t.useEffect(()=>{if(A)return v(A)},[A]),y();const W=t.useCallback(e=>{const[t,...n]=M().map(e=>e.ref.current),[r]=n.slice(-1),o=document.activeElement;for(const i of e){if(i===o)return;if(null==i||i.scrollIntoView({block:"nearest"}),i===t&&E&&(E.scrollTop=0),i===r&&E&&(E.scrollTop=E.scrollHeight),null==i||i.focus(),document.activeElement!==o)return}},[M,E]),B=t.useCallback(()=>W([_,A]),[W,_,A]);t.useEffect(()=>{F&&B()},[F,B]);const{onOpenChange:z,triggerPointerDownPosRef:$}=T;t.useEffect(()=>{if(A){let e={x:0,y:0};const t=t=>{var n,r;e={x:Math.abs(Math.round(t.pageX)-((null==(n=$.current)?void 0:n.x)??0)),y:Math.abs(Math.round(t.pageY)-((null==(r=$.current)?void 0:r.y)??0))}},n=n=>{e.x<=10&&e.y<=10?n.preventDefault():A.contains(n.target)||z(!1),document.removeEventListener("pointermove",t),$.current=null};return null!==$.current&&(document.addEventListener("pointermove",t),document.addEventListener("pointerup",n,{capture:!0,once:!0})),()=>{document.removeEventListener("pointermove",t),document.removeEventListener("pointerup",n,{capture:!0})}}},[A,z,$]),t.useEffect(()=>{const e=()=>z(!1);return window.addEventListener("blur",e),window.addEventListener("resize",e),()=>{window.removeEventListener("blur",e),window.removeEventListener("resize",e)}},[z]);const[K,U]=_r(e=>{const t=M().filter(e=>!e.disabled),n=t.find(e=>e.ref.current===document.activeElement),r=Ir(t,e,n);r&&setTimeout(()=>r.ref.current.focus())}),q=t.useCallback((e,t,n)=>{const r=!V.current&&!n;(void 0!==T.value&&T.value===t||r)&&(I(e),r&&(V.current=!0))},[T.value]),Y=t.useCallback(()=>null==A?void 0:A.focus(),[A]),X=t.useCallback((e,t,n)=>{const r=!V.current&&!n;(void 0!==T.value&&T.value===t||r)&&L(e)},[T.value]),G="popper"===i?ar:ir,Z=G===ar?{side:u,sideOffset:f,align:p,alignOffset:h,arrowPadding:m,collisionBoundary:g,collisionPadding:S,sticky:R,hideWhenDetached:C,avoidCollisions:j}:{};return n.jsx(tr,{scope:o,content:A,viewport:E,onViewportChange:D,itemRefCallback:q,selectedItem:_,onItemLeave:Y,itemTextRefCallback:X,focusSelectedItem:B,selectedItemText:O,position:i,isPositioned:F,searchRef:K,children:n.jsx(w,{as:rr,allowPinchZoom:!0,children:n.jsx(x,{asChild:!0,trapped:T.open,onMountAutoFocus:e=>{e.preventDefault()},onUnmountAutoFocus:c(l,e=>{var t;null==(t=T.trigger)||t.focus({preventScroll:!0}),e.preventDefault()}),children:n.jsx(b,{asChild:!0,disableOutsidePointerEvents:!0,onEscapeKeyDown:s,onPointerDownOutside:d,onFocusOutside:e=>e.preventDefault(),onDismiss:()=>T.onOpenChange(!1),children:n.jsx(G,{role:"listbox",id:T.contentId,"data-state":T.open?"open":"closed",dir:T.dir,onContextMenu:e=>e.preventDefault(),...N,...Z,onPlaced:()=>H(!0),ref:k,style:{display:"flex",flexDirection:"column",outline:"none",...N.style},onKeyDown:c(N.onKeyDown,e=>{const t=e.ctrlKey||e.altKey||e.metaKey;if("Tab"===e.key&&e.preventDefault(),t||1!==e.key.length||U(e.key),["ArrowUp","ArrowDown","Home","End"].includes(e.key)){let t=M().filter(e=>!e.disabled).map(e=>e.ref.current);if(["ArrowUp","End"].includes(e.key)&&(t=t.slice().reverse()),["ArrowUp","ArrowDown"].includes(e.key)){const n=e.target,r=t.indexOf(n);t=t.slice(r+1)}setTimeout(()=>W(t)),e.preventDefault()}})})})})})})});or.displayName="SelectContentImpl";var ir=t.forwardRef((e,r)=>{const{__scopeSelect:o,onPlaced:i,...l}=e,c=Bn(Jn,o),d=nr(Jn,o),[u,f]=t.useState(null),[p,h]=t.useState(null),g=a(r,e=>h(e)),v=Mn(o),y=t.useRef(!1),w=t.useRef(!0),{viewport:x,selectedItem:b,selectedItemText:S,focusSelectedItem:R}=d,j=t.useCallback(()=>{if(c.trigger&&c.valueNode&&u&&p&&x&&b&&S){const e=c.trigger.getBoundingClientRect(),t=p.getBoundingClientRect(),n=c.valueNode.getBoundingClientRect(),r=S.getBoundingClientRect();if("rtl"!==c.dir){const o=r.left-t.left,i=n.left-o,a=e.left-i,l=e.width+a,s=Math.max(l,t.width),c=window.innerWidth-er,d=C(i,[er,Math.max(er,c-s)]);u.style.minWidth=l+"px",u.style.left=d+"px"}else{const o=t.right-r.right,i=window.innerWidth-n.right-o,a=window.innerWidth-e.right-i,l=e.width+a,s=Math.max(l,t.width),c=window.innerWidth-er,d=C(i,[er,Math.max(er,c-s)]);u.style.minWidth=l+"px",u.style.right=d+"px"}const o=v(),a=window.innerHeight-2*er,l=x.scrollHeight,s=window.getComputedStyle(p),d=parseInt(s.borderTopWidth,10),f=parseInt(s.paddingTop,10),h=parseInt(s.borderBottomWidth,10),m=d+f+l+parseInt(s.paddingBottom,10)+h,g=Math.min(5*b.offsetHeight,m),w=window.getComputedStyle(x),R=parseInt(w.paddingTop,10),j=parseInt(w.paddingBottom,10),N=e.top+e.height/2-er,T=a-N,A=b.offsetHeight/2,P=d+f+(b.offsetTop+A),E=m-P;if(P<=N){const e=o.length>0&&b===o[o.length-1].ref.current;u.style.bottom="0px";const t=p.clientHeight-x.offsetTop-x.offsetHeight,n=P+Math.max(T,A+(e?j:0)+t+h);u.style.height=n+"px"}else{const e=o.length>0&&b===o[0].ref.current;u.style.top="0px";const t=Math.max(N,d+x.offsetTop+(e?R:0)+A)+E;u.style.height=t+"px",x.scrollTop=P-N+x.offsetTop}u.style.margin=`${er}px 0`,u.style.minHeight=g+"px",u.style.maxHeight=a+"px",null==i||i(),requestAnimationFrame(()=>y.current=!0)}},[v,c.trigger,c.valueNode,u,p,x,b,S,c.dir,i]);m(()=>j(),[j]);const[N,T]=t.useState();m(()=>{p&&T(window.getComputedStyle(p).zIndex)},[p]);const A=t.useCallback(e=>{e&&!0===w.current&&(j(),null==R||R(),w.current=!1)},[j,R]);return n.jsx(lr,{scope:o,contentWrapper:u,shouldExpandOnScrollRef:y,onScrollButtonChange:A,children:n.jsx("div",{ref:f,style:{display:"flex",flexDirection:"column",position:"fixed",zIndex:N},children:n.jsx(s.div,{...l,ref:g,style:{boxSizing:"border-box",maxHeight:"100%",...l.style}})})})});ir.displayName="SelectItemAlignedPosition";var ar=t.forwardRef((e,t)=>{const{__scopeSelect:r,align:o="start",collisionPadding:i=er,...a}=e,l=Vn(r);return n.jsx(jn,{...l,...a,ref:t,align:o,collisionPadding:i,style:{boxSizing:"border-box",...a.style,"--radix-select-content-transform-origin":"var(--radix-popper-transform-origin)","--radix-select-content-available-width":"var(--radix-popper-available-width)","--radix-select-content-available-height":"var(--radix-popper-available-height)","--radix-select-trigger-width":"var(--radix-popper-anchor-width)","--radix-select-trigger-height":"var(--radix-popper-anchor-height)"}})});ar.displayName="SelectPopperPosition";var[lr,sr]=Hn(Jn,{}),cr="SelectViewport",dr=t.forwardRef((e,r)=>{const{__scopeSelect:o,nonce:i,...l}=e,d=nr(cr,o),u=sr(cr,o),f=a(r,d.onViewportChange),p=t.useRef(0);return n.jsxs(n.Fragment,{children:[n.jsx("style",{dangerouslySetInnerHTML:{__html:"[data-radix-select-viewport]{scrollbar-width:none;-ms-overflow-style:none;-webkit-overflow-scrolling:touch;}[data-radix-select-viewport]::-webkit-scrollbar{display:none}"},nonce:i}),n.jsx(Ln.Slot,{scope:o,children:n.jsx(s.div,{"data-radix-select-viewport":"",role:"presentation",...l,ref:f,style:{position:"relative",flex:1,overflow:"hidden auto",...l.style},onScroll:c(l.onScroll,e=>{const t=e.currentTarget,{contentWrapper:n,shouldExpandOnScrollRef:r}=u;if((null==r?void 0:r.current)&&n){const e=Math.abs(p.current-t.scrollTop);if(e>0){const r=window.innerHeight-2*er,o=parseFloat(n.style.minHeight),i=parseFloat(n.style.height),a=Math.max(o,i);if(a<r){const o=a+e,i=Math.min(r,o),l=o-i;n.style.height=i+"px","0px"===n.style.bottom&&(t.scrollTop=l>0?l:0,n.style.justifyContent="flex-end")}}}p.current=t.scrollTop})})})]})});dr.displayName=cr;var ur="SelectGroup",[fr,pr]=Hn(ur);t.forwardRef((e,t)=>{const{__scopeSelect:r,...o}=e,i=l();return n.jsx(fr,{scope:r,id:i,children:n.jsx(s.div,{role:"group","aria-labelledby":i,...o,ref:t})})}).displayName=ur;var hr="SelectLabel",mr=t.forwardRef((e,t)=>{const{__scopeSelect:r,...o}=e,i=pr(hr,r);return n.jsx(s.div,{id:i.id,...o,ref:t})});mr.displayName=hr;var gr="SelectItem",[vr,yr]=Hn(gr),wr=t.forwardRef((e,r)=>{const{__scopeSelect:o,value:i,disabled:d=!1,textValue:u,...f}=e,p=Bn(gr,o),h=nr(gr,o),m=p.value===i,[g,v]=t.useState(u??""),[y,w]=t.useState(!1),x=a(r,e=>{var t;return null==(t=h.itemRefCallback)?void 0:t.call(h,e,i,d)}),b=l(),S=t.useRef("touch"),R=()=>{d||(p.onValueChange(i),p.onOpenChange(!1))};if(""===i)throw new Error("A <Select.Item /> must have a value prop that is not an empty string. This is because the Select value can be set to an empty string to clear the selection and show the placeholder.");return n.jsx(vr,{scope:o,value:i,disabled:d,textId:b,isSelected:m,onItemTextChange:t.useCallback(e=>{v(t=>t||((null==e?void 0:e.textContent)??"").trim())},[]),children:n.jsx(Ln.ItemSlot,{scope:o,value:i,disabled:d,textValue:g,children:n.jsx(s.div,{role:"option","aria-labelledby":b,"data-highlighted":y?"":void 0,"aria-selected":m&&y,"data-state":m?"checked":"unchecked","aria-disabled":d||void 0,"data-disabled":d?"":void 0,tabIndex:d?void 0:-1,...f,ref:x,onFocus:c(f.onFocus,()=>w(!0)),onBlur:c(f.onBlur,()=>w(!1)),onClick:c(f.onClick,()=>{"mouse"!==S.current&&R()}),onPointerUp:c(f.onPointerUp,()=>{"mouse"===S.current&&R()}),onPointerDown:c(f.onPointerDown,e=>{S.current=e.pointerType}),onPointerMove:c(f.onPointerMove,e=>{var t;S.current=e.pointerType,d?null==(t=h.onItemLeave)||t.call(h):"mouse"===S.current&&e.currentTarget.focus({preventScroll:!0})}),onPointerLeave:c(f.onPointerLeave,e=>{var t;e.currentTarget===document.activeElement&&(null==(t=h.onItemLeave)||t.call(h))}),onKeyDown:c(f.onKeyDown,e=>{var t;""!==(null==(t=h.searchRef)?void 0:t.current)&&" "===e.key||(In.includes(e.key)&&R()," "===e.key&&e.preventDefault())})})})})});wr.displayName=gr;var xr="SelectItemText",br=t.forwardRef((e,r)=>{const{__scopeSelect:o,className:i,style:l,...c}=e,d=Bn(xr,o),u=nr(xr,o),f=yr(xr,o),p=$n(xr,o),[g,v]=t.useState(null),y=a(r,e=>v(e),f.onItemTextChange,e=>{var t;return null==(t=u.itemTextRefCallback)?void 0:t.call(u,e,f.value,f.disabled)}),w=null==g?void 0:g.textContent,x=t.useMemo(()=>n.jsx("option",{value:f.value,disabled:f.disabled,children:w},f.value),[f.disabled,f.value,w]),{onNativeOptionAdd:b,onNativeOptionRemove:S}=p;return m(()=>(b(x),()=>S(x)),[b,S,x]),n.jsxs(n.Fragment,{children:[n.jsx(s.span,{id:f.textId,...c,ref:y}),f.isSelected&&d.valueNode&&!d.valueNodeHasChildren?h.createPortal(c.children,d.valueNode):null]})});br.displayName=xr;var Sr="SelectItemIndicator",Rr=t.forwardRef((e,t)=>{const{__scopeSelect:r,...o}=e;return yr(Sr,r).isSelected?n.jsx(s.span,{"aria-hidden":!0,...o,ref:t}):null});Rr.displayName=Sr;var Cr="SelectScrollUpButton",jr=t.forwardRef((e,r)=>{const o=nr(Cr,e.__scopeSelect),i=sr(Cr,e.__scopeSelect),[l,s]=t.useState(!1),c=a(r,i.onScrollButtonChange);return m(()=>{if(o.viewport&&o.isPositioned){let e=function(){const e=t.scrollTop>0;s(e)};const t=o.viewport;return e(),t.addEventListener("scroll",e),()=>t.removeEventListener("scroll",e)}},[o.viewport,o.isPositioned]),l?n.jsx(Ar,{...e,ref:c,onAutoScroll:()=>{const{viewport:e,selectedItem:t}=o;e&&t&&(e.scrollTop=e.scrollTop-t.offsetHeight)}}):null});jr.displayName=Cr;var Nr="SelectScrollDownButton",Tr=t.forwardRef((e,r)=>{const o=nr(Nr,e.__scopeSelect),i=sr(Nr,e.__scopeSelect),[l,s]=t.useState(!1),c=a(r,i.onScrollButtonChange);return m(()=>{if(o.viewport&&o.isPositioned){let e=function(){const e=t.scrollHeight-t.clientHeight,n=Math.ceil(t.scrollTop)<e;s(n)};const t=o.viewport;return e(),t.addEventListener("scroll",e),()=>t.removeEventListener("scroll",e)}},[o.viewport,o.isPositioned]),l?n.jsx(Ar,{...e,ref:c,onAutoScroll:()=>{const{viewport:e,selectedItem:t}=o;e&&t&&(e.scrollTop=e.scrollTop+t.offsetHeight)}}):null});Tr.displayName=Nr;var Ar=t.forwardRef((e,r)=>{const{__scopeSelect:o,onAutoScroll:i,...a}=e,l=nr("SelectScrollButton",o),d=t.useRef(null),u=Mn(o),f=t.useCallback(()=>{null!==d.current&&(window.clearInterval(d.current),d.current=null)},[]);return t.useEffect(()=>()=>f(),[f]),m(()=>{var e;const t=u().find(e=>e.ref.current===document.activeElement);null==(e=null==t?void 0:t.ref.current)||e.scrollIntoView({block:"nearest"})},[u]),n.jsx(s.div,{"aria-hidden":!0,...a,ref:r,style:{flexShrink:0,...a.style},onPointerDown:c(a.onPointerDown,()=>{null===d.current&&(d.current=window.setInterval(i,50))}),onPointerMove:c(a.onPointerMove,()=>{var e;null==(e=l.onItemLeave)||e.call(l),null===d.current&&(d.current=window.setInterval(i,50))}),onPointerLeave:c(a.onPointerLeave,()=>{f()})})}),Pr=t.forwardRef((e,t)=>{const{__scopeSelect:r,...o}=e;return n.jsx(s.div,{"aria-hidden":!0,...o,ref:t})});Pr.displayName="SelectSeparator";var Er="SelectArrow";t.forwardRef((e,t)=>{const{__scopeSelect:r,...o}=e,i=Vn(r),a=Bn(Er,r),l=nr(Er,r);return a.open&&"popper"===l.position?n.jsx(Nn,{...i,...o,ref:t}):null}).displayName=Er;var Dr=t.forwardRef(({__scopeSelect:e,value:r,...o},i)=>{const l=t.useRef(null),c=a(i,l),d=Dn(r);return t.useEffect(()=>{const e=l.current;if(!e)return;const t=window.HTMLSelectElement.prototype,n=Object.getOwnPropertyDescriptor(t,"value").set;if(d!==r&&n){const t=new Event("change",{bubbles:!0});n.call(e,r),e.dispatchEvent(t)}},[d,r]),n.jsx(s.select,{...o,style:{...kn,...o.style},ref:c,defaultValue:r})});function kr(e){return""===e||void 0===e}function _r(e){const n=u(e),r=t.useRef(""),o=t.useRef(0),i=t.useCallback(e=>{const t=r.current+e;n(t),function e(t){r.current=t,window.clearTimeout(o.current),""!==t&&(o.current=window.setTimeout(()=>e(""),1e3))}(t)},[n]),a=t.useCallback(()=>{r.current="",window.clearTimeout(o.current)},[]);return t.useEffect(()=>()=>window.clearTimeout(o.current),[]),[r,i,a]}function Ir(e,t,n){const r=t.length>1&&Array.from(t).every(e=>e===t[0])?t[0]:t,o=n?e.indexOf(n):-1;let i=(a=e,l=Math.max(o,0),a.map((e,t)=>a[(l+t)%a.length]));var a,l;1===r.length&&(i=i.filter(e=>e!==n));const s=i.find(e=>e.textValue.toLowerCase().startsWith(r.toLowerCase()));return s!==n?s:void 0}Dr.displayName="SelectBubbleInput";var Or=qn,Lr=Gn,Mr=Zn,Fr=Qn,Hr=dr,Vr=mr,Wr=wr,Br=br,zr=Rr,$r=jr,Kr=Tr,Ur=Pr;const qr=Kn,Yr=Xn,Xr=t.forwardRef(({className:e,children:t,...r},o)=>n.jsxs(Or,{ref:o,className:p("flex h-10 w-full items-center justify-between rounded-md border border-input bg-background px-3 py-2 text-sm ring-offset-background placeholder:text-muted-foreground focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2 disabled:cursor-not-allowed disabled:opacity-50 [&>span]:line-clamp-1",e),...r,children:[t,n.jsx(Lr,{asChild:!0,children:n.jsx(N,{className:"h-4 w-4 opacity-50"})})]}));Xr.displayName=Or.displayName;const Gr=t.forwardRef(({className:e,...t},r)=>n.jsx($r,{ref:r,className:p("flex cursor-default items-center justify-center py-1",e),...t,children:n.jsx(j,{className:"h-4 w-4"})}));Gr.displayName=$r.displayName;const Zr=t.forwardRef(({className:e,...t},r)=>n.jsx(Kr,{ref:r,className:p("flex cursor-default items-center justify-center py-1",e),...t,children:n.jsx(N,{className:"h-4 w-4"})}));Zr.displayName=Kr.displayName;const Jr=t.forwardRef(({className:e,children:t,position:r="popper",...o},i)=>n.jsx(Mr,{children:n.jsxs(Fr,{ref:i,className:p("relative z-50 max-h-96 min-w-[8rem] overflow-hidden rounded-md border bg-popover text-popover-foreground shadow-md data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2","popper"===r&&"data-[side=bottom]:translate-y-1 data-[side=left]:-translate-x-1 data-[side=right]:translate-x-1 data-[side=top]:-translate-y-1",e),position:r,...o,children:[n.jsx(Gr,{}),n.jsx(Hr,{className:p("p-1","popper"===r&&"h-[var(--radix-select-trigger-height)] w-full min-w-[var(--radix-select-trigger-width)]"),children:t}),n.jsx(Zr,{})]})}));Jr.displayName=Fr.displayName;t.forwardRef(({className:e,...t},r)=>n.jsx(Vr,{ref:r,className:p("py-1.5 pl-8 pr-2 text-sm font-semibold",e),...t})).displayName=Vr.displayName;const Qr=t.forwardRef(({className:e,children:t,...r},o)=>n.jsxs(Wr,{ref:o,className:p("relative flex w-full cursor-default select-none items-center rounded-sm py-1.5 pl-8 pr-2 text-sm outline-none focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50",e),...r,children:[n.jsx("span",{className:"absolute left-2 flex h-3.5 w-3.5 items-center justify-center",children:n.jsx(zr,{children:n.jsx(S,{className:"h-4 w-4"})})}),n.jsx(Br,{children:t})]}));Qr.displayName=Wr.displayName;t.forwardRef(({className:e,...t},r)=>n.jsx(Ur,{ref:r,className:p("-mx-1 my-1 h-px bg-muted",e),...t})).displayName=Ur.displayName;export{Cn as A,jn as C,J as I,Rn as R,A as S,ge as T,P as U,ve as a,ye as b,we as c,ln as d,B as e,I as f,Z as g,Nn as h,qr as i,Xr as j,Yr as k,Jr as l,Qr as m,T as n,rn as o,Dn as u};
@@ -10,8 +10,8 @@
10
10
  <meta name="apple-mobile-web-app-capable" content="yes" />
11
11
  <meta name="apple-mobile-web-app-status-bar-style" content="black-translucent" />
12
12
  <title>CC Web</title>
13
- <script type="module" crossorigin src="/assets/index-PkEuCOb6.js"></script>
14
- <link rel="stylesheet" crossorigin href="/assets/index-BJDTvhqr.css">
13
+ <script type="module" crossorigin src="/assets/index-BjokCGs1.js"></script>
14
+ <link rel="stylesheet" crossorigin href="/assets/index-nnLME6Go.css">
15
15
  </head>
16
16
  <body>
17
17
  <div id="root"></div>
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@tom2012/cc-web",
3
- "version": "2026.5.8-a",
3
+ "version": "2026.5.11-b",
4
4
  "description": "Self-hosted web UI for Claude Code CLI — run Claude in your browser",
5
5
  "private": false,
6
6
  "main": "electron/dist/main.js",
@@ -1,13 +0,0 @@
1
- import{c as e,r as s,$ as t,aX as n,j as a,a1 as r,a0 as o,W as l,d as i,U as c,aY as d,aZ as u,Z as h,a_ as m,V as p,a2 as x,a4 as f,a5 as g,a6 as v,a7 as y,x as j,aE as b,aG as w,a$ as _,t as N,al as k,I as S,B as C,aM as R,X as P,D as T,b0 as I,b1 as E,b2 as M,b3 as D,u as H,b4 as L,T as O,b5 as A,b6 as V,b7 as F,b8 as B,b9 as z,aF as W,ba as q,bb as K,h as U,S as G,bc as $,aI as Z,K as X,s as Y,bd as Q}from"./index-PkEuCOb6.js";import{u as J,R as ee,d as se,f as te,A as ne,C as ae,h as re,S as oe,U as le,T as ie,a as ce,b as de,c as ue}from"./index-DFmoROkt.js";import{u as he,c as me,C as pe,a as xe}from"./index-QPAdq047.js";import{C as fe}from"./chevron-down-CabXIthZ.js";
2
- /**
3
- * @license lucide-react v0.309.0 - ISC
4
- *
5
- * This source code is licensed under the ISC license.
6
- * See the LICENSE file in the root directory of this source tree.
7
- */const ge=e("Activity",[["path",{d:"M22 12h-4l-3 9L9 3l-3 9H2",key:"d5dnw9"}]]),ve=e("AlertTriangle",[["path",{d:"m21.73 18-8-14a2 2 0 0 0-3.48 0l-8 14A2 2 0 0 0 4 21h16a2 2 0 0 0 1.73-3Z",key:"c3ski4"}],["path",{d:"M12 9v4",key:"juzpu7"}],["path",{d:"M12 17h.01",key:"p32p05"}]]),ye=e("Bell",[["path",{d:"M6 8a6 6 0 0 1 12 0c0 7 3 9 3 9H3s3-2 3-9",key:"1qo2s2"}],["path",{d:"M10.3 21a1.94 1.94 0 0 0 3.4 0",key:"qgo35s"}]]),je=e("ExternalLink",[["path",{d:"M18 13v6a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h6",key:"a6xqqp"}],["polyline",{points:"15 3 21 3 21 9",key:"mznyad"}],["line",{x1:"10",x2:"21",y1:"14",y2:"3",key:"18c3s4"}]]),be=e("Github",[["path",{d:"M15 22v-4a4.8 4.8 0 0 0-1-3.5c3 0 6-2 6-5.5.08-1.25-.27-2.48-1-3.5.28-1.15.28-2.35 0-3.5 0 0-1 0-3 1.5-2.64-.5-5.36-.5-8 0C6 2 5 2 5 2c-.3 1.15-.3 2.35 0 3.5A5.403 5.403 0 0 0 4 9c0 3.5 3 5.5 6 5.5-.39.49-.68 1.05-.85 1.65-.17.6-.22 1.23-.15 1.85v4",key:"tonef"}],["path",{d:"M9 18c-4.51 2-5-2-7-2",key:"9comsn"}]]),we=e("Languages",[["path",{d:"m5 8 6 6",key:"1wu5hv"}],["path",{d:"m4 14 6-6 2-3",key:"1k1g8d"}],["path",{d:"M2 5h12",key:"or177f"}],["path",{d:"M7 2h1",key:"1t2jsx"}],["path",{d:"m22 22-5-10-5 10",key:"don7ne"}],["path",{d:"M14 18h6",key:"1m8k6r"}]]),_e=e("Plug",[["path",{d:"M12 22v-5",key:"1ega77"}],["path",{d:"M9 8V2",key:"14iosj"}],["path",{d:"M15 8V2",key:"18g5xt"}],["path",{d:"M18 8v5a4 4 0 0 1-4 4h-4a4 4 0 0 1-4-4V8Z",key:"osxo6l"}]]),Ne=e("UploadCloud",[["path",{d:"M4 14.899A7 7 0 1 1 15.71 8h1.79a4.5 4.5 0 0 1 2.5 8.242",key:"1pljnt"}],["path",{d:"M12 12v9",key:"192myk"}],["path",{d:"m16 16-4-4-4 4",key:"119tzi"}]]);
8
- /**
9
- * @license lucide-react v0.309.0 - ISC
10
- *
11
- * This source code is licensed under the ISC license.
12
- * See the LICENSE file in the root directory of this source tree.
13
- */function ke(e){const t=s.useRef({value:e,previous:e});return s.useMemo(()=>(t.current.value!==e&&(t.current.previous=t.current.value,t.current.value=e),t.current.previous),[e])}var Se="Switch",[Ce]=l(Se),[Re,Pe]=Ce(Se),Te=s.forwardRef((e,l)=>{const{__scopeSwitch:i,name:c,checked:d,defaultChecked:u,required:h,disabled:m,value:p="on",onCheckedChange:x,form:f,...g}=e,[v,y]=s.useState(null),j=t(l,e=>y(e)),b=s.useRef(!1),w=!v||(f||!!v.closest("form")),[_,N]=n({prop:d,defaultProp:u??!1,onChange:x,caller:Se});return a.jsxs(Re,{scope:i,checked:_,disabled:m,children:[a.jsx(r.button,{type:"button",role:"switch","aria-checked":_,"aria-required":h,"data-state":De(_),"data-disabled":m?"":void 0,disabled:m,value:p,...g,ref:j,onClick:o(e.onClick,e=>{N(e=>!e),w&&(b.current=e.isPropagationStopped(),b.current||e.stopPropagation())})}),w&&a.jsx(Me,{control:v,bubbles:!b.current,name:c,value:p,checked:_,required:h,disabled:m,form:f,style:{transform:"translateX(-100%)"}})]})});Te.displayName=Se;var Ie="SwitchThumb",Ee=s.forwardRef((e,s)=>{const{__scopeSwitch:t,...n}=e,o=Pe(Ie,t);return a.jsx(r.span,{"data-state":De(o.checked),"data-disabled":o.disabled?"":void 0,...n,ref:s})});Ee.displayName=Ie;var Me=s.forwardRef(({__scopeSwitch:e,control:n,checked:r,bubbles:o=!0,...l},i)=>{const c=s.useRef(null),d=t(c,i),u=ke(r),h=J(n);return s.useEffect(()=>{const e=c.current;if(!e)return;const s=window.HTMLInputElement.prototype,t=Object.getOwnPropertyDescriptor(s,"checked").set;if(u!==r&&t){const s=new Event("click",{bubbles:o});t.call(e,r),e.dispatchEvent(s)}},[u,r,o]),a.jsx("input",{type:"checkbox","aria-hidden":!0,defaultChecked:r,...l,tabIndex:-1,ref:d,style:{...l.style,...h,position:"absolute",pointerEvents:"none",opacity:0,margin:0}})});function De(e){return e?"checked":"unchecked"}Me.displayName="SwitchBubbleInput";var He=Te,Le=Ee;const Oe=s.forwardRef(({className:e,...s},t)=>a.jsx(He,{className:i("peer inline-flex h-[24px] w-[44px] shrink-0 cursor-pointer items-center rounded-full border-2 border-transparent transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 focus-visible:ring-offset-background disabled:cursor-not-allowed disabled:opacity-50 data-[state=checked]:bg-primary data-[state=unchecked]:bg-input",e),...s,ref:t,children:a.jsx(Le,{className:i("pointer-events-none block h-5 w-5 rounded-full bg-background shadow-lg ring-0 transition-transform data-[state=checked]:translate-x-5 data-[state=unchecked]:translate-x-0")})}));function Ae(e){const t=Ve(e),n=s.forwardRef((e,n)=>{const{children:r,...o}=e,l=s.Children.toArray(r),i=l.find(Be);if(i){const e=i.props.children,r=l.map(t=>t===i?s.Children.count(e)>1?s.Children.only(null):s.isValidElement(e)?e.props.children:null:t);return a.jsx(t,{...o,ref:n,children:s.isValidElement(e)?s.cloneElement(e,void 0,r):null})}return a.jsx(t,{...o,ref:n,children:r})});return n.displayName=`${e}.Slot`,n}function Ve(e){const t=s.forwardRef((e,t)=>{const{children:n,...a}=e;if(s.isValidElement(n)){const e=function(e){var s,t;let n=null==(s=Object.getOwnPropertyDescriptor(e.props,"ref"))?void 0:s.get,a=n&&"isReactWarning"in n&&n.isReactWarning;if(a)return e.ref;if(n=null==(t=Object.getOwnPropertyDescriptor(e,"ref"))?void 0:t.get,a=n&&"isReactWarning"in n&&n.isReactWarning,a)return e.props.ref;return e.props.ref||e.ref}(n),r=function(e,s){const t={...s};for(const n in s){const a=e[n],r=s[n];/^on[A-Z]/.test(n)?a&&r?t[n]=(...e)=>{const s=r(...e);return a(...e),s}:a&&(t[n]=a):"style"===n?t[n]={...a,...r}:"className"===n&&(t[n]=[a,r].filter(Boolean).join(" "))}return{...e,...t}}(a,n.props);return n.type!==s.Fragment&&(r.ref=t?c(t,e):e),s.cloneElement(n,r)}return s.Children.count(n)>1?s.Children.only(null):null});return t.displayName=`${e}.SlotClone`,t}Oe.displayName=He.displayName;var Fe=Symbol("radix.slottable");function Be(e){return s.isValidElement(e)&&"function"==typeof e.type&&"__radixId"in e.type&&e.type.__radixId===Fe}var ze=Object.freeze({position:"absolute",border:0,width:1,height:1,padding:0,margin:-1,overflow:"hidden",clip:"rect(0, 0, 0, 0)",whiteSpace:"nowrap",wordWrap:"normal"});s.forwardRef((e,s)=>a.jsx(r.span,{...e,ref:s,style:{...ze,...e.style}})).displayName="VisuallyHidden";var We=[" ","Enter","ArrowUp","ArrowDown"],qe=[" ","Enter"],Ke="Select",[Ue,Ge,$e]=te(Ke),[Ze]=l(Ke,[$e,se]),Xe=se(),[Ye,Qe]=Ze(Ke),[Je,es]=Ze(Ke),ss=e=>{const{__scopeSelect:t,children:r,open:o,defaultOpen:l,onOpenChange:i,value:c,defaultValue:u,onValueChange:h,dir:m,name:p,autoComplete:x,disabled:f,required:g,form:v}=e,y=Xe(t),[j,b]=s.useState(null),[w,_]=s.useState(null),[N,k]=s.useState(!1),S=he(m),[C,R]=n({prop:o,defaultProp:l??!1,onChange:i,caller:Ke}),[P,T]=n({prop:c,defaultProp:u,onChange:h,caller:Ke}),I=s.useRef(null),E=!j||(v||!!j.closest("form")),[M,D]=s.useState(new Set),H=Array.from(M).map(e=>e.props.value).join(";");return a.jsx(ee,{...y,children:a.jsxs(Ye,{required:g,scope:t,trigger:j,onTriggerChange:b,valueNode:w,onValueNodeChange:_,valueNodeHasChildren:N,onValueNodeHasChildrenChange:k,contentId:d(),value:P,onValueChange:T,open:C,onOpenChange:R,dir:S,triggerPointerDownPosRef:I,disabled:f,children:[a.jsx(Ue.Provider,{scope:t,children:a.jsx(Je,{scope:e.__scopeSelect,onNativeOptionAdd:s.useCallback(e=>{D(s=>new Set(s).add(e))},[]),onNativeOptionRemove:s.useCallback(e=>{D(s=>{const t=new Set(s);return t.delete(e),t})},[]),children:r})}),E?a.jsxs(Bs,{"aria-hidden":!0,required:g,tabIndex:-1,name:p,autoComplete:x,value:P,onChange:e=>T(e.target.value),disabled:f,form:v,children:[void 0===P?a.jsx("option",{value:""}):null,Array.from(M)]},H):null]})})};ss.displayName=Ke;var ts="SelectTrigger",ns=s.forwardRef((e,n)=>{const{__scopeSelect:l,disabled:i=!1,...c}=e,d=Xe(l),u=Qe(ts,l),h=u.disabled||i,m=t(n,u.onTriggerChange),p=Ge(l),x=s.useRef("touch"),[f,g,v]=Ws(e=>{const s=p().filter(e=>!e.disabled),t=s.find(e=>e.value===u.value),n=qs(s,e,t);void 0!==n&&u.onValueChange(n.value)}),y=e=>{h||(u.onOpenChange(!0),v()),e&&(u.triggerPointerDownPosRef.current={x:Math.round(e.pageX),y:Math.round(e.pageY)})};return a.jsx(ne,{asChild:!0,...d,children:a.jsx(r.button,{type:"button",role:"combobox","aria-controls":u.contentId,"aria-expanded":u.open,"aria-required":u.required,"aria-autocomplete":"none",dir:u.dir,"data-state":u.open?"open":"closed",disabled:h,"data-disabled":h?"":void 0,"data-placeholder":zs(u.value)?"":void 0,...c,ref:m,onClick:o(c.onClick,e=>{e.currentTarget.focus(),"mouse"!==x.current&&y(e)}),onPointerDown:o(c.onPointerDown,e=>{x.current=e.pointerType;const s=e.target;s.hasPointerCapture(e.pointerId)&&s.releasePointerCapture(e.pointerId),0===e.button&&!1===e.ctrlKey&&"mouse"===e.pointerType&&(y(e),e.preventDefault())}),onKeyDown:o(c.onKeyDown,e=>{const s=""!==f.current;e.ctrlKey||e.altKey||e.metaKey||1!==e.key.length||g(e.key),s&&" "===e.key||We.includes(e.key)&&(y(),e.preventDefault())})})})});ns.displayName=ts;var as="SelectValue",rs=s.forwardRef((e,s)=>{const{__scopeSelect:n,className:o,style:l,children:i,placeholder:c="",...d}=e,h=Qe(as,n),{onValueNodeHasChildrenChange:m}=h,p=void 0!==i,x=t(s,h.onValueNodeChange);return u(()=>{m(p)},[m,p]),a.jsx(r.span,{...d,ref:x,style:{pointerEvents:"none"},children:zs(h.value)?a.jsx(a.Fragment,{children:c}):i})});rs.displayName=as;var os=s.forwardRef((e,s)=>{const{__scopeSelect:t,children:n,...o}=e;return a.jsx(r.span,{"aria-hidden":!0,...o,ref:s,children:n||"▼"})});os.displayName="SelectIcon";var ls=e=>a.jsx(h,{asChild:!0,...e});ls.displayName="SelectPortal";var is="SelectContent",cs=s.forwardRef((e,t)=>{const n=Qe(is,e.__scopeSelect),[r,o]=s.useState();if(u(()=>{o(new DocumentFragment)},[]),!n.open){const s=r;return s?m.createPortal(a.jsx(us,{scope:e.__scopeSelect,children:a.jsx(Ue.Slot,{scope:e.__scopeSelect,children:a.jsx("div",{children:e.children})})}),s):null}return a.jsx(ps,{...e,ref:t})});cs.displayName=is;var ds=10,[us,hs]=Ze(is),ms=Ae("SelectContent.RemoveScroll"),ps=s.forwardRef((e,n)=>{const{__scopeSelect:r,position:l="item-aligned",onCloseAutoFocus:i,onEscapeKeyDown:c,onPointerDownOutside:d,side:u,sideOffset:h,align:m,alignOffset:p,arrowPadding:j,collisionBoundary:b,collisionPadding:w,sticky:_,hideWhenDetached:N,avoidCollisions:k,...S}=e,C=Qe(is,r),[R,P]=s.useState(null),[T,I]=s.useState(null),E=t(n,e=>P(e)),[M,D]=s.useState(null),[H,L]=s.useState(null),O=Ge(r),[A,V]=s.useState(!1),F=s.useRef(!1);s.useEffect(()=>{if(R)return x(R)},[R]),f();const B=s.useCallback(e=>{const[s,...t]=O().map(e=>e.ref.current),[n]=t.slice(-1),a=document.activeElement;for(const r of e){if(r===a)return;if(null==r||r.scrollIntoView({block:"nearest"}),r===s&&T&&(T.scrollTop=0),r===n&&T&&(T.scrollTop=T.scrollHeight),null==r||r.focus(),document.activeElement!==a)return}},[O,T]),z=s.useCallback(()=>B([M,R]),[B,M,R]);s.useEffect(()=>{A&&z()},[A,z]);const{onOpenChange:W,triggerPointerDownPosRef:q}=C;s.useEffect(()=>{if(R){let e={x:0,y:0};const s=s=>{var t,n;e={x:Math.abs(Math.round(s.pageX)-((null==(t=q.current)?void 0:t.x)??0)),y:Math.abs(Math.round(s.pageY)-((null==(n=q.current)?void 0:n.y)??0))}},t=t=>{e.x<=10&&e.y<=10?t.preventDefault():R.contains(t.target)||W(!1),document.removeEventListener("pointermove",s),q.current=null};return null!==q.current&&(document.addEventListener("pointermove",s),document.addEventListener("pointerup",t,{capture:!0,once:!0})),()=>{document.removeEventListener("pointermove",s),document.removeEventListener("pointerup",t,{capture:!0})}}},[R,W,q]),s.useEffect(()=>{const e=()=>W(!1);return window.addEventListener("blur",e),window.addEventListener("resize",e),()=>{window.removeEventListener("blur",e),window.removeEventListener("resize",e)}},[W]);const[K,U]=Ws(e=>{const s=O().filter(e=>!e.disabled),t=s.find(e=>e.ref.current===document.activeElement),n=qs(s,e,t);n&&setTimeout(()=>n.ref.current.focus())}),G=s.useCallback((e,s,t)=>{const n=!F.current&&!t;(void 0!==C.value&&C.value===s||n)&&(D(e),n&&(F.current=!0))},[C.value]),$=s.useCallback(()=>null==R?void 0:R.focus(),[R]),Z=s.useCallback((e,s,t)=>{const n=!F.current&&!t;(void 0!==C.value&&C.value===s||n)&&L(e)},[C.value]),X="popper"===l?fs:xs,Y=X===fs?{side:u,sideOffset:h,align:m,alignOffset:p,arrowPadding:j,collisionBoundary:b,collisionPadding:w,sticky:_,hideWhenDetached:N,avoidCollisions:k}:{};return a.jsx(us,{scope:r,content:R,viewport:T,onViewportChange:I,itemRefCallback:G,selectedItem:M,onItemLeave:$,itemTextRefCallback:Z,focusSelectedItem:z,selectedItemText:H,position:l,isPositioned:A,searchRef:K,children:a.jsx(g,{as:ms,allowPinchZoom:!0,children:a.jsx(v,{asChild:!0,trapped:C.open,onMountAutoFocus:e=>{e.preventDefault()},onUnmountAutoFocus:o(i,e=>{var s;null==(s=C.trigger)||s.focus({preventScroll:!0}),e.preventDefault()}),children:a.jsx(y,{asChild:!0,disableOutsidePointerEvents:!0,onEscapeKeyDown:c,onPointerDownOutside:d,onFocusOutside:e=>e.preventDefault(),onDismiss:()=>C.onOpenChange(!1),children:a.jsx(X,{role:"listbox",id:C.contentId,"data-state":C.open?"open":"closed",dir:C.dir,onContextMenu:e=>e.preventDefault(),...S,...Y,onPlaced:()=>V(!0),ref:E,style:{display:"flex",flexDirection:"column",outline:"none",...S.style},onKeyDown:o(S.onKeyDown,e=>{const s=e.ctrlKey||e.altKey||e.metaKey;if("Tab"===e.key&&e.preventDefault(),s||1!==e.key.length||U(e.key),["ArrowUp","ArrowDown","Home","End"].includes(e.key)){let s=O().filter(e=>!e.disabled).map(e=>e.ref.current);if(["ArrowUp","End"].includes(e.key)&&(s=s.slice().reverse()),["ArrowUp","ArrowDown"].includes(e.key)){const t=e.target,n=s.indexOf(t);s=s.slice(n+1)}setTimeout(()=>B(s)),e.preventDefault()}})})})})})})});ps.displayName="SelectContentImpl";var xs=s.forwardRef((e,n)=>{const{__scopeSelect:o,onPlaced:l,...i}=e,c=Qe(is,o),d=hs(is,o),[h,m]=s.useState(null),[p,x]=s.useState(null),f=t(n,e=>x(e)),g=Ge(o),v=s.useRef(!1),y=s.useRef(!0),{viewport:j,selectedItem:b,selectedItemText:w,focusSelectedItem:_}=d,N=s.useCallback(()=>{if(c.trigger&&c.valueNode&&h&&p&&j&&b&&w){const e=c.trigger.getBoundingClientRect(),s=p.getBoundingClientRect(),t=c.valueNode.getBoundingClientRect(),n=w.getBoundingClientRect();if("rtl"!==c.dir){const a=n.left-s.left,r=t.left-a,o=e.left-r,l=e.width+o,i=Math.max(l,s.width),c=window.innerWidth-ds,d=me(r,[ds,Math.max(ds,c-i)]);h.style.minWidth=l+"px",h.style.left=d+"px"}else{const a=s.right-n.right,r=window.innerWidth-t.right-a,o=window.innerWidth-e.right-r,l=e.width+o,i=Math.max(l,s.width),c=window.innerWidth-ds,d=me(r,[ds,Math.max(ds,c-i)]);h.style.minWidth=l+"px",h.style.right=d+"px"}const a=g(),r=window.innerHeight-2*ds,o=j.scrollHeight,i=window.getComputedStyle(p),d=parseInt(i.borderTopWidth,10),u=parseInt(i.paddingTop,10),m=parseInt(i.borderBottomWidth,10),x=d+u+o+parseInt(i.paddingBottom,10)+m,f=Math.min(5*b.offsetHeight,x),y=window.getComputedStyle(j),_=parseInt(y.paddingTop,10),N=parseInt(y.paddingBottom,10),k=e.top+e.height/2-ds,S=r-k,C=b.offsetHeight/2,R=d+u+(b.offsetTop+C),P=x-R;if(R<=k){const e=a.length>0&&b===a[a.length-1].ref.current;h.style.bottom="0px";const s=p.clientHeight-j.offsetTop-j.offsetHeight,t=R+Math.max(S,C+(e?N:0)+s+m);h.style.height=t+"px"}else{const e=a.length>0&&b===a[0].ref.current;h.style.top="0px";const s=Math.max(k,d+j.offsetTop+(e?_:0)+C)+P;h.style.height=s+"px",j.scrollTop=R-k+j.offsetTop}h.style.margin=`${ds}px 0`,h.style.minHeight=f+"px",h.style.maxHeight=r+"px",null==l||l(),requestAnimationFrame(()=>v.current=!0)}},[g,c.trigger,c.valueNode,h,p,j,b,w,c.dir,l]);u(()=>N(),[N]);const[k,S]=s.useState();u(()=>{p&&S(window.getComputedStyle(p).zIndex)},[p]);const C=s.useCallback(e=>{e&&!0===y.current&&(N(),null==_||_(),y.current=!1)},[N,_]);return a.jsx(gs,{scope:o,contentWrapper:h,shouldExpandOnScrollRef:v,onScrollButtonChange:C,children:a.jsx("div",{ref:m,style:{display:"flex",flexDirection:"column",position:"fixed",zIndex:k},children:a.jsx(r.div,{...i,ref:f,style:{boxSizing:"border-box",maxHeight:"100%",...i.style}})})})});xs.displayName="SelectItemAlignedPosition";var fs=s.forwardRef((e,s)=>{const{__scopeSelect:t,align:n="start",collisionPadding:r=ds,...o}=e,l=Xe(t);return a.jsx(ae,{...l,...o,ref:s,align:n,collisionPadding:r,style:{boxSizing:"border-box",...o.style,"--radix-select-content-transform-origin":"var(--radix-popper-transform-origin)","--radix-select-content-available-width":"var(--radix-popper-available-width)","--radix-select-content-available-height":"var(--radix-popper-available-height)","--radix-select-trigger-width":"var(--radix-popper-anchor-width)","--radix-select-trigger-height":"var(--radix-popper-anchor-height)"}})});fs.displayName="SelectPopperPosition";var[gs,vs]=Ze(is,{}),ys="SelectViewport",js=s.forwardRef((e,n)=>{const{__scopeSelect:l,nonce:i,...c}=e,d=hs(ys,l),u=vs(ys,l),h=t(n,d.onViewportChange),m=s.useRef(0);return a.jsxs(a.Fragment,{children:[a.jsx("style",{dangerouslySetInnerHTML:{__html:"[data-radix-select-viewport]{scrollbar-width:none;-ms-overflow-style:none;-webkit-overflow-scrolling:touch;}[data-radix-select-viewport]::-webkit-scrollbar{display:none}"},nonce:i}),a.jsx(Ue.Slot,{scope:l,children:a.jsx(r.div,{"data-radix-select-viewport":"",role:"presentation",...c,ref:h,style:{position:"relative",flex:1,overflow:"hidden auto",...c.style},onScroll:o(c.onScroll,e=>{const s=e.currentTarget,{contentWrapper:t,shouldExpandOnScrollRef:n}=u;if((null==n?void 0:n.current)&&t){const e=Math.abs(m.current-s.scrollTop);if(e>0){const n=window.innerHeight-2*ds,a=parseFloat(t.style.minHeight),r=parseFloat(t.style.height),o=Math.max(a,r);if(o<n){const a=o+e,r=Math.min(n,a),l=a-r;t.style.height=r+"px","0px"===t.style.bottom&&(s.scrollTop=l>0?l:0,t.style.justifyContent="flex-end")}}}m.current=s.scrollTop})})})]})});js.displayName=ys;var bs="SelectGroup",[ws,_s]=Ze(bs);s.forwardRef((e,s)=>{const{__scopeSelect:t,...n}=e,o=d();return a.jsx(ws,{scope:t,id:o,children:a.jsx(r.div,{role:"group","aria-labelledby":o,...n,ref:s})})}).displayName=bs;var Ns="SelectLabel",ks=s.forwardRef((e,s)=>{const{__scopeSelect:t,...n}=e,o=_s(Ns,t);return a.jsx(r.div,{id:o.id,...n,ref:s})});ks.displayName=Ns;var Ss="SelectItem",[Cs,Rs]=Ze(Ss),Ps=s.forwardRef((e,n)=>{const{__scopeSelect:l,value:i,disabled:c=!1,textValue:u,...h}=e,m=Qe(Ss,l),p=hs(Ss,l),x=m.value===i,[f,g]=s.useState(u??""),[v,y]=s.useState(!1),j=t(n,e=>{var s;return null==(s=p.itemRefCallback)?void 0:s.call(p,e,i,c)}),b=d(),w=s.useRef("touch"),_=()=>{c||(m.onValueChange(i),m.onOpenChange(!1))};if(""===i)throw new Error("A <Select.Item /> must have a value prop that is not an empty string. This is because the Select value can be set to an empty string to clear the selection and show the placeholder.");return a.jsx(Cs,{scope:l,value:i,disabled:c,textId:b,isSelected:x,onItemTextChange:s.useCallback(e=>{g(s=>s||((null==e?void 0:e.textContent)??"").trim())},[]),children:a.jsx(Ue.ItemSlot,{scope:l,value:i,disabled:c,textValue:f,children:a.jsx(r.div,{role:"option","aria-labelledby":b,"data-highlighted":v?"":void 0,"aria-selected":x&&v,"data-state":x?"checked":"unchecked","aria-disabled":c||void 0,"data-disabled":c?"":void 0,tabIndex:c?void 0:-1,...h,ref:j,onFocus:o(h.onFocus,()=>y(!0)),onBlur:o(h.onBlur,()=>y(!1)),onClick:o(h.onClick,()=>{"mouse"!==w.current&&_()}),onPointerUp:o(h.onPointerUp,()=>{"mouse"===w.current&&_()}),onPointerDown:o(h.onPointerDown,e=>{w.current=e.pointerType}),onPointerMove:o(h.onPointerMove,e=>{var s;w.current=e.pointerType,c?null==(s=p.onItemLeave)||s.call(p):"mouse"===w.current&&e.currentTarget.focus({preventScroll:!0})}),onPointerLeave:o(h.onPointerLeave,e=>{var s;e.currentTarget===document.activeElement&&(null==(s=p.onItemLeave)||s.call(p))}),onKeyDown:o(h.onKeyDown,e=>{var s;""!==(null==(s=p.searchRef)?void 0:s.current)&&" "===e.key||(qe.includes(e.key)&&_()," "===e.key&&e.preventDefault())})})})})});Ps.displayName=Ss;var Ts="SelectItemText",Is=s.forwardRef((e,n)=>{const{__scopeSelect:o,className:l,style:i,...c}=e,d=Qe(Ts,o),h=hs(Ts,o),p=Rs(Ts,o),x=es(Ts,o),[f,g]=s.useState(null),v=t(n,e=>g(e),p.onItemTextChange,e=>{var s;return null==(s=h.itemTextRefCallback)?void 0:s.call(h,e,p.value,p.disabled)}),y=null==f?void 0:f.textContent,j=s.useMemo(()=>a.jsx("option",{value:p.value,disabled:p.disabled,children:y},p.value),[p.disabled,p.value,y]),{onNativeOptionAdd:b,onNativeOptionRemove:w}=x;return u(()=>(b(j),()=>w(j)),[b,w,j]),a.jsxs(a.Fragment,{children:[a.jsx(r.span,{id:p.textId,...c,ref:v}),p.isSelected&&d.valueNode&&!d.valueNodeHasChildren?m.createPortal(c.children,d.valueNode):null]})});Is.displayName=Ts;var Es="SelectItemIndicator",Ms=s.forwardRef((e,s)=>{const{__scopeSelect:t,...n}=e;return Rs(Es,t).isSelected?a.jsx(r.span,{"aria-hidden":!0,...n,ref:s}):null});Ms.displayName=Es;var Ds="SelectScrollUpButton",Hs=s.forwardRef((e,n)=>{const r=hs(Ds,e.__scopeSelect),o=vs(Ds,e.__scopeSelect),[l,i]=s.useState(!1),c=t(n,o.onScrollButtonChange);return u(()=>{if(r.viewport&&r.isPositioned){let e=function(){const e=s.scrollTop>0;i(e)};const s=r.viewport;return e(),s.addEventListener("scroll",e),()=>s.removeEventListener("scroll",e)}},[r.viewport,r.isPositioned]),l?a.jsx(As,{...e,ref:c,onAutoScroll:()=>{const{viewport:e,selectedItem:s}=r;e&&s&&(e.scrollTop=e.scrollTop-s.offsetHeight)}}):null});Hs.displayName=Ds;var Ls="SelectScrollDownButton",Os=s.forwardRef((e,n)=>{const r=hs(Ls,e.__scopeSelect),o=vs(Ls,e.__scopeSelect),[l,i]=s.useState(!1),c=t(n,o.onScrollButtonChange);return u(()=>{if(r.viewport&&r.isPositioned){let e=function(){const e=s.scrollHeight-s.clientHeight,t=Math.ceil(s.scrollTop)<e;i(t)};const s=r.viewport;return e(),s.addEventListener("scroll",e),()=>s.removeEventListener("scroll",e)}},[r.viewport,r.isPositioned]),l?a.jsx(As,{...e,ref:c,onAutoScroll:()=>{const{viewport:e,selectedItem:s}=r;e&&s&&(e.scrollTop=e.scrollTop+s.offsetHeight)}}):null});Os.displayName=Ls;var As=s.forwardRef((e,t)=>{const{__scopeSelect:n,onAutoScroll:l,...i}=e,c=hs("SelectScrollButton",n),d=s.useRef(null),h=Ge(n),m=s.useCallback(()=>{null!==d.current&&(window.clearInterval(d.current),d.current=null)},[]);return s.useEffect(()=>()=>m(),[m]),u(()=>{var e;const s=h().find(e=>e.ref.current===document.activeElement);null==(e=null==s?void 0:s.ref.current)||e.scrollIntoView({block:"nearest"})},[h]),a.jsx(r.div,{"aria-hidden":!0,...i,ref:t,style:{flexShrink:0,...i.style},onPointerDown:o(i.onPointerDown,()=>{null===d.current&&(d.current=window.setInterval(l,50))}),onPointerMove:o(i.onPointerMove,()=>{var e;null==(e=c.onItemLeave)||e.call(c),null===d.current&&(d.current=window.setInterval(l,50))}),onPointerLeave:o(i.onPointerLeave,()=>{m()})})}),Vs=s.forwardRef((e,s)=>{const{__scopeSelect:t,...n}=e;return a.jsx(r.div,{"aria-hidden":!0,...n,ref:s})});Vs.displayName="SelectSeparator";var Fs="SelectArrow";s.forwardRef((e,s)=>{const{__scopeSelect:t,...n}=e,r=Xe(t),o=Qe(Fs,t),l=hs(Fs,t);return o.open&&"popper"===l.position?a.jsx(re,{...r,...n,ref:s}):null}).displayName=Fs;var Bs=s.forwardRef(({__scopeSelect:e,value:n,...o},l)=>{const i=s.useRef(null),c=t(l,i),d=ke(n);return s.useEffect(()=>{const e=i.current;if(!e)return;const s=window.HTMLSelectElement.prototype,t=Object.getOwnPropertyDescriptor(s,"value").set;if(d!==n&&t){const s=new Event("change",{bubbles:!0});t.call(e,n),e.dispatchEvent(s)}},[d,n]),a.jsx(r.select,{...o,style:{...ze,...o.style},ref:c,defaultValue:n})});function zs(e){return""===e||void 0===e}function Ws(e){const t=p(e),n=s.useRef(""),a=s.useRef(0),r=s.useCallback(e=>{const s=n.current+e;t(s),function e(s){n.current=s,window.clearTimeout(a.current),""!==s&&(a.current=window.setTimeout(()=>e(""),1e3))}(s)},[t]),o=s.useCallback(()=>{n.current="",window.clearTimeout(a.current)},[]);return s.useEffect(()=>()=>window.clearTimeout(a.current),[]),[n,r,o]}function qs(e,s,t){const n=s.length>1&&Array.from(s).every(e=>e===s[0])?s[0]:s,a=t?e.indexOf(t):-1;let r=(o=e,l=Math.max(a,0),o.map((e,s)=>o[(l+s)%o.length]));var o,l;1===n.length&&(r=r.filter(e=>e!==t));const i=r.find(e=>e.textValue.toLowerCase().startsWith(n.toLowerCase()));return i!==t?i:void 0}Bs.displayName="SelectBubbleInput";var Ks=ns,Us=os,Gs=ls,$s=cs,Zs=js,Xs=ks,Ys=Ps,Qs=Is,Js=Ms,et=Hs,st=Os,tt=Vs;const nt=ss,at=rs,rt=s.forwardRef(({className:e,children:s,...t},n)=>a.jsxs(Ks,{ref:n,className:i("flex h-10 w-full items-center justify-between rounded-md border border-input bg-background px-3 py-2 text-sm ring-offset-background placeholder:text-muted-foreground focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2 disabled:cursor-not-allowed disabled:opacity-50 [&>span]:line-clamp-1",e),...t,children:[s,a.jsx(Us,{asChild:!0,children:a.jsx(fe,{className:"h-4 w-4 opacity-50"})})]}));rt.displayName=Ks.displayName;const ot=s.forwardRef(({className:e,...s},t)=>a.jsx(et,{ref:t,className:i("flex cursor-default items-center justify-center py-1",e),...s,children:a.jsx(pe,{className:"h-4 w-4"})}));ot.displayName=et.displayName;const lt=s.forwardRef(({className:e,...s},t)=>a.jsx(st,{ref:t,className:i("flex cursor-default items-center justify-center py-1",e),...s,children:a.jsx(fe,{className:"h-4 w-4"})}));lt.displayName=st.displayName;const it=s.forwardRef(({className:e,children:s,position:t="popper",...n},r)=>a.jsx(Gs,{children:a.jsxs($s,{ref:r,className:i("relative z-50 max-h-96 min-w-[8rem] overflow-hidden rounded-md border bg-popover text-popover-foreground shadow-md data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2","popper"===t&&"data-[side=bottom]:translate-y-1 data-[side=left]:-translate-x-1 data-[side=right]:translate-x-1 data-[side=top]:-translate-y-1",e),position:t,...n,children:[a.jsx(ot,{}),a.jsx(Zs,{className:i("p-1","popper"===t&&"h-[var(--radix-select-trigger-height)] w-full min-w-[var(--radix-select-trigger-width)]"),children:s}),a.jsx(lt,{})]})}));it.displayName=$s.displayName;s.forwardRef(({className:e,...s},t)=>a.jsx(Xs,{ref:t,className:i("py-1.5 pl-8 pr-2 text-sm font-semibold",e),...s})).displayName=Xs.displayName;const ct=s.forwardRef(({className:e,children:s,...t},n)=>a.jsxs(Ys,{ref:n,className:i("relative flex w-full cursor-default select-none items-center rounded-sm py-1.5 pl-8 pr-2 text-sm outline-none focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50",e),...t,children:[a.jsx("span",{className:"absolute left-2 flex h-3.5 w-3.5 items-center justify-center",children:a.jsx(Js,{children:a.jsx(j,{className:"h-4 w-4"})})}),a.jsx(Qs,{children:s})]}));ct.displayName=Ys.displayName;s.forwardRef(({className:e,...s},t)=>a.jsx(tt,{ref:t,className:i("-mx-1 my-1 h-px bg-muted",e),...s})).displayName=tt.displayName;function dt(){const{t:e}=b(),[t,n]=s.useState(null),[r,o]=s.useState(!0),[l,i]=s.useState(!1),[c,d]=s.useState(!1),[u,h]=s.useState(!1),[m,p]=s.useState(!1),[x,f]=s.useState(null),[g,v]=s.useState(0),[y,j]=s.useState(""),[H,L]=s.useState("");w({onStart:e=>{f(e.projectId),v(0)},onProgress:e=>{f(e.projectId),v(e.filesTransferred)},onDone:()=>{f(null),v(0)}}),s.useEffect(()=>{let s=!1;return _().then(e=>{s||(n(e),L(e.defaultExcludes.join("\n")))}).catch(s=>N.error(e("sync_section.load_failed",{message:s.message}))).finally(()=>{s||o(!1)}),()=>{s=!0}},[e]);const O=(e,s)=>{n(t=>t?{...t,[e]:s}:t)};return r||!t?a.jsx("div",{className:"text-sm text-muted-foreground",children:e("sync_section.loading")}):a.jsxs("div",{className:"space-y-5",children:[a.jsxs("div",{children:[a.jsx("h3",{className:"text-sm font-semibold mb-3",children:e("sync_section.server_section")}),a.jsxs("div",{className:"grid grid-cols-1 md:grid-cols-2 gap-3",children:[a.jsxs("div",{children:[a.jsx(k,{htmlFor:"sync-host",children:e("sync_section.host")}),a.jsx(S,{id:"sync-host",value:t.host,onChange:e=>O("host",e.target.value),placeholder:"example.com"})]}),a.jsxs("div",{children:[a.jsx(k,{htmlFor:"sync-port",children:e("sync_section.port")}),a.jsx(S,{id:"sync-port",type:"number",value:t.port,onChange:e=>O("port",Number(e.target.value)||22)})]}),a.jsxs("div",{children:[a.jsx(k,{htmlFor:"sync-user",children:e("sync_section.user")}),a.jsx(S,{id:"sync-user",value:t.user,onChange:e=>O("user",e.target.value),placeholder:"tom"})]}),a.jsxs("div",{children:[a.jsx(k,{htmlFor:"sync-remote",children:e("sync_section.remote_root")}),a.jsx(S,{id:"sync-remote",value:t.remoteRoot,onChange:e=>O("remoteRoot",e.target.value),placeholder:"/data/projects"}),a.jsx("p",{className:"text-xs text-muted-foreground mt-1",dangerouslySetInnerHTML:{__html:e("sync_section.remote_root_hint")}})]})]})]}),a.jsxs("div",{children:[a.jsx("h3",{className:"text-sm font-semibold mb-3",children:e("sync_section.auth_section")}),a.jsxs("div",{className:"grid grid-cols-1 md:grid-cols-2 gap-3",children:[a.jsxs("div",{children:[a.jsx(k,{children:e("sync_section.auth_method")}),a.jsxs(nt,{value:t.authMethod,onValueChange:e=>O("authMethod",e),children:[a.jsx(rt,{children:a.jsx(at,{})}),a.jsxs(it,{children:[a.jsx(ct,{value:"key",children:"SSH key"}),a.jsx(ct,{value:"password",children:e("sync_section.auth_password")})]})]})]}),"key"===t.authMethod?a.jsxs("div",{children:[a.jsx(k,{htmlFor:"sync-key",children:e("sync_section.key_path")}),a.jsx(S,{id:"sync-key",value:t.keyPath??"",onChange:e=>O("keyPath",e.target.value),placeholder:"~/.ssh/id_rsa"})]}):a.jsxs("div",{children:[a.jsx(k,{htmlFor:"sync-pw",children:e("sync_section.password")}),a.jsx(S,{id:"sync-pw",type:"password",value:y,onChange:e=>j(e.target.value),placeholder:t.passwordSet?e("sync_section.password_set_placeholder"):e("sync_section.password_unset_placeholder")}),a.jsx("p",{className:"text-xs text-muted-foreground mt-1",dangerouslySetInnerHTML:{__html:e("sync_section.sshpass_hint")}})]})]})]}),a.jsxs("div",{children:[a.jsx("h3",{className:"text-sm font-semibold mb-3",children:e("sync_section.strategy_section")}),a.jsxs("div",{className:"grid grid-cols-1 md:grid-cols-2 gap-3",children:[a.jsxs("div",{children:[a.jsx(k,{children:e("sync_section.direction")}),a.jsxs(nt,{value:t.direction,onValueChange:e=>O("direction",e),children:[a.jsx(rt,{children:a.jsx(at,{})}),a.jsxs(it,{children:[a.jsx(ct,{value:"push",children:e("sync_section.push_label")}),a.jsx(ct,{value:"pull",children:e("sync_section.pull_label")}),a.jsx(ct,{value:"bidirectional",children:e("sync_section.bidirectional_label")})]})]})]}),a.jsxs("div",{className:"flex items-end gap-2",children:[a.jsxs("div",{className:"flex-1",children:[a.jsx(k,{htmlFor:"sync-cron",children:e("sync_section.cron_label")}),a.jsx(S,{id:"sync-cron",value:t.schedule.cron,onChange:e=>O("schedule",{...t.schedule,cron:e.target.value}),placeholder:"0 3 * * *"}),a.jsx("p",{className:"text-xs text-muted-foreground mt-1",dangerouslySetInnerHTML:{__html:e("sync_section.cron_hint")}})]}),a.jsxs("div",{className:"flex items-center gap-2 pb-1.5",children:[a.jsx(Oe,{checked:t.schedule.enabled,onCheckedChange:e=>O("schedule",{...t.schedule,enabled:e})}),a.jsx("span",{className:"text-xs text-muted-foreground",children:e("sync_section.enable_label")})]})]})]})]}),a.jsxs("div",{children:[a.jsx("h3",{className:"text-sm font-semibold mb-3",children:e("sync_section.exclude_section")}),a.jsx("textarea",{value:H,onChange:e=>L(e.target.value),rows:6,className:"w-full font-mono text-xs p-2 rounded border border-input bg-background resize-y",placeholder:"node_modules/\n.git/objects/\n*.log"}),a.jsx("p",{className:"text-xs text-muted-foreground mt-1",dangerouslySetInnerHTML:{__html:e("sync_section.exclude_hint")}})]}),a.jsxs("div",{className:"flex flex-wrap gap-2 pt-2 border-t",children:[a.jsxs(C,{onClick:()=>{(async()=>{if(t){i(!0);try{const s=H.split("\n").map(e=>e.trim()).filter(Boolean),a={host:t.host,port:t.port,user:t.user,authMethod:t.authMethod,keyPath:t.keyPath,remoteRoot:t.remoteRoot,direction:t.direction,defaultExcludes:s,schedule:t.schedule};y&&"__keep__"!==y&&(a.password=y);const r=await I(a);n(r),L(r.defaultExcludes.join("\n")),j(""),N.success(e("sync_section.saved"))}catch(s){N.error(e("sync_section.save_failed",{message:s.message}))}finally{i(!1)}}})()},disabled:l,children:[l?a.jsx(R,{className:"h-3.5 w-3.5 mr-1.5 animate-spin"}):a.jsx(oe,{className:"h-3.5 w-3.5 mr-1.5"}),e("sync_section.save_button")]}),a.jsxs(C,{variant:"outline",onClick:()=>{(async()=>{d(!0);try{const s=await E();s.ok?N.success(s.message||e("sync_section.test_ok")):N.error(s.message||e("sync_section.test_failed"))}catch(s){N.error(e("sync_section.test_failed_with_reason",{message:s.message}))}finally{d(!1)}})()},disabled:c,children:[c?a.jsx(R,{className:"h-3.5 w-3.5 mr-1.5 animate-spin"}):a.jsx(_e,{className:"h-3.5 w-3.5 mr-1.5"}),e("sync_section.test_button")]}),a.jsx("div",{className:"flex-1"}),u&&x&&a.jsx("span",{className:"text-xs text-muted-foreground self-center mr-1 tabular-nums",children:g>0?e("sync_section.syncing_with_files",{project:x,files:g}):e("sync_section.syncing_no_files",{project:x})}),a.jsxs(C,{variant:"outline",onClick:()=>{(async()=>{h(!0);try{const s=await M(),t=s.results.filter(e=>e.ok).length,n=s.results.filter(e=>e.skipped).length,a=s.results.filter(e=>"cancelled"===e.reason).length,r=s.total-t-n-a;a>0?N.info(e("sync_section.bulk_cancelled_toast",{ok:t,skipped:n,cancelled:a,failed:r})):N.success(e("sync_section.bulk_done_toast",{ok:t,skipped:n,failed:r}))}catch(s){N.error(e("sync_section.bulk_failed_toast",{message:s.message}))}finally{h(!1),p(!1),f(null),v(0)}})()},disabled:u,title:e("sync_section.sync_all_title"),children:[u?a.jsx(R,{className:"h-3.5 w-3.5 mr-1.5 animate-spin"}):a.jsx(le,{className:"h-3.5 w-3.5 mr-1.5"}),e("sync_section.sync_all_button")]}),u&&a.jsxs(C,{variant:"outline",onClick:()=>{(async()=>{if(u&&!m){p(!0);try{await D(),N.info(e("sync_section.cancel_requested"))}catch(s){N.error(e("sync_section.cancel_failed",{message:s.message})),p(!1)}}})()},disabled:m,title:e("sync_section.cancel_button_title"),children:[m?a.jsx(R,{className:"h-3.5 w-3.5 mr-1.5 animate-spin"}):a.jsx(P,{className:"h-3.5 w-3.5 mr-1.5"}),e("sync_section.cancel_button")]})]}),a.jsxs("div",{className:"border-t pt-4 text-xs text-muted-foreground",children:["Per-project push/pull: from inside a project, click the ",a.jsx(le,{className:"inline h-3 w-3"})," / ",a.jsx(T,{className:"inline h-3 w-3"})," buttons in the header. Or call ",a.jsx("code",{children:"POST /api/sync/project/:id"})," with body ",a.jsx("code",{children:'{ "direction": "push" }'}),"."]})]})}function ut(){const e=H(),[t,n]=s.useState(null),[r,o]=s.useState(!0),[l,i]=s.useState(""),[c,d]=s.useState(!1);s.useEffect(()=>{let e=!1;return L().then(s=>{e||n(s)}).catch(()=>{e||n({configured:!1,needsReset:!1})}).finally(()=>{e||o(!1)}),()=>{e=!0}},[]);return a.jsxs("div",{className:"space-y-6",children:[a.jsxs("div",{children:[a.jsx("h3",{className:"text-sm font-semibold mb-1",children:"CCWeb Hub 直接提交"}),a.jsxs("p",{className:"text-xs text-muted-foreground",children:['配置你的 GitHub PAT 后,在 Quick Prompts / Agent Prompts 卡片右键选择"共享"时可一键直接提交 Issue 到 ',a.jsx("code",{children:"zbc0315/ccweb-hub"}),"。 ccweb 本身不自带 token —— 使用你自己的账号身份提交,归属清晰,互不影响。"]})]}),r?a.jsxs("div",{className:"text-sm text-muted-foreground flex items-center gap-2",children:[a.jsx(R,{className:"h-4 w-4 animate-spin"}),"加载中…"]}):a.jsxs(a.Fragment,{children:[a.jsx("div",{className:"rounded-md border px-3 py-2.5 text-xs flex items-center gap-2",children:(null==t?void 0:t.configured)?a.jsxs(a.Fragment,{children:[a.jsx(xe,{className:"h-4 w-4 text-green-500 shrink-0"}),a.jsx("span",{children:"已配置 token,可直接提交"}),a.jsx("div",{className:"flex-1"}),a.jsxs(C,{size:"sm",variant:"outline",onClick:()=>{(async()=>{if(await e({title:"清除 Hub Token",description:"清除后将无法直接提交到 ccweb-hub,需要重新配置 token。确认?",destructive:!0,confirmLabel:"清除"}))try{await A(),n({configured:!1,needsReset:!1}),N.success("已清除")}catch(s){N.error(`清除失败: ${s.message}`)}})()},children:[a.jsx(O,{className:"h-3.5 w-3.5 mr-1"}),"清除"]})]}):(null==t?void 0:t.needsReset)?a.jsxs(a.Fragment,{children:[a.jsx(ve,{className:"h-4 w-4 text-amber-500 shrink-0"}),a.jsx("span",{children:"之前的 token 已失效(服务端密钥可能已轮换),请重新设置"})]}):a.jsxs(a.Fragment,{children:[a.jsx(ve,{className:"h-4 w-4 text-muted-foreground shrink-0"}),a.jsx("span",{children:"尚未配置 token"})]})}),a.jsxs("div",{className:"rounded-md border bg-muted/30 px-3 py-2.5 text-xs space-y-2",children:[a.jsx("div",{className:"font-medium text-foreground",children:"如何获取 token"}),a.jsxs("ol",{className:"list-decimal list-inside space-y-1 text-muted-foreground",children:[a.jsxs("li",{children:["打开"," ",a.jsxs("a",{href:"https://github.com/settings/personal-access-tokens/new",target:"_blank",rel:"noopener noreferrer",className:"text-blue-500 hover:underline inline-flex items-center gap-0.5",children:["GitHub fine-grained PAT",a.jsx(je,{className:"h-3 w-3"})]})," ","创建页"]}),a.jsxs("li",{children:[a.jsx("strong",{className:"text-foreground",children:"Repository access"}),':选 "Only select repositories",添加 ',a.jsx("code",{children:"zbc0315/ccweb-hub"})]}),a.jsxs("li",{children:[a.jsx("strong",{className:"text-foreground",children:"Repository permissions → Issues"}),':设置为 "Read and write"']}),a.jsx("li",{children:"其余权限保持默认(全部无访问)"}),a.jsx("li",{children:"生成后复制 token 粘贴到下方"})]})]}),a.jsxs("div",{className:"space-y-2",children:[a.jsxs(k,{htmlFor:"hub-token",className:"text-xs",children:["GitHub Token ",(null==t?void 0:t.configured)&&a.jsx("span",{className:"text-muted-foreground",children:"(填写会覆盖现有 token)"})]}),a.jsx(S,{id:"hub-token",type:"password",placeholder:"github_pat_...",value:l,onChange:e=>i(e.target.value),autoComplete:"off",spellCheck:!1}),a.jsxs("p",{className:"text-xs text-muted-foreground",children:["Token 以 AES-256-GCM 加密存储于 ",a.jsx("code",{children:"~/.ccweb/hub-auth/"}),";per-user 独立,不会被其他用户读到。"]})]}),a.jsx("div",{className:"flex gap-2 pt-2 border-t",children:a.jsxs(C,{onClick:()=>{(async()=>{const e=l.trim();if(e){d(!0);try{const s=await V(e);n(s),i(""),N.success("已保存")}catch(s){N.error(`保存失败: ${s.message}`)}finally{d(!1)}}else N.error("请输入 token")})()},disabled:c||!l.trim(),children:[c?a.jsx(R,{className:"h-3.5 w-3.5 mr-1.5 animate-spin"}):a.jsx(oe,{className:"h-3.5 w-3.5 mr-1.5"}),"保存"]})})]})]})}function ht(){const{t:e,i18n:s}=b();return a.jsxs("div",{className:"flex items-center gap-2",children:[a.jsx(we,{className:"h-4 w-4 text-muted-foreground"}),a.jsxs(nt,{value:s.language,onValueChange:async t=>{if(F.includes(t)){try{localStorage.setItem(B,t)}catch{}await s.changeLanguage(t);try{await z(t)}catch{N.error(e("language.switch_failed"))}}},children:[a.jsx(rt,{className:"w-40",children:a.jsx(at,{})}),a.jsxs(it,{children:[a.jsx(ct,{value:"zh",children:e("language.zh")}),a.jsx(ct,{value:"en",children:e("language.en")})]})]})]})}function mt(){const{t:e}=b(),t=W(),[n]=q(),r=n.get("tab")||"sync",[o,l]=s.useState(()=>K()),[i,c]=s.useState(!1),[d,u]=s.useState({webhookEnabled:!1}),[h,m]=s.useState(""),[p,x]=s.useState(!1),[f,g]=s.useState(()=>U(G.usageMonitorTool,"claude"));s.useEffect(()=>{$().then(e=>{u(e),m(e.webhookUrl??"")}).catch(()=>{})},[]);const v=(e,s)=>{const t=parseInt(s,10);isNaN(t)||t<1||(l(s=>({...s,[e]:t})),c(!0))};return a.jsx("div",{className:"min-h-screen bg-background",children:a.jsxs("div",{className:"max-w-3xl mx-auto p-6",children:[a.jsxs("div",{className:"flex items-center gap-3 mb-6",children:[a.jsxs(C,{variant:"ghost",size:"sm",onClick:()=>t("/"),children:[a.jsx(Z,{className:"h-4 w-4 mr-1"}),e("common.back")]}),a.jsx("h1",{className:"text-2xl font-bold tracking-tight",children:e("settings.title")})]}),a.jsxs(ie,{defaultValue:r,children:[a.jsxs(ce,{className:"mb-4",children:[a.jsxs(de,{value:"sync",children:[a.jsx(Ne,{className:"h-3.5 w-3.5 mr-1.5"}),e("settings.tab_sync")]}),a.jsxs(de,{value:"hub",children:[a.jsx(be,{className:"h-3.5 w-3.5 mr-1.5"}),e("settings.tab_hub")]}),a.jsxs(de,{value:"notifications",children:[a.jsx(ye,{className:"h-3.5 w-3.5 mr-1.5"}),e("settings.tab_notifications")]}),a.jsxs(de,{value:"pomodoro",children:[a.jsx(X,{className:"h-3.5 w-3.5 mr-1.5"}),e("settings.tab_pomodoro")]}),a.jsxs(de,{value:"usage",children:[a.jsx(ge,{className:"h-3.5 w-3.5 mr-1.5"}),e("settings.tab_usage")]}),a.jsxs(de,{value:"language",children:[a.jsx(we,{className:"h-3.5 w-3.5 mr-1.5"}),e("settings.tab_language")]})]}),a.jsx(ue,{value:"sync",children:a.jsx(dt,{})}),a.jsx(ue,{value:"hub",children:a.jsx(ut,{})}),a.jsx(ue,{value:"notifications",children:a.jsxs("div",{className:"space-y-6",children:[a.jsxs("div",{className:"rounded-xl border border-border p-4 space-y-2",children:[a.jsx("h3",{className:"text-sm font-medium",children:e("settings.browser_notify.title")}),a.jsx("p",{className:"text-xs text-muted-foreground",children:e("settings.browser_notify.description")})]}),a.jsxs("div",{className:"rounded-xl border border-border p-4 space-y-3",children:[a.jsxs("div",{children:[a.jsx("h3",{className:"text-sm font-medium",children:e("settings.webhook.title")}),a.jsx("p",{className:"text-xs text-muted-foreground mt-1",children:e("settings.webhook.description")})]}),a.jsxs("div",{className:"space-y-1.5",children:[a.jsx(k,{className:"text-xs",children:"Webhook URL"}),a.jsxs("div",{className:"flex gap-2",children:[a.jsx(S,{placeholder:"https://hooks.slack.com/...",value:h,onChange:e=>m(e.target.value),className:"font-mono text-xs"}),a.jsx(C,{size:"sm",onClick:()=>{(async()=>{x(!0);try{const s=await Q({webhookEnabled:h.trim().length>0,webhookUrl:h.trim()||void 0});u(s),N.success(e("settings.webhook.saved"))}catch{N.error(e("settings.webhook.save_failed"))}finally{x(!1)}})()},disabled:p,children:e(p?"common.saving":"common.save")})]}),d.webhookEnabled&&d.webhookUrl&&a.jsxs("p",{className:"text-xs text-green-500",children:[e("settings.webhook.enabled_prefix")," ",d.webhookUrl]})]})]})]})}),a.jsx(ue,{value:"pomodoro",children:a.jsxs("div",{className:"space-y-6",children:[a.jsxs("div",{className:"rounded-xl border border-border p-4 space-y-4",children:[a.jsxs("div",{children:[a.jsx("h3",{className:"text-sm font-medium",children:e("settings.pomodoro.section_title")}),a.jsx("p",{className:"text-xs text-muted-foreground mt-1",children:e("settings.pomodoro.section_desc")})]}),a.jsxs("div",{className:"grid grid-cols-2 gap-6 max-w-xs",children:[a.jsxs("div",{className:"space-y-1.5",children:[a.jsx(k,{className:"text-xs",children:e("settings.pomodoro.work_minutes")}),a.jsx(S,{type:"number",min:1,max:120,value:o.workMinutes,onChange:e=>v("workMinutes",e.target.value),className:"w-full"})]}),a.jsxs("div",{className:"space-y-1.5",children:[a.jsx(k,{className:"text-xs",children:e("settings.pomodoro.break_minutes")}),a.jsx(S,{type:"number",min:1,max:60,value:o.breakMinutes,onChange:e=>v("breakMinutes",e.target.value),className:"w-full"})]})]}),i&&a.jsxs(C,{size:"sm",onClick:()=>{Y(G.pomodoroConfig,o,!0),c(!1),N.success(e("settings.pomodoro.saved"))},children:[a.jsx(oe,{className:"h-3.5 w-3.5 mr-1.5"}),e("common.save")]})]}),a.jsxs("div",{className:"rounded-xl border border-border p-4 space-y-2",children:[a.jsx("h3",{className:"text-sm font-medium",children:e("settings.pomodoro.howto_title")}),a.jsxs("ul",{className:"text-xs text-muted-foreground space-y-1 list-disc list-inside",children:[a.jsxs("li",{children:[a.jsx(X,{className:"h-3 w-3 inline-block mx-0.5"})," ",e("settings.pomodoro.howto_item_1")]}),a.jsx("li",{children:e("settings.pomodoro.howto_item_2")}),a.jsx("li",{children:e("settings.pomodoro.howto_item_3")}),a.jsx("li",{children:e("settings.pomodoro.howto_item_4")}),a.jsx("li",{children:e("settings.pomodoro.howto_item_5")})]})]})]})}),a.jsx(ue,{value:"usage",children:a.jsxs("div",{className:"space-y-6",children:[a.jsxs("div",{className:"rounded-xl border border-border p-4 space-y-4",children:[a.jsxs("div",{children:[a.jsx("h3",{className:"text-sm font-medium",children:e("settings.usage.section_title")}),a.jsx("p",{className:"text-xs text-muted-foreground mt-1",children:e("settings.usage.section_desc")})]}),a.jsx("div",{className:"grid gap-3 max-w-md",children:[{key:"claude",label:"Claude Code",desc:e("settings.usage.tool_claude_desc")},{key:"codex",label:"Codex",desc:e("settings.usage.tool_codex_desc")},{key:"opencode",label:"OpenCode",desc:e("settings.usage.tool_opencode_desc")},{key:"qwen",label:"Qwen Code",desc:e("settings.usage.tool_qwen_desc")},{key:"gemini",label:"Gemini CLI",desc:e("settings.usage.tool_gemini_desc")}].map(s=>a.jsxs("label",{className:"flex items-start gap-3 rounded-md border p-3 cursor-pointer transition-colors "+(f===s.key?"border-blue-500/50 bg-blue-500/5":"border-border hover:bg-muted/30"),children:[a.jsx("input",{type:"radio",name:"usageTool",value:s.key,checked:f===s.key,onChange:()=>{g(s.key),Y(G.usageMonitorTool,s.key),window.dispatchEvent(new Event("ccweb:usage-tool-change")),N.success(e("settings.usage.switched_toast",{tool:s.label}))},className:"mt-0.5"}),a.jsxs("div",{children:[a.jsx("div",{className:"text-sm font-medium",children:s.label}),a.jsx("div",{className:"text-xs text-muted-foreground",children:s.desc})]})]},s.key))})]}),a.jsxs("div",{className:"rounded-xl border border-border p-4 space-y-2",children:[a.jsx("h3",{className:"text-sm font-medium",children:e("settings.usage.info_title")}),a.jsxs("ul",{className:"text-xs text-muted-foreground space-y-1 list-disc list-inside",children:[a.jsx("li",{children:e("settings.usage.info_item_1")}),a.jsx("li",{children:e("settings.usage.info_item_2")}),a.jsx("li",{children:e("settings.usage.info_item_3")}),a.jsx("li",{children:e("settings.usage.info_item_4")})]})]})]})}),a.jsx(ue,{value:"language",children:a.jsx("div",{className:"space-y-6",children:a.jsxs("div",{className:"rounded-xl border border-border p-4 space-y-3",children:[a.jsx("div",{children:a.jsx("h3",{className:"text-sm font-medium",children:e("language.label")})}),a.jsx(ht,{})]})})})]})]})})}export{mt as SettingsPage};
@@ -1 +0,0 @@
1
- *,:before,:after{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }*,:before,:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:#e5e7eb}:before,:after{--tw-content: ""}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji";font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}:root{--background: 0 0% 100%;--foreground: 240 10% 3.9%;--card: 0 0% 100%;--card-foreground: 240 10% 3.9%;--popover: 0 0% 100%;--popover-foreground: 240 10% 3.9%;--primary: 240 5.9% 10%;--primary-foreground: 0 0% 98%;--secondary: 240 4.8% 95.9%;--secondary-foreground: 240 5.9% 10%;--muted: 240 4.8% 95.9%;--muted-foreground: 240 3.8% 46.1%;--accent: 240 4.8% 95.9%;--accent-foreground: 240 5.9% 10%;--destructive: 0 84.2% 60.2%;--destructive-foreground: 0 0% 98%;--border: 240 5.9% 90%;--input: 240 5.9% 90%;--ring: 240 5.9% 10%;--radius: .5rem;--chart-1: 12 76% 61%;--chart-2: 173 58% 39%;--chart-3: 197 37% 24%;--chart-4: 43 74% 66%;--chart-5: 27 87% 67%}.dark{--background: 240 10% 3.9%;--foreground: 0 0% 98%;--card: 240 10% 3.9%;--card-foreground: 0 0% 98%;--popover: 240 10% 3.9%;--popover-foreground: 0 0% 98%;--primary: 0 0% 98%;--primary-foreground: 240 5.9% 10%;--secondary: 240 3.7% 15.9%;--secondary-foreground: 0 0% 98%;--muted: 240 3.7% 15.9%;--muted-foreground: 240 5% 64.9%;--accent: 240 3.7% 15.9%;--accent-foreground: 0 0% 98%;--destructive: 0 62.8% 30.6%;--destructive-foreground: 0 0% 98%;--border: 240 3.7% 15.9%;--input: 240 3.7% 15.9%;--ring: 240 4.9% 83.9%;--chart-1: 220 70% 50%;--chart-2: 160 60% 45%;--chart-3: 30 80% 55%;--chart-4: 280 65% 60%;--chart-5: 340 75% 55%}*{border-color:hsl(var(--border))}body{background-color:hsl(var(--background));color:hsl(var(--foreground))}.container{width:100%;margin-right:auto;margin-left:auto;padding-right:2rem;padding-left:2rem}@media (min-width: 1400px){.container{max-width:1400px}}.prose{color:var(--tw-prose-body);max-width:65ch}.prose :where(p):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.25em;margin-bottom:1.25em}.prose :where([class~=lead]):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-lead);font-size:1.25em;line-height:1.6;margin-top:1.2em;margin-bottom:1.2em}.prose :where(a):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-links);text-decoration:underline;font-weight:500}.prose :where(strong):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-bold);font-weight:600}.prose :where(a strong):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(blockquote strong):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(thead th strong):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(ol):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:decimal;margin-top:1.25em;margin-bottom:1.25em;padding-inline-start:1.625em}.prose :where(ol[type=A]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:upper-alpha}.prose :where(ol[type=a]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:lower-alpha}.prose :where(ol[type=A s]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:upper-alpha}.prose :where(ol[type=a s]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:lower-alpha}.prose :where(ol[type=I]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:upper-roman}.prose :where(ol[type=i]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:lower-roman}.prose :where(ol[type=I s]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:upper-roman}.prose :where(ol[type=i s]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:lower-roman}.prose :where(ol[type="1"]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:decimal}.prose :where(ul):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:disc;margin-top:1.25em;margin-bottom:1.25em;padding-inline-start:1.625em}.prose :where(ol>li):not(:where([class~=not-prose],[class~=not-prose] *))::marker{font-weight:400;color:var(--tw-prose-counters)}.prose :where(ul>li):not(:where([class~=not-prose],[class~=not-prose] *))::marker{color:var(--tw-prose-bullets)}.prose :where(dt):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);font-weight:600;margin-top:1.25em}.prose :where(hr):not(:where([class~=not-prose],[class~=not-prose] *)){border-color:var(--tw-prose-hr);border-top-width:1px;margin-top:3em;margin-bottom:3em}.prose :where(blockquote):not(:where([class~=not-prose],[class~=not-prose] *)){font-weight:500;font-style:italic;color:var(--tw-prose-quotes);border-inline-start-width:.25rem;border-inline-start-color:var(--tw-prose-quote-borders);quotes:"“""”""‘""’";margin-top:1.6em;margin-bottom:1.6em;padding-inline-start:1em}.prose :where(blockquote p:first-of-type):not(:where([class~=not-prose],[class~=not-prose] *)):before{content:open-quote}.prose :where(blockquote p:last-of-type):not(:where([class~=not-prose],[class~=not-prose] *)):after{content:close-quote}.prose :where(h1):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);font-weight:800;font-size:2.25em;margin-top:0;margin-bottom:.8888889em;line-height:1.1111111}.prose :where(h1 strong):not(:where([class~=not-prose],[class~=not-prose] *)){font-weight:900;color:inherit}.prose :where(h2):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);font-weight:700;font-size:1.5em;margin-top:2em;margin-bottom:1em;line-height:1.3333333}.prose :where(h2 strong):not(:where([class~=not-prose],[class~=not-prose] *)){font-weight:800;color:inherit}.prose :where(h3):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);font-weight:600;font-size:1.25em;margin-top:1.6em;margin-bottom:.6em;line-height:1.6}.prose :where(h3 strong):not(:where([class~=not-prose],[class~=not-prose] *)){font-weight:700;color:inherit}.prose :where(h4):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);font-weight:600;margin-top:1.5em;margin-bottom:.5em;line-height:1.5}.prose :where(h4 strong):not(:where([class~=not-prose],[class~=not-prose] *)){font-weight:700;color:inherit}.prose :where(img):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:2em;margin-bottom:2em}.prose :where(picture):not(:where([class~=not-prose],[class~=not-prose] *)){display:block;margin-top:2em;margin-bottom:2em}.prose :where(video):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:2em;margin-bottom:2em}.prose :where(kbd):not(:where([class~=not-prose],[class~=not-prose] *)){font-weight:500;font-family:inherit;color:var(--tw-prose-kbd);box-shadow:0 0 0 1px var(--tw-prose-kbd-shadows),0 3px 0 var(--tw-prose-kbd-shadows);font-size:.875em;border-radius:.3125rem;padding-top:.1875em;padding-inline-end:.375em;padding-bottom:.1875em;padding-inline-start:.375em}.prose :where(code):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-code);font-weight:600;font-size:.875em}.prose :where(code):not(:where([class~=not-prose],[class~=not-prose] *)):before{content:"`"}.prose :where(code):not(:where([class~=not-prose],[class~=not-prose] *)):after{content:"`"}.prose :where(a code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(h1 code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(h2 code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit;font-size:.875em}.prose :where(h3 code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit;font-size:.9em}.prose :where(h4 code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(blockquote code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(thead th code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(pre):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-pre-code);background-color:var(--tw-prose-pre-bg);overflow-x:auto;font-weight:400;font-size:.875em;line-height:1.7142857;margin-top:1.7142857em;margin-bottom:1.7142857em;border-radius:.375rem;padding-top:.8571429em;padding-inline-end:1.1428571em;padding-bottom:.8571429em;padding-inline-start:1.1428571em}.prose :where(pre code):not(:where([class~=not-prose],[class~=not-prose] *)){background-color:transparent;border-width:0;border-radius:0;padding:0;font-weight:inherit;color:inherit;font-size:inherit;font-family:inherit;line-height:inherit}.prose :where(pre code):not(:where([class~=not-prose],[class~=not-prose] *)):before{content:none}.prose :where(pre code):not(:where([class~=not-prose],[class~=not-prose] *)):after{content:none}.prose :where(table):not(:where([class~=not-prose],[class~=not-prose] *)){width:100%;table-layout:auto;margin-top:2em;margin-bottom:2em;font-size:.875em;line-height:1.7142857}.prose :where(thead):not(:where([class~=not-prose],[class~=not-prose] *)){border-bottom-width:1px;border-bottom-color:var(--tw-prose-th-borders)}.prose :where(thead th):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);font-weight:600;vertical-align:bottom;padding-inline-end:.5714286em;padding-bottom:.5714286em;padding-inline-start:.5714286em}.prose :where(tbody tr):not(:where([class~=not-prose],[class~=not-prose] *)){border-bottom-width:1px;border-bottom-color:var(--tw-prose-td-borders)}.prose :where(tbody tr:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){border-bottom-width:0}.prose :where(tbody td):not(:where([class~=not-prose],[class~=not-prose] *)){vertical-align:baseline}.prose :where(tfoot):not(:where([class~=not-prose],[class~=not-prose] *)){border-top-width:1px;border-top-color:var(--tw-prose-th-borders)}.prose :where(tfoot td):not(:where([class~=not-prose],[class~=not-prose] *)){vertical-align:top}.prose :where(th,td):not(:where([class~=not-prose],[class~=not-prose] *)){text-align:start}.prose :where(figure>*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0;margin-bottom:0}.prose :where(figcaption):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-captions);font-size:.875em;line-height:1.4285714;margin-top:.8571429em}.prose{--tw-prose-body: #374151;--tw-prose-headings: #111827;--tw-prose-lead: #4b5563;--tw-prose-links: #111827;--tw-prose-bold: #111827;--tw-prose-counters: #6b7280;--tw-prose-bullets: #d1d5db;--tw-prose-hr: #e5e7eb;--tw-prose-quotes: #111827;--tw-prose-quote-borders: #e5e7eb;--tw-prose-captions: #6b7280;--tw-prose-kbd: #111827;--tw-prose-kbd-shadows: rgb(17 24 39 / 10%);--tw-prose-code: #111827;--tw-prose-pre-code: #e5e7eb;--tw-prose-pre-bg: #1f2937;--tw-prose-th-borders: #d1d5db;--tw-prose-td-borders: #e5e7eb;--tw-prose-invert-body: #d1d5db;--tw-prose-invert-headings: #fff;--tw-prose-invert-lead: #9ca3af;--tw-prose-invert-links: #fff;--tw-prose-invert-bold: #fff;--tw-prose-invert-counters: #9ca3af;--tw-prose-invert-bullets: #4b5563;--tw-prose-invert-hr: #374151;--tw-prose-invert-quotes: #f3f4f6;--tw-prose-invert-quote-borders: #374151;--tw-prose-invert-captions: #9ca3af;--tw-prose-invert-kbd: #fff;--tw-prose-invert-kbd-shadows: rgb(255 255 255 / 10%);--tw-prose-invert-code: #fff;--tw-prose-invert-pre-code: #d1d5db;--tw-prose-invert-pre-bg: rgb(0 0 0 / 50%);--tw-prose-invert-th-borders: #4b5563;--tw-prose-invert-td-borders: #374151;font-size:1rem;line-height:1.75}.prose :where(picture>img):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0;margin-bottom:0}.prose :where(li):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.5em;margin-bottom:.5em}.prose :where(ol>li):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:.375em}.prose :where(ul>li):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:.375em}.prose :where(.prose>ul>li p):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.75em;margin-bottom:.75em}.prose :where(.prose>ul>li>p:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.25em}.prose :where(.prose>ul>li>p:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:1.25em}.prose :where(.prose>ol>li>p:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.25em}.prose :where(.prose>ol>li>p:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:1.25em}.prose :where(ul ul,ul ol,ol ul,ol ol):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.75em;margin-bottom:.75em}.prose :where(dl):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.25em;margin-bottom:1.25em}.prose :where(dd):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.5em;padding-inline-start:1.625em}.prose :where(hr+*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose :where(h2+*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose :where(h3+*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose :where(h4+*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose :where(thead th:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:0}.prose :where(thead th:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-end:0}.prose :where(tbody td,tfoot td):not(:where([class~=not-prose],[class~=not-prose] *)){padding-top:.5714286em;padding-inline-end:.5714286em;padding-bottom:.5714286em;padding-inline-start:.5714286em}.prose :where(tbody td:first-child,tfoot td:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:0}.prose :where(tbody td:last-child,tfoot td:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-end:0}.prose :where(figure):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:2em;margin-bottom:2em}.prose :where(.prose>:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose :where(.prose>:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:0}.prose-sm{font-size:.875rem;line-height:1.7142857}.prose-sm :where(p):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.1428571em;margin-bottom:1.1428571em}.prose-sm :where([class~=lead]):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:1.2857143em;line-height:1.5555556;margin-top:.8888889em;margin-bottom:.8888889em}.prose-sm :where(blockquote):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.3333333em;margin-bottom:1.3333333em;padding-inline-start:1.1111111em}.prose-sm :where(h1):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:2.1428571em;margin-top:0;margin-bottom:.8em;line-height:1.2}.prose-sm :where(h2):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:1.4285714em;margin-top:1.6em;margin-bottom:.8em;line-height:1.4}.prose-sm :where(h3):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:1.2857143em;margin-top:1.5555556em;margin-bottom:.4444444em;line-height:1.5555556}.prose-sm :where(h4):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.4285714em;margin-bottom:.5714286em;line-height:1.4285714}.prose-sm :where(img):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.7142857em;margin-bottom:1.7142857em}.prose-sm :where(picture):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.7142857em;margin-bottom:1.7142857em}.prose-sm :where(picture>img):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0;margin-bottom:0}.prose-sm :where(video):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.7142857em;margin-bottom:1.7142857em}.prose-sm :where(kbd):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:.8571429em;border-radius:.3125rem;padding-top:.1428571em;padding-inline-end:.3571429em;padding-bottom:.1428571em;padding-inline-start:.3571429em}.prose-sm :where(code):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:.8571429em}.prose-sm :where(h2 code):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:.9em}.prose-sm :where(h3 code):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:.8888889em}.prose-sm :where(pre):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:.8571429em;line-height:1.6666667;margin-top:1.6666667em;margin-bottom:1.6666667em;border-radius:.25rem;padding-top:.6666667em;padding-inline-end:1em;padding-bottom:.6666667em;padding-inline-start:1em}.prose-sm :where(ol):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.1428571em;margin-bottom:1.1428571em;padding-inline-start:1.5714286em}.prose-sm :where(ul):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.1428571em;margin-bottom:1.1428571em;padding-inline-start:1.5714286em}.prose-sm :where(li):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.2857143em;margin-bottom:.2857143em}.prose-sm :where(ol>li):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:.4285714em}.prose-sm :where(ul>li):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:.4285714em}.prose-sm :where(.prose-sm>ul>li p):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.5714286em;margin-bottom:.5714286em}.prose-sm :where(.prose-sm>ul>li>p:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.1428571em}.prose-sm :where(.prose-sm>ul>li>p:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:1.1428571em}.prose-sm :where(.prose-sm>ol>li>p:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.1428571em}.prose-sm :where(.prose-sm>ol>li>p:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:1.1428571em}.prose-sm :where(ul ul,ul ol,ol ul,ol ol):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.5714286em;margin-bottom:.5714286em}.prose-sm :where(dl):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.1428571em;margin-bottom:1.1428571em}.prose-sm :where(dt):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.1428571em}.prose-sm :where(dd):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.2857143em;padding-inline-start:1.5714286em}.prose-sm :where(hr):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:2.8571429em;margin-bottom:2.8571429em}.prose-sm :where(hr+*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose-sm :where(h2+*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose-sm :where(h3+*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose-sm :where(h4+*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose-sm :where(table):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:.8571429em;line-height:1.5}.prose-sm :where(thead th):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-end:1em;padding-bottom:.6666667em;padding-inline-start:1em}.prose-sm :where(thead th:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:0}.prose-sm :where(thead th:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-end:0}.prose-sm :where(tbody td,tfoot td):not(:where([class~=not-prose],[class~=not-prose] *)){padding-top:.6666667em;padding-inline-end:1em;padding-bottom:.6666667em;padding-inline-start:1em}.prose-sm :where(tbody td:first-child,tfoot td:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:0}.prose-sm :where(tbody td:last-child,tfoot td:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-end:0}.prose-sm :where(figure):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.7142857em;margin-bottom:1.7142857em}.prose-sm :where(figure>*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0;margin-bottom:0}.prose-sm :where(figcaption):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:.8571429em;line-height:1.3333333;margin-top:.6666667em}.prose-sm :where(.prose-sm>:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose-sm :where(.prose-sm>:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:0}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.pointer-events-none{pointer-events:none}.pointer-events-auto{pointer-events:auto}.visible{visibility:visible}.invisible{visibility:hidden}.collapse{visibility:collapse}.static{position:static}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.sticky{position:sticky}.inset-0{top:0;right:0;bottom:0;left:0}.-bottom-0\.5{bottom:-.125rem}.bottom-0{bottom:0}.bottom-7{bottom:1.75rem}.left-0{left:0}.left-1\.5{left:.375rem}.left-1\/2{left:50%}.left-2{left:.5rem}.left-2\.5{left:.625rem}.left-\[50\%\]{left:50%}.right-0{right:0}.right-1{right:.25rem}.right-2{right:.5rem}.right-2\.5{right:.625rem}.right-4{right:1rem}.top-0{top:0}.top-1{top:.25rem}.top-1\.5{top:.375rem}.top-1\/2{top:50%}.top-14{top:3.5rem}.top-2{top:.5rem}.top-2\.5{top:.625rem}.top-4{top:1rem}.top-\[50\%\]{top:50%}.z-10{z-index:10}.z-20{z-index:20}.z-40{z-index:40}.z-50{z-index:50}.-mx-1{margin-left:-.25rem;margin-right:-.25rem}.mx-0\.5{margin-left:.125rem;margin-right:.125rem}.mx-2{margin-left:.5rem;margin-right:.5rem}.mx-auto{margin-left:auto;margin-right:auto}.my-1{margin-top:.25rem;margin-bottom:.25rem}.my-1\.5{margin-top:.375rem;margin-bottom:.375rem}.mb-0\.5{margin-bottom:.125rem}.mb-1{margin-bottom:.25rem}.mb-1\.5{margin-bottom:.375rem}.mb-2{margin-bottom:.5rem}.mb-3{margin-bottom:.75rem}.mb-4{margin-bottom:1rem}.mb-6{margin-bottom:1.5rem}.mb-8{margin-bottom:2rem}.ml-0\.5{margin-left:.125rem}.ml-1{margin-left:.25rem}.ml-2{margin-left:.5rem}.ml-4{margin-left:1rem}.ml-auto{margin-left:auto}.mr-1{margin-right:.25rem}.mr-1\.5{margin-right:.375rem}.mr-2{margin-right:.5rem}.mr-auto{margin-right:auto}.mt-0{margin-top:0}.mt-0\.5{margin-top:.125rem}.mt-1{margin-top:.25rem}.mt-1\.5{margin-top:.375rem}.mt-10{margin-top:2.5rem}.mt-2{margin-top:.5rem}.mt-3{margin-top:.75rem}.line-clamp-1{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:1}.line-clamp-2{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2}.line-clamp-6{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:6}.\!block{display:block!important}.block{display:block}.inline-block{display:inline-block}.inline{display:inline}.flex{display:flex}.inline-flex{display:inline-flex}.table{display:table}.grid{display:grid}.hidden{display:none}.size-3{width:.75rem;height:.75rem}.size-3\.5{width:.875rem;height:.875rem}.size-4{width:1rem;height:1rem}.h-1{height:.25rem}.h-1\.5{height:.375rem}.h-10{height:2.5rem}.h-11{height:2.75rem}.h-12{height:3rem}.h-14{height:3.5rem}.h-16{height:4rem}.h-2{height:.5rem}.h-2\.5{height:.625rem}.h-20{height:5rem}.h-3{height:.75rem}.h-3\.5{height:.875rem}.h-32{height:8rem}.h-4{height:1rem}.h-5{height:1.25rem}.h-6{height:1.5rem}.h-64{height:16rem}.h-7{height:1.75rem}.h-8{height:2rem}.h-9{height:2.25rem}.h-\[1px\]{height:1px}.h-\[24px\]{height:24px}.h-\[60vh\]{height:60vh}.h-\[80vh\]{height:80vh}.h-\[var\(--radix-select-trigger-height\)\]{height:var(--radix-select-trigger-height)}.h-full{height:100%}.h-px{height:1px}.h-screen{height:100vh}.max-h-10{max-height:2.5rem}.max-h-32{max-height:8rem}.max-h-40{max-height:10rem}.max-h-48{max-height:12rem}.max-h-64{max-height:16rem}.max-h-96{max-height:24rem}.max-h-\[200px\]{max-height:200px}.max-h-\[240px\]{max-height:240px}.max-h-\[80vh\]{max-height:80vh}.max-h-\[85vh\]{max-height:85vh}.max-h-full{max-height:100%}.min-h-0{min-height:0px}.min-h-\[12px\]{min-height:12px}.min-h-\[200px\]{min-height:200px}.min-h-\[5\.25rem\]{min-height:5.25rem}.min-h-full{min-height:100%}.min-h-screen{min-height:100vh}.w-1{width:.25rem}.w-1\.5{width:.375rem}.w-10{width:2.5rem}.w-12{width:3rem}.w-16{width:4rem}.w-2{width:.5rem}.w-2\.5{width:.625rem}.w-20{width:5rem}.w-3{width:.75rem}.w-3\.5{width:.875rem}.w-32{width:8rem}.w-4{width:1rem}.w-40{width:10rem}.w-44{width:11rem}.w-5{width:1.25rem}.w-6{width:1.5rem}.w-64{width:16rem}.w-7{width:1.75rem}.w-72{width:18rem}.w-8{width:2rem}.w-9{width:2.25rem}.w-\[1px\]{width:1px}.w-\[44px\]{width:44px}.w-\[700px\]{width:700px}.w-\[72vw\]{width:72vw}.w-full{width:100%}.w-px{width:1px}.w-screen{width:100vw}.min-w-0{min-width:0px}.min-w-\[10rem\]{min-width:10rem}.min-w-\[120px\]{min-width:120px}.min-w-\[140px\]{min-width:140px}.min-w-\[36px\]{min-width:36px}.min-w-\[80px\]{min-width:80px}.min-w-\[8rem\]{min-width:8rem}.min-w-\[var\(--radix-select-trigger-width\)\]{min-width:var(--radix-select-trigger-width)}.max-w-3xl{max-width:48rem}.max-w-4xl{max-width:56rem}.max-w-6xl{max-width:72rem}.max-w-\[85\%\]{max-width:85%}.max-w-\[90\%\]{max-width:90%}.max-w-\[95vw\]{max-width:95vw}.max-w-full{max-width:100%}.max-w-lg{max-width:32rem}.max-w-md{max-width:28rem}.max-w-none{max-width:none}.max-w-sm{max-width:24rem}.max-w-xs{max-width:20rem}.flex-1{flex:1 1 0%}.flex-shrink-0,.shrink-0{flex-shrink:0}.grow{flex-grow:1}.border-collapse{border-collapse:collapse}.-translate-x-1\/2{--tw-translate-x: -50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-translate-y-1\/2{--tw-translate-y: -50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-x-\[-50\%\]{--tw-translate-x: -50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-y-\[-50\%\]{--tw-translate-y: -50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-rotate-90{--tw-rotate: -90deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.rotate-180{--tw-rotate: 180deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.rotate-90{--tw-rotate: 90deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.scale-95{--tw-scale-x: .95;--tw-scale-y: .95;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}@keyframes bounce{0%,to{transform:translateY(-25%);animation-timing-function:cubic-bezier(.8,0,1,1)}50%{transform:none;animation-timing-function:cubic-bezier(0,0,.2,1)}}.animate-bounce{animation:bounce 1s infinite}@keyframes pulse{50%{opacity:.5}}.animate-pulse{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}@keyframes spin{to{transform:rotate(360deg)}}.animate-spin{animation:spin 1s linear infinite}.cursor-col-resize{cursor:col-resize}.cursor-default{cursor:default}.cursor-grab{cursor:grab}.cursor-not-allowed{cursor:not-allowed}.cursor-pointer{cursor:pointer}.cursor-se-resize{cursor:se-resize}.touch-none{touch-action:none}.select-none{-webkit-user-select:none;-moz-user-select:none;user-select:none}.select-text{-webkit-user-select:text;-moz-user-select:text;user-select:text}.resize-none{resize:none}.resize-y{resize:vertical}.resize{resize:both}.list-inside{list-style-position:inside}.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-3{grid-template-columns:repeat(3,minmax(0,1fr))}.flex-col{flex-direction:column}.flex-col-reverse{flex-direction:column-reverse}.flex-wrap{flex-wrap:wrap}.items-start{align-items:flex-start}.items-end{align-items:flex-end}.items-center{align-items:center}.items-baseline{align-items:baseline}.justify-start{justify-content:flex-start}.justify-end{justify-content:flex-end}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-0\.5{gap:.125rem}.gap-1{gap:.25rem}.gap-1\.5{gap:.375rem}.gap-2{gap:.5rem}.gap-2\.5{gap:.625rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.gap-6{gap:1.5rem}.gap-x-3{-moz-column-gap:.75rem;column-gap:.75rem}.gap-x-4{-moz-column-gap:1rem;column-gap:1rem}.gap-y-0\.5{row-gap:.125rem}.gap-y-1{row-gap:.25rem}.space-y-0\.5>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.125rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.125rem * var(--tw-space-y-reverse))}.space-y-1>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.25rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.25rem * var(--tw-space-y-reverse))}.space-y-1\.5>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.375rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.375rem * var(--tw-space-y-reverse))}.space-y-2>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.5rem * var(--tw-space-y-reverse))}.space-y-3>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.75rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.75rem * var(--tw-space-y-reverse))}.space-y-4>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(1rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1rem * var(--tw-space-y-reverse))}.space-y-5>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(1.25rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1.25rem * var(--tw-space-y-reverse))}.space-y-6>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(1.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1.5rem * var(--tw-space-y-reverse))}.self-center{align-self:center}.overflow-auto{overflow:auto}.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.overflow-y-auto{overflow-y:auto}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.whitespace-nowrap{white-space:nowrap}.whitespace-pre{white-space:pre}.whitespace-pre-wrap{white-space:pre-wrap}.break-words{overflow-wrap:break-word}.break-all{word-break:break-all}.rounded{border-radius:.25rem}.rounded-2xl{border-radius:1rem}.rounded-\[inherit\]{border-radius:inherit}.rounded-full{border-radius:9999px}.rounded-md{border-radius:calc(var(--radius) - 2px)}.rounded-none{border-radius:0}.rounded-sm{border-radius:calc(var(--radius) - 4px)}.rounded-xl{border-radius:.75rem}.rounded-t{border-top-left-radius:.25rem;border-top-right-radius:.25rem}.rounded-bl-md{border-bottom-left-radius:calc(var(--radius) - 2px)}.rounded-bl-sm{border-bottom-left-radius:calc(var(--radius) - 4px)}.rounded-br-md{border-bottom-right-radius:calc(var(--radius) - 2px)}.rounded-br-sm{border-bottom-right-radius:calc(var(--radius) - 4px)}.border{border-width:1px}.border-0{border-width:0px}.border-2{border-width:2px}.border-b{border-bottom-width:1px}.border-b-0{border-bottom-width:0px}.border-l{border-left-width:1px}.border-r{border-right-width:1px}.border-t{border-top-width:1px}.border-dashed{border-style:dashed}.border-amber-500\/30{border-color:#f59e0b4d}.border-amber-500\/40{border-color:#f59e0b66}.border-black\/10{border-color:#0000001a}.border-blue-500{--tw-border-opacity: 1;border-color:rgb(59 130 246 / var(--tw-border-opacity, 1))}.border-blue-500\/20{border-color:#3b82f633}.border-blue-500\/30{border-color:#3b82f64d}.border-blue-500\/50{border-color:#3b82f680}.border-border{border-color:hsl(var(--border))}.border-border\/50{border-color:hsl(var(--border) / .5)}.border-destructive{border-color:hsl(var(--destructive))}.border-destructive\/30{border-color:hsl(var(--destructive) / .3)}.border-emerald-500\/40{border-color:#10b98166}.border-green-500\/20{border-color:#22c55e33}.border-green-500\/50{border-color:#22c55e80}.border-input{border-color:hsl(var(--input))}.border-muted-foreground\/30{border-color:hsl(var(--muted-foreground) / .3)}.border-muted-foreground\/40{border-color:hsl(var(--muted-foreground) / .4)}.border-primary{border-color:hsl(var(--primary))}.border-primary\/15{border-color:hsl(var(--primary) / .15)}.border-primary\/25{border-color:hsl(var(--primary) / .25)}.border-red-500\/40{border-color:#ef444466}.border-red-500\/50{border-color:#ef444480}.border-transparent{border-color:transparent}.border-yellow-500\/20{border-color:#eab30833}.border-l-transparent{border-left-color:transparent}.border-t-transparent{border-top-color:transparent}.bg-accent{background-color:hsl(var(--accent))}.bg-accent\/30{background-color:hsl(var(--accent) / .3)}.bg-amber-500\/10{background-color:#f59e0b1a}.bg-background{background-color:hsl(var(--background))}.bg-background\/40{background-color:hsl(var(--background) / .4)}.bg-background\/50{background-color:hsl(var(--background) / .5)}.bg-background\/55{background-color:hsl(var(--background) / .55)}.bg-background\/60{background-color:hsl(var(--background) / .6)}.bg-background\/95{background-color:hsl(var(--background) / .95)}.bg-black\/5{background-color:#0000000d}.bg-black\/60{background-color:#0009}.bg-black\/80{background-color:#000c}.bg-blue-100{--tw-bg-opacity: 1;background-color:rgb(219 234 254 / var(--tw-bg-opacity, 1))}.bg-blue-400{--tw-bg-opacity: 1;background-color:rgb(96 165 250 / var(--tw-bg-opacity, 1))}.bg-blue-500\/10{background-color:#3b82f61a}.bg-blue-500\/15{background-color:#3b82f626}.bg-blue-500\/20{background-color:#3b82f633}.bg-blue-500\/5{background-color:#3b82f60d}.bg-blue-600{--tw-bg-opacity: 1;background-color:rgb(37 99 235 / var(--tw-bg-opacity, 1))}.bg-border{background-color:hsl(var(--border))}.bg-card{background-color:hsl(var(--card))}.bg-current{background-color:currentColor}.bg-destructive{background-color:hsl(var(--destructive))}.bg-destructive\/10{background-color:hsl(var(--destructive) / .1)}.bg-green-400\/5{background-color:#4ade800d}.bg-green-500{--tw-bg-opacity: 1;background-color:rgb(34 197 94 / var(--tw-bg-opacity, 1))}.bg-green-500\/10{background-color:#22c55e1a}.bg-green-500\/15{background-color:#22c55e26}.bg-muted{background-color:hsl(var(--muted))}.bg-muted-foreground{background-color:hsl(var(--muted-foreground))}.bg-muted-foreground\/10{background-color:hsl(var(--muted-foreground) / .1)}.bg-muted-foreground\/40{background-color:hsl(var(--muted-foreground) / .4)}.bg-muted-foreground\/5{background-color:hsl(var(--muted-foreground) / .05)}.bg-muted\/20{background-color:hsl(var(--muted) / .2)}.bg-muted\/30{background-color:hsl(var(--muted) / .3)}.bg-muted\/40{background-color:hsl(var(--muted) / .4)}.bg-muted\/50{background-color:hsl(var(--muted) / .5)}.bg-popover{background-color:hsl(var(--popover))}.bg-primary{background-color:hsl(var(--primary))}.bg-primary\/10{background-color:hsl(var(--primary) / .1)}.bg-primary\/15{background-color:hsl(var(--primary) / .15)}.bg-primary\/40{background-color:hsl(var(--primary) / .4)}.bg-primary\/5{background-color:hsl(var(--primary) / .05)}.bg-purple-400{--tw-bg-opacity: 1;background-color:rgb(192 132 252 / var(--tw-bg-opacity, 1))}.bg-red-400\/5{background-color:#f871710d}.bg-red-500{--tw-bg-opacity: 1;background-color:rgb(239 68 68 / var(--tw-bg-opacity, 1))}.bg-red-500\/10{background-color:#ef44441a}.bg-red-500\/20{background-color:#ef444433}.bg-red-600{--tw-bg-opacity: 1;background-color:rgb(220 38 38 / var(--tw-bg-opacity, 1))}.bg-secondary{background-color:hsl(var(--secondary))}.bg-transparent{background-color:transparent}.bg-white{--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1))}.bg-yellow-400{--tw-bg-opacity: 1;background-color:rgb(250 204 21 / var(--tw-bg-opacity, 1))}.bg-yellow-500{--tw-bg-opacity: 1;background-color:rgb(234 179 8 / var(--tw-bg-opacity, 1))}.bg-yellow-500\/10{background-color:#eab3081a}.bg-zinc-400{--tw-bg-opacity: 1;background-color:rgb(161 161 170 / var(--tw-bg-opacity, 1))}.fill-foreground{fill:hsl(var(--foreground))}.fill-muted-foreground\/60{fill:hsl(var(--muted-foreground) / .6)}.stroke-muted-foreground\/40{stroke:hsl(var(--muted-foreground) / .4)}.object-contain{-o-object-fit:contain;object-fit:contain}.p-0{padding:0}.p-0\.5{padding:.125rem}.p-1{padding:.25rem}.p-1\.5{padding:.375rem}.p-2{padding:.5rem}.p-2\.5{padding:.625rem}.p-3{padding:.75rem}.p-4{padding:1rem}.p-5{padding:1.25rem}.p-6{padding:1.5rem}.p-\[1px\]{padding:1px}.px-1{padding-left:.25rem;padding-right:.25rem}.px-1\.5{padding-left:.375rem;padding-right:.375rem}.px-2{padding-left:.5rem;padding-right:.5rem}.px-2\.5{padding-left:.625rem;padding-right:.625rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-3\.5{padding-left:.875rem;padding-right:.875rem}.px-4{padding-left:1rem;padding-right:1rem}.px-8{padding-left:2rem;padding-right:2rem}.py-0{padding-top:0;padding-bottom:0}.py-0\.5{padding-top:.125rem;padding-bottom:.125rem}.py-1{padding-top:.25rem;padding-bottom:.25rem}.py-1\.5{padding-top:.375rem;padding-bottom:.375rem}.py-10{padding-top:2.5rem;padding-bottom:2.5rem}.py-12{padding-top:3rem;padding-bottom:3rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.py-2\.5{padding-top:.625rem;padding-bottom:.625rem}.py-20{padding-top:5rem;padding-bottom:5rem}.py-3{padding-top:.75rem;padding-bottom:.75rem}.py-4{padding-top:1rem;padding-bottom:1rem}.py-6{padding-top:1.5rem;padding-bottom:1.5rem}.py-8{padding-top:2rem;padding-bottom:2rem}.py-\[3px\]{padding-top:3px;padding-bottom:3px}.py-px{padding-top:1px;padding-bottom:1px}.pb-0\.5{padding-bottom:.125rem}.pb-1{padding-bottom:.25rem}.pb-1\.5{padding-bottom:.375rem}.pb-2{padding-bottom:.5rem}.pb-\[env\(safe-area-inset-bottom\)\]{padding-bottom:env(safe-area-inset-bottom)}.pl-3{padding-left:.75rem}.pl-5{padding-left:1.25rem}.pl-8{padding-left:2rem}.pr-10{padding-right:2.5rem}.pr-14{padding-right:3.5rem}.pr-2{padding-right:.5rem}.pr-7{padding-right:1.75rem}.pt-0{padding-top:0}.pt-1{padding-top:.25rem}.pt-2{padding-top:.5rem}.pt-2\.5{padding-top:.625rem}.pt-3{padding-top:.75rem}.pt-4{padding-top:1rem}.text-left{text-align:left}.text-center{text-align:center}.text-right{text-align:right}.font-mono{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.text-2xl{font-size:1.5rem;line-height:2rem}.text-\[10px\]{font-size:10px}.text-\[11px\]{font-size:11px}.text-\[9px\]{font-size:9px}.text-base{font-size:1rem;line-height:1.5rem}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xs{font-size:.75rem;line-height:1rem}.font-bold{font-weight:700}.font-medium{font-weight:500}.font-normal{font-weight:400}.font-semibold{font-weight:600}.uppercase{text-transform:uppercase}.lowercase{text-transform:lowercase}.capitalize{text-transform:capitalize}.normal-case{text-transform:none}.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)}.leading-7{line-height:1.75rem}.leading-none{line-height:1}.leading-relaxed{line-height:1.625}.leading-snug{line-height:1.375}.leading-tight{line-height:1.25}.tracking-normal{letter-spacing:0em}.tracking-tight{letter-spacing:-.025em}.tracking-wider{letter-spacing:.05em}.tracking-widest{letter-spacing:.1em}.text-amber-500{--tw-text-opacity: 1;color:rgb(245 158 11 / var(--tw-text-opacity, 1))}.text-amber-700{--tw-text-opacity: 1;color:rgb(180 83 9 / var(--tw-text-opacity, 1))}.text-blue-400{--tw-text-opacity: 1;color:rgb(96 165 250 / var(--tw-text-opacity, 1))}.text-blue-400\/80{color:#60a5facc}.text-blue-500{--tw-text-opacity: 1;color:rgb(59 130 246 / var(--tw-text-opacity, 1))}.text-blue-900{--tw-text-opacity: 1;color:rgb(30 58 138 / var(--tw-text-opacity, 1))}.text-card-foreground{color:hsl(var(--card-foreground))}.text-destructive{color:hsl(var(--destructive))}.text-destructive-foreground{color:hsl(var(--destructive-foreground))}.text-emerald-400{--tw-text-opacity: 1;color:rgb(52 211 153 / var(--tw-text-opacity, 1))}.text-emerald-600{--tw-text-opacity: 1;color:rgb(5 150 105 / var(--tw-text-opacity, 1))}.text-foreground{color:hsl(var(--foreground))}.text-foreground\/80{color:hsl(var(--foreground) / .8)}.text-foreground\/90{color:hsl(var(--foreground) / .9)}.text-green-400{--tw-text-opacity: 1;color:rgb(74 222 128 / var(--tw-text-opacity, 1))}.text-green-500{--tw-text-opacity: 1;color:rgb(34 197 94 / var(--tw-text-opacity, 1))}.text-green-600{--tw-text-opacity: 1;color:rgb(22 163 74 / var(--tw-text-opacity, 1))}.text-inherit{color:inherit}.text-muted-foreground{color:hsl(var(--muted-foreground))}.text-muted-foreground\/30{color:hsl(var(--muted-foreground) / .3)}.text-muted-foreground\/40{color:hsl(var(--muted-foreground) / .4)}.text-muted-foreground\/50{color:hsl(var(--muted-foreground) / .5)}.text-muted-foreground\/60{color:hsl(var(--muted-foreground) / .6)}.text-muted-foreground\/70{color:hsl(var(--muted-foreground) / .7)}.text-muted-foreground\/80{color:hsl(var(--muted-foreground) / .8)}.text-orange-400{--tw-text-opacity: 1;color:rgb(251 146 60 / var(--tw-text-opacity, 1))}.text-popover-foreground{color:hsl(var(--popover-foreground))}.text-primary{color:hsl(var(--primary))}.text-primary-foreground{color:hsl(var(--primary-foreground))}.text-primary\/80{color:hsl(var(--primary) / .8)}.text-red-400{--tw-text-opacity: 1;color:rgb(248 113 113 / var(--tw-text-opacity, 1))}.text-red-400\/70{color:#f87171b3}.text-red-500{--tw-text-opacity: 1;color:rgb(239 68 68 / var(--tw-text-opacity, 1))}.text-red-600{--tw-text-opacity: 1;color:rgb(220 38 38 / var(--tw-text-opacity, 1))}.text-secondary-foreground{color:hsl(var(--secondary-foreground))}.text-sky-400{--tw-text-opacity: 1;color:rgb(56 189 248 / var(--tw-text-opacity, 1))}.text-white{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}.text-yellow-400{--tw-text-opacity: 1;color:rgb(250 204 21 / var(--tw-text-opacity, 1))}.text-yellow-500{--tw-text-opacity: 1;color:rgb(234 179 8 / var(--tw-text-opacity, 1))}.text-yellow-600{--tw-text-opacity: 1;color:rgb(202 138 4 / var(--tw-text-opacity, 1))}.line-through{text-decoration-line:line-through}.underline-offset-4{text-underline-offset:4px}.accent-primary{accent-color:hsl(var(--primary))}.opacity-0{opacity:0}.opacity-30{opacity:.3}.opacity-40{opacity:.4}.opacity-50{opacity:.5}.opacity-60{opacity:.6}.opacity-70{opacity:.7}.shadow-lg{--tw-shadow: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-md{--tw-shadow: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1);--tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-none{--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-sm{--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.outline-none{outline:2px solid transparent;outline-offset:2px}.outline{outline-style:solid}.ring{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.ring-0{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(0px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.ring-1{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.ring-2{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.ring-inset{--tw-ring-inset: inset}.ring-accent{--tw-ring-color: hsl(var(--accent))}.ring-green-500\/40{--tw-ring-color: rgb(34 197 94 / .4)}.ring-ring\/50{--tw-ring-color: hsl(var(--ring) / .5)}.ring-offset-background{--tw-ring-offset-color: hsl(var(--background))}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.backdrop-blur-md{--tw-backdrop-blur: blur(12px);-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.backdrop-blur-sm{--tw-backdrop-blur: blur(4px);-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-\[width\]{transition-property:width;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-all{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-opacity{transition-property:opacity;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-transform{transition-property:transform;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.duration-150{transition-duration:.15s}.duration-200{transition-duration:.2s}.duration-300{transition-duration:.3s}.ease-in-out{transition-timing-function:cubic-bezier(.4,0,.2,1)}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:hsl(var(--border));border-radius:9999px;border:1px solid transparent;background-clip:content-box}::-webkit-scrollbar-thumb:hover{background:hsl(var(--muted-foreground) / .4);background-clip:content-box}::-webkit-scrollbar-corner{background:transparent}*{scrollbar-width:thin;scrollbar-color:hsl(var(--border)) transparent}@keyframes indeterminate{0%{transform:translate(-100%);width:40%}50%{transform:translate(100%);width:60%}to{transform:translate(-100%);width:40%}}@keyframes typing-dot{0%,80%,to{transform:translateY(0);opacity:.4}40%{transform:translateY(-4px);opacity:1}}@keyframes gradient-spin{0%{background-position:0% 50%}50%{background-position:100% 50%}to{background-position:0% 50%}}.card-active-glow{background:linear-gradient(270deg,#3b82f6,#8b5cf6,#ec4899,#f59e0b,#10b981,#3b82f6);background-size:400% 400%;animation:gradient-spin 2.5s ease infinite;padding:2px;border-radius:calc(var(--radius) + 2px)}.card-active-glow>*{background:linear-gradient(270deg,#dbeafe,#ede9fe,#fce7f3,#fef3c7,#d1fae5,#dbeafe);background-size:400% 400%;animation:gradient-spin 2.5s ease infinite;border-radius:var(--radius);overflow:hidden}.dark .card-active-glow>*{background:linear-gradient(270deg,#1e293b,#1e1b4b,#2d1b3d,#2d2305,#0d2818,#1e293b);background-size:400% 400%;animation:gradient-spin 2.5s ease infinite;border-radius:var(--radius);overflow:hidden}.dark\:prose-invert:is(.dark *){--tw-prose-body: var(--tw-prose-invert-body);--tw-prose-headings: var(--tw-prose-invert-headings);--tw-prose-lead: var(--tw-prose-invert-lead);--tw-prose-links: var(--tw-prose-invert-links);--tw-prose-bold: var(--tw-prose-invert-bold);--tw-prose-counters: var(--tw-prose-invert-counters);--tw-prose-bullets: var(--tw-prose-invert-bullets);--tw-prose-hr: var(--tw-prose-invert-hr);--tw-prose-quotes: var(--tw-prose-invert-quotes);--tw-prose-quote-borders: var(--tw-prose-invert-quote-borders);--tw-prose-captions: var(--tw-prose-invert-captions);--tw-prose-kbd: var(--tw-prose-invert-kbd);--tw-prose-kbd-shadows: var(--tw-prose-invert-kbd-shadows);--tw-prose-code: var(--tw-prose-invert-code);--tw-prose-pre-code: var(--tw-prose-invert-pre-code);--tw-prose-pre-bg: var(--tw-prose-invert-pre-bg);--tw-prose-th-borders: var(--tw-prose-invert-th-borders);--tw-prose-td-borders: var(--tw-prose-invert-td-borders)}.file\:border-0::file-selector-button{border-width:0px}.file\:bg-transparent::file-selector-button{background-color:transparent}.file\:text-sm::file-selector-button{font-size:.875rem;line-height:1.25rem}.file\:font-medium::file-selector-button{font-weight:500}.placeholder\:text-muted-foreground::-moz-placeholder{color:hsl(var(--muted-foreground))}.placeholder\:text-muted-foreground::placeholder{color:hsl(var(--muted-foreground))}.placeholder\:text-muted-foreground\/40::-moz-placeholder{color:hsl(var(--muted-foreground) / .4)}.placeholder\:text-muted-foreground\/40::placeholder{color:hsl(var(--muted-foreground) / .4)}.placeholder\:text-muted-foreground\/50::-moz-placeholder{color:hsl(var(--muted-foreground) / .5)}.placeholder\:text-muted-foreground\/50::placeholder{color:hsl(var(--muted-foreground) / .5)}.hover\:border-border\/80:hover{border-color:hsl(var(--border) / .8)}.hover\:border-muted-foreground\/30:hover{border-color:hsl(var(--muted-foreground) / .3)}.hover\:border-muted-foreground\/40:hover{border-color:hsl(var(--muted-foreground) / .4)}.hover\:border-transparent:hover{border-color:transparent}.hover\:bg-accent:hover{background-color:hsl(var(--accent))}.hover\:bg-accent\/50:hover{background-color:hsl(var(--accent) / .5)}.hover\:bg-accent\/60:hover{background-color:hsl(var(--accent) / .6)}.hover\:bg-black\/10:hover{background-color:#0000001a}.hover\:bg-blue-500:hover{--tw-bg-opacity: 1;background-color:rgb(59 130 246 / var(--tw-bg-opacity, 1))}.hover\:bg-blue-500\/20:hover{background-color:#3b82f633}.hover\:bg-blue-500\/60:hover{background-color:#3b82f699}.hover\:bg-destructive\/10:hover{background-color:hsl(var(--destructive) / .1)}.hover\:bg-destructive\/80:hover{background-color:hsl(var(--destructive) / .8)}.hover\:bg-destructive\/90:hover{background-color:hsl(var(--destructive) / .9)}.hover\:bg-emerald-500\/10:hover{background-color:#10b9811a}.hover\:bg-green-500\/15:hover{background-color:#22c55e26}.hover\:bg-green-500\/20:hover{background-color:#22c55e33}.hover\:bg-muted:hover{background-color:hsl(var(--muted))}.hover\:bg-muted-foreground\/10:hover{background-color:hsl(var(--muted-foreground) / .1)}.hover\:bg-muted\/30:hover{background-color:hsl(var(--muted) / .3)}.hover\:bg-muted\/50:hover{background-color:hsl(var(--muted) / .5)}.hover\:bg-muted\/80:hover{background-color:hsl(var(--muted) / .8)}.hover\:bg-primary\/80:hover{background-color:hsl(var(--primary) / .8)}.hover\:bg-primary\/90:hover{background-color:hsl(var(--primary) / .9)}.hover\:bg-red-500\/10:hover{background-color:#ef44441a}.hover\:bg-red-500\/20:hover{background-color:#ef444433}.hover\:bg-red-700:hover{--tw-bg-opacity: 1;background-color:rgb(185 28 28 / var(--tw-bg-opacity, 1))}.hover\:bg-secondary\/80:hover{background-color:hsl(var(--secondary) / .8)}.hover\:text-accent-foreground:hover{color:hsl(var(--accent-foreground))}.hover\:text-blue-400:hover{--tw-text-opacity: 1;color:rgb(96 165 250 / var(--tw-text-opacity, 1))}.hover\:text-destructive:hover{color:hsl(var(--destructive))}.hover\:text-destructive-foreground:hover{color:hsl(var(--destructive-foreground))}.hover\:text-foreground:hover{color:hsl(var(--foreground))}.hover\:text-green-400:hover{--tw-text-opacity: 1;color:rgb(74 222 128 / var(--tw-text-opacity, 1))}.hover\:text-primary\/80:hover{color:hsl(var(--primary) / .8)}.hover\:text-red-400:hover{--tw-text-opacity: 1;color:rgb(248 113 113 / var(--tw-text-opacity, 1))}.hover\:underline:hover{text-decoration-line:underline}.hover\:opacity-100:hover{opacity:1}.hover\:opacity-80:hover{opacity:.8}.focus\:border-border:focus{border-color:hsl(var(--border))}.focus\:bg-accent:focus{background-color:hsl(var(--accent))}.focus\:bg-red-500\/10:focus{background-color:#ef44441a}.focus\:text-accent-foreground:focus{color:hsl(var(--accent-foreground))}.focus\:text-red-500:focus{--tw-text-opacity: 1;color:rgb(239 68 68 / var(--tw-text-opacity, 1))}.focus\:outline-none:focus{outline:2px solid transparent;outline-offset:2px}.focus\:ring-1:focus{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.focus\:ring-2:focus{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.focus\:ring-ring:focus{--tw-ring-color: hsl(var(--ring))}.focus\:ring-offset-2:focus{--tw-ring-offset-width: 2px}.focus-visible\:bg-muted-foreground\/10:focus-visible{background-color:hsl(var(--muted-foreground) / .1)}.focus-visible\:outline-none:focus-visible{outline:2px solid transparent;outline-offset:2px}.focus-visible\:ring-0:focus-visible{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(0px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.focus-visible\:ring-2:focus-visible{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.focus-visible\:ring-ring:focus-visible{--tw-ring-color: hsl(var(--ring))}.focus-visible\:ring-offset-2:focus-visible{--tw-ring-offset-width: 2px}.focus-visible\:ring-offset-background:focus-visible{--tw-ring-offset-color: hsl(var(--background))}.active\:cursor-grabbing:active{cursor:grabbing}.active\:bg-accent:active{background-color:hsl(var(--accent))}.active\:bg-blue-500\/10:active{background-color:#3b82f61a}.active\:bg-blue-500\/80:active{background-color:#3b82f6cc}.active\:text-blue-400:active{--tw-text-opacity: 1;color:rgb(96 165 250 / var(--tw-text-opacity, 1))}.active\:text-foreground:active{color:hsl(var(--foreground))}.disabled\:pointer-events-none:disabled{pointer-events:none}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:opacity-30:disabled{opacity:.3}.disabled\:opacity-50:disabled{opacity:.5}.disabled\:hover\:bg-transparent:hover:disabled{background-color:transparent}.disabled\:hover\:text-muted-foreground:hover:disabled{color:hsl(var(--muted-foreground))}.group:hover .group-hover\:opacity-100{opacity:1}.peer:disabled~.peer-disabled\:cursor-not-allowed{cursor:not-allowed}.peer:disabled~.peer-disabled\:opacity-70{opacity:.7}.data-\[disabled\]\:pointer-events-none[data-disabled]{pointer-events:none}.data-\[orientation\=horizontal\]\:inline-flex[data-orientation=horizontal]{display:inline-flex}.data-\[state\=inactive\]\:hidden[data-state=inactive]{display:none}.data-\[orientation\=horizontal\]\:h-10[data-orientation=horizontal]{height:2.5rem}.data-\[side\=bottom\]\:translate-y-1[data-side=bottom]{--tw-translate-y: .25rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.data-\[side\=left\]\:-translate-x-1[data-side=left]{--tw-translate-x: -.25rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.data-\[side\=right\]\:translate-x-1[data-side=right]{--tw-translate-x: .25rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.data-\[side\=top\]\:-translate-y-1[data-side=top]{--tw-translate-y: -.25rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.data-\[state\=checked\]\:translate-x-5[data-state=checked]{--tw-translate-x: 1.25rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.data-\[state\=unchecked\]\:translate-x-0[data-state=unchecked]{--tw-translate-x: 0px;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.data-\[orientation\=vertical\]\:flex-col[data-orientation=vertical]{flex-direction:column}.data-\[orientation\=horizontal\]\:items-center[data-orientation=horizontal],.data-\[orientation\=vertical\]\:items-center[data-orientation=vertical]{align-items:center}.data-\[orientation\=vertical\]\:justify-start[data-orientation=vertical]{justify-content:flex-start}.data-\[orientation\=horizontal\]\:justify-center[data-orientation=horizontal]{justify-content:center}.data-\[state\=active\]\:bg-background[data-state=active]{background-color:hsl(var(--background))}.data-\[state\=checked\]\:bg-primary[data-state=checked]{background-color:hsl(var(--primary))}.data-\[state\=open\]\:bg-accent[data-state=open]{background-color:hsl(var(--accent))}.data-\[state\=unchecked\]\:bg-input[data-state=unchecked]{background-color:hsl(var(--input))}.data-\[orientation\=horizontal\]\:px-3[data-orientation=horizontal]{padding-left:.75rem;padding-right:.75rem}.data-\[orientation\=horizontal\]\:py-1\.5[data-orientation=horizontal]{padding-top:.375rem;padding-bottom:.375rem}.data-\[state\=active\]\:text-foreground[data-state=active]{color:hsl(var(--foreground))}.data-\[state\=open\]\:text-muted-foreground[data-state=open]{color:hsl(var(--muted-foreground))}.data-\[disabled\]\:opacity-50[data-disabled]{opacity:.5}.data-\[state\=active\]\:shadow-sm[data-state=active]{--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.prose-code\:text-foreground :is(:where(code):not(:where([class~=not-prose],[class~=not-prose] *))){color:hsl(var(--foreground))}.prose-pre\:border :is(:where(pre):not(:where([class~=not-prose],[class~=not-prose] *))){border-width:1px}.prose-pre\:border-border :is(:where(pre):not(:where([class~=not-prose],[class~=not-prose] *))){border-color:hsl(var(--border))}.prose-pre\:bg-muted :is(:where(pre):not(:where([class~=not-prose],[class~=not-prose] *))){background-color:hsl(var(--muted))}.dark\:border-blue-500\/25:is(.dark *){border-color:#3b82f640}.dark\:border-white\/15:is(.dark *){border-color:#ffffff26}.dark\:bg-blue-500\/15:is(.dark *){background-color:#3b82f626}.dark\:bg-blue-500\/20:is(.dark *){background-color:#3b82f633}.dark\:bg-blue-600:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(37 99 235 / var(--tw-bg-opacity, 1))}.dark\:bg-muted-foreground\/10:is(.dark *){background-color:hsl(var(--muted-foreground) / .1)}.dark\:bg-white\/10:is(.dark *){background-color:#ffffff1a}.dark\:text-amber-300:is(.dark *){--tw-text-opacity: 1;color:rgb(252 211 77 / var(--tw-text-opacity, 1))}.dark\:text-blue-300:is(.dark *){--tw-text-opacity: 1;color:rgb(147 197 253 / var(--tw-text-opacity, 1))}.dark\:text-emerald-400:is(.dark *){--tw-text-opacity: 1;color:rgb(52 211 153 / var(--tw-text-opacity, 1))}.dark\:text-red-400:is(.dark *){--tw-text-opacity: 1;color:rgb(248 113 113 / var(--tw-text-opacity, 1))}.dark\:text-white:is(.dark *){--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}.dark\:hover\:bg-blue-500\/25:hover:is(.dark *){background-color:#3b82f640}.dark\:hover\:bg-muted-foreground\/20:hover:is(.dark *){background-color:hsl(var(--muted-foreground) / .2)}.dark\:hover\:bg-white\/20:hover:is(.dark *){background-color:#fff3}@media (min-width: 640px){.sm\:inline{display:inline}.sm\:max-w-2xl{max-width:42rem}.sm\:max-w-lg{max-width:32rem}.sm\:max-w-md{max-width:28rem}.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.sm\:flex-row{flex-direction:row}.sm\:justify-end{justify-content:flex-end}.sm\:justify-between{justify-content:space-between}.sm\:space-x-2>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(.5rem * var(--tw-space-x-reverse));margin-left:calc(.5rem * calc(1 - var(--tw-space-x-reverse)))}.sm\:rounded-xl{border-radius:.75rem}.sm\:text-left{text-align:left}}@media (min-width: 768px){.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.md\:opacity-0{opacity:0}.md\:focus-visible\:opacity-100:focus-visible{opacity:1}.group:hover .md\:group-hover\:opacity-100{opacity:1}}@media (min-width: 1024px){.lg\:block{display:block}.lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (min-width: 1280px){.xl\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}}.\[\&\>div\]\:\!block>div{display:block!important}.\[\&\>div\]\:\!w-full>div{width:100%!important}.\[\&\>span\]\:line-clamp-1>span{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:1}.\[\&_a\]\:text-blue-400 a{--tw-text-opacity: 1;color:rgb(96 165 250 / var(--tw-text-opacity, 1))}.\[\&_code\]\:rounded code{border-radius:.25rem}.\[\&_code\]\:px-1 code{padding-left:.25rem;padding-right:.25rem}.\[\&_code\]\:text-xs code{font-size:.75rem;line-height:1rem}.\[\&_h1\]\:text-base h1{font-size:1rem;line-height:1.5rem}.\[\&_h2\]\:text-sm h2,.\[\&_h3\]\:text-sm h3{font-size:.875rem;line-height:1.25rem}.\[\&_hr\]\:my-2 hr{margin-top:.5rem;margin-bottom:.5rem}.\[\&_ol\]\:my-1 ol,.\[\&_p\]\:my-1 p,.\[\&_pre\]\:my-1 pre{margin-top:.25rem;margin-bottom:.25rem}.\[\&_pre\]\:max-w-full pre{max-width:100%}.\[\&_pre\]\:overflow-x-auto pre{overflow-x:auto}.\[\&_pre\]\:rounded pre{border-radius:.25rem}.\[\&_pre\]\:p-2 pre{padding:.5rem}.\[\&_pre\]\:text-xs pre,.\[\&_table\]\:text-xs table{font-size:.75rem;line-height:1rem}.\[\&_ul\]\:my-1 ul{margin-top:.25rem;margin-bottom:.25rem}