headroom-cms 0.1.1 → 0.1.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (98) hide show
  1. package/admin/assets/AdminsPage-DYJhlQnA.js +1 -0
  2. package/admin/assets/AllContentPage-DShBvFru.js +1 -0
  3. package/admin/assets/{ApiKeysPage-FgNHZPBS.js → ApiKeysPage-DONrd-TJ.js} +1 -1
  4. package/admin/assets/{AuditPage-DAPpo-sj.js → AuditPage-BwhYu96L.js} +1 -1
  5. package/admin/assets/{BlockEditor-CZTwex-o.js → BlockEditor-C0KaZUHQ.js} +57 -57
  6. package/admin/assets/BlockTypeEditPage-BYJfEA6l.js +1 -0
  7. package/admin/assets/BlockTypesPage-Pf9u78-O.js +1 -0
  8. package/admin/assets/BulkActionBar-BX-t8fyM.js +1 -0
  9. package/admin/assets/CollectionEditPage-CQGo9Cbu.js +1 -0
  10. package/admin/assets/{CollectionsPage-BnCaxALz.js → CollectionsPage-D-QTkoW_.js} +1 -1
  11. package/admin/assets/{ContentCreatePage-CJI326o-.js → ContentCreatePage-DujNZXXj.js} +1 -1
  12. package/admin/assets/ContentEditPage-DyqgEoAe.js +3 -0
  13. package/admin/assets/ContentListPage-llAlhZTH.js +1 -0
  14. package/admin/assets/{CustomBlockPreview-CCssn6vF.js → CustomBlockPreview-CCiZrZhi.js} +1 -1
  15. package/admin/assets/FieldBuilder-B3-3MTqp.js +3 -0
  16. package/admin/assets/{LoginPage-Jrne8-Wr.js → LoginPage-BlJXP0GH.js} +1 -1
  17. package/admin/assets/MediaPage-Cad4n33B.js +1 -0
  18. package/admin/assets/SiteSettingsPage-xfAm3ZKQ.js +1 -0
  19. package/admin/assets/SitesPage-DnCiSu23.js +1 -0
  20. package/admin/assets/{TagsPage-BGpp0XZM.js → TagsPage-DNlaoFCE.js} +1 -1
  21. package/admin/assets/UsersPage-D_nOx6W9.js +1 -0
  22. package/admin/assets/{WebhookEditPage-BOcLe5OJ.js → WebhookEditPage-BUvLl4rY.js} +1 -1
  23. package/admin/assets/{WebhooksPage-Czco583Y.js → WebhooksPage-CG7WC9Bq.js} +1 -1
  24. package/admin/assets/{badge-0Z1nL6DI.js → badge-ChZ2DZue.js} +1 -1
  25. package/admin/assets/{card-D1-S-QZ6.js → card-DpNr7WTb.js} +1 -1
  26. package/admin/assets/check-BMpruHpO.js +1 -0
  27. package/admin/assets/{checkbox-BPqrj_XS.js → checkbox-VtCfoGic.js} +1 -1
  28. package/admin/assets/command-98iA8Va4.js +1 -0
  29. package/admin/assets/contentStatus-BmaiYVOm.js +1 -0
  30. package/admin/assets/{copy-BqH9rXYM.js → copy-fXL6Ngxi.js} +1 -1
  31. package/admin/assets/{core.esm-Csvubn5Q.js → core.esm-BtFZvlg0.js} +1 -1
  32. package/admin/assets/format-C88SDH8g.js +1 -0
  33. package/admin/assets/index-CwkwXbO-.js +18 -0
  34. package/admin/assets/index-FYfbavkE.css +1 -0
  35. package/admin/assets/plus-2Ds_MoqB.js +1 -0
  36. package/admin/assets/popover-DFInMOpa.js +1 -0
  37. package/admin/assets/radix-n1vDIPi6.js +51 -0
  38. package/admin/assets/search-DRNC6QB5.js +1 -0
  39. package/admin/assets/select-Cj54Wt-H.js +1 -0
  40. package/admin/assets/{sortable.esm-Zh-9QRSf.js → sortable.esm-BUhmZW2_.js} +1 -1
  41. package/admin/assets/{table-B3EHrN_H.js → table-D4rLgOKa.js} +1 -1
  42. package/admin/assets/{trash-2-Gny2Upn-.js → trash-2-CbbWF_O4.js} +1 -1
  43. package/admin/assets/use-mobile-Cvl5tIVY.js +1 -0
  44. package/admin/assets/useAdminResolver-B-_1f6SR.js +1 -0
  45. package/admin/assets/useContent-Cp41wBYR.js +1 -0
  46. package/admin/assets/useMedia-DjiNKMOU.js +1 -0
  47. package/admin/assets/{useTags-CYqbj5cK.js → useTags-BB47vbXO.js} +1 -1
  48. package/admin/assets/{useWebhooks-DXgtQ3aU.js → useWebhooks-DS4Ee8Wk.js} +1 -1
  49. package/admin/assets/workbox-window.prod.es5-BIl4cyR9.js +2 -0
  50. package/admin/icons/icon-180x180.png +0 -0
  51. package/admin/icons/icon-192x192.png +0 -0
  52. package/admin/icons/icon-512x512.png +0 -0
  53. package/admin/icons/maskable-icon-512x512.png +0 -0
  54. package/admin/index.html +11 -6
  55. package/admin/manifest.webmanifest +1 -0
  56. package/admin/sw.js +1 -0
  57. package/admin/workbox-7d58179f.js +1 -0
  58. package/dist/admin-site.d.ts.map +1 -1
  59. package/dist/admin-site.js +3 -0
  60. package/dist/admin-site.js.map +1 -1
  61. package/dist/image.d.ts.map +1 -1
  62. package/dist/image.js +3 -0
  63. package/dist/image.js.map +1 -1
  64. package/dist/storage.js +1 -1
  65. package/dist/storage.js.map +1 -1
  66. package/lambda/api/bootstrap +0 -0
  67. package/lambda/webhook-worker/bootstrap +0 -0
  68. package/package.json +2 -2
  69. package/src/admin-site.ts +3 -0
  70. package/src/image.ts +3 -0
  71. package/src/storage.ts +1 -1
  72. package/admin/assets/AdminsPage-CnrQqwKA.js +0 -1
  73. package/admin/assets/AllContentPage-ByN1h3PP.js +0 -1
  74. package/admin/assets/BlockTypeEditPage-Buuwbx1P.js +0 -1
  75. package/admin/assets/BlockTypesPage-Dj0qmsqX.js +0 -1
  76. package/admin/assets/BulkActionBar-BMcUBJSH.js +0 -1
  77. package/admin/assets/CollectionEditPage-CLgQu2HS.js +0 -1
  78. package/admin/assets/ContentEditPage-A4i8P2Jd.js +0 -3
  79. package/admin/assets/ContentListPage-Bc4mBIkB.js +0 -1
  80. package/admin/assets/FieldBuilder-YJGSk0nY.js +0 -3
  81. package/admin/assets/MediaPage-_qNXqsZg.js +0 -1
  82. package/admin/assets/SiteSettingsPage-CoZnavij.js +0 -1
  83. package/admin/assets/SitesPage-ETqFT3nO.js +0 -1
  84. package/admin/assets/UsersPage-CKRJpAb6.js +0 -1
  85. package/admin/assets/check-BGA0ADyt.js +0 -1
  86. package/admin/assets/command-ChD319uJ.js +0 -1
  87. package/admin/assets/contentStatus-DfWHjFVB.js +0 -1
  88. package/admin/assets/format-CZ9bpk32.js +0 -1
  89. package/admin/assets/index-DOqKbrpW.css +0 -1
  90. package/admin/assets/index-Ds50UTAc.js +0 -18
  91. package/admin/assets/media-url-DIg_vSyf.js +0 -1
  92. package/admin/assets/plus-BgHSYWJN.js +0 -1
  93. package/admin/assets/radix-DQ3amgxj.js +0 -51
  94. package/admin/assets/search-DIzcfCVh.js +0 -1
  95. package/admin/assets/select-CJXZv4wv.js +0 -1
  96. package/admin/assets/useAdminResolver-BsQc_N4z.js +0 -1
  97. package/admin/assets/useContent-CSobIico.js +0 -1
  98. package/admin/assets/useMedia-CQnmMz4N.js +0 -1
@@ -1 +0,0 @@
1
- import{j as e}from"./tanstack-BO6c-AOu.js";import{r as x,R as D,L as yt,u as bt}from"./react-vendor-DNVhVxD7.js";import{F as Ct,l as Nt,m as kt,n as Dt,o as St,T as Fe,b as Ge,p as Mt,q as It,r as Tt,E as _t,A as Ze,e as Je,f as et,g as tt,h as st,i as at,j as nt,k as rt,U as ye,u as Rt,a as At,s as zt,t as $t,v as Et}from"./useMedia-CQnmMz4N.js";import{n as Y,x as P,F as it,B as C,s as S,D as ie,i as le,j as oe,k as ce,l as de,L as O,I as K,m as he,a as ee,X as xe,J as Ft,K as Pt,M as Ut,N as We,S as Ot}from"./index-Ds50UTAc.js";import{C as Lt,c as Ht}from"./card-D1-S-QZ6.js";import{C as Se}from"./checkbox-BPqrj_XS.js";import{S as pe,a as ge,b as fe,c as we,d as te,C as Xt,h as Yt}from"./select-CJXZv4wv.js";import{s as Bt,t as Kt,u as Wt,v as Vt,w as qt,A as Qt}from"./radix-DQ3amgxj.js";import{d as lt,G as Gt,e as Zt,b as Jt,u as es,a as ts,D as ss,f as as,P as ns}from"./core.esm-Csvubn5Q.js";import{b as je,a as Pe,f as Ue}from"./format-CZ9bpk32.js";import{m as W}from"./media-url-DIg_vSyf.js";import{T as rs,a as is,b as ot,c as H,d as ls,e as X}from"./table-B3EHrN_H.js";import{C as Oe}from"./copy-BqH9rXYM.js";import{B as ct}from"./badge-0Z1nL6DI.js";import{T as os}from"./trash-2-Gny2Upn-.js";import{P as cs}from"./plus-BgHSYWJN.js";import{C as ds}from"./check-BGA0ADyt.js";import{S as Ve}from"./search-DIzcfCVh.js";const hs=[["path",{d:"m15 18-6-6 6-6",key:"1wnfg3"}]],us=Y("chevron-left",hs);const ms=[["path",{d:"M6 2v14a2 2 0 0 0 2 2h14",key:"ron5a4"}],["path",{d:"M18 22V8a2 2 0 0 0-2-2H2",key:"7s9ehn"}]],xs=Y("crop",ms);const ps=[["path",{d:"M6 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.704.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2z",key:"1oefj6"}],["path",{d:"M14 2v5a1 1 0 0 0 1 1h5",key:"wfsgrz"}],["path",{d:"M10 12.5 8 15l2 2.5",key:"1tg20x"}],["path",{d:"m14 12.5 2 2.5-2 2.5",key:"yinavb"}]],gs=Y("file-code",ps);const fs=[["rect",{width:"18",height:"18",x:"3",y:"3",rx:"2",key:"afitv7"}],["path",{d:"M7 3v18",key:"bbkbws"}],["path",{d:"M3 7.5h4",key:"zfgn84"}],["path",{d:"M3 12h18",key:"1i2n21"}],["path",{d:"M3 16.5h4",key:"1230mu"}],["path",{d:"M17 3v18",key:"in4fa5"}],["path",{d:"M17 7.5h4",key:"myr1c1"}],["path",{d:"M17 16.5h4",key:"go4c1d"}]],ws=Y("film",fs);const js=[["path",{d:"M20 20a2 2 0 0 0 2-2V8a2 2 0 0 0-2-2h-7.9a2 2 0 0 1-1.69-.9L9.6 3.9A2 2 0 0 0 7.93 3H4a2 2 0 0 0-2 2v13a2 2 0 0 0 2 2Z",key:"1kt360"}]],ue=Y("folder",js);const vs=[["rect",{width:"7",height:"7",x:"3",y:"3",rx:"1",key:"1g98yp"}],["rect",{width:"7",height:"7",x:"14",y:"3",rx:"1",key:"6d4xhi"}],["rect",{width:"7",height:"7",x:"14",y:"14",rx:"1",key:"nxv5o0"}],["rect",{width:"7",height:"7",x:"3",y:"14",rx:"1",key:"1bb6yr"}]],ys=Y("layout-grid",vs);const bs=[["path",{d:"M3 5h.01",key:"18ugdj"}],["path",{d:"M3 12h.01",key:"nlz23k"}],["path",{d:"M3 19h.01",key:"noohij"}],["path",{d:"M8 5h13",key:"1pao27"}],["path",{d:"M8 12h13",key:"1za7za"}],["path",{d:"M8 19h13",key:"m83p4d"}]],Cs=Y("list",bs);const Ns=[["path",{d:"M15 3h6v6",key:"1q9fwt"}],["path",{d:"m21 3-7 7",key:"1l2asr"}],["path",{d:"m3 21 7-7",key:"tjx5ai"}],["path",{d:"M9 21H3v-6",key:"wtvkvv"}]],ks=Y("maximize-2",Ns);const Ds=[["path",{d:"M9 18V5l12-2v13",key:"1jmyc2"}],["circle",{cx:"6",cy:"18",r:"3",key:"fqmcym"}],["circle",{cx:"18",cy:"16",r:"3",key:"1hluhg"}]],Ss=Y("music",Ds);const Ms=[["path",{d:"M3 12a9 9 0 0 1 9-9 9.75 9.75 0 0 1 6.74 2.74L21 8",key:"v9h5vc"}],["path",{d:"M21 3v5h-5",key:"1q7to0"}],["path",{d:"M21 12a9 9 0 0 1-9 9 9.75 9.75 0 0 1-6.74-2.74L3 16",key:"3uifl3"}],["path",{d:"M8 16H3v5",key:"1cv678"}]],Is=Y("refresh-cw",Ms);function be({delayDuration:a=0,...t}){return e.jsx(Bt,{"data-slot":"tooltip-provider",delayDuration:a,...t})}function Ce({...a}){return e.jsx(Kt,{"data-slot":"tooltip",...a})}function Ne({...a}){return e.jsx(Wt,{"data-slot":"tooltip-trigger",...a})}function ke({className:a,sideOffset:t=0,children:s,...l}){return e.jsx(Vt,{children:e.jsxs(qt,{"data-slot":"tooltip-content",sideOffset:t,className:P("bg-foreground text-background animate-in fade-in-0 zoom-in-95 data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-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 z-50 w-fit origin-(--radix-tooltip-content-transform-origin) rounded-md px-3 py-1.5 text-xs text-balance",a),...l,children:[s,e.jsx(Qt,{className:"bg-foreground fill-foreground z-50 size-2.5 translate-y-[calc(-50%_-_2px)] rotate-45 rounded-[2px]"})]})})}function Me({mimeType:a,className:t}){return a==="application/pdf"?e.jsx(it,{className:P("text-blue-500",t)}):a.startsWith("video/")?e.jsx(ws,{className:P("text-purple-500",t)}):a.startsWith("audio/")?e.jsx(Ss,{className:P("text-green-500",t)}):a==="image/svg+xml"?e.jsx(gs,{className:P("text-orange-500",t)}):e.jsx(Ct,{className:P("text-muted-foreground",t)})}function Ts(a){return a==="application/pdf"?"PDF":a==="image/svg+xml"?"SVG":a.startsWith("image/")?"Image":a.startsWith("video/")?"Video":a.startsWith("audio/")?"Audio":a.split("/")[1]?.toUpperCase()??"File"}function _s({item:a,selected:t,onToggle:s,onSelect:l,onLightbox:n,folderName:r}){const{attributes:u,listeners:h,setNodeRef:o,isDragging:i}=lt({id:a.mediaId,data:{type:"media",mediaId:a.mediaId}}),p=a.mimeType.startsWith("image/")&&a.mimeType!=="image/svg+xml";return e.jsxs(ot,{ref:o,className:P("cursor-pointer",i&&"opacity-50"),onClick:l,children:[e.jsx(X,{onPointerDown:m=>m.stopPropagation(),onClick:m=>m.stopPropagation(),children:e.jsx(Se,{checked:t,onCheckedChange:s,"aria-label":`Select ${a.filename}`})}),e.jsx(X,{className:"w-6 p-1",children:e.jsx("div",{className:"cursor-grab text-muted-foreground",...u,...h,children:e.jsx(Gt,{className:"h-4 w-4"})})}),e.jsx(X,{className:"p-1",children:p?e.jsx("img",{src:W(a.urls?.thumb_sm??a.url),alt:a.alt||a.filename,className:P("h-8 w-8 rounded object-cover",n&&"cursor-zoom-in"),onClick:n?m=>{m.stopPropagation(),n()}:void 0}):e.jsx("div",{className:"flex h-8 w-8 items-center justify-center",children:e.jsx(Me,{mimeType:a.mimeType,className:"h-5 w-5"})})}),e.jsxs(X,{className:"max-w-[200px]",children:[r&&e.jsx("span",{className:"text-muted-foreground block truncate text-xs",children:r}),e.jsx("span",{className:"block truncate text-sm font-medium",children:a.filename})]}),e.jsx(X,{children:e.jsx("span",{className:"text-muted-foreground text-xs",children:Ts(a.mimeType)})}),e.jsx(X,{className:"text-right",children:e.jsx("span",{className:"text-muted-foreground text-xs",children:je(a.size)})}),e.jsx(X,{children:e.jsx("span",{className:"text-muted-foreground text-xs",children:a.width&&a.height?`${a.width}×${a.height}`:"—"})}),e.jsx(X,{children:a.tags.length>0&&e.jsxs("div",{className:"flex flex-wrap gap-1",children:[a.tags.slice(0,3).map(m=>e.jsx("span",{className:"bg-muted text-muted-foreground rounded px-1.5 py-0.5 text-[10px]",children:m},m)),a.tags.length>3&&e.jsxs("span",{className:"text-muted-foreground text-[10px]",children:["+",a.tags.length-3]})]})}),e.jsx(X,{children:e.jsx(be,{children:e.jsxs(Ce,{children:[e.jsx(Ne,{asChild:!0,children:e.jsx("span",{className:"text-muted-foreground text-xs",children:Pe(a.uploadedAt)})}),e.jsx(ke,{children:Ue(a.uploadedAt)})]})})}),e.jsx(X,{onPointerDown:m=>m.stopPropagation(),onClick:m=>m.stopPropagation(),children:e.jsx(C,{variant:"ghost",size:"icon",className:"h-7 w-7",onClick:()=>{navigator.clipboard.writeText(W(a.url)),S.success("URL copied to clipboard")},children:e.jsx(Oe,{className:"h-3.5 w-3.5"})})})]})}function Rs({items:a,host:t,onSelect:s,selectedIds:l,onToggle:n,onToggleAll:r,allSelected:u,onLightbox:h,folderMap:o}){return e.jsxs(rs,{children:[e.jsx(is,{children:e.jsxs(ot,{children:[e.jsx(H,{className:"w-10",children:e.jsx(Se,{checked:u,onCheckedChange:r,"aria-label":"Select all"})}),e.jsx(H,{className:"w-6"}),e.jsx(H,{className:"w-12"}),e.jsx(H,{children:"Filename"}),e.jsx(H,{className:"w-20",children:"Type"}),e.jsx(H,{className:"w-24 text-right",children:"Size"}),e.jsx(H,{className:"w-28",children:"Dimensions"}),e.jsx(H,{className:"w-40",children:"Tags"}),e.jsx(H,{className:"w-32",children:"Uploaded"}),e.jsx(H,{className:"w-10"})]})}),e.jsx(ls,{children:a.map(i=>e.jsx(_s,{item:i,host:t,selected:l.has(i.mediaId),onToggle:()=>n(i.mediaId),onSelect:()=>s(i),folderName:o?.get(i.folderId??""),onLightbox:h&&i.mimeType.startsWith("image/")&&i.mimeType!=="image/svg+xml"?()=>h(i):void 0},i.mediaId))})]})}var As=Object.defineProperty,zs=(a,t,s)=>t in a?As(a,t,{enumerable:!0,configurable:!0,writable:!0,value:s}):a[t]=s,T=(a,t,s)=>zs(a,typeof t!="symbol"?t+"":t,s);const De={x:0,y:0,width:0,height:0,unit:"px"},ae=(a,t,s)=>Math.min(Math.max(a,t),s),$s=(...a)=>a.filter(t=>t&&typeof t=="string").join(" "),qe=(a,t)=>a===t||a.width===t.width&&a.height===t.height&&a.x===t.x&&a.y===t.y&&a.unit===t.unit;function ne(a,t,s){return a.unit==="%"?{...De,...a,unit:"%"}:{unit:"%",x:a.x?a.x/t*100:0,y:a.y?a.y/s*100:0,width:a.width?a.width/t*100:0,height:a.height?a.height/s*100:0}}function G(a,t,s){return a.unit?a.unit==="px"?{...De,...a,unit:"px"}:{unit:"px",x:a.x?a.x*t/100:0,y:a.y?a.y*s/100:0,width:a.width?a.width*t/100:0,height:a.height?a.height*s/100:0}:{...De,...a,unit:"px"}}function Qe(a,t,s,l,n,r=0,u=0,h=l,o=n){const i={...a};let p=Math.min(r,l),m=Math.min(u,n),w=Math.min(h,l),c=Math.min(o,n);t&&(t>1?(p=u?u*t:p,m=p/t,w=h*t):(m=r?r/t:m,p=m*t,c=o/t)),i.y<0&&(i.height=Math.max(i.height+i.y,m),i.y=0),i.x<0&&(i.width=Math.max(i.width+i.x,p),i.x=0);const y=l-(i.x+i.width);y<0&&(i.x=Math.min(i.x,l-p),i.width+=y);const d=n-(i.y+i.height);if(d<0&&(i.y=Math.min(i.y,n-m),i.height+=d),i.width<p&&((s==="sw"||s=="nw")&&(i.x-=p-i.width),i.width=p),i.height<m&&((s==="nw"||s=="ne")&&(i.y-=m-i.height),i.height=m),i.width>w&&((s==="sw"||s=="nw")&&(i.x-=w-i.width),i.width=w),i.height>c&&((s==="nw"||s=="ne")&&(i.y-=c-i.height),i.height=c),t){const j=i.width/i.height;if(j<t){const v=Math.max(i.width/t,m);(s==="nw"||s=="ne")&&(i.y-=v-i.height),i.height=v}else if(j>t){const v=Math.max(i.height*t,p);(s==="sw"||s=="nw")&&(i.x-=v-i.width),i.width=v}}return i}function Es(a,t,s,l){const n={...a};return t==="ArrowLeft"?l==="nw"?(n.x-=s,n.y-=s,n.width+=s,n.height+=s):l==="w"?(n.x-=s,n.width+=s):l==="sw"?(n.x-=s,n.width+=s,n.height+=s):l==="ne"?(n.y+=s,n.width-=s,n.height-=s):l==="e"?n.width-=s:l==="se"&&(n.width-=s,n.height-=s):t==="ArrowRight"&&(l==="nw"?(n.x+=s,n.y+=s,n.width-=s,n.height-=s):l==="w"?(n.x+=s,n.width-=s):l==="sw"?(n.x+=s,n.width-=s,n.height-=s):l==="ne"?(n.y-=s,n.width+=s,n.height+=s):l==="e"?n.width+=s:l==="se"&&(n.width+=s,n.height+=s)),t==="ArrowUp"?l==="nw"?(n.x-=s,n.y-=s,n.width+=s,n.height+=s):l==="n"?(n.y-=s,n.height+=s):l==="ne"?(n.y-=s,n.width+=s,n.height+=s):l==="sw"?(n.x+=s,n.width-=s,n.height-=s):l==="s"?n.height-=s:l==="se"&&(n.width-=s,n.height-=s):t==="ArrowDown"&&(l==="nw"?(n.x+=s,n.y+=s,n.width-=s,n.height-=s):l==="n"?(n.y+=s,n.height-=s):l==="ne"?(n.y+=s,n.width-=s,n.height-=s):l==="sw"?(n.x-=s,n.width+=s,n.height+=s):l==="s"?n.height+=s:l==="se"&&(n.width+=s,n.height+=s)),n}const re={capture:!0,passive:!1};let Fs=0;const Z=class U extends x.PureComponent{constructor(){super(...arguments),T(this,"docMoveBound",!1),T(this,"mouseDownOnCrop",!1),T(this,"dragStarted",!1),T(this,"evData",{startClientX:0,startClientY:0,startCropX:0,startCropY:0,clientX:0,clientY:0,isResize:!0}),T(this,"componentRef",x.createRef()),T(this,"mediaRef",x.createRef()),T(this,"resizeObserver"),T(this,"initChangeCalled",!1),T(this,"instanceId",`rc-${Fs++}`),T(this,"state",{cropIsActive:!1,newCropIsBeingDrawn:!1}),T(this,"onCropPointerDown",t=>{const{crop:s,disabled:l}=this.props,n=this.getBox();if(!s)return;const r=G(s,n.width,n.height);if(l)return;t.cancelable&&t.preventDefault(),this.bindDocMove(),this.componentRef.current.focus({preventScroll:!0});const u=t.target.dataset.ord,h=!!u;let o=t.clientX,i=t.clientY,p=r.x,m=r.y;if(u){const w=t.clientX-n.x,c=t.clientY-n.y;let y=0,d=0;u==="ne"||u=="e"?(y=w-(r.x+r.width),d=c-r.y,p=r.x,m=r.y+r.height):u==="se"||u==="s"?(y=w-(r.x+r.width),d=c-(r.y+r.height),p=r.x,m=r.y):u==="sw"||u=="w"?(y=w-r.x,d=c-(r.y+r.height),p=r.x+r.width,m=r.y):(u==="nw"||u=="n")&&(y=w-r.x,d=c-r.y,p=r.x+r.width,m=r.y+r.height),o=p+n.x+y,i=m+n.y+d}this.evData={startClientX:o,startClientY:i,startCropX:p,startCropY:m,clientX:t.clientX,clientY:t.clientY,isResize:h,ord:u},this.mouseDownOnCrop=!0,this.setState({cropIsActive:!0})}),T(this,"onComponentPointerDown",t=>{const{crop:s,disabled:l,locked:n,keepSelection:r,onChange:u}=this.props,h=this.getBox();if(l||n||r&&s)return;t.cancelable&&t.preventDefault(),this.bindDocMove(),this.componentRef.current.focus({preventScroll:!0});const o=t.clientX-h.x,i=t.clientY-h.y,p={unit:"px",x:o,y:i,width:0,height:0};this.evData={startClientX:t.clientX,startClientY:t.clientY,startCropX:o,startCropY:i,clientX:t.clientX,clientY:t.clientY,isResize:!0},this.mouseDownOnCrop=!0,u(G(p,h.width,h.height),ne(p,h.width,h.height)),this.setState({cropIsActive:!0,newCropIsBeingDrawn:!0})}),T(this,"onDocPointerMove",t=>{const{crop:s,disabled:l,onChange:n,onDragStart:r}=this.props,u=this.getBox();if(l||!s||!this.mouseDownOnCrop)return;t.cancelable&&t.preventDefault(),this.dragStarted||(this.dragStarted=!0,r&&r(t));const{evData:h}=this;h.clientX=t.clientX,h.clientY=t.clientY;let o;h.isResize?o=this.resizeCrop():o=this.dragCrop(),qe(s,o)||n(G(o,u.width,u.height),ne(o,u.width,u.height))}),T(this,"onComponentKeyDown",t=>{const{crop:s,disabled:l,onChange:n,onComplete:r}=this.props;if(l)return;const u=t.key;let h=!1;if(!s)return;const o=this.getBox(),i=this.makePixelCrop(o),p=(navigator.platform.match("Mac")?t.metaKey:t.ctrlKey)?U.nudgeStepLarge:t.shiftKey?U.nudgeStepMedium:U.nudgeStep;if(u==="ArrowLeft"?(i.x-=p,h=!0):u==="ArrowRight"?(i.x+=p,h=!0):u==="ArrowUp"?(i.y-=p,h=!0):u==="ArrowDown"&&(i.y+=p,h=!0),h){t.cancelable&&t.preventDefault(),i.x=ae(i.x,0,o.width-i.width),i.y=ae(i.y,0,o.height-i.height);const m=G(i,o.width,o.height),w=ne(i,o.width,o.height);n(m,w),r&&r(m,w)}}),T(this,"onHandlerKeyDown",(t,s)=>{const{aspect:l=0,crop:n,disabled:r,minWidth:u=0,minHeight:h=0,maxWidth:o,maxHeight:i,onChange:p,onComplete:m}=this.props,w=this.getBox();if(r||!n)return;if(t.key==="ArrowUp"||t.key==="ArrowDown"||t.key==="ArrowLeft"||t.key==="ArrowRight")t.stopPropagation(),t.preventDefault();else return;const c=(navigator.platform.match("Mac")?t.metaKey:t.ctrlKey)?U.nudgeStepLarge:t.shiftKey?U.nudgeStepMedium:U.nudgeStep,y=G(n,w.width,w.height),d=Es(y,t.key,c,s),j=Qe(d,l,s,w.width,w.height,u,h,o,i);if(!qe(n,j)){const v=ne(j,w.width,w.height);p(j,v),m&&m(j,v)}}),T(this,"onDocPointerDone",t=>{const{crop:s,disabled:l,onComplete:n,onDragEnd:r}=this.props,u=this.getBox();this.unbindDocMove(),!(l||!s)&&this.mouseDownOnCrop&&(this.mouseDownOnCrop=!1,this.dragStarted=!1,r&&r(t),n&&n(G(s,u.width,u.height),ne(s,u.width,u.height)),this.setState({cropIsActive:!1,newCropIsBeingDrawn:!1}))}),T(this,"onDragFocus",()=>{var t;(t=this.componentRef.current)==null||t.scrollTo(0,0)})}get document(){return document}getBox(){const t=this.mediaRef.current;if(!t)return{x:0,y:0,width:0,height:0};const{x:s,y:l,width:n,height:r}=t.getBoundingClientRect();return{x:s,y:l,width:n,height:r}}componentDidUpdate(t){const{crop:s,onComplete:l}=this.props;if(l&&!t.crop&&s){const{width:n,height:r}=this.getBox();n&&r&&l(G(s,n,r),ne(s,n,r))}}componentWillUnmount(){this.resizeObserver&&this.resizeObserver.disconnect(),this.unbindDocMove()}bindDocMove(){this.docMoveBound||(this.document.addEventListener("pointermove",this.onDocPointerMove,re),this.document.addEventListener("pointerup",this.onDocPointerDone,re),this.document.addEventListener("pointercancel",this.onDocPointerDone,re),this.docMoveBound=!0)}unbindDocMove(){this.docMoveBound&&(this.document.removeEventListener("pointermove",this.onDocPointerMove,re),this.document.removeEventListener("pointerup",this.onDocPointerDone,re),this.document.removeEventListener("pointercancel",this.onDocPointerDone,re),this.docMoveBound=!1)}getCropStyle(){const{crop:t}=this.props;if(t)return{top:`${t.y}${t.unit}`,left:`${t.x}${t.unit}`,width:`${t.width}${t.unit}`,height:`${t.height}${t.unit}`}}dragCrop(){const{evData:t}=this,s=this.getBox(),l=this.makePixelCrop(s),n=t.clientX-t.startClientX,r=t.clientY-t.startClientY;return l.x=ae(t.startCropX+n,0,s.width-l.width),l.y=ae(t.startCropY+r,0,s.height-l.height),l}getPointRegion(t,s,l,n){const{evData:r}=this,u=r.clientX-t.x,h=r.clientY-t.y;let o;n&&s?o=s==="nw"||s==="n"||s==="ne":o=h<r.startCropY;let i;return l&&s?i=s==="nw"||s==="w"||s==="sw":i=u<r.startCropX,i?o?"nw":"sw":o?"ne":"se"}resolveMinDimensions(t,s,l=0,n=0){const r=Math.min(l,t.width),u=Math.min(n,t.height);return!s||!r&&!u?[r,u]:s>1?r?[r,r/s]:[u*s,u]:u?[u*s,u]:[r,r/s]}resizeCrop(){const{evData:t}=this,{aspect:s=0,maxWidth:l,maxHeight:n}=this.props,r=this.getBox(),[u,h]=this.resolveMinDimensions(r,s,this.props.minWidth,this.props.minHeight);let o=this.makePixelCrop(r);const i=this.getPointRegion(r,t.ord,u,h),p=t.ord||i;let m=t.clientX-t.startClientX,w=t.clientY-t.startClientY;(u&&p==="nw"||p==="w"||p==="sw")&&(m=Math.min(m,-u)),(h&&p==="nw"||p==="n"||p==="ne")&&(w=Math.min(w,-h));const c={unit:"px",x:0,y:0,width:0,height:0};i==="ne"?(c.x=t.startCropX,c.width=m,s?(c.height=c.width/s,c.y=t.startCropY-c.height):(c.height=Math.abs(w),c.y=t.startCropY-c.height)):i==="se"?(c.x=t.startCropX,c.y=t.startCropY,c.width=m,s?c.height=c.width/s:c.height=w):i==="sw"?(c.x=t.startCropX+m,c.y=t.startCropY,c.width=Math.abs(m),s?c.height=c.width/s:c.height=w):i==="nw"&&(c.x=t.startCropX+m,c.width=Math.abs(m),s?(c.height=c.width/s,c.y=t.startCropY-c.height):(c.height=Math.abs(w),c.y=t.startCropY+w));const y=Qe(c,s,i,r.width,r.height,u,h,l,n);return s||U.xyOrds.indexOf(p)>-1?o=y:U.xOrds.indexOf(p)>-1?(o.x=y.x,o.width=y.width):U.yOrds.indexOf(p)>-1&&(o.y=y.y,o.height=y.height),o.x=ae(o.x,0,r.width-o.width),o.y=ae(o.y,0,r.height-o.height),o}renderCropSelection(){const{ariaLabels:t=U.defaultProps.ariaLabels,disabled:s,locked:l,renderSelectionAddon:n,ruleOfThirds:r,crop:u}=this.props,h=this.getCropStyle();if(u)return D.createElement("div",{style:h,className:"ReactCrop__crop-selection",onPointerDown:this.onCropPointerDown,"aria-label":t.cropArea,tabIndex:0,onKeyDown:this.onComponentKeyDown,role:"group"},!s&&!l&&D.createElement("div",{className:"ReactCrop__drag-elements",onFocus:this.onDragFocus},D.createElement("div",{className:"ReactCrop__drag-bar ord-n","data-ord":"n"}),D.createElement("div",{className:"ReactCrop__drag-bar ord-e","data-ord":"e"}),D.createElement("div",{className:"ReactCrop__drag-bar ord-s","data-ord":"s"}),D.createElement("div",{className:"ReactCrop__drag-bar ord-w","data-ord":"w"}),D.createElement("div",{className:"ReactCrop__drag-handle ord-nw","data-ord":"nw",tabIndex:0,"aria-label":t.nwDragHandle,onKeyDown:o=>this.onHandlerKeyDown(o,"nw"),role:"button"}),D.createElement("div",{className:"ReactCrop__drag-handle ord-n","data-ord":"n",tabIndex:0,"aria-label":t.nDragHandle,onKeyDown:o=>this.onHandlerKeyDown(o,"n"),role:"button"}),D.createElement("div",{className:"ReactCrop__drag-handle ord-ne","data-ord":"ne",tabIndex:0,"aria-label":t.neDragHandle,onKeyDown:o=>this.onHandlerKeyDown(o,"ne"),role:"button"}),D.createElement("div",{className:"ReactCrop__drag-handle ord-e","data-ord":"e",tabIndex:0,"aria-label":t.eDragHandle,onKeyDown:o=>this.onHandlerKeyDown(o,"e"),role:"button"}),D.createElement("div",{className:"ReactCrop__drag-handle ord-se","data-ord":"se",tabIndex:0,"aria-label":t.seDragHandle,onKeyDown:o=>this.onHandlerKeyDown(o,"se"),role:"button"}),D.createElement("div",{className:"ReactCrop__drag-handle ord-s","data-ord":"s",tabIndex:0,"aria-label":t.sDragHandle,onKeyDown:o=>this.onHandlerKeyDown(o,"s"),role:"button"}),D.createElement("div",{className:"ReactCrop__drag-handle ord-sw","data-ord":"sw",tabIndex:0,"aria-label":t.swDragHandle,onKeyDown:o=>this.onHandlerKeyDown(o,"sw"),role:"button"}),D.createElement("div",{className:"ReactCrop__drag-handle ord-w","data-ord":"w",tabIndex:0,"aria-label":t.wDragHandle,onKeyDown:o=>this.onHandlerKeyDown(o,"w"),role:"button"})),n&&D.createElement("div",{className:"ReactCrop__selection-addon",onPointerDown:o=>o.stopPropagation()},n(this.state)),r&&D.createElement(D.Fragment,null,D.createElement("div",{className:"ReactCrop__rule-of-thirds-hz"}),D.createElement("div",{className:"ReactCrop__rule-of-thirds-vt"})))}makePixelCrop(t){const s={...De,...this.props.crop||{}};return G(s,t.width,t.height)}render(){const{aspect:t,children:s,circularCrop:l,className:n,crop:r,disabled:u,locked:h,style:o,ruleOfThirds:i}=this.props,{cropIsActive:p,newCropIsBeingDrawn:m}=this.state,w=r?this.renderCropSelection():null,c=$s("ReactCrop",n,p&&"ReactCrop--active",u&&"ReactCrop--disabled",h&&"ReactCrop--locked",m&&"ReactCrop--new-crop",r&&t&&"ReactCrop--fixed-aspect",r&&l&&"ReactCrop--circular-crop",r&&i&&"ReactCrop--rule-of-thirds",!this.dragStarted&&r&&!r.width&&!r.height&&"ReactCrop--invisible-crop",l&&"ReactCrop--no-animate");return D.createElement("div",{ref:this.componentRef,className:c,style:o},D.createElement("div",{ref:this.mediaRef,className:"ReactCrop__child-wrapper",onPointerDown:this.onComponentPointerDown},s),r?D.createElement("svg",{className:"ReactCrop__crop-mask",width:"100%",height:"100%"},D.createElement("defs",null,D.createElement("mask",{id:`hole-${this.instanceId}`},D.createElement("rect",{width:"100%",height:"100%",fill:"white"}),l?D.createElement("ellipse",{cx:`${r.x+r.width/2}${r.unit}`,cy:`${r.y+r.height/2}${r.unit}`,rx:`${r.width/2}${r.unit}`,ry:`${r.height/2}${r.unit}`,fill:"black"}):D.createElement("rect",{x:`${r.x}${r.unit}`,y:`${r.y}${r.unit}`,width:`${r.width}${r.unit}`,height:`${r.height}${r.unit}`,fill:"black"}))),D.createElement("rect",{fill:"black",fillOpacity:.5,width:"100%",height:"100%",mask:`url(#hole-${this.instanceId})`})):void 0,w)}};T(Z,"xOrds",["e","w"]),T(Z,"yOrds",["n","s"]),T(Z,"xyOrds",["nw","ne","se","sw"]),T(Z,"nudgeStep",1),T(Z,"nudgeStepMedium",10),T(Z,"nudgeStepLarge",100),T(Z,"defaultProps",{ariaLabels:{cropArea:"Use the arrow keys to move the crop selection area",nwDragHandle:"Use the arrow keys to move the north west drag handle to change the crop selection area",nDragHandle:"Use the up and down arrow keys to move the north drag handle to change the crop selection area",neDragHandle:"Use the arrow keys to move the north east drag handle to change the crop selection area",eDragHandle:"Use the up and down arrow keys to move the east drag handle to change the crop selection area",seDragHandle:"Use the arrow keys to move the south east drag handle to change the crop selection area",sDragHandle:"Use the up and down arrow keys to move the south drag handle to change the crop selection area",swDragHandle:"Use the arrow keys to move the south west drag handle to change the crop selection area",wDragHandle:"Use the up and down arrow keys to move the west drag handle to change the crop selection area"}});let Ps=Z;const Us=[{label:"Free",value:""},{label:"1:1 Square",value:"1"},{label:"4:3",value:"4/3"},{label:"3:2",value:"3/2"},{label:"16:9",value:"16/9"},{label:"2:3",value:"2/3"},{label:"3:4",value:"3/4"}],dt=[{label:"Original",value:"",ext:""},{label:"JPEG",value:"jpeg",ext:".jpg"},{label:"PNG",value:"png",ext:".png"},{label:"WebP",value:"webp",ext:".webp"},{label:"AVIF",value:"avif",ext:".avif"}],Os={"image/jpeg":".jpg","image/png":".png","image/gif":".gif","image/webp":".webp","image/avif":".avif","image/tiff":".tiff"};function $e(a,t){return a?dt.find(s=>s.value===a)?.ext||`.${a}`:Os[t]||".jpg"}function Ls(a,t){const s=a.lastIndexOf(".");return(s>0?a.substring(0,s):a)+t}function Hs({host:a,media:t,onClose:s,onSaved:l}){const n=x.useRef(null),[r,u]=x.useState(),[h,o]=x.useState(),[i,p]=x.useState(""),[m,w]=x.useState(""),[c,y]=x.useState(""),[d,j]=x.useState(""),[v,_]=x.useState("80"),[R,I]=x.useState(()=>{const b=$e("",t.mimeType),k=t.filename.lastIndexOf(".");return`${k>0?t.filename.substring(0,k):t.filename}-transformed${b}`});function E(b){const k=b==="__original__"?"":b;j(k);const q=$e(k,t.mimeType);I(J=>Ls(J,q))}const F=Nt(a,t.mediaId),[g,A]=x.useState(null),$=x.useCallback(()=>{if(!h||!g)return null;const b=(t.width??g.width)/g.width,k=(t.height??g.height)/g.height;return{cropX:Math.round(h.x*b),cropY:Math.round(h.y*k),cropW:Math.round(h.width*b),cropH:Math.round(h.height*k)}},[h,t.width,t.height,g]),se=x.useMemo(()=>$(),[$]);async function me(){const b=se,k=m?parseInt(m):void 0,q=c?parseInt(c):void 0;if(!b&&!k&&!q&&!d){S.error("Please specify a crop, resize, or format change");return}if(!R.trim()){S.error("Filename is required");return}const J=$e(d,t.mimeType);if(!R.trim().toLowerCase().endsWith(J)){S.error(`Filename must end with ${J} to match the output format`);return}try{const B=await F.mutateAsync({...b??{},...k?{width:k}:{},...q?{height:q}:{},...d?{format:d}:{},...v?{quality:parseInt(v)}:{},filename:R.trim()});S.success("Transform saved as new media"),l?.(B),s()}catch(B){S.error("Transform failed",{description:B instanceof Error?B.message:void 0})}}function V(b){p(b==="__free__"?"":b),u(void 0),o(void 0)}function Ie(b){if(!b)return;const k=b.split("/");return k.length===2?Number(k[0])/Number(k[1]):Number(b)||void 0}const Te=Ie(i);return e.jsx(ie,{open:!0,onOpenChange:()=>s(),children:e.jsxs(le,{className:"max-w-4xl max-h-[90vh] overflow-y-auto",children:[e.jsxs(oe,{children:[e.jsx(ce,{children:"Transform Image"}),e.jsx(de,{className:"sr-only",children:"Crop, resize, or convert image format"})]}),e.jsxs("div",{className:"grid grid-cols-[1fr_280px] gap-6",children:[e.jsx("div",{className:"min-h-0 overflow-hidden rounded border bg-muted/30 flex items-center justify-center",children:e.jsx(Ps,{crop:r,onChange:b=>u(b),onComplete:b=>o(b),aspect:Te,children:e.jsx("img",{ref:n,src:W(t.url),alt:t.alt||t.filename,className:"max-h-[60vh] max-w-full object-contain",onLoad:b=>{const k=b.currentTarget;A({width:k.naturalWidth,height:k.naturalHeight})}})})}),e.jsxs("div",{className:"space-y-5",children:[e.jsxs("div",{className:"text-muted-foreground text-sm",children:["Original: ",t.width,"×",t.height]}),e.jsxs("div",{className:"space-y-2",children:[e.jsx(O,{children:"Crop aspect ratio"}),e.jsxs(pe,{value:i||"__free__",onValueChange:V,children:[e.jsx(ge,{children:e.jsx(fe,{placeholder:"Free"})}),e.jsx(we,{children:Us.map(b=>e.jsx(te,{value:b.value||"__free__",children:b.label},b.value||"__free__"))})]}),h&&e.jsxs("div",{className:"text-xs text-muted-foreground",children:["Crop: ",se?.cropW,"×",se?.cropH," at (",se?.cropX,", ",se?.cropY,")"]}),h&&e.jsx(C,{variant:"ghost",size:"sm",onClick:()=>{u(void 0),o(void 0)},children:"Clear crop"})]}),e.jsxs("div",{className:"space-y-2",children:[e.jsx(O,{children:"Resize (optional)"}),e.jsxs("div",{className:"grid grid-cols-2 gap-2",children:[e.jsx("div",{children:e.jsx(K,{type:"number",placeholder:"Width",value:m,onChange:b=>w(b.target.value),min:1,max:2048})}),e.jsx("div",{children:e.jsx(K,{type:"number",placeholder:"Height",value:c,onChange:b=>y(b.target.value),min:1,max:2048})})]})]}),e.jsxs("div",{className:"space-y-2",children:[e.jsx(O,{children:"Output format"}),e.jsxs(pe,{value:d||"__original__",onValueChange:E,children:[e.jsx(ge,{children:e.jsx(fe,{placeholder:"Original"})}),e.jsx(we,{children:dt.map(b=>e.jsx(te,{value:b.value||"__original__",children:b.label},b.value||"__original__"))})]})]}),e.jsxs("div",{className:"space-y-2",children:[e.jsx(O,{children:"Quality (1-100)"}),e.jsx(K,{type:"number",value:v,onChange:b=>_(b.target.value),min:1,max:100})]}),e.jsxs("div",{className:"space-y-2",children:[e.jsx(O,{children:"Save as filename"}),e.jsx(K,{value:R,onChange:b=>I(b.target.value)})]})]})]}),e.jsxs(he,{children:[e.jsx(C,{variant:"outline",onClick:s,children:"Cancel"}),e.jsxs(C,{onClick:me,disabled:F.isPending,children:[F.isPending&&e.jsx(ee,{className:"mr-2 h-4 w-4 animate-spin"}),"Save as New Image"]})]})]})})}const Xs=new Set(["image/jpeg","image/png","image/gif","image/webp","image/avif","image/tiff"]);function Ys({host:a,media:t,onClose:s,folders:l,tagSuggestions:n}){const[r,u]=x.useState(t.alt??""),[h,o]=x.useState(t.caption??""),[i,p]=x.useState(t.userTags??[]),[m,w]=x.useState(t.folderId||"__none__"),[c,y]=x.useState(!1),d=Xs.has(t.mimeType),j=kt(a,t.mediaId),v=Dt(a,t.mediaId),{data:_,isLoading:R}=St(a,t.mediaId),I=t.tags.filter(g=>!t.userTags?.includes(g));async function E(){try{await j.mutateAsync({alt:r,caption:h,userTags:i,folderId:m==="__none__"?"":m}),S.success("Media updated"),s()}catch(g){S.error("Failed to update",{description:g instanceof Error?g.message:void 0})}}async function F(){try{await v.mutateAsync(),S.success("Media deleted"),s()}catch(g){S.error("Failed to delete",{description:g instanceof Error?g.message:void 0})}}return e.jsxs(ie,{open:!0,onOpenChange:()=>s(),children:[e.jsxs(le,{children:[e.jsxs(oe,{children:[e.jsx(ce,{children:t.filename}),e.jsx(de,{className:"sr-only",children:"View and edit media details"})]}),e.jsxs("div",{className:"space-y-4",children:[e.jsxs("div",{className:"flex items-center justify-between",children:[e.jsxs("div",{className:"text-muted-foreground text-sm",children:[t.mimeType," · ",je(t.size),t.width&&t.height&&` · ${t.width}×${t.height}`," · ",Ue(t.uploadedAt)]}),e.jsxs("div",{className:"flex gap-2",children:[d&&e.jsxs(C,{variant:"outline",size:"sm",onClick:()=>y(!0),children:[e.jsx(xs,{className:"mr-1.5 h-3.5 w-3.5"}),"Transform"]}),e.jsxs(C,{variant:"outline",size:"sm",onClick:()=>{navigator.clipboard.writeText(W(t.url)),S.success("URL copied to clipboard")},children:[e.jsx(Oe,{className:"mr-1.5 h-3.5 w-3.5"}),"Copy URL"]})]})]}),I.length>0&&e.jsxs("div",{className:"space-y-1",children:[e.jsx(O,{className:"text-xs text-muted-foreground",children:"Auto-detected tags"}),e.jsx("div",{className:"flex flex-wrap gap-1",children:I.map(g=>e.jsx(ct,{variant:"outline",className:"text-xs",children:g},g))})]}),e.jsxs("div",{className:"space-y-2",children:[e.jsx(O,{children:"Tags"}),e.jsx(Fe,{tags:i,onChange:p,placeholder:"Add tags...",suggestions:n})]}),l&&l.length>0&&e.jsxs("div",{className:"space-y-2",children:[e.jsx(O,{children:"Folder"}),e.jsxs(pe,{value:m,onValueChange:w,children:[e.jsx(ge,{children:e.jsx(fe,{placeholder:"No folder"})}),e.jsxs(we,{children:[e.jsx(te,{value:"__none__",children:"No folder"}),l.map(g=>e.jsx(te,{value:g.folderId,children:g.name},g.folderId))]})]})]}),e.jsxs("div",{className:"space-y-2",children:[e.jsx(O,{htmlFor:"alt",children:"Alt text"}),e.jsx(K,{id:"alt",value:r,onChange:g=>u(g.target.value)})]}),e.jsxs("div",{className:"space-y-2",children:[e.jsx(O,{htmlFor:"caption",children:"Caption"}),e.jsx(K,{id:"caption",value:h,onChange:g=>o(g.target.value)})]}),e.jsxs("div",{className:"space-y-2",children:[e.jsx(O,{className:"text-xs text-muted-foreground",children:"Used in"}),R?e.jsxs("div",{className:"flex items-center gap-2 text-muted-foreground text-sm",children:[e.jsx(ee,{className:"h-3.5 w-3.5 animate-spin"}),"Checking usage..."]}):_?.references.length?e.jsxs("div",{className:"space-y-1",children:[_.references.map(g=>e.jsxs(yt,{to:`/sites/${a}/content/${g.collection}/${g.contentId}`,className:"flex items-center gap-2 rounded px-2 py-1 text-sm hover:bg-muted",onClick:s,children:[e.jsx(it,{className:"h-3.5 w-3.5 text-muted-foreground"}),e.jsx("span",{className:"truncate",children:g.title||g.contentId}),e.jsxs("span",{className:"text-muted-foreground text-xs",children:["(",g.collection,")"]})]},g.contentId)),_.note&&e.jsx("p",{className:"text-muted-foreground text-xs italic",children:_.note})]}):e.jsx("p",{className:"text-muted-foreground text-sm",children:"Not referenced in any content."})]})]}),e.jsxs(he,{className:"flex justify-between",children:[e.jsxs(C,{variant:"destructive",size:"sm",onClick:F,children:[e.jsx(os,{className:"mr-2 h-4 w-4"}),"Delete"]}),e.jsxs("div",{className:"flex gap-2",children:[e.jsx(C,{variant:"outline",onClick:s,children:"Cancel"}),e.jsx(C,{onClick:E,children:"Save"})]})]})]}),c&&e.jsx(Hs,{host:a,media:t,onClose:()=>y(!1),onSaved:()=>s()})]})}function Bs({tags:a,activeTag:t,onTagChange:s}){return a.length===0?null:e.jsxs("div",{className:"mb-4 flex flex-wrap items-center gap-1.5",children:[a.map(l=>e.jsx(ct,{variant:t===l?"default":"secondary",className:"cursor-pointer select-none",onClick:()=>s(t===l?void 0:l),children:l},l)),t&&e.jsxs(C,{variant:"ghost",size:"sm",className:"h-6 px-2 text-xs",onClick:()=>s(void 0),children:[e.jsx(xe,{className:"mr-1 h-3 w-3"}),"Clear"]})]})}function Ee({id:a,children:t}){const{setNodeRef:s,isOver:l}=Zt({id:a,data:{type:"folder"}});return e.jsx("div",{ref:s,children:t(l)})}function Ks({host:a,selectedFolderId:t,onSelect:s}){const{data:l}=Ge(a),n=Mt(a),r=It(a),u=Tt(a),[h,o]=x.useState(!1),[i,p]=x.useState(""),[m,w]=x.useState(null),[c,y]=x.useState(""),[d,j]=x.useState(null),v=x.useRef(null),_=x.useRef(null),R=l?.items??[];x.useEffect(()=>{h&&v.current?.focus()},[h]),x.useEffect(()=>{m&&_.current?.focus()},[m]);async function I(){const g=i.trim();if(!g){o(!1),p("");return}try{await n.mutateAsync(g),S.success("Folder created")}catch(A){S.error("Failed to create folder",{description:A instanceof Error?A.message:void 0})}o(!1),p("")}async function E(g){const A=c.trim();if(!A){w(null);return}try{await r.mutateAsync({folderId:g,name:A}),S.success("Folder renamed")}catch($){S.error("Failed to rename folder",{description:$ instanceof Error?$.message:void 0})}w(null)}async function F(){if(d){try{await u.mutateAsync(d.folderId),S.success("Folder deleted"),t===d.folderId&&s(null)}catch(g){S.error("Failed to delete folder",{description:g instanceof Error?g.message:void 0})}j(null)}}return e.jsxs("div",{className:"flex w-48 shrink-0 flex-col border-r",children:[e.jsxs("div",{className:"flex items-center justify-between border-b px-3 py-2",children:[e.jsx("span",{className:"text-sm font-medium",children:"Folders"}),e.jsx(C,{variant:"ghost",size:"sm",className:"h-6 w-6 p-0",onClick:()=>o(!0),children:e.jsx(cs,{className:"h-4 w-4"})})]}),e.jsxs("div",{className:"flex-1 overflow-y-auto py-1",children:[e.jsx(Ee,{id:"all-media",children:g=>e.jsx("button",{className:P("flex w-full items-center justify-between px-3 py-1.5 text-left text-sm hover:bg-accent/50",t===null&&"bg-accent font-medium",g&&"ring-2 ring-primary bg-primary/10"),onClick:()=>s(null),children:e.jsxs("span",{className:"flex items-center gap-2",children:[e.jsx(ue,{className:"h-4 w-4"}),"All Media"]})})}),R.map(g=>e.jsx(Ee,{id:g.folderId,children:A=>e.jsx("div",{className:P("group flex w-full items-center justify-between px-3 py-1.5 text-sm hover:bg-accent/50",t===g.folderId&&"bg-accent font-medium",A&&"ring-2 ring-primary bg-primary/10"),children:m===g.folderId?e.jsx(K,{ref:_,value:c,onChange:$=>y($.target.value),onKeyDown:$=>{$.key==="Enter"&&E(g.folderId),$.key==="Escape"&&w(null)},onBlur:()=>E(g.folderId),className:"h-6 text-sm"}):e.jsxs(e.Fragment,{children:[e.jsxs("button",{className:"flex flex-1 items-center gap-2 text-left",onClick:()=>s(g.folderId),children:[e.jsx(ue,{className:"h-4 w-4 shrink-0"}),e.jsx("span",{className:"truncate",children:g.name})]}),e.jsxs("div",{className:"flex items-center gap-1",children:[e.jsx("span",{className:"text-muted-foreground text-xs",children:g.count}),e.jsxs(Ft,{children:[e.jsx(Pt,{asChild:!0,children:e.jsx(C,{variant:"ghost",size:"sm",className:"h-5 w-5 p-0 opacity-0 group-hover:opacity-100",children:e.jsx(_t,{className:"h-3.5 w-3.5"})})}),e.jsxs(Ut,{align:"end",children:[e.jsx(We,{onClick:()=>{w(g.folderId),y(g.name)},children:"Rename"}),e.jsx(We,{disabled:g.count>0,onClick:()=>j(g),children:"Delete"})]})]})]})]})})},g.folderId)),e.jsx(Ee,{id:"unfiled",children:g=>e.jsx("button",{className:P("flex w-full items-center justify-between px-3 py-1.5 text-left text-sm hover:bg-accent/50",t==="unfiled"&&"bg-accent font-medium",g&&"ring-2 ring-primary bg-primary/10"),onClick:()=>s("unfiled"),children:e.jsxs("span",{className:"flex items-center gap-2",children:[e.jsx(ue,{className:"h-4 w-4"}),"Unfiled"]})})}),h&&e.jsx("div",{className:"px-3 py-1.5",children:e.jsx(K,{ref:v,value:i,onChange:g=>p(g.target.value),onKeyDown:g=>{g.key==="Enter"&&I(),g.key==="Escape"&&(o(!1),p(""))},onBlur:I,placeholder:"Folder name...",className:"h-7 text-sm"})})]}),e.jsx(Ze,{open:!!d,onOpenChange:()=>j(null),children:e.jsxs(Je,{children:[e.jsxs(et,{children:[e.jsx(tt,{children:"Delete folder?"}),e.jsxs(st,{children:["This will delete the folder “",d?.name,"”. Media items in this folder will become unfiled."]})]}),e.jsxs(at,{children:[e.jsx(nt,{children:"Cancel"}),e.jsx(rt,{onClick:F,children:"Delete"})]})]})})]})}function Ws({selectedCount:a,folders:t,onDelete:s,onMove:l,onAddTags:n,onRemoveTags:r,onClear:u,isPending:h}){const[o,i]=x.useState(null),[p,m]=x.useState(""),[w,c]=x.useState([]);function y(){i(null),m(""),c([])}return e.jsxs(e.Fragment,{children:[e.jsxs("div",{className:"mb-4 flex items-center gap-3 rounded-md border bg-muted/50 px-4 py-2",children:[e.jsxs("span",{className:"text-sm font-medium",children:[a," selected"]}),e.jsxs("div",{className:"flex items-center gap-2",children:[e.jsx(C,{size:"sm",variant:"destructive",onClick:()=>i("delete"),disabled:h,children:"Delete"}),e.jsx(C,{size:"sm",variant:"outline",onClick:()=>i("move"),disabled:h,children:"Move to…"}),e.jsx(C,{size:"sm",variant:"outline",onClick:()=>i("addTags"),disabled:h,children:"Add tags"}),e.jsx(C,{size:"sm",variant:"outline",onClick:()=>i("removeTags"),disabled:h,children:"Remove tags"})]}),e.jsx(C,{size:"sm",variant:"ghost",onClick:u,className:"ml-auto",disabled:h,children:e.jsx(xe,{className:"h-4 w-4"})})]}),e.jsx(ie,{open:o==="delete",onOpenChange:d=>!d&&y(),children:e.jsxs(le,{children:[e.jsxs(oe,{children:[e.jsxs(ce,{children:["Delete ",a," item",a!==1?"s":"","?"]}),e.jsx(de,{children:"This action cannot be undone. The selected media items will be permanently deleted."})]}),e.jsxs(he,{children:[e.jsx(C,{variant:"outline",onClick:y,children:"Cancel"}),e.jsxs(C,{variant:"destructive",onClick:async()=>{y(),await s()},disabled:h,children:[h&&e.jsx(ee,{className:"mr-1 h-3 w-3 animate-spin"}),"Delete"]})]})]})}),e.jsx(ie,{open:o==="move",onOpenChange:d=>!d&&y(),children:e.jsxs(le,{children:[e.jsxs(oe,{children:[e.jsxs(ce,{children:["Move ",a," item",a!==1?"s":""]}),e.jsx(de,{children:"Choose a destination folder."})]}),e.jsxs(pe,{value:p,onValueChange:m,children:[e.jsx(ge,{children:e.jsx(fe,{placeholder:"Select folder..."})}),e.jsxs(we,{children:[e.jsx(te,{value:"__unfiled__",children:"Unfiled"}),t.map(d=>e.jsx(te,{value:d.folderId,children:d.name},d.folderId))]})]}),e.jsxs(he,{children:[e.jsx(C,{variant:"outline",onClick:y,children:"Cancel"}),e.jsxs(C,{onClick:async()=>{const d=p==="__unfiled__"?"":p;y(),await l(d)},disabled:!p||h,children:[h&&e.jsx(ee,{className:"mr-1 h-3 w-3 animate-spin"}),"Move"]})]})]})}),e.jsx(ie,{open:o==="addTags",onOpenChange:d=>!d&&y(),children:e.jsxs(le,{children:[e.jsxs(oe,{children:[e.jsxs(ce,{children:["Add tags to ",a," item",a!==1?"s":""]}),e.jsx(de,{className:"sr-only",children:"Select tags to add to the selected items"})]}),e.jsx(Fe,{tags:w,onChange:c,placeholder:"Add tags..."}),e.jsxs(he,{children:[e.jsx(C,{variant:"outline",onClick:y,children:"Cancel"}),e.jsxs(C,{onClick:async()=>{const d=[...w];y(),await n(d)},disabled:w.length===0||h,children:[h&&e.jsx(ee,{className:"mr-1 h-3 w-3 animate-spin"}),"Add"]})]})]})}),e.jsx(ie,{open:o==="removeTags",onOpenChange:d=>!d&&y(),children:e.jsxs(le,{children:[e.jsxs(oe,{children:[e.jsxs(ce,{children:["Remove tags from ",a," item",a!==1?"s":""]}),e.jsx(de,{className:"sr-only",children:"Select tags to remove from the selected items"})]}),e.jsx(Fe,{tags:w,onChange:c,placeholder:"Tags to remove..."}),e.jsxs(he,{children:[e.jsx(C,{variant:"outline",onClick:y,children:"Cancel"}),e.jsxs(C,{onClick:async()=>{const d=[...w];y(),await r(d)},disabled:w.length===0||h,children:[h&&e.jsx(ee,{className:"mr-1 h-3 w-3 animate-spin"}),"Remove"]})]})]})})]})}function Vs({onFiles:a,children:t}){const[s,l]=x.useState(!1),n=x.useRef(0),r=x.useCallback(i=>{i.preventDefault(),i.dataTransfer.types.includes("Files")&&(n.current++,l(!0))},[]),u=x.useCallback(i=>{i.preventDefault(),n.current--,n.current===0&&l(!1)},[]),h=x.useCallback(i=>{i.preventDefault(),i.dataTransfer.dropEffect="copy"},[]),o=x.useCallback(i=>{i.preventDefault(),n.current=0,l(!1);const p=Array.from(i.dataTransfer.files);p.length>0&&a(p)},[a]);return e.jsxs("div",{className:"relative flex-1",onDragEnter:r,onDragLeave:u,onDragOver:h,onDrop:o,children:[t,s&&e.jsx("div",{className:"absolute inset-0 z-40 flex items-center justify-center rounded-lg border-2 border-dashed border-primary bg-primary/5",children:e.jsxs("div",{className:"flex flex-col items-center gap-2 rounded-lg bg-background/90 px-6 py-4 shadow-lg",children:[e.jsx(ye,{className:"h-8 w-8 text-primary"}),e.jsx("p",{className:"text-lg font-medium",children:"Drop files to upload"}),e.jsx("p",{className:"text-muted-foreground text-sm",children:"Files will be uploaded to the current folder"})]})})]})}function qs({queue:a}){const{items:t,retry:s,dismiss:l,clearCompleted:n}=a,[r,u]=x.useState(!1),h=t.filter(c=>c.status==="uploading").length,o=t.filter(c=>c.status==="pending").length,i=t.filter(c=>c.status==="complete").length,p=t.filter(c=>c.status==="error").length,m=h===0&&o===0;if(x.useEffect(()=>{if(m&&t.length>0){const c=setTimeout(()=>u(!0),2e3);return()=>clearTimeout(c)}},[m,t.length]),t.length===0)return null;const w=m?`${i} uploaded${p?`, ${p} failed`:""}`:`Uploading ${h+o} file${h+o!==1?"s":""}`;return e.jsxs("div",{className:"fixed bottom-4 right-4 z-50 w-80 rounded-lg border bg-background shadow-lg",children:[e.jsxs("div",{className:"flex items-center justify-between border-b px-3 py-2",children:[e.jsx("span",{className:"text-sm font-medium",children:w}),e.jsxs("div",{className:"flex items-center gap-1",children:[m&&e.jsx(C,{variant:"ghost",size:"sm",className:"h-6 px-2 text-xs",onClick:n,children:"Clear"}),e.jsx(C,{variant:"ghost",size:"sm",className:"h-6 w-6 p-0",onClick:()=>u(!r),children:r?e.jsx(Xt,{className:"h-4 w-4"}):e.jsx(Yt,{className:"h-4 w-4"})})]})]}),!r&&e.jsx("div",{className:"max-h-60 overflow-y-auto",children:t.map(c=>e.jsxs("div",{className:"flex items-center gap-2 px-3 py-1.5 text-sm",children:[c.status==="uploading"&&e.jsx(ee,{className:"h-4 w-4 shrink-0 animate-spin"}),c.status==="complete"&&e.jsx(ds,{className:"h-4 w-4 shrink-0 text-green-500"}),c.status==="error"&&e.jsx(xe,{className:"h-4 w-4 shrink-0 text-destructive"}),c.status==="pending"&&e.jsx("div",{className:"h-4 w-4 shrink-0"}),e.jsxs("div",{className:"min-w-0 flex-1",children:[e.jsx("p",{className:"truncate",children:c.file.name}),c.status==="uploading"&&e.jsx("div",{className:"bg-muted mt-0.5 h-1 w-full rounded-full",children:e.jsx("div",{className:"bg-primary h-full rounded-full transition-all",style:{width:`${c.progress}%`}})}),c.status==="error"&&e.jsx("p",{className:"text-destructive truncate text-xs",children:c.error})]}),c.status==="error"&&e.jsx(C,{variant:"ghost",size:"sm",className:"h-6 w-6 shrink-0 p-0",onClick:()=>s(c.id),children:e.jsx(Is,{className:"h-3 w-3"})}),(c.status==="complete"||c.status==="error")&&e.jsx(C,{variant:"ghost",size:"sm",className:"h-6 w-6 shrink-0 p-0",onClick:()=>l(c.id),children:e.jsx(xe,{className:"h-3 w-3"})})]},c.id))})]})}const Qs=3;let Gs=0;function Zs(a,t){const[s,l]=x.useState([]),n=Rt(a),r=At(a),u=x.useRef(0),h=x.useRef(s);h.current=s;const o=x.useRef(new Map),i=x.useCallback(async d=>{u.current++,l(j=>j.map(v=>v.id===d.id?{...v,status:"uploading",progress:0}:v));try{const{uploadUrl:j,mediaId:v}=await n.mutateAsync({filename:d.file.name,contentType:d.file.type,size:d.file.size});await new Promise((_,R)=>{const I=new XMLHttpRequest;o.current.set(d.id,I),I.upload.onprogress=E=>{if(E.lengthComputable){const F=Math.round(E.loaded/E.total*100);l(g=>g.map(A=>A.id===d.id?{...A,progress:F}:A))}},I.onload=()=>{o.current.delete(d.id),I.status>=200&&I.status<300?_():R(new Error(`Upload failed: ${I.status}`))},I.onerror=()=>{o.current.delete(d.id),R(new Error("Network error"))},I.onabort=()=>{o.current.delete(d.id),R(new Error("Upload aborted"))},I.open("PUT",j),I.setRequestHeader("Content-Type",d.file.type),I.send(d.file)}),await r.mutateAsync({mediaId:v,filename:d.file.name,folderId:d.folderId}),l(_=>_.map(R=>R.id===d.id?{...R,status:"complete",progress:100}:R))}catch(j){l(v=>v.map(_=>_.id===d.id?{..._,status:"error",error:j instanceof Error?j.message:"Upload failed"}:_))}finally{u.current--}},[n,r]),p=x.useRef(i);p.current=i,x.useEffect(()=>{const d=s.filter(v=>v.status==="pending"),j=Qs-u.current;for(let v=0;v<Math.min(d.length,j);v++)p.current(d[v])},[s]),x.useEffect(()=>{const d=o.current;return()=>{d.forEach(j=>j.abort())}},[]);const m=x.useCallback(d=>{const j=Array.from(d).map(v=>({id:`upload-${Gs++}`,file:v,folderId:t||void 0,status:"pending",progress:0}));l(v=>[...v,...j])},[t]),w=x.useCallback(d=>{l(j=>j.map(v=>v.id===d?{...v,status:"pending",progress:0,error:void 0}:v))},[]),c=x.useCallback(d=>{l(j=>j.filter(v=>v.id!==d))},[]),y=x.useCallback(()=>{l(d=>d.filter(j=>j.status!=="complete"&&j.status!=="error"))},[]);return{items:s,addFiles:m,retry:w,dismiss:c,clearCompleted:y}}function Js({items:a,currentIndex:t,onClose:s,onNavigate:l}){const n=a[t],r=t>0,u=t<a.length-1,h=x.useCallback(o=>{o.key==="Escape"?s():o.key==="ArrowLeft"&&r?l(t-1):o.key==="ArrowRight"&&u&&l(t+1)},[s,l,t,r,u]);return x.useEffect(()=>(document.addEventListener("keydown",h),document.body.style.overflow="hidden",()=>{document.removeEventListener("keydown",h),document.body.style.overflow=""}),[h]),n?e.jsxs("div",{className:"fixed inset-0 z-50 flex flex-col bg-black/90",onClick:s,children:[e.jsxs("div",{className:"flex items-center justify-between px-4 py-3 text-white",onClick:o=>o.stopPropagation(),children:[e.jsxs("div",{className:"text-sm",children:[e.jsx("span",{className:"font-medium",children:n.filename}),e.jsxs("span",{className:"ml-3 opacity-70",children:[n.width&&n.height&&`${n.width}×${n.height} · `,je(n.size)]})]}),e.jsxs("div",{className:"flex items-center gap-2",children:[e.jsxs("span",{className:"text-sm opacity-70",children:[t+1," / ",a.length]}),e.jsx(C,{variant:"ghost",size:"icon",className:"text-white hover:bg-white/20",onClick:s,children:e.jsx(xe,{className:"h-5 w-5"})})]})]}),e.jsxs("div",{className:"relative flex flex-1 items-center justify-center px-16",onClick:o=>o.stopPropagation(),children:[e.jsx("img",{src:W(n.url),alt:n.alt||n.filename,className:"max-h-full max-w-full object-contain"}),r&&e.jsx(C,{variant:"ghost",size:"icon",className:"absolute left-4 top-1/2 -translate-y-1/2 text-white hover:bg-white/20",onClick:()=>l(t-1),children:e.jsx(us,{className:"h-8 w-8"})}),u&&e.jsx(C,{variant:"ghost",size:"icon",className:"absolute right-4 top-1/2 -translate-y-1/2 text-white hover:bg-white/20",onClick:()=>l(t+1),children:e.jsx(Jt,{className:"h-8 w-8"})})]})]}):null}function ea({open:a,duplicates:t,fileCount:s,onContinue:l,onCancel:n}){return e.jsx(Ze,{open:a,onOpenChange:r=>!r&&n(),children:e.jsxs(Je,{children:[e.jsxs(et,{children:[e.jsx(tt,{children:"Possible duplicates found"}),e.jsx(st,{children:s===1?"A file with the same name and size already exists:":`${t.length} of ${s} files may already exist:`})]}),e.jsx("div",{className:"max-h-48 space-y-2 overflow-y-auto",children:t.map(r=>e.jsxs("div",{className:"flex items-center gap-3 rounded-md border p-2",children:[r.mimeType.startsWith("image/")&&r.mimeType!=="image/svg+xml"?e.jsx("img",{src:W(r.urls?.thumb_sm??r.url),alt:r.filename,className:"h-10 w-10 rounded object-cover"}):e.jsx("div",{className:"flex h-10 w-10 items-center justify-center",children:e.jsx(Me,{mimeType:r.mimeType,className:"h-6 w-6"})}),e.jsxs("div",{className:"min-w-0 flex-1",children:[e.jsx("p",{className:"truncate text-sm font-medium",children:r.filename}),e.jsxs("p",{className:"text-muted-foreground text-xs",children:[je(r.size)," ·"," ",Pe(r.uploadedAt)]})]})]},r.mediaId))}),e.jsxs(at,{children:[e.jsx(nt,{onClick:n,children:"Cancel"}),e.jsx(rt,{onClick:l,children:"Upload Anyway"})]})]})})}function ta(a){const[t,s]=x.useState(()=>{try{const n=localStorage.getItem(`viewMode:${a}`);if(n==="grid"||n==="list")return n}catch{}return"grid"}),l=x.useCallback(n=>{s(n);try{localStorage.setItem(`viewMode:${a}`,n)}catch{}},[a]);return[t,l]}const sa=({activatorEvent:a,draggingNodeRect:t,transform:s})=>{if(a&&t){const l=a;if(l.clientX!==void 0)return{...s,x:s.x+l.clientX-t.left-t.width/2,y:s.y+l.clientY-t.top-t.height/2}}return s},aa=[{value:"date_desc",label:"Newest first"},{value:"date_asc",label:"Oldest first"},{value:"name_asc",label:"Name A-Z"},{value:"name_desc",label:"Name Z-A"},{value:"size_desc",label:"Size (largest)"},{value:"size_asc",label:"Size (smallest)"}];function na({item:a,selected:t,onToggle:s,onClick:l,folderName:n,onLightbox:r}){const{attributes:u,listeners:h,setNodeRef:o,isDragging:i}=lt({id:a.mediaId,data:{type:"media",mediaId:a.mediaId}}),p=a.mimeType.startsWith("image/")&&a.mimeType!=="image/svg+xml";function m(w){w.stopPropagation(),navigator.clipboard.writeText(W(a.url)),S.success("URL copied to clipboard")}return e.jsx(Lt,{ref:o,...u,...h,className:P("group relative cursor-pointer overflow-hidden",i&&"opacity-50",t&&"ring-2 ring-primary"),onClick:l,children:e.jsxs(Ht,{className:"p-0",children:[e.jsx("div",{className:P("absolute left-2 top-2 z-10 opacity-0 group-hover:opacity-100",t&&"opacity-100"),onPointerDown:w=>w.stopPropagation(),onClick:w=>w.stopPropagation(),children:e.jsx(Se,{checked:t,onCheckedChange:s,"aria-label":`Select ${a.filename}`})}),e.jsxs("div",{className:"absolute right-2 top-2 z-10 flex gap-1 opacity-0 group-hover:opacity-100",onPointerDown:w=>w.stopPropagation(),onClick:w=>w.stopPropagation(),children:[e.jsx(be,{children:e.jsxs(Ce,{children:[e.jsx(Ne,{asChild:!0,children:e.jsx("button",{className:"rounded bg-black/50 p-1 text-white hover:bg-black/70",onClick:m,children:e.jsx(Oe,{className:"h-3.5 w-3.5"})})}),e.jsx(ke,{children:"Copy URL"})]})}),p&&r&&e.jsx(be,{children:e.jsxs(Ce,{children:[e.jsx(Ne,{asChild:!0,children:e.jsx("button",{className:"rounded bg-black/50 p-1 text-white hover:bg-black/70",onClick:w=>{w.stopPropagation(),r()},children:e.jsx(ks,{className:"h-3.5 w-3.5"})})}),e.jsx(ke,{children:"View full size"})]})})]}),p?e.jsx("div",{className:"bg-muted flex aspect-square items-center justify-center",children:e.jsx("img",{src:W(a.urls?.thumb_md??a.url),alt:a.alt||a.filename,className:"h-full w-full object-cover"})}):e.jsx("div",{className:"bg-muted flex aspect-square items-center justify-center",children:e.jsx(Me,{mimeType:a.mimeType,className:"h-12 w-12"})}),e.jsxs("div",{className:"p-2",children:[e.jsx("p",{className:"truncate text-sm font-medium",children:a.filename}),n&&e.jsxs("div",{className:"flex items-center gap-1 text-muted-foreground",children:[e.jsx(ue,{className:"h-3 w-3"}),e.jsx("span",{className:"truncate text-xs",children:n})]}),e.jsxs("div",{className:"flex items-center justify-between",children:[e.jsx("span",{className:"text-muted-foreground text-xs",children:je(a.size)}),e.jsx(be,{children:e.jsxs(Ce,{children:[e.jsx(Ne,{asChild:!0,children:e.jsx("span",{className:"text-muted-foreground text-xs",children:Pe(a.uploadedAt)})}),e.jsx(ke,{children:Ue(a.uploadedAt)})]})})]}),a.tags.length>0&&e.jsxs("div",{className:"mt-1 flex flex-wrap gap-1",children:[a.tags.slice(0,3).map(w=>e.jsx("span",{className:"bg-muted text-muted-foreground rounded px-1 py-0.5 text-[10px]",children:w},w)),a.tags.length>3&&e.jsxs("span",{className:"text-muted-foreground text-[10px]",children:["+",a.tags.length-3]})]})]})]})})}function Ca(){const{host:a}=bt(),[t,s]=ta("media"),[l,n]=x.useState("date_desc"),[r,u]=x.useState(""),[h,o]=x.useState(""),[i,p]=x.useState(null),[m,w]=x.useState(null),[c,y]=x.useState(void 0),[d,j]=x.useState(new Set),[v,_]=x.useState(null),[R,I]=x.useState(null),[E,F]=x.useState(null),[g,A]=x.useState([]),$=x.useRef(null),me=Zs(a,m&&m!=="unfiled"?m:void 0),V=zt(a),Ie=$t(a),Te=es(ts(ns,{activationConstraint:{distance:8}}));x.useEffect(()=>{const f=setTimeout(()=>{o(N=>{const M=r;return N!==M&&j(new Set),M})},300);return()=>clearTimeout(f)},[r]);const b=m===null?void 0:m==="unfiled"?"":m,{data:k,isLoading:q}=Et(a,{sort:l,q:h||void 0,folderId:b,tag:c}),{data:J}=Ge(a),B=x.useMemo(()=>J?.items??[],[J?.items]),Le=x.useMemo(()=>{const f=new Map;for(const N of B)f.set(N.folderId,N.name);return f},[B]),ve=x.useMemo(()=>(k?.items??[]).filter(f=>f.mimeType.startsWith("image/")&&f.mimeType!=="image/svg+xml"),[k?.items]),_e=x.useMemo(()=>{const f=new Map;return ve.forEach((N,M)=>f.set(N.mediaId,M)),f},[ve]),{allTags:ht,allUserTags:ut}=x.useMemo(()=>{const f=k?.items??[],N=new Set,M=new Set;for(const z of f){for(const L of z.tags)N.add(L);for(const L of z.userTags??[])M.add(L)}return{allTags:Array.from(N).sort(),allUserTags:Array.from(M).sort()}},[k?.items]),Re=k?.items.map(f=>f.mediaId)??[],Ae=Re.length>0&&Re.every(f=>d.has(f));function He(f){j(N=>{const M=new Set(N);return M.has(f)?M.delete(f):M.add(f),M})}function Xe(){j(Ae?new Set:new Set(Re))}async function mt(){const f=[...d],M=(await V.mutateAsync({mediaIds:f,action:"delete"})).failed.length;M?S.error(`${M} of ${f.length} failed to delete`):S.success(`${f.length} item(s) deleted`),j(new Set)}async function xt(f){const N=[...d],z=(await V.mutateAsync({mediaIds:N,action:"move",folderId:f})).failed.length;z?S.error(`${z} of ${N.length} failed to move`):S.success(`${N.length} item(s) moved`),j(new Set)}async function pt(f){const N=[...d],z=(await V.mutateAsync({mediaIds:N,action:"addTags",tags:f})).failed.length;z?S.error(`${z} of ${N.length} failed`):S.success(`Tags added to ${N.length} item(s)`),j(new Set)}async function gt(f){const N=[...d],z=(await V.mutateAsync({mediaIds:N,action:"removeTags",tags:f})).failed.length;z?S.error(`${z} of ${N.length} failed`):S.success(`Tags removed from ${N.length} item(s)`),j(new Set)}async function Ye(f){const M=Array.from(f).slice(0,5),z=[];for(const L of M)try{const ze=await Ie.mutateAsync({filename:L.name,size:L.size});z.push(...ze.duplicates)}catch{}z.length>0?(F(f),A(z)):me.addFiles(f)}function ft(f){f.target.files&&Ye(f.target.files),$.current&&($.current.value="")}function wt(f){_(String(f.active.id))}function jt(f){_(null);const{active:N,over:M}=f;if(!M||M.data.current?.type!=="folder")return;const z=M.id==="unfiled"||M.id==="all-media"?"":String(M.id),L=d.has(String(N.id))?[...d]:[String(N.id)];V.mutateAsync({mediaIds:L,action:"move",folderId:z}).then(ze=>{const Ke=ze.failed.length;Ke?S.error(`${Ke} of ${L.length} failed to move`):S.success(`${L.length} item(s) moved`)})}function vt(){_(null)}const Q=v?k?.items.find(f=>f.mediaId===v):null,Be=v&&d.has(v)?d.size:1;return e.jsxs(ss,{sensors:Te,modifiers:[sa],onDragStart:wt,onDragEnd:jt,onDragCancel:vt,children:[e.jsxs("div",{className:"-m-6 flex h-[calc(100vh-3.5rem)]",children:[e.jsx(Ks,{host:a,selectedFolderId:m,onSelect:f=>{w(f),j(new Set)}}),e.jsxs(Vs,{onFiles:f=>Ye(f),children:[e.jsxs("div",{className:"flex-1 overflow-y-auto p-6",children:[e.jsxs("div",{className:"mb-6 flex items-center justify-between",children:[e.jsx("h1",{className:"text-2xl font-semibold",children:"Media"}),e.jsxs("div",{children:[e.jsx("input",{ref:$,type:"file",multiple:!0,className:"hidden",onChange:ft}),e.jsxs(C,{onClick:()=>$.current?.click(),children:[e.jsx(ye,{className:"mr-2 h-4 w-4"}),"Upload"]})]})]}),d.size>0?e.jsx(Ws,{selectedCount:d.size,folders:B,onDelete:mt,onMove:xt,onAddTags:pt,onRemoveTags:gt,onClear:()=>j(new Set),isPending:V.isPending}):e.jsxs("div",{className:"mb-4 flex flex-wrap items-center gap-3",children:[e.jsxs("div",{className:"relative min-w-[200px] max-w-sm flex-1",children:[e.jsx(Ve,{className:"text-muted-foreground absolute left-2.5 top-2.5 h-4 w-4"}),e.jsx(K,{placeholder:"Search media...",value:r,onChange:f=>u(f.target.value),className:"pl-9"})]}),e.jsxs(pe,{value:l,onValueChange:n,children:[e.jsx(ge,{className:"w-[160px]",children:e.jsx(fe,{})}),e.jsx(we,{children:aa.map(f=>e.jsx(te,{value:f.value,children:f.label},f.value))})]}),e.jsxs("div",{className:"flex rounded-md border",children:[e.jsx(C,{variant:t==="grid"?"secondary":"ghost",size:"sm",className:"rounded-r-none px-2",onClick:()=>s("grid"),children:e.jsx(ys,{className:"h-4 w-4"})}),e.jsx(C,{variant:t==="list"?"secondary":"ghost",size:"sm",className:"rounded-l-none px-2",onClick:()=>s("list"),children:e.jsx(Cs,{className:"h-4 w-4"})})]})]}),e.jsx(Bs,{tags:ht,activeTag:c,onTagChange:f=>{y(f),j(new Set)}}),t==="grid"&&(k?.items.length??0)>0&&e.jsxs("div",{className:"mb-2 flex items-center gap-2",children:[e.jsx(Se,{checked:Ae,onCheckedChange:Xe,"aria-label":"Select all"}),e.jsx("span",{className:"text-muted-foreground text-sm",children:d.size>0?`${d.size} of ${k.items.length} selected`:"Select all"})]}),q?e.jsx("div",{className:"grid gap-4 sm:grid-cols-2 md:grid-cols-3 lg:grid-cols-4",children:Array.from({length:8}).map((f,N)=>e.jsx(Ot,{className:"aspect-square"},N))}):k?.items.length?t==="list"?e.jsx(Rs,{items:k.items,host:a,onSelect:p,selectedIds:d,onToggle:He,onToggleAll:Xe,allSelected:Ae,folderMap:m===null?Le:void 0,onLightbox:f=>{const N=_e.get(f.mediaId);N!==void 0&&I(N)}}):e.jsx("div",{className:"grid gap-4 sm:grid-cols-2 md:grid-cols-3 lg:grid-cols-4",children:k.items.map(f=>e.jsx(na,{item:f,selected:d.has(f.mediaId),onToggle:()=>He(f.mediaId),onClick:()=>p(f),folderName:m===null?Le.get(f.folderId??""):void 0,onLightbox:_e.has(f.mediaId)?()=>I(_e.get(f.mediaId)):void 0},f.mediaId))}):e.jsx("div",{className:"flex flex-col items-center justify-center py-16 text-center",children:h||c?e.jsxs(e.Fragment,{children:[e.jsx(Ve,{className:"text-muted-foreground mb-3 h-10 w-10"}),e.jsx("p",{className:"text-muted-foreground text-lg font-medium",children:"No results found"}),e.jsx("p",{className:"text-muted-foreground mt-1 text-sm",children:"Try adjusting your search or filters."})]}):m==="unfiled"?e.jsxs(e.Fragment,{children:[e.jsx(ue,{className:"text-muted-foreground mb-3 h-10 w-10"}),e.jsx("p",{className:"text-muted-foreground text-lg font-medium",children:"No unfiled media"}),e.jsx("p",{className:"text-muted-foreground mt-1 text-sm",children:"All media items are organized in folders."})]}):m?e.jsxs(e.Fragment,{children:[e.jsx(ue,{className:"text-muted-foreground mb-3 h-10 w-10"}),e.jsx("p",{className:"text-muted-foreground text-lg font-medium",children:"This folder is empty"}),e.jsx("p",{className:"text-muted-foreground mt-1 text-sm",children:"Upload files or drag media into this folder."})]}):e.jsxs(e.Fragment,{children:[e.jsx(ye,{className:"text-muted-foreground mb-3 h-10 w-10"}),e.jsx("p",{className:"text-muted-foreground text-lg font-medium",children:"No media yet"}),e.jsx("p",{className:"text-muted-foreground mt-1 text-sm",children:"Upload your first file to get started."}),e.jsxs(C,{className:"mt-4",onClick:()=>$.current?.click(),children:[e.jsx(ye,{className:"mr-2 h-4 w-4"}),"Upload"]})]})}),i&&e.jsx(Ys,{host:a,media:i,onClose:()=>p(null),folders:B,tagSuggestions:ut})]}),e.jsx(qs,{queue:me})]})]}),R!==null&&ve.length>0&&e.jsx(Js,{items:ve,currentIndex:R,host:a,onClose:()=>I(null),onNavigate:I}),e.jsx(ea,{open:g.length>0,host:a,duplicates:g,fileCount:E?Array.from(E).length:0,onContinue:()=>{E&&me.addFiles(E),F(null),A([])},onCancel:()=>{F(null),A([])}}),e.jsx(as,{children:v&&Q&&e.jsxs("div",{className:"flex items-center gap-2 rounded-lg border bg-background p-2 shadow-lg",children:[Q.mimeType.startsWith("image/")&&Q.mimeType!=="image/svg+xml"?e.jsx("img",{src:W(Q.urls?.thumb_sm??Q.url),alt:Q.filename,className:"h-10 w-10 rounded object-cover"}):e.jsx("div",{className:"flex h-10 w-10 items-center justify-center",children:e.jsx(Me,{mimeType:Q.mimeType,className:"h-6 w-6"})}),e.jsx("span",{className:"text-sm font-medium",children:Be>1?`Moving ${Be} items`:Q.filename})]})})]})}export{Ca as MediaPage};
@@ -1 +0,0 @@
1
- import{j as e,a as Q}from"./tanstack-BO6c-AOu.js";import{u as R,e as G,r as h}from"./react-vendor-DNVhVxD7.js";import{a3 as K,S as b,a7 as Z,a8 as z,a9 as J,a2 as M,L as m,I as c,B as i,a as u,aa as V,D as A,i as P,j as k,k as T,l as F,m as E,s as n}from"./index-Ds50UTAc.js";import{B as W}from"./badge-0Z1nL6DI.js";import{C as g,a as p,b as f,c as S}from"./card-D1-S-QZ6.js";import{f as X}from"./format-CZ9bpk32.js";import"./radix-DQ3amgxj.js";function re(){const{host:a}=R(),{data:r,isLoading:t}=K(a);return t?e.jsxs("div",{className:"space-y-4",children:[e.jsx(b,{className:"h-8 w-64"}),e.jsx(b,{className:"h-48 w-full"})]}):r?e.jsx(Y,{site:r},r.host):e.jsx("p",{className:"text-muted-foreground",children:"Site not found."})}function Y({site:a}){const r=Q(),t=Z(a.host),x=z(a.host),j=J(a.host),y=G(),C=M()==="admin",v=a.status==="archived",[N,O]=h.useState(a.name),[B,l]=h.useState(!1),[L,d]=h.useState(!1),[D,o]=h.useState("");async function U(s){s.preventDefault();try{await t.mutateAsync({name:N}),n.success("Site updated")}catch(w){n.error("Failed to update site",{description:w instanceof Error?w.message:void 0})}}async function q(){try{await t.mutateAsync({status:"archived"}),n.success("Site archived"),l(!1),y("/sites")}catch(s){n.error("Failed to archive site",{description:s instanceof Error?s.message:void 0})}}async function H(){try{await t.mutateAsync({status:"active"}),n.success("Site unarchived")}catch(s){n.error("Failed to unarchive site",{description:s instanceof Error?s.message:void 0})}}async function I(){try{await x.mutateAsync(),await j.mutateAsync(),await r.invalidateQueries({queryKey:["sites"]}),n.success("Site deleted"),d(!1),o(""),y("/sites")}catch(s){n.error("Failed to delete site",{description:s instanceof Error?s.message:void 0})}}return e.jsxs("div",{className:"mx-auto max-w-2xl",children:[e.jsx("h1",{className:"mb-6 text-2xl font-semibold",children:"Site Settings"}),e.jsxs(g,{children:[e.jsx(p,{children:e.jsx(f,{children:"General"})}),e.jsx(S,{children:e.jsxs("form",{onSubmit:U,className:"space-y-4",children:[e.jsxs("div",{className:"space-y-2",children:[e.jsx(m,{htmlFor:"name",children:"Site Name"}),e.jsx(c,{id:"name",value:N,onChange:s=>O(s.target.value),required:!0})]}),e.jsxs("div",{className:"space-y-2",children:[e.jsx(m,{children:"Host"}),e.jsx(c,{value:a.host,disabled:!0})]}),e.jsxs("div",{className:"space-y-2",children:[e.jsx(m,{children:"Status"}),e.jsx("div",{className:"flex items-center gap-2",children:v?e.jsx(W,{variant:"outline",children:"Archived"}):e.jsx(c,{value:a.status,disabled:!0})})]}),e.jsxs("div",{className:"space-y-2",children:[e.jsx(m,{children:"Created"}),e.jsx(c,{value:X(a.createdAt),disabled:!0})]}),e.jsxs(i,{type:"submit",disabled:t.isPending,children:[t.isPending&&e.jsx(u,{className:"mr-2 h-4 w-4 animate-spin"}),"Save"]})]})})]}),C&&e.jsxs(g,{className:"mt-6",children:[e.jsx(p,{children:e.jsx(f,{children:"Site Status"})}),e.jsx(S,{className:"space-y-4",children:v?e.jsxs(e.Fragment,{children:[e.jsx("p",{className:"text-muted-foreground text-sm",children:"This site is archived. Unarchive it to allow content changes."}),e.jsxs(i,{variant:"outline",onClick:H,disabled:t.isPending,children:[t.isPending&&e.jsx(u,{className:"mr-2 h-4 w-4 animate-spin"}),"Unarchive Site"]})]}):e.jsxs(e.Fragment,{children:[e.jsx("p",{className:"text-muted-foreground text-sm",children:"Archiving a site makes it read-only. Content cannot be created or modified while archived."}),e.jsxs(i,{variant:"outline",onClick:()=>l(!0),children:[e.jsx(V,{className:"mr-2 h-4 w-4"}),"Archive Site"]}),e.jsx(A,{open:B,onOpenChange:l,children:e.jsxs(P,{children:[e.jsxs(k,{children:[e.jsx(T,{children:"Archive Site"}),e.jsxs(F,{children:["Are you sure you want to archive ",e.jsx("strong",{children:a.host}),"? The site will become read-only."]})]}),e.jsxs(E,{children:[e.jsx(i,{variant:"outline",onClick:()=>l(!1),children:"Cancel"}),e.jsxs(i,{onClick:q,disabled:t.isPending,children:[t.isPending&&e.jsx(u,{className:"mr-2 h-4 w-4 animate-spin"}),"Archive"]})]})]})})]})})]}),C&&v&&e.jsxs(g,{className:"border-destructive mt-6",children:[e.jsx(p,{children:e.jsx(f,{className:"text-destructive",children:"Danger Zone"})}),e.jsxs(S,{className:"space-y-4",children:[e.jsx("p",{className:"text-muted-foreground text-sm",children:"Permanently delete this site and all its content, media, collections, and block types. This action cannot be undone."}),e.jsx(i,{variant:"destructive",onClick:()=>d(!0),children:"Delete Site"}),e.jsx(A,{open:L,onOpenChange:s=>{d(s),s||o("")},children:e.jsxs(P,{children:[e.jsxs(k,{children:[e.jsx(T,{children:"Delete Site"}),e.jsxs(F,{children:["This will permanently delete this site and all its content. Type ",e.jsx("strong",{children:a.host})," to confirm."]})]}),e.jsx(c,{placeholder:a.host,value:D,onChange:s=>o(s.target.value)}),e.jsxs(E,{children:[e.jsx(i,{variant:"outline",onClick:()=>{d(!1),o("")},children:"Cancel"}),e.jsxs(i,{variant:"destructive",onClick:I,disabled:D!==a.host||x.isPending||j.isPending,children:[(x.isPending||j.isPending)&&e.jsx(u,{className:"mr-2 h-4 w-4 animate-spin"}),"Delete Everything"]})]})]})})]})]})]})}export{re as SiteSettingsPage};
@@ -1 +0,0 @@
1
- import{j as e}from"./tanstack-BO6c-AOu.js";import{r as n,e as H}from"./react-vendor-DNVhVxD7.js";import{b as P,u as B,d as L,e as O,g as E,H as N,D as S,h as D,B as o,U as F,i as I,j as T,k as U,l as M,L as w,I as b,m as R}from"./index-Ds50UTAc.js";import{C as $,a as q,b as z,d as G}from"./card-D1-S-QZ6.js";import{B as J}from"./badge-0Z1nL6DI.js";import{C as K}from"./checkbox-BPqrj_XS.js";import{P as y}from"./plus-BgHSYWJN.js";import"./radix-DQ3amgxj.js";import"./check-BGA0ADyt.js";function ae(){const[t,d]=n.useState(!1),{data:l,isLoading:m}=P(t),c=H(),i=n.useMemo(()=>[...l?.items??[]].sort((s,v)=>(s.name||s.host).localeCompare(v.name||v.host)),[l]),{user:a}=B(),{data:k}=L(),g=a?(k?.superAdminIds??[]).includes(a.sub):!1,h=O(),[f,x]=n.useState(!1),[r,j]=n.useState(""),[u,p]=n.useState("");if(m)return e.jsx(E,{});const C=()=>{r.trim()&&h.mutate({host:r.trim(),name:u.trim()||r.trim()},{onSuccess:()=>{x(!1),j(""),p("")}})};return i.length===0?e.jsxs("div",{className:"flex h-screen flex-col",children:[e.jsx(N,{}),e.jsxs("div",{className:"flex flex-1 flex-col items-center justify-center gap-4",children:[e.jsx("p",{className:"text-muted-foreground",children:"No sites available."}),g&&e.jsxs(S,{open:f,onOpenChange:x,children:[e.jsx(D,{asChild:!0,children:e.jsxs(o,{children:[e.jsx(y,{className:"mr-2 h-4 w-4"}),"Create Site"]})}),e.jsx(A,{newHost:r,setNewHost:j,newName:u,setNewName:p,onSubmit:C,isPending:h.isPending})]})]})]}):e.jsxs("div",{className:"flex h-screen flex-col",children:[e.jsx(N,{}),e.jsxs("div",{className:"flex-1 p-8",children:[e.jsxs("div",{className:"mb-6 flex items-center justify-between",children:[e.jsx("h1",{className:"text-2xl font-semibold",children:"Select a site"}),g&&e.jsxs("div",{className:"flex items-center gap-4",children:[e.jsxs("label",{className:"flex items-center gap-2 text-sm",children:[e.jsx(K,{checked:t,onCheckedChange:s=>d(s===!0)}),"Show archived sites"]}),e.jsxs("div",{className:"flex gap-2",children:[e.jsxs(o,{variant:"outline",onClick:()=>c("/users"),children:[e.jsx(F,{className:"mr-2 h-4 w-4"}),"All Users"]}),e.jsxs(S,{open:f,onOpenChange:x,children:[e.jsx(D,{asChild:!0,children:e.jsxs(o,{children:[e.jsx(y,{className:"mr-2 h-4 w-4"}),"Create Site"]})}),e.jsx(A,{newHost:r,setNewHost:j,newName:u,setNewName:p,onSubmit:C,isPending:h.isPending})]})]})]})]}),e.jsx("div",{className:"grid gap-4 sm:grid-cols-2 lg:grid-cols-3",children:i.map(s=>e.jsx($,{className:"cursor-pointer transition-shadow hover:shadow-md",onClick:()=>c(`/sites/${s.host}/content`),children:e.jsxs(q,{children:[e.jsxs("div",{className:"flex items-center gap-2",children:[e.jsx(z,{children:s.name||s.host}),s.status==="archived"&&e.jsx(J,{variant:"outline",children:"Archived"})]}),e.jsx(G,{children:s.host})]})},s.host))})]})]})}function A({newHost:t,setNewHost:d,newName:l,setNewName:m,onSubmit:c,isPending:i}){return e.jsxs(I,{children:[e.jsxs(T,{children:[e.jsx(U,{children:"Create Site"}),e.jsx(M,{className:"sr-only",children:"Enter details for the new site"})]}),e.jsxs("div",{className:"space-y-4 py-2",children:[e.jsxs("div",{className:"space-y-2",children:[e.jsx(w,{htmlFor:"host",children:"Host"}),e.jsx(b,{id:"host",placeholder:"example.com",value:t,onChange:a=>d(a.target.value)})]}),e.jsxs("div",{className:"space-y-2",children:[e.jsx(w,{htmlFor:"name",children:"Display Name"}),e.jsx(b,{id:"name",placeholder:"My Site",value:l,onChange:a=>m(a.target.value)})]})]}),e.jsx(R,{children:e.jsx(o,{onClick:c,disabled:!t.trim()||i,children:i?"Creating...":"Create"})})]})}export{ae as SitesPage};
@@ -1 +0,0 @@
1
- import{j as e}from"./tanstack-BO6c-AOu.js";import{r as p}from"./react-vendor-DNVhVxD7.js";import{n as H,u as L,o as P,d as z,p as O,q as _,r as q,H as R,I as G,S as J,B as t,D as g,h as K,i as v,j as A,k as D,l as C,m as y,s as n}from"./index-Ds50UTAc.js";import{C as Q}from"./checkbox-BPqrj_XS.js";import{B as V}from"./badge-0Z1nL6DI.js";import{T as W,a as X,b as N,c as r,d as Y,e as c}from"./table-B3EHrN_H.js";import{T as Z}from"./trash-2-Gny2Upn-.js";import"./radix-DQ3amgxj.js";import"./check-BGA0ADyt.js";const $=[["path",{d:"m2 2 20 20",key:"1ooewy"}],["path",{d:"M5 5a1 1 0 0 0-1 1v7c0 5 3.5 7.5 7.67 8.94a1 1 0 0 0 .67.01c2.35-.82 4.48-1.97 5.9-3.71",key:"1jlk70"}],["path",{d:"M9.309 3.652A12.252 12.252 0 0 0 11.24 2.28a1.17 1.17 0 0 1 1.52 0C14.51 3.81 17 5 19 5a1 1 0 0 1 1 1v7a9.784 9.784 0 0 1-.08 1.264",key:"18rp1v"}]],ee=H("shield-off",$);function oe(){const{user:w}=L(),{data:S,isLoading:T}=P(),{data:k}=z(),U=O(),m=_(),h=q(),u=S?.items??[],x=k?.superAdminIds??[],[j,F]=p.useState(""),[E,f]=p.useState(null),[d,o]=p.useState(null),b=j?u.filter(s=>s.email.toLowerCase().includes(j.toLowerCase())):u;async function M(s){try{await m.mutateAsync(s),n.success("User deleted"),f(null)}catch(a){n.error("Failed to delete user",{description:a instanceof Error?a.message:void 0})}}async function I(s){try{await h.mutateAsync(s),n.success("Two-factor authentication disabled"),o(null)}catch(a){n.error("Failed to disable 2FA",{description:a instanceof Error?a.message:void 0})}}async function B(s,a){const l=a?x.filter(i=>i!==s):[...x,s];if(l.length===0){n.error("At least one super admin is required");return}try{await U.mutateAsync({superAdminIds:l}),n.success(a?"Super admin removed":"Super admin added")}catch(i){n.error("Failed to update super admins",{description:i instanceof Error?i.message:void 0})}}return e.jsxs("div",{className:"flex h-screen flex-col",children:[e.jsx(R,{}),e.jsxs("div",{className:"flex-1 p-8",children:[e.jsx("div",{className:"mb-6 flex items-center justify-between",children:e.jsx("h1",{className:"text-2xl font-semibold",children:"All Users"})}),e.jsx("div",{className:"mb-4",children:e.jsx(G,{placeholder:"Search by email...",value:j,onChange:s=>F(s.target.value),className:"max-w-sm"})}),T?e.jsx("div",{className:"space-y-2",children:Array.from({length:5}).map((s,a)=>e.jsx(J,{className:"h-12 w-full"},a))}):b.length===0?e.jsx("p",{className:"text-muted-foreground",children:"No users found."}):e.jsxs(W,{children:[e.jsx(X,{children:e.jsxs(N,{children:[e.jsx(r,{children:"Email"}),e.jsx(r,{children:"Status"}),e.jsx(r,{children:"2FA"}),e.jsx(r,{children:"Super Admin"}),e.jsx(r,{})]})}),e.jsx(Y,{children:b.map(s=>{const a=s.sub===w?.sub,l=x.includes(s.sub);return e.jsxs(N,{children:[e.jsxs(c,{className:"text-sm",children:[s.email,a&&e.jsx("span",{className:"text-muted-foreground ml-2",children:"(you)"})]}),e.jsx(c,{className:"text-sm capitalize",children:s.status}),e.jsx(c,{children:s.mfaEnabled?e.jsx(V,{variant:"outline",className:"border-green-500 text-green-700",children:"Enabled"}):e.jsx("span",{className:"text-muted-foreground",children:"—"})}),e.jsx(c,{children:e.jsx(Q,{checked:l,onCheckedChange:()=>B(s.sub,l)})}),e.jsx(c,{className:"text-right",children:e.jsxs("div",{className:"flex items-center justify-end gap-1",children:[!a&&s.mfaEnabled&&e.jsx(t,{variant:"ghost",size:"sm",title:"Disable 2FA",onClick:()=>o(s.sub),children:e.jsx(ee,{className:"h-4 w-4"})}),!a&&e.jsxs(g,{open:E===s.sub,onOpenChange:i=>f(i?s.sub:null),children:[e.jsx(K,{asChild:!0,children:e.jsx(t,{variant:"ghost",size:"sm",className:"text-destructive",title:"Delete account",children:e.jsx(Z,{className:"h-4 w-4"})})}),e.jsxs(v,{children:[e.jsxs(A,{children:[e.jsx(D,{children:"Delete User Account"}),e.jsx(C,{className:"sr-only",children:"Confirm permanent deletion of this user account"})]}),e.jsxs("p",{className:"text-muted-foreground text-sm",children:["This will permanently delete the account for"," ",e.jsx("strong",{children:s.email}),". They will lose access to all sites."]}),e.jsxs(y,{children:[e.jsx(t,{variant:"outline",onClick:()=>f(null),children:"Cancel"}),e.jsx(t,{variant:"destructive",onClick:()=>M(s.sub),disabled:m.isPending,children:m.isPending?"Deleting...":"Delete Account"})]})]})]})]})})]},s.sub)})})]}),e.jsx(g,{open:d!==null,onOpenChange:s=>{s||o(null)},children:e.jsxs(v,{children:[e.jsxs(A,{children:[e.jsx(D,{children:"Disable Two-Factor Authentication"}),e.jsxs(C,{children:["This will disable 2FA for"," ",e.jsx("strong",{children:u.find(s=>s.sub===d)?.email}),". They will be able to log in with just their password."]})]}),e.jsxs(y,{children:[e.jsx(t,{variant:"outline",onClick:()=>o(null),children:"Cancel"}),e.jsx(t,{variant:"destructive",onClick:()=>{d&&I(d)},disabled:h.isPending,children:h.isPending?"Disabling...":"Disable 2FA"})]})]})})]})]})}export{oe as UsersPage};
@@ -1 +0,0 @@
1
- import{n as c}from"./index-Ds50UTAc.js";const e=[["path",{d:"M20 6 9 17l-5-5",key:"1gmf2c"}]],t=c("check",e);export{t as C};
@@ -1 +0,0 @@
1
- import{j as w}from"./tanstack-BO6c-AOu.js";import{r as l,b as Re}from"./react-vendor-DNVhVxD7.js";import{x as V}from"./index-Ds50UTAc.js";import{W as je,X as Ae,Y as $e,Z as Pe,_ as L,$ as _,c as Ne,h as Me,O as De,e as _e}from"./radix-DQ3amgxj.js";import{S as Le}from"./search-DIzcfCVh.js";function xt({...e}){return w.jsx(je,{"data-slot":"popover",...e})}function wt({...e}){return w.jsx(Ae,{"data-slot":"popover-trigger",...e})}function Et({className:e,align:r="center",sideOffset:t=4,...i}){return w.jsx($e,{children:w.jsx(Pe,{"data-slot":"popover-content",align:r,sideOffset:t,className:V("bg-popover text-popover-foreground 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 z-50 w-72 origin-(--radix-popover-content-transform-origin) rounded-md border p-4 shadow-md outline-hidden",e),...i})})}var pe=1,Ve=.9,Oe=.8,ze=.17,te=.1,re=.999,Fe=.9999,Ke=.99,Te=/[\\\/_+.#"@\[\(\{&]/,We=/[\\\/_+.#"@\[\(\{&]/g,qe=/[\s-]/,he=/[\s-]/g;function le(e,r,t,i,a,o,d){if(o===r.length)return a===e.length?pe:Ke;var f=`${a},${o}`;if(d[f]!==void 0)return d[f];for(var p=i.charAt(o),s=t.indexOf(p,a),v=0,h,k,E,I;s>=0;)h=le(e,r,t,i,s+1,o+1,d),h>v&&(s===a?h*=pe:Te.test(e.charAt(s-1))?(h*=Oe,E=e.slice(a,s-1).match(We),E&&a>0&&(h*=Math.pow(re,E.length))):qe.test(e.charAt(s-1))?(h*=Ve,I=e.slice(a,s-1).match(he),I&&a>0&&(h*=Math.pow(re,I.length))):(h*=ze,a>0&&(h*=Math.pow(re,s-a))),e.charAt(s)!==r.charAt(o)&&(h*=Fe)),(h<te&&t.charAt(s-1)===i.charAt(o+1)||i.charAt(o+1)===i.charAt(o)&&t.charAt(s-1)!==i.charAt(o))&&(k=le(e,r,t,i,s+1,o+2,d),k*te>h&&(h=k*te)),h>v&&(v=h),s=t.indexOf(p,s+1);return d[f]=v,v}function ve(e){return e.toLowerCase().replace(he," ")}function Be(e,r,t){return e=t&&t.length>0?`${e+" "+t.join(" ")}`:e,le(e,r,ve(e),ve(r),0,0,{})}var He=Symbol.for("react.lazy"),q=Re[" use ".trim().toString()];function Ye(e){return typeof e=="object"&&e!==null&&"then"in e}function be(e){return e!=null&&typeof e=="object"&&"$$typeof"in e&&e.$$typeof===He&&"_payload"in e&&Ye(e._payload)}function ye(e){const r=Ge(e),t=l.forwardRef((i,a)=>{let{children:o,...d}=i;be(o)&&typeof q=="function"&&(o=q(o._payload));const f=l.Children.toArray(o),p=f.find(Ze);if(p){const s=p.props.children,v=f.map(h=>h===p?l.Children.count(s)>1?l.Children.only(null):l.isValidElement(s)?s.props.children:null:h);return w.jsx(r,{...d,ref:a,children:l.isValidElement(s)?l.cloneElement(s,void 0,v):null})}return w.jsx(r,{...d,ref:a,children:o})});return t.displayName=`${e}.Slot`,t}var St=ye("Slot");function Ge(e){const r=l.forwardRef((t,i)=>{let{children:a,...o}=t;if(be(a)&&typeof q=="function"&&(a=q(a._payload)),l.isValidElement(a)){const d=Je(a),f=Xe(o,a.props);return a.type!==l.Fragment&&(f.ref=i?L(i,d):d),l.cloneElement(a,f)}return l.Children.count(a)>1?l.Children.only(null):null});return r.displayName=`${e}.SlotClone`,r}var Ue=Symbol("radix.slottable");function Ze(e){return l.isValidElement(e)&&typeof e.type=="function"&&"__radixId"in e.type&&e.type.__radixId===Ue}function Xe(e,r){const t={...r};for(const i in r){const a=e[i],o=r[i];/^on[A-Z]/.test(i)?a&&o?t[i]=(...f)=>{const p=o(...f);return a(...f),p}:a&&(t[i]=a):i==="style"?t[i]={...a,...o}:i==="className"&&(t[i]=[a,o].filter(Boolean).join(" "))}return{...e,...t}}function Je(e){let r=Object.getOwnPropertyDescriptor(e.props,"ref")?.get,t=r&&"isReactWarning"in r&&r.isReactWarning;return t?e.ref:(r=Object.getOwnPropertyDescriptor(e,"ref")?.get,t=r&&"isReactWarning"in r&&r.isReactWarning,t?e.props.ref:e.props.ref||e.ref)}var Qe=["a","button","div","form","h2","h3","img","input","label","li","nav","ol","p","select","span","svg","ul"],j=Qe.reduce((e,r)=>{const t=ye(`Primitive.${r}`),i=l.forwardRef((a,o)=>{const{asChild:d,...f}=a,p=d?t:r;return typeof window<"u"&&(window[Symbol.for("radix-ui")]=!0),w.jsx(p,{...f,ref:o})});return i.displayName=`Primitive.${r}`,{...e,[r]:i}},{}),F='[cmdk-group=""]',ne='[cmdk-group-items=""]',et='[cmdk-group-heading=""]',xe='[cmdk-item=""]',ge=`${xe}:not([aria-disabled="true"])`,ae="cmdk-item-select",M="data-value",tt=(e,r,t)=>Be(e,r,t),we=l.createContext(void 0),K=()=>l.useContext(we),Ee=l.createContext(void 0),oe=()=>l.useContext(Ee),Se=l.createContext(void 0),Ce=l.forwardRef((e,r)=>{let t=D(()=>{var n,c;return{search:"",value:(c=(n=e.value)!=null?n:e.defaultValue)!=null?c:"",selectedItemId:void 0,filtered:{count:0,items:new Map,groups:new Set}}}),i=D(()=>new Set),a=D(()=>new Map),o=D(()=>new Map),d=D(()=>new Set),f=ke(e),{label:p,children:s,value:v,onValueChange:h,filter:k,shouldFilter:E,loop:I,disablePointerSelection:H=!1,vimBindings:A=!0,...T}=e,Y=_(),ie=_(),G=_(),$=l.useRef(null),y=ft();P(()=>{if(v!==void 0){let n=v.trim();t.current.value=n,S.emit()}},[v]),P(()=>{y(6,se)},[]);let S=l.useMemo(()=>({subscribe:n=>(d.current.add(n),()=>d.current.delete(n)),snapshot:()=>t.current,setState:(n,c,m)=>{var u,g,b,C;if(!Object.is(t.current[n],c)){if(t.current[n]=c,n==="search")J(),Z(),y(1,X);else if(n==="value"){if(document.activeElement.hasAttribute("cmdk-input")||document.activeElement.hasAttribute("cmdk-root")){let x=document.getElementById(G);x?x.focus():(u=document.getElementById(Y))==null||u.focus()}if(y(7,()=>{var x;t.current.selectedItemId=(x=N())==null?void 0:x.id,S.emit()}),m||y(5,se),((g=f.current)==null?void 0:g.value)!==void 0){let x=c??"";(C=(b=f.current).onValueChange)==null||C.call(b,x);return}}S.emit()}},emit:()=>{d.current.forEach(n=>n())}}),[]),U=l.useMemo(()=>({value:(n,c,m)=>{var u;c!==((u=o.current.get(n))==null?void 0:u.value)&&(o.current.set(n,{value:c,keywords:m}),t.current.filtered.items.set(n,ue(c,m)),y(2,()=>{Z(),S.emit()}))},item:(n,c)=>(i.current.add(n),c&&(a.current.has(c)?a.current.get(c).add(n):a.current.set(c,new Set([n]))),y(3,()=>{J(),Z(),t.current.value||X(),S.emit()}),()=>{o.current.delete(n),i.current.delete(n),t.current.filtered.items.delete(n);let m=N();y(4,()=>{J(),m?.getAttribute("id")===n&&X(),S.emit()})}),group:n=>(a.current.has(n)||a.current.set(n,new Set),()=>{o.current.delete(n),a.current.delete(n)}),filter:()=>f.current.shouldFilter,label:p||e["aria-label"],getDisablePointerSelection:()=>f.current.disablePointerSelection,listId:Y,inputId:G,labelId:ie,listInnerRef:$}),[]);function ue(n,c){var m,u;let g=(u=(m=f.current)==null?void 0:m.filter)!=null?u:tt;return n?g(n,t.current.search,c):0}function Z(){if(!t.current.search||f.current.shouldFilter===!1)return;let n=t.current.filtered.items,c=[];t.current.filtered.groups.forEach(u=>{let g=a.current.get(u),b=0;g.forEach(C=>{let x=n.get(C);b=Math.max(x,b)}),c.push([u,b])});let m=$.current;z().sort((u,g)=>{var b,C;let x=u.getAttribute("id"),W=g.getAttribute("id");return((b=n.get(W))!=null?b:0)-((C=n.get(x))!=null?C:0)}).forEach(u=>{let g=u.closest(ne);g?g.appendChild(u.parentElement===g?u:u.closest(`${ne} > *`)):m.appendChild(u.parentElement===m?u:u.closest(`${ne} > *`))}),c.sort((u,g)=>g[1]-u[1]).forEach(u=>{var g;let b=(g=$.current)==null?void 0:g.querySelector(`${F}[${M}="${encodeURIComponent(u[0])}"]`);b?.parentElement.appendChild(b)})}function X(){let n=z().find(m=>m.getAttribute("aria-disabled")!=="true"),c=n?.getAttribute(M);S.setState("value",c||void 0)}function J(){var n,c,m,u;if(!t.current.search||f.current.shouldFilter===!1){t.current.filtered.count=i.current.size;return}t.current.filtered.groups=new Set;let g=0;for(let b of i.current){let C=(c=(n=o.current.get(b))==null?void 0:n.value)!=null?c:"",x=(u=(m=o.current.get(b))==null?void 0:m.keywords)!=null?u:[],W=ue(C,x);t.current.filtered.items.set(b,W),W>0&&g++}for(let[b,C]of a.current)for(let x of C)if(t.current.filtered.items.get(x)>0){t.current.filtered.groups.add(b);break}t.current.filtered.count=g}function se(){var n,c,m;let u=N();u&&(((n=u.parentElement)==null?void 0:n.firstChild)===u&&((m=(c=u.closest(F))==null?void 0:c.querySelector(et))==null||m.scrollIntoView({block:"nearest"})),u.scrollIntoView({block:"nearest"}))}function N(){var n;return(n=$.current)==null?void 0:n.querySelector(`${xe}[aria-selected="true"]`)}function z(){var n;return Array.from(((n=$.current)==null?void 0:n.querySelectorAll(ge))||[])}function Q(n){let c=z()[n];c&&S.setState("value",c.getAttribute(M))}function ee(n){var c;let m=N(),u=z(),g=u.findIndex(C=>C===m),b=u[g+n];(c=f.current)!=null&&c.loop&&(b=g+n<0?u[u.length-1]:g+n===u.length?u[0]:u[g+n]),b&&S.setState("value",b.getAttribute(M))}function de(n){let c=N(),m=c?.closest(F),u;for(;m&&!u;)m=n>0?dt(m,F):ct(m,F),u=m?.querySelector(ge);u?S.setState("value",u.getAttribute(M)):ee(n)}let ce=()=>Q(z().length-1),fe=n=>{n.preventDefault(),n.metaKey?ce():n.altKey?de(1):ee(1)},me=n=>{n.preventDefault(),n.metaKey?Q(0):n.altKey?de(-1):ee(-1)};return l.createElement(j.div,{ref:r,tabIndex:-1,...T,"cmdk-root":"",onKeyDown:n=>{var c;(c=T.onKeyDown)==null||c.call(T,n);let m=n.nativeEvent.isComposing||n.keyCode===229;if(!(n.defaultPrevented||m))switch(n.key){case"n":case"j":{A&&n.ctrlKey&&fe(n);break}case"ArrowDown":{fe(n);break}case"p":case"k":{A&&n.ctrlKey&&me(n);break}case"ArrowUp":{me(n);break}case"Home":{n.preventDefault(),Q(0);break}case"End":{n.preventDefault(),ce();break}case"Enter":{n.preventDefault();let u=N();if(u){let g=new Event(ae);u.dispatchEvent(g)}}}}},l.createElement("label",{"cmdk-label":"",htmlFor:U.inputId,id:U.labelId,style:pt},p),B(e,n=>l.createElement(Ee.Provider,{value:S},l.createElement(we.Provider,{value:U},n))))}),rt=l.forwardRef((e,r)=>{var t,i;let a=_(),o=l.useRef(null),d=l.useContext(Se),f=K(),p=ke(e),s=(i=(t=p.current)==null?void 0:t.forceMount)!=null?i:d?.forceMount;P(()=>{if(!s)return f.item(a,d?.id)},[s]);let v=Ie(a,o,[e.value,e.children,o],e.keywords),h=oe(),k=R(y=>y.value&&y.value===v.current),E=R(y=>s||f.filter()===!1?!0:y.search?y.filtered.items.get(a)>0:!0);l.useEffect(()=>{let y=o.current;if(!(!y||e.disabled))return y.addEventListener(ae,I),()=>y.removeEventListener(ae,I)},[E,e.onSelect,e.disabled]);function I(){var y,S;H(),(S=(y=p.current).onSelect)==null||S.call(y,v.current)}function H(){h.setState("value",v.current,!0)}if(!E)return null;let{disabled:A,value:T,onSelect:Y,forceMount:ie,keywords:G,...$}=e;return l.createElement(j.div,{ref:L(o,r),...$,id:a,"cmdk-item":"",role:"option","aria-disabled":!!A,"aria-selected":!!k,"data-disabled":!!A,"data-selected":!!k,onPointerMove:A||f.getDisablePointerSelection()?void 0:H,onClick:A?void 0:I},e.children)}),nt=l.forwardRef((e,r)=>{let{heading:t,children:i,forceMount:a,...o}=e,d=_(),f=l.useRef(null),p=l.useRef(null),s=_(),v=K(),h=R(E=>a||v.filter()===!1?!0:E.search?E.filtered.groups.has(d):!0);P(()=>v.group(d),[]),Ie(d,f,[e.value,e.heading,p]);let k=l.useMemo(()=>({id:d,forceMount:a}),[a]);return l.createElement(j.div,{ref:L(f,r),...o,"cmdk-group":"",role:"presentation",hidden:h?void 0:!0},t&&l.createElement("div",{ref:p,"cmdk-group-heading":"","aria-hidden":!0,id:s},t),B(e,E=>l.createElement("div",{"cmdk-group-items":"",role:"group","aria-labelledby":t?s:void 0},l.createElement(Se.Provider,{value:k},E))))}),lt=l.forwardRef((e,r)=>{let{alwaysRender:t,...i}=e,a=l.useRef(null),o=R(d=>!d.search);return!t&&!o?null:l.createElement(j.div,{ref:L(a,r),...i,"cmdk-separator":"",role:"separator"})}),at=l.forwardRef((e,r)=>{let{onValueChange:t,...i}=e,a=e.value!=null,o=oe(),d=R(s=>s.search),f=R(s=>s.selectedItemId),p=K();return l.useEffect(()=>{e.value!=null&&o.setState("search",e.value)},[e.value]),l.createElement(j.input,{ref:r,...i,"cmdk-input":"",autoComplete:"off",autoCorrect:"off",spellCheck:!1,"aria-autocomplete":"list",role:"combobox","aria-expanded":!0,"aria-controls":p.listId,"aria-labelledby":p.labelId,"aria-activedescendant":f,id:p.inputId,type:"text",value:a?e.value:d,onChange:s=>{a||o.setState("search",s.target.value),t?.(s.target.value)}})}),ot=l.forwardRef((e,r)=>{let{children:t,label:i="Suggestions",...a}=e,o=l.useRef(null),d=l.useRef(null),f=R(s=>s.selectedItemId),p=K();return l.useEffect(()=>{if(d.current&&o.current){let s=d.current,v=o.current,h,k=new ResizeObserver(()=>{h=requestAnimationFrame(()=>{let E=s.offsetHeight;v.style.setProperty("--cmdk-list-height",E.toFixed(1)+"px")})});return k.observe(s),()=>{cancelAnimationFrame(h),k.unobserve(s)}}},[]),l.createElement(j.div,{ref:L(o,r),...a,"cmdk-list":"",role:"listbox",tabIndex:-1,"aria-activedescendant":f,"aria-label":i,id:p.listId},B(e,s=>l.createElement("div",{ref:L(d,p.listInnerRef),"cmdk-list-sizer":""},s)))}),it=l.forwardRef((e,r)=>{let{open:t,onOpenChange:i,overlayClassName:a,contentClassName:o,container:d,...f}=e;return l.createElement(Ne,{open:t,onOpenChange:i},l.createElement(Me,{container:d},l.createElement(De,{"cmdk-overlay":"",className:a}),l.createElement(_e,{"aria-label":e.label,"cmdk-dialog":"",className:o},l.createElement(Ce,{ref:r,...f}))))}),ut=l.forwardRef((e,r)=>R(t=>t.filtered.count===0)?l.createElement(j.div,{ref:r,...e,"cmdk-empty":"",role:"presentation"}):null),st=l.forwardRef((e,r)=>{let{progress:t,children:i,label:a="Loading...",...o}=e;return l.createElement(j.div,{ref:r,...o,"cmdk-loading":"",role:"progressbar","aria-valuenow":t,"aria-valuemin":0,"aria-valuemax":100,"aria-label":a},B(e,d=>l.createElement("div",{"aria-hidden":!0},d)))}),O=Object.assign(Ce,{List:ot,Item:rt,Input:at,Group:nt,Separator:lt,Dialog:it,Empty:ut,Loading:st});function dt(e,r){let t=e.nextElementSibling;for(;t;){if(t.matches(r))return t;t=t.nextElementSibling}}function ct(e,r){let t=e.previousElementSibling;for(;t;){if(t.matches(r))return t;t=t.previousElementSibling}}function ke(e){let r=l.useRef(e);return P(()=>{r.current=e}),r}var P=typeof window>"u"?l.useEffect:l.useLayoutEffect;function D(e){let r=l.useRef();return r.current===void 0&&(r.current=e()),r}function R(e){let r=oe(),t=()=>e(r.snapshot());return l.useSyncExternalStore(r.subscribe,t,t)}function Ie(e,r,t,i=[]){let a=l.useRef(),o=K();return P(()=>{var d;let f=(()=>{var s;for(let v of t){if(typeof v=="string")return v.trim();if(typeof v=="object"&&"current"in v)return v.current?(s=v.current.textContent)==null?void 0:s.trim():a.current}})(),p=i.map(s=>s.trim());o.value(e,f,p),(d=r.current)==null||d.setAttribute(M,f),a.current=f}),a}var ft=()=>{let[e,r]=l.useState(),t=D(()=>new Map);return P(()=>{t.current.forEach(i=>i()),t.current=new Map},[e]),(i,a)=>{t.current.set(i,a),r({})}};function mt(e){let r=e.type;return typeof r=="function"?r(e.props):"render"in r?r.render(e.props):e}function B({asChild:e,children:r},t){return e&&l.isValidElement(r)?l.cloneElement(mt(r),{ref:r.ref},t(r.props.children)):t(r)}var pt={position:"absolute",width:"1px",height:"1px",padding:"0",margin:"-1px",overflow:"hidden",clip:"rect(0, 0, 0, 0)",whiteSpace:"nowrap",borderWidth:"0"};function Ct({className:e,...r}){return w.jsx(O,{"data-slot":"command",className:V("bg-popover text-popover-foreground flex h-full w-full flex-col overflow-hidden rounded-md",e),...r})}function kt({className:e,...r}){return w.jsxs("div",{"data-slot":"command-input-wrapper",className:"flex h-9 items-center gap-2 border-b px-3",children:[w.jsx(Le,{className:"size-4 shrink-0 opacity-50"}),w.jsx(O.Input,{"data-slot":"command-input",className:V("placeholder:text-muted-foreground flex h-10 w-full rounded-md bg-transparent py-3 text-sm outline-hidden disabled:cursor-not-allowed disabled:opacity-50",e),...r})]})}function It({className:e,...r}){return w.jsx(O.List,{"data-slot":"command-list",className:V("max-h-[300px] scroll-py-1 overflow-x-hidden overflow-y-auto",e),...r})}function Rt({...e}){return w.jsx(O.Empty,{"data-slot":"command-empty",className:"py-6 text-center text-sm",...e})}function jt({className:e,...r}){return w.jsx(O.Group,{"data-slot":"command-group",className:V("text-foreground [&_[cmdk-group-heading]]:text-muted-foreground overflow-hidden p-1 [&_[cmdk-group-heading]]:px-2 [&_[cmdk-group-heading]]:py-1.5 [&_[cmdk-group-heading]]:text-xs [&_[cmdk-group-heading]]:font-medium",e),...r})}function At({className:e,...r}){return w.jsx(O.Item,{"data-slot":"command-item",className:V("data-[selected=true]:bg-accent data-[selected=true]:text-accent-foreground [&_svg:not([class*='text-'])]:text-muted-foreground relative flex cursor-default items-center gap-2 rounded-sm px-2 py-1.5 text-sm outline-hidden select-none data-[disabled=true]:pointer-events-none data-[disabled=true]:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4",e),...r})}export{Ct as C,xt as P,St as S,wt as a,Et as b,kt as c,It as d,Rt as e,jt as f,At as g,j as h};
@@ -1 +0,0 @@
1
- function u(e,s,t,a){return e?!t||!a||t===a?"published":"published-changes":s?"unpublished":"draft"}function n(e){switch(e){case"draft":return"Publish";case"published":return"";case"published-changes":return"Publish Changes";case"unpublished":return"Republish"}}function r(e){switch(e){case"draft":return{label:"Draft",variant:"secondary"};case"published":return{label:"Published",variant:"default"};case"published-changes":return{label:"Unsaved changes",variant:"outline"};case"unpublished":return{label:"Unpublished",variant:"destructive"}}}export{r as a,n as b,u as g};
@@ -1 +0,0 @@
1
- const s=new Intl.DateTimeFormat("en-US",{year:"numeric",month:"short",day:"numeric"}),c=new Intl.DateTimeFormat("en-US",{year:"numeric",month:"short",day:"numeric",hour:"numeric",minute:"2-digit"});function u(e){return s.format(new Date(e))}function f(e){return c.format(new Date(e))}function l(e){const n=Date.now()-e,a=Math.floor(n/1e3);if(a<60)return"just now";const r=Math.floor(a/60);if(r<60)return`${r}m ago`;const o=Math.floor(r/60);if(o<24)return`${o}h ago`;const i=Math.floor(o/24);return i<7?`${i}d ago`:u(e)}function m(e){return e<1024?`${e} B`:e<1024*1024?`${(e/1024).toFixed(1)} KB`:`${(e/(1024*1024)).toFixed(1)} MB`}function h(e){return e.toLowerCase().replace(/[^\w\s-]/g,"").replace(/\s+/g,"-").replace(/-+/g,"-").trim()}function d(e){return e.toLowerCase().replace(/\s+/g,"-").replace(/[^a-z0-9_-]/g,"").replace(/[-_]{2,}/g,t=>t[0]).replace(/^[^a-z]+/,"").replace(/[-_]$/g,"")}function g(e){return e.split(/[-_]/).filter(Boolean).map(t=>t.charAt(0).toUpperCase()+t.slice(1)).join(" ")}function p(e){const t=e.split(" ");if(t.length===0)return e;const n=t[t.length-1];return n.length>2&&n.endsWith("s")&&!n.endsWith("ss")&&(t[t.length-1]=n.slice(0,-1)),t.join(" ")}export{l as a,m as b,p as c,d,f,g as i,h as s};
@@ -1 +0,0 @@
1
- @layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-translate-x:0;--tw-translate-y:0;--tw-translate-z:0;--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-space-y-reverse:0;--tw-space-x-reverse:0;--tw-border-style:solid;--tw-leading:initial;--tw-font-weight:initial;--tw-tracking:initial;--tw-ordinal:initial;--tw-slashed-zero:initial;--tw-numeric-figure:initial;--tw-numeric-spacing:initial;--tw-numeric-fraction:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-duration:initial;--tw-ease:initial;--tw-content:"";--tw-animation-delay:0s;--tw-animation-direction:normal;--tw-animation-duration:initial;--tw-animation-fill-mode:none;--tw-animation-iteration-count:1;--tw-enter-blur:0;--tw-enter-opacity:1;--tw-enter-rotate:0;--tw-enter-scale:1;--tw-enter-translate-x:0;--tw-enter-translate-y:0;--tw-exit-blur:0;--tw-exit-opacity:1;--tw-exit-rotate:0;--tw-exit-scale:1;--tw-exit-translate-x:0;--tw-exit-translate-y:0}}}@layer theme{:root,:host{--font-sans:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";--font-mono:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;--color-red-50:oklch(97.1% .013 17.38);--color-red-600:oklch(57.7% .245 27.325);--color-red-950:oklch(25.8% .092 26.042);--color-orange-500:oklch(70.5% .213 47.604);--color-yellow-50:oklch(98.7% .026 102.212);--color-yellow-200:oklch(94.5% .129 101.54);--color-yellow-300:oklch(90.5% .182 98.111);--color-yellow-500:oklch(79.5% .184 86.047);--color-yellow-700:oklch(55.4% .135 66.442);--color-yellow-800:oklch(47.6% .114 61.907);--color-yellow-950:oklch(28.6% .066 53.813);--color-green-50:oklch(98.2% .018 155.826);--color-green-500:oklch(72.3% .219 149.579);--color-green-600:oklch(62.7% .194 149.214);--color-green-700:oklch(52.7% .154 150.069);--color-green-950:oklch(26.6% .065 152.934);--color-blue-500:oklch(62.3% .214 259.815);--color-purple-500:oklch(62.7% .265 303.9);--color-black:#000;--color-white:#fff;--spacing:.25rem;--container-xs:20rem;--container-sm:24rem;--container-md:28rem;--container-lg:32rem;--container-2xl:42rem;--container-3xl:48rem;--container-4xl:56rem;--container-6xl:72rem;--text-xs:.75rem;--text-xs--line-height:calc(1/.75);--text-sm:.875rem;--text-sm--line-height:calc(1.25/.875);--text-base:1rem;--text-base--line-height: 1.5 ;--text-lg:1.125rem;--text-lg--line-height:calc(1.75/1.125);--text-xl:1.25rem;--text-xl--line-height:calc(1.75/1.25);--text-2xl:1.5rem;--text-2xl--line-height:calc(2/1.5);--font-weight-normal:400;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--tracking-wider:.05em;--tracking-widest:.1em;--leading-relaxed:1.625;--radius-xs:.125rem;--ease-in-out:cubic-bezier(.4,0,.2,1);--animate-spin:spin 1s linear infinite;--animate-pulse:pulse 2s cubic-bezier(.4,0,.6,1)infinite;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4,0,.2,1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab,red,red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}*{border-color:var(--border);outline-color:var(--ring)}@supports (color:color-mix(in lab,red,red)){*{outline-color:color-mix(in oklab,var(--ring)50%,transparent)}}body{background-color:var(--background);color:var(--foreground)}}@layer components;@layer utilities{.\@container\/card-header{container:card-header/inline-size}.pointer-events-none{pointer-events:none}.collapse{visibility:collapse}.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.inset-0{inset:calc(var(--spacing)*0)}.inset-x-0{inset-inline:calc(var(--spacing)*0)}.inset-y-0{inset-block:calc(var(--spacing)*0)}.top-0{top:calc(var(--spacing)*0)}.top-1\.5{top:calc(var(--spacing)*1.5)}.top-1\/2{top:50%}.top-2{top:calc(var(--spacing)*2)}.top-2\.5{top:calc(var(--spacing)*2.5)}.top-3\.5{top:calc(var(--spacing)*3.5)}.top-4{top:calc(var(--spacing)*4)}.top-\[50\%\]{top:50%}.right-0{right:calc(var(--spacing)*0)}.right-1{right:calc(var(--spacing)*1)}.right-2{right:calc(var(--spacing)*2)}.right-3{right:calc(var(--spacing)*3)}.right-4{right:calc(var(--spacing)*4)}.bottom-0{bottom:calc(var(--spacing)*0)}.bottom-4{bottom:calc(var(--spacing)*4)}.left-0{left:calc(var(--spacing)*0)}.left-2{left:calc(var(--spacing)*2)}.left-2\.5{left:calc(var(--spacing)*2.5)}.left-4{left:calc(var(--spacing)*4)}.left-\[50\%\]{left:50%}.z-10{z-index:10}.z-20{z-index:20}.z-40{z-index:40}.z-50{z-index:50}.col-start-2{grid-column-start:2}.row-span-2{grid-row:span 2/span 2}.row-start-1{grid-row-start:1}.container{width:100%}@media(min-width:40rem){.container{max-width:40rem}}@media(min-width:48rem){.container{max-width:48rem}}@media(min-width:64rem){.container{max-width:64rem}}@media(min-width:80rem){.container{max-width:80rem}}@media(min-width:96rem){.container{max-width:96rem}}.-m-6{margin:calc(var(--spacing)*-6)}.m-1{margin:calc(var(--spacing)*1)}.m-2{margin:calc(var(--spacing)*2)}.-mx-1{margin-inline:calc(var(--spacing)*-1)}.mx-2{margin-inline:calc(var(--spacing)*2)}.mx-3\.5{margin-inline:calc(var(--spacing)*3.5)}.mx-auto{margin-inline:auto}.my-1{margin-block:calc(var(--spacing)*1)}.my-2{margin-block:calc(var(--spacing)*2)}.mt-0\.5{margin-top:calc(var(--spacing)*.5)}.mt-1{margin-top:calc(var(--spacing)*1)}.mt-2{margin-top:calc(var(--spacing)*2)}.mt-4{margin-top:calc(var(--spacing)*4)}.mt-6{margin-top:calc(var(--spacing)*6)}.mt-auto{margin-top:auto}.mr-1{margin-right:calc(var(--spacing)*1)}.mr-1\.5{margin-right:calc(var(--spacing)*1.5)}.mr-2{margin-right:calc(var(--spacing)*2)}.mb-1{margin-bottom:calc(var(--spacing)*1)}.mb-2{margin-bottom:calc(var(--spacing)*2)}.mb-3{margin-bottom:calc(var(--spacing)*3)}.mb-4{margin-bottom:calc(var(--spacing)*4)}.mb-6{margin-bottom:calc(var(--spacing)*6)}.ml-0\.5{margin-left:calc(var(--spacing)*.5)}.ml-1{margin-left:calc(var(--spacing)*1)}.ml-2{margin-left:calc(var(--spacing)*2)}.ml-3{margin-left:calc(var(--spacing)*3)}.ml-auto{margin-left:auto}.block{display:block}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-block{display:inline-block}.inline-flex{display:inline-flex}.list-item{display:list-item}.table{display:table}.table-caption{display:table-caption}.table-cell{display:table-cell}.table-row{display:table-row}.field-sizing-content{field-sizing:content}.aspect-square{aspect-ratio:1}.size-2{width:calc(var(--spacing)*2);height:calc(var(--spacing)*2)}.size-2\.5{width:calc(var(--spacing)*2.5);height:calc(var(--spacing)*2.5)}.size-3\.5{width:calc(var(--spacing)*3.5);height:calc(var(--spacing)*3.5)}.size-4{width:calc(var(--spacing)*4);height:calc(var(--spacing)*4)}.size-6{width:calc(var(--spacing)*6);height:calc(var(--spacing)*6)}.size-7{width:calc(var(--spacing)*7);height:calc(var(--spacing)*7)}.size-8{width:calc(var(--spacing)*8);height:calc(var(--spacing)*8)}.size-9{width:calc(var(--spacing)*9);height:calc(var(--spacing)*9)}.size-10{width:calc(var(--spacing)*10);height:calc(var(--spacing)*10)}.size-16{width:calc(var(--spacing)*16);height:calc(var(--spacing)*16)}.size-full{width:100%;height:100%}.h-1{height:calc(var(--spacing)*1)}.h-2{height:calc(var(--spacing)*2)}.h-2\.5{height:calc(var(--spacing)*2.5)}.h-3{height:calc(var(--spacing)*3)}.h-3\.5{height:calc(var(--spacing)*3.5)}.h-4{height:calc(var(--spacing)*4)}.h-5{height:calc(var(--spacing)*5)}.h-6{height:calc(var(--spacing)*6)}.h-7{height:calc(var(--spacing)*7)}.h-8{height:calc(var(--spacing)*8)}.h-9{height:calc(var(--spacing)*9)}.h-10{height:calc(var(--spacing)*10)}.h-12{height:calc(var(--spacing)*12)}.h-14{height:calc(var(--spacing)*14)}.h-32{height:calc(var(--spacing)*32)}.h-48{height:calc(var(--spacing)*48)}.h-64{height:calc(var(--spacing)*64)}.h-\[calc\(100\%-1px\)\]{height:calc(100% - 1px)}.h-\[calc\(100vh-3\.5rem\)\]{height:calc(100vh - 3.5rem)}.h-\[var\(--radix-select-trigger-height\)\]{height:var(--radix-select-trigger-height)}.h-auto{height:auto}.h-full{height:100%}.h-px{height:1px}.h-screen{height:100vh}.h-svh{height:100svh}.max-h-\(--radix-dropdown-menu-content-available-height\){max-height:var(--radix-dropdown-menu-content-available-height)}.max-h-\(--radix-select-content-available-height\){max-height:var(--radix-select-content-available-height)}.max-h-48{max-height:calc(var(--spacing)*48)}.max-h-60{max-height:calc(var(--spacing)*60)}.max-h-96{max-height:calc(var(--spacing)*96)}.max-h-\[60vh\]{max-height:60vh}.max-h-\[90vh\]{max-height:90vh}.max-h-\[300px\]{max-height:300px}.max-h-full{max-height:100%}.min-h-0{min-height:calc(var(--spacing)*0)}.min-h-16{min-height:calc(var(--spacing)*16)}.min-h-\[1\.5em\]{min-height:1.5em}.min-h-\[120px\]{min-height:120px}.min-h-\[300px\]{min-height:300px}.min-h-svh{min-height:100svh}.w-\(--sidebar-width\){width:var(--sidebar-width)}.w-2\.5{width:calc(var(--spacing)*2.5)}.w-2\/3{width:66.6667%}.w-3{width:calc(var(--spacing)*3)}.w-3\.5{width:calc(var(--spacing)*3.5)}.w-3\/4{width:75%}.w-4{width:calc(var(--spacing)*4)}.w-5{width:calc(var(--spacing)*5)}.w-6{width:calc(var(--spacing)*6)}.w-7{width:calc(var(--spacing)*7)}.w-8{width:calc(var(--spacing)*8)}.w-10{width:calc(var(--spacing)*10)}.w-12{width:calc(var(--spacing)*12)}.w-20{width:calc(var(--spacing)*20)}.w-24{width:calc(var(--spacing)*24)}.w-28{width:calc(var(--spacing)*28)}.w-32{width:calc(var(--spacing)*32)}.w-40{width:calc(var(--spacing)*40)}.w-48{width:calc(var(--spacing)*48)}.w-50{width:calc(var(--spacing)*50)}.w-56{width:calc(var(--spacing)*56)}.w-64{width:calc(var(--spacing)*64)}.w-72{width:calc(var(--spacing)*72)}.w-80{width:calc(var(--spacing)*80)}.w-\[130px\]{width:130px}.w-\[140px\]{width:140px}.w-\[150px\]{width:150px}.w-\[160px\]{width:160px}.w-\[170px\]{width:170px}.w-auto{width:auto}.w-fit{width:fit-content}.w-full{width:100%}.w-screen{width:100vw}.max-w-\(--skeleton-width\){max-width:var(--skeleton-width)}.max-w-2xl{max-width:var(--container-2xl)}.max-w-3xl{max-width:var(--container-3xl)}.max-w-4xl{max-width:var(--container-4xl)}.max-w-6xl{max-width:var(--container-6xl)}.max-w-\[200px\]{max-width:200px}.max-w-\[calc\(100\%-2rem\)\]{max-width:calc(100% - 2rem)}.max-w-full{max-width:100%}.max-w-lg{max-width:var(--container-lg)}.max-w-sm{max-width:var(--container-sm)}.max-w-xs{max-width:var(--container-xs)}.min-w-0{min-width:calc(var(--spacing)*0)}.min-w-5{min-width:calc(var(--spacing)*5)}.min-w-\[8rem\]{min-width:8rem}.min-w-\[80px\]{min-width:80px}.min-w-\[200px\]{min-width:200px}.min-w-\[var\(--radix-select-trigger-width\)\]{min-width:var(--radix-select-trigger-width)}.flex-1{flex:1}.flex-shrink-0,.shrink-0{flex-shrink:0}.caption-bottom{caption-side:bottom}.origin-\(--radix-dropdown-menu-content-transform-origin\){transform-origin:var(--radix-dropdown-menu-content-transform-origin)}.origin-\(--radix-popover-content-transform-origin\){transform-origin:var(--radix-popover-content-transform-origin)}.origin-\(--radix-select-content-transform-origin\){transform-origin:var(--radix-select-content-transform-origin)}.origin-\(--radix-tooltip-content-transform-origin\){transform-origin:var(--radix-tooltip-content-transform-origin)}.-translate-x-1\/2{--tw-translate-x: -50% ;translate:var(--tw-translate-x)var(--tw-translate-y)}.-translate-x-px{--tw-translate-x:-1px;translate:var(--tw-translate-x)var(--tw-translate-y)}.translate-x-\[-50\%\]{--tw-translate-x:-50%;translate:var(--tw-translate-x)var(--tw-translate-y)}.translate-x-px{--tw-translate-x:1px;translate:var(--tw-translate-x)var(--tw-translate-y)}.-translate-y-1\/2{--tw-translate-y: -50% ;translate:var(--tw-translate-x)var(--tw-translate-y)}.translate-y-\[-50\%\]{--tw-translate-y:-50%;translate:var(--tw-translate-x)var(--tw-translate-y)}.translate-y-\[calc\(-50\%_-_2px\)\]{--tw-translate-y: calc(-50% - 2px) ;translate:var(--tw-translate-x)var(--tw-translate-y)}.rotate-45{rotate:45deg}.rotate-90{rotate:90deg}.transform{transform:var(--tw-rotate-x,)var(--tw-rotate-y,)var(--tw-rotate-z,)var(--tw-skew-x,)var(--tw-skew-y,)}.animate-in{animation:enter var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,none)}.animate-pulse{animation:var(--animate-pulse)}.animate-spin{animation:var(--animate-spin)}.cursor-default{cursor:default}.cursor-grab{cursor:grab}.cursor-pointer{cursor:pointer}.cursor-zoom-in{cursor:zoom-in}.touch-none{touch-action:none}.resize{resize:both}.scroll-my-1{scroll-margin-block:calc(var(--spacing)*1)}.scroll-py-1{scroll-padding-block:calc(var(--spacing)*1)}.list-disc{list-style-type:disc}.auto-rows-min{grid-auto-rows:min-content}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.grid-cols-\[1fr_280px\]{grid-template-columns:1fr 280px}.grid-rows-\[auto_1fr\]{grid-template-rows:auto 1fr}.grid-rows-\[auto_auto\]{grid-template-rows:auto auto}.flex-col{flex-direction:column}.flex-col-reverse{flex-direction:column-reverse}.flex-wrap{flex-wrap:wrap}.place-content-center{place-content:center}.place-items-center{place-items:center}.items-center{align-items:center}.items-start{align-items:flex-start}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.justify-end{justify-content:flex-end}.gap-1{gap:calc(var(--spacing)*1)}.gap-1\.5{gap:calc(var(--spacing)*1.5)}.gap-2{gap:calc(var(--spacing)*2)}.gap-3{gap:calc(var(--spacing)*3)}.gap-4{gap:calc(var(--spacing)*4)}.gap-6{gap:calc(var(--spacing)*6)}:where(.space-y-0\.5>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*.5)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*.5)*calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-1>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*1)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*1)*calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-2>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*2)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*2)*calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-3>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*3)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*3)*calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-4>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*4)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*4)*calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-5>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*5)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*5)*calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-6>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*6)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*6)*calc(1 - var(--tw-space-y-reverse)))}.gap-x-4{column-gap:calc(var(--spacing)*4)}:where(.-space-x-2>:not(:last-child)){--tw-space-x-reverse:0;margin-inline-start:calc(calc(var(--spacing)*-2)*var(--tw-space-x-reverse));margin-inline-end:calc(calc(var(--spacing)*-2)*calc(1 - var(--tw-space-x-reverse)))}.gap-y-1{row-gap:calc(var(--spacing)*1)}.self-start{align-self:flex-start}.justify-self-end{justify-self:flex-end}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.overflow-auto{overflow:auto}.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.overflow-x-hidden{overflow-x:hidden}.overflow-y-auto{overflow-y:auto}.rounded{border-radius:.25rem}.rounded-\[2px\]{border-radius:2px}.rounded-\[4px\]{border-radius:4px}.rounded-\[inherit\]{border-radius:inherit}.rounded-full{border-radius:3.40282e38px}.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:calc(var(--radius) + 4px)}.rounded-xs{border-radius:var(--radius-xs)}.rounded-l-none{border-top-left-radius:0;border-bottom-left-radius:0}.rounded-r-none{border-top-right-radius:0;border-bottom-right-radius:0}.border{border-style:var(--tw-border-style);border-width:1px}.border-0{border-style:var(--tw-border-style);border-width:0}.border-2{border-style:var(--tw-border-style);border-width:2px}.border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.border-r{border-right-style:var(--tw-border-style);border-right-width:1px}.border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.border-l{border-left-style:var(--tw-border-style);border-left-width:1px}.border-dashed{--tw-border-style:dashed;border-style:dashed}.border-border{border-color:var(--border)}.border-destructive{border-color:var(--destructive)}.border-green-500{border-color:var(--color-green-500)}.border-input{border-color:var(--input)}.border-muted{border-color:var(--muted)}.border-primary{border-color:var(--primary)}.border-sidebar-border{border-color:var(--sidebar-border)}.border-transparent{border-color:#0000}.border-yellow-500{border-color:var(--color-yellow-500)}.border-yellow-500\/50{border-color:#edb20080}@supports (color:color-mix(in lab,red,red)){.border-yellow-500\/50{border-color:color-mix(in oklab,var(--color-yellow-500)50%,transparent)}}.border-t-transparent{border-top-color:#0000}.border-l-transparent{border-left-color:#0000}.bg-accent{background-color:var(--accent)}.bg-background,.bg-background\/90{background-color:var(--background)}@supports (color:color-mix(in lab,red,red)){.bg-background\/90{background-color:color-mix(in oklab,var(--background)90%,transparent)}}.bg-black\/0{background-color:#0000}@supports (color:color-mix(in lab,red,red)){.bg-black\/0{background-color:color-mix(in oklab,var(--color-black)0%,transparent)}}.bg-black\/50{background-color:#00000080}@supports (color:color-mix(in lab,red,red)){.bg-black\/50{background-color:color-mix(in oklab,var(--color-black)50%,transparent)}}.bg-black\/90{background-color:#000000e6}@supports (color:color-mix(in lab,red,red)){.bg-black\/90{background-color:color-mix(in oklab,var(--color-black)90%,transparent)}}.bg-border{background-color:var(--border)}.bg-card{background-color:var(--card)}.bg-destructive{background-color:var(--destructive)}.bg-foreground{background-color:var(--foreground)}.bg-green-50{background-color:var(--color-green-50)}.bg-muted,.bg-muted\/30{background-color:var(--muted)}@supports (color:color-mix(in lab,red,red)){.bg-muted\/30{background-color:color-mix(in oklab,var(--muted)30%,transparent)}}.bg-muted\/50{background-color:var(--muted)}@supports (color:color-mix(in lab,red,red)){.bg-muted\/50{background-color:color-mix(in oklab,var(--muted)50%,transparent)}}.bg-popover{background-color:var(--popover)}.bg-primary,.bg-primary\/5{background-color:var(--primary)}@supports (color:color-mix(in lab,red,red)){.bg-primary\/5{background-color:color-mix(in oklab,var(--primary)5%,transparent)}}.bg-primary\/10{background-color:var(--primary)}@supports (color:color-mix(in lab,red,red)){.bg-primary\/10{background-color:color-mix(in oklab,var(--primary)10%,transparent)}}.bg-red-50{background-color:var(--color-red-50)}.bg-secondary{background-color:var(--secondary)}.bg-sidebar{background-color:var(--sidebar)}.bg-sidebar-border{background-color:var(--sidebar-border)}.bg-transparent{background-color:#0000}.bg-yellow-50{background-color:var(--color-yellow-50)}.fill-current{fill:currentColor}.fill-foreground{fill:var(--foreground)}.object-contain{object-fit:contain}.object-cover{object-fit:cover}.p-0{padding:calc(var(--spacing)*0)}.p-0\.5{padding:calc(var(--spacing)*.5)}.p-1{padding:calc(var(--spacing)*1)}.p-1\.5{padding:calc(var(--spacing)*1.5)}.p-2{padding:calc(var(--spacing)*2)}.p-3{padding:calc(var(--spacing)*3)}.p-4{padding:calc(var(--spacing)*4)}.p-6{padding:calc(var(--spacing)*6)}.p-8{padding:calc(var(--spacing)*8)}.p-\[3px\]{padding:3px}.p-px{padding:1px}.px-1{padding-inline:calc(var(--spacing)*1)}.px-1\.5{padding-inline:calc(var(--spacing)*1.5)}.px-2{padding-inline:calc(var(--spacing)*2)}.px-2\.5{padding-inline:calc(var(--spacing)*2.5)}.px-3{padding-inline:calc(var(--spacing)*3)}.px-4{padding-inline:calc(var(--spacing)*4)}.px-6{padding-inline:calc(var(--spacing)*6)}.px-16{padding-inline:calc(var(--spacing)*16)}.py-0{padding-block:calc(var(--spacing)*0)}.py-0\.5{padding-block:calc(var(--spacing)*.5)}.py-1{padding-block:calc(var(--spacing)*1)}.py-1\.5{padding-block:calc(var(--spacing)*1.5)}.py-2{padding-block:calc(var(--spacing)*2)}.py-3{padding-block:calc(var(--spacing)*3)}.py-4{padding-block:calc(var(--spacing)*4)}.py-6{padding-block:calc(var(--spacing)*6)}.py-8{padding-block:calc(var(--spacing)*8)}.py-16{padding-block:calc(var(--spacing)*16)}.pt-4{padding-top:calc(var(--spacing)*4)}.pt-6{padding-top:calc(var(--spacing)*6)}.pr-2{padding-right:calc(var(--spacing)*2)}.pr-8{padding-right:calc(var(--spacing)*8)}.pb-1{padding-bottom:calc(var(--spacing)*1)}.pl-2{padding-left:calc(var(--spacing)*2)}.pl-5{padding-left:calc(var(--spacing)*5)}.pl-8{padding-left:calc(var(--spacing)*8)}.pl-9{padding-left:calc(var(--spacing)*9)}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.align-middle{vertical-align:middle}.font-mono{font-family:var(--font-mono)}.text-2xl{font-size:var(--text-2xl);line-height:var(--tw-leading,var(--text-2xl--line-height))}.text-base{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}.text-lg{font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-xl{font-size:var(--text-xl);line-height:var(--tw-leading,var(--text-xl--line-height))}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.text-\[10px\]{font-size:10px}.leading-none{--tw-leading:1;line-height:1}.leading-relaxed{--tw-leading:var(--leading-relaxed);line-height:var(--leading-relaxed)}.font-bold{--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold)}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.font-normal{--tw-font-weight:var(--font-weight-normal);font-weight:var(--font-weight-normal)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.tracking-wider{--tw-tracking:var(--tracking-wider);letter-spacing:var(--tracking-wider)}.tracking-widest{--tw-tracking:var(--tracking-widest);letter-spacing:var(--tracking-widest)}.text-balance{text-wrap:balance}.break-all{word-break:break-all}.whitespace-nowrap{white-space:nowrap}.text-accent-foreground{color:var(--accent-foreground)}.text-background{color:var(--background)}.text-blue-500{color:var(--color-blue-500)}.text-card-foreground{color:var(--card-foreground)}.text-current{color:currentColor}.text-destructive{color:var(--destructive)}.text-foreground,.text-foreground\/60{color:var(--foreground)}@supports (color:color-mix(in lab,red,red)){.text-foreground\/60{color:color-mix(in oklab,var(--foreground)60%,transparent)}}.text-green-500{color:var(--color-green-500)}.text-green-600{color:var(--color-green-600)}.text-green-700{color:var(--color-green-700)}.text-muted-foreground{color:var(--muted-foreground)}.text-orange-500{color:var(--color-orange-500)}.text-popover-foreground{color:var(--popover-foreground)}.text-primary{color:var(--primary)}.text-primary-foreground{color:var(--primary-foreground)}.text-purple-500{color:var(--color-purple-500)}.text-red-600{color:var(--color-red-600)}.text-secondary-foreground{color:var(--secondary-foreground)}.text-sidebar-foreground,.text-sidebar-foreground\/70{color:var(--sidebar-foreground)}@supports (color:color-mix(in lab,red,red)){.text-sidebar-foreground\/70{color:color-mix(in oklab,var(--sidebar-foreground)70%,transparent)}}.text-white{color:var(--color-white)}.text-yellow-700{color:var(--color-yellow-700)}.text-yellow-800{color:var(--color-yellow-800)}.capitalize{text-transform:capitalize}.lowercase{text-transform:lowercase}.uppercase{text-transform:uppercase}.italic{font-style:italic}.tabular-nums{--tw-numeric-spacing:tabular-nums;font-variant-numeric:var(--tw-ordinal,)var(--tw-slashed-zero,)var(--tw-numeric-figure,)var(--tw-numeric-spacing,)var(--tw-numeric-fraction,)}.underline{text-decoration-line:underline}.underline-offset-4{text-underline-offset:4px}.opacity-0{opacity:0}.opacity-50{opacity:.5}.opacity-70{opacity:.7}.opacity-100{opacity:1}.shadow{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a),0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-\[0_0_0_1px_hsl\(var\(--sidebar-border\)\)\]{--tw-shadow:0 0 0 1px var(--tw-shadow-color,hsl(var(--sidebar-border)));box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-lg{--tw-shadow:0 10px 15px -3px var(--tw-shadow-color,#0000001a),0 4px 6px -4px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-md{--tw-shadow:0 4px 6px -1px var(--tw-shadow-color,#0000001a),0 2px 4px -2px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-none{--tw-shadow:0 0 #0000;box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-sm{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a),0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-xs{--tw-shadow:0 1px 2px 0 var(--tw-shadow-color,#0000000d);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.ring{--tw-ring-shadow:var(--tw-ring-inset,)0 0 0 calc(1px + var(--tw-ring-offset-width))var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.ring-2{--tw-ring-shadow:var(--tw-ring-inset,)0 0 0 calc(2px + var(--tw-ring-offset-width))var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.ring-background{--tw-ring-color:var(--background)}.ring-primary{--tw-ring-color:var(--primary)}.ring-sidebar-ring{--tw-ring-color:var(--sidebar-ring)}.ring-offset-background{--tw-ring-offset-color:var(--background)}.outline-hidden{--tw-outline-style:none;outline-style:none}@media(forced-colors:active){.outline-hidden{outline-offset:2px;outline:2px solid #0000}}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.blur{--tw-blur:blur(8px);filter:var(--tw-blur,)var(--tw-brightness,)var(--tw-contrast,)var(--tw-grayscale,)var(--tw-hue-rotate,)var(--tw-invert,)var(--tw-saturate,)var(--tw-sepia,)var(--tw-drop-shadow,)}.drop-shadow{--tw-drop-shadow-size:drop-shadow(0 1px 2px var(--tw-drop-shadow-color,#0000001a))drop-shadow(0 1px 1px var(--tw-drop-shadow-color,#0000000f));--tw-drop-shadow:drop-shadow(0 1px 2px #0000001a)drop-shadow(0 1px 1px #0000000f);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,)}.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,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\[color\,box-shadow\]{transition-property:color,box-shadow;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\[left\,right\,width\]{transition-property:left,right,width;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\[margin\,opacity\]{transition-property:margin,opacity;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\[width\,height\,padding\]{transition-property:width,height,padding;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\[width\]{transition-property:width;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-all{transition-property:all;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-opacity{transition-property:opacity;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-shadow{transition-property:box-shadow;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-transform{transition-property:transform,translate,scale,rotate;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-none{transition-property:none}.duration-200{--tw-duration:.2s;transition-duration:.2s}.ease-in-out{--tw-ease:var(--ease-in-out);transition-timing-function:var(--ease-in-out)}.ease-linear{--tw-ease:linear;transition-timing-function:linear}.fade-in-0{--tw-enter-opacity:0}.outline-none{--tw-outline-style:none;outline-style:none}.select-all{-webkit-user-select:all;user-select:all}.select-none{-webkit-user-select:none;user-select:none}.zoom-in-95{--tw-enter-scale:.95}.group-focus-within\/menu-item\:opacity-100:is(:where(.group\/menu-item):focus-within *){opacity:1}@media(hover:hover){.group-hover\:bg-black\/20:is(:where(.group):hover *){background-color:#0003}@supports (color:color-mix(in lab,red,red)){.group-hover\:bg-black\/20:is(:where(.group):hover *){background-color:color-mix(in oklab,var(--color-black)20%,transparent)}}.group-hover\:opacity-100:is(:where(.group):hover *),.group-hover\/menu-item\:opacity-100:is(:where(.group\/menu-item):hover *){opacity:1}}.group-has-data-\[sidebar\=menu-action\]\/menu-item\:pr-8:is(:where(.group\/menu-item):has([data-sidebar=menu-action]) *){padding-right:calc(var(--spacing)*8)}.group-has-data-\[size\=lg\]\/avatar-group\:size-10:is(:where(.group\/avatar-group):has([data-size=lg]) *){width:calc(var(--spacing)*10);height:calc(var(--spacing)*10)}.group-has-data-\[size\=sm\]\/avatar-group\:size-6:is(:where(.group\/avatar-group):has([data-size=sm]) *){width:calc(var(--spacing)*6);height:calc(var(--spacing)*6)}.group-data-\[collapsible\=icon\]\:-mt-8:is(:where(.group)[data-collapsible=icon] *){margin-top:calc(var(--spacing)*-8)}.group-data-\[collapsible\=icon\]\:hidden:is(:where(.group)[data-collapsible=icon] *){display:none}.group-data-\[collapsible\=icon\]\:size-8\!:is(:where(.group)[data-collapsible=icon] *){width:calc(var(--spacing)*8)!important;height:calc(var(--spacing)*8)!important}.group-data-\[collapsible\=icon\]\:w-\(--sidebar-width-icon\):is(:where(.group)[data-collapsible=icon] *){width:var(--sidebar-width-icon)}.group-data-\[collapsible\=icon\]\:w-\[calc\(var\(--sidebar-width-icon\)\+\(--spacing\(4\)\)\)\]:is(:where(.group)[data-collapsible=icon] *){width:calc(var(--sidebar-width-icon) + (calc(var(--spacing)*4)))}.group-data-\[collapsible\=icon\]\:w-\[calc\(var\(--sidebar-width-icon\)\+\(--spacing\(4\)\)\+2px\)\]:is(:where(.group)[data-collapsible=icon] *){width:calc(var(--sidebar-width-icon) + (calc(var(--spacing)*4)) + 2px)}.group-data-\[collapsible\=icon\]\:overflow-hidden:is(:where(.group)[data-collapsible=icon] *){overflow:hidden}.group-data-\[collapsible\=icon\]\:p-0\!:is(:where(.group)[data-collapsible=icon] *){padding:calc(var(--spacing)*0)!important}.group-data-\[collapsible\=icon\]\:p-2\!:is(:where(.group)[data-collapsible=icon] *){padding:calc(var(--spacing)*2)!important}.group-data-\[collapsible\=icon\]\:opacity-0:is(:where(.group)[data-collapsible=icon] *){opacity:0}.group-data-\[collapsible\=offcanvas\]\:right-\[calc\(var\(--sidebar-width\)\*-1\)\]:is(:where(.group)[data-collapsible=offcanvas] *){right:calc(var(--sidebar-width)*-1)}.group-data-\[collapsible\=offcanvas\]\:left-\[calc\(var\(--sidebar-width\)\*-1\)\]:is(:where(.group)[data-collapsible=offcanvas] *){left:calc(var(--sidebar-width)*-1)}.group-data-\[collapsible\=offcanvas\]\:w-0:is(:where(.group)[data-collapsible=offcanvas] *){width:calc(var(--spacing)*0)}.group-data-\[collapsible\=offcanvas\]\:translate-x-0:is(:where(.group)[data-collapsible=offcanvas] *){--tw-translate-x:calc(var(--spacing)*0);translate:var(--tw-translate-x)var(--tw-translate-y)}.group-data-\[disabled\=true\]\:pointer-events-none:is(:where(.group)[data-disabled=true] *){pointer-events:none}.group-data-\[disabled\=true\]\:opacity-50:is(:where(.group)[data-disabled=true] *){opacity:.5}.group-data-\[orientation\=horizontal\]\/tabs\:h-9:is(:where(.group\/tabs)[data-orientation=horizontal] *){height:calc(var(--spacing)*9)}.group-data-\[orientation\=vertical\]\/tabs\:h-fit:is(:where(.group\/tabs)[data-orientation=vertical] *){height:fit-content}.group-data-\[orientation\=vertical\]\/tabs\:w-full:is(:where(.group\/tabs)[data-orientation=vertical] *){width:100%}.group-data-\[orientation\=vertical\]\/tabs\:flex-col:is(:where(.group\/tabs)[data-orientation=vertical] *){flex-direction:column}.group-data-\[orientation\=vertical\]\/tabs\:justify-start:is(:where(.group\/tabs)[data-orientation=vertical] *){justify-content:flex-start}.group-data-\[side\=left\]\:-right-4:is(:where(.group)[data-side=left] *){right:calc(var(--spacing)*-4)}.group-data-\[side\=left\]\:border-r:is(:where(.group)[data-side=left] *){border-right-style:var(--tw-border-style);border-right-width:1px}.group-data-\[side\=right\]\:left-0:is(:where(.group)[data-side=right] *){left:calc(var(--spacing)*0)}.group-data-\[side\=right\]\:rotate-180:is(:where(.group)[data-side=right] *){rotate:180deg}.group-data-\[side\=right\]\:border-l:is(:where(.group)[data-side=right] *){border-left-style:var(--tw-border-style);border-left-width:1px}.group-data-\[size\=default\]\/avatar\:size-2\.5:is(:where(.group\/avatar)[data-size=default] *){width:calc(var(--spacing)*2.5);height:calc(var(--spacing)*2.5)}.group-data-\[size\=lg\]\/avatar\:size-3:is(:where(.group\/avatar)[data-size=lg] *){width:calc(var(--spacing)*3);height:calc(var(--spacing)*3)}.group-data-\[size\=sm\]\/alert-dialog-content\:grid:is(:where(.group\/alert-dialog-content)[data-size=sm] *){display:grid}.group-data-\[size\=sm\]\/alert-dialog-content\:grid-cols-2:is(:where(.group\/alert-dialog-content)[data-size=sm] *){grid-template-columns:repeat(2,minmax(0,1fr))}.group-data-\[size\=sm\]\/avatar\:size-2:is(:where(.group\/avatar)[data-size=sm] *){width:calc(var(--spacing)*2);height:calc(var(--spacing)*2)}.group-data-\[size\=sm\]\/avatar\:text-xs:is(:where(.group\/avatar)[data-size=sm] *){font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.group-data-\[variant\=floating\]\:rounded-lg:is(:where(.group)[data-variant=floating] *){border-radius:var(--radius)}.group-data-\[variant\=floating\]\:border:is(:where(.group)[data-variant=floating] *){border-style:var(--tw-border-style);border-width:1px}.group-data-\[variant\=floating\]\:border-sidebar-border:is(:where(.group)[data-variant=floating] *){border-color:var(--sidebar-border)}.group-data-\[variant\=floating\]\:shadow-sm:is(:where(.group)[data-variant=floating] *){--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a),0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.group-data-\[variant\=line\]\/tabs-list\:bg-transparent:is(:where(.group\/tabs-list)[data-variant=line] *){background-color:#0000}@media(hover:hover){.peer-hover\/menu-button\:text-sidebar-accent-foreground:is(:where(.peer\/menu-button):hover~*){color:var(--sidebar-accent-foreground)}}.peer-disabled\:cursor-not-allowed:is(:where(.peer):disabled~*){cursor:not-allowed}.peer-disabled\:opacity-50:is(:where(.peer):disabled~*){opacity:.5}.peer-data-\[active\=true\]\/menu-button\:text-sidebar-accent-foreground:is(:where(.peer\/menu-button)[data-active=true]~*){color:var(--sidebar-accent-foreground)}.peer-data-\[size\=default\]\/menu-button\:top-1\.5:is(:where(.peer\/menu-button)[data-size=default]~*){top:calc(var(--spacing)*1.5)}.peer-data-\[size\=lg\]\/menu-button\:top-2\.5:is(:where(.peer\/menu-button)[data-size=lg]~*){top:calc(var(--spacing)*2.5)}.peer-data-\[size\=sm\]\/menu-button\:top-1:is(:where(.peer\/menu-button)[data-size=sm]~*){top:calc(var(--spacing)*1)}.selection\:bg-primary ::selection{background-color:var(--primary)}.selection\:bg-primary::selection{background-color:var(--primary)}.selection\:text-primary-foreground ::selection{color:var(--primary-foreground)}.selection\:text-primary-foreground::selection{color:var(--primary-foreground)}.file\:inline-flex::file-selector-button{display:inline-flex}.file\:h-7::file-selector-button{height:calc(var(--spacing)*7)}.file\:border-0::file-selector-button{border-style:var(--tw-border-style);border-width:0}.file\:bg-transparent::file-selector-button{background-color:#0000}.file\:text-sm::file-selector-button{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.file\:font-medium::file-selector-button{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.file\:text-foreground::file-selector-button{color:var(--foreground)}.placeholder\:text-muted-foreground::placeholder{color:var(--muted-foreground)}.after\:absolute:after{content:var(--tw-content);position:absolute}.after\:-inset-2:after{content:var(--tw-content);inset:calc(var(--spacing)*-2)}.after\:inset-y-0:after{content:var(--tw-content);inset-block:calc(var(--spacing)*0)}.after\:left-1\/2:after{content:var(--tw-content);left:50%}.after\:w-\[2px\]:after{content:var(--tw-content);width:2px}.after\:bg-foreground:after{content:var(--tw-content);background-color:var(--foreground)}.after\:opacity-0:after{content:var(--tw-content);opacity:0}.after\:transition-opacity:after{content:var(--tw-content);transition-property:opacity;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.group-data-\[collapsible\=offcanvas\]\:after\:left-full:is(:where(.group)[data-collapsible=offcanvas] *):after{content:var(--tw-content);left:100%}.group-data-\[orientation\=horizontal\]\/tabs\:after\:inset-x-0:is(:where(.group\/tabs)[data-orientation=horizontal] *):after{content:var(--tw-content);inset-inline:calc(var(--spacing)*0)}.group-data-\[orientation\=horizontal\]\/tabs\:after\:bottom-\[-5px\]:is(:where(.group\/tabs)[data-orientation=horizontal] *):after{content:var(--tw-content);bottom:-5px}.group-data-\[orientation\=horizontal\]\/tabs\:after\:h-0\.5:is(:where(.group\/tabs)[data-orientation=horizontal] *):after{content:var(--tw-content);height:calc(var(--spacing)*.5)}.group-data-\[orientation\=vertical\]\/tabs\:after\:inset-y-0:is(:where(.group\/tabs)[data-orientation=vertical] *):after{content:var(--tw-content);inset-block:calc(var(--spacing)*0)}.group-data-\[orientation\=vertical\]\/tabs\:after\:-right-1:is(:where(.group\/tabs)[data-orientation=vertical] *):after{content:var(--tw-content);right:calc(var(--spacing)*-1)}.group-data-\[orientation\=vertical\]\/tabs\:after\:w-0\.5:is(:where(.group\/tabs)[data-orientation=vertical] *):after{content:var(--tw-content);width:calc(var(--spacing)*.5)}.last\:border-b-0:last-child{border-bottom-style:var(--tw-border-style);border-bottom-width:0}.focus-within\:ring-1:focus-within{--tw-ring-shadow:var(--tw-ring-inset,)0 0 0 calc(1px + var(--tw-ring-offset-width))var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.focus-within\:ring-ring:focus-within{--tw-ring-color:var(--ring)}@media(hover:hover){.hover\:bg-accent:hover,.hover\:bg-accent\/50:hover{background-color:var(--accent)}@supports (color:color-mix(in lab,red,red)){.hover\:bg-accent\/50:hover{background-color:color-mix(in oklab,var(--accent)50%,transparent)}}.hover\:bg-black\/70:hover{background-color:#000000b3}@supports (color:color-mix(in lab,red,red)){.hover\:bg-black\/70:hover{background-color:color-mix(in oklab,var(--color-black)70%,transparent)}}.hover\:bg-destructive\/90:hover{background-color:var(--destructive)}@supports (color:color-mix(in lab,red,red)){.hover\:bg-destructive\/90:hover{background-color:color-mix(in oklab,var(--destructive)90%,transparent)}}.hover\:bg-muted:hover,.hover\:bg-muted\/50:hover{background-color:var(--muted)}@supports (color:color-mix(in lab,red,red)){.hover\:bg-muted\/50:hover{background-color:color-mix(in oklab,var(--muted)50%,transparent)}}.hover\:bg-primary\/90:hover{background-color:var(--primary)}@supports (color:color-mix(in lab,red,red)){.hover\:bg-primary\/90:hover{background-color:color-mix(in oklab,var(--primary)90%,transparent)}}.hover\:bg-secondary\/80:hover{background-color:var(--secondary)}@supports (color:color-mix(in lab,red,red)){.hover\:bg-secondary\/80:hover{background-color:color-mix(in oklab,var(--secondary)80%,transparent)}}.hover\:bg-sidebar-accent:hover{background-color:var(--sidebar-accent)}.hover\:bg-white\/20:hover{background-color:#fff3}@supports (color:color-mix(in lab,red,red)){.hover\:bg-white\/20:hover{background-color:color-mix(in oklab,var(--color-white)20%,transparent)}}.hover\:text-accent-foreground:hover{color:var(--accent-foreground)}.hover\:text-foreground:hover{color:var(--foreground)}.hover\:text-sidebar-accent-foreground:hover{color:var(--sidebar-accent-foreground)}.hover\:underline:hover{text-decoration-line:underline}.hover\:opacity-100:hover{opacity:1}.hover\:shadow-\[0_0_0_1px_hsl\(var\(--sidebar-accent\)\)\]:hover{--tw-shadow:0 0 0 1px var(--tw-shadow-color,hsl(var(--sidebar-accent)));box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.hover\:shadow-md:hover{--tw-shadow:0 4px 6px -1px var(--tw-shadow-color,#0000001a),0 2px 4px -2px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.hover\:ring-2:hover{--tw-ring-shadow:var(--tw-ring-inset,)0 0 0 calc(2px + var(--tw-ring-offset-width))var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.hover\:ring-primary:hover{--tw-ring-color:var(--primary)}.hover\:group-data-\[collapsible\=offcanvas\]\:bg-sidebar:hover:is(:where(.group)[data-collapsible=offcanvas] *){background-color:var(--sidebar)}.hover\:after\:bg-sidebar-border:hover:after{content:var(--tw-content);background-color:var(--sidebar-border)}}.focus\:bg-accent:focus{background-color:var(--accent)}.focus\:text-accent-foreground:focus{color:var(--accent-foreground)}.focus\:text-destructive:focus{color:var(--destructive)}.focus\:ring-2:focus{--tw-ring-shadow:var(--tw-ring-inset,)0 0 0 calc(2px + var(--tw-ring-offset-width))var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.focus\:ring-ring:focus{--tw-ring-color:var(--ring)}.focus\:ring-offset-2:focus{--tw-ring-offset-width:2px;--tw-ring-offset-shadow:var(--tw-ring-inset,)0 0 0 var(--tw-ring-offset-width)var(--tw-ring-offset-color)}.focus\:outline-hidden:focus{--tw-outline-style:none;outline-style:none}@media(forced-colors:active){.focus\:outline-hidden:focus{outline-offset:2px;outline:2px solid #0000}}.focus-visible\:border-ring:focus-visible{border-color:var(--ring)}.focus-visible\:ring-0:focus-visible{--tw-ring-shadow:var(--tw-ring-inset,)0 0 0 calc(0px + var(--tw-ring-offset-width))var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.focus-visible\:ring-2:focus-visible{--tw-ring-shadow:var(--tw-ring-inset,)0 0 0 calc(2px + var(--tw-ring-offset-width))var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.focus-visible\:ring-\[3px\]:focus-visible{--tw-ring-shadow:var(--tw-ring-inset,)0 0 0 calc(3px + var(--tw-ring-offset-width))var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.focus-visible\:ring-destructive\/20:focus-visible{--tw-ring-color:var(--destructive)}@supports (color:color-mix(in lab,red,red)){.focus-visible\:ring-destructive\/20:focus-visible{--tw-ring-color:color-mix(in oklab,var(--destructive)20%,transparent)}}.focus-visible\:ring-ring\/50:focus-visible{--tw-ring-color:var(--ring)}@supports (color:color-mix(in lab,red,red)){.focus-visible\:ring-ring\/50:focus-visible{--tw-ring-color:color-mix(in oklab,var(--ring)50%,transparent)}}.focus-visible\:outline-1:focus-visible{outline-style:var(--tw-outline-style);outline-width:1px}.focus-visible\:outline-ring:focus-visible{outline-color:var(--ring)}.active\:bg-sidebar-accent:active{background-color:var(--sidebar-accent)}.active\:text-sidebar-accent-foreground:active{color:var(--sidebar-accent-foreground)}.disabled\:pointer-events-none:disabled{pointer-events:none}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:opacity-50:disabled{opacity:.5}:where([data-side=left]) .in-data-\[side\=left\]\:cursor-w-resize{cursor:w-resize}:where([data-side=right]) .in-data-\[side\=right\]\:cursor-e-resize{cursor:e-resize}.has-data-\[slot\=alert-dialog-media\]\:grid-rows-\[auto_auto_1fr\]:has([data-slot=alert-dialog-media]){grid-template-rows:auto auto 1fr}.has-data-\[slot\=alert-dialog-media\]\:gap-x-6:has([data-slot=alert-dialog-media]){column-gap:calc(var(--spacing)*6)}.has-data-\[slot\=card-action\]\:grid-cols-\[1fr_auto\]:has([data-slot=card-action]){grid-template-columns:1fr auto}.has-data-\[variant\=inset\]\:bg-sidebar:has([data-variant=inset]){background-color:var(--sidebar)}.has-\[\>svg\]\:px-1\.5:has(>svg){padding-inline:calc(var(--spacing)*1.5)}.has-\[\>svg\]\:px-2\.5:has(>svg){padding-inline:calc(var(--spacing)*2.5)}.has-\[\>svg\]\:px-3:has(>svg){padding-inline:calc(var(--spacing)*3)}.has-\[\>svg\]\:px-4:has(>svg){padding-inline:calc(var(--spacing)*4)}.aria-disabled\:pointer-events-none[aria-disabled=true]{pointer-events:none}.aria-disabled\:opacity-50[aria-disabled=true]{opacity:.5}.aria-invalid\:border-destructive[aria-invalid=true]{border-color:var(--destructive)}.aria-invalid\:ring-destructive\/20[aria-invalid=true]{--tw-ring-color:var(--destructive)}@supports (color:color-mix(in lab,red,red)){.aria-invalid\:ring-destructive\/20[aria-invalid=true]{--tw-ring-color:color-mix(in oklab,var(--destructive)20%,transparent)}}.data-\[active\=true\]\:bg-sidebar-accent[data-active=true]{background-color:var(--sidebar-accent)}.data-\[active\=true\]\:font-medium[data-active=true]{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.data-\[active\=true\]\:text-sidebar-accent-foreground[data-active=true]{color:var(--sidebar-accent-foreground)}.data-\[disabled\]\:pointer-events-none[data-disabled]{pointer-events:none}.data-\[disabled\]\:opacity-50[data-disabled]{opacity:.5}.data-\[disabled\=true\]\:pointer-events-none[data-disabled=true]{pointer-events:none}.data-\[disabled\=true\]\:opacity-50[data-disabled=true]{opacity:.5}.data-\[inset\]\:pl-8[data-inset]{padding-left:calc(var(--spacing)*8)}.data-\[orientation\=horizontal\]\:h-px[data-orientation=horizontal]{height:1px}.data-\[orientation\=horizontal\]\:w-full[data-orientation=horizontal]{width:100%}.data-\[orientation\=horizontal\]\:flex-col[data-orientation=horizontal]{flex-direction:column}.data-\[orientation\=vertical\]\:h-full[data-orientation=vertical]{height:100%}.data-\[orientation\=vertical\]\:w-px[data-orientation=vertical]{width:1px}.data-\[placeholder\]\:text-muted-foreground[data-placeholder]{color:var(--muted-foreground)}.data-\[selected\=true\]\:bg-accent[data-selected=true]{background-color:var(--accent)}.data-\[selected\=true\]\:text-accent-foreground[data-selected=true]{color:var(--accent-foreground)}.data-\[side\=bottom\]\:translate-y-1[data-side=bottom]{--tw-translate-y:calc(var(--spacing)*1);translate:var(--tw-translate-x)var(--tw-translate-y)}.data-\[side\=bottom\]\:slide-in-from-top-2[data-side=bottom]{--tw-enter-translate-y:calc(2*var(--spacing)*-1)}.data-\[side\=left\]\:-translate-x-1[data-side=left]{--tw-translate-x:calc(var(--spacing)*-1);translate:var(--tw-translate-x)var(--tw-translate-y)}.data-\[side\=left\]\:slide-in-from-right-2[data-side=left]{--tw-enter-translate-x:calc(2*var(--spacing))}.data-\[side\=right\]\:translate-x-1[data-side=right]{--tw-translate-x:calc(var(--spacing)*1);translate:var(--tw-translate-x)var(--tw-translate-y)}.data-\[side\=right\]\:slide-in-from-left-2[data-side=right]{--tw-enter-translate-x:calc(2*var(--spacing)*-1)}.data-\[side\=top\]\:-translate-y-1[data-side=top]{--tw-translate-y:calc(var(--spacing)*-1);translate:var(--tw-translate-x)var(--tw-translate-y)}.data-\[side\=top\]\:slide-in-from-bottom-2[data-side=top]{--tw-enter-translate-y:calc(2*var(--spacing))}.data-\[size\=default\]\:h-9[data-size=default]{height:calc(var(--spacing)*9)}.data-\[size\=lg\]\:size-10[data-size=lg]{width:calc(var(--spacing)*10);height:calc(var(--spacing)*10)}.data-\[size\=sm\]\:size-6[data-size=sm]{width:calc(var(--spacing)*6);height:calc(var(--spacing)*6)}.data-\[size\=sm\]\:h-8[data-size=sm]{height:calc(var(--spacing)*8)}.data-\[size\=sm\]\:max-w-xs[data-size=sm]{max-width:var(--container-xs)}:is(.\*\:data-\[slot\=avatar\]\:ring-2>*)[data-slot=avatar]{--tw-ring-shadow:var(--tw-ring-inset,)0 0 0 calc(2px + var(--tw-ring-offset-width))var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}:is(.\*\:data-\[slot\=avatar\]\:ring-background>*)[data-slot=avatar]{--tw-ring-color:var(--background)}:is(.\*\*\:data-\[slot\=command-input-wrapper\]\:h-12 *)[data-slot=command-input-wrapper]{height:calc(var(--spacing)*12)}:is(.\*\:data-\[slot\=select-value\]\:line-clamp-1>*)[data-slot=select-value]{-webkit-line-clamp:1;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}:is(.\*\:data-\[slot\=select-value\]\:flex>*)[data-slot=select-value]{display:flex}:is(.\*\:data-\[slot\=select-value\]\:items-center>*)[data-slot=select-value]{align-items:center}:is(.\*\:data-\[slot\=select-value\]\:gap-2>*)[data-slot=select-value]{gap:calc(var(--spacing)*2)}.data-\[state\=active\]\:bg-background[data-state=active]{background-color:var(--background)}.data-\[state\=active\]\:text-foreground[data-state=active]{color:var(--foreground)}.group-data-\[variant\=default\]\/tabs-list\:data-\[state\=active\]\:shadow-sm:is(:where(.group\/tabs-list)[data-variant=default] *)[data-state=active]{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a),0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.group-data-\[variant\=line\]\/tabs-list\:data-\[state\=active\]\:bg-transparent:is(:where(.group\/tabs-list)[data-variant=line] *)[data-state=active]{background-color:#0000}.group-data-\[variant\=line\]\/tabs-list\:data-\[state\=active\]\:shadow-none:is(:where(.group\/tabs-list)[data-variant=line] *)[data-state=active]{--tw-shadow:0 0 #0000;box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.group-data-\[variant\=line\]\/tabs-list\:data-\[state\=active\]\:after\:opacity-100:is(:where(.group\/tabs-list)[data-variant=line] *)[data-state=active]:after{content:var(--tw-content);opacity:1}.data-\[state\=checked\]\:border-primary[data-state=checked]{border-color:var(--primary)}.data-\[state\=checked\]\:bg-primary[data-state=checked]{background-color:var(--primary)}.data-\[state\=checked\]\:text-primary-foreground[data-state=checked]{color:var(--primary-foreground)}.data-\[state\=closed\]\:animate-out[data-state=closed]{animation:exit var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,none)}.data-\[state\=closed\]\:duration-300[data-state=closed]{--tw-duration:.3s;transition-duration:.3s}.data-\[state\=closed\]\:fade-out-0[data-state=closed]{--tw-exit-opacity:0}.data-\[state\=closed\]\:zoom-out-95[data-state=closed]{--tw-exit-scale:.95}.data-\[state\=closed\]\:slide-out-to-bottom[data-state=closed]{--tw-exit-translate-y:100%}.data-\[state\=closed\]\:slide-out-to-left[data-state=closed]{--tw-exit-translate-x:-100%}.data-\[state\=closed\]\:slide-out-to-right[data-state=closed]{--tw-exit-translate-x:100%}.data-\[state\=closed\]\:slide-out-to-top[data-state=closed]{--tw-exit-translate-y:-100%}.data-\[state\=open\]\:animate-in[data-state=open]{animation:enter var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,none)}.data-\[state\=open\]\:bg-accent[data-state=open]{background-color:var(--accent)}.data-\[state\=open\]\:bg-secondary[data-state=open]{background-color:var(--secondary)}.data-\[state\=open\]\:text-accent-foreground[data-state=open]{color:var(--accent-foreground)}.data-\[state\=open\]\:text-muted-foreground[data-state=open]{color:var(--muted-foreground)}.data-\[state\=open\]\:opacity-100[data-state=open]{opacity:1}.data-\[state\=open\]\:duration-500[data-state=open]{--tw-duration:.5s;transition-duration:.5s}.data-\[state\=open\]\:fade-in-0[data-state=open]{--tw-enter-opacity:0}.data-\[state\=open\]\:zoom-in-95[data-state=open]{--tw-enter-scale:.95}.data-\[state\=open\]\:slide-in-from-bottom[data-state=open]{--tw-enter-translate-y:100%}.data-\[state\=open\]\:slide-in-from-left[data-state=open]{--tw-enter-translate-x:-100%}.data-\[state\=open\]\:slide-in-from-right[data-state=open]{--tw-enter-translate-x:100%}.data-\[state\=open\]\:slide-in-from-top[data-state=open]{--tw-enter-translate-y:-100%}@media(hover:hover){.data-\[state\=open\]\:hover\:bg-sidebar-accent[data-state=open]:hover{background-color:var(--sidebar-accent)}.data-\[state\=open\]\:hover\:text-sidebar-accent-foreground[data-state=open]:hover{color:var(--sidebar-accent-foreground)}}.data-\[state\=selected\]\:bg-muted[data-state=selected]{background-color:var(--muted)}.data-\[variant\=destructive\]\:text-destructive[data-variant=destructive]{color:var(--destructive)}.data-\[variant\=destructive\]\:focus\:bg-destructive\/10[data-variant=destructive]:focus{background-color:var(--destructive)}@supports (color:color-mix(in lab,red,red)){.data-\[variant\=destructive\]\:focus\:bg-destructive\/10[data-variant=destructive]:focus{background-color:color-mix(in oklab,var(--destructive)10%,transparent)}}.data-\[variant\=destructive\]\:focus\:text-destructive[data-variant=destructive]:focus{color:var(--destructive)}.data-\[variant\=line\]\:rounded-none[data-variant=line]{border-radius:0}@media(min-width:40rem){.sm\:flex{display:flex}.sm\:max-w-2xl{max-width:var(--container-2xl)}.sm\:max-w-lg{max-width:var(--container-lg)}.sm\:max-w-md{max-width:var(--container-md)}.sm\:max-w-sm{max-width:var(--container-sm)}.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.sm\:flex-row{flex-direction:row}.sm\:justify-end{justify-content:flex-end}.sm\:text-left{text-align:left}.sm\:group-data-\[size\=default\]\/alert-dialog-content\:row-span-2:is(:where(.group\/alert-dialog-content)[data-size=default] *){grid-row:span 2/span 2}.sm\:group-data-\[size\=default\]\/alert-dialog-content\:place-items-start:is(:where(.group\/alert-dialog-content)[data-size=default] *){place-items:start}.sm\:group-data-\[size\=default\]\/alert-dialog-content\:text-left:is(:where(.group\/alert-dialog-content)[data-size=default] *){text-align:left}.sm\:group-data-\[size\=default\]\/alert-dialog-content\:group-has-data-\[slot\=alert-dialog-media\]\/alert-dialog-content\:col-start-2:is(:where(.group\/alert-dialog-content)[data-size=default] *):is(:where(.group\/alert-dialog-content):has([data-slot=alert-dialog-media]) *){grid-column-start:2}.sm\:group-data-\[size\=default\]\/alert-dialog-content\:has-data-\[slot\=alert-dialog-media\]\:grid-rows-\[auto_1fr\]:is(:where(.group\/alert-dialog-content)[data-size=default] *):has([data-slot=alert-dialog-media]){grid-template-rows:auto 1fr}.data-\[size\=default\]\:sm\:max-w-lg[data-size=default]{max-width:var(--container-lg)}}@media(min-width:48rem){.md\:block{display:block}.md\:flex{display:flex}.md\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.md\:text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.md\:opacity-0{opacity:0}.md\:peer-data-\[variant\=inset\]\:m-2:is(:where(.peer)[data-variant=inset]~*){margin:calc(var(--spacing)*2)}.md\:peer-data-\[variant\=inset\]\:ml-0:is(:where(.peer)[data-variant=inset]~*){margin-left:calc(var(--spacing)*0)}.md\:peer-data-\[variant\=inset\]\:rounded-xl:is(:where(.peer)[data-variant=inset]~*){border-radius:calc(var(--radius) + 4px)}.md\:peer-data-\[variant\=inset\]\:shadow-sm:is(:where(.peer)[data-variant=inset]~*){--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a),0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.md\:peer-data-\[variant\=inset\]\:peer-data-\[state\=collapsed\]\:ml-2:is(:where(.peer)[data-variant=inset]~*):is(:where(.peer)[data-state=collapsed]~*){margin-left:calc(var(--spacing)*2)}.md\:after\:hidden:after{content:var(--tw-content);display:none}}@media(min-width:64rem){.lg\:col-span-2{grid-column:span 2/span 2}.lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.lg\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}}.dark\:border-input:is(.dark *){border-color:var(--input)}.dark\:bg-destructive\/60:is(.dark *){background-color:var(--destructive)}@supports (color:color-mix(in lab,red,red)){.dark\:bg-destructive\/60:is(.dark *){background-color:color-mix(in oklab,var(--destructive)60%,transparent)}}.dark\:bg-green-950\/30:is(.dark *){background-color:#032e154d}@supports (color:color-mix(in lab,red,red)){.dark\:bg-green-950\/30:is(.dark *){background-color:color-mix(in oklab,var(--color-green-950)30%,transparent)}}.dark\:bg-input\/30:is(.dark *){background-color:var(--input)}@supports (color:color-mix(in lab,red,red)){.dark\:bg-input\/30:is(.dark *){background-color:color-mix(in oklab,var(--input)30%,transparent)}}.dark\:bg-red-950\/30:is(.dark *){background-color:#4608094d}@supports (color:color-mix(in lab,red,red)){.dark\:bg-red-950\/30:is(.dark *){background-color:color-mix(in oklab,var(--color-red-950)30%,transparent)}}.dark\:bg-yellow-950\/30:is(.dark *){background-color:#4320044d}@supports (color:color-mix(in lab,red,red)){.dark\:bg-yellow-950\/30:is(.dark *){background-color:color-mix(in oklab,var(--color-yellow-950)30%,transparent)}}.dark\:text-muted-foreground:is(.dark *){color:var(--muted-foreground)}.dark\:text-yellow-200:is(.dark *){color:var(--color-yellow-200)}.dark\:text-yellow-300:is(.dark *){color:var(--color-yellow-300)}@media(hover:hover){.dark\:hover\:bg-accent\/50:is(.dark *):hover{background-color:var(--accent)}@supports (color:color-mix(in lab,red,red)){.dark\:hover\:bg-accent\/50:is(.dark *):hover{background-color:color-mix(in oklab,var(--accent)50%,transparent)}}.dark\:hover\:bg-input\/50:is(.dark *):hover{background-color:var(--input)}@supports (color:color-mix(in lab,red,red)){.dark\:hover\:bg-input\/50:is(.dark *):hover{background-color:color-mix(in oklab,var(--input)50%,transparent)}}.dark\:hover\:text-foreground:is(.dark *):hover{color:var(--foreground)}}.dark\:focus-visible\:ring-destructive\/40:is(.dark *):focus-visible{--tw-ring-color:var(--destructive)}@supports (color:color-mix(in lab,red,red)){.dark\:focus-visible\:ring-destructive\/40:is(.dark *):focus-visible{--tw-ring-color:color-mix(in oklab,var(--destructive)40%,transparent)}}.dark\:aria-invalid\:ring-destructive\/40:is(.dark *)[aria-invalid=true]{--tw-ring-color:var(--destructive)}@supports (color:color-mix(in lab,red,red)){.dark\:aria-invalid\:ring-destructive\/40:is(.dark *)[aria-invalid=true]{--tw-ring-color:color-mix(in oklab,var(--destructive)40%,transparent)}}.dark\:data-\[state\=active\]\:border-input:is(.dark *)[data-state=active]{border-color:var(--input)}.dark\:data-\[state\=active\]\:bg-input\/30:is(.dark *)[data-state=active]{background-color:var(--input)}@supports (color:color-mix(in lab,red,red)){.dark\:data-\[state\=active\]\:bg-input\/30:is(.dark *)[data-state=active]{background-color:color-mix(in oklab,var(--input)30%,transparent)}}.dark\:data-\[state\=active\]\:text-foreground:is(.dark *)[data-state=active]{color:var(--foreground)}.dark\:group-data-\[variant\=line\]\/tabs-list\:data-\[state\=active\]\:border-transparent:is(.dark *):is(:where(.group\/tabs-list)[data-variant=line] *)[data-state=active]{border-color:#0000}.dark\:group-data-\[variant\=line\]\/tabs-list\:data-\[state\=active\]\:bg-transparent:is(.dark *):is(:where(.group\/tabs-list)[data-variant=line] *)[data-state=active]{background-color:#0000}.dark\:data-\[state\=checked\]\:bg-primary:is(.dark *)[data-state=checked]{background-color:var(--primary)}.dark\:data-\[variant\=destructive\]\:focus\:bg-destructive\/20:is(.dark *)[data-variant=destructive]:focus{background-color:var(--destructive)}@supports (color:color-mix(in lab,red,red)){.dark\:data-\[variant\=destructive\]\:focus\:bg-destructive\/20:is(.dark *)[data-variant=destructive]:focus{background-color:color-mix(in oklab,var(--destructive)20%,transparent)}}.\[\&_\.bn-editor\]\:min-h-\[120px\] .bn-editor{min-height:120px}.\[\&_\.bn-editor\]\:min-h-\[300px\] .bn-editor{min-height:300px}.\[\&_\[cmdk-group-heading\]\]\:px-2 [cmdk-group-heading]{padding-inline:calc(var(--spacing)*2)}.\[\&_\[cmdk-group-heading\]\]\:py-1\.5 [cmdk-group-heading]{padding-block:calc(var(--spacing)*1.5)}.\[\&_\[cmdk-group-heading\]\]\:text-xs [cmdk-group-heading]{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.\[\&_\[cmdk-group-heading\]\]\:font-medium [cmdk-group-heading]{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.\[\&_\[cmdk-group-heading\]\]\:text-muted-foreground [cmdk-group-heading]{color:var(--muted-foreground)}.\[\&_\[cmdk-group\]\]\:px-2 [cmdk-group]{padding-inline:calc(var(--spacing)*2)}.\[\&_\[cmdk-group\]\:not\(\[hidden\]\)_\~\[cmdk-group\]\]\:pt-0 [cmdk-group]:not([hidden])~[cmdk-group]{padding-top:calc(var(--spacing)*0)}.\[\&_\[cmdk-input-wrapper\]_svg\]\:h-5 [cmdk-input-wrapper] svg{height:calc(var(--spacing)*5)}.\[\&_\[cmdk-input-wrapper\]_svg\]\:w-5 [cmdk-input-wrapper] svg{width:calc(var(--spacing)*5)}.\[\&_\[cmdk-input\]\]\:h-12 [cmdk-input]{height:calc(var(--spacing)*12)}.\[\&_\[cmdk-item\]\]\:px-2 [cmdk-item]{padding-inline:calc(var(--spacing)*2)}.\[\&_\[cmdk-item\]\]\:py-3 [cmdk-item]{padding-block:calc(var(--spacing)*3)}.\[\&_\[cmdk-item\]_svg\]\:h-5 [cmdk-item] svg{height:calc(var(--spacing)*5)}.\[\&_\[cmdk-item\]_svg\]\:w-5 [cmdk-item] svg{width:calc(var(--spacing)*5)}.\[\&_svg\]\:pointer-events-none svg{pointer-events:none}.\[\&_svg\]\:shrink-0 svg{flex-shrink:0}.\[\&_svg\:not\(\[class\*\=\'size-\'\]\)\]\:size-3 svg:not([class*=size-]){width:calc(var(--spacing)*3);height:calc(var(--spacing)*3)}.\[\&_svg\:not\(\[class\*\=\'size-\'\]\)\]\:size-4 svg:not([class*=size-]){width:calc(var(--spacing)*4);height:calc(var(--spacing)*4)}.\[\&_svg\:not\(\[class\*\=\'text-\'\]\)\]\:text-muted-foreground svg:not([class*=text-]){color:var(--muted-foreground)}.\[\&_tr\]\:border-b tr{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.\[\&_tr\:last-child\]\:border-0 tr:last-child{border-style:var(--tw-border-style);border-width:0}.\[\&\:has\(\[role\=checkbox\]\)\]\:pr-0:has([role=checkbox]){padding-right:calc(var(--spacing)*0)}.\[\.border-b\]\:pb-6.border-b{padding-bottom:calc(var(--spacing)*6)}.\[\.border-t\]\:pt-6.border-t{padding-top:calc(var(--spacing)*6)}:is(.\*\:\[span\]\:last\:flex>*):is(span):last-child{display:flex}:is(.\*\:\[span\]\:last\:items-center>*):is(span):last-child{align-items:center}:is(.\*\:\[span\]\:last\:gap-2>*):is(span):last-child{gap:calc(var(--spacing)*2)}:is(.data-\[variant\=destructive\]\:\*\:\[svg\]\:\!text-destructive[data-variant=destructive]>*):is(svg){color:var(--destructive)!important}:is(.\*\:\[svg\:not\(\[class\*\=\'size-\'\]\)\]\:size-8>*):is(svg:not([class*=size-])){width:calc(var(--spacing)*8);height:calc(var(--spacing)*8)}.\[\&\>\[role\=checkbox\]\]\:translate-y-\[2px\]>[role=checkbox]{--tw-translate-y:2px;translate:var(--tw-translate-x)var(--tw-translate-y)}.\[\&\>button\]\:hidden>button{display:none}.\[\&\>span\:last-child\]\:truncate>span:last-child{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.\[\&\>svg\]\:pointer-events-none>svg{pointer-events:none}.\[\&\>svg\]\:size-3>svg{width:calc(var(--spacing)*3);height:calc(var(--spacing)*3)}.\[\&\>svg\]\:size-4>svg{width:calc(var(--spacing)*4);height:calc(var(--spacing)*4)}.\[\&\>svg\]\:shrink-0>svg{flex-shrink:0}.\[\&\>svg\]\:text-sidebar-accent-foreground>svg{color:var(--sidebar-accent-foreground)}.group-has-data-\[size\=lg\]\/avatar-group\:\[\&\>svg\]\:size-5:is(:where(.group\/avatar-group):has([data-size=lg]) *)>svg{width:calc(var(--spacing)*5);height:calc(var(--spacing)*5)}.group-has-data-\[size\=sm\]\/avatar-group\:\[\&\>svg\]\:size-3:is(:where(.group\/avatar-group):has([data-size=sm]) *)>svg{width:calc(var(--spacing)*3);height:calc(var(--spacing)*3)}.group-data-\[size\=default\]\/avatar\:\[\&\>svg\]\:size-2:is(:where(.group\/avatar)[data-size=default] *)>svg,.group-data-\[size\=lg\]\/avatar\:\[\&\>svg\]\:size-2:is(:where(.group\/avatar)[data-size=lg] *)>svg{width:calc(var(--spacing)*2);height:calc(var(--spacing)*2)}.group-data-\[size\=sm\]\/avatar\:\[\&\>svg\]\:hidden:is(:where(.group\/avatar)[data-size=sm] *)>svg{display:none}.\[\&\>tr\]\:last\:border-b-0>tr:last-child{border-bottom-style:var(--tw-border-style);border-bottom-width:0}[data-side=left][data-collapsible=offcanvas] .\[\[data-side\=left\]\[data-collapsible\=offcanvas\]_\&\]\:-right-2{right:calc(var(--spacing)*-2)}[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:calc(var(--spacing)*-2)}[data-side=right][data-state=collapsed] .\[\[data-side\=right\]\[data-state\=collapsed\]_\&\]\:cursor-w-resize{cursor:w-resize}[data-state=open]>.\[\[data-state\=open\]\>\&\]\:rotate-90{rotate:90deg}@media(hover:hover){a.\[a\&\]\:hover\:bg-accent:hover{background-color:var(--accent)}a.\[a\&\]\:hover\:bg-destructive\/90:hover{background-color:var(--destructive)}@supports (color:color-mix(in lab,red,red)){a.\[a\&\]\:hover\:bg-destructive\/90:hover{background-color:color-mix(in oklab,var(--destructive)90%,transparent)}}a.\[a\&\]\:hover\:bg-primary\/90:hover{background-color:var(--primary)}@supports (color:color-mix(in lab,red,red)){a.\[a\&\]\:hover\:bg-primary\/90:hover{background-color:color-mix(in oklab,var(--primary)90%,transparent)}}a.\[a\&\]\:hover\:bg-secondary\/90:hover{background-color:var(--secondary)}@supports (color:color-mix(in lab,red,red)){a.\[a\&\]\:hover\:bg-secondary\/90:hover{background-color:color-mix(in oklab,var(--secondary)90%,transparent)}}a.\[a\&\]\:hover\:text-accent-foreground:hover{color:var(--accent-foreground)}a.\[a\&\]\:hover\:underline:hover{text-decoration-line:underline}}}@property --tw-animation-delay{syntax:"*";inherits:false;initial-value:0s}@property --tw-animation-direction{syntax:"*";inherits:false;initial-value:normal}@property --tw-animation-duration{syntax:"*";inherits:false}@property --tw-animation-fill-mode{syntax:"*";inherits:false;initial-value:none}@property --tw-animation-iteration-count{syntax:"*";inherits:false;initial-value:1}@property --tw-enter-blur{syntax:"*";inherits:false;initial-value:0}@property --tw-enter-opacity{syntax:"*";inherits:false;initial-value:1}@property --tw-enter-rotate{syntax:"*";inherits:false;initial-value:0}@property --tw-enter-scale{syntax:"*";inherits:false;initial-value:1}@property --tw-enter-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-enter-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-exit-blur{syntax:"*";inherits:false;initial-value:0}@property --tw-exit-opacity{syntax:"*";inherits:false;initial-value:1}@property --tw-exit-rotate{syntax:"*";inherits:false;initial-value:0}@property --tw-exit-scale{syntax:"*";inherits:false;initial-value:1}@property --tw-exit-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-exit-translate-y{syntax:"*";inherits:false;initial-value:0}:root{--radius:.625rem;--background:oklch(100% 0 0);--foreground:oklch(14.5% 0 0);--card:oklch(100% 0 0);--card-foreground:oklch(14.5% 0 0);--popover:oklch(100% 0 0);--popover-foreground:oklch(14.5% 0 0);--primary:oklch(20.5% 0 0);--primary-foreground:oklch(98.5% 0 0);--secondary:oklch(97% 0 0);--secondary-foreground:oklch(20.5% 0 0);--muted:oklch(97% 0 0);--muted-foreground:oklch(55.6% 0 0);--accent:oklch(97% 0 0);--accent-foreground:oklch(20.5% 0 0);--destructive:oklch(57.7% .245 27.325);--border:oklch(92.2% 0 0);--input:oklch(92.2% 0 0);--ring:oklch(70.8% 0 0);--chart-1:oklch(64.6% .222 41.116);--chart-2:oklch(60% .118 184.704);--chart-3:oklch(39.8% .07 227.392);--chart-4:oklch(82.8% .189 84.429);--chart-5:oklch(76.9% .188 70.08);--sidebar:oklch(98.5% 0 0);--sidebar-foreground:oklch(14.5% 0 0);--sidebar-primary:oklch(20.5% 0 0);--sidebar-primary-foreground:oklch(98.5% 0 0);--sidebar-accent:oklch(97% 0 0);--sidebar-accent-foreground:oklch(20.5% 0 0);--sidebar-border:oklch(92.2% 0 0);--sidebar-ring:oklch(70.8% 0 0)}.dark{--background:oklch(14.5% 0 0);--foreground:oklch(98.5% 0 0);--card:oklch(20.5% 0 0);--card-foreground:oklch(98.5% 0 0);--popover:oklch(20.5% 0 0);--popover-foreground:oklch(98.5% 0 0);--primary:oklch(92.2% 0 0);--primary-foreground:oklch(20.5% 0 0);--secondary:oklch(26.9% 0 0);--secondary-foreground:oklch(98.5% 0 0);--muted:oklch(26.9% 0 0);--muted-foreground:oklch(70.8% 0 0);--accent:oklch(26.9% 0 0);--accent-foreground:oklch(98.5% 0 0);--destructive:oklch(70.4% .191 22.216);--border:oklch(100% 0 0/.1);--input:oklch(100% 0 0/.15);--ring:oklch(55.6% 0 0);--chart-1:oklch(48.8% .243 264.376);--chart-2:oklch(69.6% .17 162.48);--chart-3:oklch(76.9% .188 70.08);--chart-4:oklch(62.7% .265 303.9);--chart-5:oklch(64.5% .246 16.439);--sidebar:oklch(20.5% 0 0);--sidebar-foreground:oklch(98.5% 0 0);--sidebar-primary:oklch(48.8% .243 264.376);--sidebar-primary-foreground:oklch(98.5% 0 0);--sidebar-accent:oklch(26.9% 0 0);--sidebar-accent-foreground:oklch(98.5% 0 0);--sidebar-border:oklch(100% 0 0/.1);--sidebar-ring:oklch(55.6% 0 0)}@property --tw-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-z{syntax:"*";inherits:false;initial-value:0}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-space-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-space-x-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-leading{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-tracking{syntax:"*";inherits:false}@property --tw-ordinal{syntax:"*";inherits:false}@property --tw-slashed-zero{syntax:"*";inherits:false}@property --tw-numeric-figure{syntax:"*";inherits:false}@property --tw-numeric-spacing{syntax:"*";inherits:false}@property --tw-numeric-fraction{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-duration{syntax:"*";inherits:false}@property --tw-ease{syntax:"*";inherits:false}@property --tw-content{syntax:"*";inherits:false;initial-value:""}@keyframes spin{to{transform:rotate(360deg)}}@keyframes pulse{50%{opacity:.5}}@keyframes enter{0%{opacity:var(--tw-enter-opacity,1);transform:translate3d(var(--tw-enter-translate-x,0),var(--tw-enter-translate-y,0),0)scale3d(var(--tw-enter-scale,1),var(--tw-enter-scale,1),var(--tw-enter-scale,1))rotate(var(--tw-enter-rotate,0));filter:blur(var(--tw-enter-blur,0))}}@keyframes exit{to{opacity:var(--tw-exit-opacity,1);transform:translate3d(var(--tw-exit-translate-x,0),var(--tw-exit-translate-y,0),0)scale3d(var(--tw-exit-scale,1),var(--tw-exit-scale,1),var(--tw-exit-scale,1))rotate(var(--tw-exit-rotate,0));filter:blur(var(--tw-exit-blur,0))}}