@usex/mikrotik-mcp 3.56.0 → 3.57.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.
@@ -89,7 +89,7 @@ In order to be iterable, non-array objects must have a [Symbol.iterator]() metho
89
89
  `);nZ(`mcp-events.csv`,`${t.join(`,`)}\n${r}\n`,`text/csv`)},Ce=e?e.errorRate>=.2?`is-bad`:e.errorRate>=.05?`is-warn`:`is-good`:``,we=d?.mcp??{},Te=d?.dashboard??{},Ee=d?.ssh??{},De=(e,t,n)=>(0,J.jsxs)(`select`,{className:`btn`,value:M[e],onChange:t=>N(n=>({...n,[e]:t.target.value})),children:[(0,J.jsx)(`option`,{value:``,children:t}),n.map(e=>(0,J.jsx)(`option`,{value:e,children:e},e))]}),Oe=rZ.find(e=>e.id===I)??rZ[0];return(0,J.jsxs)(`div`,{className:`shell`,ref:F,"data-view":I,style:{"--page-accent":lZ[I][0],"--page-accent-2":lZ[I][1]},children:[(0,J.jsxs)(`aside`,{className:`nav`,children:[(0,J.jsxs)(`div`,{className:`nav__brand`,children:[(0,J.jsx)(`div`,{className:`nav__mark`,children:(0,J.jsx)(`svg`,{viewBox:`0 0 24 24`,fill:`none`,"aria-hidden":`true`,children:(0,J.jsxs)(`g`,{stroke:`#18181b`,strokeWidth:`2`,strokeLinecap:`round`,strokeLinejoin:`round`,children:[(0,J.jsx)(`path`,{d:`M12 12 L4 5 M12 12 L20 5 M12 12 L12 20`}),(0,J.jsx)(`circle`,{cx:`12`,cy:`12`,r:`3`,fill:`#18181b`,stroke:`none`}),(0,J.jsx)(`circle`,{cx:`4`,cy:`5`,r:`1.9`,fill:`#18181b`,stroke:`none`}),(0,J.jsx)(`circle`,{cx:`20`,cy:`5`,r:`1.9`,fill:`#18181b`,stroke:`none`}),(0,J.jsx)(`circle`,{cx:`12`,cy:`20`,r:`1.9`,fill:`#18181b`,stroke:`none`})]})})}),(0,J.jsxs)(`div`,{className:`nav__brandtext`,children:[(0,J.jsx)(`b`,{children:`MikroTik MCP`}),(0,J.jsxs)(`small`,{className:c.release?`nav__version-link`:void 0,title:c.release?`View release notes`:void 0,onClick:c.release?()=>c.openModal():void 0,children:[n?.version?`v${n.version}`:`Observability`,c.showIndicator&&(0,J.jsx)(`span`,{className:`nav__update-dot`,title:`v${c.release?.version} available`})]})]})]}),(0,J.jsx)(`nav`,{className:`nav__items`,children:rZ.map(e=>(0,J.jsxs)(`button`,{className:`nav__item${I===e.id?` is-active`:``}`,onClick:()=>ee(e.id),children:[(0,J.jsx)(fZ,{name:e.id}),(0,J.jsx)(`span`,{children:e.label}),e.id===`feed`&&_.length>0&&(0,J.jsx)(`span`,{className:`nav__badge`,children:_.length>999?`999+`:_.length},_.length)]},e.id))}),(0,J.jsxs)(`div`,{className:`nav__foot`,children:[(0,J.jsxs)(`span`,{className:`hero__live${w===`off`?``:` is-on`}${w===`ws`?` is-ws`:w===`sse`?` is-sse`:``}`,title:`Live transport: WebSocket (preferred) or SSE fallback`,children:[(0,J.jsx)(`span`,{className:`dot`}),w===`off`?`offline`:`live · ${w}`]}),(0,J.jsx)(`small`,{className:`muted`,children:n?`${Tc(n.total)} events · ${n.transport}`:`connecting…`})]})]}),(0,J.jsxs)(`main`,{className:`main`,"data-view":I,children:[(0,J.jsxs)(`header`,{className:`topline reveal`,children:[(0,J.jsxs)(`div`,{className:`topline__txt`,children:[(0,J.jsx)(`h1`,{children:Oe.label}),(0,J.jsx)(`small`,{children:Oe.sub})]}),(0,J.jsx)(`span`,{className:`topline__spacer`}),I===`overview`&&(0,J.jsx)(`select`,{className:`btn`,value:b,onChange:e=>x(Number(e.target.value)),title:`Stats time window`,children:kc.map(([e,t])=>(0,J.jsxs)(`option`,{value:t,children:[`window: `,e]},t))}),(0,J.jsxs)(`button`,{className:`help-toggle${te.has(I)?` is-on`:``}`,onClick:()=>z(I),"aria-expanded":te.has(I),title:`About this page`,children:[(0,J.jsx)(`span`,{className:`help-toggle__q`,"aria-hidden":`true`,children:`?`}),`Help`]})]}),te.has(I)&&(0,J.jsx)(dZ,{view:I}),I===`overview`&&(0,J.jsxs)(`section`,{className:`view`,children:[(0,J.jsx)(`div`,{className:`cards reveal`,children:e?(0,J.jsxs)(J.Fragment,{children:[(0,J.jsx)(vc,{k:`Calls (window)`,v:Tc(e.total)}),(0,J.jsx)(vc,{k:`Calls / min`,v:e.callsPerMin.toFixed(1)}),(0,J.jsx)(vc,{k:`Error rate`,v:`${(e.errorRate*100).toFixed(1)}%`,sub:`${e.errors} err`,cls:Ce}),(0,J.jsx)(vc,{k:`Avg latency`,v:Sc(e.latency.avg)}),(0,J.jsx)(vc,{k:`p95 latency`,v:Sc(e.latency.p95)}),(0,J.jsx)(vc,{k:`p99 latency`,v:Sc(e.latency.p99)}),(0,J.jsx)(vc,{k:`Distinct tools`,v:Tc(e.distinctTools)}),(0,J.jsx)(vc,{k:`Output volume`,v:Cc(e.outputBytes)})]}):(0,J.jsxs)(`div`,{className:`stat`,children:[(0,J.jsx)(`p`,{className:`k`,children:`Loading…`}),(0,J.jsx)(`div`,{className:`v`,children:`—`})]})}),(0,J.jsxs)(`div`,{className:`bento reveal`,children:[(0,J.jsx)(_c,{title:`Calls over time`,className:`b-series`,children:e?(0,J.jsx)(uY,{series:e.series}):(0,J.jsx)(`div`,{className:`muted`,children:`no data`})}),e&&(0,J.jsxs)(J.Fragment,{children:[(0,J.jsx)(_c,{title:`By risk`,className:`b-risk`,children:(0,J.jsx)(dY,{segments:Object.keys(e.byRisk).map(t=>({label:t,value:e.byRisk[t],color:Oc[t]}))})}),(0,J.jsx)(_c,{title:`Top tools`,className:`b-tools`,children:(0,J.jsx)(yc,{rows:e.byTool.map(e=>({label:e.tool,value:e.count,sub:`${e.count}× · ${Sc(e.p95Ms)} p95${e.errors?` · ${e.errors} err`:``}`,color:e.errors?`var(--mt-bad)`:void 0}))})}),(0,J.jsx)(_c,{title:`Status`,className:`b-status`,children:(0,J.jsx)(dY,{centerLabel:`calls`,segments:[{label:`ok`,value:de.ok,color:`#a1a1a1`},{label:`error`,value:de.error,color:`#ff5c5c`}]})}),(0,J.jsx)(_c,{title:`By device`,className:`b-device`,children:e.byDevice.length?(0,J.jsx)(yc,{rows:e.byDevice.map(e=>({label:e.device,value:e.count}))}):(0,J.jsx)(`div`,{className:`muted`,children:`single device`})}),(0,J.jsx)(_c,{title:`Recent errors`,className:`b-errors`,children:ue.length?(0,J.jsx)(`div`,{className:`hbar`,children:ue.slice(0,8).map(e=>(0,J.jsxs)(`div`,{className:`hbar__row conn-errrow`,style:{gridTemplateColumns:`auto 1fr`},onClick:()=>void fe(e),children:[(0,J.jsx)(`span`,{className:`muted`,children:wc(e.ts)}),(0,J.jsxs)(`span`,{style:{color:`var(--mt-bad)`,whiteSpace:`nowrap`,overflow:`hidden`,textOverflow:`ellipsis`,minWidth:0},title:e.error??e.output,children:[e.tool,`: `,e.error??e.output??`error`]})]},e.id))}):(0,J.jsx)(`div`,{className:`muted`,children:`no errors 🎉`})})]})]})]}),I===`devices`&&(i&&i.devices.length>0?(0,J.jsxs)(`section`,{className:`view`,children:[(0,J.jsxs)(`div`,{className:`dev-toolbar reveal`,children:[(0,J.jsx)(`input`,{className:`search`,type:`search`,placeholder:`Search devices by name or address…`,value:ne,onChange:e=>B(e.target.value),style:{flex:1,minWidth:180}}),(0,J.jsx)(`div`,{className:`dev-filters`,children:[`all`,`online`,`offline`].map(e=>(0,J.jsx)(`button`,{className:`dev-fbtn${re===e?` is-active`:``}`,onClick:()=>ie(e),children:e===`all`?`All ${ae.total}`:e===`online`?`Online ${ae.online}`:`Offline ${ae.offline}`},e))}),(0,J.jsxs)(`span`,{className:`muted`,children:[oe.length,`/`,ae.total,` shown`]})]}),(0,J.jsxs)(`details`,{className:`dev-collapse reveal`,open:ae.total<=8,children:[(0,J.jsxs)(`summary`,{children:[`Connectivity radar`,(0,J.jsxs)(`span`,{className:`muted`,children:[` `,`· `,ae.online,` online · `,ae.offline,` offline ·`,` `,ae.total,` total`]})]}),(0,J.jsx)(nX,{payload:i,pulses:A})]}),(0,J.jsx)(WX,{devices:oe,poolPayload:o}),oe.length===0?(0,J.jsxs)(`div`,{className:`feed-empty reveal`,children:[(0,J.jsx)(`div`,{className:`feed-empty__icon`,children:`🔍`}),(0,J.jsx)(`p`,{className:`feed-empty__title`,children:`No devices match`}),(0,J.jsx)(`p`,{className:`feed-empty__sub`,children:`Try a different search or status filter.`})]}):(0,J.jsx)(`div`,{className:`dev-grid-wide reveal`,children:oe.map(e=>(0,J.jsx)(rX,{d:e,onToggle:ce},e.name))}),oe.length>0&&(0,J.jsx)(_c,{title:`Device system health`,className:`reveal`,extra:(0,J.jsx)(`span`,{className:`muted`,children:`CPU · memory · disk · latency · live probe`}),children:(0,J.jsx)(`div`,{className:`health-grid`,children:oe.map(e=>(0,J.jsx)(oX,{d:e},e.name))})})]}):(0,J.jsxs)(`div`,{className:`feed-empty`,children:[(0,J.jsx)(`div`,{className:`feed-empty__icon`,children:`🖧`}),(0,J.jsx)(`p`,{className:`feed-empty__title`,children:`No devices configured`}),(0,J.jsx)(Mc,{type:`secondary`,label:`Tip`,children:`Add a device to your config to see connectivity and system health here.`})]})),I===`clients`&&(0,J.jsx)(TY,{}),I===`aaa`&&(0,J.jsx)(ml,{}),I===`topology`&&(l&&l.nodes.length>0?(0,J.jsx)(`section`,{className:`view`,children:(0,J.jsx)(_c,{title:`Network topology`,className:`reveal`,extra:(0,J.jsx)(`span`,{className:`muted`,children:`Layer-2 neighbours via MNDP/CDP/LLDP · click a neighbour to onboard it`}),children:(0,J.jsx)(LX,{topo:l,onOnboard:(e,t)=>{g({name:e,body:t}),m(!0),ee(`config`)}})})}):(0,J.jsxs)(`div`,{className:`feed-empty`,children:[(0,J.jsx)(`div`,{className:`feed-empty__icon`,children:`🛰️`}),(0,J.jsx)(`p`,{className:`feed-empty__title`,children:`No neighbours discovered yet`}),(0,J.jsx)(`p`,{className:`feed-empty__sub`,children:`Layer-2 neighbours (MNDP / CDP / LLDP) appear here as the device reports them.`})]})),I===`packets`&&(0,J.jsx)(`section`,{className:`view`,children:(0,J.jsx)(_c,{title:`Packet capture`,className:`reveal`,extra:(0,J.jsx)(`span`,{className:`muted`,children:`live TZSP decode · /tool sniffer streaming`}),children:(0,J.jsx)(NX,{})})}),I===`snapshots`&&(0,J.jsx)(FX,{}),I===`drift`&&(0,J.jsx)(vX,{}),I===`plan`&&(0,J.jsx)(gl,{}),I===`s3`&&(0,J.jsx)(PX,{}),I===`backups`&&(0,J.jsx)(Rc,{}),I===`modules`&&(0,J.jsx)(AX,{}),I===`config`&&(d?(0,J.jsxs)(`section`,{className:`view`,children:[(0,J.jsx)(_c,{title:`Configuration`,className:`reveal`,extra:(0,J.jsx)(`button`,{className:`btn`,onClick:()=>m(e=>!e),title:`Edit the config JSON with autocomplete, validation and safe-apply`,children:p?`View`:`✎ Edit config`}),children:p?(0,J.jsx)(UY,{initial:h?{...d,devices:{...d.devices,[h.name]:h.body}}:d,onClose:()=>{m(!1),g(null)},onReload:()=>{g(null),q(`/api/config`).then(f).catch(()=>{})}},h?`seed-${h.name}`:`config`):(0,J.jsxs)(J.Fragment,{children:[(0,J.jsxs)(`div`,{className:`legend`,style:{margin:`0 0 10px`},children:[(0,J.jsxs)(`span`,{children:[`transport: `,Ec(we.transport)]}),(0,J.jsxs)(`span`,{children:[`read-only: `,d.readOnly?`yes`:`no`]}),(0,J.jsxs)(`span`,{children:[`dashboard: `,Ec(Te.host),`:`,Ec(Te.port)]}),(0,J.jsxs)(`span`,{children:[`capture: `,Te.captureBody?`on`:`off`]}),(0,J.jsxs)(`span`,{children:[`s3: `,d.s3?`configured`:`off`]}),(0,J.jsxs)(`span`,{children:[`ssh pool: `,Ee.keepAlive===!1?`off`:`on`]})]}),(0,J.jsxs)(`details`,{className:`cfg`,children:[(0,J.jsx)(`summary`,{children:`Full effective configuration (secrets redacted)`}),(0,J.jsx)(zY,{value:d,maxHeight:340})]})]})}),(0,J.jsx)(_c,{title:`Version history`,className:`reveal`,extra:(0,J.jsx)(`span`,{className:`muted`,children:`point-in-time snapshots · diff & restore`}),children:(0,J.jsx)(OY,{onRestored:()=>void q(`/api/config`).then(f).catch(()=>{})})}),(0,J.jsx)(_c,{title:`Field guide`,className:`reveal`,extra:(0,J.jsx)(`span`,{className:`muted`,children:`every config option, documented from the schema`}),children:(0,J.jsx)(AY,{})})]}):(0,J.jsxs)(`div`,{className:`feed-empty`,children:[(0,J.jsx)(Fc,{}),(0,J.jsx)(`p`,{className:`feed-empty__title`,children:`Loading configuration…`})]})),I===`memory`&&(0,J.jsx)(OX,{}),I===`feed`&&(0,J.jsxs)(`div`,{className:`panel reveal`,children:[(0,J.jsxs)(`div`,{className:`sheet__hd`,style:{marginBottom:12},children:[(0,J.jsx)(`h2`,{style:{margin:0},children:`Live tool calls`}),(0,J.jsx)(`span`,{style:{flex:1}}),(0,J.jsxs)(`span`,{className:`muted`,children:[V.length,` shown · `,_.length,` buffered`]})]}),(0,J.jsxs)(`div`,{className:`toolbar`,style:{marginBottom:12},children:[(0,J.jsx)(`div`,{className:`grow`,style:{flex:1,minWidth:180},children:(0,J.jsx)(`input`,{className:`search`,type:`search`,placeholder:`Search tool / input / output / error…`,value:M.q,onChange:e=>N(t=>({...t,q:e.target.value}))})}),De(`tool`,`all tools`,n?.tools??[]),De(`risk`,`all risk`,[`READ`,`WRITE`,`WRITE_IDEMPOTENT`,`DESTRUCTIVE`,`DANGEROUS`]),De(`device`,`all devices`,n?.devices??[]),De(`status`,`all status`,[`ok`,`error`]),(0,J.jsx)(`button`,{className:`btn${S?` is-active`:``}`,onClick:()=>C(e=>!e),children:S?`▶ Resume`:`⏸ Pause`}),(0,J.jsx)(`button`,{className:`btn`,onClick:()=>Se(`csv`),children:`CSV`}),(0,J.jsx)(`button`,{className:`btn`,onClick:()=>Se(`json`),children:`JSON`}),(0,J.jsx)(`button`,{className:`btn`,onClick:()=>N({tool:``,risk:``,device:``,status:``,q:``}),children:`Clear`}),ye&&O.size>0?(0,J.jsxs)(J.Fragment,{children:[(0,J.jsxs)(`button`,{className:`btn btn-danger`,onClick:()=>void xe(),children:[`✓ Confirm delete (`,O.size,`)`]}),(0,J.jsx)(`button`,{className:`btn`,onClick:()=>be(!1),children:`Cancel`})]}):(0,J.jsxs)(`button`,{className:`btn`,disabled:O.size===0,onClick:()=>be(!0),title:`Delete the selected rows`,children:[`🗑 Delete`,O.size>0?` (${O.size})`:``]})]}),V.length===0?le?(0,J.jsxs)(`div`,{className:`feed-empty`,children:[(0,J.jsx)(`div`,{className:`feed-empty__icon`,children:`🔍`}),(0,J.jsx)(`p`,{className:`feed-empty__title`,children:`No calls match your filters`}),(0,J.jsxs)(`p`,{className:`feed-empty__sub`,children:[_.length,` call`,_.length===1?``:`s`,` buffered — try widening the search or the risk / device / status filters.`]}),(0,J.jsx)(`button`,{className:`btn`,onClick:()=>N({tool:``,risk:``,device:``,status:``,q:``}),children:`Clear filters`})]}):(0,J.jsxs)(`div`,{className:`feed-empty`,children:[(0,J.jsx)(`div`,{className:`feed-empty__pulse${w===`off`?``:` is-on`}`}),(0,J.jsx)(`p`,{className:`feed-empty__title`,children:w===`off`?`Not connected`:`Listening for tool calls…`}),(0,J.jsx)(`p`,{className:`feed-empty__sub`,children:w===`off`?`The live stream is offline — it will reconnect automatically.`:`Tool calls the LLM makes against this server stream in here in real time.`})]}):(0,J.jsx)(`div`,{className:`feedwrap`,children:(0,J.jsxs)(`table`,{className:`feed`,children:[(0,J.jsx)(`thead`,{children:(0,J.jsxs)(`tr`,{children:[(0,J.jsx)(`th`,{style:{width:28},children:(0,J.jsx)(`input`,{type:`checkbox`,"aria-label":`Select all shown rows`,checked:he,ref:e=>{e&&(e.indeterminate=ge)},onChange:ve})}),(0,J.jsx)(`th`,{children:`time`}),(0,J.jsx)(`th`,{children:`tool`}),(0,J.jsx)(`th`,{children:`risk`}),(0,J.jsx)(`th`,{children:`device`}),(0,J.jsx)(`th`,{className:`num`,children:`dur`}),(0,J.jsx)(`th`,{children:`status`}),(0,J.jsx)(`th`,{children:`output`})]})}),(0,J.jsx)(`tbody`,{children:pe.map(e=>(0,J.jsxs)(`tr`,{className:`${e.isError?`is-err`:``}${O.has(e.id)?` is-selected`:``}`.trim()||void 0,onClick:()=>void fe(e),children:[(0,J.jsx)(`td`,{onClick:e=>e.stopPropagation(),children:(0,J.jsx)(`input`,{type:`checkbox`,"aria-label":`Select row`,checked:O.has(e.id),onChange:()=>_e(e.id)})}),(0,J.jsx)(`td`,{children:wc(e.ts)}),(0,J.jsx)(`td`,{children:e.tool}),(0,J.jsx)(`td`,{children:(0,J.jsx)(`span`,{className:`risk risk-${e.risk}`,children:e.risk.replace(`WRITE_IDEMPOTENT`,`WRITE·I`)})}),(0,J.jsx)(`td`,{children:e.device??`—`}),(0,J.jsx)(`td`,{className:`num`,children:Sc(e.durationMs)}),(0,J.jsx)(`td`,{children:(0,J.jsx)(`span`,{className:e.isError?`status-err`:`status-ok`,children:e.isError?`error`:`ok`})}),(0,J.jsx)(`td`,{className:`preview`,children:e.isError?e.error??`error`:e.reason?(0,J.jsx)(`span`,{className:`reason-preview`,children:e.reason}):e.output||`—`})]},e.id))})]})})]})]}),c.showModal&&c.release&&(0,J.jsx)(tZ,{release:c.release,onDismiss:c.dismissRelease}),E&&(0,J.jsx)(iX,{event:E,onClose:()=>D(null)})]})}var mZ=document.getElementById(`root`);mZ&&(0,y.createRoot)(mZ).render((0,J.jsx)(pZ,{}));
90
90
  </script>
91
91
  <style>
92
- @import "https://fonts.googleapis.com/css2?family=JetBrains+Mono:ital,wght@0,100..800;1,100..800&display=swap";@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-border-style:solid;--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-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}}}@layer theme{:root,:host{--font-sans:var(--mt-sans);--font-mono:var(--mt-mono);--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1)}}@layer base,components;@layer utilities{.visible{visibility:visible}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.isolate{isolation:isolate}.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}}.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}.shrink{flex-shrink:1}.grow{flex-grow:1}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.rounded{border-radius:.25rem}.border{border-style:var(--tw-border-style);border-width:1px}.italic{font-style:italic}.ring{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}}:root{--background:#0a0a0a;--foreground:#ededed;--card:#111;--card-foreground:#ededed;--popover:#111;--popover-foreground:#ededed;--primary:#ededed;--primary-foreground:#0a0a0a;--secondary:#1a1a1a;--secondary-foreground:#ededed;--muted:#1a1a1a;--muted-foreground:#a1a1a1;--accent:var(--page-accent,#3291ff);--accent-foreground:#0a0a0a;--destructive:#ff5c5c;--destructive-foreground:#fff;--success:#2dd4a7;--warning:#f5a623;--border:#2a2a2a;--input:#2a2a2a;--ring:var(--page-accent,#3291ff);--radius:.5rem}@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-border-style{syntax:"*";inherits:false;initial-value:solid}@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-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}:root{--mt-bg:var(--color-background-primary,#0b0d10);--mt-surface:var(--color-background-secondary,#14171c);--mt-surface-2:var(--color-background-tertiary,#1b1f26);--mt-border:var(--color-border-primary,#262b33);--mt-text:var(--color-text-primary,#e8eaed);--mt-text-dim:var(--color-text-secondary,#9aa3af);--mt-text-faint:var(--color-text-tertiary,#6b7280);--mt-accent:var(--color-accent-primary,#6ea8fe);--mt-good:#34d399;--mt-warn:#fbbf24;--mt-bad:#f87171;--mt-radius:var(--border-radius-md,14px);--mt-radius-sm:var(--border-radius-sm,9px);--mt-mono:var(--font-mono,ui-monospace, "SF Mono", "JetBrains Mono", Menlo, monospace);--mt-sans:var(--font-sans,system-ui, -apple-system, "Segoe UI", sans-serif);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial}}*{box-sizing:border-box}body{background:var(--mt-bg);color:var(--mt-text);font-family:var(--mt-sans);-webkit-font-smoothing:antialiased;margin:0;padding:16px;font-size:13px;line-height:1.5}.app{gap:14px;max-width:960px;margin:0 auto;display:grid}.hd{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.hd__dot{background:var(--mt-good);width:9px;height:9px;box-shadow:0 0 0 4px color-mix(in srgb, var(--mt-good) 22%, transparent);border-radius:50%}.hd__title{letter-spacing:-.01em;margin:0;font-size:17px;font-weight:650}.hd__sub{color:var(--mt-text-dim);font-family:var(--mt-mono);margin:0;font-size:12px}.hd__spacer{flex:1}.pill{border:1px solid var(--mt-border);background:var(--mt-surface);color:var(--mt-text-dim);font-family:var(--mt-mono);border-radius:999px;align-items:center;gap:6px;padding:3px 9px;font-size:11px;display:inline-flex}.pill b{color:var(--mt-text);font-weight:600}.grid{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;display:grid}.card{background:linear-gradient(180deg, var(--mt-surface), var(--mt-surface-2));border:1px solid var(--mt-border);border-radius:var(--mt-radius);padding:14px}.card__label{color:var(--mt-text-dim);text-transform:uppercase;letter-spacing:.06em;margin:0 0 8px;font-size:11px}.card__value{font-family:var(--mt-mono);letter-spacing:-.01em;font-size:20px;font-weight:600}.toolbar{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.toolbar .grow{flex:1;min-width:140px}.search{appearance:none;border:1px solid var(--mt-border);background:var(--mt-surface);width:100%;color:var(--mt-text);font:inherit;border-radius:var(--mt-radius-sm);padding:7px 11px;font-size:13px}.search:focus{border-color:var(--mt-accent);outline:none}.search::placeholder{color:var(--mt-text-faint)}.btn{appearance:none;border:1px solid var(--mt-border);background:var(--mt-surface);color:var(--mt-text);font:inherit;border-radius:var(--mt-radius-sm);cursor:pointer;white-space:nowrap;padding:6px 11px;font-size:12px;transition:border-color .15s,background .15s}.btn:disabled{opacity:.5;cursor:default}.btn.is-active{border-color:var(--mt-accent);color:var(--mt-accent)}.chip{border:1px solid var(--mt-border);background:var(--mt-surface);color:var(--mt-text-dim);font-family:var(--mt-mono);border-radius:999px;align-items:center;gap:4px;padding:1px 7px;font-size:11px;display:inline-flex}.chip.is-good{color:var(--mt-good);border-color:color-mix(in srgb, var(--mt-good) 45%, var(--mt-border))}.chip.is-warn{color:var(--mt-warn);border-color:color-mix(in srgb, var(--mt-warn) 45%, var(--mt-border))}.chip.is-bad{color:var(--mt-bad);border-color:color-mix(in srgb, var(--mt-bad) 45%, var(--mt-border))}.tablewrap{border:1px solid var(--mt-border);border-radius:var(--mt-radius);max-height:70vh;overflow:auto}table.tbl{border-collapse:collapse;width:100%;font-size:12px}table.tbl th,table.tbl td{text-align:left;border-bottom:1px solid color-mix(in srgb, var(--mt-border) 55%, transparent);white-space:nowrap;font-family:var(--mt-mono);padding:7px 12px}table.tbl thead th{z-index:1;background:var(--mt-surface-2);color:var(--mt-text-dim);cursor:pointer;-webkit-user-select:none;user-select:none;font-weight:600;position:sticky;top:0}table.tbl thead th:hover{color:var(--mt-text)}table.tbl thead th .arrow{color:var(--mt-accent);margin-left:4px}table.tbl tbody tr{cursor:pointer}table.tbl tbody tr:hover{background:color-mix(in srgb, var(--mt-accent) 8%, transparent)}table.tbl tbody tr.is-disabled td,table.tbl td.col-num{color:var(--mt-text-faint)}.kv__body{border:1px solid var(--mt-border);border-radius:var(--mt-radius);grid-template-columns:minmax(120px,.4fr) 1fr;display:grid;overflow:hidden}.kv__body>div{border-bottom:1px solid color-mix(in srgb, var(--mt-border) 55%, transparent);overflow-wrap:anywhere;min-width:0;font-size:12px;font-family:var(--mt-mono);padding:7px 14px}.kv__k{color:var(--mt-text-dim);background:color-mix(in srgb, var(--mt-surface) 60%, transparent)}.kv__v{color:var(--mt-text)}.drawer{border:1px solid var(--mt-accent);border-radius:var(--mt-radius);background:var(--mt-surface);gap:10px;padding:12px;display:grid}.drawer__hd{align-items:center;gap:8px;display:flex}.drawer__hd b{font-family:var(--mt-mono)}pre.raw{border:1px solid var(--mt-border);border-radius:var(--mt-radius);background:var(--mt-surface);color:var(--mt-text);font-family:var(--mt-mono);white-space:pre;max-height:70vh;margin:0;padding:14px;font-size:12px;overflow:auto}.foot{color:var(--mt-text-faint);font-size:11px;font-family:var(--mt-mono);flex-wrap:wrap;align-items:center;gap:10px;display:flex}.foot .grow{flex:1}.skeleton,.empty{color:var(--mt-text-faint);text-align:center;padding:40px 0}:root{--mt-sans:"JetBrains Mono", ui-monospace, "SF Mono", Menlo, monospace;--mt-mono:"JetBrains Mono", ui-monospace, "SF Mono", Menlo, monospace;--mt-display:"JetBrains Mono", ui-monospace, "SF Mono", Menlo, monospace;--mt-bg:#0a0a0a;--mt-surface:#111;--mt-surface-2:#1a1a1a;--mt-border:#2a2a2a;--mt-border-strong:#3a3a3a;--mt-text:#ededed;--mt-text-dim:#a1a1a1;--mt-text-faint:#6e6e6e;--mt-good:#d4d4d8;--mt-warn:#a1a1a1;--mt-bad:#ff5c5c;--mt-radius:12px;--mt-radius-sm:8px;--sky:#3291ff;--teal:#2dd4bf;--cyan:#45d4ee;--lime:#69d05a;--coral:#ff5c5c;--amber:#f5a623;--pink:#ff4d8d;--violet:#9d7bff;--page-accent:#3291ff;--page-accent-2:#2dd4bf;--mt-accent:var(--page-accent);--grad:linear-gradient(115deg, var(--page-accent), var(--page-accent-2) 90%);--ease:cubic-bezier(.22, 1, .36, 1);--glass:#111111b8}html,body{background:var(--mt-bg);color:var(--mt-text);font-family:var(--mt-sans);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;margin:0;padding:0}body:after{content:"";z-index:-2;background-image:linear-gradient(color-mix(in srgb, var(--mt-border) 55%, transparent) 1px, transparent 1px), linear-gradient(90deg, color-mix(in srgb, var(--mt-border) 55%, transparent) 1px, transparent 1px);opacity:.32;pointer-events:none;background-size:52px 52px;position:fixed;inset:0;-webkit-mask-image:radial-gradient(circle at 50% 0,#000,#0000 72%);mask-image:radial-gradient(circle at 50% 0,#000,#0000 72%)}.main:before{content:"";z-index:-1;background:radial-gradient(52% 38% at 18% -8%, color-mix(in srgb, var(--page-accent) 14%, transparent), transparent 70%), radial-gradient(46% 36% at 100% 4%, color-mix(in srgb, var(--page-accent-2) 11%, transparent), transparent 68%);opacity:.9;transition:background .5s var(--ease);pointer-events:none;position:fixed;inset:0}.shell{grid-template-columns:250px minmax(0,1fr);align-items:start;min-height:100vh;display:grid}.nav{border-right:1px solid var(--mt-border);background:color-mix(in srgb, var(--mt-surface) 55%, transparent);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);flex-direction:column;gap:10px;height:100vh;padding:18px 14px;display:flex;position:sticky;top:0}.nav__brand{align-items:center;gap:11px;padding:6px 8px 14px;display:flex}.nav__mark{background:var(--grad);width:38px;height:38px;box-shadow:0 6px 20px color-mix(in srgb, var(--page-accent) 34%, transparent);transition:background .4s var(--ease), box-shadow .4s var(--ease);border-radius:11px;flex:none;place-items:center;display:grid}.nav__mark svg{width:22px;height:22px;display:block}.nav__brandtext{flex-direction:column;min-width:0;line-height:1.1;display:flex}.nav__brandtext b{font-family:var(--mt-display);letter-spacing:-.03em;font-size:15px;font-weight:700}.nav__brandtext small{font-family:var(--mt-mono);letter-spacing:.16em;text-transform:uppercase;color:var(--mt-text-dim);margin-top:3px;font-size:10px}.nav__items{flex-direction:column;flex:1;gap:3px;display:flex}.nav__item{color:var(--mt-text-dim);font-family:var(--mt-sans);cursor:pointer;text-align:left;transition:background .18s var(--ease), color .18s, border-color .18s, transform .18s var(--ease);background:0 0;border:1px solid #0000;border-radius:11px;align-items:center;gap:11px;padding:10px 12px;font-size:13px;font-weight:500;display:flex}.nav__item svg{opacity:.85;flex:none;width:18px;height:18px}.nav__item:hover{color:var(--mt-text);background:color-mix(in srgb, var(--mt-text) 7%, transparent)}.nav__item.is-active{color:var(--mt-text);border-color:color-mix(in srgb, var(--page-accent) 36%, var(--mt-border));background:linear-gradient(100deg, color-mix(in srgb, var(--page-accent) 16%, transparent), color-mix(in srgb, var(--page-accent-2) 7%, transparent))}.nav__item.is-active svg{opacity:1;color:var(--page-accent)}.nav__item.is-active:before{content:"";background:var(--page-accent);width:3px;box-shadow:0 0 12px color-mix(in srgb, var(--page-accent) 70%, transparent);border-radius:999px;position:absolute;top:18%;bottom:18%;left:-1px}.nav__item{position:relative}.nav__badge{font-family:var(--mt-mono);background:color-mix(in srgb, var(--page-accent) 24%, transparent);color:var(--mt-text);border-radius:999px;margin-left:auto;padding:1px 7px;font-size:10px;animation:.4s cubic-bezier(.19,1,.22,1) nav-badge-pop;display:inline-block}@keyframes nav-badge-pop{0%{transform:scale(1)}35%{background:color-mix(in srgb, var(--page-accent) 60%, transparent);transform:scale(1.35)}to{transform:scale(1)}}@media (prefers-reduced-motion:reduce){.nav__badge{animation:none}}.nav__foot{border-top:1px solid var(--mt-border);flex-direction:column;gap:8px;padding:10px 8px 2px;display:flex}.main{align-content:start;gap:18px;min-width:0;padding:22px clamp(16px,3vw,44px) 64px;display:grid}.topline{flex-wrap:wrap;align-items:center;gap:14px;display:flex}.topline__txt h1{font-family:var(--mt-display);letter-spacing:-.03em;background:linear-gradient(100deg, var(--mt-text) 30%, color-mix(in srgb, var(--page-accent) 78%, var(--mt-text)));-webkit-text-fill-color:transparent;transition:background .4s var(--ease);-webkit-background-clip:text;background-clip:text;margin:0;font-size:clamp(20px,2.4vw,28px);font-weight:700;line-height:1.15}.topline__txt small{color:var(--mt-text-dim);font-family:var(--mt-mono);margin-top:3px;font-size:12px;display:block}.topline__spacer{flex:1;min-width:8px}.help-toggle{border:1px solid var(--mt-border);background:var(--mt-surface);color:var(--mt-text-dim);font-family:var(--mt-sans);cursor:pointer;transition:color .18s, border-color .18s, background .18s, transform .12s var(--ease);border-radius:999px;align-items:center;gap:7px;padding:7px 13px 7px 10px;font-size:12.5px;font-weight:500;display:inline-flex}.help-toggle:hover{color:var(--mt-text);border-color:var(--mt-border-strong);transform:translateY(-1px)}.help-toggle.is-on{color:var(--page-accent);border-color:color-mix(in srgb, var(--page-accent) 45%, var(--mt-border));background:color-mix(in srgb, var(--page-accent) 12%, var(--mt-surface))}.help-toggle__q{background:color-mix(in srgb, var(--page-accent) 22%, transparent);width:17px;height:17px;color:var(--page-accent);border-radius:999px;place-items:center;font-size:11px;font-weight:700;display:grid}.pagehelp{border-radius:var(--mt-radius);border:1px solid color-mix(in srgb, var(--page-accent) 28%, var(--mt-border));background:linear-gradient(120deg, color-mix(in srgb, var(--page-accent) 9%, var(--mt-surface)), var(--mt-surface) 60%);gap:14px;padding:16px 18px;display:flex}.pagehelp__icon{color:#0a0a0a;background:var(--grad);width:30px;height:30px;box-shadow:0 4px 14px color-mix(in srgb, var(--page-accent) 35%, transparent);border-radius:9px;flex:none;place-items:center;font-size:15px;font-weight:700;display:grid}.pagehelp__body{min-width:0}.pagehelp__what{color:var(--mt-text);margin:2px 0 8px;font-size:13.5px;line-height:1.55}.pagehelp__tips{gap:4px;margin:0;padding-left:18px;display:grid}.pagehelp__tips li{color:var(--mt-text-dim);font-size:12.5px;line-height:1.5}.pagehelp__tips li::marker{color:var(--page-accent)}.view{align-content:start;gap:18px;display:grid}.bento{grid-template-columns:repeat(6,1fr);gap:18px;display:grid}.bento .panel{margin:0}.b-series{grid-column:span 4}.b-risk{grid-column:span 2}.b-tools,.b-status,.b-device,.b-errors{grid-column:span 3}.b-risk,.b-status{flex-direction:column;display:flex}@media (width<=1040px){.bento{grid-template-columns:repeat(2,1fr)}.b-series,.b-risk,.b-tools,.b-status,.b-device,.b-errors{grid-column:span 2}}@media (width<=900px){.shell{grid-template-columns:1fr}.nav{border-right:0;border-bottom:1px solid var(--mt-border);z-index:5;flex-direction:row;align-items:center;gap:8px;height:auto;padding:10px 12px;position:sticky;top:0;overflow-x:auto}.nav__brand{padding:0 6px 0 2px}.nav__brandtext{display:none}.nav__items{flex-direction:row;flex:1;gap:4px}.nav__item span{display:none}.nav__item{padding:9px 11px}.nav__foot{border-top:0;flex-direction:row;align-items:center;padding:0}.nav__foot .muted{display:none}}@media (width<=560px){.nav__brand{display:none}}@media (prefers-reduced-motion:no-preference){.js-motion .reveal{opacity:0}}.hero__live{border:1px solid var(--mt-border);background:var(--glass);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);font-family:var(--mt-mono);letter-spacing:.04em;text-transform:uppercase;color:var(--mt-text-dim);border-radius:999px;align-items:center;gap:7px;padding:7px 13px;font-size:11px;display:inline-flex}.hero__live .dot{background:var(--mt-bad);border-radius:50%;width:8px;height:8px;transition:background .3s}.hero__live.is-ws{--lc:#34d399}.hero__live.is-sse{--lc:#f59e0b}.hero__live.is-on{color:var(--mt-text);border-color:color-mix(in srgb, var(--lc,var(--mt-good)) 40%, var(--mt-border))}.hero__live.is-on .dot{background:var(--lc,var(--mt-good));box-shadow:0 0 0 4px color-mix(in srgb, var(--lc,var(--mt-good)) 22%, transparent);animation:1.8s ease-out infinite hero-pulse}@keyframes hero-pulse{0%{box-shadow:0 0 0 0 color-mix(in srgb, var(--lc,var(--mt-good)) 55%, transparent)}70%{box-shadow:0 0 0 9px color-mix(in srgb, var(--lc,var(--mt-good)) 0%, transparent)}to{box-shadow:0 0 0 0 color-mix(in srgb, var(--lc,var(--mt-good)) 0%, transparent)}}.panel>h2,.sheet__hd h2{font-family:var(--mt-sans)}.cards{grid-template-columns:repeat(2,1fr);gap:12px;display:grid}@media (width>=560px){.cards{grid-template-columns:repeat(4,1fr)}}@media (width>=1040px){.cards{grid-template-columns:repeat(8,1fr)}}.stat{background:linear-gradient(180deg, var(--mt-surface), color-mix(in srgb, var(--mt-surface-2) 80%, transparent));border:1px solid var(--mt-border);border-radius:var(--mt-radius);transition:transform .3s var(--ease), border-color .3s var(--ease);padding:14px 15px;position:relative;overflow:hidden}.stat:before{content:"";background:var(--grad);opacity:0;height:2px;transition:opacity .3s var(--ease);position:absolute;inset:0 0 auto}.stat:hover{border-color:color-mix(in srgb, var(--page-accent) 42%, var(--mt-border));transform:translateY(-3px)}.stat:hover:before{opacity:1}.stat .k{color:var(--mt-text-dim);text-transform:uppercase;letter-spacing:.08em;margin:0 0 7px;font-size:10px}.stat .v{font-family:var(--mt-mono);letter-spacing:-.02em;font-variant-numeric:tabular-nums;font-size:23px;font-weight:500}.stat .v small{color:var(--mt-text-dim);font-size:12px;font-weight:400}.stat.is-bad .v{color:var(--mt-bad)}.stat.is-warn .v{color:var(--mt-warn)}.stat.is-good .v{color:var(--mt-good)}.panel{background:var(--mt-surface);border:1px solid var(--mt-border);border-radius:var(--mt-radius);transition:border-color .25s var(--ease);padding:18px;position:relative;box-shadow:0 1px 2px #0000004d,inset 0 1px #ffffff08}.panel:hover{border-color:color-mix(in srgb, var(--mt-text) 13%, var(--mt-border))}.panel>h2{color:var(--mt-text-dim);text-transform:uppercase;letter-spacing:.07em;align-items:center;gap:9px;margin:0 0 14px;font-size:12px;font-weight:600;display:inline-flex}.panel>h2:before,.sheet__hd h2:first-child:before{content:"";background:var(--grad);border-radius:2px;flex:none;width:3px;height:13px}.cols{grid-template-columns:1.4fr 1fr;gap:18px;display:grid}@media (width<=820px){.cols{grid-template-columns:1fr}}.cols-3{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:18px;display:grid}.cols-3 .panel{flex-direction:column;display:flex}.hbar{gap:9px;display:grid}.hbar__row{grid-template-columns:minmax(90px,.9fr) 2fr auto;align-items:center;gap:10px;font-size:12px;display:grid}.hbar__label{font-family:var(--mt-mono);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.hbar__track{background:color-mix(in srgb, var(--mt-surface-2) 90%, transparent);border-radius:999px;height:8px;overflow:hidden}.hbar__fill{background:var(--grad);height:100%;box-shadow:0 0 10px color-mix(in srgb, var(--teal) 45%, transparent);border-radius:999px}.hbar__val{font-family:var(--mt-mono);color:var(--mt-text-dim);text-align:right;font-variant-numeric:tabular-nums;font-size:11px}.legend{font-family:var(--mt-mono);color:var(--mt-text-dim);flex-wrap:wrap;gap:12px;margin-top:12px;font-size:11px;display:flex}.legend span{align-items:center;gap:5px;display:inline-flex}.legend i{border-radius:2px;width:9px;height:9px;display:inline-block}.risk{font-family:var(--mt-mono);color:var(--rc,var(--mt-text-dim));border:1px solid color-mix(in srgb, var(--rc,var(--mt-border)) 45%, var(--mt-border));background:color-mix(in srgb, var(--rc,transparent) 12%, transparent);text-transform:uppercase;letter-spacing:.04em;border-radius:999px;padding:1px 8px;font-size:10px;display:inline-block}.risk-READ{--rc:#34d399}.risk-WRITE{--rc:#3291ff}.risk-WRITE_IDEMPOTENT{--rc:#2dd4bf}.risk-DESTRUCTIVE{--rc:#f59e0b}.risk-DANGEROUS{--rc:#ef4444}.feed{border-collapse:collapse;width:100%;font-size:12px}.feed th,.feed td{text-align:left;border-bottom:1px solid color-mix(in srgb, var(--mt-border) 55%, transparent);white-space:nowrap;font-family:var(--mt-mono);padding:7px 11px}.feed thead th{background:color-mix(in srgb, var(--mt-surface-2) 96%, transparent);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);color:var(--mt-text-dim);text-transform:uppercase;letter-spacing:.05em;z-index:1;font-size:10px;font-weight:600;position:sticky;top:0}.feed tbody tr{cursor:pointer;transition:background .12s}.feed tbody tr:hover{background:color-mix(in srgb, var(--mt-accent) 9%, transparent)}.feed tbody tr.is-err{background:color-mix(in srgb, var(--mt-bad) 9%, transparent)}.feed tbody tr.is-selected{background:color-mix(in srgb, var(--mt-accent) 16%, transparent)}.feed td.preview{white-space:nowrap;text-overflow:ellipsis;max-width:320px;color:var(--mt-text-dim);overflow:hidden}.feed td.num{text-align:right;color:var(--mt-text-dim);font-variant-numeric:tabular-nums}.status-ok{color:var(--mt-good)}.status-err{color:var(--mt-bad)}.reason-preview{color:color-mix(in srgb, var(--mt-warn,#f59e0b) 85%, var(--mt-text));font-style:italic}.reason-preview:before{content:"⚑ ";font-style:normal}.kv__k--reason{color:var(--mt-warn,#f59e0b)}.kv__v--reason{color:var(--mt-text);font-style:italic}.feedwrap{border:1px solid var(--mt-border);border-radius:var(--mt-radius);max-height:60vh;overflow:auto}.feed-empty{border:1px dashed var(--mt-border);border-radius:var(--mt-radius);text-align:center;justify-items:center;gap:8px;padding:54px 16px;display:grid}.feed-empty__icon{opacity:.8;font-size:28px}.feed-empty__title{color:var(--mt-text);margin:0;font-weight:600}.feed-empty__sub{max-width:460px;color:var(--mt-text-faint);margin:0;font-size:12px}.feed-empty .btn{margin-top:6px}.feed-empty__pulse{background:var(--mt-text-faint);border-radius:50%;width:12px;height:12px}.feed-empty__pulse.is-on{background:var(--mt-good);animation:1.6s ease-out infinite feed-pulse}@keyframes feed-pulse{0%{box-shadow:0 0 0 0 color-mix(in srgb, var(--mt-good) 55%, transparent)}70%{box-shadow:0 0 0 12px color-mix(in srgb, var(--mt-good) 0%, transparent)}to{box-shadow:0 0 0 0 color-mix(in srgb, var(--mt-good) 0%, transparent)}}.conn{display:block;overflow:visible}.conn-grid{fill:none;stroke:var(--mt-border);stroke-opacity:.7;stroke-dasharray:2 7}.conn-sonar{fill:none;stroke:var(--mt-accent);stroke-width:1.5px;opacity:0;animation:3.3s ease-out infinite conn-sonar}@keyframes conn-sonar{0%{r:30px;opacity:.5}to{r:150px;opacity:0}}.conn-link{fill:none;stroke-width:1.6px;opacity:.38}.conn-flow{fill:none;stroke-width:2.4px;stroke-linecap:round;stroke-dasharray:2 13;opacity:.9;filter:drop-shadow(0 0 4px);animation:1.05s linear infinite conn-flow}@keyframes conn-flow{to{stroke-dashoffset:-60px}}.conn-packet{filter:drop-shadow(0 0 6px var(--teal))}.conn-hub-glow{fill:var(--mt-accent);opacity:.22;filter:blur(11px)}.conn-hub-ring{fill:none;stroke:var(--mt-accent);stroke-width:1.4px;stroke-dasharray:4 9;opacity:.7;transform-box:fill-box;transform-origin:50%;animation:15s linear infinite conn-rot}@keyframes conn-rot{to{transform:rotate(360deg)}}.conn-node-halo{fill:none;stroke-width:2px;transform-box:fill-box;transform-origin:50%;animation:2.4s ease-in-out infinite conn-halo}@keyframes conn-halo{0%,to{opacity:.45;transform:scale(1)}50%{opacity:0;transform:scale(1.55)}}.conn-blink{animation:1.6s ease-in-out infinite conn-blink}@keyframes conn-blink{0%,to{opacity:1}50%{opacity:.35}}.conn-node text{pointer-events:none}@media (prefers-reduced-motion:reduce){.conn-sonar,.conn-flow,.conn-hub-ring,.conn-node-halo,.conn-blink,.conn-packet animateMotion{animation:none}.conn-sonar{display:none}}.dev-grid{grid-template-columns:1fr;align-content:start;gap:12px;display:grid}@media (width>=600px) and (width<=819px){.dev-grid{grid-template-columns:1fr 1fr}}.dev-toolbar{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.dev-filters{border:1px solid var(--mt-border);background:color-mix(in srgb, var(--mt-surface-2) 70%, transparent);border-radius:999px;gap:4px;padding:3px;display:inline-flex}.dev-fbtn{appearance:none;color:var(--mt-text-dim);font:11px var(--mt-mono);cursor:pointer;white-space:nowrap;background:0 0;border:0;border-radius:999px;padding:5px 12px;transition:background .18s,color .18s}.dev-fbtn:hover{color:var(--mt-text)}.dev-fbtn.is-active{background:var(--grad);color:var(--mt-bg);font-weight:600}.dev-grid-wide{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));align-content:start;gap:14px;display:grid}.dev-collapse{border:1px solid var(--mt-border);border-radius:var(--mt-radius);background:var(--glass);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);padding:6px 18px 18px}.dev-collapse>summary{cursor:pointer;text-transform:uppercase;letter-spacing:.07em;color:var(--mt-text-dim);align-items:center;gap:8px;padding:12px 0;font-size:12px;font-weight:600;list-style:none;display:flex}.dev-collapse>summary::-webkit-details-marker{display:none}.dev-collapse>summary:before{content:"▸";transition:transform .2s var(--ease);color:var(--teal);display:inline-block}.dev-collapse[open]>summary:before{transform:rotate(90deg)}.dev-card .dot--status{width:7px;height:7px}.dev-card{transition:transform .3s var(--ease), border-color .3s var(--ease);gap:8px;padding:14px 15px;display:grid}.dev-card:hover{border-color:color-mix(in srgb, var(--teal) 35%, var(--mt-border));transform:translateY(-2px)}.dev-card__top{align-items:center;gap:8px;display:flex}.dev-card__name{font-family:var(--mt-mono);font-size:13px;font-weight:500}.dev-card .dot{border-radius:50%;flex:none;width:9px;height:9px}.dev-card__meta{font-family:var(--mt-mono);color:var(--mt-text-dim);grid-template-columns:auto 1fr;gap:3px 12px;font-size:11px;display:grid}.dev-card__meta b{color:var(--mt-text);overflow-wrap:anywhere;font-weight:500}.dev-card[data-disabled]{opacity:.5;filter:grayscale(.4)}.dev-toggle{cursor:pointer;flex:none;width:32px;height:18px;display:inline-block;position:relative}.dev-toggle input{opacity:0;width:0;height:0;position:absolute}.dev-toggle__slider{background:#3f3f46;border-radius:9px;transition:background .2s;position:absolute;inset:0}.dev-toggle__slider:before{content:"";background:#a1a1aa;border-radius:50%;width:14px;height:14px;transition:transform .2s,background .2s;position:absolute;top:2px;left:2px}.dev-toggle input:checked+.dev-toggle__slider{background:#0d9488}.dev-toggle input:checked+.dev-toggle__slider:before{background:#f0fdfa;transform:translate(14px)}details.cfg>summary{cursor:pointer;color:var(--mt-text-dim);font-family:var(--mt-mono);-webkit-user-select:none;user-select:none;padding:4px 0;font-size:12px}.badge{font-family:var(--mt-mono);text-transform:uppercase;letter-spacing:.06em;color:var(--mt-bg);background:var(--grad);border-radius:999px;padding:1px 7px;font-size:9px;font-weight:600}.overlay{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);z-index:10;background:#0000009e;justify-content:flex-end;display:flex;position:fixed;inset:0}.sheet{background:color-mix(in srgb, var(--mt-surface) 96%, var(--mt-bg));border-left:1px solid color-mix(in srgb, var(--teal) 28%, var(--mt-border));align-content:start;gap:12px;width:min(580px,100%);height:100%;padding:18px;display:grid;overflow:auto;box-shadow:-24px 0 60px #00000080}.sheet__hd{align-items:center;gap:10px;display:flex}.sheet__hd h3{font-family:var(--mt-mono);margin:0;font-size:15px}pre.body{background:var(--mt-bg);border:1px solid var(--mt-border);border-radius:var(--mt-radius-sm);font-family:var(--mt-mono);white-space:pre-wrap;word-break:break-word;max-height:40vh;margin:0;padding:12px;font-size:12px;overflow:auto}pre.body.json{color:#a1a1aa}pre.body.json .j-key{color:#7dd3fc}pre.body.json .j-str{color:#86efac}pre.body.json .j-num{color:#fcd34d}pre.body.json .j-bool{color:#d8b4fe}pre.body.json .j-null{color:#71717a}pre.body.ros{color:#c9c9d1}pre.body.ros .ros-key{color:#7dd3fc}pre.body.ros .ros-str{color:#86efac}pre.body.ros .ros-num{color:#fcd34d}pre.body.ros .ros-ip{color:#5eead4}pre.body.ros .ros-mac{color:#c4b5fd}pre.body.ros .ros-good{color:#4ade80;font-weight:500}pre.body.ros .ros-bad{color:#f87171;font-weight:500}pre.body.ros .ros-bool{color:#d8b4fe}pre.body.ros .ros-dim{color:#8b8b94}pre.body.ros .ros-comment{color:#6b7280;font-style:italic}.muted{color:var(--mt-text-faint);font-family:var(--mt-mono);font-size:11px}.btn-danger{color:var(--mt-bad);border-color:color-mix(in srgb, var(--mt-bad) 45%, var(--mt-border));background:color-mix(in srgb, var(--mt-bad) 12%, transparent)}.btn-danger:hover{background:color-mix(in srgb, var(--mt-bad) 22%, transparent);border-color:var(--mt-bad)}.btn:hover{border-color:color-mix(in srgb, var(--page-accent) 55%, var(--mt-border));background:color-mix(in srgb, var(--page-accent) 10%, var(--mt-surface-2))}.btn.is-active{border-color:color-mix(in srgb, var(--page-accent) 70%, var(--mt-border));color:var(--page-accent);background:color-mix(in srgb, var(--page-accent) 12%, var(--mt-surface-2))}:where(button,a,input,select,textarea,[tabindex]):focus-visible{outline:2px solid color-mix(in srgb, var(--page-accent) 70%, transparent);outline-offset:2px;border-radius:var(--mt-radius-sm)}.conn-legend{font-family:var(--mt-mono);color:var(--mt-text-dim);flex-wrap:wrap;justify-content:center;gap:16px;margin-top:8px;font-size:11px;display:flex}.conn-legend span{align-items:center;gap:6px;display:inline-flex}.conn-legend i{border-radius:3px;width:10px;height:10px;display:inline-block}.conn-chevron{fill:none;stroke-width:1.6px;stroke-linecap:round;stroke-linejoin:round;opacity:.85}.conn-errrow{cursor:pointer;border-radius:6px}.conn-errrow:hover{background:color-mix(in srgb, var(--mt-bad) 12%, transparent)}@media (prefers-reduced-motion:reduce){.conn-chevron{opacity:.6}}.health-grid{grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:14px;display:grid}.health-card{flex-direction:column;gap:10px;padding:16px;display:flex}.health-card--na{justify-content:center;gap:6px;min-height:120px}.health-card__hd{align-items:center;gap:8px;display:flex}.health-card__sub{font-family:var(--mt-mono);margin-top:-4px;font-size:11px}.health-card__gauges{justify-content:space-around;gap:14px;display:flex}.gauge{flex-direction:column;align-items:center;gap:2px;display:flex}.gauge__label{font-family:var(--mt-mono);letter-spacing:.06em;color:var(--mt-text-dim);font-size:10px}.health-card__charts{gap:8px;display:grid}.health-chart{gap:2px;display:grid}.health-chart__k{font-family:var(--mt-mono);text-transform:uppercase;letter-spacing:.05em;color:var(--mt-text-dim);font-size:10px}.spark{background:color-mix(in srgb, var(--mt-surface-2) 60%, transparent);border-radius:6px;display:block}.spark--empty{font-family:var(--mt-mono);color:var(--mt-text-faint);text-align:center;padding:12px 6px;font-size:11px}.health-card__foot{font-family:var(--mt-mono);font-size:11px}.topo{flex-direction:column;gap:10px;display:flex}.topo svg{background:radial-gradient(circle at 50% 45%, color-mix(in srgb, var(--mt-accent) 8%, transparent), transparent 60%);border-radius:var(--mt-radius-sm);width:100%;display:block}.topo-edge{stroke:color-mix(in srgb, var(--mt-text-faint) 55%, transparent);stroke-width:1.4px}.topo-edge.is-dashed{stroke:color-mix(in srgb, var(--mt-accent) 60%, transparent);stroke-dasharray:4 4}.topo-node{cursor:pointer}.topo-node rect{fill:var(--mt-surface-2);stroke-width:1.5px;transition:filter .15s}.topo-node.is-neighbor rect{fill:color-mix(in srgb, var(--mt-surface) 70%, transparent);stroke-dasharray:4 3}.topo-node.is-onboard rect{stroke-dasharray:4 3}.topo-node:hover rect,.topo-node.is-picked rect{filter:drop-shadow(0 0 6px color-mix(in srgb, var(--mt-accent) 55%, transparent))}.topo-node.is-picked rect{stroke-width:2.2px}.topo-label{fill:var(--mt-text);font:600 12px var(--mt-mono)}.topo-sub{fill:var(--mt-text-dim);font:10px var(--mt-mono)}.topo-bar-bg{fill:color-mix(in srgb, var(--mt-text-faint) 35%, transparent)}.topo-foot{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.topo-foot .legend{margin-top:0}.topo-pop{background:var(--mt-surface);border:1px solid var(--mt-border);border-radius:var(--mt-radius-sm);flex:1;min-width:280px;max-width:460px;padding:12px}.topo-pop__hd{align-items:center;gap:8px;margin-bottom:6px;display:flex}.topo-pop__hd .muted{font-size:11px}.topo-stub{background:var(--mt-bg);border:1px solid var(--mt-border);border-radius:var(--mt-radius-sm);font:11px/1.5 var(--mt-mono);color:var(--mt-text);white-space:pre;margin:0 0 8px;padding:8px 10px;overflow-x:auto}.topo-btn{font:11px var(--mt-mono);color:var(--mt-text);background:var(--mt-surface-2);border:1px solid var(--mt-border);border-radius:var(--mt-radius-sm);cursor:pointer;padding:5px 10px;transition:border-color .15s,color .15s}.topo-btn:hover{border-color:var(--mt-accent);color:var(--mt-accent)}.cfgstudio{flex-direction:column;gap:10px;display:flex}.cfg-toolbar{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.cfg-status{font:11px var(--mt-mono);border:1px solid var(--mt-border);border-radius:999px;padding:4px 10px}.cfg-status.is-ok{color:var(--mt-good);border-color:color-mix(in srgb, var(--mt-good) 45%, var(--mt-border));background:color-mix(in srgb, var(--mt-good) 10%, transparent)}.cfg-status.is-bad{color:var(--mt-bad);border-color:color-mix(in srgb, var(--mt-bad) 45%, var(--mt-border));background:color-mix(in srgb, var(--mt-bad) 10%, transparent)}.cfg-select{font:11px var(--mt-mono);color:var(--mt-text);background:var(--mt-surface-2);border:1px solid var(--mt-border);border-radius:var(--mt-radius-sm);padding:5px 9px}.cfg-save{border-color:color-mix(in srgb, var(--mt-accent) 55%, var(--mt-border));color:var(--mt-accent)}.backup-path{align-items:center;gap:8px;max-width:min(60vw,520px);display:inline-flex}.backup-path>span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.backup-path-input{font:11px var(--mt-mono);color:var(--mt-text);background:var(--mt-surface-2);border:1px solid color-mix(in srgb, var(--mt-accent) 45%, var(--mt-border));border-radius:var(--mt-radius-sm);width:min(48vw,380px);padding:5px 9px}.backup-opts{flex-wrap:wrap;align-items:center}.backup-opt{font:11px var(--mt-mono);color:var(--mt-text-dim);background:var(--mt-surface-2);border:1px solid var(--mt-border);cursor:pointer;-webkit-user-select:none;user-select:none;border-radius:100px;align-items:center;gap:6px;padding:5px 11px 5px 9px;transition:border-color .18s,color .18s,background .18s;display:inline-flex}.backup-opt input{accent-color:var(--mt-accent);cursor:pointer;margin:0}.backup-opt[data-on]{color:var(--mt-text);border-color:color-mix(in srgb, var(--mt-accent) 55%, var(--mt-border));background:color-mix(in srgb, var(--mt-accent) 12%, var(--mt-surface-2))}.backup-opt[data-disabled]{opacity:.45;cursor:not-allowed}.backup-opt[data-disabled] input{cursor:not-allowed}.linkish{font:inherit;color:var(--mt-accent);cursor:pointer;white-space:nowrap;background:0 0;border:none;padding:0}.linkish:hover{text-decoration:underline}.cfg-msg{font:12px var(--mt-mono);color:var(--mt-text-dim)}.cfg-banner{border-radius:var(--mt-radius-sm);background:color-mix(in srgb, var(--mt-warn) 12%, var(--mt-surface));border:1px solid color-mix(in srgb, var(--mt-warn) 45%, var(--mt-border));flex-wrap:wrap;align-items:center;gap:8px;padding:10px 13px;font-size:12px;display:flex}.cfg-count{font-family:var(--mt-mono);color:var(--mt-warn);font-weight:700}.cfg-warn{color:var(--mt-warn);font-size:11px}.cfg-editor{border:1px solid var(--mt-border);border-radius:var(--mt-radius-sm);background:var(--mt-bg);max-height:420px;display:flex;overflow:hidden}.cfg-gutter{text-align:right;color:var(--mt-text-faint);background:var(--mt-surface-2);font:12px/1.5 var(--mt-mono);-webkit-user-select:none;user-select:none;min-width:38px;margin:0;padding:10px 8px;overflow:hidden}.cfg-ta-wrap{flex:1;position:relative}.cfg-hl,.cfg-ta{box-sizing:border-box;font:12px/1.5 var(--mt-mono);white-space:pre;tab-size:2;letter-spacing:normal;border:0;margin:0;padding:10px 12px}.cfg-hl{z-index:0;pointer-events:none;color:var(--mt-text-dim);position:absolute;inset:0;overflow:hidden}.cfg-ta{z-index:1;resize:vertical;color:#0000;width:100%;height:400px;caret-color:var(--mt-accent);background:0 0;outline:none;position:relative}.cfg-ta::selection{background:color-mix(in srgb, var(--mt-accent) 35%, transparent)}.cfg-hl .j-key{color:#7dd3fc}.cfg-hl .j-str{color:#86efac}.cfg-hl .j-num{color:#fcd34d}.cfg-hl .j-bool{color:#d8b4fe}.cfg-hl .j-null{color:#71717a}.cfg-ac{z-index:5;background:var(--mt-surface);border:1px solid var(--mt-accent);border-radius:var(--mt-radius-sm);min-width:150px;max-height:184px;position:absolute;overflow-y:auto;box-shadow:0 8px 24px #00000080}.cfg-ac-item{font:12px var(--mt-mono);color:var(--mt-text-dim);cursor:pointer;padding:5px 11px}.cfg-ac-item.is-sel{background:color-mix(in srgb, var(--mt-accent) 22%, transparent);color:var(--mt-text)}.cfg-chips{flex-wrap:wrap;gap:6px;display:flex}.cfg-chip{font:11px var(--mt-mono);border:1px solid var(--mt-border);border-radius:999px;padding:4px 10px}.cfg-chip.is-ok{color:var(--mt-good);border-color:color-mix(in srgb, var(--mt-good) 45%, var(--mt-border))}.cfg-chip.is-bad{color:var(--mt-bad);border-color:color-mix(in srgb, var(--mt-bad) 45%, var(--mt-border))}.cfg-errors{flex-direction:column;gap:3px;display:flex}.cfg-err{font:11px var(--mt-mono);color:var(--mt-bad)}.cfg-err code{color:var(--mt-warn)}.cfg-preview{border:1px solid var(--mt-border);border-radius:var(--mt-radius-sm);overflow:hidden}.cfg-preview__hd{background:var(--mt-surface-2);align-items:center;gap:8px;padding:9px 13px;font-size:12px;display:flex}.cfg-diff{max-height:320px;font:11px/1.5 var(--mt-mono);color:var(--mt-text-dim);background:var(--mt-bg);margin:0;padding:10px 12px;overflow:auto}.cfg-diff .d-add{color:var(--mt-good)}.cfg-diff .d-del{color:var(--mt-bad)}.cfg-diff .d-hunk{color:var(--mt-accent)}.cap-idle{font-size:13px;line-height:1.5}.cap-idle code{color:var(--mt-accent);font-family:var(--mt-mono)}.cap{flex-direction:column;gap:12px;display:flex}.cap-bar{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.cap-dot{background:var(--mt-text-faint);border-radius:999px;width:9px;height:9px}.cap-dot.is-on{background:var(--mt-good);box-shadow:0 0 0 4px color-mix(in srgb, var(--mt-good) 22%, transparent);animation:1.6s ease-out infinite feed-pulse}.cap-cols{grid-template-columns:220px 1fr;gap:12px;display:grid}@media (width<=720px){.cap-cols{grid-template-columns:1fr}}.cap-side{flex-direction:column;gap:5px;display:flex}.cap-h{text-transform:uppercase;letter-spacing:.05em;color:var(--mt-text-dim);font-size:11px}.cap-pbar{font:11px var(--mt-mono);grid-template-columns:52px 1fr 34px;align-items:center;gap:6px;display:grid}.cap-ptrack{background:var(--mt-surface-2);border-radius:999px;height:8px;overflow:hidden}.cap-ptrack i{border-radius:999px;height:100%;display:block}.cap-pn{text-align:right;color:var(--mt-text-dim)}.cap-talker{font:11px var(--mt-mono);color:var(--mt-text-dim);justify-content:space-between;display:flex}.cap-talker b{color:var(--mt-text)}.cap-list{border:1px solid var(--mt-border);border-radius:var(--mt-radius-sm);background:var(--mt-bg);height:360px;font:11px/1.6 var(--mt-mono);overflow-y:auto}.cap-row{white-space:nowrap;grid-template-columns:90px 64px 48px 1fr;gap:8px;padding:1px 10px;display:grid;overflow:hidden}.cap-row:nth-child(odd){background:color-mix(in srgb, var(--mt-surface) 40%, transparent)}.cap-tt{color:var(--mt-text-faint)}.cap-proto{font-weight:600}.cap-len{color:var(--mt-text-dim);text-align:right}.cap-info{color:var(--mt-text);text-overflow:ellipsis;overflow:hidden}.plan-input{resize:vertical;box-sizing:border-box;border:1px solid var(--mt-border);border-radius:var(--mt-radius-sm);background:var(--mt-bg);width:100%;min-height:160px;color:var(--mt-text);font:12px/1.6 var(--mt-mono);outline:none;padding:12px 14px}.plan-input:focus{border-color:color-mix(in srgb, var(--teal) 55%, var(--mt-border))}.plan-input::placeholder{color:var(--mt-text-faint)}.plan-steps{flex-direction:column;gap:6px;margin-top:12px;display:flex}.plan-step{border:1px solid var(--mt-border);border-radius:var(--mt-radius-sm);background:color-mix(in srgb, var(--mt-surface-2) 50%, transparent);font:12px var(--mt-mono);border-left-width:3px;align-items:center;gap:10px;padding:8px 12px;display:flex}.plan-step code{color:var(--mt-text);overflow-wrap:anywhere;flex:1}.plan-step.risk-high{border-left-color:var(--mt-bad)}.plan-step.risk-medium{border-left-color:var(--mt-warn)}.plan-step.risk-low{border-left-color:var(--mt-good)}.plan-op{background:color-mix(in srgb, var(--teal) 18%, transparent);width:18px;height:18px;color:var(--teal);border-radius:5px;flex:none;place-items:center;font-weight:700;display:grid}.plan-risk{text-transform:uppercase;letter-spacing:.05em;color:var(--mt-text-dim);font-size:10px}.plan-lock{color:var(--mt-bad);border:1px solid color-mix(in srgb, var(--mt-bad) 45%, var(--mt-border));border-radius:999px;padding:1px 7px;font-size:10px}.cfgver-cp{align-items:center;gap:8px;display:inline-flex}.cfgver{gap:2px;margin:0;padding:0 0 0 4px;list-style:none;display:grid}.cfgver__row{border-radius:var(--mt-radius-sm);transition:background .18s var(--ease);grid-template-columns:18px minmax(0,1fr) auto;align-items:start;gap:10px;padding:11px 6px;display:grid;position:relative}.cfgver__row:hover{background:color-mix(in srgb, var(--mt-text) 4%, transparent)}.cfgver__row:before{content:"";background:var(--mt-border);width:1.5px;position:absolute;top:22px;bottom:-2px;left:12px}.cfgver__row:last-child:before{display:none}.cfgver__dot{border:2px solid var(--mt-border-strong);background:var(--mt-surface);z-index:1;border-radius:999px;width:11px;height:11px;margin-top:5px}.cfgver__row.is-head .cfgver__dot{border-color:var(--page-accent);background:var(--page-accent);box-shadow:0 0 0 4px color-mix(in srgb, var(--page-accent) 22%, transparent)}.cfgver__main{min-width:0}.cfgver__line{flex-wrap:wrap;align-items:center;gap:9px;font-size:12.5px;display:flex}.cfgver__kind{font-family:var(--mt-mono);text-transform:uppercase;letter-spacing:.05em;border:1px solid var(--mt-border);color:var(--mt-text-dim);border-radius:999px;padding:2px 7px;font-size:10px}.cfgver__kind--checkpoint{color:var(--amber);border-color:color-mix(in srgb, var(--amber) 45%, var(--mt-border));background:color-mix(in srgb, var(--amber) 12%, transparent)}.cfgver__label{color:var(--mt-text);font-weight:600}.cfgver__time{font-family:var(--mt-mono);color:var(--mt-text-dim);font-size:11.5px}.cfgver__cur{font-family:var(--mt-mono);text-transform:uppercase;letter-spacing:.05em;color:var(--page-accent);font-size:10px}.cfgver__same{color:var(--mt-text-faint);font-size:11.5px}.cfgver__drift{font-family:var(--mt-mono);align-items:baseline;gap:7px;font-size:11.5px;display:inline-flex}.cfgver__drift .add{color:var(--mt-good)}.cfgver__drift .rem{color:var(--mt-bad)}.cfgver__diff{margin-top:9px}.cfgver__diff pre.body{max-height:280px;margin:0;overflow:auto}.cfgver__actions{flex:none;align-items:center;gap:6px;display:inline-flex}.cfgver__del{color:var(--mt-text-faint);padding-left:8px;padding-right:8px}.cfgver__del:hover{color:var(--mt-bad);border-color:color-mix(in srgb, var(--mt-bad) 45%, var(--mt-border))}.fguide{gap:18px;display:grid}.fguide__sechd{font-family:var(--mt-mono);text-transform:uppercase;letter-spacing:.09em;color:var(--page-accent);margin:0 0 9px;font-size:11px}.fguide__list{gap:9px;display:grid}.fguide__item{border:1px solid var(--mt-border);border-radius:var(--mt-radius-sm);background:color-mix(in srgb, var(--mt-surface-2) 45%, transparent);transition:border-color .18s, transform .12s var(--ease);padding:11px 13px}.fguide__item:hover{border-color:color-mix(in srgb, var(--page-accent) 40%, var(--mt-border));transform:translate(2px)}.fguide__top{flex-wrap:wrap;align-items:baseline;gap:10px;display:flex}.fguide__path{font-family:var(--mt-mono);color:var(--mt-text);font-size:12.5px;font-weight:500}.fguide__type{font-family:var(--mt-mono);color:var(--page-accent);background:color-mix(in srgb, var(--page-accent) 13%, transparent);border-radius:999px;padding:1px 7px;font-size:10.5px}.fguide__req{font-family:var(--mt-mono);text-transform:uppercase;letter-spacing:.05em;color:var(--mt-bad);font-size:10px}.fguide__def{color:var(--mt-text-faint);font-size:11px}.fguide__def code{color:var(--mt-text-dim)}.fguide__desc{color:var(--mt-text-dim);margin:6px 0 0;font-size:12.5px;line-height:1.5}.fguide__enum{flex-wrap:wrap;gap:6px;margin-top:7px;display:flex}.fguide__enum code{font-family:var(--mt-mono);border:1px solid var(--mt-border);color:var(--mt-text-dim);border-radius:6px;padding:1px 7px;font-size:11px}.copybtn{position:relative}.copybtn.is-copied{color:var(--page-accent);border-color:color-mix(in srgb, var(--page-accent) 55%, var(--mt-border))}.copybtn__tip{background:var(--page-accent);color:#0a0a0a;font-family:var(--mt-sans);white-space:nowrap;opacity:0;pointer-events:none;transition:opacity .16s, transform .16s var(--ease);z-index:50;border-radius:6px;padding:3px 9px;font-size:11px;font-weight:600;position:absolute;bottom:calc(100% + 8px);left:50%;transform:translate(-50%,4px)}.copybtn__tip:after{content:"";border:4px solid #0000;border-top-color:var(--page-accent);position:absolute;top:100%;left:50%;transform:translate(-50%)}.copybtn.is-copied .copybtn__tip{opacity:1;transform:translate(-50%)}.iconbtn{border:1px solid var(--mt-border);background:var(--mt-surface);width:26px;height:26px;color:var(--mt-text-dim);cursor:pointer;border-radius:7px;place-items:center;padding:0;transition:color .16s,border-color .16s,background .16s;display:inline-grid}.iconbtn:hover{color:var(--page-accent);border-color:color-mix(in srgb, var(--page-accent) 50%, var(--mt-border));background:color-mix(in srgb, var(--page-accent) 10%, var(--mt-surface))}.copybtn--icon.is-copied{color:var(--page-accent);border-color:color-mix(in srgb, var(--page-accent) 55%, var(--mt-border))}.sheet__tool{align-items:center;gap:9px;display:inline-flex}.chart{width:100%;font-family:var(--mt-mono)}.chart .recharts-cartesian-grid line{stroke:color-mix(in srgb, var(--mt-border) 80%, transparent)}.chart .recharts-text,.chart text{fill:var(--mt-text-faint)}.chart .recharts-surface:focus,.chart svg:focus{outline:none}.chart-tip{background:color-mix(in srgb, var(--mt-surface) 96%, transparent);border:1px solid var(--mt-border-strong);border-radius:var(--mt-radius-sm);font-family:var(--mt-mono);min-width:120px;padding:8px 10px;font-size:11.5px;box-shadow:0 8px 24px #00000073}.chart-tip__label{color:var(--mt-text-dim);margin-bottom:5px;font-size:10.5px}.chart-tip__row{align-items:center;gap:7px;display:flex}.chart-tip__dot{border-radius:3px;flex:none;width:9px;height:9px}.chart-tip__name{color:var(--mt-text-dim);text-transform:capitalize}.chart-tip__val{color:var(--mt-text);font-variant-numeric:tabular-nums;margin-left:auto;font-weight:500}.chart--donut{flex-direction:column;flex:1;justify-content:center;align-items:center;gap:12px;display:flex}.chart-donut__svg{width:100%;max-width:200px}.chart-legend{font-family:var(--mt-mono);color:var(--mt-text-dim);flex-wrap:wrap;justify-content:center;gap:6px 14px;font-size:11px;display:flex}.chart-legend span{align-items:center;gap:6px;display:inline-flex}.chart-legend i{border-radius:3px;width:9px;height:9px}.chart-legend b{color:var(--mt-text);font-weight:500}.chart--spark{position:relative}.chart-spark__last{font-family:var(--mt-mono);z-index:1;font-size:10px;font-weight:600;position:absolute;top:0;right:2px}.gauge__radial{place-items:center;width:72px;height:72px;display:grid;position:relative}.gauge__pct{font-family:var(--mt-mono);pointer-events:none;place-items:center;font-size:13px;font-weight:700;display:grid;position:absolute;inset:0}.geist-btn{font-family:var(--mt-sans);border-radius:var(--mt-radius-sm);border:1px solid var(--mt-border-strong);background:var(--mt-surface);color:var(--mt-text);cursor:pointer;white-space:nowrap;transition:background .16s var(--ease), border-color .16s, color .16s, transform .1s var(--ease), box-shadow .16s;justify-content:center;align-items:center;gap:7px;font-size:13px;font-weight:500;line-height:1;display:inline-flex}.geist-btn--sm{padding:6px 11px;font-size:12px}.geist-btn--md{padding:9px 15px}.geist-btn:hover{border-color:var(--mt-text);transform:translateY(-1px)}.geist-btn:active{transform:translateY(0)}.geist-btn:disabled{opacity:.5;cursor:not-allowed;transform:none}.geist-btn__icon{display:inline-flex}.geist-btn--accent{background:var(--page-accent);border-color:var(--page-accent);color:#0a0a0a;font-weight:600}.geist-btn--accent:hover{box-shadow:0 4px 16px color-mix(in srgb, var(--page-accent) 40%, transparent);border-color:var(--page-accent)}.geist-btn--success{border-color:color-mix(in srgb, var(--mt-good) 55%, var(--mt-border));color:var(--mt-good)}.geist-btn--warning{border-color:color-mix(in srgb, var(--mt-warn) 55%, var(--mt-border));color:var(--mt-warn)}.geist-btn--error{border-color:color-mix(in srgb, var(--mt-bad) 55%, var(--mt-border));color:var(--mt-bad)}.geist-btn--error:hover{background:color-mix(in srgb, var(--mt-bad) 14%, var(--mt-surface));border-color:var(--mt-bad)}.geist-btn--secondary{color:var(--mt-text-dim);border-color:var(--mt-border)}.geist-btn--ghost{background:0 0;border-color:#0000}.geist-btn--ghost:hover{background:color-mix(in srgb, var(--mt-text) 7%, transparent);border-color:var(--mt-border)}.geist-note{border-radius:var(--mt-radius-sm);border:1px solid var(--mt-border);background:var(--mt-surface);color:var(--mt-text-dim);padding:11px 14px;font-size:13px;line-height:1.55}.geist-note__label{color:var(--mt-text);text-transform:capitalize}.geist-note--secondary{border-color:color-mix(in srgb, var(--page-accent) 30%, var(--mt-border));background:color-mix(in srgb, var(--page-accent) 7%, var(--mt-surface))}.geist-note--success{border-color:color-mix(in srgb, var(--mt-good) 40%, var(--mt-border));background:color-mix(in srgb, var(--mt-good) 8%, var(--mt-surface))}.geist-note--success .geist-note__label{color:var(--mt-good)}.geist-note--warning{border-color:color-mix(in srgb, var(--mt-warn) 40%, var(--mt-border));background:color-mix(in srgb, var(--mt-warn) 8%, var(--mt-surface))}.geist-note--warning .geist-note__label{color:var(--mt-warn)}.geist-note--error{border-color:color-mix(in srgb, var(--mt-bad) 40%, var(--mt-border));background:color-mix(in srgb, var(--mt-bad) 8%, var(--mt-surface))}.geist-note--error .geist-note__label{color:var(--mt-bad)}.geist-badge{font-family:var(--mt-mono);border:1px solid var(--mt-border);background:var(--mt-surface-2);color:var(--mt-text-dim);border-radius:999px;align-items:center;gap:5px;padding:2px 8px;font-size:10.5px;font-weight:500;display:inline-flex}.geist-badge--accent{color:var(--page-accent);border-color:color-mix(in srgb, var(--page-accent) 40%, var(--mt-border));background:color-mix(in srgb, var(--page-accent) 12%, transparent)}.geist-badge--success{color:var(--mt-good);border-color:color-mix(in srgb, var(--mt-good) 40%, var(--mt-border));background:color-mix(in srgb, var(--mt-good) 10%, transparent)}.geist-badge--warning{color:var(--mt-warn);border-color:color-mix(in srgb, var(--mt-warn) 40%, var(--mt-border))}.geist-badge--error{color:var(--mt-bad);border-color:color-mix(in srgb, var(--mt-bad) 40%, var(--mt-border));background:color-mix(in srgb, var(--mt-bad) 10%, transparent)}.geist-dot{background:var(--mt-text-faint);border-radius:999px;flex:none;width:9px;height:9px;display:inline-block}.geist-dot--success{background:var(--mt-good)}.geist-dot--warning{background:var(--mt-warn)}.geist-dot--error{background:var(--mt-bad)}.geist-dot--accent{background:var(--page-accent)}.geist-dot.is-pulse{box-shadow:0 0 0 0 color-mix(in srgb, currentColor 60%, transparent);animation:1.8s infinite geist-pulse}@keyframes geist-pulse{0%{box-shadow:0 0 0 0 color-mix(in srgb, var(--mt-good) 55%, transparent)}70%{box-shadow:0 0 0 7px #0000}to{box-shadow:0 0 #0000}}.geist-spinner{width:16px;height:16px;display:inline-block;position:relative}.geist-spinner--sm{width:13px;height:13px}.geist-spinner span{transform-origin:50% 178%;opacity:.15;background:currentColor;border-radius:2px;width:8%;height:28%;animation:1.2s linear infinite geist-spin;position:absolute;top:0;left:46%}@keyframes geist-spin{0%{opacity:1}to{opacity:.15}}.geist-input,.geist-select{font-family:var(--mt-mono);color:var(--mt-text);background:var(--mt-surface);border:1px solid var(--mt-border);border-radius:var(--mt-radius-sm);padding:8px 11px;font-size:12.5px;transition:border-color .16s,box-shadow .16s}.geist-input:focus,.geist-select:focus{border-color:var(--page-accent);box-shadow:0 0 0 3px color-mix(in srgb, var(--page-accent) 22%, transparent);outline:none}.geist-card{border:1px solid var(--mt-border);border-radius:var(--mt-radius);background:var(--mt-surface);padding:16px}.geist-card.is-hoverable{transition:border-color .18s, transform .18s var(--ease)}.geist-card.is-hoverable:hover{border-color:color-mix(in srgb, var(--page-accent) 40%, var(--mt-border));transform:translateY(-2px)}.geist-tooltip{display:inline-flex;position:relative}.geist-tooltip__pop{border-radius:var(--mt-radius-sm);background:var(--mt-surface);border:1px solid var(--mt-border-strong);color:var(--mt-text);font-family:var(--mt-mono);white-space:nowrap;opacity:0;pointer-events:none;transition:opacity .16s, transform .16s var(--ease);z-index:60;padding:6px 10px;font-size:11.5px;position:absolute;bottom:calc(100% + 8px);left:50%;transform:translate(-50%,4px);box-shadow:0 8px 24px #00000073}.geist-tooltip:hover .geist-tooltip__pop,.geist-tooltip:focus-visible .geist-tooltip__pop{opacity:1;transform:translate(-50%)}.clients-toolbar{align-items:center;gap:8px;display:flex}.clients-toolbar .geist-input{width:200px}.clients-counts{margin-bottom:10px;font-size:12px}.clients-error{margin-bottom:10px}.clients-table{flex-direction:column;gap:2px;display:flex}.clients-row{border-radius:var(--mt-radius-sm);cursor:pointer;grid-template-columns:120px 1.3fr 150px 80px 130px minmax(150px,190px) minmax(240px,auto);align-items:center;gap:10px;padding:8px 10px;font-size:13px;display:grid}.clients-row--head{cursor:default;color:var(--mt-text-faint);text-transform:uppercase;letter-spacing:.04em;font-size:11px}.clients-row:not(.clients-row--head):hover{background:var(--mt-surface-2)}.clients-row.is-selected{background:color-mix(in srgb, var(--page-accent) 14%, var(--mt-surface-2))}.clients-row.is-blocked .clients-ip,.clients-row.is-blocked .clients-name{color:var(--mt-text-faint);text-decoration:line-through}.clients-ip,.clients-name{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.clients-mac{color:var(--mt-text-dim);font-family:ui-monospace,SF Mono,Menlo,monospace;font-size:11.5px}.clients-badges{align-items:center;gap:6px;display:flex;overflow:hidden}.clients-actions,.clients-actions-h{justify-content:flex-end;gap:6px;display:flex}.clients-detail{border-top:1px solid var(--mt-border);margin-top:14px;padding-top:14px}.clients-detail__hd{flex-wrap:wrap;align-items:baseline;gap:12px;margin-bottom:10px;display:flex}.clients-detail__title{font-size:14px;font-weight:600}.clients-rates{font-variant-numeric:tabular-nums;gap:18px;margin-bottom:8px;display:flex}.clients-rates .rate{font-weight:600}.clients-rates .rate.rx{color:var(--lime)}.clients-rates .rate.tx{color:var(--amber)}.clients-chart{background:var(--mt-surface);border:1px solid var(--mt-border);border-radius:var(--mt-radius-sm);width:100%;max-width:520px;height:150px;display:block}.clients-chart .line{fill:none;stroke-width:2px}.clients-chart .rx.line{stroke:var(--lime)}.clients-chart .tx.line{stroke:var(--amber)}.clients-chart .rx.area{fill:color-mix(in srgb, var(--lime) 18%, transparent);stroke:none}.clients-chart .tx.area{fill:color-mix(in srgb, var(--amber) 14%, transparent);stroke:none}.clients-totals{font-variant-numeric:tabular-nums;margin-top:8px;font-size:12px}.clients-traffic{font-variant-numeric:tabular-nums;align-items:center;gap:4px;font-size:11px;display:flex;overflow:hidden}.clients-traffic__rates{white-space:nowrap;flex-direction:column;gap:0;min-width:48px;line-height:1.3;display:flex}.clients-traffic__rates .rx{color:var(--lime,#84cc16)}.clients-traffic__rates .tx{color:var(--amber,#f59e0b)}.mini-spark{background:#ffffff08;border-radius:3px;flex-shrink:0;width:80px;height:18px}.mini-spark .line{fill:none;stroke-width:1px;vector-effect:non-scaling-stroke}.mini-spark .rx.line{stroke:var(--lime,#84cc16)}.mini-spark .tx.line{stroke:var(--amber,#f59e0b)}.mini-spark .rx.area{fill:var(--lime,#84cc16);opacity:.18}.mini-spark .tx.area{fill:var(--amber,#f59e0b);opacity:.14}.clients-edit{border:1px solid var(--mt-border);border-radius:var(--mt-radius-sm);background:var(--mt-surface-2);flex-wrap:wrap;align-items:center;gap:8px;margin-top:14px;padding:10px 12px;display:flex}.clients-edit__label{color:var(--mt-text-dim);font-size:13px}.clients-edit .geist-input{width:220px}.aaa-tabs{border-bottom:1px solid var(--mt-border);flex-wrap:wrap;gap:4px;margin-bottom:14px;display:flex}.aaa-tab{appearance:none;color:var(--mt-text-dim);font:inherit;cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;margin-bottom:-1px;padding:7px 12px;font-size:13px}.aaa-tab:hover{color:var(--mt-text)}.aaa-tab.is-active{color:var(--mt-text);border-bottom-color:var(--page-accent)}.aaa-entity__toolbar{align-items:center;gap:10px;margin-bottom:12px;display:flex}.aaa-filter{width:200px}.aaa-error{margin-bottom:10px}.aaa-empty{padding:20px 4px}.aaa-table{flex-direction:column;gap:2px;display:flex}.aaa-table--scroll{overflow-x:auto}.aaa-row{border-radius:var(--mt-radius-sm);align-items:center;gap:10px;padding:8px 10px;font-size:13px;display:grid}.aaa-row--head{color:var(--mt-text-faint);text-transform:uppercase;letter-spacing:.04em;font-size:11px}.aaa-row:not(.aaa-row--head):hover{background:var(--mt-surface-2)}.aaa-row.is-off .aaa-cell{color:var(--mt-text-faint)}.aaa-row--sessions{grid-template-columns:repeat(9,minmax(90px,1fr));min-width:900px}.aaa-cell{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.aaa-actions,.aaa-actions-h{justify-content:flex-end;gap:6px;display:flex}.aaa-form,.aaa-singleton{border:1px solid var(--mt-border);border-radius:var(--mt-radius-sm);background:var(--mt-surface-2);margin-bottom:14px;padding:14px}.aaa-form__title,.aaa-singleton__title{margin-bottom:10px;font-size:13px;font-weight:600}.aaa-singleton__current{margin-bottom:12px;font-size:12px}.aaa-form__grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:10px 14px;display:grid}.aaa-field{flex-direction:column;gap:4px;display:flex}.aaa-field__label{color:var(--mt-text-dim);font-size:11.5px}.aaa-form__actions{align-items:center;gap:10px;margin-top:14px;display:flex}.aaa-settings{flex-direction:column;gap:8px;display:flex}.clients-limits{border-top:1px solid var(--mt-border);max-width:520px;margin-top:14px;padding-top:12px}.clients-limits__hd{align-items:baseline;gap:12px;margin-bottom:8px;display:flex}.clients-limits__label{font-size:13px;font-weight:600}.clients-limits__row{flex-wrap:wrap;align-items:flex-end;gap:8px;display:flex}.clients-limits__field{flex-direction:column;gap:3px;font-size:11.5px;display:flex}.clients-limits__field .geist-input{width:150px}.clients-limits__msg{margin-top:6px;font-size:12px}.usage-chart__empty{padding:16px 4px;font-size:12.5px}.usage-chart__legend{font-variant-numeric:tabular-nums;align-items:baseline;gap:14px;margin-bottom:6px;font-size:12px;display:flex}.usage-chart__legend .rate{font-weight:600}.usage-chart__legend .rate.rx{color:var(--lime)}.usage-chart__legend .rate.tx{color:var(--amber)}.usage-chart__svg{background:var(--mt-surface);border:1px solid var(--mt-border);border-radius:var(--mt-radius-sm);width:100%;height:160px;display:block}.usage-chart__svg .line{fill:none;stroke-width:2px;vector-effect:non-scaling-stroke}.usage-chart__svg .rx.line{stroke:var(--lime)}.usage-chart__svg .tx.line{stroke:var(--amber)}.usage-chart__svg .rx.area{fill:color-mix(in srgb, var(--lime) 18%, transparent);stroke:none}.usage-chart__svg .tx.area{fill:color-mix(in srgb, var(--amber) 14%, transparent);stroke:none}.clients-history,.aaa-usage__section{margin-top:16px}.clients-history__hd,.aaa-usage__title{color:var(--mt-text-dim);margin-bottom:8px;font-size:12px;font-weight:600}.aaa-usage__bar{align-items:center;gap:8px;margin-bottom:12px;display:flex}.heatmap__hd{align-items:baseline;gap:10px;margin-bottom:6px;display:flex}.heatmap__title{font-size:12.5px;font-weight:600}.heatmap__scroll{padding-bottom:4px;overflow-x:auto}.heatmap__svg{display:block}.heatmap__month,.heatmap__wd{fill:var(--mt-text-dim);font-family:inherit;font-size:9px}.heatmap{position:relative}.heatmap__cell{stroke:color-mix(in srgb, var(--mt-border) 60%, transparent);stroke-width:1px;cursor:pointer;transition:stroke .1s}.heatmap__cell.is-hover{stroke:var(--mt-text);stroke-width:1.5px}.heatmap__tip{z-index:30;background:linear-gradient(180deg, color-mix(in srgb, var(--mt-surface-2) 92%, var(--lime)), var(--mt-surface-2));border:1px solid color-mix(in srgb, var(--lime) 35%, var(--mt-border));pointer-events:none;min-width:150px;animation:heatmap-tip-in .12s var(--ease);border-radius:10px;padding:8px 10px;position:absolute;transform:translate(-50%,calc(-100% - 9px));box-shadow:0 8px 24px #00000073}.heatmap__tip:after{content:"";background:var(--mt-surface-2);border-right:1px solid color-mix(in srgb, var(--lime) 35%, var(--mt-border));border-bottom:1px solid color-mix(in srgb, var(--lime) 35%, var(--mt-border));width:11px;height:11px;position:absolute;bottom:-6px;left:50%;transform:translate(-50%)rotate(45deg)}@keyframes heatmap-tip-in{0%{opacity:0;transform:translate(-50%,calc(-100% - 3px))}to{opacity:1;transform:translate(-50%,calc(-100% - 9px))}}.heatmap__tip-head{align-items:center;gap:7px;font-size:13px;display:flex}.heatmap__tip-head b{font-weight:600}.heatmap__tip-head .heatmap__swatch{width:12px;height:12px}.heatmap__tip-date{color:var(--mt-text-dim);font-variant-numeric:tabular-nums;margin-top:3px;font-size:11.5px}.heatmap__cell.lvl0,.heatmap__swatch.lvl0{fill:var(--mt-surface-2);background:var(--mt-surface-2)}.heatmap__cell.lvl1,.heatmap__swatch.lvl1{fill:color-mix(in srgb, var(--lime) 30%, var(--mt-surface-2));background:color-mix(in srgb, var(--lime) 30%, var(--mt-surface-2))}.heatmap__cell.lvl2,.heatmap__swatch.lvl2{fill:color-mix(in srgb, var(--lime) 50%, var(--mt-surface-2));background:color-mix(in srgb, var(--lime) 50%, var(--mt-surface-2))}.heatmap__cell.lvl3,.heatmap__swatch.lvl3{fill:color-mix(in srgb, var(--lime) 72%, transparent);background:color-mix(in srgb, var(--lime) 72%, transparent)}.heatmap__cell.lvl4,.heatmap__swatch.lvl4{fill:var(--lime);background:var(--lime)}.heatmap__legend{align-items:center;gap:4px;margin-top:8px;font-size:11px;display:flex}.heatmap__swatch{border-radius:2px;width:11px;height:11px;display:inline-block}.input{font:12px var(--mt-mono);color:var(--mt-text);background:var(--mt-surface-2);border:1px solid var(--mt-border);border-radius:var(--mt-radius-sm);width:min(52vw,420px);padding:6px 10px}.input:focus{border-color:color-mix(in srgb, var(--mt-accent) 55%, var(--mt-border));outline:none}.btn-sm{padding:3px 8px;font-size:10px}.mod-toolbar{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:6px;display:flex}.mod-groups{flex-direction:column;gap:18px;margin-top:12px;display:flex}.mod-group__hd{border-bottom:1px solid var(--mt-border);align-items:center;gap:10px;margin-bottom:8px;padding-bottom:6px;display:flex}.mod-group__title{color:var(--mt-text);margin:0;font-size:13px;font-weight:600}.mod-list{grid-template-columns:repeat(auto-fill,minmax(min(100%,360px),1fr));gap:8px;display:grid}.mod-row{background:var(--mt-surface-2);border:1px solid var(--mt-border);border-radius:var(--mt-radius-sm);cursor:pointer;-webkit-user-select:none;user-select:none;align-items:flex-start;gap:10px;padding:9px 11px;transition:border-color .18s,background .18s;display:flex}.mod-row:hover{border-color:color-mix(in srgb, var(--mt-accent) 35%, var(--mt-border))}.mod-row[data-on]{border-color:color-mix(in srgb, var(--mt-accent) 50%, var(--mt-border));background:color-mix(in srgb, var(--mt-accent) 10%, var(--mt-surface-2))}.mod-row input{accent-color:var(--mt-accent);cursor:pointer;margin:2px 0 0}.mod-row__main{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.mod-row__name{color:var(--mt-text);flex-wrap:wrap;align-items:center;gap:7px;font-size:12px;font-weight:600;display:flex}.mod-row__slug{font:10px var(--mt-mono);color:var(--mt-text-dim);background:var(--mt-bg);border:1px solid var(--mt-border);border-radius:4px;padding:1px 5px}.mod-row__desc{font-size:11px;line-height:1.35}.mod-row__count{font:10px var(--mt-mono);white-space:nowrap;padding-top:1px}.conn-tunnel-halo{fill:none;stroke-width:8px;stroke-linecap:round;opacity:.1}.conn-tunnel{fill:none;stroke-width:2.4px;stroke-linecap:round;stroke-dasharray:6 6;animation:.9s linear infinite conn-tunnel-flow}@keyframes conn-tunnel-flow{to{stroke-dashoffset:-24px}}.conn-tunnel-lock{filter:drop-shadow(0 0 4px #f59e0bcc)}.conn-tunnel-sat{stroke-width:1.5px;filter:drop-shadow(0 0 5px #f59e0b88)}.conn-tunnel-badge{fill:#30220a;stroke:color-mix(in srgb, #f59e0b 60%, var(--mt-border));stroke-width:1px}.conn-tunnel-badge-tx{fill:#fbbf24;font-family:var(--mt-mono);letter-spacing:.02em;font-weight:700}.jump-route{background:color-mix(in srgb, #f59e0b 7%, var(--mt-surface-2));border:1px solid color-mix(in srgb, #f59e0b 28%, var(--mt-border));font:10px var(--mt-mono);border-radius:10px;align-items:center;gap:6px;margin:10px 0 2px;padding:7px 9px;display:flex;overflow:hidden}.jump-route__hop{background:var(--mt-bg);border:1px solid var(--mt-border);color:var(--mt-text);white-space:nowrap;border-radius:7px;align-items:center;gap:5px;padding:3px 8px;display:inline-flex}.jump-route__hop--src{padding:3px 7px;font-size:12px}.jump-route__hop--bastion{border-color:color-mix(in srgb, #f59e0b 60%, var(--mt-border));color:#fbbf24;box-shadow:0 0 10px -3px #f59e0b99}.jump-route__tag{text-transform:uppercase;letter-spacing:.08em;color:#0a0a0a;background:#f59e0b;border-radius:4px;padding:1px 4px;font-size:7px;font-style:normal}.jump-route__wire{background-image:linear-gradient(90deg, var(--mt-border) 0 50%, transparent 50% 100%);background-size:8px 2px;border-radius:2px;flex:1;min-width:18px;height:2px;animation:.7s linear infinite jump-wire}.jump-route__wire--enc{background-image:linear-gradient(90deg,#f59e0b 0 55%,#0000 55% 100%);background-size:10px 3px;min-width:34px;height:3px;position:relative;box-shadow:0 0 8px -1px #f59e0b88}.jump-route__lock{filter:drop-shadow(0 0 3px #f59e0b);font-size:11px;animation:2.2s linear infinite jump-lock;position:absolute;top:50%}@keyframes jump-wire{to{background-position:8px 0}}@keyframes jump-lock{0%{left:-4px;transform:translateY(-50%)scale(.9)}50%{transform:translateY(-50%)scale(1.1)}to{left:calc(100% - 8px);transform:translateY(-50%)scale(.9)}}@media (prefers-reduced-motion:reduce){.conn-tunnel,.jump-route__wire,.jump-route__wire--enc,.jump-route__lock{animation:none}.conn-tunnel-lock animatemotion{display:none}}.pool-panel{margin:12px 0}.pool-disabled{color:#71717a;margin:4px 0;font-size:13px}.pool-disabled code{color:#7c9cff;font-size:12px}.pool-stats{flex-wrap:wrap;gap:8px;margin-bottom:12px;display:flex}.pool-grid{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:8px;display:grid}.pool-card{background:#18181b;border:1px solid #27272a;border-radius:8px;padding:10px 12px;transition:border-color .2s}.pool-card:hover{border-color:#3f3f46}.pool-card--idle{border-color:#22c55e59}.pool-card--busy{border-color:#3b82f680}.pool-card--dead{border-color:#ef444480}.pool-card--disconnected{opacity:.6;border-style:dashed}.pool-card__hd{align-items:center;gap:6px;margin-bottom:6px;display:flex}.pool-card__dot{border-radius:50%;flex-shrink:0;width:7px;height:7px}.pool-card__name{color:#e4e4e7;text-overflow:ellipsis;white-space:nowrap;font-size:12px;font-weight:600;overflow:hidden}.pool-card__badge{text-transform:uppercase;letter-spacing:.04em;margin-left:auto;font-size:10px;font-weight:600}.pool-pipe{background:#27272a;border-radius:3px;height:6px;position:relative;overflow:hidden}.pool-pipe__fill{opacity:.65;border-radius:3px;height:100%;transition:width .4s}.pool-pipe__fill--pulse{animation:1.5s ease-in-out infinite pool-pulse}.pool-pipe__label{color:#fafafa;text-shadow:0 0 3px #0009;font-size:8px;font-weight:700;line-height:8px;position:absolute;top:-1px;right:4px}@keyframes pool-pulse{0%,to{opacity:.5}50%{opacity:.9}}.wn-overlay{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);z-index:20;animation:wn-backdrop-in .4s var(--ease) both;background:#000000b8;place-items:center;display:grid;position:fixed;inset:0}@keyframes wn-backdrop-in{0%{opacity:0}}.wn-overlay.is-closing{animation:wn-backdrop-out .3s var(--ease) both}.wn-overlay.is-closing .wn-card{animation:wn-card-out .3s var(--ease) both}@keyframes wn-backdrop-out{to{opacity:0}}.wn-card{background:var(--mt-surface);border:1px solid color-mix(in srgb, var(--violet) 30%, var(--mt-border));width:min(520px,100vw - 48px);max-height:calc(100vh - 80px);box-shadow:0 0 0 1px color-mix(in srgb, var(--violet) 12%, transparent), 0 24px 80px #0009, 0 0 120px color-mix(in srgb, var(--violet) 8%, transparent);animation:wn-card-in .5s var(--ease) .1s both;border-radius:16px;position:relative;overflow:hidden auto}@keyframes wn-card-in{0%{opacity:0;filter:blur(4px);transform:scale(.92)translateY(20px)}to{opacity:1;filter:blur();transform:scale(1)translateY(0)}}@keyframes wn-card-out{to{opacity:0;filter:blur(2px);transform:scale(.95)translateY(10px)}}.wn-glow{background:radial-gradient(circle, color-mix(in srgb, var(--violet) 18%, transparent), color-mix(in srgb, var(--sky) 8%, transparent) 50%, transparent 70%);pointer-events:none;border-radius:50%;width:320px;height:320px;animation:3s ease-in-out infinite alternate wn-glow-pulse;position:absolute;top:-60px;left:50%;transform:translate(-50%)}@keyframes wn-glow-pulse{0%{opacity:.5;transform:translate(-50%)scale(1)}to{opacity:1;transform:translate(-50%)scale(1.12)}}.wn-particles{pointer-events:none;z-index:0;position:absolute;inset:0;overflow:hidden}.wn-particle{background:color-mix(in srgb, var(--violet) 60%, var(--sky));opacity:0;border-radius:50%;animation:6s ease-in-out infinite wn-float;position:absolute}@keyframes wn-float{0%,to{opacity:0;transform:translateY(0)scale(.5)}20%{opacity:.7}50%{opacity:.35;transform:translateY(-30px)scale(1)}80%{opacity:.5}}.wn-close{z-index:2;border:1px solid var(--mt-border);background:var(--mt-surface-2);width:32px;height:32px;color:var(--mt-text-dim);cursor:pointer;border-radius:8px;place-items:center;transition:border-color .16s,color .16s,background .16s;display:grid;position:absolute;top:14px;right:14px}.wn-close:hover{border-color:var(--mt-border-strong);color:var(--mt-text);background:var(--mt-border)}.wn-hero{z-index:1;text-align:center;padding:40px 32px 24px;position:relative}.wn-badge{font-family:var(--mt-mono);letter-spacing:.2em;text-transform:uppercase;background:linear-gradient(135deg, color-mix(in srgb, var(--violet) 22%, transparent), color-mix(in srgb, var(--sky) 18%, transparent));border:1px solid color-mix(in srgb, var(--violet) 30%, transparent);color:var(--violet);border-radius:999px;padding:4px 14px;font-size:10px;font-weight:700;animation:2s ease-in-out infinite alternate wn-badge-glow;display:inline-block}@keyframes wn-badge-glow{0%{box-shadow:0 0 8px color-mix(in srgb, var(--violet) 20%, transparent)}to{box-shadow:0 0 22px color-mix(in srgb, var(--violet) 40%, transparent)}}.wn-version{font-family:var(--mt-display);letter-spacing:-.04em;background:linear-gradient(135deg, var(--violet), var(--sky) 50%, var(--teal));-webkit-text-fill-color:transparent;background-size:200% 100%;-webkit-background-clip:text;background-clip:text;margin:16px 0 8px;font-size:44px;font-weight:800;animation:3s ease-in-out infinite wn-shimmer}@keyframes wn-shimmer{0%,to{background-position:0%}50%{background-position:100%}}.wn-date{font-family:var(--mt-mono);color:var(--mt-text-dim);margin:0;font-size:12px}.wn-divider{align-items:center;height:20px;padding:0 32px;display:flex;position:relative}.wn-divider:before{content:"";background:linear-gradient(90deg, transparent, var(--mt-border-strong) 30%, var(--mt-border-strong) 70%, transparent);flex:1;height:1px}.wn-dot{background:var(--violet);width:10px;height:10px;box-shadow:0 0 14px color-mix(in srgb, var(--violet) 50%, transparent);border-radius:50%;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.wn-body{font-family:var(--mt-sans);color:var(--mt-text-dim);z-index:1;padding:20px 32px;font-size:13px;line-height:1.7;position:relative}.wn-body h2,.wn-body h3,.wn-body h4,.wn-body h5{font-family:var(--mt-display);color:var(--mt-text);margin:18px 0 6px;font-weight:700}.wn-body h2{font-size:17px}.wn-body h3{font-size:15px}.wn-body h4,.wn-body h5{font-size:14px}.wn-body p{margin:5px 0}.wn-body ul{margin:5px 0;padding-left:18px}.wn-body li{margin:3px 0}.wn-body li::marker{color:var(--violet)}.wn-body code{font-family:var(--mt-mono);background:var(--mt-surface-2);border:1px solid var(--mt-border);color:var(--sky);border-radius:4px;padding:2px 6px;font-size:12px}.wn-body pre{background:var(--mt-bg);border:1px solid var(--mt-border);border-radius:var(--mt-radius-sm);margin:8px 0;padding:12px;overflow-x:auto}.wn-body pre code{color:var(--mt-text-dim);background:0 0;border:none;padding:0}.wn-body a{color:var(--sky);text-underline-offset:2px;text-decoration:underline}.wn-body strong{color:var(--mt-text);font-weight:600}.wn-body blockquote{border-left:3px solid color-mix(in srgb, var(--violet) 40%, var(--mt-border));color:var(--mt-text-dim);margin:8px 0;padding:6px 14px;font-style:italic}.wn-body hr{border:none;border-top:1px solid var(--mt-border);margin:14px 0}.wn-body ol{margin:5px 0;padding-left:22px}.wn-body ol li{margin:3px 0}.wn-body ol li::marker{color:var(--sky)}.wn-body del{color:var(--mt-text-dim);opacity:.6}.wn-body .wn-task{margin-left:-18px;list-style:none}.wn-body .wn-check{width:16px;color:var(--mt-text-dim);font-size:13px;display:inline-block}.wn-body .wn-task.done .wn-check{color:var(--teal)}.wn-table-wrap{border-radius:var(--mt-radius-sm);border:1px solid var(--mt-border);margin:10px 0;overflow-x:auto}.wn-body table{border-collapse:collapse;width:100%;font-size:12px;font-family:var(--mt-mono)}.wn-body th,.wn-body td{border-bottom:1px solid var(--mt-border);padding:7px 12px}.wn-body th{background:var(--mt-surface-2);color:var(--mt-text);text-align:left;text-transform:uppercase;letter-spacing:.06em;font-size:11px;font-weight:600}.wn-body td{color:var(--mt-text-dim)}.wn-body tbody tr:last-child td{border-bottom:none}.wn-body tbody tr:hover td{background:color-mix(in srgb, var(--mt-surface-2) 50%, transparent)}.wn-footer{border-top:1px solid var(--mt-border);z-index:1;justify-content:space-between;align-items:center;padding:14px 32px 24px;display:flex;position:relative}.wn-link{font-family:var(--mt-mono);color:var(--mt-text-dim);align-items:center;gap:6px;font-size:12px;text-decoration:none;transition:color .16s;display:inline-flex}.wn-link:hover{color:var(--mt-text)}.wn-link svg{width:13px;height:13px}.nav__version-link{cursor:pointer;transition:color .16s}.nav__version-link:hover{color:var(--mt-text)}.nav__update-dot{background:var(--violet);vertical-align:middle;cursor:pointer;border-radius:50%;width:7px;height:7px;margin-left:6px;animation:2s ease-in-out infinite wn-indicator-pulse;display:inline-block}@keyframes wn-indicator-pulse{0%,to{box-shadow:0 0 0 0 color-mix(in srgb, var(--violet) 50%, transparent)}50%{box-shadow:0 0 0 5px #0000}}@media (prefers-reduced-motion:reduce){.wn-card,.wn-overlay,.wn-badge,.wn-glow,.wn-particle,.wn-version,.nav__update-dot{animation:none!important}.wn-card{opacity:1;filter:none;transform:none}}
92
+ @import "https://fonts.googleapis.com/css2?family=JetBrains+Mono:ital,wght@0,100..800;1,100..800&display=swap";@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-border-style:solid;--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-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}}}@layer theme{:root,:host{--font-sans:var(--mt-sans);--font-mono:var(--mt-mono);--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1)}}@layer base,components;@layer utilities{.visible{visibility:visible}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.isolate{isolation:isolate}.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}}.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}.shrink{flex-shrink:1}.grow{flex-grow:1}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.rounded{border-radius:.25rem}.border{border-style:var(--tw-border-style);border-width:1px}.italic{font-style:italic}.ring{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}}:root{--background:#0a0a0a;--foreground:#ededed;--card:#111;--card-foreground:#ededed;--popover:#111;--popover-foreground:#ededed;--primary:#ededed;--primary-foreground:#0a0a0a;--secondary:#1a1a1a;--secondary-foreground:#ededed;--muted:#1a1a1a;--muted-foreground:#a1a1a1;--accent:var(--page-accent,#3291ff);--accent-foreground:#0a0a0a;--destructive:#ff5c5c;--destructive-foreground:#fff;--success:#2dd4a7;--warning:#f5a623;--border:#2a2a2a;--input:#2a2a2a;--ring:var(--page-accent,#3291ff);--radius:.5rem}@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-border-style{syntax:"*";inherits:false;initial-value:solid}@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-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}:root{--mt-bg:var(--color-background-primary,#0b0d10);--mt-surface:var(--color-background-secondary,#14171c);--mt-surface-2:var(--color-background-tertiary,#1b1f26);--mt-border:var(--color-border-primary,#262b33);--mt-text:var(--color-text-primary,#e8eaed);--mt-text-dim:var(--color-text-secondary,#9aa3af);--mt-text-faint:var(--color-text-tertiary,#6b7280);--mt-accent:var(--color-accent-primary,#6ea8fe);--mt-good:#34d399;--mt-warn:#fbbf24;--mt-bad:#f87171;--mt-radius:var(--border-radius-md,14px);--mt-radius-sm:var(--border-radius-sm,9px);--mt-mono:var(--font-mono,ui-monospace, "SF Mono", "JetBrains Mono", Menlo, monospace);--mt-sans:var(--font-sans,system-ui, -apple-system, "Segoe UI", sans-serif);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial}}*{box-sizing:border-box}body{background:var(--mt-bg);color:var(--mt-text);font-family:var(--mt-sans);-webkit-font-smoothing:antialiased;margin:0;padding:16px;font-size:13px;line-height:1.5}.app{gap:14px;max-width:960px;margin:0 auto;display:grid}.hd{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.hd__dot{background:var(--mt-good);width:9px;height:9px;box-shadow:0 0 0 4px color-mix(in srgb, var(--mt-good) 22%, transparent);border-radius:50%}.hd__title{letter-spacing:-.01em;margin:0;font-size:17px;font-weight:650}.hd__sub{color:var(--mt-text-dim);font-family:var(--mt-mono);margin:0;font-size:12px}.hd__spacer{flex:1}.pill{border:1px solid var(--mt-border);background:var(--mt-surface);color:var(--mt-text-dim);font-family:var(--mt-mono);border-radius:999px;align-items:center;gap:6px;padding:3px 9px;font-size:11px;display:inline-flex}.pill b{color:var(--mt-text);font-weight:600}.grid{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;display:grid}.card{background:linear-gradient(180deg, var(--mt-surface), var(--mt-surface-2));border:1px solid var(--mt-border);border-radius:var(--mt-radius);padding:14px}.card__label{color:var(--mt-text-dim);text-transform:uppercase;letter-spacing:.06em;margin:0 0 8px;font-size:11px}.card__value{font-family:var(--mt-mono);letter-spacing:-.01em;font-size:20px;font-weight:600}.toolbar{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.toolbar .grow{flex:1;min-width:140px}.search{appearance:none;border:1px solid var(--mt-border);background:var(--mt-surface);width:100%;color:var(--mt-text);font:inherit;border-radius:var(--mt-radius-sm);padding:7px 11px;font-size:13px}.search:focus{border-color:var(--mt-accent);outline:none}.search::placeholder{color:var(--mt-text-faint)}.btn{appearance:none;border:1px solid var(--mt-border);background:var(--mt-surface);color:var(--mt-text);font:inherit;border-radius:var(--mt-radius-sm);cursor:pointer;white-space:nowrap;padding:6px 11px;font-size:12px;transition:border-color .15s,background .15s}.btn:disabled{opacity:.5;cursor:default}.btn.is-active{border-color:var(--mt-accent);color:var(--mt-accent)}.chip{border:1px solid var(--mt-border);background:var(--mt-surface);color:var(--mt-text-dim);font-family:var(--mt-mono);border-radius:999px;align-items:center;gap:4px;padding:1px 7px;font-size:11px;display:inline-flex}.chip.is-good{color:var(--mt-good);border-color:color-mix(in srgb, var(--mt-good) 45%, var(--mt-border))}.chip.is-warn{color:var(--mt-warn);border-color:color-mix(in srgb, var(--mt-warn) 45%, var(--mt-border))}.chip.is-bad{color:var(--mt-bad);border-color:color-mix(in srgb, var(--mt-bad) 45%, var(--mt-border))}.tablewrap{border:1px solid var(--mt-border);border-radius:var(--mt-radius);max-height:70vh;overflow:auto}table.tbl{border-collapse:collapse;width:100%;font-size:12px}table.tbl th,table.tbl td{text-align:left;border-bottom:1px solid color-mix(in srgb, var(--mt-border) 55%, transparent);white-space:nowrap;font-family:var(--mt-mono);padding:7px 12px}table.tbl thead th{z-index:1;background:var(--mt-surface-2);color:var(--mt-text-dim);cursor:pointer;-webkit-user-select:none;user-select:none;font-weight:600;position:sticky;top:0}table.tbl thead th:hover{color:var(--mt-text)}table.tbl thead th .arrow{color:var(--mt-accent);margin-left:4px}table.tbl tbody tr{cursor:pointer}table.tbl tbody tr:hover{background:color-mix(in srgb, var(--mt-accent) 8%, transparent)}table.tbl tbody tr.is-disabled td,table.tbl td.col-num{color:var(--mt-text-faint)}.kv__body{border:1px solid var(--mt-border);border-radius:var(--mt-radius);grid-template-columns:minmax(120px,.4fr) 1fr;display:grid;overflow:hidden}.kv__body>div{border-bottom:1px solid color-mix(in srgb, var(--mt-border) 55%, transparent);overflow-wrap:anywhere;min-width:0;font-size:12px;font-family:var(--mt-mono);padding:7px 14px}.kv__k{color:var(--mt-text-dim);background:color-mix(in srgb, var(--mt-surface) 60%, transparent)}.kv__v{color:var(--mt-text)}.drawer{border:1px solid var(--mt-accent);border-radius:var(--mt-radius);background:var(--mt-surface);gap:10px;padding:12px;display:grid}.drawer__hd{align-items:center;gap:8px;display:flex}.drawer__hd b{font-family:var(--mt-mono)}pre.raw{border:1px solid var(--mt-border);border-radius:var(--mt-radius);background:var(--mt-surface);color:var(--mt-text);font-family:var(--mt-mono);white-space:pre;max-height:70vh;margin:0;padding:14px;font-size:12px;overflow:auto}.foot{color:var(--mt-text-faint);font-size:11px;font-family:var(--mt-mono);flex-wrap:wrap;align-items:center;gap:10px;display:flex}.foot .grow{flex:1}.skeleton,.empty{color:var(--mt-text-faint);text-align:center;padding:40px 0}:root{--mt-sans:"JetBrains Mono", ui-monospace, "SF Mono", Menlo, monospace;--mt-mono:"JetBrains Mono", ui-monospace, "SF Mono", Menlo, monospace;--mt-display:"JetBrains Mono", ui-monospace, "SF Mono", Menlo, monospace;--mt-bg:#0a0a0a;--mt-surface:#111;--mt-surface-2:#1a1a1a;--mt-border:#2a2a2a;--mt-border-strong:#3a3a3a;--mt-text:#ededed;--mt-text-dim:#a1a1a1;--mt-text-faint:#6e6e6e;--mt-good:#d4d4d8;--mt-warn:#a1a1a1;--mt-bad:#ff5c5c;--mt-radius:12px;--mt-radius-sm:8px;--sky:#3291ff;--teal:#2dd4bf;--cyan:#45d4ee;--lime:#69d05a;--coral:#ff5c5c;--amber:#f5a623;--pink:#ff4d8d;--violet:#9d7bff;--page-accent:#3291ff;--page-accent-2:#2dd4bf;--mt-accent:var(--page-accent);--grad:linear-gradient(115deg, var(--page-accent), var(--page-accent-2) 90%);--ease:cubic-bezier(.22, 1, .36, 1);--glass:#111111b8}html,body{background:var(--mt-bg);color:var(--mt-text);font-family:var(--mt-sans);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;margin:0;padding:0}body:after{content:"";z-index:-2;background-image:linear-gradient(color-mix(in srgb, var(--mt-border) 55%, transparent) 1px, transparent 1px), linear-gradient(90deg, color-mix(in srgb, var(--mt-border) 55%, transparent) 1px, transparent 1px);opacity:.32;pointer-events:none;background-size:52px 52px;position:fixed;inset:0;-webkit-mask-image:radial-gradient(circle at 50% 0,#000,#0000 72%);mask-image:radial-gradient(circle at 50% 0,#000,#0000 72%)}.main:before{content:"";z-index:-1;background:radial-gradient(52% 38% at 18% -8%, color-mix(in srgb, var(--page-accent) 14%, transparent), transparent 70%), radial-gradient(46% 36% at 100% 4%, color-mix(in srgb, var(--page-accent-2) 11%, transparent), transparent 68%);opacity:.9;transition:background .5s var(--ease);pointer-events:none;position:fixed;inset:0}.shell{grid-template-columns:250px minmax(0,1fr);align-items:start;min-height:100vh;display:grid}.nav{border-right:1px solid var(--mt-border);background:color-mix(in srgb, var(--mt-surface) 55%, transparent);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);flex-direction:column;gap:10px;height:100vh;padding:18px 14px;display:flex;position:sticky;top:0}.nav__brand{align-items:center;gap:11px;padding:6px 8px 14px;display:flex}.nav__mark{background:var(--grad);width:38px;height:38px;box-shadow:0 6px 20px color-mix(in srgb, var(--page-accent) 34%, transparent);transition:background .4s var(--ease), box-shadow .4s var(--ease);border-radius:11px;flex:none;place-items:center;display:grid}.nav__mark svg{width:22px;height:22px;display:block}.nav__brandtext{flex-direction:column;min-width:0;line-height:1.1;display:flex}.nav__brandtext b{font-family:var(--mt-display);letter-spacing:-.03em;font-size:15px;font-weight:700}.nav__brandtext small{font-family:var(--mt-mono);letter-spacing:.16em;text-transform:uppercase;color:var(--mt-text-dim);margin-top:3px;font-size:10px}.nav__items{flex-direction:column;flex:1;gap:3px;display:flex}.nav__item{color:var(--mt-text-dim);font-family:var(--mt-sans);cursor:pointer;text-align:left;transition:background .18s var(--ease), color .18s, border-color .18s, transform .18s var(--ease);background:0 0;border:1px solid #0000;border-radius:11px;align-items:center;gap:11px;padding:10px 12px;font-size:13px;font-weight:500;display:flex}.nav__item svg{opacity:.85;flex:none;width:18px;height:18px}.nav__item:hover{color:var(--mt-text);background:color-mix(in srgb, var(--mt-text) 7%, transparent)}.nav__item.is-active{color:var(--mt-text);border-color:color-mix(in srgb, var(--page-accent) 36%, var(--mt-border));background:linear-gradient(100deg, color-mix(in srgb, var(--page-accent) 16%, transparent), color-mix(in srgb, var(--page-accent-2) 7%, transparent))}.nav__item.is-active svg{opacity:1;color:var(--page-accent)}.nav__item.is-active:before{content:"";background:var(--page-accent);width:3px;box-shadow:0 0 12px color-mix(in srgb, var(--page-accent) 70%, transparent);border-radius:999px;position:absolute;top:18%;bottom:18%;left:-1px}.nav__item{position:relative}.nav__badge{font-family:var(--mt-mono);background:color-mix(in srgb, var(--page-accent) 24%, transparent);color:var(--mt-text);border-radius:999px;margin-left:auto;padding:1px 7px;font-size:10px;animation:.4s cubic-bezier(.19,1,.22,1) nav-badge-pop;display:inline-block}@keyframes nav-badge-pop{0%{transform:scale(1)}35%{background:color-mix(in srgb, var(--page-accent) 60%, transparent);transform:scale(1.35)}to{transform:scale(1)}}@media (prefers-reduced-motion:reduce){.nav__badge{animation:none}}.nav__foot{border-top:1px solid var(--mt-border);flex-direction:column;gap:8px;padding:10px 8px 2px;display:flex}.main{align-content:start;gap:18px;min-width:0;padding:22px clamp(16px,3vw,44px) 64px;display:grid}.topline{flex-wrap:wrap;align-items:center;gap:14px;display:flex}.topline__txt h1{font-family:var(--mt-display);letter-spacing:-.03em;background:linear-gradient(100deg, var(--mt-text) 30%, color-mix(in srgb, var(--page-accent) 78%, var(--mt-text)));-webkit-text-fill-color:transparent;transition:background .4s var(--ease);-webkit-background-clip:text;background-clip:text;margin:0;font-size:clamp(20px,2.4vw,28px);font-weight:700;line-height:1.15}.topline__txt small{color:var(--mt-text-dim);font-family:var(--mt-mono);margin-top:3px;font-size:12px;display:block}.topline__spacer{flex:1;min-width:8px}.help-toggle{border:1px solid var(--mt-border);background:var(--mt-surface);color:var(--mt-text-dim);font-family:var(--mt-sans);cursor:pointer;transition:color .18s, border-color .18s, background .18s, transform .12s var(--ease);border-radius:999px;align-items:center;gap:7px;padding:7px 13px 7px 10px;font-size:12.5px;font-weight:500;display:inline-flex}.help-toggle:hover{color:var(--mt-text);border-color:var(--mt-border-strong);transform:translateY(-1px)}.help-toggle.is-on{color:var(--page-accent);border-color:color-mix(in srgb, var(--page-accent) 45%, var(--mt-border));background:color-mix(in srgb, var(--page-accent) 12%, var(--mt-surface))}.help-toggle__q{background:color-mix(in srgb, var(--page-accent) 22%, transparent);width:17px;height:17px;color:var(--page-accent);border-radius:999px;place-items:center;font-size:11px;font-weight:700;display:grid}.pagehelp{border-radius:var(--mt-radius);border:1px solid color-mix(in srgb, var(--page-accent) 28%, var(--mt-border));background:linear-gradient(120deg, color-mix(in srgb, var(--page-accent) 9%, var(--mt-surface)), var(--mt-surface) 60%);gap:14px;padding:16px 18px;display:flex}.pagehelp__icon{color:#0a0a0a;background:var(--grad);width:30px;height:30px;box-shadow:0 4px 14px color-mix(in srgb, var(--page-accent) 35%, transparent);border-radius:9px;flex:none;place-items:center;font-size:15px;font-weight:700;display:grid}.pagehelp__body{min-width:0}.pagehelp__what{color:var(--mt-text);margin:2px 0 8px;font-size:13.5px;line-height:1.55}.pagehelp__tips{gap:4px;margin:0;padding-left:18px;display:grid}.pagehelp__tips li{color:var(--mt-text-dim);font-size:12.5px;line-height:1.5}.pagehelp__tips li::marker{color:var(--page-accent)}.view{align-content:start;gap:18px;display:grid}.bento{grid-template-columns:repeat(6,1fr);gap:18px;display:grid}.bento .panel{margin:0}.b-series{grid-column:span 4}.b-risk{grid-column:span 2}.b-tools,.b-status,.b-device,.b-errors{grid-column:span 3}.b-risk,.b-status{flex-direction:column;display:flex}@media (width<=1040px){.bento{grid-template-columns:repeat(2,1fr)}.b-series,.b-risk,.b-tools,.b-status,.b-device,.b-errors{grid-column:span 2}}@media (width<=900px){.shell{grid-template-columns:1fr}.nav{border-right:0;border-bottom:1px solid var(--mt-border);z-index:5;flex-direction:row;align-items:center;gap:8px;height:auto;padding:10px 12px;position:sticky;top:0;overflow-x:auto}.nav__brand{padding:0 6px 0 2px}.nav__brandtext{display:none}.nav__items{flex-direction:row;flex:1;gap:4px}.nav__item span{display:none}.nav__item{padding:9px 11px}.nav__foot{border-top:0;flex-direction:row;align-items:center;padding:0}.nav__foot .muted{display:none}}@media (width<=560px){.nav__brand{display:none}}@media (prefers-reduced-motion:no-preference){.js-motion .reveal{opacity:0}}.hero__live{border:1px solid var(--mt-border);background:var(--glass);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);font-family:var(--mt-mono);letter-spacing:.04em;text-transform:uppercase;color:var(--mt-text-dim);border-radius:999px;align-items:center;gap:7px;padding:7px 13px;font-size:11px;display:inline-flex}.hero__live .dot{background:var(--mt-bad);border-radius:50%;width:8px;height:8px;transition:background .3s}.hero__live.is-ws{--lc:#34d399}.hero__live.is-sse{--lc:#f59e0b}.hero__live.is-on{color:var(--mt-text);border-color:color-mix(in srgb, var(--lc,var(--mt-good)) 40%, var(--mt-border))}.hero__live.is-on .dot{background:var(--lc,var(--mt-good));box-shadow:0 0 0 4px color-mix(in srgb, var(--lc,var(--mt-good)) 22%, transparent);animation:1.8s ease-out infinite hero-pulse}@keyframes hero-pulse{0%{box-shadow:0 0 0 0 color-mix(in srgb, var(--lc,var(--mt-good)) 55%, transparent)}70%{box-shadow:0 0 0 9px color-mix(in srgb, var(--lc,var(--mt-good)) 0%, transparent)}to{box-shadow:0 0 0 0 color-mix(in srgb, var(--lc,var(--mt-good)) 0%, transparent)}}.panel>h2,.sheet__hd h2{font-family:var(--mt-sans)}.cards{grid-template-columns:repeat(2,1fr);gap:12px;display:grid}@media (width>=560px){.cards{grid-template-columns:repeat(4,1fr)}}@media (width>=1040px){.cards{grid-template-columns:repeat(8,1fr)}}.stat{background:linear-gradient(180deg, var(--mt-surface), color-mix(in srgb, var(--mt-surface-2) 80%, transparent));border:1px solid var(--mt-border);border-radius:var(--mt-radius);transition:transform .3s var(--ease), border-color .3s var(--ease);padding:14px 15px;position:relative;overflow:hidden}.stat:before{content:"";background:var(--grad);opacity:0;height:2px;transition:opacity .3s var(--ease);position:absolute;inset:0 0 auto}.stat:hover{border-color:color-mix(in srgb, var(--page-accent) 42%, var(--mt-border));transform:translateY(-3px)}.stat:hover:before{opacity:1}.stat .k{color:var(--mt-text-dim);text-transform:uppercase;letter-spacing:.08em;margin:0 0 7px;font-size:10px}.stat .v{font-family:var(--mt-mono);letter-spacing:-.02em;font-variant-numeric:tabular-nums;font-size:23px;font-weight:500}.stat .v small{color:var(--mt-text-dim);font-size:12px;font-weight:400}.stat.is-bad .v{color:var(--mt-bad)}.stat.is-warn .v{color:var(--mt-warn)}.stat.is-good .v{color:var(--mt-good)}.panel{background:var(--mt-surface);border:1px solid var(--mt-border);border-radius:var(--mt-radius);transition:border-color .25s var(--ease);padding:18px;position:relative;box-shadow:0 1px 2px #0000004d,inset 0 1px #ffffff08}.panel:hover{border-color:color-mix(in srgb, var(--mt-text) 13%, var(--mt-border))}.panel>h2{color:var(--mt-text-dim);text-transform:uppercase;letter-spacing:.07em;align-items:center;gap:9px;margin:0 0 14px;font-size:12px;font-weight:600;display:inline-flex}.panel>h2:before,.sheet__hd h2:first-child:before{content:"";background:var(--grad);border-radius:2px;flex:none;width:3px;height:13px}.cols{grid-template-columns:1.4fr 1fr;gap:18px;display:grid}@media (width<=820px){.cols{grid-template-columns:1fr}}.cols-3{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:18px;display:grid}.cols-3 .panel{flex-direction:column;display:flex}.hbar{gap:9px;display:grid}.hbar__row{grid-template-columns:minmax(90px,.9fr) 2fr auto;align-items:center;gap:10px;font-size:12px;display:grid}.hbar__label{font-family:var(--mt-mono);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.hbar__track{background:color-mix(in srgb, var(--mt-surface-2) 90%, transparent);border-radius:999px;height:8px;overflow:hidden}.hbar__fill{background:var(--grad);height:100%;box-shadow:0 0 10px color-mix(in srgb, var(--teal) 45%, transparent);border-radius:999px}.hbar__val{font-family:var(--mt-mono);color:var(--mt-text-dim);text-align:right;font-variant-numeric:tabular-nums;font-size:11px}.legend{font-family:var(--mt-mono);color:var(--mt-text-dim);flex-wrap:wrap;gap:12px;margin-top:12px;font-size:11px;display:flex}.legend span{align-items:center;gap:5px;display:inline-flex}.legend i{border-radius:2px;width:9px;height:9px;display:inline-block}.risk{font-family:var(--mt-mono);color:var(--rc,var(--mt-text-dim));border:1px solid color-mix(in srgb, var(--rc,var(--mt-border)) 45%, var(--mt-border));background:color-mix(in srgb, var(--rc,transparent) 12%, transparent);text-transform:uppercase;letter-spacing:.04em;border-radius:999px;padding:1px 8px;font-size:10px;display:inline-block}.risk-READ{--rc:#34d399}.risk-WRITE{--rc:#3291ff}.risk-WRITE_IDEMPOTENT{--rc:#2dd4bf}.risk-DESTRUCTIVE{--rc:#f59e0b}.risk-DANGEROUS{--rc:#ef4444}.feed{border-collapse:collapse;width:100%;font-size:12px}.feed th,.feed td{text-align:left;border-bottom:1px solid color-mix(in srgb, var(--mt-border) 55%, transparent);white-space:nowrap;font-family:var(--mt-mono);padding:7px 11px}.feed thead th{background:color-mix(in srgb, var(--mt-surface-2) 96%, transparent);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);color:var(--mt-text-dim);text-transform:uppercase;letter-spacing:.05em;z-index:1;font-size:10px;font-weight:600;position:sticky;top:0}.feed tbody tr{cursor:pointer;transition:background .12s}.feed tbody tr:hover{background:color-mix(in srgb, var(--mt-accent) 9%, transparent)}.feed tbody tr.is-err{background:color-mix(in srgb, var(--mt-bad) 9%, transparent)}.feed tbody tr.is-selected{background:color-mix(in srgb, var(--mt-accent) 16%, transparent)}.feed td.preview{white-space:nowrap;text-overflow:ellipsis;max-width:320px;color:var(--mt-text-dim);overflow:hidden}.feed td.num{text-align:right;color:var(--mt-text-dim);font-variant-numeric:tabular-nums}.status-ok{color:var(--mt-good)}.status-err{color:var(--mt-bad)}.reason-preview{color:color-mix(in srgb, var(--mt-warn,#f59e0b) 85%, var(--mt-text));font-style:italic}.reason-preview:before{content:"⚑ ";font-style:normal}.kv__k--reason{color:var(--mt-warn,#f59e0b)}.kv__v--reason{color:var(--mt-text);font-style:italic}.feedwrap{border:1px solid var(--mt-border);border-radius:var(--mt-radius);max-height:60vh;overflow:auto}.feed-empty{border:1px dashed var(--mt-border);border-radius:var(--mt-radius);text-align:center;justify-items:center;gap:8px;padding:54px 16px;display:grid}.feed-empty__icon{opacity:.8;font-size:28px}.feed-empty__title{color:var(--mt-text);margin:0;font-weight:600}.feed-empty__sub{max-width:460px;color:var(--mt-text-faint);margin:0;font-size:12px}.feed-empty .btn{margin-top:6px}.feed-empty__pulse{background:var(--mt-text-faint);border-radius:50%;width:12px;height:12px}.feed-empty__pulse.is-on{background:var(--mt-good);animation:1.6s ease-out infinite feed-pulse}@keyframes feed-pulse{0%{box-shadow:0 0 0 0 color-mix(in srgb, var(--mt-good) 55%, transparent)}70%{box-shadow:0 0 0 12px color-mix(in srgb, var(--mt-good) 0%, transparent)}to{box-shadow:0 0 0 0 color-mix(in srgb, var(--mt-good) 0%, transparent)}}.conn{display:block;overflow:visible}.conn-grid{fill:none;stroke:var(--mt-border);stroke-opacity:.7;stroke-dasharray:2 7}.conn-sonar{fill:none;stroke:var(--mt-accent);stroke-width:1.5px;opacity:0;animation:3.3s ease-out infinite conn-sonar}@keyframes conn-sonar{0%{r:30px;opacity:.5}to{r:150px;opacity:0}}.conn-link{fill:none;stroke-width:1.6px;opacity:.38}.conn-flow{fill:none;stroke-width:2.4px;stroke-linecap:round;stroke-dasharray:2 13;opacity:.9;filter:drop-shadow(0 0 4px);animation:1.05s linear infinite conn-flow}@keyframes conn-flow{to{stroke-dashoffset:-60px}}.conn-packet{filter:drop-shadow(0 0 6px var(--teal))}.conn-hub-glow{fill:var(--mt-accent);opacity:.22;filter:blur(11px)}.conn-hub-ring{fill:none;stroke:var(--mt-accent);stroke-width:1.4px;stroke-dasharray:4 9;opacity:.7;transform-box:fill-box;transform-origin:50%;animation:15s linear infinite conn-rot}@keyframes conn-rot{to{transform:rotate(360deg)}}.conn-node-halo{fill:none;stroke-width:2px;transform-box:fill-box;transform-origin:50%;animation:2.4s ease-in-out infinite conn-halo}@keyframes conn-halo{0%,to{opacity:.45;transform:scale(1)}50%{opacity:0;transform:scale(1.55)}}.conn-blink{animation:1.6s ease-in-out infinite conn-blink}@keyframes conn-blink{0%,to{opacity:1}50%{opacity:.35}}.conn-node text{pointer-events:none}@media (prefers-reduced-motion:reduce){.conn-sonar,.conn-flow,.conn-hub-ring,.conn-node-halo,.conn-blink,.conn-packet animateMotion{animation:none}.conn-sonar{display:none}}.dev-grid{grid-template-columns:1fr;align-content:start;gap:12px;display:grid}@media (width>=600px) and (width<=819px){.dev-grid{grid-template-columns:1fr 1fr}}.dev-toolbar{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.dev-filters{border:1px solid var(--mt-border);background:color-mix(in srgb, var(--mt-surface-2) 70%, transparent);border-radius:999px;gap:4px;padding:3px;display:inline-flex}.dev-fbtn{appearance:none;color:var(--mt-text-dim);font:11px var(--mt-mono);cursor:pointer;white-space:nowrap;background:0 0;border:0;border-radius:999px;padding:5px 12px;transition:background .18s,color .18s}.dev-fbtn:hover{color:var(--mt-text)}.dev-fbtn.is-active{background:var(--grad);color:var(--mt-bg);font-weight:600}.dev-grid-wide{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));align-content:start;gap:14px;display:grid}.dev-collapse{border:1px solid var(--mt-border);border-radius:var(--mt-radius);background:var(--glass);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);padding:6px 18px 18px}.dev-collapse>summary{cursor:pointer;text-transform:uppercase;letter-spacing:.07em;color:var(--mt-text-dim);align-items:center;gap:8px;padding:12px 0;font-size:12px;font-weight:600;list-style:none;display:flex}.dev-collapse>summary::-webkit-details-marker{display:none}.dev-collapse>summary:before{content:"▸";transition:transform .2s var(--ease);color:var(--teal);display:inline-block}.dev-collapse[open]>summary:before{transform:rotate(90deg)}.dev-card .dot--status{width:7px;height:7px}.dev-card{transition:transform .3s var(--ease), border-color .3s var(--ease);gap:8px;padding:14px 15px;display:grid}.dev-card:hover{border-color:color-mix(in srgb, var(--teal) 35%, var(--mt-border));transform:translateY(-2px)}.dev-card__top{align-items:center;gap:8px;display:flex}.dev-card__name{font-family:var(--mt-mono);font-size:13px;font-weight:500}.dev-card .dot{border-radius:50%;flex:none;width:9px;height:9px}.dev-card__meta{font-family:var(--mt-mono);color:var(--mt-text-dim);grid-template-columns:auto 1fr;gap:3px 12px;font-size:11px;display:grid}.dev-card__meta b{color:var(--mt-text);overflow-wrap:anywhere;font-weight:500}.dev-card[data-disabled]{opacity:.5;filter:grayscale(.4)}.dev-toggle{cursor:pointer;flex:none;width:32px;height:18px;display:inline-block;position:relative}.dev-toggle input{opacity:0;width:0;height:0;position:absolute}.dev-toggle__slider{background:#3f3f46;border-radius:9px;transition:background .2s;position:absolute;inset:0}.dev-toggle__slider:before{content:"";background:#a1a1aa;border-radius:50%;width:14px;height:14px;transition:transform .2s,background .2s;position:absolute;top:2px;left:2px}.dev-toggle input:checked+.dev-toggle__slider{background:#0d9488}.dev-toggle input:checked+.dev-toggle__slider:before{background:#f0fdfa;transform:translate(14px)}details.cfg>summary{cursor:pointer;color:var(--mt-text-dim);font-family:var(--mt-mono);-webkit-user-select:none;user-select:none;padding:4px 0;font-size:12px}.badge{font-family:var(--mt-mono);text-transform:uppercase;letter-spacing:.06em;color:var(--mt-bg);background:var(--grad);border-radius:999px;padding:1px 7px;font-size:9px;font-weight:600}.overlay{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);z-index:10;background:#0000009e;justify-content:flex-end;display:flex;position:fixed;inset:0}.sheet{background:color-mix(in srgb, var(--mt-surface) 96%, var(--mt-bg));border-left:1px solid color-mix(in srgb, var(--teal) 28%, var(--mt-border));align-content:start;gap:12px;width:min(580px,100%);height:100%;padding:18px;display:grid;overflow:auto;box-shadow:-24px 0 60px #00000080}.sheet__hd{align-items:center;gap:10px;display:flex}.sheet__hd h3{font-family:var(--mt-mono);margin:0;font-size:15px}pre.body{background:var(--mt-bg);border:1px solid var(--mt-border);border-radius:var(--mt-radius-sm);font-family:var(--mt-mono);white-space:pre-wrap;word-break:break-word;max-height:40vh;margin:0;padding:12px;font-size:12px;overflow:auto}pre.body.json{color:#a1a1aa}pre.body.json .j-key{color:#7dd3fc}pre.body.json .j-str{color:#86efac}pre.body.json .j-num{color:#fcd34d}pre.body.json .j-bool{color:#d8b4fe}pre.body.json .j-null{color:#71717a}pre.body.ros{color:#c9c9d1}pre.body.ros .ros-key{color:#7dd3fc}pre.body.ros .ros-str{color:#86efac}pre.body.ros .ros-num{color:#fcd34d}pre.body.ros .ros-ip{color:#5eead4}pre.body.ros .ros-mac{color:#c4b5fd}pre.body.ros .ros-good{color:#4ade80;font-weight:500}pre.body.ros .ros-bad{color:#f87171;font-weight:500}pre.body.ros .ros-bool{color:#d8b4fe}pre.body.ros .ros-dim{color:#8b8b94}pre.body.ros .ros-comment{color:#6b7280;font-style:italic}.muted{color:var(--mt-text-faint);font-family:var(--mt-mono);font-size:11px}.btn-danger{color:var(--mt-bad);border-color:color-mix(in srgb, var(--mt-bad) 45%, var(--mt-border));background:color-mix(in srgb, var(--mt-bad) 12%, transparent)}.btn-danger:hover{background:color-mix(in srgb, var(--mt-bad) 22%, transparent);border-color:var(--mt-bad)}.btn:hover{border-color:color-mix(in srgb, var(--page-accent) 55%, var(--mt-border));background:color-mix(in srgb, var(--page-accent) 10%, var(--mt-surface-2))}.btn.is-active{border-color:color-mix(in srgb, var(--page-accent) 70%, var(--mt-border));color:var(--page-accent);background:color-mix(in srgb, var(--page-accent) 12%, var(--mt-surface-2))}:where(button,a,input,select,textarea,[tabindex]):focus-visible{outline:2px solid color-mix(in srgb, var(--page-accent) 70%, transparent);outline-offset:2px;border-radius:var(--mt-radius-sm)}.conn-legend{font-family:var(--mt-mono);color:var(--mt-text-dim);flex-wrap:wrap;justify-content:center;gap:16px;margin-top:8px;font-size:11px;display:flex}.conn-legend span{align-items:center;gap:6px;display:inline-flex}.conn-legend i{border-radius:3px;width:10px;height:10px;display:inline-block}.conn-chevron{fill:none;stroke-width:1.6px;stroke-linecap:round;stroke-linejoin:round;opacity:.85}.conn-errrow{cursor:pointer;border-radius:6px}.conn-errrow:hover{background:color-mix(in srgb, var(--mt-bad) 12%, transparent)}@media (prefers-reduced-motion:reduce){.conn-chevron{opacity:.6}}.health-grid{grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:14px;display:grid}.health-card{flex-direction:column;gap:10px;padding:16px;display:flex}.health-card--na{justify-content:center;gap:6px;min-height:120px}.health-card__hd{align-items:center;gap:8px;display:flex}.health-card__sub{font-family:var(--mt-mono);margin-top:-4px;font-size:11px}.health-card__gauges{justify-content:space-around;gap:14px;display:flex}.gauge{flex-direction:column;align-items:center;gap:2px;display:flex}.gauge__label{font-family:var(--mt-mono);letter-spacing:.06em;color:var(--mt-text-dim);font-size:10px}.health-card__charts{gap:8px;display:grid}.health-chart{gap:2px;display:grid}.health-chart__k{font-family:var(--mt-mono);text-transform:uppercase;letter-spacing:.05em;color:var(--mt-text-dim);font-size:10px}.spark{background:color-mix(in srgb, var(--mt-surface-2) 60%, transparent);border-radius:6px;display:block}.spark--empty{font-family:var(--mt-mono);color:var(--mt-text-faint);text-align:center;padding:12px 6px;font-size:11px}.health-card__foot{font-family:var(--mt-mono);font-size:11px}.topo{flex-direction:column;gap:10px;display:flex}.topo svg{background:radial-gradient(circle at 50% 45%, color-mix(in srgb, var(--mt-accent) 8%, transparent), transparent 60%);border-radius:var(--mt-radius-sm);width:100%;display:block}.topo-edge{stroke:color-mix(in srgb, var(--mt-text-faint) 55%, transparent);stroke-width:1.4px}.topo-edge.is-dashed{stroke:color-mix(in srgb, var(--mt-accent) 60%, transparent);stroke-dasharray:4 4}.topo-node{cursor:pointer}.topo-node rect{fill:var(--mt-surface-2);stroke-width:1.5px;transition:filter .15s}.topo-node.is-neighbor rect{fill:color-mix(in srgb, var(--mt-surface) 70%, transparent);stroke-dasharray:4 3}.topo-node.is-onboard rect{stroke-dasharray:4 3}.topo-node:hover rect,.topo-node.is-picked rect{filter:drop-shadow(0 0 6px color-mix(in srgb, var(--mt-accent) 55%, transparent))}.topo-node.is-picked rect{stroke-width:2.2px}.topo-label{fill:var(--mt-text);font:600 12px var(--mt-mono)}.topo-sub{fill:var(--mt-text-dim);font:10px var(--mt-mono)}.topo-bar-bg{fill:color-mix(in srgb, var(--mt-text-faint) 35%, transparent)}.topo-foot{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.topo-foot .legend{margin-top:0}.topo-pop{background:var(--mt-surface);border:1px solid var(--mt-border);border-radius:var(--mt-radius-sm);flex:1;min-width:280px;max-width:460px;padding:12px}.topo-pop__hd{align-items:center;gap:8px;margin-bottom:6px;display:flex}.topo-pop__hd .muted{font-size:11px}.topo-stub{background:var(--mt-bg);border:1px solid var(--mt-border);border-radius:var(--mt-radius-sm);font:11px/1.5 var(--mt-mono);color:var(--mt-text);white-space:pre;margin:0 0 8px;padding:8px 10px;overflow-x:auto}.topo-btn{font:11px var(--mt-mono);color:var(--mt-text);background:var(--mt-surface-2);border:1px solid var(--mt-border);border-radius:var(--mt-radius-sm);cursor:pointer;padding:5px 10px;transition:border-color .15s,color .15s}.topo-btn:hover{border-color:var(--mt-accent);color:var(--mt-accent)}.cfgstudio{flex-direction:column;gap:10px;display:flex}.cfg-toolbar{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.cfg-status{font:11px var(--mt-mono);border:1px solid var(--mt-border);border-radius:999px;padding:4px 10px}.cfg-status.is-ok{color:var(--mt-good);border-color:color-mix(in srgb, var(--mt-good) 45%, var(--mt-border));background:color-mix(in srgb, var(--mt-good) 10%, transparent)}.cfg-status.is-bad{color:var(--mt-bad);border-color:color-mix(in srgb, var(--mt-bad) 45%, var(--mt-border));background:color-mix(in srgb, var(--mt-bad) 10%, transparent)}.cfg-select{font:11px var(--mt-mono);color:var(--mt-text);background:var(--mt-surface-2);border:1px solid var(--mt-border);border-radius:var(--mt-radius-sm);padding:5px 9px}.cfg-save{border-color:color-mix(in srgb, var(--mt-accent) 55%, var(--mt-border));color:var(--mt-accent)}.backup-path{align-items:center;gap:8px;max-width:min(60vw,520px);display:inline-flex}.backup-path>span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.backup-path-input{font:11px var(--mt-mono);color:var(--mt-text);background:var(--mt-surface-2);border:1px solid color-mix(in srgb, var(--mt-accent) 45%, var(--mt-border));border-radius:var(--mt-radius-sm);width:min(48vw,380px);padding:5px 9px}.backup-opts{flex-wrap:wrap;align-items:center}.backup-opt{font:11px var(--mt-mono);color:var(--mt-text-dim);background:var(--mt-surface-2);border:1px solid var(--mt-border);cursor:pointer;-webkit-user-select:none;user-select:none;border-radius:100px;align-items:center;gap:6px;padding:5px 11px 5px 9px;transition:border-color .18s,color .18s,background .18s;display:inline-flex}.backup-opt input{accent-color:var(--mt-accent);cursor:pointer;margin:0}.backup-opt[data-on]{color:var(--mt-text);border-color:color-mix(in srgb, var(--mt-accent) 55%, var(--mt-border));background:color-mix(in srgb, var(--mt-accent) 12%, var(--mt-surface-2))}.backup-opt[data-disabled]{opacity:.45;cursor:not-allowed}.backup-opt[data-disabled] input{cursor:not-allowed}.linkish{font:inherit;color:var(--mt-accent);cursor:pointer;white-space:nowrap;background:0 0;border:none;padding:0}.linkish:hover{text-decoration:underline}.cfg-msg{font:12px var(--mt-mono);color:var(--mt-text-dim)}.cfg-banner{border-radius:var(--mt-radius-sm);background:color-mix(in srgb, var(--mt-warn) 12%, var(--mt-surface));border:1px solid color-mix(in srgb, var(--mt-warn) 45%, var(--mt-border));flex-wrap:wrap;align-items:center;gap:8px;padding:10px 13px;font-size:12px;display:flex}.cfg-count{font-family:var(--mt-mono);color:var(--mt-warn);font-weight:700}.cfg-warn{color:var(--mt-warn);font-size:11px}.cfg-editor{border:1px solid var(--mt-border);border-radius:var(--mt-radius-sm);background:var(--mt-bg);max-height:420px;display:flex;overflow:hidden}.cfg-gutter{text-align:right;color:var(--mt-text-faint);background:var(--mt-surface-2);font:12px/1.5 var(--mt-mono);-webkit-user-select:none;user-select:none;min-width:38px;margin:0;padding:10px 8px;overflow:hidden}.cfg-ta-wrap{flex:1;position:relative}.cfg-hl,.cfg-ta{box-sizing:border-box;font:12px/1.5 var(--mt-mono);white-space:pre;tab-size:2;letter-spacing:normal;border:0;margin:0;padding:10px 12px}.cfg-hl{z-index:0;pointer-events:none;color:var(--mt-text-dim);position:absolute;inset:0;overflow:hidden}.cfg-ta{z-index:1;resize:vertical;color:#0000;width:100%;height:400px;caret-color:var(--mt-accent);background:0 0;outline:none;position:relative}.cfg-ta::selection{background:color-mix(in srgb, var(--mt-accent) 35%, transparent)}.cfg-hl .j-key{color:#7dd3fc}.cfg-hl .j-str{color:#86efac}.cfg-hl .j-num{color:#fcd34d}.cfg-hl .j-bool{color:#d8b4fe}.cfg-hl .j-null{color:#71717a}.cfg-ac{z-index:5;background:var(--mt-surface);border:1px solid var(--mt-accent);border-radius:var(--mt-radius-sm);min-width:150px;max-height:184px;position:absolute;overflow-y:auto;box-shadow:0 8px 24px #00000080}.cfg-ac-item{font:12px var(--mt-mono);color:var(--mt-text-dim);cursor:pointer;padding:5px 11px}.cfg-ac-item.is-sel{background:color-mix(in srgb, var(--mt-accent) 22%, transparent);color:var(--mt-text)}.cfg-chips{flex-wrap:wrap;gap:6px;display:flex}.cfg-chip{font:11px var(--mt-mono);border:1px solid var(--mt-border);border-radius:999px;padding:4px 10px}.cfg-chip.is-ok{color:var(--mt-good);border-color:color-mix(in srgb, var(--mt-good) 45%, var(--mt-border))}.cfg-chip.is-bad{color:var(--mt-bad);border-color:color-mix(in srgb, var(--mt-bad) 45%, var(--mt-border))}.cfg-errors{flex-direction:column;gap:3px;display:flex}.cfg-err{font:11px var(--mt-mono);color:var(--mt-bad)}.cfg-err code{color:var(--mt-warn)}.cfg-preview{border:1px solid var(--mt-border);border-radius:var(--mt-radius-sm);overflow:hidden}.cfg-preview__hd{background:var(--mt-surface-2);align-items:center;gap:8px;padding:9px 13px;font-size:12px;display:flex}.cfg-diff{max-height:320px;font:11px/1.5 var(--mt-mono);color:var(--mt-text-dim);background:var(--mt-bg);margin:0;padding:10px 12px;overflow:auto}.cfg-diff .d-add{color:var(--mt-good)}.cfg-diff .d-del{color:var(--mt-bad)}.cfg-diff .d-hunk{color:var(--mt-accent)}.cap-idle{font-size:13px;line-height:1.5}.cap-idle code{color:var(--mt-accent);font-family:var(--mt-mono)}.cap{flex-direction:column;gap:12px;display:flex}.cap-bar{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.cap-dot{background:var(--mt-text-faint);border-radius:999px;width:9px;height:9px}.cap-dot.is-on{background:var(--mt-good);box-shadow:0 0 0 4px color-mix(in srgb, var(--mt-good) 22%, transparent);animation:1.6s ease-out infinite feed-pulse}.cap-cols{grid-template-columns:220px 1fr;gap:12px;display:grid}@media (width<=720px){.cap-cols{grid-template-columns:1fr}}.cap-side{flex-direction:column;gap:5px;display:flex}.cap-h{text-transform:uppercase;letter-spacing:.05em;color:var(--mt-text-dim);font-size:11px}.cap-pbar{font:11px var(--mt-mono);grid-template-columns:52px 1fr 34px;align-items:center;gap:6px;display:grid}.cap-ptrack{background:var(--mt-surface-2);border-radius:999px;height:8px;overflow:hidden}.cap-ptrack i{border-radius:999px;height:100%;display:block}.cap-pn{text-align:right;color:var(--mt-text-dim)}.cap-talker{font:11px var(--mt-mono);color:var(--mt-text-dim);justify-content:space-between;display:flex}.cap-talker b{color:var(--mt-text)}.cap-list{border:1px solid var(--mt-border);border-radius:var(--mt-radius-sm);background:var(--mt-bg);height:360px;font:11px/1.6 var(--mt-mono);overflow-y:auto}.cap-row{white-space:nowrap;grid-template-columns:90px 64px 48px 1fr;gap:8px;padding:1px 10px;display:grid;overflow:hidden}.cap-row:nth-child(odd){background:color-mix(in srgb, var(--mt-surface) 40%, transparent)}.cap-tt{color:var(--mt-text-faint)}.cap-proto{font-weight:600}.cap-len{color:var(--mt-text-dim);text-align:right}.cap-info{color:var(--mt-text);text-overflow:ellipsis;overflow:hidden}.plan-input{resize:vertical;box-sizing:border-box;border:1px solid var(--mt-border);border-radius:var(--mt-radius-sm);background:var(--mt-bg);width:100%;min-height:160px;color:var(--mt-text);font:12px/1.6 var(--mt-mono);outline:none;padding:12px 14px}.plan-input:focus{border-color:color-mix(in srgb, var(--teal) 55%, var(--mt-border))}.plan-input::placeholder{color:var(--mt-text-faint)}.plan-steps{flex-direction:column;gap:6px;margin-top:12px;display:flex}.plan-step{border:1px solid var(--mt-border);border-radius:var(--mt-radius-sm);background:color-mix(in srgb, var(--mt-surface-2) 50%, transparent);font:12px var(--mt-mono);border-left-width:3px;align-items:center;gap:10px;padding:8px 12px;display:flex}.plan-step code{color:var(--mt-text);overflow-wrap:anywhere;flex:1}.plan-step.risk-high{border-left-color:var(--mt-bad)}.plan-step.risk-medium{border-left-color:var(--mt-warn)}.plan-step.risk-low{border-left-color:var(--mt-good)}.plan-op{background:color-mix(in srgb, var(--teal) 18%, transparent);width:18px;height:18px;color:var(--teal);border-radius:5px;flex:none;place-items:center;font-weight:700;display:grid}.plan-risk{text-transform:uppercase;letter-spacing:.05em;color:var(--mt-text-dim);font-size:10px}.plan-lock{color:var(--mt-bad);border:1px solid color-mix(in srgb, var(--mt-bad) 45%, var(--mt-border));border-radius:999px;padding:1px 7px;font-size:10px}.cfgver-cp{align-items:center;gap:8px;display:inline-flex}.cfgver{gap:0;margin:0;padding:0 0 0 6px;list-style:none;display:grid}.cfgver__row{border-radius:var(--mt-radius-sm);transition:background .18s var(--ease);grid-template-columns:24px minmax(0,1fr) auto;align-items:start;gap:12px;padding:14px 10px;display:grid;position:relative}.cfgver__row:hover{background:color-mix(in srgb, var(--mt-text) 5%, transparent)}.cfgver__row:before{content:"";background:color-mix(in srgb, var(--mt-border) 70%, var(--mt-text));border-radius:1px;width:2px;position:absolute;top:26px;bottom:-18px;left:21px}.cfgver__row:last-child:before{display:none}.cfgver__dot{border:2.5px solid var(--mt-border-strong);background:var(--mt-surface);z-index:1;border-radius:999px;justify-self:center;width:13px;height:13px;margin-top:4px;position:relative}.cfgver__row+.cfgver__row{border-top:1px solid color-mix(in srgb, var(--mt-border) 40%, transparent)}.cfgver__row.is-head .cfgver__dot{border-color:var(--page-accent);background:var(--page-accent);width:14px;height:14px;box-shadow:0 0 0 4px color-mix(in srgb, var(--page-accent) 25%, transparent), 0 0 8px color-mix(in srgb, var(--page-accent) 35%, transparent)}.cfgver__main{min-width:0}.cfgver__line{flex-wrap:wrap;align-items:center;gap:9px;font-size:12.5px;display:flex}.cfgver__kind{font-family:var(--mt-mono);text-transform:uppercase;letter-spacing:.05em;border:1px solid var(--mt-border);color:var(--mt-text-dim);border-radius:999px;padding:2px 8px;font-size:10px}.cfgver__kind--checkpoint{color:var(--amber);border-color:color-mix(in srgb, var(--amber) 45%, var(--mt-border));background:color-mix(in srgb, var(--amber) 12%, transparent)}.cfgver__label{color:var(--mt-text);font-weight:600}.cfgver__time{font-family:var(--mt-mono);color:var(--mt-text-dim);font-size:11.5px}.cfgver__cur{font-family:var(--mt-mono);text-transform:uppercase;letter-spacing:.05em;color:var(--page-accent);font-size:10px;font-weight:600}.cfgver__same{color:var(--mt-text-faint);font-size:11.5px}.cfgver__drift{font-family:var(--mt-mono);align-items:baseline;gap:7px;font-size:11.5px;display:inline-flex}.cfgver__drift .add{color:var(--mt-good)}.cfgver__drift .rem{color:var(--mt-bad)}.cfgver__diff{margin-top:9px}.cfgver__diff pre.body{max-height:280px;margin:0;overflow:auto}.cfgver__actions{flex:none;align-items:center;gap:6px;margin-top:1px;display:inline-flex}.cfgver__del{color:var(--mt-text-faint);padding-left:8px;padding-right:8px}.cfgver__del:hover{color:var(--mt-bad);border-color:color-mix(in srgb, var(--mt-bad) 45%, var(--mt-border))}.fguide{gap:18px;display:grid}.fguide__sechd{font-family:var(--mt-mono);text-transform:uppercase;letter-spacing:.09em;color:var(--page-accent);margin:0 0 9px;font-size:11px}.fguide__list{gap:9px;display:grid}.fguide__item{border:1px solid var(--mt-border);border-radius:var(--mt-radius-sm);background:color-mix(in srgb, var(--mt-surface-2) 45%, transparent);transition:border-color .18s, transform .12s var(--ease);padding:11px 13px}.fguide__item:hover{border-color:color-mix(in srgb, var(--page-accent) 40%, var(--mt-border));transform:translate(2px)}.fguide__top{flex-wrap:wrap;align-items:baseline;gap:10px;display:flex}.fguide__path{font-family:var(--mt-mono);color:var(--mt-text);font-size:12.5px;font-weight:500}.fguide__type{font-family:var(--mt-mono);color:var(--page-accent);background:color-mix(in srgb, var(--page-accent) 13%, transparent);border-radius:999px;padding:1px 7px;font-size:10.5px}.fguide__req{font-family:var(--mt-mono);text-transform:uppercase;letter-spacing:.05em;color:var(--mt-bad);font-size:10px}.fguide__def{color:var(--mt-text-faint);font-size:11px}.fguide__def code{color:var(--mt-text-dim)}.fguide__desc{color:var(--mt-text-dim);margin:6px 0 0;font-size:12.5px;line-height:1.5}.fguide__enum{flex-wrap:wrap;gap:6px;margin-top:7px;display:flex}.fguide__enum code{font-family:var(--mt-mono);border:1px solid var(--mt-border);color:var(--mt-text-dim);border-radius:6px;padding:1px 7px;font-size:11px}.copybtn{position:relative}.copybtn.is-copied{color:var(--page-accent);border-color:color-mix(in srgb, var(--page-accent) 55%, var(--mt-border))}.copybtn__tip{background:var(--page-accent);color:#0a0a0a;font-family:var(--mt-sans);white-space:nowrap;opacity:0;pointer-events:none;transition:opacity .16s, transform .16s var(--ease);z-index:50;border-radius:6px;padding:3px 9px;font-size:11px;font-weight:600;position:absolute;bottom:calc(100% + 8px);left:50%;transform:translate(-50%,4px)}.copybtn__tip:after{content:"";border:4px solid #0000;border-top-color:var(--page-accent);position:absolute;top:100%;left:50%;transform:translate(-50%)}.copybtn.is-copied .copybtn__tip{opacity:1;transform:translate(-50%)}.iconbtn{border:1px solid var(--mt-border);background:var(--mt-surface);width:26px;height:26px;color:var(--mt-text-dim);cursor:pointer;border-radius:7px;place-items:center;padding:0;transition:color .16s,border-color .16s,background .16s;display:inline-grid}.iconbtn:hover{color:var(--page-accent);border-color:color-mix(in srgb, var(--page-accent) 50%, var(--mt-border));background:color-mix(in srgb, var(--page-accent) 10%, var(--mt-surface))}.copybtn--icon.is-copied{color:var(--page-accent);border-color:color-mix(in srgb, var(--page-accent) 55%, var(--mt-border))}.sheet__tool{align-items:center;gap:9px;display:inline-flex}.chart{width:100%;font-family:var(--mt-mono)}.chart .recharts-cartesian-grid line{stroke:color-mix(in srgb, var(--mt-border) 80%, transparent)}.chart .recharts-text,.chart text{fill:var(--mt-text-faint)}.chart .recharts-surface:focus,.chart svg:focus{outline:none}.chart-tip{background:color-mix(in srgb, var(--mt-surface) 96%, transparent);border:1px solid var(--mt-border-strong);border-radius:var(--mt-radius-sm);font-family:var(--mt-mono);min-width:120px;padding:8px 10px;font-size:11.5px;box-shadow:0 8px 24px #00000073}.chart-tip__label{color:var(--mt-text-dim);margin-bottom:5px;font-size:10.5px}.chart-tip__row{align-items:center;gap:7px;display:flex}.chart-tip__dot{border-radius:3px;flex:none;width:9px;height:9px}.chart-tip__name{color:var(--mt-text-dim);text-transform:capitalize}.chart-tip__val{color:var(--mt-text);font-variant-numeric:tabular-nums;margin-left:auto;font-weight:500}.chart--donut{flex-direction:column;flex:1;justify-content:center;align-items:center;gap:12px;display:flex}.chart-donut__svg{width:100%;max-width:200px}.chart-legend{font-family:var(--mt-mono);color:var(--mt-text-dim);flex-wrap:wrap;justify-content:center;gap:6px 14px;font-size:11px;display:flex}.chart-legend span{align-items:center;gap:6px;display:inline-flex}.chart-legend i{border-radius:3px;width:9px;height:9px}.chart-legend b{color:var(--mt-text);font-weight:500}.chart--spark{position:relative}.chart-spark__last{font-family:var(--mt-mono);z-index:1;font-size:10px;font-weight:600;position:absolute;top:0;right:2px}.gauge__radial{place-items:center;width:72px;height:72px;display:grid;position:relative}.gauge__pct{font-family:var(--mt-mono);pointer-events:none;place-items:center;font-size:13px;font-weight:700;display:grid;position:absolute;inset:0}.geist-btn{font-family:var(--mt-sans);border-radius:var(--mt-radius-sm);border:1px solid var(--mt-border-strong);background:var(--mt-surface);color:var(--mt-text);cursor:pointer;white-space:nowrap;transition:background .16s var(--ease), border-color .16s, color .16s, transform .1s var(--ease), box-shadow .16s;justify-content:center;align-items:center;gap:7px;font-size:13px;font-weight:500;line-height:1;display:inline-flex}.geist-btn--sm{padding:6px 11px;font-size:12px}.geist-btn--md{padding:9px 15px}.geist-btn:hover{border-color:var(--mt-text);transform:translateY(-1px)}.geist-btn:active{transform:translateY(0)}.geist-btn:disabled{opacity:.5;cursor:not-allowed;transform:none}.geist-btn__icon{display:inline-flex}.geist-btn--accent{background:var(--page-accent);border-color:var(--page-accent);color:#0a0a0a;font-weight:600}.geist-btn--accent:hover{box-shadow:0 4px 16px color-mix(in srgb, var(--page-accent) 40%, transparent);border-color:var(--page-accent)}.geist-btn--success{border-color:color-mix(in srgb, var(--mt-good) 55%, var(--mt-border));color:var(--mt-good)}.geist-btn--warning{border-color:color-mix(in srgb, var(--mt-warn) 55%, var(--mt-border));color:var(--mt-warn)}.geist-btn--error{border-color:color-mix(in srgb, var(--mt-bad) 55%, var(--mt-border));color:var(--mt-bad)}.geist-btn--error:hover{background:color-mix(in srgb, var(--mt-bad) 14%, var(--mt-surface));border-color:var(--mt-bad)}.geist-btn--secondary{color:var(--mt-text-dim);border-color:var(--mt-border)}.geist-btn--ghost{background:0 0;border-color:#0000}.geist-btn--ghost:hover{background:color-mix(in srgb, var(--mt-text) 7%, transparent);border-color:var(--mt-border)}.geist-note{border-radius:var(--mt-radius-sm);border:1px solid var(--mt-border);background:var(--mt-surface);color:var(--mt-text-dim);padding:11px 14px;font-size:13px;line-height:1.55}.geist-note__label{color:var(--mt-text);text-transform:capitalize}.geist-note--secondary{border-color:color-mix(in srgb, var(--page-accent) 30%, var(--mt-border));background:color-mix(in srgb, var(--page-accent) 7%, var(--mt-surface))}.geist-note--success{border-color:color-mix(in srgb, var(--mt-good) 40%, var(--mt-border));background:color-mix(in srgb, var(--mt-good) 8%, var(--mt-surface))}.geist-note--success .geist-note__label{color:var(--mt-good)}.geist-note--warning{border-color:color-mix(in srgb, var(--mt-warn) 40%, var(--mt-border));background:color-mix(in srgb, var(--mt-warn) 8%, var(--mt-surface))}.geist-note--warning .geist-note__label{color:var(--mt-warn)}.geist-note--error{border-color:color-mix(in srgb, var(--mt-bad) 40%, var(--mt-border));background:color-mix(in srgb, var(--mt-bad) 8%, var(--mt-surface))}.geist-note--error .geist-note__label{color:var(--mt-bad)}.geist-badge{font-family:var(--mt-mono);border:1px solid var(--mt-border);background:var(--mt-surface-2);color:var(--mt-text-dim);border-radius:999px;align-items:center;gap:5px;padding:2px 8px;font-size:10.5px;font-weight:500;display:inline-flex}.geist-badge--accent{color:var(--page-accent);border-color:color-mix(in srgb, var(--page-accent) 40%, var(--mt-border));background:color-mix(in srgb, var(--page-accent) 12%, transparent)}.geist-badge--success{color:var(--mt-good);border-color:color-mix(in srgb, var(--mt-good) 40%, var(--mt-border));background:color-mix(in srgb, var(--mt-good) 10%, transparent)}.geist-badge--warning{color:var(--mt-warn);border-color:color-mix(in srgb, var(--mt-warn) 40%, var(--mt-border))}.geist-badge--error{color:var(--mt-bad);border-color:color-mix(in srgb, var(--mt-bad) 40%, var(--mt-border));background:color-mix(in srgb, var(--mt-bad) 10%, transparent)}.geist-dot{background:var(--mt-text-faint);border-radius:999px;flex:none;width:9px;height:9px;display:inline-block}.geist-dot--success{background:var(--mt-good)}.geist-dot--warning{background:var(--mt-warn)}.geist-dot--error{background:var(--mt-bad)}.geist-dot--accent{background:var(--page-accent)}.geist-dot.is-pulse{box-shadow:0 0 0 0 color-mix(in srgb, currentColor 60%, transparent);animation:1.8s infinite geist-pulse}@keyframes geist-pulse{0%{box-shadow:0 0 0 0 color-mix(in srgb, var(--mt-good) 55%, transparent)}70%{box-shadow:0 0 0 7px #0000}to{box-shadow:0 0 #0000}}.geist-spinner{width:16px;height:16px;display:inline-block;position:relative}.geist-spinner--sm{width:13px;height:13px}.geist-spinner span{transform-origin:50% 178%;opacity:.15;background:currentColor;border-radius:2px;width:8%;height:28%;animation:1.2s linear infinite geist-spin;position:absolute;top:0;left:46%}@keyframes geist-spin{0%{opacity:1}to{opacity:.15}}.geist-input,.geist-select{font-family:var(--mt-mono);color:var(--mt-text);background:var(--mt-surface);border:1px solid var(--mt-border);border-radius:var(--mt-radius-sm);padding:8px 11px;font-size:12.5px;transition:border-color .16s,box-shadow .16s}.geist-input:focus,.geist-select:focus{border-color:var(--page-accent);box-shadow:0 0 0 3px color-mix(in srgb, var(--page-accent) 22%, transparent);outline:none}.geist-card{border:1px solid var(--mt-border);border-radius:var(--mt-radius);background:var(--mt-surface);padding:16px}.geist-card.is-hoverable{transition:border-color .18s, transform .18s var(--ease)}.geist-card.is-hoverable:hover{border-color:color-mix(in srgb, var(--page-accent) 40%, var(--mt-border));transform:translateY(-2px)}.geist-tooltip{display:inline-flex;position:relative}.geist-tooltip__pop{border-radius:var(--mt-radius-sm);background:var(--mt-surface);border:1px solid var(--mt-border-strong);color:var(--mt-text);font-family:var(--mt-mono);white-space:nowrap;opacity:0;pointer-events:none;transition:opacity .16s, transform .16s var(--ease);z-index:60;padding:6px 10px;font-size:11.5px;position:absolute;bottom:calc(100% + 8px);left:50%;transform:translate(-50%,4px);box-shadow:0 8px 24px #00000073}.geist-tooltip:hover .geist-tooltip__pop,.geist-tooltip:focus-visible .geist-tooltip__pop{opacity:1;transform:translate(-50%)}.clients-toolbar{align-items:center;gap:8px;display:flex}.clients-toolbar .geist-input{width:200px}.clients-counts{margin-bottom:10px;font-size:12px}.clients-error{margin-bottom:10px}.clients-table{flex-direction:column;gap:2px;display:flex}.clients-row{border-radius:var(--mt-radius-sm);cursor:pointer;grid-template-columns:120px 1.3fr 150px 80px 130px minmax(150px,190px) minmax(240px,auto);align-items:center;gap:10px;padding:8px 10px;font-size:13px;display:grid}.clients-row--head{cursor:default;color:var(--mt-text-faint);text-transform:uppercase;letter-spacing:.04em;font-size:11px}.clients-row:not(.clients-row--head):hover{background:var(--mt-surface-2)}.clients-row.is-selected{background:color-mix(in srgb, var(--page-accent) 14%, var(--mt-surface-2))}.clients-row.is-blocked .clients-ip,.clients-row.is-blocked .clients-name{color:var(--mt-text-faint);text-decoration:line-through}.clients-ip,.clients-name{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.clients-mac{color:var(--mt-text-dim);font-family:ui-monospace,SF Mono,Menlo,monospace;font-size:11.5px}.clients-badges{align-items:center;gap:6px;display:flex;overflow:hidden}.clients-actions,.clients-actions-h{justify-content:flex-end;gap:6px;display:flex}.clients-detail{border-top:1px solid var(--mt-border);margin-top:14px;padding-top:14px}.clients-detail__hd{flex-wrap:wrap;align-items:baseline;gap:12px;margin-bottom:10px;display:flex}.clients-detail__title{font-size:14px;font-weight:600}.clients-rates{font-variant-numeric:tabular-nums;gap:18px;margin-bottom:8px;display:flex}.clients-rates .rate{font-weight:600}.clients-rates .rate.rx{color:var(--lime)}.clients-rates .rate.tx{color:var(--amber)}.clients-chart{background:var(--mt-surface);border:1px solid var(--mt-border);border-radius:var(--mt-radius-sm);width:100%;max-width:520px;height:150px;display:block}.clients-chart .line{fill:none;stroke-width:2px}.clients-chart .rx.line{stroke:var(--lime)}.clients-chart .tx.line{stroke:var(--amber)}.clients-chart .rx.area{fill:color-mix(in srgb, var(--lime) 18%, transparent);stroke:none}.clients-chart .tx.area{fill:color-mix(in srgb, var(--amber) 14%, transparent);stroke:none}.clients-totals{font-variant-numeric:tabular-nums;margin-top:8px;font-size:12px}.clients-traffic{font-variant-numeric:tabular-nums;align-items:center;gap:4px;font-size:11px;display:flex;overflow:hidden}.clients-traffic__rates{white-space:nowrap;flex-direction:column;gap:0;min-width:48px;line-height:1.3;display:flex}.clients-traffic__rates .rx{color:var(--lime,#84cc16)}.clients-traffic__rates .tx{color:var(--amber,#f59e0b)}.mini-spark{background:#ffffff08;border-radius:3px;flex-shrink:0;width:80px;height:18px}.mini-spark .line{fill:none;stroke-width:1px;vector-effect:non-scaling-stroke}.mini-spark .rx.line{stroke:var(--lime,#84cc16)}.mini-spark .tx.line{stroke:var(--amber,#f59e0b)}.mini-spark .rx.area{fill:var(--lime,#84cc16);opacity:.18}.mini-spark .tx.area{fill:var(--amber,#f59e0b);opacity:.14}.clients-edit{border:1px solid var(--mt-border);border-radius:var(--mt-radius-sm);background:var(--mt-surface-2);flex-wrap:wrap;align-items:center;gap:8px;margin-top:14px;padding:10px 12px;display:flex}.clients-edit__label{color:var(--mt-text-dim);font-size:13px}.clients-edit .geist-input{width:220px}.aaa-tabs{border-bottom:1px solid var(--mt-border);flex-wrap:wrap;gap:4px;margin-bottom:14px;display:flex}.aaa-tab{appearance:none;color:var(--mt-text-dim);font:inherit;cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;margin-bottom:-1px;padding:7px 12px;font-size:13px}.aaa-tab:hover{color:var(--mt-text)}.aaa-tab.is-active{color:var(--mt-text);border-bottom-color:var(--page-accent)}.aaa-entity__toolbar{align-items:center;gap:10px;margin-bottom:12px;display:flex}.aaa-filter{width:200px}.aaa-error{margin-bottom:10px}.aaa-empty{padding:20px 4px}.aaa-table{flex-direction:column;gap:2px;display:flex}.aaa-table--scroll{overflow-x:auto}.aaa-row{border-radius:var(--mt-radius-sm);align-items:center;gap:10px;padding:8px 10px;font-size:13px;display:grid}.aaa-row--head{color:var(--mt-text-faint);text-transform:uppercase;letter-spacing:.04em;font-size:11px}.aaa-row:not(.aaa-row--head):hover{background:var(--mt-surface-2)}.aaa-row.is-off .aaa-cell{color:var(--mt-text-faint)}.aaa-row--sessions{grid-template-columns:repeat(9,minmax(90px,1fr));min-width:900px}.aaa-cell{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.aaa-actions,.aaa-actions-h{justify-content:flex-end;gap:6px;display:flex}.aaa-form,.aaa-singleton{border:1px solid var(--mt-border);border-radius:var(--mt-radius-sm);background:var(--mt-surface-2);margin-bottom:14px;padding:14px}.aaa-form__title,.aaa-singleton__title{margin-bottom:10px;font-size:13px;font-weight:600}.aaa-singleton__current{margin-bottom:12px;font-size:12px}.aaa-form__grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:10px 14px;display:grid}.aaa-field{flex-direction:column;gap:4px;display:flex}.aaa-field__label{color:var(--mt-text-dim);font-size:11.5px}.aaa-form__actions{align-items:center;gap:10px;margin-top:14px;display:flex}.aaa-settings{flex-direction:column;gap:8px;display:flex}.clients-limits{border-top:1px solid var(--mt-border);max-width:520px;margin-top:14px;padding-top:12px}.clients-limits__hd{align-items:baseline;gap:12px;margin-bottom:8px;display:flex}.clients-limits__label{font-size:13px;font-weight:600}.clients-limits__row{flex-wrap:wrap;align-items:flex-end;gap:8px;display:flex}.clients-limits__field{flex-direction:column;gap:3px;font-size:11.5px;display:flex}.clients-limits__field .geist-input{width:150px}.clients-limits__msg{margin-top:6px;font-size:12px}.usage-chart__empty{padding:16px 4px;font-size:12.5px}.usage-chart__legend{font-variant-numeric:tabular-nums;align-items:baseline;gap:14px;margin-bottom:6px;font-size:12px;display:flex}.usage-chart__legend .rate{font-weight:600}.usage-chart__legend .rate.rx{color:var(--lime)}.usage-chart__legend .rate.tx{color:var(--amber)}.usage-chart__svg{background:var(--mt-surface);border:1px solid var(--mt-border);border-radius:var(--mt-radius-sm);width:100%;height:160px;display:block}.usage-chart__svg .line{fill:none;stroke-width:2px;vector-effect:non-scaling-stroke}.usage-chart__svg .rx.line{stroke:var(--lime)}.usage-chart__svg .tx.line{stroke:var(--amber)}.usage-chart__svg .rx.area{fill:color-mix(in srgb, var(--lime) 18%, transparent);stroke:none}.usage-chart__svg .tx.area{fill:color-mix(in srgb, var(--amber) 14%, transparent);stroke:none}.clients-history,.aaa-usage__section{margin-top:16px}.clients-history__hd,.aaa-usage__title{color:var(--mt-text-dim);margin-bottom:8px;font-size:12px;font-weight:600}.aaa-usage__bar{align-items:center;gap:8px;margin-bottom:12px;display:flex}.heatmap__hd{align-items:baseline;gap:10px;margin-bottom:6px;display:flex}.heatmap__title{font-size:12.5px;font-weight:600}.heatmap__scroll{padding-bottom:4px;overflow-x:auto}.heatmap__svg{display:block}.heatmap__month,.heatmap__wd{fill:var(--mt-text-dim);font-family:inherit;font-size:9px}.heatmap{position:relative}.heatmap__cell{stroke:color-mix(in srgb, var(--mt-border) 60%, transparent);stroke-width:1px;cursor:pointer;transition:stroke .1s}.heatmap__cell.is-hover{stroke:var(--mt-text);stroke-width:1.5px}.heatmap__tip{z-index:30;background:linear-gradient(180deg, color-mix(in srgb, var(--mt-surface-2) 92%, var(--lime)), var(--mt-surface-2));border:1px solid color-mix(in srgb, var(--lime) 35%, var(--mt-border));pointer-events:none;min-width:150px;animation:heatmap-tip-in .12s var(--ease);border-radius:10px;padding:8px 10px;position:absolute;transform:translate(-50%,calc(-100% - 9px));box-shadow:0 8px 24px #00000073}.heatmap__tip:after{content:"";background:var(--mt-surface-2);border-right:1px solid color-mix(in srgb, var(--lime) 35%, var(--mt-border));border-bottom:1px solid color-mix(in srgb, var(--lime) 35%, var(--mt-border));width:11px;height:11px;position:absolute;bottom:-6px;left:50%;transform:translate(-50%)rotate(45deg)}@keyframes heatmap-tip-in{0%{opacity:0;transform:translate(-50%,calc(-100% - 3px))}to{opacity:1;transform:translate(-50%,calc(-100% - 9px))}}.heatmap__tip-head{align-items:center;gap:7px;font-size:13px;display:flex}.heatmap__tip-head b{font-weight:600}.heatmap__tip-head .heatmap__swatch{width:12px;height:12px}.heatmap__tip-date{color:var(--mt-text-dim);font-variant-numeric:tabular-nums;margin-top:3px;font-size:11.5px}.heatmap__cell.lvl0,.heatmap__swatch.lvl0{fill:var(--mt-surface-2);background:var(--mt-surface-2)}.heatmap__cell.lvl1,.heatmap__swatch.lvl1{fill:color-mix(in srgb, var(--lime) 30%, var(--mt-surface-2));background:color-mix(in srgb, var(--lime) 30%, var(--mt-surface-2))}.heatmap__cell.lvl2,.heatmap__swatch.lvl2{fill:color-mix(in srgb, var(--lime) 50%, var(--mt-surface-2));background:color-mix(in srgb, var(--lime) 50%, var(--mt-surface-2))}.heatmap__cell.lvl3,.heatmap__swatch.lvl3{fill:color-mix(in srgb, var(--lime) 72%, transparent);background:color-mix(in srgb, var(--lime) 72%, transparent)}.heatmap__cell.lvl4,.heatmap__swatch.lvl4{fill:var(--lime);background:var(--lime)}.heatmap__legend{align-items:center;gap:4px;margin-top:8px;font-size:11px;display:flex}.heatmap__swatch{border-radius:2px;width:11px;height:11px;display:inline-block}.input{font:12px var(--mt-mono);color:var(--mt-text);background:var(--mt-surface-2);border:1px solid var(--mt-border);border-radius:var(--mt-radius-sm);width:min(52vw,420px);padding:6px 10px}.input:focus{border-color:color-mix(in srgb, var(--mt-accent) 55%, var(--mt-border));outline:none}.btn-sm{padding:3px 8px;font-size:10px}.mod-toolbar{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:6px;display:flex}.mod-groups{flex-direction:column;gap:18px;margin-top:12px;display:flex}.mod-group__hd{border-bottom:1px solid var(--mt-border);align-items:center;gap:10px;margin-bottom:8px;padding-bottom:6px;display:flex}.mod-group__title{color:var(--mt-text);margin:0;font-size:13px;font-weight:600}.mod-list{grid-template-columns:repeat(auto-fill,minmax(min(100%,360px),1fr));gap:8px;display:grid}.mod-row{background:var(--mt-surface-2);border:1px solid var(--mt-border);border-radius:var(--mt-radius-sm);cursor:pointer;-webkit-user-select:none;user-select:none;align-items:flex-start;gap:10px;padding:9px 11px;transition:border-color .18s,background .18s;display:flex}.mod-row:hover{border-color:color-mix(in srgb, var(--mt-accent) 35%, var(--mt-border))}.mod-row[data-on]{border-color:color-mix(in srgb, var(--mt-accent) 50%, var(--mt-border));background:color-mix(in srgb, var(--mt-accent) 10%, var(--mt-surface-2))}.mod-row input{accent-color:var(--mt-accent);cursor:pointer;margin:2px 0 0}.mod-row__main{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.mod-row__name{color:var(--mt-text);flex-wrap:wrap;align-items:center;gap:7px;font-size:12px;font-weight:600;display:flex}.mod-row__slug{font:10px var(--mt-mono);color:var(--mt-text-dim);background:var(--mt-bg);border:1px solid var(--mt-border);border-radius:4px;padding:1px 5px}.mod-row__desc{font-size:11px;line-height:1.35}.mod-row__count{font:10px var(--mt-mono);white-space:nowrap;padding-top:1px}.conn-tunnel-halo{fill:none;stroke-width:8px;stroke-linecap:round;opacity:.1}.conn-tunnel{fill:none;stroke-width:2.4px;stroke-linecap:round;stroke-dasharray:6 6;animation:.9s linear infinite conn-tunnel-flow}@keyframes conn-tunnel-flow{to{stroke-dashoffset:-24px}}.conn-tunnel-lock{filter:drop-shadow(0 0 4px #f59e0bcc)}.conn-tunnel-sat{stroke-width:1.5px;filter:drop-shadow(0 0 5px #f59e0b88)}.conn-tunnel-badge{fill:#30220a;stroke:color-mix(in srgb, #f59e0b 60%, var(--mt-border));stroke-width:1px}.conn-tunnel-badge-tx{fill:#fbbf24;font-family:var(--mt-mono);letter-spacing:.02em;font-weight:700}.jump-route{background:color-mix(in srgb, #f59e0b 7%, var(--mt-surface-2));border:1px solid color-mix(in srgb, #f59e0b 28%, var(--mt-border));font:10px var(--mt-mono);border-radius:10px;align-items:center;gap:6px;margin:10px 0 2px;padding:7px 9px;display:flex;overflow:hidden}.jump-route__hop{background:var(--mt-bg);border:1px solid var(--mt-border);color:var(--mt-text);white-space:nowrap;border-radius:7px;align-items:center;gap:5px;padding:3px 8px;display:inline-flex}.jump-route__hop--src{padding:3px 7px;font-size:12px}.jump-route__hop--bastion{border-color:color-mix(in srgb, #f59e0b 60%, var(--mt-border));color:#fbbf24;box-shadow:0 0 10px -3px #f59e0b99}.jump-route__tag{text-transform:uppercase;letter-spacing:.08em;color:#0a0a0a;background:#f59e0b;border-radius:4px;padding:1px 4px;font-size:7px;font-style:normal}.jump-route__wire{background-image:linear-gradient(90deg, var(--mt-border) 0 50%, transparent 50% 100%);background-size:8px 2px;border-radius:2px;flex:1;min-width:18px;height:2px;animation:.7s linear infinite jump-wire}.jump-route__wire--enc{background-image:linear-gradient(90deg,#f59e0b 0 55%,#0000 55% 100%);background-size:10px 3px;min-width:34px;height:3px;position:relative;box-shadow:0 0 8px -1px #f59e0b88}.jump-route__lock{filter:drop-shadow(0 0 3px #f59e0b);font-size:11px;animation:2.2s linear infinite jump-lock;position:absolute;top:50%}@keyframes jump-wire{to{background-position:8px 0}}@keyframes jump-lock{0%{left:-4px;transform:translateY(-50%)scale(.9)}50%{transform:translateY(-50%)scale(1.1)}to{left:calc(100% - 8px);transform:translateY(-50%)scale(.9)}}@media (prefers-reduced-motion:reduce){.conn-tunnel,.jump-route__wire,.jump-route__wire--enc,.jump-route__lock{animation:none}.conn-tunnel-lock animatemotion{display:none}}.pool-panel{margin:12px 0}.pool-disabled{color:#71717a;margin:4px 0;font-size:13px}.pool-disabled code{color:#7c9cff;font-size:12px}.pool-stats{flex-wrap:wrap;gap:8px;margin-bottom:12px;display:flex}.pool-grid{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:8px;display:grid}.pool-card{background:#18181b;border:1px solid #27272a;border-radius:8px;padding:10px 12px;transition:border-color .2s}.pool-card:hover{border-color:#3f3f46}.pool-card--idle{border-color:#22c55e59}.pool-card--busy{border-color:#3b82f680}.pool-card--dead{border-color:#ef444480}.pool-card--disconnected{opacity:.6;border-style:dashed}.pool-card__hd{align-items:center;gap:6px;margin-bottom:6px;display:flex}.pool-card__dot{border-radius:50%;flex-shrink:0;width:7px;height:7px}.pool-card__name{color:#e4e4e7;text-overflow:ellipsis;white-space:nowrap;font-size:12px;font-weight:600;overflow:hidden}.pool-card__badge{text-transform:uppercase;letter-spacing:.04em;margin-left:auto;font-size:10px;font-weight:600}.pool-pipe{background:#27272a;border-radius:3px;height:6px;position:relative;overflow:hidden}.pool-pipe__fill{opacity:.65;border-radius:3px;height:100%;transition:width .4s}.pool-pipe__fill--pulse{animation:1.5s ease-in-out infinite pool-pulse}.pool-pipe__label{color:#fafafa;text-shadow:0 0 3px #0009;font-size:8px;font-weight:700;line-height:8px;position:absolute;top:-1px;right:4px}@keyframes pool-pulse{0%,to{opacity:.5}50%{opacity:.9}}.wn-overlay{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);z-index:20;animation:wn-backdrop-in .4s var(--ease) both;background:#000000b8;place-items:center;display:grid;position:fixed;inset:0}@keyframes wn-backdrop-in{0%{opacity:0}}.wn-overlay.is-closing{animation:wn-backdrop-out .3s var(--ease) both}.wn-overlay.is-closing .wn-card{animation:wn-card-out .3s var(--ease) both}@keyframes wn-backdrop-out{to{opacity:0}}.wn-card{background:var(--mt-surface);border:1px solid color-mix(in srgb, var(--violet) 30%, var(--mt-border));width:min(520px,100vw - 48px);max-height:calc(100vh - 80px);box-shadow:0 0 0 1px color-mix(in srgb, var(--violet) 12%, transparent), 0 24px 80px #0009, 0 0 120px color-mix(in srgb, var(--violet) 8%, transparent);animation:wn-card-in .5s var(--ease) .1s both;border-radius:16px;position:relative;overflow:hidden auto}@keyframes wn-card-in{0%{opacity:0;filter:blur(4px);transform:scale(.92)translateY(20px)}to{opacity:1;filter:blur();transform:scale(1)translateY(0)}}@keyframes wn-card-out{to{opacity:0;filter:blur(2px);transform:scale(.95)translateY(10px)}}.wn-glow{background:radial-gradient(circle, color-mix(in srgb, var(--violet) 18%, transparent), color-mix(in srgb, var(--sky) 8%, transparent) 50%, transparent 70%);pointer-events:none;border-radius:50%;width:320px;height:320px;animation:3s ease-in-out infinite alternate wn-glow-pulse;position:absolute;top:-60px;left:50%;transform:translate(-50%)}@keyframes wn-glow-pulse{0%{opacity:.5;transform:translate(-50%)scale(1)}to{opacity:1;transform:translate(-50%)scale(1.12)}}.wn-particles{pointer-events:none;z-index:0;position:absolute;inset:0;overflow:hidden}.wn-particle{background:color-mix(in srgb, var(--violet) 60%, var(--sky));opacity:0;border-radius:50%;animation:6s ease-in-out infinite wn-float;position:absolute}@keyframes wn-float{0%,to{opacity:0;transform:translateY(0)scale(.5)}20%{opacity:.7}50%{opacity:.35;transform:translateY(-30px)scale(1)}80%{opacity:.5}}.wn-close{z-index:2;border:1px solid var(--mt-border);background:var(--mt-surface-2);width:32px;height:32px;color:var(--mt-text-dim);cursor:pointer;border-radius:8px;place-items:center;transition:border-color .16s,color .16s,background .16s;display:grid;position:absolute;top:14px;right:14px}.wn-close:hover{border-color:var(--mt-border-strong);color:var(--mt-text);background:var(--mt-border)}.wn-hero{z-index:1;text-align:center;padding:40px 32px 24px;position:relative}.wn-badge{font-family:var(--mt-mono);letter-spacing:.2em;text-transform:uppercase;background:linear-gradient(135deg, color-mix(in srgb, var(--violet) 22%, transparent), color-mix(in srgb, var(--sky) 18%, transparent));border:1px solid color-mix(in srgb, var(--violet) 30%, transparent);color:var(--violet);border-radius:999px;padding:4px 14px;font-size:10px;font-weight:700;animation:2s ease-in-out infinite alternate wn-badge-glow;display:inline-block}@keyframes wn-badge-glow{0%{box-shadow:0 0 8px color-mix(in srgb, var(--violet) 20%, transparent)}to{box-shadow:0 0 22px color-mix(in srgb, var(--violet) 40%, transparent)}}.wn-version{font-family:var(--mt-display);letter-spacing:-.04em;background:linear-gradient(135deg, var(--violet), var(--sky) 50%, var(--teal));-webkit-text-fill-color:transparent;background-size:200% 100%;-webkit-background-clip:text;background-clip:text;margin:16px 0 8px;font-size:44px;font-weight:800;animation:3s ease-in-out infinite wn-shimmer}@keyframes wn-shimmer{0%,to{background-position:0%}50%{background-position:100%}}.wn-date{font-family:var(--mt-mono);color:var(--mt-text-dim);margin:0;font-size:12px}.wn-divider{align-items:center;height:20px;padding:0 32px;display:flex;position:relative}.wn-divider:before{content:"";background:linear-gradient(90deg, transparent, var(--mt-border-strong) 30%, var(--mt-border-strong) 70%, transparent);flex:1;height:1px}.wn-dot{background:var(--violet);width:10px;height:10px;box-shadow:0 0 14px color-mix(in srgb, var(--violet) 50%, transparent);border-radius:50%;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.wn-body{font-family:var(--mt-sans);color:var(--mt-text-dim);z-index:1;padding:20px 32px;font-size:13px;line-height:1.7;position:relative}.wn-body h2,.wn-body h3,.wn-body h4,.wn-body h5{font-family:var(--mt-display);color:var(--mt-text);margin:18px 0 6px;font-weight:700}.wn-body h2{font-size:17px}.wn-body h3{font-size:15px}.wn-body h4,.wn-body h5{font-size:14px}.wn-body p{margin:5px 0}.wn-body ul{margin:5px 0;padding-left:18px}.wn-body li{margin:3px 0}.wn-body li::marker{color:var(--violet)}.wn-body code{font-family:var(--mt-mono);background:var(--mt-surface-2);border:1px solid var(--mt-border);color:var(--sky);border-radius:4px;padding:2px 6px;font-size:12px}.wn-body pre{background:var(--mt-bg);border:1px solid var(--mt-border);border-radius:var(--mt-radius-sm);margin:8px 0;padding:12px;overflow-x:auto}.wn-body pre code{color:var(--mt-text-dim);background:0 0;border:none;padding:0}.wn-body a{color:var(--sky);text-underline-offset:2px;text-decoration:underline}.wn-body strong{color:var(--mt-text);font-weight:600}.wn-body blockquote{border-left:3px solid color-mix(in srgb, var(--violet) 40%, var(--mt-border));color:var(--mt-text-dim);margin:8px 0;padding:6px 14px;font-style:italic}.wn-body hr{border:none;border-top:1px solid var(--mt-border);margin:14px 0}.wn-body ol{margin:5px 0;padding-left:22px}.wn-body ol li{margin:3px 0}.wn-body ol li::marker{color:var(--sky)}.wn-body del{color:var(--mt-text-dim);opacity:.6}.wn-body .wn-task{margin-left:-18px;list-style:none}.wn-body .wn-check{width:16px;color:var(--mt-text-dim);font-size:13px;display:inline-block}.wn-body .wn-task.done .wn-check{color:var(--teal)}.wn-table-wrap{border-radius:var(--mt-radius-sm);border:1px solid var(--mt-border);margin:10px 0;overflow-x:auto}.wn-body table{border-collapse:collapse;width:100%;font-size:12px;font-family:var(--mt-mono)}.wn-body th,.wn-body td{border-bottom:1px solid var(--mt-border);padding:7px 12px}.wn-body th{background:var(--mt-surface-2);color:var(--mt-text);text-align:left;text-transform:uppercase;letter-spacing:.06em;font-size:11px;font-weight:600}.wn-body td{color:var(--mt-text-dim)}.wn-body tbody tr:last-child td{border-bottom:none}.wn-body tbody tr:hover td{background:color-mix(in srgb, var(--mt-surface-2) 50%, transparent)}.wn-footer{border-top:1px solid var(--mt-border);z-index:1;justify-content:space-between;align-items:center;padding:14px 32px 24px;display:flex;position:relative}.wn-link{font-family:var(--mt-mono);color:var(--mt-text-dim);align-items:center;gap:6px;font-size:12px;text-decoration:none;transition:color .16s;display:inline-flex}.wn-link:hover{color:var(--mt-text)}.wn-link svg{width:13px;height:13px}.nav__version-link{cursor:pointer;transition:color .16s}.nav__version-link:hover{color:var(--mt-text)}.nav__update-dot{background:var(--violet);vertical-align:middle;cursor:pointer;border-radius:50%;width:7px;height:7px;margin-left:6px;animation:2s ease-in-out infinite wn-indicator-pulse;display:inline-block}@keyframes wn-indicator-pulse{0%,to{box-shadow:0 0 0 0 color-mix(in srgb, var(--violet) 50%, transparent)}50%{box-shadow:0 0 0 5px #0000}}@media (prefers-reduced-motion:reduce){.wn-card,.wn-overlay,.wn-badge,.wn-glow,.wn-particle,.wn-version,.nav__update-dot{animation:none!important}.wn-card{opacity:1;filter:none;transform:none}}
93
93
  /*$vite$:1*/
94
94
  </style>
95
95
  </head>