@chenpu17/cc-gw 0.3.8 → 0.3.9

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 (34) hide show
  1. package/README.md +201 -60
  2. package/package.json +2 -1
  3. package/src/server/dist/index.js +10177 -48
  4. package/src/web/dist/assets/{About-B4P46oBY.js → About-kwS37DF6.js} +2 -2
  5. package/src/web/dist/assets/{ApiKeys-DIj-z9NS.js → ApiKeys-D3tshK2D.js} +2 -2
  6. package/src/web/dist/assets/{Button-Df2SC9Z6.js → Button-CiJz5FvC.js} +1 -1
  7. package/src/web/dist/assets/Dashboard-BcpzG5Js.js +16 -0
  8. package/src/web/dist/assets/FormField-DTM2fGgN.js +1 -0
  9. package/src/web/dist/assets/Help-CHzXBSkF.js +23 -0
  10. package/src/web/dist/assets/Input-Drhy9itS.js +1 -0
  11. package/src/web/dist/assets/Login-DB7EbGqT.js +1 -0
  12. package/src/web/dist/assets/Logs-AlBaIKTP.js +1 -0
  13. package/src/web/dist/assets/ModelManagement-BkMsnFWa.js +1 -0
  14. package/src/web/dist/assets/PageSection-BXgr5Sv8.js +1 -0
  15. package/src/web/dist/assets/Settings-CCeTL4KH.js +1 -0
  16. package/src/web/dist/assets/{StatusBadge-CMf3e9GN.js → StatusBadge-84FTLpO5.js} +1 -1
  17. package/src/web/dist/assets/{copy-C0txfzHv.js → copy-jyJz3iB0.js} +1 -1
  18. package/src/web/dist/assets/{index-DtM-AT3x.js → index-DOE1cGyy.js} +41 -16
  19. package/src/web/dist/assets/{index-oWYCCpBl.js → index-Dcq4ildt.js} +1 -1
  20. package/src/web/dist/assets/index-gcfzHYPE.css +1 -0
  21. package/src/web/dist/assets/{info-jEzfgMxW.js → info-BRp6pBBe.js} +1 -1
  22. package/src/web/dist/assets/useApiQuery-DFuDkJwZ.js +1 -0
  23. package/src/web/dist/index.html +2 -2
  24. package/src/web/dist/assets/Dashboard-ofxha89A.js +0 -16
  25. package/src/web/dist/assets/FormField-IhMRFkvg.js +0 -1
  26. package/src/web/dist/assets/Help-DWp0N8et.js +0 -6
  27. package/src/web/dist/assets/Input-BR1EKmIk.js +0 -1
  28. package/src/web/dist/assets/Login-D8amVPUK.js +0 -1
  29. package/src/web/dist/assets/Logs-DRwOarji.js +0 -1
  30. package/src/web/dist/assets/ModelManagement-CtaCkRed.js +0 -1
  31. package/src/web/dist/assets/PageSection-D21hdQmW.js +0 -1
  32. package/src/web/dist/assets/Settings-C2-eI9Yb.js +0 -1
  33. package/src/web/dist/assets/index-BRI-aVAi.css +0 -1
  34. package/src/web/dist/assets/useApiQuery-Dz2idWoC.js +0 -1
@@ -1 +0,0 @@
1
- import{j as e,b as a,a0 as x,m as n,o as c,a1 as m,t as h}from"./index-DtM-AT3x.js";function g({icon:s,title:r,description:l,badge:d,actions:t,className:i}){return e.jsxs("div",{className:a(c,"animate-slide-up",i),children:[e.jsxs("div",{className:"flex flex-1 flex-wrap items-start gap-6",children:[s?e.jsx("div",{className:"grid h-14 w-14 place-items-center rounded-2xl bg-gradient-to-br from-blue-600/15 to-indigo-600/10 text-blue-600 shadow-lg shadow-blue-200/30 ring-1 ring-blue-500/20 backdrop-blur-sm dark:from-blue-500/25 dark:to-indigo-500/15 dark:text-blue-200 dark:shadow-xl dark:shadow-blue-500/20 dark:ring-blue-400/20",children:s}):null,e.jsxs("div",{className:"space-y-4",children:[e.jsxs("div",{className:"flex flex-wrap items-center gap-4",children:[e.jsx("h1",{className:"text-3xl font-bold tracking-tight text-slate-900 dark:text-slate-50 gradient-text",children:r}),d?e.jsx("span",{className:a(x,"shadow-md"),children:d}):null]}),l?e.jsx("div",{className:a(n,"max-w-3xl text-base leading-relaxed"),children:l}):null]})]}),t?e.jsx("div",{className:"flex shrink-0 flex-wrap items-center gap-4",children:t}):null]})}function o({title:s,description:r,actions:l,className:d,contentClassName:t,children:i}){return e.jsxs("section",{className:a(h,"animate-slide-up",d),children:[(s||r||l)&&e.jsxs("div",{className:"mb-6 flex flex-wrap items-center justify-between gap-6",children:[e.jsxs("div",{className:"space-y-3",children:[typeof s=="string"?e.jsx("h2",{className:a(m,"text-base font-bold"),children:s}):s,r?e.jsx("div",{className:a(n,"max-w-3xl text-sm leading-relaxed"),children:r}):null]}),l?e.jsx("div",{className:"flex shrink-0 items-center gap-3",children:l}):null]}),e.jsx("div",{className:a("flex flex-col gap-6",t),children:i})]})}export{g as P,o as a};
@@ -1 +0,0 @@
1
- import{u as se,a as te,r as c,j as e,b as g,S as ae,L as T,q as j,i as C,v as V,m as f,x as K}from"./index-DtM-AT3x.js";import{u as B}from"./useApiQuery-Dz2idWoC.js";import{P as re,a as w}from"./PageSection-D21hdQmW.js";import{C as ne}from"./copy-C0txfzHv.js";const le=[{value:"fatal",labelKey:"fatal"},{value:"error",labelKey:"error"},{value:"warn",labelKey:"warn"},{value:"info",labelKey:"info"},{value:"debug",labelKey:"debug"},{value:"trace",labelKey:"trace"}];function ge(){const{t:s}=se(),{pushToast:u}=te(),l=B(["config","info"],{url:"/api/config/info",method:"GET"}),x=B(["auth","web"],{url:"/api/auth/web",method:"GET"}),[r,R]=c.useState(null),[N,_]=c.useState(""),[d,p]=c.useState({port:"",host:"",logRetentionDays:"",storeRequestPayloads:!0,storeResponsePayloads:!0,logLevel:"info",requestLogging:!0,responseLogging:!0,bodyLimitMb:"10"}),[b,q]=c.useState({}),[L,S]=c.useState(!1),[E,A]=c.useState(!1),[F,M]=c.useState(!1),[o,D]=c.useState(null),[n,h]=c.useState({enabled:!1,username:"",password:"",confirmPassword:""}),[y,k]=c.useState({}),[P,H]=c.useState(!1),G=c.useMemo(()=>{if(!r)return null;const t=r.defaults;if(!t)return null;const a=[];return t.completion&&a.push(s("settings.defaults.completion",{model:t.completion})),t.reasoning&&a.push(s("settings.defaults.reasoning",{model:t.reasoning})),t.background&&a.push(s("settings.defaults.background",{model:t.background})),a.length>0?a.join(" | "):s("settings.defaults.none")},[r,s]),O=c.useMemo(()=>n.enabled?o!=null&&o.hasPassword?n.username.trim()!==((o==null?void 0:o.username)??""):!0:!1,[n.enabled,n.username,o]);c.useEffect(()=>{if(l.data){R(l.data.config),_(l.data.path);const t=l.data.config.storePayloads,a=i=>typeof i=="boolean"?i:typeof t=="boolean"?t:!0;p({port:String(l.data.config.port??""),host:l.data.config.host??"",logRetentionDays:String(l.data.config.logRetentionDays??30),storeRequestPayloads:a(l.data.config.storeRequestPayloads),storeResponsePayloads:a(l.data.config.storeResponsePayloads),logLevel:l.data.config.logLevel??"info",requestLogging:l.data.config.requestLogging!==!1,responseLogging:l.data.config.responseLogging??l.data.config.requestLogging!==!1,bodyLimitMb:(()=>{const i=l.data.config.bodyLimit;return typeof i=="number"&&Number.isFinite(i)&&i>0?String(Math.max(1,Math.round(i/(1024*1024)))):"10"})()})}},[l.data]),c.useEffect(()=>{x.data&&(D(x.data),h({enabled:x.data.enabled,username:x.data.username??"",password:"",confirmPassword:""}),k({}))},[x.data]),c.useEffect(()=>{l.isError&&l.error&&u({title:s("settings.toast.loadFailure",{message:l.error.message}),variant:"error"})},[l.isError,l.error,u,s]),c.useEffect(()=>{x.isError&&x.error&&u({title:s("settings.toast.authLoadFailure",{message:x.error.message}),variant:"error"})},[x.isError,x.error,u,s]);const v=t=>a=>{p(i=>({...i,[t]:a}))},Q=()=>{const t={},a=Number(d.port);(!Number.isFinite(a)||a<1||a>65535)&&(t.port=s("settings.validation.port"));const i=Number(d.logRetentionDays);(!Number.isFinite(i)||i<1||i>365)&&(t.logRetentionDays=s("settings.validation.retention"));const m=Number(d.bodyLimitMb);return(!Number.isFinite(m)||m<1||m>2048)&&(t.bodyLimitMb=s("settings.validation.bodyLimit")),q(t),Object.keys(t).length===0},I=()=>{const t={},a=n.username.trim(),i=o?a!==(o.username??""):!0,m=n.enabled&&(!(o!=null&&o.hasPassword)||i);return n.enabled&&!a&&(t.username=s("settings.auth.validation.username")),n.password&&n.password.length<6&&(t.password=s("settings.auth.validation.minLength")),m&&!n.password&&(t.password=s("settings.auth.validation.passwordRequired")),(n.password||n.confirmPassword)&&n.password!==n.confirmPassword&&(t.confirmPassword=s("settings.auth.validation.confirmMismatch")),k(t),Object.keys(t).length===0},W=async()=>{if(!r){u({title:s("settings.toast.loadFailure",{message:s("settings.toast.missingConfig")}),variant:"error"});return}if(Q()){S(!0);try{const t=Number(d.port),a=Number(d.logRetentionDays),i=Number(d.bodyLimitMb),m={...r,port:t,host:d.host.trim()||void 0,logRetentionDays:a,storeRequestPayloads:d.storeRequestPayloads,storeResponsePayloads:d.storeResponsePayloads,logLevel:d.logLevel,requestLogging:d.requestLogging,responseLogging:d.responseLogging,bodyLimit:Math.max(1,Math.floor(i*1024*1024))},{webAuth:oe,...ee}=m;await j.put("/api/config",ee),R({...m,webAuth:r.webAuth}),u({title:s("settings.toast.saveSuccess"),variant:"success"}),l.refetch()}catch(t){u({title:s("settings.toast.saveFailure",{message:t instanceof Error?t.message:"unknown"}),variant:"error"})}finally{S(!1)}}},$=()=>{r&&(p({port:String(r.port??""),host:r.host??"",logRetentionDays:String(r.logRetentionDays??30),storeRequestPayloads:typeof r.storeRequestPayloads=="boolean"?r.storeRequestPayloads:typeof r.storePayloads=="boolean"?r.storePayloads:!0,storeResponsePayloads:typeof r.storeResponsePayloads=="boolean"?r.storeResponsePayloads:typeof r.storePayloads=="boolean"?r.storePayloads:!0,logLevel:r.logLevel??"info",requestLogging:r.requestLogging!==!1,responseLogging:r.responseLogging??r.requestLogging!==!1,bodyLimitMb:(()=>{const t=r.bodyLimit;return typeof t=="number"&&Number.isFinite(t)&&t>0?String(Math.max(1,Math.round(t/(1024*1024)))):"10"})()}),q({}))},z=async()=>{var t;if(I()){H(!0);try{const a={enabled:n.enabled,username:n.username.trim()||void 0};n.password&&(a.password=n.password);const m=(t=(await j.post("/api/auth/web",a)).data)==null?void 0:t.auth;m&&(D(m),h({enabled:m.enabled,username:m.username??"",password:"",confirmPassword:""}),k({})),u({title:s("settings.auth.toast.success"),variant:"success"}),x.refetch()}catch(a){const i=a instanceof Error?a.message:"unknown";u({title:s("settings.auth.toast.failure",{message:i}),variant:"error"})}finally{H(!1)}}},J=()=>{o&&(h({enabled:o.enabled,username:o.username??"",password:"",confirmPassword:""}),k({}))},U=async()=>{if(!N){u({title:s("settings.toast.copyFailure",{message:s("settings.file.unknown")}),variant:"error"});return}try{await navigator.clipboard.writeText(N),u({title:s("settings.toast.copySuccess"),variant:"success"})}catch(t){u({title:s("settings.toast.copyFailure",{message:t instanceof Error?t.message:"unknown"}),variant:"error"})}},X=async()=>{A(!0);try{const a=(await j.post("/api/logs/cleanup")).data.deleted??0;u({title:a>0?s("settings.toast.cleanupSuccess",{count:a}):s("settings.toast.cleanupNone"),variant:"success"})}catch(t){u({title:s("settings.toast.cleanupFailure",{message:t instanceof Error?t.message:"unknown"}),variant:"error"})}finally{A(!1)}},Y=async()=>{M(!0);try{const t=await j.post("/api/logs/clear"),{deleted:a,metricsCleared:i}=t.data;u({title:s("settings.toast.clearAllSuccess",{logs:a,metrics:i}),variant:"success"})}catch(t){u({title:s("settings.toast.clearAllFailure",{message:t instanceof Error?t.message:"unknown"}),variant:"error"})}finally{M(!1)}},Z=l.isPending||!r&&l.isFetching;return e.jsxs("div",{className:"flex flex-col gap-8",children:[e.jsx(re,{icon:e.jsx(ae,{className:"h-6 w-6","aria-hidden":"true"}),title:s("settings.title"),description:s("settings.description"),actions:r?e.jsxs("div",{className:"flex items-center gap-2",children:[e.jsx("button",{type:"button",onClick:$,className:g(C,"h-10 rounded-full px-4"),disabled:L,children:s("common.actions.reset")}),e.jsx("button",{type:"button",onClick:W,className:g(V,"h-10 rounded-full px-4"),disabled:L,children:s(L?"common.actions.saving":"common.actions.save")})]}):null}),Z?e.jsx(w,{className:"flex min-h-[220px] items-center justify-center",children:e.jsx(T,{})}):r?e.jsxs(e.Fragment,{children:[e.jsxs(w,{title:s("settings.sections.basics"),contentClassName:"grid w-full gap-5 md:grid-cols-2",children:[e.jsxs("div",{className:"flex flex-col gap-2",children:[e.jsx("span",{className:"text-xs font-semibold uppercase tracking-wide text-slate-500 dark:text-slate-400",children:s("settings.fields.port")}),e.jsx("input",{type:"number",min:1,max:65535,value:d.port,onChange:t=>v("port")(t.target.value),className:"h-10","aria-invalid":!!b.port}),b.port?e.jsx("span",{className:"text-xs font-medium text-red-500 dark:text-red-300",children:b.port}):null]}),e.jsxs("div",{className:"flex flex-col gap-2",children:[e.jsx("span",{className:"text-xs font-semibold uppercase tracking-wide text-slate-500 dark:text-slate-400",children:s("settings.fields.host")}),e.jsx("input",{value:d.host,onChange:t=>v("host")(t.target.value),placeholder:s("settings.fields.hostPlaceholder"),className:"h-10"})]}),e.jsxs("div",{className:"flex flex-col gap-2",children:[e.jsx("span",{className:"text-xs font-semibold uppercase tracking-wide text-slate-500 dark:text-slate-400",children:s("settings.fields.retention")}),e.jsx("input",{type:"number",min:1,max:365,value:d.logRetentionDays,onChange:t=>v("logRetentionDays")(t.target.value),className:"h-10","aria-invalid":!!b.logRetentionDays}),b.logRetentionDays?e.jsx("span",{className:"text-xs font-medium text-red-500 dark:text-red-300",children:b.logRetentionDays}):null]}),e.jsxs("div",{className:"flex flex-col gap-2",children:[e.jsx("span",{className:"text-xs font-semibold uppercase tracking-wide text-slate-500 dark:text-slate-400",children:s("settings.fields.bodyLimit")}),e.jsx("input",{type:"number",min:1,max:2048,value:d.bodyLimitMb,onChange:t=>v("bodyLimitMb")(t.target.value),className:"h-10","aria-invalid":!!b.bodyLimitMb}),e.jsx("p",{className:g(f,"text-[11px] leading-relaxed"),children:s("settings.fields.bodyLimitHint")}),b.bodyLimitMb?e.jsx("span",{className:"text-xs font-medium text-red-500 dark:text-red-300",children:b.bodyLimitMb}):null]}),e.jsxs("div",{className:"flex flex-col gap-2",children:[e.jsx("span",{className:"text-xs font-semibold uppercase tracking-wide text-slate-500 dark:text-slate-400",children:s("settings.fields.logLevel")}),e.jsx("select",{value:d.logLevel,onChange:t=>p(a=>({...a,logLevel:t.target.value})),className:"h-10",children:le.map(t=>e.jsx("option",{value:t.value,children:s(`settings.fields.logLevelOption.${t.labelKey}`)},t.value))})]}),e.jsxs("div",{className:"md:col-span-2 grid gap-4 sm:grid-cols-2",children:[e.jsxs("label",{className:"flex items-start gap-3 rounded-2xl border border-slate-200/70 bg-white/80 px-4 py-3 shadow-sm shadow-slate-200/60 transition hover:border-slate-300 dark:border-slate-700/60 dark:bg-slate-900/70 dark:hover:border-slate-500/60",children:[e.jsx("input",{type:"checkbox",checked:d.storeRequestPayloads,onChange:t=>p(a=>({...a,storeRequestPayloads:t.target.checked})),className:"mt-1 h-4 w-4 rounded border-slate-300 text-blue-600 focus:ring-blue-400 dark:border-slate-600"}),e.jsxs("div",{className:"space-y-1",children:[e.jsx("span",{className:"text-sm font-semibold text-slate-700 dark:text-slate-100",children:s("settings.fields.storeRequestPayloads")}),e.jsx("p",{className:g(f,"text-xs"),children:s("settings.fields.storeRequestPayloadsHint")})]})]}),e.jsxs("label",{className:"flex items-start gap-3 rounded-2xl border border-slate-200/70 bg-white/80 px-4 py-3 shadow-sm shadow-slate-200/60 transition hover:border-slate-300 dark:border-slate-700/60 dark:bg-slate-900/70 dark:hover:border-slate-500/60",children:[e.jsx("input",{type:"checkbox",checked:d.storeResponsePayloads,onChange:t=>p(a=>({...a,storeResponsePayloads:t.target.checked})),className:"mt-1 h-4 w-4 rounded border-slate-300 text-blue-600 focus:ring-blue-400 dark:border-slate-600"}),e.jsxs("div",{className:"space-y-1",children:[e.jsx("span",{className:"text-sm font-semibold text-slate-700 dark:text-slate-100",children:s("settings.fields.storeResponsePayloads")}),e.jsx("p",{className:g(f,"text-xs"),children:s("settings.fields.storeResponsePayloadsHint")})]})]}),e.jsxs("label",{className:"flex items-start gap-3 rounded-2xl border border-slate-200/70 bg-white/80 px-4 py-3 shadow-sm shadow-slate-200/60 transition hover:border-slate-300 dark:border-slate-700/60 dark:bg-slate-900/70 dark:hover:border-slate-500/60",children:[e.jsx("input",{type:"checkbox",checked:d.requestLogging,onChange:t=>p(a=>({...a,requestLogging:t.target.checked})),className:"mt-1 h-4 w-4 rounded border-slate-300 text-blue-600 focus:ring-blue-400 dark:border-slate-600"}),e.jsxs("div",{className:"space-y-1",children:[e.jsx("span",{className:"text-sm font-semibold text-slate-700 dark:text-slate-100",children:s("settings.fields.requestLogging")}),e.jsx("p",{className:g(f,"text-xs"),children:s("settings.fields.requestLoggingHint")})]})]}),e.jsxs("label",{className:"flex items-start gap-3 rounded-2xl border border-slate-200/70 bg-white/80 px-4 py-3 shadow-sm shadow-slate-200/60 transition hover:border-slate-300 dark:border-slate-700/60 dark:bg-slate-900/70 dark:hover:border-slate-500/60",children:[e.jsx("input",{type:"checkbox",checked:d.responseLogging,onChange:t=>p(a=>({...a,responseLogging:t.target.checked})),className:"mt-1 h-4 w-4 rounded border-slate-300 text-blue-600 focus:ring-blue-400 dark:border-slate-600"}),e.jsxs("div",{className:"space-y-1",children:[e.jsx("span",{className:"text-sm font-semibold text-slate-700 dark:text-slate-100",children:s("settings.fields.responseLogging")}),e.jsx("p",{className:g(f,"text-xs"),children:s("settings.fields.responseLoggingHint")})]})]})]}),e.jsxs("div",{className:"md:col-span-2 rounded-2xl border border-slate-200/70 bg-white/80 px-4 py-3 text-sm text-slate-700 shadow-sm shadow-slate-200/60 dark:border-slate-700/60 dark:bg-slate-900/70 dark:text-slate-200",children:[e.jsx("span",{className:"text-xs font-semibold uppercase tracking-wide text-slate-500 dark:text-slate-400",children:s("settings.fields.defaults")}),e.jsx("p",{className:"mt-2 text-sm",children:G??s("settings.defaults.none")})]})]}),e.jsx(w,{title:s("settings.sections.security"),description:s("settings.auth.description"),contentClassName:"space-y-5",children:x.isPending&&!o?e.jsx("div",{className:"flex min-h-[120px] items-center justify-center",children:e.jsx(T,{})}):e.jsxs("div",{className:"space-y-6",children:[e.jsx("div",{className:"rounded-3xl border border-blue-200/50 bg-gradient-to-br from-blue-50/70 via-white/90 to-blue-100/60 p-5 shadow-lg shadow-blue-200/40 transition dark:border-blue-500/30 dark:from-slate-900/80 dark:via-slate-900/60 dark:to-slate-900/70 dark:shadow-blue-900/20",children:e.jsxs("label",{className:"flex cursor-pointer select-none items-start gap-4",children:[e.jsx("input",{type:"checkbox",checked:n.enabled,onChange:t=>h(a=>({...a,enabled:t.target.checked})),className:"mt-1 h-5 w-5 rounded-full border-blue-300 bg-white text-blue-600 shadow-sm transition focus:ring-2 focus:ring-blue-400/40 accent-blue-600 dark:border-blue-500/40 dark:bg-slate-900 dark:text-blue-300"}),e.jsxs("div",{className:"space-y-2",children:[e.jsx("span",{className:"text-sm font-semibold text-slate-800 dark:text-slate-100",children:s("settings.auth.enable")}),e.jsx("p",{className:g(f,"text-xs leading-relaxed"),children:s("settings.auth.enableHint")}),e.jsxs("div",{className:"flex flex-wrap gap-3 text-[11px] font-medium text-blue-600/80 dark:text-blue-300/80",children:[e.jsx("span",{className:"rounded-full bg-blue-100/80 px-3 py-1 shadow-sm shadow-blue-200/40 dark:bg-blue-500/20",children:"/ui"}),e.jsx("span",{className:"rounded-full bg-blue-100/80 px-3 py-1 shadow-sm shadow-blue-200/40 dark:bg-blue-500/20",children:"/api/*"}),e.jsx("span",{className:"rounded-full bg-blue-100/80 px-3 py-1 shadow-sm shadow-blue-200/40 dark:bg-blue-500/20",children:"Cookie Session"})]})]})]})}),e.jsxs("div",{className:"grid gap-6 lg:grid-cols-[minmax(0,1fr)_minmax(0,0.85fr)]",children:[e.jsxs("div",{className:"grid gap-4 sm:grid-cols-2",children:[e.jsxs("div",{className:"flex flex-col gap-2 sm:col-span-2",children:[e.jsx("span",{className:"text-xs font-semibold uppercase tracking-wide text-slate-500 dark:text-slate-400",children:s("settings.auth.username")}),e.jsx("input",{value:n.username,onChange:t=>h(a=>({...a,username:t.target.value})),placeholder:s("settings.auth.usernamePlaceholder"),className:"h-11 rounded-2xl border border-blue-200/60 bg-blue-50/70 px-4 text-sm font-medium text-blue-900 shadow-sm shadow-blue-200/50 transition focus:border-blue-400 focus:ring-2 focus:ring-blue-400/40 dark:border-blue-500/40 dark:bg-slate-900/80 dark:text-blue-100 dark:shadow-blue-900/30"}),y.username?e.jsx("span",{className:"text-xs font-medium text-red-500 dark:text-red-300",children:y.username}):null]}),e.jsxs("div",{className:"flex flex-col gap-2",children:[e.jsx("span",{className:"text-xs font-semibold uppercase tracking-wide text-slate-500 dark:text-slate-400",children:s("settings.auth.password")}),e.jsx("input",{type:"password",value:n.password,disabled:!n.enabled,onChange:t=>h(a=>({...a,password:t.target.value})),placeholder:s("settings.auth.passwordPlaceholder"),className:"h-11 rounded-2xl border border-slate-200/70 bg-white/95 px-4 text-sm shadow-sm shadow-slate-200/40 transition focus:border-blue-400 focus:ring-2 focus:ring-blue-400/40 disabled:cursor-not-allowed disabled:border-slate-200 disabled:bg-slate-100 dark:border-slate-700/60 dark:bg-slate-900/70 dark:text-slate-100 dark:shadow-slate-900/40 dark:disabled:bg-slate-900/40"}),y.password?e.jsx("span",{className:"text-xs font-medium text-red-500 dark:text-red-300",children:y.password}):e.jsx("span",{className:g(f,"text-xs leading-relaxed"),children:s(O?"settings.auth.passwordHintRequired":"settings.auth.passwordHintOptional")})]}),e.jsxs("div",{className:"flex flex-col gap-2",children:[e.jsx("span",{className:"text-xs font-semibold uppercase tracking-wide text-slate-500 dark:text-slate-400",children:s("settings.auth.confirmPassword")}),e.jsx("input",{type:"password",value:n.confirmPassword,disabled:!n.enabled,onChange:t=>h(a=>({...a,confirmPassword:t.target.value})),placeholder:s("settings.auth.confirmPasswordPlaceholder"),className:"h-11 rounded-2xl border border-slate-200/70 bg-white/95 px-4 text-sm shadow-sm shadow-slate-200/40 transition focus:border-blue-400 focus:ring-2 focus:ring-blue-400/40 disabled:cursor-not-allowed disabled:border-slate-200 disabled:bg-slate-100 dark:border-slate-700/60 dark:bg-slate-900/70 dark:text-slate-100 dark:shadow-slate-900/40 dark:disabled:bg-slate-900/40"}),y.confirmPassword?e.jsx("span",{className:"text-xs font-medium text-red-500 dark:text-red-300",children:y.confirmPassword}):null]})]}),e.jsxs("div",{className:"flex flex-col gap-4",children:[e.jsxs("div",{className:"rounded-3xl border border-slate-200/80 bg-white/90 px-5 py-4 text-sm shadow-md shadow-slate-200/50 dark:border-slate-700/60 dark:bg-slate-900/70 dark:text-slate-200 dark:shadow-slate-900/40",children:[e.jsx("div",{className:"text-xs font-semibold uppercase tracking-wide text-slate-500/90 dark:text-slate-400",children:s("settings.auth.status")}),e.jsx("div",{className:"mt-2 text-base font-semibold text-slate-800 dark:text-slate-100",children:o!=null&&o.enabled?s("settings.auth.statusEnabled"):s("settings.auth.statusDisabled")}),o!=null&&o.username?e.jsxs("div",{className:"mt-3 rounded-2xl bg-blue-50/80 px-3 py-2 text-xs font-medium text-blue-700 shadow-sm shadow-blue-200/40 dark:bg-blue-500/20 dark:text-blue-100",children:[s("settings.auth.username"),": ",o.username]}):null]}),e.jsx("div",{className:"rounded-3xl border border-blue-200/60 bg-blue-50/40 px-5 py-4 text-xs leading-relaxed text-blue-700 shadow-sm shadow-blue-200/40 dark:border-blue-500/30 dark:bg-blue-500/15 dark:text-blue-100",children:s(O?"settings.auth.passwordHintRequired":"settings.auth.passwordHintOptional")})]})]}),e.jsxs("div",{className:"flex flex-wrap items-center justify-end gap-3",children:[e.jsx("button",{type:"button",onClick:z,className:g(V,"h-10 rounded-full px-6"),disabled:P,children:s(P?"common.actions.saving":"settings.auth.actions.save")}),e.jsx("button",{type:"button",onClick:J,className:g(C,"h-10 rounded-full px-4"),disabled:P,children:s("common.actions.reset")})]})]})}),e.jsx(w,{title:s("settings.sections.configFile"),description:s("settings.file.description"),actions:e.jsxs("button",{type:"button",onClick:U,className:g(C,"h-10 rounded-full px-4"),children:[e.jsx(ne,{className:"h-4 w-4","aria-hidden":"true"}),s("common.actions.copy")]}),contentClassName:"gap-3",children:e.jsx("code",{className:"block break-all rounded-2xl border border-slate-200/60 bg-slate-100 px-4 py-3 text-xs text-slate-700 dark:border-slate-700/60 dark:bg-slate-900 dark:text-slate-200",children:N||s("settings.file.unknown")})}),e.jsxs(w,{title:s("settings.sections.cleanup"),description:s("settings.cleanup.description"),contentClassName:"flex flex-col gap-4",children:[e.jsxs("div",{className:"flex flex-wrap gap-3",children:[e.jsx("button",{type:"button",onClick:X,className:g(K,"px-5"),disabled:E,children:s(E?"common.actions.cleaning":"common.actions.cleanup")}),e.jsx("button",{type:"button",onClick:Y,className:g(K,"px-5 border-red-500/70 bg-red-600 text-white hover:bg-red-600/90 dark:border-red-500 dark:bg-red-500 dark:text-white"),disabled:F,children:s(F?"settings.cleanup.clearingAll":"settings.cleanup.clearAll")})]}),e.jsx("p",{className:"text-xs font-medium text-red-500 dark:text-red-300",children:s("settings.cleanup.clearAllWarning")})]})]}):e.jsx(w,{children:e.jsx("p",{className:"text-sm font-medium text-red-500 dark:text-red-300",children:s("settings.toast.missingConfig")})})]})}export{ge as default};
@@ -1 +0,0 @@
1
- *,:before,:after{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }*,:before,:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:#e5e7eb}:before,:after{--tw-content: ""}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:Inter,ui-sans-serif,system-ui;font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}.container{width:100%}@media (min-width: 640px){.container{max-width:640px}}@media (min-width: 768px){.container{max-width:768px}}@media (min-width: 1024px){.container{max-width:1024px}}@media (min-width: 1280px){.container{max-width:1280px}}@media (min-width: 1536px){.container{max-width:1536px}}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.pointer-events-none{pointer-events:none}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.sticky{position:sticky}.inset-0{top:0;right:0;bottom:0;left:0}.inset-y-0{top:0;bottom:0}.bottom-32{bottom:8rem}.left-0{left:0}.left-10{left:2.5rem}.right-0{right:0}.right-16{right:4rem}.right-6{right:1.5rem}.top-0{top:0}.top-20{top:5rem}.top-6{top:1.5rem}.top-full{top:100%}.z-10{z-index:10}.z-20{z-index:20}.z-30{z-index:30}.z-40{z-index:40}.z-50{z-index:50}.mx-auto{margin-left:auto;margin-right:auto}.mb-2{margin-bottom:.5rem}.mb-3{margin-bottom:.75rem}.mb-4{margin-bottom:1rem}.mb-5{margin-bottom:1.25rem}.mb-6{margin-bottom:1.5rem}.mb-8{margin-bottom:2rem}.ml-1{margin-left:.25rem}.ml-2{margin-left:.5rem}.mt-0\.5{margin-top:.125rem}.mt-1{margin-top:.25rem}.mt-2{margin-top:.5rem}.mt-3{margin-top:.75rem}.mt-4{margin-top:1rem}.mt-6{margin-top:1.5rem}.mt-7{margin-top:1.75rem}.mt-auto{margin-top:auto}.block{display:block}.inline-block{display:inline-block}.flex{display:flex}.inline-flex{display:inline-flex}.table{display:table}.grid{display:grid}.hidden{display:none}.h-1\.5{height:.375rem}.h-10{height:2.5rem}.h-11{height:2.75rem}.h-12{height:3rem}.h-14{height:3.5rem}.h-16{height:4rem}.h-2{height:.5rem}.h-36{height:9rem}.h-4{height:1rem}.h-40{height:10rem}.h-48{height:12rem}.h-5{height:1.25rem}.h-56{height:14rem}.h-6{height:1.5rem}.h-7{height:1.75rem}.h-8{height:2rem}.h-9{height:2.25rem}.h-full{height:100%}.max-h-56{max-height:14rem}.max-h-64{max-height:16rem}.max-h-80{max-height:20rem}.min-h-\[120px\]{min-height:120px}.min-h-\[200px\]{min-height:200px}.min-h-\[220px\]{min-height:220px}.min-h-\[320px\]{min-height:320px}.min-h-\[96px\]{min-height:96px}.min-h-screen{min-height:100vh}.w-1\.5{width:.375rem}.w-10{width:2.5rem}.w-11{width:2.75rem}.w-12{width:3rem}.w-14{width:3.5rem}.w-16{width:4rem}.w-2{width:.5rem}.w-4{width:1rem}.w-48{width:12rem}.w-5{width:1.25rem}.w-56{width:14rem}.w-6{width:1.5rem}.w-64{width:16rem}.w-7{width:1.75rem}.w-8{width:2rem}.w-80{width:20rem}.w-9{width:2.25rem}.w-full{width:100%}.min-w-\[240px\]{min-width:240px}.min-w-full{min-width:100%}.max-w-3xl{max-width:48rem}.max-w-\[1600px\]{max-width:1600px}.max-w-\[360px\]{max-width:360px}.max-w-lg{max-width:32rem}.max-w-md{max-width:28rem}.max-w-xl{max-width:36rem}.max-w-xs{max-width:20rem}.flex-1{flex:1 1 0%}.flex-shrink-0,.shrink-0{flex-shrink:0}.rotate-180{--tw-rotate: 180deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}@keyframes fade-in{0%{opacity:0}to{opacity:1}}.animate-fade-in{animation:fade-in .2s ease-out}@keyframes slide-down{0%{transform:translateY(-10px);opacity:0}to{transform:translateY(0);opacity:1}}.animate-slide-down{animation:slide-down .3s ease-out}@keyframes slide-up{0%{transform:translateY(10px);opacity:0}to{transform:translateY(0);opacity:1}}.animate-slide-up{animation:slide-up .3s ease-out}.cursor-not-allowed{cursor:not-allowed}.cursor-pointer{cursor:pointer}.cursor-wait{cursor:wait}.select-none{-webkit-user-select:none;-moz-user-select:none;user-select:none}.resize-none{resize:none}.appearance-none{-webkit-appearance:none;-moz-appearance:none;appearance:none}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.place-items-center{place-items:center}.items-start{align-items:flex-start}.items-end{align-items:flex-end}.items-center{align-items:center}.justify-end{justify-content:flex-end}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-0{gap:0px}.gap-1{gap:.25rem}.gap-2{gap:.5rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.gap-5{gap:1.25rem}.gap-6{gap:1.5rem}.gap-8{gap:2rem}.gap-x-4{-moz-column-gap:1rem;column-gap:1rem}.gap-y-3{row-gap:.75rem}.space-y-1>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.25rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.25rem * var(--tw-space-y-reverse))}.space-y-2>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.5rem * var(--tw-space-y-reverse))}.space-y-3>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.75rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.75rem * var(--tw-space-y-reverse))}.space-y-4>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(1rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1rem * var(--tw-space-y-reverse))}.space-y-5>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(1.25rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1.25rem * var(--tw-space-y-reverse))}.space-y-6>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(1.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1.5rem * var(--tw-space-y-reverse))}.space-y-8>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(2rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(2rem * var(--tw-space-y-reverse))}.divide-y>:not([hidden])~:not([hidden]){--tw-divide-y-reverse: 0;border-top-width:calc(1px * calc(1 - var(--tw-divide-y-reverse)));border-bottom-width:calc(1px * var(--tw-divide-y-reverse))}.divide-slate-200\/50>:not([hidden])~:not([hidden]){border-color:#e2e8f080}.divide-slate-200\/60>:not([hidden])~:not([hidden]){border-color:#e2e8f099}.divide-slate-200\/70>:not([hidden])~:not([hidden]){border-color:#e2e8f0b3}.self-start{align-self:flex-start}.overflow-auto{overflow:auto}.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.overflow-y-auto{overflow-y:auto}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.whitespace-pre-wrap{white-space:pre-wrap}.break-all{word-break:break-all}.rounded{border-radius:.25rem}.rounded-2xl{border-radius:1rem}.rounded-3xl{border-radius:1.5rem}.rounded-full{border-radius:9999px}.rounded-lg{border-radius:.5rem}.rounded-md{border-radius:.375rem}.rounded-xl{border-radius:.75rem}.border{border-width:1px}.border-4{border-width:4px}.border-\[3px\]{border-width:3px}.border-b{border-bottom-width:1px}.border-b-2{border-bottom-width:2px}.border-l{border-left-width:1px}.border-r{border-right-width:1px}.border-t{border-top-width:1px}.border-dashed{border-style:dashed}.border-blue-200\/40{border-color:#bfdbfe66}.border-blue-200\/50{border-color:#bfdbfe80}.border-blue-200\/60{border-color:#bfdbfe99}.border-blue-200\/70{border-color:#bfdbfeb3}.border-blue-300{--tw-border-opacity: 1;border-color:rgb(147 197 253 / var(--tw-border-opacity, 1))}.border-blue-400{--tw-border-opacity: 1;border-color:rgb(96 165 250 / var(--tw-border-opacity, 1))}.border-blue-500\/30{border-color:#3b82f64d}.border-blue-600{--tw-border-opacity: 1;border-color:rgb(37 99 235 / var(--tw-border-opacity, 1))}.border-current{border-color:currentColor}.border-emerald-200{--tw-border-opacity: 1;border-color:rgb(167 243 208 / var(--tw-border-opacity, 1))}.border-red-200{--tw-border-opacity: 1;border-color:rgb(254 202 202 / var(--tw-border-opacity, 1))}.border-red-200\/50{border-color:#fecaca80}.border-red-200\/70{border-color:#fecacab3}.border-red-300\/50{border-color:#fca5a580}.border-red-500\/70{border-color:#ef4444b3}.border-slate-200{--tw-border-opacity: 1;border-color:rgb(226 232 240 / var(--tw-border-opacity, 1))}.border-slate-200\/30{border-color:#e2e8f04d}.border-slate-200\/40{border-color:#e2e8f066}.border-slate-200\/50{border-color:#e2e8f080}.border-slate-200\/60{border-color:#e2e8f099}.border-slate-200\/70{border-color:#e2e8f0b3}.border-slate-200\/80{border-color:#e2e8f0cc}.border-slate-300{--tw-border-opacity: 1;border-color:rgb(203 213 225 / var(--tw-border-opacity, 1))}.border-slate-300\/50{border-color:#cbd5e180}.border-slate-300\/60{border-color:#cbd5e199}.border-t-blue-600{--tw-border-opacity: 1;border-top-color:rgb(37 99 235 / var(--tw-border-opacity, 1))}.border-t-transparent{border-top-color:transparent}.bg-amber-500\/15{background-color:#f59e0b26}.bg-blue-100{--tw-bg-opacity: 1;background-color:rgb(219 234 254 / var(--tw-bg-opacity, 1))}.bg-blue-100\/80{background-color:#dbeafecc}.bg-blue-200\/50{background-color:#bfdbfe80}.bg-blue-50\/40{background-color:#eff6ff66}.bg-blue-50\/70{background-color:#eff6ffb3}.bg-blue-50\/80{background-color:#eff6ffcc}.bg-blue-500{--tw-bg-opacity: 1;background-color:rgb(59 130 246 / var(--tw-bg-opacity, 1))}.bg-blue-500\/10{background-color:#3b82f61a}.bg-blue-500\/15{background-color:#3b82f626}.bg-blue-600{--tw-bg-opacity: 1;background-color:rgb(37 99 235 / var(--tw-bg-opacity, 1))}.bg-current{background-color:currentColor}.bg-emerald-100\/80{background-color:#d1fae5cc}.bg-emerald-50{--tw-bg-opacity: 1;background-color:rgb(236 253 245 / var(--tw-bg-opacity, 1))}.bg-emerald-500{--tw-bg-opacity: 1;background-color:rgb(16 185 129 / var(--tw-bg-opacity, 1))}.bg-emerald-500\/15{background-color:#10b98126}.bg-emerald-500\/20{background-color:#10b98133}.bg-green-100{--tw-bg-opacity: 1;background-color:rgb(220 252 231 / var(--tw-bg-opacity, 1))}.bg-indigo-100{--tw-bg-opacity: 1;background-color:rgb(224 231 255 / var(--tw-bg-opacity, 1))}.bg-indigo-200\/40{background-color:#c7d2fe66}.bg-purple-100{--tw-bg-opacity: 1;background-color:rgb(243 232 255 / var(--tw-bg-opacity, 1))}.bg-purple-500\/10{background-color:#a855f71a}.bg-red-100{--tw-bg-opacity: 1;background-color:rgb(254 226 226 / var(--tw-bg-opacity, 1))}.bg-red-100\/80{background-color:#fee2e2cc}.bg-red-50{--tw-bg-opacity: 1;background-color:rgb(254 242 242 / var(--tw-bg-opacity, 1))}.bg-red-50\/80{background-color:#fef2f2cc}.bg-red-500\/15{background-color:#ef444426}.bg-red-600{--tw-bg-opacity: 1;background-color:rgb(220 38 38 / var(--tw-bg-opacity, 1))}.bg-slate-100{--tw-bg-opacity: 1;background-color:rgb(241 245 249 / var(--tw-bg-opacity, 1))}.bg-slate-100\/50{background-color:#f1f5f980}.bg-slate-100\/70{background-color:#f1f5f9b3}.bg-slate-100\/80{background-color:#f1f5f9cc}.bg-slate-200\/50{background-color:#e2e8f080}.bg-slate-200\/80{background-color:#e2e8f0cc}.bg-slate-50{--tw-bg-opacity: 1;background-color:rgb(248 250 252 / var(--tw-bg-opacity, 1))}.bg-slate-50\/50{background-color:#f8fafc80}.bg-slate-50\/60{background-color:#f8fafc99}.bg-slate-50\/70{background-color:#f8fafcb3}.bg-slate-50\/80{background-color:#f8fafccc}.bg-slate-900\/60{background-color:#0f172a99}.bg-slate-900\/80{background-color:#0f172acc}.bg-slate-900\/90{background-color:#0f172ae6}.bg-slate-900\/95{background-color:#0f172af2}.bg-slate-950\/60{background-color:#02061799}.bg-transparent{background-color:transparent}.bg-white{--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1))}.bg-white\/50{background-color:#ffffff80}.bg-white\/70{background-color:#ffffffb3}.bg-white\/75{background-color:#ffffffbf}.bg-white\/80{background-color:#fffc}.bg-white\/90{background-color:#ffffffe6}.bg-white\/95{background-color:#fffffff2}.bg-\[radial-gradient\(circle_at_top\,_rgba\(59\,_130\,_246\,_0\.12\)\,_transparent_55\%\)\]{background-image:radial-gradient(circle at top,rgba(59,130,246,.12),transparent 55%)}.bg-gradient-to-b{background-image:linear-gradient(to bottom,var(--tw-gradient-stops))}.bg-gradient-to-br{background-image:linear-gradient(to bottom right,var(--tw-gradient-stops))}.bg-gradient-to-r{background-image:linear-gradient(to right,var(--tw-gradient-stops))}.from-blue-50{--tw-gradient-from: #eff6ff var(--tw-gradient-from-position);--tw-gradient-to: rgb(239 246 255 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-blue-50\/70{--tw-gradient-from: rgb(239 246 255 / .7) var(--tw-gradient-from-position);--tw-gradient-to: rgb(239 246 255 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-blue-50\/80{--tw-gradient-from: rgb(239 246 255 / .8) var(--tw-gradient-from-position);--tw-gradient-to: rgb(239 246 255 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-blue-50\/90{--tw-gradient-from: rgb(239 246 255 / .9) var(--tw-gradient-from-position);--tw-gradient-to: rgb(239 246 255 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-blue-500{--tw-gradient-from: #3b82f6 var(--tw-gradient-from-position);--tw-gradient-to: rgb(59 130 246 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-blue-500\/20{--tw-gradient-from: rgb(59 130 246 / .2) var(--tw-gradient-from-position);--tw-gradient-to: rgb(59 130 246 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-blue-600{--tw-gradient-from: #2563eb var(--tw-gradient-from-position);--tw-gradient-to: rgb(37 99 235 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-blue-600\/15{--tw-gradient-from: rgb(37 99 235 / .15) var(--tw-gradient-from-position);--tw-gradient-to: rgb(37 99 235 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-red-50{--tw-gradient-from: #fef2f2 var(--tw-gradient-from-position);--tw-gradient-to: rgb(254 242 242 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-slate-50\/80{--tw-gradient-from: rgb(248 250 252 / .8) var(--tw-gradient-from-position);--tw-gradient-to: rgb(248 250 252 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-slate-50\/90{--tw-gradient-from: rgb(248 250 252 / .9) var(--tw-gradient-from-position);--tw-gradient-to: rgb(248 250 252 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-slate-900{--tw-gradient-from: #0f172a var(--tw-gradient-from-position);--tw-gradient-to: rgb(15 23 42 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-white\/80{--tw-gradient-from: rgb(255 255 255 / .8) var(--tw-gradient-from-position);--tw-gradient-to: rgb(255 255 255 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-white\/85{--tw-gradient-from: rgb(255 255 255 / .85) var(--tw-gradient-from-position);--tw-gradient-to: rgb(255 255 255 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-white\/90{--tw-gradient-from: rgb(255 255 255 / .9) var(--tw-gradient-from-position);--tw-gradient-to: rgb(255 255 255 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-white\/95{--tw-gradient-from: rgb(255 255 255 / .95) var(--tw-gradient-from-position);--tw-gradient-to: rgb(255 255 255 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.via-blue-600{--tw-gradient-to: rgb(37 99 235 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), #2563eb var(--tw-gradient-via-position), var(--tw-gradient-to)}.via-white{--tw-gradient-to: rgb(255 255 255 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), #fff var(--tw-gradient-via-position), var(--tw-gradient-to)}.via-white\/80{--tw-gradient-to: rgb(255 255 255 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), rgb(255 255 255 / .8) var(--tw-gradient-via-position), var(--tw-gradient-to)}.via-white\/90{--tw-gradient-to: rgb(255 255 255 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), rgb(255 255 255 / .9) var(--tw-gradient-via-position), var(--tw-gradient-to)}.to-blue-100\/60{--tw-gradient-to: rgb(219 234 254 / .6) var(--tw-gradient-to-position)}.to-blue-700{--tw-gradient-to: #1d4ed8 var(--tw-gradient-to-position)}.to-indigo-100\/60{--tw-gradient-to: rgb(224 231 255 / .6) var(--tw-gradient-to-position)}.to-indigo-50{--tw-gradient-to: #eef2ff var(--tw-gradient-to-position)}.to-indigo-500{--tw-gradient-to: #6366f1 var(--tw-gradient-to-position)}.to-indigo-500\/20{--tw-gradient-to: rgb(99 102 241 / .2) var(--tw-gradient-to-position)}.to-indigo-600{--tw-gradient-to: #4f46e5 var(--tw-gradient-to-position)}.to-indigo-600\/10{--tw-gradient-to: rgb(79 70 229 / .1) var(--tw-gradient-to-position)}.to-purple-50\/80{--tw-gradient-to: rgb(250 245 255 / .8) var(--tw-gradient-to-position)}.to-red-100{--tw-gradient-to: #fee2e2 var(--tw-gradient-to-position)}.to-slate-100\/70{--tw-gradient-to: rgb(241 245 249 / .7) var(--tw-gradient-to-position)}.to-slate-700{--tw-gradient-to: #334155 var(--tw-gradient-to-position)}.to-white\/70{--tw-gradient-to: rgb(255 255 255 / .7) var(--tw-gradient-to-position)}.to-white\/75{--tw-gradient-to: rgb(255 255 255 / .75) var(--tw-gradient-to-position)}.to-white\/80{--tw-gradient-to: rgb(255 255 255 / .8) var(--tw-gradient-to-position)}.to-white\/85{--tw-gradient-to: rgb(255 255 255 / .85) var(--tw-gradient-to-position)}.to-white\/90{--tw-gradient-to: rgb(255 255 255 / .9) var(--tw-gradient-to-position)}.bg-clip-text{-webkit-background-clip:text;background-clip:text}.p-0{padding:0}.p-12{padding:3rem}.p-2{padding:.5rem}.p-3{padding:.75rem}.p-4{padding:1rem}.p-5{padding:1.25rem}.p-6{padding:1.5rem}.p-8{padding:2rem}.px-1{padding-left:.25rem;padding-right:.25rem}.px-2{padding-left:.5rem;padding-right:.5rem}.px-2\.5{padding-left:.625rem;padding-right:.625rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-4{padding-left:1rem;padding-right:1rem}.px-5{padding-left:1.25rem;padding-right:1.25rem}.px-6{padding-left:1.5rem;padding-right:1.5rem}.px-8{padding-left:2rem;padding-right:2rem}.py-1{padding-top:.25rem;padding-bottom:.25rem}.py-1\.5{padding-top:.375rem;padding-bottom:.375rem}.py-12{padding-top:3rem;padding-bottom:3rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.py-2\.5{padding-top:.625rem;padding-bottom:.625rem}.py-3{padding-top:.75rem;padding-bottom:.75rem}.py-4{padding-top:1rem;padding-bottom:1rem}.py-5{padding-top:1.25rem;padding-bottom:1.25rem}.py-6{padding-top:1.5rem;padding-bottom:1.5rem}.py-8{padding-top:2rem;padding-bottom:2rem}.pb-10{padding-bottom:2.5rem}.pb-12{padding-bottom:3rem}.pr-10{padding-right:2.5rem}.pt-2{padding-top:.5rem}.pt-8{padding-top:2rem}.pt-9{padding-top:2.25rem}.text-left{text-align:left}.text-center{text-align:center}.text-right{text-align:right}.font-mono{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.text-2xl{font-size:1.5rem;line-height:2rem}.text-3xl{font-size:1.875rem;line-height:2.25rem}.text-\[11px\]{font-size:11px}.text-base{font-size:1rem;line-height:1.5rem}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xl{font-size:1.25rem;line-height:1.75rem}.text-xs{font-size:.75rem;line-height:1rem}.font-bold{font-weight:700}.font-medium{font-weight:500}.font-semibold{font-weight:600}.uppercase{text-transform:uppercase}.leading-5{line-height:1.25rem}.leading-6{line-height:1.5rem}.leading-relaxed{line-height:1.625}.tracking-\[0\.14em\]{letter-spacing:.14em}.tracking-\[0\.15em\]{letter-spacing:.15em}.tracking-\[0\.18em\]{letter-spacing:.18em}.tracking-tight{letter-spacing:-.025em}.tracking-wide{letter-spacing:.025em}.text-amber-600{--tw-text-opacity: 1;color:rgb(217 119 6 / var(--tw-text-opacity, 1))}.text-amber-700{--tw-text-opacity: 1;color:rgb(180 83 9 / var(--tw-text-opacity, 1))}.text-blue-500{--tw-text-opacity: 1;color:rgb(59 130 246 / var(--tw-text-opacity, 1))}.text-blue-600{--tw-text-opacity: 1;color:rgb(37 99 235 / var(--tw-text-opacity, 1))}.text-blue-600\/80{color:#2563ebcc}.text-blue-700{--tw-text-opacity: 1;color:rgb(29 78 216 / var(--tw-text-opacity, 1))}.text-blue-900{--tw-text-opacity: 1;color:rgb(30 58 138 / var(--tw-text-opacity, 1))}.text-emerald-600{--tw-text-opacity: 1;color:rgb(5 150 105 / var(--tw-text-opacity, 1))}.text-emerald-700{--tw-text-opacity: 1;color:rgb(4 120 87 / var(--tw-text-opacity, 1))}.text-emerald-900{--tw-text-opacity: 1;color:rgb(6 78 59 / var(--tw-text-opacity, 1))}.text-green-700{--tw-text-opacity: 1;color:rgb(21 128 61 / var(--tw-text-opacity, 1))}.text-indigo-700{--tw-text-opacity: 1;color:rgb(67 56 202 / var(--tw-text-opacity, 1))}.text-purple-600{--tw-text-opacity: 1;color:rgb(147 51 234 / var(--tw-text-opacity, 1))}.text-purple-700{--tw-text-opacity: 1;color:rgb(126 34 206 / var(--tw-text-opacity, 1))}.text-red-500{--tw-text-opacity: 1;color:rgb(239 68 68 / var(--tw-text-opacity, 1))}.text-red-600{--tw-text-opacity: 1;color:rgb(220 38 38 / var(--tw-text-opacity, 1))}.text-red-700{--tw-text-opacity: 1;color:rgb(185 28 28 / var(--tw-text-opacity, 1))}.text-red-900{--tw-text-opacity: 1;color:rgb(127 29 29 / var(--tw-text-opacity, 1))}.text-slate-300{--tw-text-opacity: 1;color:rgb(203 213 225 / var(--tw-text-opacity, 1))}.text-slate-400{--tw-text-opacity: 1;color:rgb(148 163 184 / var(--tw-text-opacity, 1))}.text-slate-50{--tw-text-opacity: 1;color:rgb(248 250 252 / var(--tw-text-opacity, 1))}.text-slate-500{--tw-text-opacity: 1;color:rgb(100 116 139 / var(--tw-text-opacity, 1))}.text-slate-500\/90{color:#64748be6}.text-slate-600{--tw-text-opacity: 1;color:rgb(71 85 105 / var(--tw-text-opacity, 1))}.text-slate-700{--tw-text-opacity: 1;color:rgb(51 65 85 / var(--tw-text-opacity, 1))}.text-slate-800{--tw-text-opacity: 1;color:rgb(30 41 59 / var(--tw-text-opacity, 1))}.text-slate-900{--tw-text-opacity: 1;color:rgb(15 23 42 / var(--tw-text-opacity, 1))}.text-transparent{color:transparent}.text-white{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}.accent-blue-600{accent-color:#2563eb}.opacity-50{opacity:.5}.opacity-60{opacity:.6}.opacity-70{opacity:.7}.opacity-75{opacity:.75}.shadow-2xl{--tw-shadow: 0 25px 50px -12px rgb(0 0 0 / .25);--tw-shadow-colored: 0 25px 50px -12px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-inner{--tw-shadow: inset 0 2px 4px 0 rgb(0 0 0 / .05);--tw-shadow-colored: inset 0 2px 4px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-lg{--tw-shadow: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-md{--tw-shadow: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1);--tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-sm{--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-xl{--tw-shadow: 0 20px 25px -5px rgb(0 0 0 / .1), 0 8px 10px -6px rgb(0 0 0 / .1);--tw-shadow-colored: 0 20px 25px -5px var(--tw-shadow-color), 0 8px 10px -6px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-blue-100\/40{--tw-shadow-color: rgb(219 234 254 / .4);--tw-shadow: var(--tw-shadow-colored)}.shadow-blue-200\/30{--tw-shadow-color: rgb(191 219 254 / .3);--tw-shadow: var(--tw-shadow-colored)}.shadow-blue-200\/40{--tw-shadow-color: rgb(191 219 254 / .4);--tw-shadow: var(--tw-shadow-colored)}.shadow-blue-200\/50{--tw-shadow-color: rgb(191 219 254 / .5);--tw-shadow: var(--tw-shadow-colored)}.shadow-blue-500\/20{--tw-shadow-color: rgb(59 130 246 / .2);--tw-shadow: var(--tw-shadow-colored)}.shadow-blue-500\/30{--tw-shadow-color: rgb(59 130 246 / .3);--tw-shadow: var(--tw-shadow-colored)}.shadow-blue-600\/30{--tw-shadow-color: rgb(37 99 235 / .3);--tw-shadow: var(--tw-shadow-colored)}.shadow-emerald-500\/30{--tw-shadow-color: rgb(16 185 129 / .3);--tw-shadow: var(--tw-shadow-colored)}.shadow-red-200\/30{--tw-shadow-color: rgb(254 202 202 / .3);--tw-shadow: var(--tw-shadow-colored)}.shadow-red-200\/40{--tw-shadow-color: rgb(254 202 202 / .4);--tw-shadow: var(--tw-shadow-colored)}.shadow-slate-200\/20{--tw-shadow-color: rgb(226 232 240 / .2);--tw-shadow: var(--tw-shadow-colored)}.shadow-slate-200\/25{--tw-shadow-color: rgb(226 232 240 / .25);--tw-shadow: var(--tw-shadow-colored)}.shadow-slate-200\/30{--tw-shadow-color: rgb(226 232 240 / .3);--tw-shadow: var(--tw-shadow-colored)}.shadow-slate-200\/40{--tw-shadow-color: rgb(226 232 240 / .4);--tw-shadow: var(--tw-shadow-colored)}.shadow-slate-200\/50{--tw-shadow-color: rgb(226 232 240 / .5);--tw-shadow: var(--tw-shadow-colored)}.shadow-slate-200\/60{--tw-shadow-color: rgb(226 232 240 / .6);--tw-shadow: var(--tw-shadow-colored)}.shadow-slate-200\/70{--tw-shadow-color: rgb(226 232 240 / .7);--tw-shadow: var(--tw-shadow-colored)}.shadow-slate-900\/30{--tw-shadow-color: rgb(15 23 42 / .3);--tw-shadow: var(--tw-shadow-colored)}.shadow-slate-900\/40{--tw-shadow-color: rgb(15 23 42 / .4);--tw-shadow: var(--tw-shadow-colored)}.ring-1{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.ring-2{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.ring-amber-500\/25{--tw-ring-color: rgb(245 158 11 / .25)}.ring-blue-200\/50{--tw-ring-color: rgb(191 219 254 / .5)}.ring-blue-400\/30{--tw-ring-color: rgb(96 165 250 / .3)}.ring-blue-500\/20{--tw-ring-color: rgb(59 130 246 / .2)}.ring-blue-500\/25{--tw-ring-color: rgb(59 130 246 / .25)}.ring-blue-500\/30{--tw-ring-color: rgb(59 130 246 / .3)}.ring-emerald-200\/50{--tw-ring-color: rgb(167 243 208 / .5)}.ring-emerald-500\/25{--tw-ring-color: rgb(16 185 129 / .25)}.ring-red-200\/50{--tw-ring-color: rgb(254 202 202 / .5)}.ring-red-500\/25{--tw-ring-color: rgb(239 68 68 / .25)}.ring-slate-200\/30{--tw-ring-color: rgb(226 232 240 / .3)}.ring-slate-200\/40{--tw-ring-color: rgb(226 232 240 / .4)}.ring-slate-200\/50{--tw-ring-color: rgb(226 232 240 / .5)}.ring-slate-200\/60{--tw-ring-color: rgb(226 232 240 / .6)}.blur-3xl{--tw-blur: blur(64px);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)}.backdrop-blur{--tw-backdrop-blur: blur(8px);-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.backdrop-blur-lg{--tw-backdrop-blur: blur(16px);-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.backdrop-blur-md{--tw-backdrop-blur: blur(12px);-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.backdrop-blur-sm{--tw-backdrop-blur: blur(4px);-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.backdrop-blur-xl{--tw-backdrop-blur: blur(24px);-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-all{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-transform{transition-property:transform;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.duration-200{transition-duration:.2s}.duration-300{transition-duration:.3s}:root{color-scheme:light dark;--color-primary-50: 239 246 255;--color-primary-100: 219 234 254;--color-primary-200: 191 219 254;--color-primary-300: 147 197 253;--color-primary-400: 96 165 250;--color-primary-500: 59 130 246;--color-primary-600: 37 99 235;--color-primary-700: 29 78 216;--color-primary-800: 30 64 175;--color-primary-900: 30 58 138;--color-primary-950: 23 37 84;--glass-bg: rgba(255, 255, 255, .8);--glass-border: rgba(255, 255, 255, .2);--glass-shadow: rgba(0, 0, 0, .1)}[data-theme=dark]{--glass-bg: rgba(15, 23, 42, .8);--glass-border: rgba(255, 255, 255, .1);--glass-shadow: rgba(0, 0, 0, .3)}html,body,#root{height:100%}body{min-height:100vh;background-image:linear-gradient(to bottom right,var(--tw-gradient-stops));--tw-gradient-from: #f8fafc var(--tw-gradient-from-position);--tw-gradient-to: rgb(248 250 252 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);--tw-gradient-to: rgb(239 246 255 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), rgb(239 246 255 / .3) var(--tw-gradient-via-position), var(--tw-gradient-to);--tw-gradient-to: rgb(238 242 255 / .2) var(--tw-gradient-to-position);--tw-text-opacity: 1;color:rgb(15 23 42 / var(--tw-text-opacity, 1));-webkit-font-smoothing:auto;-moz-osx-font-smoothing:auto}body:is([data-theme=dark] *){--tw-bg-opacity: 1;background-color:rgb(2 6 23 / var(--tw-bg-opacity, 1));--tw-text-opacity: 1;color:rgb(248 250 252 / var(--tw-text-opacity, 1))}body{background-image:radial-gradient(circle at 25% 15%,rgba(59,130,246,.08),transparent 50%),radial-gradient(circle at 75% 10%,rgba(139,92,246,.06),transparent 45%),radial-gradient(circle at 50% 80%,rgba(236,72,153,.04),transparent 35%);background-attachment:fixed;background-size:100% 100%,80% 80%,60% 60%;background-color:#f8fafc}body:before{content:"";position:fixed;top:0;right:0;bottom:0;left:0;z-index:-1;background-image:radial-gradient(rgba(148,163,184,.06) 1px,transparent 1px),linear-gradient(90deg,rgba(148,163,184,.03) 1px,transparent 1px);background-size:32px 32px,32px 32px;opacity:.8;pointer-events:none}@media (prefers-color-scheme: dark){body{background-image:radial-gradient(circle at 25% 15%,rgba(59,130,246,.12),transparent 50%),radial-gradient(circle at 75% 10%,rgba(139,92,246,.1),transparent 45%),radial-gradient(circle at 50% 80%,rgba(236,72,153,.06),transparent 35%);background-color:#020617}body:before{background-image:radial-gradient(rgba(148,163,184,.04) 1px,transparent 1px),linear-gradient(90deg,rgba(148,163,184,.02) 1px,transparent 1px);opacity:.4}}input[type=text],input[type=number],input[type=search],input[type=email],input[type=url],input[type=date],input[type=time],input[type=datetime-local],input[type=password],select,textarea{border-radius:1rem;border-width:1px;border-color:#e2e8f080;background-color:#ffffffe6;padding:.75rem 1rem;font-size:.875rem;line-height:1.25rem;--tw-text-opacity: 1;color:rgb(30 41 59 / var(--tw-text-opacity, 1));--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow);--tw-shadow-color: rgb(226 232 240 / .3);--tw-shadow: var(--tw-shadow-colored);transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.2s}input[type=text]:focus,input[type=number]:focus,input[type=search]:focus,input[type=email]:focus,input[type=url]:focus,input[type=date]:focus,input[type=time]:focus,input[type=datetime-local]:focus,input[type=password]:focus,select:focus,textarea:focus{border-color:#60a5fab3;--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1));--tw-shadow: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1);--tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow);--tw-shadow-color: rgb(191 219 254 / .4);--tw-shadow: var(--tw-shadow-colored);outline:2px solid transparent;outline-offset:2px;--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000);--tw-ring-color: rgb(96 165 250 / .2)}input[type=text]:is([data-theme=dark] *),input[type=number]:is([data-theme=dark] *),input[type=search]:is([data-theme=dark] *),input[type=email]:is([data-theme=dark] *),input[type=url]:is([data-theme=dark] *),input[type=date]:is([data-theme=dark] *),input[type=time]:is([data-theme=dark] *),input[type=datetime-local]:is([data-theme=dark] *),input[type=password]:is([data-theme=dark] *),select:is([data-theme=dark] *),textarea:is([data-theme=dark] *){border-color:#33415580;background-color:#0f172ae6;--tw-text-opacity: 1;color:rgb(226 232 240 / var(--tw-text-opacity, 1));--tw-shadow: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow);--tw-shadow-color: rgb(15 23 42 / .3);--tw-shadow: var(--tw-shadow-colored)}input[type=text]:focus:is([data-theme=dark] *),input[type=number]:focus:is([data-theme=dark] *),input[type=search]:focus:is([data-theme=dark] *),input[type=email]:focus:is([data-theme=dark] *),input[type=url]:focus:is([data-theme=dark] *),input[type=date]:focus:is([data-theme=dark] *),input[type=time]:focus:is([data-theme=dark] *),input[type=datetime-local]:focus:is([data-theme=dark] *),input[type=password]:focus:is([data-theme=dark] *),select:focus:is([data-theme=dark] *),textarea:focus:is([data-theme=dark] *){border-color:#60a5fab3;--tw-ring-color: rgb(96 165 250 / .2)}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background-color:#f1f5f980}:is([data-theme=dark] *)::-webkit-scrollbar-track{background-color:#1e293b80}::-webkit-scrollbar-track{border-radius:10px}::-webkit-scrollbar-thumb{background-color:#cbd5e1b3}:is([data-theme=dark] *)::-webkit-scrollbar-thumb{background-color:#475569b3}::-webkit-scrollbar-thumb{border-radius:10px}::-webkit-scrollbar-thumb:hover{background-color:#94a3b8cc}:is([data-theme=dark] *)::-webkit-scrollbar-thumb:hover{background-color:#64748bcc}*:focus-visible{outline:2px solid transparent;outline-offset:2px;--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000);--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-width: 2px;--tw-ring-offset-color: #fff}*:focus-visible:is([data-theme=dark] *){--tw-ring-offset-color: #020617}@keyframes spin{to{transform:rotate(360deg)}}.animate-spin{animation:spin 1s linear infinite}.gradient-text{background-image:linear-gradient(to right,var(--tw-gradient-stops));--tw-gradient-from: #2563eb var(--tw-gradient-from-position);--tw-gradient-to: rgb(37 99 235 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);--tw-gradient-to: #9333ea var(--tw-gradient-to-position);-webkit-background-clip:text;background-clip:text;color:transparent}.gradient-text:is([data-theme=dark] *){--tw-gradient-from: #60a5fa var(--tw-gradient-from-position);--tw-gradient-to: rgb(96 165 250 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);--tw-gradient-to: #c084fc var(--tw-gradient-to-position)}.glass{backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);background:var(--glass-bg);border:1px solid var(--glass-border);box-shadow:0 8px 32px var(--glass-shadow)}.hover-lift{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.3s;transition-timing-function:cubic-bezier(0,0,.2,1)}.hover-lift:hover{--tw-translate-y: -.25rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));--tw-shadow: 0 20px 25px -5px rgb(0 0 0 / .1), 0 8px 10px -6px rgb(0 0 0 / .1);--tw-shadow-colored: 0 20px 25px -5px var(--tw-shadow-color), 0 8px 10px -6px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}*{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.2s}::-moz-selection{background-color:#3b82f633;--tw-text-opacity: 1;color:rgb(30 58 138 / var(--tw-text-opacity, 1))}::selection{background-color:#3b82f633;--tw-text-opacity: 1;color:rgb(30 58 138 / var(--tw-text-opacity, 1))}:is([data-theme=dark] *)::-moz-selection{--tw-text-opacity: 1;color:rgb(219 234 254 / var(--tw-text-opacity, 1))}:is([data-theme=dark] *)::selection{--tw-text-opacity: 1;color:rgb(219 234 254 / var(--tw-text-opacity, 1))}.hover\:-translate-y-0\.5:hover{--tw-translate-y: -.125rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.hover\:-translate-y-1:hover{--tw-translate-y: -.25rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.hover\:border-blue-200:hover{--tw-border-opacity: 1;border-color:rgb(191 219 254 / var(--tw-border-opacity, 1))}.hover\:border-blue-200\/60:hover{border-color:#bfdbfe99}.hover\:border-slate-200\/70:hover{border-color:#e2e8f0b3}.hover\:border-slate-300:hover{--tw-border-opacity: 1;border-color:rgb(203 213 225 / var(--tw-border-opacity, 1))}.hover\:border-slate-300\/70:hover{border-color:#cbd5e1b3}.hover\:bg-blue-50\/70:hover{background-color:#eff6ffb3}.hover\:bg-blue-700:hover{--tw-bg-opacity: 1;background-color:rgb(29 78 216 / var(--tw-bg-opacity, 1))}.hover\:bg-emerald-500\/90:hover{background-color:#10b981e6}.hover\:bg-red-500\/10:hover{background-color:#ef44441a}.hover\:bg-red-600\/90:hover{background-color:#dc2626e6}.hover\:bg-slate-100:hover{--tw-bg-opacity: 1;background-color:rgb(241 245 249 / var(--tw-bg-opacity, 1))}.hover\:bg-slate-100\/80:hover{background-color:#f1f5f9cc}.hover\:bg-slate-300:hover{--tw-bg-opacity: 1;background-color:rgb(203 213 225 / var(--tw-bg-opacity, 1))}.hover\:bg-slate-50\/70:hover{background-color:#f8fafcb3}.hover\:bg-slate-50\/80:hover{background-color:#f8fafccc}.hover\:bg-white:hover{--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1))}.hover\:bg-white\/80:hover{background-color:#fffc}.hover\:bg-white\/90:hover{background-color:#ffffffe6}.hover\:bg-white\/95:hover{background-color:#fffffff2}.hover\:bg-gradient-to-r:hover{background-image:linear-gradient(to right,var(--tw-gradient-stops))}.hover\:from-blue-700:hover{--tw-gradient-from: #1d4ed8 var(--tw-gradient-from-position);--tw-gradient-to: rgb(29 78 216 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.hover\:from-red-100:hover{--tw-gradient-from: #fee2e2 var(--tw-gradient-from-position);--tw-gradient-to: rgb(254 226 226 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.hover\:from-white:hover{--tw-gradient-from: #fff var(--tw-gradient-from-position);--tw-gradient-to: rgb(255 255 255 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.hover\:via-white\/95:hover{--tw-gradient-to: rgb(255 255 255 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), rgb(255 255 255 / .95) var(--tw-gradient-via-position), var(--tw-gradient-to)}.hover\:to-blue-800:hover{--tw-gradient-to: #1e40af var(--tw-gradient-to-position)}.hover\:to-red-200:hover{--tw-gradient-to: #fecaca var(--tw-gradient-to-position)}.hover\:to-white\/90:hover{--tw-gradient-to: rgb(255 255 255 / .9) var(--tw-gradient-to-position)}.hover\:text-red-600:hover{--tw-text-opacity: 1;color:rgb(220 38 38 / var(--tw-text-opacity, 1))}.hover\:text-slate-900:hover{--tw-text-opacity: 1;color:rgb(15 23 42 / var(--tw-text-opacity, 1))}.hover\:underline:hover{text-decoration-line:underline}.hover\:shadow-2xl:hover{--tw-shadow: 0 25px 50px -12px rgb(0 0 0 / .25);--tw-shadow-colored: 0 25px 50px -12px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.hover\:shadow-md:hover{--tw-shadow: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1);--tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.hover\:shadow-sm:hover{--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.hover\:shadow-xl:hover{--tw-shadow: 0 20px 25px -5px rgb(0 0 0 / .1), 0 8px 10px -6px rgb(0 0 0 / .1);--tw-shadow-colored: 0 20px 25px -5px var(--tw-shadow-color), 0 8px 10px -6px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.hover\:shadow-blue-200\/40:hover{--tw-shadow-color: rgb(191 219 254 / .4);--tw-shadow: var(--tw-shadow-colored)}.hover\:shadow-blue-600\/40:hover{--tw-shadow-color: rgb(37 99 235 / .4);--tw-shadow: var(--tw-shadow-colored)}.hover\:shadow-red-200\/40:hover{--tw-shadow-color: rgb(254 202 202 / .4);--tw-shadow: var(--tw-shadow-colored)}.hover\:shadow-slate-200\/30:hover{--tw-shadow-color: rgb(226 232 240 / .3);--tw-shadow: var(--tw-shadow-colored)}.hover\:shadow-slate-200\/40:hover{--tw-shadow-color: rgb(226 232 240 / .4);--tw-shadow: var(--tw-shadow-colored)}.hover\:shadow-slate-200\/50:hover{--tw-shadow-color: rgb(226 232 240 / .5);--tw-shadow: var(--tw-shadow-colored)}.focus\:not-sr-only:focus{position:static;width:auto;height:auto;padding:0;margin:0;overflow:visible;clip:auto;white-space:normal}.focus\:absolute:focus{position:absolute}.focus\:z-50:focus{z-index:50}.focus\:m-4:focus{margin:1rem}.focus\:rounded-md:focus{border-radius:.375rem}.focus\:border-blue-400:focus{--tw-border-opacity: 1;border-color:rgb(96 165 250 / var(--tw-border-opacity, 1))}.focus\:border-blue-400\/70:focus{border-color:#60a5fab3}.focus\:border-blue-500:focus{--tw-border-opacity: 1;border-color:rgb(59 130 246 / var(--tw-border-opacity, 1))}.focus\:bg-blue-600:focus{--tw-bg-opacity: 1;background-color:rgb(37 99 235 / var(--tw-bg-opacity, 1))}.focus\:bg-white:focus{--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1))}.focus\:px-4:focus{padding-left:1rem;padding-right:1rem}.focus\:py-2:focus{padding-top:.5rem;padding-bottom:.5rem}.focus\:text-white:focus{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}.focus\:shadow-md:focus{--tw-shadow: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1);--tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.focus\:shadow-blue-200\/40:focus{--tw-shadow-color: rgb(191 219 254 / .4);--tw-shadow: var(--tw-shadow-colored)}.focus\:outline-none:focus{outline:2px solid transparent;outline-offset:2px}.focus\:ring-2:focus{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.focus\:ring-blue-200:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(191 219 254 / var(--tw-ring-opacity, 1))}.focus\:ring-blue-400:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(96 165 250 / var(--tw-ring-opacity, 1))}.focus\:ring-blue-400\/20:focus{--tw-ring-color: rgb(96 165 250 / .2)}.focus\:ring-blue-400\/30:focus{--tw-ring-color: rgb(96 165 250 / .3)}.focus\:ring-blue-400\/40:focus{--tw-ring-color: rgb(96 165 250 / .4)}.focus\:ring-blue-500:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(59 130 246 / var(--tw-ring-opacity, 1))}.focus\:ring-blue-500\/30:focus{--tw-ring-color: rgb(59 130 246 / .3)}.focus\:ring-blue-500\/50:focus{--tw-ring-color: rgb(59 130 246 / .5)}.focus\:ring-red-500\/30:focus{--tw-ring-color: rgb(239 68 68 / .3)}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:border-slate-200:disabled{--tw-border-opacity: 1;border-color:rgb(226 232 240 / var(--tw-border-opacity, 1))}.disabled\:bg-slate-100:disabled{--tw-bg-opacity: 1;background-color:rgb(241 245 249 / var(--tw-bg-opacity, 1))}.disabled\:text-slate-400:disabled{--tw-text-opacity: 1;color:rgb(148 163 184 / var(--tw-text-opacity, 1))}.disabled\:opacity-40:disabled{opacity:.4}.disabled\:opacity-50:disabled{opacity:.5}.disabled\:opacity-60:disabled{opacity:.6}.group:hover .group-hover\:border-slate-300\/70{border-color:#cbd5e1b3}.group:hover .group-hover\:bg-white{--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1))}.group:hover .group-hover\:shadow-md{--tw-shadow: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1);--tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.dark\:divide-slate-700\/50:is([data-theme=dark] *)>:not([hidden])~:not([hidden]){border-color:#33415580}.dark\:divide-slate-700\/60:is([data-theme=dark] *)>:not([hidden])~:not([hidden]){border-color:#33415599}.dark\:divide-slate-800\/60:is([data-theme=dark] *)>:not([hidden])~:not([hidden]){border-color:#1e293b99}.dark\:border-blue-400:is([data-theme=dark] *){--tw-border-opacity: 1;border-color:rgb(96 165 250 / var(--tw-border-opacity, 1))}.dark\:border-blue-400\/20:is([data-theme=dark] *){border-color:#60a5fa33}.dark\:border-blue-400\/30:is([data-theme=dark] *){border-color:#60a5fa4d}.dark\:border-blue-500\/30:is([data-theme=dark] *){border-color:#3b82f64d}.dark\:border-blue-500\/40:is([data-theme=dark] *){border-color:#3b82f666}.dark\:border-blue-800\/50:is([data-theme=dark] *){border-color:#1e40af80}.dark\:border-blue-900\/30:is([data-theme=dark] *){border-color:#1e3a8a4d}.dark\:border-emerald-700:is([data-theme=dark] *){--tw-border-opacity: 1;border-color:rgb(4 120 87 / var(--tw-border-opacity, 1))}.dark\:border-red-500:is([data-theme=dark] *){--tw-border-opacity: 1;border-color:rgb(239 68 68 / var(--tw-border-opacity, 1))}.dark\:border-red-500\/30:is([data-theme=dark] *){border-color:#ef44444d}.dark\:border-red-500\/40:is([data-theme=dark] *){border-color:#ef444466}.dark\:border-red-700:is([data-theme=dark] *){--tw-border-opacity: 1;border-color:rgb(185 28 28 / var(--tw-border-opacity, 1))}.dark\:border-red-800\/50:is([data-theme=dark] *){border-color:#991b1b80}.dark\:border-red-800\/70:is([data-theme=dark] *){border-color:#991b1bb3}.dark\:border-slate-600:is([data-theme=dark] *){--tw-border-opacity: 1;border-color:rgb(71 85 105 / var(--tw-border-opacity, 1))}.dark\:border-slate-600\/50:is([data-theme=dark] *){border-color:#47556980}.dark\:border-slate-600\/60:is([data-theme=dark] *){border-color:#47556999}.dark\:border-slate-700:is([data-theme=dark] *){--tw-border-opacity: 1;border-color:rgb(51 65 85 / var(--tw-border-opacity, 1))}.dark\:border-slate-700\/30:is([data-theme=dark] *){border-color:#3341554d}.dark\:border-slate-700\/40:is([data-theme=dark] *){border-color:#33415566}.dark\:border-slate-700\/50:is([data-theme=dark] *){border-color:#33415580}.dark\:border-slate-700\/60:is([data-theme=dark] *){border-color:#33415599}.dark\:border-slate-800:is([data-theme=dark] *){--tw-border-opacity: 1;border-color:rgb(30 41 59 / var(--tw-border-opacity, 1))}.dark\:border-slate-800\/40:is([data-theme=dark] *){border-color:#1e293b66}.dark\:border-slate-800\/50:is([data-theme=dark] *){border-color:#1e293b80}.dark\:border-slate-800\/60:is([data-theme=dark] *){border-color:#1e293b99}.dark\:border-t-blue-300:is([data-theme=dark] *){--tw-border-opacity: 1;border-top-color:rgb(147 197 253 / var(--tw-border-opacity, 1))}.dark\:bg-amber-500\/20:is([data-theme=dark] *){background-color:#f59e0b33}.dark\:bg-blue-500\/15:is([data-theme=dark] *){background-color:#3b82f626}.dark\:bg-blue-500\/20:is([data-theme=dark] *){background-color:#3b82f633}.dark\:bg-blue-900\/30:is([data-theme=dark] *){background-color:#1e3a8a4d}.dark\:bg-blue-900\/40:is([data-theme=dark] *){background-color:#1e3a8a66}.dark\:bg-emerald-500\/20:is([data-theme=dark] *){background-color:#10b98133}.dark\:bg-emerald-500\/30:is([data-theme=dark] *){background-color:#10b9814d}.dark\:bg-emerald-900\/40:is([data-theme=dark] *){background-color:#064e3b66}.dark\:bg-green-900\/40:is([data-theme=dark] *){background-color:#14532d66}.dark\:bg-indigo-500\/20:is([data-theme=dark] *){background-color:#6366f133}.dark\:bg-indigo-900\/40:is([data-theme=dark] *){background-color:#312e8166}.dark\:bg-purple-500\/20:is([data-theme=dark] *){background-color:#a855f733}.dark\:bg-purple-900\/40:is([data-theme=dark] *){background-color:#581c8766}.dark\:bg-red-500:is([data-theme=dark] *){--tw-bg-opacity: 1;background-color:rgb(239 68 68 / var(--tw-bg-opacity, 1))}.dark\:bg-red-500\/15:is([data-theme=dark] *){background-color:#ef444426}.dark\:bg-red-500\/20:is([data-theme=dark] *){background-color:#ef444433}.dark\:bg-red-900\/40:is([data-theme=dark] *){background-color:#7f1d1d66}.dark\:bg-slate-700\/50:is([data-theme=dark] *){background-color:#33415580}.dark\:bg-slate-800:is([data-theme=dark] *){--tw-bg-opacity: 1;background-color:rgb(30 41 59 / var(--tw-bg-opacity, 1))}.dark\:bg-slate-800\/30:is([data-theme=dark] *){background-color:#1e293b4d}.dark\:bg-slate-800\/40:is([data-theme=dark] *){background-color:#1e293b66}.dark\:bg-slate-800\/50:is([data-theme=dark] *){background-color:#1e293b80}.dark\:bg-slate-800\/60:is([data-theme=dark] *){background-color:#1e293b99}.dark\:bg-slate-800\/70:is([data-theme=dark] *){background-color:#1e293bb3}.dark\:bg-slate-800\/80:is([data-theme=dark] *){background-color:#1e293bcc}.dark\:bg-slate-800\/90:is([data-theme=dark] *){background-color:#1e293be6}.dark\:bg-slate-900:is([data-theme=dark] *){--tw-bg-opacity: 1;background-color:rgb(15 23 42 / var(--tw-bg-opacity, 1))}.dark\:bg-slate-900\/50:is([data-theme=dark] *){background-color:#0f172a80}.dark\:bg-slate-900\/60:is([data-theme=dark] *){background-color:#0f172a99}.dark\:bg-slate-900\/70:is([data-theme=dark] *){background-color:#0f172ab3}.dark\:bg-slate-900\/75:is([data-theme=dark] *){background-color:#0f172abf}.dark\:bg-slate-900\/80:is([data-theme=dark] *){background-color:#0f172acc}.dark\:bg-slate-900\/85:is([data-theme=dark] *){background-color:#0f172ad9}.dark\:bg-slate-900\/90:is([data-theme=dark] *){background-color:#0f172ae6}.dark\:bg-slate-900\/95:is([data-theme=dark] *){background-color:#0f172af2}.dark\:from-blue-400:is([data-theme=dark] *){--tw-gradient-from: #60a5fa var(--tw-gradient-from-position);--tw-gradient-to: rgb(96 165 250 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.dark\:from-blue-500:is([data-theme=dark] *){--tw-gradient-from: #3b82f6 var(--tw-gradient-from-position);--tw-gradient-to: rgb(59 130 246 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.dark\:from-blue-500\/25:is([data-theme=dark] *){--tw-gradient-from: rgb(59 130 246 / .25) var(--tw-gradient-from-position);--tw-gradient-to: rgb(59 130 246 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.dark\:from-blue-900\/40:is([data-theme=dark] *){--tw-gradient-from: rgb(30 58 138 / .4) var(--tw-gradient-from-position);--tw-gradient-to: rgb(30 58 138 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.dark\:from-red-900\/40:is([data-theme=dark] *){--tw-gradient-from: rgb(127 29 29 / .4) var(--tw-gradient-from-position);--tw-gradient-to: rgb(127 29 29 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.dark\:from-slate-100:is([data-theme=dark] *){--tw-gradient-from: #f1f5f9 var(--tw-gradient-from-position);--tw-gradient-to: rgb(241 245 249 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.dark\:from-slate-800\/60:is([data-theme=dark] *){--tw-gradient-from: rgb(30 41 59 / .6) var(--tw-gradient-from-position);--tw-gradient-to: rgb(30 41 59 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.dark\:from-slate-900\/80:is([data-theme=dark] *){--tw-gradient-from: rgb(15 23 42 / .8) var(--tw-gradient-from-position);--tw-gradient-to: rgb(15 23 42 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.dark\:from-slate-900\/85:is([data-theme=dark] *){--tw-gradient-from: rgb(15 23 42 / .85) var(--tw-gradient-from-position);--tw-gradient-to: rgb(15 23 42 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.dark\:from-slate-900\/90:is([data-theme=dark] *){--tw-gradient-from: rgb(15 23 42 / .9) var(--tw-gradient-from-position);--tw-gradient-to: rgb(15 23 42 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.dark\:from-slate-950\/90:is([data-theme=dark] *){--tw-gradient-from: rgb(2 6 23 / .9) var(--tw-gradient-from-position);--tw-gradient-to: rgb(2 6 23 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.dark\:from-slate-950\/95:is([data-theme=dark] *){--tw-gradient-from: rgb(2 6 23 / .95) var(--tw-gradient-from-position);--tw-gradient-to: rgb(2 6 23 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.dark\:via-slate-900\/60:is([data-theme=dark] *){--tw-gradient-to: rgb(15 23 42 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), rgb(15 23 42 / .6) var(--tw-gradient-via-position), var(--tw-gradient-to)}.dark\:via-slate-900\/70:is([data-theme=dark] *){--tw-gradient-to: rgb(15 23 42 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), rgb(15 23 42 / .7) var(--tw-gradient-via-position), var(--tw-gradient-to)}.dark\:via-slate-900\/80:is([data-theme=dark] *){--tw-gradient-to: rgb(15 23 42 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), rgb(15 23 42 / .8) var(--tw-gradient-via-position), var(--tw-gradient-to)}.dark\:via-slate-950:is([data-theme=dark] *){--tw-gradient-to: rgb(2 6 23 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), #020617 var(--tw-gradient-via-position), var(--tw-gradient-to)}.dark\:to-blue-600:is([data-theme=dark] *){--tw-gradient-to: #2563eb var(--tw-gradient-to-position)}.dark\:to-indigo-400:is([data-theme=dark] *){--tw-gradient-to: #818cf8 var(--tw-gradient-to-position)}.dark\:to-indigo-500:is([data-theme=dark] *){--tw-gradient-to: #6366f1 var(--tw-gradient-to-position)}.dark\:to-indigo-500\/15:is([data-theme=dark] *){--tw-gradient-to: rgb(99 102 241 / .15) var(--tw-gradient-to-position)}.dark\:to-indigo-900\/30:is([data-theme=dark] *){--tw-gradient-to: rgb(49 46 129 / .3) var(--tw-gradient-to-position)}.dark\:to-red-800\/40:is([data-theme=dark] *){--tw-gradient-to: rgb(153 27 27 / .4) var(--tw-gradient-to-position)}.dark\:to-slate-300:is([data-theme=dark] *){--tw-gradient-to: #cbd5e1 var(--tw-gradient-to-position)}.dark\:to-slate-700\/50:is([data-theme=dark] *){--tw-gradient-to: rgb(51 65 85 / .5) var(--tw-gradient-to-position)}.dark\:to-slate-800\/70:is([data-theme=dark] *){--tw-gradient-to: rgb(30 41 59 / .7) var(--tw-gradient-to-position)}.dark\:to-slate-800\/90:is([data-theme=dark] *){--tw-gradient-to: rgb(30 41 59 / .9) var(--tw-gradient-to-position)}.dark\:to-slate-900:is([data-theme=dark] *){--tw-gradient-to: #0f172a var(--tw-gradient-to-position)}.dark\:to-slate-900\/70:is([data-theme=dark] *){--tw-gradient-to: rgb(15 23 42 / .7) var(--tw-gradient-to-position)}.dark\:to-slate-900\/75:is([data-theme=dark] *){--tw-gradient-to: rgb(15 23 42 / .75) var(--tw-gradient-to-position)}.dark\:to-slate-900\/80:is([data-theme=dark] *){--tw-gradient-to: rgb(15 23 42 / .8) var(--tw-gradient-to-position)}.dark\:to-slate-900\/85:is([data-theme=dark] *){--tw-gradient-to: rgb(15 23 42 / .85) var(--tw-gradient-to-position)}.dark\:to-slate-950\/85:is([data-theme=dark] *){--tw-gradient-to: rgb(2 6 23 / .85) var(--tw-gradient-to-position)}.dark\:to-slate-950\/90:is([data-theme=dark] *){--tw-gradient-to: rgb(2 6 23 / .9) var(--tw-gradient-to-position)}.dark\:text-amber-300:is([data-theme=dark] *){--tw-text-opacity: 1;color:rgb(252 211 77 / var(--tw-text-opacity, 1))}.dark\:text-amber-400:is([data-theme=dark] *){--tw-text-opacity: 1;color:rgb(251 191 36 / var(--tw-text-opacity, 1))}.dark\:text-blue-100:is([data-theme=dark] *){--tw-text-opacity: 1;color:rgb(219 234 254 / var(--tw-text-opacity, 1))}.dark\:text-blue-200:is([data-theme=dark] *){--tw-text-opacity: 1;color:rgb(191 219 254 / var(--tw-text-opacity, 1))}.dark\:text-blue-300:is([data-theme=dark] *){--tw-text-opacity: 1;color:rgb(147 197 253 / var(--tw-text-opacity, 1))}.dark\:text-blue-300\/80:is([data-theme=dark] *){color:#93c5fdcc}.dark\:text-blue-400:is([data-theme=dark] *){--tw-text-opacity: 1;color:rgb(96 165 250 / var(--tw-text-opacity, 1))}.dark\:text-emerald-200:is([data-theme=dark] *){--tw-text-opacity: 1;color:rgb(167 243 208 / var(--tw-text-opacity, 1))}.dark\:text-emerald-300:is([data-theme=dark] *){--tw-text-opacity: 1;color:rgb(110 231 183 / var(--tw-text-opacity, 1))}.dark\:text-emerald-400:is([data-theme=dark] *){--tw-text-opacity: 1;color:rgb(52 211 153 / var(--tw-text-opacity, 1))}.dark\:text-green-300:is([data-theme=dark] *){--tw-text-opacity: 1;color:rgb(134 239 172 / var(--tw-text-opacity, 1))}.dark\:text-indigo-300:is([data-theme=dark] *){--tw-text-opacity: 1;color:rgb(165 180 252 / var(--tw-text-opacity, 1))}.dark\:text-purple-200:is([data-theme=dark] *){--tw-text-opacity: 1;color:rgb(233 213 255 / var(--tw-text-opacity, 1))}.dark\:text-purple-300:is([data-theme=dark] *){--tw-text-opacity: 1;color:rgb(216 180 254 / var(--tw-text-opacity, 1))}.dark\:text-red-100:is([data-theme=dark] *){--tw-text-opacity: 1;color:rgb(254 226 226 / var(--tw-text-opacity, 1))}.dark\:text-red-200:is([data-theme=dark] *){--tw-text-opacity: 1;color:rgb(254 202 202 / var(--tw-text-opacity, 1))}.dark\:text-red-300:is([data-theme=dark] *){--tw-text-opacity: 1;color:rgb(252 165 165 / var(--tw-text-opacity, 1))}.dark\:text-red-400:is([data-theme=dark] *){--tw-text-opacity: 1;color:rgb(248 113 113 / var(--tw-text-opacity, 1))}.dark\:text-slate-100:is([data-theme=dark] *){--tw-text-opacity: 1;color:rgb(241 245 249 / var(--tw-text-opacity, 1))}.dark\:text-slate-200:is([data-theme=dark] *){--tw-text-opacity: 1;color:rgb(226 232 240 / var(--tw-text-opacity, 1))}.dark\:text-slate-300:is([data-theme=dark] *){--tw-text-opacity: 1;color:rgb(203 213 225 / var(--tw-text-opacity, 1))}.dark\:text-slate-400:is([data-theme=dark] *){--tw-text-opacity: 1;color:rgb(148 163 184 / var(--tw-text-opacity, 1))}.dark\:text-slate-50:is([data-theme=dark] *){--tw-text-opacity: 1;color:rgb(248 250 252 / var(--tw-text-opacity, 1))}.dark\:text-slate-500:is([data-theme=dark] *){--tw-text-opacity: 1;color:rgb(100 116 139 / var(--tw-text-opacity, 1))}.dark\:text-slate-600:is([data-theme=dark] *){--tw-text-opacity: 1;color:rgb(71 85 105 / var(--tw-text-opacity, 1))}.dark\:text-white:is([data-theme=dark] *){--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}.dark\:shadow-2xl:is([data-theme=dark] *){--tw-shadow: 0 25px 50px -12px rgb(0 0 0 / .25);--tw-shadow-colored: 0 25px 50px -12px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.dark\:shadow-lg:is([data-theme=dark] *){--tw-shadow: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.dark\:shadow-xl:is([data-theme=dark] *){--tw-shadow: 0 20px 25px -5px rgb(0 0 0 / .1), 0 8px 10px -6px rgb(0 0 0 / .1);--tw-shadow-colored: 0 20px 25px -5px var(--tw-shadow-color), 0 8px 10px -6px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.dark\:shadow-black\/40:is([data-theme=dark] *){--tw-shadow-color: rgb(0 0 0 / .4);--tw-shadow: var(--tw-shadow-colored)}.dark\:shadow-blue-500\/20:is([data-theme=dark] *){--tw-shadow-color: rgb(59 130 246 / .2);--tw-shadow: var(--tw-shadow-colored)}.dark\:shadow-blue-500\/30:is([data-theme=dark] *){--tw-shadow-color: rgb(59 130 246 / .3);--tw-shadow: var(--tw-shadow-colored)}.dark\:shadow-blue-900\/20:is([data-theme=dark] *){--tw-shadow-color: rgb(30 58 138 / .2);--tw-shadow: var(--tw-shadow-colored)}.dark\:shadow-blue-900\/30:is([data-theme=dark] *){--tw-shadow-color: rgb(30 58 138 / .3);--tw-shadow: var(--tw-shadow-colored)}.dark\:shadow-blue-900\/40:is([data-theme=dark] *){--tw-shadow-color: rgb(30 58 138 / .4);--tw-shadow: var(--tw-shadow-colored)}.dark\:shadow-indigo-900\/40:is([data-theme=dark] *){--tw-shadow-color: rgb(49 46 129 / .4);--tw-shadow: var(--tw-shadow-colored)}.dark\:shadow-red-900\/30:is([data-theme=dark] *){--tw-shadow-color: rgb(127 29 29 / .3);--tw-shadow: var(--tw-shadow-colored)}.dark\:shadow-slate-900\/20:is([data-theme=dark] *){--tw-shadow-color: rgb(15 23 42 / .2);--tw-shadow: var(--tw-shadow-colored)}.dark\:shadow-slate-900\/30:is([data-theme=dark] *){--tw-shadow-color: rgb(15 23 42 / .3);--tw-shadow: var(--tw-shadow-colored)}.dark\:shadow-slate-900\/40:is([data-theme=dark] *){--tw-shadow-color: rgb(15 23 42 / .4);--tw-shadow: var(--tw-shadow-colored)}.dark\:shadow-slate-900\/50:is([data-theme=dark] *){--tw-shadow-color: rgb(15 23 42 / .5);--tw-shadow: var(--tw-shadow-colored)}.dark\:shadow-slate-900\/60:is([data-theme=dark] *){--tw-shadow-color: rgb(15 23 42 / .6);--tw-shadow: var(--tw-shadow-colored)}.dark\:ring-amber-400\/30:is([data-theme=dark] *){--tw-ring-color: rgb(251 191 36 / .3)}.dark\:ring-blue-400\/20:is([data-theme=dark] *){--tw-ring-color: rgb(96 165 250 / .2)}.dark\:ring-blue-400\/30:is([data-theme=dark] *){--tw-ring-color: rgb(96 165 250 / .3)}.dark\:ring-blue-700\/50:is([data-theme=dark] *){--tw-ring-color: rgb(29 78 216 / .5)}.dark\:ring-emerald-400\/30:is([data-theme=dark] *){--tw-ring-color: rgb(52 211 153 / .3)}.dark\:ring-emerald-700\/50:is([data-theme=dark] *){--tw-ring-color: rgb(4 120 87 / .5)}.dark\:ring-red-400\/30:is([data-theme=dark] *){--tw-ring-color: rgb(248 113 113 / .3)}.dark\:ring-red-700\/50:is([data-theme=dark] *){--tw-ring-color: rgb(185 28 28 / .5)}.dark\:ring-slate-700\/40:is([data-theme=dark] *){--tw-ring-color: rgb(51 65 85 / .4)}.dark\:ring-slate-700\/50:is([data-theme=dark] *){--tw-ring-color: rgb(51 65 85 / .5)}.dark\:ring-slate-700\/60:is([data-theme=dark] *){--tw-ring-color: rgb(51 65 85 / .6)}.dark\:hover\:border-blue-500\/40:hover:is([data-theme=dark] *){border-color:#3b82f666}.dark\:hover\:border-blue-500\/60:hover:is([data-theme=dark] *){border-color:#3b82f699}.dark\:hover\:border-slate-500\/60:hover:is([data-theme=dark] *){border-color:#64748b99}.dark\:hover\:border-slate-500\/70:hover:is([data-theme=dark] *){border-color:#64748bb3}.dark\:hover\:border-slate-600\/70:hover:is([data-theme=dark] *){border-color:#475569b3}.dark\:hover\:bg-slate-700\/60:hover:is([data-theme=dark] *){background-color:#33415599}.dark\:hover\:bg-slate-700\/70:hover:is([data-theme=dark] *){background-color:#334155b3}.dark\:hover\:bg-slate-800:hover:is([data-theme=dark] *){--tw-bg-opacity: 1;background-color:rgb(30 41 59 / var(--tw-bg-opacity, 1))}.dark\:hover\:bg-slate-800\/40:hover:is([data-theme=dark] *){background-color:#1e293b66}.dark\:hover\:bg-slate-800\/60:hover:is([data-theme=dark] *){background-color:#1e293b99}.dark\:hover\:bg-slate-800\/80:hover:is([data-theme=dark] *){background-color:#1e293bcc}.dark\:hover\:bg-slate-900:hover:is([data-theme=dark] *){--tw-bg-opacity: 1;background-color:rgb(15 23 42 / var(--tw-bg-opacity, 1))}.dark\:hover\:bg-slate-900\/80:hover:is([data-theme=dark] *){background-color:#0f172acc}.dark\:hover\:bg-slate-900\/90:hover:is([data-theme=dark] *){background-color:#0f172ae6}.dark\:hover\:bg-slate-900\/95:hover:is([data-theme=dark] *){background-color:#0f172af2}.dark\:hover\:from-slate-900:hover:is([data-theme=dark] *){--tw-gradient-from: #0f172a var(--tw-gradient-from-position);--tw-gradient-to: rgb(15 23 42 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.dark\:hover\:via-slate-900\/95:hover:is([data-theme=dark] *){--tw-gradient-to: rgb(15 23 42 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), rgb(15 23 42 / .95) var(--tw-gradient-via-position), var(--tw-gradient-to)}.dark\:hover\:to-slate-900\/90:hover:is([data-theme=dark] *){--tw-gradient-to: rgb(15 23 42 / .9) var(--tw-gradient-to-position)}.dark\:hover\:text-slate-100:hover:is([data-theme=dark] *){--tw-text-opacity: 1;color:rgb(241 245 249 / var(--tw-text-opacity, 1))}.dark\:hover\:shadow-lg:hover:is([data-theme=dark] *){--tw-shadow: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.dark\:hover\:shadow-slate-900\/30:hover:is([data-theme=dark] *){--tw-shadow-color: rgb(15 23 42 / .3);--tw-shadow: var(--tw-shadow-colored)}.dark\:focus\:border-blue-400:focus:is([data-theme=dark] *){--tw-border-opacity: 1;border-color:rgb(96 165 250 / var(--tw-border-opacity, 1))}.dark\:focus\:border-blue-400\/70:focus:is([data-theme=dark] *){border-color:#60a5fab3}.dark\:focus\:ring-blue-400\/20:focus:is([data-theme=dark] *){--tw-ring-color: rgb(96 165 250 / .2)}.dark\:focus\:ring-blue-400\/40:focus:is([data-theme=dark] *){--tw-ring-color: rgb(96 165 250 / .4)}.dark\:disabled\:bg-slate-800\/60:disabled:is([data-theme=dark] *){background-color:#1e293b99}.dark\:disabled\:bg-slate-900\/40:disabled:is([data-theme=dark] *){background-color:#0f172a66}@media (min-width: 640px){.sm\:col-span-2{grid-column:span 2 / span 2}.sm\:inline{display:inline}.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.sm\:px-6{padding-left:1.5rem;padding-right:1.5rem}.sm\:pb-16{padding-bottom:4rem}}@media (min-width: 768px){.md\:col-span-2{grid-column:span 2 / span 2}.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.md\:grid-cols-\[minmax\(0\,1fr\)_minmax\(0\,1fr\)_auto\]{grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto}.md\:flex-row{flex-direction:row}.md\:items-center{align-items:center}.md\:justify-between{justify-content:space-between}}@media (min-width: 1024px){.lg\:flex{display:flex}.lg\:hidden{display:none}.lg\:w-80{width:20rem}.lg\:min-w-\[20rem\]{min-width:20rem}.lg\:max-w-\[20rem\]{max-width:20rem}.lg\:flex-shrink-0{flex-shrink:0}.lg\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.lg\:grid-cols-\[minmax\(0\,1fr\)_minmax\(0\,0\.85fr\)\]{grid-template-columns:minmax(0,1fr) minmax(0,.85fr)}.lg\:space-y-10>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(2.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(2.5rem * var(--tw-space-y-reverse))}.lg\:pb-16{padding-bottom:4rem}}@media (min-width: 1280px){.xl\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.xl\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.xl\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}}
@@ -1 +0,0 @@
1
- var ft=e=>{throw TypeError(e)};var Y=(e,t,s)=>t.has(e)||ft("Cannot "+s);var i=(e,t,s)=>(Y(e,t,"read from private field"),s?s.call(e):t.get(e)),b=(e,t,s)=>t.has(e)?ft("Cannot add the same private member more than once"):t instanceof WeakSet?t.add(e):t.set(e,s),u=(e,t,s,r)=>(Y(e,t,"write to private field"),r?r.call(e,s):t.set(e,s),s),d=(e,t,s)=>(Y(e,t,"access private method"),s);import{G as It,H as pt,I as S,J as Z,M as H,N as $,O as tt,P as bt,Q as Ot,T as K,U as Tt,V as Qt,W as yt,X as St,r as I,Y as wt,Z as Mt,_ as _t,q as xt,$ as Ut}from"./index-DtM-AT3x.js";var g,a,j,y,w,U,E,O,V,F,P,M,_,T,D,n,B,et,st,it,rt,at,nt,ht,Ct,vt,Ft=(vt=class extends It{constructor(t,s){super();b(this,n);b(this,g);b(this,a);b(this,j);b(this,y);b(this,w);b(this,U);b(this,E);b(this,O);b(this,V);b(this,F);b(this,P);b(this,M);b(this,_);b(this,T);b(this,D,new Set);this.options=s,u(this,g,t),u(this,O,null),u(this,E,pt()),this.bindMethods(),this.setOptions(s)}bindMethods(){this.refetch=this.refetch.bind(this)}onSubscribe(){this.listeners.size===1&&(i(this,a).addObserver(this),gt(i(this,a),this.options)?d(this,n,B).call(this):this.updateResult(),d(this,n,rt).call(this))}onUnsubscribe(){this.hasListeners()||this.destroy()}shouldFetchOnReconnect(){return ot(i(this,a),this.options,this.options.refetchOnReconnect)}shouldFetchOnWindowFocus(){return ot(i(this,a),this.options,this.options.refetchOnWindowFocus)}destroy(){this.listeners=new Set,d(this,n,at).call(this),d(this,n,nt).call(this),i(this,a).removeObserver(this)}setOptions(t){const s=this.options,r=i(this,a);if(this.options=i(this,g).defaultQueryOptions(t),this.options.enabled!==void 0&&typeof this.options.enabled!="boolean"&&typeof this.options.enabled!="function"&&typeof S(this.options.enabled,i(this,a))!="boolean")throw new Error("Expected enabled to be a boolean or a callback that returns a boolean");d(this,n,ht).call(this),i(this,a).setOptions(this.options),s._defaulted&&!Z(this.options,s)&&i(this,g).getQueryCache().notify({type:"observerOptionsUpdated",query:i(this,a),observer:this});const h=this.hasListeners();h&&mt(i(this,a),r,this.options,s)&&d(this,n,B).call(this),this.updateResult(),h&&(i(this,a)!==r||S(this.options.enabled,i(this,a))!==S(s.enabled,i(this,a))||H(this.options.staleTime,i(this,a))!==H(s.staleTime,i(this,a)))&&d(this,n,et).call(this);const o=d(this,n,st).call(this);h&&(i(this,a)!==r||S(this.options.enabled,i(this,a))!==S(s.enabled,i(this,a))||o!==i(this,T))&&d(this,n,it).call(this,o)}getOptimisticResult(t){const s=i(this,g).getQueryCache().build(i(this,g),t),r=this.createResult(s,t);return Dt(this,r)&&(u(this,y,r),u(this,U,this.options),u(this,w,i(this,a).state)),r}getCurrentResult(){return i(this,y)}trackResult(t,s){return new Proxy(t,{get:(r,h)=>(this.trackProp(h),s==null||s(h),h==="promise"&&!this.options.experimental_prefetchInRender&&i(this,E).status==="pending"&&i(this,E).reject(new Error("experimental_prefetchInRender feature flag is not enabled")),Reflect.get(r,h))})}trackProp(t){i(this,D).add(t)}getCurrentQuery(){return i(this,a)}refetch({...t}={}){return this.fetch({...t})}fetchOptimistic(t){const s=i(this,g).defaultQueryOptions(t),r=i(this,g).getQueryCache().build(i(this,g),s);return r.fetch().then(()=>this.createResult(r,s))}fetch(t){return d(this,n,B).call(this,{...t,cancelRefetch:t.cancelRefetch??!0}).then(()=>(this.updateResult(),i(this,y)))}createResult(t,s){var dt;const r=i(this,a),h=this.options,o=i(this,y),c=i(this,w),Q=i(this,U),v=t!==r?t.state:i(this,j),{state:L}=t;let l={...L},N=!1,f;if(s._optimisticResults){const R=this.hasListeners(),z=!R&&gt(t,s),x=R&&mt(t,r,s,h);(z||x)&&(l={...l,...Qt(L.data,t.options)}),s._optimisticResults==="isRestoring"&&(l.fetchStatus="idle")}let{error:A,errorUpdatedAt:k,status:m}=l;f=l.data;let W=!1;if(s.placeholderData!==void 0&&f===void 0&&m==="pending"){let R;o!=null&&o.isPlaceholderData&&s.placeholderData===(Q==null?void 0:Q.placeholderData)?(R=o.data,W=!0):R=typeof s.placeholderData=="function"?s.placeholderData((dt=i(this,P))==null?void 0:dt.state.data,i(this,P)):s.placeholderData,R!==void 0&&(m="success",f=yt(o==null?void 0:o.data,R,s),N=!0)}if(s.select&&f!==void 0&&!W)if(o&&f===(c==null?void 0:c.data)&&s.select===i(this,V))f=i(this,F);else try{u(this,V,s.select),f=s.select(f),f=yt(o==null?void 0:o.data,f,s),u(this,F,f),u(this,O,null)}catch(R){u(this,O,R)}i(this,O)&&(A=i(this,O),f=i(this,F),k=Date.now(),m="error");const G=l.fetchStatus==="fetching",J=m==="pending",X=m==="error",ut=J&&G,lt=f!==void 0,C={status:m,fetchStatus:l.fetchStatus,isPending:J,isSuccess:m==="success",isError:X,isInitialLoading:ut,isLoading:ut,data:f,dataUpdatedAt:l.dataUpdatedAt,error:A,errorUpdatedAt:k,failureCount:l.fetchFailureCount,failureReason:l.fetchFailureReason,errorUpdateCount:l.errorUpdateCount,isFetched:l.dataUpdateCount>0||l.errorUpdateCount>0,isFetchedAfterMount:l.dataUpdateCount>v.dataUpdateCount||l.errorUpdateCount>v.errorUpdateCount,isFetching:G,isRefetching:G&&!J,isLoadingError:X&&!lt,isPaused:l.fetchStatus==="paused",isPlaceholderData:N,isRefetchError:X&&lt,isStale:ct(t,s),refetch:this.refetch,promise:i(this,E),isEnabled:S(s.enabled,t)!==!1};if(this.options.experimental_prefetchInRender){const R=q=>{C.status==="error"?q.reject(C.error):C.data!==void 0&&q.resolve(C.data)},z=()=>{const q=u(this,E,C.promise=pt());R(q)},x=i(this,E);switch(x.status){case"pending":t.queryHash===r.queryHash&&R(x);break;case"fulfilled":(C.status==="error"||C.data!==x.value)&&z();break;case"rejected":(C.status!=="error"||C.error!==x.reason)&&z();break}}return C}updateResult(){const t=i(this,y),s=this.createResult(i(this,a),this.options);if(u(this,w,i(this,a).state),u(this,U,this.options),i(this,w).data!==void 0&&u(this,P,i(this,a)),Z(s,t))return;u(this,y,s);const r=()=>{if(!t)return!0;const{notifyOnChangeProps:h}=this.options,o=typeof h=="function"?h():h;if(o==="all"||!o&&!i(this,D).size)return!0;const c=new Set(o??i(this,D));return this.options.throwOnError&&c.add("error"),Object.keys(i(this,y)).some(Q=>{const p=Q;return i(this,y)[p]!==t[p]&&c.has(p)})};d(this,n,Ct).call(this,{listeners:r()})}onQueryUpdate(){this.updateResult(),this.hasListeners()&&d(this,n,rt).call(this)}},g=new WeakMap,a=new WeakMap,j=new WeakMap,y=new WeakMap,w=new WeakMap,U=new WeakMap,E=new WeakMap,O=new WeakMap,V=new WeakMap,F=new WeakMap,P=new WeakMap,M=new WeakMap,_=new WeakMap,T=new WeakMap,D=new WeakMap,n=new WeakSet,B=function(t){d(this,n,ht).call(this);let s=i(this,a).fetch(this.options,t);return t!=null&&t.throwOnError||(s=s.catch($)),s},et=function(){d(this,n,at).call(this);const t=H(this.options.staleTime,i(this,a));if(tt||i(this,y).isStale||!bt(t))return;const r=Ot(i(this,y).dataUpdatedAt,t)+1;u(this,M,K.setTimeout(()=>{i(this,y).isStale||this.updateResult()},r))},st=function(){return(typeof this.options.refetchInterval=="function"?this.options.refetchInterval(i(this,a)):this.options.refetchInterval)??!1},it=function(t){d(this,n,nt).call(this),u(this,T,t),!(tt||S(this.options.enabled,i(this,a))===!1||!bt(i(this,T))||i(this,T)===0)&&u(this,_,K.setInterval(()=>{(this.options.refetchIntervalInBackground||Tt.isFocused())&&d(this,n,B).call(this)},i(this,T)))},rt=function(){d(this,n,et).call(this),d(this,n,it).call(this,d(this,n,st).call(this))},at=function(){i(this,M)&&(K.clearTimeout(i(this,M)),u(this,M,void 0))},nt=function(){i(this,_)&&(K.clearInterval(i(this,_)),u(this,_,void 0))},ht=function(){const t=i(this,g).getQueryCache().build(i(this,g),this.options);if(t===i(this,a))return;const s=i(this,a);u(this,a,t),u(this,j,t.state),this.hasListeners()&&(s==null||s.removeObserver(this),t.addObserver(this))},Ct=function(t){St.batch(()=>{t.listeners&&this.listeners.forEach(s=>{s(i(this,y))}),i(this,g).getQueryCache().notify({query:i(this,a),type:"observerResultsUpdated"})})},vt);function Pt(e,t){return S(t.enabled,e)!==!1&&e.state.data===void 0&&!(e.state.status==="error"&&t.retryOnMount===!1)}function gt(e,t){return Pt(e,t)||e.state.data!==void 0&&ot(e,t,t.refetchOnMount)}function ot(e,t,s){if(S(t.enabled,e)!==!1&&H(t.staleTime,e)!=="static"){const r=typeof s=="function"?s(e):s;return r==="always"||r!==!1&&ct(e,t)}return!1}function mt(e,t,s,r){return(e!==t||S(r.enabled,e)===!1)&&(!s.suspense||e.state.status!=="error")&&ct(e,s)}function ct(e,t){return S(t.enabled,e)!==!1&&e.isStaleByTime(H(t.staleTime,e))}function Dt(e,t){return!Z(e.getCurrentResult(),t)}var Et=I.createContext(!1),Lt=()=>I.useContext(Et);Et.Provider;function Nt(){let e=!1;return{clearReset:()=>{e=!1},reset:()=>{e=!0},isReset:()=>e}}var At=I.createContext(Nt()),kt=()=>I.useContext(At),Bt=(e,t)=>{(e.suspense||e.throwOnError||e.experimental_prefetchInRender)&&(t.isReset()||(e.retryOnMount=!1))},Ht=e=>{I.useEffect(()=>{e.clearReset()},[e])},jt=({result:e,errorResetBoundary:t,throwOnError:s,query:r,suspense:h})=>e.isError&&!t.isReset()&&!e.isFetching&&r&&(h&&e.data===void 0||wt(s,[e.error,r])),Vt=e=>{if(e.suspense){const s=h=>h==="static"?h:Math.max(h??1e3,1e3),r=e.staleTime;e.staleTime=typeof r=="function"?(...h)=>s(r(...h)):s(r),typeof e.gcTime=="number"&&(e.gcTime=Math.max(e.gcTime,1e3))}},Wt=(e,t)=>e.isLoading&&e.isFetching&&!t,zt=(e,t)=>(e==null?void 0:e.suspense)&&t.isPending,Rt=(e,t,s)=>t.fetchOptimistic(e).catch(()=>{s.clearReset()});function qt(e,t,s){var l,N,f,A,k;const r=Lt(),h=kt(),o=Mt(),c=o.defaultQueryOptions(e);(N=(l=o.getDefaultOptions().queries)==null?void 0:l._experimental_beforeQuery)==null||N.call(l,c),c._optimisticResults=r?"isRestoring":"optimistic",Vt(c),Bt(c,h),Ht(h);const Q=!o.getQueryCache().get(c.queryHash),[p]=I.useState(()=>new t(o,c)),v=p.getOptimisticResult(c),L=!r&&e.subscribed!==!1;if(I.useSyncExternalStore(I.useCallback(m=>{const W=L?p.subscribe(St.batchCalls(m)):$;return p.updateResult(),W},[p,L]),()=>p.getCurrentResult(),()=>p.getCurrentResult()),I.useEffect(()=>{p.setOptions(c)},[c,p]),zt(c,v))throw Rt(c,p,h);if(jt({result:v,errorResetBoundary:h,throwOnError:c.throwOnError,query:o.getQueryCache().get(c.queryHash),suspense:c.suspense}))throw v.error;if((A=(f=o.getDefaultOptions().queries)==null?void 0:f._experimental_afterQuery)==null||A.call(f,c,v),c.experimental_prefetchInRender&&!tt&&Wt(v,r)){const m=Q?Rt(c,p,h):(k=o.getQueryCache().get(c.queryHash))==null?void 0:k.promise;m==null||m.catch($).finally(()=>{p.updateResult()})}return c.notifyOnChangeProps?v:p.trackResult(v)}function Kt(e,t){return qt(e,Ft)}function Yt(e,t,s){return Kt({queryKey:e,placeholderData:_t,...s,queryFn:async()=>{try{return(await xt.request(t)).data}catch(r){throw Ut(r)}}})}export{Yt as u};