@meridianjs/admin-dashboard 0.1.22 → 0.1.23

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.
@@ -0,0 +1,6 @@
1
+ import{j as a,a as St,b as _t}from"./vendor-query-B9zjiv_I.js";import{r as l,c as Ae,g as Dt,k as V,u as Nt}from"./vendor-react-GAVzOgi0.js";import{c as It,n as Ee,d as kt,g as At,m as Et,a as j,C as Rt,b as Ot,e as Pt,f as H,i as ce,h as $,j as we,s as Re,k as G,l as Ce,o as Tt,p as Bt,P as Oe,q as Lt,r as Wt,t as $t,u as Gt,v as Ht,w as Ft,x as zt,y as Ut,z as Kt,A as Yt,W as Me,B as qt,I as Vt,D as Xt,E as Jt,F as Qt,G as Zt,H as en}from"./index-M66lmlIq.js";import{a as tn,D as te,M as nn,g as Pe}from"./vendor-dnd-DY2LDzZ0.js";import{a6 as on,aa as sn,ab as rn,ac as an,a3 as F,ad as Te,ae as cn,af as ln,ag as dn,ah as un,ai as fn,aj as mn,ak as hn,al as pn,am as gn,an as xn,ao as vn,ap as yn,aq as bn}from"./vendor-radix-QHOavOli.js";import"./vendor-editor-Bddqu1DI.js";/**
2
+ * @license lucide-react v0.468.0 - ISC
3
+ *
4
+ * This source code is licensed under the ISC license.
5
+ * See the LICENSE file in the root directory of this source tree.
6
+ */const wn=It("Trash",[["path",{d:"M3 6h18",key:"d0wm0j"}],["path",{d:"M19 6v14c0 1-1 2-2 2H7c-1 0-2-1-2-2V6",key:"4alrt4"}],["path",{d:"M8 6V4c0-1 1-2 2-2h4c1 0 2 1 2 2v2",key:"v07s0e"}]]);function Be(e,t,o){const[n,s]=Ee(o==null?void 0:o.in,e,t),r=je(n,s),c=Math.abs(kt(n,s));n.setDate(n.getDate()-r*c);const i=+(je(n,s)===-r),d=r*(c-i);return d===0?0:d}function je(e,t){const o=e.getFullYear()-t.getFullYear()||e.getMonth()-t.getMonth()||e.getDate()-t.getDate()||e.getHours()-t.getHours()||e.getMinutes()-t.getMinutes()||e.getSeconds()-t.getSeconds()||e.getMilliseconds()-t.getMilliseconds();return o<0?-1:o>0?1:o}function Cn(e,t,o){const[n,s]=Ee(o==null?void 0:o.in,e,t),r=(+n-+s)/Et;return At(o==null?void 0:o.roundingMethod)(r)}const ne=e=>{let{transform:t}=e;return{...t,y:0}};function me(){const[e,t]=l.useState({x:0,y:0,elementX:0,elementY:0,elementPositionX:0,elementPositionY:0}),o=l.useRef(null);return l.useLayoutEffect(()=>{const n=s=>{var c;let r={x:s.pageX,y:s.pageY};if(((c=o.current)==null?void 0:c.nodeType)===Node.ELEMENT_NODE){const{left:i,top:d}=o.current.getBoundingClientRect(),u=i+window.scrollX,f=d+window.scrollY,m=s.pageX-u,h=s.pageY-f;r.elementX=m,r.elementY=h,r.elementPositionX=u,r.elementPositionY=f}t(i=>({...i,...r}))};return document.addEventListener("mousemove",n),()=>{document.removeEventListener("mousemove",n)}},[]),[e,o]}function Mn(e,t=500){const[o,n]=l.useState(e),s=l.useRef(null);return l.useEffect(()=>{const r=Date.now();if(s.current&&r>=s.current+t)s.current=r,n(e);else{const c=window.setTimeout(()=>{s.current=r,n(e)},t);return()=>window.clearTimeout(c)}},[e,t]),o}function jn(){const[e,t]=l.useState({x:null,y:null}),o=l.useCallback((...n)=>{if(typeof n[0]=="object")window.scrollTo(n[0]);else if(typeof n[0]=="number"&&typeof n[1]=="number")window.scrollTo(n[0],n[1]);else throw new Error("Invalid arguments passed to scrollTo. See here for more info. https://developer.mozilla.org/en-US/docs/Web/API/Window/scrollTo")},[]);return l.useLayoutEffect(()=>{const n=()=>{t({x:window.scrollX,y:window.scrollY})};return n(),window.addEventListener("scroll",n),()=>{window.removeEventListener("scroll",n)}},[]),[e,o]}const W={BASE_URL:"/",DEV:!1,MODE:"production",PROD:!0,SSR:!1};function Le(e){return"init"in e}function le(e){return!!e.write}function Se(e){return"v"in e||"e"in e}function Q(e){if("e"in e)throw e.e;if((W?"production":void 0)!=="production"&&!("v"in e))throw new Error("[Bug] atom state is not initialized");return e.v}function Z(e){return typeof(e==null?void 0:e.then)=="function"}function We(e,t,o){if(!o.p.has(e)){o.p.add(e);const n=()=>o.p.delete(e);t.then(n,n)}}function $e(e,t,o){var n;const s=new Set;for(const r of((n=o.get(e))==null?void 0:n.t)||[])s.add(r);for(const r of t.p)s.add(r);return s}const Sn=(e,t,...o)=>t.read(...o),_n=(e,t,...o)=>t.write(...o),Dn=(e,t)=>{var o;return(o=t.INTERNAL_onInit)==null?void 0:o.call(t,e)},Nn=(e,t,o)=>{var n;return(n=t.onMount)==null?void 0:n.call(t,o)},In=(e,t)=>{var o;const n=E(e),s=n[0],r=n[6],c=n[9];if((W?"production":void 0)!=="production"&&!t)throw new Error("Atom is undefined or null");let i=s.get(t);return i||(i={d:new Map,p:new Set,n:0},s.set(t,i),(o=r.i)==null||o.call(r,t),c==null||c(e,t)),i},kn=e=>{const t=E(e),o=t[1],n=t[3],s=t[4],r=t[5],c=t[6],i=t[13],d=[],u=f=>{try{f()}catch(m){d.push(m)}};do{c.f&&u(c.f);const f=new Set,m=f.add.bind(f);n.forEach(h=>{var g;return(g=o.get(h))==null?void 0:g.l.forEach(m)}),n.clear(),r.forEach(m),r.clear(),s.forEach(m),s.clear(),f.forEach(u),n.size&&i(e)}while(n.size||r.size||s.size);if(d.length)throw new AggregateError(d)},An=e=>{const t=E(e),o=t[1],n=t[2],s=t[3],r=t[11],c=t[14],i=t[17],d=[],u=new WeakSet,f=new WeakSet,m=Array.from(s);for(;m.length;){const h=m[m.length-1],g=r(e,h);if(f.has(h)){m.pop();continue}if(u.has(h)){if(n.get(h)===g.n)d.push([h,g]);else if((W?"production":void 0)!=="production"&&n.has(h))throw new Error("[Bug] invalidated atom exists");f.add(h),m.pop();continue}u.add(h);for(const v of $e(h,g,o))u.has(v)||m.push(v)}for(let h=d.length-1;h>=0;--h){const[g,v]=d[h];let M=!1;for(const I of v.d.keys())if(I!==g&&s.has(I)){M=!0;break}M&&(c(e,g),i(e,g)),n.delete(g)}},de=new WeakSet,En=(e,t)=>{var o,n;const s=E(e),r=s[1],c=s[2],i=s[3],d=s[6],u=s[7],f=s[11],m=s[12],h=s[13],g=s[14],v=s[16],M=s[17],I=s[20],y=s[26],x=f(e,t);if(Se(x)){if(r.has(t)&&c.get(t)!==x.n)return x;let w=!1;for(const[R,P]of x.d)if(g(e,R).n!==P){w=!0;break}if(!w)return x}let N=!0;const A=new Set(x.d.keys()),S=new Map,C=()=>{for(const w of A)S.has(w)||x.d.delete(w)},_=()=>{if(r.has(t)){const w=!i.size;M(e,t),w&&(h(e),m(e))}},k=w=>{var R;if(w===t){const B=f(e,w);if(!Se(B))if(Le(w))I(e,w,w.init);else throw new Error("no atom init");return Q(B)}const P=g(e,w);try{return Q(P)}finally{S.set(w,P.n),x.d.set(w,P.n),Z(x.v)&&We(t,x.v,P),r.has(t)&&((R=r.get(w))==null||R.t.add(t)),N||_()}};let p,D;const b={get signal(){return p||(p=new AbortController),p.signal},get setSelf(){return(W?"production":void 0)!=="production"&&console.warn("[DEPRECATED] setSelf is deprecated and will be removed in v3."),(W?"production":void 0)!=="production"&&!le(t)&&console.warn("setSelf function cannot be used with read-only atom"),!D&&le(t)&&(D=(...w)=>{if((W?"production":void 0)!=="production"&&N&&console.warn("setSelf function cannot be called in sync"),!N)try{return v(e,t,...w)}finally{h(e),m(e)}}),D}},O=x.n;try{(W?"production":void 0)!=="production"&&de.delete(e);const w=u(e,t,k,b);if((W?"production":void 0)!=="production"&&de.has(e)&&console.warn("Detected store mutation during atom read. This is not supported."),I(e,t,w),Z(w)){y(e,w,()=>p==null?void 0:p.abort());const R=()=>{C(),_()};w.then(R,R)}else C();return(o=d.r)==null||o.call(d,t),x}catch(w){return delete x.v,x.e=w,++x.n,x}finally{N=!1,O!==x.n&&c.get(t)===O&&(c.set(t,x.n),i.add(t),(n=d.c)==null||n.call(d,t))}},Rn=(e,t)=>{const o=E(e),n=o[1],s=o[2],r=o[11],c=[t];for(;c.length;){const i=c.pop(),d=r(e,i);for(const u of $e(i,d,n)){const f=r(e,u);s.get(u)!==f.n&&(s.set(u,f.n),c.push(u))}}},On=(e,t,...o)=>{const n=E(e),s=n[3],r=n[6],c=n[8],i=n[11],d=n[12],u=n[13],f=n[14],m=n[15],h=n[16],g=n[17],v=n[20];let M=!0;const I=x=>Q(f(e,x)),y=(x,...N)=>{var A;const S=i(e,x);try{if(x===t){if(!Le(x))throw new Error("atom not writable");(W?"production":void 0)!=="production"&&de.add(e);const C=S.n,_=N[0];v(e,x,_),g(e,x),C!==S.n&&(s.add(x),m(e,x),(A=r.c)==null||A.call(r,x));return}else return h(e,x,...N)}finally{M||(u(e),d(e))}};try{return c(e,t,I,y,...o)}finally{M=!1}},Pn=(e,t)=>{var o;const n=E(e),s=n[1],r=n[3],c=n[6],i=n[11],d=n[15],u=n[18],f=n[19],m=i(e,t),h=s.get(t);if(h){for(const[g,v]of m.d)if(!h.d.has(g)){const M=i(e,g);u(e,g).t.add(t),h.d.add(g),v!==M.n&&(r.add(g),d(e,g),(o=c.c)==null||o.call(c,g))}for(const g of h.d)if(!m.d.has(g)){h.d.delete(g);const v=f(e,g);v==null||v.t.delete(t)}}},Tn=(e,t)=>{var o;const n=E(e),s=n[1],r=n[4],c=n[6],i=n[10],d=n[11],u=n[12],f=n[13],m=n[14],h=n[16],g=n[18],v=d(e,t);let M=s.get(t);if(!M){m(e,t);for(const I of v.d.keys())g(e,I).t.add(t);if(M={l:new Set,d:new Set(v.d.keys()),t:new Set},s.set(t,M),le(t)){const I=()=>{let y=!0;const x=(...N)=>{try{return h(e,t,...N)}finally{y||(f(e),u(e))}};try{const N=i(e,t,x);N&&(M.u=()=>{y=!0;try{N()}finally{y=!1}})}finally{y=!1}};r.add(I)}(o=c.m)==null||o.call(c,t)}return M},Bn=(e,t)=>{var o,n;const s=E(e),r=s[1],c=s[5],i=s[6],d=s[11],u=s[19],f=d(e,t);let m=r.get(t);if(!m||m.l.size)return m;let h=!1;for(const g of m.t)if((o=r.get(g))!=null&&o.d.has(t)){h=!0;break}if(!h){m.u&&c.add(m.u),m=void 0,r.delete(t);for(const g of f.d.keys()){const v=u(e,g);v==null||v.t.delete(t)}(n=i.u)==null||n.call(i,t);return}return m},Ln=(e,t,o)=>{const n=E(e),s=n[11],r=n[27],c=s(e,t),i="v"in c,d=c.v;if(Z(o))for(const u of c.d.keys())We(t,o,s(e,u));c.v=o,delete c.e,(!i||!Object.is(d,c.v))&&(++c.n,Z(d)&&r(e,d))},Wn=(e,t)=>{const o=E(e)[14];return Q(o(e,t))},$n=(e,t,...o)=>{const n=E(e),s=n[12],r=n[13],c=n[16];try{return c(e,t,...o)}finally{r(e),s(e)}},Gn=(e,t,o)=>{const n=E(e),s=n[12],r=n[18],c=n[19],d=r(e,t).l;return d.add(o),s(e),()=>{d.delete(o),c(e,t),s(e)}},Hn=(e,t,o)=>{const s=E(e)[25];let r=s.get(t);if(!r){r=new Set,s.set(t,r);const c=()=>s.delete(t);t.then(c,c)}r.add(o)},Fn=(e,t)=>{const s=E(e)[25].get(t);s==null||s.forEach(r=>r())},Ge=new WeakMap,E=e=>{const t=Ge.get(e);if((W?"production":void 0)!=="production"&&!t)throw new Error("Store must be created by buildStore to read its building blocks");return t};function zn(e){const t=E(e),o=t[24];return o?o(t):t}function Un(...e){const t={get(n){const s=E(t)[21];return s(t,n)},set(n,...s){const r=E(t)[22];return r(t,n,...s)},sub(n,s){const r=E(t)[23];return r(t,n,s)}},o=[new WeakMap,new WeakMap,new WeakMap,new Set,new Set,new Set,{},Sn,_n,Dn,Nn,In,kn,An,En,Rn,On,Pn,Tn,Bn,Ln,Wn,$n,Gn,void 0,new WeakMap,Hn,Fn].map((n,s)=>e[s]||n);return Ge.set(t,Object.freeze(o)),t}const He={};let Kn=0;function Fe(e,t){const o=`atom${++Kn}`,n={toString(){return(He?"production":void 0)!=="production"&&this.debugLabel?o+":"+this.debugLabel:o}};return typeof e=="function"?n.read=e:(n.init=e,n.read=Yn,n.write=qn),n}function Yn(e){return e(this)}function qn(e,t,o){return t(this,typeof o=="function"?o(e(this)):o)}function Vn(){return Un()}let z;function Xn(){return z||(z=Vn(),(He?"production":void 0)!=="production"&&(globalThis.__JOTAI_DEFAULT_STORE__||(globalThis.__JOTAI_DEFAULT_STORE__=z),globalThis.__JOTAI_DEFAULT_STORE__!==z&&console.warn("Detected multiple Jotai instances. It may cause unexpected behavior with the default store. https://github.com/pmndrs/jotai/discussions/2044"))),z}const Jn={},Qn=l.createContext(void 0);function ze(e){return l.useContext(Qn)||Xn()}const ue=e=>typeof(e==null?void 0:e.then)=="function",fe=e=>{e.status||(e.status="pending",e.then(t=>{e.status="fulfilled",e.value=t},t=>{e.status="rejected",e.reason=t}))},Zn=Ae.use||(e=>{if(e.status==="pending")throw e;if(e.status==="fulfilled")return e.value;throw e.status==="rejected"?e.reason:(fe(e),e)}),oe=new WeakMap,_e=(e,t,o)=>{const s=zn(e)[26];let r=oe.get(t);return r||(r=new Promise((c,i)=>{let d=t;const u=h=>g=>{d===h&&c(g)},f=h=>g=>{d===h&&i(g)},m=()=>{try{const h=o();ue(h)?(oe.set(h,r),d=h,h.then(u(h),f(h)),s(e,h,m)):c(h)}catch(h){i(h)}};t.then(u(t),f(t)),s(e,t,m)}),oe.set(t,r)),r};function eo(e,t){const{delay:o,unstable_promiseStatus:n=!Ae.use}={},s=ze(),[[r,c,i],d]=l.useReducer(f=>{const m=s.get(e);return Object.is(f[0],m)&&f[1]===s&&f[2]===e?f:[m,s,e]},void 0,()=>[s.get(e),s,e]);let u=r;if((c!==s||i!==e)&&(d(),u=s.get(e)),l.useEffect(()=>{const f=s.sub(e,()=>{if(n)try{const m=s.get(e);ue(m)&&fe(_e(s,m,()=>s.get(e)))}catch{}if(typeof o=="number"){setTimeout(d,o);return}d()});return d(),f},[s,e,o,n]),l.useDebugValue(u),ue(u)){const f=_e(s,u,()=>s.get(e));return n&&fe(f),Zn(f)}return u}function to(e,t){const o=ze();return l.useCallback((...s)=>{if((Jn?"production":void 0)!=="production"&&!("write"in e))throw new Error("not writable atom");return o.set(e,...s)},[o,e])}function Ue(e,t){return[eo(e),to(e)]}var Ke="Expected a function",De=NaN,no="[object Symbol]",oo=/^\s+|\s+$/g,so=/^[-+]0x[0-9a-f]+$/i,ro=/^0b[01]+$/i,ao=/^0o[0-7]+$/i,io=parseInt,co=typeof V=="object"&&V&&V.Object===Object&&V,lo=typeof self=="object"&&self&&self.Object===Object&&self,uo=co||lo||Function("return this")(),fo=Object.prototype,mo=fo.toString,ho=Math.max,po=Math.min,se=function(){return uo.Date.now()};function go(e,t,o){var n,s,r,c,i,d,u=0,f=!1,m=!1,h=!0;if(typeof e!="function")throw new TypeError(Ke);t=Ne(t)||0,ee(o)&&(f=!!o.leading,m="maxWait"in o,r=m?ho(Ne(o.maxWait)||0,t):r,h="trailing"in o?!!o.trailing:h);function g(C){var _=n,k=s;return n=s=void 0,u=C,c=e.apply(k,_),c}function v(C){return u=C,i=setTimeout(y,t),f?g(C):c}function M(C){var _=C-d,k=C-u,p=t-_;return m?po(p,r-k):p}function I(C){var _=C-d,k=C-u;return d===void 0||_>=t||_<0||m&&k>=r}function y(){var C=se();if(I(C))return x(C);i=setTimeout(y,M(C))}function x(C){return i=void 0,h&&n?g(C):(n=s=void 0,c)}function N(){i!==void 0&&clearTimeout(i),u=0,n=d=s=i=void 0}function A(){return i===void 0?c:x(se())}function S(){var C=se(),_=I(C);if(n=arguments,s=this,d=C,_){if(i===void 0)return v(d);if(m)return i=setTimeout(y,t),g(d)}return i===void 0&&(i=setTimeout(y,t)),c}return S.cancel=N,S.flush=A,S}function xo(e,t,o){var n=!0,s=!0;if(typeof e!="function")throw new TypeError(Ke);return ee(o)&&(n="leading"in o?!!o.leading:n,s="trailing"in o?!!o.trailing:s),go(e,t,{leading:n,maxWait:t,trailing:s})}function ee(e){var t=typeof e;return!!e&&(t=="object"||t=="function")}function vo(e){return!!e&&typeof e=="object"}function yo(e){return typeof e=="symbol"||vo(e)&&mo.call(e)==no}function Ne(e){if(typeof e=="number")return e;if(yo(e))return De;if(ee(e)){var t=typeof e.valueOf=="function"?e.valueOf():e;e=ee(t)?t+"":t}if(typeof e!="string")return e===0?e:+e;e=e.replace(oo,"");var o=ro.test(e);return o||ao.test(e)?io(e.slice(2),o?2:8):so.test(e)?De:+e}var bo=xo;const wo=Dt(bo),Ye=l.forwardRef(({className:e,...t},o)=>a.jsx("div",{ref:o,className:j("rounded-lg border bg-card text-card-foreground shadow-sm",e),...t}));Ye.displayName="Card";const Co=l.forwardRef(({className:e,...t},o)=>a.jsx("div",{ref:o,className:j("flex flex-col space-y-1.5 p-6",e),...t}));Co.displayName="CardHeader";const Mo=l.forwardRef(({className:e,...t},o)=>a.jsx("h3",{ref:o,className:j("text-2xl font-semibold leading-none tracking-tight",e),...t}));Mo.displayName="CardTitle";const jo=l.forwardRef(({className:e,...t},o)=>a.jsx("p",{ref:o,className:j("text-sm text-muted-foreground",e),...t}));jo.displayName="CardDescription";const So=l.forwardRef(({className:e,...t},o)=>a.jsx("div",{ref:o,className:j("p-6 pt-0",e),...t}));So.displayName="CardContent";const _o=l.forwardRef(({className:e,...t},o)=>a.jsx("div",{ref:o,className:j("flex items-center p-6 pt-0",e),...t}));_o.displayName="CardFooter";function Do(e,t=[]){let o=[];function n(r,c){const i=l.createContext(c),d=o.length;o=[...o,c];const u=m=>{var y;const{scope:h,children:g,...v}=m,M=((y=h==null?void 0:h[e])==null?void 0:y[d])||i,I=l.useMemo(()=>v,Object.values(v));return a.jsx(M.Provider,{value:I,children:g})};u.displayName=r+"Provider";function f(m,h){var M;const g=((M=h==null?void 0:h[e])==null?void 0:M[d])||i,v=l.useContext(g);if(v)return v;if(c!==void 0)return c;throw new Error(`\`${m}\` must be used within \`${r}\``)}return[u,f]}const s=()=>{const r=o.map(c=>l.createContext(c));return function(i){const d=(i==null?void 0:i[e])||r;return l.useMemo(()=>({[`__scope${e}`]:{...i,[e]:d}}),[i,d])}};return s.scopeName=e,[n,No(s,...t)]}function No(...e){const t=e[0];if(e.length===1)return t;const o=()=>{const n=e.map(s=>({useScope:s(),scopeName:s.scopeName}));return function(r){const c=n.reduce((i,{useScope:d,scopeName:u})=>{const m=d(r)[`__scope${u}`];return{...i,...m}},{});return l.useMemo(()=>({[`__scope${t.scopeName}`]:c}),[c])}};return o.scopeName=t.scopeName,o}function Io(e){const t=ko(e),o=l.forwardRef((n,s)=>{const{children:r,...c}=n,i=l.Children.toArray(r),d=i.find(Eo);if(d){const u=d.props.children,f=i.map(m=>m===d?l.Children.count(u)>1?l.Children.only(null):l.isValidElement(u)?u.props.children:null:m);return a.jsx(t,{...c,ref:s,children:l.isValidElement(u)?l.cloneElement(u,void 0,f):null})}return a.jsx(t,{...c,ref:s,children:r})});return o.displayName=`${e}.Slot`,o}function ko(e){const t=l.forwardRef((o,n)=>{const{children:s,...r}=o;if(l.isValidElement(s)){const c=Oo(s),i=Ro(r,s.props);return s.type!==l.Fragment&&(i.ref=n?on(n,c):c),l.cloneElement(s,i)}return l.Children.count(s)>1?l.Children.only(null):null});return t.displayName=`${e}.SlotClone`,t}var Ao=Symbol("radix.slottable");function Eo(e){return l.isValidElement(e)&&typeof e.type=="function"&&"__radixId"in e.type&&e.type.__radixId===Ao}function Ro(e,t){const o={...t};for(const n in t){const s=e[n],r=t[n];/^on[A-Z]/.test(n)?s&&r?o[n]=(...i)=>{const d=r(...i);return s(...i),d}:s&&(o[n]=s):n==="style"?o[n]={...s,...r}:n==="className"&&(o[n]=[s,r].filter(Boolean).join(" "))}return{...e,...o}}function Oo(e){var n,s;let t=(n=Object.getOwnPropertyDescriptor(e.props,"ref"))==null?void 0:n.get,o=t&&"isReactWarning"in t&&t.isReactWarning;return o?e.ref:(t=(s=Object.getOwnPropertyDescriptor(e,"ref"))==null?void 0:s.get,o=t&&"isReactWarning"in t&&t.isReactWarning,o?e.props.ref:e.props.ref||e.ref)}var Po=["a","button","div","form","h2","h3","img","input","label","li","nav","ol","p","select","span","svg","ul"],To=Po.reduce((e,t)=>{const o=Io(`Primitive.${t}`),n=l.forwardRef((s,r)=>{const{asChild:c,...i}=s,d=c?o:t;return typeof window<"u"&&(window[Symbol.for("radix-ui")]=!0),a.jsx(d,{...i,ref:r})});return n.displayName=`Primitive.${t}`,{...e,[t]:n}},{}),he="ContextMenu",[Bo]=Do(he,[Te]),T=Te(),[Lo,qe]=Bo(he),Ve=e=>{const{__scopeContextMenu:t,children:o,onOpenChange:n,dir:s,modal:r=!0}=e,[c,i]=l.useState(!1),d=T(t),u=sn(n),f=l.useCallback(m=>{i(m),u(m)},[u]);return a.jsx(Lo,{scope:t,open:c,onOpenChange:f,modal:r,children:a.jsx(rn,{...d,dir:s,open:c,onOpenChange:f,modal:r,children:o})})};Ve.displayName=he;var Xe="ContextMenuTrigger",Je=l.forwardRef((e,t)=>{const{__scopeContextMenu:o,disabled:n=!1,...s}=e,r=qe(Xe,o),c=T(o),i=l.useRef({x:0,y:0}),d=l.useRef({getBoundingClientRect:()=>DOMRect.fromRect({width:0,height:0,...i.current})}),u=l.useRef(0),f=l.useCallback(()=>window.clearTimeout(u.current),[]),m=h=>{i.current={x:h.clientX,y:h.clientY},r.onOpenChange(!0)};return l.useEffect(()=>f,[f]),l.useEffect(()=>void(n&&f()),[n,f]),a.jsxs(a.Fragment,{children:[a.jsx(an,{...c,virtualRef:d}),a.jsx(To.span,{"data-state":r.open?"open":"closed","data-disabled":n?"":void 0,...s,ref:t,style:{WebkitTouchCallout:"none",...e.style},onContextMenu:n?e.onContextMenu:F(e.onContextMenu,h=>{f(),m(h),h.preventDefault()}),onPointerDown:n?e.onPointerDown:F(e.onPointerDown,X(h=>{f(),u.current=window.setTimeout(()=>m(h),700)})),onPointerMove:n?e.onPointerMove:F(e.onPointerMove,X(f)),onPointerCancel:n?e.onPointerCancel:F(e.onPointerCancel,X(f)),onPointerUp:n?e.onPointerUp:F(e.onPointerUp,X(f))})]})});Je.displayName=Xe;var Wo="ContextMenuPortal",Qe=e=>{const{__scopeContextMenu:t,...o}=e,n=T(t);return a.jsx(cn,{...n,...o})};Qe.displayName=Wo;var Ze="ContextMenuContent",et=l.forwardRef((e,t)=>{const{__scopeContextMenu:o,...n}=e,s=qe(Ze,o),r=T(o),c=l.useRef(!1);return a.jsx(ln,{...r,...n,ref:t,side:"right",sideOffset:2,align:"start",onCloseAutoFocus:i=>{var d;(d=e.onCloseAutoFocus)==null||d.call(e,i),!i.defaultPrevented&&c.current&&i.preventDefault(),c.current=!1},onInteractOutside:i=>{var d;(d=e.onInteractOutside)==null||d.call(e,i),!i.defaultPrevented&&!s.modal&&(c.current=!0)},style:{...e.style,"--radix-context-menu-content-transform-origin":"var(--radix-popper-transform-origin)","--radix-context-menu-content-available-width":"var(--radix-popper-available-width)","--radix-context-menu-content-available-height":"var(--radix-popper-available-height)","--radix-context-menu-trigger-width":"var(--radix-popper-anchor-width)","--radix-context-menu-trigger-height":"var(--radix-popper-anchor-height)"}})});et.displayName=Ze;var $o="ContextMenuGroup",Go=l.forwardRef((e,t)=>{const{__scopeContextMenu:o,...n}=e,s=T(o);return a.jsx(un,{...s,...n,ref:t})});Go.displayName=$o;var Ho="ContextMenuLabel",tt=l.forwardRef((e,t)=>{const{__scopeContextMenu:o,...n}=e,s=T(o);return a.jsx(fn,{...s,...n,ref:t})});tt.displayName=Ho;var Fo="ContextMenuItem",nt=l.forwardRef((e,t)=>{const{__scopeContextMenu:o,...n}=e,s=T(o);return a.jsx(dn,{...s,...n,ref:t})});nt.displayName=Fo;var zo="ContextMenuCheckboxItem",ot=l.forwardRef((e,t)=>{const{__scopeContextMenu:o,...n}=e,s=T(o);return a.jsx(mn,{...s,...n,ref:t})});ot.displayName=zo;var Uo="ContextMenuRadioGroup",Ko=l.forwardRef((e,t)=>{const{__scopeContextMenu:o,...n}=e,s=T(o);return a.jsx(hn,{...s,...n,ref:t})});Ko.displayName=Uo;var Yo="ContextMenuRadioItem",st=l.forwardRef((e,t)=>{const{__scopeContextMenu:o,...n}=e,s=T(o);return a.jsx(pn,{...s,...n,ref:t})});st.displayName=Yo;var qo="ContextMenuItemIndicator",rt=l.forwardRef((e,t)=>{const{__scopeContextMenu:o,...n}=e,s=T(o);return a.jsx(gn,{...s,...n,ref:t})});rt.displayName=qo;var Vo="ContextMenuSeparator",at=l.forwardRef((e,t)=>{const{__scopeContextMenu:o,...n}=e,s=T(o);return a.jsx(xn,{...s,...n,ref:t})});at.displayName=Vo;var Xo="ContextMenuArrow",Jo=l.forwardRef((e,t)=>{const{__scopeContextMenu:o,...n}=e,s=T(o);return a.jsx(vn,{...s,...n,ref:t})});Jo.displayName=Xo;var Qo="ContextMenuSubTrigger",it=l.forwardRef((e,t)=>{const{__scopeContextMenu:o,...n}=e,s=T(o);return a.jsx(yn,{...s,...n,ref:t})});it.displayName=Qo;var Zo="ContextMenuSubContent",ct=l.forwardRef((e,t)=>{const{__scopeContextMenu:o,...n}=e,s=T(o);return a.jsx(bn,{...s,...n,ref:t,style:{...e.style,"--radix-context-menu-content-transform-origin":"var(--radix-popper-transform-origin)","--radix-context-menu-content-available-width":"var(--radix-popper-available-width)","--radix-context-menu-content-available-height":"var(--radix-popper-available-height)","--radix-context-menu-trigger-width":"var(--radix-popper-anchor-width)","--radix-context-menu-trigger-height":"var(--radix-popper-anchor-height)"}})});ct.displayName=Zo;function X(e){return t=>t.pointerType!=="mouse"?e(t):void 0}var es=Ve,ts=Je,ns=Qe,lt=et,dt=tt,ut=nt,ft=ot,mt=st,ht=rt,pt=at,gt=it,xt=ct;const os=es,ss=ts,rs=l.forwardRef(({className:e,inset:t,children:o,...n},s)=>a.jsxs(gt,{ref:s,className:j("flex cursor-default select-none items-center rounded-sm px-2 py-1.5 text-sm outline-none focus:bg-accent focus:text-accent-foreground data-[state=open]:bg-accent data-[state=open]:text-accent-foreground",t&&"pl-8",e),...n,children:[o,a.jsx(Rt,{className:"ml-auto h-4 w-4"})]}));rs.displayName=gt.displayName;const as=l.forwardRef(({className:e,...t},o)=>a.jsx(xt,{ref:o,className:j("z-50 min-w-[8rem] overflow-hidden rounded-md border bg-popover p-1 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",e),...t}));as.displayName=xt.displayName;const vt=l.forwardRef(({className:e,...t},o)=>a.jsx(ns,{children:a.jsx(lt,{ref:o,className:j("z-50 min-w-[8rem] overflow-hidden rounded-md border bg-popover p-1 text-popover-foreground shadow-md animate-in fade-in-80 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",e),...t})}));vt.displayName=lt.displayName;const yt=l.forwardRef(({className:e,inset:t,...o},n)=>a.jsx(ut,{ref:n,className:j("relative flex cursor-default select-none items-center rounded-sm px-2 py-1.5 text-sm outline-none focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50",t&&"pl-8",e),...o}));yt.displayName=ut.displayName;const is=l.forwardRef(({className:e,children:t,checked:o,...n},s)=>a.jsxs(ft,{ref:s,className:j("relative flex 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),checked:o,...n,children:[a.jsx("span",{className:"absolute left-2 flex h-3.5 w-3.5 items-center justify-center",children:a.jsx(ht,{children:a.jsx(Ot,{className:"h-4 w-4"})})}),t]}));is.displayName=ft.displayName;const cs=l.forwardRef(({className:e,children:t,...o},n)=>a.jsxs(mt,{ref:n,className:j("relative flex 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),...o,children:[a.jsx("span",{className:"absolute left-2 flex h-3.5 w-3.5 items-center justify-center",children:a.jsx(ht,{children:a.jsx(Pt,{className:"h-2 w-2 fill-current"})})}),t]}));cs.displayName=mt.displayName;const ls=l.forwardRef(({className:e,inset:t,...o},n)=>a.jsx(dt,{ref:n,className:j("px-2 py-1.5 text-sm font-semibold text-foreground",t&&"pl-8",e),...o}));ls.displayName=dt.displayName;const ds=l.forwardRef(({className:e,...t},o)=>a.jsx(pt,{ref:o,className:j("-mx-1 my-1 h-px bg-border",e),...t}));ds.displayName=pt.displayName;const us=Fe(!1),fs=Fe(0),pe=()=>Ue(us),ge=()=>Ue(fs),ms=e=>{let t=o=>1;return(e==="monthly"||e==="quarterly")&&(t=H),t},Y=e=>{let t=Be;return(e==="monthly"||e==="quarterly")&&(t=Lt),t},xe=e=>{let t=Cn;return(e==="monthly"||e==="quarterly")&&(t=Be),t},K=e=>{let t=Tt;return(e==="monthly"||e==="quarterly")&&(t=Wt),t},hs=e=>{let t=Bt;return(e==="monthly"||e==="quarterly")&&(t=$t),t},bt=e=>{let t=$;return(e==="monthly"||e==="quarterly")&&(t=Gt),t},U=(e,t)=>{const o=new Date(e.timelineData[0].year,0,1),n=e.columnWidth*e.zoom/100,s=Math.floor(t/n),r=ms(e.range),i=bt(e.range)(o,s),d=r(i),u=Math.round(n/d),f=Math.floor(t%n/u);return $(i,f)},ps=e=>{const t=[];t.push({year:e.getFullYear()-1,quarters:new Array(4).fill(null)},{year:e.getFullYear(),quarters:new Array(4).fill(null)},{year:e.getFullYear()+1,quarters:new Array(4).fill(null)});for(const o of t)o.quarters=new Array(4).fill(null).map((n,s)=>({months:new Array(3).fill(null).map((r,c)=>{const i=s*3+c;return{days:H(new Date(o.year,i,1))}})}));return t},wt=(e,t,o)=>{const n=o.columnWidth*o.zoom/100,s=Y(o.range),r=K(o.range),c=s(r(e),t);if(o.range==="daily")return n*c;const i=e.getDate(),d=H(e),u=n/d;return c*n+i*u},gs=(e,t,o)=>{const n=o.columnWidth*o.zoom/100;if(!t)return n*2;const s=Y(o.range);if(o.range==="daily"){const v=s(t,e);return n*(v||1)}const r=H(e),c=n/r;if(ce(e,t))return c;const i=xe(o.range),d=K(o.range);if(ce(d(e),d(t)))return i(t,e)*c;const u=r-Ce(e),f=Ce(t),m=s(d(t),d(e)),h=H(t),g=n/h;return(m-1)*n+u*c+f*g},Ct=(e,t,o)=>{const n=K(t),s=hs(t),r=xe(t),c=n(e),i=s(e),d=r(i,c);return e.getDate()/d*o},L=l.createContext({zoom:100,range:"monthly",columnWidth:50,headerHeight:60,sidebarWidth:300,rowHeight:36,onAddItem:void 0,placeholderLength:2,timelineData:[],ref:null,scrollToFeature:void 0}),ve=({title:e,columns:t,renderHeaderItem:o})=>{const n=l.useId();return a.jsxs("div",{className:"sticky top-0 z-20 grid w-full shrink-0 bg-backdrop/90 backdrop-blur-sm",style:{height:"var(--gantt-header-height)"},children:[a.jsx("div",{children:a.jsx("div",{className:"sticky inline-flex whitespace-nowrap px-3 py-2 text-muted-foreground text-xs",style:{left:"var(--gantt-sidebar-width)"},children:a.jsx("p",{children:e})})}),a.jsx("div",{className:"grid w-full",style:{gridTemplateColumns:`repeat(${t}, var(--gantt-column-width))`},children:Array.from({length:t}).map((s,r)=>a.jsx("div",{className:"shrink-0 border-border/50 border-b py-1 text-center text-xs",children:o(r)},`${n}-${r}`))})]})},xs=()=>l.useContext(L).timelineData.map(t=>t.quarters.flatMap(o=>o.months).map((o,n)=>a.jsxs("div",{className:"relative flex flex-col",children:[a.jsx(ve,{columns:o.days,renderHeaderItem:s=>a.jsxs("div",{className:"flex items-center justify-center gap-1",children:[a.jsx("p",{children:G($(new Date(t.year,n,1),s),"d")}),a.jsx("p",{className:"text-muted-foreground",children:G($(new Date(t.year,n,1),s),"EEEEE")})]}),title:G(new Date(t.year,n,1),"MMMM yyyy")}),a.jsx(ye,{columns:o.days,isColumnSecondary:s=>[0,6].includes($(new Date(t.year,n,1),s).getDay())})]},`${t.year}-${n}`))),vs=()=>l.useContext(L).timelineData.map(t=>a.jsxs("div",{className:"relative flex flex-col",children:[a.jsx(ve,{columns:t.quarters.flatMap(o=>o.months).length,renderHeaderItem:o=>a.jsx("p",{children:G(new Date(t.year,o,1),"MMM")}),title:`${t.year}`}),a.jsx(ye,{columns:t.quarters.flatMap(o=>o.months).length})]},t.year)),ys=()=>l.useContext(L).timelineData.map(t=>t.quarters.map((o,n)=>a.jsxs("div",{className:"relative flex flex-col",children:[a.jsx(ve,{columns:o.months.length,renderHeaderItem:s=>a.jsx("p",{children:G(new Date(t.year,n*3+s,1),"MMM")}),title:`Q${n+1} ${t.year}`}),a.jsx(ye,{columns:o.months.length})]},`${t.year}-${n}`))),bs={daily:xs,monthly:vs,quarterly:ys},ws=({className:e})=>{const t=l.useContext(L),o=bs[t.range];return a.jsx("div",{className:j("-space-x-px flex h-full w-max divide-x divide-border/50",e),children:a.jsx(o,{})})},re=({feature:e,onSelectItem:t,className:o,duration:n})=>{const s=l.useContext(L),r=e.endAt&&ce(e.startAt,e.endAt)?$(e.endAt,1):e.endAt,c=n??(r?we(e.startAt,r):`${we(e.startAt,new Date)} so far`),i=u=>{var f;u.target===u.currentTarget&&((f=s.scrollToFeature)==null||f.call(s,e),t==null||t(e.id))},d=u=>{var f;u.key==="Enter"&&((f=s.scrollToFeature)==null||f.call(s,e),t==null||t(e.id))};return a.jsxs("div",{className:j("relative flex items-center gap-2.5 p-2.5 text-xs hover:bg-secondary",o),onClick:i,onKeyDown:d,role:"button",style:{height:"var(--gantt-row-height)"},tabIndex:0,children:[a.jsx("div",{className:"pointer-events-none h-2 w-2 shrink-0 rounded-full",style:{backgroundColor:e.status.color}}),a.jsx("p",{className:"pointer-events-none flex-1 truncate text-left font-medium",children:e.name}),a.jsx("p",{className:"pointer-events-none text-muted-foreground",children:c})]},e.id)},Cs=()=>a.jsxs("div",{className:"sticky top-0 z-10 flex shrink-0 items-end justify-between gap-2.5 border-border/50 border-b bg-backdrop/90 p-2.5 font-medium text-muted-foreground text-xs backdrop-blur-sm",style:{height:"var(--gantt-header-height)"},children:[a.jsx("p",{className:"flex-1 truncate text-left",children:"Issues"}),a.jsx("p",{className:"shrink-0",children:"Duration"})]}),ae=({children:e,name:t,className:o})=>a.jsxs("div",{className:o,children:[a.jsx("p",{className:"w-full truncate p-2.5 text-left font-medium text-muted-foreground text-xs",style:{height:"var(--gantt-row-height)"},children:t}),a.jsx("div",{className:"divide-y divide-border/50",children:e})]}),Ms=({children:e,className:t})=>a.jsxs("div",{className:j("sticky left-0 z-30 h-max min-h-full overflow-clip border-border/50 border-r bg-white dark:bg-zinc-950 backdrop-blur-md",t),"data-roadmap-ui":"gantt-sidebar",children:[a.jsx(Cs,{}),a.jsx("div",{className:"space-y-4",children:e})]}),js=({top:e,className:t})=>{const[o]=ge(),n=l.useContext(L),[s,r]=me(),c=()=>{var f,m,h;const i=(m=(f=n.ref)==null?void 0:f.current)==null?void 0:m.getBoundingClientRect(),d=s.x-((i==null?void 0:i.left)??0)+o-n.sidebarWidth,u=U(n,d);(h=n.onAddItem)==null||h.call(n,u)};return a.jsx("div",{className:j("absolute top-0 w-full px-0.5",t),ref:r,style:{marginTop:-n.rowHeight/2,transform:`translateY(${e}px)`},children:a.jsx("button",{className:"flex h-full w-full items-center justify-center rounded-md border border-dashed p-2",onClick:c,type:"button",children:a.jsx(Oe,{className:"pointer-events-none select-none text-muted-foreground",size:16})})})},Ss=({index:e,isColumnSecondary:t})=>{var h;const o=l.useContext(L),[n]=pe(),[s,r]=me(),[c,i]=l.useState(!1),[d]=jn(),u=()=>i(!0),f=()=>i(!1),m=Mn(s.y-(((h=r.current)==null?void 0:h.getBoundingClientRect().y)??0)-(d.y??0),10);return a.jsx("div",{className:j("group relative h-full overflow-hidden",t!=null&&t(e)?"bg-[#f59e0b]/5 dark:bg-[#f59e0b]/5":""),onMouseEnter:u,onMouseLeave:f,ref:r,children:!n&&c&&o.onAddItem?a.jsx(js,{top:m}):null})},ye=({columns:e,isColumnSecondary:t})=>{const o=l.useId();return a.jsx("div",{className:"divide grid h-full w-full divide-x divide-border/50",style:{gridTemplateColumns:`repeat(${e}, var(--gantt-column-width))`},children:Array.from({length:e}).map((n,s)=>a.jsx(Ss,{index:s,isColumnSecondary:t},`${o}-${s}`))})},Ie=({direction:e,featureId:t,date:o})=>{const[,n]=pe(),{attributes:s,listeners:r,setNodeRef:c}=Pe({id:`feature-drag-helper-${t}`}),i=!!s["aria-pressed"];return l.useEffect(()=>n(i),[i,n]),a.jsxs("div",{className:j("group -translate-y-1/2 !cursor-col-resize absolute top-1/2 z-[3] h-full w-6 rounded-md outline-none",e==="left"?"-left-2.5":"-right-2.5"),ref:c,...s,...r,children:[a.jsx("div",{className:j("-translate-y-1/2 absolute top-1/2 h-[80%] w-1 rounded-sm bg-muted-foreground opacity-0 transition-all",e==="left"?"left-2.5":"right-2.5",e==="left"?"group-hover:left-0":"group-hover:right-0",i&&(e==="left"?"left-0":"right-0"),"group-hover:opacity-100",i&&"opacity-100")}),o&&a.jsx("div",{className:j("-translate-x-1/2 absolute top-10 hidden whitespace-nowrap rounded-lg border border-border/50 bg-background/90 px-2 py-1 text-foreground text-xs backdrop-blur-lg group-hover:block",i&&"block"),children:G(o,"MMM dd, yyyy")})]})},_s=({id:e,children:t})=>{const[,o]=pe(),{attributes:n,listeners:s,setNodeRef:r}=Pe({id:e}),c=!!n["aria-pressed"];return l.useEffect(()=>o(c),[c,o]),a.jsx(Ye,{className:"h-full w-full rounded-md bg-background p-2 text-xs shadow-sm",children:a.jsx("div",{className:j("flex h-full w-full items-center justify-between gap-2 text-left",c&&"cursor-grabbing"),...n,...s,ref:r,children:t})})},ke=({onMove:e,children:t,className:o,...n})=>{const[s]=ge(),r=l.useContext(L),c=l.useMemo(()=>{var b;return new Date(((b=r.timelineData.at(0))==null?void 0:b.year)??0,0,1)},[r.timelineData]),[i,d]=l.useState(n.startAt),[u,f]=l.useState(n.endAt),m=l.useMemo(()=>gs(i,u,r),[i,u,r]),h=l.useMemo(()=>wt(i,c,r),[i,c,r]),g=l.useMemo(()=>bt(r.range),[r.range]),[v]=me(),[M,I]=l.useState(0),[y,x]=l.useState(i),[N,A]=l.useState(u),S=tn(nn,{activationConstraint:{distance:10}}),C=l.useCallback(()=>{I(v.x),x(i),A(u)},[v.x,i,u]),_=l.useCallback(()=>{const b=U(r,v.x),O=U(r,M),w=r.range==="daily"?Y(r.range)(b,O):xe(r.range)(b,O),R=$(y,w),P=N?$(N,w):null;d(R),f(P)},[r,v.x,M,y,N]),k=l.useCallback(()=>e==null?void 0:e(n.id,i,u),[e,n.id,i,u]),p=l.useCallback(()=>{var P,B;const b=(B=(P=r.ref)==null?void 0:P.current)==null?void 0:B.getBoundingClientRect(),O=v.x-((b==null?void 0:b.left)??0)+s-r.sidebarWidth,R=K(r.range)(U(r,O));d(R)},[r,v.x,s]),D=l.useCallback(()=>{var P,B;const b=(B=(P=r.ref)==null?void 0:P.current)==null?void 0:B.getBoundingClientRect(),O=v.x-((b==null?void 0:b.left)??0)+s-r.sidebarWidth,R=K(r.range)(U(r,O));f(R)},[r,v.x,s]);return a.jsx("div",{className:j("relative flex w-max min-w-full py-0.5",o),style:{height:"var(--gantt-row-height)"},children:a.jsxs("div",{className:"pointer-events-auto absolute top-0.5",style:{height:"calc(var(--gantt-row-height) - 4px)",width:Math.round(m),left:Math.round(h)},children:[e&&a.jsx(te,{modifiers:[ne],onDragEnd:k,onDragMove:p,sensors:[S],children:a.jsx(Ie,{date:i,direction:"left",featureId:n.id})}),a.jsx(te,{modifiers:[ne],onDragEnd:k,onDragMove:_,onDragStart:C,sensors:[S],children:a.jsx(_s,{id:n.id,children:t??a.jsx("p",{className:"flex-1 truncate text-xs",children:n.name})})}),e&&a.jsx(te,{modifiers:[ne],onDragEnd:k,onDragMove:D,sensors:[S],children:a.jsx(Ie,{date:u?Re(u):g(i,1),direction:"right",featureId:n.id})})]})})},ie=({children:e,className:t})=>a.jsx("div",{className:t,style:{paddingTop:"var(--gantt-row-height)"},children:e}),Ds=({className:e,children:t})=>a.jsx("div",{className:j("absolute top-0 left-0 h-full w-max space-y-4",e),style:{marginTop:"var(--gantt-header-height)"},children:t}),Mt=l.memo(({label:e,date:t,id:o,onRemove:n,className:s})=>{const r=l.useContext(L),c=l.useMemo(()=>Y(r.range),[r.range]),i=l.useMemo(()=>{var m;return new Date(((m=r.timelineData.at(0))==null?void 0:m.year)??0,0,1)},[r.timelineData]),d=l.useMemo(()=>c(t,i),[c,t,i]),u=l.useMemo(()=>Ct(t,r.range,r.columnWidth*r.zoom/100),[t,r.range,r.columnWidth,r.zoom]),f=l.useCallback(()=>n==null?void 0:n(o),[n,o]);return a.jsxs("div",{className:"pointer-events-none absolute top-0 left-0 z-20 flex h-full select-none flex-col items-center justify-center overflow-visible",style:{width:0,transform:`translateX(calc(var(--gantt-column-width) * ${d} + ${u}px))`},children:[a.jsxs(os,{children:[a.jsx(ss,{asChild:!0,children:a.jsxs("div",{className:j("group pointer-events-auto sticky top-0 flex select-auto flex-col flex-nowrap items-center justify-center whitespace-nowrap rounded-b-md bg-card px-2 py-1 text-foreground text-xs",s),children:[e,a.jsx("span",{className:"max-h-[0] overflow-hidden opacity-80 transition-all group-hover:max-h-[2rem]",children:G(t,"MMM dd, yyyy")})]})}),a.jsx(vt,{children:n?a.jsxs(yt,{className:"flex items-center gap-2 text-destructive",onClick:f,children:[a.jsx(wn,{size:16}),"Remove marker"]}):null})]}),a.jsx("div",{className:j("h-full w-px bg-card",s)})]})});Mt.displayName="GanttMarker";const Ns=({zoom:e=100,range:t="monthly",onAddItem:o,children:n,className:s})=>{const r=l.useRef(null),[c,i]=l.useState(ps(new Date)),[,d]=ge(),[u,f]=l.useState(0),m=60,h=36;let g=50;t==="monthly"?g=150:t==="quarterly"&&(g=100);const v=l.useMemo(()=>({"--gantt-zoom":`${e}`,"--gantt-column-width":`${e/100*g}px`,"--gantt-header-height":`${m}px`,"--gantt-row-height":`${h}px`,"--gantt-sidebar-width":`${u}px`}),[e,g,u]);l.useEffect(()=>{r.current&&(r.current.scrollLeft=r.current.scrollWidth/2-r.current.clientWidth/2,d(r.current.scrollLeft))},[d]),l.useEffect(()=>{const y=()=>{var S;const A=((S=r.current)==null?void 0:S.querySelector('[data-roadmap-ui="gantt-sidebar"]'))?300:0;f(A)};y();const x=new MutationObserver(y);return r.current&&x.observe(r.current,{childList:!0,subtree:!0}),()=>{x.disconnect()}},[]);const M=l.useCallback(wo(()=>{var S,C;const y=r.current;if(!y)return;const{scrollLeft:x,scrollWidth:N,clientWidth:A}=y;if(d(x),x===0){const _=(S=c[0])==null?void 0:S.year;if(!_)return;const k=[...c];k.unshift({year:_-1,quarters:new Array(4).fill(null).map((p,D)=>({months:new Array(3).fill(null).map((b,O)=>{const w=D*3+O;return{days:H(new Date(_,w,1))}})}))}),i(k),y.scrollLeft=y.clientWidth,d(y.scrollLeft)}else if(x+A>=N){const _=(C=c.at(-1))==null?void 0:C.year;if(!_)return;const k=[...c];k.push({year:_+1,quarters:new Array(4).fill(null).map((p,D)=>({months:new Array(3).fill(null).map((b,O)=>{const w=D*3+O;return{days:H(new Date(_,w,1))}})}))}),i(k),y.scrollLeft=y.scrollWidth-y.clientWidth,d(y.scrollLeft)}},100),[]);l.useEffect(()=>{const y=r.current;return y&&y.addEventListener("scroll",M),()=>{y&&y.removeEventListener("scroll",M)}},[M]);const I=l.useCallback(y=>{const x=r.current;if(!x)return;const N=new Date(c[0].year,0,1),A=wt(y.startAt,N,{zoom:e,range:t,columnWidth:g}),S=Math.max(0,A);x.scrollTo({left:S,behavior:"smooth"})},[c,e,t,g,u,o]);return a.jsx(L.Provider,{value:{zoom:e,range:t,headerHeight:m,columnWidth:g,sidebarWidth:u,rowHeight:h,onAddItem:o,timelineData:c,placeholderLength:2,ref:r,scrollToFeature:I},children:a.jsx("div",{className:j("gantt relative isolate grid h-full w-full flex-none select-none overflow-auto rounded-sm bg-secondary",t,s),ref:r,style:{...v,gridTemplateColumns:"var(--gantt-sidebar-width) 1fr"},children:n})})},Is=({children:e,className:t})=>a.jsx("div",{className:j("relative flex h-full w-max flex-none overflow-clip",t),children:e}),ks=({className:e})=>{const t="Today",o=l.useMemo(()=>new Date,[]),n=l.useContext(L),s=l.useMemo(()=>Y(n.range),[n.range]),r=l.useMemo(()=>{var d;return new Date(((d=n.timelineData.at(0))==null?void 0:d.year)??0,0,1)},[n.timelineData]),c=l.useMemo(()=>s(o,r),[s,o,r]),i=l.useMemo(()=>Ct(o,n.range,n.columnWidth*n.zoom/100),[o,n.range,n.columnWidth,n.zoom]);return a.jsxs("div",{className:"pointer-events-none absolute top-0 left-0 z-20 flex h-full select-none flex-col items-center justify-center overflow-visible",style:{width:0,transform:`translateX(calc(var(--gantt-column-width) * ${c} + ${i}px))`},children:[a.jsxs("div",{className:j("group pointer-events-auto sticky top-0 flex select-auto flex-col flex-nowrap items-center justify-center whitespace-nowrap rounded-b-md bg-card px-2 py-1 text-foreground text-xs",e),children:[t,a.jsx("span",{className:"max-h-[0] overflow-hidden opacity-80 transition-all group-hover:max-h-[2rem]",children:G(o,"MMM dd, yyyy")})]}),a.jsx("div",{className:j("h-full w-px bg-card",e)})]})};function J(e,t){const o=e.start_date?new Date(e.start_date):new Date(e.due_date),n=e.due_date?$(new Date(e.due_date),1):$(o,1);return{id:e.id,name:`${e.identifier} ${e.title}`,startAt:o,endAt:n,status:{id:e.status,name:e.status,color:t}}}function Bs(){const{projectKey:e}=Nt(),t=St(),[o,n]=l.useState("monthly"),[s,r]=l.useState(null),[c,i]=l.useState(!1),d=l.useRef(null);l.useEffect(()=>{const p=requestAnimationFrame(()=>{var B;const D=(B=d.current)==null?void 0:B.querySelector(".gantt");if(!D)return;const b=new Date,O=b.getFullYear()-1,w=300;let R;if(o==="daily"){const q=new Date(O,0,1);R=Math.floor((b.getTime()-q.getTime())/864e5)*50}else{const q=o==="monthly"?150:100,be=(b.getFullYear()-O)*12+b.getMonth(),jt=new Date(b.getFullYear(),b.getMonth()+1,0).getDate();R=be*q+(b.getDate()-1)/jt*q}const P=D.clientWidth-w;D.scrollLeft=Math.max(0,R-P/2)});return()=>cancelAnimationFrame(p)},[o]);const{data:u}=Ht(e??""),f=(u==null?void 0:u.id)??"",{data:m=[]}=Ft(f||void 0),{data:h=[]}=zt(f||void 0),{data:g=[]}=Ut(f||void 0),{data:v}=Kt(),{data:M=[]}=Yt(new Date().getFullYear()),I=_t({mutationFn:({id:p,start_date:D,due_date:b})=>en.put(`/admin/issues/${p}`,{start_date:D,due_date:b}),onSuccess:()=>{t.invalidateQueries({queryKey:Zt.byProject(f)})},onError:()=>Qt.error("Failed to update issue dates")}),y=Object.fromEntries(h.map(p=>[p.key,p.color])),x=p=>{if(!p.start_date||!p.due_date||!(v!=null&&v.working_days))return;const D=Jt(new Date(p.start_date),new Date(p.due_date),v.working_days,M);return`${D} business day${D!==1?"s":""}`},N=m.filter(p=>p.due_date),A=m.filter(p=>!p.due_date),S={},C=[];for(const p of N)p.sprint_id?(S[p.sprint_id]||(S[p.sprint_id]=[]),S[p.sprint_id].push(p)):C.push(p);const _=(p,D,b)=>{I.mutate({id:p,start_date:G(D,"yyyy-MM-dd"),due_date:b?G(Re(b),"yyyy-MM-dd"):null})},k=p=>{const D=m.find(b=>b.id===p)??null;r(D)};return e?a.jsxs("div",{className:"flex flex-col h-full min-h-0",children:[a.jsx(Me,{zone:"project.timeline.before",props:{projectId:f}}),a.jsxs("div",{className:"flex items-center justify-between px-6 py-3 border-b border-border shrink-0 bg-white dark:bg-zinc-950",children:[a.jsx("div",{className:"flex items-center gap-1 bg-muted rounded-md p-0.5",children:["daily","monthly","quarterly"].map(p=>a.jsx("button",{onClick:()=>n(p),className:`px-3 py-1 rounded text-xs font-medium transition-colors capitalize ${o===p?"bg-white dark:bg-zinc-900 text-foreground shadow-sm":"text-muted-foreground hover:text-foreground"}`,children:p},p))}),a.jsxs(qt,{size:"sm",variant:"outline",className:"h-7 text-xs gap-1",onClick:()=>i(!0),children:[a.jsx(Oe,{className:"h-3.5 w-3.5"}),"Issue"]})]}),a.jsx("div",{ref:d,className:"flex-1 min-h-0 overflow-hidden",children:a.jsxs(Ns,{range:o,zoom:100,className:"h-full bg-white dark:bg-zinc-950",children:[a.jsxs(Ms,{children:[g.map(p=>{const D=S[p.id]??[];return a.jsx(ae,{name:p.name,children:D.map(b=>a.jsx(re,{feature:J(b,y[b.status]??"#94a3b8"),duration:x(b),onSelectItem:k},b.id))},p.id)}),C.length>0&&a.jsx(ae,{name:"No Sprint",children:C.map(p=>a.jsx(re,{feature:J(p,y[p.status]??"#94a3b8"),duration:x(p),onSelectItem:k},p.id))}),A.length>0&&a.jsx(ae,{name:"Unscheduled",children:A.map(p=>a.jsx(re,{feature:{id:p.id,name:`${p.identifier} ${p.title}`,startAt:new Date,endAt:new Date,status:{id:p.status,name:p.status,color:y[p.status]??"#94a3b8"}},onSelectItem:k},p.id))})]}),a.jsxs(Is,{children:[a.jsx(ws,{}),a.jsxs(Ds,{children:[g.map(p=>{const D=S[p.id]??[];return a.jsx(ie,{children:D.map(b=>a.jsx("div",{className:"flex",children:a.jsx(ke,{onMove:_,...J(b,y[b.status]??"#94a3b8")})},b.id))},p.id)}),C.length>0&&a.jsx(ie,{children:C.map(p=>a.jsx("div",{className:"flex",children:a.jsx(ke,{onMove:_,...J(p,y[p.status]??"#94a3b8")})},p.id))}),A.length>0&&a.jsx(ie,{children:A.map(p=>a.jsx("div",{style:{height:"var(--gantt-row-height)"}},p.id))})]}),g.filter(p=>p.end_date).map(p=>a.jsx(Mt,{id:p.id,date:new Date(p.end_date),label:`${p.name} end`},p.id)),a.jsx(ks,{})]})]})}),a.jsx(Me,{zone:"project.timeline.after",props:{projectId:f}}),a.jsx(Vt,{issue:s,projectId:f,open:!!s,onClose:()=>r(null)}),a.jsx(Xt,{open:c,onClose:()=>i(!1),projectId:f})]}):null}export{Bs as ProjectTimelinePage};
@@ -0,0 +1 @@
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:Inter,system-ui,sans-serif;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:JetBrains Mono,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,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: 60 5% 96%;--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 10% 3.9%;--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 72% 51%;--destructive-foreground: 0 0% 98%;--border: 240 5.9% 90%;--input: 240 5.9% 90%;--ring: 240 5.9% 10%;--radius: .5rem;--indigo: 239 84% 67%;--indigo-foreground: 0 0% 100%;--indigo-subtle: 224 76% 97%;--sidebar: 0 0% 100%;--sidebar-foreground: 240 10% 3.9%;--sidebar-accent: 240 4.8% 95.9%;--sidebar-accent-foreground: 240 5.9% 10%;--sidebar-border: 240 5.9% 90%;--sidebar-ring: 239 84% 67%}.dark{--background: 240 6% 8%;--foreground: 0 0% 98%;--card: 240 6% 10%;--card-foreground: 0 0% 98%;--popover: 240 6% 10%;--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%;--indigo: 239 84% 67%;--indigo-foreground: 0 0% 100%;--indigo-subtle: 224 30% 13%;--sidebar: 240 6% 10%;--sidebar-foreground: 0 0% 98%;--sidebar-accent: 240 3.7% 15.9%;--sidebar-accent-foreground: 0 0% 98%;--sidebar-border: 240 3.7% 15.9%;--sidebar-ring: 239 84% 67%}*{border-color:hsl(var(--border))}body{background-color:hsl(var(--background));font-family:Inter,system-ui,sans-serif;font-size:.875rem;line-height:1.25rem;color:hsl(var(--foreground));-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}::-webkit-scrollbar{width:4px;height:4px}::-webkit-scrollbar-track{background-color:transparent}::-webkit-scrollbar-thumb{border-radius:9999px;background-color:hsl(var(--border))}.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}.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}.inset-x-0{left:0;right:0}.inset-y-0{top:0;bottom:0}.-left-2\.5{left:-.625rem}.-right-0\.5{right:-.125rem}.-right-2\.5{right:-.625rem}.-top-0\.5{top:-.125rem}.bottom-0{bottom:0}.bottom-2{bottom:.5rem}.left-0{left:0}.left-1{left:.25rem}.left-2{left:.5rem}.left-2\.5{left:.625rem}.left-\[11px\]{left:11px}.left-\[50\%\]{left:50%}.left-\[70px\]{left:70px}.right-0{right:0}.right-1{right:.25rem}.right-2{right:.5rem}.right-2\.5{right:.625rem}.right-3{right:.75rem}.right-4{right:1rem}.top-0{top:0}.top-0\.5{top:.125rem}.top-1\.5{top:.375rem}.top-1\/2{top:50%}.top-10{top:2.5rem}.top-2{top:.5rem}.top-3\.5{top:.875rem}.top-4{top:1rem}.top-6{top:1.5rem}.top-\[50\%\]{top:50%}.isolate{isolation:isolate}.z-10{z-index:10}.z-20{z-index:20}.z-30{z-index:30}.z-50{z-index:50}.z-\[3\]{z-index:3}.-mx-1{margin-left:-.25rem;margin-right:-.25rem}.mx-0\.5{margin-left:.125rem;margin-right:.125rem}.mx-1{margin-left:.25rem;margin-right:.25rem}.mx-2{margin-left:.5rem;margin-right:.5rem}.mx-3\.5{margin-left:.875rem;margin-right:.875rem}.mx-auto{margin-left:auto;margin-right:auto}.my-1{margin-top:.25rem;margin-bottom:.25rem}.-mb-px{margin-bottom:-1px}.-ml-1{margin-left:-.25rem}.-ml-2{margin-left:-.5rem}.mb-0\.5{margin-bottom:.125rem}.mb-1{margin-bottom:.25rem}.mb-1\.5{margin-bottom:.375rem}.mb-2{margin-bottom:.5rem}.mb-2\.5{margin-bottom:.625rem}.mb-3{margin-bottom:.75rem}.mb-4{margin-bottom:1rem}.mb-5{margin-bottom:1.25rem}.mb-8{margin-bottom:2rem}.ml-0\.5{margin-left:.125rem}.ml-1{margin-left:.25rem}.ml-1\.5{margin-left:.375rem}.ml-2{margin-left:.5rem}.ml-auto{margin-left:auto}.mr-1{margin-right:.25rem}.mr-1\.5{margin-right:.375rem}.mr-2{margin-right:.5rem}.mr-5{margin-right:1.25rem}.mr-6{margin-right:1.5rem}.mt-0\.5{margin-top:.125rem}.mt-1{margin-top:.25rem}.mt-2{margin-top:.5rem}.mt-3{margin-top:.75rem}.mt-6{margin-top:1.5rem}.mt-auto{margin-top:auto}.line-clamp-2{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2}.block{display:block}.inline{display:inline}.flex{display:flex}.inline-flex{display:inline-flex}.table{display:table}.grid{display:grid}.contents{display:contents}.hidden{display:none}.aspect-square{aspect-ratio:1 / 1}.size-12{width:3rem;height:3rem}.size-3\.5{width:.875rem;height:.875rem}.size-4{width:1rem;height:1rem}.size-6{width:1.5rem;height:1.5rem}.size-7{width:1.75rem;height:1.75rem}.size-8{width:2rem;height:2rem}.h-1\.5{height:.375rem}.h-10{height:2.5rem}.h-12{height:3rem}.h-14{height:3.5rem}.h-16{height:4rem}.h-2{height:.5rem}.h-2\.5{height:.625rem}.h-24{height:6rem}.h-3{height:.75rem}.h-3\.5{height:.875rem}.h-32{height:8rem}.h-4{height:1rem}.h-48{height:12rem}.h-5{height:1.25rem}.h-6{height:1.5rem}.h-7{height:1.75rem}.h-8{height:2rem}.h-9{height:2.25rem}.h-\[26px\]{height:26px}.h-\[280px\]{height:280px}.h-\[57px\]{height:57px}.h-\[80\%\]{height:80%}.h-\[82px\]{height:82px}.h-\[var\(--radix-select-trigger-height\)\]{height:var(--radix-select-trigger-height)}.h-full{height:100%}.h-max{height:-moz-max-content;height:max-content}.h-px{height:1px}.h-svh{height:100svh}.max-h-48{max-height:12rem}.max-h-52{max-height:13rem}.max-h-96{max-height:24rem}.max-h-\[0\]{max-height:0}.max-h-\[320px\]{max-height:320px}.max-h-\[75vh\]{max-height:75vh}.max-h-\[85vh\]{max-height:85vh}.min-h-0{min-height:0px}.min-h-\[120px\]{min-height:120px}.min-h-\[160px\]{min-height:160px}.min-h-\[200px\]{min-height:200px}.min-h-\[280px\]{min-height:280px}.min-h-\[28px\]{min-height:28px}.min-h-\[320px\]{min-height:320px}.min-h-\[68px\]{min-height:68px}.min-h-\[80px\]{min-height:80px}.min-h-full{min-height:100%}.min-h-screen{min-height:100vh}.w-1{width:.25rem}.w-1\.5{width:.375rem}.w-1\/3{width:33.333333%}.w-1\/4{width:25%}.w-10{width:2.5rem}.w-12{width:3rem}.w-14{width:3.5rem}.w-16{width:4rem}.w-2{width:.5rem}.w-2\.5{width:.625rem}.w-2\/3{width:66.666667%}.w-20{width:5rem}.w-24{width:6rem}.w-28{width:7rem}.w-3{width:.75rem}.w-3\.5{width:.875rem}.w-3\/4{width:75%}.w-32{width:8rem}.w-36{width:9rem}.w-4{width:1rem}.w-40{width:10rem}.w-44{width:11rem}.w-48{width:12rem}.w-5{width:1.25rem}.w-52{width:13rem}.w-56{width:14rem}.w-6{width:1.5rem}.w-60{width:15rem}.w-64{width:16rem}.w-7{width:1.75rem}.w-72{width:18rem}.w-8{width:2rem}.w-9{width:2.25rem}.w-\[130px\]{width:130px}.w-\[140px\]{width:140px}.w-\[200px\]{width:200px}.w-\[26px\]{width:26px}.w-\[var\(--sidebar-width\)\]{width:var(--sidebar-width)}.w-auto{width:auto}.w-full{width:100%}.w-max{width:-moz-max-content;width:max-content}.w-px{width:1px}.min-w-0{min-width:0px}.min-w-36{min-width:9rem}.min-w-5{min-width:1.25rem}.min-w-56{min-width:14rem}.min-w-\[1025px\]{min-width:1025px}.min-w-\[18px\]{min-width:18px}.min-w-\[260px\]{min-width:260px}.min-w-\[8rem\]{min-width:8rem}.min-w-\[var\(--radix-select-trigger-width\)\]{min-width:var(--radix-select-trigger-width)}.min-w-full{min-width:100%}.max-w-2xl{max-width:42rem}.max-w-\[180px\]{max-width:180px}.max-w-\[200px\]{max-width:200px}.max-w-\[240px\]{max-width:240px}.max-w-\[280px\]{max-width:280px}.max-w-\[360px\]{max-width:360px}.max-w-\[380px\]{max-width:380px}.max-w-\[560px\]{max-width:560px}.max-w-\[var\(--skeleton-width\)\]{max-width:var(--skeleton-width)}.max-w-full{max-width:100%}.max-w-lg{max-width:32rem}.max-w-md{max-width:28rem}.max-w-xs{max-width:20rem}.flex-1{flex:1 1 0%}.flex-none{flex:none}.shrink-0{flex-shrink:0}.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-x-px{--tw-translate-x: -1px;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-x-px{--tw-translate-x: 1px;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-0{--tw-rotate: 0deg;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-0{--tw-scale-x: 0;--tw-scale-y: 0;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-100{--tw-scale-x: 1;--tw-scale-y: 1;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-110{--tw-scale-x: 1.1;--tw-scale-y: 1.1;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 pulse{50%{opacity:.5}}.animate-pulse{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}.\!cursor-col-resize{cursor:col-resize!important}.cursor-default{cursor:default}.cursor-grab{cursor:grab}.cursor-grabbing{cursor:grabbing}.cursor-not-allowed{cursor:not-allowed}.cursor-pointer{cursor:pointer}.cursor-wait{cursor:wait}.touch-none{touch-action:none}.select-none{-webkit-user-select:none;-moz-user-select:none;user-select:none}.select-auto{-webkit-user-select:auto;-moz-user-select:auto;user-select:auto}.resize-none{resize:none}.resize{resize:both}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-cols-\[160px_1fr_120px_40px\]{grid-template-columns:160px 1fr 120px 40px}.grid-cols-\[180px_1fr\]{grid-template-columns:180px 1fr}.grid-cols-\[180px_1fr_auto\]{grid-template-columns:180px 1fr auto}.grid-cols-\[1fr_256px\]{grid-template-columns:1fr 256px}.grid-cols-\[20px_130px_1fr_130px_88px\]{grid-template-columns:20px 130px 1fr 130px 88px}.grid-cols-\[2fr_1fr_1fr_1fr_40px\]{grid-template-columns:2fr 1fr 1fr 1fr 40px}.grid-cols-\[70px_250px_150px_120px_130px_140px_130px_32px\]{grid-template-columns:70px 250px 150px 120px 130px 140px 130px 32px}.flex-row{flex-direction:row}.flex-col{flex-direction:column}.flex-col-reverse{flex-direction:column-reverse}.flex-wrap{flex-wrap:wrap}.flex-nowrap{flex-wrap:nowrap}.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{gap:0px}.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-5{gap:1.25rem}.-space-x-1>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(-.25rem * var(--tw-space-x-reverse));margin-left:calc(-.25rem * calc(1 - var(--tw-space-x-reverse)))}.-space-x-1\.5>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(-.375rem * var(--tw-space-x-reverse));margin-left:calc(-.375rem * calc(1 - var(--tw-space-x-reverse)))}.-space-x-px>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(-1px * var(--tw-space-x-reverse));margin-left:calc(-1px * calc(1 - var(--tw-space-x-reverse)))}.space-y-0>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(0px * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(0px * 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-2\.5>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.625rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.625rem * var(--tw-space-y-reverse))}.space-y-3>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.75rem * 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))}.divide-x>:not([hidden])~:not([hidden]){--tw-divide-x-reverse: 0;border-right-width:calc(1px * var(--tw-divide-x-reverse));border-left-width:calc(1px * calc(1 - var(--tw-divide-x-reverse)))}.divide-y>:not([hidden])~:not([hidden]){--tw-divide-y-reverse: 0;border-top-width:calc(1px * calc(1 - var(--tw-divide-y-reverse)));border-bottom-width:calc(1px * var(--tw-divide-y-reverse))}.divide-border>:not([hidden])~:not([hidden]){border-color:hsl(var(--border))}.divide-border\/40>:not([hidden])~:not([hidden]){border-color:hsl(var(--border) / .4)}.divide-border\/50>:not([hidden])~:not([hidden]){border-color:hsl(var(--border) / .5)}.divide-border\/60>:not([hidden])~:not([hidden]){border-color:hsl(var(--border) / .6)}.self-end{align-self:flex-end}.self-center{align-self:center}.overflow-auto{overflow:auto}.overflow-hidden{overflow:hidden}.overflow-clip{overflow:clip}.overflow-visible{overflow:visible}.overflow-x-auto{overflow-x:auto}.overflow-y-auto{overflow-y:auto}.overflow-x-hidden{overflow-x:hidden}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.whitespace-nowrap{white-space:nowrap}.whitespace-pre-wrap{white-space:pre-wrap}.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-lg{border-radius:var(--radius)}.rounded-md{border-radius:calc(var(--radius) - 2px)}.rounded-sm{border-radius:calc(var(--radius) - 4px)}.rounded-xl{border-radius:.75rem}.rounded-b-md{border-bottom-right-radius:calc(var(--radius) - 2px);border-bottom-left-radius:calc(var(--radius) - 2px)}.border{border-width:1px}.border-0{border-width:0px}.border-2{border-width:2px}.border-y{border-top-width:1px;border-bottom-width:1px}.border-b{border-bottom-width:1px}.border-b-2{border-bottom-width:2px}.border-l{border-left-width:1px}.border-r{border-right-width:1px}.border-t{border-top-width:1px}.border-dashed{border-style:dashed}.border-background{border-color:hsl(var(--background))}.border-border{border-color:hsl(var(--border))}.border-border\/50{border-color:hsl(var(--border) / .5)}.border-border\/60{border-color:hsl(var(--border) / .6)}.border-border\/70{border-color:hsl(var(--border) / .7)}.border-destructive{border-color:hsl(var(--destructive))}.border-emerald-500\/40{border-color:#10b98166}.border-foreground{border-color:hsl(var(--foreground))}.border-indigo-200{--tw-border-opacity: 1;border-color:rgb(199 210 254 / var(--tw-border-opacity, 1))}.border-indigo-400{--tw-border-opacity: 1;border-color:rgb(129 140 248 / var(--tw-border-opacity, 1))}.border-indigo-500{--tw-border-opacity: 1;border-color:rgb(99 102 241 / var(--tw-border-opacity, 1))}.border-input{border-color:hsl(var(--input))}.border-primary{border-color:hsl(var(--primary))}.border-primary\/60{border-color:hsl(var(--primary) / .6)}.border-sidebar-border{border-color:hsl(var(--sidebar-border))}.border-transparent{border-color:transparent}.border-zinc-100{--tw-border-opacity: 1;border-color:rgb(244 244 245 / var(--tw-border-opacity, 1))}.border-zinc-200{--tw-border-opacity: 1;border-color:rgb(228 228 231 / var(--tw-border-opacity, 1))}.border-l-transparent{border-left-color:transparent}.border-t-transparent{border-top-color:transparent}.bg-\[\#eff6ff\]{--tw-bg-opacity: 1;background-color:rgb(239 246 255 / var(--tw-bg-opacity, 1))}.bg-\[\#f59e0b\]\/5{background-color:#f59e0b0d}.bg-\[\#f8f9fa\]{--tw-bg-opacity: 1;background-color:rgb(248 249 250 / var(--tw-bg-opacity, 1))}.bg-\[hsl\(60_5\%_96\%\)\]{--tw-bg-opacity: 1;background-color:hsl(60 5% 96% / var(--tw-bg-opacity, 1))}.bg-accent{background-color:hsl(var(--accent))}.bg-amber-100{--tw-bg-opacity: 1;background-color:rgb(254 243 199 / var(--tw-bg-opacity, 1))}.bg-amber-50{--tw-bg-opacity: 1;background-color:rgb(255 251 235 / var(--tw-bg-opacity, 1))}.bg-amber-500{--tw-bg-opacity: 1;background-color:rgb(245 158 11 / var(--tw-bg-opacity, 1))}.bg-background{background-color:hsl(var(--background))}.bg-background\/20{background-color:hsl(var(--background) / .2)}.bg-background\/60{background-color:hsl(var(--background) / .6)}.bg-background\/90{background-color:hsl(var(--background) / .9)}.bg-black\/40{background-color:#0006}.bg-black\/5{background-color:#0000000d}.bg-blue-100{--tw-bg-opacity: 1;background-color:rgb(219 234 254 / var(--tw-bg-opacity, 1))}.bg-blue-50{--tw-bg-opacity: 1;background-color:rgb(239 246 255 / var(--tw-bg-opacity, 1))}.bg-border{background-color:hsl(var(--border))}.bg-card{background-color:hsl(var(--card))}.bg-destructive{background-color:hsl(var(--destructive))}.bg-emerald-100{--tw-bg-opacity: 1;background-color:rgb(209 250 229 / var(--tw-bg-opacity, 1))}.bg-emerald-50{--tw-bg-opacity: 1;background-color:rgb(236 253 245 / var(--tw-bg-opacity, 1))}.bg-emerald-500{--tw-bg-opacity: 1;background-color:rgb(16 185 129 / var(--tw-bg-opacity, 1))}.bg-emerald-600{--tw-bg-opacity: 1;background-color:rgb(5 150 105 / var(--tw-bg-opacity, 1))}.bg-foreground{background-color:hsl(var(--foreground))}.bg-indigo{background-color:hsl(var(--indigo))}.bg-indigo-100{--tw-bg-opacity: 1;background-color:rgb(224 231 255 / var(--tw-bg-opacity, 1))}.bg-indigo-50{--tw-bg-opacity: 1;background-color:rgb(238 242 255 / var(--tw-bg-opacity, 1))}.bg-indigo-50\/40{background-color:#eef2ff66}.bg-indigo-500{--tw-bg-opacity: 1;background-color:rgb(99 102 241 / var(--tw-bg-opacity, 1))}.bg-indigo\/10{background-color:hsl(var(--indigo) / .1)}.bg-indigo\/5{background-color:hsl(var(--indigo) / .05)}.bg-muted{background-color:hsl(var(--muted))}.bg-muted-foreground{background-color:hsl(var(--muted-foreground))}.bg-muted\/10{background-color:hsl(var(--muted) / .1)}.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\/5{background-color:hsl(var(--muted) / .05)}.bg-muted\/50{background-color:hsl(var(--muted) / .5)}.bg-orange-100{--tw-bg-opacity: 1;background-color:rgb(255 237 213 / var(--tw-bg-opacity, 1))}.bg-orange-500{--tw-bg-opacity: 1;background-color:rgb(249 115 22 / var(--tw-bg-opacity, 1))}.bg-popover{background-color:hsl(var(--popover))}.bg-primary{background-color:hsl(var(--primary))}.bg-primary\/5{background-color:hsl(var(--primary) / .05)}.bg-red-400{--tw-bg-opacity: 1;background-color:rgb(248 113 113 / var(--tw-bg-opacity, 1))}.bg-red-500{--tw-bg-opacity: 1;background-color:rgb(239 68 68 / var(--tw-bg-opacity, 1))}.bg-rose-100{--tw-bg-opacity: 1;background-color:rgb(255 228 230 / var(--tw-bg-opacity, 1))}.bg-secondary{background-color:hsl(var(--secondary))}.bg-sidebar{background-color:hsl(var(--sidebar))}.bg-sidebar-border{background-color:hsl(var(--sidebar-border))}.bg-sky-100{--tw-bg-opacity: 1;background-color:rgb(224 242 254 / var(--tw-bg-opacity, 1))}.bg-sky-500{--tw-bg-opacity: 1;background-color:rgb(14 165 233 / var(--tw-bg-opacity, 1))}.bg-teal-100{--tw-bg-opacity: 1;background-color:rgb(204 251 241 / var(--tw-bg-opacity, 1))}.bg-transparent{background-color:transparent}.bg-violet-100{--tw-bg-opacity: 1;background-color:rgb(237 233 254 / var(--tw-bg-opacity, 1))}.bg-white{--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1))}.bg-zinc-100{--tw-bg-opacity: 1;background-color:rgb(244 244 245 / var(--tw-bg-opacity, 1))}.bg-zinc-400{--tw-bg-opacity: 1;background-color:rgb(161 161 170 / var(--tw-bg-opacity, 1))}.bg-zinc-50{--tw-bg-opacity: 1;background-color:rgb(250 250 250 / var(--tw-bg-opacity, 1))}.fill-current{fill:currentColor}.object-contain{-o-object-fit:contain;object-fit:contain}.object-cover{-o-object-fit:cover;object-fit:cover}.p-0{padding:0}.p-0\.5{padding:.125rem}.p-1{padding:.25rem}.p-2{padding:.5rem}.p-2\.5{padding:.625rem}.p-3{padding:.75rem}.p-4{padding:1rem}.p-6{padding:1.5rem}.p-8{padding:2rem}.p-\[1px\]{padding:1px}.px-0{padding-left:0;padding-right:0}.px-0\.5{padding-left:.125rem;padding-right:.125rem}.px-1{padding-left:.25rem;padding-right:.25rem}.px-1\.5{padding-left:.375rem;padding-right:.375rem}.px-14{padding-left:3.5rem;padding-right:3.5rem}.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-5{padding-left:1.25rem;padding-right:1.25rem}.px-6{padding-left:1.5rem;padding-right:1.5rem}.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-16{padding-top:4rem;padding-bottom:4rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.py-2\.5{padding-top:.625rem;padding-bottom:.625rem}.py-3{padding-top:.75rem;padding-bottom:.75rem}.py-3\.5{padding-top:.875rem;padding-bottom:.875rem}.py-4{padding-top:1rem;padding-bottom:1rem}.py-5{padding-top:1.25rem;padding-bottom:1.25rem}.py-6{padding-top:1.5rem;padding-bottom:1.5rem}.py-8{padding-top:2rem;padding-bottom:2rem}.pb-0{padding-bottom:0}.pb-1{padding-bottom:.25rem}.pb-2{padding-bottom:.5rem}.pb-2\.5{padding-bottom:.625rem}.pb-3{padding-bottom:.75rem}.pb-4{padding-bottom:1rem}.pb-5{padding-bottom:1.25rem}.pb-6{padding-bottom:1.5rem}.pl-1{padding-left:.25rem}.pl-1\.5{padding-left:.375rem}.pl-2{padding-left:.5rem}.pl-6{padding-left:1.5rem}.pl-8{padding-left:2rem}.pr-1{padding-right:.25rem}.pr-1\.5{padding-right:.375rem}.pr-10{padding-right:2.5rem}.pr-2{padding-right:.5rem}.pr-3{padding-right:.75rem}.pr-6{padding-right:1.5rem}.pr-8{padding-right:2rem}.pt-0{padding-top:0}.pt-0\.5{padding-top:.125rem}.pt-1{padding-top:.25rem}.pt-2{padding-top:.5rem}.pt-3{padding-top:.75rem}.pt-4{padding-top:1rem}.pt-5{padding-top:1.25rem}.pt-6{padding-top:1.5rem}.text-left{text-align:left}.text-center{text-align:center}.text-right{text-align:right}.font-mono{font-family:JetBrains Mono,monospace}.text-2xl{font-size:1.5rem;line-height:2rem}.text-\[0\.8rem\]{font-size:.8rem}.text-\[10px\]{font-size:10px}.text-\[11px\]{font-size:11px}.text-\[13px\]{font-size:13px}.text-\[17px\]{font-size:17px}.text-\[8px\]{font-size:8px}.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-xl{font-size:1.25rem;line-height:1.75rem}.text-xs{font-size:.75rem;line-height:1rem}.font-bold{font-weight:700}.font-medium{font-weight:500}.font-normal{font-weight:400}.font-semibold{font-weight:600}.uppercase{text-transform:uppercase}.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-none{line-height:1}.leading-relaxed{line-height:1.625}.leading-snug{line-height:1.375}.leading-tight{line-height:1.25}.tracking-\[0\.08em\]{letter-spacing:.08em}.tracking-normal{letter-spacing:0em}.tracking-tight{letter-spacing:-.025em}.tracking-wide{letter-spacing:.025em}.tracking-wider{letter-spacing:.05em}.tracking-widest{letter-spacing:.1em}.text-\[\#6b7280\]{--tw-text-opacity: 1;color:rgb(107 114 128 / var(--tw-text-opacity, 1))}.text-accent-foreground{color:hsl(var(--accent-foreground))}.text-amber-500{--tw-text-opacity: 1;color:rgb(245 158 11 / var(--tw-text-opacity, 1))}.text-amber-600{--tw-text-opacity: 1;color:rgb(217 119 6 / var(--tw-text-opacity, 1))}.text-amber-700{--tw-text-opacity: 1;color:rgb(180 83 9 / var(--tw-text-opacity, 1))}.text-background{color:hsl(var(--background))}.text-blue-400{--tw-text-opacity: 1;color:rgb(96 165 250 / var(--tw-text-opacity, 1))}.text-blue-500{--tw-text-opacity: 1;color:rgb(59 130 246 / var(--tw-text-opacity, 1))}.text-blue-600{--tw-text-opacity: 1;color:rgb(37 99 235 / var(--tw-text-opacity, 1))}.text-blue-700{--tw-text-opacity: 1;color:rgb(29 78 216 / var(--tw-text-opacity, 1))}.text-border{color:hsl(var(--border))}.text-card-foreground{color:hsl(var(--card-foreground))}.text-current{color:currentColor}.text-destructive{color:hsl(var(--destructive))}.text-destructive-foreground{color:hsl(var(--destructive-foreground))}.text-emerald-500{--tw-text-opacity: 1;color:rgb(16 185 129 / var(--tw-text-opacity, 1))}.text-emerald-600{--tw-text-opacity: 1;color:rgb(5 150 105 / var(--tw-text-opacity, 1))}.text-emerald-700{--tw-text-opacity: 1;color:rgb(4 120 87 / var(--tw-text-opacity, 1))}.text-foreground{color:hsl(var(--foreground))}.text-indigo{color:hsl(var(--indigo))}.text-indigo-400{--tw-text-opacity: 1;color:rgb(129 140 248 / var(--tw-text-opacity, 1))}.text-indigo-500{--tw-text-opacity: 1;color:rgb(99 102 241 / var(--tw-text-opacity, 1))}.text-indigo-600{--tw-text-opacity: 1;color:rgb(79 70 229 / var(--tw-text-opacity, 1))}.text-indigo-700{--tw-text-opacity: 1;color:rgb(67 56 202 / var(--tw-text-opacity, 1))}.text-indigo-foreground{color:hsl(var(--indigo-foreground))}.text-muted-foreground{color:hsl(var(--muted-foreground))}.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-orange-500{--tw-text-opacity: 1;color:rgb(249 115 22 / var(--tw-text-opacity, 1))}.text-orange-700{--tw-text-opacity: 1;color:rgb(194 65 12 / 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-purple-500{--tw-text-opacity: 1;color:rgb(168 85 247 / var(--tw-text-opacity, 1))}.text-red-500{--tw-text-opacity: 1;color:rgb(239 68 68 / var(--tw-text-opacity, 1))}.text-rose-700{--tw-text-opacity: 1;color:rgb(190 18 60 / var(--tw-text-opacity, 1))}.text-secondary-foreground{color:hsl(var(--secondary-foreground))}.text-sidebar-foreground{color:hsl(var(--sidebar-foreground))}.text-sidebar-foreground\/40{color:hsl(var(--sidebar-foreground) / .4)}.text-sidebar-foreground\/60{color:hsl(var(--sidebar-foreground) / .6)}.text-sidebar-foreground\/70{color:hsl(var(--sidebar-foreground) / .7)}.text-sky-700{--tw-text-opacity: 1;color:rgb(3 105 161 / var(--tw-text-opacity, 1))}.text-teal-700{--tw-text-opacity: 1;color:rgb(15 118 110 / var(--tw-text-opacity, 1))}.text-violet-500{--tw-text-opacity: 1;color:rgb(139 92 246 / var(--tw-text-opacity, 1))}.text-violet-700{--tw-text-opacity: 1;color:rgb(109 40 217 / var(--tw-text-opacity, 1))}.text-white{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}.text-yellow-500{--tw-text-opacity: 1;color:rgb(234 179 8 / var(--tw-text-opacity, 1))}.text-zinc-300{--tw-text-opacity: 1;color:rgb(212 212 216 / var(--tw-text-opacity, 1))}.text-zinc-400{--tw-text-opacity: 1;color:rgb(161 161 170 / var(--tw-text-opacity, 1))}.text-zinc-500{--tw-text-opacity: 1;color:rgb(113 113 122 / var(--tw-text-opacity, 1))}.text-zinc-600{--tw-text-opacity: 1;color:rgb(82 82 91 / var(--tw-text-opacity, 1))}.text-zinc-700{--tw-text-opacity: 1;color:rgb(63 63 70 / var(--tw-text-opacity, 1))}.text-zinc-900{--tw-text-opacity: 1;color:rgb(24 24 27 / var(--tw-text-opacity, 1))}.underline{text-decoration-line:underline}.underline-offset-2{text-underline-offset:2px}.underline-offset-4{text-underline-offset:4px}.accent-foreground{accent-color:hsl(var(--foreground))}.opacity-0{opacity:0}.opacity-100{opacity:1}.opacity-40{opacity:.4}.opacity-50{opacity:.5}.opacity-60{opacity:.6}.opacity-70{opacity:.7}.opacity-80{opacity:.8}.shadow{--tw-shadow: 0 1px 3px 0 rgb(0 0 0 / .1), 0 1px 2px -1px rgb(0 0 0 / .1);--tw-shadow-colored: 0 1px 3px 0 var(--tw-shadow-color), 0 1px 2px -1px 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-\[0_0_0_1px_hsl\(var\(--sidebar-border\)\)\]{--tw-shadow: 0 0 0 1px hsl(var(--sidebar-border));--tw-shadow-colored: 0 0 0 1px 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-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)}.shadow-xl{--tw-shadow: 0 20px 25px -5px rgb(0 0 0 / .1), 0 8px 10px -6px rgb(0 0 0 / .1);--tw-shadow-colored: 0 20px 25px -5px var(--tw-shadow-color), 0 8px 10px -6px 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-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-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-indigo\/30{--tw-ring-color: hsl(var(--indigo) / .3)}.ring-sidebar-ring{--tw-ring-color: hsl(var(--sidebar-ring))}.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-lg{--tw-backdrop-blur: blur(16px);-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-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-\[left\,right\,width\]{transition-property:left,right,width;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-\[margin\,opacity\]{transition-property:margin,opacity;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-\[width\,height\,padding\]{transition-property:width,height,padding;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-\[width\,height\]{transition-property:width,height;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-shadow{transition-property:box-shadow;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-200{transition-duration:.2s}.ease-in-out{transition-timing-function:cubic-bezier(.4,0,.2,1)}.ease-linear{transition-timing-function:linear}.meridian-editor{cursor:text;font-size:.875rem;line-height:1.25rem;line-height:1.625;color:hsl(var(--foreground));outline:2px solid transparent;outline-offset:2px}.meridian-editor>*+*{margin-top:.5rem}.meridian-editor p{line-height:1.625}.meridian-editor h1{font-size:1.25rem;line-height:1.75rem;font-weight:600;letter-spacing:-.025em;color:hsl(var(--foreground))}.meridian-editor h2{font-size:1.125rem;line-height:1.75rem;font-weight:600;letter-spacing:-.025em;color:hsl(var(--foreground))}.meridian-editor h3{font-size:1rem;line-height:1.5rem;font-weight:600;color:hsl(var(--foreground))}.meridian-editor ul{list-style-type:disc}.meridian-editor ul>: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))}.meridian-editor ul{padding-left:1.25rem}.meridian-editor ol{list-style-type:decimal}.meridian-editor ol>: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))}.meridian-editor ol{padding-left:1.25rem}.meridian-editor li{color:hsl(var(--foreground))}.meridian-editor code{border-radius:.25rem;background-color:hsl(var(--muted));padding:.125rem .375rem;font-family:JetBrains Mono,monospace;font-size:.75rem;line-height:1rem;color:hsl(var(--foreground))}.meridian-editor pre{overflow-x:auto;border-radius:var(--radius);background-color:hsl(var(--muted));padding:1rem;font-family:JetBrains Mono,monospace;font-size:.75rem;line-height:1rem;color:hsl(var(--foreground))}.meridian-editor pre code{background-color:transparent;padding:0;color:inherit}.meridian-editor blockquote{border-left-width:3px;--tw-border-opacity: 1;border-color:rgb(165 180 252 / var(--tw-border-opacity, 1));padding-left:1rem;font-style:italic;color:hsl(var(--muted-foreground))}.meridian-editor blockquote:is(.dark *){--tw-border-opacity: 1;border-color:rgb(67 56 202 / var(--tw-border-opacity, 1))}.meridian-editor hr{border-color:hsl(var(--border))}.meridian-editor strong{font-weight:600}.meridian-editor u{text-decoration-line:underline;text-underline-offset:2px}.meridian-editor s{color:hsl(var(--muted-foreground));text-decoration-line:line-through}.meridian-editor a{--tw-text-opacity: 1;color:rgb(37 99 235 / var(--tw-text-opacity, 1));text-decoration-line:underline;text-underline-offset:2px}.meridian-editor a:is(.dark *){--tw-text-opacity: 1;color:rgb(96 165 250 / var(--tw-text-opacity, 1))}.meridian-editor ul[data-type=taskList]{list-style-type:none}.meridian-editor ul[data-type=taskList]>: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))}.meridian-editor ul[data-type=taskList]{padding-left:0}.meridian-editor ul[data-type=taskList] li{display:flex;align-items:flex-start;gap:.5rem}.meridian-editor ul[data-type=taskList] li>label{margin-top:3px;display:flex;flex-shrink:0;align-items:center}.meridian-editor ul[data-type=taskList] li>label input[type=checkbox]{height:.875rem;width:.875rem;cursor:pointer;border-radius:calc(var(--radius) - 4px);accent-color:#6366f1}.meridian-editor ul[data-type=taskList] li>div{min-width:0px;flex:1 1 0%}.meridian-editor ul[data-type=taskList] li[data-checked=true]>div{color:hsl(var(--muted-foreground));text-decoration-line:line-through}.meridian-editor .is-editor-empty:first-child:before{color:hsl(var(--muted-foreground) / .5);content:attr(data-placeholder);float:left;height:0;pointer-events:none}.meridian-editor .ProseMirror-selectednode{border-radius:.25rem;--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);--tw-ring-color: hsl(var(--ring))}.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-\[\#9ca3af\]::-moz-placeholder{--tw-text-opacity: 1;color:rgb(156 163 175 / var(--tw-text-opacity, 1))}.placeholder\:text-\[\#9ca3af\]::placeholder{--tw-text-opacity: 1;color:rgb(156 163 175 / var(--tw-text-opacity, 1))}.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)}.after\:absolute:after{content:var(--tw-content);position:absolute}.after\:-inset-2:after{content:var(--tw-content);top:-.5rem;right:-.5rem;bottom:-.5rem;left:-.5rem}.after\:inset-y-0:after{content:var(--tw-content);top:0;bottom:0}.after\:left-1\/2:after{content:var(--tw-content);left:50%}.after\:w-\[2px\]:after{content:var(--tw-content);width:2px}.last\:border-0:last-child{border-width:0px}.focus-within\:relative:focus-within{position:relative}.focus-within\:z-20:focus-within{z-index:20}.focus-within\:ring-1:focus-within{--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-within\:ring-ring:focus-within{--tw-ring-color: hsl(var(--ring))}.hover\:scale-110:hover{--tw-scale-x: 1.1;--tw-scale-y: 1.1;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.hover\:border-foreground\/30:hover{border-color:hsl(var(--foreground) / .3)}.hover\:border-foreground\/40:hover{border-color:hsl(var(--foreground) / .4)}.hover\:border-indigo-300:hover{--tw-border-opacity: 1;border-color:rgb(165 180 252 / var(--tw-border-opacity, 1))}.hover\:border-indigo-400:hover{--tw-border-opacity: 1;border-color:rgb(129 140 248 / var(--tw-border-opacity, 1))}.hover\:border-muted-foreground\/40:hover{border-color:hsl(var(--muted-foreground) / .4)}.hover\:border-zinc-300:hover{--tw-border-opacity: 1;border-color:rgb(212 212 216 / var(--tw-border-opacity, 1))}.hover\:bg-\[\#f9fafb\]:hover{--tw-bg-opacity: 1;background-color:rgb(249 250 251 / var(--tw-bg-opacity, 1))}.hover\:bg-accent:hover{background-color:hsl(var(--accent))}.hover\:bg-accent\/50:hover{background-color:hsl(var(--accent) / .5)}.hover\:bg-border:hover{background-color:hsl(var(--border))}.hover\:bg-destructive\/90:hover{background-color:hsl(var(--destructive) / .9)}.hover\:bg-emerald-700:hover{--tw-bg-opacity: 1;background-color:rgb(4 120 87 / var(--tw-bg-opacity, 1))}.hover\:bg-indigo-100:hover{--tw-bg-opacity: 1;background-color:rgb(224 231 255 / var(--tw-bg-opacity, 1))}.hover\:bg-indigo-100\/70:hover{background-color:#e0e7ffb3}.hover\:bg-muted:hover{background-color:hsl(var(--muted))}.hover\:bg-muted\/20:hover{background-color:hsl(var(--muted) / .2)}.hover\:bg-muted\/30:hover{background-color:hsl(var(--muted) / .3)}.hover\:bg-muted\/40:hover{background-color:hsl(var(--muted) / .4)}.hover\:bg-muted\/50:hover{background-color:hsl(var(--muted) / .5)}.hover\:bg-primary\/10:hover{background-color:hsl(var(--primary) / .1)}.hover\:bg-primary\/90:hover{background-color:hsl(var(--primary) / .9)}.hover\:bg-secondary:hover{background-color:hsl(var(--secondary))}.hover\:bg-secondary\/80:hover{background-color:hsl(var(--secondary) / .8)}.hover\:bg-sidebar-accent:hover{background-color:hsl(var(--sidebar-accent))}.hover\:text-accent-foreground:hover{color:hsl(var(--accent-foreground))}.hover\:text-destructive:hover{color:hsl(var(--destructive))}.hover\:text-foreground:hover{color:hsl(var(--foreground))}.hover\:text-foreground\/70:hover{color:hsl(var(--foreground) / .7)}.hover\:text-indigo-500:hover{--tw-text-opacity: 1;color:rgb(99 102 241 / var(--tw-text-opacity, 1))}.hover\:text-indigo-900:hover{--tw-text-opacity: 1;color:rgb(49 46 129 / var(--tw-text-opacity, 1))}.hover\:text-muted-foreground:hover{color:hsl(var(--muted-foreground))}.hover\:text-primary:hover{color:hsl(var(--primary))}.hover\:text-sidebar-accent-foreground:hover{color:hsl(var(--sidebar-accent-foreground))}.hover\:text-zinc-800:hover{--tw-text-opacity: 1;color:rgb(39 39 42 / var(--tw-text-opacity, 1))}.hover\:underline:hover{text-decoration-line:underline}.hover\:opacity-100:hover{opacity:1}.hover\:opacity-80:hover{opacity:.8}.hover\:opacity-90:hover{opacity:.9}.hover\:shadow-\[0_0_0_1px_hsl\(var\(--sidebar-accent\)\)\]:hover{--tw-shadow: 0 0 0 1px hsl(var(--sidebar-accent));--tw-shadow-colored: 0 0 0 1px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.hover\:shadow-sm:hover{--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)}.hover\:after\:bg-sidebar-border:hover:after{content:var(--tw-content);background-color:hsl(var(--sidebar-border))}.focus\:bg-accent:focus{background-color:hsl(var(--accent))}.focus\:text-accent-foreground:focus{color:hsl(var(--accent-foreground))}.focus\:text-destructive:focus{color:hsl(var(--destructive))}.focus\:outline-none:focus{outline:2px solid transparent;outline-offset:2px}.focus\:ring-0: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(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\: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-destructive:focus{--tw-ring-color: hsl(var(--destructive))}.focus\:ring-ring:focus{--tw-ring-color: hsl(var(--ring))}.focus\:ring-offset-2:focus{--tw-ring-offset-width: 2px}.focus-visible\:outline-none:focus-visible{outline:2px solid transparent;outline-offset:2px}.focus-visible\:ring-1: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(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-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\:bg-sidebar-accent:active{background-color:hsl(var(--sidebar-accent))}.active\:text-sidebar-accent-foreground:active{color:hsl(var(--sidebar-accent-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}.group\/menu-item:focus-within .group-focus-within\/menu-item\:opacity-100{opacity:1}.group:hover .group-hover\:left-0{left:0}.group:hover .group-hover\:right-0{right:0}.group:hover .group-hover\:block{display:block}.group:hover .group-hover\:max-h-\[2rem\]{max-height:2rem}.group:hover .group-hover\:bg-\[\#f9fafb\]{--tw-bg-opacity: 1;background-color:rgb(249 250 251 / var(--tw-bg-opacity, 1))}.group:hover .group-hover\:text-foreground{color:hsl(var(--foreground))}.group:hover .group-hover\:text-zinc-900{--tw-text-opacity: 1;color:rgb(24 24 27 / var(--tw-text-opacity, 1))}.group\/menu-item:hover .group-hover\/menu-item\:opacity-100,.group:hover .group-hover\:opacity-100{opacity:1}.peer\/menu-button:hover~.peer-hover\/menu-button\:text-sidebar-accent-foreground{color:hsl(var(--sidebar-accent-foreground))}.peer:disabled~.peer-disabled\:cursor-not-allowed{cursor:not-allowed}.peer:disabled~.peer-disabled\:opacity-70{opacity:.7}.has-\[\[data-variant\=inset\]\]\:bg-sidebar:has([data-variant=inset]){background-color:hsl(var(--sidebar))}.group\/menu-item:has([data-sidebar=menu-action]) .group-has-\[\[data-sidebar\=menu-action\]\]\/menu-item\:pr-8{padding-right:2rem}.aria-disabled\:pointer-events-none[aria-disabled=true]{pointer-events:none}.aria-disabled\:opacity-50[aria-disabled=true]{opacity:.5}.aria-selected\:text-muted-foreground[aria-selected=true]{color:hsl(var(--muted-foreground))}.aria-selected\:opacity-100[aria-selected=true]{opacity:1}.data-\[disabled\=true\]\:pointer-events-none[data-disabled=true],.data-\[disabled\]\:pointer-events-none[data-disabled]{pointer-events:none}.data-\[orientation\=vertical\]\:h-4[data-orientation=vertical]{height:1rem}.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-4[data-state=checked]{--tw-translate-x: 1rem;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-\[active\=true\]\:bg-indigo-50[data-active=true]{--tw-bg-opacity: 1;background-color:rgb(238 242 255 / var(--tw-bg-opacity, 1))}.data-\[active\=true\]\:bg-sidebar-accent[data-active=true]{background-color:hsl(var(--sidebar-accent))}.data-\[selected\=true\]\:bg-accent[data-selected=true]{background-color:hsl(var(--accent))}.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\=open\]\:bg-secondary[data-state=open]{background-color:hsl(var(--secondary))}.data-\[state\=open\]\:bg-sidebar-accent[data-state=open]{background-color:hsl(var(--sidebar-accent))}.data-\[state\=unchecked\]\:bg-input[data-state=unchecked]{background-color:hsl(var(--input))}.data-\[active\=true\]\:font-medium[data-active=true]{font-weight:500}.data-\[active\=true\]\:text-indigo-700[data-active=true]{--tw-text-opacity: 1;color:rgb(67 56 202 / var(--tw-text-opacity, 1))}.data-\[active\=true\]\:text-sidebar-accent-foreground[data-active=true]{color:hsl(var(--sidebar-accent-foreground))}.data-\[selected\=true\]\:text-accent-foreground[data-selected=true]{color:hsl(var(--accent-foreground))}.data-\[state\=active\]\:text-foreground[data-state=active]{color:hsl(var(--foreground))}.data-\[state\=checked\]\:text-primary-foreground[data-state=checked]{color:hsl(var(--primary-foreground))}.data-\[state\=open\]\:text-accent-foreground[data-state=open]{color:hsl(var(--accent-foreground))}.data-\[state\=open\]\:text-muted-foreground[data-state=open]{color:hsl(var(--muted-foreground))}.data-\[state\=open\]\:text-sidebar-accent-foreground[data-state=open]{color:hsl(var(--sidebar-accent-foreground))}.data-\[disabled\=true\]\:opacity-50[data-disabled=true],.data-\[disabled\]\:opacity-50[data-disabled]{opacity:.5}.data-\[state\=open\]\:opacity-100[data-state=open]{opacity:1}.data-\[state\=active\]\:shadow[data-state=active]{--tw-shadow: 0 1px 3px 0 rgb(0 0 0 / .1), 0 1px 2px -1px rgb(0 0 0 / .1);--tw-shadow-colored: 0 1px 3px 0 var(--tw-shadow-color), 0 1px 2px -1px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.data-\[state\=closed\]\:duration-200[data-state=closed]{transition-duration:.2s}.data-\[state\=open\]\:duration-300[data-state=open]{transition-duration:.3s}.data-\[state\=open\]\:hover\:bg-sidebar-accent:hover[data-state=open]{background-color:hsl(var(--sidebar-accent))}.data-\[state\=open\]\:hover\:text-sidebar-accent-foreground:hover[data-state=open]{color:hsl(var(--sidebar-accent-foreground))}.group[data-collapsible=offcanvas] .group-data-\[collapsible\=offcanvas\]\:left-\[calc\(var\(--sidebar-width\)\*-1\)\]{left:calc(var(--sidebar-width) * -1)}.group[data-collapsible=offcanvas] .group-data-\[collapsible\=offcanvas\]\:right-\[calc\(var\(--sidebar-width\)\*-1\)\]{right:calc(var(--sidebar-width) * -1)}.group[data-side=left] .group-data-\[side\=left\]\:-right-4{right:-1rem}.group[data-side=right] .group-data-\[side\=right\]\:left-0{left:0}.group[data-collapsible=icon] .group-data-\[collapsible\=icon\]\:-mt-8{margin-top:-2rem}.group[data-collapsible=icon] .group-data-\[collapsible\=icon\]\:hidden{display:none}.group[data-collapsible=icon] .group-data-\[collapsible\=icon\]\:\!size-8{width:2rem!important;height:2rem!important}.group[data-collapsible=icon] .group-data-\[collapsible\=icon\]\:w-\[calc\(var\(--sidebar-width-icon\)\+1rem\)\]{width:calc(var(--sidebar-width-icon) + 1rem)}.group[data-collapsible=icon] .group-data-\[collapsible\=icon\]\:w-\[calc\(var\(--sidebar-width-icon\)\+1rem\+2px\)\]{width:calc(var(--sidebar-width-icon) + 1rem + 2px)}.group[data-collapsible=icon] .group-data-\[collapsible\=icon\]\:w-\[var\(--sidebar-width-icon\)\]{width:var(--sidebar-width-icon)}.group[data-collapsible=offcanvas] .group-data-\[collapsible\=offcanvas\]\:w-0{width:0px}.group[data-collapsible=offcanvas] .group-data-\[collapsible\=offcanvas\]\:translate-x-0{--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))}.group[data-side=right] .group-data-\[side\=right\]\: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))}.group[data-collapsible=icon] .group-data-\[collapsible\=icon\]\:overflow-hidden{overflow:hidden}.group[data-variant=floating] .group-data-\[variant\=floating\]\:rounded-lg{border-radius:var(--radius)}.group[data-variant=floating] .group-data-\[variant\=floating\]\:border{border-width:1px}.group[data-side=left] .group-data-\[side\=left\]\:border-r{border-right-width:1px}.group[data-side=right] .group-data-\[side\=right\]\:border-l{border-left-width:1px}.group[data-variant=floating] .group-data-\[variant\=floating\]\:border-sidebar-border{border-color:hsl(var(--sidebar-border))}.group[data-collapsible=icon] .group-data-\[collapsible\=icon\]\:\!p-2{padding:.5rem!important}.group[data-collapsible=icon] .group-data-\[collapsible\=icon\]\:opacity-0{opacity:0}.group[data-variant=floating] .group-data-\[variant\=floating\]\: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)}.group[data-collapsible=offcanvas] .group-data-\[collapsible\=offcanvas\]\:after\:left-full:after{content:var(--tw-content);left:100%}.group[data-collapsible=offcanvas] .hover\:group-data-\[collapsible\=offcanvas\]\:bg-sidebar:hover{background-color:hsl(var(--sidebar))}.peer\/menu-button[data-size=default]~.peer-data-\[size\=default\]\/menu-button\:top-1\.5{top:.375rem}.peer\/menu-button[data-size=lg]~.peer-data-\[size\=lg\]\/menu-button\:top-2\.5{top:.625rem}.peer\/menu-button[data-size=sm]~.peer-data-\[size\=sm\]\/menu-button\:top-1{top:.25rem}.peer\/menu-button[data-active=true]~.peer-data-\[active\=true\]\/menu-button\:text-sidebar-accent-foreground{color:hsl(var(--sidebar-accent-foreground))}.dark\:-rotate-90:is(.dark *){--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))}.dark\:rotate-0:is(.dark *){--tw-rotate: 0deg;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))}.dark\:scale-0:is(.dark *){--tw-scale-x: 0;--tw-scale-y: 0;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))}.dark\:scale-100:is(.dark *){--tw-scale-x: 1;--tw-scale-y: 1;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))}.dark\:border-indigo-400:is(.dark *){--tw-border-opacity: 1;border-color:rgb(129 140 248 / var(--tw-border-opacity, 1))}.dark\:border-indigo-800:is(.dark *){--tw-border-opacity: 1;border-color:rgb(55 48 163 / var(--tw-border-opacity, 1))}.dark\:border-zinc-700:is(.dark *){--tw-border-opacity: 1;border-color:rgb(63 63 70 / var(--tw-border-opacity, 1))}.dark\:border-zinc-800:is(.dark *){--tw-border-opacity: 1;border-color:rgb(39 39 42 / var(--tw-border-opacity, 1))}.dark\:bg-\[\#f59e0b\]\/5:is(.dark *){background-color:#f59e0b0d}.dark\:bg-amber-900\/50:is(.dark *){background-color:#78350f80}.dark\:bg-amber-950\/40:is(.dark *){background-color:#451a0366}.dark\:bg-background:is(.dark *){background-color:hsl(var(--background))}.dark\:bg-black\/30:is(.dark *){background-color:#0000004d}.dark\:bg-blue-900\/30:is(.dark *){background-color:#1e3a8a4d}.dark\:bg-blue-950\/40:is(.dark *){background-color:#17255466}.dark\:bg-card:is(.dark *){background-color:hsl(var(--card))}.dark\:bg-emerald-900\/30:is(.dark *){background-color:#064e3b4d}.dark\:bg-emerald-900\/50:is(.dark *){background-color:#064e3b80}.dark\:bg-emerald-950:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(2 44 34 / var(--tw-bg-opacity, 1))}.dark\:bg-emerald-950\/30:is(.dark *){background-color:#022c224d}.dark\:bg-emerald-950\/40:is(.dark *){background-color:#022c2266}.dark\:bg-indigo-900\/30:is(.dark *){background-color:#312e814d}.dark\:bg-indigo-900\/50:is(.dark *){background-color:#312e8180}.dark\:bg-indigo-950\/20:is(.dark *){background-color:#1e1b4b33}.dark\:bg-indigo-950\/30:is(.dark *){background-color:#1e1b4b4d}.dark\:bg-indigo-950\/40:is(.dark *){background-color:#1e1b4b66}.dark\:bg-indigo-950\/50:is(.dark *){background-color:#1e1b4b80}.dark\:bg-indigo-950\/60:is(.dark *){background-color:#1e1b4b99}.dark\:bg-indigo\/10:is(.dark *){background-color:hsl(var(--indigo) / .1)}.dark\:bg-muted\/20:is(.dark *){background-color:hsl(var(--muted) / .2)}.dark\:bg-orange-900\/50:is(.dark *){background-color:#7c2d1280}.dark\:bg-rose-900\/50:is(.dark *){background-color:#88133780}.dark\:bg-sky-900\/50:is(.dark *){background-color:#0c4a6e80}.dark\:bg-teal-900\/50:is(.dark *){background-color:#134e4a80}.dark\:bg-violet-900\/50:is(.dark *){background-color:#4c1d9580}.dark\:bg-zinc-800:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(39 39 42 / var(--tw-bg-opacity, 1))}.dark\:bg-zinc-800\/60:is(.dark *){background-color:#27272a99}.dark\:bg-zinc-900:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(24 24 27 / var(--tw-bg-opacity, 1))}.dark\:bg-zinc-900\/60:is(.dark *){background-color:#18181b99}.dark\:bg-zinc-950:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(9 9 11 / var(--tw-bg-opacity, 1))}.dark\:text-amber-300:is(.dark *){--tw-text-opacity: 1;color:rgb(252 211 77 / var(--tw-text-opacity, 1))}.dark\:text-blue-400:is(.dark *){--tw-text-opacity: 1;color:rgb(96 165 250 / var(--tw-text-opacity, 1))}.dark\:text-emerald-300:is(.dark *){--tw-text-opacity: 1;color:rgb(110 231 183 / 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-indigo-300:is(.dark *){--tw-text-opacity: 1;color:rgb(165 180 252 / var(--tw-text-opacity, 1))}.dark\:text-indigo-400:is(.dark *){--tw-text-opacity: 1;color:rgb(129 140 248 / var(--tw-text-opacity, 1))}.dark\:text-indigo-500:is(.dark *){--tw-text-opacity: 1;color:rgb(99 102 241 / var(--tw-text-opacity, 1))}.dark\:text-orange-300:is(.dark *){--tw-text-opacity: 1;color:rgb(253 186 116 / var(--tw-text-opacity, 1))}.dark\:text-rose-300:is(.dark *){--tw-text-opacity: 1;color:rgb(253 164 175 / var(--tw-text-opacity, 1))}.dark\:text-sky-300:is(.dark *){--tw-text-opacity: 1;color:rgb(125 211 252 / var(--tw-text-opacity, 1))}.dark\:text-teal-300:is(.dark *){--tw-text-opacity: 1;color:rgb(94 234 212 / var(--tw-text-opacity, 1))}.dark\:text-violet-300:is(.dark *){--tw-text-opacity: 1;color:rgb(196 181 253 / var(--tw-text-opacity, 1))}.dark\:text-violet-400:is(.dark *){--tw-text-opacity: 1;color:rgb(167 139 250 / var(--tw-text-opacity, 1))}.dark\:text-zinc-100:is(.dark *){--tw-text-opacity: 1;color:rgb(244 244 245 / var(--tw-text-opacity, 1))}.dark\:text-zinc-300:is(.dark *){--tw-text-opacity: 1;color:rgb(212 212 216 / var(--tw-text-opacity, 1))}.dark\:text-zinc-400:is(.dark *){--tw-text-opacity: 1;color:rgb(161 161 170 / var(--tw-text-opacity, 1))}.dark\:text-zinc-50:is(.dark *){--tw-text-opacity: 1;color:rgb(250 250 250 / var(--tw-text-opacity, 1))}.dark\:text-zinc-500:is(.dark *){--tw-text-opacity: 1;color:rgb(113 113 122 / var(--tw-text-opacity, 1))}.dark\:hover\:border-indigo-600:hover:is(.dark *){--tw-border-opacity: 1;border-color:rgb(79 70 229 / var(--tw-border-opacity, 1))}.dark\:hover\:border-indigo-700:hover:is(.dark *){--tw-border-opacity: 1;border-color:rgb(67 56 202 / var(--tw-border-opacity, 1))}.dark\:hover\:border-zinc-600:hover:is(.dark *){--tw-border-opacity: 1;border-color:rgb(82 82 91 / var(--tw-border-opacity, 1))}.dark\:hover\:bg-indigo-900\/60:hover:is(.dark *){background-color:#312e8199}.dark\:hover\:bg-indigo-950\/50:hover:is(.dark *){background-color:#1e1b4b80}.dark\:hover\:bg-muted\/30:hover:is(.dark *){background-color:hsl(var(--muted) / .3)}.dark\:hover\:text-indigo-100:hover:is(.dark *){--tw-text-opacity: 1;color:rgb(224 231 255 / var(--tw-text-opacity, 1))}.dark\:hover\:text-indigo-400:hover:is(.dark *){--tw-text-opacity: 1;color:rgb(129 140 248 / var(--tw-text-opacity, 1))}.dark\:hover\:text-zinc-200:hover:is(.dark *){--tw-text-opacity: 1;color:rgb(228 228 231 / var(--tw-text-opacity, 1))}.group:hover .dark\:group-hover\:bg-muted\/30:is(.dark *){background-color:hsl(var(--muted) / .3)}.group:hover .dark\:group-hover\:text-zinc-100:is(.dark *){--tw-text-opacity: 1;color:rgb(244 244 245 / var(--tw-text-opacity, 1))}.dark\:data-\[active\=true\]\:bg-indigo-950\/50[data-active=true]:is(.dark *){background-color:#1e1b4b80}.dark\:data-\[active\=true\]\:text-indigo-300[data-active=true]:is(.dark *){--tw-text-opacity: 1;color:rgb(165 180 252 / var(--tw-text-opacity, 1))}@media (min-width: 640px){.sm\:mt-0{margin-top:0}.sm\:block{display:block}.sm\:inline{display:inline}.sm\:flex{display:flex}.sm\:inline-flex{display:inline-flex}.sm\:w-56{width:14rem}.sm\:w-auto{width:auto}.sm\:max-w-\[480px\]{max-width:480px}.sm\:max-w-\[520px\]{max-width:520px}.sm\:max-w-\[580px\]{max-width:580px}.sm\:max-w-md{max-width:28rem}.sm\:max-w-sm{max-width:24rem}.sm\:max-w-xl{max-width:36rem}.sm\:flex-row{flex-direction:row}.sm\:items-center{align-items:center}.sm\:justify-end{justify-content:flex-end}.sm\:justify-center{justify-content:center}.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\:text-left{text-align:left}}@media (min-width: 768px){.md\:block{display:block}.md\:flex{display:flex}.md\:opacity-0{opacity:0}.md\:after\:hidden:after{content:var(--tw-content);display:none}.peer[data-variant=inset]~.md\:peer-data-\[variant\=inset\]\:m-2{margin:.5rem}.peer[data-variant=inset]~.md\:peer-data-\[variant\=inset\]\:ml-0{margin-left:0}.peer[data-variant=inset][data-state=collapsed]~.md\:peer-data-\[variant\=inset\]\:peer-data-\[state\=collapsed\]\:ml-2{margin-left:.5rem}.peer[data-variant=inset]~.md\:peer-data-\[variant\=inset\]\:rounded-xl{border-radius:.75rem}.peer[data-variant=inset]~.md\:peer-data-\[variant\=inset\]\: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)}}@media (min-width: 1024px){.lg\:gap-2{gap:.5rem}.lg\:px-6{padding-left:1.5rem;padding-right:1.5rem}}@media (min-width: 1280px){.xl\:block{display:block}}.\[\&\:has\(\[aria-selected\]\)\]\:bg-accent:has([aria-selected]){background-color:hsl(var(--accent))}.\[\&\:has\(\[aria-selected\]\.day-outside\)\]\:bg-accent\/50:has([aria-selected].day-outside){background-color:hsl(var(--accent) / .5)}.\[\&\>button\]\:hidden>button{display:none}.\[\&\>button\]\:bg-accent>button{background-color:hsl(var(--accent))}.\[\&\>button\]\:bg-primary>button{background-color:hsl(var(--primary))}.\[\&\>button\]\:text-accent-foreground>button{color:hsl(var(--accent-foreground))}.\[\&\>button\]\:text-muted-foreground>button{color:hsl(var(--muted-foreground))}.\[\&\>button\]\:text-primary-foreground>button{color:hsl(var(--primary-foreground))}.\[\&\>button\]\:hover\:bg-primary:hover>button{background-color:hsl(var(--primary))}.\[\&\>button\]\:hover\:text-primary-foreground:hover>button{color:hsl(var(--primary-foreground))}.\[\&\>button\]\:focus\:bg-primary:focus>button{background-color:hsl(var(--primary))}.\[\&\>button\]\:focus\:text-primary-foreground:focus>button{color:hsl(var(--primary-foreground))}.\[\&\>span\:last-child\]\:truncate>span:last-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.\[\&\>span\]\:line-clamp-1>span{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:1}.\[\&\>svg\]\:size-4>svg{width:1rem;height:1rem}.\[\&\>svg\]\:shrink-0>svg{flex-shrink:0}.\[\&\>svg\]\:text-sidebar-accent-foreground>svg{color:hsl(var(--sidebar-accent-foreground))}.\[\&_\[cmdk-group-heading\]\]\:px-2 [cmdk-group-heading]{padding-left:.5rem;padding-right:.5rem}.\[\&_\[cmdk-group-heading\]\]\:py-1\.5 [cmdk-group-heading]{padding-top:.375rem;padding-bottom:.375rem}.\[\&_\[cmdk-group-heading\]\]\:text-xs [cmdk-group-heading]{font-size:.75rem;line-height:1rem}.\[\&_\[cmdk-group-heading\]\]\:font-medium [cmdk-group-heading]{font-weight:500}.\[\&_\[cmdk-group-heading\]\]\:text-muted-foreground [cmdk-group-heading]{color:hsl(var(--muted-foreground))}.\[\&_\[cmdk-group\]\:not\(\[hidden\]\)_\~\[cmdk-group\]\]\:pt-0 [cmdk-group]:not([hidden])~[cmdk-group]{padding-top:0}.\[\&_\[cmdk-group\]\]\:px-2 [cmdk-group]{padding-left:.5rem;padding-right:.5rem}.\[\&_\[cmdk-input-wrapper\]_svg\]\:h-5 [cmdk-input-wrapper] svg{height:1.25rem}.\[\&_\[cmdk-input-wrapper\]_svg\]\:w-5 [cmdk-input-wrapper] svg{width:1.25rem}.\[\&_\[cmdk-input\]\]\:h-12 [cmdk-input]{height:3rem}.\[\&_\[cmdk-item\]\]\:px-2 [cmdk-item]{padding-left:.5rem;padding-right:.5rem}.\[\&_\[cmdk-item\]\]\:py-3 [cmdk-item]{padding-top:.75rem;padding-bottom:.75rem}.\[\&_\[cmdk-item\]_svg\]\:h-5 [cmdk-item] svg{height:1.25rem}.\[\&_\[cmdk-item\]_svg\]\:w-5 [cmdk-item] svg{width:1.25rem}.\[\&_svg\]\:pointer-events-none svg{pointer-events:none}.\[\&_svg\]\:size-4 svg{width:1rem;height:1rem}.\[\&_svg\]\:shrink-0 svg{flex-shrink:0}[data-side=left][data-collapsible=offcanvas] .\[\[data-side\=left\]\[data-collapsible\=offcanvas\]_\&\]\:-right-2{right:-.5rem}[data-side=left][data-state=collapsed] .\[\[data-side\=left\]\[data-state\=collapsed\]_\&\]\:cursor-e-resize{cursor:e-resize}[data-side=right][data-collapsible=offcanvas] .\[\[data-side\=right\]\[data-collapsible\=offcanvas\]_\&\]\:-left-2{left:-.5rem}[data-side=right][data-state=collapsed] .\[\[data-side\=right\]\[data-state\=collapsed\]_\&\]\:cursor-w-resize{cursor:w-resize}