@aidotnet/server-linux-arm64 0.5.2 → 0.7.0
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/bin/astra-server +2 -2
- package/bin/wwwroot/assets/ClientsPage-CwrpIsjp.js +11 -0
- package/bin/wwwroot/assets/ModelDetailPage-CDrpIJ2a.js +1 -0
- package/bin/wwwroot/assets/ModelsPage-C0SIEL78.js +1 -0
- package/bin/wwwroot/assets/Page-CsiaycmK.css +1 -0
- package/bin/wwwroot/assets/Page-D9s9brqr.js +3 -0
- package/bin/wwwroot/assets/PluginsPage-CU6HnW-3.js +2 -0
- package/bin/wwwroot/assets/PrivacyPage-B_Gvd1LU.js +1 -0
- package/bin/wwwroot/assets/PrivacyPage-C227LcwP.css +1 -0
- package/bin/wwwroot/assets/ProviderDetailPage-VHzmmtBT.js +3 -0
- package/bin/wwwroot/assets/ProvidersPage-B19CIw-g.css +1 -0
- package/bin/wwwroot/assets/ProvidersPage-Dj_CsU72.js +2 -0
- package/bin/wwwroot/assets/SettingsPage-BKlK87nl.js +1 -0
- package/bin/wwwroot/assets/SettingsPage-BWff0tKT.css +1 -0
- package/bin/wwwroot/assets/TokensPage-RhLk-cLA.js +1 -0
- package/bin/wwwroot/assets/TrayPanelPage-glZe4Vli.js +1 -0
- package/bin/wwwroot/assets/TrayPanelView-BPGmNn0R.js +1 -0
- package/bin/wwwroot/assets/arrow-down-dwUtKoOn.js +1 -0
- package/bin/wwwroot/assets/arrow-up-DFb4XkB6.js +1 -0
- package/bin/wwwroot/assets/checkbox-OZlTRG3n.css +1 -0
- package/bin/wwwroot/assets/checkbox-w2_7QuDk.js +1 -0
- package/bin/wwwroot/assets/cloud-download-C1VSdmBb.js +1 -0
- package/bin/wwwroot/assets/confirm-morph-B9k3rCnO.js +1 -0
- package/bin/wwwroot/assets/confirm-morph-C56YfpDu.css +1 -0
- package/bin/wwwroot/assets/download-DoTXPUWy.js +1 -0
- package/bin/wwwroot/assets/ellipsis-B2d4aPpF.js +1 -0
- package/bin/wwwroot/assets/external-link-DhHaJlE-.js +1 -0
- package/bin/wwwroot/assets/folder-open-DC0j6uC-.js +1 -0
- package/bin/wwwroot/assets/index-C8BQ1yWd.css +1 -0
- package/bin/wwwroot/assets/index-br322rzz.js +15 -0
- package/bin/wwwroot/assets/log-out-CtwqdEhG.js +1 -0
- package/bin/wwwroot/assets/overlays-Cnf3vGpI.css +1 -0
- package/bin/wwwroot/assets/overlays-CnzrFKmb.js +55 -0
- package/bin/wwwroot/assets/pencil-nlLBeib5.js +1 -0
- package/bin/wwwroot/assets/power-DQiCs26X.js +1 -0
- package/bin/wwwroot/assets/radio-cards-Byb8E5K7.js +1 -0
- package/bin/wwwroot/assets/radio-cards-CxuojLkJ.css +1 -0
- package/bin/wwwroot/assets/rotate-ccw-BLaDyhPe.js +1 -0
- package/bin/wwwroot/assets/use-transform-C8au3Jv4.js +1 -0
- package/bin/wwwroot/index.html +8 -2
- package/package.json +1 -1
- package/bin/wwwroot/assets/index-CtmOEnFy.js +0 -82
- package/bin/wwwroot/assets/index-DDEz0hKe.css +0 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{Dn as e,Dt as t,Et as n,F as r,Fa as i,G as a,H as o,Ia as s,J as c,Ji as l,Ki as u,Ln as d,Ot as f,Pa as p,Ri as m,Sn as h,Tn as g,Tt as _,Ui as v,V as y,Vn as b,X as x,Y as ee,Yi as S,a as C,dt as te,gi as w,ia as T,kt as E,na as D,nt as O,o as k,oa as A,r as ne,ra as j,st as re,ta as M,wt as ie,xr as ae,za as oe,zi as se}from"./overlays-CnzrFKmb.js";import{t as ce}from"./use-transform-C8au3Jv4.js";import{b as le,s as ue,t as de,x as fe}from"./Page-D9s9brqr.js";import{t as pe}from"./TrayPanelView-BPGmNn0R.js";import{t as me}from"./download-DoTXPUWy.js";import{t as he}from"./folder-open-DC0j6uC-.js";import{t as ge}from"./log-out-CtwqdEhG.js";import{t as _e}from"./rotate-ccw-BLaDyhPe.js";import{C as ve,_ as ye,g as N,n as be,t as P,v as xe,y as F}from"./index-br322rzz.js";import{t as Se}from"./radio-cards-Byb8E5K7.js";var Ce={name:`minus`,size:24,node:[[`path`,{d:`M5 12h14`,key:`1ays0h`}]]};Ce.node;var we=te(Ce),I={name:`panel-top`,size:24,node:[[`rect`,{width:`18`,height:`18`,x:`3`,y:`3`,rx:`2`,key:`afitv7`}],[`path`,{d:`M3 9h18`,key:`1pudct`}]]};I.node;var Te=te(I),Ee={name:`sliders-horizontal`,size:24,node:[[`path`,{d:`M10 5H3`,key:`1qgfaw`}],[`path`,{d:`M12 19H3`,key:`yhmn1j`}],[`path`,{d:`M14 3v4`,key:`1sua03`}],[`path`,{d:`M16 17v4`,key:`1q0r14`}],[`path`,{d:`M21 12h-9`,key:`1o4lsq`}],[`path`,{d:`M21 19h-5`,key:`1rlt1p`}],[`path`,{d:`M21 5h-7`,key:`1oszz2`}],[`path`,{d:`M8 10v4`,key:`tgpxqk`}],[`path`,{d:`M8 12H3`,key:`a7s4jb`}]]};Ee.node;var L=te(Ee),R=oe(s(),1),z={field:`_field_bhhp1_1`,head:`_head_bhhp1_6`,label:`_label_bhhp1_7`,limit:`_limit_bhhp1_9`,control:`_control_bhhp1_14`,step:`_step_bhhp1_22`,icon:`_icon_bhhp1_23`,valueWrap:`_valueWrap_bhhp1_34`,value:`_value_bhhp1_34`,affix:`_affix_bhhp1_38`,char:`_char_bhhp1_39`,number:`_number_bhhp1_42`,display:`_display_bhhp1_43`,mirror:`_mirror_bhhp1_45`,input:`_input_bhhp1_46`,column:`_column_bhhp1_52`,sizer:`_sizer_bhhp1_53`,glyph:`_glyph_bhhp1_54`,symbol:`_symbol_bhhp1_55`,messageSlot:`_messageSlot_bhhp1_57`,hint:`_hint_bhhp1_58`,words:`_words_bhhp1_60`,wordSlot:`_wordSlot_bhhp1_61`,wordSizer:`_wordSizer_bhhp1_62`,word:`_word_bhhp1_60`,srOnly:`_srOnly_bhhp1_64`},B=i(),{spring:V,duration:H,blur:U}=O,W=[...O.ease.enter],G=[...O.ease.standard],De=[0,1,2,3,4,5,6,7,8,9],Oe=6,ke=400,Ae=40,je=240,Me=1500,Ne=700,Pe=700,Fe=.22,Ie=4,Le=130,Re=(()=>{let e=2*Math.PI/(V.morph.visualDuration*1.2);return{type:`spring`,stiffness:e*e,damping:2*(1-V.morph.bounce)*e}})(),ze=e=>(String(e).split(`.`)[1]??``).length,Be=e=>e.replace(/[.*+?^${}()|[\]\\-]/g,`\\$&`),Ve=(e,t)=>typeof e==`function`?e(t):e??``,He=(e,t=10)=>Math.sign(e)*(1-1/(Math.abs(e)*.55/t+1))*t;function Ue(e,t){let n=t.formatToParts(e),r=n.reduce((e,t)=>e+(t.type===`integer`?t.value.length:0),0),i=0;return n.flatMap((e,t)=>e.type===`integer`?[...e.value].map(e=>({key:`i${--r}`,digit:Number(e)})):e.type===`fraction`?[...e.value].map(e=>({key:`f${i++}`,digit:Number(e)})):[{key:e.type===`group`?`g${r}`:e.type===`decimal`?`d`:e.type===`minusSign`?`m`:`${e.type}${t}`,text:e.value}])}var We={enter:e=>({width:0,scale:.6,opacity:0,y:`${e*.3}em`,filter:`blur(${U.soft}px)`}),center:{width:`auto`,scale:1,opacity:1,y:0,filter:`blur(0px)`,transitionEnd:{filter:`none`},transition:{width:V.morph,scale:V.morph,opacity:V.morph,y:V.snappy,filter:{duration:.3,ease:G}}},exit:e=>({width:0,scale:.6,opacity:0,y:`${e*-.3}em`,filter:`blur(${U.subtle}px)`,transition:{width:V.smooth,scale:V.smooth,y:{duration:H.fast,ease:G},opacity:{duration:H.instant},filter:{duration:H.instant}}})},K=e=>({width:`auto`,scale:1,opacity:e,y:0,filter:`none`}),q={enter:K(0),center:{...K(1),transition:{duration:H.instant}},exit:{width:0,opacity:0,transition:{duration:0}}},Ge={enter:K(1),center:{...K(1),transition:{duration:0}},exit:{width:0,opacity:0,transition:{duration:0}}};function Ke({position:e,digit:t}){let n=e=>((t-e)%10+15)%10-5,r=ce(e,e=>`${n(e)*1.05}em`),i=ce(e,e=>Math.max(0,1-Math.abs(n(e))**1.5*1.1)),a=ce(e,e=>Math.abs(n(e))>=1?`hidden`:`visible`),o=ce(e,e=>{let t=Math.abs(n(e));return t<.02||t>=1?`none`:`blur(${(t*U.soft*.75).toFixed(2)}px)`});return(0,B.jsx)(M.span,{className:z.glyph,style:{y:r,opacity:i,filter:o,visibility:a},children:t})}function qe({digit:e,direction:t,instant:n}){let r=j(),i=T(e),a=(0,R.useRef)({digit:e,target:e});return(0,R.useLayoutEffect)(()=>{let o=a.current;if(o.digit===e)return;let s=t>0?(e-o.digit+10)%10:-((o.digit-e+10)%10);Math.abs(s)>5&&(s-=Math.sign(s)*10),o.target+=s,o.digit=e,n||r?i.jump(o.target):D(i,o.target,V.snappy)},[e,t,n,i,r]),(0,B.jsxs)(B.Fragment,{children:[(0,B.jsx)(`span`,{className:z.sizer,children:`0`}),De.map(e=>(0,B.jsx)(Ke,{position:i,digit:e},e))]})}function Je({value:e,format:t,direction:n,instant:r}){let i=j(),a=r?Ge:i?q:We;return(0,B.jsx)(A,{initial:!1,custom:n,children:Ue(e,t).map(e=>(0,B.jsx)(M.span,{className:`digit`in e?z.column:z.symbol,custom:n,variants:a,initial:`enter`,animate:`center`,exit:`exit`,children:`digit`in e?(0,B.jsx)(qe,{digit:e.digit,direction:n,instant:r}):e.text},e.key))})}function Ye({text:e,direction:t,className:n}){let r=j();return(0,B.jsx)(`span`,{className:n,children:(0,B.jsx)(A,{initial:!1,custom:t,children:[...e].map((e,n)=>(0,B.jsx)(M.span,{className:z.char,custom:t,variants:r?q:We,initial:`enter`,animate:`center`,exit:`exit`,children:e},`${n}:${e}`))})})}var Xe=e=>{let t=e?.replace(/[^\d.-]/g,``);return t&&/\d/.test(t)&&Number.isFinite(Number(t))?Number(t):null},J=(e,t)=>{let n=e.split(` `);return t.split(` `).map((e,t)=>{let r=Xe(n[t]),i=Xe(e);return r!==null&&i!==null&&i<r?-1:1})},Ze={enter:e=>({opacity:0,y:`${e*.3}em`,filter:`blur(${U.soft}px)`}),center:{opacity:1,y:0,filter:`blur(0px)`,transitionEnd:{filter:`none`},transition:{duration:.22,ease:W,opacity:V.morph}},exit:e=>({opacity:0,y:`${e*-.3}em`,filter:`blur(${U.subtle}px)`,transition:{duration:.14,ease:G}})},Qe={enter:{opacity:0,y:0,filter:`none`},center:{opacity:1,y:0,filter:`none`,transition:{duration:H.instant}},exit:{opacity:0,transition:{duration:0}}};function Y({word:e,direction:t}){let n=j(),r=(0,R.useRef)(null),i=T(`auto`),a=(0,R.useRef)(!1);return(0,R.useLayoutEffect)(()=>{let e=r.current;if(!e||typeof ResizeObserver>`u`)return;let t=new ResizeObserver(()=>{!a.current||n?i.jump(e.offsetWidth):D(i,e.offsetWidth,V.morph),a.current=!0});return t.observe(e),()=>t.disconnect()},[n,i]),(0,B.jsxs)(M.span,{className:z.wordSlot,style:{width:i},children:[(0,B.jsx)(`span`,{ref:r,className:z.wordSizer,children:e}),(0,B.jsx)(A,{initial:!1,mode:`popLayout`,custom:t,children:(0,B.jsx)(M.span,{className:z.word,custom:t,variants:n?Qe:Ze,initial:`enter`,animate:`center`,exit:`exit`,children:e},e)})]})}function X({text:e}){let[t,n]=(0,R.useState)({text:e,directions:[]});t.text!==e&&n({text:e,directions:J(t.text,e)});let r=t.text===e?t.directions:J(t.text,e),i=e.split(` `);return(0,B.jsxs)(B.Fragment,{children:[(0,B.jsx)(`span`,{className:z.srOnly,children:e}),(0,B.jsx)(`span`,{className:z.words,"aria-hidden":`true`,children:i.map((e,t)=>(0,B.jsxs)(R.Fragment,{children:[t>0&&` `,(0,B.jsx)(Y,{word:e,direction:r[t]??1})]},t))})]})}function $e({id:e,text:t,className:n}){return(0,B.jsx)(A,{initial:!1,children:t?(0,B.jsx)(et,{id:e,text:t,className:n},`message`):null})}function et({id:e,text:t,className:n}){let r=j(),i=(0,R.useRef)(null),[a,o]=(0,R.useState)(`auto`);return(0,R.useLayoutEffect)(()=>{let e=i.current;if(!e||typeof ResizeObserver>`u`)return;let t=new ResizeObserver(([t])=>o(t.borderBoxSize?.[0]?.blockSize??e.offsetHeight));return t.observe(e),()=>t.disconnect()},[]),(0,B.jsx)(M.span,{className:z.messageSlot,initial:{height:0,opacity:0},animate:{height:a,opacity:1},exit:{height:0,opacity:0,transition:r?{duration:0}:{height:V.smooth,opacity:{duration:H.instant}}},transition:r?{duration:0}:{height:V.smooth,opacity:{duration:H.fast}},children:(0,B.jsx)(M.span,{ref:i,id:e,className:n,initial:!r&&{y:`0.35em`,filter:`blur(${U.soft}px)`},animate:{y:0,filter:`blur(0px)`},transition:{duration:r?0:H.standard,ease:W},children:(0,B.jsx)(X,{text:t})})})}function tt({id:e,edge:t,text:n}){let r=j();return(0,B.jsx)(A,{initial:!1,children:t!==0&&(0,B.jsx)(M.span,{id:e,className:z.limit,initial:r?{opacity:0}:{opacity:0,y:`${t*.45}em`,filter:`blur(${U.subtle}px)`},animate:{opacity:1,y:0,filter:`blur(0px)`,transitionEnd:{filter:`none`}},exit:{opacity:0,transition:{duration:r?H.instant:H.standard,ease:G}},transition:r?{duration:H.instant}:{y:V.snappy,opacity:{duration:H.fast},filter:{duration:H.fast}},children:n},`limit`)})}function nt({toward:e,label:t,disabled:n,controls:r,limit:i,pressed:a,iconRef:o,onPress:s,onRelease:c,onActivate:l}){let u=e>0?ue:we;return(0,B.jsx)(`button`,{type:`button`,className:z.step,disabled:n,"aria-controls":r,"aria-label":`${e>0?`Increase`:`Decrease`} ${t}`,"aria-disabled":i||void 0,"data-pressed":a||void 0,onPointerDown:e=>{e.button===0&&s()},onPointerUp:c,onPointerLeave:c,onPointerCancel:c,onMouseDown:e=>e.preventDefault(),onClick:e=>{e.detail===0&&l()},onContextMenu:e=>e.preventDefault(),children:(0,B.jsx)(`span`,{ref:o,className:z.icon,children:(0,B.jsx)(u,{size:16,strokeWidth:1.75,"aria-hidden":`true`})})})}function rt({label:e,value:t,defaultValue:n=0,onValueChange:r,min:i=0,max:a=2**53-1,step:o=1,largeStep:s,description:c,disabled:l,id:u,prefix:d,suffix:f,scrub:p=!1,locale:m=`en-US`,formatOptions:h,size:g=`md`,limitHint:_=!0}){let v=j(),y=(0,R.useId)(),b=u??y,x=c?`${b}-description`:void 0,ee=`${b}-limit`,S=o>0?o:1,[C,te]=(0,R.useState)(n),w=t??C,[E,O]=(0,R.useState)(``),[k,A]=(0,R.useState)(!1),[ne,re]=(0,R.useState)(0),[ie,ae]=(0,R.useState)(!1),[oe,se]=(0,R.useState)(``),[le,ue]=(0,R.useState)(0),[de,fe]=(0,R.useState)(!1),pe=(0,R.useRef)(null),me=(0,R.useRef)(null),he=(0,R.useRef)(null),ge=(0,R.useRef)(void 0),_e=(0,R.useRef)(void 0),ve=(0,R.useRef)(void 0),ye=(0,R.useRef)({edge:0,count:0,at:0}),N=(0,R.useRef)(null),be=(0,R.useRef)(null),P=(0,R.useRef)(w),xe=(0,R.useRef)(w),F=(0,R.useRef)(void 0),Se=(0,R.useRef)(null),Ce=(0,R.useRef)(!1),we=(0,R.useRef)(null),I=(0,R.useRef)(!1),Te=(0,R.useRef)(()=>!1),Ee=T(0),L=T(0),H=T(0),U=ce(()=>L.get()+H.get()),W=Number.isFinite(i)?i:0,G=Math.max(ze(S),ze(W)),De=h?.minimumFractionDigits??G,Ue=Math.max(De,h?.maximumFractionDigits??G),We=h?.useGrouping??!0,K=(0,R.useMemo)(()=>new Intl.NumberFormat(m,{minimumFractionDigits:De,maximumFractionDigits:Ue,useGrouping:We,numberingSystem:`latn`}),[m,De,Ue,We]),q=(0,R.useMemo)(()=>{let e=new Intl.NumberFormat(m).formatToParts(-1234.5);return{group:e.find(e=>e.type===`group`)?.value??`,`,decimal:e.find(e=>e.type===`decimal`)?.value??`.`}},[m]),Ge=e=>Number(e.toFixed(G))||0,Ke=e=>Math.min(a,Math.max(i,e)),qe=e=>Ge(W+Math.round((e-W)/S)*S),Xe=(e,t)=>{let n=(e-W)/S;return Ge(W+((t>0?Math.floor(n+1e-7):Math.ceil(n-1e-7))+t)*S)},J=e=>`${Ve(d,e)}${K.format(e)}${Ve(f,e)}`.trim();function Ze(e){let t=e.split(q.group).join(``).replace(q.decimal,`.`).replace(/[^\d.-]/g,``);if(!/\d/.test(t))return null;let n=Number(t);return Number.isFinite(n)?n:null}let Qe=k?Ze(E):null,Y=Qe??w,[X,et]=(0,R.useState)({value:Y,direction:1});X.value!==Y&&et({value:Y,direction:Y>X.value?1:-1});let rt=X.value===Y?X.direction:Y>X.value?1:-1;(0,R.useEffect)(()=>()=>{window.clearTimeout(F.current),window.clearTimeout(ge.current),window.clearTimeout(_e.current),window.clearTimeout(ve.current)},[]);function it(e,t){let n=performance.now(),r=ye.current;r.count=r.edge===e&&n-r.at<Pe?r.count+1:1,r.edge=e,r.at=n;let i=pe.current;if(i&&(i.dataset.strain=e>0?`max`:`min`,window.clearTimeout(ve.current),ve.current=window.setTimeout(()=>{delete i.dataset.strain},420)),!v){D(Ee,0,{...Re,velocity:-e*Le*(1+Math.min(r.count-1,Ie)*Fe)});let n=(e>0?he:me).current;n&&(t===`button`||t===`key`)&&D(n,{x:[0,-2.5,2.5,-1.5,1,0]},{duration:.32,ease:`easeOut`})}_&&(ue(e),window.clearTimeout(ge.current),ge.current=window.setTimeout(()=>ue(0),Me))}function Z(e,n){if(!Number.isFinite(e))return!1;let i=Ke(e),a=Math.sign(e-i);return a&&n!==`scrub`?(it(a>0?1:-1,n),se(`${J(i)}, ${a>0?`maximum`:`minimum`}`)):n===`button`&&i!==P.current&&se(J(i)),i!==P.current&&(P.current=i,t===void 0&&te(i),r?.(i),!0)}let Q=(e,t,n)=>Z(Xe(P.current,e*t),n);(0,R.useLayoutEffect)(()=>{P.current=w,Te.current=Q});function at(){let e=be.current;e&&we.current===null&&(we.current=e.getBoundingClientRect().left-L.get()-H.get())}(0,R.useLayoutEffect)(()=>{let e=we.current,t=be.current;if(we.current=null,I.current){I.current=!1;let e=N.current;if(e&&document.activeElement===e){let t=e.value.length;e.setSelectionRange(t,t)}}if(e===null||!t)return;let n=e-(t.getBoundingClientRect().left-L.get()-H.get());Math.abs(n)<.5||(H.set(H.get()+n),v?H.jump(0):D(H,0,V.morph))});function ot(){window.clearTimeout(_e.current),fe(!1)}function $(){if(!k)return;at(),A(!1),ot();let e=Ze(E);e!==null&&Z(qe(e),`type`)}function st(){window.clearTimeout(F.current),F.current=void 0,re(0)}function ct(e,t,n){st(),$();let r=Math.max(1,Math.round(t/S));n===`button`&&re(e);let i=0,a=()=>{let t=Te.current(e,r,n);F.current=window.setTimeout(a,t?Math.max(Ae,150*.86**++i):je)};F.current=window.setTimeout(a,Q(e,r,n)?ke:360)}function lt(e){let t=s??S*10,n={ArrowUp:[1,e.shiftKey?t:S],ArrowDown:[-1,e.shiftKey?t:S],PageUp:[1,t],PageDown:[-1,t]}[e.key];if(n){e.preventDefault(),e.repeat||ct(n[0],n[1],`key`);return}if(!k&&(e.key===`Home`&&Number.isFinite(i)||e.key===`End`&&a<2**53-1)){e.preventDefault(),Z(e.key===`Home`?i:a,`key`);return}e.key===`Enter`&&(e.preventDefault(),k?(I.current=!0,$()):e.currentTarget.select()),e.key===`Escape`&&k&&(e.preventDefault(),at(),A(!1),ot(),I.current=!0,Z(xe.current,`type`))}function ut(e){let t=RegExp(`[^0-9${Be(q.group)}${G||Ue?Be(q.decimal):``}${i<0?`\\-`:``}]`,`g`),n=e.replace(t,``);k||(xe.current=w),at(),O(n),A(!0);let r=Ze(n);r!==null&&r>=i&&r<=a&&qe(r)===r&&Z(r,`type`),ot(),r!==null&&r<i&&(_e.current=window.setTimeout(()=>fe(!0),Ne))}function dt(e){Ce.current=!1,p&&!l&&e.button===0&&($(),Se.current={pointer:e.pointerId,x:e.clientX,from:P.current,active:!1},e.currentTarget.setPointerCapture(e.pointerId))}function ft(e){let t=Se.current;if(!t||t.pointer!==e.pointerId)return;let n=e.clientX-t.x;if(!t.active){if(Math.abs(n)<3)return;t.active=!0,ae(!0)}let r=n/Oe,o=Math.trunc(r);Z(o?Xe(t.from,o):t.from,`scrub`);let s=t.from+r*S,c=s>a?(s-a)/S*Oe:s<i?(s-i)/S*Oe:0;L.set(v?0:He(c))}function pt(e){let t=Se.current;t&&t.pointer===e.pointerId&&(Se.current=null,t.active&&(Ce.current=!0,ae(!1),D(L,0,v?{duration:0}:V.snappy),se(J(P.current))))}let mt=t=>({toward:t,label:e,disabled:l,controls:b,limit:t>0?Y>=a:Y<=i,pressed:ne===t}),ht=Qe===null?0:Qe>a?1:Qe<i&&de?-1:0,gt=_?ht||le:0,_t=gt>0?a:i,vt=gt?typeof _==`function`?_(gt>0?`max`:`min`,_t):`${gt>0?`Max`:`Min`} ${J(_t)}`:``,yt=[x,ht&&_?ee:void 0].filter(Boolean).join(` `)||void 0;return(0,B.jsxs)(`div`,{className:z.field,"data-size":g,children:[(0,B.jsxs)(`div`,{className:z.head,children:[(0,B.jsx)(`label`,{htmlFor:b,className:z.label,"data-scrub":p&&!l||void 0,onPointerDown:dt,onPointerMove:ft,onPointerUp:pt,onPointerCancel:pt,onClick:e=>{Ce.current&&=(e.preventDefault(),!1)},children:e}),(0,B.jsx)(tt,{id:ee,edge:gt,text:vt})]}),(0,B.jsxs)(`div`,{ref:pe,className:z.control,"data-scrubbing":ie||void 0,"data-disabled":l||void 0,"data-warn":ht?ht>0?`max`:`min`:void 0,children:[(0,B.jsx)(nt,{...mt(-1),iconRef:me,onPress:()=>ct(-1,S,`button`),onRelease:st,onActivate:()=>{$(),Q(-1,1,`button`)}}),(0,B.jsx)(`div`,{className:z.valueWrap,onMouseDown:e=>{e.target!==N.current&&e.preventDefault()},onClick:e=>{!l&&e.target!==N.current&&(N.current?.focus(),N.current?.select())},children:(0,B.jsxs)(M.span,{ref:be,className:z.value,style:{x:U,y:Ee},children:[(0,B.jsx)(Ye,{text:Ve(d,Y),direction:rt,className:z.affix}),(0,B.jsxs)(`span`,{className:z.number,children:[(0,B.jsx)(`span`,{className:z.display,"data-hidden":k||void 0,"aria-hidden":`true`,children:(0,B.jsx)(Je,{value:Y,format:K,direction:rt,instant:k})}),k&&(0,B.jsx)(`span`,{className:z.mirror,"aria-hidden":`true`,children:E}),(0,B.jsx)(`input`,{ref:N,id:b,className:z.input,type:`text`,role:`spinbutton`,inputMode:i<0?`text`:G||Ue?`decimal`:`numeric`,autoComplete:`off`,spellCheck:!1,value:k?E:K.format(w),disabled:l,"aria-describedby":yt,"aria-invalid":ht?!0:void 0,"aria-valuenow":w,"aria-valuetext":J(w),"aria-valuemin":Number.isFinite(i)?i:void 0,"aria-valuemax":a<2**53-1?a:void 0,onChange:e=>ut(e.currentTarget.value),onKeyDown:lt,onKeyUp:e=>{/^(Arrow(Up|Down)|Page(Up|Down))$/.test(e.key)&&st()},onBlur:()=>{st(),$()}})]}),(0,B.jsx)(Ye,{text:Ve(f,Y),direction:rt,className:z.affix})]})}),(0,B.jsx)(nt,{...mt(1),iconRef:he,onPress:()=>ct(1,S,`button`),onRelease:st,onActivate:()=>{$(),Q(1,1,`button`)}})]}),(0,B.jsx)($e,{id:x,text:c,className:z.hint}),(0,B.jsx)(`span`,{className:z.srOnly,"aria-live":`polite`,"aria-atomic":`true`,children:oe})]})}var it=[`overview`,`cost`,`chart`,`topModel`,`compareYesterday`,`cacheHitRate`,`quota`];function Z(){let{t:e}=g(),n=p(),[i,o]=t(),s=f(),c=ie(i,{enabled:s.running,background:!1,live:!0}),l=t=>(0,B.jsx)(a,{label:e(`settings.tray.section.${t}`),detail:e(`settings.tray.section.${t}.hint`),children:(0,B.jsx)(x,{checked:i.sections[t],label:e(`settings.tray.section.${t}`),onChange:e=>o(E(i,t,e))})},t);return(0,B.jsxs)(`div`,{className:`mx-auto grid max-w-[1120px] items-start gap-4 lg:grid-cols-[minmax(0,1fr)_392px]`,children:[(0,B.jsxs)(`div`,{className:`flex min-w-0 flex-col gap-4`,children:[(0,B.jsx)(Q,{title:e(`settings.tray.titleHeading`),hint:e(`settings.tray.titleHint`),children:(0,B.jsx)(`div`,{className:`p-4`,children:(0,B.jsx)(Se,{"aria-label":e(`settings.tray.titleHeading`),minColumnWidth:150,value:i.title,onValueChange:e=>o({...i,title:e}),options:u.map(t=>({value:t,label:e(`settings.tray.title.${t}`),description:e(`settings.tray.title.${t}.hint`)}))})})}),(0,B.jsx)(Q,{title:e(`settings.tray.usageHeading`),children:(0,B.jsx)(`div`,{className:`divide-y divide-[var(--border)]`,children:it.map(l)})}),(0,B.jsx)(Q,{title:e(`settings.tray.clientsHeading`),children:(0,B.jsx)(`div`,{className:`divide-y divide-[var(--border)]`,children:l(`clients`)})}),(0,B.jsx)(`div`,{children:(0,B.jsx)(r,{size:`sm`,variant:`plain`,icon:(0,B.jsx)(_e,{className:`size-3.5`}),onClick:()=>o(_),children:e(`settings.tray.reset`)})})]}),(0,B.jsx)(`div`,{className:`lg:sticky lg:top-0`,children:(0,B.jsxs)(Q,{title:e(`settings.tray.previewHeading`),hint:e(`settings.tray.previewHint`),children:[(0,B.jsx)(`div`,{className:`flex justify-center bg-[var(--surface-muted)] px-4 py-5`,children:(0,B.jsx)(pe,{preview:!0,className:`w-[360px] max-w-full shadow-[0_12px_40px_rgb(0_0_0/0.25)]`,prefs:i,state:s,data:c,onRefresh:()=>void n.invalidateQueries({queryKey:[`stats`]})})}),(0,B.jsx)(`p`,{className:`border-t border-[var(--border)] px-4 py-2.5 text-[11px] text-[var(--text-muted)]`,children:e(`settings.tray.previewFooter`)})]})})]})}function Q({title:e,hint:t,children:n}){let{t:r}=g();return(0,B.jsxs)(`section`,{className:`card`,children:[(0,B.jsxs)(`header`,{className:`border-b border-[var(--border)] px-4 py-3`,children:[(0,B.jsx)(`div`,{className:`text-[11px] text-[var(--text-muted)]`,children:r(`settings.tab.tray`)}),(0,B.jsx)(`h3`,{className:`text-[14px] font-semibold`,children:e}),t&&(0,B.jsx)(`p`,{className:`mt-0.5 text-[12px] text-[var(--text-secondary)]`,children:t})]}),n]})}var at=[`general`,`tray`];function ot(){let{t:e}=g(),{tab:t}=fe(),r=le(),i=n(),a=i&&at.includes(t)?t:`general`;return i?(0,B.jsx)(de,{title:e(`nav.settings`),children:(0,B.jsxs)(N,{value:a,onValueChange:e=>r(e===`general`?`/settings`:`/settings/${e}`,{replace:!0}),children:[(0,B.jsxs)(xe,{"aria-label":e(`nav.settings`),children:[(0,B.jsx)(F,{value:`general`,children:(0,B.jsxs)(`span`,{className:`inline-flex items-center gap-1.5`,children:[(0,B.jsx)(L,{className:`size-3.5`}),e(`settings.tab.general`)]})}),(0,B.jsx)(F,{value:`tray`,children:(0,B.jsxs)(`span`,{className:`inline-flex items-center gap-1.5`,children:[(0,B.jsx)(Te,{className:`size-3.5`}),e(`settings.tab.tray`)]})})]}),(0,B.jsx)(ye,{value:`general`,className:`pt-5`,children:(0,B.jsx)($,{})}),(0,B.jsx)(ye,{value:`tray`,className:`pt-5`,children:(0,B.jsx)(Z,{})})]})}):(0,B.jsx)(de,{title:e(`nav.settings`),children:(0,B.jsx)($,{})})}function $(){let{t,locale:n,setLocale:i}=g(),o=be(),s=w(),u=m(),f=p(),_=v(),b=d(),te=ae(),{toast:T,confirm:E}=k(),D=s.data,O=e=>u.mutate(e,{onError:e=>T(C(e),`error`)}),A=e=>{i(e),O({locale:e})},j=async e=>{await h.copy(e)&&T(t(`common.copied`))};return(0,B.jsxs)(`div`,{className:`mx-auto max-w-[680px]`,children:[(0,B.jsxs)(y,{title:t(`settings.appearance`),children:[(0,B.jsx)(a,{label:t(`settings.theme`),children:(0,B.jsx)(c,{ariaLabel:t(`settings.theme`),value:o.theme,onChange:o.setTheme,items:[{value:`system`,label:t(`settings.theme.system`)},{value:`light`,label:t(`settings.theme.light`)},{value:`dark`,label:t(`settings.theme.dark`)}]})}),(0,B.jsx)(a,{label:t(`settings.accent`),detail:o.accentChoice===`system`?o.systemAccent?t(`settings.accent.followingSystem`):t(`settings.accent.systemUnavailable`):void 0,children:(0,B.jsx)(ne,{className:`w-40`,ariaLabel:t(`settings.accent`),value:o.accentChoice,onChange:o.setAccentChoice,options:[{value:`system`,label:t(`settings.accent.system`)},...P.map(e=>({value:e.color,label:t(`settings.accent.${e.id}`)}))]})}),(0,B.jsx)(a,{label:t(`settings.language`),detail:t(`settings.languageHint`),children:(0,B.jsx)(c,{ariaLabel:t(`settings.language`),value:n,onChange:A,items:[{value:`zh`,label:`中文`},{value:`en`,label:`English`}]})})]}),D?(0,B.jsxs)(B.Fragment,{children:[(0,B.jsxs)(y,{title:t(`settings.gateway`),footer:t(`settings.gatewayFooter`),children:[(0,B.jsx)(a,{label:t(`settings.gatewayUrl`),detail:`${D.gatewayBaseUrl}/v1`,children:(0,B.jsx)(r,{size:`sm`,variant:`plain`,icon:(0,B.jsx)(re,{className:`size-3.5`}),"aria-label":t(`common.copy`),onClick:()=>void j(`${D.gatewayBaseUrl}/v1`)})}),(0,B.jsx)(a,{label:t(`settings.listen`),detail:`${D.host}:${D.port}`}),(0,B.jsx)(a,{label:t(`settings.dataDir`),detail:D.dataDir,children:h.canOpenPaths?(0,B.jsx)(r,{size:`sm`,variant:`plain`,icon:(0,B.jsx)(he,{className:`size-3.5`}),"aria-label":t(`settings.openFolder`),onClick:()=>void h.openPath(D.dataDir)}):(0,B.jsx)(r,{size:`sm`,variant:`plain`,icon:(0,B.jsx)(re,{className:`size-3.5`}),"aria-label":t(`common.copy`),onClick:()=>void j(D.dataDir)})}),(0,B.jsx)(a,{label:t(`settings.requireKey`),detail:t(`settings.requireKeyHint`),children:(0,B.jsx)(x,{checked:D.requireGatewayKey,label:t(`settings.requireKey`),onChange:async e=>{(e||await E({title:t(`settings.requireKeyOffConfirm`),detail:t(`settings.requireKeyOffDetail`),confirmLabel:t(`settings.requireKeyOff`),destructive:!0}))&&O({requireGatewayKey:e})}})}),(0,B.jsx)(a,{label:t(`settings.streamIdle`),detail:t(`settings.streamIdleHint`),children:(0,B.jsx)(lt,{label:t(`settings.streamIdle`),value:D.streamIdleTimeoutSec,onCommit:e=>O({streamIdleTimeoutSec:e??300}),suffix:` s`})})]}),(0,B.jsx)(ct,{settings:D}),(0,B.jsx)(y,{title:t(`settings.quota`),footer:t(`settings.quota.autoIntervalHint`),children:(0,B.jsx)(a,{label:t(`settings.quota.autoInterval`),children:(0,B.jsx)(lt,{label:t(`settings.quota.autoInterval`),value:D.quotaAutoIntervalMinutes,onCommit:t=>u.mutate({quotaAutoIntervalMinutes:t??30},{onSuccess:()=>void f.invalidateQueries({queryKey:e.providers}),onError:e=>T(C(e),`error`)}),suffix:` ${t(`settings.minutes`)}`})})}),(0,B.jsxs)(y,{title:t(`settings.logging`),footer:t(`settings.debugBodiesHint`),children:[(0,B.jsx)(a,{label:t(`settings.debugBodies`),children:(0,B.jsx)(x,{checked:D.debugBodies,label:t(`settings.debugBodies`),onChange:e=>O({debugBodies:e})})}),(0,B.jsx)(a,{label:t(`settings.bodyRetention`),children:(0,B.jsx)(lt,{label:t(`settings.bodyRetention`),value:D.bodyRetentionDays,onCommit:e=>O({bodyRetentionDays:e??7}),suffix:` ${t(`settings.days`)}`})}),(0,B.jsxs)(a,{label:t(`settings.requestRetention`),detail:D.requestRetentionDays==null?t(`settings.keepForever`):void 0,children:[(0,B.jsx)(x,{checked:D.requestRetentionDays!=null,label:t(`settings.requestRetention`),onChange:e=>O({requestRetentionDays:e?90:null})}),D.requestRetentionDays!=null&&(0,B.jsx)(lt,{label:t(`settings.requestRetention`),value:D.requestRetentionDays,onCommit:e=>O({requestRetentionDays:e??90}),suffix:` ${t(`settings.days`)}`})]})]}),(0,B.jsx)(y,{title:t(`settings.effort`),footer:t(`settings.effortHint`),children:[`low`,`medium`,`high`].map(e=>(0,B.jsx)(a,{label:t(`settings.effort.${e}`),children:(0,B.jsx)(lt,{label:t(`settings.effort.${e}`),value:D.effortBudgets[e],onCommit:t=>O({effortBudgets:{...D.effortBudgets,[e]:t??D.effortBudgets[e]}}),suffix:` tokens`,step:1024})},e))})]}):s.isError?(0,B.jsx)(`div`,{className:`text-[12px] text-[var(--danger)]`,children:C(s.error)}):(0,B.jsx)(ee,{className:`mx-auto my-8`}),(0,B.jsxs)(y,{title:t(`settings.about`),children:[(0,B.jsx)(a,{label:t(`settings.serverVersion`),detail:_.data?`${_.data.version} · API ${_.data.apiVersion}`:`—`}),S&&(0,B.jsx)(a,{label:t(`settings.desktopVersion`),detail:l()?.version||`—`}),(0,B.jsx)(st,{}),S&&(0,B.jsx)(a,{label:t(`settings.logs`),onClick:()=>void h.revealLogs(),children:(0,B.jsx)(he,{className:`size-4 text-[var(--text-secondary)]`})}),b.data?.required&&(0,B.jsx)(a,{label:t(`settings.logout`),onClick:()=>te.mutate(),children:(0,B.jsx)(ge,{className:`size-4 text-[var(--text-secondary)]`})})]})]})}function st(){let{t}=g(),{toast:n}=k(),i=p(),o=m(),s=se(),c=b(),u=s.data,d=l()?.updates??null,[f,h]=(0,R.useState)(!1),_=()=>c.mutate(void 0,{onSuccess:e=>n(e.available?t(`settings.updateAvailable`,{version:e.available}):t(`settings.upToDate`)),onError:e=>n(C(e),`error`)}),v=()=>{d&&!f&&(h(!0),d.apply().then(r=>{r===`server`?(n(t(`settings.updateApplied`)),i.invalidateQueries({queryKey:e.version}),i.invalidateQueries({queryKey:e.update})):n(t(r===`desktop`?`settings.updateDesktopRelaunch`:`settings.upToDate`))}).catch(e=>n(C(e),`error`)).finally(()=>h(!1)))},y=u?.lastCheckAt?new Date(u.lastCheckAt).toLocaleString():void 0,S=u?.available?d?t(`settings.updateAvailable`,{version:u.available}):`${t(`settings.updateAvailable`,{version:u.available})} ${t(`settings.updateApplyHint`)}`:void 0;return(0,B.jsxs)(B.Fragment,{children:[(0,B.jsx)(a,{label:t(`settings.autoCheck`),detail:u&&!u.feedConfigured?t(`settings.updateCheckFailed`,{error:`feed-not-configured`}):void 0,children:(0,B.jsx)(x,{checked:u?.autoCheck??!0,label:t(`settings.autoCheck`),onChange:e=>o.mutate({updateAutoCheck:e},{onError:e=>n(C(e),`error`)})})}),(0,B.jsxs)(a,{label:t(`settings.checkUpdates`),detail:c.isError?t(`settings.updateCheckFailed`,{error:C(c.error)}):u?.available?S:y?t(`settings.lastChecked`,{time:y}):void 0,children:[(0,B.jsx)(r,{size:`sm`,variant:`plain`,disabled:c.isPending,onClick:_,children:c.isPending?(0,B.jsx)(ee,{className:`size-3.5`}):(0,B.jsx)(ve,{className:`size-3.5`})}),d&&u?.available&&(0,B.jsx)(r,{size:`sm`,variant:`plain`,disabled:f,"aria-label":t(`settings.updateApply`),onClick:v,children:f?(0,B.jsx)(ee,{className:`size-3.5`}):(0,B.jsx)(me,{className:`size-3.5`})})]})]})}function ct({settings:e}){let{t}=g(),{toast:n}=k(),i=m(),[s,l]=(0,R.useState)(e.proxyMode),[u,d]=(0,R.useState)({url:e.proxyUrl??``,username:e.proxyUsername??``,password:``,bypass:e.proxyBypass??``});(0,R.useEffect)(()=>l(e.proxyMode),[e.proxyMode]),(0,R.useEffect)(()=>d({url:e.proxyUrl??``,username:e.proxyUsername??``,password:``,bypass:e.proxyBypass??``}),[e.proxyUrl,e.proxyUsername,e.proxyBypass,e.hasProxyPassword]);let f=t=>{l(t),(t!==`custom`||e.proxyUrl)&&i.mutate({proxyMode:t},{onError:e=>n(C(e),`error`)})},p=()=>i.mutate({proxyMode:`custom`,proxyUrl:u.url.trim()||null,proxyUsername:u.username.trim()||null,proxyBypass:u.bypass.trim()||null,...u.password?{proxyPassword:u.password}:{}},{onSuccess:()=>n(t(`settings.proxy.saved`)),onError:e=>n(C(e),`error`)}),h=s!==e.proxyMode||u.url!==(e.proxyUrl??``)||u.username!==(e.proxyUsername??``)||u.password!==``||u.bypass!==(e.proxyBypass??``);return(0,B.jsxs)(y,{title:t(`settings.proxy`),footer:t(`settings.proxy.footer`),children:[(0,B.jsx)(a,{label:t(`settings.proxy.mode`),detail:t(`settings.proxy.mode.${s}.hint`),children:(0,B.jsx)(c,{ariaLabel:t(`settings.proxy.mode`),value:s,onChange:f,items:[{value:`system`,label:t(`settings.proxy.mode.system`)},{value:`custom`,label:t(`settings.proxy.mode.custom`)},{value:`direct`,label:t(`settings.proxy.mode.direct`)}]})}),s===`custom`&&(0,B.jsxs)(B.Fragment,{children:[(0,B.jsx)(a,{label:t(`settings.proxy.url`),detail:t(`settings.proxy.urlHint`),children:(0,B.jsx)(o,{className:`w-64`,mono:!0,"aria-label":t(`settings.proxy.url`),placeholder:`http://127.0.0.1:7890`,value:u.url,onChange:e=>d({...u,url:e.target.value})})}),(0,B.jsx)(a,{label:t(`settings.proxy.username`),detail:t(`settings.proxy.optional`),children:(0,B.jsx)(o,{className:`w-64`,autoComplete:`off`,"aria-label":t(`settings.proxy.username`),value:u.username,onChange:e=>d({...u,username:e.target.value})})}),(0,B.jsx)(a,{label:t(`settings.proxy.password`),detail:e.hasProxyPassword?t(`settings.proxy.passwordSaved`):t(`settings.proxy.optional`),children:(0,B.jsx)(o,{className:`w-64`,type:`password`,autoComplete:`new-password`,"aria-label":t(`settings.proxy.password`),placeholder:e.hasProxyPassword?`••••••••`:void 0,value:u.password,onChange:e=>d({...u,password:e.target.value})})}),(0,B.jsx)(a,{label:t(`settings.proxy.bypass`),detail:t(`settings.proxy.bypassHint`),children:(0,B.jsx)(o,{className:`w-64`,mono:!0,"aria-label":t(`settings.proxy.bypass`),placeholder:`example.com, *.lan`,value:u.bypass,onChange:e=>d({...u,bypass:e.target.value})})}),(0,B.jsx)(`div`,{className:`flex justify-end px-4 py-2`,children:(0,B.jsx)(r,{size:`sm`,disabled:!h||!u.url.trim()||i.isPending,onClick:p,children:t(`common.save`)})})]})]})}function lt({label:e,value:t,onCommit:n,suffix:r,step:i=1}){let[a,o]=(0,R.useState)(t);(0,R.useEffect)(()=>o(t),[t]);let s=(0,R.useRef)(n);return(0,R.useEffect)(()=>{s.current=n}),(0,R.useEffect)(()=>{if(a===t)return;let e=setTimeout(()=>s.current(a),600);return()=>clearTimeout(e)},[a,t]),(0,B.jsx)(`div`,{className:`astra-label-hidden w-36`,children:(0,B.jsx)(rt,{label:e,size:`sm`,value:a,onValueChange:o,min:0,step:i,suffix:r})})}export{ot as SettingsPage};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
._field_bhhp1_1{--nf-height:var(--control-height-md);--nf-step:34px;--nf-inset:3px;--nf-text:var(--text-base);--nf-width:var(--number-field-width,196px);--nf-limit:color-mix(in oklab, var(--warning) 72%, var(--foreground));min-width:0;display:grid}._field_bhhp1_1[data-size=sm]{--nf-height:var(--control-height-sm);--nf-step:28px;--nf-inset:3px;--nf-text:var(--text-sm);--nf-width:var(--number-field-width,164px)}._field_bhhp1_1[data-size=lg]{--nf-height:var(--control-height-lg);--nf-step:40px;--nf-inset:4px;--nf-text:var(--text-lg);--nf-width:var(--number-field-width,228px)}:root[data-theme=dark] ._field_bhhp1_1{--nf-limit:color-mix(in oklab, var(--warning) 88%, var(--foreground))}._head_bhhp1_6{width:min(100%, var(--nf-width));justify-content:space-between;align-items:baseline;gap:var(--space-3);margin-bottom:var(--space-2);display:flex}._label_bhhp1_7{min-width:0;color:var(--foreground);font-size:var(--text-sm);font-weight:500;line-height:var(--leading-body);letter-spacing:var(--tracking-body)}._field_bhhp1_1[data-size=sm] ._label_bhhp1_7{font-size:var(--text-xs)}._limit_bhhp1_9{color:var(--nf-limit);font-size:var(--text-xs);font-weight:500;line-height:var(--leading-body);letter-spacing:var(--tracking-body);font-variant-numeric:tabular-nums;white-space:nowrap;flex:none}._label_bhhp1_7[data-scrub]{cursor:ew-resize;touch-action:pan-y;-webkit-user-select:none;user-select:none}._control_bhhp1_14{width:min(100%, var(--nf-width));min-height:var(--nf-height);border:1px solid var(--border);border-radius:var(--radius-control);padding:var(--nf-inset);background:var(--surface);transition:border-color var(--duration-fast) var(--ease-standard), background-color var(--duration-standard) var(--ease-standard), opacity var(--duration-fast) var(--ease-standard);align-items:center;gap:2px;display:flex}@media (hover:hover) and (pointer:fine){:is(._control_bhhp1_14:hover,._field_bhhp1_1:has(._label_bhhp1_7[data-scrub]:hover) ._control_bhhp1_14){border-color:var(--border-strong)}}._control_bhhp1_14[data-scrubbing]{border-color:var(--foreground)}._control_bhhp1_14:has(input:focus){border-color:var(--foreground)}._control_bhhp1_14[data-warn],._control_bhhp1_14[data-warn]:hover{border-color:color-mix(in oklab, var(--warning) 55%, var(--border));background:color-mix(in oklab, var(--warning) 5%, var(--surface))}._control_bhhp1_14[data-warn]:has(input:focus){border-color:color-mix(in oklab, var(--warning) 80%, var(--border))}._control_bhhp1_14[data-disabled]{opacity:.5;background:var(--surface-muted)}._step_bhhp1_22{width:var(--nf-step);height:var(--nf-step);flex:0 0 var(--nf-step);border-radius:calc(var(--radius-control) - var(--nf-inset) - 1px);color:var(--text-secondary);cursor:pointer;touch-action:manipulation;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;-webkit-tap-highlight-color:transparent;transition:background-color var(--duration-fast) var(--ease-standard), color var(--duration-fast) var(--ease-standard), opacity var(--duration-standard) var(--ease-standard);background:0 0;border:0;place-items:center;padding:0;display:grid}._icon_bhhp1_23{place-items:center;display:grid}._icon_bhhp1_23 svg{transition:transform var(--duration-spring) var(--ease-spring)}@media (hover:hover) and (pointer:fine){._step_bhhp1_22:hover:not(:disabled,[aria-disabled=true]){background:var(--surface-muted);color:var(--foreground)}}._step_bhhp1_22:is(:active,[data-pressed]):not(:disabled,[aria-disabled=true]){background:color-mix(in oklab, var(--foreground) 10%, var(--surface));color:var(--foreground);transition:background-color 60ms linear,color 60ms linear}._step_bhhp1_22:is(:active,[data-pressed]):not(:disabled,[aria-disabled=true]) svg{transition:transform 90ms var(--ease-standard);transform:scale(.82)}._step_bhhp1_22:focus-visible{background:var(--surface-muted);color:var(--foreground);outline:none}._step_bhhp1_22[aria-disabled=true]{opacity:.32;cursor:not-allowed}._step_bhhp1_22:disabled{opacity:.35;cursor:not-allowed}._control_bhhp1_14[data-strain=max] ._step_bhhp1_22[aria-disabled=true]:last-child,._control_bhhp1_14[data-strain=min] ._step_bhhp1_22[aria-disabled=true]:first-child{opacity:.6;color:var(--nf-limit);transition:opacity 60ms linear,color 60ms linear}._valueWrap_bhhp1_34{cursor:text;flex:1;justify-content:center;align-self:stretch;align-items:center;min-width:0;display:flex;position:relative}._control_bhhp1_14[data-disabled] ._valueWrap_bhhp1_34{cursor:not-allowed}._value_bhhp1_34{white-space:nowrap;color:var(--foreground);font-size:var(--nf-text);transition:color var(--duration-standard) var(--ease-standard);font-weight:500;line-height:var(--leading-body);letter-spacing:var(--tracking-body);font-variant-numeric:tabular-nums;align-items:center;display:inline-flex}._affix_bhhp1_38{color:var(--text-secondary);font-weight:400;display:inline-flex}._char_bhhp1_39{white-space:pre;display:inline-block;overflow-x:clip}._number_bhhp1_42{align-items:center;display:inline-grid;position:relative}._display_bhhp1_43{grid-area:1/1;display:inline-flex}._display_bhhp1_43[data-hidden]{visibility:hidden;position:absolute;top:0;left:0}._mirror_bhhp1_45{white-space:pre;grid-area:1/1}._input_bhhp1_46{z-index:1;color:#0000;width:calc(100% + 1em);height:100%;caret-color:var(--foreground);font:inherit;font-variant-numeric:inherit;letter-spacing:inherit;line-height:inherit;text-align:left;background:0 0;border:0;outline:none;margin:0;padding:0;position:absolute;top:0;left:0}._input_bhhp1_46:focus-visible{outline:none}._input_bhhp1_46::selection{background:color-mix(in oklab, var(--foreground) 16%, transparent);color:#0000}._input_bhhp1_46:disabled{cursor:not-allowed}._column_bhhp1_52{--feather:.2em;margin-block:calc(var(--feather) * -1);padding-block:var(--feather);-webkit-mask-image:linear-gradient(to bottom, transparent, #000 calc(var(--feather) * 1.5), #000 calc(100% - var(--feather) * 1.5), transparent);mask-image:linear-gradient(to bottom, transparent, #000 calc(var(--feather) * 1.5), #000 calc(100% - var(--feather) * 1.5), transparent);display:inline-block;position:relative;overflow:visible clip;-webkit-mask-repeat:repeat-x;mask-repeat:repeat-x;-webkit-mask-clip:no-clip;mask-clip:no-clip}._sizer_bhhp1_53{visibility:hidden}._glyph_bhhp1_54{inset:var(--feather) 0;text-align:center;position:absolute}._symbol_bhhp1_55{white-space:pre;display:inline-block;overflow-x:clip}._messageSlot_bhhp1_57{display:block;overflow:hidden}._hint_bhhp1_58{padding-top:var(--space-2);color:var(--text-muted);font-size:var(--text-xs);line-height:var(--leading-body);letter-spacing:var(--tracking-body);font-variant-numeric:tabular-nums;display:block}._words_bhhp1_60{display:block;position:relative}._wordSlot_bhhp1_61{vertical-align:top;white-space:pre;display:inline-block;position:relative}._wordSizer_bhhp1_62{visibility:hidden;white-space:pre;position:absolute;top:0;left:0}._word_bhhp1_60{white-space:pre;display:inline-block}._srOnly_bhhp1_64{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}@media (prefers-reduced-motion:reduce){._control_bhhp1_14,._step_bhhp1_22{transition:opacity var(--duration-instant) linear, border-color var(--duration-instant) linear, background-color var(--duration-instant) linear}._step_bhhp1_22:is(:active,[data-pressed]):not(:disabled,[aria-disabled=true]) svg,._icon_bhhp1_23 svg{transition:none;transform:none}._control_bhhp1_14[data-strain] ._value_bhhp1_34{color:var(--nf-limit);transition:none}}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{Ai as e,B as t,F as n,Fa as r,H as i,Ia as a,N as o,P as s,Sn as c,Tn as l,Vi as u,Y as d,Yr as f,Zn as p,a as m,an as h,ci as g,dn as _,fn as v,gi as y,i as b,ln as x,mn as S,n as C,o as w,qr as T,r as E,rr as D,st as O,ui as k,un as A,z as j,za as M}from"./overlays-CnzrFKmb.js";import{c as N,s as P,t as F}from"./Page-D9s9brqr.js";import{t as I}from"./ellipsis-B2d4aPpF.js";import{t as L}from"./pencil-nlLBeib5.js";import{t as R}from"./power-DQiCs26X.js";import{t as z}from"./rotate-ccw-BLaDyhPe.js";import{S as B,T as V,f as H,u as U}from"./index-br322rzz.js";var W=M(a(),1),G=r();function K(){let{t}=l(),r=e(),i=y(),[a,s]=(0,W.useState)(!1),[c,u]=(0,W.useState)(null);return(0,G.jsxs)(F,{title:t(`nav.tokens`),subtitle:t(`tokens.subtitle`),actions:(0,G.jsx)(n,{variant:`primary`,icon:(0,G.jsx)(P,{className:`size-3.5`}),onClick:()=>s(!0),children:t(`tokens.add`)}),children:[(0,G.jsxs)(`div`,{className:`mx-auto flex max-w-[1100px] flex-col gap-4`,children:[i.data&&(0,G.jsx)(`p`,{className:`px-1 text-[12px] text-[var(--text-secondary)]`,children:t(`tokens.directHint`,{url:`${i.data.gatewayBaseUrl}/v1`})}),r.isLoading&&(0,G.jsx)(d,{lines:4}),r.isError&&(0,G.jsx)(o,{tone:`danger`,title:t(`common.error`),children:m(r.error)}),r.data?.length===0&&(0,G.jsx)(`div`,{className:`card`,children:(0,G.jsx)(j,{icon:(0,G.jsx)(N,{className:`size-6`}),title:t(`tokens.empty`)})}),r.data&&r.data.length>0&&(0,G.jsx)(`div`,{className:`card divide-y divide-[var(--border-subtle)] overflow-hidden p-0`,children:r.data.map(e=>(0,G.jsx)(q,{token:e,defaultOpen:r.data.length===1,onEdit:()=>u(e)},e.id))})]}),(0,G.jsx)(Z,{open:a,onOpenChange:s}),(0,G.jsx)(Q,{token:c,onClose:()=>u(null)})]})}function q({token:e,defaultOpen:t,onEdit:r}){let{t:i,locale:a}=l(),{toast:o,confirm:d}=w(),p=f(),v=k(),y=u(),b=g(),x=D(),[T,E]=(0,W.useState)(t),j=(p.data??[]).find(t=>t.id===e.providerId),M=`token-detail-${e.id}`,N=(e,t)=>{o(t,`success`),e.skipped.length>0&&o(i(`tokens.skipped`,{clients:e.skipped.map(e=>U[e]?.name??e).join(`, `)}),`error`)},P=()=>v.mutate(e.id,{onSuccess:async({token:e})=>{await c.copy(e)&&o(i(`tokens.copied`))},onError:e=>o(m(e),`error`)}),F=async()=>{(!e.enabled||await d({title:i(`tokens.disableConfirm`,{name:e.name}),detail:i(`tokens.disableDetail`),confirmLabel:i(`tokens.disable`),destructive:!0}))&&y.mutate({id:e.id,enabled:!e.enabled},{onError:e=>o(m(e),`error`)})},K=async()=>{await d({title:i(`tokens.resetConfirm`,{name:e.name}),detail:i(`tokens.resetDetail`),confirmLabel:i(`tokens.reset`),destructive:!0})&&b.mutate(e.id,{onSuccess:e=>N(e,i(`tokens.resetDone`,{count:e.rewritten.length})),onError:e=>o(m(e),`error`)})},q=async()=>{await d({title:i(`tokens.deleteConfirm`,{name:e.name}),detail:i(`tokens.deleteDetail`),confirmLabel:i(`common.delete`),destructive:!0})&&x.mutate(e.id,{onSuccess:t=>N(t,i(`tokens.deleted`,{name:e.name})),onError:e=>o(m(e),`error`)})},X=e.lastUsedAt?h(e.lastUsedAt,a):i(`tokens.neverUsed`);return(0,G.jsxs)(`article`,{children:[(0,G.jsxs)(`div`,{className:`flex cursor-pointer flex-wrap items-center gap-x-5 gap-y-2 px-4 py-3 hover:bg-[var(--surface-muted)]`,onClick:()=>E(e=>!e),children:[(0,G.jsxs)(`div`,{className:`flex min-w-0 flex-1 basis-56 items-start gap-2`,children:[(0,G.jsx)(`button`,{type:`button`,className:`mt-0.5 rounded text-[var(--text-muted)]`,"aria-expanded":T,"aria-controls":M,"aria-label":i(`tokens.details`),onClick:e=>{e.stopPropagation(),E(e=>!e)},children:(0,G.jsx)(V,{className:`size-4 transition-transform ${T?`rotate-90`:``}`})}),(0,G.jsxs)(`div`,{className:`min-w-0`,children:[(0,G.jsxs)(`div`,{className:`flex flex-wrap items-center gap-2`,children:[(0,G.jsx)(`h2`,{className:`truncate text-[14px] font-medium ${e.enabled?``:`text-[var(--text-muted)]`}`,children:e.name}),e.isDefault&&(0,G.jsx)(s,{tone:`accent`,children:i(`tokens.default`)}),!e.enabled&&(0,G.jsx)(s,{tone:`orange`,children:i(`tokens.disabledBadge`)})]}),(0,G.jsxs)(`div`,{className:`mt-0.5 flex items-center gap-1`,onClick:e=>e.stopPropagation(),children:[(0,G.jsx)(`code`,{className:`font-mono text-[12px] text-[var(--text-secondary)] selectable`,children:e.keyMasked}),(0,G.jsx)(n,{size:`sm`,variant:`plain`,icon:(0,G.jsx)(O,{className:`size-3.5`}),"aria-label":i(`tokens.copy`),title:i(`tokens.copy`),loading:v.isPending,onClick:P})]})]})]}),(0,G.jsx)(`div`,{className:`hidden w-16 items-center gap-1.5 md:flex`,title:e.clients.map(e=>U[e]?.name??e).join(`, `)||i(`tokens.noClients`),children:e.clients.length===0?(0,G.jsx)(`span`,{className:`text-[12px] text-[var(--text-muted)]`,children:`—`}):e.clients.map(e=>(0,G.jsx)(H,{kind:e,size:16},e))}),(0,G.jsx)(J,{label:i(`tokens.today`),value:S(e.today.costUsd),context:i(`tokens.requestsContext`,{count:_(e.today.requests)})}),(0,G.jsx)(J,{label:i(`tokens.total`),value:S(e.total.costUsd),context:`${_(e.total.totalTokens,!0)} Token`}),(0,G.jsx)(J,{label:i(`tokens.lastUsedTitle`),value:e.lastUsedAt?A(e.lastUsedAt,a):`—`,context:e.lastUsedAt?``:i(`tokens.neverUsed`),title:X}),(0,G.jsx)(`div`,{onClick:e=>e.stopPropagation(),children:(0,G.jsx)(C,{label:i(`common.more`),icon:(0,G.jsx)(I,{className:`size-4`}),items:[{id:`settings`,label:i(`tokens.settings`),icon:(0,G.jsx)(L,{className:`size-3.5`}),onSelect:r},{id:`toggle`,label:e.enabled?i(`tokens.disable`):i(`tokens.enable`),icon:(0,G.jsx)(R,{className:`size-3.5`}),onSelect:()=>void F()},{id:`reset`,label:i(`tokens.reset`),icon:(0,G.jsx)(z,{className:`size-3.5`}),onSelect:()=>void K()},...e.isDefault?[]:[{id:`delete`,label:i(`tokens.delete`),icon:(0,G.jsx)(B,{className:`size-3.5`}),destructive:!0,separatorBefore:!0,onSelect:()=>void q()}]]})})]}),T&&(0,G.jsxs)(`div`,{id:M,className:`border-t border-[var(--border-subtle)] bg-[var(--surface-muted)] px-4 py-3 md:pl-10`,children:[(0,G.jsxs)(`dl`,{className:`flex flex-wrap gap-x-8 gap-y-2 text-[12px]`,children:[(0,G.jsxs)(`div`,{className:`min-w-0`,children:[(0,G.jsx)(`dt`,{className:`text-[var(--text-muted)]`,children:i(`tokens.clients`)}),(0,G.jsx)(`dd`,{className:`mt-0.5 flex min-h-5 flex-wrap items-center gap-x-3 gap-y-1 text-[var(--text-secondary)]`,children:e.clients.length===0?i(`tokens.noClients`):e.clients.map(e=>(0,G.jsxs)(`span`,{className:`inline-flex items-center gap-1`,children:[(0,G.jsx)(H,{kind:e,size:14}),U[e]?.name??e]},e))})]}),(0,G.jsxs)(`div`,{className:`min-w-0`,children:[(0,G.jsx)(`dt`,{className:`text-[var(--text-muted)]`,children:i(`tokens.directProvider`)}),(0,G.jsx)(`dd`,{className:`mt-0.5 truncate text-[var(--text-secondary)]`,children:j?.name??(e.providerId?e.providerId:i(`tokens.directNone`))})]}),(0,G.jsxs)(`div`,{className:`min-w-0`,children:[(0,G.jsx)(`dt`,{className:`text-[var(--text-muted)]`,children:i(`tokens.lastUsedTitle`)}),(0,G.jsx)(`dd`,{className:`mt-0.5 truncate text-[var(--text-secondary)]`,children:X})]})]}),(0,G.jsx)(Y,{today:e.today,total:e.total})]})]})}function J({label:e,value:t,context:n,title:r}){return(0,G.jsxs)(`div`,{className:`w-24 min-w-0`,title:r,children:[(0,G.jsx)(`div`,{className:`truncate text-[11px] text-[var(--text-muted)]`,children:e}),(0,G.jsx)(`div`,{className:`num truncate text-[14px] leading-tight font-semibold`,children:t}),(0,G.jsx)(`div`,{className:`truncate text-[11px] text-[var(--text-muted)]`,children:n||`\xA0`})]})}function Y({today:e,total:t}){let{t:n}=l(),r=[[n(`tokens.today`),e],[n(`tokens.total`),t]],i=`px-3 py-1.5 text-right font-normal whitespace-nowrap text-[var(--text-muted)]`,a=`num px-3 py-1.5 text-right whitespace-nowrap`;return(0,G.jsx)(`div`,{className:`mt-3 overflow-x-auto rounded-[var(--radius-control)] bg-[var(--surface)]`,children:(0,G.jsxs)(`table`,{className:`w-full text-[12px]`,children:[(0,G.jsx)(`thead`,{children:(0,G.jsxs)(`tr`,{className:`border-b border-[var(--border-subtle)]`,children:[(0,G.jsx)(`th`,{className:`${i} text-left`}),(0,G.jsx)(`th`,{className:i,children:n(`tokens.cost`)}),(0,G.jsx)(`th`,{className:i,children:n(`tokens.requests`)}),(0,G.jsx)(`th`,{className:i,children:n(`tokens.tokens`)}),(0,G.jsx)(`th`,{className:i,children:n(`tokens.inOut`)}),(0,G.jsx)(`th`,{className:i,children:n(`tokens.cacheHit`)}),(0,G.jsx)(`th`,{className:i,title:n(`tokens.tpsContext`),children:n(`tokens.tps`)})]})}),(0,G.jsx)(`tbody`,{children:r.map(([e,t])=>(0,G.jsxs)(`tr`,{children:[(0,G.jsx)(`th`,{scope:`row`,className:`px-3 py-1.5 text-left font-medium whitespace-nowrap text-[var(--text-secondary)]`,children:e}),(0,G.jsx)(`td`,{className:`${a} font-semibold selectable`,children:S(t.costUsd)}),(0,G.jsx)(`td`,{className:a,children:_(t.requests)}),(0,G.jsx)(`td`,{className:a,children:_(t.totalTokens,!0)}),(0,G.jsxs)(`td`,{className:`${a} text-[var(--text-secondary)]`,children:[_(t.inputTokens,!0),` / `,_(t.outputTokens,!0)]}),(0,G.jsx)(`td`,{className:a,title:n(`usage.cacheAmounts`,{read:_(t.cacheReadTokens,!0),write:_(t.cacheWriteTokens,!0)}),children:t.cacheHitRate==null?`—`:x(t.cacheHitRate)}),(0,G.jsx)(`td`,{className:a,children:t.tps==null?`—`:v(t.tps)})]},e))})]})})}function X(){let{t:e}=l(),t=(f().data??[]).filter(e=>e.enabled);return{providers:t,options:[{value:``,label:e(`tokens.directNone`)},...t.map(e=>({value:e.id,label:e.name}))]}}function Z({open:e,onOpenChange:r}){let{t:a}=l(),{toast:o}=w(),s=p(),{options:c}=X(),[u,d]=(0,W.useState)(``),[f,h]=(0,W.useState)(``);return(0,W.useEffect)(()=>{e&&(d(``),h(``))},[e]),(0,G.jsx)(b,{open:e,onOpenChange:r,title:a(`tokens.createTitle`),footer:(0,G.jsxs)(G.Fragment,{children:[(0,G.jsx)(n,{onClick:()=>r(!1),children:a(`common.cancel`)}),(0,G.jsx)(n,{variant:`primary`,disabled:!u.trim(),loading:s.isPending,onClick:()=>s.mutate({name:u.trim(),providerId:f||null},{onSuccess:e=>{r(!1),o(a(`tokens.created`,{name:e.name}),`success`)},onError:e=>o(m(e),`error`)}),children:a(`common.create`)})]}),children:(0,G.jsxs)(`div`,{className:`grid gap-4`,children:[(0,G.jsx)(t,{label:a(`tokens.name`),children:(0,G.jsx)(i,{value:u,maxLength:64,placeholder:a(`tokens.namePlaceholder`),onChange:e=>d(e.target.value)})}),(0,G.jsx)(t,{label:a(`tokens.directProvider`),children:(0,G.jsx)(E,{value:f,onChange:h,options:c})})]})})}function Q({token:e,onClose:r}){let{t:a}=l(),{toast:o}=w(),s=u(),{providers:c,options:d}=X(),[f,p]=(0,W.useState)(``),[h,g]=(0,W.useState)(``),[_,v]=(0,W.useState)(``),y=c.find(e=>e.id===h),x=y?.authScheme===`oauth-subscription`||y?.authScheme===`plugin`,S=T(y?.id,x);return(0,W.useEffect)(()=>{e&&(p(e.name),g(e.providerId??``),v(e.accountId??``))},[e]),(0,G.jsx)(b,{open:e!==null,onOpenChange:e=>!e&&r(),title:a(`tokens.settingsTitle`,{name:e?.name??``}),footer:(0,G.jsxs)(G.Fragment,{children:[(0,G.jsx)(n,{onClick:r,children:a(`common.cancel`)}),(0,G.jsx)(n,{variant:`primary`,disabled:!f.trim(),loading:s.isPending,onClick:()=>{e&&s.mutate({id:e.id,name:f.trim(),providerId:h||null,accountId:x&&_||null},{onSuccess:()=>{r(),o(a(`common.saved`),`success`)},onError:e=>o(m(e),`error`)})},children:a(`common.save`)})]}),children:(0,G.jsxs)(`div`,{className:`grid gap-4`,children:[(0,G.jsx)(t,{label:a(`tokens.name`),children:(0,G.jsx)(i,{value:f,maxLength:64,onChange:e=>p(e.target.value)})}),(0,G.jsx)(t,{label:a(`tokens.directProvider`),children:(0,G.jsx)(E,{value:h,onChange:e=>{g(e),v(``)},options:d})}),x&&(0,G.jsx)(t,{label:a(`tokens.directAccount`),children:(0,G.jsx)(E,{value:_,onChange:v,options:[{value:``,label:a(`clients.accountDefault`)},...(S.data??[]).map(e=>({value:e.id,label:e.displayName||e.id}))]})})]})})}export{K as TokensPage};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{Ct as e,Dn as t,Dt as n,Fa as r,Ia as i,Ji as a,Ot as o,Pa as s,Sn as c,Tn as l,a as u,o as d,pi as f,wt as p,za as m}from"./overlays-CnzrFKmb.js";import{t as h}from"./TrayPanelView-BPGmNn0R.js";var g=m(i(),1),_=r(),v=new Set([`astra.theme`,`astra.accent`,`astra.locale`]);function y(){let{t:r}=l(),i=s(),{toast:m}=d(),y=a(),[b]=n(),x=o(),[S,C]=(0,g.useState)(!1),[w,T]=(0,g.useState)(`overview`),E=p(b,{enabled:x.running,background:!0,live:S}),D=f(),O=(0,g.useRef)(null);(0,g.useLayoutEffect)(()=>{let e=document.documentElement;e.dataset.view=`tray`,e.style.background=`transparent`,document.body.style.background=`transparent`},[]);let k=(0,g.useCallback)(()=>{i.invalidateQueries({queryKey:[`stats`]}),i.invalidateQueries({queryKey:t.providers}),i.invalidateQueries({queryKey:t.clients}),i.invalidateQueries({queryKey:[`provider-accounts`]})},[i]);(0,g.useEffect)(()=>y?.tray.onVisibilityChanged(e=>{C(e),e&&(T(`overview`),k())}),[y,k]),(0,g.useEffect)(()=>{x.running&&k()},[x.running,k]),(0,g.useEffect)(()=>{let e=e=>{e.key&&v.has(e.key)&&window.location.reload()};return window.addEventListener(`storage`,e),()=>window.removeEventListener(`storage`,e)},[]),(0,g.useEffect)(()=>{let e=e=>{e.key===`Escape`&&y?.tray.command(`hide`)};return window.addEventListener(`keydown`,e),()=>window.removeEventListener(`keydown`,e)},[y]),(0,g.useLayoutEffect)(()=>{let e=O.current;if(!e||!y)return;let t=[`header`,`tabs`,`body`,`footer`].map(t=>e.querySelector(`[data-tray-part="${t}"]`)),n=()=>{let n=e.offsetHeight-e.clientHeight,r=t.reduce((e,t)=>e+(t?.offsetHeight??0),0)+n;y.tray.resize(r)},r=new ResizeObserver(n);for(let e of t)e&&r.observe(e);return n(),()=>r.disconnect()},[y]),e(b,x,E.summary,E.plans);let A=e=>void y?.tray.command(e),j=async()=>{E.settings&&await c.copy(`${E.settings.gatewayBaseUrl}/v1`)&&m(r(`common.copied`))},M=async e=>{let t=E.providers;if(t.length===0)return;let n=await c.contextMenu(t.map(t=>({id:t.id,label:t.enabled?t.name:r(`tray.disabledProvider`,{name:t.name}),type:`checkbox`,checked:t.id===e.providerId})));n&&n!==e.providerId&&D.mutate({kind:e.kind,providerId:n},{onError:e=>m(u(e),`error`)})};return(0,_.jsx)(`div`,{className:`h-full`,children:(0,_.jsx)(h,{ref:O,className:`h-full`,prefs:b,state:x,data:E,tab:w,onTabChange:T,onCommand:A,onRefresh:k,onCopyAddress:()=>void j(),onSwitchClient:e=>void M(e)})})}export{y as TrayPanelPage};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{At as e,Bt as t,Cn as n,Fa as r,Ft as i,Ia as a,It as o,Lt as s,Mt as c,Nt as l,Pt as u,Qt as d,R as f,Rt as p,Tn as m,Vt as h,Y as g,at as _,dn as v,dt as y,it as b,jt as x,ln as S,rt as C,st as ee,za as w,zt as T}from"./overlays-CnzrFKmb.js";import{t as E}from"./ellipsis-B2d4aPpF.js";import{t as D}from"./rotate-ccw-BLaDyhPe.js";import{C as O,T as k,f as A,l as j,m as M,u as N}from"./index-br322rzz.js";var P={name:`arrow-down-right`,size:24,node:[[`path`,{d:`m7 7 10 10`,key:`1fmybs`}],[`path`,{d:`M17 7v10H7`,key:`6fjiku`}]]};P.node;var F=y(P),I={name:`arrow-up-right`,size:24,node:[[`path`,{d:`M7 7h10v10`,key:`1tivn9`}],[`path`,{d:`M7 17 17 7`,key:`1vkiza`}]]};I.node;var L=y(I),R={name:`ban`,size:24,node:[[`circle`,{cx:`12`,cy:`12`,r:`10`,key:`1mglay`}],[`path`,{d:`M4.929 4.929 19.07 19.071`,key:`196cmz`}]]};R.node;var z=y(R),B={name:`chevrons-up-down`,size:24,node:[[`path`,{d:`m7 15 5 5 5-5`,key:`1hf1tw`}],[`path`,{d:`m7 9 5-5 5 5`,key:`sgt6xg`}]]};B.node;var V=y(B),H={name:`play`,size:24,node:[[`path`,{d:`M5 5a2 2 0 0 1 3.008-1.728l11.997 6.998a2 2 0 0 1 .003 3.458l-12 7A2 2 0 0 1 5 19z`,key:`10ikf1`}]]};H.node;var U=y(H),W=w(a(),1),G=r(),K={green:`var(--success)`,orange:`var(--warning)`,red:`var(--danger)`},te=(0,W.forwardRef)(function({prefs:e,state:t,data:r,onCommand:i,onRefresh:a,onCopyAddress:o,onSwitchClient:s,preview:c,tab:l,onTabChange:u,className:d},p){let{t:h}=m(),[g,v]=(0,W.useState)(`overview`),y=t.activity!==null,x=t.running&&!y,S=e=>i?.(e),w=[`overview`];e.sections.quota&&(r.plans.length>0||r.hasSubscriptions)&&w.push(`quota`),e.sections.clients&&r.clients.some(e=>e.enabled)&&w.push(`clients`);let T=l??g,O=w.includes(T)?T:`overview`,k=e=>{v(e),u?.(e)},A=(t.running||y)&&w.length>1,j=r.settings?.gatewayBaseUrl.replace(/^https?:\/\//,``)??(t.port?`127.0.0.1:${t.port}`:``),M=t.activity?h(`tray.status.${t.activity}`):t.running?h(`tray.status.running`):h(`tray.status.stopped`);return(0,G.jsxs)(`div`,{ref:p,className:n(`chrome flex max-h-full flex-col overflow-hidden rounded-[14px] border border-[var(--border-strong)] bg-[var(--surface-raised)] text-[13px] text-[var(--foreground)]`,d),children:[(0,G.jsxs)(`header`,{"data-tray-part":`header`,className:`shrink-0 border-b border-[var(--border)] px-4 pt-3.5 pb-3`,children:[(0,G.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,G.jsx)(f,{tone:y?`orange`:t.running?`green`:`red`}),(0,G.jsx)(`span`,{className:`min-w-0 flex-1 truncate text-[14px] font-semibold`,children:M}),(0,G.jsx)(q,{label:h(`tray.copyAddress`),onClick:o,disabled:!j,children:(0,G.jsx)(ee,{className:`size-4`})}),(0,G.jsx)(q,{label:h(`tray.settings`),onClick:()=>S(`open-settings`),children:(0,G.jsx)(_,{className:`size-4`})}),(0,G.jsx)(q,{label:h(`tray.more`),onClick:()=>S(`menu`),children:(0,G.jsx)(E,{className:`size-4`})}),!c&&(0,G.jsx)(q,{label:h(`common.close`),onClick:()=>S(`hide`),children:(0,G.jsx)(C,{className:`size-4`})})]}),j&&(0,G.jsx)(`div`,{className:`selectable mt-0.5 truncate pl-4 font-mono text-[12px] text-[var(--text-secondary)]`,children:j}),(t.apiVersionMismatch||t.updateAvailable)&&(0,G.jsxs)(`div`,{className:`mt-2 flex flex-wrap gap-1.5 pl-4`,children:[t.apiVersionMismatch&&(0,G.jsxs)(J,{tone:`orange`,children:[(0,G.jsx)(b,{className:`size-3`}),h(`tray.mismatch`)]}),t.updateAvailable&&(0,G.jsx)(`button`,{type:`button`,onClick:()=>S(`check-updates`),className:`cursor-default`,children:(0,G.jsx)(J,{tone:`accent`,children:h(`tray.update`)})})]})]}),(0,G.jsx)(`div`,{"data-tray-part":`tabs`,className:`shrink-0`,children:A&&(0,G.jsx)(ne,{tabs:w,active:O,onChange:k})}),(0,G.jsx)(`div`,{className:`scroll min-h-0 flex-1 overflow-y-auto`,children:(0,G.jsx)(`div`,{"data-tray-part":`body`,className:`flex flex-col gap-3 px-4 py-3.5`,children:!t.running&&!y?(0,G.jsx)(ie,{onStart:()=>S(`start`)}):(0,G.jsxs)(G.Fragment,{children:[O===`overview`&&(0,G.jsxs)(G.Fragment,{children:[(0,G.jsx)(re,{prefs:e,data:r,onViewQuota:()=>k(`quota`)}),(0,G.jsx)(oe,{prefs:e,data:r,onRefresh:a}),e.sections.quota&&(0,G.jsx)(ce,{data:r,onViewAll:()=>k(`quota`)})]}),O===`quota`&&(0,G.jsx)(le,{data:r,plain:!0}),O===`clients`&&(0,G.jsx)(de,{data:r,disabled:!x,onSwitch:s,plain:!0})]})})}),(0,G.jsxs)(`footer`,{"data-tray-part":`footer`,className:`flex shrink-0 items-center gap-1 border-t border-[var(--border)] px-3 py-2.5`,children:[t.running?(0,G.jsxs)(G.Fragment,{children:[(0,G.jsx)(q,{label:h(`tray.restart`),onClick:()=>S(`restart`),disabled:y,children:(0,G.jsx)(D,{className:`size-4`})}),(0,G.jsx)(q,{label:h(`tray.stop`),onClick:()=>S(`stop`),disabled:y,children:(0,G.jsx)(z,{className:`size-4`})})]}):(0,G.jsx)(q,{label:h(`shell.startService`),onClick:()=>S(`start`),disabled:y,children:(0,G.jsx)(U,{className:`size-4`})}),(0,G.jsx)(`div`,{className:`flex-1`}),(0,G.jsx)(`button`,{type:`button`,onClick:()=>S(`quit`),className:`h-8 cursor-default rounded-[8px] px-2.5 text-[13px] text-[var(--text-secondary)] transition-colors hover:bg-[var(--surface-muted)] hover:text-[var(--foreground)]`,children:h(`tray.quit`)}),(0,G.jsxs)(`button`,{type:`button`,onClick:()=>S(`open`),className:`inline-flex h-8 cursor-default items-center gap-1.5 rounded-[8px] border border-[var(--border-strong)] px-3 text-[13px] font-medium transition-colors hover:bg-[var(--surface-muted)]`,children:[h(`tray.open`),(0,G.jsx)(L,{className:`size-3.5`})]})]})]})});function q({label:e,onClick:t,disabled:n,children:r}){return(0,G.jsx)(`button`,{type:`button`,title:e,"aria-label":e,disabled:n,onClick:t,className:`inline-flex size-8 shrink-0 cursor-default items-center justify-center rounded-[8px] text-[var(--text-secondary)] transition-colors hover:bg-[var(--surface-muted)] hover:text-[var(--foreground)] disabled:opacity-40 disabled:hover:bg-transparent`,children:r})}function J({tone:e,children:t,title:n}){let r={red:`var(--danger)`,orange:`var(--warning)`,accent:`var(--accent)`,neutral:`var(--text-secondary)`}[e];return(0,G.jsx)(`span`,{title:n,className:`inline-flex max-w-full items-center gap-1 rounded-[6px] border px-1.5 py-px text-[11.5px] leading-[18px] whitespace-nowrap`,style:{color:r,borderColor:`color-mix(in oklab, ${r} 45%, transparent)`,background:`color-mix(in oklab, ${r} 10%, transparent)`},children:t})}function ne({tabs:e,active:t,onChange:r}){let{t:i}=m(),a={overview:i(`tray.tab.overview`),quota:i(`tray.tab.quota`),clients:i(`tray.clients`)};return(0,G.jsx)(`div`,{role:`tablist`,className:`flex gap-1 px-3 pt-2.5`,children:e.map(e=>(0,G.jsx)(`button`,{type:`button`,role:`tab`,"aria-selected":e===t,onClick:()=>r(e),className:n(`h-7 cursor-default rounded-[7px] px-2.5 text-[12.5px] transition-colors`,e===t?`bg-[var(--surface-muted)] font-medium text-[var(--foreground)]`:`text-[var(--text-secondary)] hover:text-[var(--foreground)]`),children:a[e]},e))})}function Y({tone:e,onClick:t,children:r}){let i=e===`red`?`var(--danger)`:`var(--warning)`,a={color:i,borderColor:`color-mix(in oklab, ${i} 45%, transparent)`,background:`color-mix(in oklab, ${i} 10%, transparent)`},o=`flex w-full items-center gap-1.5 rounded-[8px] border px-2.5 py-1.5 text-left text-[12.5px]`,s=(0,G.jsxs)(G.Fragment,{children:[(0,G.jsx)(b,{className:`size-3.5 shrink-0`}),(0,G.jsx)(`span`,{className:`min-w-0 flex-1 truncate`,children:r})]});return t?(0,G.jsxs)(`button`,{type:`button`,onClick:t,className:n(o,`cursor-default`),style:a,children:[s,(0,G.jsx)(k,{className:`size-3.5 shrink-0`})]}):(0,G.jsx)(`div`,{className:o,style:a,children:s})}function re({prefs:e,data:t,onViewQuota:n}){let{t:r,locale:i}=m(),a=t.summary,s=e.sections.overview&&a?x(a):0,c=e.sections.quota?o(t.plans):null,l=c&&c.row.remaining<30?c:null;return!a||s===0&&!l?null:(0,G.jsxs)(`div`,{className:`flex flex-col gap-1.5`,children:[s>0&&(0,G.jsx)(Y,{tone:`red`,children:r(`tray.alert.failures`,{count:s,share:S(s/a.requests)})}),l&&(0,G.jsx)(Y,{tone:l.row.remaining<10?`red`:`orange`,onClick:n,children:r(`tray.alert.quota`,{plan:l.plan.providerName,window:Q(l.row,r,i),remaining:`${Math.round(l.row.remaining)}%`})})]})}function ie({onStart:e}){let{t}=m();return(0,G.jsxs)(`div`,{className:`flex flex-col items-center gap-2 py-6 text-center`,children:[(0,G.jsx)(`div`,{className:`text-[13px] font-medium`,children:t(`tray.status.stopped`)}),(0,G.jsx)(`div`,{className:`max-w-[260px] text-[12px] text-[var(--text-secondary)]`,children:t(`tray.stoppedHint`)}),(0,G.jsxs)(`button`,{type:`button`,onClick:e,className:`mt-1 inline-flex h-8 cursor-default items-center gap-1.5 rounded-[8px] bg-[var(--accent)] px-3 text-[13px] font-medium text-[var(--on-accent)]`,children:[(0,G.jsx)(U,{className:`size-3.5`}),t(`shell.startService`)]})]})}function ae(e=3e4){let[t,n]=(0,W.useState)(()=>Date.now());return(0,W.useEffect)(()=>{let t=setInterval(()=>n(Date.now()),e);return()=>clearInterval(t)},[e]),t}function oe({prefs:t,data:n,onRefresh:r}){let{t:i,locale:a}=m(),o=ae(),s=n.summary,l=t.sections,u=l.overview||l.cost,d=s?s.inputTokens+s.outputTokens:0,f=T(n.updatedAt,a,i(`tray.justNow`),o),_=l.topModel?p(n.top,d):null,y=l.cacheHitRate&&s?j(s.cacheReadTokens,s.inputTokens):null,b=l.compareYesterday&&s?e(d,h(n.daily,new Date(o))):null,x=l.topModel||l.cacheHitRate||l.compareYesterday;return!u&&!l.chart&&!x?null:(0,G.jsxs)(`section`,{className:`flex flex-col gap-3`,children:[(0,G.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,G.jsx)(`span`,{className:`text-[13px] text-[var(--text-secondary)]`,children:i(`tray.today`)}),(0,G.jsx)(`div`,{className:`flex-1`}),f&&(0,G.jsx)(`span`,{className:`text-[12px] text-[var(--text-muted)]`,children:i(`tray.updated`,{time:f})}),(0,G.jsx)(q,{label:i(`common.refresh`),onClick:r,children:(0,G.jsx)(O,{className:`size-3.5`})})]}),s?(0,G.jsxs)(G.Fragment,{children:[u&&(0,G.jsxs)(`div`,{className:`grid auto-cols-fr grid-flow-col gap-px overflow-hidden rounded-[10px] bg-[var(--border)]`,children:[l.overview&&(0,G.jsx)(X,{label:i(`tray.requests`),value:v(s.requests,!0)}),l.overview&&(0,G.jsx)(X,{label:i(`tray.tokens`),value:v(d,!0)}),l.cost&&(0,G.jsx)(X,{label:i(`tray.cost`),value:c(s.costUsd)})]}),l.chart&&(0,G.jsx)(se,{data:n,now:o}),x&&(0,G.jsxs)(`div`,{className:`flex flex-wrap gap-1.5`,children:[_&&(0,G.jsxs)(Z,{label:i(`tray.topModel`),title:_.model,children:[(0,G.jsx)(`span`,{className:`truncate`,children:_.model}),(0,G.jsxs)(`span`,{className:`shrink-0`,children:[`· `,S(_.share)]})]}),l.cacheHitRate&&(0,G.jsx)(Z,{label:i(`tray.cacheHit`),children:(0,G.jsx)(`span`,{children:y==null?`—`:S(y)})}),l.compareYesterday&&(0,G.jsx)(Z,{label:i(`tray.vsYesterday`),children:b==null?(0,G.jsx)(`span`,{children:`—`}):(0,G.jsxs)(`span`,{className:`inline-flex items-center gap-0.5`,children:[b>=0?(0,G.jsx)(L,{className:`size-3`}):(0,G.jsx)(F,{className:`size-3`}),S(Math.abs(b))]})})]})]}):n.error?(0,G.jsx)(`div`,{className:`text-[12px] text-[var(--danger)]`,children:i(`tray.loadFailed`)}):(0,G.jsx)(g,{lines:2})]})}function X({label:e,value:t}){return(0,G.jsxs)(`div`,{className:`min-w-0 bg-[var(--surface-muted)] px-3 py-2.5`,children:[(0,G.jsx)(`div`,{className:`truncate text-[12px] text-[var(--text-secondary)]`,children:e}),(0,G.jsx)(`div`,{className:`num mt-0.5 truncate text-[20px] leading-tight font-semibold`,title:t,children:t})]})}function Z({label:e,title:t,children:n}){return(0,G.jsxs)(`span`,{title:t,className:`inline-flex max-w-full min-w-0 items-center gap-1.5 rounded-[7px] border border-[var(--border)] px-2 py-0.5 text-[12px]`,children:[(0,G.jsx)(`span`,{className:`shrink-0 text-[var(--text-secondary)]`,children:e}),(0,G.jsx)(`span`,{className:`flex min-w-0 items-center gap-1 font-medium`,children:n})]})}function se({data:e,now:t}){let{t:n}=m(),r=l(e.hourly,new Date(t)),i=Math.max(1,...r.map(e=>e.value)),a=new Date(t).getHours();return(0,G.jsx)(`div`,{role:`img`,"aria-label":n(`tray.chartLabel`),className:`flex h-16 items-end gap-[3px]`,children:r.map((e,t)=>{let r=e.value>0?Math.max(4,Math.round(e.value/i*64)):2;return(0,G.jsx)(`span`,{title:n(`tray.hourBar`,{hour:`${String(t).padStart(2,`0`)}:00`,count:e.value}),className:`flex-1 rounded-[2px]`,style:{height:r,background:t===a?`var(--accent)`:e.value>0?`color-mix(in oklab, var(--foreground) 32%, transparent)`:`var(--border)`,opacity:t>a?.5:1}},e.bucket)})})}function ce({data:e,onViewAll:t}){let{t:n,locale:r}=m();if(e.plans.length===0)return e.hasSubscriptions?(0,G.jsx)(`div`,{className:`border-t border-[var(--border)] pt-3 text-[12px] text-[var(--text-muted)]`,children:n(`tray.quotaPending`)}):null;let i=s(e.plans,3),a=e.plans.reduce((e,t)=>e+t.rows.length,0);return(0,G.jsxs)(`section`,{className:`flex flex-col gap-2 border-t border-[var(--border)] pt-3`,children:[(0,G.jsxs)(`div`,{className:`flex items-center text-[12px] text-[var(--text-secondary)]`,children:[(0,G.jsx)(`span`,{className:`flex-1`,children:n(`tray.quotaTightest`)}),a>i.length&&(0,G.jsxs)(`button`,{type:`button`,onClick:t,className:`inline-flex cursor-default items-center gap-0.5 hover:text-[var(--foreground)]`,children:[n(`tray.viewAll`),(0,G.jsx)(k,{className:`size-3`})]})]}),i.map(({plan:e,row:t},i)=>(0,G.jsxs)(`div`,{className:`grid grid-cols-[minmax(0,1fr)_64px_40px_60px] items-center gap-2 text-[12.5px]`,children:[(0,G.jsxs)(`span`,{className:`flex min-w-0 items-center gap-1.5`,children:[(0,G.jsx)(M,{name:e.providerName,icon:e.providerIcon,size:14}),(0,G.jsx)(`span`,{className:`truncate font-medium`,children:e.providerName}),(0,G.jsx)(`span`,{className:`shrink-0 text-[var(--text-secondary)]`,children:Q(t,n,r)})]}),(0,G.jsx)($,{row:t,locale:r})]},`${e.accountId}-${t.kind}-${i}`))]})}function le({data:e,plain:t}){let{t:r}=m();if(e.plans.length===0&&!e.hasSubscriptions)return null;let i=new Map;for(let t of e.plans)i.set(t.providerId,(i.get(t.providerId)??0)+1);return(0,G.jsxs)(`section`,{className:n(`flex flex-col gap-2`,!t&&`border-t border-[var(--border)] pt-3`),children:[(0,G.jsxs)(`div`,{className:`grid grid-cols-[1fr_48px_72px] items-center gap-2 text-[12px] text-[var(--text-secondary)]`,children:[(0,G.jsx)(`span`,{children:r(`tray.quota`)}),(0,G.jsx)(`span`,{className:`text-right`,children:r(`tray.quotaRemaining`)}),(0,G.jsx)(`span`,{className:`text-right`,children:r(`tray.quotaReset`)})]}),e.plans.length===0?(0,G.jsx)(`div`,{className:`text-[12px] text-[var(--text-muted)]`,children:r(`tray.quotaPending`)}):e.plans.map(e=>(0,G.jsx)(ue,{plan:e,showAccount:(i.get(e.providerId)??0)>1},e.accountId))]})}function Q(e,n,r){return e.kind===`balance`?e.label??n(`tray.quotaBalance`):e.kind===`credits`||e.windowMinutes==null?n(`tray.quotaCredits`):t(e.windowMinutes,r)}function $({row:e,locale:t}){let n=e.remaining,r=n===null?void 0:K[u(n)];return(0,G.jsxs)(G.Fragment,{children:[n===null?(0,G.jsx)(`span`,{}):(0,G.jsx)(`span`,{className:`h-1.5 overflow-hidden rounded-full bg-[var(--surface-muted)]`,children:(0,G.jsx)(`span`,{className:`block h-full rounded-full`,style:{width:`${n}%`,background:r}})}),e.amount?(0,G.jsx)(`span`,{className:`num col-span-2 truncate text-right font-medium`,children:d(e.amount.value,e.amount.unit,t)}):(0,G.jsxs)(G.Fragment,{children:[(0,G.jsx)(`span`,{className:`num text-right font-medium`,children:n===null?`—`:`${Math.round(n)}%`}),(0,G.jsx)(`span`,{className:`truncate text-right text-[var(--text-secondary)]`,children:i(e.resetsAt,t)??`—`})]})]})}function ue({plan:e,showAccount:t}){let{t:n,locale:r}=m();return(0,G.jsxs)(`div`,{className:`flex flex-col gap-1`,children:[(0,G.jsxs)(`div`,{className:`flex min-w-0 items-center gap-2`,children:[(0,G.jsx)(M,{name:e.providerName,icon:e.providerIcon,size:16}),(0,G.jsx)(`span`,{className:`truncate text-[13px] font-medium`,children:e.providerName}),t&&(0,G.jsx)(`span`,{className:`truncate text-[12px] text-[var(--text-muted)]`,children:e.accountName})]}),e.rows.map((e,t)=>{let i=Q(e,n,r);return(0,G.jsxs)(`div`,{className:`grid grid-cols-[52px_1fr_48px_72px] items-center gap-2 pl-6 text-[12.5px]`,children:[(0,G.jsx)(`span`,{className:`truncate text-[var(--text-secondary)]`,title:i,children:i}),(0,G.jsx)($,{row:e,locale:r})]},`${e.kind}-${t}`)})]})}function de({data:e,disabled:t,onSwitch:r,plain:i}){let{t:a}=m(),o=e.clients.filter(e=>e.enabled);if(o.length===0)return null;let s=t=>e.providers.find(e=>e.id===t)?.name??a(`tray.unbound`);return(0,G.jsxs)(`section`,{className:n(`flex flex-col gap-1`,!i&&`border-t border-[var(--border)] pt-3`),children:[(0,G.jsx)(`div`,{className:`mb-0.5 text-[12px] text-[var(--text-secondary)]`,children:a(`tray.clients`)}),o.map(e=>(0,G.jsxs)(`button`,{type:`button`,disabled:t||!r,onClick:()=>r?.(e),"aria-label":a(`tray.switchProvider`,{client:e.name}),className:`-mx-2 flex h-8 cursor-default items-center gap-2 rounded-[8px] px-2 text-left transition-colors enabled:hover:bg-[var(--surface-muted)]`,children:[e.kind in N&&(0,G.jsx)(A,{kind:e.kind,size:16}),(0,G.jsx)(`span`,{className:`min-w-0 flex-1 truncate`,children:e.name}),(0,G.jsx)(`span`,{className:`max-w-[45%] truncate text-[12px] text-[var(--text-secondary)]`,children:s(e.providerId)}),r&&(0,G.jsx)(V,{className:`size-3.5 shrink-0 text-[var(--text-muted)]`})]},e.kind))]})}export{te as t};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{dt as e}from"./overlays-CnzrFKmb.js";var t={name:`arrow-down`,size:24,node:[[`path`,{d:`M12 5v14`,key:`s699le`}],[`path`,{d:`m19 12-7 7-7-7`,key:`1idqje`}]]};t.node;var n=e(t);export{n as t};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{dt as e}from"./overlays-CnzrFKmb.js";var t={name:`arrow-up`,size:24,node:[[`path`,{d:`m5 12 7-7 7 7`,key:`hav0vg`}],[`path`,{d:`M12 19V5`,key:`x0mq9r`}]]};t.node;var n=e(t);export{n as t};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
._field_ovchx_1{align-items:flex-start;gap:0;min-width:0;display:inline-flex}._box_ovchx_2{width:var(--control-height-md);height:var(--control-height-md);border-radius:var(--radius-control);color:var(--control-glyph);cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border:0;flex:none;place-items:center;padding:0;display:grid;position:relative}._visual_ovchx_4{border:1px solid var(--border-strong);background:var(--surface);width:18px;height:18px;transition:border-color var(--duration-fast) var(--ease-standard), transform var(--duration-spring) var(--ease-spring);border-radius:5px;display:block;position:relative}._fill_ovchx_5{border-radius:inherit;background:var(--control-on);position:absolute;inset:-1px}._mark_ovchx_6{width:18px;height:18px;position:absolute;inset:-1px;overflow:visible}._box_ovchx_2[data-state=checked] ._visual_ovchx_4,._box_ovchx_2[data-state=indeterminate] ._visual_ovchx_4{border-color:var(--control-on)}@media (hover:hover) and (pointer:fine){._box_ovchx_2[data-state=unchecked]:hover:not(:disabled) ._visual_ovchx_4{border-color:var(--text-muted)}}._box_ovchx_2:active:not(:disabled) ._visual_ovchx_4{transition:border-color var(--duration-fast) var(--ease-standard), transform var(--duration-instant) var(--ease-standard);transform:scale(.95)}._box_ovchx_2:disabled{opacity:.5;cursor:not-allowed}._copy_ovchx_12{min-width:0;padding-top:calc((var(--control-height-md) - var(--text-sm) * 1.4) / 2);gap:2px;margin-left:1px;display:grid}._copy_ovchx_12 label{color:var(--foreground);font-size:var(--text-sm);font-weight:500;line-height:var(--leading-body);cursor:pointer}._copy_ovchx_12 span{color:var(--text-muted);font-size:var(--text-xs);line-height:var(--leading-body)}@media (prefers-reduced-motion:reduce){._visual_ovchx_4,._box_ovchx_2:active:not(:disabled) ._visual_ovchx_4{transition:none;transform:none}}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{$ as e,Fa as t,Ia as n,bt as r,dt as i,gt as a,ht as o,nt as s,ra as c,ta as l,vt as u,xt as d,za as f}from"./overlays-CnzrFKmb.js";var p={name:`arrow-left`,size:24,node:[[`path`,{d:`m12 19-7-7 7-7`,key:`1l729n`}],[`path`,{d:`M19 12H5`,key:`x3x0zl`}]]};p.node;var m=i(p),h=f(n(),1),g=t(),_=Object.defineProperty,v=(e,t)=>_(e,`name`,{value:t,configurable:!0}),y=`Checkbox`,[b,x]=d(y),[S,C]=b(y);function w(e){let{__scopeCheckbox:t,checked:n,children:r,defaultChecked:i,disabled:o,form:s,name:c,onCheckedChange:l,required:u,value:d=`on`,internal_do_not_use_render:f}=e,[p,m]=a({prop:n,defaultProp:i??!1,onChange:l,caller:y}),[_,v]=h.useState(null),[b,x]=h.useState(null),C=h.useRef(!1),[w,T]=h.useReducer(e=>e+1,0),E=!_||!!s||!!_.closest(`form`),D={checked:p,disabled:o,setChecked:m,control:_,setControl:v,name:c,form:s,value:d,hasConsumerStoppedPropagationRef:C,userInteractionCount:w,onUserInteraction:T,required:u,defaultChecked:!j(i)&&i,isFormControl:E,bubbleInput:b,setBubbleInput:x};return(0,g.jsx)(S,{scope:t,...D,children:A(f)?f(D):r})}v(w,`CheckboxProvider`);var T=`CheckboxTrigger`,E=h.forwardRef(v(function({__scopeCheckbox:e,onKeyDown:t,onClick:n,...i},a){let{control:s,value:c,disabled:l,checked:d,required:f,setControl:p,setChecked:m,hasConsumerStoppedPropagationRef:_,onUserInteraction:y,isFormControl:b,bubbleInput:x}=C(T,e),S=r(a,p),w=h.useRef(d);return h.useEffect(()=>{let e=s?.form;if(e){let t=v(()=>m(w.current),`reset`);return e.addEventListener(`reset`,t),()=>e.removeEventListener(`reset`,t)}},[s,m]),(0,g.jsx)(o.button,{type:`button`,role:`checkbox`,"aria-checked":j(d)?`mixed`:d,"aria-required":f,"data-state":M(d),"data-disabled":l?``:void 0,disabled:l,value:c,...i,ref:S,onKeyDown:u(t,e=>{e.key===`Enter`&&e.preventDefault()}),onClick:u(n,e=>{y(),m(e=>j(e)?!0:!e),x&&b&&(_.current=e.isPropagationStopped(),_.current||e.stopPropagation())})})},`CheckboxTrigger`)),D=h.forwardRef(v(function(e,t){let{__scopeCheckbox:n,name:r,checked:i,defaultChecked:a,required:o,disabled:s,value:c,onCheckedChange:l,form:u,...d}=e;return(0,g.jsx)(w,{__scopeCheckbox:n,checked:i,defaultChecked:a,disabled:s,required:o,onCheckedChange:l,name:r,form:u,value:c,internal_do_not_use_render:({isFormControl:e})=>(0,g.jsxs)(g.Fragment,{children:[(0,g.jsx)(E,{...d,ref:t,__scopeCheckbox:n}),e&&(0,g.jsx)(k,{__scopeCheckbox:n})]})})},`Checkbox`)),O=`CheckboxBubbleInput`,k=h.forwardRef(v(function({__scopeCheckbox:t,onClick:n,...i},a){let{control:s,hasConsumerStoppedPropagationRef:c,userInteractionCount:l,checked:d,defaultChecked:f,required:p,disabled:m,name:_,value:v,form:y,bubbleInput:b,setBubbleInput:x}=C(O,t),S=r(a,x),w=e(s),T=h.useRef(!1),E=h.useRef(d),D=h.useRef(l);h.useEffect(()=>{let e=b;if(!e)return;let t=window.HTMLInputElement.prototype,n=Object.getOwnPropertyDescriptor(t,`checked`).set,r=l!==D.current;D.current=l;let i=E.current!==d;E.current=d;let a=!(r&&c.current);if(i&&n){T.current=!r;let t=new Event(`click`,{bubbles:a});e.indeterminate=j(d),n.call(e,!j(d)&&d),e.dispatchEvent(t),T.current=!1}},[b,d,c,l]);let k=h.useRef(!j(d)&&d);return(0,g.jsx)(o.input,{type:`checkbox`,"aria-hidden":!0,defaultChecked:f??k.current,required:p,disabled:m,name:_,value:v,form:y,...i,tabIndex:-1,ref:S,onClick:u(n,e=>{T.current&&e.stopPropagation()}),style:{...i.style,...w,position:`absolute`,pointerEvents:`none`,opacity:0,margin:0,transform:`translateX(-100%)`}})},`CheckboxBubbleInput`));function A(e){return typeof e==`function`}v(A,`isFunction`);function j(e){return e===`indeterminate`}v(j,`isIndeterminate`);function M(e){return j(e)?`indeterminate`:e?`checked`:`unchecked`}v(M,`getState`);var N={field:`_field_ovchx_1`,box:`_box_ovchx_2`,visual:`_visual_ovchx_4`,fill:`_fill_ovchx_5`,mark:`_mark_ovchx_6`,copy:`_copy_ovchx_12`},P=`M4.25 9.25 L7.25 12.25 L13.75 5.75`,F=`M4.75 9 L9 9 L13.25 9`,I=(0,h.forwardRef)(function({label:e,description:t,id:n,className:r,checked:i,defaultChecked:a,onCheckedChange:o,...u},d){let f=(0,h.useId)(),p=n??f,m=c(),[_,v]=(0,h.useState)(a??!1),y=i??_,b=y!==!1,x=e=>{i===void 0&&v(e),o?.(e)},S={duration:b?s.duration.instant:s.duration.fast,ease:[...s.ease.standard]};return(0,g.jsxs)(`div`,{className:N.field,children:[(0,g.jsx)(D,{...u,id:p,ref:d,checked:y,onCheckedChange:x,className:[N.box,r].filter(Boolean).join(` `),"aria-describedby":t?`${p}-description`:void 0,"aria-label":u[`aria-label`]??(e?void 0:`Checkbox`),children:(0,g.jsxs)(`span`,{className:N.visual,"aria-hidden":`true`,children:[(0,g.jsx)(l.span,{className:N.fill,initial:!1,animate:{opacity:+!!b,scale:b?1:.6},transition:m?{duration:0}:{scale:s.spring.snappy,opacity:S}}),(0,g.jsx)(`svg`,{className:N.mark,viewBox:`0 0 18 18`,fill:`none`,focusable:`false`,children:(0,g.jsx)(l.path,{initial:!1,animate:{d:y===`indeterminate`?F:P,pathLength:+!!b,opacity:+!!b},transition:m?{duration:0}:{d:s.spring.morph,pathLength:s.spring.snappy,opacity:S},stroke:`currentColor`,strokeWidth:1.75,strokeLinecap:`round`,strokeLinejoin:`round`})})]})}),e||t?(0,g.jsxs)(`div`,{className:N.copy,children:[e?(0,g.jsx)(`label`,{htmlFor:p,children:e}):null,t?(0,g.jsx)(`span`,{id:`${p}-description`,children:t}):null]}):null]})});I.displayName=`Checkbox`;export{m as n,I as t};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{dt as e}from"./overlays-CnzrFKmb.js";var t={name:`cloud-download`,size:24,node:[[`path`,{d:`M12 13v8l-4-4`,key:`1f5nwf`}],[`path`,{d:`m12 21 4-4`,key:`1lfcce`}],[`path`,{d:`M4.393 15.269A7 7 0 1 1 15.71 8h1.79a4.5 4.5 0 0 1 2.436 8.284`,key:`ui1hmy`}]],aliases:[`download-cloud`]};t.node;var n=e(t);export{n as t};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{Fa as e,Ia as t,ct as n,ia as r,na as i,nt as a,oa as o,ra as s,sa as c,ta as l,za as u}from"./overlays-CnzrFKmb.js";import{w as ee}from"./index-br322rzz.js";var d=u(t(),1),f={root:`_root_8729c_1`,surface:`_surface_8729c_16`,trigger:`_trigger_8729c_39`,face:`_face_8729c_41`,icon:`_icon_8729c_64`,prompt:`_prompt_8729c_68`,secondary:`_secondary_8729c_70`,primary:`_primary_8729c_71`,status:`_status_8729c_90`,statusText:`_statusText_8729c_95`,check:`_check_8729c_97`,checkDisc:`_checkDisc_8729c_98`,checkTick:`_checkTick_8729c_99`,spinner:`_spinner_8729c_100`,spin:`_spin_8729c_100`,srOnly:`_srOnly_8729c_103`},p=e(),m=12,{blur:h}=a,g=[...a.ease.enter],_=[...a.ease.standard],v=(e,t)=>{let n=2*Math.PI/(e*1.2);return{type:`spring`,stiffness:n*n,damping:2*(1-t)*n,mass:1}},y=v(.44,.18),b=v(.34,0),x=v(.36,.06),S=()=>()=>{};function te(){let e=(0,d.useSyncExternalStore)(S,()=>!0,()=>!1);return!!s()&&e}var C={hidden:e=>({opacity:0,x:e*m,filter:`blur(${h.soft}px)`}),shown:{opacity:1,x:0,filter:`blur(0px)`,transition:{x,opacity:{duration:.2,ease:g,delay:.04},filter:{duration:.22,ease:g,delay:.04}}},gone:e=>({opacity:0,x:e*-12*.6,filter:`blur(${h.soft}px)`,transition:{x,opacity:{duration:.12,ease:_},filter:{duration:.12,ease:_}}})},w={hidden:{opacity:0},shown:{opacity:1,transition:{duration:.14}},gone:{opacity:0,transition:{duration:.1}}};function ne({id:e,direction:t,reduced:n,onSize:r,children:i,labelledBy:a}){let o=(0,d.useRef)(null),s=c();return(0,d.useLayoutEffect)(()=>{let t=o.current;if(!t||!s)return;let n=()=>{let n=t.style.flex;t.style.flex=`none`;let i=t.offsetWidth;t.style.flex=n,r(e,i)};if(n(),typeof ResizeObserver>`u`)return;let i=new ResizeObserver(n);return i.observe(t),()=>i.disconnect()},[e,r,s]),(0,p.jsx)(l.div,{ref:o,className:f.face,"data-face":e,custom:t,role:a?`group`:void 0,"aria-labelledby":a,variants:n?w:C,initial:`hidden`,animate:`shown`,exit:`gone`,inert:!s||void 0,children:i})}function re({reduced:e}){return(0,p.jsxs)(`svg`,{className:f.check,viewBox:`0 0 18 18`,fill:`none`,"aria-hidden":`true`,children:[(0,p.jsx)(l.circle,{className:f.checkDisc,cx:`9`,cy:`9`,r:`8`,style:{transformOrigin:`9px 9px`},initial:!e&&{scale:.4,opacity:0},animate:{scale:1,opacity:1},transition:{scale:v(.34,.3),opacity:{duration:.12}}}),(0,p.jsx)(l.path,{className:f.checkTick,d:`M5.6 9.3 7.8 11.4 12.4 6.7`,strokeWidth:`1.9`,strokeLinecap:`round`,strokeLinejoin:`round`,initial:!e&&{pathLength:0},animate:{pathLength:1},transition:{duration:.28,ease:g,delay:.12}})]})}function T({label:e,icon:t,prompt:a,confirmLabel:s=`Delete`,cancelLabel:c=`Cancel`,pendingLabel:u=`Deleting`,doneLabel:m=`Deleted`,errorLabel:h=`Couldn’t finish`,retryLabel:g=`Retry`,undoLabel:_=`Undo`,undoingLabel:v=`Restoring`,tone:x=`danger`,onConfirm:S,onUndo:C,onCancel:w,state:T,defaultState:ie=`idle`,onStateChange:E,confirmTimeout:ae=6e3,resultTimeout:oe=5e3,cancelOnOutsidePress:D=!0,disabled:O=!1,className:se,ref:ce}){let k=te(),A=`${(0,d.useId)()}-prompt`,j=(0,d.useRef)(null);(0,d.useImperativeHandle)(ce,()=>j.current,[]);let[le,ue]=(0,d.useState)(ie),M=T??le,[N,P]=(0,d.useState)(1),[F,de]=(0,d.useState)(`confirm`),[fe,I]=(0,d.useState)(``),L=(0,d.useRef)({state:M,onStateChange:E,controlled:T!==void 0});(0,d.useLayoutEffect)(()=>{L.current={state:M,onStateChange:E,controlled:T!==void 0}});let R=(0,d.useRef)(!1),z=(0,d.useRef)(0),B=(0,d.useCallback)(e=>{if(e===L.current.state)return;let t=j.current;R.current=!!t&&(t.contains(document.activeElement)||document.activeElement===document.body),P(e===`idle`?-1:1),L.current.controlled||ue(e),L.current.state=e,L.current.onStateChange?.(e)},[]),V=(0,d.useCallback)(()=>{z.current++,B(`idle`)},[B]),H=(0,d.useCallback)(async e=>{let t=e===`confirm`?S:C,n=++z.current;de(e);let r;try{r=t?.()}catch{B(`error`),I(h);return}if(r&&typeof r.then==`function`){B(`pending`),I(e===`confirm`?u:v);try{await r}catch{if(n!==z.current)return;B(`error`),I(h);return}if(n!==z.current)return}if(e===`undo`){B(`idle`),I(`Undone`);return}B(`done`),I(C?`${m}. ${_} is available.`:m)},[m,h,B,S,C,u,_,v]),U=(0,d.useCallback)(()=>{w?.(),V(),I(`Cancelled`)},[w,V]),W=(0,d.useRef)(()=>{});(0,d.useLayoutEffect)(()=>{W.current=()=>{L.current.state===`confirming`?U():V()}});let G=r(`auto`),K=(0,d.useRef)(0),q=(0,d.useRef)(0),pe=(0,d.useCallback)((e,t)=>{if(e!==L.current.state||Math.abs(t-K.current)<.5)return;let n=K.current;if(K.current=t,!n||k){G.jump(`auto`);return}G.get()===`auto`&&G.jump(n);let r=++q.current;i(G,t,t>n?y:b).then(()=>{r===q.current&&G.jump(`auto`)})},[k,G]),J=r(1),Y=(0,d.useRef)(null),X=(0,d.useRef)({hover:!1,hidden:!1}),Z=M===`confirming`?ae:M===`done`||M===`error`?oe:0,Q=(0,d.useCallback)(()=>{let e=Y.current;e&&(X.current.hover||X.current.hidden?e.pause():e.play())},[]);(0,d.useEffect)(()=>{if(!Z)return;J.jump(1);let e=i(J,0,{duration:Z/1e3,ease:`linear`});return Y.current=e,e.then(()=>{Y.current===e&&(Y.current=null,W.current())}),Q(),()=>{Y.current===e&&(Y.current=null),e.stop()}},[J,M,Q,Z]),(0,d.useEffect)(()=>{let e=()=>{X.current.hidden=document.hidden,Q()};return document.addEventListener(`visibilitychange`,e),()=>document.removeEventListener(`visibilitychange`,e)},[Q]),(0,d.useEffect)(()=>{if(M!==`confirming`||!D)return;let e=e=>{j.current?.contains(e.target)||U()};return document.addEventListener(`pointerdown`,e),()=>document.removeEventListener(`pointerdown`,e)},[U,D,M]),(0,d.useLayoutEffect)(()=>{if(!R.current)return;R.current=!1;let e=j.current;e&&(e.querySelector(`[data-face="${M}"]`)?.querySelector(`[data-autofocus]:not(:disabled)`)??e).focus({preventScroll:!0})},[M]);let me=e=>{e.key===`Escape`&&(M===`confirming`?(e.preventDefault(),e.stopPropagation(),U()):(M===`done`||M===`error`)&&(e.preventDefault(),e.stopPropagation(),V()))},$=a??(0,p.jsxs)(p.Fragment,{children:[e,`?`]}),he=(()=>{switch(M){case`confirming`:return(0,p.jsxs)(p.Fragment,{children:[(0,p.jsx)(`span`,{id:A,className:f.prompt,children:$}),(0,p.jsx)(`button`,{type:`button`,className:f.secondary,"data-autofocus":!0,onClick:U,children:c}),(0,p.jsx)(`button`,{type:`button`,className:f.primary,onClick:()=>void H(`confirm`),children:s})]});case`pending`:return(0,p.jsxs)(`span`,{className:f.status,children:[(0,p.jsx)(ee,{className:f.spinner,size:16,strokeWidth:1.75,"aria-hidden":`true`}),(0,p.jsx)(`span`,{children:F===`undo`?v:u})]});case`done`:return(0,p.jsxs)(p.Fragment,{children:[(0,p.jsxs)(`span`,{className:f.status,"data-tone":`success`,children:[(0,p.jsx)(re,{reduced:k}),(0,p.jsx)(`span`,{className:f.statusText,children:m})]}),C&&(0,p.jsx)(`button`,{type:`button`,className:f.secondary,"data-autofocus":!0,onClick:()=>void H(`undo`),children:_})]});case`error`:return(0,p.jsxs)(p.Fragment,{children:[(0,p.jsxs)(`span`,{className:f.status,"data-tone":`danger`,children:[(0,p.jsx)(n,{size:16,strokeWidth:1.75,"aria-hidden":`true`}),(0,p.jsx)(`span`,{className:f.statusText,children:h})]}),(0,p.jsx)(`button`,{type:`button`,className:f.secondary,"data-autofocus":!0,onClick:()=>void H(F),children:g})]});default:return(0,p.jsxs)(`button`,{type:`button`,className:f.trigger,"data-autofocus":!0,disabled:O,onClick:()=>{I(typeof $==`string`?$:``),B(`confirming`)},children:[t&&(0,p.jsx)(`span`,{className:f.icon,"aria-hidden":`true`,children:t}),(0,p.jsx)(`span`,{children:e})]})}})();return(0,p.jsxs)(`div`,{ref:j,className:[f.root,se].filter(Boolean).join(` `),"data-state":M,"data-tone":x,"data-disabled":O||void 0,tabIndex:-1,onKeyDown:me,"aria-busy":M===`pending`||void 0,onPointerEnter:()=>{X.current.hover=!0,Q()},onPointerLeave:()=>{X.current.hover=!1,Q()},onPointerCancel:()=>{X.current.hover=!1,Q()},children:[(0,p.jsx)(l.div,{className:f.surface,style:{width:G},children:(0,p.jsx)(o,{initial:!1,custom:N,children:(0,p.jsx)(ne,{id:M,direction:N,reduced:k,onSize:pe,labelledBy:M===`confirming`?A:void 0,children:he},M)})}),(0,p.jsx)(`span`,{className:f.srOnly,role:`status`,"aria-live":`polite`,children:fe})]})}export{T as t};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
._root_8729c_1{vertical-align:middle;min-width:0;max-width:100%;color:var(--foreground);font-family:var(--font-body);font-size:var(--text-sm);letter-spacing:var(--tracking-body);-webkit-tap-highlight-color:transparent;line-height:1;display:inline-flex;position:relative}._surface_8729c_16{height:var(--control-height-sm);border-radius:var(--radius-pill);background:var(--surface-raised);max-width:100%;box-shadow:var(--shadow-resting);transition:background-color var(--duration-standard) var(--ease-standard), box-shadow var(--duration-standard) var(--ease-standard), transform var(--duration-spring) var(--ease-spring);justify-content:center;display:flex;position:relative;overflow:clip}._surface_8729c_16:after{content:"";border:1px solid var(--border);border-radius:inherit;pointer-events:none;transition:border-color var(--duration-standard) var(--ease-standard);position:absolute;inset:0}._root_8729c_1[data-tone=danger] ._surface_8729c_16{background:color-mix(in oklab, var(--danger) 4%, var(--surface-raised));box-shadow:none}._root_8729c_1[data-tone=danger] ._surface_8729c_16:after{border-color:color-mix(in oklab, var(--danger) 18%, var(--border))}._root_8729c_1[data-tone=danger][data-state=confirming] ._surface_8729c_16{background:var(--surface-raised);box-shadow:var(--shadow-resting)}._root_8729c_1[data-tone=danger][data-state=confirming] ._surface_8729c_16:after{border-color:color-mix(in oklab, var(--danger) 24%, var(--border))}._root_8729c_1[data-tone=danger]:is([data-state=pending],[data-state=done]) ._surface_8729c_16{background:var(--surface-raised);box-shadow:var(--shadow-resting)}._root_8729c_1[data-tone=danger]:is([data-state=pending],[data-state=done]) ._surface_8729c_16:after{border-color:var(--border)}._root_8729c_1[data-disabled][data-state=idle] ._surface_8729c_16{background:var(--surface-raised);box-shadow:none}._root_8729c_1[data-disabled][data-state=idle] ._surface_8729c_16:after{border-color:var(--border-subtle)}._root_8729c_1:has(._trigger_8729c_39:active:not(:disabled)) ._surface_8729c_16{transition-duration:var(--duration-standard), var(--duration-standard), 90ms;transition-timing-function:var(--ease-standard), var(--ease-standard), ease-out;transform:scale(.96)}._face_8729c_41{white-space:nowrap;will-change:transform, filter;flex:0 auto;align-items:center;gap:2px;min-width:0;height:100%;padding:0 4px;display:flex}._face_8729c_41[data-face=idle]{padding:0}._face_8729c_41[inert]{pointer-events:none;position:absolute;top:0;left:50%;translate:-50%}._trigger_8729c_39{border-radius:inherit;height:100%;color:var(--foreground);cursor:pointer;font:inherit;transition:background-color var(--duration-fast) var(--ease-standard), color var(--duration-fast) var(--ease-standard);background:0 0;border:0;align-items:center;gap:8px;padding:0 15px 0 13px;font-weight:500;display:inline-flex}._face_8729c_41[data-face=idle]{border-radius:var(--radius-pill)}._root_8729c_1[data-tone=danger] ._trigger_8729c_39{color:var(--danger)}._trigger_8729c_39:disabled{cursor:not-allowed;color:var(--text-muted)!important}._trigger_8729c_39:disabled ._icon_8729c_64{opacity:.7}._icon_8729c_64{place-items:center;width:16px;height:16px;display:grid}._icon_8729c_64>svg{width:16px;height:16px}._prompt_8729c_68{min-width:3ch;max-width:16rem;color:var(--foreground);font-variant-numeric:tabular-nums;text-overflow:ellipsis;flex:0 auto;padding:0 6px 0 11px;font-weight:500;line-height:1.3;overflow:hidden}._secondary_8729c_70,._primary_8729c_71{height:calc(var(--control-height-sm) - 8px);border-radius:var(--radius-pill);cursor:pointer;font:inherit;transition:background-color var(--duration-fast) var(--ease-standard), color var(--duration-fast) var(--ease-standard), transform var(--duration-spring) var(--ease-spring);border:0;flex:none;align-items:center;padding:0 11px;font-weight:500;display:inline-flex}._secondary_8729c_70{color:var(--text-secondary);background:0 0}._face_8729c_41:is([data-face=done],[data-face=error]) ._secondary_8729c_70{color:var(--foreground)}._primary_8729c_71{background:var(--accent);color:var(--accent-foreground)}._secondary_8729c_70:active,._primary_8729c_71:active{transition-duration:var(--duration-fast), var(--duration-fast), 90ms;transform:scale(.95)}._status_8729c_90{color:var(--foreground);font-variant-numeric:tabular-nums;align-items:center;gap:7px;padding:0 8px 0 10px;font-weight:500;display:inline-flex}._status_8729c_90>svg{flex:none}._status_8729c_90[data-tone=success]>svg{color:var(--success)}._face_8729c_41[data-face=done]:not(:has(._secondary_8729c_70)) ._status_8729c_90{padding-right:12px}._status_8729c_90[data-tone=danger]>svg{color:var(--danger)}._statusText_8729c_95{line-height:1.3}._face_8729c_41[data-face=pending] ._status_8729c_90{color:var(--text-secondary);padding-inline:14px 16px}._check_8729c_97{width:18px;height:18px}._checkDisc_8729c_98{fill:var(--success)}._checkTick_8729c_99{stroke:var(--background)}._spinner_8729c_100{animation:.7s linear infinite _spin_8729c_100}@keyframes _spin_8729c_100{to{transform:rotate(360deg)}}._srOnly_8729c_103{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@media (hover:hover) and (pointer:fine){._trigger_8729c_39:hover:not(:disabled){background:color-mix(in oklab, var(--foreground) 5%, transparent)}._root_8729c_1[data-tone=danger] ._trigger_8729c_39:hover:not(:disabled){background:color-mix(in oklab, var(--danger) 8%, transparent)}._secondary_8729c_70:hover{background:color-mix(in oklab, var(--foreground) 7%, transparent);color:var(--foreground)}._primary_8729c_71:hover{background:var(--accent-strong)}}._trigger_8729c_39:focus-visible{background:color-mix(in oklab, var(--foreground) 6%, transparent)}._root_8729c_1[data-tone=danger] ._trigger_8729c_39:focus-visible{background:color-mix(in oklab, var(--danger) 9%, transparent)}._secondary_8729c_70:focus-visible{background:color-mix(in oklab, var(--foreground) 8%, transparent);color:var(--foreground)}._primary_8729c_71:focus-visible{background:var(--accent-strong)}@media (prefers-reduced-motion:reduce){._surface_8729c_16,._trigger_8729c_39,._secondary_8729c_70,._primary_8729c_71{transition-duration:0s}._spinner_8729c_100{animation-duration:1.6s}:is(._root_8729c_1:has(._trigger_8729c_39:active) ._surface_8729c_16,._secondary_8729c_70:active,._primary_8729c_71:active){transform:none}}@media (prefers-contrast:more){._surface_8729c_16:after{border-color:var(--border-strong)}}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{dt as e}from"./overlays-CnzrFKmb.js";var t={name:`download`,size:24,node:[[`path`,{d:`M12 15V3`,key:`m9g1x1`}],[`path`,{d:`M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4`,key:`ih7n3h`}],[`path`,{d:`m7 10 5 5 5-5`,key:`brsn70`}]]};t.node;var n=e(t);export{n as t};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{dt as e}from"./overlays-CnzrFKmb.js";var t={name:`ellipsis`,size:24,node:[[`circle`,{cx:`12`,cy:`12`,r:`1`,key:`41hilf`}],[`circle`,{cx:`19`,cy:`12`,r:`1`,key:`1wjl8i`}],[`circle`,{cx:`5`,cy:`12`,r:`1`,key:`1pcz8c`}]],aliases:[`more-horizontal`]};t.node;var n=e(t);export{n as t};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{dt as e}from"./overlays-CnzrFKmb.js";var t={name:`external-link`,size:24,node:[[`path`,{d:`M15 3h6v6`,key:`1q9fwt`}],[`path`,{d:`M10 14 21 3`,key:`gplh6r`}],[`path`,{d:`M18 13v6a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h6`,key:`a6xqqp`}]]};t.node;var n=e(t);export{n as t};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{dt as e}from"./overlays-CnzrFKmb.js";var t={name:`folder-open`,size:24,node:[[`path`,{d:`m6 14 1.5-2.9A2 2 0 0 1 9.24 10H20a2 2 0 0 1 1.94 2.5l-1.54 6a2 2 0 0 1-1.95 1.5H4a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h3.9a2 2 0 0 1 1.69.9l.81 1.2a2 2 0 0 0 1.67.9H18a2 2 0 0 1 2 2v2`,key:`usdka0`}]]};t.node;var n=e(t);export{n as t};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
._field_1xljd_1{min-width:0;display:grid}._field_1xljd_1 label{margin-bottom:var(--space-2);font-size:var(--text-sm);font-weight:500}._shell_1xljd_4{min-height:var(--control-height-md);border:1px solid var(--border-strong);border-radius:var(--radius-control);padding:0 calc((var(--control-height-md) - 2px - 30px) / 2) 0 var(--space-3);background:var(--surface);transition:border-color var(--duration-fast) var(--ease-standard);align-items:center;display:flex}@media (hover:hover) and (pointer:fine){._shell_1xljd_4:hover:not(:focus-within){border-color:var(--foreground)}}._shell_1xljd_4:focus-within{border-color:var(--foreground)}._shell_1xljd_4:has(._input_1xljd_7[aria-invalid=true]){border-color:var(--danger)}._input_1xljd_7{width:100%;min-width:0;color:var(--foreground);font:inherit;font-size:var(--text-sm);line-height:var(--leading-body);background:0 0;border:0;outline:0}._input_1xljd_7::placeholder{color:var(--text-muted)}._input_1xljd_7[data-reveal=shown]{animation:_resolve-shown_1xljd_1 var(--duration-standard) var(--ease-enter)}._input_1xljd_7[data-reveal=hidden]{animation:_resolve-hidden_1xljd_1 var(--duration-standard) var(--ease-enter)}@keyframes _resolve-shown_1xljd_1{0%{opacity:.35;filter:blur(2px)}}@keyframes _resolve-hidden_1xljd_1{0%{opacity:.35;filter:blur(2px)}}._shell_1xljd_4 button{border-radius:var(--radius-control);width:30px;height:30px;color:var(--text-muted);transition:background-color var(--duration-fast) var(--ease-standard), color var(--duration-fast) var(--ease-standard), transform var(--duration-spring) var(--ease-spring);background:0 0;border:0;flex:none;place-items:center;display:grid}@media (hover:hover) and (pointer:fine){._shell_1xljd_4 button:hover{background:var(--surface-muted);color:var(--foreground)}}._shell_1xljd_4 button:active{transition:background-color var(--duration-fast) var(--ease-standard), color var(--duration-fast) var(--ease-standard), transform .1s var(--ease-standard);transform:scale(.96)}._shell_1xljd_4 button[aria-pressed=true]{color:var(--foreground)}._messageSlot_1xljd_20{display:block;overflow:hidden}._hint_1xljd_21{padding-top:var(--space-2);color:var(--text-muted);font-size:var(--text-xs);line-height:var(--leading-body);display:block}._words_1xljd_23{display:block;position:relative}._word_1xljd_23{white-space:pre;display:inline-block}._srOnly_1xljd_25{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}@media (prefers-reduced-motion:reduce){._shell_1xljd_4,._shell_1xljd_4 button{transition:none}._shell_1xljd_4 button:active{transform:none}._input_1xljd_7[data-reveal]{animation:none}}._figure_7arn1_3{--cell:12px;--gap:3px;min-width:0;color:var(--foreground);flex-direction:column;margin:0;display:flex}._scroll_7arn1_8{overscroll-behavior-x:contain;scrollbar-width:none;min-width:0;overflow-x:auto}._scroll_7arn1_8::-webkit-scrollbar{width:0;height:0}._plot_7arn1_12{grid-template-rows:16px auto;grid-template-columns:auto minmax(0,1fr);gap:4px 6px;min-width:fit-content;display:grid;position:relative}._months_7arn1_14{gap:var(--gap);grid-area:1/2;min-width:0;display:flex}._month_7arn1_14{min-width:var(--cell);white-space:nowrap;color:var(--text-muted);font-size:var(--text-xs);flex:1 1 0;line-height:1;overflow:visible}._weekdays_7arn1_19{gap:var(--gap);flex-direction:column;grid-area:2/1;display:flex}._weekday_7arn1_19{height:var(--cell);color:var(--text-muted);font-size:var(--text-xs);white-space:nowrap;flex:none;justify-content:flex-end;align-items:center;line-height:1;display:flex}._grid_7arn1_22{gap:var(--gap);grid-area:2/2;min-width:0;display:flex}._week_7arn1_15{min-width:var(--cell);grid-template-rows:repeat(7, var(--cell));gap:var(--gap);flex:1 1 0;grid-auto-flow:column;place-items:center;display:grid}._cell_7arn1_26{width:var(--cell);height:var(--cell);border-radius:3px;display:block}:where(._cell_7arn1_26,._swatch_7arn1_29){--level:var(--fill-2);background:var(--level)}._swatch_7arn1_29{border-radius:3px;width:11px;height:11px;margin:0 2px;display:block}:where(._cell_7arn1_26,._swatch_7arn1_29)[data-level="1"]{--level:color-mix(in oklab, var(--accent) 26%, var(--surface))}:where(._cell_7arn1_26,._swatch_7arn1_29)[data-level="2"]{--level:color-mix(in oklab, var(--accent) 45%, var(--surface))}:where(._cell_7arn1_26,._swatch_7arn1_29)[data-level="3"]{--level:color-mix(in oklab, var(--accent) 63%, var(--surface))}:where(._cell_7arn1_26,._swatch_7arn1_29)[data-level="4"]{--level:color-mix(in oklab, var(--accent) 84%, var(--surface))}[data-theme=dark] :where(._cell_7arn1_26,._swatch_7arn1_29)[data-level="1"]{--level:color-mix(in oklab, var(--accent) 36%, var(--surface))}[data-theme=dark] :where(._cell_7arn1_26,._swatch_7arn1_29)[data-level="2"]{--level:color-mix(in oklab, var(--accent) 54%, var(--surface))}[data-theme=dark] :where(._cell_7arn1_26,._swatch_7arn1_29)[data-level="3"]{--level:color-mix(in oklab, var(--accent) 70%, var(--surface))}[data-theme=dark] :where(._cell_7arn1_26,._swatch_7arn1_29)[data-level="4"]{--level:color-mix(in oklab, var(--accent) 88%, var(--surface))}._bubble_7arn1_44{z-index:5;border:1px solid color-mix(in oklab, var(--background) 14%, var(--foreground));border-radius:var(--radius-control);background:var(--foreground);max-width:15rem;color:var(--background);box-shadow:var(--shadow-raised);font-size:var(--text-sm);line-height:var(--leading-body);white-space:nowrap;pointer-events:none;padding:6px 10px;position:absolute;transform:translate(-50%,calc(-100% - 8px))}._bubble_7arn1_44[data-align=start]{transform:translateY(calc(-100% - 8px))}._bubble_7arn1_44[data-align=end]{transform:translate(-100%,calc(-100% - 8px))}._bubble_7arn1_44[data-below]{transform:translate(-50%,8px)}._bubble_7arn1_44[data-below][data-align=start]{transform:translateY(8px)}._bubble_7arn1_44[data-below][data-align=end]{transform:translate(-100%,8px)}._foot_7arn1_52{border-top:1px solid var(--border);color:var(--text-secondary);font-size:var(--text-sm);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;margin-top:14px;padding-top:12px;display:flex}._summary_7arn1_53{min-width:0}._legend_7arn1_54{color:var(--text-muted);font-size:var(--text-xs);align-items:center;gap:2px;display:inline-flex}._srOnly_7arn1_56{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}._figure_uvuks_1{gap:var(--space-5);min-width:0;color:var(--foreground);margin:0;display:grid}._header_uvuks_4{gap:2px;min-width:0;display:grid}._kind_uvuks_5,._when_uvuks_5{min-height:calc(1em * var(--leading-body));font-size:var(--text-sm);line-height:var(--leading-body);display:block}._kind_uvuks_5{color:var(--text-secondary)}._when_uvuks_5{color:var(--text-muted)}._value_uvuks_8{min-width:0;font-family:var(--font-display);font-size:var(--text-3xl);letter-spacing:var(--tracking-display);font-weight:500;line-height:var(--leading-display);font-variant-numeric:tabular-nums;align-items:baseline;gap:6px;display:flex}._unit_uvuks_9{color:var(--text-secondary);font-family:var(--font-body);font-size:var(--text-base);letter-spacing:var(--tracking-body);font-weight:400}._swap_uvuks_10{min-width:0;display:block;position:relative}._swapText_uvuks_11{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}._roll_uvuks_13{white-space:pre;justify-content:flex-end;display:inline-flex;position:relative;overflow:clip visible}._digits_uvuks_14{flex:none;display:inline-flex;position:relative}._digit_uvuks_14{white-space:pre;display:inline-block;position:relative}._sizer_uvuks_16{visibility:hidden;white-space:pre;pointer-events:none;position:absolute;top:0;left:0}._chart_uvuks_19{grid-template-rows:auto 26px;grid-template-columns:minmax(0,1fr) 52px;min-width:0;display:grid;position:relative}._plot_uvuks_20{grid-area:1/1;min-width:0;position:relative}._svg_uvuks_21{display:block;overflow:hidden}._grid_uvuks_22{stroke:var(--border);stroke-width:1px;shape-rendering:crispedges}._baseline_uvuks_23,._cursor_uvuks_24{stroke:var(--border-strong);stroke-width:1px;shape-rendering:crispedges}._mean_uvuks_25{stroke:var(--text-secondary);stroke-width:1px;stroke-dasharray:3 3;shape-rendering:crispedges}._bar_uvuks_27{fill:color-mix(in oklab, var(--accent) 62%, var(--surface));transition:fill var(--duration-fast) var(--ease-standard)}._chart_uvuks_19[data-scrubbing] ._bar_uvuks_27{fill:color-mix(in oklab, var(--accent) 24%, var(--surface))}[data-theme=dark] ._bar_uvuks_27{fill:color-mix(in oklab, var(--accent) 76%, var(--surface))}[data-theme=dark] ._chart_uvuks_19[data-scrubbing] ._bar_uvuks_27{fill:color-mix(in oklab, var(--accent) 34%, var(--surface))}[data-theme=dark] ._chart_uvuks_19 ._bar_uvuks_27[data-active],._chart_uvuks_19 ._bar_uvuks_27[data-active]{fill:var(--accent)}._gutter_uvuks_35{grid-area:1/2;min-width:0;position:relative}._tick_uvuks_36,._meanLabel_uvuks_36{white-space:nowrap;pointer-events:none;height:0;display:block;position:absolute;top:0;left:10px}._tickText_uvuks_37{color:var(--text-muted);font-size:var(--text-xs);font-variant-numeric:tabular-nums;line-height:1;display:block;transform:translateY(-50%)}._meanLabel_uvuks_36 ._tickText_uvuks_37{color:var(--foreground);font-weight:500}._axis_uvuks_40{grid-area:2/1;min-width:0;position:relative;overflow:hidden}._axisLabel_uvuks_41{color:var(--text-muted);font-size:var(--text-xs);white-space:nowrap;font-variant-numeric:tabular-nums;line-height:1;position:absolute;top:8px;left:0}._scrubber_uvuks_44{border-radius:calc(var(--radius-control) / 2);touch-action:pan-y;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;outline:none;position:absolute;inset:0}._srOnly_uvuks_46{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}@media (prefers-reduced-motion:reduce){._bar_uvuks_27{transition:none}}._measure_uvuks_48{visibility:hidden;pointer-events:none;display:flex;position:absolute;top:0;left:0}._measure_uvuks_48>span{font-size:var(--text-xs);white-space:nowrap;font-variant-numeric:tabular-nums;flex:none;line-height:1}._wrapper_1xob5_1{--column-tint:var(--surface-muted);border:1px solid var(--border);border-radius:var(--radius-control);background:var(--surface);width:100%;min-width:0;max-width:100%;color:var(--foreground);font-family:var(--font-body);position:relative;overflow:hidden}._scroller_1xob5_2{overscroll-behavior-x:contain;position:relative;overflow-x:auto}._band_1xob5_3{background:var(--column-tint);pointer-events:none;position:absolute;top:0;bottom:0}._table_1xob5_4{z-index:1;border-collapse:separate;border-spacing:0;width:100%;min-width:560px;font-size:var(--text-sm);line-height:var(--leading-body);letter-spacing:var(--tracking-body);text-align:left;position:relative}._table_1xob5_4[data-fixed]{table-layout:fixed}._table_1xob5_4 caption,._srOnly_1xob5_6{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}._selectCol_1xob5_7{width:44px}._table_1xob5_4 th,._table_1xob5_4 td{--cell-base:transparent;--cell-fill:var(--cell-base);background-color:var(--cell-fill);transition:background-color var(--duration-standard) var(--ease-standard), color var(--duration-standard) var(--ease-standard)}._table_1xob5_4 th[data-sorted],._table_1xob5_4 td[data-sorted]{--cell-base:var(--column-tint)}._table_1xob5_4 th{height:44px;padding:0 var(--space-4);border-bottom:1px solid var(--border);color:var(--text-muted);font-size:var(--text-sm);text-align:left;white-space:nowrap;font-weight:500}._table_1xob5_4 th[data-sortable]{padding:0}._table_1xob5_4 th[data-sorted]{color:var(--foreground)}._table_1xob5_4 td{height:52px;padding:0 var(--space-4);border-bottom:1px solid var(--border-subtle);color:var(--foreground);vertical-align:middle;overflow-wrap:anywhere;font-weight:400}._table_1xob5_4 tbody tr:last-child td{border-bottom:0}._table_1xob5_4 [data-numeric]{text-align:right;font-variant-numeric:tabular-nums}._table_1xob5_4[data-selectable] tbody tr{cursor:pointer;-webkit-tap-highlight-color:transparent}._table_1xob5_4[data-selectable] tbody tr[data-selected] td{--cell-fill:color-mix(in oklab, var(--accent) 8%, var(--cell-base))}._table_1xob5_4[data-selectable] [data-primary]:not([data-sortable]),._table_1xob5_4[data-selectable] th[data-primary] ._sortButton_1xob5_19{padding-left:var(--space-2)}._sortButton_1xob5_19{width:100%;height:44px;padding:0 var(--space-4);color:inherit;font:inherit;letter-spacing:inherit;cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border:0;justify-content:flex-start;align-items:center;display:flex}._table_1xob5_4 th[data-numeric] ._sortButton_1xob5_19{justify-content:flex-end}._sortInner_1xob5_23{border-radius:var(--radius-control);transition:color var(--duration-fast) var(--ease-standard);align-items:center;gap:6px;display:inline-flex}._table_1xob5_4 th[data-numeric] ._sortInner_1xob5_23{flex-direction:row-reverse}._sortIcon_1xob5_26{flex:none;place-items:center;width:16px;height:16px;display:grid;position:relative}._sortHint_1xob5_27,._sortArrow_1xob5_27{place-items:center;display:grid;position:absolute;inset:0}._sortHint_1xob5_27{color:var(--text-muted);opacity:0;transition:opacity var(--duration-fast) var(--ease-standard)}._sortArrow_1xob5_27{color:var(--foreground)}._sortButton_1xob5_19:focus-visible{outline:none}._sortButton_1xob5_19:focus-visible ._sortInner_1xob5_23{outline:2px solid var(--focus-ring);outline-offset:4px}._sortButton_1xob5_19:focus-visible ._sortHint_1xob5_27{opacity:.6}._table_1xob5_4 th[data-sorted] ._sortHint_1xob5_27{opacity:0}._selectCell_1xob5_35{width:44px}._table_1xob5_4 ._selectCell_1xob5_35{padding:0 0 0 var(--space-4)}._selectHit_1xob5_37{cursor:pointer;align-items:center;width:100%;height:44px;display:flex;position:relative}._selectInput_1xob5_38{opacity:0;cursor:pointer;width:100%;height:100%;margin:0;position:absolute;inset:0}._selectBox_1xob5_39{border:1px solid var(--border-strong);background:var(--surface);width:18px;height:18px;color:var(--control-glyph);pointer-events:none;transition:border-color var(--duration-fast) var(--ease-standard), transform var(--duration-spring) var(--ease-spring);border-radius:5px;flex:none;display:block;position:relative}._selectBox_1xob5_39[data-on]{border-color:var(--control-on)}._selectFill_1xob5_41{border-radius:inherit;background:var(--control-on);position:absolute;inset:-1px}._selectMark_1xob5_42{width:18px;height:18px;position:absolute;inset:-1px;overflow:visible}._selectInput_1xob5_38:focus-visible+._selectBox_1xob5_39{outline:2px solid var(--focus-ring);outline-offset:2px}._selectInput_1xob5_38:active+._selectBox_1xob5_39{transition:border-color var(--duration-fast) var(--ease-standard), transform .11s var(--ease-standard);transform:scale(.95)}._footer_1xob5_46{justify-content:space-between;align-items:center;gap:var(--space-3);height:44px;padding:0 var(--space-2) 0 var(--space-4);border-top:1px solid var(--border);color:var(--text-muted);font-size:var(--text-sm);line-height:var(--leading-body);letter-spacing:var(--tracking-body);display:flex}._count_1xob5_47{white-space:nowrap;min-width:0;transition:color var(--duration-standard) var(--ease-standard);align-items:baseline;gap:.28em;display:inline-flex}._count_1xob5_47[data-active]{color:var(--foreground)}._swap_1xob5_49{display:inline-block}._swapInner_1xob5_50{width:max-content;display:inline-flex;position:relative}._swapText_1xob5_51{white-space:nowrap;display:inline-block}._number_1xob5_52{font-variant-numeric:tabular-nums}._clear_1xob5_53{border-radius:var(--radius-control);height:30px;padding:0 var(--space-3);color:var(--foreground);font:inherit;letter-spacing:inherit;cursor:pointer;transition:background-color var(--duration-fast) var(--ease-standard);-webkit-tap-highlight-color:transparent;background:0 0;border:0;flex:none;font-weight:500}._clear_1xob5_53:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px}._empty_1xob5_56{height:120px!important;color:var(--text-muted)!important;text-align:center!important}@media (hover:hover) and (pointer:fine){._table_1xob5_4 tbody tr:hover td{--cell-fill:color-mix(in oklab, var(--foreground) 3%, var(--cell-base))}._table_1xob5_4[data-selectable] tbody tr[data-selected]:hover td{--cell-fill:color-mix(in oklab, var(--accent) 11%, var(--cell-base))}._table_1xob5_4 tbody tr:has(._empty_1xob5_56):hover td{--cell-fill:var(--cell-base)}._sortButton_1xob5_19:hover ._sortInner_1xob5_23{color:var(--foreground)}._sortButton_1xob5_19:hover ._sortHint_1xob5_27{opacity:.6}._table_1xob5_4 th[data-sorted] ._sortButton_1xob5_19:hover ._sortHint_1xob5_27{opacity:0}._selectHit_1xob5_37:hover ._selectBox_1xob5_39:not([data-on]){border-color:var(--text-muted)}._clear_1xob5_53:hover{background:var(--surface-muted)}}@media (width<=620px){._scroller_1xob5_2{overflow:visible}._band_1xob5_3{display:none}._table_1xob5_4{width:100%;min-width:0;max-width:100%;display:block}._table_1xob5_4 thead{display:block}._table_1xob5_4 thead tr{align-items:center;gap:var(--space-1);padding:var(--space-1) var(--space-2);border-bottom:1px solid var(--border);scrollbar-width:none;display:flex;overflow-x:auto}._table_1xob5_4 thead tr::-webkit-scrollbar{display:none}._table_1xob5_4 th{background:0 0;border:0;flex:none;height:auto;padding:0;display:block}._table_1xob5_4 th._selectCell_1xob5_35{left:calc(-1 * var(--space-2));z-index:1;width:40px;margin-left:calc(-1 * var(--space-2));padding:0 0 0 var(--space-3);background:var(--surface-raised);position:sticky}._table_1xob5_4 th._selectCell_1xob5_35 ._selectHit_1xob5_37{height:32px}._table_1xob5_4 th._selectCell_1xob5_35:after{background:linear-gradient(to right, var(--surface-raised) 45%, transparent);content:"";opacity:0;pointer-events:none;width:36px;animation:linear both _stripFade_1xob5_1;animation-timeline:scroll(inline);animation-range:0 24px;position:absolute;top:0;bottom:0;left:100%}._table_1xob5_4 th ._sortButton_1xob5_19,._table_1xob5_4[data-selectable] th[data-primary] ._sortButton_1xob5_19{border-radius:var(--radius-control);width:auto;height:32px;transition:background-color var(--duration-standard) var(--ease-standard), color var(--duration-standard) var(--ease-standard);padding:0 10px}._table_1xob5_4 th[data-sorted] ._sortButton_1xob5_19{background:var(--surface-muted)}._table_1xob5_4 th[data-numeric] ._sortInner_1xob5_23{flex-direction:row}._sortButton_1xob5_19:focus-visible{outline:2px solid var(--focus-ring);outline-offset:1px}._sortButton_1xob5_19:focus-visible ._sortInner_1xob5_23{outline:none}._table_1xob5_4 tbody{width:100%;display:block}._table_1xob5_4 tbody tr{--row-fill:transparent;box-sizing:border-box;align-content:center;align-items:baseline;gap:2px var(--space-2);width:100%;min-height:64px;padding:10px var(--space-4);border-bottom:1px solid var(--border-subtle);background-color:var(--row-fill);transition:background-color var(--duration-standard) var(--ease-standard);flex-wrap:wrap;display:flex;position:relative}._table_1xob5_4 tbody tr:after{content:"";flex-basis:100%;order:1}._table_1xob5_4[data-selectable] tbody tr{padding-left:44px}._table_1xob5_4[data-selectable] tbody tr[data-selected]{--row-fill:color-mix(in oklab, var(--accent) 8%, transparent)}._table_1xob5_4 tbody tr:last-child{border-bottom:0}._table_1xob5_4 td{min-width:0;height:auto;color:var(--text-secondary);font-size:var(--text-xs);text-align:left;background:0 0;border:0;order:2;padding:0;display:block}._table_1xob5_4[data-selectable] td[data-primary]:not([data-sortable]){padding-left:0}._table_1xob5_4 td[data-primary]{color:var(--foreground);font-size:var(--text-sm);flex:1 1 0;order:0;font-weight:500}._table_1xob5_4 td[data-numeric]:not([data-primary]){padding-left:var(--space-2);color:var(--foreground);font-size:var(--text-sm);flex:none;order:0;margin-left:auto}._table_1xob5_4 td[data-numeric]~td[data-numeric]{color:var(--text-secondary);font-size:var(--text-xs);order:2;margin-left:0;padding-left:0}._table_1xob5_4 td[data-sorted]:not([data-primary]){color:var(--foreground)}._table_1xob5_4 td._selectCell_1xob5_35{top:0;bottom:0;left:var(--space-1);align-items:center;width:36px;padding:0;display:flex;position:absolute}._table_1xob5_4 td._selectCell_1xob5_35 ._selectHit_1xob5_37{justify-content:center}._table_1xob5_4 ._empty_1xob5_56{padding:var(--space-6) 0;flex:1 0 100%;height:auto!important}._table_1xob5_4[data-selectable] tbody tr:has(._empty_1xob5_56){padding-left:var(--space-4)}}@media (width<=620px) and (hover:hover) and (pointer:fine){._table_1xob5_4 tbody tr:hover{--row-fill:color-mix(in oklab, var(--foreground) 3%, transparent)}._table_1xob5_4[data-selectable] tbody tr[data-selected]:hover{--row-fill:color-mix(in oklab, var(--accent) 11%, transparent)}._table_1xob5_4 tbody tr:hover td{background:0 0}}@media (prefers-reduced-motion:reduce){._table_1xob5_4 th,._table_1xob5_4 td,._table_1xob5_4 tbody tr,._sortInner_1xob5_23,._sortHint_1xob5_27,._selectBox_1xob5_39,._count_1xob5_47,._clear_1xob5_53,._table_1xob5_4 th ._sortButton_1xob5_19{transition:none!important}._selectInput_1xob5_38:active+._selectBox_1xob5_39{transform:none}}@keyframes _stripFade_1xob5_1{to{opacity:1}}._root_8i0lj_1{position:relative}._listShell_8i0lj_2{isolation:isolate;border:1px solid var(--border);border-radius:var(--radius-control);background:var(--surface-muted);align-items:center;min-width:0;max-width:100%;display:inline-flex;position:relative}._viewport_8i0lj_3{border-radius:inherit;scrollbar-width:none;min-width:0;overflow-x:auto}._viewport_8i0lj_3::-webkit-scrollbar{display:none}._listShell_8i0lj_2[data-left=true] ._viewport_8i0lj_3{-webkit-mask-image:linear-gradient(90deg,#0000,#000 35px,#000);mask-image:linear-gradient(90deg,#0000,#000 35px,#000)}._listShell_8i0lj_2[data-right=true] ._viewport_8i0lj_3{-webkit-mask-image:linear-gradient(90deg,#000,#000 calc(100% - 35px),#0000);mask-image:linear-gradient(90deg,#000,#000 calc(100% - 35px),#0000)}._listShell_8i0lj_2[data-left=true][data-right=true] ._viewport_8i0lj_3{-webkit-mask-image:linear-gradient(90deg,#0000,#000 35px calc(100% - 35px),#0000);mask-image:linear-gradient(90deg,#0000,#000 35px calc(100% - 35px),#0000)}._list_8i0lj_2{isolation:isolate;align-items:center;gap:var(--space-1);width:max-content;padding:var(--space-1);display:inline-flex}._scrollButton_8i0lj_10{z-index:2;background:var(--surface-muted);width:33px;color:var(--foreground);border:0;place-items:center;display:grid;position:absolute;top:0;bottom:0}._scrollLeft_8i0lj_11{border-radius:var(--radius-control) 0 0 var(--radius-control);left:0}._scrollRight_8i0lj_12{border-radius:0 var(--radius-control) var(--radius-control) 0;right:0}._scrollButton_8i0lj_10:disabled{opacity:0;pointer-events:none}._scrollButton_8i0lj_10:focus-visible{outline:2px solid var(--focus-ring);outline-offset:-3px}._trigger_8i0lj_15{-webkit-tap-highlight-color:transparent;min-width:5.5rem;min-height:var(--control-height-sm);border-radius:calc(var(--radius-control) - 3px);padding:0 var(--space-3);color:var(--text-muted);font:inherit;font-size:var(--text-sm);white-space:nowrap;cursor:pointer;transition:color var(--duration-fast) var(--ease-standard);background:0 0;border:0;flex:none;place-items:center;font-weight:500;display:inline-grid;position:relative}@media (hover:hover) and (pointer:fine){._trigger_8i0lj_15:hover{color:var(--foreground)}}._trigger_8i0lj_15:active{color:var(--foreground)}._trigger_8i0lj_15[data-state=active]{color:var(--accent-strong)}._selection_8i0lj_18{z-index:-1;border:1px solid var(--border);border-radius:inherit;background:var(--control-selected,var(--surface));box-shadow:var(--shadow-resting);will-change:transform;position:absolute;inset:0}._triggerLabel_8i0lj_19{z-index:1;position:relative}._trigger_8i0lj_15:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px}._trigger_8i0lj_15:disabled{cursor:not-allowed;opacity:.5}._content_8i0lj_22{margin-top:var(--space-4);color:var(--text-secondary);font-size:var(--text-sm);line-height:var(--leading-body)}._content_8i0lj_22[data-motion-pop-id]{margin-top:0}._content_8i0lj_22[data-state=inactive]{pointer-events:none}._content_8i0lj_22:focus-visible{outline:2px solid var(--focus-ring);outline-offset:3px;border-radius:var(--radius-control)}@media (prefers-reduced-motion:reduce){._trigger_8i0lj_15{transition:none}}._nav_1jt95_1{align-items:center;gap:var(--space-1);flex-wrap:wrap;display:flex;position:relative}._nav_1jt95_1 button{width:var(--control-height-sm);height:var(--control-height-sm);border-radius:var(--radius-control);color:var(--text-secondary);font:inherit;font-size:var(--text-xs);font-variant-numeric:tabular-nums;cursor:pointer;transition:background-color var(--duration-fast) var(--ease-standard), color var(--duration-fast) var(--ease-standard);background:0 0;border:1px solid #0000;place-items:center;display:grid;position:relative}._nav_1jt95_1 button[aria-current=page]{color:var(--foreground)}._mark_1jt95_5{width:var(--control-height-sm);height:var(--control-height-sm);box-sizing:border-box;border:1px solid var(--border);border-radius:var(--radius-control);background:var(--control-selected,var(--surface));box-shadow:var(--shadow-resting);opacity:0;pointer-events:none;position:absolute;top:0;left:0}._nav_1jt95_1[data-mark-ready] ._mark_1jt95_5{opacity:1}._nav_1jt95_1:not([data-mark-ready]) button[aria-current=page]{border-color:var(--border);background:var(--control-selected,var(--surface));box-shadow:var(--shadow-resting)}._nav_1jt95_1 ._step_1jt95_9{transition:background-color var(--duration-fast) var(--ease-standard), color var(--duration-fast) var(--ease-standard), opacity var(--duration-fast) var(--ease-standard), transform var(--duration-spring) var(--ease-spring)}._nav_1jt95_1 ._step_1jt95_9:active:not(:disabled){transition-duration:var(--duration-fast), var(--duration-fast), var(--duration-fast), .1s;transition-timing-function:var(--ease-standard), var(--ease-standard), var(--ease-standard), ease-out;transform:scale(.96)}._nav_1jt95_1 button:disabled{opacity:.4;cursor:not-allowed}._nav_1jt95_1 button:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px}@media (hover:hover) and (pointer:fine){._nav_1jt95_1 button:hover:not(:disabled){background:var(--surface-muted);color:var(--foreground)}._nav_1jt95_1[data-mark-ready] button[aria-current=page]:hover{background:0 0}}@media (prefers-reduced-motion:reduce){._nav_1jt95_1 button,._nav_1jt95_1 ._step_1jt95_9{transition:none}._nav_1jt95_1 ._step_1jt95_9:active:not(:disabled){transform:none}}._frame_14dj3_1{min-width:0}._content_14dj3_2{position:relative}._group_14dj3_3{isolation:isolate;gap:var(--space-2);flex-wrap:wrap;display:flex;position:relative}._chip_14dj3_6{border-radius:var(--radius-pill);max-width:100%;color:var(--text-secondary);font:inherit;font-size:var(--text-sm);letter-spacing:var(--tracking-body);cursor:pointer;-webkit-tap-highlight-color:transparent;transition:color var(--duration-fast) var(--ease-standard);background:0 0;border:0;padding:0;font-weight:500;line-height:20px;display:inline-flex;position:relative}._body_14dj3_8{isolation:isolate;min-width:0;height:var(--control-height-sm);transition:scale var(--duration-spring) var(--ease-spring);align-items:center;padding:0 14px;display:inline-flex;position:relative}._chip_14dj3_6:active ._body_14dj3_8{transition-duration:var(--duration-instant);transition-timing-function:var(--ease-standard);scale:.97}._surface_14dj3_10{z-index:-1;border:1px solid var(--border);border-radius:var(--radius-pill);background:var(--surface);transition:background-color var(--duration-fast) var(--ease-standard), border-color var(--duration-fast) var(--ease-standard);position:absolute;top:0;bottom:0;left:0}._check_14dj3_12{width:14px;height:14px;color:var(--accent-strong);transform-origin:0;place-items:center;display:grid;position:absolute;top:calc(50% - 7px);left:12px}._check_14dj3_12 svg{display:block;overflow:visible}._slot_14dj3_14{flex:none;width:0}._body_14dj3_8[data-selected=true] ._slot_14dj3_14{width:18px}._label_14dj3_16{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}._body_14dj3_8[data-selected=true] ._surface_14dj3_10{border-color:color-mix(in oklab, var(--accent) 42%, var(--border));background:color-mix(in oklab, var(--accent) 11%, var(--surface))}._chip_14dj3_6[aria-pressed=true]{color:var(--foreground)}@media (hover:hover) and (pointer:fine){._chip_14dj3_6:hover{color:var(--foreground)}._chip_14dj3_6:hover ._surface_14dj3_10{border-color:var(--border-strong)}._chip_14dj3_6[aria-pressed=true]:hover ._surface_14dj3_10{border-color:color-mix(in oklab, var(--accent) 60%, var(--border));background:color-mix(in oklab, var(--accent) 16%, var(--surface))}}._chip_14dj3_6:not(._more_14dj3_28){z-index:1}._more_14dj3_28{color:var(--text-muted)}._more_14dj3_28 ._surface_14dj3_10{border-color:var(--border);background:var(--surface-muted)}._moreText_14dj3_31{font-variant-numeric:tabular-nums;justify-content:center;display:inline-flex;position:relative}._moreLine_14dj3_32{white-space:nowrap;display:block}@media (prefers-reduced-motion:reduce){._chip_14dj3_6,._body_14dj3_8,._surface_14dj3_10{transition:none}._chip_14dj3_6:active ._body_14dj3_8{scale:none}}._trigger_1tt98_2{box-sizing:border-box;min-width:0;max-width:100%;min-height:var(--control-height-md);align-items:center;gap:var(--space-2);padding:0 var(--space-3);border:1px solid var(--border);border-radius:var(--radius-control);background:var(--surface);color:var(--foreground);font:inherit;font-size:var(--text-sm);text-align:left;cursor:pointer;transition:background-color var(--duration-fast) var(--ease-standard), border-color var(--duration-fast) var(--ease-standard);display:inline-flex}@media (hover:hover) and (pointer:fine){._trigger_1tt98_2:hover{border-color:var(--border-strong);background:var(--surface-muted)}}._trigger_1tt98_2[data-state=open],._trigger_1tt98_2:active{border-color:var(--border-strong);background:var(--surface-muted)}._trigger_1tt98_2[data-active]{border-color:var(--border-strong)}._trigger_1tt98_2:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px}._placeholder_1tt98_7{min-width:0;color:var(--text-muted);text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}._value_1tt98_8{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}._icon_1tt98_9{color:var(--text-secondary);flex:none;align-items:center;display:inline-flex}._count_1tt98_10{background:var(--surface-muted);color:var(--text-secondary);font-size:var(--text-xs);font-variant-numeric:tabular-nums;border-radius:999px;flex:none;padding:0 6px;line-height:18px}._chevron_1tt98_11{color:var(--text-muted);transition:transform var(--duration-spring) var(--ease-spring);flex:none;margin-left:auto}._trigger_1tt98_2[data-state=open] ._chevron_1tt98_11{transform:rotate(180deg)}._menu_1tt98_13{--menu-y:-5px;box-sizing:border-box;z-index:60;min-width:max(var(--radix-dropdown-menu-trigger-width), 12rem);max-width:min(22rem, var(--radix-dropdown-menu-content-available-width));max-height:min(340px, var(--radix-dropdown-menu-content-available-height));border:1px solid var(--border);border-radius:var(--radius-panel);background:var(--surface-raised);box-shadow:var(--shadow-floating);transform-origin:var(--radix-dropdown-menu-content-transform-origin);animation:_menu-in_1tt98_1 var(--duration-standard) var(--ease-enter) both;padding:5px;overflow-y:auto}._menu_1tt98_13[data-side=top]{--menu-y:5px}._item_1tt98_15{border-radius:calc(var(--radius-panel) - 6px);min-height:34px;color:var(--foreground);font-size:var(--text-sm);cursor:pointer;-webkit-user-select:none;user-select:none;outline:none;align-items:center;gap:10px;padding:0 32px 0 10px;display:flex;position:relative}._item_1tt98_15[data-highlighted]{background:var(--surface-muted)}._item_1tt98_15[data-disabled]{opacity:.45;cursor:default}._indicator_1tt98_18{color:var(--foreground);display:inline-flex;position:absolute;right:10px}._separator_1tt98_19{height:1px;margin:var(--space-1) calc(var(--space-1) * -1);background:var(--border-subtle)}._empty_1tt98_20{color:var(--text-muted);font-size:var(--text-sm);padding:8px 10px}@keyframes _menu-in_1tt98_1{0%{opacity:0;transform:translateY(var(--menu-y)) scale(.97)}}@media (prefers-reduced-motion:reduce){._trigger_1tt98_2,._chevron_1tt98_11{transition:none}._menu_1tt98_13{animation:none}}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--neutral-0:oklch(100% 0 0);--neutral-1:oklch(99% 0 0);--neutral-2:oklch(97.8% 0 0);--neutral-3:oklch(95.8% 0 0);--neutral-4:oklch(91.5% 0 0);--neutral-5:oklch(84% 0 0);--neutral-6:oklch(72% 0 0);--neutral-7:oklch(59% 0 0);--neutral-8:oklch(46% 0 0);--neutral-9:oklch(34% 0 0);--neutral-10:oklch(23% 0 0);--neutral-11:oklch(15% 0 0);--background:var(--neutral-0);--surface:var(--neutral-0);--surface-raised:var(--neutral-0);--surface-muted:var(--neutral-2);--foreground:var(--neutral-11);--text-secondary:var(--neutral-8);--text-muted:var(--neutral-7);--border:oklch(93.5% 0 0);--border-subtle:oklch(96.5% 0 0);--border-strong:oklch(82% 0 0);--accent:oklch(33% 0 0);--accent-strong:oklch(24% 0 0);--accent-subtle:oklch(33% 0 0/.1);--accent-foreground:var(--background);--control-on:oklch(23% 0 0);--control-glyph:oklch(100% 0 0);--control-track:oklch(89.5% 0 0);--control-track-hover:oklch(86% 0 0);--control-thumb:oklch(100% 0 0);--control-thumb-on:oklch(100% 0 0);--control-thumb-shadow:0 0 0 .5px oklch(0% 0 0/.07), 0 1px 2px oklch(0% 0 0/.14), 0 2px 6px oklch(0% 0 0/.06);--control-on-subtle:color-mix(in oklab, var(--control-on) 10%, transparent);--control-fill:var(--control-on);--focus-ring:transparent;--success:oklch(49% .19 150);--warning:oklch(58% .18 75);--danger:oklch(54% .21 25);--shadow-resting:0 1px 2px oklch(0% 0 0/.035);--shadow-raised:0 6px 18px oklch(0% 0 0/.065), 0 1px 3px oklch(0% 0 0/.035);--shadow-floating:0 20px 48px oklch(0% 0 0/.105), 0 3px 10px oklch(0% 0 0/.045);--arc-gradient-from:oklch(90% .045 300);--arc-gradient-to:oklch(92% .045 65);--arc-gradient:linear-gradient(100deg, var(--arc-gradient-from), var(--arc-gradient-to));--arc-gradient-foreground:oklch(22% .01 300);--arc-gradient-soft:linear-gradient(135deg, oklch(97.5% .016 300), oklch(98% .016 65));--arc-gradient-line:linear-gradient(100deg, oklch(83% .06 300), oklch(86% .06 65));--arc-gradient-ink:linear-gradient(100deg, oklch(47% .1 300), oklch(50% .09 55));--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.25rem;--space-6:1.5rem;--space-8:2rem;--space-10:2.5rem;--space-12:3rem;--space-16:4rem;--space-20:5rem;--space-24:6rem;--radius-control:1.125rem;--radius-panel:1.625rem;--radius-surface:2.125rem;--radius-pill:9999px;--control-height-sm:2.25rem;--control-height-md:2.75rem;--control-height-lg:3.125rem;--font-display:var(--font-geist,"Geist Variable"), sans-serif;--font-body:var(--font-inter,"Inter Variable"), sans-serif;--text-xs:.75rem;--text-sm:.875rem;--text-base:1rem;--text-lg:1.125rem;--text-xl:1.375rem;--text-2xl:1.75rem;--text-3xl:2.25rem;--text-4xl:3.25rem;--text-5xl:4.5rem;--tracking-display:-.03em;--tracking-body:-.01em;--leading-display:1.1;--leading-body:1.4;--ease-enter:cubic-bezier(.16,1,.3,1);--ease-standard:cubic-bezier(.22,1,.36,1);--ease-exit:cubic-bezier(.7,0,.84,0);--ease-in-out:cubic-bezier(.65,0,.35,1);--ease-spring:linear(0, .0258, .09, .1763, .2732, .3724, .4683, .5573, .6376, .7082, .7689, .8202, .8628, .8976, .9256, .9476, .9648, .9778, .9875, .9945, .9994, 1.0026, 1.0047, 1.0058, 1.0062, 1.0062, 1.0059, 1.0055, 1.0049, 1.0043, 1.0036, 1.0031, 1.0025, 1.002, 1.0016, 1.0013, 1);--duration-instant:.12s;--duration-fast:.16s;--duration-standard:.24s;--duration-considered:.48s;--duration-spring:.58s}:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--background:oklch(19% 0 0);--surface:oklch(21.5% 0 0);--surface-raised:oklch(24% 0 0);--surface-muted:oklch(26% 0 0);--foreground:oklch(96% 0 0);--text-secondary:oklch(77% 0 0);--text-muted:oklch(64% 0 0);--border:oklch(29% 0 0);--border-subtle:oklch(25% 0 0);--border-strong:oklch(40% 0 0);--focus-ring:transparent;--accent:oklch(80% 0 0);--accent-strong:oklch(91% 0 0);--accent-subtle:oklch(80% 0 0/.13);--control-on:oklch(93% 0 0);--control-glyph:oklch(19% 0 0);--control-track:oklch(33% 0 0);--control-track-hover:oklch(37% 0 0);--control-thumb:oklch(97% 0 0);--control-thumb-on:oklch(19% 0 0);--control-fill:oklch(62% 0 0);--control-thumb-shadow:0 0 0 .5px oklch(0% 0 0/.3), 0 1px 2px oklch(0% 0 0/.35), 0 2px 6px oklch(0% 0 0/.2);--success:oklch(78% .18 150);--warning:oklch(83% .17 80);--danger:oklch(76% .2 25);--shadow-resting:0 1px 2px oklch(0% 0 0/.18);--shadow-raised:0 8px 22px oklch(0% 0 0/.22);--shadow-floating:0 22px 55px oklch(0% 0 0/.34);--arc-gradient-from:oklch(38% .05 300);--arc-gradient-to:oklch(40% .045 60);--arc-gradient-foreground:oklch(96% .005 300);--arc-gradient-soft:linear-gradient(135deg, oklch(23.5% .016 300), oklch(24% .014 65));--arc-gradient-line:linear-gradient(100deg, oklch(48% .06 300), oklch(52% .055 65));--arc-gradient-ink:linear-gradient(100deg, oklch(82% .07 300), oklch(86% .065 70))}:root[data-accent=neutral]{--accent:oklch(33% 0 0);--accent-strong:oklch(24% 0 0);--accent-subtle:oklch(33% 0 0/.1)}:root[data-accent=violet]{--accent:#7747ff;--accent-strong:#5528ce;--accent-subtle:#7747ff21}:root[data-accent=blue]{--accent:#0562ef;--accent-strong:#074db7;--accent-subtle:#0562ef1f}:root[data-accent=green]{--accent:#0db879;--accent-strong:#087c54;--accent-subtle:#0db87921;--accent-foreground:#102016}:root[data-accent=amber]{--accent:#f3ad20;--accent-strong:#9c6300;--accent-subtle:#f3ad2029;--accent-foreground:#20190d}:root[data-accent=orange]{--accent:#f48120;--accent-strong:#aa4700;--accent-subtle:#f4812021;--accent-foreground:#17130f}:root[data-accent=coral]{--accent:#f15f55;--accent-strong:#b92c27;--accent-subtle:#f15f5524;--accent-foreground:#21110f}:root[data-accent=rose]{--accent:#ed4e9d;--accent-strong:#ae2570;--accent-subtle:#ed4e9d24;--accent-foreground:#250f1b}:root[data-theme=dark][data-accent=neutral]{--accent:oklch(80% 0 0);--accent-strong:oklch(91% 0 0);--accent-subtle:oklch(80% 0 0/.13)}:root[data-theme=dark][data-accent=violet]{--accent:#a78bff;--accent-strong:#c7b7ff;--accent-subtle:#7747ff38}:root[data-theme=dark][data-accent=blue]{--accent:#6ba3ff;--accent-strong:#a4c7ff;--accent-subtle:#0562ef38}:root[data-theme=dark][data-accent=green]{--accent:#53dca6;--accent-strong:#93efd0;--accent-subtle:#0db87933}:root[data-theme=dark][data-accent=amber]{--accent:#ffcb62;--accent-strong:#ffe0a1;--accent-subtle:#f3ad2033}:root[data-theme=dark][data-accent=orange]{--accent:#ffad5e;--accent-strong:#ffd0a0;--accent-subtle:#f4812033;--accent-foreground:#17130f}:root[data-theme=dark][data-accent=coral]{--accent:#ff9386;--accent-strong:#ffc1ba;--accent-subtle:#f15f5533}:root[data-theme=dark][data-accent=rose]{--accent:#ff8bc5;--accent-strong:#ffc0df;--accent-subtle:#ed4e9d33}:root[data-accent=neutral]{--control-on:oklch(23% 0 0);--control-thumb-on:oklch(100% 0 0);--control-glyph:oklch(100% 0 0)}:root[data-accent=violet]{--control-on:#7747ff;--control-thumb-on:#fff;--control-glyph:#fff}:root[data-accent=blue]{--control-on:#0562ef;--control-thumb-on:#fff;--control-glyph:#fff}:root[data-accent=green]{--control-on:#10a870;--control-thumb-on:#fff;--control-glyph:#fff}:root[data-accent=amber]{--control-on:#eda11a;--control-thumb-on:#fff;--control-glyph:#2a1c03}:root[data-accent=orange]{--control-on:#f07818;--control-thumb-on:#fff;--control-glyph:#fff}:root[data-accent=coral]{--control-on:#ec564b;--control-thumb-on:#fff;--control-glyph:#fff}:root[data-accent=rose]{--control-on:#e64494;--control-thumb-on:#fff;--control-glyph:#fff}:root[data-theme=dark][data-accent=neutral]{--control-on:oklch(93% 0 0);--control-thumb-on:oklch(19% 0 0);--control-glyph:oklch(19% 0 0)}:root[data-theme=dark][data-accent=violet]{--control-on:#8a66ff;--control-thumb-on:#fff;--control-glyph:#fff;--control-fill:#8a66ff}:root[data-theme=dark][data-accent=blue]{--control-on:#3b82f6;--control-thumb-on:#fff;--control-glyph:#fff;--control-fill:#3b82f6}:root[data-theme=dark][data-accent=green]{--control-on:#1fae78;--control-thumb-on:#fff;--control-glyph:#fff;--control-fill:#1fae78}:root[data-theme=dark][data-accent=amber]{--control-on:#e8a52a;--control-thumb-on:#fff;--control-glyph:#241803;--control-fill:#e8a52a}:root[data-theme=dark][data-accent=orange]{--control-on:#ef873a;--control-thumb-on:#fff;--control-glyph:#fff;--control-fill:#ef873a}:root[data-theme=dark][data-accent=coral]{--control-on:#ec6a60;--control-thumb-on:#fff;--control-glyph:#fff;--control-fill:#ec6a60}:root[data-theme=dark][data-accent=rose]{--control-on:#e457a0;--control-thumb-on:#fff;--control-glyph:#fff;--control-fill:#e457a0}:root{--series-1:#1f7dcf;--series-2:#7128a5;--series-3:#e58f00;--series-4:#009e84}:root[data-theme=dark]{--series-1:#55adff;--series-2:#9c37be;--series-3:#e66e00;--series-4:#00a861}@supports (color:oklch(from red clamp(.4, l * sign(max(c - .02, 0)) + .5, .8) c h)){:root{--series-1:oklch(from var(--accent) calc(l * sign(max(c - .02, 0)) + .58 * (1 - sign(max(c - .02, 0)))) calc(c * sign(max(c - .02, 0)) + .15 * (1 - sign(max(c - .02, 0)))) calc(h * sign(max(c - .02, 0)) + 250 * (1 - sign(max(c - .02, 0)))));--series-2:oklch(from var(--accent) clamp(.45, l * sign(max(c - .02, 0)) + .58 * (1 - sign(max(c - .02, 0))) - .25, .76) .19 calc(h * sign(max(c - .02, 0)) + 250 * (1 - sign(max(c - .02, 0))) + 57));--series-3:oklch(from var(--accent) clamp(.45, l * sign(max(c - .02, 0)) + .58 * (1 - sign(max(c - .02, 0))) + .14, .76) .18 calc(h * sign(max(c - .02, 0)) + 250 * (1 - sign(max(c - .02, 0))) + 184));--series-4:oklch(from var(--accent) clamp(.45, l * sign(max(c - .02, 0)) + .58 * (1 - sign(max(c - .02, 0))), .76) .21 calc(h * sign(max(c - .02, 0)) + 250 * (1 - sign(max(c - .02, 0))) + 292))}:root[data-theme=dark]{--series-1:oklch(from var(--accent) calc(l * sign(max(c - .02, 0)) + .73 * (1 - sign(max(c - .02, 0)))) calc(c * sign(max(c - .02, 0)) + .15 * (1 - sign(max(c - .02, 0)))) calc(h * sign(max(c - .02, 0)) + 250 * (1 - sign(max(c - .02, 0)))));--series-2:oklch(from var(--accent) clamp(.485, l * sign(max(c - .02, 0)) + .73 * (1 - sign(max(c - .02, 0))) - .19, .665) .21 calc(h * sign(max(c - .02, 0)) + 250 * (1 - sign(max(c - .02, 0))) + 66));--series-3:oklch(from var(--accent) clamp(.485, l * sign(max(c - .02, 0)) + .73 * (1 - sign(max(c - .02, 0))) + .02, .665) .21 calc(h * sign(max(c - .02, 0)) + 250 * (1 - sign(max(c - .02, 0))) + 175));--series-4:oklch(from var(--accent) clamp(.485, l * sign(max(c - .02, 0)) + .73 * (1 - sign(max(c - .02, 0))) - .1, .665) .18 calc(h * sign(max(c - .02, 0)) + 250 * (1 - sign(max(c - .02, 0))) + 270))}}:is(:focus,:focus-visible,:focus-within){outline:none!important}@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-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-ordinal:initial;--tw-slashed-zero:initial;--tw-numeric-figure:initial;--tw-numeric-spacing:initial;--tw-numeric-fraction:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-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}}}@layer theme{:root,:host{--font-sans:-apple-system, BlinkMacSystemFont, "SF Pro Text", "PingFang SC", "Segoe UI Variable", "Segoe UI", "Microsoft YaHei UI", system-ui, sans-serif;--font-mono:ui-monospace, "SF Mono", Menlo, Consolas, monospace;--color-black:#000;--color-white:#fff;--spacing:.25rem;--text-xs:.75rem;--text-sm:.875rem;--text-base:1rem;--text-lg:1.125rem;--text-xl:1.25rem;--text-3xl:1.875rem;--font-weight-normal:400;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--tracking-wide:.025em;--leading-tight:1.25;--leading-snug:1.375;--leading-relaxed:1.625;--radius-md:.375rem;--radius-lg:.5rem;--radius-xl:.75rem;--ease-out:cubic-bezier(0, 0, .2, 1);--ease-in-out:cubic-bezier(.4, 0, .2, 1);--animate-spin:spin 1s linear infinite;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:-apple-system, BlinkMacSystemFont, "SF Pro Text", "PingFang SC", "Segoe UI Variable", "Segoe UI", "Microsoft YaHei UI", system-ui, sans-serif;--default-mono-font-family:ui-monospace, "SF Mono", Menlo, Consolas, monospace}}@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,-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, 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:where(:not(iframe)){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}html,body,#root{height:100%}body{font-family:var(--font-sans);color:var(--label);-webkit-font-smoothing:antialiased;background-color:var(--canvas);margin:0;font-size:13px;line-height:1.45;overflow:hidden}input,textarea,select,button{font:inherit;color:inherit}::selection{background:var(--accent)}@supports (color:color-mix(in lab, red, red)){::selection{background:color-mix(in oklab, var(--accent) 30%, transparent)}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important}}}@layer components{.wallpaper{background:radial-gradient(55% 50% at 6% 12%, var(--accent), transparent 72%), radial-gradient(45% 45% at 14% 92%, var(--accent-2), transparent 72%), radial-gradient(40% 40% at 96% 4%, var(--accent), transparent 72%), var(--canvas)}@supports (color:color-mix(in lab, red, red)){.wallpaper{background:radial-gradient(55% 50% at 6% 12%, color-mix(in oklab, var(--accent) 34%, transparent), transparent 72%), radial-gradient(45% 45% at 14% 92%, color-mix(in oklab, var(--accent-2) 26%, transparent), transparent 72%), radial-gradient(40% 40% at 96% 4%, color-mix(in oklab, var(--accent) 18%, transparent), transparent 72%), var(--canvas)}}.num{font-variant-numeric:tabular-nums}.chrome{-webkit-user-select:none;user-select:none}.selectable{-webkit-user-select:text;user-select:text}.glass{background-color:var(--glass-tint)}@supports (color:color-mix(in lab, red, red)){.glass{background-color:color-mix(in oklab, var(--glass-tint) var(--glass-alpha), transparent)}}.glass{-webkit-backdrop-filter:blur(24px)saturate(180%);border:.5px solid var(--glass-edge);box-shadow:inset 0 1px 0 var(--glass-highlight), 0 8px 30px var(--glass-shadow)}.glass-strong{--glass-alpha:80%}.glass-sheet{--glass-alpha:90%}.glass-flat{box-shadow:inset 0 1px 0 var(--glass-highlight)}:root.refract .glass:not(.no-refract){-webkit-backdrop-filter:url(#astra-refract)blur(24px)saturate(180%);backdrop-filter:url(#astra-refract)blur(24px)saturate(180%)}.card{background-color:var(--surface);border:.5px solid var(--separator);border-radius:14px;overflow:hidden}.card:has([role=combobox][aria-expanded=true]){overflow:visible}@media (prefers-reduced-transparency:reduce){:root[data-theme]{--surface:var(--surface-solid)}.glass,:root.refract .glass:not(.no-refract){-webkit-backdrop-filter:none;background-color:var(--surface-solid)}.card{background-color:var(--surface-solid)}}:root[data-shell=desktop][data-platform=darwin] .drag,:root[data-shell=desktop][data-platform=win32] .drag{-webkit-app-region:drag}:root[data-shell=desktop] .no-drag,:root[data-shell=desktop] .drag button,:root[data-shell=desktop] .drag input,:root[data-shell=desktop] .drag a,:root[data-shell=desktop] .drag [role=button]{-webkit-app-region:no-drag}.field{background:var(--surface);border:.5px solid var(--separator);border-radius:8px;outline:none;min-width:0;height:28px;padding:0 10px;box-shadow:inset 0 .5px 1px #0000000f}textarea.field{height:auto;padding:8px 10px;line-height:1.5}.field:focus{border-color:var(--accent)}@supports (color:color-mix(in lab, red, red)){.field:focus{border-color:color-mix(in oklab, var(--accent) 60%, transparent)}}.field[aria-invalid=true]{border-color:var(--red)}.scroll{scrollbar-width:thin;scrollbar-color:var(--label-3) transparent;overflow:auto}.scroll::-webkit-scrollbar{width:10px;height:10px}.scroll::-webkit-scrollbar-thumb{background:var(--label-3);background-clip:content-box;border:3px solid #0000;border-radius:999px}.scroll-edge{-webkit-mask-image:linear-gradient(#0000 0,#000 18px);mask-image:linear-gradient(#0000 0,#000 18px)}}@layer utilities{.\@container{container-type:inline-size}.pointer-events-auto{pointer-events:auto}.pointer-events-none{pointer-events:none}.collapse{visibility:collapse}.invisible{visibility:hidden}.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.sticky{position:sticky}.inset-0{inset:0}.inset-x-0{inset-inline:0}.inset-y-0{inset-block:0}.top-1\/2{top:50%}.top-full{top:100%}.-right-0\.5{right:calc(var(--spacing) * -.5)}.right-0{right:0}.-bottom-0\.5{bottom:calc(var(--spacing) * -.5)}.bottom-1{bottom:var(--spacing)}.bottom-2{bottom:calc(var(--spacing) * 2)}.bottom-3{bottom:calc(var(--spacing) * 3)}.bottom-5{bottom:calc(var(--spacing) * 5)}.left-0{left:0}.left-3{left:calc(var(--spacing) * 3)}.z-10{z-index:10}.z-20{z-index:20}.z-30{z-index:30}.z-40{z-index:40}.z-50{z-index:50}.z-\[95\]{z-index:95}.col-span-2{grid-column:span 2/span 2}.container{width:100%}@media (width>=40rem){.container{max-width:40rem}}@media (width>=48rem){.container{max-width:48rem}}@media (width>=64rem){.container{max-width:64rem}}@media (width>=80rem){.container{max-width:80rem}}@media (width>=96rem){.container{max-width:96rem}}.m-2{margin:calc(var(--spacing) * 2)}.-mx-2{margin-inline:calc(var(--spacing) * -2)}.-mx-4{margin-inline:calc(var(--spacing) * -4)}.mx-auto{margin-inline:auto}.my-4{margin-block:calc(var(--spacing) * 4)}.my-8{margin-block:calc(var(--spacing) * 8)}.my-px{margin-block:1px}.-mt-1{margin-top:calc(var(--spacing) * -1)}.-mt-3{margin-top:calc(var(--spacing) * -3)}.mt-0\.5{margin-top:calc(var(--spacing) * .5)}.mt-1{margin-top:var(--spacing)}.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-5{margin-top:calc(var(--spacing) * 5)}.mt-6{margin-top:calc(var(--spacing) * 6)}.mt-auto{margin-top:auto}.-mr-1\.5{margin-right:calc(var(--spacing) * -1.5)}.mr-auto{margin-right:auto}.mb-0\.5{margin-bottom:calc(var(--spacing) * .5)}.mb-1{margin-bottom:var(--spacing)}.mb-1\.5{margin-bottom:calc(var(--spacing) * 1.5)}.mb-2{margin-bottom:calc(var(--spacing) * 2)}.mb-3{margin-bottom:calc(var(--spacing) * 3)}.mb-4{margin-bottom:calc(var(--spacing) * 4)}.mb-5{margin-bottom:calc(var(--spacing) * 5)}.mb-6{margin-bottom:calc(var(--spacing) * 6)}.-ml-1{margin-left:calc(var(--spacing) * -1)}.ml-1{margin-left:var(--spacing)}.ml-1\.5{margin-left:calc(var(--spacing) * 1.5)}.ml-2{margin-left:calc(var(--spacing) * 2)}.ml-auto{margin-left:auto}.line-clamp-2{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.block{display:block}.contents{display:contents}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-block{display:inline-block}.inline-flex{display:inline-flex}.table{display:table}.aspect-\[320\/28\]{aspect-ratio:320/28}.aspect-square{aspect-ratio:1}.size-1\.5{width:calc(var(--spacing) * 1.5);height:calc(var(--spacing) * 1.5)}.size-2{width:calc(var(--spacing) * 2);height:calc(var(--spacing) * 2)}.size-2\.5{width:calc(var(--spacing) * 2.5);height:calc(var(--spacing) * 2.5)}.size-3{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-12{width:calc(var(--spacing) * 12);height:calc(var(--spacing) * 12)}.size-\[55\%\]{width:55%;height:55%}.size-full{width:100%;height:100%}.h-1{height:var(--spacing)}.h-1\.5{height:calc(var(--spacing) * 1.5)}.h-5{height:calc(var(--spacing) * 5)}.h-6{height:calc(var(--spacing) * 6)}.h-7{height:calc(var(--spacing) * 7)}.h-8{height:calc(var(--spacing) * 8)}.h-10{height:calc(var(--spacing) * 10)}.h-16{height:calc(var(--spacing) * 16)}.h-\[5px\]{height:5px}.h-\[52px\]{height:52px}.h-\[360px\]{height:360px}.h-full{height:100%}.h-px{height:1px}.max-h-64{max-height:calc(var(--spacing) * 64)}.max-h-72{max-height:calc(var(--spacing) * 72)}.max-h-\[300px\]{max-height:300px}.max-h-\[340px\]{max-height:340px}.max-h-\[420px\]{max-height:420px}.max-h-\[460px\]{max-height:460px}.max-h-full{max-height:100%}.min-h-0{min-height:0}.min-h-5{min-height:calc(var(--spacing) * 5)}.min-h-10{min-height:calc(var(--spacing) * 10)}.min-h-11{min-height:calc(var(--spacing) * 11)}.min-h-\[2lh\]{min-height:2lh}.min-h-\[32px\]{min-height:32px}.min-h-\[160px\]{min-height:160px}.w-6{width:calc(var(--spacing) * 6)}.w-8{width:calc(var(--spacing) * 8)}.w-12{width:calc(var(--spacing) * 12)}.w-14{width:calc(var(--spacing) * 14)}.w-16{width:calc(var(--spacing) * 16)}.w-20{width:calc(var(--spacing) * 20)}.w-24{width:calc(var(--spacing) * 24)}.w-28{width:calc(var(--spacing) * 28)}.w-36{width:calc(var(--spacing) * 36)}.w-40{width:calc(var(--spacing) * 40)}.w-44{width:calc(var(--spacing) * 44)}.w-48{width:calc(var(--spacing) * 48)}.w-52{width:calc(var(--spacing) * 52)}.w-56{width:calc(var(--spacing) * 56)}.w-60{width:calc(var(--spacing) * 60)}.w-64{width:calc(var(--spacing) * 64)}.w-\[3px\]{width:3px}.w-\[11\.5rem\]{width:11.5rem}.w-\[110px\]{width:110px}.w-\[220px\]{width:220px}.w-\[360px\]{width:360px}.w-\[min\(100\%\,26rem\)\]{width:min(100%,26rem)}.w-full{width:100%}.max-w-40{max-width:calc(var(--spacing) * 40)}.max-w-44{max-width:calc(var(--spacing) * 44)}.max-w-\[45\%\]{max-width:45%}.max-w-\[260px\]{max-width:260px}.max-w-\[300px\]{max-width:300px}.max-w-\[320px\]{max-width:320px}.max-w-\[680px\]{max-width:680px}.max-w-\[720px\]{max-width:720px}.max-w-\[760px\]{max-width:760px}.max-w-\[860px\]{max-width:860px}.max-w-\[1100px\]{max-width:1100px}.max-w-\[1120px\]{max-width:1120px}.max-w-\[1200px\]{max-width:1200px}.max-w-full{max-width:100%}.min-w-0{min-width:0}.min-w-40{min-width:calc(var(--spacing) * 40)}.min-w-60{min-width:calc(var(--spacing) * 60)}.min-w-\[220px\]{min-width:220px}.flex-1{flex:1}.flex-\[1_1_9rem\]{flex:9rem}.flex-\[2_1_240px\]{flex:2 240px}.shrink-0{flex-shrink:0}.grow{flex-grow:1}.basis-56{flex-basis:calc(var(--spacing) * 56)}.rotate-90{rotate:90deg}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.animate-spin{animation:var(--animate-spin)}.cursor-default{cursor:default}.cursor-grab{cursor:grab}.cursor-pointer{cursor:pointer}.touch-none{touch-action:none}.resize{resize:both}.list-disc{list-style-type:disc}.auto-cols-fr{grid-auto-columns:minmax(0,1fr)}.grid-flow-col{grid-auto-flow:column}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-cols-\[1fr_48px_72px\]{grid-template-columns:1fr 48px 72px}.grid-cols-\[52px_1fr_48px_72px\]{grid-template-columns:52px 1fr 48px 72px}.grid-cols-\[minmax\(0\,1fr\)_64px_40px_60px\]{grid-template-columns:minmax(0,1fr) 64px 40px 60px}.grid-cols-\[minmax\(0\,300px\)_minmax\(0\,1fr\)\]{grid-template-columns:minmax(0,300px) minmax(0,1fr)}.grid-cols-\[repeat\(auto-fill\,minmax\(190px\,1fr\)\)\]{grid-template-columns:repeat(auto-fill,minmax(190px,1fr))}.grid-cols-\[repeat\(auto-fill\,minmax\(200px\,1fr\)\)\]{grid-template-columns:repeat(auto-fill,minmax(200px,1fr))}.grid-cols-\[repeat\(auto-fill\,minmax\(min\(100\%\,260px\)\,1fr\)\)\]{grid-template-columns:repeat(auto-fill,minmax(min(100%,260px),1fr))}.flex-col{flex-direction:column}.flex-nowrap{flex-wrap:nowrap}.flex-wrap{flex-wrap:wrap}.place-items-center{place-items:center}.content-center{align-content:center}.content-start{align-content:flex-start}.items-baseline{align-items:baseline}.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}.gap-0\.5{gap:calc(var(--spacing) * .5)}.gap-1{gap:var(--spacing)}.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)}.gap-\[3px\]{gap:3px}.gap-px{gap:1px}:where(.space-y-1>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(var(--spacing) * var(--tw-space-y-reverse));margin-block-end:calc(var(--spacing) * calc(1 - var(--tw-space-y-reverse)))}.gap-x-2{column-gap:calc(var(--spacing) * 2)}.gap-x-3{column-gap:calc(var(--spacing) * 3)}.gap-x-4{column-gap:calc(var(--spacing) * 4)}.gap-x-5{column-gap:calc(var(--spacing) * 5)}.gap-x-6{column-gap:calc(var(--spacing) * 6)}.gap-x-8{column-gap:calc(var(--spacing) * 8)}.gap-y-0\.5{row-gap:calc(var(--spacing) * .5)}.gap-y-1{row-gap:var(--spacing)}.gap-y-1\.5{row-gap:calc(var(--spacing) * 1.5)}.gap-y-2{row-gap:calc(var(--spacing) * 2)}.gap-y-3{row-gap:calc(var(--spacing) * 3)}.gap-y-5{row-gap:calc(var(--spacing) * 5)}: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-\[var\(--border\)\]>:not(:last-child)){border-color:var(--border)}:where(.divide-\[var\(--border-subtle\)\]>:not(:last-child)){border-color:var(--border-subtle)}.self-stretch{align-self:stretch}.justify-self-stretch{justify-self:stretch}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.overflow-auto{overflow:auto}.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.overflow-x-hidden{overflow-x:hidden}.overflow-y-auto{overflow-y:auto}.rounded{border-radius:.25rem}.rounded-\[2px\]{border-radius:2px}.rounded-\[3px\]{border-radius:3px}.rounded-\[6px\]{border-radius:6px}.rounded-\[7px\]{border-radius:7px}.rounded-\[8px\]{border-radius:8px}.rounded-\[10px\]{border-radius:10px}.rounded-\[14px\]{border-radius:14px}.rounded-\[18px\]{border-radius:18px}.rounded-\[var\(--radius-card\,12px\)\]{border-radius:var(--radius-card,12px)}.rounded-\[var\(--radius-control\)\]{border-radius:var(--radius-control)}.rounded-\[var\(--radius-md\)\]{border-radius:var(--radius-md)}.rounded-\[var\(--radius-panel\)\]{border-radius:var(--radius-panel)}.rounded-\[var\(--radius-surface\)\]{border-radius:var(--radius-surface)}.rounded-full{border-radius:2147483647px}.rounded-lg{border-radius:var(--radius-lg)}.rounded-md{border-radius:var(--radius-md)}.rounded-xl{border-radius:var(--radius-xl)}.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-dashed{--tw-border-style:dashed;border-style:dashed}.border-\[var\(--border\)\]{border-color:var(--border)}.border-\[var\(--border-strong\)\]{border-color:var(--border-strong)}.border-\[var\(--border-subtle\)\]{border-color:var(--border-subtle)}.bg-\[color-mix\(in_oklab\,var\(--accent\)_18\%\,transparent\)\]{background-color:var(--accent)}@supports (color:color-mix(in lab, red, red)){.bg-\[color-mix\(in_oklab\,var\(--accent\)_18\%\,transparent\)\]{background-color:color-mix(in oklab,var(--accent) 18%,transparent)}}.bg-\[color-mix\(in_oklab\,var\(--danger\)_10\%\,transparent\)\]{background-color:var(--danger)}@supports (color:color-mix(in lab, red, red)){.bg-\[color-mix\(in_oklab\,var\(--danger\)_10\%\,transparent\)\]{background-color:color-mix(in oklab,var(--danger) 10%,transparent)}}.bg-\[color-mix\(in_oklab\,var\(--glass-tint\)_45\%\,transparent\)\]{background-color:var(--glass-tint)}@supports (color:color-mix(in lab, red, red)){.bg-\[color-mix\(in_oklab\,var\(--glass-tint\)_45\%\,transparent\)\]{background-color:color-mix(in oklab,var(--glass-tint) 45%,transparent)}}.bg-\[color-mix\(in_oklab\,var\(--success\)_12\%\,transparent\)\]{background-color:var(--success)}@supports (color:color-mix(in lab, red, red)){.bg-\[color-mix\(in_oklab\,var\(--success\)_12\%\,transparent\)\]{background-color:color-mix(in oklab,var(--success) 12%,transparent)}}.bg-\[color-mix\(in_oklab\,var\(--surface\)_80\%\,transparent\)\]{background-color:var(--surface)}@supports (color:color-mix(in lab, red, red)){.bg-\[color-mix\(in_oklab\,var\(--surface\)_80\%\,transparent\)\]{background-color:color-mix(in oklab,var(--surface) 80%,transparent)}}.bg-\[var\(--accent\)\]{background-color:var(--accent)}.bg-\[var\(--accent-subtle\)\]{background-color:var(--accent-subtle)}.bg-\[var\(--border\)\]{background-color:var(--border)}.bg-\[var\(--fill\)\]{background-color:var(--fill)}.bg-\[var\(--surface\)\]{background-color:var(--surface)}.bg-\[var\(--surface-muted\)\]{background-color:var(--surface-muted)}.bg-\[var\(--surface-raised\)\]{background-color:var(--surface-raised)}.bg-\[var\(--surface-strong\)\]{background-color:var(--surface-strong)}.bg-black\/20{background-color:#0003}@supports (color:color-mix(in lab, red, red)){.bg-black\/20{background-color:color-mix(in oklab, var(--color-black) 20%, transparent)}}.bg-white{background-color:var(--color-white)}.object-contain{object-fit:contain}.p-0{padding:0}.p-1{padding:var(--spacing)}.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-5{padding:calc(var(--spacing) * 5)}.p-6{padding:calc(var(--spacing) * 6)}.p-8{padding:calc(var(--spacing) * 8)}.px-1{padding-inline:var(--spacing)}.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-3\.5{padding-inline:calc(var(--spacing) * 3.5)}.px-4{padding-inline:calc(var(--spacing) * 4)}.px-6{padding-inline:calc(var(--spacing) * 6)}.py-0\.5{padding-block:calc(var(--spacing) * .5)}.py-1{padding-block:var(--spacing)}.py-1\.5{padding-block:calc(var(--spacing) * 1.5)}.py-2{padding-block:calc(var(--spacing) * 2)}.py-2\.5{padding-block:calc(var(--spacing) * 2.5)}.py-3{padding-block:calc(var(--spacing) * 3)}.py-3\.5{padding-block:calc(var(--spacing) * 3.5)}.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-12{padding-block:calc(var(--spacing) * 12)}.py-px{padding-block:1px}.pt-0\.5{padding-top:calc(var(--spacing) * .5)}.pt-1{padding-top:var(--spacing)}.pt-2{padding-top:calc(var(--spacing) * 2)}.pt-2\.5{padding-top:calc(var(--spacing) * 2.5)}.pt-3{padding-top:calc(var(--spacing) * 3)}.pt-3\.5{padding-top:calc(var(--spacing) * 3.5)}.pt-4{padding-top:calc(var(--spacing) * 4)}.pt-5{padding-top:calc(var(--spacing) * 5)}.pr-1{padding-right:var(--spacing)}.pr-4{padding-right:calc(var(--spacing) * 4)}.pr-6{padding-right:calc(var(--spacing) * 6)}.pr-9{padding-right:calc(var(--spacing) * 9)}.pb-1{padding-bottom:var(--spacing)}.pb-2{padding-bottom:calc(var(--spacing) * 2)}.pb-3{padding-bottom:calc(var(--spacing) * 3)}.pb-4{padding-bottom:calc(var(--spacing) * 4)}.pb-10{padding-bottom:calc(var(--spacing) * 10)}.pl-1{padding-left:var(--spacing)}.pl-2{padding-left:calc(var(--spacing) * 2)}.pl-4{padding-left:calc(var(--spacing) * 4)}.pl-5{padding-left:calc(var(--spacing) * 5)}.pl-6{padding-left:calc(var(--spacing) * 6)}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.align-top{vertical-align:top}.font-mono{font-family:ui-monospace,SF Mono,Menlo,Consolas,monospace}.font-sans{font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,PingFang SC,Segoe UI Variable,Segoe UI,Microsoft YaHei UI,system-ui,sans-serif}.text-\[10\.5px\]{font-size:10.5px}.text-\[10px\]{font-size:10px}.text-\[11\.5px\]{font-size:11.5px}.text-\[11px\]{font-size:11px}.text-\[12\.5px\]{font-size:12.5px}.text-\[12px\]{font-size:12px}.text-\[13px\]{font-size:13px}.text-\[14px\]{font-size:14px}.text-\[15px\]{font-size:15px}.text-\[17px\]{font-size:17px}.text-\[18px\]{font-size:18px}.text-\[20px\]{font-size:20px}.text-\[22px\]{font-size:22px}.leading-\[1\.6\]{--tw-leading:1.6;line-height:1.6}.leading-\[1\.7\]{--tw-leading:1.7;line-height:1.7}.leading-\[18px\]{--tw-leading:18px;line-height:18px}.leading-relaxed{--tw-leading:var(--leading-relaxed);line-height:var(--leading-relaxed)}.leading-snug{--tw-leading:var(--leading-snug);line-height:var(--leading-snug)}.leading-tight{--tw-leading:var(--leading-tight);line-height:var(--leading-tight)}.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-\[\.01em\]{--tw-tracking:.01em;letter-spacing:.01em}.tracking-wide{--tw-tracking:var(--tracking-wide);letter-spacing:var(--tracking-wide)}.break-words{overflow-wrap:break-word}.break-all{word-break:break-all}.whitespace-nowrap{white-space:nowrap}.whitespace-pre-line{white-space:pre-line}.whitespace-pre-wrap{white-space:pre-wrap}.text-\[var\(--accent\)\]{color:var(--accent)}.text-\[var\(--danger\)\]{color:var(--danger)}.text-\[var\(--foreground\)\]{color:var(--foreground)}.text-\[var\(--on-accent\)\]{color:var(--on-accent)}.text-\[var\(--success\)\]{color:var(--success)}.text-\[var\(--text\)\]{color:var(--text)}.text-\[var\(--text-muted\)\]{color:var(--text-muted)}.text-\[var\(--text-secondary\)\]{color:var(--text-secondary)}.text-\[var\(--text-secondary\,var\(--text-muted\)\)\]{color:var(--text-secondary,var(--text-muted))}.text-\[var\(--warning\)\]{color:var(--warning)}.text-white{color:var(--color-white)}.tabular-nums{--tw-numeric-spacing:tabular-nums;font-variant-numeric:var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,)}.underline-offset-2{text-underline-offset:2px}.opacity-0{opacity:0}.opacity-50{opacity:.5}.opacity-55{opacity:.55}.opacity-60{opacity:.6}.opacity-70{opacity:.7}.opacity-75{opacity:.75}.opacity-80{opacity:.8}.shadow-\[0_0_0_1px_var\(--border\)\]{--tw-shadow:0 0 0 1px var(--tw-shadow-color,var(--border));box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-\[0_12px_40px_rgb\(0_0_0\/0\.25\)\]{--tw-shadow:0 12px 40px var(--tw-shadow-color,#00000040);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-\[inset_0_0_0_0\.5px_rgb\(0_0_0\/0\.08\)\]{--tw-shadow:inset 0 0 0 .5px var(--tw-shadow-color,#00000014);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-\[var\(--shadow-floating\)\]{--tw-shadow:var(--shadow-floating);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-lg{--tw-shadow:0 10px 15px -3px var(--tw-shadow-color,#0000001a), 0 4px 6px -4px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.ring,.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-\[var\(--accent\)\]{--tw-ring-color:var(--accent)}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.blur{--tw-blur:blur(8px);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.grayscale{--tw-grayscale:grayscale(100%);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.backdrop-filter{-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-\[filter\,opacity\]{transition-property:filter,opacity;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\[width\]{transition-property:width;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-transform{transition-property:transform,translate,scale,rotate;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.duration-500{--tw-duration:.5s;transition-duration:.5s}.ease-out{--tw-ease:var(--ease-out);transition-timing-function:var(--ease-out)}.outline-none{--tw-outline-style:none;outline-style:none}@media (hover:hover){.group-hover\:flex:is(:where(.group):hover *){display:flex}.group-hover\:opacity-100:is(:where(.group):hover *){opacity:1}}.last\:border-0:last-child{border-style:var(--tw-border-style);border-width:0}.empty\:hidden:empty{display:none}@media (hover:hover){.hover\:border-\[var\(--accent\)\]:hover{border-color:var(--accent)}.hover\:border-\[var\(--border\)\]:hover{border-color:var(--border)}.hover\:bg-\[var\(--fill\)\]:hover{background-color:var(--fill)}.hover\:bg-\[var\(--surface-muted\)\]:hover{background-color:var(--surface-muted)}.hover\:bg-\[var\(--surface-strong\)\]:hover{background-color:var(--surface-strong)}.hover\:text-\[var\(--accent\)\]:hover{color:var(--accent)}.hover\:text-\[var\(--foreground\)\]:hover{color:var(--foreground)}.hover\:text-\[var\(--text\)\]:hover{color:var(--text)}.hover\:text-\[var\(--text-secondary\)\]:hover{color:var(--text-secondary)}.hover\:underline:hover{text-decoration-line:underline}.hover\:opacity-80:hover{opacity:.8}}.focus-visible\:underline:focus-visible{text-decoration-line:underline}.focus-visible\:outline:focus-visible{outline-style:var(--tw-outline-style);outline-width:1px}.focus-visible\:outline-2:focus-visible{outline-style:var(--tw-outline-style);outline-width:2px}.focus-visible\:outline-\[var\(--accent\)\]:focus-visible{outline-color:var(--accent)}.active\:cursor-grabbing:active{cursor:grabbing}@media (hover:hover){.enabled\:hover\:bg-\[var\(--surface-muted\)\]:enabled:hover{background-color:var(--surface-muted)}}.disabled\:cursor-default:disabled{cursor:default}.disabled\:text-\[var\(--text-muted\)\]:disabled{color:var(--text-muted)}.disabled\:opacity-40:disabled{opacity:.4}.disabled\:opacity-50:disabled{opacity:.5}@media (hover:hover){.disabled\:hover\:bg-transparent:disabled:hover{background-color:#0000}}@media (prefers-reduced-motion:reduce){.motion-reduce\:animate-none{animation:none}}@media (width>=40rem){.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\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}}@media (width>=48rem){.md\:flex{display:flex}.md\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.md\:pl-10{padding-left:calc(var(--spacing) * 10)}}@media (width>=64rem){.lg\:sticky{position:sticky}.lg\:top-0{top:0}.lg\:col-span-2{grid-column:span 2/span 2}.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-4{grid-template-columns:repeat(4,minmax(0,1fr))}.lg\:grid-cols-\[minmax\(0\,1fr\)_392px\]{grid-template-columns:minmax(0,1fr) 392px}}@media (width>=80rem){.xl\:grid-cols-6{grid-template-columns:repeat(6,minmax(0,1fr))}.xl\:grid-cols-\[minmax\(0\,1fr\)_minmax\(0\,1fr\)\]{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}}@container (width>=48rem){.\@3xl\:sticky{position:sticky}.\@3xl\:top-0{top:0}.\@3xl\:block{display:block}.\@3xl\:w-\[232px\]{width:232px}.\@3xl\:w-full{width:100%}.\@3xl\:flex-col{flex-direction:column}.\@3xl\:flex-row{flex-direction:row}.\@3xl\:items-start{align-items:flex-start}.\@3xl\:gap-0{gap:0}.\@3xl\:gap-5{gap:calc(var(--spacing) * 5)}.\@3xl\:overflow-visible{overflow:visible}}.\[\&\>div\]\:mx-auto>div{margin-inline:auto}.\[\&\>div\]\:mt-1>div{margin-top:var(--spacing)}.\[\&\>div\]\:max-w-\[680px\]>div{max-width:680px}.\[\&\>div\:first-child\>div\]\:min-h-0\!>div:first-child>div{min-height:0!important}.\[\&\>div\:last-child\]\:flex>div:last-child{display:flex}.\[\&\>div\:last-child\]\:flex-1>div:last-child{flex:1}.\[\&\>div\:last-child\]\:flex-col>div:last-child{flex-direction:column}.\[\&\>div\:last-child\]\:p-3>div:last-child{padding:calc(var(--spacing) * 3)}.\[\&\>div\:last-child\>\:last-child\]\:mt-auto\!>div:last-child>:last-child{margin-top:auto!important}.\[\&\>div\:last-child\>\:last-child\]\:min-h-\[44px\]>div:last-child>:last-child{min-height:44px}.\[\&\>div\:last-child\>\:last-child\]\:pt-2>div:last-child>:last-child{padding-top:calc(var(--spacing) * 2)}.\[\&\>div\:last-child\>h3\]\:line-clamp-1>div:last-child>h3{-webkit-line-clamp:1;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.\[\&\>div\:last-child\>h3\]\:text-\[15px\]>div:last-child>h3{font-size:15px}.\[\&\>div\:last-child\>p\]\:line-clamp-2>div:last-child>p{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.\[\&\>div\:last-child\>p\]\:min-h-\[2lh\]>div:last-child>p{min-height:2lh}.\[\&\>div\:last-child\>p\]\:text-\[12px\]>div:last-child>p{font-size:12px}}:root{--accent:#007aff;--on-accent:#fff;--accent-2:oklch(from var(--accent) l c calc(h + 70));--label:#000000e0;--label-2:#0000008c;--label-3:#0000004d;--separator:#00000017;--surface-solid:#fff;--surface:oklab(100% 0 5.96046e-8/.78);--control-selected:#fff;--canvas:#eef0f5;--fill:#78788024;--fill-2:#78788012;--glass-tint:#fff;--glass-alpha:55%;--glass-edge:#ffffffa6;--glass-highlight:#ffffffd9;--glass-shadow:#0000001f;--green:#34c759;--orange:#ff9500;--red:#ff3b30;--sidebar-w:224px;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}:root[data-theme=dark]{--label:#ffffffe6;--label-2:#ffffff8f;--label-3:#ffffff4d;--separator:#ffffff1a;--surface-solid:#2a2a2d;--surface:oklab(34.9958% .00189783 -.00660133/.42);--control-selected:#ffffff29;--canvas:#161618;--fill:#78788047;--fill-2:#78788024;--glass-tint:#3a3a3e;--glass-alpha:52%;--glass-edge:#ffffff24;--glass-highlight:#fff3;--glass-shadow:#00000073;--green:#30d158;--orange:#ff9f0a;--red:#ff453a;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}:root[data-theme]{--font-body:var(--font-sans);--font-display:var(--font-sans);--background:var(--canvas);--surface-raised:var(--surface-solid);--surface-muted:var(--label)}@supports (color:color-mix(in lab, red, red)){:root[data-theme]{--surface-muted:color-mix(in oklab, var(--label) 6%, transparent)}}:root[data-theme]{--foreground:var(--label);--text-secondary:var(--label-2);--text-muted:var(--label)}@supports (color:color-mix(in lab, red, red)){:root[data-theme]{--text-muted:color-mix(in oklab, var(--label) 46%, transparent)}}:root[data-theme]{--border:var(--separator);--border-subtle:var(--separator)}@supports (color:color-mix(in lab, red, red)){:root[data-theme]{--border-subtle:color-mix(in oklab, var(--separator) 60%, transparent)}}:root[data-theme]{--border-strong:var(--label)}@supports (color:color-mix(in lab, red, red)){:root[data-theme]{--border-strong:color-mix(in oklab, var(--label) 22%, transparent)}}:root[data-theme]{--accent-strong:var(--accent)}@supports (color:color-mix(in lab, red, red)){:root[data-theme]{--accent-strong:color-mix(in oklab, var(--accent) 82%, black)}}:root[data-theme]{--accent-subtle:var(--accent)}@supports (color:color-mix(in lab, red, red)){:root[data-theme]{--accent-subtle:color-mix(in oklab, var(--accent) 14%, transparent)}}:root[data-theme]{--accent-foreground:var(--on-accent);--control-on:var(--accent);--control-fill:var(--accent);--control-glyph:var(--on-accent);--control-thumb-on:#fff;--success:var(--green);--warning:var(--orange);--danger:var(--red);--control-height-sm:1.75rem;--control-height-md:2rem;--control-height-lg:2.25rem;--radius-control:.625rem;--radius-panel:.875rem;--radius-surface:1.375rem;--text-xs:.6875rem;--text-sm:.8125rem;--text-base:.875rem;--text-lg:.9375rem;--text-xl:1.125rem;--text-2xl:1.375rem;--text-3xl:1.625rem;--tracking-body:0em;--tracking-display:-.01em}:root[data-theme=dark]{--accent-strong:var(--accent)}@supports (color:color-mix(in lab, red, red)){:root[data-theme=dark]{--accent-strong:color-mix(in oklab, var(--accent) 70%, white)}}.astra-label-hidden label{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;margin:0;position:absolute;overflow:hidden}@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-ordinal{syntax:"*";inherits:false}@property --tw-slashed-zero{syntax:"*";inherits:false}@property --tw-numeric-figure{syntax:"*";inherits:false}@property --tw-numeric-spacing{syntax:"*";inherits:false}@property --tw-numeric-fraction{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-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}@keyframes spin{to{transform:rotate(360deg)}}
|