0sec-cli 0.18.0 → 0.21.4
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.
- package/{0sec.js → 0.js} +84 -76
- package/LICENSE +1 -1
- package/README.md +74 -43
- package/chunks/adapt-loop-IGBRQAXO.js +18 -0
- package/chunks/{adgraph-JLGA6RYI.js → adgraph-AUDQTBYA.js} +5 -5
- package/chunks/agent/skills/frameworks/entra-id.yaml +2 -2
- package/chunks/agent/skills/techniques/assumption-mining.yaml +2 -2
- package/chunks/agent/skills/techniques/cve-poc-adaptation.yaml +2 -2
- package/chunks/agent/skills/techniques/entra-attack-paths.yaml +1 -1
- package/chunks/agent/skills/techniques/kernel-weaponization.yaml +1 -1
- package/chunks/agent/skills/techniques/llm-prompt-injection.yaml +2 -2
- package/chunks/agent/skills/techniques/npm-ecosystem.yaml +1 -1
- package/chunks/agent/skills/techniques/poc-verification.yaml +1 -1
- package/chunks/agent/skills/techniques/seedless-depth-review.yaml +20 -38
- package/chunks/{artifact-scraper-HQ7HLP6V.js → artifact-scraper-LNQJUORS.js} +6 -6
- package/chunks/{assumption-mining-5SNIVVDN.js → assumption-mining-4MJTP6H5.js} +24 -26
- package/chunks/{chunk-P6WKNFWX.js → chunk-2OQOQ2FZ.js} +8 -8
- package/chunks/{chunk-5G3ZXFBW.js → chunk-2WNCI664.js} +3 -3
- package/chunks/{chunk-AHTBZC3E.js → chunk-2WSXFFJZ.js} +4 -4
- package/chunks/{chunk-DW5UWPFY.js → chunk-4VGLO2YS.js} +6 -5
- package/chunks/{chunk-3KPWWJCI.js → chunk-5T6D5BVY.js} +88 -88
- package/chunks/{chunk-OEFNRYI2.js → chunk-6GHSR47F.js} +3 -6
- package/chunks/chunk-6YNKRUMC.js +4474 -0
- package/chunks/{chunk-BZNEY2ZS.js → chunk-ANDKY54G.js} +22390 -19895
- package/chunks/{chunk-53G27VPS.js → chunk-AZ7L3HFD.js} +7 -2
- package/chunks/{chunk-UR4ELX2Y.js → chunk-BACXRTQ4.js} +633 -316
- package/chunks/{chunk-UCYRA73C.js → chunk-CAJJRUTV.js} +4 -4
- package/chunks/{chunk-57ZENEX2.js → chunk-CGHCEN7W.js} +3 -3
- package/chunks/{chunk-AD7WXDH6.js → chunk-CL5KAUM6.js} +16 -16
- package/chunks/{chunk-ADOLI6DT.js → chunk-CXKDWFNO.js} +6 -6
- package/chunks/{chunk-RWONANDA.js → chunk-DQTNI3KY.js} +5 -5
- package/chunks/{chunk-BFR2CDV5.js → chunk-E2UOY5PJ.js} +288 -100
- package/chunks/{chunk-ATATQACO.js → chunk-ER3SUMYJ.js} +40 -18
- package/chunks/{chunk-5JI7L7KV.js → chunk-FAH6V4QM.js} +30515 -32242
- package/chunks/{chunk-6LKRLK2R.js → chunk-FHC2B7LN.js} +3 -3
- package/chunks/{chunk-XM5NLHYU.js → chunk-FWAYJ2IV.js} +16 -16
- package/chunks/{chunk-WVTBZEQO.js → chunk-G34QP2XW.js} +8 -8
- package/chunks/{chunk-MYVT64FN.js → chunk-GHWODZMR.js} +2 -2
- package/chunks/{chunk-F3WBKITT.js → chunk-GIQKESMN.js} +10 -10
- package/chunks/{chunk-2RMLOJVB.js → chunk-GVD6SJGH.js} +2 -2
- package/chunks/{chunk-WXQ6BJ6A.js → chunk-HBKCGJAV.js} +7 -7
- package/chunks/{chunk-SF4KZ4O3.js → chunk-HLFS6WV2.js} +2 -2
- package/chunks/chunk-HPQZHOIU.js +67 -0
- package/chunks/{chunk-TSK2AG6J.js → chunk-IMGWPNQM.js} +231 -1308
- package/chunks/{chunk-3MOLBTLS.js → chunk-K2PWUPUI.js} +2 -2
- package/chunks/{chunk-N7BOUYEV.js → chunk-NDJU5ZZ7.js} +14 -14
- package/chunks/{chunk-BVAZO4WA.js → chunk-NOPBXZUV.js} +3 -3
- package/chunks/{chunk-2JCCA2JL.js → chunk-O6SD4A36.js} +3 -3
- package/chunks/{chunk-SAFFWQW4.js → chunk-P6YG6TEZ.js} +6 -6
- package/chunks/{chunk-6L26OBWI.js → chunk-PC6RCKQV.js} +198 -11
- package/chunks/{chunk-LP3HHYQU.js → chunk-PD2BBBKT.js} +2 -2
- package/chunks/{chunk-BKZFDZ23.js → chunk-QCUFBVIZ.js} +3 -3
- package/chunks/{chunk-KLTNTE2Z.js → chunk-QZVG3BG4.js} +14 -14
- package/chunks/{chunk-ASUR522M.js → chunk-RF5QGKLR.js} +9 -9
- package/chunks/{chunk-YYRBQVFE.js → chunk-SBMB4OL3.js} +9 -9
- package/chunks/{chunk-IOL7D5YV.js → chunk-SQCBHFWN.js} +3 -3
- package/chunks/{chunk-BFRB6HB2.js → chunk-TF46UWFU.js} +3 -3
- package/chunks/chunk-TH2LW437.js +7829 -0
- package/chunks/chunk-TRH2PJSN.js +547 -0
- package/chunks/{chunk-RJWOYEOG.js → chunk-UEX7PFSE.js} +5 -5
- package/chunks/{chunk-VQG4FT5D.js → chunk-UFHN6RIU.js} +2 -2
- package/chunks/{chunk-WU6AFRAZ.js → chunk-V36HVTUL.js} +12 -12
- package/chunks/{chunk-IR537GON.js → chunk-VCSFCHAJ.js} +2 -2
- package/chunks/{chunk-YLMN3N25.js → chunk-VIT5ALXF.js} +3 -3
- package/chunks/{chunk-U5FLXGHT.js → chunk-VOAXLO4A.js} +10 -10
- package/chunks/{chunk-WEBMRWEG.js → chunk-W4JOXE4N.js} +83 -75
- package/chunks/{chunk-C2WXWFBB.js → chunk-WF5W75WY.js} +25 -25
- package/chunks/{chunk-SVJEDVYK.js → chunk-WPQLBN4S.js} +5 -5
- package/chunks/{chunk-72CISA2D.js → chunk-WZISK5VC.js} +37 -35
- package/chunks/{chunk-CMKXP5RR.js → chunk-Y5H6E24H.js} +3 -3
- package/chunks/{chunk-BATRQBOR.js → chunk-YA4PUM4H.js} +41 -41
- package/chunks/{chunk-JQHOLLTD.js → chunk-YHWWF4QY.js} +9 -9
- package/chunks/{chunk-GMT2AZKM.js → chunk-YPOA3W4O.js} +28 -28
- package/chunks/{chunk-7DQEV5QI.js → chunk-Z3IKZX3X.js} +4 -4
- package/chunks/codex-models-TYYV4JNN.js +15 -0
- package/chunks/{commands-TBC2F5CE.js → commands-WF5RG4I2.js} +3834 -931
- package/chunks/corpus-v1.json +2 -2
- package/chunks/data/appsec-archetypes.json +2 -2
- package/chunks/data/chromium-archetypes.json +1 -1
- package/chunks/data/freebsd-archetypes.json +1 -1
- package/chunks/data/kernel-archetypes.json +2 -2
- package/chunks/db-U3WQZVAO.js +16 -0
- package/chunks/{disclose-EKTWSCGW.js → disclose-67GZCDBO.js} +5 -5
- package/chunks/{dist-FMGSR3DW.js → dist-ACC3DZUZ.js} +11 -5
- package/chunks/{dist-4MAW5X6L.js → dist-EVTN3UTT.js} +6 -6
- package/chunks/{dist-4YICS2J2.js → dist-F6X62TQK.js} +286 -327
- package/chunks/dist-KEULE5IQ.js +21914 -0
- package/chunks/dist-XZB53PS5.js +53 -0
- package/chunks/eval-runner-SA6OUGHZ.js +26 -0
- package/chunks/example-manifest.json +2 -2
- package/chunks/{exploit-agent-45YQOHPJ.js → exploit-agent-36Q7XQFP.js} +4 -4
- package/chunks/{exploit-autoclimb-UZGEMGYT.js → exploit-autoclimb-J4OTSTZ6.js} +6 -6
- package/chunks/{exploit-climb-SG23KB2G.js → exploit-climb-PYEJDIC4.js} +12 -12
- package/chunks/fix-J2KBRJDV.js +12 -0
- package/chunks/{github-issues-MJ6OYOOU.js → github-issues-IGTTWM7V.js} +7 -7
- package/chunks/harness-GDUMKGSE.js +22 -0
- package/chunks/http-conformance-U5F6GKYG.js +11 -0
- package/chunks/http-sender-I5XFFY35.js +10 -0
- package/chunks/hunt-scan-UDJSCISU.js +36 -0
- package/chunks/{identity-6ZAIIWOR.js → identity-JTIVJSV7.js} +5 -5
- package/chunks/{kernel-primitive-7U6CWHXD.js → kernel-primitive-F2IXUFAX.js} +6 -6
- package/chunks/{kernel-vm-runner-3JAU4O6J.js → kernel-vm-runner-276LHIOV.js} +6 -6
- package/chunks/memsafety-scan-NHUOGTEX.js +16 -0
- package/chunks/{native-loop-RJCJPOUS.js → native-loop-3BSYVDUI.js} +17 -18
- package/chunks/{npm-detectors-KB5Y5ZFX.js → npm-detectors-VIYJXKFQ.js} +6 -6
- package/chunks/npm-dynamic-discovery-5J7FT3XM.js +13 -0
- package/chunks/orchestrate-DHBFRTSI.js +59 -0
- package/chunks/{pre-recon-cve-66EB6G4M.js → pre-recon-cve-X2K2P5YQ.js} +4 -4
- package/chunks/prepare-KYHGFWCJ.js +13 -0
- package/chunks/process-PNMC36JI.js +15 -0
- package/chunks/{replay-runner-45G3VU7X.js → replay-runner-LK2XFIVG.js} +7 -7
- package/chunks/{run-D56MPDKY.js → run-CBGE6DRQ.js} +2201 -1694
- package/chunks/{runtime-G7YWIO3B.js → runtime-PXO5G6UV.js} +11 -11
- package/chunks/runtime-XFWJTBUO.js +12 -0
- package/chunks/{scan-stream-FHI2FYZE.js → scan-stream-BMOCPKQX.js} +7 -7
- package/chunks/{scope-BI7BF4ZY.js → scope-NJHIDDTN.js} +4 -4
- package/chunks/{session-store-GZ4A4KYT.js → session-store-46WBZM22.js} +6 -6
- package/chunks/source-files-REHOM44I.js +12 -0
- package/chunks/{specdrift-WCLH6TTQ.js → specdrift-AFS54WEJ.js} +5 -5
- package/chunks/token-KRWP5JYA.js +72 -0
- package/chunks/token-util-DWTL33S3.js +8 -0
- package/chunks/variant-candidates-UH2WC2HA.js +13 -0
- package/chunks/{web-recon-prepass-JJGPEOLE.js → web-recon-prepass-SFXU44SS.js} +9 -9
- package/dashboard/assets/desktop-BT7RkC4q.js +32 -0
- package/dashboard/assets/desktop-OaBI0E0e.css +1 -0
- package/dashboard/assets/{findings-page-CACW9nw2.js → findings-page-B4rwF6fZ.js} +2 -2
- package/dashboard/assets/{format-PoISqsES.js → format-LNQSSpn6.js} +1 -1
- package/dashboard/assets/live-page-DoNwpPAO.js +1 -0
- package/dashboard/assets/{meta-tile-CcskIV_o.js → meta-tile-BMtBC-Qq.js} +1 -1
- package/dashboard/assets/operations-CMFVrXEe.css +2 -0
- package/dashboard/assets/operations-app-ER0gg7GN.js +2 -0
- package/dashboard/assets/{operations-D8nUP5_m.js → operations-e2CGYKB1.js} +2 -2
- package/dashboard/assets/{overview-page-DTGS8dPo.js → overview-page-CmeWH17A.js} +1 -1
- package/dashboard/assets/{page-header-MFVvEtZW.js → page-header-CIJyycfz.js} +1 -1
- package/dashboard/assets/scans-page-CuhzWhHx.js +1 -0
- package/dashboard/assets/{table-BYS-nIVA.js → table-BgsSBdke.js} +1 -1
- package/dashboard/assets/{tabs-DivxbhQy.js → tabs-vn6v7Bk6.js} +1 -1
- package/dashboard/desktop.html +3 -3
- package/dashboard/index.html +3 -3
- package/package.json +11 -11
- package/chunks/adapt-loop-SMH6V4PD.js +0 -18
- package/chunks/appsec-catalog-CBWHGTEL.js +0 -24
- package/chunks/chunk-242TMK6G.js +0 -110
- package/chunks/chunk-H2FFLZNK.js +0 -3
- package/chunks/chunk-QI233I24.js +0 -333
- package/chunks/chunk-RRMJC3ZE.js +0 -105
- package/chunks/chunk-Z5FA2XOX.js +0 -2798
- package/chunks/cost-ledger-NU63MYZM.js +0 -13
- package/chunks/db-KFWOAUUB.js +0 -16
- package/chunks/eval-runner-7ZF472KV.js +0 -27
- package/chunks/fix-IG7LYXH3.js +0 -12
- package/chunks/harness-7ODOLOWU.js +0 -22
- package/chunks/http-conformance-DU66MZIU.js +0 -11
- package/chunks/http-sender-GWH2IYEA.js +0 -10
- package/chunks/hunt-scan-MMKUOETU.js +0 -38
- package/chunks/memsafety-scan-J7SECV5W.js +0 -16
- package/chunks/npm-dynamic-discovery-AHROOZDB.js +0 -13
- package/chunks/orchestrate-OC2VZN2X.js +0 -62
- package/chunks/pipeline-BZK5BLJR.js +0 -14
- package/chunks/prepare-MYY743TK.js +0 -13
- package/chunks/process-LQRCS5OY.js +0 -13
- package/chunks/runtime-J7PLXZNM.js +0 -12
- package/chunks/source-files-PWRQR6LY.js +0 -12
- package/chunks/variant-candidates-YERCYMPD.js +0 -13
- package/dashboard/assets/0sec-icon-66SreztZ.gif +0 -0
- package/dashboard/assets/desktop-CXTQonNm.js +0 -32
- package/dashboard/assets/desktop-NOekk4QS.css +0 -1
- package/dashboard/assets/live-page-DrgQqQK5.js +0 -1
- package/dashboard/assets/operations-BKE8T-vY.css +0 -2
- package/dashboard/assets/operations-app-CQQhG54n.js +0 -2
- package/dashboard/assets/scans-page-ChVtq8Us.js +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
import{a as e,n as t,t as n}from"./jsx-runtime-C7oxC63R.js";import{_ as r,a as i,c as a,d as o,f as s,g as c,h as l,i as u,l as d,m as f,o as p,p as m,r as h,t as g,u as _,v}from"./operations-D8nUP5_m.js";var y=class extends v{constructor(e,t){super(),this.options=t,this.#e=e,this.#s=null,this.#o=i(),this.bindMethods(),this.setOptions(t)}#e;#t=void 0;#n=void 0;#r=void 0;#i;#a;#o;#s;#c;#l;#u;#d;#f;#p;#m=new Set;bindMethods(){this.refetch=this.refetch.bind(this)}onSubscribe(){this.listeners.size===1&&(this.#t.addObserver(this),x(this.#t,this.options)?this.#h():this.updateResult(),this.#y())}onUnsubscribe(){this.hasListeners()||this.destroy()}shouldFetchOnReconnect(){return S(this.#t,this.options,this.options.refetchOnReconnect)}shouldFetchOnWindowFocus(){return S(this.#t,this.options,this.options.refetchOnWindowFocus)}destroy(){this.listeners=new Set,this.#b(),this.#x(),this.#t.removeObserver(this)}setOptions(e){let t=this.options,n=this.#t;if(this.options=this.#e.defaultQueryOptions(e),this.options.enabled!==void 0&&typeof this.options.enabled!=`boolean`&&typeof this.options.enabled!=`function`&&typeof o(this.options.enabled,this.#t)!=`boolean`)throw Error(`Expected enabled to be a boolean or a callback that returns a boolean`);this.#S(),this.#t.setOptions(this.options),t._defaulted&&!m(this.options,t)&&this.#e.getQueryCache().notify({type:`observerOptionsUpdated`,query:this.#t,observer:this});let r=this.hasListeners();r&&C(this.#t,n,this.options,t)&&this.#h(),this.updateResult(),r&&(this.#t!==n||o(this.options.enabled,this.#t)!==o(t.enabled,this.#t)||s(this.options.staleTime,this.#t)!==s(t.staleTime,this.#t))&&this.#g();let i=this.#_();r&&(this.#t!==n||o(this.options.enabled,this.#t)!==o(t.enabled,this.#t)||i!==this.#p)&&this.#v(i)}getOptimisticResult(e){let t=this.#e.getQueryCache().build(this.#e,e),n=this.createResult(t,e);return T(this,n)&&(this.#r=n,this.#a=this.options,this.#i=this.#t.state),n}getCurrentResult(){return this.#r}trackResult(e,t){return new Proxy(e,{get:(e,n)=>(this.trackProp(n),t?.(n),n===`promise`&&(this.trackProp(`data`),!this.options.experimental_prefetchInRender&&this.#o.status===`pending`&&this.#o.reject(Error(`experimental_prefetchInRender feature flag is not enabled`))),Reflect.get(e,n))})}trackProp(e){this.#m.add(e)}getCurrentQuery(){return this.#t}refetch({...e}={}){return this.fetch({...e})}fetchOptimistic(e){let t=this.#e.defaultQueryOptions(e),n=this.#e.getQueryCache().build(this.#e,t);return n.fetch().then(()=>this.createResult(n,t))}fetch(e){return this.#h({...e,cancelRefetch:e.cancelRefetch??!0}).then(()=>(this.updateResult(),this.#r))}#h(e){this.#S();let t=this.#t.fetch(this.options,e);return e?.throwOnError||(t=t.catch(d)),t}#g(){this.#b();let e=s(this.options.staleTime,this.#t);if(p.isServer()||this.#r.isStale||!a(e))return;let t=l(this.#r.dataUpdatedAt,e)+1;this.#d=c.setTimeout(()=>{this.#r.isStale||this.updateResult()},t)}#_(){return(typeof this.options.refetchInterval==`function`?this.options.refetchInterval(this.#t):this.options.refetchInterval)??!1}#v(e){this.#x(),this.#p=e,!(p.isServer()||o(this.options.enabled,this.#t)===!1||!a(this.#p)||this.#p===0)&&(this.#f=c.setInterval(()=>{(this.options.refetchIntervalInBackground||r.isFocused())&&this.#h()},this.#p))}#y(){this.#g(),this.#v(this.#_())}#b(){this.#d!==void 0&&(c.clearTimeout(this.#d),this.#d=void 0)}#x(){this.#f!==void 0&&(c.clearInterval(this.#f),this.#f=void 0)}createResult(e,t){let n=this.#t,r=this.options,a=this.#r,s=this.#i,c=this.#a,l=e===n?this.#n:e.state,{state:u}=e,d={...u},f=!1,p;if(t._optimisticResults){let i=this.hasListeners(),a=!i&&x(e,t),o=i&&C(e,n,t,r);(a||o)&&(d={...d,...h(u.data,e.options)}),t._optimisticResults===`isRestoring`&&(d.fetchStatus=`idle`)}let{error:m,errorUpdatedAt:g,status:v}=d;p=d.data;let y=!1;if(t.placeholderData!==void 0&&p===void 0&&v===`pending`){let e;a?.isPlaceholderData&&t.placeholderData===c?.placeholderData?(e=a.data,y=!0):e=typeof t.placeholderData==`function`?t.placeholderData(this.#u?.state.data,this.#u):t.placeholderData,e!==void 0&&(v=`success`,p=_(a?.data,e,t),f=!0)}if(t.select&&p!==void 0&&!y){if(a&&p===s?.data&&t.select===this.#c)p=this.#l;else try{this.#c=t.select,p=t.select(p),p=_(a?.data,p,t),this.#l=p,this.#s=null}catch(e){this.#s=e}}this.#s&&(m=this.#s,p=this.#l,g=Date.now(),v=`error`);let b=d.fetchStatus===`fetching`,S=v===`pending`,T=v===`error`,E=S&&b,D=p!==void 0,O={status:v,fetchStatus:d.fetchStatus,isPending:S,isSuccess:v===`success`,isError:T,isInitialLoading:E,isLoading:E,data:p,dataUpdatedAt:d.dataUpdatedAt,error:m,errorUpdatedAt:g,failureCount:d.fetchFailureCount,failureReason:d.fetchFailureReason,errorUpdateCount:d.errorUpdateCount,isFetched:e.isFetched(),isFetchedAfterMount:d.dataUpdateCount>l.dataUpdateCount||d.errorUpdateCount>l.errorUpdateCount,isFetching:b,isRefetching:b&&!S,isLoadingError:T&&!D,isPaused:d.fetchStatus===`paused`,isPlaceholderData:f,isRefetchError:T&&D,isStale:w(e,t),refetch:this.refetch,promise:this.#o,isEnabled:o(t.enabled,e)!==!1};if(this.options.experimental_prefetchInRender){let t=O.data!==void 0,r=O.status===`error`&&!t,a=e=>{r?e.reject(O.error):t&&e.resolve(O.data)},o=()=>{let e=this.#o=O.promise=i();a(e)},s=this.#o;switch(s.status){case`pending`:e.queryHash===n.queryHash&&a(s);break;case`fulfilled`:(r||O.data!==s.value)&&o();break;case`rejected`:(!r||O.error!==s.reason)&&o()}}return O}updateResult(){let e=this.#r,t=this.createResult(this.#t,this.options);this.#i=this.#t.state,this.#a=this.options,this.#i.data!==void 0&&(this.#u=this.#t),!m(t,e)&&(this.#r=t,this.#C({listeners:(()=>{if(!e)return!0;let{notifyOnChangeProps:t}=this.options,n=typeof t==`function`?t():t;if(n===`all`||!n&&!this.#m.size)return!0;let r=new Set(n??this.#m);return this.options.throwOnError&&r.add(`error`),Object.keys(this.#r).some(t=>{let n=t;return this.#r[n]!==e[n]&&r.has(n)})})()}))}#S(){let e=this.#e.getQueryCache().build(this.#e,this.options);if(e===this.#t)return;let t=this.#t;this.#t=e,this.#n=e.state,this.hasListeners()&&(t?.removeObserver(this),e.addObserver(this))}onQueryUpdate(){this.updateResult(),this.hasListeners()&&this.#y()}#C(e){u.batch(()=>{e.listeners&&this.listeners.forEach(e=>{e(this.#r)}),this.#e.getQueryCache().notify({query:this.#t,type:`observerResultsUpdated`})})}};function b(e,t){return o(t.enabled,e)!==!1&&e.state.data===void 0&&(e.state.status!==`error`||o(t.retryOnMount,e)!==!1)}function x(e,t){return b(e,t)||e.state.data!==void 0&&S(e,t,t.refetchOnMount)}function S(e,t,n){if(o(t.enabled,e)!==!1&&s(t.staleTime,e)!==`static`){let r=typeof n==`function`?n(e):n;return r===`always`||r!==!1&&w(e,t)}return!1}function C(e,t,n,r){return(e!==t||o(r.enabled,e)===!1)&&(!n.suspense||e.state.status!==`error`)&&w(e,n)}function w(e,t){return o(t.enabled,e)!==!1&&e.isStaleByTime(s(t.staleTime,e))}function T(e,t){return!m(e.getCurrentResult(),t)}n();var E=e(t(),1),D=E.createContext(!1),O=()=>E.useContext(D);D.Provider;function k(){let e=!1;return{clearReset:()=>{e=!1},reset:()=>{e=!0},isReset:()=>e}}var A=E.createContext(k()),ee=()=>E.useContext(A),j=(e,t,n)=>{let r=n?.state.error&&typeof e.throwOnError==`function`?f(e.throwOnError,[n.state.error,n]):e.throwOnError;(e.suspense||e.experimental_prefetchInRender||r)&&(t.isReset()||(e.retryOnMount=!1))},M=e=>{E.useEffect(()=>{e.clearReset()},[e])},N=({result:e,errorResetBoundary:t,throwOnError:n,query:r,suspense:i})=>e.isError&&!t.isReset()&&!e.isFetching&&r&&(i&&e.data===void 0||f(n,[e.error,r])),P=e=>{if(e.suspense){let t=1e3,n=e=>e===`static`?e:Math.max(e??t,t),r=e.staleTime;e.staleTime=typeof r==`function`?(...e)=>n(r(...e)):n(r),typeof e.gcTime==`number`&&(e.gcTime=Math.max(e.gcTime,t))}},F=(e,t)=>e.isLoading&&e.isFetching&&!t,I=(e,t)=>e?.suspense&&t.isPending,L=(e,t,n)=>t.fetchOptimistic(e).catch(()=>{n.clearReset()});function R(e,t,n){let r=O(),i=ee(),a=g(n),o=a.defaultQueryOptions(e);a.getDefaultOptions().queries?._experimental_beforeQuery?.(o);let s=a.getQueryCache().get(o.queryHash),c=e.subscribed!==!1;o._optimisticResults=r?`isRestoring`:c?`optimistic`:void 0,P(o),j(o,i,s),M(i);let l=!a.getQueryCache().get(o.queryHash),[f]=E.useState(()=>new t(a,o)),m=f.getOptimisticResult(o),h=!r&&c;if(E.useSyncExternalStore(E.useCallback(e=>{let t=h?f.subscribe(u.batchCalls(e)):d;return f.updateResult(),t},[f,h]),()=>f.getCurrentResult(),()=>f.getCurrentResult()),E.useEffect(()=>{f.setOptions(o)},[o,f]),I(o,m))throw L(o,f,i);if(N({result:m,errorResetBoundary:i,throwOnError:o.throwOnError,query:s,suspense:o.suspense}))throw m.error;return a.getDefaultOptions().queries?._experimental_afterQuery?.(o,m),o.experimental_prefetchInRender&&!p.isServer()&&F(m,r)&&(l?L(o,f,i):s?.promise)?.catch(d).finally(()=>{f.updateResult()}),o.notifyOnChangeProps?m:f.trackResult(m)}function z(e,t){return R(e,y,t)}function B(){return document.querySelector(`meta[name="0sec-control-token"]`)?.getAttribute(`content`)??null}async function V(e,t){let n={"Content-Type":`application/json`,...t?.headers??{}},r=B();r&&(n[`X-0sec-Control-Token`]=r);let i=await fetch(e,{...t,headers:n});if(!i.ok){let e=`${i.status} ${i.statusText}`;try{let t=await i.json();t.error&&(e=t.error)}catch{}throw Error(e)}let a=i.headers.get(`content-type`)??``;if(!a.includes(`json`))throw Error(`Dashboard API returned ${a||`non-JSON content`} for ${e}. Serve the UI through \`0sec dashboard\`.`);return i.json()}function H(){return V(`/api/dashboard`)}async function U(){return(await V(`/api/scans`)).scans}function W(e){return V(`/api/scans/${encodeURIComponent(e)}/events`)}function G(e=20){return V(`/api/events/recent?limit=${encodeURIComponent(String(e))}`)}function K(e){return V(`/api/scans/${encodeURIComponent(e)}/findings`)}function q(e){return V(`/api/finding-family/${encodeURIComponent(e)}`)}function J(e,t,n){return V(`/api/finding-family/${encodeURIComponent(e)}/triage`,{method:`POST`,body:JSON.stringify({triageStatus:t,triageNote:n})})}function Y(e,t,n){return V(`/api/finding-family/${encodeURIComponent(e)}/workflow`,{method:`POST`,body:JSON.stringify({workflowStatus:t,workflowAssignee:n})})}function X(e=3e4){return V(`/api/control/recover-stale-workers`,{method:`POST`,body:JSON.stringify({staleAfterMs:e})})}function Z(){return V(`/api/control/prune-stopped-workers`,{method:`POST`,body:JSON.stringify({})})}function Q(e){return V(`/api/control/reset-database`,{method:`POST`,body:JSON.stringify({seed:e})})}function te(e){return V(`/api/control/start-daemon`,{method:`POST`,body:JSON.stringify(e??{})})}function ne(){return V(`/api/control/stop-daemon`,{method:`POST`,body:JSON.stringify({})})}function re(e){return V(`/api/control/launch-run`,{method:`POST`,body:JSON.stringify(e)})}var $=E.createContext(void 0);function ie(e){let t=E.useContext($);return e||t||`ltr`}function ae(e){return new Date(e).toLocaleString()}function oe(e){if(!e||e<=0)return`n/a`;if(e<1e3)return`${e}ms`;let t=Math.round(e/1e3),n=Math.floor(t/60),r=t%60;return n===0?`${t}s`:`${n}m ${r}s`}function se(e){return!e||Object.keys(e).length===0?`No payload`:typeof e.summary==`string`&&e.summary.trim()?e.summary.trim():Array.isArray(e.tools)&&e.tools.length>0?`${typeof e.turn==`number`?`turn ${e.turn} · `:``}tools: ${e.tools.join(`, `)}`:typeof e.excerpt==`string`&&e.excerpt.trim()?`${typeof e.turn==`number`?`turn ${e.turn} · `:``}no tool calls · ${e.excerpt.trim().slice(0,120)}`:Object.entries(e).slice(0,3).map(([e,t])=>`${e}: ${ce(t)}`).join(` · `)}function ce(e){return typeof e==`string`?e:typeof e==`number`||typeof e==`boolean`?String(e):Array.isArray(e)?`${e.length} items`:e&&typeof e==`object`?`${Object.keys(e).length} fields`:`n/a`}export{J as _,H as a,W as c,re as d,Z as f,ne as g,te as h,ie as i,K as l,Q as m,ae as n,q as o,X as p,se as r,G as s,oe as t,U as u,Y as v,z as y};
|
|
1
|
+
import{a as e,n as t,t as n}from"./jsx-runtime-C7oxC63R.js";import{_ as r,a as i,c as a,d as o,f as s,g as c,h as l,i as u,l as d,m as f,o as p,p as m,r as h,t as g,u as _,v}from"./operations-e2CGYKB1.js";var y=class extends v{constructor(e,t){super(),this.options=t,this.#e=e,this.#s=null,this.#o=i(),this.bindMethods(),this.setOptions(t)}#e;#t=void 0;#n=void 0;#r=void 0;#i;#a;#o;#s;#c;#l;#u;#d;#f;#p;#m=new Set;bindMethods(){this.refetch=this.refetch.bind(this)}onSubscribe(){this.listeners.size===1&&(this.#t.addObserver(this),x(this.#t,this.options)?this.#h():this.updateResult(),this.#y())}onUnsubscribe(){this.hasListeners()||this.destroy()}shouldFetchOnReconnect(){return S(this.#t,this.options,this.options.refetchOnReconnect)}shouldFetchOnWindowFocus(){return S(this.#t,this.options,this.options.refetchOnWindowFocus)}destroy(){this.listeners=new Set,this.#b(),this.#x(),this.#t.removeObserver(this)}setOptions(e){let t=this.options,n=this.#t;if(this.options=this.#e.defaultQueryOptions(e),this.options.enabled!==void 0&&typeof this.options.enabled!=`boolean`&&typeof this.options.enabled!=`function`&&typeof o(this.options.enabled,this.#t)!=`boolean`)throw Error(`Expected enabled to be a boolean or a callback that returns a boolean`);this.#S(),this.#t.setOptions(this.options),t._defaulted&&!m(this.options,t)&&this.#e.getQueryCache().notify({type:`observerOptionsUpdated`,query:this.#t,observer:this});let r=this.hasListeners();r&&C(this.#t,n,this.options,t)&&this.#h(),this.updateResult(),r&&(this.#t!==n||o(this.options.enabled,this.#t)!==o(t.enabled,this.#t)||s(this.options.staleTime,this.#t)!==s(t.staleTime,this.#t))&&this.#g();let i=this.#_();r&&(this.#t!==n||o(this.options.enabled,this.#t)!==o(t.enabled,this.#t)||i!==this.#p)&&this.#v(i)}getOptimisticResult(e){let t=this.#e.getQueryCache().build(this.#e,e),n=this.createResult(t,e);return T(this,n)&&(this.#r=n,this.#a=this.options,this.#i=this.#t.state),n}getCurrentResult(){return this.#r}trackResult(e,t){return new Proxy(e,{get:(e,n)=>(this.trackProp(n),t?.(n),n===`promise`&&(this.trackProp(`data`),!this.options.experimental_prefetchInRender&&this.#o.status===`pending`&&this.#o.reject(Error(`experimental_prefetchInRender feature flag is not enabled`))),Reflect.get(e,n))})}trackProp(e){this.#m.add(e)}getCurrentQuery(){return this.#t}refetch({...e}={}){return this.fetch({...e})}fetchOptimistic(e){let t=this.#e.defaultQueryOptions(e),n=this.#e.getQueryCache().build(this.#e,t);return n.fetch().then(()=>this.createResult(n,t))}fetch(e){return this.#h({...e,cancelRefetch:e.cancelRefetch??!0}).then(()=>(this.updateResult(),this.#r))}#h(e){this.#S();let t=this.#t.fetch(this.options,e);return e?.throwOnError||(t=t.catch(d)),t}#g(){this.#b();let e=s(this.options.staleTime,this.#t);if(p.isServer()||this.#r.isStale||!a(e))return;let t=l(this.#r.dataUpdatedAt,e)+1;this.#d=c.setTimeout(()=>{this.#r.isStale||this.updateResult()},t)}#_(){return(typeof this.options.refetchInterval==`function`?this.options.refetchInterval(this.#t):this.options.refetchInterval)??!1}#v(e){this.#x(),this.#p=e,!(p.isServer()||o(this.options.enabled,this.#t)===!1||!a(this.#p)||this.#p===0)&&(this.#f=c.setInterval(()=>{(this.options.refetchIntervalInBackground||r.isFocused())&&this.#h()},this.#p))}#y(){this.#g(),this.#v(this.#_())}#b(){this.#d!==void 0&&(c.clearTimeout(this.#d),this.#d=void 0)}#x(){this.#f!==void 0&&(c.clearInterval(this.#f),this.#f=void 0)}createResult(e,t){let n=this.#t,r=this.options,a=this.#r,s=this.#i,c=this.#a,l=e===n?this.#n:e.state,{state:u}=e,d={...u},f=!1,p;if(t._optimisticResults){let i=this.hasListeners(),a=!i&&x(e,t),o=i&&C(e,n,t,r);(a||o)&&(d={...d,...h(u.data,e.options)}),t._optimisticResults===`isRestoring`&&(d.fetchStatus=`idle`)}let{error:m,errorUpdatedAt:g,status:v}=d;p=d.data;let y=!1;if(t.placeholderData!==void 0&&p===void 0&&v===`pending`){let e;a?.isPlaceholderData&&t.placeholderData===c?.placeholderData?(e=a.data,y=!0):e=typeof t.placeholderData==`function`?t.placeholderData(this.#u?.state.data,this.#u):t.placeholderData,e!==void 0&&(v=`success`,p=_(a?.data,e,t),f=!0)}if(t.select&&p!==void 0&&!y){if(a&&p===s?.data&&t.select===this.#c)p=this.#l;else try{this.#c=t.select,p=t.select(p),p=_(a?.data,p,t),this.#l=p,this.#s=null}catch(e){this.#s=e}}this.#s&&(m=this.#s,p=this.#l,g=Date.now(),v=`error`);let b=d.fetchStatus===`fetching`,S=v===`pending`,T=v===`error`,E=S&&b,D=p!==void 0,O={status:v,fetchStatus:d.fetchStatus,isPending:S,isSuccess:v===`success`,isError:T,isInitialLoading:E,isLoading:E,data:p,dataUpdatedAt:d.dataUpdatedAt,error:m,errorUpdatedAt:g,failureCount:d.fetchFailureCount,failureReason:d.fetchFailureReason,errorUpdateCount:d.errorUpdateCount,isFetched:e.isFetched(),isFetchedAfterMount:d.dataUpdateCount>l.dataUpdateCount||d.errorUpdateCount>l.errorUpdateCount,isFetching:b,isRefetching:b&&!S,isLoadingError:T&&!D,isPaused:d.fetchStatus===`paused`,isPlaceholderData:f,isRefetchError:T&&D,isStale:w(e,t),refetch:this.refetch,promise:this.#o,isEnabled:o(t.enabled,e)!==!1};if(this.options.experimental_prefetchInRender){let t=O.data!==void 0,r=O.status===`error`&&!t,a=e=>{r?e.reject(O.error):t&&e.resolve(O.data)},o=()=>{let e=this.#o=O.promise=i();a(e)},s=this.#o;switch(s.status){case`pending`:e.queryHash===n.queryHash&&a(s);break;case`fulfilled`:(r||O.data!==s.value)&&o();break;case`rejected`:(!r||O.error!==s.reason)&&o()}}return O}updateResult(){let e=this.#r,t=this.createResult(this.#t,this.options);this.#i=this.#t.state,this.#a=this.options,this.#i.data!==void 0&&(this.#u=this.#t),!m(t,e)&&(this.#r=t,this.#C({listeners:(()=>{if(!e)return!0;let{notifyOnChangeProps:t}=this.options,n=typeof t==`function`?t():t;if(n===`all`||!n&&!this.#m.size)return!0;let r=new Set(n??this.#m);return this.options.throwOnError&&r.add(`error`),Object.keys(this.#r).some(t=>{let n=t;return this.#r[n]!==e[n]&&r.has(n)})})()}))}#S(){let e=this.#e.getQueryCache().build(this.#e,this.options);if(e===this.#t)return;let t=this.#t;this.#t=e,this.#n=e.state,this.hasListeners()&&(t?.removeObserver(this),e.addObserver(this))}onQueryUpdate(){this.updateResult(),this.hasListeners()&&this.#y()}#C(e){u.batch(()=>{e.listeners&&this.listeners.forEach(e=>{e(this.#r)}),this.#e.getQueryCache().notify({query:this.#t,type:`observerResultsUpdated`})})}};function b(e,t){return o(t.enabled,e)!==!1&&e.state.data===void 0&&(e.state.status!==`error`||o(t.retryOnMount,e)!==!1)}function x(e,t){return b(e,t)||e.state.data!==void 0&&S(e,t,t.refetchOnMount)}function S(e,t,n){if(o(t.enabled,e)!==!1&&s(t.staleTime,e)!==`static`){let r=typeof n==`function`?n(e):n;return r===`always`||r!==!1&&w(e,t)}return!1}function C(e,t,n,r){return(e!==t||o(r.enabled,e)===!1)&&(!n.suspense||e.state.status!==`error`)&&w(e,n)}function w(e,t){return o(t.enabled,e)!==!1&&e.isStaleByTime(s(t.staleTime,e))}function T(e,t){return!m(e.getCurrentResult(),t)}n();var E=e(t(),1),D=E.createContext(!1),O=()=>E.useContext(D);D.Provider;function k(){let e=!1;return{clearReset:()=>{e=!1},reset:()=>{e=!0},isReset:()=>e}}var A=E.createContext(k()),ee=()=>E.useContext(A),j=(e,t,n)=>{let r=n?.state.error&&typeof e.throwOnError==`function`?f(e.throwOnError,[n.state.error,n]):e.throwOnError;(e.suspense||e.experimental_prefetchInRender||r)&&(t.isReset()||(e.retryOnMount=!1))},M=e=>{E.useEffect(()=>{e.clearReset()},[e])},N=({result:e,errorResetBoundary:t,throwOnError:n,query:r,suspense:i})=>e.isError&&!t.isReset()&&!e.isFetching&&r&&(i&&e.data===void 0||f(n,[e.error,r])),P=e=>{if(e.suspense){let t=1e3,n=e=>e===`static`?e:Math.max(e??t,t),r=e.staleTime;e.staleTime=typeof r==`function`?(...e)=>n(r(...e)):n(r),typeof e.gcTime==`number`&&(e.gcTime=Math.max(e.gcTime,t))}},F=(e,t)=>e.isLoading&&e.isFetching&&!t,I=(e,t)=>e?.suspense&&t.isPending,L=(e,t,n)=>t.fetchOptimistic(e).catch(()=>{n.clearReset()});function R(e,t,n){let r=O(),i=ee(),a=g(n),o=a.defaultQueryOptions(e);a.getDefaultOptions().queries?._experimental_beforeQuery?.(o);let s=a.getQueryCache().get(o.queryHash),c=e.subscribed!==!1;o._optimisticResults=r?`isRestoring`:c?`optimistic`:void 0,P(o),j(o,i,s),M(i);let l=!a.getQueryCache().get(o.queryHash),[f]=E.useState(()=>new t(a,o)),m=f.getOptimisticResult(o),h=!r&&c;if(E.useSyncExternalStore(E.useCallback(e=>{let t=h?f.subscribe(u.batchCalls(e)):d;return f.updateResult(),t},[f,h]),()=>f.getCurrentResult(),()=>f.getCurrentResult()),E.useEffect(()=>{f.setOptions(o)},[o,f]),I(o,m))throw L(o,f,i);if(N({result:m,errorResetBoundary:i,throwOnError:o.throwOnError,query:s,suspense:o.suspense}))throw m.error;return a.getDefaultOptions().queries?._experimental_afterQuery?.(o,m),o.experimental_prefetchInRender&&!p.isServer()&&F(m,r)&&(l?L(o,f,i):s?.promise)?.catch(d).finally(()=>{f.updateResult()}),o.notifyOnChangeProps?m:f.trackResult(m)}function z(e,t){return R(e,y,t)}function B(){return document.querySelector(`meta[name="0-control-token"]`)?.getAttribute(`content`)??null}async function V(e,t){let n={"Content-Type":`application/json`,...t?.headers??{}},r=B();r&&(n[`X-0-Control-Token`]=r);let i=await fetch(e,{...t,headers:n});if(!i.ok){let e=`${i.status} ${i.statusText}`;try{let t=await i.json();t.error&&(e=t.error)}catch{}throw Error(e)}let a=i.headers.get(`content-type`)??``;if(!a.includes(`json`))throw Error(`Dashboard API returned ${a||`non-JSON content`} for ${e}. Serve the UI through \`0 dashboard\`.`);return i.json()}function H(){return V(`/api/dashboard`)}async function U(){return(await V(`/api/scans`)).scans}function W(e){return V(`/api/scans/${encodeURIComponent(e)}/events`)}function G(e=20){return V(`/api/events/recent?limit=${encodeURIComponent(String(e))}`)}function K(e){return V(`/api/scans/${encodeURIComponent(e)}/findings`)}function q(e){return V(`/api/finding-family/${encodeURIComponent(e)}`)}function J(e,t,n){return V(`/api/finding-family/${encodeURIComponent(e)}/triage`,{method:`POST`,body:JSON.stringify({triageStatus:t,triageNote:n})})}function Y(e,t,n){return V(`/api/finding-family/${encodeURIComponent(e)}/workflow`,{method:`POST`,body:JSON.stringify({workflowStatus:t,workflowAssignee:n})})}function X(e=3e4){return V(`/api/control/recover-stale-workers`,{method:`POST`,body:JSON.stringify({staleAfterMs:e})})}function Z(){return V(`/api/control/prune-stopped-workers`,{method:`POST`,body:JSON.stringify({})})}function Q(e){return V(`/api/control/reset-database`,{method:`POST`,body:JSON.stringify({seed:e})})}function te(e){return V(`/api/control/start-daemon`,{method:`POST`,body:JSON.stringify(e??{})})}function ne(){return V(`/api/control/stop-daemon`,{method:`POST`,body:JSON.stringify({})})}function re(e){return V(`/api/control/launch-run`,{method:`POST`,body:JSON.stringify(e)})}var $=E.createContext(void 0);function ie(e){let t=E.useContext($);return e||t||`ltr`}function ae(e){return new Date(e).toLocaleString()}function oe(e){if(!e||e<=0)return`n/a`;if(e<1e3)return`${e}ms`;let t=Math.round(e/1e3),n=Math.floor(t/60),r=t%60;return n===0?`${t}s`:`${n}m ${r}s`}function se(e){return!e||Object.keys(e).length===0?`No payload`:typeof e.summary==`string`&&e.summary.trim()?e.summary.trim():Array.isArray(e.tools)&&e.tools.length>0?`${typeof e.turn==`number`?`turn ${e.turn} · `:``}tools: ${e.tools.join(`, `)}`:typeof e.excerpt==`string`&&e.excerpt.trim()?`${typeof e.turn==`number`?`turn ${e.turn} · `:``}no tool calls · ${e.excerpt.trim().slice(0,120)}`:Object.entries(e).slice(0,3).map(([e,t])=>`${e}: ${ce(t)}`).join(` · `)}function ce(e){return typeof e==`string`?e:typeof e==`number`||typeof e==`boolean`?String(e):Array.isArray(e)?`${e.length} items`:e&&typeof e==`object`?`${Object.keys(e).length} fields`:`n/a`}export{J as _,H as a,W as c,re as d,Z as f,ne as g,te as h,ie as i,K as l,Q as m,ae as n,q as o,X as p,se as r,G as s,oe as t,U as u,Y as v,z as y};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{a as e,n as t,t as n}from"./jsx-runtime-C7oxC63R.js";import{E as r,y as i}from"./operations-e2CGYKB1.js";import{_ as a}from"./dist-CmX-h7a4.js";import{t as o}from"./bot-yILPnRgD.js";import{t as s}from"./chevron-down-BeDJ-Vka.js";import{t as c}from"./page-header-CIJyycfz.js";import{A as l,C as u,O as d,S as f,T as p,_ as m,c as h,g,h as _,m as v,p as y,s as b,v as x,y as S}from"./operations-app-ER0gg7GN.js";var C=a(`arrow-right`,[[`path`,{d:`M5 12h14`,key:`1ays0h`}],[`path`,{d:`m12 5 7 7-7 7`,key:`xquz4c`}]]),ee=a(`beaker`,[[`path`,{d:`M4.5 3h15`,key:`c7n0jr`}],[`path`,{d:`M6 3v16a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2V3`,key:`m1uhx7`}],[`path`,{d:`M6 14h12`,key:`4cwo0f`}]]),w=a(`chevron-up`,[[`path`,{d:`m18 15-6-6-6 6`,key:`153udz`}]]),T=a(`target`,[[`circle`,{cx:`12`,cy:`12`,r:`10`,key:`1mglay`}],[`circle`,{cx:`12`,cy:`12`,r:`6`,key:`1vlfrh`}],[`circle`,{cx:`12`,cy:`12`,r:`2`,key:`1c9p78`}]]),E=a(`terminal`,[[`path`,{d:`M12 19h8`,key:`baeox8`}],[`path`,{d:`m4 17 6-6-6-6`,key:`1yngyt`}]]),D=a(`zap`,[[`path`,{d:`M4 14a1 1 0 0 1-.78-1.63l9.9-10.2a.5.5 0 0 1 .86.46l-1.92 6.02A1 1 0 0 0 13 10h7a1 1 0 0 1 .78 1.63l-9.9 10.2a.5.5 0 0 1-.86-.46l1.92-6.02A1 1 0 0 0 11 14z`,key:`1xq2db`}]]),O=e(t(),1),k=/([A-Za-z0-9._/\\\-]+(?:\.[A-Za-z0-9]+))[:\s]+L?(\d+)/;function A(e){if(!e)return null;let t=k.exec(e);if(!t)return null;let n=t[1],r=Number.parseInt(t[2],10);return!Number.isFinite(r)||r<=0||!n.includes(`/`)&&!/\.(ts|tsx|js|jsx|py|go|rs|java|rb|php|c|cc|cpp|h|hpp|sh|sql)$/i.test(n)?null:{file:n,line:r}}function te(e){let t;try{t=JSON.parse(e)}catch{return null}if(!t||typeof t!=`object`)return null;let n=t;if(n.schema===`0.events/v1`&&typeof n.kind==`string`)return j(n);if(n.protocol===`0.presentation/v1`&&n.kind===`event`&&typeof n.eventType==`string`&&n.payload&&typeof n.payload==`object`&&!Array.isArray(n.payload)){let e={...n.payload};if(typeof e.ts!=`number`&&typeof n.at==`string`){let t=Date.parse(n.at);Number.isFinite(t)&&(e.ts=t/1e3)}return M(n.eventType,e)}return typeof n.type==`string`&&n.payload&&typeof n.payload==`object`?M(n.type,n.payload):null}function j(e){let t=e.kind,n=typeof e.ts==`number`?e.ts:Date.now()/1e3;if(t===`tool_use`){let t=typeof e.args_preview==`string`?e.args_preview:void 0,r=A(t);return{schema:`0.events/v1`,kind:`tool_use`,ts:n,tool:typeof e.tool==`string`?e.tool:`?`,turn:typeof e.turn==`number`?e.turn:void 0,args_preview:t,file:typeof e.file==`string`?e.file:r?.file,line:typeof e.line==`number`?e.line:r?.line,status:e.status===`ok`||e.status===`error`||e.status===`running`?e.status:`running`,duration_ms:typeof e.duration_ms==`number`?e.duration_ms:void 0}}if(t===`finding`)return{schema:`0.events/v1`,kind:`finding`,ts:n,finding_id:typeof e.finding_id==`string`?e.finding_id:void 0,title:typeof e.title==`string`?e.title:`Finding`,severity:typeof e.severity==`string`?e.severity:void 0,category:typeof e.category==`string`?e.category:void 0,confidence:typeof e.confidence==`number`?e.confidence:void 0,file:typeof e.file==`string`?e.file:void 0,line:typeof e.line==`number`?e.line:void 0};if(t===`stage`){let t=e.transition===`completed`?`completed`:`started`;return{schema:`0.events/v1`,kind:`stage`,ts:n,stage:typeof e.stage==`string`?e.stage:`stage`,transition:t,role:typeof e.role==`string`?e.role:void 0,turn:typeof e.turn==`number`?e.turn:void 0,duration_ms:typeof e.duration_ms==`number`?e.duration_ms:void 0}}return null}function M(e,t){let n=typeof t.ts==`number`?t.ts:Date.now()/1e3;if(e===`tool_call_started`||e===`tool_call_completed`){let r=typeof t.args_preview==`string`?t.args_preview:void 0,i=A(r),a=e===`tool_call_started`?`running`:t.status===`error`?`error`:`ok`;return{schema:`0.events/v1`,kind:`tool_use`,ts:n,tool:typeof t.tool==`string`?t.tool:`?`,turn:typeof t.turn==`number`?t.turn:void 0,args_preview:r,file:i?.file,line:i?.line,status:a,duration_ms:typeof t.duration_ms==`number`?t.duration_ms:void 0}}return e===`finding_ingested`?{schema:`0.events/v1`,kind:`finding`,ts:n,finding_id:typeof t.finding_id==`string`?t.finding_id:void 0,title:typeof t.title==`string`?t.title:`Finding`,severity:typeof t.severity==`string`?t.severity.toLowerCase():void 0,category:typeof t.category==`string`?t.category:void 0,confidence:typeof t.confidence==`number`?t.confidence:void 0,file:typeof t.file==`string`?t.file:void 0,line:typeof t.line==`number`?t.line:void 0}:e===`step_started`||e===`step_completed`?{schema:`0.events/v1`,kind:`stage`,ts:n,stage:typeof t.step==`string`?t.step:`stage`,transition:e===`step_started`?`started`:`completed`,duration_ms:typeof t.duration_ms==`number`?t.duration_ms:void 0}:e===`agent_turn_started`||e===`agent_turn_completed`?{schema:`0.events/v1`,kind:`stage`,ts:n,stage:`turn ${typeof t.turn==`number`?t.turn:`?`}`,transition:e===`agent_turn_started`?`started`:`completed`,role:typeof t.role==`string`?t.role:void 0,turn:typeof t.turn==`number`?t.turn:void 0,duration_ms:typeof t.duration_ms==`number`?t.duration_ms:void 0}:null}var N=n(),ne=24,re=60,ie=80;function P(e){return e>=.9?`text-destructive`:e>=.75?`text-amber-600 dark:text-amber-400`:e>=.5?`text-sky-600 dark:text-sky-400`:`text-muted-foreground`}function F(e){return e>=.9?`bg-destructive/12`:e>=.75?`bg-amber-500/12`:e>=.5?`bg-sky-500/12`:``}function I(e){return e.toFixed(2)}function L(e,t){if(t===null)return new Date(e*1e3).toLocaleTimeString();let n=e-t;return n<0?`${n.toFixed(1)}s`:`+${n.toFixed(1)}s`}function R(e){let t=(e??``).toLowerCase();return t===`critical`||t===`high`?`danger`:t===`medium`?`warning`:t===`low`||t===`info`?`info`:`neutral`}function z(e,t,n){let r=null;for(let i of e){if(!i.file.endsWith(t)&&!t.endsWith(i.file)||n<i.start_line-20||n>i.end_line+20)continue;if(!r){r=i;continue}let e=Math.max(0,r.start_line-n,n-r.end_line);Math.max(0,i.start_line-n,n-i.end_line)<e&&(r=i)}return r}function ae(){let e=Date.now()/1e3,t=e=>e;return[t({schema:`gemmaforge.events/v1`,kind:`scan.start`,ts:e,repo:`examples/express-app`,model_id:`google/gemma-4-E2B-it`,layer:17,chunker:`function`}),t({schema:`gemmaforge.events/v1`,kind:`scan.file`,ts:e+.4,file:`src/router.js`,chunks:12}),t({schema:`gemmaforge.events/v1`,kind:`probe.token`,ts:e+.6,token:`app.get(`,score:.14,position:1}),t({schema:`gemmaforge.events/v1`,kind:`probe.token`,ts:e+.7,token:`'/u/:id'`,score:.31,position:2}),t({schema:`gemmaforge.events/v1`,kind:`probe.token`,ts:e+.8,token:` db.query(`,score:.72,position:12}),t({schema:`gemmaforge.events/v1`,kind:`probe.token`,ts:e+.9,token:`'SELECT * FROM users WHERE id='`,score:.84,position:18}),t({schema:`gemmaforge.events/v1`,kind:`probe.token`,ts:e+1,token:` + req.params.id`,score:.93,position:23}),t({schema:`gemmaforge.events/v1`,kind:`probe.alarm`,ts:e+1.05,window:[38,52],top_cwe:`CWE-89`,confidence:.93}),t({schema:`gemmaforge.events/v1`,kind:`scan.lead`,ts:e+1.1,file:`src/router.js`,start_line:38,end_line:52,confidence:.93,top_cwe:`CWE-89`,rank:0}),t({schema:`gemmaforge.events/v1`,kind:`scan.file`,ts:e+1.4,file:`src/exec.js`,chunks:4}),t({schema:`gemmaforge.events/v1`,kind:`probe.token`,ts:e+1.6,token:`child_process.exec(`,score:.81,position:4}),t({schema:`gemmaforge.events/v1`,kind:`probe.token`,ts:e+1.7,token:" `ping ${host}`",score:.88,position:7}),t({schema:`gemmaforge.events/v1`,kind:`probe.alarm`,ts:e+1.78,window:[12,22],top_cwe:`CWE-78`,confidence:.87}),t({schema:`gemmaforge.events/v1`,kind:`scan.lead`,ts:e+1.82,file:`src/exec.js`,start_line:12,end_line:22,confidence:.87,top_cwe:`CWE-78`,rank:1}),t({schema:`gemmaforge.events/v1`,kind:`scan.end`,ts:e+2.4,files_seen:2,chunks_scored:16,leads_emitted:2,elapsed_seconds:2.4})]}function oe(e){return[{schema:`0.events/v1`,kind:`stage`,ts:e+1.2,stage:`audit`,transition:`started`,role:`attack`},{schema:`0.events/v1`,kind:`tool_use`,ts:e+1.3,tool:`read_file`,turn:1,args_preview:`src/router.js:38`,file:`src/router.js`,line:38,status:`ok`,duration_ms:14},{schema:`0.events/v1`,kind:`tool_use`,ts:e+1.5,tool:`shell`,turn:1,args_preview:`grep -n 'db.query' src/router.js`,status:`ok`,duration_ms:47},{schema:`0.events/v1`,kind:`finding`,ts:e+1.9,finding_id:`f-001`,title:`SQL injection via req.params.id`,severity:`high`,category:`injection`,confidence:.92,file:`src/router.js`,line:42},{schema:`0.events/v1`,kind:`tool_use`,ts:e+2,tool:`read_file`,turn:2,args_preview:`src/exec.js:12`,file:`src/exec.js`,line:12,status:`ok`,duration_ms:9},{schema:`0.events/v1`,kind:`finding`,ts:e+2.3,finding_id:`f-002`,title:`Command injection in ping handler`,severity:`critical`,category:`rce`,confidence:.88,file:`src/exec.js`,line:17},{schema:`0.events/v1`,kind:`stage`,ts:e+2.5,stage:`audit`,transition:`completed`,role:`attack`,duration_ms:1300}]}function B(){let[e,t]=r(),n=e.get(`events`)??``,i=e.get(`huntEvents`)??`/api/v1/presentation/events`,a=e.get(`demo`)===`1`,[o,s]=(0,O.useState)([]),[l,u]=(0,O.useState)([]),[p,m]=(0,O.useState)([]),[C,w]=(0,O.useState)([]),[T,E]=(0,O.useState)(null),[D,k]=(0,O.useState)([]),[j,M]=(0,O.useState)(null),[P,F]=(0,O.useState)(`idle`),[I,L]=(0,O.useState)(`idle`),[R,B]=(0,O.useState)(null),[H,U]=(0,O.useState)(null),[W,ue]=(0,O.useState)(n),[G,de]=(0,O.useState)(i),K=(0,O.useRef)(null),q=(0,O.useRef)(null),fe=(0,O.useRef)(0),J=(0,O.useRef)([]);(0,O.useEffect)(()=>{J.current=p},[p]);let Y=(0,O.useCallback)(()=>(fe.current+=1,`evt-${fe.current}`),[]),X=(0,O.useCallback)(e=>{switch(q.current===null&&typeof e.ts==`number`&&(q.current=e.ts),e.kind){case`scan.start`:E({repo:e.repo,model_id:e.model_id,layer:e.layer}),M(null),k([]);break;case`scan.file`:k(t=>t.includes(e.file)?t:[...t,e.file].slice(-12));break;case`probe.token`:{let t={id:Y(),ts:e.ts,token:e.token,score:e.score,position:e.position??null};s(e=>[...e,t].slice(-240));break}case`probe.alarm`:{let t={id:Y(),ts:e.ts,window:e.window,top_cwe:e.top_cwe??null,confidence:e.confidence};K.current=t,u(e=>[t,...e].slice(0,ne));break}case`scan.lead`:{let t={id:Y(),ts:e.ts,file:e.file,start_line:e.start_line,end_line:e.end_line,confidence:e.confidence,top_cwe:e.top_cwe??null,rank:e.rank??null,originatingAlarmId:K.current?.id??null};m(e=>[t,...e].slice(0,re));break}case`scan.end`:M({files_seen:e.files_seen,chunks_scored:e.chunks_scored,leads_emitted:e.leads_emitted,elapsed_seconds:e.elapsed_seconds})}},[Y]),Z=(0,O.useCallback)(e=>{q.current===null&&typeof e.ts==`number`&&(q.current=e.ts);let t=null;if((e.kind===`tool_use`||e.kind===`finding`)&&e.file&&typeof e.line==`number`)t=z(J.current,e.file,e.line)?.id??null;else if(e.kind===`tool_use`&&e.args_preview){let n=A(e.args_preview);n&&(t=z(J.current,n.file,n.line)?.id??null)}let n={id:Y(),ts:e.ts,event:e,citedLeadId:t};w(e=>[n,...e].slice(0,ie))},[Y]),Q=(0,O.useCallback)(()=>{s([]),u([]),m([]),w([]),E(null),k([]),M(null),U(null),B(null),K.current=null,q.current=null},[]);(0,O.useEffect)(()=>{if(!a)return;Q(),F(`open`),L(`open`);let e=ae(),t=e[0]?.ts??Date.now()/1e3,n=oe(t),r=[];for(let n of e){let e=Math.max(0,(n.ts-t)*1e3);r.push(setTimeout(()=>X(n),e))}for(let e of n){let n=Math.max(0,(e.ts-t)*1e3);r.push(setTimeout(()=>Z(e),n))}let i=((e.at(-1)?.ts??t)-t)*1e3+300;return r.push(setTimeout(()=>{F(`closed`),L(`closed`)},i)),()=>{for(let e of r)clearTimeout(e)}},[a,X,Z,Q]),(0,O.useEffect)(()=>{if(a||!n)return;s([]),u([]),m([]),E(null),k([]),M(null),U(null),K.current=null,q.current=null,F(`connecting`);let e=null;try{e=new EventSource(n)}catch(e){F(`error`),B(e instanceof Error?e.message:String(e));return}return e.onopen=()=>F(`open`),e.onerror=()=>{F(`error`),B(`EventSource error (connection dropped or refused).`)},e.onmessage=e=>{let t=typeof e.data==`string`?e.data.trim():``;if(t)try{let e=JSON.parse(t);if(e.schema!==`gemmaforge.events/v1`)return;X(e)}catch(e){B(e instanceof Error?e.message:String(e))}},()=>{e?.close(),F(`closed`)}},[a,n,X]),(0,O.useEffect)(()=>{if(a||!i)return;w([]),L(`connecting`);let e=null;try{e=new EventSource(i)}catch(e){L(`error`),B(e instanceof Error?e.message:String(e));return}e.onopen=()=>L(`open`),e.onerror=()=>{L(`error`),B(`Hunt EventSource error (connection dropped or refused).`)};let t=e=>{let t=typeof e.data==`string`?e.data.trim():``;if(!t)return;let n=te(t);n&&Z(n)};return e.onmessage=t,e.addEventListener(`presentation`,t),()=>{e?.close(),L(`closed`)}},[a,i,Z]);let pe=(0,O.useCallback)(()=>{let n=new URLSearchParams(e);n.delete(`demo`),W.trim()?n.set(`events`,W.trim()):n.delete(`events`),G.trim()?n.set(`huntEvents`,G.trim()):n.delete(`huntEvents`),t(n,{replace:!0})},[e,t,W,G]),me=(0,O.useCallback)(()=>{let n=new URLSearchParams(e);n.delete(`events`),n.delete(`huntEvents`),n.set(`demo`,`1`),t(n,{replace:!0})},[e,t]),he=(0,O.useCallback)(()=>{let n=new URLSearchParams(e);n.delete(`events`),n.delete(`huntEvents`),n.delete(`demo`),t(n,{replace:!0}),Q(),F(`idle`),L(`idle`)},[e,Q,t]),$=(0,O.useMemo)(()=>p.find(e=>e.id===H)??null,[p,H]),ge=$?.originatingAlarmId??null,_e=(0,O.useMemo)(()=>{let e=[P,I];return e.includes(`open`)?`open`:e.includes(`connecting`)?`connecting`:e.includes(`error`)?`error`:e.includes(`closed`)?`closed`:`idle`},[P,I]),ve=(0,O.useCallback)(e=>{e.citedLeadId&&U(t=>t===e.citedLeadId?null:e.citedLeadId)},[]);return(0,N.jsxs)(`div`,{className:`space-y-6`,children:[(0,N.jsx)(c,{eyebrow:`GemmaForge × 0`,title:`Live workflow`,summary:`Watch the probe → seed leads → agent hunt pipeline in real time. Probe firings stream from gemmaforge.events/v1, leads accumulate to the worklist, and 0's hunters surface tool calls and findings as they happen.`,actions:(0,N.jsxs)(N.Fragment,{children:[(0,N.jsx)(V,{state:_e}),(0,N.jsxs)(h,{variant:a?`outline`:`accent`,onClick:me,children:[(0,N.jsx)(ee,{}),`Demo replay`]}),(0,N.jsx)(h,{variant:`outline`,onClick:he,disabled:_e===`idle`,children:`Stop`})]})}),(0,N.jsxs)(v,{className:`overflow-hidden`,children:[(0,N.jsx)(S,{children:(0,N.jsxs)(`div`,{children:[(0,N.jsx)(x,{children:`Event sources`}),(0,N.jsx)(f,{className:`mt-2`,children:`SSE endpoints`}),(0,N.jsxs)(g,{children:[`The probe + lead lanes consume `,(0,N.jsx)(`code`,{className:`font-mono text-xs`,children:`gemmaforge.events/v1`}),`; the hunt lane consumes `,(0,N.jsx)(`code`,{className:`font-mono text-xs`,children:`0.events/v1`}),`. Run`,` `,(0,N.jsx)(`code`,{className:`font-mono text-xs`,children:`node scripts/serve-events.mjs <gemma.ndjson> --0-log <0.log>`}),` `,`to expose both at `,(0,N.jsx)(`code`,{className:`font-mono text-xs`,children:`/events`}),` and `,(0,N.jsx)(`code`,{className:`font-mono text-xs`,children:`/hunt-events`}),`.`]})]})}),(0,N.jsxs)(_,{className:`space-y-3`,children:[(0,N.jsxs)(`div`,{className:`flex flex-wrap items-center gap-2`,children:[(0,N.jsx)(`span`,{className:`text-[10px] font-medium uppercase tracking-widest text-muted-foreground/70 w-24`,children:`gemmaforge`}),(0,N.jsx)(b,{value:W,onChange:e=>ue(e.target.value),placeholder:`http://localhost:8765/events`,className:`min-w-[16rem] flex-1`}),(0,N.jsx)(V,{state:P})]}),(0,N.jsxs)(`div`,{className:`flex flex-wrap items-center gap-2`,children:[(0,N.jsx)(`span`,{className:`text-[10px] font-medium uppercase tracking-widest text-muted-foreground/70 w-24`,children:`0`}),(0,N.jsx)(b,{value:G,onChange:e=>de(e.target.value),placeholder:`http://localhost:8765/hunt-events`,className:`min-w-[16rem] flex-1`}),(0,N.jsx)(V,{state:I})]}),(0,N.jsx)(`div`,{className:`flex justify-end`,children:(0,N.jsxs)(h,{onClick:pe,disabled:!W.trim()&&!G.trim(),children:[(0,N.jsx)(d,{}),`Connect`]})}),T?(0,N.jsxs)(`div`,{className:`flex flex-wrap gap-2 text-xs text-muted-foreground`,children:[T.repo?(0,N.jsxs)(y,{variant:`neutral`,children:[`repo `,T.repo]}):null,T.model_id?(0,N.jsxs)(y,{variant:`neutral`,children:[`model `,T.model_id]}):null,T.layer===void 0?null:(0,N.jsxs)(y,{variant:`neutral`,children:[`layer `,T.layer]}),D.length>0?(0,N.jsxs)(`span`,{className:`text-muted-foreground`,children:[`files: `,(0,N.jsx)(`span`,{className:`font-mono`,children:D.slice(-4).join(`, `)})]}):null]}):null,j?(0,N.jsxs)(`div`,{className:`flex flex-wrap gap-2 text-xs`,children:[(0,N.jsx)(y,{variant:`success`,children:`scan complete`}),(0,N.jsxs)(`span`,{className:`text-muted-foreground`,children:[j.files_seen??`?`,` files · `,j.chunks_scored??`?`,` chunks · `,j.leads_emitted??`?`,` leads · `,j.elapsed_seconds?.toFixed(1)??`?`,`s`]})]}):null,R?(0,N.jsx)(`div`,{className:`rounded-md border border-destructive/20 bg-destructive/5 px-3 py-2 text-xs text-destructive`,children:R}):null]})]}),(0,N.jsxs)(`section`,{className:`grid gap-4 xl:grid-cols-3`,children:[(0,N.jsx)(se,{tokens:o,alarms:l,highlightedAlarmId:ge,baseTs:q.current,onClearSelection:()=>U(null),hasSelection:$!==null}),(0,N.jsx)(ce,{leads:p,baseTs:q.current,selectedLeadId:H,onSelectLead:e=>U(t=>t===e?null:e)}),(0,N.jsx)(le,{cards:C,selectedLead:$,selectedLeadId:H,baseTs:q.current,onCardClick:ve})]})]})}function V({state:e}){return e===`open`?(0,N.jsxs)(y,{variant:`success`,className:`gap-1.5`,children:[(0,N.jsx)(d,{className:`size-3`}),` live`]}):e===`connecting`?(0,N.jsxs)(y,{variant:`warning`,className:`gap-1.5`,children:[(0,N.jsx)(d,{className:`size-3`}),` connecting`]}):e===`error`?(0,N.jsxs)(y,{variant:`danger`,className:`gap-1.5`,children:[(0,N.jsx)(d,{className:`size-3`}),` error`]}):e===`closed`?(0,N.jsxs)(y,{variant:`neutral`,className:`gap-1.5`,children:[(0,N.jsx)(d,{className:`size-3`}),` closed`]}):(0,N.jsxs)(y,{variant:`neutral`,className:`gap-1.5`,children:[(0,N.jsx)(d,{className:`size-3`}),` idle`]})}function se({tokens:e,alarms:t,highlightedAlarmId:n,baseTs:r,onClearSelection:i,hasSelection:a}){let o=(0,O.useRef)(null);return(0,O.useEffect)(()=>{let e=o.current;e&&(e.scrollTop=e.scrollHeight)},[e.length]),(0,N.jsxs)(v,{className:`flex flex-col overflow-hidden`,children:[(0,N.jsx)(S,{children:(0,N.jsxs)(`div`,{children:[(0,N.jsx)(x,{children:`Lane 1 · Probe`}),(0,N.jsxs)(f,{className:`mt-2 flex items-center gap-2`,children:[(0,N.jsx)(D,{className:`size-4 text-primary-text`}),`Probe firings`]}),(0,N.jsxs)(g,{children:[`Per-token probe scores from `,(0,N.jsx)(`code`,{className:`font-mono text-xs`,children:`stream_with_probe.py`}),`. Alarms pin to the top when the rolling score crosses threshold.`]})]})}),(0,N.jsxs)(_,{className:`flex flex-1 flex-col gap-3`,children:[t.length===0?null:(0,N.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,N.jsxs)(`div`,{className:`text-[10px] font-medium uppercase tracking-widest text-muted-foreground/70`,children:[`Alarms `,(0,N.jsxs)(`span`,{className:`text-muted-foreground/40`,children:[`(`,t.length,`)`]})]}),(0,N.jsx)(`div`,{className:`space-y-1.5`,children:t.slice(0,4).map(e=>(0,N.jsxs)(`div`,{className:u(`rounded-md border px-3 py-2 transition-colors`,n===e.id?`border-primary/40 bg-primary/8 ring-1 ring-primary/30`:`border-destructive/20 bg-destructive/5`),children:[(0,N.jsxs)(`div`,{className:`flex items-center justify-between gap-2 text-xs`,children:[(0,N.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,N.jsx)(p,{className:`size-3.5 text-destructive`}),(0,N.jsxs)(`span`,{className:`font-mono`,children:[`L`,e.window[0],`–`,e.window[1]]}),e.top_cwe?(0,N.jsx)(y,{variant:`danger`,children:e.top_cwe}):null]}),(0,N.jsx)(`span`,{className:`font-mono text-destructive`,children:I(e.confidence)})]}),(0,N.jsxs)(`div`,{className:`mt-1 text-[10px] text-muted-foreground`,children:[L(e.ts,r),n===e.id?` · originating fire`:``]})]},e.id))}),a?(0,N.jsx)(h,{variant:`ghost`,size:`xs`,onClick:i,children:`Clear lead selection`}):null]}),(0,N.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,N.jsxs)(`div`,{className:`text-[10px] font-medium uppercase tracking-widest text-muted-foreground/70`,children:[`Token stream `,(0,N.jsxs)(`span`,{className:`text-muted-foreground/40`,children:[`(`,e.length,`)`]})]}),(0,N.jsx)(`div`,{ref:o,className:`max-h-[28rem] min-h-[12rem] overflow-y-auto rounded-md border border-border bg-muted/10 px-3 py-3 font-mono text-xs leading-relaxed`,children:e.length===0?(0,N.jsx)(`div`,{className:`text-muted-foreground`,children:`Waiting for probe.token events…`}):(0,N.jsx)(`div`,{className:`flex flex-wrap gap-x-0.5 gap-y-1`,children:e.map(e=>(0,N.jsx)(`span`,{title:`score ${I(e.score)} · pos ${e.position??`?`}`,className:u(`rounded-sm px-1 py-0.5`,P(e.score),F(e.score)),children:e.token},e.id))})}),(0,N.jsxs)(`div`,{className:`flex items-center gap-3 text-[10px] text-muted-foreground`,children:[(0,N.jsxs)(`span`,{className:`flex items-center gap-1`,children:[(0,N.jsx)(`span`,{className:`size-2 rounded-full bg-muted-foreground/50`}),` <0.5`]}),(0,N.jsxs)(`span`,{className:`flex items-center gap-1`,children:[(0,N.jsx)(`span`,{className:`size-2 rounded-full bg-sky-500`}),` 0.5–0.75`]}),(0,N.jsxs)(`span`,{className:`flex items-center gap-1`,children:[(0,N.jsx)(`span`,{className:`size-2 rounded-full bg-amber-500`}),` 0.75–0.9`]}),(0,N.jsxs)(`span`,{className:`flex items-center gap-1`,children:[(0,N.jsx)(`span`,{className:`size-2 rounded-full bg-destructive`}),` ≥0.9`]})]})]})]})]})}function ce({leads:e,baseTs:t,selectedLeadId:n,onSelectLead:r}){return(0,N.jsxs)(v,{className:`flex flex-col overflow-hidden`,children:[(0,N.jsx)(S,{children:(0,N.jsxs)(`div`,{children:[(0,N.jsx)(x,{children:`Lane 2 · Leads`}),(0,N.jsxs)(f,{className:`mt-2 flex items-center gap-2`,children:[(0,N.jsx)(l,{className:`size-4 text-primary-text`}),`Seed worklist`]}),(0,N.jsx)(g,{children:"Regions that passed `--min-confidence` and shipped to the leads file. Click a lead to highlight the probe firing that originated it; click a hunt tool-call to highlight the lead it cites."})]})}),(0,N.jsx)(_,{className:`flex flex-1 flex-col`,children:e.length===0?(0,N.jsx)(m,{children:`Waiting for scan.lead events…`}):(0,N.jsx)(`div`,{className:`max-h-[36rem] space-y-2 overflow-y-auto pr-1`,children:e.map(e=>{let i=e.id===n;return(0,N.jsxs)(`button`,{type:`button`,onClick:()=>r(e.id),className:u(`w-full rounded-md border px-3 py-3 text-left transition-colors`,i?`border-primary/40 bg-primary/8 ring-1 ring-primary/30`:`border-border bg-background hover:border-primary/20 hover:bg-primary/4`),children:[(0,N.jsxs)(`div`,{className:`flex items-start justify-between gap-2`,children:[(0,N.jsxs)(`div`,{className:`min-w-0`,children:[(0,N.jsx)(`div`,{className:`truncate font-mono text-xs text-foreground`,children:e.file}),(0,N.jsxs)(`div`,{className:`mt-0.5 text-[11px] text-muted-foreground`,children:[`lines `,e.start_line,`–`,e.end_line,e.rank===null?``:` · rank #${e.rank}`,` · `,L(e.ts,t)]})]}),(0,N.jsxs)(`div`,{className:`flex shrink-0 flex-col items-end gap-1`,children:[(0,N.jsx)(y,{variant:`accent`,className:`font-mono`,children:I(e.confidence)}),e.top_cwe?(0,N.jsx)(y,{variant:`danger`,children:e.top_cwe}):null]})]}),i?(0,N.jsxs)(`div`,{className:`mt-2 flex items-center gap-1 text-[10px] text-primary-text`,children:[(0,N.jsx)(w,{className:`size-3`}),`probe lane is highlighting the originating fire`,(0,N.jsx)(C,{className:`ml-auto size-3`}),(0,N.jsx)(s,{className:`size-3`}),`hunt lane is targeting this lead`]}):null]},e.id)})})})]})}function le({cards:e,selectedLead:t,selectedLeadId:n,baseTs:r,onCardClick:a}){return(0,N.jsxs)(v,{className:`flex flex-col overflow-hidden`,children:[(0,N.jsx)(S,{children:(0,N.jsxs)(`div`,{children:[(0,N.jsx)(x,{children:`Lane 3 · Hunt`}),(0,N.jsxs)(f,{className:`mt-2 flex items-center gap-2`,children:[(0,N.jsx)(o,{className:`size-4 text-primary-text`}),`Agent activity`]}),(0,N.jsx)(g,{children:`Live 0 scan events — tool calls, findings, and stage transitions. Click a card that cites a file:line to highlight the originating lead in lane 2.`})]})}),(0,N.jsxs)(_,{className:`flex flex-1 flex-col gap-3`,children:[t?(0,N.jsxs)(`div`,{className:`rounded-md border border-primary/20 bg-primary/4 px-3 py-3`,children:[(0,N.jsxs)(`div`,{className:`flex items-center gap-2 text-[10px] font-medium uppercase tracking-widest text-primary-text`,children:[(0,N.jsx)(T,{className:`size-3`}),`Targeting lead`]}),(0,N.jsx)(`div`,{className:`mt-1 truncate font-mono text-xs text-foreground`,children:t.file}),(0,N.jsxs)(`div`,{className:`text-[11px] text-muted-foreground`,children:[`lines `,t.start_line,`–`,t.end_line,` · `,I(t.confidence),t.top_cwe?` · ${t.top_cwe}`:``]})]}):null,e.length===0?(0,N.jsx)(m,{children:`Waiting for 0 hunt events…`}):(0,N.jsx)(`div`,{className:`max-h-[36rem] space-y-2 overflow-y-auto pr-1`,children:e.map(e=>(0,N.jsx)(H,{card:e,baseTs:r,highlightLead:n!==null&&e.citedLeadId===n,onClick:()=>a(e)},e.id))}),(0,N.jsx)(`div`,{className:`mt-auto pt-2`,children:(0,N.jsx)(h,{asChild:!0,variant:`ghost`,size:`sm`,children:(0,N.jsx)(i,{to:`/findings`,children:`Open findings workspace`})})})]})]})}function H({card:e,baseTs:t,highlightLead:n,onClick:r}){let i=e.event,a=e.citedLeadId!==null,o=u(`block w-full rounded-md border px-3 py-3 text-left transition-colors`,n?`border-primary/40 bg-primary/8 ring-1 ring-primary/30`:a?`border-border bg-background hover:border-primary/20 hover:bg-primary/4 cursor-pointer`:`border-border bg-background`),s=i.kind===`tool_use`?(0,N.jsx)(U,{event:i}):i.kind===`finding`?(0,N.jsx)(W,{event:i}):(0,N.jsx)(ue,{event:i}),c=(0,N.jsxs)(`div`,{className:`mt-2 flex items-center justify-between text-[10px] text-muted-foreground`,children:[(0,N.jsx)(`span`,{children:L(e.ts,t)}),a?(0,N.jsxs)(`span`,{className:`flex items-center gap-1 text-primary-text`,children:[(0,N.jsx)(C,{className:`size-3`}),n?`linked to selected lead`:`click to highlight lead`]}):null]});return a?(0,N.jsxs)(`button`,{type:`button`,onClick:r,className:o,children:[s,c]}):(0,N.jsxs)(`div`,{className:o,children:[s,c]})}function U({event:e}){let t=e.status===`ok`?`success`:e.status===`error`?`danger`:`warning`;return(0,N.jsxs)(`div`,{className:`space-y-1`,children:[(0,N.jsxs)(`div`,{className:`flex items-start justify-between gap-2`,children:[(0,N.jsxs)(`div`,{className:`flex min-w-0 items-center gap-2`,children:[(0,N.jsx)(E,{className:`size-3.5 shrink-0 text-primary-text`}),(0,N.jsx)(`span`,{className:`truncate text-sm font-medium text-foreground`,children:e.tool}),typeof e.turn==`number`?(0,N.jsxs)(`span`,{className:`font-mono text-[10px] text-muted-foreground`,children:[`turn `,e.turn]}):null]}),(0,N.jsx)(y,{variant:t,children:e.status??`running`})]}),e.args_preview?(0,N.jsx)(`div`,{className:`truncate font-mono text-[11px] text-muted-foreground`,title:e.args_preview,children:e.args_preview}):null,e.file?(0,N.jsxs)(`div`,{className:`font-mono text-[11px] text-primary-text`,children:[e.file,typeof e.line==`number`?`:${e.line}`:``]}):null]})}function W({event:e}){return(0,N.jsxs)(`div`,{className:`space-y-1`,children:[(0,N.jsxs)(`div`,{className:`flex items-start justify-between gap-2`,children:[(0,N.jsxs)(`div`,{className:`flex min-w-0 items-center gap-2`,children:[(0,N.jsx)(p,{className:`size-3.5 shrink-0 text-destructive`}),(0,N.jsx)(`span`,{className:`truncate text-sm font-medium text-foreground`,children:e.title})]}),(0,N.jsxs)(`div`,{className:`flex shrink-0 flex-col items-end gap-1`,children:[e.severity?(0,N.jsx)(y,{variant:R(e.severity),children:e.severity}):null,typeof e.confidence==`number`?(0,N.jsx)(y,{variant:`accent`,className:`font-mono`,children:I(e.confidence)}):null]})]}),e.category?(0,N.jsx)(`div`,{className:`text-[11px] text-muted-foreground`,children:e.category}):null,e.file?(0,N.jsxs)(`div`,{className:`font-mono text-[11px] text-primary-text`,children:[e.file,typeof e.line==`number`?`:${e.line}`:``]}):null]})}function ue({event:e}){let t=e.transition===`completed`?`success`:`neutral`;return(0,N.jsxs)(`div`,{className:`space-y-1`,children:[(0,N.jsxs)(`div`,{className:`flex items-start justify-between gap-2`,children:[(0,N.jsxs)(`div`,{className:`flex min-w-0 items-center gap-2`,children:[(0,N.jsx)(s,{className:`size-3.5 shrink-0 text-muted-foreground`}),(0,N.jsx)(`span`,{className:`truncate text-sm font-medium text-foreground`,children:e.stage}),e.role?(0,N.jsx)(y,{variant:`neutral`,children:e.role}):null]}),(0,N.jsx)(y,{variant:t,children:e.transition})]}),typeof e.duration_ms==`number`&&e.duration_ms>0?(0,N.jsxs)(`div`,{className:`font-mono text-[11px] text-muted-foreground`,children:[e.duration_ms,`ms`]}):null]})}export{B as LivePage};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{t as e}from"./jsx-runtime-C7oxC63R.js";import{C as t,S as n,g as r,h as i,m as a,v as o,x as s,y as c}from"./operations-app-
|
|
1
|
+
import{t as e}from"./jsx-runtime-C7oxC63R.js";import{C as t,S as n,g as r,h as i,m as a,v as o,x as s,y as c}from"./operations-app-ER0gg7GN.js";var l=e();function u({eyebrow:e,title:s,description:u,actions:d,children:f,className:p}){return(0,l.jsxs)(a,{className:t(`overflow-hidden`,p),children:[(0,l.jsxs)(c,{children:[(0,l.jsxs)(`div`,{className:`min-w-0`,children:[(0,l.jsx)(o,{children:e}),(0,l.jsx)(n,{className:`mt-2`,children:s}),(0,l.jsx)(r,{children:u})]}),d?(0,l.jsx)(`div`,{className:`shrink-0`,children:d}):null]}),(0,l.jsx)(i,{className:`space-y-4`,children:f})]})}function d({label:e,value:t,mono:n=!1}){return(0,l.jsxs)(s,{className:`px-0 py-3 first:pt-0 last:pb-0`,children:[(0,l.jsx)(`div`,{className:`text-[10px] font-semibold uppercase tracking-[0.2em] text-muted-foreground`,children:e}),(0,l.jsx)(`div`,{className:`mt-2 text-sm text-foreground ${n?`font-mono`:``}`,children:t})]})}export{u as n,d as t};
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
/*! tailwindcss v4.3.0 | MIT License | https://tailwindcss.com */
|
|
2
|
+
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){:root,:host{--shimmer-angle:20deg}*,:before,:after,::backdrop{--tw-translate-x:0;--tw-translate-y:0;--tw-translate-z:0;--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-space-y-reverse:0;--tw-divide-y-reverse:0;--tw-border-style:solid;--tw-leading:initial;--tw-font-weight:initial;--tw-tracking:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid;--tw-backdrop-blur:initial;--tw-backdrop-brightness:initial;--tw-backdrop-contrast:initial;--tw-backdrop-grayscale:initial;--tw-backdrop-hue-rotate:initial;--tw-backdrop-invert:initial;--tw-backdrop-opacity:initial;--tw-backdrop-saturate:initial;--tw-backdrop-sepia:initial;--tw-duration:initial;--tw-ease:initial;--tw-content:"";--tw-animation-delay:0s;--tw-animation-direction:normal;--tw-animation-duration:initial;--tw-animation-fill-mode:none;--tw-animation-iteration-count:1;--tw-enter-blur:0;--tw-enter-opacity:1;--tw-enter-rotate:0;--tw-enter-scale:1;--tw-enter-translate-x:0;--tw-enter-translate-y:0;--tw-exit-blur:0;--tw-exit-opacity:1;--tw-exit-rotate:0;--tw-exit-scale:1;--tw-exit-translate-x:0;--tw-exit-translate-y:0;--scroll-fade-t:0px;--scroll-fade-b:0px;--scroll-fade-s:0px;--scroll-fade-e:0px;--scroll-fade-mask:initial;--shimmer-image:initial;--shimmer-text-fill:initial}}}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-mono-cyrillic-ext-400-normal-xuaO2J-f.woff2)format("woff2"),url(/assets/ibm-plex-mono-cyrillic-ext-400-normal-DMdlQ8Kv.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-mono-cyrillic-400-normal-BSMlKf0J.woff2)format("woff2"),url(/assets/ibm-plex-mono-cyrillic-400-normal-CEL4l2ZJ.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-mono-vietnamese-400-normal-BulugwFq.woff2)format("woff2"),url(/assets/ibm-plex-mono-vietnamese-400-normal-DDuiU_S-.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-mono-latin-ext-400-normal-BmRBH3aV.woff2)format("woff2"),url(/assets/ibm-plex-mono-latin-ext-400-normal-D3D2R8hC.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-mono-latin-400-normal-DMJ8VG8y.woff2)format("woff2"),url(/assets/ibm-plex-mono-latin-400-normal-CvHOgSBP.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@layer theme{:root,:host{--font-sans:"Geist Variable", sans-serif;--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--color-amber-200:oklch(92.4% .12 95.746);--color-amber-300:oklch(87.9% .169 91.605);--color-amber-400:oklch(82.8% .189 84.429);--color-amber-500:oklch(76.9% .188 70.08);--color-amber-600:oklch(66.6% .179 58.318);--color-amber-700:oklch(55.5% .163 48.998);--color-emerald-200:oklch(90.5% .093 164.15);--color-emerald-300:oklch(84.5% .143 164.978);--color-emerald-500:oklch(69.6% .17 162.48);--color-emerald-700:oklch(50.8% .118 165.612);--color-sky-200:oklch(90.1% .058 230.902);--color-sky-400:oklch(74.6% .16 232.661);--color-sky-500:oklch(68.5% .169 237.323);--color-sky-600:oklch(58.8% .158 241.966);--color-sky-700:oklch(50% .134 242.749);--spacing:.25rem;--container-sm:24rem;--container-md:28rem;--container-xl:36rem;--container-2xl:42rem;--container-3xl:48rem;--text-xs:.75rem;--text-xs--line-height:calc(1 / .75);--text-sm:.875rem;--text-sm--line-height:calc(1.25 / .875);--text-base:1rem;--text-base--line-height:calc(1.5 / 1);--text-2xl:1.5rem;--text-2xl--line-height:calc(2 / 1.5);--text-3xl:1.875rem;--text-3xl--line-height:calc(2.25 / 1.875);--font-weight-normal:400;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--tracking-tight:-.025em;--tracking-widest:.1em;--leading-relaxed:1.625;--ease-in-out:cubic-bezier(.4, 0, .2, 1);--animate-spin:spin 1s linear infinite;--blur-sm:8px;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:"Geist Variable", sans-serif;--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}*{box-sizing:border-box;border-color:var(--border);outline-color:color-mix(in oklab, var(--ring) 50%, transparent)}html,body,#root{min-height:100%;margin:0}body{background:var(--background);background-color:var(--background);min-height:100vh;color:var(--foreground);font-family:Geist Variable,ui-sans-serif,system-ui,sans-serif}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit}button{cursor:pointer}pre,code{font-family:IBM Plex Mono,ui-monospace,monospace}pre{white-space:pre-wrap;word-break:break-word;margin:0}::selection{background:var(--primary)}@supports (color:color-mix(in lab, red, red)){::selection{background:color-mix(in oklab, var(--primary) 28%, transparent)}}html{font-family:Geist Variable,sans-serif}}@layer components;@layer utilities{.\@container\/card-header{container:card-header/inline-size}.pointer-events-none{pointer-events:none}.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.sticky{position:sticky}.inset-0{inset:calc(var(--spacing) * 0)}.top-0{top:calc(var(--spacing) * 0)}.top-1{top:calc(var(--spacing) * 1)}.top-1\/2{top:50%}.top-4{top:calc(var(--spacing) * 4)}.top-\[4\.5625rem\]{top:4.5625rem}.right-1{right:calc(var(--spacing) * 1)}.right-4{right:calc(var(--spacing) * 4)}.left-1\/2{left:50%}.left-3{left:calc(var(--spacing) * 3)}.isolate{isolation:isolate}.z-20{z-index:20}.z-50{z-index:50}.order-1{order:1}.order-2{order:2}.col-start-2{grid-column-start:2}.row-span-2{grid-row:span 2/span 2}.row-start-1{grid-row-start:1}.mx-auto{margin-inline:auto}.my-1\.5{margin-block:calc(var(--spacing) * 1.5)}.mt-0\.5{margin-top:calc(var(--spacing) * .5)}.mt-1{margin-top:calc(var(--spacing) * 1)}.mt-1\.5{margin-top:calc(var(--spacing) * 1.5)}.mt-2{margin-top:calc(var(--spacing) * 2)}.mt-3{margin-top:calc(var(--spacing) * 3)}.mt-4{margin-top:calc(var(--spacing) * 4)}.mt-6{margin-top:calc(var(--spacing) * 6)}.mt-auto{margin-top:auto}.mb-2{margin-bottom:calc(var(--spacing) * 2)}.ml-auto{margin-left:auto}.no-scrollbar{-ms-overflow-style:none;scrollbar-width:none}.no-scrollbar::-webkit-scrollbar{display:none}.line-clamp-2{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.block{display:block}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline-flex{display:inline-flex}.table{display:table}.table-caption{display:table-caption}.table-cell{display:table-cell}.table-row{display:table-row}.field-sizing-content{field-sizing:content}.size-2{width:calc(var(--spacing) * 2);height:calc(var(--spacing) * 2)}.size-3{width:calc(var(--spacing) * 3);height:calc(var(--spacing) * 3)}.size-3\.5{width:calc(var(--spacing) * 3.5);height:calc(var(--spacing) * 3.5)}.size-4{width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4)}.size-5{width:calc(var(--spacing) * 5);height:calc(var(--spacing) * 5)}.size-6{width:calc(var(--spacing) * 6);height:calc(var(--spacing) * 6)}.size-8{width:calc(var(--spacing) * 8);height:calc(var(--spacing) * 8)}.size-9{width:calc(var(--spacing) * 9);height:calc(var(--spacing) * 9)}.size-10{width:calc(var(--spacing) * 10);height:calc(var(--spacing) * 10)}.size-11{width:calc(var(--spacing) * 11);height:calc(var(--spacing) * 11)}.size-full{width:100%;height:100%}.h-5{height:calc(var(--spacing) * 5)}.h-6{height:calc(var(--spacing) * 6)}.h-8{height:calc(var(--spacing) * 8)}.h-9{height:calc(var(--spacing) * 9)}.h-10{height:calc(var(--spacing) * 10)}.h-12{height:calc(var(--spacing) * 12)}.h-\[36rem\]{height:36rem}.h-\[calc\(100\%-1px\)\]{height:calc(100% - 1px)}.h-\[calc\(100vh-4\.5625rem\)\]{height:calc(100vh - 4.5625rem)}.h-auto{height:auto}.h-px{height:1px}.h-screen{height:100vh}.max-h-\[28rem\]{max-height:28rem}.max-h-\[36rem\]{max-height:36rem}.max-h-\[38rem\]{max-height:38rem}.max-h-\[60vh\]{max-height:60vh}.max-h-\[70vh\]{max-height:70vh}.max-h-\[calc\(100vh-8rem\)\]{max-height:calc(100vh - 8rem)}.max-h-\[min\(24rem\,60vh\)\]{max-height:min(24rem,60vh)}.min-h-0{min-height:calc(var(--spacing) * 0)}.min-h-16{min-height:calc(var(--spacing) * 16)}.min-h-\[12rem\]{min-height:12rem}.min-h-\[16rem\]{min-height:16rem}.min-h-\[20rem\]{min-height:20rem}.min-h-full{min-height:100%}.min-h-screen{min-height:100vh}.w-24{width:calc(var(--spacing) * 24)}.w-48{width:calc(var(--spacing) * 48)}.w-72{width:calc(var(--spacing) * 72)}.w-\[8rem\]{width:8rem}.w-\[10rem\]{width:10rem}.w-\[12rem\]{width:12rem}.w-\[14rem\]{width:14rem}.w-\[16rem\]{width:16rem}.w-\[20rem\]{width:20rem}.w-\[22rem\]{width:22rem}.w-\[32rem\]{width:32rem}.w-fit{width:fit-content}.w-full{width:100%}.max-w-2xl{max-width:var(--container-2xl)}.max-w-3xl{max-width:var(--container-3xl)}.max-w-\[12rem\]{max-width:12rem}.max-w-\[24rem\]{max-width:24rem}.max-w-\[1800px\]{max-width:1800px}.max-w-\[calc\(100\%-2rem\)\]{max-width:calc(100% - 2rem)}.max-w-full{max-width:100%}.min-w-0{min-width:calc(var(--spacing) * 0)}.min-w-4{min-width:calc(var(--spacing) * 4)}.min-w-\[16rem\]{min-width:16rem}.min-w-max{min-width:max-content}.flex-1{flex:1}.shrink-0{flex-shrink:0}.caption-bottom{caption-side:bottom}.-translate-x-1\/2{--tw-translate-x:calc(calc(1 / 2 * 100%) * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}.-translate-y-1\/2{--tw-translate-y:calc(calc(1 / 2 * 100%) * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.animate-spin{animation:var(--animate-spin)}.cursor-default{cursor:default}.cursor-grab{cursor:grab}.cursor-pointer{cursor:pointer}.touch-none{touch-action:none}.resize-none{resize:none}.scroll-py-1{scroll-padding-block:calc(var(--spacing) * 1)}.list-none{list-style-type:none}.auto-rows-min{grid-auto-rows:min-content}.flex-col{flex-direction:column}.flex-col-reverse{flex-direction:column-reverse}.flex-wrap{flex-wrap:wrap}.place-items-center{place-items:center}.items-center{align-items:center}.items-end{align-items:flex-end}.items-start{align-items:flex-start}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.justify-end{justify-content:flex-end}.justify-start{justify-content:flex-start}.gap-0\.5{gap:calc(var(--spacing) * .5)}.gap-1{gap:calc(var(--spacing) * 1)}.gap-1\.5{gap:calc(var(--spacing) * 1.5)}.gap-2{gap:calc(var(--spacing) * 2)}.gap-2\.5{gap:calc(var(--spacing) * 2.5)}.gap-3{gap:calc(var(--spacing) * 3)}.gap-4{gap:calc(var(--spacing) * 4)}.gap-5{gap:calc(var(--spacing) * 5)}.gap-6{gap:calc(var(--spacing) * 6)}:where(.space-y-0\.5>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * .5) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * .5) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-1>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 1) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 1) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-1\.5>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 1.5) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 1.5) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-2>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 2) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 2) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-3>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 3) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 3) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-4>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 4) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 4) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-5>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 5) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 5) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-6>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 6) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 6) * calc(1 - var(--tw-space-y-reverse)))}.gap-x-0\.5{column-gap:calc(var(--spacing) * .5)}.gap-y-1{row-gap:calc(var(--spacing) * 1)}:where(.divide-y>:not(:last-child)){--tw-divide-y-reverse:0;border-bottom-style:var(--tw-border-style);border-top-style:var(--tw-border-style);border-top-width:calc(1px * var(--tw-divide-y-reverse));border-bottom-width:calc(1px * calc(1 - var(--tw-divide-y-reverse)))}:where(.divide-border>:not(:last-child)){border-color:var(--border)}.self-start{align-self:flex-start}.justify-self-end{justify-self:flex-end}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.overflow-x-hidden{overflow-x:hidden}.overflow-y-auto{overflow-y:auto}.rounded{border-radius:.25rem}.rounded-\[inherit\]{border-radius:inherit}.rounded-full{border-radius:2147483647px}.rounded-lg{border-radius:calc(var(--radius) + 2px)}.rounded-md{border-radius:var(--radius)}.rounded-sm{border-radius:calc(var(--radius) - 2px)}.rounded-xl{border-radius:calc(var(--radius) * 1.4)}.rounded-t-lg{border-top-left-radius:calc(var(--radius) + 2px);border-top-right-radius:calc(var(--radius) + 2px)}.rounded-b-lg{border-bottom-right-radius:calc(var(--radius) + 2px);border-bottom-left-radius:calc(var(--radius) + 2px)}.border{border-style:var(--tw-border-style);border-width:1px}.border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.border-r{border-right-style:var(--tw-border-style);border-right-width:1px}.border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.border-l{border-left-style:var(--tw-border-style);border-left-width:1px}.border-dashed{--tw-border-style:dashed;border-style:dashed}.border-amber-500\/20{border-color:#f99c0033}@supports (color:color-mix(in lab, red, red)){.border-amber-500\/20{border-color:color-mix(in oklab, var(--color-amber-500) 20%, transparent)}}.border-border,.border-border\/70{border-color:var(--border)}@supports (color:color-mix(in lab, red, red)){.border-border\/70{border-color:color-mix(in oklab, var(--border) 70%, transparent)}}.border-destructive\/20{border-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.border-destructive\/20{border-color:color-mix(in oklab, var(--destructive) 20%, transparent)}}.border-destructive\/25{border-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.border-destructive\/25{border-color:color-mix(in oklab, var(--destructive) 25%, transparent)}}.border-destructive\/30{border-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.border-destructive\/30{border-color:color-mix(in oklab, var(--destructive) 30%, transparent)}}.border-emerald-500\/20{border-color:#00bb7f33}@supports (color:color-mix(in lab, red, red)){.border-emerald-500\/20{border-color:color-mix(in oklab, var(--color-emerald-500) 20%, transparent)}}.border-input{border-color:var(--input)}.border-primary\/20{border-color:var(--primary)}@supports (color:color-mix(in lab, red, red)){.border-primary\/20{border-color:color-mix(in oklab, var(--primary) 20%, transparent)}}.border-primary\/30{border-color:var(--primary)}@supports (color:color-mix(in lab, red, red)){.border-primary\/30{border-color:color-mix(in oklab, var(--primary) 30%, transparent)}}.border-primary\/35{border-color:var(--primary)}@supports (color:color-mix(in lab, red, red)){.border-primary\/35{border-color:color-mix(in oklab, var(--primary) 35%, transparent)}}.border-primary\/40{border-color:var(--primary)}@supports (color:color-mix(in lab, red, red)){.border-primary\/40{border-color:color-mix(in oklab, var(--primary) 40%, transparent)}}.border-transparent{border-color:#0000}.bg-amber-500{background-color:var(--color-amber-500)}.bg-amber-500\/10{background-color:#f99c001a}@supports (color:color-mix(in lab, red, red)){.bg-amber-500\/10{background-color:color-mix(in oklab, var(--color-amber-500) 10%, transparent)}}.bg-amber-500\/12{background-color:#f99c001f}@supports (color:color-mix(in lab, red, red)){.bg-amber-500\/12{background-color:color-mix(in oklab, var(--color-amber-500) 12%, transparent)}}.bg-background,.bg-background\/70{background-color:var(--background)}@supports (color:color-mix(in lab, red, red)){.bg-background\/70{background-color:color-mix(in oklab, var(--background) 70%, transparent)}}.bg-background\/80{background-color:var(--background)}@supports (color:color-mix(in lab, red, red)){.bg-background\/80{background-color:color-mix(in oklab, var(--background) 80%, transparent)}}.bg-background\/95{background-color:var(--background)}@supports (color:color-mix(in lab, red, red)){.bg-background\/95{background-color:color-mix(in oklab, var(--background) 95%, transparent)}}.bg-border,.bg-border\/50{background-color:var(--border)}@supports (color:color-mix(in lab, red, red)){.bg-border\/50{background-color:color-mix(in oklab, var(--border) 50%, transparent)}}.bg-card{background-color:var(--card)}.bg-destructive,.bg-destructive\/5{background-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.bg-destructive\/5{background-color:color-mix(in oklab, var(--destructive) 5%, transparent)}}.bg-destructive\/10{background-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.bg-destructive\/10{background-color:color-mix(in oklab, var(--destructive) 10%, transparent)}}.bg-destructive\/12{background-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.bg-destructive\/12{background-color:color-mix(in oklab, var(--destructive) 12%, transparent)}}.bg-emerald-500\/10{background-color:#00bb7f1a}@supports (color:color-mix(in lab, red, red)){.bg-emerald-500\/10{background-color:color-mix(in oklab, var(--color-emerald-500) 10%, transparent)}}.bg-emerald-500\/12{background-color:#00bb7f1f}@supports (color:color-mix(in lab, red, red)){.bg-emerald-500\/12{background-color:color-mix(in oklab, var(--color-emerald-500) 12%, transparent)}}.bg-muted{background-color:var(--muted)}.bg-muted-foreground\/50{background-color:var(--muted-foreground)}@supports (color:color-mix(in lab, red, red)){.bg-muted-foreground\/50{background-color:color-mix(in oklab, var(--muted-foreground) 50%, transparent)}}.bg-muted\/10{background-color:var(--muted)}@supports (color:color-mix(in lab, red, red)){.bg-muted\/10{background-color:color-mix(in oklab, var(--muted) 10%, transparent)}}.bg-muted\/15{background-color:var(--muted)}@supports (color:color-mix(in lab, red, red)){.bg-muted\/15{background-color:color-mix(in oklab, var(--muted) 15%, transparent)}}.bg-muted\/20{background-color:var(--muted)}@supports (color:color-mix(in lab, red, red)){.bg-muted\/20{background-color:color-mix(in oklab, var(--muted) 20%, transparent)}}.bg-muted\/25{background-color:var(--muted)}@supports (color:color-mix(in lab, red, red)){.bg-muted\/25{background-color:color-mix(in oklab, var(--muted) 25%, transparent)}}.bg-muted\/30{background-color:var(--muted)}@supports (color:color-mix(in lab, red, red)){.bg-muted\/30{background-color:color-mix(in oklab, var(--muted) 30%, transparent)}}.bg-muted\/35{background-color:var(--muted)}@supports (color:color-mix(in lab, red, red)){.bg-muted\/35{background-color:color-mix(in oklab, var(--muted) 35%, transparent)}}.bg-muted\/40{background-color:var(--muted)}@supports (color:color-mix(in lab, red, red)){.bg-muted\/40{background-color:color-mix(in oklab, var(--muted) 40%, transparent)}}.bg-muted\/50{background-color:var(--muted)}@supports (color:color-mix(in lab, red, red)){.bg-muted\/50{background-color:color-mix(in oklab, var(--muted) 50%, transparent)}}.bg-popover{background-color:var(--popover)}.bg-primary,.bg-primary\/4{background-color:var(--primary)}@supports (color:color-mix(in lab, red, red)){.bg-primary\/4{background-color:color-mix(in oklab, var(--primary) 4%, transparent)}}.bg-primary\/5{background-color:var(--primary)}@supports (color:color-mix(in lab, red, red)){.bg-primary\/5{background-color:color-mix(in oklab, var(--primary) 5%, transparent)}}.bg-primary\/6{background-color:var(--primary)}@supports (color:color-mix(in lab, red, red)){.bg-primary\/6{background-color:color-mix(in oklab, var(--primary) 6%, transparent)}}.bg-primary\/7{background-color:var(--primary)}@supports (color:color-mix(in lab, red, red)){.bg-primary\/7{background-color:color-mix(in oklab, var(--primary) 7%, transparent)}}.bg-primary\/8{background-color:var(--primary)}@supports (color:color-mix(in lab, red, red)){.bg-primary\/8{background-color:color-mix(in oklab, var(--primary) 8%, transparent)}}.bg-primary\/10{background-color:var(--primary)}@supports (color:color-mix(in lab, red, red)){.bg-primary\/10{background-color:color-mix(in oklab, var(--primary) 10%, transparent)}}.bg-primary\/12{background-color:var(--primary)}@supports (color:color-mix(in lab, red, red)){.bg-primary\/12{background-color:color-mix(in oklab, var(--primary) 12%, transparent)}}.bg-secondary{background-color:var(--secondary)}.bg-sky-500{background-color:var(--color-sky-500)}.bg-sky-500\/12{background-color:#00a5ef1f}@supports (color:color-mix(in lab, red, red)){.bg-sky-500\/12{background-color:color-mix(in oklab, var(--color-sky-500) 12%, transparent)}}.bg-transparent{background-color:#0000}.p-0{padding:calc(var(--spacing) * 0)}.p-1{padding:calc(var(--spacing) * 1)}.p-1\.5{padding:calc(var(--spacing) * 1.5)}.p-2{padding:calc(var(--spacing) * 2)}.p-3{padding:calc(var(--spacing) * 3)}.p-4{padding:calc(var(--spacing) * 4)}.p-6{padding:calc(var(--spacing) * 6)}.p-px{padding:1px}.px-0{padding-inline:calc(var(--spacing) * 0)}.px-1{padding-inline:calc(var(--spacing) * 1)}.px-1\.5{padding-inline:calc(var(--spacing) * 1.5)}.px-2{padding-inline:calc(var(--spacing) * 2)}.px-2\.5{padding-inline:calc(var(--spacing) * 2.5)}.px-3{padding-inline:calc(var(--spacing) * 3)}.px-4{padding-inline:calc(var(--spacing) * 4)}.px-5{padding-inline:calc(var(--spacing) * 5)}.px-6{padding-inline:calc(var(--spacing) * 6)}.py-0\.5{padding-block:calc(var(--spacing) * .5)}.py-1{padding-block:calc(var(--spacing) * 1)}.py-2{padding-block:calc(var(--spacing) * 2)}.py-3{padding-block:calc(var(--spacing) * 3)}.py-4{padding-block:calc(var(--spacing) * 4)}.py-5{padding-block:calc(var(--spacing) * 5)}.py-6{padding-block:calc(var(--spacing) * 6)}.py-8{padding-block:calc(var(--spacing) * 8)}.py-10{padding-block:calc(var(--spacing) * 10)}.pt-2{padding-top:calc(var(--spacing) * 2)}.pt-3{padding-top:calc(var(--spacing) * 3)}.pt-4{padding-top:calc(var(--spacing) * 4)}.pr-1{padding-right:calc(var(--spacing) * 1)}.pr-12{padding-right:calc(var(--spacing) * 12)}.pb-0{padding-bottom:calc(var(--spacing) * 0)}.pb-4{padding-bottom:calc(var(--spacing) * 4)}.pb-6{padding-bottom:calc(var(--spacing) * 6)}.pl-9{padding-left:calc(var(--spacing) * 9)}.text-center{text-align:center}.text-left{text-align:left}.align-middle{vertical-align:middle}.font-heading{font-family:var(--font-sans)}.font-mono{font-family:var(--font-mono)}.text-2xl{font-size:var(--text-2xl);line-height:var(--tw-leading,var(--text-2xl--line-height))}.text-3xl{font-size:var(--text-3xl);line-height:var(--tw-leading,var(--text-3xl--line-height))}.text-base{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.text-\[2rem\]{font-size:2rem}.text-\[9px\]{font-size:9px}.text-\[10px\]{font-size:10px}.text-\[11px\]{font-size:11px}.text-\[13px\]{font-size:13px}.leading-4{--tw-leading:calc(var(--spacing) * 4);line-height:calc(var(--spacing) * 4)}.leading-5{--tw-leading:calc(var(--spacing) * 5);line-height:calc(var(--spacing) * 5)}.leading-6{--tw-leading:calc(var(--spacing) * 6);line-height:calc(var(--spacing) * 6)}.leading-none{--tw-leading:1;line-height:1}.leading-relaxed{--tw-leading:var(--leading-relaxed);line-height:var(--leading-relaxed)}.font-bold{--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold)}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.font-normal{--tw-font-weight:var(--font-weight-normal);font-weight:var(--font-weight-normal)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.tracking-\[0\.2em\]{--tw-tracking:.2em;letter-spacing:.2em}.tracking-\[0\.16em\]{--tw-tracking:.16em;letter-spacing:.16em}.tracking-\[0\.18em\]{--tw-tracking:.18em;letter-spacing:.18em}.tracking-\[0\.24em\]{--tw-tracking:.24em;letter-spacing:.24em}.tracking-tight{--tw-tracking:var(--tracking-tight);letter-spacing:var(--tracking-tight)}.tracking-widest{--tw-tracking:var(--tracking-widest);letter-spacing:var(--tracking-widest)}.wrap-break-word{overflow-wrap:break-word}.whitespace-nowrap{white-space:nowrap}.text-\[\#403D39\]{color:#403d39}.text-amber-300{color:var(--color-amber-300)}.text-amber-600{color:var(--color-amber-600)}.text-amber-700{color:var(--color-amber-700)}.text-card-foreground{color:var(--card-foreground)}.text-destructive{color:var(--destructive)}.text-destructive-foreground{color:var(--destructive-foreground)}.text-emerald-300{color:var(--color-emerald-300)}.text-emerald-700{color:var(--color-emerald-700)}.text-foreground,.text-foreground\/70{color:var(--foreground)}@supports (color:color-mix(in lab, red, red)){.text-foreground\/70{color:color-mix(in oklab, var(--foreground) 70%, transparent)}}.text-foreground\/80{color:var(--foreground)}@supports (color:color-mix(in lab, red, red)){.text-foreground\/80{color:color-mix(in oklab, var(--foreground) 80%, transparent)}}.text-muted-foreground,.text-muted-foreground\/40{color:var(--muted-foreground)}@supports (color:color-mix(in lab, red, red)){.text-muted-foreground\/40{color:color-mix(in oklab, var(--muted-foreground) 40%, transparent)}}.text-muted-foreground\/70{color:var(--muted-foreground)}@supports (color:color-mix(in lab, red, red)){.text-muted-foreground\/70{color:color-mix(in oklab, var(--muted-foreground) 70%, transparent)}}.text-popover-foreground{color:var(--popover-foreground)}.text-primary-foreground{color:var(--primary-foreground)}.text-primary-text{color:var(--primary-text)}.text-secondary-foreground{color:var(--secondary-foreground)}.text-sky-600{color:var(--color-sky-600)}.text-sky-700{color:var(--color-sky-700)}.uppercase{text-transform:uppercase}.underline-offset-4{text-underline-offset:4px}.opacity-0{opacity:0}.opacity-30{opacity:.3}.shadow-lg{--tw-shadow:0 10px 15px -3px var(--tw-shadow-color,#0000001a), 0 4px 6px -4px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-sm{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.ring-1{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.ring-primary\/15{--tw-ring-color:var(--primary)}@supports (color:color-mix(in lab, red, red)){.ring-primary\/15{--tw-ring-color:color-mix(in oklab, var(--primary) 15%, transparent)}}.ring-primary\/20{--tw-ring-color:var(--primary)}@supports (color:color-mix(in lab, red, red)){.ring-primary\/20{--tw-ring-color:color-mix(in oklab, var(--primary) 20%, transparent)}}.ring-primary\/30{--tw-ring-color:var(--primary)}@supports (color:color-mix(in lab, red, red)){.ring-primary\/30{--tw-ring-color:color-mix(in oklab, var(--primary) 30%, transparent)}}.outline-hidden{--tw-outline-style:none;outline-style:none}@media (forced-colors:active){.outline-hidden{outline-offset:2px;outline:2px solid #0000}}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.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,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\[background-color\,border-color\,color\,box-shadow\]{transition-property:background-color,border-color,color,box-shadow;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\[background-color\,border-color\,color\]{transition-property:background-color,border-color,color;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\[border-color\,background-color\,box-shadow\]{transition-property:border-color,background-color,box-shadow;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\[color\,box-shadow\,border-color\]{transition-property:color,box-shadow,border-color;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\[color\,box-shadow\]{transition-property:color,box-shadow;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.duration-100{--tw-duration:.1s;transition-duration:.1s}.duration-200{--tw-duration:.2s;transition-duration:.2s}.ease-in-out{--tw-ease:var(--ease-in-out);transition-timing-function:var(--ease-in-out)}.outline-none{--tw-outline-style:none;outline-style:none}.select-none{-webkit-user-select:none;user-select:none}.running{animation-play-state:running}.group-has-data-\[slot\=command-shortcut\]\/command-item\:hidden:is(:where(.group\/command-item):has([data-slot=command-shortcut]) *){display:none}.group-data-\[checked\=true\]\/command-item\:opacity-100:is(:where(.group\/command-item)[data-checked=true] *){opacity:1}.group-data-\[size\=sm\]\/card\:px-4:is(:where(.group\/card)[data-size=sm] *){padding-inline:calc(var(--spacing) * 4)}.group-data-\[variant\=line\]\/tabs-list\:rounded-none:is(:where(.group\/tabs-list)[data-variant=line] *){border-radius:0}.group-data-\[variant\=line\]\/tabs-list\:px-2:is(:where(.group\/tabs-list)[data-variant=line] *){padding-inline:calc(var(--spacing) * 2)}.group-data-\[variant\=line\]\/tabs-list\:py-2:is(:where(.group\/tabs-list)[data-variant=line] *){padding-block:calc(var(--spacing) * 2)}.group-data-selected\/command-item\:text-foreground:is(:where(.group\/command-item):where([data-selected=true]) *){color:var(--foreground)}.group-data-horizontal\/tabs\:h-9:is(:where(.group\/tabs):where([data-orientation=horizontal]) *){height:calc(var(--spacing) * 9)}.group-data-vertical\/tabs\:h-fit:is(:where(.group\/tabs):where([data-orientation=vertical]) *){height:fit-content}.group-data-vertical\/tabs\:w-full:is(:where(.group\/tabs):where([data-orientation=vertical]) *){width:100%}.group-data-vertical\/tabs\:flex-col:is(:where(.group\/tabs):where([data-orientation=vertical]) *){flex-direction:column}.group-data-vertical\/tabs\:justify-start:is(:where(.group\/tabs):where([data-orientation=vertical]) *){justify-content:flex-start}.group-data-vertical\/tabs\:rounded-lg:is(:where(.group\/tabs):where([data-orientation=vertical]) *){border-radius:calc(var(--radius) + 2px)}.group-data-vertical\/tabs\:rounded-md:is(:where(.group\/tabs):where([data-orientation=vertical]) *){border-radius:var(--radius)}.group-data-vertical\/tabs\:px-3:is(:where(.group\/tabs):where([data-orientation=vertical]) *){padding-inline:calc(var(--spacing) * 3)}.group-data-vertical\/tabs\:py-1\.5:is(:where(.group\/tabs):where([data-orientation=vertical]) *){padding-block:calc(var(--spacing) * 1.5)}.file\:inline-flex::file-selector-button{display:inline-flex}.file\:h-7::file-selector-button{height:calc(var(--spacing) * 7)}.file\:border-0::file-selector-button{border-style:var(--tw-border-style);border-width:0}.file\:bg-transparent::file-selector-button{background-color:#0000}.file\:text-sm::file-selector-button{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.file\:font-medium::file-selector-button{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.file\:text-foreground::file-selector-button{color:var(--foreground)}.placeholder\:text-muted-foreground::placeholder{color:var(--muted-foreground)}.after\:absolute:after{content:var(--tw-content);position:absolute}.after\:bg-primary:after{content:var(--tw-content);background-color:var(--primary)}.after\:opacity-0:after{content:var(--tw-content);opacity:0}.after\:transition-opacity:after{content:var(--tw-content);transition-property:opacity;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.group-data-horizontal\/tabs\:after\:inset-x-0:is(:where(.group\/tabs):where([data-orientation=horizontal]) *):after{content:var(--tw-content);inset-inline:calc(var(--spacing) * 0)}.group-data-horizontal\/tabs\:after\:bottom-\[-5px\]:is(:where(.group\/tabs):where([data-orientation=horizontal]) *):after{content:var(--tw-content);bottom:-5px}.group-data-horizontal\/tabs\:after\:h-0\.5:is(:where(.group\/tabs):where([data-orientation=horizontal]) *):after{content:var(--tw-content);height:calc(var(--spacing) * .5)}.group-data-vertical\/tabs\:after\:inset-y-0:is(:where(.group\/tabs):where([data-orientation=vertical]) *):after{content:var(--tw-content);inset-block:calc(var(--spacing) * 0)}.group-data-vertical\/tabs\:after\:-right-1:is(:where(.group\/tabs):where([data-orientation=vertical]) *):after{content:var(--tw-content);right:calc(var(--spacing) * -1)}.group-data-vertical\/tabs\:after\:w-0\.5:is(:where(.group\/tabs):where([data-orientation=vertical]) *):after{content:var(--tw-content);width:calc(var(--spacing) * .5)}.first\:pt-0:first-child{padding-top:calc(var(--spacing) * 0)}.last\:pb-0:last-child{padding-bottom:calc(var(--spacing) * 0)}@media (hover:hover){.hover\:border-primary\/20:hover{border-color:var(--primary)}@supports (color:color-mix(in lab, red, red)){.hover\:border-primary\/20:hover{border-color:color-mix(in oklab, var(--primary) 20%, transparent)}}.hover\:bg-accent:hover{background-color:var(--accent)}.hover\:bg-amber-500\/16:hover{background-color:#f99c0029}@supports (color:color-mix(in lab, red, red)){.hover\:bg-amber-500\/16:hover{background-color:color-mix(in oklab, var(--color-amber-500) 16%, transparent)}}.hover\:bg-destructive\/16:hover{background-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.hover\:bg-destructive\/16:hover{background-color:color-mix(in oklab, var(--destructive) 16%, transparent)}}.hover\:bg-destructive\/92:hover{background-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.hover\:bg-destructive\/92:hover{background-color:color-mix(in oklab, var(--destructive) 92%, transparent)}}.hover\:bg-emerald-500\/16:hover{background-color:#00bb7f29}@supports (color:color-mix(in lab, red, red)){.hover\:bg-emerald-500\/16:hover{background-color:color-mix(in oklab, var(--color-emerald-500) 16%, transparent)}}.hover\:bg-muted:hover{background-color:var(--muted)}.hover\:bg-primary\/4:hover{background-color:var(--primary)}@supports (color:color-mix(in lab, red, red)){.hover\:bg-primary\/4:hover{background-color:color-mix(in oklab, var(--primary) 4%, transparent)}}.hover\:bg-primary\/5:hover{background-color:var(--primary)}@supports (color:color-mix(in lab, red, red)){.hover\:bg-primary\/5:hover{background-color:color-mix(in oklab, var(--primary) 5%, transparent)}}.hover\:bg-primary\/6:hover{background-color:var(--primary)}@supports (color:color-mix(in lab, red, red)){.hover\:bg-primary\/6:hover{background-color:color-mix(in oklab, var(--primary) 6%, transparent)}}.hover\:bg-primary\/92:hover{background-color:var(--primary)}@supports (color:color-mix(in lab, red, red)){.hover\:bg-primary\/92:hover{background-color:color-mix(in oklab, var(--primary) 92%, transparent)}}.hover\:bg-secondary\/85:hover{background-color:var(--secondary)}@supports (color:color-mix(in lab, red, red)){.hover\:bg-secondary\/85:hover{background-color:color-mix(in oklab, var(--secondary) 85%, transparent)}}.hover\:bg-transparent:hover{background-color:#0000}.hover\:text-foreground:hover{color:var(--foreground)}.hover\:text-primary-text:hover{color:var(--primary-text)}.hover\:underline:hover{text-decoration-line:underline}.hover\:shadow-sm:hover{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}}.focus-visible\:border-destructive\/40:focus-visible{border-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.focus-visible\:border-destructive\/40:focus-visible{border-color:color-mix(in oklab, var(--destructive) 40%, transparent)}}.focus-visible\:border-ring:focus-visible{border-color:var(--ring)}.focus-visible\:ring-2:focus-visible{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.focus-visible\:ring-\[3px\]:focus-visible{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.focus-visible\:ring-destructive\/20:focus-visible{--tw-ring-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.focus-visible\:ring-destructive\/20:focus-visible{--tw-ring-color:color-mix(in oklab, var(--destructive) 20%, transparent)}}.focus-visible\:ring-ring\/30:focus-visible{--tw-ring-color:var(--ring)}@supports (color:color-mix(in lab, red, red)){.focus-visible\:ring-ring\/30:focus-visible{--tw-ring-color:color-mix(in oklab, var(--ring) 30%, transparent)}}.focus-visible\:ring-ring\/40:focus-visible{--tw-ring-color:var(--ring)}@supports (color:color-mix(in lab, red, red)){.focus-visible\:ring-ring\/40:focus-visible{--tw-ring-color:color-mix(in oklab, var(--ring) 40%, transparent)}}.focus-visible\:ring-ring\/50:focus-visible{--tw-ring-color:var(--ring)}@supports (color:color-mix(in lab, red, red)){.focus-visible\:ring-ring\/50:focus-visible{--tw-ring-color:color-mix(in oklab, var(--ring) 50%, transparent)}}.focus-visible\:outline-1:focus-visible{outline-style:var(--tw-outline-style);outline-width:1px}.active\:cursor-grabbing:active{cursor:grabbing}.disabled\:pointer-events-none:disabled{pointer-events:none}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:opacity-50:disabled{opacity:.5}.has-aria-expanded\:bg-primary\/5:has([aria-expanded=true]){background-color:var(--primary)}@supports (color:color-mix(in lab, red, red)){.has-aria-expanded\:bg-primary\/5:has([aria-expanded=true]){background-color:color-mix(in oklab, var(--primary) 5%, transparent)}}.has-data-\[icon\=inline-end\]\:pr-1\.5:has([data-icon=inline-end]){padding-right:calc(var(--spacing) * 1.5)}.has-data-\[icon\=inline-end\]\:pr-2:has([data-icon=inline-end]){padding-right:calc(var(--spacing) * 2)}.has-data-\[icon\=inline-end\]\:pr-2\.5:has([data-icon=inline-end]){padding-right:calc(var(--spacing) * 2.5)}.has-data-\[icon\=inline-end\]\:pr-3:has([data-icon=inline-end]){padding-right:calc(var(--spacing) * 3)}.has-data-\[icon\=inline-start\]\:pl-1\.5:has([data-icon=inline-start]){padding-left:calc(var(--spacing) * 1.5)}.has-data-\[icon\=inline-start\]\:pl-2:has([data-icon=inline-start]){padding-left:calc(var(--spacing) * 2)}.has-data-\[icon\=inline-start\]\:pl-2\.5:has([data-icon=inline-start]){padding-left:calc(var(--spacing) * 2.5)}.has-data-\[icon\=inline-start\]\:pl-3:has([data-icon=inline-start]){padding-left:calc(var(--spacing) * 3)}.has-data-\[slot\=card-action\]\:grid-cols-\[1fr_auto\]:has([data-slot=card-action]){grid-template-columns:1fr auto}.has-data-\[slot\=card-description\]\:grid-rows-\[auto_auto\]:has([data-slot=card-description]){grid-template-rows:auto auto}.has-\[\>img\:first-child\]\:pt-0:has(>img:first-child){padding-top:calc(var(--spacing) * 0)}.aria-expanded\:border-primary\/20[aria-expanded=true]{border-color:var(--primary)}@supports (color:color-mix(in lab, red, red)){.aria-expanded\:border-primary\/20[aria-expanded=true]{border-color:color-mix(in oklab, var(--primary) 20%, transparent)}}.aria-expanded\:bg-primary\/8[aria-expanded=true]{background-color:var(--primary)}@supports (color:color-mix(in lab, red, red)){.aria-expanded\:bg-primary\/8[aria-expanded=true]{background-color:color-mix(in oklab, var(--primary) 8%, transparent)}}.aria-expanded\:bg-secondary[aria-expanded=true]{background-color:var(--secondary)}.aria-expanded\:text-foreground[aria-expanded=true]{color:var(--foreground)}.aria-expanded\:text-secondary-foreground[aria-expanded=true]{color:var(--secondary-foreground)}.aria-invalid\:border-destructive[aria-invalid=true]{border-color:var(--destructive)}.aria-invalid\:ring-2[aria-invalid=true]{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.aria-invalid\:ring-destructive\/20[aria-invalid=true]{--tw-ring-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.aria-invalid\:ring-destructive\/20[aria-invalid=true]{--tw-ring-color:color-mix(in oklab, var(--destructive) 20%, transparent)}}.data-\[disabled\=true\]\:pointer-events-none[data-disabled=true]{pointer-events:none}.data-\[disabled\=true\]\:opacity-50[data-disabled=true]{opacity:.5}.data-\[side\=bottom\]\:inset-x-0[data-side=bottom]{inset-inline:calc(var(--spacing) * 0)}.data-\[side\=bottom\]\:bottom-0[data-side=bottom]{bottom:calc(var(--spacing) * 0)}.data-\[side\=bottom\]\:h-auto[data-side=bottom]{height:auto}.data-\[side\=bottom\]\:border-t[data-side=bottom]{border-top-style:var(--tw-border-style);border-top-width:1px}.data-\[side\=left\]\:inset-y-0[data-side=left]{inset-block:calc(var(--spacing) * 0)}.data-\[side\=left\]\:left-0[data-side=left]{left:calc(var(--spacing) * 0)}.data-\[side\=left\]\:h-full[data-side=left]{height:100%}.data-\[side\=left\]\:w-3\/4[data-side=left]{width:75%}.data-\[side\=left\]\:border-r[data-side=left]{border-right-style:var(--tw-border-style);border-right-width:1px}.data-\[side\=right\]\:inset-y-0[data-side=right]{inset-block:calc(var(--spacing) * 0)}.data-\[side\=right\]\:right-0[data-side=right]{right:calc(var(--spacing) * 0)}.data-\[side\=right\]\:h-full[data-side=right]{height:100%}.data-\[side\=right\]\:w-3\/4[data-side=right]{width:75%}.data-\[side\=right\]\:border-l[data-side=right]{border-left-style:var(--tw-border-style);border-left-width:1px}.data-\[side\=top\]\:inset-x-0[data-side=top]{inset-inline:calc(var(--spacing) * 0)}.data-\[side\=top\]\:top-0[data-side=top]{top:calc(var(--spacing) * 0)}.data-\[side\=top\]\:h-auto[data-side=top]{height:auto}.data-\[side\=top\]\:border-b[data-side=top]{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.data-\[size\=sm\]\:gap-4[data-size=sm]{gap:calc(var(--spacing) * 4)}.data-\[size\=sm\]\:py-4[data-size=sm]{padding-block:calc(var(--spacing) * 4)}.data-\[state\=selected\]\:bg-primary\/8[data-state=selected]{background-color:var(--primary)}@supports (color:color-mix(in lab, red, red)){.data-\[state\=selected\]\:bg-primary\/8[data-state=selected]{background-color:color-mix(in oklab, var(--primary) 8%, transparent)}}.data-\[variant\=line\]\:rounded-none[data-variant=line]{border-radius:0}.data-\[variant\=line\]\:border-0[data-variant=line]{border-style:var(--tw-border-style);border-width:0}.data-\[variant\=line\]\:bg-transparent[data-variant=line]{background-color:#0000}.data-\[variant\=line\]\:p-0[data-variant=line]{padding:calc(var(--spacing) * 0)}@supports ((-webkit-backdrop-filter:var(--tw)) or (backdrop-filter:var(--tw))){.supports-backdrop-filter\:backdrop-blur-sm{--tw-backdrop-blur:blur(var(--blur-sm));-webkit-backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,)}}@media (width>=40rem){.sm\:max-w-2xl{max-width:var(--container-2xl)}.sm\:max-w-md{max-width:var(--container-md)}.sm\:max-w-xl{max-width:var(--container-xl)}.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.sm\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.sm\:flex-row{flex-direction:row}.sm\:justify-end{justify-content:flex-end}.sm\:gap-2\.5{gap:calc(var(--spacing) * 2.5)}.sm\:px-6{padding-inline:calc(var(--spacing) * 6)}.data-\[side\=left\]\:sm\:max-w-sm[data-side=left],.data-\[side\=right\]\:sm\:max-w-sm[data-side=right]{max-width:var(--container-sm)}}@media (width>=48rem){.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-3{grid-template-columns:repeat(3,minmax(0,1fr))}.md\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.md\:text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}}@media (width>=64rem){.lg\:flex{display:flex}.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\)_auto\]{grid-template-columns:minmax(0,1fr) auto}.lg\:flex-row{flex-direction:row}.lg\:items-center{align-items:center}.lg\:items-end{align-items:flex-end}.lg\:justify-between{justify-content:space-between}}@media (width>=80rem){.xl\:sticky{position:sticky}.xl\:top-\[5\.25rem\]{top:5.25rem}.xl\:col-span-2{grid-column:span 2/span 2}.xl\:flex{display:flex}.xl\:grid{display:grid}.xl\:hidden{display:none}.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))}.xl\:grid-cols-\[0\.95fr_1\.05fr\]{grid-template-columns:.95fr 1.05fr}.xl\:grid-cols-\[1\.05fr_0\.95fr\]{grid-template-columns:1.05fr .95fr}.xl\:grid-cols-\[1\.15fr_0\.85fr\]{grid-template-columns:1.15fr .85fr}.xl\:grid-cols-\[4\.5rem_minmax\(0\,1fr\)\]{grid-template-columns:4.5rem minmax(0,1fr)}.xl\:grid-cols-\[22rem_minmax\(0\,1fr\)\]{grid-template-columns:22rem minmax(0,1fr)}.xl\:grid-cols-\[22rem_minmax\(0\,1fr\)_20rem\]{grid-template-columns:22rem minmax(0,1fr) 20rem}.xl\:grid-cols-\[minmax\(0\,1\.2fr\)_repeat\(3\,minmax\(0\,0\.8fr\)\)\]{grid-template-columns:minmax(0,1.2fr) repeat(3,minmax(0,.8fr))}.xl\:grid-cols-\[minmax\(0\,1\.4fr\)_minmax\(0\,1fr\)\]{grid-template-columns:minmax(0,1.4fr) minmax(0,1fr)}.xl\:flex-col{flex-direction:column}.xl\:flex-row{flex-direction:row}.xl\:items-center{align-items:center}.xl\:justify-between{justify-content:space-between}.xl\:self-start{align-self:flex-start}}@media (width>=96rem){.\32 xl\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}}.dark\:block:is(.dark *){display:block}.dark\:hidden:is(.dark *){display:none}.dark\:bg-amber-500\/18:is(.dark *){background-color:#f99c002e}@supports (color:color-mix(in lab, red, red)){.dark\:bg-amber-500\/18:is(.dark *){background-color:color-mix(in oklab, var(--color-amber-500) 18%, transparent)}}.dark\:bg-destructive\/18:is(.dark *){background-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.dark\:bg-destructive\/18:is(.dark *){background-color:color-mix(in oklab, var(--destructive) 18%, transparent)}}.dark\:bg-destructive\/20:is(.dark *){background-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.dark\:bg-destructive\/20:is(.dark *){background-color:color-mix(in oklab, var(--destructive) 20%, transparent)}}.dark\:bg-emerald-500\/18:is(.dark *){background-color:#00bb7f2e}@supports (color:color-mix(in lab, red, red)){.dark\:bg-emerald-500\/18:is(.dark *){background-color:color-mix(in oklab, var(--color-emerald-500) 18%, transparent)}}.dark\:bg-input\/20:is(.dark *){background-color:var(--input)}@supports (color:color-mix(in lab, red, red)){.dark\:bg-input\/20:is(.dark *){background-color:color-mix(in oklab, var(--input) 20%, transparent)}}.dark\:bg-primary\/18:is(.dark *){background-color:var(--primary)}@supports (color:color-mix(in lab, red, red)){.dark\:bg-primary\/18:is(.dark *){background-color:color-mix(in oklab, var(--primary) 18%, transparent)}}.dark\:bg-sky-500\/18:is(.dark *){background-color:#00a5ef2e}@supports (color:color-mix(in lab, red, red)){.dark\:bg-sky-500\/18:is(.dark *){background-color:color-mix(in oklab, var(--color-sky-500) 18%, transparent)}}.dark\:bg-transparent:is(.dark *){background-color:#0000}.dark\:text-\[\#FCFAF6\]:is(.dark *){color:#fcfaf6}.dark\:text-amber-200:is(.dark *){color:var(--color-amber-200)}.dark\:text-amber-300:is(.dark *){color:var(--color-amber-300)}.dark\:text-amber-400:is(.dark *){color:var(--color-amber-400)}.dark\:text-destructive:is(.dark *){color:var(--destructive)}.dark\:text-emerald-200:is(.dark *){color:var(--color-emerald-200)}.dark\:text-emerald-300:is(.dark *){color:var(--color-emerald-300)}.dark\:text-muted-foreground:is(.dark *){color:var(--muted-foreground)}.dark\:text-sky-200:is(.dark *){color:var(--color-sky-200)}.dark\:text-sky-400:is(.dark *){color:var(--color-sky-400)}@media (hover:hover){.dark\:hover\:bg-amber-500\/24:is(.dark *):hover{background-color:#f99c003d}@supports (color:color-mix(in lab, red, red)){.dark\:hover\:bg-amber-500\/24:is(.dark *):hover{background-color:color-mix(in oklab, var(--color-amber-500) 24%, transparent)}}.dark\:hover\:bg-emerald-500\/24:is(.dark *):hover{background-color:#00bb7f3d}@supports (color:color-mix(in lab, red, red)){.dark\:hover\:bg-emerald-500\/24:is(.dark *):hover{background-color:color-mix(in oklab, var(--color-emerald-500) 24%, transparent)}}.dark\:hover\:bg-muted\/50:is(.dark *):hover{background-color:var(--muted)}@supports (color:color-mix(in lab, red, red)){.dark\:hover\:bg-muted\/50:is(.dark *):hover{background-color:color-mix(in oklab, var(--muted) 50%, transparent)}}.dark\:hover\:text-foreground:is(.dark *):hover{color:var(--foreground)}}.dark\:focus-visible\:ring-destructive\/40:is(.dark *):focus-visible{--tw-ring-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.dark\:focus-visible\:ring-destructive\/40:is(.dark *):focus-visible{--tw-ring-color:color-mix(in oklab, var(--destructive) 40%, transparent)}}.dark\:aria-invalid\:border-destructive\/50:is(.dark *)[aria-invalid=true]{border-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.dark\:aria-invalid\:border-destructive\/50:is(.dark *)[aria-invalid=true]{border-color:color-mix(in oklab, var(--destructive) 50%, transparent)}}.dark\:aria-invalid\:ring-destructive\/40:is(.dark *)[aria-invalid=true]{--tw-ring-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.dark\:aria-invalid\:ring-destructive\/40:is(.dark *)[aria-invalid=true]{--tw-ring-color:color-mix(in oklab, var(--destructive) 40%, transparent)}}.data-open\:animate-in:where([data-state=open]),.data-open\:animate-in:where([data-open]:not([data-open=false])){animation:enter var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,none)}.data-open\:fade-in-0:where([data-state=open]),.data-open\:fade-in-0:where([data-open]:not([data-open=false])){--tw-enter-opacity:0}.data-open\:zoom-in-95:where([data-state=open]),.data-open\:zoom-in-95:where([data-open]:not([data-open=false])){--tw-enter-scale:.95}.data-\[side\=bottom\]\:data-open\:slide-in-from-bottom-10[data-side=bottom]:where([data-state=open]),.data-\[side\=bottom\]\:data-open\:slide-in-from-bottom-10[data-side=bottom]:where([data-open]:not([data-open=false])){--tw-enter-translate-y:calc(.1*100%)}.data-\[side\=left\]\:data-open\:slide-in-from-left-10[data-side=left]:where([data-state=open]),.data-\[side\=left\]\:data-open\:slide-in-from-left-10[data-side=left]:where([data-open]:not([data-open=false])){--tw-enter-translate-x:calc(.1*-100%)}.data-\[side\=right\]\:data-open\:slide-in-from-right-10[data-side=right]:where([data-state=open]),.data-\[side\=right\]\:data-open\:slide-in-from-right-10[data-side=right]:where([data-open]:not([data-open=false])){--tw-enter-translate-x:calc(.1*100%)}.data-\[side\=top\]\:data-open\:slide-in-from-top-10[data-side=top]:where([data-state=open]),.data-\[side\=top\]\:data-open\:slide-in-from-top-10[data-side=top]:where([data-open]:not([data-open=false])){--tw-enter-translate-y:calc(.1*-100%)}.data-closed\:animate-out:where([data-state=closed]),.data-closed\:animate-out:where([data-closed]:not([data-closed=false])){animation:exit var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,none)}.data-closed\:fade-out-0:where([data-state=closed]),.data-closed\:fade-out-0:where([data-closed]:not([data-closed=false])){--tw-exit-opacity:0}.data-closed\:zoom-out-95:where([data-state=closed]),.data-closed\:zoom-out-95:where([data-closed]:not([data-closed=false])){--tw-exit-scale:.95}.data-\[side\=bottom\]\:data-closed\:slide-out-to-bottom-10[data-side=bottom]:where([data-state=closed]),.data-\[side\=bottom\]\:data-closed\:slide-out-to-bottom-10[data-side=bottom]:where([data-closed]:not([data-closed=false])){--tw-exit-translate-y:calc(.1*100%)}.data-\[side\=left\]\:data-closed\:slide-out-to-left-10[data-side=left]:where([data-state=closed]),.data-\[side\=left\]\:data-closed\:slide-out-to-left-10[data-side=left]:where([data-closed]:not([data-closed=false])){--tw-exit-translate-x:calc(.1*-100%)}.data-\[side\=right\]\:data-closed\:slide-out-to-right-10[data-side=right]:where([data-state=closed]),.data-\[side\=right\]\:data-closed\:slide-out-to-right-10[data-side=right]:where([data-closed]:not([data-closed=false])){--tw-exit-translate-x:calc(.1*100%)}.data-\[side\=top\]\:data-closed\:slide-out-to-top-10[data-side=top]:where([data-state=closed]),.data-\[side\=top\]\:data-closed\:slide-out-to-top-10[data-side=top]:where([data-closed]:not([data-closed=false])){--tw-exit-translate-y:calc(.1*-100%)}.data-selected\:bg-accent:where([data-selected=true]){background-color:var(--accent)}.data-selected\:text-foreground:where([data-selected=true]){color:var(--foreground)}.data-active\:border-border:where([data-state=active]),.data-active\:border-border:where([data-active]:not([data-active=false])){border-color:var(--border)}.data-active\:bg-background:where([data-state=active]),.data-active\:bg-background:where([data-active]:not([data-active=false])){background-color:var(--background)}.data-active\:text-foreground:where([data-state=active]),.data-active\:text-foreground:where([data-active]:not([data-active=false])){color:var(--foreground)}.group-data-\[variant\=line\]\/tabs-list\:data-active\:bg-transparent:is(:where(.group\/tabs-list)[data-variant=line] *):where([data-state=active]),.group-data-\[variant\=line\]\/tabs-list\:data-active\:bg-transparent:is(:where(.group\/tabs-list)[data-variant=line] *):where([data-active]:not([data-active=false])){background-color:#0000}:is(.group-data-\[variant\=line\]\/tabs-list\:data-active\:after\:opacity-100:is(:where(.group\/tabs-list)[data-variant=line] *):where([data-state=active]),.group-data-\[variant\=line\]\/tabs-list\:data-active\:after\:opacity-100:is(:where(.group\/tabs-list)[data-variant=line] *):where([data-active]:not([data-active=false]))):after{content:var(--tw-content);opacity:1}.dark\:data-active\:bg-card:is(.dark *):where([data-state=active]),.dark\:data-active\:bg-card:is(.dark *):where([data-active]:not([data-active=false])){background-color:var(--card)}.data-horizontal\:h-2\.5:where([data-orientation=horizontal]){height:calc(var(--spacing) * 2.5)}.data-horizontal\:h-px:where([data-orientation=horizontal]){height:1px}.data-horizontal\:w-full:where([data-orientation=horizontal]){width:100%}.data-horizontal\:flex-col:where([data-orientation=horizontal]){flex-direction:column}.data-horizontal\:border-t:where([data-orientation=horizontal]){border-top-style:var(--tw-border-style);border-top-width:1px}.data-horizontal\:border-t-transparent:where([data-orientation=horizontal]){border-top-color:#0000}.data-vertical\:h-full:where([data-orientation=vertical]){height:100%}.data-vertical\:w-2\.5:where([data-orientation=vertical]){width:calc(var(--spacing) * 2.5)}.data-vertical\:w-px:where([data-orientation=vertical]){width:1px}.data-vertical\:self-stretch:where([data-orientation=vertical]){align-self:stretch}.data-vertical\:border-l:where([data-orientation=vertical]){border-left-style:var(--tw-border-style);border-left-width:1px}.data-vertical\:border-l-transparent:where([data-orientation=vertical]){border-left-color:#0000}.\[\&_\[cmdk-group-heading\]\]\:px-3 [cmdk-group-heading]{padding-inline:calc(var(--spacing) * 3)}.\[\&_\[cmdk-group-heading\]\]\:py-2 [cmdk-group-heading]{padding-block:calc(var(--spacing) * 2)}.\[\&_\[cmdk-group-heading\]\]\:text-xs [cmdk-group-heading]{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.\[\&_\[cmdk-group-heading\]\]\:font-medium [cmdk-group-heading]{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.\[\&_\[cmdk-group-heading\]\]\:tracking-\[0\.16em\] [cmdk-group-heading]{--tw-tracking:.16em;letter-spacing:.16em}.\[\&_\[cmdk-group-heading\]\]\:text-muted-foreground [cmdk-group-heading]{color:var(--muted-foreground)}.\[\&_\[cmdk-group-heading\]\]\:uppercase [cmdk-group-heading]{text-transform:uppercase}.\[\&_svg\]\:pointer-events-none svg{pointer-events:none}.\[\&_svg\]\:shrink-0 svg{flex-shrink:0}.\[\&_svg\:not\(\[class\*\=\'size-\'\]\)\]\:size-3 svg:not([class*=size-]){width:calc(var(--spacing) * 3);height:calc(var(--spacing) * 3)}.\[\&_svg\:not\(\[class\*\=\'size-\'\]\)\]\:size-4 svg:not([class*=size-]){width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4)}.\[\&_tr\]\:border-b tr{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.\[\&_tr\:last-child\]\:border-0 tr:last-child{border-style:var(--tw-border-style);border-width:0}.\[\&\:has\(\[role\=checkbox\]\)\]\:pr-0:has([role=checkbox]){padding-right:calc(var(--spacing) * 0)}.\[\.border-b\]\:pb-6.border-b{padding-bottom:calc(var(--spacing) * 6)}.group-data-\[size\=sm\]\/card\:\[\.border-b\]\:pb-4:is(:where(.group\/card)[data-size=sm] *).border-b{padding-bottom:calc(var(--spacing) * 4)}.\[\.border-t\]\:pt-6.border-t{padding-top:calc(var(--spacing) * 6)}.group-data-\[size\=sm\]\/card\:\[\.border-t\]\:pt-4:is(:where(.group\/card)[data-size=sm] *).border-t{padding-top:calc(var(--spacing) * 4)}:is(.\*\:\[a\]\:underline>*):is(a){text-decoration-line:underline}:is(.\*\:\[a\]\:underline-offset-3>*):is(a){text-underline-offset:3px}@media (hover:hover){.\[a\]\:hover\:bg-destructive\/20:is(a):hover{background-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.\[a\]\:hover\:bg-destructive\/20:is(a):hover{background-color:color-mix(in oklab, var(--destructive) 20%, transparent)}}.\[a\]\:hover\:bg-muted:is(a):hover{background-color:var(--muted)}.\[a\]\:hover\:bg-primary\/80:is(a):hover{background-color:var(--primary)}@supports (color:color-mix(in lab, red, red)){.\[a\]\:hover\:bg-primary\/80:is(a):hover{background-color:color-mix(in oklab, var(--primary) 80%, transparent)}}.\[a\]\:hover\:bg-secondary\/80:is(a):hover{background-color:var(--secondary)}@supports (color:color-mix(in lab, red, red)){.\[a\]\:hover\:bg-secondary\/80:is(a):hover{background-color:color-mix(in oklab, var(--secondary) 80%, transparent)}}.\[a\]\:hover\:text-muted-foreground:is(a):hover{color:var(--muted-foreground)}:is(.\*\:\[a\]\:hover\:text-foreground>*):is(a):hover{color:var(--foreground)}}:is(.\*\:\[img\:first-child\]\:rounded-t-lg>*):is(img:first-child){border-top-left-radius:calc(var(--radius) + 2px);border-top-right-radius:calc(var(--radius) + 2px)}:is(.\*\:\[img\:last-child\]\:rounded-b-lg>*):is(img:last-child){border-bottom-right-radius:calc(var(--radius) + 2px);border-bottom-left-radius:calc(var(--radius) + 2px)}:is(.data-selected\:\*\:\[svg\]\:text-foreground:where([data-selected=true])>*):is(svg){color:var(--foreground)}.\[\&\>svg\]\:pointer-events-none>svg{pointer-events:none}.\[\&\>svg\]\:size-3\!>svg{width:calc(var(--spacing) * 3)!important;height:calc(var(--spacing) * 3)!important}.\[\&\>svg\]\:size-3\.5>svg{width:calc(var(--spacing) * 3.5);height:calc(var(--spacing) * 3.5)}.\[\&\>svg\]\:size-4>svg{width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4)}.\[\&\>tr\]\:last\:border-b-0>tr:last-child{border-bottom-style:var(--tw-border-style);border-bottom-width:0}}@property --tw-animation-delay{syntax:"*";inherits:false;initial-value:0s}@property --tw-animation-direction{syntax:"*";inherits:false;initial-value:normal}@property --tw-animation-duration{syntax:"*";inherits:false}@property --tw-animation-fill-mode{syntax:"*";inherits:false;initial-value:none}@property --tw-animation-iteration-count{syntax:"*";inherits:false;initial-value:1}@property --tw-enter-blur{syntax:"*";inherits:false;initial-value:0}@property --tw-enter-opacity{syntax:"*";inherits:false;initial-value:1}@property --tw-enter-rotate{syntax:"*";inherits:false;initial-value:0}@property --tw-enter-scale{syntax:"*";inherits:false;initial-value:1}@property --tw-enter-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-enter-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-exit-blur{syntax:"*";inherits:false;initial-value:0}@property --tw-exit-opacity{syntax:"*";inherits:false;initial-value:1}@property --tw-exit-rotate{syntax:"*";inherits:false;initial-value:0}@property --tw-exit-scale{syntax:"*";inherits:false;initial-value:1}@property --tw-exit-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-exit-translate-y{syntax:"*";inherits:false;initial-value:0}@property --scroll-fade-t{syntax:"<length-percentage>";inherits:false;initial-value:0}@property --scroll-fade-b{syntax:"<length-percentage>";inherits:false;initial-value:0}@property --scroll-fade-s{syntax:"<length-percentage>";inherits:false;initial-value:0}@property --scroll-fade-e{syntax:"<length-percentage>";inherits:false;initial-value:0}@property --scroll-fade-mask{syntax:"*";inherits:false}@property --shimmer-angle{syntax:"<angle>";inherits:true;initial-value:20deg}@property --shimmer-image{syntax:"*";inherits:false}@property --shimmer-text-fill{syntax:"*";inherits:false}@media (prefers-reduced-motion:reduce){.shimmer{-webkit-text-fill-color:currentColor;background-image:none;animation:none}}@font-face{font-family:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/geist-cyrillic-ext-wght-normal-DjL33-gN.woff2)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/geist-cyrillic-wght-normal-BEAKL7Jp.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/geist-vietnamese-wght-normal-6IgcOCM7.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/geist-latin-ext-wght-normal-DC-KSUi6.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/geist-latin-wght-normal-BgDaEnEv.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--background:oklch(100% 0 0);--foreground:oklch(14.5% 0 0);--card:oklch(100% 0 0);--card-foreground:oklch(14.5% 0 0);--popover:oklch(100% 0 0);--popover-foreground:oklch(14.5% 0 0);--primary:#fd802e;--primary-foreground:#1a1815;--primary-text:#a7470b;--secondary:oklch(96.7% .001 286.375);--secondary-foreground:oklch(21% .006 285.885);--muted:oklch(97% 0 0);--muted-foreground:oklch(55.6% 0 0);--accent:oklch(97% 0 0);--border:oklch(92.2% 0 0);--input:oklch(92.2% 0 0);--ring:#a7470b;--accent-foreground:oklch(20.5% 0 0);--destructive:oklch(57.7% .245 27.325);--destructive-foreground:#fff;--sidebar:oklch(98.5% 0 0);--sidebar-foreground:oklch(14.5% 0 0);--sidebar-border:oklch(92.2% 0 0);--radius:.375rem;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;--chart-1:var(--primary);--chart-2:var(--primary)}@supports (color:color-mix(in lab, red, red)){:root{--chart-2:color-mix(in oklab, var(--primary) 80%, var(--foreground))}}:root{--chart-3:var(--primary)}@supports (color:color-mix(in lab, red, red)){:root{--chart-3:color-mix(in oklab, var(--primary) 65%, var(--foreground))}}:root{--chart-4:var(--primary)}@supports (color:color-mix(in lab, red, red)){:root{--chart-4:color-mix(in oklab, var(--primary) 50%, var(--foreground))}}:root{--chart-5:var(--primary)}@supports (color:color-mix(in lab, red, red)){:root{--chart-5:color-mix(in oklab, var(--primary) 35%, var(--foreground))}}:root{--sidebar-primary:var(--primary);--sidebar-primary-foreground:var(--primary-foreground);--sidebar-accent:oklch(97% 0 0);--sidebar-accent-foreground:oklch(20.5% 0 0);--sidebar-ring:var(--ring)}.dark{--background:oklch(14.5% 0 0);--foreground:oklch(98.5% 0 0);--card:oklch(20.5% 0 0);--card-foreground:oklch(98.5% 0 0);--popover:oklch(20.5% 0 0);--popover-foreground:oklch(98.5% 0 0);--primary:#fd802e;--primary-foreground:#1a1815;--primary-text:#fd802e;--secondary:oklch(27.4% .006 286.033);--secondary-foreground:oklch(98.5% 0 0);--muted:oklch(26.9% 0 0);--muted-foreground:oklch(70.8% 0 0);--accent:oklch(26.9% 0 0);--accent-foreground:oklch(98.5% 0 0);--destructive:oklch(70.4% .191 22.216);--border:oklch(100% 0 0/.1);--input:oklch(100% 0 0/.15);--ring:#fd802e;--chart-1:var(--primary);--chart-2:var(--primary)}@supports (color:color-mix(in lab, red, red)){.dark{--chart-2:color-mix(in oklab, var(--primary) 80%, var(--foreground))}}.dark{--chart-3:var(--primary)}@supports (color:color-mix(in lab, red, red)){.dark{--chart-3:color-mix(in oklab, var(--primary) 65%, var(--foreground))}}.dark{--chart-4:var(--primary)}@supports (color:color-mix(in lab, red, red)){.dark{--chart-4:color-mix(in oklab, var(--primary) 50%, var(--foreground))}}.dark{--chart-5:var(--primary)}@supports (color:color-mix(in lab, red, red)){.dark{--chart-5:color-mix(in oklab, var(--primary) 35%, var(--foreground))}}.dark{--sidebar:oklch(20.5% 0 0);--sidebar-foreground:oklch(98.5% 0 0);--sidebar-primary:var(--primary);--sidebar-primary-foreground:var(--primary-foreground);--sidebar-accent:oklch(26.9% 0 0);--sidebar-accent-foreground:oklch(98.5% 0 0);--sidebar-border:oklch(100% 0 0/.1);--sidebar-ring:var(--ring)}@property --tw-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-z{syntax:"*";inherits:false;initial-value:0}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-space-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-divide-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-leading{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-tracking{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-backdrop-blur{syntax:"*";inherits:false}@property --tw-backdrop-brightness{syntax:"*";inherits:false}@property --tw-backdrop-contrast{syntax:"*";inherits:false}@property --tw-backdrop-grayscale{syntax:"*";inherits:false}@property --tw-backdrop-hue-rotate{syntax:"*";inherits:false}@property --tw-backdrop-invert{syntax:"*";inherits:false}@property --tw-backdrop-opacity{syntax:"*";inherits:false}@property --tw-backdrop-saturate{syntax:"*";inherits:false}@property --tw-backdrop-sepia{syntax:"*";inherits:false}@property --tw-duration{syntax:"*";inherits:false}@property --tw-ease{syntax:"*";inherits:false}@property --tw-content{syntax:"*";inherits:false;initial-value:""}@keyframes spin{to{transform:rotate(360deg)}}@keyframes enter{0%{opacity:var(--tw-enter-opacity,1);transform:translate3d(var(--tw-enter-translate-x,0),var(--tw-enter-translate-y,0),0)scale3d(var(--tw-enter-scale,1),var(--tw-enter-scale,1),var(--tw-enter-scale,1))rotate(var(--tw-enter-rotate,0));filter:blur(var(--tw-enter-blur,0))}}@keyframes exit{to{opacity:var(--tw-exit-opacity,1);transform:translate3d(var(--tw-exit-translate-x,0),var(--tw-exit-translate-y,0),0)scale3d(var(--tw-exit-scale,1),var(--tw-exit-scale,1),var(--tw-exit-scale,1))rotate(var(--tw-exit-rotate,0));filter:blur(var(--tw-exit-blur,0))}}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/findings-page-B4rwF6fZ.js","assets/jsx-runtime-C7oxC63R.js","assets/client-DRYsuOGl.js","assets/format-LNQSSpn6.js","assets/operations-e2CGYKB1.js","assets/operations-CMFVrXEe.css","assets/dist-CmX-h7a4.js","assets/bot-yILPnRgD.js","assets/tabs-vn6v7Bk6.js","assets/copy-Bi5vzoF9.js","assets/dist-DAwYQmf_.js","assets/search-CiooTLck.js","assets/table-BgsSBdke.js","assets/meta-tile-BMtBC-Qq.js","assets/page-header-CIJyycfz.js","assets/live-page-DoNwpPAO.js","assets/chevron-down-BeDJ-Vka.js","assets/overview-page-CmeWH17A.js","assets/circle-alert-BEnMBMT-.js","assets/play-Dwo-9xt6.js","assets/siren-CCBwTSuk.js","assets/scans-page-CuhzWhHx.js"])))=>i.map(i=>d[i]);
|
|
2
|
+
import{a as e,n as t,t as n}from"./jsx-runtime-C7oxC63R.js";import{_ as r,a as i,i as a,n as o,o as s,s as c,u as l,y as u}from"./format-LNQSSpn6.js";import{C as d,D as f,S as p,b as m,i as h,l as g,m as _,n as v,p as y,s as b,t as x,v as S,w as C,x as w,y as T}from"./operations-e2CGYKB1.js";import{_ as E,a as D,f as O,g as ee,h as k,i as A,m as j,r as M,t as te,u as ne}from"./dist-CmX-h7a4.js";import{a as N,c as re,i as ie,l as ae,n as oe,o as P,r as F,s as se,t as ce,u as I}from"./dist-DAwYQmf_.js";var le=class extends S{#e;#t=void 0;#n;#r;constructor(e,t){super(),this.#e=e,this.setOptions(t),this.bindMethods(),this.#i()}bindMethods(){this.mutate=this.mutate.bind(this),this.reset=this.reset.bind(this)}setOptions(e){let t=this.options;this.options=this.#e.defaultMutationOptions(e),y(this.options,t)||this.#e.getMutationCache().notify({type:`observerOptionsUpdated`,mutation:this.#n,observer:this}),t?.mutationKey&&this.options.mutationKey&&b(t.mutationKey)!==b(this.options.mutationKey)?this.reset():this.#n?.state.status===`pending`&&this.#n.setOptions(this.options)}onUnsubscribe(){this.hasListeners()||this.#n?.removeObserver(this)}onMutationUpdate(e){this.#i(),this.#a(e)}getCurrentResult(){return this.#t}reset(){this.#n?.removeObserver(this),this.#n=void 0,this.#i(),this.#a()}mutate(e,t){return this.#r=t,this.#n?.removeObserver(this),this.#n=this.#e.getMutationCache().build(this.#e,this.options),this.#n.addObserver(this),this.#n.execute(e)}#i(){let e=this.#n?.state??v();this.#t={...e,isPending:e.status===`pending`,isSuccess:e.status===`success`,isError:e.status===`error`,isIdle:e.status===`idle`,mutate:this.mutate,reset:this.reset}}#a(e){h.batch(()=>{if(this.#r&&this.hasListeners()){let t=this.#t.variables,n=this.#t.context,r={client:this.#e,meta:this.options.meta,mutationKey:this.options.mutationKey};if(e?.type===`success`){try{this.#r.onSuccess?.(e.data,t,n,r)}catch(e){Promise.reject(e)}try{this.#r.onSettled?.(e.data,null,t,n,r)}catch(e){Promise.reject(e)}}else if(e?.type===`error`){try{this.#r.onError?.(e.error,t,n,r)}catch(e){Promise.reject(e)}try{this.#r.onSettled?.(void 0,e.error,t,n,r)}catch(e){Promise.reject(e)}}}this.listeners.forEach(e=>{e(this.#t)})})}},L=e(t(),1);function ue(e,t){let n=x(t),[r]=L.useState(()=>new le(n,e));L.useEffect(()=>{r.setOptions(e)},[r,e]);let i=L.useSyncExternalStore(L.useCallback(e=>r.subscribe(h.batchCalls(e)),[r]),()=>r.getCurrentResult(),()=>r.getCurrentResult()),a=L.useCallback((e,t)=>{r.mutate(e,t).catch(g)},[r]);if(i.error&&_(r.options.throwOnError,[i.error]))throw i.error;return{...i,mutate:a,mutateAsync:i.mutate}}var de=E(`activity`,[[`path`,{d:`M22 12h-2.48a2 2 0 0 0-1.93 1.46l-2.35 8.36a.25.25 0 0 1-.48 0L9.24 2.18a.25.25 0 0 0-.48 0l-2.35 8.36A2 2 0 0 1 4.49 12H2`,key:`169zse`}]]),fe=E(`chevron-right`,[[`path`,{d:`m9 18 6-6-6-6`,key:`mthhwq`}]]),pe=E(`circle-play`,[[`path`,{d:`M9 9.003a1 1 0 0 1 1.517-.859l4.997 2.997a1 1 0 0 1 0 1.718l-4.997 2.997A1 1 0 0 1 9 14.996z`,key:`kmsa83`}],[`circle`,{cx:`12`,cy:`12`,r:`10`,key:`1mglay`}]]),me=E(`command`,[[`path`,{d:`M15 6v12a3 3 0 1 0 3-3H6a3 3 0 1 0 3 3V6a3 3 0 1 0-3 3h12a3 3 0 1 0-3-3`,key:`11bfej`}]]),he=E(`file-search`,[[`path`,{d:`M6 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.704.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2z`,key:`1oefj6`}],[`path`,{d:`M14 2v5a1 1 0 0 0 1 1h5`,key:`wfsgrz`}],[`circle`,{cx:`11.5`,cy:`14.5`,r:`2.5`,key:`1bq0ko`}],[`path`,{d:`M13.3 16.3 15 18`,key:`2quom7`}]]),ge=E(`layout-dashboard`,[[`rect`,{width:`7`,height:`9`,x:`3`,y:`3`,rx:`1`,key:`10lvy0`}],[`rect`,{width:`7`,height:`5`,x:`14`,y:`3`,rx:`1`,key:`16une8`}],[`rect`,{width:`7`,height:`9`,x:`14`,y:`12`,rx:`1`,key:`1hutg5`}],[`rect`,{width:`7`,height:`5`,x:`3`,y:`16`,rx:`1`,key:`ldoo1y`}]]),_e=E(`loader-circle`,[[`path`,{d:`M21 12a9 9 0 1 1-6.219-8.56`,key:`13zald`}]]),ve=E(`menu`,[[`path`,{d:`M4 5h16`,key:`1tepv9`}],[`path`,{d:`M4 12h16`,key:`1lakjw`}],[`path`,{d:`M4 19h16`,key:`1djgab`}]]),ye=E(`radar`,[[`path`,{d:`M19.07 4.93A10 10 0 0 0 6.99 3.34`,key:`z3du51`}],[`path`,{d:`M4 6h.01`,key:`oypzma`}],[`path`,{d:`M2.29 9.62A10 10 0 1 0 21.31 8.35`,key:`qzzz0`}],[`path`,{d:`M16.24 7.76A6 6 0 1 0 8.23 16.67`,key:`1yjesh`}],[`path`,{d:`M12 18h.01`,key:`mhygvu`}],[`path`,{d:`M17.99 11.66A6 6 0 0 1 15.77 16.67`,key:`1u2y91`}],[`circle`,{cx:`12`,cy:`12`,r:`2`,key:`1c9p78`}],[`path`,{d:`m13.41 10.59 5.66-5.66`,key:`mhq4k0`}]]),be=E(`radio`,[[`path`,{d:`M16.247 7.761a6 6 0 0 1 0 8.478`,key:`1fwjs5`}],[`path`,{d:`M19.075 4.933a10 10 0 0 1 0 14.134`,key:`ehdyv1`}],[`path`,{d:`M4.925 19.067a10 10 0 0 1 0-14.134`,key:`1q22gi`}],[`path`,{d:`M7.753 16.239a6 6 0 0 1 0-8.478`,key:`r2q7qm`}],[`circle`,{cx:`12`,cy:`12`,r:`2`,key:`1c9p78`}]]),xe=E(`shield-check`,[[`path`,{d:`M20 13c0 5-3.5 7.5-7.66 8.95a1 1 0 0 1-.67-.01C7.5 20.5 4 18 4 13V6a1 1 0 0 1 1-1c2 0 4.5-1.2 6.24-2.72a1.17 1.17 0 0 1 1.52 0C14.51 3.81 17 5 19 5a1 1 0 0 1 1 1z`,key:`oel41y`}],[`path`,{d:`m9 12 2 2 4-4`,key:`dzmm74`}]]),Se=E(`shield-off`,[[`path`,{d:`m2 2 20 20`,key:`1ooewy`}],[`path`,{d:`M5 5a1 1 0 0 0-1 1v7c0 5 3.5 7.5 7.67 8.94a1 1 0 0 0 .67.01c2.35-.82 4.48-1.97 5.9-3.71`,key:`1jlk70`}],[`path`,{d:`M9.309 3.652A12.252 12.252 0 0 0 11.24 2.28a1.17 1.17 0 0 1 1.52 0C14.51 3.81 17 5 19 5a1 1 0 0 1 1 1v7a9.784 9.784 0 0 1-.08 1.264`,key:`18rp1v`}]]),Ce=E(`triangle-alert`,[[`path`,{d:`m21.73 18-8-14a2 2 0 0 0-3.48 0l-8 14A2 2 0 0 0 4 21h16a2 2 0 0 0 1.73-3`,key:`wmoenq`}],[`path`,{d:`M12 9v4`,key:`juzpu7`}],[`path`,{d:`M12 17h.01`,key:`p32p05`}]]);function we(e){var t,n,r=``;if(typeof e==`string`||typeof e==`number`)r+=e;else if(typeof e==`object`){if(Array.isArray(e)){var i=e.length;for(t=0;t<i;t++)e[t]&&(n=we(e[t]))&&(r&&(r+=` `),r+=n)}else for(n in e)e[n]&&(r&&(r+=` `),r+=n)}return r}function Te(){for(var e,t,n=0,r=``,i=arguments.length;n<i;n++)(e=arguments[n])&&(t=we(e))&&(r&&(r+=` `),r+=t);return r}var R=n(),Ee=e=>typeof e==`boolean`?`${e}`:e===0?`0`:e,De=Te,Oe=(e,t)=>n=>{if(t?.variants==null)return De(e,n?.class,n?.className);let{variants:r,defaultVariants:i}=t,a=Object.keys(r).map(e=>{let t=n?.[e],a=i?.[e];if(t===null)return null;let o=Ee(t)||Ee(a);return r[e][o]}),o=n&&Object.entries(n).reduce((e,t)=>{let[n,r]=t;return r===void 0||(e[n]=r),e},{});return De(e,a,t?.compoundVariants?.reduce((e,t)=>{let{class:n,className:r,...a}=t;return Object.entries(a).every(e=>{let[t,n]=e;return Array.isArray(n)?n.includes({...i,...o}[t]):{...i,...o}[t]===n})?[...e,n,r]:e},[]),n?.class,n?.className)},ke=(e,t)=>{let n=Array(e.length+t.length);for(let t=0;t<e.length;t++)n[t]=e[t];for(let r=0;r<t.length;r++)n[e.length+r]=t[r];return n},Ae=(e,t)=>({classGroupId:e,validator:t}),je=(e=new Map,t=null,n)=>({nextPart:e,validators:t,classGroupId:n}),Me=`-`,Ne=[],Pe=`arbitrary..`,Fe=e=>{let t=Re(e),{conflictingClassGroups:n,conflictingClassGroupModifiers:r}=e;return{getClassGroupId:e=>{if(e.startsWith(`[`)&&e.endsWith(`]`))return Le(e);let n=e.split(Me);return Ie(n,+(n[0]===``&&n.length>1),t)},getConflictingClassGroupIds:(e,t)=>{if(t){let t=r[e],i=n[e];return t?i?ke(i,t):t:i||Ne}return n[e]||Ne}}},Ie=(e,t,n)=>{if(e.length-t===0)return n.classGroupId;let r=e[t],i=n.nextPart.get(r);if(i){let n=Ie(e,t+1,i);if(n)return n}let a=n.validators;if(a===null)return;let o=t===0?e.join(Me):e.slice(t).join(Me),s=a.length;for(let e=0;e<s;e++){let t=a[e];if(t.validator(o))return t.classGroupId}},Le=e=>e.slice(1,-1).indexOf(`:`)===-1?void 0:(()=>{let t=e.slice(1,-1),n=t.indexOf(`:`),r=t.slice(0,n);return r?Pe+r:void 0})(),Re=e=>{let{theme:t,classGroups:n}=e;return ze(n,t)},ze=(e,t)=>{let n=je();for(let r in e){let i=e[r];Be(i,n,r,t)}return n},Be=(e,t,n,r)=>{let i=e.length;for(let a=0;a<i;a++){let i=e[a];Ve(i,t,n,r)}},Ve=(e,t,n,r)=>{if(typeof e==`string`){He(e,t,n);return}if(typeof e==`function`){Ue(e,t,n,r);return}We(e,t,n,r)},He=(e,t,n)=>{let r=e===``?t:Ge(t,e);r.classGroupId=n},Ue=(e,t,n,r)=>{if(Ke(e)){Be(e(r),t,n,r);return}t.validators===null&&(t.validators=[]),t.validators.push(Ae(n,e))},We=(e,t,n,r)=>{let i=Object.entries(e),a=i.length;for(let e=0;e<a;e++){let[a,o]=i[e];Be(o,Ge(t,a),n,r)}},Ge=(e,t)=>{let n=e,r=t.split(Me),i=r.length;for(let e=0;e<i;e++){let t=r[e],i=n.nextPart.get(t);i||(i=je(),n.nextPart.set(t,i)),n=i}return n},Ke=e=>`isThemeGetter`in e&&e.isThemeGetter===!0,qe=e=>{if(e<1)return{get:()=>void 0,set:()=>{}};let t=0,n=Object.create(null),r=Object.create(null),i=(i,a)=>{n[i]=a,t++,t>e&&(t=0,r=n,n=Object.create(null))};return{get(e){let t=n[e];if(t!==void 0)return t;if((t=r[e])!==void 0)return i(e,t),t},set(e,t){e in n?n[e]=t:i(e,t)}}},Je=`!`,Ye=`:`,Xe=[],Ze=(e,t,n,r,i)=>({modifiers:e,hasImportantModifier:t,baseClassName:n,maybePostfixModifierPosition:r,isExternal:i}),Qe=e=>{let{prefix:t,experimentalParseClassName:n}=e,r=e=>{let t=[],n=0,r=0,i=0,a,o=e.length;for(let s=0;s<o;s++){let o=e[s];if(n===0&&r===0){if(o===Ye){t.push(e.slice(i,s)),i=s+1;continue}if(o===`/`){a=s;continue}}o===`[`?n++:o===`]`?n--:o===`(`?r++:o===`)`&&r--}let s=t.length===0?e:e.slice(i),c=s,l=!1;s.endsWith(Je)?(c=s.slice(0,-1),l=!0):s.startsWith(Je)&&(c=s.slice(1),l=!0);let u=a&&a>i?a-i:void 0;return Ze(t,l,c,u)};if(t){let e=t+Ye,n=r;r=t=>t.startsWith(e)?n(t.slice(e.length)):Ze(Xe,!1,t,void 0,!0)}if(n){let e=r;r=t=>n({className:t,parseClassName:e})}return r},$e=e=>{let t=new Map;return e.orderSensitiveModifiers.forEach((e,n)=>{t.set(e,1e6+n)}),e=>{let n=[],r=[];for(let i=0;i<e.length;i++){let a=e[i],o=a[0]===`[`,s=t.has(a);o||s?(r.length>0&&(r.sort(),n.push(...r),r=[]),n.push(a)):r.push(a)}return r.length>0&&(r.sort(),n.push(...r)),n}},et=e=>({cache:qe(e.cacheSize),parseClassName:Qe(e),sortModifiers:$e(e),postfixLookupClassGroupIds:tt(e),...Fe(e)}),tt=e=>{let t=Object.create(null),n=e.postfixLookupClassGroups;if(n)for(let e=0;e<n.length;e++)t[n[e]]=!0;return t},nt=/\s+/,rt=(e,t)=>{let{parseClassName:n,getClassGroupId:r,getConflictingClassGroupIds:i,sortModifiers:a,postfixLookupClassGroupIds:o}=t,s=[],c=e.trim().split(nt),l=``;for(let e=c.length-1;e>=0;--e){let t=c[e],{isExternal:u,modifiers:d,hasImportantModifier:f,baseClassName:p,maybePostfixModifierPosition:m}=n(t);if(u){l=t+(l.length>0?` `+l:l);continue}let h=!!m,g;if(h){g=r(p.substring(0,m));let e=g&&o[g]?r(p):void 0;e&&e!==g&&(g=e,h=!1)}else g=r(p);if(!g){if(!h){l=t+(l.length>0?` `+l:l);continue}if(g=r(p),!g){l=t+(l.length>0?` `+l:l);continue}h=!1}let _=d.length===0?``:d.length===1?d[0]:a(d).join(`:`),v=f?_+Je:_,y=v+g;if(s.indexOf(y)>-1)continue;s.push(y);let b=i(g,h);for(let e=0;e<b.length;++e){let t=b[e];s.push(v+t)}l=t+(l.length>0?` `+l:l)}return l},it=(...e)=>{let t=0,n,r,i=``;for(;t<e.length;)(n=e[t++])&&(r=at(n))&&(i&&(i+=` `),i+=r);return i},at=e=>{if(typeof e==`string`)return e;let t,n=``;for(let r=0;r<e.length;r++)e[r]&&(t=at(e[r]))&&(n&&(n+=` `),n+=t);return n},ot=(e,...t)=>{let n,r,i,a,o=o=>(n=et(t.reduce((e,t)=>t(e),e())),r=n.cache.get,i=n.cache.set,a=s,s(o)),s=e=>{let t=r(e);if(t)return t;let a=rt(e,n);return i(e,a),a};return a=o,(...e)=>a(it(...e))},st=[],z=e=>{let t=t=>t[e]||st;return t.isThemeGetter=!0,t},ct=/^\[(?:(\w[\w-]*):)?(.+)\]$/i,lt=/^\((?:(\w[\w-]*):)?(.+)\)$/i,ut=/^\d+(?:\.\d+)?\/\d+(?:\.\d+)?$/,dt=/^(\d+(\.\d+)?)?(xs|sm|md|lg|xl)$/,ft=/\d+(%|px|r?em|[sdl]?v([hwib]|min|max)|pt|pc|in|cm|mm|cap|ch|ex|r?lh|cq(w|h|i|b|min|max))|\b(calc|min|max|clamp)\(.+\)|^0$/,pt=/^(rgba?|hsla?|hwb|(ok)?(lab|lch)|color-mix)\(.+\)$/,mt=/^(inset_)?-?((\d+)?\.?(\d+)[a-z]+|0)_-?((\d+)?\.?(\d+)[a-z]+|0)/,ht=/^(url|image|image-set|cross-fade|element|(repeating-)?(linear|radial|conic)-gradient)\(.+\)$/,B=e=>ut.test(e),V=e=>!!e&&!Number.isNaN(Number(e)),H=e=>!!e&&Number.isInteger(Number(e)),gt=e=>e.endsWith(`%`)&&V(e.slice(0,-1)),U=e=>dt.test(e),_t=()=>!0,vt=e=>ft.test(e)&&!pt.test(e),yt=()=>!1,bt=e=>mt.test(e),xt=e=>ht.test(e),St=e=>!W(e)&&!K(e),Ct=e=>e.startsWith(`@container`)&&(e[10]===`/`&&e[11]!==void 0||e[11]===`s`&&e[16]!==void 0&&e.startsWith(`-size/`,10)||e[11]===`n`&&e[18]!==void 0&&e.startsWith(`-normal/`,10)),wt=e=>q(e,Bt,yt),W=e=>ct.test(e),G=e=>q(e,Vt,vt),Tt=e=>q(e,Ht,V),Et=e=>q(e,Wt,_t),Dt=e=>q(e,Ut,yt),Ot=e=>q(e,Rt,yt),kt=e=>q(e,zt,xt),At=e=>q(e,Gt,bt),K=e=>lt.test(e),jt=e=>J(e,Vt),Mt=e=>J(e,Ut),Nt=e=>J(e,Rt),Pt=e=>J(e,Bt),Ft=e=>J(e,zt),It=e=>J(e,Gt,!0),Lt=e=>J(e,Wt,!0),q=(e,t,n)=>{let r=ct.exec(e);return r?r[1]?t(r[1]):n(r[2]):!1},J=(e,t,n=!1)=>{let r=lt.exec(e);return r?r[1]?t(r[1]):n:!1},Rt=e=>e===`position`||e===`percentage`,zt=e=>e===`image`||e===`url`,Bt=e=>e===`length`||e===`size`||e===`bg-size`,Vt=e=>e===`length`,Ht=e=>e===`number`,Ut=e=>e===`family-name`,Wt=e=>e===`number`||e===`weight`,Gt=e=>e===`shadow`,Kt=ot(()=>{let e=z(`color`),t=z(`font`),n=z(`text`),r=z(`font-weight`),i=z(`tracking`),a=z(`leading`),o=z(`breakpoint`),s=z(`container`),c=z(`spacing`),l=z(`radius`),u=z(`shadow`),d=z(`inset-shadow`),f=z(`text-shadow`),p=z(`drop-shadow`),m=z(`blur`),h=z(`perspective`),g=z(`aspect`),_=z(`ease`),v=z(`animate`),y=()=>[`auto`,`avoid`,`all`,`avoid-page`,`page`,`left`,`right`,`column`],b=()=>[`center`,`top`,`bottom`,`left`,`right`,`top-left`,`left-top`,`top-right`,`right-top`,`bottom-right`,`right-bottom`,`bottom-left`,`left-bottom`],x=()=>[...b(),K,W],S=()=>[`auto`,`hidden`,`clip`,`visible`,`scroll`],C=()=>[`auto`,`contain`,`none`],w=()=>[K,W,c],T=()=>[B,`full`,`auto`,...w()],E=()=>[H,`none`,`subgrid`,K,W],D=()=>[`auto`,{span:[`full`,H,K,W]},H,K,W],O=()=>[H,`auto`,K,W],ee=()=>[`auto`,`min`,`max`,`fr`,K,W],k=()=>[`start`,`end`,`center`,`between`,`around`,`evenly`,`stretch`,`baseline`,`center-safe`,`end-safe`],A=()=>[`start`,`end`,`center`,`stretch`,`center-safe`,`end-safe`],j=()=>[`auto`,...w()],M=()=>[B,`auto`,`full`,`dvw`,`dvh`,`lvw`,`lvh`,`svw`,`svh`,`min`,`max`,`fit`,...w()],te=()=>[B,`screen`,`full`,`dvw`,`lvw`,`svw`,`min`,`max`,`fit`,...w()],ne=()=>[B,`screen`,`full`,`lh`,`dvh`,`lvh`,`svh`,`min`,`max`,`fit`,...w()],N=()=>[e,K,W],re=()=>[...b(),Nt,Ot,{position:[K,W]}],ie=()=>[`no-repeat`,{repeat:[``,`x`,`y`,`space`,`round`]}],ae=()=>[`auto`,`cover`,`contain`,Pt,wt,{size:[K,W]}],oe=()=>[gt,jt,G],P=()=>[``,`none`,`full`,l,K,W],F=()=>[``,V,jt,G],se=()=>[`solid`,`dashed`,`dotted`,`double`],ce=()=>[`normal`,`multiply`,`screen`,`overlay`,`darken`,`lighten`,`color-dodge`,`color-burn`,`hard-light`,`soft-light`,`difference`,`exclusion`,`hue`,`saturation`,`color`,`luminosity`],I=()=>[V,gt,Nt,Ot],le=()=>[``,`none`,m,K,W],L=()=>[`none`,V,K,W],ue=()=>[`none`,V,K,W],de=()=>[V,K,W],fe=()=>[B,`full`,...w()];return{cacheSize:500,theme:{animate:[`spin`,`ping`,`pulse`,`bounce`],aspect:[`video`],blur:[U],breakpoint:[U],color:[_t],container:[U],"drop-shadow":[U],ease:[`in`,`out`,`in-out`],font:[St],"font-weight":[`thin`,`extralight`,`light`,`normal`,`medium`,`semibold`,`bold`,`extrabold`,`black`],"inset-shadow":[U],leading:[`none`,`tight`,`snug`,`normal`,`relaxed`,`loose`],perspective:[`dramatic`,`near`,`normal`,`midrange`,`distant`,`none`],radius:[U],shadow:[U],spacing:[`px`,V],text:[U],"text-shadow":[U],tracking:[`tighter`,`tight`,`normal`,`wide`,`wider`,`widest`]},classGroups:{aspect:[{aspect:[`auto`,`square`,B,W,K,g]}],container:[`container`],"container-type":[{"@container":[``,`normal`,`size`,K,W]}],"container-named":[Ct],columns:[{columns:[V,W,K,s]}],"break-after":[{"break-after":y()}],"break-before":[{"break-before":y()}],"break-inside":[{"break-inside":[`auto`,`avoid`,`avoid-page`,`avoid-column`]}],"box-decoration":[{"box-decoration":[`slice`,`clone`]}],box:[{box:[`border`,`content`]}],display:[`block`,`inline-block`,`inline`,`flex`,`inline-flex`,`table`,`inline-table`,`table-caption`,`table-cell`,`table-column`,`table-column-group`,`table-footer-group`,`table-header-group`,`table-row-group`,`table-row`,`flow-root`,`grid`,`inline-grid`,`contents`,`list-item`,`hidden`],sr:[`sr-only`,`not-sr-only`],float:[{float:[`right`,`left`,`none`,`start`,`end`]}],clear:[{clear:[`left`,`right`,`both`,`none`,`start`,`end`]}],isolation:[`isolate`,`isolation-auto`],"object-fit":[{object:[`contain`,`cover`,`fill`,`none`,`scale-down`]}],"object-position":[{object:x()}],overflow:[{overflow:S()}],"overflow-x":[{"overflow-x":S()}],"overflow-y":[{"overflow-y":S()}],overscroll:[{overscroll:C()}],"overscroll-x":[{"overscroll-x":C()}],"overscroll-y":[{"overscroll-y":C()}],position:[`static`,`fixed`,`absolute`,`relative`,`sticky`],inset:[{inset:T()}],"inset-x":[{"inset-x":T()}],"inset-y":[{"inset-y":T()}],start:[{"inset-s":T(),start:T()}],end:[{"inset-e":T(),end:T()}],"inset-bs":[{"inset-bs":T()}],"inset-be":[{"inset-be":T()}],top:[{top:T()}],right:[{right:T()}],bottom:[{bottom:T()}],left:[{left:T()}],visibility:[`visible`,`invisible`,`collapse`],z:[{z:[H,`auto`,K,W]}],basis:[{basis:[B,`full`,`auto`,s,...w()]}],"flex-direction":[{flex:[`row`,`row-reverse`,`col`,`col-reverse`]}],"flex-wrap":[{flex:[`nowrap`,`wrap`,`wrap-reverse`]}],flex:[{flex:[V,B,`auto`,`initial`,`none`,W]}],grow:[{grow:[``,V,K,W]}],shrink:[{shrink:[``,V,K,W]}],order:[{order:[H,`first`,`last`,`none`,K,W]}],"grid-cols":[{"grid-cols":E()}],"col-start-end":[{col:D()}],"col-start":[{"col-start":O()}],"col-end":[{"col-end":O()}],"grid-rows":[{"grid-rows":E()}],"row-start-end":[{row:D()}],"row-start":[{"row-start":O()}],"row-end":[{"row-end":O()}],"grid-flow":[{"grid-flow":[`row`,`col`,`dense`,`row-dense`,`col-dense`]}],"auto-cols":[{"auto-cols":ee()}],"auto-rows":[{"auto-rows":ee()}],gap:[{gap:w()}],"gap-x":[{"gap-x":w()}],"gap-y":[{"gap-y":w()}],"justify-content":[{justify:[...k(),`normal`]}],"justify-items":[{"justify-items":[...A(),`normal`]}],"justify-self":[{"justify-self":[`auto`,...A()]}],"align-content":[{content:[`normal`,...k()]}],"align-items":[{items:[...A(),{baseline:[``,`last`]}]}],"align-self":[{self:[`auto`,...A(),{baseline:[``,`last`]}]}],"place-content":[{"place-content":k()}],"place-items":[{"place-items":[...A(),`baseline`]}],"place-self":[{"place-self":[`auto`,...A()]}],p:[{p:w()}],px:[{px:w()}],py:[{py:w()}],ps:[{ps:w()}],pe:[{pe:w()}],pbs:[{pbs:w()}],pbe:[{pbe:w()}],pt:[{pt:w()}],pr:[{pr:w()}],pb:[{pb:w()}],pl:[{pl:w()}],m:[{m:j()}],mx:[{mx:j()}],my:[{my:j()}],ms:[{ms:j()}],me:[{me:j()}],mbs:[{mbs:j()}],mbe:[{mbe:j()}],mt:[{mt:j()}],mr:[{mr:j()}],mb:[{mb:j()}],ml:[{ml:j()}],"space-x":[{"space-x":w()}],"space-x-reverse":[`space-x-reverse`],"space-y":[{"space-y":w()}],"space-y-reverse":[`space-y-reverse`],size:[{size:M()}],"inline-size":[{inline:[`auto`,...te()]}],"min-inline-size":[{"min-inline":[`auto`,...te()]}],"max-inline-size":[{"max-inline":[`none`,...te()]}],"block-size":[{block:[`auto`,...ne()]}],"min-block-size":[{"min-block":[`auto`,...ne()]}],"max-block-size":[{"max-block":[`none`,...ne()]}],w:[{w:[s,`screen`,...M()]}],"min-w":[{"min-w":[s,`screen`,`none`,...M()]}],"max-w":[{"max-w":[s,`screen`,`none`,`prose`,{screen:[o]},...M()]}],h:[{h:[`screen`,`lh`,...M()]}],"min-h":[{"min-h":[`screen`,`lh`,`none`,...M()]}],"max-h":[{"max-h":[`screen`,`lh`,...M()]}],"font-size":[{text:[`base`,n,jt,G]}],"font-smoothing":[`antialiased`,`subpixel-antialiased`],"font-style":[`italic`,`not-italic`],"font-weight":[{font:[r,Lt,Et]}],"font-stretch":[{"font-stretch":[`ultra-condensed`,`extra-condensed`,`condensed`,`semi-condensed`,`normal`,`semi-expanded`,`expanded`,`extra-expanded`,`ultra-expanded`,gt,W]}],"font-family":[{font:[Mt,Dt,t]}],"font-features":[{"font-features":[W]}],"fvn-normal":[`normal-nums`],"fvn-ordinal":[`ordinal`],"fvn-slashed-zero":[`slashed-zero`],"fvn-figure":[`lining-nums`,`oldstyle-nums`],"fvn-spacing":[`proportional-nums`,`tabular-nums`],"fvn-fraction":[`diagonal-fractions`,`stacked-fractions`],tracking:[{tracking:[i,K,W]}],"line-clamp":[{"line-clamp":[V,`none`,K,Tt]}],leading:[{leading:[a,...w()]}],"list-image":[{"list-image":[`none`,K,W]}],"list-style-position":[{list:[`inside`,`outside`]}],"list-style-type":[{list:[`disc`,`decimal`,`none`,K,W]}],"text-alignment":[{text:[`left`,`center`,`right`,`justify`,`start`,`end`]}],"placeholder-color":[{placeholder:N()}],"text-color":[{text:N()}],"text-decoration":[`underline`,`overline`,`line-through`,`no-underline`],"text-decoration-style":[{decoration:[...se(),`wavy`]}],"text-decoration-thickness":[{decoration:[V,`from-font`,`auto`,K,G]}],"text-decoration-color":[{decoration:N()}],"underline-offset":[{"underline-offset":[V,`auto`,K,W]}],"text-transform":[`uppercase`,`lowercase`,`capitalize`,`normal-case`],"text-overflow":[`truncate`,`text-ellipsis`,`text-clip`],"text-wrap":[{text:[`wrap`,`nowrap`,`balance`,`pretty`]}],indent:[{indent:w()}],"tab-size":[{tab:[H,K,W]}],"vertical-align":[{align:[`baseline`,`top`,`middle`,`bottom`,`text-top`,`text-bottom`,`sub`,`super`,K,W]}],whitespace:[{whitespace:[`normal`,`nowrap`,`pre`,`pre-line`,`pre-wrap`,`break-spaces`]}],break:[{break:[`normal`,`words`,`all`,`keep`]}],wrap:[{wrap:[`break-word`,`anywhere`,`normal`]}],hyphens:[{hyphens:[`none`,`manual`,`auto`]}],content:[{content:[`none`,K,W]}],"bg-attachment":[{bg:[`fixed`,`local`,`scroll`]}],"bg-clip":[{"bg-clip":[`border`,`padding`,`content`,`text`]}],"bg-origin":[{"bg-origin":[`border`,`padding`,`content`]}],"bg-position":[{bg:re()}],"bg-repeat":[{bg:ie()}],"bg-size":[{bg:ae()}],"bg-image":[{bg:[`none`,{linear:[{to:[`t`,`tr`,`r`,`br`,`b`,`bl`,`l`,`tl`]},H,K,W],radial:[``,K,W],conic:[H,K,W]},Ft,kt]}],"bg-color":[{bg:N()}],"gradient-from-pos":[{from:oe()}],"gradient-via-pos":[{via:oe()}],"gradient-to-pos":[{to:oe()}],"gradient-from":[{from:N()}],"gradient-via":[{via:N()}],"gradient-to":[{to:N()}],rounded:[{rounded:P()}],"rounded-s":[{"rounded-s":P()}],"rounded-e":[{"rounded-e":P()}],"rounded-t":[{"rounded-t":P()}],"rounded-r":[{"rounded-r":P()}],"rounded-b":[{"rounded-b":P()}],"rounded-l":[{"rounded-l":P()}],"rounded-ss":[{"rounded-ss":P()}],"rounded-se":[{"rounded-se":P()}],"rounded-ee":[{"rounded-ee":P()}],"rounded-es":[{"rounded-es":P()}],"rounded-tl":[{"rounded-tl":P()}],"rounded-tr":[{"rounded-tr":P()}],"rounded-br":[{"rounded-br":P()}],"rounded-bl":[{"rounded-bl":P()}],"border-w":[{border:F()}],"border-w-x":[{"border-x":F()}],"border-w-y":[{"border-y":F()}],"border-w-s":[{"border-s":F()}],"border-w-e":[{"border-e":F()}],"border-w-bs":[{"border-bs":F()}],"border-w-be":[{"border-be":F()}],"border-w-t":[{"border-t":F()}],"border-w-r":[{"border-r":F()}],"border-w-b":[{"border-b":F()}],"border-w-l":[{"border-l":F()}],"divide-x":[{"divide-x":F()}],"divide-x-reverse":[`divide-x-reverse`],"divide-y":[{"divide-y":F()}],"divide-y-reverse":[`divide-y-reverse`],"border-style":[{border:[...se(),`hidden`,`none`]}],"divide-style":[{divide:[...se(),`hidden`,`none`]}],"border-color":[{border:N()}],"border-color-x":[{"border-x":N()}],"border-color-y":[{"border-y":N()}],"border-color-s":[{"border-s":N()}],"border-color-e":[{"border-e":N()}],"border-color-bs":[{"border-bs":N()}],"border-color-be":[{"border-be":N()}],"border-color-t":[{"border-t":N()}],"border-color-r":[{"border-r":N()}],"border-color-b":[{"border-b":N()}],"border-color-l":[{"border-l":N()}],"divide-color":[{divide:N()}],"outline-style":[{outline:[...se(),`none`,`hidden`]}],"outline-offset":[{"outline-offset":[V,K,W]}],"outline-w":[{outline:[``,V,jt,G]}],"outline-color":[{outline:N()}],shadow:[{shadow:[``,`none`,u,It,At]}],"shadow-color":[{shadow:N()}],"inset-shadow":[{"inset-shadow":[`none`,d,It,At]}],"inset-shadow-color":[{"inset-shadow":N()}],"ring-w":[{ring:F()}],"ring-w-inset":[`ring-inset`],"ring-color":[{ring:N()}],"ring-offset-w":[{"ring-offset":[V,G]}],"ring-offset-color":[{"ring-offset":N()}],"inset-ring-w":[{"inset-ring":F()}],"inset-ring-color":[{"inset-ring":N()}],"text-shadow":[{"text-shadow":[`none`,f,It,At]}],"text-shadow-color":[{"text-shadow":N()}],opacity:[{opacity:[V,K,W]}],"mix-blend":[{"mix-blend":[...ce(),`plus-darker`,`plus-lighter`]}],"bg-blend":[{"bg-blend":ce()}],"mask-clip":[{"mask-clip":[`border`,`padding`,`content`,`fill`,`stroke`,`view`]},`mask-no-clip`],"mask-composite":[{mask:[`add`,`subtract`,`intersect`,`exclude`]}],"mask-image-linear-pos":[{"mask-linear":[V]}],"mask-image-linear-from-pos":[{"mask-linear-from":I()}],"mask-image-linear-to-pos":[{"mask-linear-to":I()}],"mask-image-linear-from-color":[{"mask-linear-from":N()}],"mask-image-linear-to-color":[{"mask-linear-to":N()}],"mask-image-t-from-pos":[{"mask-t-from":I()}],"mask-image-t-to-pos":[{"mask-t-to":I()}],"mask-image-t-from-color":[{"mask-t-from":N()}],"mask-image-t-to-color":[{"mask-t-to":N()}],"mask-image-r-from-pos":[{"mask-r-from":I()}],"mask-image-r-to-pos":[{"mask-r-to":I()}],"mask-image-r-from-color":[{"mask-r-from":N()}],"mask-image-r-to-color":[{"mask-r-to":N()}],"mask-image-b-from-pos":[{"mask-b-from":I()}],"mask-image-b-to-pos":[{"mask-b-to":I()}],"mask-image-b-from-color":[{"mask-b-from":N()}],"mask-image-b-to-color":[{"mask-b-to":N()}],"mask-image-l-from-pos":[{"mask-l-from":I()}],"mask-image-l-to-pos":[{"mask-l-to":I()}],"mask-image-l-from-color":[{"mask-l-from":N()}],"mask-image-l-to-color":[{"mask-l-to":N()}],"mask-image-x-from-pos":[{"mask-x-from":I()}],"mask-image-x-to-pos":[{"mask-x-to":I()}],"mask-image-x-from-color":[{"mask-x-from":N()}],"mask-image-x-to-color":[{"mask-x-to":N()}],"mask-image-y-from-pos":[{"mask-y-from":I()}],"mask-image-y-to-pos":[{"mask-y-to":I()}],"mask-image-y-from-color":[{"mask-y-from":N()}],"mask-image-y-to-color":[{"mask-y-to":N()}],"mask-image-radial":[{"mask-radial":[K,W]}],"mask-image-radial-from-pos":[{"mask-radial-from":I()}],"mask-image-radial-to-pos":[{"mask-radial-to":I()}],"mask-image-radial-from-color":[{"mask-radial-from":N()}],"mask-image-radial-to-color":[{"mask-radial-to":N()}],"mask-image-radial-shape":[{"mask-radial":[`circle`,`ellipse`]}],"mask-image-radial-size":[{"mask-radial":[{closest:[`side`,`corner`],farthest:[`side`,`corner`]}]}],"mask-image-radial-pos":[{"mask-radial-at":b()}],"mask-image-conic-pos":[{"mask-conic":[V]}],"mask-image-conic-from-pos":[{"mask-conic-from":I()}],"mask-image-conic-to-pos":[{"mask-conic-to":I()}],"mask-image-conic-from-color":[{"mask-conic-from":N()}],"mask-image-conic-to-color":[{"mask-conic-to":N()}],"mask-mode":[{mask:[`alpha`,`luminance`,`match`]}],"mask-origin":[{"mask-origin":[`border`,`padding`,`content`,`fill`,`stroke`,`view`]}],"mask-position":[{mask:re()}],"mask-repeat":[{mask:ie()}],"mask-size":[{mask:ae()}],"mask-type":[{"mask-type":[`alpha`,`luminance`]}],"mask-image":[{mask:[`none`,K,W]}],filter:[{filter:[``,`none`,K,W]}],blur:[{blur:le()}],brightness:[{brightness:[V,K,W]}],contrast:[{contrast:[V,K,W]}],"drop-shadow":[{"drop-shadow":[``,`none`,p,It,At]}],"drop-shadow-color":[{"drop-shadow":N()}],grayscale:[{grayscale:[``,V,K,W]}],"hue-rotate":[{"hue-rotate":[V,K,W]}],invert:[{invert:[``,V,K,W]}],saturate:[{saturate:[V,K,W]}],sepia:[{sepia:[``,V,K,W]}],"backdrop-filter":[{"backdrop-filter":[``,`none`,K,W]}],"backdrop-blur":[{"backdrop-blur":le()}],"backdrop-brightness":[{"backdrop-brightness":[V,K,W]}],"backdrop-contrast":[{"backdrop-contrast":[V,K,W]}],"backdrop-grayscale":[{"backdrop-grayscale":[``,V,K,W]}],"backdrop-hue-rotate":[{"backdrop-hue-rotate":[V,K,W]}],"backdrop-invert":[{"backdrop-invert":[``,V,K,W]}],"backdrop-opacity":[{"backdrop-opacity":[V,K,W]}],"backdrop-saturate":[{"backdrop-saturate":[V,K,W]}],"backdrop-sepia":[{"backdrop-sepia":[``,V,K,W]}],"border-collapse":[{border:[`collapse`,`separate`]}],"border-spacing":[{"border-spacing":w()}],"border-spacing-x":[{"border-spacing-x":w()}],"border-spacing-y":[{"border-spacing-y":w()}],"table-layout":[{table:[`auto`,`fixed`]}],caption:[{caption:[`top`,`bottom`]}],transition:[{transition:[``,`all`,`colors`,`opacity`,`shadow`,`transform`,`none`,K,W]}],"transition-behavior":[{transition:[`normal`,`discrete`]}],duration:[{duration:[V,`initial`,K,W]}],ease:[{ease:[`linear`,`initial`,_,K,W]}],delay:[{delay:[V,K,W]}],animate:[{animate:[`none`,v,K,W]}],backface:[{backface:[`hidden`,`visible`]}],perspective:[{perspective:[h,K,W]}],"perspective-origin":[{"perspective-origin":x()}],rotate:[{rotate:L()}],"rotate-x":[{"rotate-x":L()}],"rotate-y":[{"rotate-y":L()}],"rotate-z":[{"rotate-z":L()}],scale:[{scale:ue()}],"scale-x":[{"scale-x":ue()}],"scale-y":[{"scale-y":ue()}],"scale-z":[{"scale-z":ue()}],"scale-3d":[`scale-3d`],skew:[{skew:de()}],"skew-x":[{"skew-x":de()}],"skew-y":[{"skew-y":de()}],transform:[{transform:[K,W,``,`none`,`gpu`,`cpu`]}],"transform-origin":[{origin:x()}],"transform-style":[{transform:[`3d`,`flat`]}],translate:[{translate:fe()}],"translate-x":[{"translate-x":fe()}],"translate-y":[{"translate-y":fe()}],"translate-z":[{"translate-z":fe()}],"translate-none":[`translate-none`],zoom:[{zoom:[H,K,W]}],accent:[{accent:N()}],appearance:[{appearance:[`none`,`auto`]}],"caret-color":[{caret:N()}],"color-scheme":[{scheme:[`normal`,`dark`,`light`,`light-dark`,`only-dark`,`only-light`]}],cursor:[{cursor:[`auto`,`default`,`pointer`,`wait`,`text`,`move`,`help`,`not-allowed`,`none`,`context-menu`,`progress`,`cell`,`crosshair`,`vertical-text`,`alias`,`copy`,`no-drop`,`grab`,`grabbing`,`all-scroll`,`col-resize`,`row-resize`,`n-resize`,`e-resize`,`s-resize`,`w-resize`,`ne-resize`,`nw-resize`,`se-resize`,`sw-resize`,`ew-resize`,`ns-resize`,`nesw-resize`,`nwse-resize`,`zoom-in`,`zoom-out`,K,W]}],"field-sizing":[{"field-sizing":[`fixed`,`content`]}],"pointer-events":[{"pointer-events":[`auto`,`none`]}],resize:[{resize:[`none`,``,`y`,`x`]}],"scroll-behavior":[{scroll:[`auto`,`smooth`]}],"scrollbar-thumb-color":[{"scrollbar-thumb":N()}],"scrollbar-track-color":[{"scrollbar-track":N()}],"scrollbar-gutter":[{"scrollbar-gutter":[`auto`,`stable`,`both`]}],"scrollbar-w":[{scrollbar:[`auto`,`thin`,`none`]}],"scroll-m":[{"scroll-m":w()}],"scroll-mx":[{"scroll-mx":w()}],"scroll-my":[{"scroll-my":w()}],"scroll-ms":[{"scroll-ms":w()}],"scroll-me":[{"scroll-me":w()}],"scroll-mbs":[{"scroll-mbs":w()}],"scroll-mbe":[{"scroll-mbe":w()}],"scroll-mt":[{"scroll-mt":w()}],"scroll-mr":[{"scroll-mr":w()}],"scroll-mb":[{"scroll-mb":w()}],"scroll-ml":[{"scroll-ml":w()}],"scroll-p":[{"scroll-p":w()}],"scroll-px":[{"scroll-px":w()}],"scroll-py":[{"scroll-py":w()}],"scroll-ps":[{"scroll-ps":w()}],"scroll-pe":[{"scroll-pe":w()}],"scroll-pbs":[{"scroll-pbs":w()}],"scroll-pbe":[{"scroll-pbe":w()}],"scroll-pt":[{"scroll-pt":w()}],"scroll-pr":[{"scroll-pr":w()}],"scroll-pb":[{"scroll-pb":w()}],"scroll-pl":[{"scroll-pl":w()}],"snap-align":[{snap:[`start`,`end`,`center`,`align-none`]}],"snap-stop":[{snap:[`normal`,`always`]}],"snap-type":[{snap:[`none`,`x`,`y`,`both`]}],"snap-strictness":[{snap:[`mandatory`,`proximity`]}],touch:[{touch:[`auto`,`none`,`manipulation`]}],"touch-x":[{"touch-pan":[`x`,`left`,`right`]}],"touch-y":[{"touch-pan":[`y`,`up`,`down`]}],"touch-pz":[`touch-pinch-zoom`],select:[{select:[`none`,`text`,`all`,`auto`]}],"will-change":[{"will-change":[`auto`,`scroll`,`contents`,`transform`,K,W]}],fill:[{fill:[`none`,...N()]}],"stroke-w":[{stroke:[V,jt,G,Tt]}],stroke:[{stroke:[`none`,...N()]}],"forced-color-adjust":[{"forced-color-adjust":[`auto`,`none`]}]},conflictingClassGroups:{"container-named":[`container-type`],overflow:[`overflow-x`,`overflow-y`],overscroll:[`overscroll-x`,`overscroll-y`],inset:[`inset-x`,`inset-y`,`inset-bs`,`inset-be`,`start`,`end`,`top`,`right`,`bottom`,`left`],"inset-x":[`right`,`left`],"inset-y":[`top`,`bottom`],flex:[`basis`,`grow`,`shrink`],gap:[`gap-x`,`gap-y`],p:[`px`,`py`,`ps`,`pe`,`pbs`,`pbe`,`pt`,`pr`,`pb`,`pl`],px:[`pr`,`pl`],py:[`pt`,`pb`],m:[`mx`,`my`,`ms`,`me`,`mbs`,`mbe`,`mt`,`mr`,`mb`,`ml`],mx:[`mr`,`ml`],my:[`mt`,`mb`],size:[`w`,`h`],"font-size":[`leading`],"fvn-normal":[`fvn-ordinal`,`fvn-slashed-zero`,`fvn-figure`,`fvn-spacing`,`fvn-fraction`],"fvn-ordinal":[`fvn-normal`],"fvn-slashed-zero":[`fvn-normal`],"fvn-figure":[`fvn-normal`],"fvn-spacing":[`fvn-normal`],"fvn-fraction":[`fvn-normal`],"line-clamp":[`display`,`overflow`],rounded:[`rounded-s`,`rounded-e`,`rounded-t`,`rounded-r`,`rounded-b`,`rounded-l`,`rounded-ss`,`rounded-se`,`rounded-ee`,`rounded-es`,`rounded-tl`,`rounded-tr`,`rounded-br`,`rounded-bl`],"rounded-s":[`rounded-ss`,`rounded-es`],"rounded-e":[`rounded-se`,`rounded-ee`],"rounded-t":[`rounded-tl`,`rounded-tr`],"rounded-r":[`rounded-tr`,`rounded-br`],"rounded-b":[`rounded-br`,`rounded-bl`],"rounded-l":[`rounded-tl`,`rounded-bl`],"border-spacing":[`border-spacing-x`,`border-spacing-y`],"border-w":[`border-w-x`,`border-w-y`,`border-w-s`,`border-w-e`,`border-w-bs`,`border-w-be`,`border-w-t`,`border-w-r`,`border-w-b`,`border-w-l`],"border-w-x":[`border-w-r`,`border-w-l`],"border-w-y":[`border-w-t`,`border-w-b`],"border-color":[`border-color-x`,`border-color-y`,`border-color-s`,`border-color-e`,`border-color-bs`,`border-color-be`,`border-color-t`,`border-color-r`,`border-color-b`,`border-color-l`],"border-color-x":[`border-color-r`,`border-color-l`],"border-color-y":[`border-color-t`,`border-color-b`],translate:[`translate-x`,`translate-y`,`translate-none`],"translate-none":[`translate`,`translate-x`,`translate-y`,`translate-z`],"scroll-m":[`scroll-mx`,`scroll-my`,`scroll-ms`,`scroll-me`,`scroll-mbs`,`scroll-mbe`,`scroll-mt`,`scroll-mr`,`scroll-mb`,`scroll-ml`],"scroll-mx":[`scroll-mr`,`scroll-ml`],"scroll-my":[`scroll-mt`,`scroll-mb`],"scroll-p":[`scroll-px`,`scroll-py`,`scroll-ps`,`scroll-pe`,`scroll-pbs`,`scroll-pbe`,`scroll-pt`,`scroll-pr`,`scroll-pb`,`scroll-pl`],"scroll-px":[`scroll-pr`,`scroll-pl`],"scroll-py":[`scroll-pt`,`scroll-pb`],touch:[`touch-x`,`touch-y`,`touch-pz`],"touch-x":[`touch`],"touch-y":[`touch`],"touch-pz":[`touch`]},conflictingClassGroupModifiers:{"font-size":[`leading`]},postfixLookupClassGroups:[`container-type`],orderSensitiveModifiers:[`*`,`**`,`after`,`backdrop`,`before`,`details-content`,`file`,`first-letter`,`first-line`,`marker`,`placeholder`,`selection`]}});function Y(...e){return Kt(Te(e))}function qt({className:e,size:t=`default`,...n}){return(0,R.jsx)(`div`,{"data-slot":`card`,"data-size":t,className:Y(`group/card flex flex-col gap-6 overflow-hidden rounded-lg border border-border bg-card py-6 text-sm text-card-foreground has-[>img:first-child]:pt-0 data-[size=sm]:gap-4 data-[size=sm]:py-4 *:[img:first-child]:rounded-t-lg *:[img:last-child]:rounded-b-lg`,e),...n})}function Jt({className:e,...t}){return(0,R.jsx)(`div`,{"data-slot":`card-header`,className:Y(`group/card-header @container/card-header grid auto-rows-min items-start gap-1.5 rounded-t-lg px-6 group-data-[size=sm]/card:px-4 has-data-[slot=card-action]:grid-cols-[1fr_auto] has-data-[slot=card-description]:grid-rows-[auto_auto] [.border-b]:pb-6 group-data-[size=sm]/card:[.border-b]:pb-4`,e),...t})}function Yt({className:e,...t}){return(0,R.jsx)(`div`,{"data-slot":`card-title`,className:Y(`font-heading text-base font-medium`,e),...t})}function Xt({className:e,...t}){return(0,R.jsx)(`div`,{"data-slot":`card-description`,className:Y(`text-sm text-muted-foreground`,e),...t})}function Zt({className:e,...t}){return(0,R.jsx)(`div`,{"data-slot":`card-content`,className:Y(`px-6 group-data-[size=sm]/card:px-4`,e),...t})}function Qt({className:e,...t}){return(0,R.jsx)(`div`,{"data-slot":`card-eyebrow`,className:Y(`text-[10px] font-semibold uppercase tracking-[0.2em] text-muted-foreground`,e),...t})}function $t({className:e,...t}){return(0,R.jsx)(`div`,{"data-slot":`card-list`,className:Y(`divide-y divide-border`,e),...t})}var en=Oe(`px-4 py-3 text-sm transition-colors`,{variants:{interactive:{true:`hover:bg-primary/5 hover:text-foreground`,false:``},selected:{true:`bg-primary/8 text-foreground`,false:``}},defaultVariants:{interactive:!1,selected:!1}});function tn({className:e,interactive:t,selected:n,...r}){return(0,R.jsx)(`div`,{"data-slot":`card-list-item`,className:Y(en({interactive:t,selected:n}),e),...r})}function nn({className:e,...t}){return(0,R.jsx)(`div`,{"data-slot":`card-empty`,className:Y(`rounded-md border border-dashed border-border bg-muted/30 px-4 py-10 text-center text-sm text-muted-foreground`,e),...t})}var rn=Oe(`group/badge inline-flex h-5 w-fit shrink-0 items-center justify-center gap-1 overflow-hidden rounded-sm border border-transparent px-2 py-0.5 text-[11px] font-medium whitespace-nowrap transition-[background-color,border-color,color,box-shadow] focus-visible:border-ring focus-visible:ring-2 focus-visible:ring-ring/40 has-data-[icon=inline-end]:pr-1.5 has-data-[icon=inline-start]:pl-1.5 aria-invalid:border-destructive aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 [&>svg]:pointer-events-none [&>svg]:size-3!`,{variants:{variant:{default:`bg-primary text-primary-foreground [a]:hover:bg-primary/80`,secondary:`bg-secondary text-secondary-foreground [a]:hover:bg-secondary/80`,neutral:`border-border bg-muted text-foreground [a]:hover:bg-secondary/80`,accent:`bg-primary/12 text-primary-text dark:bg-primary/18`,success:`bg-emerald-500/12 text-emerald-700 dark:bg-emerald-500/18 dark:text-emerald-200`,warning:`bg-amber-500/12 text-amber-700 dark:bg-amber-500/18 dark:text-amber-200`,danger:`bg-destructive/12 text-destructive dark:bg-destructive/18 dark:text-destructive`,info:`bg-sky-500/12 text-sky-700 dark:bg-sky-500/18 dark:text-sky-200`,destructive:`bg-destructive/10 text-destructive focus-visible:ring-destructive/20 dark:bg-destructive/20 dark:focus-visible:ring-destructive/40 [a]:hover:bg-destructive/20`,outline:`border-border bg-background text-foreground [a]:hover:bg-muted [a]:hover:text-muted-foreground`,ghost:`hover:bg-muted hover:text-foreground dark:hover:bg-muted/50`,link:`text-primary-text underline-offset-4 hover:underline`}},defaultVariants:{variant:`default`}});function an({className:e,variant:t=`default`,asChild:n=!1,...r}){return(0,R.jsx)(n?te:`span`,{"data-slot":`badge`,"data-variant":t,className:Y(rn({variant:t}),e),...r})}var on=(0,L.createContext)(null);function sn({children:e}){let[t,n]=(0,L.useState)(null),r=(0,L.useRef)(null);(0,L.useEffect)(()=>{r.current=t},[t]);let i=(0,L.useCallback)(e=>{r.current=e,n(e)},[]),a=(0,L.useCallback)(()=>{r.current=null,n(null)},[]),o=(0,L.useCallback)(()=>{let e=r.current;r.current=null,n(null),e?.onClose?.()},[]),s=(0,L.useMemo)(()=>({panel:t,openPanel:i,clearPanel:a,dismissPanel:o}),[a,o,i,t]);return(0,R.jsx)(on.Provider,{value:s,children:e})}function cn(){let e=(0,L.useContext)(on);if(!e)throw Error(`useDashboardPanel must be used within a DashboardPanelProvider.`);return e}function ln({label:e}){return(0,R.jsx)(qt,{className:`border border-border`,children:(0,R.jsxs)(Zt,{className:`flex min-h-[16rem] flex-col items-center justify-center gap-4 text-center`,children:[(0,R.jsx)(_e,{className:`size-8 animate-spin text-primary-text`}),(0,R.jsxs)(`div`,{children:[(0,R.jsx)(Yt,{children:e}),(0,R.jsx)(Xt,{children:`Fetching the latest scan and triage state.`})]})]})})}function un({title:e,body:t}){return(0,R.jsx)(qt,{className:`border border-dashed border-border bg-muted/20`,children:(0,R.jsx)(Zt,{className:`flex min-h-[16rem] flex-col items-center justify-center gap-4 text-center`,children:(0,R.jsxs)(`div`,{children:[(0,R.jsx)(Yt,{children:e}),(0,R.jsx)(Xt,{children:t})]})})})}function dn({error:e}){return(0,R.jsx)(qt,{className:`border border-destructive/25`,children:(0,R.jsxs)(Zt,{className:`flex min-h-[16rem] flex-col items-center justify-center gap-4 text-center`,children:[(0,R.jsx)(Ce,{className:`size-8 text-destructive`}),(0,R.jsxs)(`div`,{children:[(0,R.jsx)(Yt,{children:`Dashboard error`}),(0,R.jsx)(Xt,{children:e.message})]})]})})}var fn=Oe(`group/button inline-flex shrink-0 items-center justify-center rounded-sm border border-transparent text-sm font-medium whitespace-nowrap transition-[background-color,border-color,color,box-shadow] outline-none select-none focus-visible:border-ring focus-visible:ring-2 focus-visible:ring-ring/30 disabled:pointer-events-none disabled:opacity-50 aria-invalid:border-destructive aria-invalid:ring-2 aria-invalid:ring-destructive/20 dark:aria-invalid:border-destructive/50 dark:aria-invalid:ring-destructive/40 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4`,{variants:{variant:{default:`bg-primary text-primary-foreground hover:bg-primary/92`,outline:`border-border bg-background hover:border-primary/20 hover:bg-primary/6 hover:text-foreground aria-expanded:border-primary/20 aria-expanded:bg-primary/8 aria-expanded:text-foreground dark:bg-transparent`,secondary:`bg-secondary text-secondary-foreground hover:bg-secondary/85 aria-expanded:bg-secondary aria-expanded:text-secondary-foreground`,ghost:`hover:bg-primary/6 hover:text-foreground aria-expanded:bg-primary/8 aria-expanded:text-foreground`,accent:`bg-primary text-primary-foreground hover:bg-primary/92`,success:`border-emerald-500/20 bg-emerald-500/10 text-emerald-700 hover:bg-emerald-500/16 dark:bg-emerald-500/18 dark:text-emerald-200 dark:hover:bg-emerald-500/24`,warning:`border-amber-500/20 bg-amber-500/10 text-amber-700 hover:bg-amber-500/16 dark:bg-amber-500/18 dark:text-amber-200 dark:hover:bg-amber-500/24`,danger:`border-destructive/20 bg-destructive/10 text-destructive hover:bg-destructive/16 dark:bg-destructive/20 dark:text-destructive`,destructive:`bg-destructive text-destructive-foreground hover:bg-destructive/92 focus-visible:border-destructive/40 focus-visible:ring-destructive/20 dark:focus-visible:ring-destructive/40`,link:`text-primary-text underline-offset-4 hover:underline`},size:{default:`h-9 gap-1.5 px-3 has-data-[icon=inline-end]:pr-2.5 has-data-[icon=inline-start]:pl-2.5`,xs:`h-6 gap-1 px-2.5 text-xs has-data-[icon=inline-end]:pr-2 has-data-[icon=inline-start]:pl-2 [&_svg:not([class*='size-'])]:size-3`,sm:`h-8 gap-1 px-3 has-data-[icon=inline-end]:pr-2 has-data-[icon=inline-start]:pl-2`,lg:`h-10 gap-1.5 px-4 has-data-[icon=inline-end]:pr-3 has-data-[icon=inline-start]:pl-3`,icon:`size-9`,"icon-xs":`size-6 [&_svg:not([class*='size-'])]:size-3`,"icon-sm":`size-8`,"icon-lg":`size-10`}},defaultVariants:{variant:`default`,size:`default`}});function X({className:e,variant:t=`default`,size:n=`default`,asChild:r=!1,...i}){return(0,R.jsx)(r?te:`button`,{"data-slot":`button`,"data-variant":t,"data-size":n,className:Y(fn({variant:t,size:n,className:e})),...i})}function pn({className:e,type:t,...n}){return(0,R.jsx)(`input`,{type:t,"data-slot":`input`,className:Y(`h-9 w-full min-w-0 rounded-md border border-input bg-background px-3 py-1 text-base transition-[color,box-shadow,border-color] outline-none file:inline-flex file:h-7 file:border-0 file:bg-transparent file:text-sm file:font-medium file:text-foreground placeholder:text-muted-foreground focus-visible:border-ring focus-visible:ring-2 focus-visible:ring-ring/30 disabled:pointer-events-none disabled:cursor-not-allowed disabled:opacity-50 aria-invalid:border-destructive aria-invalid:ring-2 aria-invalid:ring-destructive/20 md:text-sm dark:bg-input/20 dark:aria-invalid:border-destructive/50 dark:aria-invalid:ring-destructive/40`,e),...n})}function mn({...e}){return(0,R.jsx)(P,{"data-slot":`sheet`,...e})}function hn({...e}){return(0,R.jsx)(re,{"data-slot":`sheet-trigger`,...e})}function gn({...e}){return(0,R.jsx)(N,{"data-slot":`sheet-portal`,...e})}function _n({className:e,...t}){return(0,R.jsx)(ie,{"data-slot":`sheet-overlay`,className:Y(`fixed inset-0 z-50 bg-background/80 duration-100 supports-backdrop-filter:backdrop-blur-sm data-open:animate-in data-open:fade-in-0 data-closed:animate-out data-closed:fade-out-0`,e),...t})}function vn({className:e,children:t,side:n=`right`,showCloseButton:r=!0,...i}){return(0,R.jsxs)(gn,{children:[(0,R.jsx)(_n,{}),(0,R.jsxs)(oe,{"data-slot":`sheet-content`,"data-side":n,className:Y(`fixed z-50 flex flex-col border-border bg-popover text-sm text-popover-foreground shadow-sm transition duration-200 ease-in-out data-[side=bottom]:inset-x-0 data-[side=bottom]:bottom-0 data-[side=bottom]:h-auto data-[side=bottom]:border-t data-[side=left]:inset-y-0 data-[side=left]:left-0 data-[side=left]:h-full data-[side=left]:w-3/4 data-[side=left]:border-r data-[side=right]:inset-y-0 data-[side=right]:right-0 data-[side=right]:h-full data-[side=right]:w-3/4 data-[side=right]:border-l data-[side=top]:inset-x-0 data-[side=top]:top-0 data-[side=top]:h-auto data-[side=top]:border-b data-[side=left]:sm:max-w-sm data-[side=right]:sm:max-w-sm data-open:animate-in data-open:fade-in-0 data-[side=bottom]:data-open:slide-in-from-bottom-10 data-[side=left]:data-open:slide-in-from-left-10 data-[side=right]:data-open:slide-in-from-right-10 data-[side=top]:data-open:slide-in-from-top-10 data-closed:animate-out data-closed:fade-out-0 data-[side=bottom]:data-closed:slide-out-to-bottom-10 data-[side=left]:data-closed:slide-out-to-left-10 data-[side=right]:data-closed:slide-out-to-right-10 data-[side=top]:data-closed:slide-out-to-top-10`,e),...i,children:[t,r&&(0,R.jsx)(ce,{"data-slot":`sheet-close`,asChild:!0,children:(0,R.jsxs)(X,{variant:`ghost`,className:`absolute top-4 right-4`,size:`icon-sm`,children:[(0,R.jsx)(ae,{className:`size-4`}),(0,R.jsx)(`span`,{className:`sr-only`,children:`Close`})]})})]})]})}function yn({className:e,...t}){return(0,R.jsx)(`div`,{"data-slot":`sheet-header`,className:Y(`flex flex-col gap-1.5 p-6`,e),...t})}function bn({className:e,...t}){return(0,R.jsx)(se,{"data-slot":`sheet-title`,className:Y(`font-heading text-base font-medium text-foreground`,e),...t})}function xn({className:e,...t}){return(0,R.jsx)(F,{"data-slot":`sheet-description`,className:Y(`text-sm text-muted-foreground`,e),...t})}function Sn(e,[t,n]){return Math.min(n,Math.max(t,e))}function Cn(e,t){return L.useReducer((e,n)=>t[e][n]??e,e)}var wn=`ScrollArea`,[Tn,En]=O(wn),[Dn,Z]=Tn(wn),On=L.forwardRef((e,t)=>{let{__scopeScrollArea:n,type:r=`hover`,dir:i,scrollHideDelay:o=600,...s}=e,[c,l]=L.useState(null),[u,d]=L.useState(null),[f,p]=L.useState(null),[m,h]=L.useState(null),[g,_]=L.useState(null),[v,y]=L.useState(0),[b,x]=L.useState(0),[S,C]=L.useState(!1),[w,T]=L.useState(!1),E=j(t,e=>l(e)),O=a(i);return(0,R.jsx)(Dn,{scope:n,type:r,dir:O,scrollHideDelay:o,scrollArea:c,viewport:u,onViewportChange:d,content:f,onContentChange:p,scrollbarX:m,onScrollbarXChange:h,scrollbarXEnabled:S,onScrollbarXEnabledChange:C,scrollbarY:g,onScrollbarYChange:_,scrollbarYEnabled:w,onScrollbarYEnabledChange:T,onCornerWidthChange:y,onCornerHeightChange:x,children:(0,R.jsx)(D.div,{dir:O,...s,ref:E,style:{position:`relative`,"--radix-scroll-area-corner-width":v+`px`,"--radix-scroll-area-corner-height":b+`px`,...e.style}})})});On.displayName=wn;var kn=`ScrollAreaViewport`,An=L.forwardRef((e,t)=>{let{__scopeScrollArea:n,children:r,nonce:i,...a}=e,o=Z(kn,n),s=L.useRef(null),c=j(t,s,o.onViewportChange);return(0,R.jsxs)(R.Fragment,{children:[(0,R.jsx)(`style`,{dangerouslySetInnerHTML:{__html:`[data-radix-scroll-area-viewport]{scrollbar-width:none;-ms-overflow-style:none;-webkit-overflow-scrolling:touch;}[data-radix-scroll-area-viewport]::-webkit-scrollbar{display:none}`},nonce:i}),(0,R.jsx)(D.div,{"data-radix-scroll-area-viewport":``,...a,ref:c,style:{overflowX:o.scrollbarXEnabled?`scroll`:`hidden`,overflowY:o.scrollbarYEnabled?`scroll`:`hidden`,...e.style},children:(0,R.jsx)(`div`,{ref:o.onContentChange,style:{minWidth:`100%`,display:`table`},children:r})})]})});An.displayName=kn;var Q=`ScrollAreaScrollbar`,jn=L.forwardRef((e,t)=>{let{forceMount:n,...r}=e,i=Z(Q,e.__scopeScrollArea),{onScrollbarXEnabledChange:a,onScrollbarYEnabledChange:o}=i,s=e.orientation===`horizontal`;return L.useEffect(()=>(s?a(!0):o(!0),()=>{s?a(!1):o(!1)}),[s,a,o]),i.type===`hover`?(0,R.jsx)(Mn,{...r,ref:t,forceMount:n}):i.type===`scroll`?(0,R.jsx)(Nn,{...r,ref:t,forceMount:n}):i.type===`auto`?(0,R.jsx)(Pn,{...r,ref:t,forceMount:n}):i.type===`always`?(0,R.jsx)(Fn,{...r,ref:t}):null});jn.displayName=Q;var Mn=L.forwardRef((e,t)=>{let{forceMount:n,...r}=e,i=Z(Q,e.__scopeScrollArea),[a,o]=L.useState(!1);return L.useEffect(()=>{let e=i.scrollArea,t=0;if(e){let n=()=>{window.clearTimeout(t),o(!0)},r=()=>{t=window.setTimeout(()=>o(!1),i.scrollHideDelay)};return e.addEventListener(`pointerenter`,n),e.addEventListener(`pointerleave`,r),()=>{window.clearTimeout(t),e.removeEventListener(`pointerenter`,n),e.removeEventListener(`pointerleave`,r)}}},[i.scrollArea,i.scrollHideDelay]),(0,R.jsx)(M,{present:n||a,children:(0,R.jsx)(Pn,{"data-state":a?`visible`:`hidden`,...r,ref:t})})}),Nn=L.forwardRef((e,t)=>{let{forceMount:n,...r}=e,i=Z(Q,e.__scopeScrollArea),a=e.orientation===`horizontal`,o=tr(()=>c(`SCROLL_END`),100),[s,c]=Cn(`hidden`,{hidden:{SCROLL:`scrolling`},scrolling:{SCROLL_END:`idle`,POINTER_ENTER:`interacting`},interacting:{SCROLL:`interacting`,POINTER_LEAVE:`idle`},idle:{HIDE:`hidden`,SCROLL:`scrolling`,POINTER_ENTER:`interacting`}});return L.useEffect(()=>{if(s===`idle`){let e=window.setTimeout(()=>c(`HIDE`),i.scrollHideDelay);return()=>window.clearTimeout(e)}},[s,i.scrollHideDelay,c]),L.useEffect(()=>{let e=i.viewport,t=a?`scrollLeft`:`scrollTop`;if(e){let n=e[t],r=()=>{let r=e[t];n!==r&&(c(`SCROLL`),o()),n=r};return e.addEventListener(`scroll`,r),()=>e.removeEventListener(`scroll`,r)}},[i.viewport,a,c,o]),(0,R.jsx)(M,{present:n||s!==`hidden`,children:(0,R.jsx)(Fn,{"data-state":s===`hidden`?`hidden`:`visible`,...r,ref:t,onPointerEnter:k(e.onPointerEnter,()=>c(`POINTER_ENTER`)),onPointerLeave:k(e.onPointerLeave,()=>c(`POINTER_LEAVE`))})})}),Pn=L.forwardRef((e,t)=>{let n=Z(Q,e.__scopeScrollArea),{forceMount:r,...i}=e,[a,o]=L.useState(!1),s=e.orientation===`horizontal`,c=tr(()=>{if(n.viewport){let e=n.viewport.offsetWidth<n.viewport.scrollWidth,t=n.viewport.offsetHeight<n.viewport.scrollHeight;o(s?e:t)}},10);return $(n.viewport,c),$(n.content,c),(0,R.jsx)(M,{present:r||a,children:(0,R.jsx)(Fn,{"data-state":a?`visible`:`hidden`,...i,ref:t})})}),Fn=L.forwardRef((e,t)=>{let{orientation:n=`vertical`,...r}=e,i=Z(Q,e.__scopeScrollArea),a=L.useRef(null),o=L.useRef(0),[s,c]=L.useState({content:0,viewport:0,scrollbar:{size:0,paddingStart:0,paddingEnd:0}}),l=Jn(s.viewport,s.content),u={...r,sizes:s,onSizesChange:c,hasThumb:l>0&&l<1,onThumbChange:e=>a.current=e,onThumbPointerUp:()=>o.current=0,onThumbPointerDown:e=>o.current=e};function d(e,t){return Xn(e,o.current,s,t)}return n===`horizontal`?(0,R.jsx)(In,{...u,ref:t,onThumbPositionChange:()=>{if(i.viewport&&a.current){let e=i.viewport.scrollLeft,t=Zn(e,s,i.dir);a.current.style.transform=`translate3d(${t}px, 0, 0)`}},onWheelScroll:e=>{i.viewport&&(i.viewport.scrollLeft=e)},onDragScroll:e=>{i.viewport&&(i.viewport.scrollLeft=d(e,i.dir))}}):n===`vertical`?(0,R.jsx)(Ln,{...u,ref:t,onThumbPositionChange:()=>{if(i.viewport&&a.current){let e=i.viewport.scrollTop,t=Zn(e,s);a.current.style.transform=`translate3d(0, ${t}px, 0)`}},onWheelScroll:e=>{i.viewport&&(i.viewport.scrollTop=e)},onDragScroll:e=>{i.viewport&&(i.viewport.scrollTop=d(e))}}):null}),In=L.forwardRef((e,t)=>{let{sizes:n,onSizesChange:r,...i}=e,a=Z(Q,e.__scopeScrollArea),[o,s]=L.useState(),c=L.useRef(null),l=j(t,c,a.onScrollbarXChange);return L.useEffect(()=>{c.current&&s(getComputedStyle(c.current))},[c]),(0,R.jsx)(Bn,{"data-orientation":`horizontal`,...i,ref:l,sizes:n,style:{bottom:0,left:a.dir===`rtl`?`var(--radix-scroll-area-corner-width)`:0,right:a.dir===`ltr`?`var(--radix-scroll-area-corner-width)`:0,"--radix-scroll-area-thumb-width":Yn(n)+`px`,...e.style},onThumbPointerDown:t=>e.onThumbPointerDown(t.x),onDragScroll:t=>e.onDragScroll(t.x),onWheelScroll:(t,n)=>{if(a.viewport){let r=a.viewport.scrollLeft+t.deltaX;e.onWheelScroll(r),$n(r,n)&&t.preventDefault()}},onResize:()=>{c.current&&a.viewport&&o&&r({content:a.viewport.scrollWidth,viewport:a.viewport.offsetWidth,scrollbar:{size:c.current.clientWidth,paddingStart:qn(o.paddingLeft),paddingEnd:qn(o.paddingRight)}})}})}),Ln=L.forwardRef((e,t)=>{let{sizes:n,onSizesChange:r,...i}=e,a=Z(Q,e.__scopeScrollArea),[o,s]=L.useState(),c=L.useRef(null),l=j(t,c,a.onScrollbarYChange);return L.useEffect(()=>{c.current&&s(getComputedStyle(c.current))},[c]),(0,R.jsx)(Bn,{"data-orientation":`vertical`,...i,ref:l,sizes:n,style:{top:0,right:a.dir===`ltr`?0:void 0,left:a.dir===`rtl`?0:void 0,bottom:`var(--radix-scroll-area-corner-height)`,"--radix-scroll-area-thumb-height":Yn(n)+`px`,...e.style},onThumbPointerDown:t=>e.onThumbPointerDown(t.y),onDragScroll:t=>e.onDragScroll(t.y),onWheelScroll:(t,n)=>{if(a.viewport){let r=a.viewport.scrollTop+t.deltaY;e.onWheelScroll(r),$n(r,n)&&t.preventDefault()}},onResize:()=>{c.current&&a.viewport&&o&&r({content:a.viewport.scrollHeight,viewport:a.viewport.offsetHeight,scrollbar:{size:c.current.clientHeight,paddingStart:qn(o.paddingTop),paddingEnd:qn(o.paddingBottom)}})}})}),[Rn,zn]=Tn(Q),Bn=L.forwardRef((e,t)=>{let{__scopeScrollArea:n,sizes:r,hasThumb:i,onThumbChange:a,onThumbPointerUp:o,onThumbPointerDown:s,onThumbPositionChange:c,onDragScroll:l,onWheelScroll:u,onResize:d,...f}=e,p=Z(Q,n),[m,h]=L.useState(null),g=j(t,e=>h(e)),_=L.useRef(null),v=L.useRef(``),y=p.viewport,b=r.content-r.viewport,x=A(u),S=A(c),C=tr(d,10);function w(e){if(_.current){let t=e.clientX-_.current.left,n=e.clientY-_.current.top;l({x:t,y:n})}}return L.useEffect(()=>{let e=e=>{let t=e.target;m?.contains(t)&&x(e,b)};return document.addEventListener(`wheel`,e,{passive:!1}),()=>document.removeEventListener(`wheel`,e,{passive:!1})},[y,m,b,x]),L.useEffect(S,[r,S]),$(m,C),$(p.content,C),(0,R.jsx)(Rn,{scope:n,scrollbar:m,hasThumb:i,onThumbChange:A(a),onThumbPointerUp:A(o),onThumbPositionChange:S,onThumbPointerDown:A(s),children:(0,R.jsx)(D.div,{...f,ref:g,style:{position:`absolute`,...f.style},onPointerDown:k(e.onPointerDown,e=>{e.button===0&&(e.target.setPointerCapture(e.pointerId),_.current=m.getBoundingClientRect(),v.current=document.body.style.webkitUserSelect,document.body.style.webkitUserSelect=`none`,p.viewport&&(p.viewport.style.scrollBehavior=`auto`),w(e))}),onPointerMove:k(e.onPointerMove,w),onPointerUp:k(e.onPointerUp,e=>{let t=e.target;t.hasPointerCapture(e.pointerId)&&t.releasePointerCapture(e.pointerId),document.body.style.webkitUserSelect=v.current,p.viewport&&(p.viewport.style.scrollBehavior=``),_.current=null})})})}),Vn=`ScrollAreaThumb`,Hn=L.forwardRef((e,t)=>{let{forceMount:n,...r}=e,i=zn(Vn,e.__scopeScrollArea);return(0,R.jsx)(M,{present:n||i.hasThumb,children:(0,R.jsx)(Un,{ref:t,...r})})}),Un=L.forwardRef((e,t)=>{let{__scopeScrollArea:n,style:r,...i}=e,a=Z(Vn,n),o=zn(Vn,n),{onThumbPositionChange:s}=o,c=j(t,e=>o.onThumbChange(e)),l=L.useRef(void 0),u=tr(()=>{l.current&&=(l.current(),void 0)},100);return L.useEffect(()=>{let e=a.viewport;if(e){let t=()=>{if(u(),!l.current){let t=er(e,s);l.current=t,s()}};return s(),e.addEventListener(`scroll`,t),()=>e.removeEventListener(`scroll`,t)}},[a.viewport,u,s]),(0,R.jsx)(D.div,{"data-state":o.hasThumb?`visible`:`hidden`,...i,ref:c,style:{width:`var(--radix-scroll-area-thumb-width)`,height:`var(--radix-scroll-area-thumb-height)`,...r},onPointerDownCapture:k(e.onPointerDownCapture,e=>{let t=e.target.getBoundingClientRect(),n=e.clientX-t.left,r=e.clientY-t.top;o.onThumbPointerDown({x:n,y:r})}),onPointerUp:k(e.onPointerUp,o.onThumbPointerUp)})});Hn.displayName=Vn;var Wn=`ScrollAreaCorner`,Gn=L.forwardRef((e,t)=>{let n=Z(Wn,e.__scopeScrollArea),r=!!(n.scrollbarX&&n.scrollbarY);return n.type!==`scroll`&&r?(0,R.jsx)(Kn,{...e,ref:t}):null});Gn.displayName=Wn;var Kn=L.forwardRef((e,t)=>{let{__scopeScrollArea:n,...r}=e,i=Z(Wn,n),[a,o]=L.useState(0),[s,c]=L.useState(0),l=!!(a&&s);return $(i.scrollbarX,()=>{let e=i.scrollbarX?.offsetHeight||0;i.onCornerHeightChange(e),c(e)}),$(i.scrollbarY,()=>{let e=i.scrollbarY?.offsetWidth||0;i.onCornerWidthChange(e),o(e)}),l?(0,R.jsx)(D.div,{...r,ref:t,style:{width:a,height:s,position:`absolute`,right:i.dir===`ltr`?0:void 0,left:i.dir===`rtl`?0:void 0,bottom:0,...e.style}}):null});function qn(e){return e?parseInt(e,10):0}function Jn(e,t){let n=e/t;return isNaN(n)?0:n}function Yn(e){let t=Jn(e.viewport,e.content),n=e.scrollbar.paddingStart+e.scrollbar.paddingEnd,r=(e.scrollbar.size-n)*t;return Math.max(r,18)}function Xn(e,t,n,r=`ltr`){let i=Yn(n),a=i/2,o=t||a,s=i-o,c=n.scrollbar.paddingStart+o,l=n.scrollbar.size-n.scrollbar.paddingEnd-s,u=n.content-n.viewport,d=r===`ltr`?[0,u]:[u*-1,0];return Qn([c,l],d)(e)}function Zn(e,t,n=`ltr`){let r=Yn(t),i=t.scrollbar.paddingStart+t.scrollbar.paddingEnd,a=t.scrollbar.size-i,o=t.content-t.viewport,s=a-r,c=Sn(e,n===`ltr`?[0,o]:[o*-1,0]);return Qn([0,o],[0,s])(c)}function Qn(e,t){return n=>{if(e[0]===e[1]||t[0]===t[1])return t[0];let r=(t[1]-t[0])/(e[1]-e[0]);return t[0]+r*(n-e[0])}}function $n(e,t){return e>0&&e<t}var er=(e,t=()=>{})=>{let n={left:e.scrollLeft,top:e.scrollTop},r=0;return(function i(){let a={left:e.scrollLeft,top:e.scrollTop},o=n.left!==a.left,s=n.top!==a.top;(o||s)&&t(),n=a,r=window.requestAnimationFrame(i)})(),()=>window.cancelAnimationFrame(r)};function tr(e,t){let n=A(e),r=L.useRef(0);return L.useEffect(()=>()=>window.clearTimeout(r.current),[]),L.useCallback(()=>{window.clearTimeout(r.current),r.current=window.setTimeout(n,t)},[n,t])}function $(e,t){let n=A(t);ne(()=>{let t=0;if(e){let r=new ResizeObserver(()=>{cancelAnimationFrame(t),t=window.requestAnimationFrame(n)});return r.observe(e),()=>{window.cancelAnimationFrame(t),r.unobserve(e)}}},[e,n])}var nr=On,rr=An,ir=Gn;function ar({className:e,children:t,...n}){return(0,R.jsxs)(nr,{"data-slot":`scroll-area`,className:Y(`relative`,e),...n,children:[(0,R.jsx)(rr,{"data-slot":`scroll-area-viewport`,className:`size-full rounded-[inherit] transition-[color,box-shadow] outline-none focus-visible:ring-[3px] focus-visible:ring-ring/50 focus-visible:outline-1`,children:t}),(0,R.jsx)(or,{}),(0,R.jsx)(ir,{})]})}function or({className:e,orientation:t=`vertical`,...n}){return(0,R.jsx)(jn,{"data-slot":`scroll-area-scrollbar`,"data-orientation":t,orientation:t,className:Y(`flex touch-none p-px transition-colors select-none data-horizontal:h-2.5 data-horizontal:flex-col data-horizontal:border-t data-horizontal:border-t-transparent data-vertical:h-full data-vertical:w-2.5 data-vertical:border-l data-vertical:border-l-transparent`,e),...n,children:(0,R.jsx)(Hn,{"data-slot":`scroll-area-thumb`,className:`relative flex-1 rounded-full bg-border`})})}var sr=`data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='-2%20-2%20240%2024'%20fill='none'%20role='img'%20aria-label='0.security'%3e%3cpath%20fill='%23FD802E'%20d='M12.5%202%20H17.5%20L7.5%2018%20H2.5%20Z'/%3e%3cpath%20fill='%23403D39'%20fill-rule='evenodd'%20d='M4%200%20H16%20L20%204%20V16%20L16%2020%20H4%20L0%2016%20V4%20Z%20M4%205%20V15%20L5%2016%20H15%20L16%2015%20V5%20L15%204%20H5%20Z'/%3e%3cpath%20fill='%23403D39'%20fill-rule='nonzero'%20transform='translate(28,0)'%20d='M0%200%20H20%20V4%20H0%20Z%20M0%204%20H4%20V8%20H0%20Z%20M0%208%20H20%20V12%20H0%20Z%20M16%2012%20H20%20V16%20H16%20Z%20M0%2016%20H20%20V20%20H0%20Z'/%3e%3cpath%20fill='%23403D39'%20fill-rule='nonzero'%20transform='translate(56,0)'%20d='M0%200%20H20%20V4%20H0%20Z%20M0%200%20H4%20V20%20H0%20Z%20M0%208%20H16%20V12%20H0%20Z%20M0%2016%20H20%20V20%20H0%20Z'/%3e%3cpath%20fill='%23403D39'%20fill-rule='nonzero'%20transform='translate(84,0)'%20d='M0%200%20H20%20V4%20H0%20Z%20M0%200%20H4%20V20%20H0%20Z%20M0%2016%20H20%20V20%20H0%20Z'/%3e%3cpath%20fill='%23403D39'%20fill-rule='nonzero'%20transform='translate(112,0)'%20d='M0%200H4V16H16V0H20V20H0Z'/%3e%3cpath%20fill='%23403D39'%20fill-rule='evenodd'%20transform='translate(140,0)'%20d='M0%200H20V12H12L20%2020H14.4L6.4%2012H4V20H0Z%20M4%204V8H16V4Z'/%3e%3cpath%20fill='%23403D39'%20fill-rule='nonzero'%20transform='translate(168,0)'%20d='M0%200H12V4H8V16H12V20H0V16H4V4H0Z'/%3e%3cpath%20fill='%23403D39'%20fill-rule='nonzero'%20transform='translate(188,0)'%20d='M0%200H20V4H12V20H8V4H0Z'/%3e%3cpath%20fill='%23403D39'%20fill-rule='nonzero'%20transform='translate(216,0)'%20d='M0%200H4V8H16V0H20V12H12V20H8V12H0Z'/%3e%3c/svg%3e`,cr=`data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='-2%20-2%20240%2024'%20fill='none'%20role='img'%20aria-label='0.security'%3e%3cpath%20fill='%23FD802E'%20d='M12.5%202%20H17.5%20L7.5%2018%20H2.5%20Z'/%3e%3cpath%20fill='%23FCFAF6'%20fill-rule='evenodd'%20d='M4%200%20H16%20L20%204%20V16%20L16%2020%20H4%20L0%2016%20V4%20Z%20M4%205%20V15%20L5%2016%20H15%20L16%2015%20V5%20L15%204%20H5%20Z'/%3e%3cpath%20fill='%23FCFAF6'%20fill-rule='nonzero'%20transform='translate(28,0)'%20d='M0%200%20H20%20V4%20H0%20Z%20M0%204%20H4%20V8%20H0%20Z%20M0%208%20H20%20V12%20H0%20Z%20M16%2012%20H20%20V16%20H16%20Z%20M0%2016%20H20%20V20%20H0%20Z'/%3e%3cpath%20fill='%23FCFAF6'%20fill-rule='nonzero'%20transform='translate(56,0)'%20d='M0%200%20H20%20V4%20H0%20Z%20M0%200%20H4%20V20%20H0%20Z%20M0%208%20H16%20V12%20H0%20Z%20M0%2016%20H20%20V20%20H0%20Z'/%3e%3cpath%20fill='%23FCFAF6'%20fill-rule='nonzero'%20transform='translate(84,0)'%20d='M0%200%20H20%20V4%20H0%20Z%20M0%200%20H4%20V20%20H0%20Z%20M0%2016%20H20%20V20%20H0%20Z'/%3e%3cpath%20fill='%23FCFAF6'%20fill-rule='nonzero'%20transform='translate(112,0)'%20d='M0%200H4V16H16V0H20V20H0Z'/%3e%3cpath%20fill='%23FCFAF6'%20fill-rule='evenodd'%20transform='translate(140,0)'%20d='M0%200H20V12H12L20%2020H14.4L6.4%2012H4V20H0Z%20M4%204V8H16V4Z'/%3e%3cpath%20fill='%23FCFAF6'%20fill-rule='nonzero'%20transform='translate(168,0)'%20d='M0%200H12V4H8V16H12V20H0V16H4V4H0Z'/%3e%3cpath%20fill='%23FCFAF6'%20fill-rule='nonzero'%20transform='translate(188,0)'%20d='M0%200H20V4H12V20H8V4H0Z'/%3e%3cpath%20fill='%23FCFAF6'%20fill-rule='nonzero'%20transform='translate(216,0)'%20d='M0%200H4V8H16V0H20V12H12V20H8V12H0Z'/%3e%3c/svg%3e`;function lr({compact:e=!1,className:t}){return e?(0,R.jsxs)(`svg`,{role:`img`,"aria-label":`0.security`,viewBox:`-2 -2 24 24`,className:Y(`size-9 text-[#403D39] dark:text-[#FCFAF6]`,t),children:[(0,R.jsx)(`path`,{fill:`#FD802E`,d:`M12.5 2 H17.5 L7.5 18 H2.5 Z`}),(0,R.jsx)(`path`,{fill:`currentColor`,fillRule:`evenodd`,d:`M4 0 H16 L20 4 V16 L16 20 H4 L0 16 V4 Z M4 5 V15 L5 16 H15 L16 15 V5 L15 4 H5 Z`})]}):(0,R.jsxs)(`div`,{className:Y(`space-y-2`,t),children:[(0,R.jsx)(`img`,{alt:`0.security`,src:sr,width:240,height:24,className:`h-auto w-48 max-w-full dark:hidden`}),(0,R.jsx)(`img`,{alt:`0.security`,src:cr,width:240,height:24,className:`hidden h-auto w-48 max-w-full dark:block`}),(0,R.jsx)(`div`,{className:`text-sm font-medium text-foreground`,children:`0.security operator shell`})]})}function ur({className:e,...t}){return(0,R.jsx)(`nav`,{"aria-label":`breadcrumb`,"data-slot":`breadcrumb`,className:Y(e),...t})}function dr({className:e,...t}){return(0,R.jsx)(`ol`,{"data-slot":`breadcrumb-list`,className:Y(`flex flex-wrap items-center gap-1.5 text-sm wrap-break-word text-muted-foreground sm:gap-2.5`,e),...t})}function fr({className:e,...t}){return(0,R.jsx)(`li`,{"data-slot":`breadcrumb-item`,className:Y(`inline-flex items-center gap-1.5`,e),...t})}function pr({className:e,...t}){return(0,R.jsx)(`span`,{"data-slot":`breadcrumb-page`,role:`link`,"aria-disabled":`true`,"aria-current":`page`,className:Y(`font-normal text-foreground`,e),...t})}function mr({children:e,className:t,...n}){return(0,R.jsx)(`li`,{"data-slot":`breadcrumb-separator`,role:`presentation`,"aria-hidden":`true`,className:Y(`[&>svg]:size-3.5`,t),...n,children:e??(0,R.jsx)(fe,{})})}function hr(e){return e.startsWith(`/dashboard`)?`Operations center`:e.startsWith(`/threads`)||e.startsWith(`/findings`)?`Findings workspace`:e.startsWith(`/runs`)||e.startsWith(`/scans`)?`Run dossier`:`Operations center`}function gr(e){return e.startsWith(`/dashboard`)?`Operations`:e.startsWith(`/threads`)||e.startsWith(`/findings`)?`Findings`:e.startsWith(`/runs`)||e.startsWith(`/scans`)?`Runs`:`Control`}function _r(e=`default`){return e===`success`?`text-emerald-700 dark:text-emerald-300`:e===`warning`?`text-amber-700 dark:text-amber-300`:e===`danger`?`text-destructive`:`text-foreground`}function vr(e,t){let n=new Map((t??[]).map(e=>[e.id,e.runtime]));return e.filter(e=>{if([`agent_error`,`scan_error`,`worker_failed`].includes(e.eventType))return!0;let t=e.payload??{},n=typeof t.summary==`string`&&t.summary.trim()?t.summary.trim():e.summary;return[`stage_complete`,`agent_complete`,`runtime_incompatible`].includes(e.eventType)&&/max turns|did not emit required tool_call/i.test(n)}).sort((e,t)=>t.timestamp-e.timestamp).map(e=>{let t=e.payload??{},r=n.get(e.scanId),i=typeof t.error==`string`&&t.error.trim()?t.error.trim():typeof t.summary==`string`&&t.summary.trim()?t.summary.trim():e.summary;return{scanId:e.scanId,scanTarget:e.scanTarget,stage:r?`${e.stage} · ${r}`:e.stage,actor:e.agentRole??null,headline:i,timestamp:e.timestamp}})}function yr({pathname:e,dashboard:t,scans:n,incidents:r}){let i=t?.groups??[],a=n??[],s=t?.workers.filter(e=>e.isActive&&e.status!==`stopped`).length??0,c=t?.queue.runnable??0,l=i.filter(e=>e.workflow.phase===`blocked`).length,u=i.filter(e=>e.workflow.reviewGate===`human_review`).length,d=i.filter(e=>e.workflow.reviewGate===`agent_review`).length,f=i.filter(e=>!e.workflow.assignee).length,p=i.filter(e=>e.latest.triageStatus===`new`).length,m=i.filter(e=>e.workflow.phase===`in_progress`||e.workflow.activeAgentRoles.length>0).length,h=i.filter(e=>e.workflow.consensus===`verified`).length,g=a.filter(e=>e.status===`running`).length,_=a.filter(e=>e.status===`completed`).length,v=new Set(a.map(e=>e.target)).size,y=[...new Set(a.map(e=>e.runtime))],b=[...a].sort((e,t)=>t.startedAt.localeCompare(e.startedAt))[0]??null,x=r[0]??null,S=r.filter(e=>/quota|provider|model|rate limit|openai|anthropic|gemini|claude/i.test(`${e.headline} ${e.stage} ${e.actor??``}`)).length;return e.startsWith(`/threads`)||e.startsWith(`/findings`)?{title:`Findings workspace`,summary:`Review deduplicated evidence, continue the cases that need judgment, and return to the scoped chat workspace when execution needs direction.`,sections:[{label:`Queue`,items:[{label:`Finding families`,value:String(i.length),meta:`deduplicated observations across runs`},{label:`New`,value:String(p),meta:`awaiting a first decision or investigation`},{label:`Human review`,value:String(u),meta:`ready for operator disposition`,tone:u>0?`warning`:`default`},{label:`Agent review`,value:String(d),meta:`needs another evidence pass`}]},{label:`Execution`,items:[{label:`In progress`,value:String(m),meta:`families with active worker movement`,tone:m>0?`success`:`default`},{label:`Blocked`,value:String(l),meta:`needs access, context, or stronger proof`,tone:l>0?`danger`:`default`},{label:`Unassigned`,value:String(f),meta:`no explicit owner attached yet`},{label:`Verified`,value:String(h),meta:`consensus supports a true positive`}],note:x?`Runtime pressure is visible elsewhere too: ${x.scanTarget} failed ${o(x.timestamp)}.`:`Open a finding to copy a context-preserving console handoff.`}]}:e.startsWith(`/runs`)||e.startsWith(`/scans`)?{title:`Run dossiers`,summary:`Inspect provenance by target, then drill into a selected execution and its output findings.`,sections:[{label:`Inventory`,items:[{label:`Targets`,value:String(v),meta:`unique targets in local history`},{label:`Runs`,value:String(a.length),meta:`persisted executions across all targets`},{label:`Active`,value:String(g),meta:`runs still executing now`,tone:g>0?`success`:`default`},{label:`Completed`,value:String(_),meta:`finished without staying in running state`}]},{label:`Runtime`,items:[{label:`Incidents`,value:String(r.length),meta:S>0?`${S} provider/runtime failures`:`no recent failures`,tone:r.length>0?`danger`:`success`},{label:`Workers`,value:String(s),meta:c>0?`${c} runnable work items queued`:`no runnable backlog`},{label:`Runtimes`,value:y.length>0?y.slice(0,3).join(`, `):`none`,meta:y.length>3?`${y.length} runtimes observed`:`runtime mix in run history`},{label:`Latest target`,value:b?.target??`none`,meta:b?o(b.startedAt):`launch a target to create the first dossier`}],note:x?`${x.scanTarget}: ${x.headline}`:`Provider and worker failures should surface here before you dive into a single run.`}]}:{title:`Operations control`,summary:`Run the autonomous control plane, watch queue health, and intervene only when automation hits a real boundary.`,sections:[{label:`Runtime`,items:[{label:`Daemon`,value:s>0?`live`:`offline`,meta:s>0?`${s} active workers heartbeating`:`launch a target or start a daemon`,tone:s>0?`success`:`warning`},{label:`Runnable`,value:String(c),meta:`work items ready to claim next`},{label:`Active runs`,value:String(g),meta:`pipeline executions still in flight`,tone:g>0?`success`:`default`},{label:`Incidents`,value:String(r.length),meta:S>0?`${S} provider/runtime failures`:`clean recent event window`,tone:r.length>0?`danger`:`success`}]},{label:`Review`,items:[{label:`Human review`,value:String(u),meta:`findings waiting on operator sign-off`,tone:u>0?`warning`:`default`},{label:`Blocked`,value:String(l),meta:`access or context gap in execution`,tone:l>0?`danger`:`default`},{label:`Unassigned`,value:String(f),meta:`findings without a named owner`},{label:`Targets`,value:String(v),meta:`real target history in this workspace`}],note:x?`${x.scanTarget}: ${x.headline}`:`No recent runtime failures. Launch the next target from operations.`}]}}function br({children:e,dashboard:t,scans:n,onOpenPalette:r}){let i=d(),{panel:a,dismissPanel:o}=cn(),[s,l]=(0,L.useState)(()=>typeof window>`u`||window.matchMedia(`(min-width: 1280px)`).matches),f=t?.groups.filter(e=>e.latest.triageStatus===`new`).length??0,p=n?.filter(e=>e.status===`running`).length??0,m=t?.workers.filter(e=>e.isActive).length??0,h=t?.queue.runnable??0,g=u({queryKey:[`shell-recent-events`],queryFn:()=>c(18),refetchInterval:5e3}),_=(0,L.useMemo)(()=>vr(g.data?.events??[],n).slice(0,6),[g.data?.events,n]),v=_[0]??null,y=(0,L.useMemo)(()=>yr({pathname:i.pathname,dashboard:t,scans:n,incidents:_}),[t,i.pathname,_,n]),b=_.filter(e=>/quota|provider|model|rate limit|openai|anthropic|gemini|claude/i.test(`${e.headline} ${e.stage} ${e.actor??``}`)).length;return(0,L.useEffect)(()=>{let e=window.matchMedia(`(min-width: 1280px)`),t=()=>l(e.matches);return t(),e.addEventListener(`change`,t),()=>e.removeEventListener(`change`,t)},[]),(0,R.jsxs)(`div`,{className:`min-h-screen bg-background text-foreground`,children:[(0,R.jsxs)(`div`,{className:`flex min-h-screen`,children:[(0,R.jsxs)(`aside`,{className:`sticky top-0 hidden h-screen w-[22rem] shrink-0 border-r border-border bg-background xl:grid xl:grid-cols-[4.5rem_minmax(0,1fr)]`,children:[(0,R.jsxs)(`div`,{className:`flex h-screen flex-col items-center border-r border-border px-2 py-3`,children:[(0,R.jsx)(lr,{compact:!0,className:`size-9`}),(0,R.jsxs)(`nav`,{className:`mt-6 flex flex-1 flex-col items-center gap-2`,children:[(0,R.jsx)(xr,{to:`/desktop.html`,label:`Chat`,icon:I,reloadDocument:!0}),(0,R.jsx)(xr,{to:`/dashboard`,label:`Operations`,icon:ge}),(0,R.jsx)(xr,{to:`/findings`,label:`Findings`,icon:ee,badge:f}),(0,R.jsx)(xr,{to:`/runs`,label:`Runs`,icon:ye,badge:p}),(0,R.jsx)(xr,{to:`/live`,label:`Live workflow`,icon:be})]}),(0,R.jsxs)(`div`,{className:`flex flex-col items-center gap-3`,children:[(0,R.jsxs)(`div`,{className:`flex flex-col items-center gap-1 text-center`,children:[(0,R.jsx)(X,{variant:`ghost`,size:`icon-sm`,className:`text-muted-foreground`,onClick:r,"aria-label":`Open launchpad`,children:(0,R.jsx)(me,{className:`size-4`})}),(0,R.jsx)(`div`,{className:`text-[10px] uppercase tracking-[0.2em] text-muted-foreground`,children:`Cmd K`})]}),(0,R.jsxs)(`div`,{className:`w-full rounded-md bg-muted/40 px-2 py-2 text-center`,children:[(0,R.jsx)(`div`,{className:`text-[10px] uppercase tracking-[0.2em] text-muted-foreground`,children:`Queue`}),(0,R.jsx)(`div`,{className:`mt-1 text-sm font-medium text-foreground`,children:h})]})]})]}),(0,R.jsxs)(`div`,{className:`flex min-h-0 flex-col`,children:[(0,R.jsxs)(`div`,{className:`border-b border-border px-4 py-4`,children:[(0,R.jsx)(`div`,{className:`text-[10px] font-semibold uppercase tracking-[0.2em] text-muted-foreground`,children:gr(i.pathname)}),(0,R.jsx)(`div`,{className:`mt-2 text-base font-medium text-foreground`,children:y.title}),(0,R.jsx)(`div`,{className:`mt-1 text-sm leading-6 text-muted-foreground`,children:y.summary})]}),(0,R.jsx)(`div`,{className:`min-h-0 flex-1 overflow-y-auto px-3 py-3`,children:(0,R.jsxs)(`div`,{className:`space-y-5`,children:[y.sections.map(e=>(0,R.jsxs)(Cr,{label:e.label,children:[e.items.map(e=>(0,R.jsx)(wr,{label:e.label,value:e.value,meta:e.meta,tone:e.tone},e.label)),e.note?(0,R.jsx)(Er,{text:e.note}):null]},e.label)),(0,R.jsxs)(Cr,{label:`Hotkeys`,children:[(0,R.jsx)(Tr,{text:`Cmd/Ctrl+K launchpad`}),(0,R.jsx)(Tr,{text:`/ search`}),(0,R.jsx)(Tr,{text:`Esc close overlays`})]})]})})]})]}),(0,R.jsxs)(`div`,{className:`flex min-w-0 flex-1 flex-col`,children:[(0,R.jsx)(`header`,{className:`sticky top-0 z-20 border-b border-border bg-background/95 backdrop-blur`,children:(0,R.jsxs)(`div`,{className:`mx-auto flex max-w-[1800px] flex-col gap-3 px-4 py-3 sm:px-6 xl:flex-row xl:items-center xl:justify-between`,children:[(0,R.jsxs)(`div`,{className:`space-y-2`,children:[(0,R.jsxs)(`div`,{className:`flex items-center gap-2 xl:hidden`,children:[(0,R.jsxs)(mn,{children:[(0,R.jsx)(hn,{asChild:!0,children:(0,R.jsx)(X,{variant:`ghost`,size:`icon-sm`,"aria-label":`Open navigation`,children:(0,R.jsx)(ve,{className:`size-4`})})}),(0,R.jsxs)(vn,{side:`left`,className:`w-72 p-0`,children:[(0,R.jsxs)(yn,{className:`border-b border-border px-4 py-4 pr-12 text-left`,children:[(0,R.jsx)(`div`,{className:`mb-2`,children:(0,R.jsx)(lr,{})}),(0,R.jsx)(bn,{className:`text-base font-semibold text-foreground`,children:`Operator shell`}),(0,R.jsx)(xn,{className:`text-sm text-muted-foreground`,children:`Navigation, runtime posture, and route-specific context.`})]}),(0,R.jsxs)(`div`,{className:`flex flex-col gap-5 px-3 py-3`,children:[(0,R.jsxs)(`div`,{className:`flex flex-col gap-0.5`,children:[(0,R.jsx)(Sr,{to:`/desktop.html`,reloadDocument:!0,label:`Chat`,meta:`Scoped operator workspace`,icon:I}),(0,R.jsx)(Sr,{to:`/dashboard`,label:`Operations`,meta:`Launch, queue, worker control`,icon:ge}),(0,R.jsx)(Sr,{to:`/findings`,label:`Findings`,meta:`Evidence, review, chat context`,icon:ee,badge:f}),(0,R.jsx)(Sr,{to:`/runs`,label:`Runs`,meta:`Runs, provenance, timelines`,icon:ye,badge:p}),(0,R.jsx)(Sr,{to:`/live`,label:`Live workflow`,meta:`GemmaForge probe → leads → hunt`,icon:be})]}),y.sections.map(e=>(0,R.jsxs)(Cr,{label:e.label,children:[e.items.map(e=>(0,R.jsx)(wr,{label:e.label,value:e.value,meta:e.meta,tone:e.tone},e.label)),e.note?(0,R.jsx)(Er,{text:e.note}):null]},e.label))]})]})]}),(0,R.jsx)(lr,{compact:!0,className:`size-8 rounded-sm`})]}),(0,R.jsx)(ur,{children:(0,R.jsxs)(dr,{children:[(0,R.jsx)(fr,{children:(0,R.jsx)(pr,{children:hr(i.pathname)})}),(0,R.jsx)(mr,{}),(0,R.jsx)(fr,{children:(0,R.jsx)(pr,{children:gr(i.pathname)})})]})})]}),(0,R.jsxs)(`div`,{className:`flex flex-wrap items-center gap-2`,children:[(0,R.jsxs)(`div`,{className:`hidden flex-wrap items-center gap-2 lg:flex`,children:[(0,R.jsxs)(Dr,{tone:m>0?`success`:`warning`,children:[(0,R.jsx)(de,{className:`size-3.5`}),m>0?`${m} daemon live`:`daemon offline`]}),(0,R.jsx)(Dr,{tone:_.length>0?`danger`:`success`,children:_.length>0?`${_.length} incidents`:`runtime clean`}),b>0?(0,R.jsxs)(Dr,{tone:`danger`,children:[b,` provider`]}):null,v?(0,R.jsxs)(`div`,{className:`max-w-[24rem] truncate text-sm text-muted-foreground`,children:[v.scanTarget,`: `,v.headline]}):(0,R.jsxs)(`div`,{className:`text-sm text-muted-foreground`,children:[t?.groups.length??0,` finding families tracked`]})]}),(0,R.jsxs)(X,{variant:`default`,onClick:r,children:[(0,R.jsx)(me,{className:`size-4`}),`Launchpad`]})]})]})}),(0,R.jsxs)(`div`,{className:`mx-auto flex w-full max-w-[1800px] flex-1 min-h-0`,children:[(0,R.jsx)(`main`,{className:`min-w-0 flex-1 px-4 py-5 sm:px-6`,children:(0,R.jsx)(`div`,{className:`flex min-h-full min-w-0 flex-col gap-5`,children:e})}),a?(0,R.jsx)(`aside`,{className:`hidden w-[32rem] shrink-0 border-l border-border bg-background xl:flex xl:flex-col`,children:(0,R.jsxs)(`div`,{className:`sticky top-[4.5625rem] flex h-[calc(100vh-4.5625rem)] flex-col`,children:[(0,R.jsxs)(`div`,{className:`border-b border-border px-6 py-6 pr-12`,children:[(0,R.jsx)(`div`,{className:`font-heading text-base font-medium text-foreground`,children:a.title}),(0,R.jsx)(`div`,{className:`mt-1 text-sm text-muted-foreground`,children:a.description})]}),(0,R.jsx)(`div`,{className:`min-h-0 flex-1 overflow-y-auto`,children:a.content}),(0,R.jsx)(`div`,{className:`border-t border-border p-4`,children:(0,R.jsx)(X,{variant:`outline`,size:`sm`,onClick:o,children:`Close panel`})})]})}):null]})]})]}),(0,R.jsx)(mn,{open:!!a&&!s,onOpenChange:e=>{e||o()},children:(0,R.jsx)(vn,{side:`right`,className:`w-full overflow-y-auto p-0 sm:max-w-2xl`,children:a?(0,R.jsxs)(R.Fragment,{children:[(0,R.jsxs)(yn,{className:`border-b border-border pr-12`,children:[(0,R.jsx)(bn,{children:a.title}),(0,R.jsx)(xn,{children:a.description})]}),a.content]}):null})})]})}function xr({to:e,label:t,icon:n,badge:r=0,reloadDocument:i=!1}){return(0,R.jsx)(T,{to:e,"aria-label":t,reloadDocument:i,children:({isActive:e})=>(0,R.jsxs)(`div`,{className:Y(`relative flex size-11 items-center justify-center rounded-md transition-colors`,e?`bg-primary text-primary-foreground`:`text-muted-foreground hover:bg-muted hover:text-foreground`),children:[(0,R.jsx)(n,{className:`size-4`}),r>0?(0,R.jsx)(`span`,{className:`absolute right-1 top-1 min-w-4 rounded-sm bg-destructive px-1 text-center text-[9px] font-semibold leading-4 text-destructive-foreground`,children:r}):null,(0,R.jsx)(`span`,{className:`sr-only`,children:t})]})})}function Sr({to:e,label:t,meta:n,icon:r,badge:i=0,reloadDocument:a=!1}){return(0,R.jsx)(T,{to:e,reloadDocument:a,children:({isActive:e})=>(0,R.jsxs)(`div`,{className:Y(`flex items-start gap-2.5 rounded-sm px-3 py-2 text-[13px] font-medium transition-colors`,e?`bg-primary/8 text-foreground`:`text-foreground/80 hover:bg-primary/6 hover:text-foreground`),children:[(0,R.jsx)(r,{className:Y(`mt-0.5 size-4 shrink-0`,e&&`text-primary-text`)}),(0,R.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,R.jsx)(`div`,{className:`truncate`,children:t}),(0,R.jsx)(`div`,{className:Y(`truncate text-xs`,e?`text-foreground/70`:`text-muted-foreground`),children:n})]}),i>0?(0,R.jsx)(`span`,{className:`mt-0.5 rounded-sm bg-primary px-1.5 py-0.5 text-[10px] leading-none text-primary-foreground`,children:i}):null]})})}function Cr({label:e,children:t}){return(0,R.jsxs)(`section`,{className:`space-y-2`,children:[(0,R.jsx)(`div`,{className:`px-3 text-[10px] font-medium uppercase tracking-widest text-muted-foreground/70`,children:e}),(0,R.jsx)(`div`,{className:`flex flex-col gap-1`,children:t})]})}function wr({label:e,value:t,meta:n,tone:r=`default`}){return(0,R.jsx)(`div`,{className:`rounded-md border border-border bg-muted/20 px-3 py-3`,children:(0,R.jsxs)(`div`,{className:`flex items-start justify-between gap-3`,children:[(0,R.jsxs)(`div`,{className:`min-w-0`,children:[(0,R.jsx)(`div`,{className:`text-sm text-foreground`,children:e}),(0,R.jsx)(`div`,{className:`mt-1 text-xs leading-5 text-muted-foreground`,children:n})]}),(0,R.jsx)(`div`,{className:Y(`shrink-0 text-sm font-medium`,_r(r)),children:t})]})})}function Tr({text:e}){return(0,R.jsx)(`div`,{className:`px-3 py-2 text-sm text-muted-foreground`,children:e})}function Er({text:e}){return(0,R.jsx)(`div`,{className:`rounded-md border border-dashed border-border px-3 py-3 text-xs leading-5 text-muted-foreground`,children:e})}function Dr({children:e,tone:t=`default`}){return(0,R.jsx)(an,{variant:t===`success`?`success`:t===`warning`?`warning`:t===`danger`?`danger`:`neutral`,className:`gap-1.5`,children:e})}function Or({...e}){return(0,R.jsx)(P,{"data-slot":`dialog`,...e})}function kr({...e}){return(0,R.jsx)(N,{"data-slot":`dialog-portal`,...e})}function Ar({className:e,...t}){return(0,R.jsx)(ie,{"data-slot":`dialog-overlay`,className:Y(`fixed inset-0 isolate z-50 bg-background/80 duration-100 supports-backdrop-filter:backdrop-blur-sm data-open:animate-in data-open:fade-in-0 data-closed:animate-out data-closed:fade-out-0`,e),...t})}function jr({className:e,children:t,showCloseButton:n=!0,...r}){return(0,R.jsxs)(kr,{children:[(0,R.jsx)(Ar,{}),(0,R.jsxs)(oe,{"data-slot":`dialog-content`,className:Y(`fixed top-1/2 left-1/2 z-50 grid w-full max-w-[calc(100%-2rem)] -translate-x-1/2 -translate-y-1/2 gap-6 rounded-xl border border-border bg-popover p-6 text-sm text-popover-foreground shadow-sm duration-100 outline-none sm:max-w-md data-open:animate-in data-open:fade-in-0 data-open:zoom-in-95 data-closed:animate-out data-closed:fade-out-0 data-closed:zoom-out-95`,e),...r,children:[t,n&&(0,R.jsx)(ce,{"data-slot":`dialog-close`,asChild:!0,children:(0,R.jsxs)(X,{variant:`ghost`,className:`absolute top-4 right-4`,size:`icon-sm`,children:[(0,R.jsx)(ae,{className:`size-4`}),(0,R.jsx)(`span`,{className:`sr-only`,children:`Close`})]})})]})]})}function Mr({className:e,...t}){return(0,R.jsx)(`div`,{"data-slot":`dialog-header`,className:Y(`flex flex-col gap-1.5`,e),...t})}function Nr({className:e,...t}){return(0,R.jsx)(se,{"data-slot":`dialog-title`,className:Y(`font-heading text-base leading-none font-medium`,e),...t})}function Pr({className:e,...t}){return(0,R.jsx)(F,{"data-slot":`dialog-description`,className:Y(`text-sm text-muted-foreground *:[a]:underline *:[a]:underline-offset-3 *:[a]:hover:text-foreground`,e),...t})}var Fr=[`Actions`,`Pages`,`Findings`,`Runs`];function Ir({open:e,onOpenChange:t,dashboard:n,scans:i}){let a=C(),o=d(),c=x(),[l,f]=(0,L.useState)(``),p=(0,L.useDeferredValue)(l),m=o.pathname.match(/^\/(?:threads|findings)\/([^/]+)/)?.[1]??null,h=o.pathname.match(/^\/(?:runs|scans)\/([^/]+)/)?.[1]??null,g=u({queryKey:[`finding-family`,m],queryFn:()=>s(m),enabled:e&&!!m}),_=ue({mutationFn:({triageStatus:e,triageNote:t})=>r(m,e,t),onSuccess:async()=>{await Promise.all([c.invalidateQueries({queryKey:[`dashboard`]}),c.invalidateQueries({queryKey:[`finding-family`,m]})])}}),v=(0,L.useMemo)(()=>{let e=[{id:`page-chat`,group:`Pages`,label:`Open chat workspace`,meta:`Scoped operator conversation and approvals`,icon:I,keywords:[`chat operator workspace session scope approvals`],run:()=>window.location.assign(`/desktop.html`)},{id:`page-findings`,group:`Pages`,label:`Open findings workspace`,meta:`Evidence, chat handoff, disposition`,icon:he,keywords:[`findings families review evidence console handoff`],run:()=>a(`/findings`)},{id:`page-control`,group:`Pages`,label:`Open operations home`,meta:`Launch, queue, worker control`,icon:ge,keywords:[`operations dashboard overview launch workers queue`],run:()=>a(`/dashboard`)},{id:`page-scans`,group:`Pages`,label:`Open runs`,meta:`Run history and provenance`,icon:pe,keywords:[`scans runs timeline history`],run:()=>a(`/runs`)}];m&&e.unshift({id:`triage-accept`,group:`Actions`,label:`Accept selected finding`,meta:`Mark the finding family as accepted`,icon:xe,keywords:[`accept finding triage`],shortcut:`Enter`,run:()=>_.mutate({triageStatus:`accepted`,triageNote:g.data?.latest.triageNote??``})},{id:`triage-suppress`,group:`Actions`,label:`Suppress selected finding`,meta:`Suppress the finding family`,icon:Se,keywords:[`suppress finding triage`],shortcut:`Shift+S`,run:()=>_.mutate({triageStatus:`suppressed`,triageNote:g.data?.latest.triageNote??``})}),h&&e.unshift({id:`scan-detail`,group:`Actions`,label:`Focus selected scan timeline`,meta:`Open current run detail`,icon:pe,keywords:[`scan timeline detail current`],run:()=>a(`/runs/${h}`)});for(let t of n?.groups.slice(0,14)??[])e.push({id:`finding-${t.fingerprint}`,group:`Findings`,label:t.latest.title,meta:`${t.latest.severity} · ${t.latest.triageStatus}`,icon:he,keywords:[t.latest.title,t.latest.category,t.latest.severity,t.latest.triageStatus],run:()=>a(`/findings/${t.fingerprint}`)});for(let t of i?.slice(0,14)??[])e.push({id:`scan-${t.id}`,group:`Runs`,label:t.target,meta:`${t.status} · ${t.depth} · ${t.runtime}`,icon:pe,keywords:[t.target,t.status,t.depth,t.runtime,t.mode],run:()=>a(`/runs/${t.id}`)});return e},[n?.groups,a,c,i,m,g.data?.latest.triageNote,h,_]),y=(0,L.useMemo)(()=>{let e=p.trim().toLowerCase();return e?v.filter(t=>[t.label,t.meta,...t.keywords].join(` `).toLowerCase().includes(e)):v},[p,v]);return(0,L.useEffect)(()=>{e||f(``)},[e]),(0,R.jsx)(Or,{open:e,onOpenChange:t,children:(0,R.jsxs)(jr,{className:`overflow-hidden p-0 sm:max-w-2xl`,showCloseButton:!1,children:[(0,R.jsxs)(Mr,{className:`border-b border-border px-5 py-4 pr-12`,children:[(0,R.jsx)(Nr,{className:`text-[10px] font-semibold uppercase tracking-[0.2em] text-muted-foreground`,children:`Mission command`}),(0,R.jsx)(Pr,{className:`pt-2 text-sm text-muted-foreground`,children:`Search operations views, findings, runs, and control actions.`})]}),(0,R.jsx)(`div`,{className:`border-b border-border px-4 py-3`,children:(0,R.jsx)(pn,{autoFocus:!0,value:l,onChange:e=>f(e.target.value),placeholder:`Jump to a page, run, finding, or action`})}),(0,R.jsx)(ar,{className:`max-h-[60vh]`,children:(0,R.jsxs)(`div`,{className:`space-y-1 p-2`,children:[Fr.map(e=>{let n=y.filter(t=>t.group===e);return n.length===0?null:(0,R.jsxs)(`section`,{className:`space-y-1`,children:[(0,R.jsx)(`div`,{className:`px-3 py-2 text-[10px] font-semibold uppercase tracking-[0.16em] text-muted-foreground`,children:e}),n.map(e=>(0,R.jsxs)(`button`,{type:`button`,onClick:()=>{e.run(),t(!1)},className:`flex w-full items-center gap-3 rounded-md px-3 py-2 text-left transition-colors hover:bg-accent`,children:[(0,R.jsx)(`div`,{className:`inline-flex size-9 items-center justify-center rounded-md border border-border bg-muted text-primary-text`,children:(0,R.jsx)(e.icon,{className:`size-4`})}),(0,R.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,R.jsx)(`div`,{className:`font-medium text-foreground`,children:e.label}),(0,R.jsx)(`div`,{className:`truncate text-xs text-muted-foreground`,children:e.meta})]}),e.shortcut?(0,R.jsx)(`div`,{className:`text-xs tracking-widest text-muted-foreground`,children:e.shortcut}):null]},e.id))]},e)}),y.length===0?(0,R.jsx)(`div`,{className:`px-4 py-8 text-center text-sm text-muted-foreground`,children:`No matching commands.`}):null]})})]})})}var Lr=(0,L.lazy)(async()=>({default:(await f(async()=>{let{FindingsPage:e}=await import(`./findings-page-B4rwF6fZ.js`);return{FindingsPage:e}},__vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14]))).FindingsPage})),Rr=(0,L.lazy)(async()=>({default:(await f(async()=>{let{LivePage:e}=await import(`./live-page-DoNwpPAO.js`);return{LivePage:e}},__vite__mapDeps([15,1,4,2,5,6,7,16,14]))).LivePage})),zr=(0,L.lazy)(async()=>({default:(await f(async()=>{let{OverviewPage:e}=await import(`./overview-page-CmeWH17A.js`);return{OverviewPage:e}},__vite__mapDeps([17,1,3,4,2,5,6,7,18,8,19,20,12,14]))).OverviewPage})),Br=(0,L.lazy)(async()=>({default:(await f(async()=>{let{ScansPage:e}=await import(`./scans-page-CuhzWhHx.js`);return{ScansPage:e}},__vite__mapDeps([21,1,3,4,2,5,6,7,18,11,20,12,13]))).ScansPage}));function Vr(e){let t=e;return t?[`INPUT`,`TEXTAREA`,`SELECT`].includes(t.tagName)||t.isContentEditable:!1}function Hr({dashboard:e,scans:t}){return(0,R.jsx)(L.Suspense,{fallback:(0,R.jsx)(ln,{label:`Loading workspace`}),children:(0,R.jsxs)(p,{children:[(0,R.jsx)(w,{path:`/`,element:(0,R.jsx)(m,{to:`/dashboard`,replace:!0})}),(0,R.jsx)(w,{path:`/dashboard`,element:(0,R.jsx)(zr,{data:e})}),(0,R.jsx)(w,{path:`/threads`,element:(0,R.jsx)(Lr,{dashboard:e})}),(0,R.jsx)(w,{path:`/threads/:fingerprint`,element:(0,R.jsx)(Lr,{dashboard:e})}),(0,R.jsx)(w,{path:`/runs`,element:(0,R.jsx)(Br,{scans:t})}),(0,R.jsx)(w,{path:`/runs/:scanId`,element:(0,R.jsx)(Br,{scans:t})}),(0,R.jsx)(w,{path:`/findings`,element:(0,R.jsx)(Lr,{dashboard:e})}),(0,R.jsx)(w,{path:`/findings/:fingerprint`,element:(0,R.jsx)(Lr,{dashboard:e})}),(0,R.jsx)(w,{path:`/scans`,element:(0,R.jsx)(Br,{scans:t})}),(0,R.jsx)(w,{path:`/scans/:scanId`,element:(0,R.jsx)(Br,{scans:t})}),(0,R.jsx)(w,{path:`/live`,element:(0,R.jsx)(Rr,{})}),(0,R.jsx)(w,{path:`*`,element:(0,R.jsx)(un,{title:`Unknown route`,body:`This dashboard view does not exist yet.`})})]})})}function Ur(){let[e,t]=(0,L.useState)(!1),n=u({queryKey:[`dashboard`],queryFn:i,refetchInterval:5e3}),r=u({queryKey:[`scans`],queryFn:l,refetchInterval:5e3}),a=(0,L.useEffectEvent)(n=>{if((n.metaKey||n.ctrlKey)&&n.key.toLowerCase()===`k`){n.preventDefault(),t(e=>!e);return}!e&&n.key===`/`&&!Vr(n.target)&&(n.preventDefault(),t(!0))});return(0,L.useEffect)(()=>{let e=e=>a(e);return window.addEventListener(`keydown`,e),()=>window.removeEventListener(`keydown`,e)},[a]),(0,R.jsx)(sn,{children:(0,R.jsxs)(br,{dashboard:n.data,scans:r.data,onOpenPalette:()=>t(!0),children:[(0,R.jsx)(Ir,{open:e,onOpenChange:t,dashboard:n.data,scans:r.data}),n.isLoading||r.isLoading?(0,R.jsx)(ln,{label:`Operations`}):n.error?(0,R.jsx)(dn,{error:n.error}):r.error?(0,R.jsx)(dn,{error:r.error}):n.data&&r.data?(0,R.jsx)(Hr,{dashboard:n.data,scans:r.data}):(0,R.jsx)(un,{title:`No scan data available`,body:`Run a scan first, then reopen Operations.`})]})})}export{he as A,Y as C,xe as D,Se as E,ue as M,be as O,Ur as OperationsApp,Yt as S,Ce as T,nn as _,yn as a,$t as b,X as c,ln as d,cn as f,Xt as g,Zt as h,xn as i,de as j,ye as k,un as l,qt as m,mn as n,bn as o,an as p,vn as r,pn as s,ar as t,dn as u,Qt as v,Oe as w,tn as x,Jt as y};
|