From d9eabd07fbbdfddf482e9c32dcea2e24d6acf938 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" Date: Thu, 17 Sep 2026 01:27:32 +0800 Subject: [PATCH] =?UTF-8?q?=F0=9F=8E=A8=20Sync=202026-09-17=2001:27:32?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../references/aurora-budgets.md | 8 +- .../references/aurora-contract.md | 4 +- .../.dev/src/media/components/_palette.css | 20 + .../.dev/src/resource/menu-aurora.js | 136 +++++-- .../.dev/tests/build-performance.test.js | 5 +- .../.dev/tests/command-palette.test.js | 332 ++++++++++++++++- luci-theme-aurora/Makefile | 4 +- .../htdocs/luci-static/aurora/main.css | 2 +- .../luci-static/resources/menu-aurora.js | 2 +- .../.dev/src/media/components/_palette.css | 21 ++ .../.dev/src/resource/menu-shadcn.js | 150 +++++++- .../.dev/tests/build-output.test.js | 9 +- .../.dev/tests/command-palette.test.js | 343 +++++++++++++++++- luci-theme-shadcn/Makefile | 4 +- .../luci-static/resources/menu-shadcn.js | 2 +- .../htdocs/luci-static/shadcn/main.css | 2 +- mise/Makefile | 4 +- netdata/Makefile | 4 +- wwand/Makefile | 6 +- 19 files changed, 988 insertions(+), 70 deletions(-) diff --git a/luci-theme-aurora/.claude/skills/aurora-performance/references/aurora-budgets.md b/luci-theme-aurora/.claude/skills/aurora-performance/references/aurora-budgets.md index 332ae02a8..abd93e380 100644 --- a/luci-theme-aurora/.claude/skills/aurora-performance/references/aurora-budgets.md +++ b/luci-theme-aurora/.claude/skills/aurora-performance/references/aurora-budgets.md @@ -11,12 +11,12 @@ address, so they stay local). | Metric | Budget | Track | Source | |---|---|---|---| -| main.css (identity/raw) | ≤ 193 KB | size | production build, 2026-09-16 (189,650 B; −0.77 KB sidebar push as two transitions instead of run keyframes; +42 B replayed nav skips the fade; +~2 KB custom-background mode, +~0.5 KB router progress bar / live region; the bar is now Turbo-shaped — width/opacity only, inserted per navigation; −1.24 KB unblurred mega-menu curtain, delayed visibility, instant nav-pill colours) | +| main.css (identity/raw) | ≤ 193 KB | size | production build, 2026-09-17 (190,230 B; +0.6 KB palette tab rows "Parent › Title", unnested short selectors; −0.77 KB sidebar push as two transitions instead of run keyframes; +42 B replayed nav skips the fade; +~2 KB custom-background mode, +~0.5 KB router progress bar / live region; the bar is now Turbo-shaped — width/opacity only, inserted per navigation; −1.24 KB unblurred mega-menu curtain, delayed visibility, instant nav-pill colours) | | login.css (identity/raw) | ≤ 12 KB | size | production build, 2026-07 (10,935 B, token-pruned) | -| menu-aurora.js (identity/raw) | ≤ 22 KB | size | production build, 2026-09-16 (21,362 B; −0.24 KB sidebar toggle is a class flip; −0.09 KB pre-paint nav cache, its crumb renderer moved into header.ut (the replay itself is per-response HTML, see below); +0.8 KB palette recents: record on pick, pure-LRU browse order, storage validation; +0.2 KB ">" logout command) | -| router-aurora.js (identity/raw, Navigation-API browsers only) | ≤ 15 KB | size | production build, 2026-08 (14,844 B: template shells fetched, per-render listener teardown, timeout-as-failure, expiry gate, readonly folding, node css, wildcard actions, trickling progress bar, same-URL reload rule, visibility gate, contract check) | +| menu-aurora.js (identity/raw) | ≤ 23 KB | size | production build, 2026-09-17 (22,665 B; +1.3 KB palette tabs: third-level nodes, redirect parents folded into their tabs, legacy recents mapped, parent-aware scoring, path words matched segment by segment; −0.24 KB sidebar toggle is a class flip; −0.09 KB pre-paint nav cache, its crumb renderer moved into header.ut (the replay itself is per-response HTML, see below); +0.8 KB palette recents: record on pick, pure-LRU browse order, storage validation; +0.2 KB ">" logout command) | +| router-aurora.js (identity/raw, Navigation-API browsers only) | ≤ 16 KB | size | production build, 2026-09-13 (15,771 B, shipped from @eamonxg/luci-theme-devkit; 2026-08: 14,844 B: template shells fetched, per-render listener teardown, timeout-as-failure, expiry gate, readonly folding, node css, wildcard actions, trickling progress bar, same-URL reload rule, visibility gate, contract check) | | Default logo (identity/raw) | ≤ 16 KB | size | production build, 2026-07 (15,057 B) | -| Core admin cold theme assets (identity/raw) | ≤ 267.5 KB | size | main CSS + menu JS + router JS + default font + logo, 2026-09-16 (265,420 B; −1.1 KB sidebar push and nav cache; the router is a one-time cost that removes per-click dispatcher work; +1.0 KB palette recents and logout command; −1.24 KB mega-menu curtain) | +| Core admin cold theme assets (identity/raw) | ≤ 268.5 KB | size | main CSS + menu JS + router JS + default font + logo, 2026-09-17 (267,303 B; +1.9 KB palette tabs; −1.1 KB sidebar push and nav cache; the router is a one-time cost that removes per-click dispatcher work; +1.0 KB palette recents and logout command; −1.24 KB mega-menu curtain) | | Login cold theme assets, excluding configured background (identity/raw) | ≤ 55 KB | size | login CSS + default font + logo, 2026-07 (49,572 B) | | Admin HTML inline scripts added per full load (identity, never cached) | — | size | header.ut, 2026-09-16: pre-paint nav replay ≈ +0.5 KB (mega-menu/dropdown) / ≈ +1.9 KB (sidebar, with the shared crumb renderer); login page +0.07 KB. Template shells the router fetches carry it too. | | Blocking requests before first paint | ≤ 4 | count | current waterfall | diff --git a/luci-theme-aurora/.claude/skills/luci-knowledge/references/aurora-contract.md b/luci-theme-aurora/.claude/skills/luci-knowledge/references/aurora-contract.md index ef92aa710..5e8ef3c45 100644 --- a/luci-theme-aurora/.claude/skills/luci-knowledge/references/aurora-contract.md +++ b/luci-theme-aurora/.claude/skills/luci-knowledge/references/aurora-contract.md @@ -57,8 +57,8 @@ No `@layer` wrappers in partials; `main.css` import order is cascade order; toke from `@eamonxg/luci-theme-tokens/dist/aurora/tokens.css` (change colours in that repo). Budgets (`tests/build-performance.test.js`, mirrored in `.claude/skills/aurora-performance/references/aurora-budgets.md`): main.css ≤ 193 KB, -login.css ≤ 12 KB, menu-aurora.js ≤ 22 KB, router-aurora.js ≤ 15 KB, admin cold set -≤ 267.5 KB, login set ≤ 55 KB, SVG data URLs ≤ 17 KB and unique. +login.css ≤ 12 KB, menu-aurora.js ≤ 23 KB, router-aurora.js ≤ 16 KB, admin cold set +≤ 268.5 KB, login set ≤ 55 KB, SVG data URLs ≤ 17 KB and unique. ## Patches contract (third-party compatibility) File name = the page's `data-page` prefix; prefix matching on segment boundaries; both diff --git a/luci-theme-aurora/.dev/src/media/components/_palette.css b/luci-theme-aurora/.dev/src/media/components/_palette.css index e98646521..df31e5bb6 100644 --- a/luci-theme-aurora/.dev/src/media/components/_palette.css +++ b/luci-theme-aurora/.dev/src/media/components/_palette.css @@ -130,6 +130,26 @@ } } +/* A tab row reads "Parent › Title": the parent gives way first, and keeps + at least an ellipsis so the "›" never leads the row. Like the section + label, it stays subtle on the selected row. Unnested: the classes exist + only inside palette rows, and the short selectors keep main.css lean. */ +.cmdk-title:has(> .cmdk-parent) { + @apply flex items-baseline; +} + +.cmdk-parent { + @apply text-text-subtle min-w-0 truncate font-normal; +} + +.cmdk-label { + @apply max-w-[calc(100%-1.5rem)] shrink-0 truncate; + + &::before { + @apply text-text-subtle px-1.5 font-normal content-['›']; + } +} + /* The frost is decorative — both degradation paths go opaque. */ @supports not (backdrop-filter: blur(1px)) { .cmdk-panel { diff --git a/luci-theme-aurora/.dev/src/resource/menu-aurora.js b/luci-theme-aurora/.dev/src/resource/menu-aurora.js index 0afe776db..247b0a5d9 100644 --- a/luci-theme-aurora/.dev/src/resource/menu-aurora.js +++ b/luci-theme-aurora/.dev/src/resource/menu-aurora.js @@ -584,11 +584,12 @@ return baseclass.extend({ // is the navigation model the menus already render from — no extra // requests, no DOM scraping — and the panel DOM is built lazily on first // open, so pages where it is never used pay nothing beyond this flat array. - initPalette(items) { + initPalette(items, root) { const toggle = document.querySelector("#cmdk-trigger"); if (!toggle || this.paletteIndex) return; this.paletteIndex = []; + this.paletteAliases = {}; let logout = null; items.forEach((item) => { if (item.isLogout) { @@ -604,17 +605,44 @@ return baseclass.extend({ }); return; } - item.pages.forEach((page) => - this.paletteIndex.push({ - title: page.title, - // Section-qualified: "status/overview" keeps English dispatch - // segments matchable under any UI language, and the "/" is what - // arms the scorer's segment-start bonus. - name: `${item.name}/${page.name}`, - group: item.title, - href: page.href, - }), - ); + item.pages.forEach((page) => { + // Dispatch paths keep English segments matchable under any UI + // language. + const name = `${item.name}/${page.name}`; + // The raw node: getChildren() hands out alias nodes carrying their + // target's children, which would hide an alias parent's tabs. + const node = root?.children?.[item.name]?.children?.[page.name] ?? {}; + const tabs = ui.menu.getChildren(node); + const type = node.action?.type; + const target = + type === "alias" + ? node.action.path.replace(`${root.name}/${name}/`, "") + : type === "firstchild" && + tabs.find((tab) => !tab.firstchild_ineligible)?.name; + + // A parent that only redirects to one of its tabs is that tab; its + // row gives way to the tabs, and its name (stored by older recents) + // resolves to where it redirects. + if (tabs.some((tab) => tab.name === target)) + this.paletteAliases[name] = `${name}/${target}`; + else + this.paletteIndex.push({ + title: page.title, + name, + group: item.title, + href: page.href, + }); + + tabs.forEach((tab) => + this.paletteIndex.push({ + title: _(tab.title), + parent: page.title, + name: `${name}/${tab.name}`, + group: item.title, + href: L.url(root.name, item.name, page.name, tab.name), + }), + ); + }); }); // The only non-navigation commands: theme modes. They ride the same @@ -887,17 +915,20 @@ return baseclass.extend({ return best; }, - // Empty query matches everything at score 0 (the browse list); title hits - // outrank name/path and group hits and are the only ones highlighted. // localStorage can be unavailable (privacy modes) or hold anything after // a downgrade — both read as "no history". No size cap: dedupe bounds the // list by the pages actually visited, i.e. the menu's own scale. readPaletteRecents() { try { const list = JSON.parse(localStorage.getItem(PALETTE_RECENTS_KEY)); - return Array.isArray(list) - ? list.filter((name) => typeof name === "string") - : []; + if (!Array.isArray(list)) return []; + return [ + ...new Set( + list + .filter((name) => typeof name === "string") + .map((name) => this.paletteAliases?.[name] ?? name), + ), + ]; } catch { return []; } @@ -929,18 +960,66 @@ return baseclass.extend({ ); }, + // Empty query matches everything at score 0 (the browse list). Title hits + // rank first, then parent hits, which score the parent alone so its tabs + // tie and keep menu order; "parent title" pairs split on a space. Then the + // path, then the group. matchPaletteEntry(q, page) { if (!q) return { score: 0, ranges: null }; const title = this.fuzzyMatch(q, page.title); if (title) return { score: title.score + 12, ranges: title.ranges }; + if (page.parent) { + const parent = this.fuzzyMatch(q, page.parent); + if (parent) + return { + score: parent.score + 8, + ranges: null, + parentRanges: parent.ranges, + }; + + const words = q.split(/\s+/); + for (let i = 1; i < words.length; i++) { + const head = this.fuzzyMatch(words.slice(0, i).join(" "), page.parent); + const tail = + head && this.fuzzyMatch(words.slice(i).join(" "), page.title); + if (tail) + return { + score: head.score + tail.score + 8, + ranges: tail.ranges, + parentRanges: head.ranges, + }; + } + } + const rest = - this.fuzzyMatch(q, page.name) || + this.matchPalettePath(q, page.name) || (page.group ? this.fuzzyMatch(q, page.group) : null); return rest && { score: rest.score, ranges: null }; }, + // Each query word (split on spaces or "/") lands inside one segment, in + // path order: "network wireless" reaches network/wireless, while a lone + // word can't scatter across segments ("ssh" in services/passwall2/other). + matchPalettePath(q, name) { + const words = q.split(/[\s/]+/).filter(Boolean); + const segments = name.split("/"); + let at = 0; + let score = 0; + + for (const word of words) { + let hit = null; + for (; at < segments.length; at++) { + hit = this.fuzzyMatch(word, segments[at]); + if (hit) break; + } + if (!hit) return null; + score += hit.score; + } + return words.length ? { score } : null; + }, + collectPaletteMatches(value) { let q = value.trim().toLowerCase(); // A leading ">" scopes the list to the command rows (the prototype's @@ -963,6 +1042,7 @@ return baseclass.extend({ page, score: at < 0 ? m.score : recents.length - at, ranges: m.ranges, + parentRanges: m.parentRanges, }); } if (q || recents.length) matches.sort((a, b) => b.score - a.score); @@ -983,7 +1063,7 @@ return baseclass.extend({ return; } - matches.forEach(({ page, ranges }, i) => { + matches.forEach(({ page, ranges, parentRanges }, i) => { const current = page.mode && page.mode === theme; const attributes = { class: "cmdk-row", @@ -1001,7 +1081,21 @@ return baseclass.extend({ E( "span", { class: "cmdk-title" }, - this.highlightPaletteMatch(page.title, ranges), + // A tab named after its parent is the page the parent opens. + page.parent && page.parent !== page.title + ? [ + E( + "span", + { class: "cmdk-parent" }, + this.highlightPaletteMatch(page.parent, parentRanges), + ), + E( + "span", + { class: "cmdk-label" }, + this.highlightPaletteMatch(page.title, ranges), + ), + ] + : this.highlightPaletteMatch(page.title, ranges), ), current ? // The ✓ is decorative (aria-current carries the state); mark @@ -1488,7 +1582,7 @@ return baseclass.extend({ ); this.renderMainMenu(activeChild, activeChild.name, 0, navigationItems); this.renderMobileMenu(navigationItems); - this.initPalette(navigationItems); + this.initPalette(navigationItems, activeChild); } if (ul?.children.length > 1) { diff --git a/luci-theme-aurora/.dev/tests/build-performance.test.js b/luci-theme-aurora/.dev/tests/build-performance.test.js index 8464f7244..e4bd5f94e 100644 --- a/luci-theme-aurora/.dev/tests/build-performance.test.js +++ b/luci-theme-aurora/.dev/tests/build-performance.test.js @@ -26,7 +26,10 @@ test("production assets stay within raw-transfer budgets", () => { // 22K: palette recents (record on pick, pure-LRU browse order, storage // validation) added ~0.8 KB and the ">" logout command ~0.2 KB. The total // budget below moved by the same amount. - assert.ok(menu <= 22_000, "menu-aurora.js exceeds 22 KB"); + // 23K: palette tabs (third-level nodes, redirect-parent folding, legacy + // recents mapping, parent-aware scoring, per-segment path words) added + // ~1.3 KB; the total budget below still holds. + assert.ok(menu <= 23_000, "menu-aurora.js exceeds 23 KB"); // 15K: the expiry gate, readonly folding, menu.d node css, wildcard // actions, progress bar, visibility gate and contract check added ~3 KB // over the first cut; the total-transfer budget below moved by the same diff --git a/luci-theme-aurora/.dev/tests/command-palette.test.js b/luci-theme-aurora/.dev/tests/command-palette.test.js index 9feacbafb..eabad47ed 100644 --- a/luci-theme-aurora/.dev/tests/command-palette.test.js +++ b/luci-theme-aurora/.dev/tests/command-palette.test.js @@ -15,14 +15,17 @@ const E = (tagName, attributes, children) => ({ const loadMenuModule = ( localStorage = {}, - { document = {}, navigator = { platform: "" } } = {}, + { + document = {}, + navigator = { platform: "" }, + ui = { menu: { getChildren: () => [] } }, + } = {}, ) => { const baseclass = { extend(module) { return module; }, }; - const ui = { menu: { getChildren: () => [] } }; const L = { env: { dispatchpath: [], requestpath: [] }, url: (...segments) => `/${segments.join("/")}`, @@ -462,3 +465,328 @@ test("initPalette appends logout as the last command row", () => { palette.paletteIndex.indexOf(last), ); }); + +// ---- Tabs: third-level menu nodes ---- + +// ui.menu.getChildren() as luci-base ships it, down to handing out alias +// nodes with their target's children (none, for a tab target). +const menuUi = { + menu: { + getChildren: (node) => + Object.entries(node?.children ?? {}) + .filter(([, child]) => child.satisfied && "title" in child) + .map(([name, child]) => + child.action?.type === "alias" + ? { ...child, name, children: undefined } + : Object.assign(child, { name }), + ) + .sort((a, b) => (a.order ?? 1000) - (b.order ?? 1000)), + }, +}; + +const node = (title, order, action, children) => ({ + satisfied: true, + title, + order, + action, + children, +}); +const view = { type: "view" }; + +const menuRoot = () => ({ + name: "admin", + children: { + status: node("Status", 1, view, { + overview: node("Overview", 1, view), + logs: node( + "System Log", + 2, + { type: "alias", path: "admin/status/logs/syslog" }, + { + dmesg: node("Kernel Log", 2, view), + syslog: node("System Log", 1, view), + }, + ), + }), + system: node("System", 2, view, { + admin: node( + "Administration", + 1, + { type: "firstchild" }, + { + dropbear: node("SSH Access", 2, view), + hidden: { satisfied: true, order: 0, action: view }, + password: node("Router Password", 1, view), + }, + ), + bmx: node("BMX", 2, view, { nodes: node("Nodes", 1, view) }), + }), + }, +}); + +const menuItems = () => [ + { + name: "status", + title: "Status", + hasChildren: true, + pages: [ + { name: "overview", title: "Overview", href: "/admin/status/overview" }, + { name: "logs", title: "System Log", href: "/admin/status/logs" }, + ], + }, + { + name: "system", + title: "System", + hasChildren: true, + pages: [ + { name: "admin", title: "Administration", href: "/admin/system/admin" }, + { name: "bmx", title: "BMX", href: "/admin/system/bmx" }, + ], + }, +]; + +const initTabbedPalette = (storage = fakeStorage()) => { + const doc = { + querySelector: (sel) => + sel === "#cmdk-trigger" + ? { setAttribute() {}, addEventListener() {} } + : null, + addEventListener() {}, + }; + const palette = loadMenuModule(storage, { document: doc, ui: menuUi }); + palette.initPalette(menuItems(), menuRoot()); + return palette; +}; + +const navRows = (palette) => + palette.paletteIndex.filter((page) => !page.mode && !page.isLogout); + +test("tabs join the index; a redirecting parent gives way to them", () => { + const rows = navRows(initTabbedPalette()); + + assert.deepEqual( + rows.map((page) => [page.name, page.parent ?? null]), + [ + ["status/overview", null], + ["status/logs/syslog", "System Log"], + ["status/logs/dmesg", "System Log"], + ["system/admin/password", "Administration"], + ["system/admin/dropbear", "Administration"], + ["system/bmx", null], + ["system/bmx/nodes", "BMX"], + ], + ); + assert.equal(rows[2].href, "/admin/status/logs/dmesg"); + assert.equal(rows[2].group, "Status"); +}); + +test("redirecting parents map to the tab they open", () => { + assert.deepEqual(initTabbedPalette().paletteAliases, { + "status/logs": "status/logs/syslog", + "system/admin": "system/admin/password", + }); +}); + +test("a stored parent name reads as its tab, deduplicated", () => { + const palette = initTabbedPalette( + fakeStorage( + stored(["system/admin", "system/admin/password", "status/logs"]), + ), + ); + + assert.deepEqual(palette.readPaletteRecents(), [ + "system/admin/password", + "status/logs/syslog", + ]); + assert.deepEqual(names(palette.collectPaletteMatches("")).slice(0, 3), [ + "system/admin/password", + "status/logs/syslog", + "status/overview", + ]); +}); + +const tab = (name, title, parent = "Firewall") => ({ + title, + parent, + name: `network/firewall/${name}`, + group: "Network", + href: `/${name}`, +}); + +const firewallIndex = () => [ + navPage("status/nftables", "Firewall", "Status"), + tab("zones", "General Settings"), + tab("forwards", "Port Forwards"), + tab("rules", "Traffic Rules"), + tab("ipsets", "IP Sets"), +]; + +test("a parent-only query keeps its tabs in menu order", () => { + const palette = paletteWith(fakeStorage(), firewallIndex()); + + assert.deepEqual(names(palette.collectPaletteMatches("firewall")), [ + "status/nftables", + "network/firewall/zones", + "network/firewall/forwards", + "network/firewall/rules", + "network/firewall/ipsets", + ]); +}); + +test("a parent hit highlights the parent, not the title", () => { + const match = menu.matchPaletteEntry( + "fire", + tab("forwards", "Port Forwards"), + ); + + assert.equal(match.ranges, null); + assert.deepEqual(sliced("Firewall", match.parentRanges), ["Fire"]); +}); + +test("a spaced query pairs parent words with title words", () => { + const palette = paletteWith(fakeStorage(), firewallIndex()); + const [hit, ...rest] = palette.collectPaletteMatches("firewall port"); + + assert.equal(hit.page.name, "network/firewall/forwards"); + assert.deepEqual(rest, []); + assert.deepEqual(sliced("Port Forwards", hit.ranges), ["Port"]); + assert.deepEqual(sliced("Firewall", hit.parentRanges), ["Firewall"]); +}); + +test("a query no longer scatters across path segments", () => { + const other = { + title: "Other Settings", + parent: "PassWall 2", + name: "services/passwall2/other", + group: "Services", + }; + + assert.ok(!menu.matchPaletteEntry("ssh", other)); + assert.ok( + menu.matchPaletteEntry("sshkeys", { + title: "SSH 密钥", + parent: "管理权", + name: "system/admin/sshkeys", + group: "系统", + }), + ); +}); + +test("path words land in segments in order, never scattered", () => { + const wireless = { title: "无线", name: "network/wireless", group: "网络" }; + const forwards = tab("forwards", "端口转发", "防火墙"); + + assert.ok(menu.matchPaletteEntry("network wireless", wireless)); + assert.ok( + menu.matchPaletteEntry( + "status/overview", + navPage("status/overview", "概览"), + ), + ); + assert.ok(menu.matchPaletteEntry("network firewall", forwards)); + assert.ok(menu.matchPaletteEntry("netw forw", forwards)); + assert.ok(!menu.matchPaletteEntry("wireless network", wireless)); + assert.ok(!menu.matchPaletteEntry("netwire", wireless)); + assert.ok(!menu.matchPaletteEntry("/", wireless)); +}); + +test("a parent keeps its row unless it redirects to one of its own tabs", () => { + const doc = { + querySelector: (sel) => + sel === "#cmdk-trigger" + ? { setAttribute() {}, addEventListener() {} } + : null, + addEventListener() {}, + }; + const palette = loadMenuModule(fakeStorage(), { document: doc, ui: menuUi }); + const root = { + name: "admin", + children: { + services: node("Services", 1, view, { + // Redirects to an untitled page, so no tab stands in for it. + foo: node( + "Foo", + 1, + { type: "alias", path: "admin/services/foo/main" }, + { + main: { satisfied: true, order: 1, action: view }, + log: node("Log", 2, view), + }, + ), + bar: node( + "Bar", + 2, + { type: "firstchild" }, + { only: { ...node("Only", 1, view), firstchild_ineligible: true } }, + ), + }), + }, + }; + + palette.initPalette( + [ + { + name: "services", + title: "Services", + hasChildren: true, + pages: [ + { name: "foo", title: "Foo", href: "/admin/services/foo" }, + { name: "bar", title: "Bar", href: "/admin/services/bar" }, + ], + }, + ], + root, + ); + + assert.deepEqual( + navRows(palette).map((page) => page.name), + ["services/foo", "services/foo/log", "services/bar", "services/bar/only"], + ); + assert.deepEqual(palette.paletteAliases, {}); +}); + +test("recording after a legacy read writes the mapped names back", () => { + const storage = fakeStorage(stored(["status/logs", "status/overview"])); + const palette = initTabbedPalette(storage); + + palette.recordPaletteRecent("system/admin/dropbear"); + + assert.deepEqual(JSON.parse(storage.map.get(RECENTS_KEY)), [ + "system/admin/dropbear", + "status/logs/syslog", + "status/overview", + ]); +}); + +test("a tab row renders its parent before the title unless they share a name", () => { + const rows = []; + const palette = paletteWith(fakeStorage(), [ + tab("forwards", "Port Forwards"), + { ...tab("firewall", "Firewall"), name: "network/firewall/firewall" }, + ]); + palette.paletteInput = { removeAttribute() {}, setAttribute() {} }; + palette.paletteList = { + replaceChildren() {}, + appendChild: (row) => rows.push(row), + }; + palette.setPaletteSelection = () => {}; + + palette.renderPaletteResults("fire"); + + const title = (name) => + rows.find((row) => row.attributes["data-name"] === name).children[0] + .children; + const forwards = title("network/firewall/forwards"); + const same = title("network/firewall/firewall"); + assert.deepEqual( + forwards.map((part) => part.attributes.class), + ["cmdk-parent", "cmdk-label"], + ); + const marked = (parts) => parts.some((part) => part.tagName === "mark"); + // The parent hit is highlighted inside the parent, the title stays plain. + assert.ok(marked(forwards[0].children)); + assert.deepEqual(forwards[1].children, ["Port Forwards"]); + // Same name: a plain highlighted title, no prefix. + assert.ok(marked(same)); + assert.ok(!same.some((part) => part.attributes?.class === "cmdk-parent")); +}); diff --git a/luci-theme-aurora/Makefile b/luci-theme-aurora/Makefile index 8be4ca6b0..69950efa0 100644 --- a/luci-theme-aurora/Makefile +++ b/luci-theme-aurora/Makefile @@ -8,8 +8,8 @@ include $(TOPDIR)/rules.mk LUCI_TITLE:=Aurora Theme (A modern browser theme built with Vite and Tailwind CSS) LUCI_DEPENDS:=+luci-base -PKG_VERSION:=1.3.7 -PKG_RELEASE:=81 +PKG_VERSION:=1.3.8 +PKG_RELEASE:=82 PKG_LICENSE:=Apache-2.0 LUCI_MINIFY_CSS:= diff --git a/luci-theme-aurora/htdocs/luci-static/aurora/main.css b/luci-theme-aurora/htdocs/luci-static/aurora/main.css index 0cf987442..6bd13339e 100644 --- a/luci-theme-aurora/htdocs/luci-static/aurora/main.css +++ b/luci-theme-aurora/htdocs/luci-static/aurora/main.css @@ -1,2 +1,2 @@ /*! tailwindcss v4.3.2 | MIT License | https://tailwindcss.com */ -@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-content:"";--tw-leading:initial;--tw-font-weight:initial;--tw-tracking:initial;--tw-border-style:solid;--tw-duration:initial;--tw-ease:initial;--tw-translate-x:0;--tw-translate-y:0;--tw-translate-z:0;--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-backdrop-blur:initial;--tw-backdrop-brightness:initial;--tw-backdrop-contrast:initial;--tw-backdrop-grayscale:initial;--tw-backdrop-hue-rotate:initial;--tw-backdrop-invert:initial;--tw-backdrop-opacity:initial;--tw-backdrop-saturate:initial;--tw-backdrop-sepia:initial;--tw-scale-x:1;--tw-scale-y:1;--tw-scale-z:1;--tw-space-y-reverse:0;--tw-gradient-position:initial;--tw-gradient-from:#0000;--tw-gradient-via:#0000;--tw-gradient-to:#0000;--tw-gradient-stops:initial;--tw-gradient-via-stops:initial;--tw-gradient-from-position:0%;--tw-gradient-via-position:50%;--tw-gradient-to-position:100%;--tw-border-spacing-x:0;--tw-border-spacing-y:0}}}@layer theme{:root,:host{--font-sans:var(--font-sans);--font-mono:var(--font-mono);--spacing:var(--spacing);--container-xs:20rem;--container-5xl:64rem;--text-xs:.75rem;--text-xs--line-height:calc(1 / .75);--text-sm:.875rem;--text-sm--line-height:calc(1.25 / .875);--text-base:1rem;--text-base--line-height:calc(1.5 / 1);--text-lg:1.125rem;--text-lg--line-height:calc(1.75 / 1.125);--text-xl:1.25rem;--text-xl--line-height:calc(1.75 / 1.25);--text-2xl:1.5rem;--text-2xl--line-height:calc(2 / 1.5);--text-3xl:1.875rem;--text-3xl--line-height:calc(2.25 / 1.875);--font-weight-normal:400;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--tracking-tight:-.025em;--tracking-wide:.025em;--tracking-wider:.05em;--leading-tight:1.25;--leading-snug:1.375;--leading-normal:1.5;--leading-relaxed:1.625;--ease-out:cubic-bezier(0, 0, .2, 1);--ease-in-out:cubic-bezier(.4, 0, .2, 1);--animate-spin:spin 1s linear infinite;--blur-md:12px;--blur-xl:24px;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components,utilities;:root{--bg:#f7fafc;--surface:#fff;--text:#121a22;--brand:#0085b7;--on-brand:#fff;--link:#0085b7;--info:#0e5794;--warning:#643e00;--success:#004f3e;--danger:#8d1925;--text-muted:#5f666d;--text-subtle:#7f858b;--surface-sunken:#f4f7fa;--surface-overlay:#fff;--hairline:#121a2221;--hover-faint:#ebeff2;--brand-hover:#0073a3;--brand-subtle:#ddecf5;--brand-subtle-hover:#d0dfe8;--focus-ring:#0085b799;--progress-start:#64aed5;--progress-end:#0085b7;--info-surface:#deefff;--warning-surface:#ffedd6;--success-surface:#d3f8eb;--danger-surface:#ffe8e6;--danger-surface-hover:#f9d9d7;--control-bg:#fff;--scrim:#0009;--mega-menu-bg:#f1f7fa;--mega-menu-scrim:#0d1c2a61;--app-shadow-sm:0 1px 3px #0000000f, 0 1px 2px #0000000a;--app-shadow-md:0 4px 16px #00000014, 0 1px 3px #0000000a;--app-shadow-lg:0 12px 32px #0000001f;--app-opacity-disabled:.4;--font-sans:"Lato", ui-sans-serif, system-ui, sans-serif;--font-mono:ui-monospace, "SF Mono", Menlo, Monaco, Consolas, monospace;--spacing:.25rem;--content-width-centered:80rem;--radius-base:.5rem}@supports (color:lab(0% 0 0)){:root{--bg:lab(98.1553% -.760227 -1.25223);--surface:lab(100% 0 0);--text:lab(8.89727% -1.68239 -6.93074);--brand:lab(51.3503% -19.237 -40.2116);--on-brand:lab(100% 0 0);--link:lab(51.3503% -19.237 -40.2116);--info:lab(35.5745% -2.86636 -40.2468);--warning:lab(30.2236% 14.0359 42.8654);--success:lab(29.3859% -35.8952 5.0677);--danger:lab(31.1495% 47.9256 25.8661);--text-muted:lab(42.8254% -1.57365 -4.8763);--text-subtle:lab(55.3248% -1.4126 -4.053);--surface-sunken:lab(97.114% -.949115 -1.56456);--surface-overlay:lab(100.011% -.760317 -1.25225);--hairline:lab(8.89727% -1.68239 -6.93074/.13);--hover-faint:lab(94.2168% -1.13726 -1.87657);--brand-hover:lab(44.3401% -18.0233 -40.0589);--brand-subtle:lab(92.5794% -3.9458 -6.17858);--brand-subtle-hover:lab(87.9391% -3.94133 -6.17628);--focus-ring:lab(51.3503% -19.237 -40.2116/.6);--progress-start:lab(67.4852% -15.7175 -27.197);--progress-end:lab(51.3503% -19.237 -40.2116);--info-surface:lab(93.5628% -4.16487 -14.7881);--warning-surface:lab(94.8007% 4.75499 15.6111);--success-surface:lab(94.7525% -14.2308 2.09508);--danger-surface:lab(93.849% 11.2841 5.29771);--danger-surface-hover:lab(89.2089% 11.2856 5.30034);--control-bg:lab(100.011% -.760317 -1.25225);--scrim:lab(0% 0 0/.6);--mega-menu-bg:lab(96.7742% -1.51286 -2.50006);--mega-menu-scrim:lab(9.40633% -2.1807 -11.9349/.38);--app-shadow-sm:0 1px 3px lab(0% 0 0/.06), 0 1px 2px lab(0% 0 0/.04);--app-shadow-md:0 4px 16px lab(0% 0 0/.08), 0 1px 3px lab(0% 0 0/.04);--app-shadow-lg:0 12px 32px lab(0% 0 0/.12)}}[data-darkmode=true]{--bg:#05070e;--surface:#141822;--text:#f9fafb;--brand:#00958e;--on-brand:#fff;--link:#00958e;--info:#90c1ff;--warning:#f0ba59;--success:#51bd85;--danger:#f17070;--text-muted:#909297;--text-subtle:#5d6067;--surface-sunken:#0a0e17;--surface-overlay:#181d27;--hairline:#f9fafb1a;--hover-faint:#f9fafb0d;--brand-hover:#00837d;--brand-subtle:#061a20;--brand-subtle-hover:#0f242a;--focus-ring:#00958e99;--progress-start:#006261;--progress-end:#00958e;--info-surface:#21344c;--warning-surface:#45310b;--success-surface:#153524;--danger-surface:#541f20;--danger-surface-hover:#602a2a;--control-bg:#0a0e17;--scrim:#0009;--mega-menu-bg:#0a0e17;--mega-menu-scrim:#00000080;--app-shadow-sm:0 4px 12px #0000004d;--app-shadow-md:0 10px 28px #0000006b;--app-shadow-lg:0 20px 48px #0000008c;--app-opacity-disabled:.3}@supports (color:lab(0% 0 0)){[data-darkmode=true]{--bg:lab(1.93894% .0855997 -3.22397);--surface:lab(8.24713% -.0405461 -7.31381);--text:lab(98.252% -.0618994 -.756907);--brand:lab(55.0978% -44.5567 -7.62978);--on-brand:lab(100% 0 0);--link:lab(55.0978% -44.5567 -7.62978);--info:lab(76.3382% -4.43128 -38.7);--warning:lab(79.1996% 12.6808 55.9505);--success:lab(69.2339% -42.392 18.6731);--danger:lab(63.5705% 50.8105 25.3639);--text-muted:lab(60.5379% -.225931 -3.05105);--text-subtle:lab(40.6865% -.278354 -4.23647);--surface-sunken:lab(3.9802% .0812709 -5.64623);--surface-overlay:lab(10.5702% -.0939444 -7.33123);--hairline:lab(98.252% -.0618994 -.756907/.1);--hover-faint:lab(98.252% -.0618994 -.756907/.05);--brand-hover:lab(49.2976% -44.6964 -7.56882);--brand-subtle:lab(7.95734% -6.34954 -6.72844);--brand-subtle-hover:lab(12.602% -6.92477 -6.76408);--focus-ring:lab(55.0986% -44.5682 -7.59286/.6);--progress-start:lab(36.8833% -28.7182 -7.50749);--progress-end:lab(55.0978% -44.5567 -7.62978);--info-surface:lab(20.893% -1.69295 -17.5199);--warning-surface:lab(22.2973% 6.18184 26.7927);--success-surface:lab(19.4608% -16.2551 7.16286);--danger-surface:lab(20.3014% 25.4342 12.827);--danger-surface-hover:lab(24.9464% 25.3964 12.6412);--control-bg:lab(3.9802% .0812709 -5.64623);--scrim:lab(0% 0 0/.6);--mega-menu-bg:lab(3.9802% .0812709 -5.64623);--mega-menu-scrim:lab(0% 0 0/.5);--app-shadow-sm:0 4px 12px lab(0% 0 0/.3);--app-shadow-md:0 10px 28px lab(0% 0 0/.42);--app-shadow-lg:0 20px 48px lab(0% 0 0/.55)}}:root{--icon-activity:url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20width='24'%20height='24'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='currentColor'%20stroke-width='2'%20stroke-linecap='round'%20stroke-linejoin='round'%3e%3cpath%20d='M3%2012h4l3%208l4%20-16l3%208h4'%20/%3e%3c/svg%3e");--icon-adjustments:url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20width='24'%20height='24'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='currentColor'%20stroke-width='2'%20stroke-linecap='round'%20stroke-linejoin='round'%3e%3cpath%20d='M4%2010a2%202%200%201%200%204%200a2%202%200%200%200%20-4%200'%20/%3e%3cpath%20d='M6%204v4'%20/%3e%3cpath%20d='M6%2012v8'%20/%3e%3cpath%20d='M10%2016a2%202%200%201%200%204%200a2%202%200%200%200%20-4%200'%20/%3e%3cpath%20d='M12%204v10'%20/%3e%3cpath%20d='M12%2018v2'%20/%3e%3cpath%20d='M16%207a2%202%200%201%200%204%200a2%202%200%200%200%20-4%200'%20/%3e%3cpath%20d='M18%204v1'%20/%3e%3cpath%20d='M18%209v11'%20/%3e%3c/svg%3e");--icon-apps:url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20width='24'%20height='24'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='currentColor'%20stroke-width='2'%20stroke-linecap='round'%20stroke-linejoin='round'%3e%3cpath%20d='M4%205a1%201%200%200%201%201%20-1h4a1%201%200%200%201%201%201v4a1%201%200%200%201%20-1%201h-4a1%201%200%200%201%20-1%20-1l0%20-4'%20/%3e%3cpath%20d='M4%2015a1%201%200%200%201%201%20-1h4a1%201%200%200%201%201%201v4a1%201%200%200%201%20-1%201h-4a1%201%200%200%201%20-1%20-1l0%20-4'%20/%3e%3cpath%20d='M14%2015a1%201%200%200%201%201%20-1h4a1%201%200%200%201%201%201v4a1%201%200%200%201%20-1%201h-4a1%201%200%200%201%20-1%20-1l0%20-4'%20/%3e%3cpath%20d='M14%207l6%200'%20/%3e%3cpath%20d='M17%204l0%206'%20/%3e%3c/svg%3e");--icon-arrow-down:url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2020%2020'%20width='24'%20height='24'%20fill='%23000000'%20style='opacity:1;'%3e%3cpath%20fill-rule='evenodd'%20d='M5.22%208.22a.75.75%200%200%201%201.06%200L10%2011.94l3.72-3.72a.75.75%200%201%201%201.06%201.06l-4.25%204.25a.75.75%200%200%201-1.06%200L5.22%209.28a.75.75%200%200%201%200-1.06'%20clip-rule='evenodd'/%3e%3c/svg%3e");--icon-arrow-down-dark:url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2020%2020'%20width='24'%20height='24'%20fill='%23ffffff'%20style='opacity:1;'%3e%3cpath%20fill-rule='evenodd'%20d='M5.22%208.22a.75.75%200%200%201%201.06%200L10%2011.94l3.72-3.72a.75.75%200%201%201%201.06%201.06l-4.25%204.25a.75.75%200%200%201-1.06%200L5.22%209.28a.75.75%200%200%201%200-1.06'%20clip-rule='evenodd'/%3e%3c/svg%3e");--icon-arrow-right:url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2020%2020'%20width='24'%20height='24'%20fill='%23000000'%20style='opacity:1;'%3e%3cpath%20fill-rule='evenodd'%20d='M8.22%205.22a.75.75%200%200%201%201.06%200l4.25%204.25a.75.75%200%200%201%200%201.06l-4.25%204.25a.75.75%200%200%201-1.06-1.06L11.94%2010L8.22%206.28a.75.75%200%200%201%200-1.06'%20clip-rule='evenodd'/%3e%3c/svg%3e");--icon-box:url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20width='24'%20height='24'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='currentColor'%20stroke-width='2'%20stroke-linecap='round'%20stroke-linejoin='round'%3e%3cpath%20d='M12%203l8%204.5l0%209l-8%204.5l-8%20-4.5l0%20-9l8%20-4.5'%20/%3e%3cpath%20d='M12%2012l8%20-4.5'%20/%3e%3cpath%20d='M12%2012l0%209'%20/%3e%3cpath%20d='M12%2012l-8%20-4.5'%20/%3e%3c/svg%3e");--icon-category:url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20width='24'%20height='24'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='currentColor'%20stroke-width='2'%20stroke-linecap='round'%20stroke-linejoin='round'%3e%3cpath%20d='M4%204h6v6h-6l0%20-6'%20/%3e%3cpath%20d='M14%204h6v6h-6l0%20-6'%20/%3e%3cpath%20d='M4%2014h6v6h-6l0%20-6'%20/%3e%3cpath%20d='M14%2017a3%203%200%201%200%206%200a3%203%200%201%200%20-6%200'%20/%3e%3c/svg%3e");--icon-chart-bar:url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20width='24'%20height='24'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='currentColor'%20stroke-width='2'%20stroke-linecap='round'%20stroke-linejoin='round'%3e%3cpath%20d='M3%2013a1%201%200%200%201%201%20-1h4a1%201%200%200%201%201%201v6a1%201%200%200%201%20-1%201h-4a1%201%200%200%201%20-1%20-1l0%20-6'%20/%3e%3cpath%20d='M15%209a1%201%200%200%201%201%20-1h4a1%201%200%200%201%201%201v10a1%201%200%200%201%20-1%201h-4a1%201%200%200%201%20-1%20-1l0%20-10'%20/%3e%3cpath%20d='M9%205a1%201%200%200%201%201%20-1h4a1%201%200%200%201%201%201v14a1%201%200%200%201%20-1%201h-4a1%201%200%200%201%20-1%20-1l0%20-14'%20/%3e%3cpath%20d='M4%2020h14'%20/%3e%3c/svg%3e");--icon-check:url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%201024%201024'%3e%3cpath%20d='M918.8%2083.7c-43.5-30.3-104-19.5-134.6%2024.1l-425.8%20606-127-135.7c-36.4-38.9-98.1-41.1-137-4.8-39%2036.2-41.1%2097.7-4.7%20136.6l206.5%20220.7c4.7%205%209.8%209.4%2015.1%2013.1.7.5%201.4%201%202.2%201.5%2043.5%2030.3%20104%2019.5%20134.6-24.1l494-703.2c30.7-43.5%2020.1-103.9-23.3-134.2z'/%3e%3c/svg%3e");--icon-cpu:url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20width='24'%20height='24'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='currentColor'%20stroke-width='2'%20stroke-linecap='round'%20stroke-linejoin='round'%3e%3cpath%20d='M5%206a1%201%200%200%201%201%20-1h12a1%201%200%200%201%201%201v12a1%201%200%200%201%20-1%201h-12a1%201%200%200%201%20-1%20-1l0%20-12'%20/%3e%3cpath%20d='M9%209h6v6h-6l0%20-6'%20/%3e%3cpath%20d='M3%2010h2'%20/%3e%3cpath%20d='M3%2014h2'%20/%3e%3cpath%20d='M10%203v2'%20/%3e%3cpath%20d='M14%203v2'%20/%3e%3cpath%20d='M21%2010h-2'%20/%3e%3cpath%20d='M21%2014h-2'%20/%3e%3cpath%20d='M14%2021v-2'%20/%3e%3cpath%20d='M10%2021v-2'%20/%3e%3c/svg%3e");--icon-error:url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20width='24'%20height='24'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='currentColor'%20stroke-width='2'%20stroke-linecap='round'%20stroke-linejoin='round'%3e%3cpath%20d='M12%209v4'%20/%3e%3cpath%20d='M10.363%203.591l-8.106%2013.534a1.914%201.914%200%200%200%201.636%202.871h16.214a1.914%201.914%200%200%200%201.636%20-2.87l-8.106%20-13.536a1.914%201.914%200%200%200%20-3.274%200'%20/%3e%3cpath%20d='M12%2016h.01'%20/%3e%3c/svg%3e");--icon-gauge:url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20width='24'%20height='24'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='currentColor'%20stroke-width='2'%20stroke-linecap='round'%20stroke-linejoin='round'%3e%3cpath%20d='M3%2012a9%209%200%201%200%2018%200a9%209%200%201%200%20-18%200'%20/%3e%3cpath%20d='M11%2012a1%201%200%201%200%202%200a1%201%200%201%200%20-2%200'%20/%3e%3cpath%20d='M13.41%2010.59l2.59%20-2.59'%20/%3e%3cpath%20d='M7%2012a5%205%200%200%201%205%20-5'%20/%3e%3c/svg%3e");--icon-info:url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2016%2016'%20width='24'%20height='24'%20fill='%23000000'%20style='opacity:1;'%3e%3cpath%20fill-rule='evenodd'%20d='M15%208A7%207%200%201%201%201%208a7%207%200%200%201%2014%200M9%205a1%201%200%201%201-2%200a1%201%200%200%201%202%200M6.75%208a.75.75%200%200%200%200%201.5h.75v1.75a.75.75%200%200%200%201.5%200v-2.5A.75.75%200%200%200%208.25%208z'%20clip-rule='evenodd'/%3e%3c/svg%3e");--icon-package:url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20width='24'%20height='24'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='currentColor'%20stroke-width='2'%20stroke-linecap='round'%20stroke-linejoin='round'%3e%3cpath%20d='M12%203l8%204.5l0%209l-8%204.5l-8%20-4.5l0%20-9l8%20-4.5'%20/%3e%3cpath%20d='M12%2012l8%20-4.5'%20/%3e%3cpath%20d='M12%2012l0%209'%20/%3e%3cpath%20d='M12%2012l-8%20-4.5'%20/%3e%3cpath%20d='M16%205.25l-8%204.5'%20/%3e%3c/svg%3e");--icon-phone:url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20width='24'%20height='24'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='currentColor'%20stroke-width='2'%20stroke-linecap='round'%20stroke-linejoin='round'%3e%3cpath%20d='M5%204h4l2%205l-2.5%201.5a11%2011%200%200%200%205%205l1.5%20-2.5l5%202v4a2%202%200%200%201%20-2%202a16%2016%200%200%201%20-15%20-15a2%202%200%200%201%202%20-2'%20/%3e%3c/svg%3e");--icon-radio:url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2024%2024'%20fill='currentColor'%3e%3ccircle%20cx='12'%20cy='12'%20r='6'/%3e%3c/svg%3e");--icon-refresh:url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20width='24'%20height='24'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='currentColor'%20stroke-width='2'%20stroke-linecap='round'%20stroke-linejoin='round'%3e%3cpath%20d='M20%2011a8.1%208.1%200%200%200%20-15.5%20-2m-.5%20-4v4h4'%20/%3e%3cpath%20d='M4%2013a8.1%208.1%200%200%200%2015.5%202m.5%204v-4h-4'%20/%3e%3c/svg%3e");--icon-refresh-off:url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20width='24'%20height='24'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='currentColor'%20stroke-width='2'%20stroke-linecap='round'%20stroke-linejoin='round'%3e%3cpath%20d='M20%2011a8.1%208.1%200%200%200%20-11.271%20-6.305m-2.41%201.624a8.083%208.083%200%200%200%20-1.819%202.681m-.5%20-4v4h4'%20/%3e%3cpath%20d='M4%2013a8.1%208.1%200%200%200%2013.671%204.691m2.329%20-1.691v-1h-1'%20/%3e%3cpath%20d='M3%203l18%2018'%20/%3e%3c/svg%3e");--icon-router:url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20width='24'%20height='24'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='currentColor'%20stroke-width='2'%20stroke-linecap='round'%20stroke-linejoin='round'%3e%3cpath%20d='M3%2015a2%202%200%200%201%202%20-2h14a2%202%200%200%201%202%202v4a2%202%200%200%201%20-2%202h-14a2%202%200%200%201%20-2%20-2l0%20-4'%20/%3e%3cpath%20d='M17%2017l0%20.01'%20/%3e%3cpath%20d='M13%2017l0%20.01'%20/%3e%3cpath%20d='M15%2013l0%20-2'%20/%3e%3cpath%20d='M11.75%208.75a4%204%200%200%201%206.5%200'%20/%3e%3cpath%20d='M8.5%206.5a8%208%200%200%201%2013%200'%20/%3e%3c/svg%3e");--icon-search:url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20width='24'%20height='24'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='currentColor'%20stroke-width='2'%20stroke-linecap='round'%20stroke-linejoin='round'%3e%3cpath%20d='M10%2010m-7%200a7%207%200%201%200%2014%200a7%207%200%201%200%20-14%200'%20/%3e%3cpath%20d='M21%2021l-6%20-6'%20/%3e%3c/svg%3e");--icon-server:url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20width='24'%20height='24'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='currentColor'%20stroke-width='2'%20stroke-linecap='round'%20stroke-linejoin='round'%3e%3cpath%20d='M3%207a3%203%200%200%201%203%20-3h12a3%203%200%200%201%203%203v2a3%203%200%200%201%20-3%203h-12a3%203%200%200%201%20-3%20-3v-2'%20/%3e%3cpath%20d='M3%2015a3%203%200%200%201%203%20-3h12a3%203%200%200%201%203%203v2a3%203%200%200%201%20-3%203h-12a3%203%200%200%201%20-3%20-3l0%20-2'%20/%3e%3cpath%20d='M7%208l0%20.01'%20/%3e%3cpath%20d='M7%2016l0%20.01'%20/%3e%3cpath%20d='M11%208h6'%20/%3e%3cpath%20d='M11%2016h6'%20/%3e%3c/svg%3e");--icon-settings:url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20width='24'%20height='24'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='currentColor'%20stroke-width='2'%20stroke-linecap='round'%20stroke-linejoin='round'%3e%3cpath%20d='M10.325%204.317c.426%20-1.756%202.924%20-1.756%203.35%200a1.724%201.724%200%200%200%202.573%201.066c1.543%20-.94%203.31%20.826%202.37%202.37a1.724%201.724%200%200%200%201.065%202.572c1.756%20.426%201.756%202.924%200%203.35a1.724%201.724%200%200%200%20-1.066%202.573c.94%201.543%20-.826%203.31%20-2.37%202.37a1.724%201.724%200%200%200%20-2.572%201.065c-.426%201.756%20-2.924%201.756%20-3.35%200a1.724%201.724%200%200%200%20-2.573%20-1.066c-1.543%20.94%20-3.31%20-.826%20-2.37%20-2.37a1.724%201.724%200%200%200%20-1.065%20-2.572c-1.756%20-.426%20-1.756%20-2.924%200%20-3.35a1.724%201.724%200%200%200%201.066%20-2.573c-.94%20-1.543%20.826%20-3.31%202.37%20-2.37c1%20.608%202.296%20.07%202.572%20-1.065'%20/%3e%3cpath%20d='M9%2012a3%203%200%201%200%206%200a3%203%200%200%200%20-6%200'%20/%3e%3c/svg%3e");--icon-shield:url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20width='24'%20height='24'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='currentColor'%20stroke-width='2'%20stroke-linecap='round'%20stroke-linejoin='round'%3e%3cpath%20d='M12%203a12%2012%200%200%200%208.5%203a12%2012%200%200%201%20-8.5%2015a12%2012%200%200%201%20-8.5%20-15a12%2012%200%200%200%208.5%20-3'%20/%3e%3c/svg%3e");--icon-spinning:url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%201024%201024'%3e%3cpath%20opacity='.05'%20d='M512%2085.333c235.648%200%20426.667%20191.019%20426.667%20426.667S747.648%20938.667%20512%20938.667%2085.333%20747.648%2085.333%20512%20276.352%2085.333%20512%2085.333zm0%20128a298.667%20298.667%200%201%200%200%20597.334%20298.667%20298.667%200%200%200%200-597.334z'/%3e%3cpath%20d='M813.696%20813.696c166.613-166.613%20166.613-436.779%200-603.392s-436.779-166.613-603.392%200a64%2064%200%200%200%2090.496%2090.496%20298.667%20298.667%200%201%201%20422.4%20422.4%2064%2064%200%200%200%2090.496%2090.496z'/%3e%3c/svg%3e");--icon-tag:url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20width='24'%20height='24'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='currentColor'%20stroke-width='2'%20stroke-linecap='round'%20stroke-linejoin='round'%3e%3cpath%20d='M6.5%207.5a1%201%200%201%200%202%200a1%201%200%201%200%20-2%200'%20/%3e%3cpath%20d='M3%206v5.172a2%202%200%200%200%20.586%201.414l7.71%207.71a2.41%202.41%200%200%200%203.408%200l5.592%20-5.592a2.41%202.41%200%200%200%200%20-3.408l-7.71%20-7.71a2%202%200%200%200%20-1.414%20-.586h-5.172a3%203%200%200%200%20-3%203'%20/%3e%3c/svg%3e");--icon-world:url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20width='24'%20height='24'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='currentColor'%20stroke-width='2'%20stroke-linecap='round'%20stroke-linejoin='round'%3e%3cpath%20d='M3%2012a9%209%200%201%200%2018%200a9%209%200%200%200%20-18%200'%20/%3e%3cpath%20d='M3.6%209h16.8'%20/%3e%3cpath%20d='M3.6%2015h16.8'%20/%3e%3cpath%20d='M11.5%203a17%2017%200%200%200%200%2018'%20/%3e%3cpath%20d='M12.5%203a17%2017%200%200%201%200%2018'%20/%3e%3c/svg%3e");--icon-x:url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20width='24'%20height='24'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='currentColor'%20stroke-width='2'%20stroke-linecap='round'%20stroke-linejoin='round'%3e%3cpath%20d='M18%206l-12%2012'%20/%3e%3cpath%20d='M6%206l12%2012'%20/%3e%3c/svg%3e")}html{background-color:var(--bg);min-height:100dvh;font-family:var(--font-sans);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}html[data-darkmode=true]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}html body{background-color:var(--bg);min-height:100dvh}.page-bg{pointer-events:none;background-image:var(--page-bg-lqip,var(--page-bg));background-position:50%;background-repeat:no-repeat;background-size:cover;position:fixed;inset:0;transform:translateZ(0)}.page-bg:after{pointer-events:none;background-image:var(--page-bg);opacity:0;--tw-content:"";content:var(--tw-content);background-position:50%;background-repeat:no-repeat;background-size:cover;transition:opacity .5s;position:absolute;inset:0}.page-bg.full-loaded:after{opacity:1}:not(html){scrollbar-width:thin;scrollbar-color:var(--text-muted) transparent}html{scrollbar-width:thin;scrollbar-color:var(--text-muted) var(--surface);scrollbar-gutter:stable}html body{min-height:100dvh;font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));--tw-leading:var(--leading-relaxed);line-height:var(--leading-relaxed);--tw-font-weight:var(--font-weight-normal);font-weight:var(--font-weight-normal);color:var(--text);flex-direction:column;display:flex;position:relative}html body.modal-overlay-active{height:100vh;overflow:hidden}h1,h2,h3,h4,h5,h6{font-family:var(--font-sans);--tw-leading:var(--leading-tight);line-height:var(--leading-tight);--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold);--tw-tracking:var(--tracking-tight);letter-spacing:var(--tracking-tight);color:var(--text)}h1{margin-bottom:calc(var(--spacing) * 4);padding-left:calc(var(--spacing) * 6);font-size:var(--text-3xl);line-height:var(--tw-leading,var(--text-3xl--line-height))}@media not all and (min-width:48rem){h1{padding-left:calc(var(--spacing) * 4);font-size:var(--text-2xl);line-height:var(--tw-leading,var(--text-2xl--line-height))}}h2{margin-bottom:calc(var(--spacing) * 4);padding-left:calc(var(--spacing) * 5);font-size:var(--text-2xl);line-height:var(--tw-leading,var(--text-2xl--line-height))}@media not all and (min-width:48rem){h2{margin-bottom:calc(var(--spacing) * 2);padding-left:calc(var(--spacing) * 4);font-size:var(--text-xl);line-height:var(--tw-leading,var(--text-xl--line-height))}}h3{margin-bottom:calc(var(--spacing) * 4);font-size:var(--text-xl);line-height:var(--tw-leading,var(--text-xl--line-height));--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold);--tw-tracking:var(--tracking-tight);letter-spacing:var(--tracking-tight)}@media not all and (min-width:48rem){h3{margin-bottom:calc(var(--spacing) * 2);font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height))}}h4{margin-bottom:calc(var(--spacing) * 2);font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height))}@media not all and (min-width:48rem){h4{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}}h5{margin-bottom:calc(var(--spacing) * 2);font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}@media not all and (min-width:48rem){h5{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}}h6{margin-bottom:calc(var(--spacing) * 2);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}@media not all and (min-width:48rem){h6{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}}hr{margin-block:calc(var(--spacing) * 6);border-top-style:var(--tw-border-style);border-top-width:1px;border-color:var(--hairline)}@media not all and (min-width:48rem){hr{margin-block:calc(var(--spacing) * 4)}}strong{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold);--tw-tracking:var(--tracking-tight);letter-spacing:var(--tracking-tight)}abbr{cursor:help}p{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));--tw-leading:var(--leading-relaxed);line-height:var(--leading-relaxed);color:var(--text)}pre{border-radius:calc(var(--radius-base) * 1.5);border-style:var(--tw-border-style);border-width:1px;border-color:var(--hairline);background-color:var(--surface-sunken);padding-inline:calc(var(--spacing) * 3);padding-block:calc(var(--spacing) * 2);font-family:var(--font-mono);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));--tw-leading:var(--leading-relaxed);line-height:var(--leading-relaxed);overflow-wrap:break-word;white-space:pre-wrap;color:var(--text-muted);display:block}code{border-radius:calc(var(--radius-base) * .5);background-color:var(--surface-sunken);padding-inline:calc(var(--spacing) * 2);padding-block:var(--spacing);font-family:var(--font-mono);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));color:var(--text-muted)}a{color:var(--link);text-decoration-line:none}@media (hover:hover){a:hover{text-decoration-line:underline}}var{font-family:var(--font-mono);color:var(--link)}small{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height));--tw-font-weight:var(--font-weight-normal);font-weight:var(--font-weight-normal);color:var(--text)}em{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium);color:var(--text-muted);font-style:italic}header{z-index:40;margin-bottom:calc(var(--spacing) * 2);background-color:var(--bg);position:sticky;top:0}header .header-content{z-index:10;height:calc(var(--spacing) * 14);padding-inline:calc(var(--spacing) * 6);padding-block:calc(var(--spacing) * 3);justify-content:space-between;align-items:center;display:flex;position:relative}@media not all and (min-width:48rem){header .header-content{padding-inline:calc(var(--spacing) * 4);padding-block:calc(var(--spacing) * 2)}}[data-nav-type=mega-menu] :is(header) .desktop-menu-container{pointer-events:none;visibility:hidden;z-index:0;height:calc(var(--mega-menu-height,0px) + 3.5rem + 3rem);inset-inline:0;width:100%;position:absolute;top:0;overflow:clip}@media not all and (min-width:48rem){[data-nav-type=mega-menu] :is(header) .desktop-menu-container{display:none}}[data-nav-type=mega-menu] :is(header) .desktop-menu-container.active,[data-nav-type=mega-menu] :is(header) .desktop-menu-container.closing{visibility:visible}[data-nav-type=mega-menu] :is(header) .desktop-menu-container.active{pointer-events:auto}[data-nav-type=mega-menu] :is(header) .desktop-menu-container.closing{opacity:0;transition-property:opacity;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration));--tw-duration:.22s;--tw-ease:cubic-bezier(.4,0,.6,1);transition-duration:.22s;transition-timing-function:cubic-bezier(.4,0,.6,1)}@media (prefers-reduced-motion:reduce){[data-nav-type=mega-menu] :is(header) .desktop-menu-container.closing{transition-property:none}}[data-nav-type=mega-menu] :is(header) .desktop-menu-container .desktop-menu-sheet{height:calc(var(--mega-menu-height,0px) + 3.5rem);--tw-translate-y:-100%;translate:var(--tw-translate-x) var(--tw-translate-y);background-color:var(--mega-menu-bg);transition-property:translate;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration));--tw-duration:var(--mega-menu-duration,.3s);transition-duration:var(--mega-menu-duration,.3s);--tw-ease:cubic-bezier(.4,0,.6,1);inset-inline:0;transition-timing-function:cubic-bezier(.4,0,.6,1);position:absolute;top:0;overflow:hidden}@media (prefers-reduced-motion:reduce){[data-nav-type=mega-menu] :is(header) .desktop-menu-container .desktop-menu-sheet{transition-property:none}}[data-nav-type=mega-menu] :is(header) .desktop-menu-container .desktop-menu-sheet:after{content:var(--tw-content);pointer-events:none;content:var(--tw-content);content:var(--tw-content);content:var(--tw-content);border-bottom-style:var(--tw-border-style);content:var(--tw-content);border-bottom-width:1px;border-color:var(--hairline);content:var(--tw-content);--tw-shadow:var(--app-shadow-lg);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);content:var(--tw-content);transition-property:opacity;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration));content:var(--tw-content);--tw-duration:var(--mega-menu-duration,.3s);transition-duration:var(--mega-menu-duration,.3s);--tw-content:"";content:var(--tw-content);position:absolute;inset:0}@media (prefers-reduced-motion:reduce){[data-nav-type=mega-menu] :is(header) .desktop-menu-container .desktop-menu-sheet:after{content:var(--tw-content);transition-property:none}}[data-nav-type=mega-menu] :is(header) .desktop-menu-container .desktop-menu-canvas{--tw-translate-y:100%;translate:var(--tw-translate-x) var(--tw-translate-y);transition-property:translate;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration));--tw-duration:var(--mega-menu-duration,.3s);transition-duration:var(--mega-menu-duration,.3s);--tw-ease:cubic-bezier(.4,0,.6,1);transition-timing-function:cubic-bezier(.4,0,.6,1);position:absolute;inset:0}@media (prefers-reduced-motion:reduce){[data-nav-type=mega-menu] :is(header) .desktop-menu-container .desktop-menu-canvas{transition-property:none}}[data-nav-type=mega-menu] :is(header) .desktop-menu-container.active .desktop-menu-sheet,[data-nav-type=mega-menu] :is(header) .desktop-menu-container.active .desktop-menu-canvas{--tw-translate-y:0;translate:var(--tw-translate-x) var(--tw-translate-y)}[data-nav-type=mega-menu] :is(header) .desktop-menu-container.closing .desktop-menu-sheet:after{content:var(--tw-content);opacity:0}[data-nav-type=mega-menu] :is(header) .desktop-menu-container>.desktop-menu-board{display:none}[data-nav-type=mega-menu] :is(header) .desktop-menu-container .desktop-nav{pointer-events:none;inset-inline:0;top:calc(var(--spacing) * 14);--tw-translate-y:calc(var(--spacing) * 1.5);max-width:72rem;max-height:calc(100dvh - 3.5rem);translate:var(--tw-translate-x) var(--tw-translate-y);column-gap:calc(var(--spacing) * 8);overscroll-behavior:contain;padding-inline:calc(var(--spacing) * 10);padding-top:calc(var(--spacing) * 13);padding-bottom:calc(var(--spacing) * 8);opacity:0;transition-property:opacity,translate;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration));--tw-duration:.25s;--tw-ease:var(--ease-out);transition-duration:.25s;transition-timing-function:var(--ease-out);grid-template-columns:12rem minmax(0,1fr) 13rem;margin-inline:auto;display:grid;position:absolute;overflow-y:auto}@media not all and (min-width:64rem){[data-nav-type=mega-menu] :is(header) .desktop-menu-container .desktop-nav{max-width:44rem;padding-inline:calc(var(--spacing) * 8);grid-template-columns:repeat(1,minmax(0,1fr))}}[data-nav-type=mega-menu] :is(header) .desktop-menu-container .desktop-nav.active{pointer-events:auto;--tw-translate-y:0;translate:var(--tw-translate-x) var(--tw-translate-y);opacity:1}[data-nav-type=mega-menu] :is(header) .desktop-menu-container .desktop-nav .desktop-nav-anchor{align-self:flex-start}@media not all and (min-width:64rem){[data-nav-type=mega-menu] :is(header) .desktop-menu-container .desktop-nav .desktop-nav-anchor{display:none}}[data-nav-type=mega-menu] :is(header) .desktop-menu-container .desktop-nav .desktop-nav-anchor .desktop-nav-title{align-items:center;gap:calc(var(--spacing) * 2.5);font-size:var(--text-2xl);line-height:var(--tw-leading,var(--text-2xl--line-height));--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold);--tw-tracking:var(--tracking-tight);letter-spacing:var(--tracking-tight);color:var(--text);display:flex}[data-nav-type=mega-menu] :is(header) .desktop-menu-container .desktop-nav .desktop-nav-anchor .desktop-nav-title:before{width:calc(var(--spacing) * 6);height:calc(var(--spacing) * 6);--tw-content:"";content:var(--tw-content);-webkit-mask:var(--menu-icon,var(--icon-category)) center/contain no-repeat;-webkit-mask:var(--menu-icon,var(--icon-category)) center/contain no-repeat;-webkit-mask:var(--menu-icon,var(--icon-category)) center/contain no-repeat;mask:var(--menu-icon,var(--icon-category)) center/contain no-repeat;background-color:currentColor;flex-shrink:0}[data-nav-type=mega-menu] :is(header) .desktop-menu-container .desktop-nav .desktop-nav-list{grid-auto-flow:column;grid-template-rows:repeat(var(--menu-rows,6),auto);place-content:flex-start;column-gap:calc(var(--spacing) * 8);row-gap:var(--spacing);display:grid}[data-nav-type=mega-menu] :is(header) .desktop-menu-container .desktop-nav .desktop-nav-list>li{margin:0;list-style-type:none}[data-nav-type=mega-menu] :is(header) .desktop-menu-container .desktop-nav .desktop-nav-list>li>a{border-radius:calc(var(--radius-base) * 1.5);width:fit-content;padding-inline:calc(var(--spacing) * 3);padding-block:calc(var(--spacing) * 2);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));white-space:nowrap;color:var(--text);transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration));--tw-duration:.15s;text-decoration-line:none;transition-duration:.15s;display:block}@media (hover:hover){[data-nav-type=mega-menu] :is(header) .desktop-menu-container .desktop-nav .desktop-nav-list>li>a:hover{background-color:var(--hover-faint)}}[data-nav-type=mega-menu] :is(header) .desktop-menu-container .desktop-nav .desktop-nav-list>li>a.is-active-page{background-color:var(--brand-subtle);--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium);color:var(--brand)}[data-nav-type=mega-menu] :is(header) .desktop-menu-container .desktop-nav .desktop-menu-board{gap:calc(var(--spacing) * 2);border-left-style:var(--tw-border-style);border-left-width:1px;border-color:var(--hairline);padding-left:calc(var(--spacing) * 7);flex-direction:column;align-self:flex-start;display:flex}@media not all and (min-width:64rem){[data-nav-type=mega-menu] :is(header) .desktop-menu-container .desktop-nav .desktop-menu-board{display:none}}[data-nav-type=mega-menu] :is(header) .desktop-menu-container .desktop-nav .desktop-menu-board .board-label{margin-bottom:calc(var(--spacing) * .5);--tw-font-weight:var(--font-weight-medium);font-size:11px;font-weight:var(--font-weight-medium);--tw-tracking:var(--tracking-wide);letter-spacing:var(--tracking-wide);color:var(--text-subtle);text-transform:uppercase}[data-nav-type=mega-menu] :is(header) .desktop-menu-container .desktop-nav .desktop-menu-board .board-line{align-items:flex-start;gap:calc(var(--spacing) * 2.5);max-width:100%;font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height));color:var(--text-muted);display:flex}[data-nav-type=mega-menu] :is(header) .desktop-menu-container .desktop-nav .desktop-menu-board .board-line:before{width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4);--tw-content:"";content:var(--tw-content);background-color:currentColor;flex-shrink:0}[data-nav-type=mega-menu] :is(header) .desktop-menu-container .desktop-nav .desktop-menu-board .board-line .board-text{--tw-leading:calc(var(--spacing) * 4);min-width:0;line-height:calc(var(--spacing) * 4);overflow-wrap:anywhere}[data-nav-type=mega-menu] :is(header) .desktop-menu-container .desktop-nav .desktop-menu-board .board-line-host:before{-webkit-mask:var(--icon-router) center/contain no-repeat;-webkit-mask:var(--icon-router) center/contain no-repeat;-webkit-mask:var(--icon-router) center/contain no-repeat;mask:var(--icon-router) center/contain no-repeat}[data-nav-type=mega-menu] :is(header) .desktop-menu-container .desktop-nav .desktop-menu-board .board-line-model:before{-webkit-mask:var(--icon-cpu) center/contain no-repeat;-webkit-mask:var(--icon-cpu) center/contain no-repeat;-webkit-mask:var(--icon-cpu) center/contain no-repeat;mask:var(--icon-cpu) center/contain no-repeat}[data-nav-type=mega-menu] :is(header) .desktop-menu-container .desktop-nav .desktop-menu-board .board-line-firmware:before{-webkit-mask:var(--icon-package) center/contain no-repeat;-webkit-mask:var(--icon-package) center/contain no-repeat;-webkit-mask:var(--icon-package) center/contain no-repeat;mask:var(--icon-package) center/contain no-repeat}[data-nav-type=mega-menu] :is(header) .desktop-menu-container .desktop-nav .desktop-menu-board .board-line-kernel:before{-webkit-mask:var(--icon-tag) center/contain no-repeat;-webkit-mask:var(--icon-tag) center/contain no-repeat;-webkit-mask:var(--icon-tag) center/contain no-repeat;mask:var(--icon-tag) center/contain no-repeat}[data-nav-type=mega-menu] :is(header):has(.desktop-menu-container:is(.active,.closing)){z-index:70}header .brand{font-size:var(--text-xl);line-height:var(--tw-leading,var(--text-xl--line-height));--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold);--tw-tracking:var(--tracking-tight);letter-spacing:var(--tracking-tight);color:var(--text);transition-property:color,transform;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration));--tw-duration:.15s;flex-shrink:0;text-decoration-line:none;transition-duration:.15s;display:inline-block}@media (hover:hover){header .brand:hover{--tw-translate-y:calc(var(--spacing) * -.5);translate:var(--tw-translate-x) var(--tw-translate-y);color:var(--brand)}}@media not all and (min-width:48rem){header .brand{font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height));flex:1}}@media (min-width:48rem){[data-nav-type=sidebar] :is(header .brand){display:none}[data-nav-type=sidebar].sidebar-collapsed :is(header .brand){transition-property:opacity;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration));--tw-duration:.15s;transition-duration:.15s;display:inline-block}@starting-style{[data-nav-type=sidebar].sidebar-collapsed :is(header .brand){opacity:0}}}header .nav{z-index:60;--tw-translate-x:calc(calc(1 / 2 * 100%) * -1);translate:var(--tw-translate-x) var(--tw-translate-y);transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,);align-items:center;gap:var(--spacing);margin:0;padding:0;list-style-type:none;display:flex;position:absolute;left:50%}@media not all and (min-width:48rem){header .nav{display:none}}header .nav>li{position:relative}header .nav>li .menu{border-radius:calc(var(--radius-base) * 1.5);padding-inline:calc(var(--spacing) * 3.5);padding-block:calc(var(--spacing) * 1.5);--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium);color:var(--text);text-decoration-line:none;display:block}@media (hover:hover){header .nav>li .menu:hover{background-color:var(--hover-faint)}}header .nav>li .menu.menu-active{background-color:var(--brand-subtle);color:var(--brand)}header .nav>li .desktop-nav{pointer-events:none;z-index:40;opacity:0;transition-property:opacity;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration));--tw-duration:.15s;padding-inline:0;padding-top:0;transition-duration:.15s;left:0}[data-nav-type=dropdown] :is(header .nav>li .desktop-nav){margin-top:calc(var(--spacing) * 2);min-width:calc(var(--spacing) * 48);position:absolute;top:100%}header .nav>li .desktop-nav.active{pointer-events:auto;opacity:1}[data-nav-type=dropdown] :is(header .nav>li .desktop-nav .desktop-nav-list){row-gap:var(--spacing);border-radius:calc(var(--radius-base) * 3);border-style:var(--tw-border-style);border-width:1px;border-color:var(--hairline);background-color:var(--surface-overlay);padding-block:calc(var(--spacing) * 2);--tw-shadow:var(--app-shadow-md);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);--tw-backdrop-blur:blur(var(--blur-md));--tw-backdrop-saturate:saturate(150%);-webkit-backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);flex-direction:column;display:flex}header .nav>li .desktop-nav .desktop-nav-list>li{margin:0;list-style-type:none}header .nav>li .desktop-nav .desktop-nav-list>li>a{white-space:nowrap;color:var(--text);text-decoration-line:none;display:block}[data-nav-type=dropdown] :is(header .nav>li .desktop-nav .desktop-nav-list>li>a){margin-inline:calc(var(--spacing) * 2);border-radius:calc(var(--radius-base) * 1.5);padding-inline:calc(var(--spacing) * 4);padding-block:calc(var(--spacing) * 2);transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration));--tw-duration:.15s;transition-duration:.15s}@media (hover:hover){[data-nav-type=dropdown] :is(header .nav>li .desktop-nav .desktop-nav-list>li>a):hover{background-color:var(--hover-faint)}}header .nav>li .desktop-nav .desktop-nav-list>li>a.is-active-page{background-color:var(--brand-subtle);--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium);color:var(--brand)}header .navigation-controls{margin-right:calc(var(--spacing) * 3);flex-shrink:0;align-items:center;display:flex}@media (min-width:48rem){header .navigation-controls{display:none}[data-nav-type=sidebar] :is(header .navigation-controls){display:flex}[data-nav-type=sidebar]:not(.sidebar-collapsed) :is(header .navigation-controls) .navigation-toggle-line-bottom{stroke-dasharray:15 15}}header .navigation-controls .navigation-toggle{cursor:pointer;border-style:var(--tw-border-style);--tw-shadow:0 0 #0000;box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);transition-property:transform,translate,scale,rotate;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration));--tw-duration:.15s;background-color:#0000;border-width:0;border-radius:0;padding:0;transition-duration:.15s}@media (hover:hover){header .navigation-controls .navigation-toggle:hover{--tw-scale-x:105%;--tw-scale-y:105%;--tw-scale-z:105%;scale:var(--tw-scale-x) var(--tw-scale-y)}}header .navigation-controls .navigation-toggle:active{--tw-scale-x:95%;--tw-scale-y:95%;--tw-scale-z:95%;scale:var(--tw-scale-x) var(--tw-scale-y)}header .navigation-controls .navigation-toggle svg{width:calc(var(--spacing) * 5);height:calc(var(--spacing) * 5);color:var(--text)}header .navigation-controls .navigation-toggle .navigation-toggle-line{transform-box:fill-box;transform-origin:50%;transition-property:transform,opacity,stroke-dasharray;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration));--tw-duration:.15s;--tw-ease:var(--ease-in-out);transition-duration:.15s;transition-timing-function:var(--ease-in-out)}@media (min-width:48rem){[data-nav-type=sidebar] :is(header .navigation-controls .navigation-toggle .navigation-toggle-line){--tw-duration:.25s;transition-duration:.25s}}header .navigation-controls .navigation-toggle .navigation-toggle-line-bottom{stroke-dasharray:7.5 15}header .navigation-controls .navigation-toggle.is-expanded .navigation-toggle-line-top{transform:translateY(5px)rotate(45deg)}header .navigation-controls .navigation-toggle.is-expanded .navigation-toggle-line-middle{opacity:0;transform:scaleX(.35)}header .navigation-controls .navigation-toggle.is-expanded .navigation-toggle-line-bottom{stroke-dasharray:15 15;transform:translateY(-5px)rotate(-45deg)}header #indicators{margin-right:calc(var(--spacing) * 4);gap:calc(var(--spacing) * 5);flex-direction:row-reverse;flex-shrink:0;margin-left:auto;display:flex}@media (min-width:48rem){header #indicators{gap:calc(var(--spacing) * 8)}}header #indicators span[data-indicator]{width:calc(var(--spacing) * 5);height:calc(var(--spacing) * 5);cursor:pointer;transition-property:transform,translate,scale,rotate;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration));--tw-duration:.15s;font-size:0;transition-duration:.15s}header #indicators span[data-indicator]:before{content:var(--tw-content);content:var(--tw-content);width:calc(var(--spacing) * 5);height:calc(var(--spacing) * 5);content:var(--tw-content);content:var(--tw-content);color:var(--text);background-color:currentColor;position:absolute}@media (hover:hover){header #indicators span[data-indicator]:hover{--tw-scale-x:105%;--tw-scale-y:105%;--tw-scale-z:105%;scale:var(--tw-scale-x) var(--tw-scale-y)}}header #indicators span[data-indicator]:active{--tw-scale-x:95%;--tw-scale-y:95%;--tw-scale-z:95%;scale:var(--tw-scale-x) var(--tw-scale-y)}header #indicators span[data-indicator][data-indicator=media_error]:before{content:var(--tw-content);-webkit-mask:var(--icon-error) center/cover no-repeat;-webkit-mask:var(--icon-error) center/cover no-repeat;-webkit-mask:var(--icon-error) center/cover no-repeat;mask:var(--icon-error) center/cover no-repeat}header #indicators span[data-indicator][data-indicator=poll-status][data-style=active]:before{content:var(--tw-content);-webkit-mask:var(--icon-refresh) center/cover no-repeat;-webkit-mask:var(--icon-refresh) center/cover no-repeat;-webkit-mask:var(--icon-refresh) center/cover no-repeat;mask:var(--icon-refresh) center/cover no-repeat}header #indicators span[data-indicator][data-indicator=poll-status][data-style=inactive]:before{content:var(--tw-content);-webkit-mask:var(--icon-refresh-off) center/cover no-repeat;-webkit-mask:var(--icon-refresh-off) center/cover no-repeat;-webkit-mask:var(--icon-refresh-off) center/cover no-repeat;mask:var(--icon-refresh-off) center/cover no-repeat}header #indicators span[data-indicator][data-indicator=uci-changes]{position:relative}header #indicators span[data-indicator][data-indicator=uci-changes]:before{content:var(--tw-content);-webkit-mask:var(--icon-settings) center/cover no-repeat;-webkit-mask:var(--icon-settings) center/cover no-repeat;-webkit-mask:var(--icon-settings) center/cover no-repeat;mask:var(--icon-settings) center/cover no-repeat}header #indicators span[data-indicator][data-indicator=uci-changes][data-count]:not([data-count="0"]):after{content:var(--tw-content);content:var(--tw-content);top:calc(var(--spacing) * -.5);content:var(--tw-content);right:calc(var(--spacing) * -.5);content:var(--tw-content);z-index:10;content:var(--tw-content);content:var(--tw-content);min-height:calc(var(--spacing) * 3);content:var(--tw-content);min-width:calc(var(--spacing) * 3);content:var(--tw-content);content:var(--tw-content);content:var(--tw-content);content:var(--tw-content);background-color:var(--danger);content:var(--tw-content);padding-inline:calc(var(--spacing) * .5);content:var(--tw-content);content:var(--tw-content);--tw-leading:1;content:var(--tw-content);--tw-font-weight:var(--font-weight-bold);font-size:8px;line-height:1;font-weight:var(--font-weight-bold);content:var(--tw-content);color:var(--on-brand);content:var(--tw-content);--tw-shadow:var(--app-shadow-sm);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);--tw-content:attr(data-count);content:var(--tw-content);border-radius:3.40282e38px;justify-content:center;align-items:center;display:flex;position:absolute}body[data-nav-type=sidebar]{--sidebar-w-full:17rem;--sidebar-w:var(--sidebar-w-full)}@media (min-width:48rem){body[data-nav-type=sidebar]{grid-template-columns:var(--sidebar-w) minmax(0,1fr);transition:grid-template-columns .25s var(--ease-in-out);grid-template-rows:auto minmax(0,1fr);display:grid;overflow-x:clip}body[data-nav-type=sidebar].sidebar-collapsed{--sidebar-w:0rem}body[data-nav-type=sidebar]>header{border-bottom-style:var(--tw-border-style);border-bottom-width:1px;border-color:var(--hairline);grid-row-start:1;grid-column-start:2;margin-bottom:0}body[data-nav-type=sidebar]>.sidebar-panel{grid-row:1/span 2;grid-column-start:1}body[data-nav-type=sidebar]>#maincontent{min-width:0;padding-top:calc(var(--spacing) * 2);width:100%;max-width:none;padding-inline:calc(var(--spacing) * 8);grid-row-start:2;grid-column-start:2}}body[data-nav-type=sidebar] .header-crumb{align-items:center;gap:calc(var(--spacing) * 2);min-width:0;font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));color:var(--text-muted);margin-block:0;margin-left:0;margin-right:auto;padding:0;list-style-type:none;display:none;overflow:hidden}@media (min-width:48rem){body[data-nav-type=sidebar] .header-crumb{display:flex}}body[data-nav-type=sidebar] .header-crumb li{white-space:nowrap;margin:0;list-style-type:none}body[data-nav-type=sidebar] .header-crumb .crumb-sep{opacity:.5}body[data-nav-type=sidebar] .header-crumb .current{text-overflow:ellipsis;white-space:nowrap;--tw-font-weight:var(--font-weight-medium);min-width:0;font-weight:var(--font-weight-medium);color:var(--text);overflow:hidden}@media (min-width:48rem){body[data-nav-type=sidebar].sidebar-collapsed .header-crumb{margin-left:calc(var(--spacing) * 6)}}body[data-nav-type=sidebar] .sidebar-panel{border-radius:0;width:100%;height:100dvh;display:none;position:sticky;top:0;overflow:hidden}@media (min-width:48rem){body[data-nav-type=sidebar] .sidebar-panel{display:block}}body[data-nav-type=sidebar].sidebar-collapsed .sidebar-panel{visibility:hidden;transition:visibility 0s .25s}body[data-nav-type=sidebar] .sidebar-panel-inner{height:100%;width:var(--sidebar-w-full);border-right-style:var(--tw-border-style);border-right-width:1px;border-color:var(--hairline);background-color:var(--bg);transition:translate .25s var(--ease-in-out);flex-direction:column;display:flex;overflow:hidden}body[data-nav-type=sidebar].sidebar-collapsed .sidebar-panel-inner{--tw-translate-x:-100%;translate:var(--tw-translate-x) var(--tw-translate-y)}body[data-nav-type=sidebar] .sidebar-head{box-sizing:content-box;height:calc(var(--spacing) * 14);align-items:center;gap:calc(var(--spacing) * 2.5);border-bottom-style:var(--tw-border-style);border-bottom-width:1px;border-color:var(--hairline);padding-inline:calc(var(--spacing) * 4);flex-shrink:0;display:flex}body[data-nav-type=sidebar] .sidebar-head .sidebar-logo{width:calc(var(--spacing) * 5);height:calc(var(--spacing) * 5);border-radius:calc(var(--radius-base) * .75);flex-shrink:0}body[data-nav-type=sidebar] .sidebar-head .sidebar-brand{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height));--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold);--tw-tracking:var(--tracking-tight);letter-spacing:var(--tracking-tight);color:var(--text);transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration));--tw-duration:.15s;flex:1;text-decoration-line:none;transition-duration:.15s;overflow:hidden}@media (hover:hover){body[data-nav-type=sidebar] .sidebar-head .sidebar-brand:hover{color:var(--brand)}}body[data-nav-type=sidebar] .sidebar-list{flex:1;margin:0;list-style-type:none}:where(body[data-nav-type=sidebar] .sidebar-list>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * .5) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * .5) * calc(1 - var(--tw-space-y-reverse)))}body[data-nav-type=sidebar] .sidebar-list{padding:calc(var(--spacing) * 3);overflow-y:auto}body[data-nav-type=sidebar] .sidebar-list li{margin:0;list-style-type:none}body[data-nav-type=sidebar] .sidebar-list .nav-row{gap:calc(var(--spacing) * 2);border-radius:calc(var(--radius-base) * 1.5);padding-inline:calc(var(--spacing) * 3);padding-block:calc(var(--spacing) * 2);font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height));--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold);--tw-tracking:var(--tracking-wide);letter-spacing:var(--tracking-wide)}body[data-nav-type=sidebar] .sidebar-list .nav-icon{width:calc(var(--spacing) * 4.5);height:calc(var(--spacing) * 4.5)}body[data-nav-type=sidebar] .sidebar-submenu{min-height:0;margin:0;list-style-type:none}:where(body[data-nav-type=sidebar] .sidebar-submenu>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * .5) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * .5) * calc(1 - var(--tw-space-y-reverse)))}body[data-nav-type=sidebar] .sidebar-submenu{padding:0;padding-left:calc(var(--spacing) * 6.5);overflow:hidden}body[data-nav-type=sidebar] .sidebar-submenu .navigation-sublink{padding-inline:calc(var(--spacing) * 3);padding-block:calc(var(--spacing) * 1.5);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}body[data-nav-type=sidebar] .sidebar-footer{border-top-style:var(--tw-border-style);border-top-width:1px;border-color:var(--hairline);padding:calc(var(--spacing) * 3);flex-shrink:0}body[data-nav-type=sidebar] .sidebar-footer .nav-link{color:var(--text-muted)}@media (hover:hover){body[data-nav-type=sidebar] .sidebar-footer .nav-link:hover{color:var(--text)}}#luci-nav-progress{pointer-events:none;z-index:80;height:calc(var(--spacing) * .5);--tw-gradient-position:to right;width:0;position:fixed;top:0;left:0}@supports (background-image:linear-gradient(in lab, red, red)){#luci-nav-progress{--tw-gradient-position:to right in oklab}}#luci-nav-progress{background-image:linear-gradient(var(--tw-gradient-stops));--tw-gradient-from:var(--progress-start);--tw-gradient-to:var(--progress-end);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));transition:width .3s var(--ease-out)}#luci-nav-progress[data-state=done]{opacity:0;transition:width .3s ease-out,opacity .15s ease-in .15s}#luci-nav-status{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}#maincontent{width:95.8333%;min-height:calc(100vh - 4rem);max-width:var(--content-width-centered);padding-inline:calc(var(--spacing) * 4);--tw-outline-style:none;outline-style:none;margin-inline:auto}@media not all and (min-width:48rem){#maincontent{width:100%;padding-inline:calc(var(--spacing) * 3)}}#maincontent .view-staging{visibility:hidden;height:0;overflow:hidden}#maincontent #view{--tw-shadow:0 0 #0000;width:100%;box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);background-color:#0000;margin-inline:0;padding:0}#maincontent #view:empty{display:none}@media (min-width:48rem){#maincontent #view{padding:0}}#maincontent #view.view-leaving{cursor:progress;opacity:.6;transition:opacity .15s ease-out}#maincontent #view .cbi-title-section{margin-bottom:calc(var(--spacing) * 6);--tw-leading:var(--leading-relaxed);line-height:var(--leading-relaxed)}@media not all and (min-width:48rem){#maincontent #view .cbi-title-section{margin-inline:calc(var(--spacing) * 2);margin-bottom:calc(var(--spacing) * 3)}}#maincontent #view .controls{margin:calc(var(--spacing) * 2);align-items:center;gap:calc(var(--spacing) * 3);flex-wrap:wrap;display:flex}@media not all and (min-width:48rem){#maincontent #view .controls{margin:var(--spacing);gap:calc(var(--spacing) * 2)}}#maincontent #view .controls label input[type=radio],#maincontent #view .controls label input[type=checkbox]{margin-right:var(--spacing);vertical-align:middle}#maincontent #view div[style]>svg:where([data-darkmode=true],[data-darkmode=true] *){background-color:var(--surface)!important}#maincontent #view div[style]>svg line[style]:where([data-darkmode=true],[data-darkmode=true] *){stroke:var(--text)!important}#maincontent .cbi-map-descr,#maincontent .cbi-section-descr{margin-bottom:calc(var(--spacing) * 6);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));--tw-leading:var(--leading-relaxed);line-height:var(--leading-relaxed);color:var(--text-muted)}@media not all and (min-width:48rem){#maincontent .cbi-map-descr,#maincontent .cbi-section-descr{margin-inline:calc(var(--spacing) * 2);margin-bottom:calc(var(--spacing) * 3);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}}#maincontent .cbi-page-actions{margin-top:calc(var(--spacing) * 6);justify-content:flex-end;align-items:center;gap:calc(var(--spacing) * 3);border-top-style:var(--tw-border-style);border-top-width:1px;border-color:var(--hairline);padding-top:calc(var(--spacing) * 4);flex-wrap:wrap;display:flex}@media not all and (min-width:48rem){#maincontent .cbi-page-actions{margin-inline:calc(var(--spacing) * 2);margin-top:calc(var(--spacing) * 4);gap:calc(var(--spacing) * 2);padding-top:calc(var(--spacing) * 3)}}#maincontent .zone-forwards{align-items:stretch;gap:calc(var(--spacing) * 2);--tw-leading:var(--leading-relaxed);line-height:var(--leading-relaxed);flex-wrap:nowrap;display:flex}#maincontent .zone-forwards>span{flex-shrink:0;flex-basis:calc(var(--spacing) * 8);color:var(--text-muted);justify-content:center;align-self:center;align-items:center;display:flex}#maincontent .zone-forwards .zone-src,#maincontent .zone-forwards .zone-dest{gap:calc(var(--spacing) * 1.5);flex-direction:column;flex:1;display:flex}#maincontent:has(>#view.view-leaving,>#view>.spinning)>footer{visibility:hidden;animation:none}:root:not(:active-view-transition-type(theme)){view-transition-name:none}footer{margin-top:calc(var(--spacing) * 2);min-height:calc(var(--spacing) * 16);font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height));color:var(--text-muted);flex-wrap:wrap;justify-content:space-between;align-items:center;display:flex}footer a{color:var(--brand)}footer span{text-align:center;display:inline-block}footer .breadcrumb{align-items:center;gap:var(--spacing);background-color:var(--surface-overlay);padding-inline:calc(var(--spacing) * 3);padding-block:calc(var(--spacing) * 1.5);font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height));--tw-shadow:var(--app-shadow-sm);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);--tw-backdrop-blur:blur(var(--blur-md));--tw-backdrop-saturate:saturate(150%);-webkit-backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration));--tw-duration:.15s;border-radius:3.40282e38px;transition-duration:.15s;display:flex}@media (hover:hover){footer .breadcrumb:hover{background-color:var(--surface)}}footer .breadcrumb li{list-style-type:none}footer .breadcrumb li.active a{color:var(--text)}.control-group{margin-top:var(--spacing)}.control-group,.cbi-page-actions>div,.cbi-section-actions>div{align-items:center;gap:calc(var(--spacing) * 2);flex-flow:row;display:flex}@media not all and (min-width:48rem){.control-group,.cbi-page-actions>div,.cbi-section-actions>div{gap:var(--spacing);flex-wrap:wrap}}.nav-row{cursor:pointer;appearance:none;border-style:var(--tw-border-style);text-align:left;--tw-shadow:0 0 #0000;width:100%;box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration));--tw-duration:.15s;-webkit-user-select:none;user-select:none;background-color:#0000;border-width:0;align-items:center;text-decoration-line:none;transition-duration:.15s;display:flex}@media (hover:hover){.nav-row:hover{text-decoration-line:none}}.nav-row:focus-visible{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);--tw-ring-color:var(--focus-ring);--tw-outline-style:none;outline-style:none}.nav-link{border-radius:calc(var(--radius-base) * 1.5);padding-inline:calc(var(--spacing) * 3);padding-block:calc(var(--spacing) * 1.5);color:var(--text);transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration));--tw-duration:.15s;text-decoration-line:none;transition-duration:.15s;display:block}@media (hover:hover){.nav-link:hover{background-color:var(--hover-faint);text-decoration-line:none}}.navigation-direct{color:var(--text)}@media (hover:hover){.navigation-direct:hover{color:var(--text)}}.navigation-direct.is-active-page{background-color:var(--brand-subtle);color:var(--brand)}@media (hover:hover){.navigation-direct.is-active-page:hover{color:var(--brand)}}:where(.sidebar-list) .nav-row{color:var(--text-muted)}@media (hover:hover){:where(.sidebar-list) .nav-row:hover{color:var(--text)}:where(.sidebar-list) .navigation-direct:hover{background-color:var(--hover-faint)}}.navigation-group-toggle:after{content:var(--tw-content);width:calc(var(--spacing) * 4.5);height:calc(var(--spacing) * 4.5);content:var(--tw-content);content:var(--tw-content);content:var(--tw-content);opacity:.55;content:var(--tw-content);transition-property:transform,opacity;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration));content:var(--tw-content);--tw-duration:.25s;--tw-content:"";content:var(--tw-content);content:var(--tw-content);-webkit-mask:var(--icon-arrow-right) center/cover no-repeat;-webkit-mask:var(--icon-arrow-right) center/cover no-repeat;-webkit-mask:var(--icon-arrow-right) center/cover no-repeat;mask:var(--icon-arrow-right) center/cover no-repeat;background-color:currentColor;flex-shrink:0;transition-duration:.25s}@media (hover:hover){.navigation-group-toggle:hover:after{content:var(--tw-content);opacity:1}}.navigation-group.is-expanded>.navigation-group-toggle{color:var(--brand)}.navigation-group.is-expanded>.navigation-group-toggle:after{content:var(--tw-content);rotate:90deg}.navigation-group.is-active-group>.navigation-group-toggle{color:var(--brand)}.nav-icon{opacity:.55;transition-property:opacity;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration));--tw-duration:.15s;-webkit-mask:var(--menu-icon,var(--icon-category)) center/contain no-repeat;-webkit-mask:var(--menu-icon,var(--icon-category)) center/contain no-repeat;-webkit-mask:var(--menu-icon,var(--icon-category)) center/contain no-repeat;mask:var(--menu-icon,var(--icon-category)) center/contain no-repeat;background-color:currentColor;flex-shrink:0;transition-duration:.15s}.nav-label,.nav-category-label{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.navigation-direct:hover .nav-icon,.navigation-group-toggle:hover .nav-icon,.navigation-direct.is-active-page .nav-icon,.navigation-group.is-expanded>.navigation-group-toggle .nav-icon,.navigation-group.is-active-group>.navigation-group-toggle .nav-icon{opacity:1}.navigation-group-region{opacity:0;transition-property:grid-template-rows,opacity;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration));--tw-duration:.25s;--tw-ease:var(--ease-out);transition-duration:.25s;transition-timing-function:var(--ease-out);grid-template-rows:0fr;display:grid}.navigation-group.is-expanded>.navigation-group-region{opacity:1;grid-template-rows:1fr}.navigation-submenu-list{min-height:0;list-style-type:none;overflow:hidden}.navigation-sublink{border-radius:calc(var(--radius-base) * 1.5);--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium);color:var(--text-muted);transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration));--tw-duration:.15s;text-decoration-line:none;transition-duration:.15s;display:flex;position:relative}@media (hover:hover){.navigation-sublink:hover{background-color:var(--hover-faint);color:var(--text)}}.navigation-sublink.is-active-page{background-color:var(--brand-subtle);--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold);color:var(--brand)}@media (hover:hover){.navigation-sublink.is-active-page:hover{color:var(--brand)}}.nav-category-preview{text-overflow:ellipsis;white-space:nowrap;padding-bottom:var(--spacing);color:var(--text-subtle);overflow:hidden}.nav-category-preview .nav-preview-current{color:var(--brand)}:is(.desktop-nav-title,.navigation-direct,.navigation-group-toggle)[data-section=status]{--menu-icon:var(--icon-activity)}:is(.desktop-nav-title,.navigation-direct,.navigation-group-toggle)[data-section=statistics]{--menu-icon:var(--icon-chart-bar)}:is(.desktop-nav-title,.navigation-direct,.navigation-group-toggle)[data-section=nlbw]{--menu-icon:var(--icon-gauge)}:is(.desktop-nav-title,.navigation-direct,.navigation-group-toggle)[data-section=system]{--menu-icon:var(--icon-settings)}:is(.desktop-nav-title,.navigation-direct,.navigation-group-toggle)[data-section=services]{--menu-icon:var(--icon-apps)}:is(.desktop-nav-title,.navigation-direct,.navigation-group-toggle)[data-section=nas]{--menu-icon:var(--icon-server)}:is(.desktop-nav-title,.navigation-direct,.navigation-group-toggle)[data-section=control]{--menu-icon:var(--icon-adjustments)}:is(.desktop-nav-title,.navigation-direct,.navigation-group-toggle)[data-section=network]{--menu-icon:var(--icon-world)}:is(.desktop-nav-title,.navigation-direct,.navigation-group-toggle)[data-section=vpn]{--menu-icon:var(--icon-shield)}:is(.desktop-nav-title,.navigation-direct,.navigation-group-toggle)[data-section=docker]{--menu-icon:var(--icon-box)}:is(.desktop-nav-title,.navigation-direct,.navigation-group-toggle)[data-section=asterisk]{--menu-icon:var(--icon-phone)}.theme-switcher{background-color:var(--surface-sunken);--tw-shadow:var(--app-shadow-sm);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);transition-property:transform,translate,scale,rotate;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration));--tw-duration:.15s;border-radius:3.40282e38px;align-items:center;gap:0;transition-duration:.15s;display:inline-flex;position:relative}@media not all and (min-width:48rem){.theme-switcher{padding-block:calc(var(--spacing) * .5)}}.theme-switcher{border-style:var(--tw-border-style);border-width:1px;border-color:var(--hairline)}.theme-switcher:before{content:var(--tw-content);content:var(--tw-content);top:var(--spacing);content:var(--tw-content);left:var(--spacing);content:var(--tw-content);z-index:0;content:var(--tw-content);content:var(--tw-content);content:var(--tw-content);content:var(--tw-content);background-color:var(--surface-overlay);content:var(--tw-content);--tw-shadow:var(--app-shadow-md);width:calc(33.333% - .5rem);height:calc(100% - .5rem);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);content:var(--tw-content);transition-property:transform,translate,scale,rotate;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration));content:var(--tw-content);--tw-duration:.25s;border-radius:3.40282e38px;transition-duration:.25s;position:absolute}@media not all and (min-width:48rem){footer .theme-switcher{display:none}}.theme-switcher .theme-option{z-index:10;cursor:pointer;justify-content:center;align-items:center;gap:calc(var(--spacing) * 1.5);padding-inline:calc(var(--spacing) * 3);padding-block:calc(var(--spacing) * 1.5);transition-property:transform,translate,scale,rotate;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration));--tw-duration:.15s;border-radius:3.40282e38px;transition-duration:.15s;display:flex;position:relative}@media (hover:hover){.theme-switcher .theme-option:hover{--tw-scale-x:105%;--tw-scale-y:105%;--tw-scale-z:105%;scale:var(--tw-scale-x) var(--tw-scale-y)}}.theme-switcher .theme-option:active{--tw-scale-x:95%;--tw-scale-y:95%;--tw-scale-z:95%;scale:var(--tw-scale-x) var(--tw-scale-y)}.theme-switcher .theme-option input[type=radio]{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.theme-switcher .theme-option .theme-icon{color:var(--text-muted);transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration));--tw-duration:.15s;justify-content:center;align-items:center;transition-duration:.15s;display:flex}.theme-switcher .theme-option .theme-icon svg{width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4);transition-property:transform,translate,scale,rotate;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration));--tw-duration:.15s;transition-duration:.15s}.theme-switcher .theme-option .theme-label{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height));--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium);color:var(--text-muted);transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration));--tw-duration:.15s;transition-duration:.15s;display:none}.theme-switcher .theme-option.active .theme-icon{color:var(--text)}.theme-switcher .theme-option.active .theme-icon svg{--tw-scale-x:110%;--tw-scale-y:110%;--tw-scale-z:110%;scale:var(--tw-scale-x) var(--tw-scale-y)}.theme-switcher .theme-option.active .theme-label,.theme-switcher .theme-option:hover:not(.active) .theme-icon,.theme-switcher .theme-option:hover:not(.active) .theme-label{color:var(--text)}.theme-switcher:has(.theme-option[data-theme=device].active):before{content:var(--tw-content);--tw-translate-x:0;translate:var(--tw-translate-x) var(--tw-translate-y)}.theme-switcher:has(.theme-option[data-theme=light].active):before{content:var(--tw-content);--tw-translate-x:calc(100% + .5rem);translate:var(--tw-translate-x) var(--tw-translate-y)}.theme-switcher:has(.theme-option[data-theme=dark].active):before{content:var(--tw-content);--tw-translate-x:calc(200% + 1rem);translate:var(--tw-translate-x) var(--tw-translate-y)}.floating-toolbar{pointer-events:none;right:calc(var(--spacing) * 4);bottom:calc(var(--spacing) * 4);z-index:40;flex-direction:column;align-items:center;display:flex;position:fixed}@media not all and (min-width:48rem){.floating-toolbar{right:calc(var(--spacing) * 3);bottom:calc(var(--spacing) * 3)}}.floating-toolbar .toolbar-list{margin-bottom:calc(var(--spacing) * 2.5);align-items:center;gap:calc(var(--spacing) * 2.5);flex-direction:column;display:flex}@media not all and (min-width:48rem){.floating-toolbar .toolbar-list{margin-bottom:calc(var(--spacing) * 2);gap:calc(var(--spacing) * 2)}}.floating-toolbar .toolbar-btn{pointer-events:auto;width:calc(var(--spacing) * 11);height:calc(var(--spacing) * 11);cursor:pointer;background-color:var(--surface-overlay);color:var(--text-muted);--tw-shadow:var(--app-shadow-md);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);border-radius:3.40282e38px;place-items:center;display:grid}@media not all and (min-width:48rem){.floating-toolbar .toolbar-btn{width:calc(var(--spacing) * 10);height:calc(var(--spacing) * 10)}}.floating-toolbar .toolbar-btn{transition:translate .32s cubic-bezier(.34,1.25,.5,1),scale .32s cubic-bezier(.34,1.25,.5,1),opacity .22s,visibility .32s,background-color .15s,color .15s;transition-delay:var(--fab-d,0s),var(--fab-d,0s),var(--fab-d,0s),var(--fab-d,0s),0s,0s}.floating-toolbar .toolbar-btn:hover{background-color:var(--hover-faint);color:var(--text)}.floating-toolbar .toolbar-btn:active{scale:.92}.floating-toolbar .toolbar-btn:not(.toggle){--fab-d:calc((var(--fab-n,1) - 1 - var(--fab-i,0)) * 60ms);text-decoration-line:none}.floating-toolbar .toolbar-btn:not(.toggle):active{--fab-d:0s}.floating-toolbar .toolbar-btn:not(.toggle) .icon{width:calc(var(--spacing) * 5);height:calc(var(--spacing) * 5);-webkit-mask:var(--fab-icon) center/contain no-repeat;-webkit-mask:var(--fab-icon) center/contain no-repeat;-webkit-mask:var(--fab-icon) center/contain no-repeat;mask:var(--fab-icon) center/contain no-repeat;background-color:currentColor;flex-shrink:0}@media not all and (min-width:48rem){.floating-toolbar .toolbar-btn:not(.toggle) .icon{width:calc(var(--spacing) * 4.5);height:calc(var(--spacing) * 4.5)}}.floating-toolbar .toolbar-btn.toggle{border-style:var(--tw-border-style);color:var(--text-subtle);border-width:0}@media (hover:hover){.floating-toolbar .toolbar-btn.toggle:hover{color:var(--text)}}.floating-toolbar .toolbar-btn.toggle .icon{width:calc(var(--spacing) * 5);height:calc(var(--spacing) * 5);transition-property:rotate;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration));--tw-duration:.25s;--tw-ease:var(--ease-out);transition-duration:.25s;transition-timing-function:var(--ease-out);place-items:center;display:grid}@media not all and (min-width:48rem){.floating-toolbar .toolbar-btn.toggle .icon{width:calc(var(--spacing) * 4.5);height:calc(var(--spacing) * 4.5)}}.floating-toolbar .toolbar-btn.toggle .icon svg{width:100%;height:100%}.floating-toolbar.collapsed .toolbar-btn:not(.toggle){pointer-events:none;visibility:hidden;opacity:0;--tw-translate-y:calc((var(--fab-n,1) - var(--fab-i,0)) * 3.375rem);scale:.35;translate:var(--tw-translate-x) var(--tw-translate-y);--fab-d:calc(var(--fab-i,0) * 60ms)}@media not all and (min-width:48rem){.floating-toolbar.collapsed .toolbar-btn:not(.toggle){--tw-translate-y:calc((var(--fab-n,1) - var(--fab-i,0)) * 3rem);translate:var(--tw-translate-x) var(--tw-translate-y)}}.floating-toolbar.collapsed .toolbar-btn.toggle .icon{rotate:45deg}button,input[type=button],input[type=submit],input[type=reset],.btn,.cbi-button{cursor:pointer;justify-content:center;align-items:center;gap:calc(var(--spacing) * 1.5);border-radius:calc(var(--radius-base) * 1.5);border-style:var(--tw-border-style);padding-inline:calc(var(--spacing) * 3);padding-block:calc(var(--spacing) * 1.5);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;transition-property:background-color,border-color,transform;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration));--tw-duration:.15s;border-width:1px;transition-duration:.15s;display:inline-flex}@media not all and (min-width:48rem){button,input[type=button],input[type=submit],input[type=reset],.btn,.cbi-button{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height));--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}}:is(button,input[type=button],input[type=submit],input[type=reset],.btn,.cbi-button)[disabled]{cursor:not-allowed;opacity:var(--app-opacity-disabled)}.td :is(button,input[type=button],input[type=submit],input[type=reset],.btn,.cbi-button){white-space:nowrap;flex:none;width:auto;display:inline-flex}@media not all and (min-width:48rem){.td :is(button,input[type=button],input[type=submit],input[type=reset],.btn,.cbi-button){min-height:calc(var(--spacing) * 9);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}}.btn,.cbi-button,.cbi-button-default,.cbi-button-download,.cbi-button-find,.cbi-button-link,.cbi-button-up,.cbi-button-down{border-color:var(--hairline);background-color:var(--surface-sunken);color:var(--text)}@media (hover:hover){:is(.btn,.cbi-button,.cbi-button-default,.cbi-button-download,.cbi-button-find,.cbi-button-link,.cbi-button-up,.cbi-button-down):hover{background-color:var(--hover-faint)}}.drag-handle{border-color:var(--hairline);background-color:var(--surface-sunken);color:var(--text-muted)}@media (hover:hover){.drag-handle:hover{background-color:var(--hover-faint)}}.btn.primary,.cbi-button-action,.cbi-button-apply,.cbi-button-reload,.cbi-button-add,.cbi-button-edit{border-color:var(--brand);background-color:var(--brand);color:var(--on-brand)}@media (hover:hover){:is(.btn.primary,.cbi-button-action,.cbi-button-apply,.cbi-button-reload,.cbi-button-add,.cbi-button-edit):hover{background-color:var(--brand-hover)}}.cbi-button-positive,.cbi-button-fieldadd,.cbi-button-save{background-color:var(--brand-subtle);color:var(--brand);border-color:#0000}@media (hover:hover){:is(.cbi-button-positive,.cbi-button-fieldadd,.cbi-button-save):hover{background-color:var(--brand-subtle-hover)}}.cbi-button-negative,.cbi-section-remove .cbi-button,.cbi-button-reset,.cbi-button-remove{background-color:var(--danger-surface);color:var(--danger);border-color:#0000}@media (hover:hover){:is(.cbi-button-negative,.cbi-section-remove .cbi-button,.cbi-button-reset,.cbi-button-remove):hover{background-color:var(--danger-surface-hover)}}input:disabled{cursor:not-allowed;opacity:var(--app-opacity-disabled)}input[type=text],input[type=password],.cbi-input-text,.cbi-input{width:calc(var(--spacing) * 52.5);border-radius:calc(var(--radius-base) * 2);border-style:var(--tw-border-style);border-width:1px;border-color:var(--hairline);background-color:var(--control-bg);max-width:100%;padding-inline:calc(var(--spacing) * 3);padding-block:calc(var(--spacing) * 1.5);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));--tw-font-weight:var(--font-weight-normal);font-weight:var(--font-weight-normal);color:var(--text);position:relative}:is(input[type=text],input[type=password],.cbi-input-text,.cbi-input)::placeholder{color:var(--text-muted)}input[type=text],input[type=password],.cbi-input-text,.cbi-input{--tw-shadow:var(--app-shadow-sm);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);transition-property:border-color,box-shadow;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration));--tw-duration:.15s;transition-duration:.15s}:is(input[type=text],input[type=password],.cbi-input-text,.cbi-input):focus{border-color:var(--brand);--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);--tw-ring-color:var(--focus-ring);--tw-outline-style:none;outline-style:none}.table.cbi-section-table :is(input[type=text],input[type=password],.cbi-input-text,.cbi-input){width:100%}.cbi-input-text{min-width:calc(var(--spacing) * 20)}@media not all and (min-width:48rem){.cbi-input-text{min-width:calc(var(--spacing) * 14)}}#localtime{min-width:calc(var(--spacing) * 70)}input[type=radio],input[type=checkbox]{margin-right:calc(var(--spacing) * 3);height:calc(var(--spacing) * 4);width:calc(var(--spacing) * 4);cursor:pointer;appearance:none;vertical-align:middle;display:inline-block;position:relative}:is(input[type=radio],input[type=checkbox]):before{content:var(--tw-content);content:var(--tw-content);content:var(--tw-content);content:var(--tw-content);height:calc(var(--spacing) * 4);content:var(--tw-content);width:calc(var(--spacing) * 4);content:var(--tw-content);border-style:var(--tw-border-style);content:var(--tw-content);border-width:1px;border-color:var(--hairline);content:var(--tw-content);background-color:var(--control-bg);content:var(--tw-content);transition-property:background-color,border-color,box-shadow;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration));content:var(--tw-content);--tw-duration:.15s;transition-duration:.15s;position:absolute;top:0;left:0}:is(input[type=radio],input[type=checkbox]):after{content:var(--tw-content);content:var(--tw-content);top:calc(var(--spacing) * .5);content:var(--tw-content);left:calc(var(--spacing) * .5);content:var(--tw-content);height:calc(var(--spacing) * 3);content:var(--tw-content);width:calc(var(--spacing) * 3);content:var(--tw-content);background-color:var(--on-brand);content:var(--tw-content);opacity:0;content:var(--tw-content);transition-property:opacity;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration));content:var(--tw-content);--tw-duration:.15s;transition-duration:.15s;position:absolute}:is(input[type=radio],input[type=checkbox]):checked:before{content:var(--tw-content);border-color:var(--brand);content:var(--tw-content);background-color:var(--brand)}:is(input[type=radio],input[type=checkbox]):checked:after{content:var(--tw-content);opacity:1}@media (hover:hover){:is(input[type=radio],input[type=checkbox]):hover:before{content:var(--tw-content);border-color:var(--hairline)}}:is(input[type=radio],input[type=checkbox]):focus:before{content:var(--tw-content);border-color:var(--brand);content:var(--tw-content);--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);content:var(--tw-content);--tw-ring-color:var(--focus-ring);content:var(--tw-content);--tw-outline-style:none;outline-style:none}:is(input[type=radio],input[type=checkbox]):disabled{cursor:not-allowed}input[type=radio]:before{content:var(--tw-content);border-radius:3.40282e38px}input[type=radio]:after{content:var(--tw-content);-webkit-mask:var(--icon-radio) center/cover no-repeat;-webkit-mask:var(--icon-radio) center/cover no-repeat;-webkit-mask:var(--icon-radio) center/cover no-repeat;mask:var(--icon-radio) center/cover no-repeat}input[type=checkbox]:before{content:var(--tw-content);border-radius:calc(var(--radius-base) * .5)}input[type=checkbox]:after{content:var(--tw-content);-webkit-mask:var(--icon-check) center/cover no-repeat;-webkit-mask:var(--icon-check) center/cover no-repeat;-webkit-mask:var(--icon-check) center/cover no-repeat;mask:var(--icon-check) center/cover no-repeat}.cbi-checkbox{vertical-align:middle;align-items:center;display:inline-flex;position:relative}textarea{min-height:calc(var(--spacing) * 24);resize:vertical;border-radius:calc(var(--radius-base) * 2);border-style:var(--tw-border-style);border-width:1px;border-color:var(--hairline);background-color:var(--control-bg);width:100%;padding-inline:calc(var(--spacing) * 3);padding-block:calc(var(--spacing) * 2);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));--tw-font-weight:var(--font-weight-normal);font-weight:var(--font-weight-normal);color:var(--text)}textarea::placeholder{color:var(--text-muted)}textarea{--tw-shadow:var(--app-shadow-sm);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);transition-property:border-color,box-shadow;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration));--tw-duration:.15s;transition-duration:.15s}textarea:focus{border-color:var(--brand);--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);--tw-ring-color:var(--focus-ring);--tw-outline-style:none;outline-style:none}textarea[disabled]{cursor:not-allowed;opacity:var(--app-opacity-disabled)}select{max-width:100%;min-width:calc(var(--spacing) * 52.5);appearance:none;border-radius:calc(var(--radius-base) * 2);border-style:var(--tw-border-style);border-width:1px;border-color:var(--hairline);background-color:var(--control-bg);padding-inline:calc(var(--spacing) * 3);padding-block:calc(var(--spacing) * 1.5);padding-right:calc(var(--spacing) * 10);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));--tw-font-weight:var(--font-weight-normal);font-weight:var(--font-weight-normal);color:var(--text);--tw-shadow:var(--app-shadow-sm);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);transition-property:border-color,box-shadow;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration));--tw-duration:.15s;transition-duration:.15s}select:focus{border-color:var(--brand);--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);--tw-ring-color:var(--focus-ring);--tw-outline-style:none;outline-style:none}@media (min-width:48rem){select{max-width:calc(var(--spacing) * 100)}}select{background-image:var(--icon-arrow-down);background-position:right .75rem center;background-repeat:no-repeat;background-size:16px}select:where([data-darkmode=true],[data-darkmode=true] *){background-image:var(--icon-arrow-down-dark)}select[disabled]{cursor:not-allowed;opacity:var(--app-opacity-disabled)}.cbi-dropdown{white-space:nowrap;--tw-shadow:var(--app-shadow-sm);min-width:fit-content;max-width:100%;height:fit-content;box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);flex-shrink:0;align-items:center;padding:0;display:inline-flex}.cbi-dropdown[disabled]{pointer-events:none;opacity:var(--app-opacity-disabled)}.cbi-dropdown:not(.btn):not(.cbi-button){max-width:100%;min-width:calc(var(--spacing) * 52.5);border-radius:calc(var(--radius-base) * 2);border-style:var(--tw-border-style);border-width:1px;border-color:var(--hairline);background-color:var(--surface)}@media (min-width:48rem){.cbi-dropdown:not(.btn):not(.cbi-button){max-width:calc(var(--spacing) * 100)}}.cbi-dropdown:not(.btn):not(.cbi-button)>ul>li[placeholder]{display:none}.cbi-dropdown>ul{align-items:center;gap:calc(var(--spacing) * .5);flex-wrap:nowrap;flex:1;margin:0;list-style-type:none;display:flex;overflow:hidden}@media not all and (min-width:48rem){.cbi-dropdown>ul{flex-wrap:wrap}}.cbi-dropdown>ul>li{align-items:center;gap:var(--spacing);padding-inline:calc(var(--spacing) * 2);padding-block:calc(var(--spacing) * 1.5);margin:0;list-style-type:none;display:none;overflow:hidden}.cbi-dropdown>ul>li[display]{display:flex!important}.cbi-dropdown>ul>li .hide-open{display:block}.cbi-dropdown>ul>li .hide-close{display:none}.cbi-dropdown>ul>li>form{pointer-events:none;display:none}.cbi-dropdown>ul>li>label{align-items:center;gap:calc(var(--spacing) * 2);display:flex}.cbi-dropdown>ul>li img{height:calc(var(--spacing) * 5);width:calc(var(--spacing) * 5);vertical-align:middle;flex:none}.cbi-dropdown>ul>li span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.cbi-dropdown>ul.dropdown{z-index:50;border-radius:var(--radius-base);border-style:var(--tw-border-style);border-width:1px;border-color:var(--hairline);background-color:var(--surface-overlay);--tw-shadow:var(--app-shadow-lg);width:fit-content;min-width:100%;box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);--tw-backdrop-blur:blur(var(--blur-md));--tw-backdrop-saturate:saturate(150%);-webkit-backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);position:absolute;left:0;overflow-y:auto}.cbi-dropdown>ul.dropdown>li{min-height:calc(var(--spacing) * 9);cursor:pointer;width:100%;padding-inline:calc(var(--spacing) * 3);padding-block:calc(var(--spacing) * 1.5);--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium);color:var(--text-muted)}@media (hover:hover){.cbi-dropdown>ul.dropdown>li:hover{background-color:var(--brand-subtle)}}.cbi-dropdown>ul.preview{display:none}.cbi-dropdown[empty]>ul{max-width:1px;max-height:1px}.cbi-dropdown[empty]>ul>li,.cbi-dropdown[optional][open]>ul.dropdown>li[placeholder]{display:block}.cbi-dropdown[open]{border-color:var(--brand);--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);--tw-ring-color:var(--focus-ring);position:relative}.cbi-dropdown[open]>ul.dropdown{width:auto;max-width:none;display:block}.cbi-dropdown[open]>ul.dropdown>li{display:flex}.cbi-dropdown[open]>ul.dropdown>li[selected]{background-color:var(--brand-subtle);color:var(--brand)}.cbi-dropdown[open]>ul.dropdown>li[unselectable]{opacity:var(--app-opacity-disabled)}.cbi-dropdown[open]>ul.dropdown>li .hide-open{display:none}.cbi-dropdown[open]>ul.dropdown>li .hide-close{display:block}.cbi-dropdown[open]>ul.preview{display:flex}:is(.cbi-dropdown[multiple][more],.cbi-dropdown[multiple][empty])>.more{padding-inline:calc(var(--spacing) * 2.5);padding-block:calc(var(--spacing) * 1.5);flex:none;display:flex}.cbi-dropdown[multiple][empty]>.more{flex:1}.cbi-dropdown[multiple][open]>ul.dropdown>li>form{align-items:center;display:flex}.cbi-dropdown[multiple]>ul>li>label{display:flex}.cbi-dropdown>.open{cursor:pointer;border-left-style:var(--tw-border-style);border-left-width:1px;border-color:var(--hairline);padding-inline:calc(var(--spacing) * 2.5);padding-block:calc(var(--spacing) * .5);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));color:currentColor;flex:none;justify-content:center;align-items:center;display:flex}.cbi-dropdown>.more{display:none}.cbi-tooltip{z-index:110;width:max-content;max-width:var(--container-xs);--tw-scale-x:95%;--tw-scale-y:95%;--tw-scale-z:95%;scale:var(--tw-scale-x) var(--tw-scale-y);border-radius:calc(var(--radius-base) * 1.5);border-style:var(--tw-border-style);border-width:1px;border-color:var(--hairline);background-color:var(--surface-overlay);padding-inline:calc(var(--spacing) * 3);padding-block:calc(var(--spacing) * 2);font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height));overflow-wrap:normal;word-break:normal;white-space:normal;color:var(--text);opacity:0;--tw-shadow:var(--app-shadow-lg);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);transition-property:visibility,opacity,scale;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration));--tw-duration:.15s;--tw-ease:var(--ease-out);transition-duration:.15s;transition-timing-function:var(--ease-out);position:absolute;inset-inline-start:-10000px}.cbi-tooltip.error{border-color:var(--hairline);background-color:var(--danger-surface);color:var(--danger)}.cbi-tooltip.success{border-color:var(--hairline);background-color:var(--success-surface);color:var(--success)}.cbi-tooltip.info{border-color:var(--hairline);background-color:var(--info-surface);color:var(--info)}.cbi-tooltip.notice{border-color:var(--hairline);background-color:var(--warning-surface);color:var(--warning)}.cbi-tooltip-container,[data-tooltip]{cursor:help;white-space:nowrap;text-underline-offset:2px;text-decoration-line:underline;text-decoration-style:dotted;text-decoration-color:currentColor;display:inline-block;position:relative}:is(.cbi-tooltip-container,[data-tooltip]) .cbi-tooltip{visibility:hidden;--tw-scale-x:95%;--tw-scale-y:95%;--tw-scale-z:95%;scale:var(--tw-scale-x) var(--tw-scale-y);opacity:0;transition-property:visibility,opacity,scale;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration));--tw-duration:.15s;--tw-ease:var(--ease-out);transition-duration:.15s;transition-timing-function:var(--ease-out)}:is(.cbi-tooltip-container,[data-tooltip]):hover .cbi-tooltip{visibility:visible;--tw-scale-x:100%;--tw-scale-y:100%;--tw-scale-z:100%;scale:var(--tw-scale-x) var(--tw-scale-y);opacity:1;inset-inline-start:auto}[data-tip]:not([data-tip=""]){position:relative}[data-tip]:not([data-tip=""]):after{content:attr(data-tip);pointer-events:none;z-index:110;width:max-content;max-width:var(--container-xs);--tw-scale-x:95%;--tw-scale-y:95%;--tw-scale-z:95%;scale:var(--tw-scale-x) var(--tw-scale-y);border-radius:var(--radius-base);background-color:var(--text);padding-inline:calc(var(--spacing) * 2);padding-block:var(--spacing);font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height));overflow-wrap:normal;word-break:normal;white-space:normal;color:var(--bg);opacity:0;transition-property:opacity,scale;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration));--tw-duration:.15s;--tw-ease:var(--ease-out);transition-duration:.15s;transition-timing-function:var(--ease-out);position:absolute}[data-tip]:not([data-tip=""]):not([data-tip-pos]):after,[data-tip]:not([data-tip=""])[data-tip-pos=top]:after{--tw-translate-x:calc(calc(1 / 2 * 100%) * -1);translate:var(--tw-translate-x) var(--tw-translate-y);bottom:calc(100% + .5rem);left:50%}[data-tip]:not([data-tip=""])[data-tip-pos=bottom]:after{--tw-translate-x:calc(calc(1 / 2 * 100%) * -1);translate:var(--tw-translate-x) var(--tw-translate-y);top:calc(100% + .5rem);left:50%}[data-tip]:not([data-tip=""])[data-tip-pos=left]:after{--tw-translate-y:calc(calc(1 / 2 * 100%) * -1);translate:var(--tw-translate-x) var(--tw-translate-y);top:50%;right:calc(100% + .625rem)}[data-tip]:not([data-tip=""])[data-tip-pos=right]:after{--tw-translate-y:calc(calc(1 / 2 * 100%) * -1);translate:var(--tw-translate-x) var(--tw-translate-y);top:50%;left:calc(100% + .625rem)}[data-tip]:not([data-tip=""]):focus-visible:after{--tw-scale-x:100%;--tw-scale-y:100%;--tw-scale-z:100%;scale:var(--tw-scale-x) var(--tw-scale-y);opacity:1;transition-delay:.3s}@media (hover:hover){[data-tip]:not([data-tip=""]):hover:after{--tw-scale-x:100%;--tw-scale-y:100%;--tw-scale-z:100%;scale:var(--tw-scale-x) var(--tw-scale-y);opacity:1;transition-delay:.3s}}.alert-message{margin-bottom:calc(var(--spacing) * 4);border-radius:calc(var(--radius-base) * 2);border-style:var(--tw-border-style);border-width:1px;border-color:var(--hairline);background-color:var(--surface-sunken);padding:calc(var(--spacing) * 6);color:var(--text)}@media not all and (min-width:48rem){.alert-message{margin-inline:0;margin-bottom:calc(var(--spacing) * 3);padding:calc(var(--spacing) * 4)}}.modal .alert-message{margin-bottom:0}.login-shell .alert-message{padding-inline:calc(var(--spacing) * 2);padding-block:calc(var(--spacing) * 2.5);text-align:center;font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height));margin-bottom:0}@media not all and (min-width:48rem){.login-shell .alert-message{padding-inline:calc(var(--spacing) * .5)}}.alert-message.success{border-color:var(--hairline);background-color:var(--success-surface);color:var(--success)}.alert-message.info{border-color:var(--hairline);background-color:var(--info-surface);color:var(--info)}.alert-message.warning,.alert-message.notice{border-color:var(--hairline);background-color:var(--warning-surface);color:var(--warning)}.alert-message.error,.alert-message.danger{border-color:var(--hairline);background-color:var(--danger-surface);color:var(--danger)}.alert-message h4,.alert-message h5,.alert-message pre,.alert-message ul,.alert-message li,.alert-message p{border-style:var(--tw-border-style);color:inherit;background-color:#0000;border-width:0}.alert-message h4{margin-bottom:calc(var(--spacing) * 2);font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height));--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}@media not all and (min-width:48rem){.alert-message h4{margin-bottom:calc(var(--spacing) * 1.5);font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}}.alert-message p{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));--tw-leading:var(--leading-relaxed);line-height:var(--leading-relaxed)}@media not all and (min-width:48rem){.alert-message p{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}}.alert-message .right{margin-top:calc(var(--spacing) * 4)}@media not all and (min-width:48rem){.alert-message .right{margin-top:calc(var(--spacing) * 3)}}.cbi-progressbar{height:calc(var(--spacing) * 3.5);cursor:help;background-color:var(--surface-sunken);border-radius:3.40282e38px;width:100%;position:relative;overflow:hidden}.cbi-progressbar:before{content:var(--tw-content);content:var(--tw-content);content:var(--tw-content);content:var(--tw-content);--tw-translate-x:calc(calc(1 / 2 * 100%) * -1);translate:var(--tw-translate-x) var(--tw-translate-y);content:var(--tw-content);--tw-translate-y:calc(calc(1 / 2 * 100%) * -1);translate:var(--tw-translate-x) var(--tw-translate-y);content:var(--tw-content);border-radius:calc(var(--radius-base) * 2);content:var(--tw-content);font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height));content:var(--tw-content);white-space:nowrap;content:var(--tw-content);color:var(--text);--tw-content:attr(title);content:var(--tw-content);position:absolute;top:50%;left:50%}@media not all and (min-width:48rem){.cbi-progressbar{height:calc(var(--spacing) * 4)}.cbi-progressbar:before{content:var(--tw-content);font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height));content:var(--tw-content);--tw-leading:var(--leading-normal);line-height:var(--leading-normal)}}@media not all and (min-width:40rem){[data-page=admin-system-package-manager] .cbi-progressbar:before{content:var(--tw-content);font-size:10px}}.cbi-progressbar>div{--tw-gradient-position:to right;height:100%}@supports (background-image:linear-gradient(in lab, red, red)){.cbi-progressbar>div{--tw-gradient-position:to right in oklab}}.cbi-progressbar>div{background-image:linear-gradient(var(--tw-gradient-stops));--tw-gradient-from:var(--progress-start);--tw-gradient-to:var(--progress-end);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));transition-property:width;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration));--tw-duration:.25s;transition-duration:.25s}.label{background-color:var(--surface-sunken);padding-inline:calc(var(--spacing) * 3);padding-block:var(--spacing);font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height));--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold);color:var(--text);text-transform:uppercase;border-radius:3.40282e38px}.label.important{background-color:var(--info-surface);color:var(--info)}.label.warning{background-color:var(--danger-surface);color:var(--danger)}.label.success{background-color:var(--success-surface);color:var(--success)}.label.notice{background-color:var(--warning-surface);color:var(--warning)}.zonebadge{align-items:center;gap:calc(var(--spacing) * 1.5);border-radius:var(--radius-base);border-style:var(--tw-border-style);border-width:1px;border-color:var(--hairline);background-color:var(--surface-sunken);padding-inline:calc(var(--spacing) * 2);padding-block:var(--spacing);vertical-align:middle;font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));--tw-leading:var(--leading-normal);line-height:var(--leading-normal);--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold);color:var(--text);display:inline-flex;overflow:visible}@media not all and (min-width:48rem){.zonebadge{gap:var(--spacing);padding-inline:calc(var(--spacing) * 1.5);font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}}.zonebadge[style*=--zone-color-rgb]{border-color:#0000;background-color:rgb(var(--zone-color-rgb),.7)!important}.zonebadge[style*=--zone-color-rgb] em{color:var(--text)}.zonebadge.zonebadge-empty{--tw-border-style:dashed;--tw-font-weight:var(--font-weight-normal);font-weight:var(--font-weight-normal);color:var(--text-muted);background-color:#0000;border-style:dashed;font-style:italic}.ifacebadge>.zonebadge{padding-inline:var(--spacing);padding-block:calc(var(--spacing) * .5);border-radius:3.40282e38px}.cbi-dropdown .zonebadge{padding-inline:calc(var(--spacing) * 1.5);padding-block:calc(var(--spacing) * .5)}.ifacebadge{cursor:default;align-items:center;gap:calc(var(--spacing) * 2);border-radius:calc(var(--radius-base) * 2);border-style:var(--tw-border-style);border-width:1px;border-color:var(--hairline);background-color:var(--surface-sunken);padding-inline:calc(var(--spacing) * 3);padding-block:calc(var(--spacing) * 2);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));--tw-font-weight:var(--font-weight-normal);font-weight:var(--font-weight-normal);color:var(--text);--tw-shadow:var(--app-shadow-sm);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);transition-property:box-shadow,border-color,background-color;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration));--tw-duration:.15s;flex-wrap:nowrap;transition-duration:.15s;display:inline-flex}@media (hover:hover){.ifacebadge:hover{border-color:var(--hairline);background-color:var(--surface-sunken);--tw-shadow:var(--app-shadow-md);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}}@media not all and (min-width:48rem){.ifacebadge{gap:calc(var(--spacing) * 1.5);padding-inline:calc(var(--spacing) * 2.5);padding-block:calc(var(--spacing) * 1.5);font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}}.zonebadge>.ifacebadge{border-radius:calc(var(--radius-base) * 2);padding-inline:calc(var(--spacing) * 1.5);padding-block:0}.zonebadge>.ifacebadge img{margin-right:var(--spacing);width:calc(var(--spacing) * 4)}.cbi-dropdown .ifacebadge{gap:var(--spacing);border-radius:var(--radius-base);padding-inline:calc(var(--spacing) * 1.5);padding-block:calc(var(--spacing) * .5);--tw-shadow:0 0 #0000;box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}@media (hover:hover){.cbi-dropdown .ifacebadge:hover{--tw-shadow:0 0 #0000;box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}}.cbi-dropdown .ifacebadge img{margin-right:var(--spacing);width:calc(var(--spacing) * 4)}.ifacebadge>img,.ifacebadge>.cbi-tooltip-container>img{width:calc(var(--spacing) * 5);flex-shrink:0;align-self:center}@media not all and (min-width:48rem){.ifacebadge>img,.ifacebadge>.cbi-tooltip-container>img{width:calc(var(--spacing) * 4)}}.ifacebadge>span>.nowrap{margin-bottom:calc(var(--spacing) * 1.5);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));display:inline-block}@media not all and (min-width:48rem){.ifacebadge>span>.nowrap{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}}.ifacebadge.ifacebadge-active{border-color:var(--brand);--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.ifacebadge.large{min-width:200px;padding-inline:calc(var(--spacing) * 4);padding-block:calc(var(--spacing) * 3);flex:1}@media not all and (min-width:48rem){.ifacebadge.large{min-width:180px;padding-inline:calc(var(--spacing) * 3);padding-block:calc(var(--spacing) * 2.5)}}.cbi-section{margin-bottom:calc(var(--spacing) * 3);border-radius:calc(var(--radius-base) * 2);padding:calc(var(--spacing) * 5);overflow:visible}@media not all and (min-width:48rem){.cbi-section{padding:calc(var(--spacing) * 3)}}.cbi-section[data-tab-title]{margin:0;padding:0}.cbi-section[data-tab-active=true]{margin-bottom:calc(var(--spacing) * 3);padding:calc(var(--spacing) * 5)}@media not all and (min-width:48rem){.cbi-section[data-tab-active=true]{padding:calc(var(--spacing) * 3)}}#maincontent .cbi-section{border-style:var(--tw-border-style);border-width:1px;border-color:var(--hairline);background-color:var(--surface);--tw-shadow:var(--app-shadow-sm);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.cbi-section>.cbi-title{justify-content:space-between;align-items:flex-start;display:flex}.cbi-section>.cbi-title>h3{flex:1}.cbi-section>.cbi-title>h3 .label[data-clickable]{background-color:var(--surface-sunken);color:var(--text);width:calc(var(--spacing) * 7);height:calc(var(--spacing) * 7);cursor:pointer;justify-content:center;align-items:center;padding:0;display:inline-flex}.cbi-section>.cbi-title>h3 .label[data-clickable]:before{content:var(--tw-content);width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4);content:var(--tw-content);content:var(--tw-content);transition-property:transform,translate,scale,rotate;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration));content:var(--tw-content);--tw-duration:.15s;background-color:currentColor;transition-duration:.15s}@media (hover:hover){.cbi-section>.cbi-title>h3 .label[data-clickable]:hover{--tw-shadow:var(--app-shadow-md);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}}.cbi-section>.cbi-title>h3 .label[data-clickable]:active{--tw-scale-x:95%;--tw-scale-y:95%;--tw-scale-z:95%;scale:var(--tw-scale-x) var(--tw-scale-y)}@media not all and (min-width:48rem){.cbi-section>.cbi-title>h3 .label[data-clickable]{width:calc(var(--spacing) * 6);height:calc(var(--spacing) * 6)}}.cbi-section>.cbi-title>h3 span[data-indicator=poll-status]{width:calc(var(--spacing) * 5);height:calc(var(--spacing) * 5);cursor:pointer;font-size:0;position:relative}.cbi-section>.cbi-title>h3 span[data-indicator=poll-status]:before{content:var(--tw-content);content:var(--tw-content);width:calc(var(--spacing) * 5);height:calc(var(--spacing) * 5);content:var(--tw-content);content:var(--tw-content);transition-property:transform,translate,scale,rotate;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration));content:var(--tw-content);--tw-duration:.15s;content:var(--tw-content);--tw-ease:var(--ease-out);transition-duration:.15s;transition-timing-function:var(--ease-out);background-color:currentColor;position:absolute}@media (hover:hover){.cbi-section>.cbi-title>h3 span[data-indicator=poll-status]:hover:before{content:var(--tw-content);--tw-scale-x:110%;--tw-scale-y:110%;--tw-scale-z:110%;scale:var(--tw-scale-x) var(--tw-scale-y)}}.cbi-section>.cbi-title>h3 span[data-indicator=poll-status]:active:before{content:var(--tw-content);--tw-scale-x:95%;--tw-scale-y:95%;--tw-scale-z:95%;scale:var(--tw-scale-x) var(--tw-scale-y)}.cbi-section>.cbi-title>h3 span[data-indicator=poll-status][data-style=active]:before{content:var(--tw-content);content:var(--tw-content);-webkit-mask:var(--icon-arrow-right) center/cover no-repeat;-webkit-mask:var(--icon-arrow-right) center/cover no-repeat;-webkit-mask:var(--icon-arrow-right) center/cover no-repeat;mask:var(--icon-arrow-right) center/cover no-repeat;rotate:0deg}.cbi-section>.cbi-title>h3 span[data-indicator=poll-status][data-style=inactive]:before{content:var(--tw-content);content:var(--tw-content);-webkit-mask:var(--icon-arrow-right) center/cover no-repeat;-webkit-mask:var(--icon-arrow-right) center/cover no-repeat;-webkit-mask:var(--icon-arrow-right) center/cover no-repeat;mask:var(--icon-arrow-right) center/cover no-repeat;rotate:90deg}.cbi-section legend{font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height));--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.cbi-section h3{border-bottom-style:var(--tw-border-style);border-bottom-width:1px;border-color:var(--hairline);padding-bottom:calc(var(--spacing) * 4);color:var(--text)}@media not all and (min-width:48rem){.cbi-section h3{padding-bottom:calc(var(--spacing) * 2);margin-inline:0}.cbi-section div[style*=display\:grid]{gap:calc(var(--spacing) * 3);grid-template-columns:repeat(2,minmax(0,1fr))!important}}.cbi-section div[style*=display\:grid]:has(>.ifacebox){place-items:center}.cbi-section .network-status-table{margin-bottom:calc(var(--spacing) * 3);justify-content:space-around;gap:calc(var(--spacing) * 4);flex-wrap:nowrap;display:flex}@media not all and (min-width:48rem){.cbi-section .network-status-table{flex-direction:column}}.cbi-section .cbi-section-create{margin-top:calc(var(--spacing) * 6);align-items:center;gap:calc(var(--spacing) * 3);flex-wrap:wrap;display:flex}@media not all and (min-width:48rem){.cbi-section .cbi-section-create{margin-inline:0;margin-top:calc(var(--spacing) * 5);align-items:stretch;gap:calc(var(--spacing) * 3);flex-direction:column}}.cbi-section .cbi-section-create>div{flex:none}@media not all and (min-width:48rem){.cbi-section .cbi-section-create>div{flex:1;width:100%}}.ifacebox{min-width:calc(var(--spacing) * 28);border-radius:calc(var(--radius-base) * 2);border-style:var(--tw-border-style);border-width:1px;border-color:var(--hairline);background-color:var(--surface-overlay);text-align:center;font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height));--tw-leading:calc(var(--spacing) * 5);line-height:calc(var(--spacing) * 5);--tw-shadow:var(--app-shadow-md);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);flex-direction:column;align-items:stretch;display:inline-flex;position:relative;overflow:visible}@media (hover:hover){.ifacebox:hover{border-color:var(--hairline);--tw-shadow:var(--app-shadow-lg);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}}@media not all and (min-width:48rem){.ifacebox{min-width:calc(var(--spacing) * 30);border-radius:calc(var(--radius-base) * 3);border-color:var(--hairline);--tw-shadow:var(--app-shadow-sm);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);flex:1}#cbi-network-interface .ifacebox{flex-direction:row}}@media (min-width:48rem){#cbi-network-interface .ifacebox{min-width:calc(var(--spacing) * 38)}}.ifacebox .ifacebox-head{border-top-left-radius:calc(var(--radius-base) * 2);border-top-right-radius:calc(var(--radius-base) * 2);border-bottom-style:var(--tw-border-style);border-bottom-width:1px;border-color:var(--hairline);background-color:var(--surface-sunken);width:100%;padding-inline:calc(var(--spacing) * 4);padding-block:calc(var(--spacing) * 3);text-align:center;--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold);--tw-tracking:var(--tracking-tight);letter-spacing:var(--tracking-tight);color:var(--text);transition-property:background-color,border-color,color;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration));--tw-duration:.15s;transition-duration:.15s}@media not all and (min-width:48rem){.ifacebox .ifacebox-head{border-top-left-radius:calc(var(--radius-base) * 3);border-top-right-radius:calc(var(--radius-base) * 3);padding-inline:calc(var(--spacing) * 3);padding-block:calc(var(--spacing) * 2.5);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));--tw-leading:calc(var(--spacing) * 5);line-height:calc(var(--spacing) * 5);--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}}.ifacebox .ifacebox-head[style*=--zone-color-rgb]{background-color:rgb(var(--zone-color-rgb),.75)!important}@media not all and (min-width:48rem){#cbi-network-interface :is(.ifacebox .ifacebox-head){border-top-left-radius:calc(var(--radius-base) * 3);border-bottom-left-radius:calc(var(--radius-base) * 3);border-right-style:var(--tw-border-style);border-right-width:1px;border-bottom-style:var(--tw-border-style);border-bottom-width:0;border-top-right-radius:0;flex-shrink:0;justify-content:center;align-items:center;width:auto;display:flex}}.ifacebox .ifacebox-head.cbi-tooltip-container{background-color:#0000;position:static}.ifacebox .ifacebox-head.cbi-tooltip-container .cbi-tooltip{bottom:0;left:0}.ifacebox .ifacebox-head.active{border-color:var(--brand);background-color:var(--brand);color:var(--on-brand)}.ifacebox .ifacebox-body{justify-content:center;align-items:stretch;gap:var(--spacing);border-bottom-right-radius:calc(var(--radius-base) * 2);border-bottom-left-radius:calc(var(--radius-base) * 2);width:100%;padding:calc(var(--spacing) * 3);text-align:center;color:var(--text);flex-direction:column;flex:1;display:flex}@media not all and (min-width:48rem){.ifacebox .ifacebox-body{border-bottom-right-radius:calc(var(--radius-base) * 3);border-bottom-left-radius:calc(var(--radius-base) * 3)}#cbi-network-interface :is(.ifacebox .ifacebox-body){border-top-right-radius:calc(var(--radius-base) * 3);border-bottom-right-radius:calc(var(--radius-base) * 3);padding-block:calc(var(--spacing) * 2);padding-right:calc(var(--spacing) * 2);padding-left:calc(var(--spacing) * 4);border-bottom-left-radius:0;flex-direction:row;align-items:center}}.ifacebox .ifacebox-body>img{width:calc(var(--spacing) * 5);margin-inline:auto}:where(.ifacebox .ifacebox-body>span>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 1.5) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 1.5) * calc(1 - var(--tw-space-y-reverse)))}.ifacebox .ifacebox-body>span{color:var(--text)}@media not all and (min-width:48rem){:where(.ifacebox .ifacebox-body>span>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(var(--spacing) * var(--tw-space-y-reverse));margin-block-end:calc(var(--spacing) * calc(1 - var(--tw-space-y-reverse)))}.ifacebox .ifacebox-body>span{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));--tw-leading:calc(var(--spacing) * 5);line-height:calc(var(--spacing) * 5)}}.network-status-table :is(.ifacebox .ifacebox-body>span){width:100%}.ifacebox .ifacebox-body>span .cbi-tooltip-container+.cbi-tooltip-container{margin-left:var(--spacing)}.ifacebox .ifacebox-body>span .cbi-tooltip{transition-delay:.2s}.ifacebox .ifacebox-body>span .nowrap{display:inline-block}.ifacebox .ifacebox-body>span>.nowrap:not(:last-child){margin-bottom:var(--spacing)}.ifacebox .ifacebox-body>span img{width:calc(var(--spacing) * 5);flex-shrink:0}.ifacebox .ifacebox-body>div{width:100%;display:block}:where(.ifacebox .ifacebox-body>div>:not(:last-child)){--tw-space-y-reverse:0;margin-block:0}@media not all and (min-width:48rem){#cbi-network-interface :is(.ifacebox .ifacebox-body>div){flex:1;width:auto}:where(#cbi-network-interface :is(.ifacebox .ifacebox-body>div)>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(var(--spacing) * var(--tw-space-y-reverse));margin-block-end:calc(var(--spacing) * calc(1 - var(--tw-space-y-reverse)))}}.ifacebox .ifacebox-body .cbi-tooltip-container{cursor:help;color:var(--text);justify-content:center;align-items:center;display:inline-flex;position:static}.ifacebox .ifacebox-body .cbi-tooltip-container .cbi-tooltip{bottom:0}@media (min-width:48rem){.ifacebox .ifacebox-body .cbi-tooltip-container .cbi-tooltip{left:0}}.ifacebox .ifacebox-body .cbi-tooltip-container .cbi-tooltip .nowrap{white-space:nowrap}.ifacebox .ifacebox-body small{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height));--tw-leading:calc(var(--spacing) * 4);line-height:calc(var(--spacing) * 4);display:block}@media not all and (min-width:48rem){#cbi-network-interface :is(.ifacebox .ifacebox-body small){margin-top:0}}.network-status-table .ifacebox-body{justify-content:space-around;align-items:center;gap:calc(var(--spacing) * 2);flex-direction:column;flex:1;height:100%;display:flex}.network-status-table .ifacebox-body>div{gap:calc(var(--spacing) * 2);flex-wrap:wrap;display:flex}@media not all and (min-width:48rem){.network-status-table .ifacebox-body>div{gap:calc(var(--spacing) * 1.5)}}.network-status-table .ifacebox-body .ifacebadge{min-width:calc(var(--spacing) * 55);flex:1}#modal_overlay{pointer-events:none;background-color:#0000;display:none;position:fixed;top:0;bottom:0;overflow:auto}.modal-overlay-active #modal_overlay{pointer-events:auto;z-index:100;background-color:var(--scrim);--tw-backdrop-blur:blur(var(--blur-md));--tw-backdrop-saturate:saturate(150%);-webkit-backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);grid-template-columns:repeat(1,minmax(0,1fr));place-items:center;display:grid;inset:0}#modal_overlay>.modal{width:var(--container-5xl);gap:calc(var(--spacing) * 4);border-radius:calc(var(--radius-base) * 3);border-style:var(--tw-border-style);border-width:1px;border-color:var(--hairline);background-color:var(--surface-overlay);padding:calc(var(--spacing) * 6);overflow-wrap:break-word;white-space:normal;--tw-shadow:var(--app-shadow-lg);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);flex-direction:column;display:flex;position:relative}@media not all and (min-width:48rem){#modal_overlay>.modal{gap:calc(var(--spacing) * 3);width:100%;padding:calc(var(--spacing) * 4)}}#modal_overlay>.modal h4{text-align:center;margin-bottom:0}#modal_overlay>.modal h4 em{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold);color:var(--brand)}#modal_overlay>.modal h5{margin-block:calc(var(--spacing) * 3);color:var(--text)}#modal_overlay>.modal p{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));--tw-leading:var(--leading-relaxed);line-height:var(--leading-relaxed);color:var(--text)}#modal_overlay>.modal>ul{border-radius:calc(var(--radius-base) * 2);border-style:var(--tw-border-style);border-width:1px;border-color:var(--hairline);padding:calc(var(--spacing) * 3);overflow:auto}#modal_overlay>.modal label.btn{border-style:var(--tw-border-style);border-width:1px;border-color:var(--hairline);background-color:var(--surface-sunken);color:var(--text)}@media (hover:hover){#modal_overlay>.modal label.btn:hover{border-color:var(--hairline)}}#modal_overlay>.modal pre{overflow:auto}#modal_overlay>.modal pre.errors{border-color:var(--hairline);background-color:var(--danger-surface);color:var(--danger)}#modal_overlay>.modal pre+pre{margin-top:calc(var(--spacing) * 3)}#modal_overlay>.modal .button-row,#modal_overlay>.modal div.left,#modal_overlay>.modal div.right{gap:calc(var(--spacing) * 3);border-top-style:var(--tw-border-style);border-top-width:1px;border-color:var(--hairline);padding:calc(var(--spacing) * 4);flex-shrink:0;display:flex}@media not all and (min-width:48rem){#modal_overlay>.modal .button-row,#modal_overlay>.modal div.left,#modal_overlay>.modal div.right{gap:calc(var(--spacing) * 1.5);padding:calc(var(--spacing) * 2.5)}}#modal_overlay>.modal div.left{justify-content:flex-start}#modal_overlay>.modal .button-row,#modal_overlay>.modal div.right{justify-content:flex-end}#modal_overlay>.modal.uci-dialog ins,#modal_overlay>.modal.uci-dialog del,#modal_overlay>.modal.uci-dialog var{font-family:var(--font-mono);--tw-shadow:var(--app-shadow-sm);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);font-style:normal;text-decoration-line:none}#modal_overlay>.modal.uci-dialog ins{border-style:var(--tw-border-style);border-width:1px;border-color:var(--hairline);background-color:var(--success-surface);color:var(--success)}#modal_overlay>.modal.uci-dialog del{border-style:var(--tw-border-style);border-width:1px;border-color:var(--hairline);background-color:var(--danger-surface);color:var(--danger)}#modal_overlay>.modal.uci-dialog var{border-style:var(--tw-border-style);border-width:1px;border-color:var(--hairline);background-color:var(--info-surface);color:var(--info)}#modal_overlay>.modal.uci-dialog .uci-change-legend{margin-top:calc(var(--spacing) * 4);gap:calc(var(--spacing) * 3);border-radius:calc(var(--radius-base) * 2);border-style:var(--tw-border-style);border-width:1px;border-color:var(--hairline);background-color:var(--surface-sunken);padding:calc(var(--spacing) * 4);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}@media not all and (min-width:48rem){#modal_overlay>.modal.uci-dialog .uci-change-legend{gap:calc(var(--spacing) * 2);padding:calc(var(--spacing) * 3);grid-template-columns:repeat(1,minmax(0,1fr))}}#modal_overlay>.modal.uci-dialog .uci-change-legend .uci-change-legend-label{align-items:center;gap:calc(var(--spacing) * 2);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium);color:var(--text);display:flex}#modal_overlay>.modal.uci-dialog .uci-change-legend .uci-change-legend-label ins,#modal_overlay>.modal.uci-dialog .uci-change-legend .uci-change-legend-label del,#modal_overlay>.modal.uci-dialog .uci-change-legend .uci-change-legend-label var{height:calc(var(--spacing) * 6);min-width:calc(var(--spacing) * 6);border-radius:var(--radius-base);padding-inline:calc(var(--spacing) * 2);font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height));--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold);justify-content:center;align-items:center;display:flex}#modal_overlay>.modal.uci-dialog .uci-change-legend .uci-change-legend-label var ins,#modal_overlay>.modal.uci-dialog .uci-change-legend .uci-change-legend-label var del{margin-left:var(--spacing);height:calc(var(--spacing) * 4);min-width:calc(var(--spacing) * 4);padding-inline:var(--spacing)}#modal_overlay>.modal.uci-dialog .uci-change-list{margin-top:calc(var(--spacing) * 4)}:where(#modal_overlay>.modal.uci-dialog .uci-change-list>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 3) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 3) * calc(1 - var(--tw-space-y-reverse)))}#modal_overlay>.modal.uci-dialog .uci-change-list h5{margin-top:calc(var(--spacing) * 6);margin-bottom:calc(var(--spacing) * 2);border-radius:calc(var(--radius-base) * 1.5);background-color:var(--surface-sunken);padding-inline:calc(var(--spacing) * 3);padding-block:calc(var(--spacing) * 2);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold);color:var(--text)}#modal_overlay>.modal.uci-dialog .uci-change-list h5:first-child{margin-top:0}#modal_overlay>.modal.uci-dialog .uci-change-list ins,#modal_overlay>.modal.uci-dialog .uci-change-list del{border-radius:calc(var(--radius-base) * 1.5);padding-inline:calc(var(--spacing) * 4);padding-block:calc(var(--spacing) * 3);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));display:block}:is(#modal_overlay>.modal.uci-dialog .uci-change-list ins,#modal_overlay>.modal.uci-dialog .uci-change-list del) strong{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}#modal_overlay>.modal.uci-dialog .uci-change-list var{border-radius:var(--radius-base);padding-inline:calc(var(--spacing) * 2);padding-block:var(--spacing);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));display:inline-block}#modal_overlay>.modal.uci-dialog .uci-change-list var ins,#modal_overlay>.modal.uci-dialog .uci-change-list var del{margin-left:var(--spacing);padding-inline:calc(var(--spacing) * 1.5);padding-block:calc(var(--spacing) * .5);font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height));display:inline-block}@media not all and (min-width:48rem){.mobile-menu-overlay{visibility:hidden;z-index:60;background-color:var(--mega-menu-bg);opacity:0;position:fixed;inset:0}}@media (min-width:48rem){.mobile-menu-overlay{display:none}}@media not all and (min-width:48rem){.mobile-menu-overlay.mobile-menu-open{visibility:visible;opacity:1;transition-property:visibility,opacity;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration));--tw-duration:.25s;transition-duration:.25s}.mobile-menu-overlay .mobile-nav{width:100%;height:100%;padding-top:calc(var(--spacing) * 14);flex-direction:column;display:flex}.mobile-menu-overlay .mobile-nav .mobile-nav-body{min-height:0;padding-inline:calc(var(--spacing) * 5);padding-top:calc(var(--spacing) * 6);flex-direction:column;flex:1;display:flex}.mobile-menu-overlay .mobile-nav .mobile-nav-body .mobile-nav-label{margin-bottom:calc(var(--spacing) * 3);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium);color:var(--text-muted)}.mobile-menu-overlay .mobile-nav .mobile-nav-list{--tw-translate-y:calc(var(--spacing) * -2);min-height:0;translate:var(--tw-translate-x) var(--tw-translate-y);row-gap:calc(var(--spacing) * 4);overscroll-behavior:contain;padding:0;padding-bottom:calc(var(--spacing) * 5);opacity:0;flex-direction:column;flex:1;margin:0;list-style-type:none;display:flex;overflow-y:auto}.mobile-menu-overlay .mobile-nav .mobile-nav-list .mobile-nav-item{flex-shrink:0}.mobile-menu-overlay .mobile-nav .mobile-nav-list .mobile-nav-item .nav-row{min-height:calc(var(--spacing) * 13);justify-content:space-between;gap:calc(var(--spacing) * 3);padding-inline:0;padding-block:calc(var(--spacing) * 2.5);font-size:var(--text-2xl);line-height:var(--tw-leading,var(--text-2xl--line-height));--tw-leading:var(--leading-tight);line-height:var(--leading-tight);--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium);--tw-tracking:var(--tracking-tight);letter-spacing:var(--tracking-tight);background-color:#0000;border-radius:0}.mobile-menu-overlay .mobile-nav .mobile-nav-list .mobile-nav-item .nav-row .nav-icon{width:calc(var(--spacing) * 6);height:calc(var(--spacing) * 6)}.mobile-menu-overlay .mobile-nav .mobile-nav-list .mobile-nav-item .mobile-nav-submenu .mobile-nav-submenu-list{padding:0;padding-left:calc(var(--spacing) * 6);margin:0}.mobile-menu-overlay .mobile-nav .mobile-nav-list .mobile-nav-item .mobile-nav-submenu .mobile-nav-subitem .mobile-nav-sublink{min-height:calc(var(--spacing) * 10);width:100%;padding-inline:calc(var(--spacing) * 3);padding-block:calc(var(--spacing) * 2);font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height));align-items:center}.mobile-menu-overlay .mobile-nav .mobile-nav-footer{border-top-style:var(--tw-border-style);border-top-width:1px;border-color:var(--hairline);padding-inline:calc(var(--spacing) * 5);padding-top:calc(var(--spacing) * 4);padding-bottom:max(1rem, env(safe-area-inset-bottom));flex-shrink:0;justify-content:space-between;align-items:center;display:flex}.mobile-menu-overlay .mobile-nav .mobile-nav-footer .mobile-nav-footer-action{align-items:center;display:flex}.mobile-menu-overlay .mobile-nav .mobile-nav-footer .mobile-nav-logout{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium);color:var(--text);transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration));--tw-duration:.15s;text-decoration-line:none;transition-duration:.15s}@media (hover:hover){.mobile-menu-overlay .mobile-nav .mobile-nav-footer .mobile-nav-logout:hover{color:var(--brand)}}.mobile-menu-overlay .mobile-nav .mobile-nav-footer .theme-switcher .theme-option{padding-inline:calc(var(--spacing) * 2);padding-block:var(--spacing)}.mobile-menu-overlay.mobile-menu-open .mobile-nav-list{--tw-translate-y:0;translate:var(--tw-translate-x) var(--tw-translate-y);opacity:1;transition-property:translate,opacity;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration));--tw-duration:.25s;--tw-ease:var(--ease-out);transition-duration:.25s;transition-timing-function:var(--ease-out)}body.mobile-navigation-open>header{z-index:70;background-color:#0000}}[data-nav-type=mega-menu] .desktop-menu-overlay{pointer-events:none;visibility:hidden;z-index:60;background-color:var(--mega-menu-scrim);opacity:0;transition:opacity .22s cubic-bezier(.4,0,.6,1),visibility 0s .22s;position:fixed;inset:0}@media not all and (min-width:48rem){[data-nav-type=mega-menu] .desktop-menu-overlay{display:none}}[data-nav-type=mega-menu] .desktop-menu-overlay.active{pointer-events:auto;visibility:visible;opacity:1;transition-delay:0s}table.table,.table{margin-bottom:calc(var(--spacing) * 3);border-collapse:separate;--tw-border-spacing-x:0;--tw-border-spacing-y:0;width:100%;border-spacing:var(--tw-border-spacing-x) var(--tw-border-spacing-y);border-radius:calc(var(--radius-base) * 2);border-style:var(--tw-border-style);border-width:1px;border-color:var(--hairline);font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height));overflow:visible}@media not all and (min-width:48rem){table.table,.table{border-style:var(--tw-border-style);width:100%;font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));--tw-shadow:0 0 #0000;box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);border-width:0;border-radius:0;margin-inline:0;display:block;overflow:visible}}:is(table.table,.table)[width="100%"]{width:100%}:is(table.table,.table)[width="33%"]{width:33.3333%}:is(table.table,.table) .cbi-section-table-titles{--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold)}:is(:is(table.table,.table) .cbi-section-table-titles.named,:is(table.table,.table) .cbi-section-table-descr.named,:is(table.table,.table) .cbi-section-table-row[data-title]):before{content:var(--tw-content);content:var(--tw-content);border-color:var(--hairline);content:var(--tw-content);padding-inline:calc(var(--spacing) * 3);content:var(--tw-content);padding-block:calc(var(--spacing) * 3);content:var(--tw-content);vertical-align:middle;content:var(--tw-content);font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height));content:var(--tw-content);--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold);--tw-content:attr(data-title);content:var(--tw-content);content:var(--tw-content);display:table-cell}@media not all and (min-width:48rem){:is(:is(table.table,.table) .cbi-section-table-titles.named,:is(table.table,.table) .cbi-section-table-descr.named,:is(table.table,.table) .cbi-section-table-row[data-title]):before{padding-inline:calc(var(--spacing) * 3);padding-block:calc(var(--spacing) * 2.5);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));flex:0 0 100%;display:flex}}:is(:is(table.table,.table) .cbi-section-table-titles.named,:is(table.table,.table) .cbi-section-table-descr.named,:is(table.table,.table) .cbi-section-table-row[data-title]):before{content:var(--tw-content)}@media (min-width:48rem){:is(:is(table.table,.table) .cbi-section-table-titles.named,:is(table.table,.table) .cbi-section-table-descr.named,:is(table.table,.table) .cbi-section-table-row[data-title]):before{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}}:is(:is(:is(table.table,.table) .cbi-section-table-titles.named,:is(table.table,.table) .cbi-section-table-descr.named,:is(table.table,.table) .cbi-section-table-row[data-title]):not([data-title]),:is(:is(table.table,.table) .cbi-section-table-titles.named,:is(table.table,.table) .cbi-section-table-descr.named,:is(table.table,.table) .cbi-section-table-row[data-title]):has(td.cbi-section-table-titles)):before{content:var(--tw-content);--tw-content:none;content:none}:is(table.table,.table) .cbi-section-table-titles.named:before{content:var(--tw-content);font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height));content:var(--tw-content);--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold);content:var(--tw-content);--tw-tracking:var(--tracking-wider);letter-spacing:var(--tracking-wider);content:var(--tw-content);color:var(--text-subtle);content:var(--tw-content);text-transform:uppercase}@media not all and (min-width:48rem){:is(table.table,.table) tbody,:is(table.table,.table) .tbody{display:block}:is(table.table,.table) tr,:is(table.table,.table) .tr{border-bottom-style:var(--tw-border-style);border-bottom-width:1px;border-color:var(--hairline);padding-inline:calc(var(--spacing) * 2);padding-block:calc(var(--spacing) * 2);flex-wrap:wrap;display:flex}:is(:is(table.table,.table) tr,:is(table.table,.table) .tr):has(.cbi-progressbar){justify-content:center;align-items:center;display:flex}}:is(:is(:is(table.table,.table) tr,:is(table.table,.table) .tr):first-child th,:is(:is(table.table,.table) tr,:is(table.table,.table) .tr):first-child .th):first-child{border-top-left-radius:calc(var(--radius-base) * 2)}:is(:is(:is(table.table,.table) tr,:is(table.table,.table) .tr):first-child th,:is(:is(table.table,.table) tr,:is(table.table,.table) .tr):first-child .th):last-child{border-top-right-radius:calc(var(--radius-base) * 2)}@media not all and (min-width:48rem){:is(:is(table.table,.table) tr,:is(table.table,.table) .tr):last-child{border-bottom-style:var(--tw-border-style);border-bottom-width:0}}:is(:is(table.table,.table) tr,:is(table.table,.table) .tr):last-child[data-title]:before{content:var(--tw-content);border-bottom-style:var(--tw-border-style);border-bottom-width:0}:is(:is(table.table,.table) tr,:is(table.table,.table) .tr):last-child .td{border-bottom-style:var(--tw-border-style);border-bottom-width:0}@media not all and (min-width:48rem){:is(:is(table.table,.table) tr,:is(table.table,.table) .tr).table-titles,:is(:is(table.table,.table) tr,:is(table.table,.table) .tr).cbi-section-table-titles,:is(:is(table.table,.table) tr,:is(table.table,.table) .tr).cbi-section-table-descr{display:none}}:is(:is(table.table,.table) tr,:is(table.table,.table) .tr).cbi-rowstyle-1,:is(:is(table.table,.table) tr,:is(table.table,.table) .tr).cbi-rowstyle-2{background-color:#0000}@media not all and (min-width:48rem){:is(:is(table.table,.table) tr,:is(table.table,.table) .tr)>.col-1{flex:2rem}}@media (min-width:48rem){:is(:is(table.table,.table) tr,:is(table.table,.table) .tr)>.col-1{width:calc(var(--spacing) * 20);max-width:calc(var(--spacing) * 28)}}:is(:is(table.table,.table) tr,:is(table.table,.table) .tr)>.col-2{white-space:normal}@media not all and (min-width:48rem){:is(:is(table.table,.table) tr,:is(table.table,.table) .tr)>.col-2{flex:2 2 4rem}}@media (min-width:48rem){:is(:is(table.table,.table) tr,:is(table.table,.table) .tr)>.col-2{width:calc(var(--spacing) * 32);max-width:calc(var(--spacing) * 40)}}@media not all and (min-width:48rem){:is(:is(table.table,.table) tr,:is(table.table,.table) .tr)>.col-3{flex:3 3 6rem}}@media (min-width:48rem){:is(:is(table.table,.table) tr,:is(table.table,.table) .tr)>.col-3{width:calc(var(--spacing) * 44);max-width:calc(var(--spacing) * 52)}}@media not all and (min-width:48rem){:is(:is(table.table,.table) tr,:is(table.table,.table) .tr)>.col-4{flex:4 4 8rem}}@media (min-width:48rem){:is(:is(table.table,.table) tr,:is(table.table,.table) .tr)>.col-4{width:calc(var(--spacing) * 56);max-width:calc(var(--spacing) * 64)}}@media not all and (min-width:48rem){:is(:is(table.table,.table) tr,:is(table.table,.table) .tr)>.col-5{flex:5 5 10rem}}@media (min-width:48rem){:is(:is(table.table,.table) tr,:is(table.table,.table) .tr)>.col-5{width:calc(var(--spacing) * 68);max-width:calc(var(--spacing) * 76)}}@media not all and (min-width:48rem){:is(:is(table.table,.table) tr,:is(table.table,.table) .tr)>.col-6{flex:6 6 12rem}}@media (min-width:48rem){:is(:is(table.table,.table) tr,:is(table.table,.table) .tr)>.col-6{width:calc(var(--spacing) * 80);max-width:calc(var(--spacing) * 88)}}@media not all and (min-width:48rem){:is(:is(table.table,.table) tr,:is(table.table,.table) .tr)>.col-7{flex:7 7 14rem}}@media (min-width:48rem){:is(:is(table.table,.table) tr,:is(table.table,.table) .tr)>.col-7{width:calc(var(--spacing) * 92);max-width:calc(var(--spacing) * 100)}}@media not all and (min-width:48rem){:is(:is(table.table,.table) tr,:is(table.table,.table) .tr)>.col-8{flex:8 8 16rem}}@media (min-width:48rem){:is(:is(table.table,.table) tr,:is(table.table,.table) .tr)>.col-8{width:calc(var(--spacing) * 104);max-width:calc(var(--spacing) * 112)}}@media not all and (min-width:48rem){:is(:is(table.table,.table) tr,:is(table.table,.table) .tr)>.col-9{flex:9 9 18rem}}@media (min-width:48rem){:is(:is(table.table,.table) tr,:is(table.table,.table) .tr)>.col-9{width:calc(var(--spacing) * 116);max-width:calc(var(--spacing) * 124)}}@media not all and (min-width:48rem){:is(:is(table.table,.table) tr,:is(table.table,.table) .tr)>.col-10{flex:0 0 100%;max-width:calc(100vw - 40px)}}@media (min-width:48rem){:is(:is(table.table,.table) tr,:is(table.table,.table) .tr)>.col-10{width:calc(var(--spacing) * 128);max-width:calc(var(--spacing) * 136)}}:is(table.table,.table) th,:is(table.table,.table) .th{border-bottom-style:var(--tw-border-style);border-bottom-width:1px;border-color:var(--hairline);background-color:var(--surface-sunken);padding-inline:calc(var(--spacing) * 3);padding-block:calc(var(--spacing) * 3);text-align:left;font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height));--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold);--tw-tracking:var(--tracking-wider);letter-spacing:var(--tracking-wider);color:var(--text-subtle);text-transform:uppercase}@media not all and (min-width:48rem){:is(table.table,.table) th,:is(table.table,.table) .th{border-style:var(--tw-border-style);background-color:#0000;border-width:0;flex:50%}}#cbi-samba4 :is(:is(table.table,.table) th,:is(table.table,.table) .th){padding-inline:calc(var(--spacing) * .5);padding-block:calc(var(--spacing) * 1.5)}:is(:is(table.table,.table) th,:is(table.table,.table) .th)[width="100%"]{width:100%}@media not all and (min-width:48rem){:is(:is(table.table,.table) th,:is(table.table,.table) .th)[width="100%"]{flex:0 0 100%}}:is(:is(table.table,.table) th,:is(table.table,.table) .th)[width="33%"]{width:33.3333%}@media not all and (min-width:48rem){:is(:is(table.table,.table) th,:is(table.table,.table) .th)[width="33%"]{flex:0 0 33.333%}}:is(:is(table.table,.table) th,:is(table.table,.table) .th)[data-sortable-row=true]{cursor:pointer;-webkit-user-select:none;user-select:none}:is(:is(table.table,.table) th,:is(table.table,.table) .th)[data-sortable-row=true]:after{content:var(--tw-content);margin-left:calc(var(--spacing) * .5);content:var(--tw-content);font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}@media (hover:hover){:is(:is(table.table,.table) th,:is(table.table,.table) .th)[data-sortable-row=true]:hover{background-color:var(--hover-faint)}}:is(:is(table.table,.table) th,:is(table.table,.table) .th)[data-sortable-row=true][data-sort-direction=asc]:after{--tw-content:"▲";content:var(--tw-content)}:is(:is(table.table,.table) th,:is(table.table,.table) .th)[data-sortable-row=true][data-sort-direction=desc]:after{--tw-content:"▼";content:var(--tw-content)}:is(table.table,.table)[id*=status_leases] .td{max-width:calc(var(--spacing) * 62)}@media not all and (min-width:48rem){:is(table.table,.table)[id*=status_leases] .td{max-width:100%}}:is(table.table,.table) td,:is(table.table,.table) .td{border-bottom-style:var(--tw-border-style);border-bottom-width:1px;border-color:var(--hairline);padding-inline:calc(var(--spacing) * 3);padding-block:calc(var(--spacing) * 3);vertical-align:middle;overflow-wrap:break-word;white-space:normal;display:table-cell}@media not all and (min-width:48rem){:is(table.table,.table) td,:is(table.table,.table) .td{border-style:var(--tw-border-style);padding-inline:var(--spacing);padding-block:var(--spacing);border-width:0;flex:50%}}:is(:is(table.table,.table) td,:is(table.table,.table) .td):before{content:var(--tw-content);--tw-content:attr(data-title);content:var(--tw-content);content:var(--tw-content);display:none}@media not all and (min-width:48rem){:is(:is(table.table,.table) td,:is(table.table,.table) .td):before{margin-bottom:var(--spacing);font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height));--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold);display:block}}:is(:is(table.table,.table) td,:is(table.table,.table) .td):before{content:var(--tw-content)}@media not all and (min-width:48rem){:is(:is(table.table,.table) td,:is(table.table,.table) .td):before{--tw-tracking:var(--tracking-wider);letter-spacing:var(--tracking-wider)}}#cbi-samba4 :is(:is(table.table,.table) td,:is(table.table,.table) .td){padding-inline:calc(var(--spacing) * .5);padding-block:calc(var(--spacing) * 1.5)}[data-page=admin-system-mounts] :is(:is(table.table,.table) td,:is(table.table,.table) .td){max-width:calc(var(--spacing) * 104)}@media not all and (min-width:48rem){[data-page=admin-system-mounts] :is(:is(table.table,.table) td,:is(table.table,.table) .td){max-width:100%}#wifi_assoclist_table :is(:is(table.table,.table) td,:is(table.table,.table) .td){padding-inline:calc(var(--spacing) * 3);padding-block:calc(var(--spacing) * 2);flex:0 0 100%}}#wifi_assoclist_table :is(:is(table.table,.table) td,:is(table.table,.table) .td):before{content:var(--tw-content)}@media not all and (min-width:48rem){#wifi_assoclist_table :is(:is(table.table,.table) td,:is(table.table,.table) .td):before{margin-bottom:calc(var(--spacing) * 1.5)}}:is(:is(table.table,.table) td,:is(table.table,.table) .td)>input[type=text],:is(:is(table.table,.table) td,:is(table.table,.table) .td)>input[type=password],:is(:is(table.table,.table) td,:is(table.table,.table) .td) select,:is(:is(table.table,.table) td,:is(table.table,.table) .td) .cbi-dropdown:not(.btn):not(.cbi-button){width:100%}:is(:is(table.table,.table) td,:is(table.table,.table) .td) select,:is(:is(table.table,.table) td,:is(table.table,.table) .td) .cbi-dropdown:not(.btn):not(.cbi-button){min-width:fit-content}:is(:is(table.table,.table) td,:is(table.table,.table) .td).cbi-value-field{overflow-wrap:anywhere}@media not all and (min-width:48rem){:is(:is(table.table,.table) td,:is(table.table,.table) .td).cbi-value-field{margin-bottom:var(--spacing);text-align:left;flex-basis:100%;align-self:flex-start}}@media (min-width:48rem){:is(:is(table.table,.table) td,:is(table.table,.table) .td).cbi-value-field{max-width:65ch}}@media not all and (min-width:48rem){:is(:is(table.table,.table) td,:is(table.table,.table) .td).cbi-value-field[data-widget=CBI\.DummyValue],:is(:is(table.table,.table) td,:is(table.table,.table) .td).cbi-value-field[data-widget=CBI\.Button],:is(:is(table.table,.table) td,:is(table.table,.table) .td).cbi-value-field[data-widget=CBI\.FlagValue],:is(:is(table.table,.table) td,:is(table.table,.table) .td).cbi-value-field[data-widget=dvalue],:is(:is(table.table,.table) td,:is(table.table,.table) .td).cbi-value-field[data-widget=button],:is(:is(table.table,.table) td,:is(table.table,.table) .td).cbi-value-field[data-widget=fvalue]{flex-basis:50%}:is(:is(table.table,.table) td,:is(table.table,.table) .td).cbi-section-actions{flex:0 0 100%}:is(:is(table.table,.table) td,:is(table.table,.table) .td).cbi-section-actions>div{width:100%}:is(:is(table.table,.table) td,:is(table.table,.table) .td).cbi-section-actions>div>.cbi-button{flex:1}:is(:is(table.table,.table) td,:is(table.table,.table) .td)>.cbi-button{width:100%}}:is(:is(table.table,.table) td,:is(table.table,.table) .td)[width="100%"]{width:100%}@media not all and (min-width:48rem){:is(:is(table.table,.table) td,:is(table.table,.table) .td)[width="100%"]{flex:0 0 100%}}:is(:is(table.table,.table) td,:is(table.table,.table) .td)[width="33%"]{width:33.3333%}@media not all and (min-width:48rem){:is(:is(table.table,.table) td,:is(table.table,.table) .td)[width="33%"]{flex:0 0 33.333%}[data-page=admin-network-network] :is(:is(table.table,.table) td,:is(table.table,.table) .td)[data-name=_ifacebox],[data-page=admin-network-network] :is(:is(table.table,.table) td,:is(table.table,.table) .td)[data-name=_ifacestat]{flex-basis:100%}}.cbi-section-table .cbi-section-table-titles .cbi-section-table-cell{width:auto!important}#content_syslog{margin:calc(var(--spacing) * 2)}@media not all and (min-width:48rem){#content_syslog{margin:var(--spacing)}}#content_syslog>div{align-items:center;column-gap:calc(var(--spacing) * 2);flex-wrap:wrap;display:flex}@media not all and (min-width:48rem){#content_syslog>div{column-gap:calc(var(--spacing) * 1.5)}}#content_syslog>div>select,#content_syslog>div>input{margin-block:0!important}@media not all and (min-width:48rem){#content_syslog>div>.cbi-input-select,#content_syslog>div>.cbi-input-text{min-width:calc(var(--spacing) * 45)}}#content_syslog>.syslog-view{display:block}#syslog,#log_textarea{width:100%;font-family:var(--font-mono);font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height));--tw-leading:var(--leading-snug);line-height:var(--leading-snug)}#syslog{margin-bottom:calc(var(--spacing) * 5);border-radius:calc(var(--radius-base) * 3);border-style:var(--tw-border-style);border-width:1px;border-color:var(--hairline);background-color:var(--surface-sunken);padding:calc(var(--spacing) * 6);color:var(--text);--tw-shadow:var(--app-shadow-md);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}@media not all and (min-width:48rem){#syslog{padding:calc(var(--spacing) * 3)}}#content_syslog.log-enhanced>#syslog{display:none}.syslog-view{width:100%;margin-bottom:calc(var(--spacing) * 5);border-radius:calc(var(--radius-base) * 3);border-style:var(--tw-border-style);border-width:1px;border-color:var(--hairline);background-color:var(--surface-sunken);padding:calc(var(--spacing) * 6);color:var(--text);--tw-shadow:var(--app-shadow-md);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}@media not all and (min-width:48rem){.syslog-view{padding:calc(var(--spacing) * 3)}}.syslog-view{font-family:var(--font-mono);font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height));--tw-leading:var(--leading-relaxed);line-height:var(--leading-relaxed);--tw-outline-style:none;outline-style:none;overflow-x:auto}.syslog-view:focus-visible{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);--tw-ring-color:var(--focus-ring)}.syslog-view .log-row{border-radius:calc(var(--radius-base) * .75);width:max-content;min-width:100%;padding-inline:calc(var(--spacing) * 2);white-space:pre}.syslog-view .log-row:hover{background-color:var(--hover-faint)}.syslog-view ::selection{background-color:var(--info-surface);color:var(--text)}.syslog-view .log-time{color:var(--text-subtle)}@media (min-width:48rem){.syslog-view .log-time{vertical-align:bottom;min-width:24ch;display:inline-block}}.syslog-view .log-sev{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}@media (min-width:48rem){.syslog-view .log-sev{vertical-align:bottom;min-width:16ch;display:inline-block}}.syslog-view .log-tag{color:var(--text-muted)}@media (min-width:48rem){.syslog-view .log-tag{vertical-align:bottom;min-width:18ch;display:inline-block}}.syslog-view .lv-info .log-sev{color:var(--info)}.syslog-view .lv-notice .log-sev{color:var(--success)}.syslog-view .lv-warn .log-sev{color:var(--warning)}.syslog-view .lv-debug,.syslog-view .lv-debug .log-sev,.syslog-view .lv-debug .log-tag{color:var(--text-subtle)}.syslog-view .lv-err,.syslog-view .lv-crit{background-color:var(--danger-surface)}:is(.syslog-view .lv-err,.syslog-view .lv-crit):hover{background-color:var(--danger-surface-hover)}:is(.syslog-view .lv-err,.syslog-view .lv-crit) .log-sev{color:var(--danger)}.cbi-input-invalid,.cbi-value-error{border-color:var(--danger)!important}:is(.cbi-input-invalid,.cbi-value-error):focus{--tw-ring-color:var(--danger)!important}.cbi-value{gap:calc(var(--spacing) * 6);padding-block:calc(var(--spacing) * 1.5);flex-flow:wrap;display:flex}@media not all and (min-width:48rem){.cbi-value{gap:calc(var(--spacing) * 1.5);padding-block:var(--spacing);flex-direction:column}}.cbi-value.hidden{display:none}.cbi-value+.cbi-value{margin-top:calc(var(--spacing) * 3)}@media not all and (min-width:48rem){.cbi-value+.cbi-value{margin-top:calc(var(--spacing) * 2)}}.cbi-value>.cbi-value-title{padding-top:var(--spacing);text-align:right;--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}@media not all and (min-width:48rem){.cbi-value>.cbi-value-title{text-align:left;width:auto}}@media (min-width:48rem){.cbi-value>.cbi-value-title{flex:0 0 12rem}}.cbi-value>.cbi-value-field{flex:1;max-width:100%}.cbi-value>.cbi-value-field:has(>.cbi-dropdown[disabled]){cursor:not-allowed}.cbi-value>.cbi-value-field .cbi-value-description{margin-top:var(--spacing);padding-left:calc(var(--spacing) * 4);--tw-leading:1;overflow-wrap:break-word;color:var(--text-muted);line-height:1;position:relative}.cbi-value>.cbi-value-field .cbi-value-description:not(:empty):before{content:var(--tw-content);content:var(--tw-content);left:calc(var(--spacing) * -.5);content:var(--tw-content);content:var(--tw-content);width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4);content:var(--tw-content);background-color:var(--info);content:var(--tw-content);-webkit-mask:var(--icon-info) center/cover no-repeat;-webkit-mask:var(--icon-info) center/cover no-repeat;-webkit-mask:var(--icon-info) center/cover no-repeat;mask:var(--icon-info) center/cover no-repeat;display:inline-block;position:absolute}.cbi-value>.cbi-section,.cbi-value>.cbi-tblsection{width:100%}.cbi-dynlist{width:max-content;max-width:calc(var(--spacing) * 120);align-items:flex-start;gap:calc(var(--spacing) * 3);flex-direction:column;display:inline-flex}@media not all and (min-width:48rem){.cbi-dynlist{max-width:100%!important}}.cbi-dynlist .item{pointer-events:auto;cursor:move;align-items:flex-start;gap:calc(var(--spacing) * 2);border-radius:calc(var(--radius-base) * 2);border-style:var(--tw-border-style);border-width:1px;border-color:var(--hairline);background-color:var(--surface);padding-block:calc(var(--spacing) * 3);padding-right:calc(var(--spacing) * 10);padding-left:calc(var(--spacing) * 4);word-break:break-all;--tw-shadow:var(--app-shadow-sm);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);transition-property:transform,box-shadow,opacity,border-color,background-color;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration));--tw-duration:.15s;-webkit-user-select:text;user-select:text;flex-direction:column;align-self:stretch;transition-duration:.15s;display:inline-flex;position:relative;overflow:hidden}@media not all and (min-width:48rem){.cbi-dynlist .item{width:100%;padding-block:calc(var(--spacing) * 2.5);padding-right:calc(var(--spacing) * 8);padding-left:calc(var(--spacing) * 3)}}.cbi-dynlist .item:after{content:var(--tw-content);content:var(--tw-content);top:calc(var(--spacing) * 2.5);content:var(--tw-content);right:calc(var(--spacing) * 2);content:var(--tw-content);content:var(--tw-content);height:calc(var(--spacing) * 6);content:var(--tw-content);width:calc(var(--spacing) * 6);content:var(--tw-content);content:var(--tw-content);cursor:pointer;content:var(--tw-content);content:var(--tw-content);content:var(--tw-content);border-radius:calc(var(--radius-base) * 1.5);content:var(--tw-content);background-color:var(--surface-sunken);content:var(--tw-content);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));content:var(--tw-content);--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium);content:var(--tw-content);color:var(--text-muted);--tw-content:"×";content:var(--tw-content);flex-shrink:0;justify-content:center;align-items:center;display:inline-flex;position:absolute}.cbi-dynlist .item.dragging{--tw-scale-x:95%;--tw-scale-y:95%;--tw-scale-z:95%;scale:var(--tw-scale-x) var(--tw-scale-y);cursor:grabbing;opacity:.5;--tw-shadow:var(--app-shadow-lg);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.cbi-dynlist .item.drag-over{--tw-scale-x:105%;--tw-scale-y:105%;--tw-scale-z:105%;scale:var(--tw-scale-x) var(--tw-scale-y);border-color:var(--brand);background-color:var(--brand-subtle);--tw-shadow:var(--app-shadow-md);--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);--tw-ring-color:var(--brand-subtle)}.cbi-dynlist .item>span,.cbi-dynlist .item>code{pointer-events:none;border-radius:var(--radius-base);width:100%;font-family:var(--font-mono);--tw-leading:var(--leading-relaxed);line-height:var(--leading-relaxed)}.cbi-dynlist .placeholder{word-break:break-all}.cbi-dynlist .add-item{align-items:center;gap:calc(var(--spacing) * 1.5);border-radius:calc(var(--radius-base) * 2);border-style:var(--tw-border-style);--tw-border-style:dashed;border-style:dashed;border-width:1px;border-color:var(--hairline);padding-inline:var(--spacing);padding-block:var(--spacing);transition-property:border-color,background-color;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration));--tw-duration:.15s;background-color:#0000;align-self:stretch;transition-duration:.15s;display:inline-flex}@media (hover:hover){.cbi-dynlist .add-item:hover{border-color:var(--hairline);background-color:var(--surface-sunken)}}.cbi-dynlist .add-item>input{min-width:calc(var(--spacing) * 61);flex:1}.cbi-dynlist .add-item>.cbi-button{min-height:calc(var(--spacing) * 6);min-width:calc(var(--spacing) * 6);cursor:pointer;border-radius:calc(var(--radius-base) * 1.5);padding-inline:calc(var(--spacing) * 2);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium);--tw-shadow:0 0 #0000;box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);flex-shrink:0;justify-content:center;align-items:center;padding-block:0;display:inline-flex}.cbi-dynlist .add-item>.cbi-button:active{--tw-scale-x:95%;--tw-scale-y:95%;--tw-scale-z:95%;scale:var(--tw-scale-x) var(--tw-scale-y)}.cbi-tabmenu{margin-bottom:var(--spacing);align-items:center;gap:var(--spacing);border-radius:calc(var(--radius-base) * 4);border-style:var(--tw-border-style);border-width:1px;border-color:var(--hairline);background-color:var(--surface-sunken);padding:var(--spacing);display:flex;overflow-x:auto}.cbi-tabmenu li{flex-shrink:0;min-width:fit-content;margin:0;list-style-type:none;position:relative}.cbi-tabmenu li[data-errors]:after{content:var(--tw-content);content:var(--tw-content);top:calc(var(--spacing) * -.5);content:var(--tw-content);right:calc(var(--spacing) * -1.5);content:var(--tw-content);z-index:20;content:var(--tw-content);content:var(--tw-content);min-height:calc(var(--spacing) * 4);content:var(--tw-content);min-width:calc(var(--spacing) * 4);content:var(--tw-content);content:var(--tw-content);content:var(--tw-content);content:var(--tw-content);background-color:var(--danger);content:var(--tw-content);padding-inline:calc(var(--spacing) * 1.5);content:var(--tw-content);padding-block:calc(var(--spacing) * .5);content:var(--tw-content);font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height));content:var(--tw-content);--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold);content:var(--tw-content);color:var(--on-brand);--tw-content:attr(data-errors);content:var(--tw-content);border-radius:3.40282e38px;justify-content:center;align-items:center;display:inline-flex;position:absolute}.cbi-tabmenu li[data-errors]>a{border-style:var(--tw-border-style);border-width:1px;border-color:var(--hairline)}.cbi-tabmenu li>a{border-radius:calc(var(--radius-base) * 4);padding-inline:calc(var(--spacing) * 4);padding-block:calc(var(--spacing) * 2);text-align:center;font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium);white-space:nowrap;color:var(--text-muted);text-decoration-line:none;display:block}@media (hover:hover){.cbi-tabmenu li>a:hover{color:var(--text)}}.cbi-tabmenu li.cbi-tab a{background-color:var(--text);--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold);color:var(--surface);--tw-shadow:var(--app-shadow-sm);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}[data-tab-title]{visibility:hidden;height:0;overflow:hidden}[data-tab-active=true]{visibility:visible;height:auto;overflow:visible}#tabmenu{margin-bottom:calc(var(--spacing) * 8);width:100%}.tabs{border-bottom-style:var(--tw-border-style);border-bottom-width:1px;border-color:var(--hairline);align-items:center;gap:0;display:flex;position:relative;overflow-x:auto}.tabs a{padding-inline:calc(var(--spacing) * 8);padding-block:calc(var(--spacing) * 4);text-align:center;font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium);white-space:nowrap;color:var(--text-muted);transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration));--tw-duration:.15s;transition-duration:.15s;display:block}@media (hover:hover){.tabs a:hover{color:var(--text);text-decoration-line:none}}.tabs>li.active{border-bottom-style:var(--tw-border-style);border-bottom-width:2px;border-color:var(--text)}.tabs>li.active>a{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold);color:var(--text)}.cbi-section-node-tabbed{margin-top:calc(var(--spacing) * 6)}.cmdk-trigger{width:calc(var(--spacing) * 8);height:calc(var(--spacing) * 8);cursor:pointer;border-radius:var(--radius-base);border-style:var(--tw-border-style);color:var(--text);--tw-shadow:0 0 #0000;box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);transition-property:transform,translate,scale,rotate;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration));--tw-duration:.15s;background-color:#0000;border-width:0;flex-shrink:0;order:9999;place-items:center;padding:0;transition-duration:.15s;display:grid;position:relative}.cmdk-trigger:before{width:calc(var(--spacing) * 5);height:calc(var(--spacing) * 5);--tw-content:"";content:var(--tw-content);-webkit-mask:var(--icon-search) center/contain no-repeat;-webkit-mask:var(--icon-search) center/contain no-repeat;-webkit-mask:var(--icon-search) center/contain no-repeat;mask:var(--icon-search) center/contain no-repeat;background-color:currentColor}.cmdk-trigger:hover{--tw-scale-x:105%;--tw-scale-y:105%;--tw-scale-z:105%;scale:var(--tw-scale-x) var(--tw-scale-y)}.cmdk-trigger:active{--tw-scale-x:95%;--tw-scale-y:95%;--tw-scale-z:95%;scale:var(--tw-scale-x) var(--tw-scale-y)}.cmdk-trigger:focus-visible{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);--tw-ring-color:var(--focus-ring);--tw-outline-style:none;outline-style:none}.cmdk-panel{top:calc(var(--spacing) * 24);z-index:120;--tw-translate-x:calc(calc(1 / 2 * 100%) * -1);width:min(36rem,100vw - 2.5rem);translate:var(--tw-translate-x) var(--tw-translate-y);border-radius:calc(var(--radius-base) * 2);border-style:var(--tw-border-style);border-width:1px;border-color:var(--hairline);background-color:color-mix(in oklab, var(--surface) 85%, transparent);--tw-shadow:var(--app-shadow-lg);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);--tw-backdrop-blur:blur(var(--blur-xl));--tw-backdrop-saturate:saturate(150%);-webkit-backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);transition-property:opacity,translate;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration));--tw-duration:.15s;--tw-ease:var(--ease-out);transition-duration:.15s;transition-timing-function:var(--ease-out);position:fixed;left:50%;overflow:hidden}@starting-style{.cmdk-panel{--tw-translate-y:calc(var(--spacing) * -2);translate:var(--tw-translate-x) var(--tw-translate-y)}}@starting-style{.cmdk-panel{opacity:0}}@media not all and (min-width:48rem){.cmdk-panel{border-style:var(--tw-border-style);background-color:var(--bg);--tw-shadow:0 0 #0000;width:auto;box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);--tw-backdrop-blur: ;-webkit-backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);--tw-backdrop-saturate:saturate(100%);border-width:0;border-radius:0;flex-direction:column;display:flex;inset:0;translate:none}}.cmdk-panel .cmdk-inputrow{align-items:center;gap:calc(var(--spacing) * 3);padding-inline:calc(var(--spacing) * 5);padding-block:calc(var(--spacing) * 3.5);display:flex}@media not all and (min-width:48rem){.cmdk-panel .cmdk-inputrow{border-bottom-style:var(--tw-border-style);border-bottom-width:1px;border-color:var(--hairline);background-color:var(--surface);padding-inline:calc(var(--spacing) * 4);padding-block:calc(var(--spacing) * 2.5)}}.cmdk-panel .cmdk-inputrow:before{width:calc(var(--spacing) * 5);height:calc(var(--spacing) * 5);color:var(--text-subtle);--tw-content:"";content:var(--tw-content);-webkit-mask:var(--icon-search) center/contain no-repeat;-webkit-mask:var(--icon-search) center/contain no-repeat;-webkit-mask:var(--icon-search) center/contain no-repeat;mask:var(--icon-search) center/contain no-repeat;background-color:currentColor;flex-shrink:0}.cmdk-panel .cmdk-inputrow .cmdk-input{border-style:var(--tw-border-style);width:100%;min-width:0;font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height));color:var(--text);background-color:#0000;border-width:0;border-radius:0;flex:1;padding:0}.cmdk-panel .cmdk-inputrow .cmdk-input::placeholder{color:var(--text-subtle)}.cmdk-panel .cmdk-inputrow .cmdk-input{--tw-shadow:0 0 #0000;box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.cmdk-panel .cmdk-inputrow .cmdk-input:focus{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(0px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);--tw-outline-style:none;outline-style:none}.cmdk-panel .cmdk-inputrow .cmdk-clear{width:calc(var(--spacing) * 5);height:calc(var(--spacing) * 5);cursor:pointer;border-radius:calc(var(--radius-base) * .75);border-style:var(--tw-border-style);color:var(--text-subtle);--tw-shadow:0 0 #0000;box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration));--tw-duration:.15s;background-color:#0000;border-width:0;flex-shrink:0;place-items:center;padding:0;transition-duration:.15s;display:grid}.cmdk-panel .cmdk-inputrow .cmdk-clear:before{width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4);--tw-content:"";content:var(--tw-content);-webkit-mask:var(--icon-x) center/contain no-repeat;-webkit-mask:var(--icon-x) center/contain no-repeat;-webkit-mask:var(--icon-x) center/contain no-repeat;mask:var(--icon-x) center/contain no-repeat;background-color:currentColor}.cmdk-panel .cmdk-inputrow .cmdk-clear:hover{color:var(--text)}.cmdk-input:placeholder-shown~:is(.cmdk-panel .cmdk-inputrow .cmdk-clear){display:none}.cmdk-panel .cmdk-inputrow .cmdk-cancel{cursor:pointer;border-style:var(--tw-border-style);padding:var(--spacing);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));color:var(--brand);--tw-shadow:0 0 #0000;box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);background-color:#0000;border-width:0;flex-shrink:0;display:none}@media not all and (min-width:48rem){.cmdk-panel .cmdk-inputrow .cmdk-cancel{display:block}}.cmdk-panel .cmdk-list{max-height:calc(var(--spacing) * 80);border-top-style:var(--tw-border-style);border-top-width:1px;border-color:var(--hairline);padding:calc(var(--spacing) * 2);overflow-y:auto}.cmdk-panel .cmdk-list:empty{display:none}@media not all and (min-width:48rem){.cmdk-panel .cmdk-list{overscroll-behavior:contain;flex:1;max-height:none}}.cmdk-panel .cmdk-list .cmdk-row{align-items:center;gap:calc(var(--spacing) * 3);border-radius:calc(var(--radius-base) * 1.5);padding-inline:calc(var(--spacing) * 3);padding-block:calc(var(--spacing) * 2);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));color:var(--text);text-decoration-line:none;display:flex}.cmdk-panel .cmdk-list .cmdk-row .cmdk-title{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.cmdk-panel .cmdk-list .cmdk-row .cmdk-group-name{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height));color:var(--text-subtle);flex-shrink:0;margin-left:auto}.cmdk-panel .cmdk-list .cmdk-row mark{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold);color:var(--brand);background-color:#0000}.cmdk-panel .cmdk-list .cmdk-row.is-selected{background-color:var(--brand-subtle)}.cmdk-panel .cmdk-list .cmdk-row.is-selected .cmdk-title{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium);color:var(--brand)}.cmdk-panel .cmdk-list .cmdk-empty{padding-inline:calc(var(--spacing) * 3);padding-block:calc(var(--spacing) * 6);text-align:center;font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));color:var(--text-subtle)}.cmdk-panel .cmdk-footer{align-items:center;gap:calc(var(--spacing) * 4);border-top-style:var(--tw-border-style);border-top-width:1px;border-color:var(--hairline);padding-inline:calc(var(--spacing) * 4);padding-block:calc(var(--spacing) * 2);font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height));color:var(--text-subtle);display:flex}@media not all and (min-width:48rem){.cmdk-panel .cmdk-footer{display:none}}.cmdk-panel .cmdk-footer .cmdk-hint-close{margin-left:auto}.cmdk-panel .cmdk-footer kbd{border-radius:calc(var(--radius-base) * .75);border-style:var(--tw-border-style);border-width:1px;border-color:var(--hairline);background-color:var(--surface-sunken);padding-inline:calc(var(--spacing) * 1.5);font-family:var(--font-mono);color:var(--text-muted);padding-block:1px;font-size:11px}@supports not ((-webkit-backdrop-filter:blur(1px)) or (backdrop-filter:blur(1px))){.cmdk-panel{background-color:var(--surface)}}@media (prefers-reduced-transparency:reduce){.cmdk-panel{background-color:var(--surface)}}body[data-bg] .page-bg{--page-bg:var(--main-bg);--page-bg-lqip:var(--main-bg-lqip)}body[data-bg] #maincontent{background:var(--bg);position:relative}@supports (color:color-mix(in lab, red, red)){body[data-bg] #maincontent{background:color-mix(in srgb,var(--bg) 55%,transparent)}}body[data-bg] header,body[data-bg] .sidebar-panel-inner{-webkit-backdrop-filter:blur(var(--main-bg-blur,20px)) saturate(150%);backdrop-filter:blur(var(--main-bg-blur,20px)) saturate(150%);background:var(--bg)}@supports (color:color-mix(in lab, red, red)){body[data-bg] header,body[data-bg] .sidebar-panel-inner{background:color-mix(in srgb,var(--bg) var(--main-bg-alpha,67%),transparent)}}body[data-bg] .page-bg:before{pointer-events:none;z-index:1;--tw-content:"";content:var(--tw-content);background:var(--bg);position:absolute;inset:0}@supports (color:color-mix(in lab, red, red)){body[data-bg] .page-bg:before{background:color-mix(in srgb,var(--bg) var(--main-bg-scrim,20%),transparent)}}body[data-bg] #maincontent .cbi-section{background:var(--surface)}@supports (color:color-mix(in lab, red, red)){body[data-bg] #maincontent .cbi-section{background:color-mix(in srgb,var(--surface) var(--main-bg-alpha,67%),transparent)}}.hidden{display:none!important}@media (min-width:48rem){.left{text-align:left!important}}.left:not(td){text-align:left!important}@media (min-width:48rem){.right{text-align:right!important}}.right:not(td){text-align:right!important}@media (min-width:48rem){.top{vertical-align:top!important}}.top:not(td){vertical-align:top!important}@media (min-width:48rem){.bottom{vertical-align:bottom!important}}.bottom:not(td){vertical-align:bottom!important}@media (min-width:48rem){.center{text-align:center!important}}.center:not(td){text-align:center!important}@media (min-width:48rem){.middle{vertical-align:middle!important}}.middle:not(td){vertical-align:middle!important}@media (min-width:48rem){.nowrap:not(span){white-space:nowrap}}.nowrap:not(span):not(td){white-space:nowrap}@keyframes aurora-fade-in{0%{opacity:0}}.fade-in{animation:.25s both aurora-fade-in}#view>:not(.spinning),#view>.cbi-map>.cbi-map-tabbed>[data-tab-active=true],.cbi-section-node-tabbed>[data-tab-active=true],#topmenu:not([data-restored]),#sidebar-list:not([data-restored])>*,footer{animation:.25s backwards aurora-fade-in}.fade-out{pointer-events:none;opacity:0;transition-property:opacity;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration));--tw-duration:.25s;transition-duration:.25s}.spinning{display:inline-block;position:relative;padding-left:calc(var(--spacing) * 8)!important}.spinning:before{content:var(--tw-content);content:var(--tw-content);content:var(--tw-content);content:var(--tw-content);width:calc(var(--spacing) * 5);height:calc(var(--spacing) * 5);content:var(--tw-content);--tw-translate-y:calc(calc(1 / 2 * 100%) * -1);translate:var(--tw-translate-x) var(--tw-translate-y);content:var(--tw-content);animation:var(--animate-spin);content:var(--tw-content);content:var(--tw-content);-webkit-mask:var(--icon-spinning) center/cover no-repeat;-webkit-mask:var(--icon-spinning) center/cover no-repeat;-webkit-mask:var(--icon-spinning) center/cover no-repeat;mask:var(--icon-spinning) center/cover no-repeat;background-color:currentColor;position:absolute;top:50%;left:6px}#view>.spinning:first-child{min-height:calc(var(--spacing) * 48);place-items:center;width:fit-content;margin-inline:auto;display:grid}@media not all and (min-width:48rem){#view>.spinning:first-child{min-height:calc(100dvh - 4rem)}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-property:none!important;animation:none!important}.spinning:before{animation:var(--animate-spin)!important}}@media (prefers-reduced-transparency:reduce){*,:before,:after{-webkit-backdrop-filter:none!important;backdrop-filter:none!important}:root{--mega-menu-bg:var(--surface-overlay)}body[data-bg]{--main-bg-alpha:100%}}@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-content{syntax:"*";inherits:false;initial-value:""}@property --tw-leading{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-tracking{syntax:"*";inherits:false}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-duration{syntax:"*";inherits:false}@property --tw-ease{syntax:"*";inherits:false}@property --tw-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-z{syntax:"*";inherits:false;initial-value:0}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"";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:"";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:"";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-backdrop-blur{syntax:"*";inherits:false}@property --tw-backdrop-brightness{syntax:"*";inherits:false}@property --tw-backdrop-contrast{syntax:"*";inherits:false}@property --tw-backdrop-grayscale{syntax:"*";inherits:false}@property --tw-backdrop-hue-rotate{syntax:"*";inherits:false}@property --tw-backdrop-invert{syntax:"*";inherits:false}@property --tw-backdrop-opacity{syntax:"*";inherits:false}@property --tw-backdrop-saturate{syntax:"*";inherits:false}@property --tw-backdrop-sepia{syntax:"*";inherits:false}@property --tw-scale-x{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-y{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-z{syntax:"*";inherits:false;initial-value:1}@property --tw-space-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-gradient-position{syntax:"*";inherits:false}@property --tw-gradient-from{syntax:"";inherits:false;initial-value:#0000}@property --tw-gradient-via{syntax:"";inherits:false;initial-value:#0000}@property --tw-gradient-to{syntax:"";inherits:false;initial-value:#0000}@property --tw-gradient-stops{syntax:"*";inherits:false}@property --tw-gradient-via-stops{syntax:"*";inherits:false}@property --tw-gradient-from-position{syntax:"";inherits:false;initial-value:0%}@property --tw-gradient-via-position{syntax:"";inherits:false;initial-value:50%}@property --tw-gradient-to-position{syntax:"";inherits:false;initial-value:100%}@property --tw-border-spacing-x{syntax:"";inherits:false;initial-value:0}@property --tw-border-spacing-y{syntax:"";inherits:false;initial-value:0}@keyframes spin{to{transform:rotate(360deg)}} +@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-content:"";--tw-leading:initial;--tw-font-weight:initial;--tw-tracking:initial;--tw-border-style:solid;--tw-duration:initial;--tw-ease:initial;--tw-translate-x:0;--tw-translate-y:0;--tw-translate-z:0;--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-backdrop-blur:initial;--tw-backdrop-brightness:initial;--tw-backdrop-contrast:initial;--tw-backdrop-grayscale:initial;--tw-backdrop-hue-rotate:initial;--tw-backdrop-invert:initial;--tw-backdrop-opacity:initial;--tw-backdrop-saturate:initial;--tw-backdrop-sepia:initial;--tw-scale-x:1;--tw-scale-y:1;--tw-scale-z:1;--tw-space-y-reverse:0;--tw-gradient-position:initial;--tw-gradient-from:#0000;--tw-gradient-via:#0000;--tw-gradient-to:#0000;--tw-gradient-stops:initial;--tw-gradient-via-stops:initial;--tw-gradient-from-position:0%;--tw-gradient-via-position:50%;--tw-gradient-to-position:100%;--tw-border-spacing-x:0;--tw-border-spacing-y:0}}}@layer theme{:root,:host{--font-sans:var(--font-sans);--font-mono:var(--font-mono);--spacing:var(--spacing);--container-xs:20rem;--container-5xl:64rem;--text-xs:.75rem;--text-xs--line-height:calc(1 / .75);--text-sm:.875rem;--text-sm--line-height:calc(1.25 / .875);--text-base:1rem;--text-base--line-height:calc(1.5 / 1);--text-lg:1.125rem;--text-lg--line-height:calc(1.75 / 1.125);--text-xl:1.25rem;--text-xl--line-height:calc(1.75 / 1.25);--text-2xl:1.5rem;--text-2xl--line-height:calc(2 / 1.5);--text-3xl:1.875rem;--text-3xl--line-height:calc(2.25 / 1.875);--font-weight-normal:400;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--tracking-tight:-.025em;--tracking-wide:.025em;--tracking-wider:.05em;--leading-tight:1.25;--leading-snug:1.375;--leading-normal:1.5;--leading-relaxed:1.625;--ease-out:cubic-bezier(0, 0, .2, 1);--ease-in-out:cubic-bezier(.4, 0, .2, 1);--animate-spin:spin 1s linear infinite;--blur-md:12px;--blur-xl:24px;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components,utilities;:root{--bg:#f7fafc;--surface:#fff;--text:#121a22;--brand:#0085b7;--on-brand:#fff;--link:#0085b7;--info:#0e5794;--warning:#643e00;--success:#004f3e;--danger:#8d1925;--text-muted:#5f666d;--text-subtle:#7f858b;--surface-sunken:#f4f7fa;--surface-overlay:#fff;--hairline:#121a2221;--hover-faint:#ebeff2;--brand-hover:#0073a3;--brand-subtle:#ddecf5;--brand-subtle-hover:#d0dfe8;--focus-ring:#0085b799;--progress-start:#64aed5;--progress-end:#0085b7;--info-surface:#deefff;--warning-surface:#ffedd6;--success-surface:#d3f8eb;--danger-surface:#ffe8e6;--danger-surface-hover:#f9d9d7;--control-bg:#fff;--scrim:#0009;--mega-menu-bg:#f1f7fa;--mega-menu-scrim:#0d1c2a61;--app-shadow-sm:0 1px 3px #0000000f, 0 1px 2px #0000000a;--app-shadow-md:0 4px 16px #00000014, 0 1px 3px #0000000a;--app-shadow-lg:0 12px 32px #0000001f;--app-opacity-disabled:.4;--font-sans:"Lato", ui-sans-serif, system-ui, sans-serif;--font-mono:ui-monospace, "SF Mono", Menlo, Monaco, Consolas, monospace;--spacing:.25rem;--content-width-centered:80rem;--radius-base:.5rem}@supports (color:lab(0% 0 0)){:root{--bg:lab(98.1553% -.760227 -1.25223);--surface:lab(100% 0 0);--text:lab(8.89727% -1.68239 -6.93074);--brand:lab(51.3503% -19.237 -40.2116);--on-brand:lab(100% 0 0);--link:lab(51.3503% -19.237 -40.2116);--info:lab(35.5745% -2.86636 -40.2468);--warning:lab(30.2236% 14.0359 42.8654);--success:lab(29.3859% -35.8952 5.0677);--danger:lab(31.1495% 47.9256 25.8661);--text-muted:lab(42.8254% -1.57365 -4.8763);--text-subtle:lab(55.3248% -1.4126 -4.053);--surface-sunken:lab(97.114% -.949115 -1.56456);--surface-overlay:lab(100.011% -.760317 -1.25225);--hairline:lab(8.89727% -1.68239 -6.93074/.13);--hover-faint:lab(94.2168% -1.13726 -1.87657);--brand-hover:lab(44.3401% -18.0233 -40.0589);--brand-subtle:lab(92.5794% -3.9458 -6.17858);--brand-subtle-hover:lab(87.9391% -3.94133 -6.17628);--focus-ring:lab(51.3503% -19.237 -40.2116/.6);--progress-start:lab(67.4852% -15.7175 -27.197);--progress-end:lab(51.3503% -19.237 -40.2116);--info-surface:lab(93.5628% -4.16487 -14.7881);--warning-surface:lab(94.8007% 4.75499 15.6111);--success-surface:lab(94.7525% -14.2308 2.09508);--danger-surface:lab(93.849% 11.2841 5.29771);--danger-surface-hover:lab(89.2089% 11.2856 5.30034);--control-bg:lab(100.011% -.760317 -1.25225);--scrim:lab(0% 0 0/.6);--mega-menu-bg:lab(96.7742% -1.51286 -2.50006);--mega-menu-scrim:lab(9.40633% -2.1807 -11.9349/.38);--app-shadow-sm:0 1px 3px lab(0% 0 0/.06), 0 1px 2px lab(0% 0 0/.04);--app-shadow-md:0 4px 16px lab(0% 0 0/.08), 0 1px 3px lab(0% 0 0/.04);--app-shadow-lg:0 12px 32px lab(0% 0 0/.12)}}[data-darkmode=true]{--bg:#05070e;--surface:#141822;--text:#f9fafb;--brand:#00958e;--on-brand:#fff;--link:#00958e;--info:#90c1ff;--warning:#f0ba59;--success:#51bd85;--danger:#f17070;--text-muted:#909297;--text-subtle:#5d6067;--surface-sunken:#0a0e17;--surface-overlay:#181d27;--hairline:#f9fafb1a;--hover-faint:#f9fafb0d;--brand-hover:#00837d;--brand-subtle:#061a20;--brand-subtle-hover:#0f242a;--focus-ring:#00958e99;--progress-start:#006261;--progress-end:#00958e;--info-surface:#21344c;--warning-surface:#45310b;--success-surface:#153524;--danger-surface:#541f20;--danger-surface-hover:#602a2a;--control-bg:#0a0e17;--scrim:#0009;--mega-menu-bg:#0a0e17;--mega-menu-scrim:#00000080;--app-shadow-sm:0 4px 12px #0000004d;--app-shadow-md:0 10px 28px #0000006b;--app-shadow-lg:0 20px 48px #0000008c;--app-opacity-disabled:.3}@supports (color:lab(0% 0 0)){[data-darkmode=true]{--bg:lab(1.93894% .0855997 -3.22397);--surface:lab(8.24713% -.0405461 -7.31381);--text:lab(98.252% -.0618994 -.756907);--brand:lab(55.0978% -44.5567 -7.62978);--on-brand:lab(100% 0 0);--link:lab(55.0978% -44.5567 -7.62978);--info:lab(76.3382% -4.43128 -38.7);--warning:lab(79.1996% 12.6808 55.9505);--success:lab(69.2339% -42.392 18.6731);--danger:lab(63.5705% 50.8105 25.3639);--text-muted:lab(60.5379% -.225931 -3.05105);--text-subtle:lab(40.6865% -.278354 -4.23647);--surface-sunken:lab(3.9802% .0812709 -5.64623);--surface-overlay:lab(10.5702% -.0939444 -7.33123);--hairline:lab(98.252% -.0618994 -.756907/.1);--hover-faint:lab(98.252% -.0618994 -.756907/.05);--brand-hover:lab(49.2976% -44.6964 -7.56882);--brand-subtle:lab(7.95734% -6.34954 -6.72844);--brand-subtle-hover:lab(12.602% -6.92477 -6.76408);--focus-ring:lab(55.0986% -44.5682 -7.59286/.6);--progress-start:lab(36.8833% -28.7182 -7.50749);--progress-end:lab(55.0978% -44.5567 -7.62978);--info-surface:lab(20.893% -1.69295 -17.5199);--warning-surface:lab(22.2973% 6.18184 26.7927);--success-surface:lab(19.4608% -16.2551 7.16286);--danger-surface:lab(20.3014% 25.4342 12.827);--danger-surface-hover:lab(24.9464% 25.3964 12.6412);--control-bg:lab(3.9802% .0812709 -5.64623);--scrim:lab(0% 0 0/.6);--mega-menu-bg:lab(3.9802% .0812709 -5.64623);--mega-menu-scrim:lab(0% 0 0/.5);--app-shadow-sm:0 4px 12px lab(0% 0 0/.3);--app-shadow-md:0 10px 28px lab(0% 0 0/.42);--app-shadow-lg:0 20px 48px lab(0% 0 0/.55)}}:root{--icon-activity:url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20width='24'%20height='24'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='currentColor'%20stroke-width='2'%20stroke-linecap='round'%20stroke-linejoin='round'%3e%3cpath%20d='M3%2012h4l3%208l4%20-16l3%208h4'%20/%3e%3c/svg%3e");--icon-adjustments:url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20width='24'%20height='24'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='currentColor'%20stroke-width='2'%20stroke-linecap='round'%20stroke-linejoin='round'%3e%3cpath%20d='M4%2010a2%202%200%201%200%204%200a2%202%200%200%200%20-4%200'%20/%3e%3cpath%20d='M6%204v4'%20/%3e%3cpath%20d='M6%2012v8'%20/%3e%3cpath%20d='M10%2016a2%202%200%201%200%204%200a2%202%200%200%200%20-4%200'%20/%3e%3cpath%20d='M12%204v10'%20/%3e%3cpath%20d='M12%2018v2'%20/%3e%3cpath%20d='M16%207a2%202%200%201%200%204%200a2%202%200%200%200%20-4%200'%20/%3e%3cpath%20d='M18%204v1'%20/%3e%3cpath%20d='M18%209v11'%20/%3e%3c/svg%3e");--icon-apps:url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20width='24'%20height='24'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='currentColor'%20stroke-width='2'%20stroke-linecap='round'%20stroke-linejoin='round'%3e%3cpath%20d='M4%205a1%201%200%200%201%201%20-1h4a1%201%200%200%201%201%201v4a1%201%200%200%201%20-1%201h-4a1%201%200%200%201%20-1%20-1l0%20-4'%20/%3e%3cpath%20d='M4%2015a1%201%200%200%201%201%20-1h4a1%201%200%200%201%201%201v4a1%201%200%200%201%20-1%201h-4a1%201%200%200%201%20-1%20-1l0%20-4'%20/%3e%3cpath%20d='M14%2015a1%201%200%200%201%201%20-1h4a1%201%200%200%201%201%201v4a1%201%200%200%201%20-1%201h-4a1%201%200%200%201%20-1%20-1l0%20-4'%20/%3e%3cpath%20d='M14%207l6%200'%20/%3e%3cpath%20d='M17%204l0%206'%20/%3e%3c/svg%3e");--icon-arrow-down:url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2020%2020'%20width='24'%20height='24'%20fill='%23000000'%20style='opacity:1;'%3e%3cpath%20fill-rule='evenodd'%20d='M5.22%208.22a.75.75%200%200%201%201.06%200L10%2011.94l3.72-3.72a.75.75%200%201%201%201.06%201.06l-4.25%204.25a.75.75%200%200%201-1.06%200L5.22%209.28a.75.75%200%200%201%200-1.06'%20clip-rule='evenodd'/%3e%3c/svg%3e");--icon-arrow-down-dark:url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2020%2020'%20width='24'%20height='24'%20fill='%23ffffff'%20style='opacity:1;'%3e%3cpath%20fill-rule='evenodd'%20d='M5.22%208.22a.75.75%200%200%201%201.06%200L10%2011.94l3.72-3.72a.75.75%200%201%201%201.06%201.06l-4.25%204.25a.75.75%200%200%201-1.06%200L5.22%209.28a.75.75%200%200%201%200-1.06'%20clip-rule='evenodd'/%3e%3c/svg%3e");--icon-arrow-right:url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2020%2020'%20width='24'%20height='24'%20fill='%23000000'%20style='opacity:1;'%3e%3cpath%20fill-rule='evenodd'%20d='M8.22%205.22a.75.75%200%200%201%201.06%200l4.25%204.25a.75.75%200%200%201%200%201.06l-4.25%204.25a.75.75%200%200%201-1.06-1.06L11.94%2010L8.22%206.28a.75.75%200%200%201%200-1.06'%20clip-rule='evenodd'/%3e%3c/svg%3e");--icon-box:url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20width='24'%20height='24'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='currentColor'%20stroke-width='2'%20stroke-linecap='round'%20stroke-linejoin='round'%3e%3cpath%20d='M12%203l8%204.5l0%209l-8%204.5l-8%20-4.5l0%20-9l8%20-4.5'%20/%3e%3cpath%20d='M12%2012l8%20-4.5'%20/%3e%3cpath%20d='M12%2012l0%209'%20/%3e%3cpath%20d='M12%2012l-8%20-4.5'%20/%3e%3c/svg%3e");--icon-category:url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20width='24'%20height='24'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='currentColor'%20stroke-width='2'%20stroke-linecap='round'%20stroke-linejoin='round'%3e%3cpath%20d='M4%204h6v6h-6l0%20-6'%20/%3e%3cpath%20d='M14%204h6v6h-6l0%20-6'%20/%3e%3cpath%20d='M4%2014h6v6h-6l0%20-6'%20/%3e%3cpath%20d='M14%2017a3%203%200%201%200%206%200a3%203%200%201%200%20-6%200'%20/%3e%3c/svg%3e");--icon-chart-bar:url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20width='24'%20height='24'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='currentColor'%20stroke-width='2'%20stroke-linecap='round'%20stroke-linejoin='round'%3e%3cpath%20d='M3%2013a1%201%200%200%201%201%20-1h4a1%201%200%200%201%201%201v6a1%201%200%200%201%20-1%201h-4a1%201%200%200%201%20-1%20-1l0%20-6'%20/%3e%3cpath%20d='M15%209a1%201%200%200%201%201%20-1h4a1%201%200%200%201%201%201v10a1%201%200%200%201%20-1%201h-4a1%201%200%200%201%20-1%20-1l0%20-10'%20/%3e%3cpath%20d='M9%205a1%201%200%200%201%201%20-1h4a1%201%200%200%201%201%201v14a1%201%200%200%201%20-1%201h-4a1%201%200%200%201%20-1%20-1l0%20-14'%20/%3e%3cpath%20d='M4%2020h14'%20/%3e%3c/svg%3e");--icon-check:url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%201024%201024'%3e%3cpath%20d='M918.8%2083.7c-43.5-30.3-104-19.5-134.6%2024.1l-425.8%20606-127-135.7c-36.4-38.9-98.1-41.1-137-4.8-39%2036.2-41.1%2097.7-4.7%20136.6l206.5%20220.7c4.7%205%209.8%209.4%2015.1%2013.1.7.5%201.4%201%202.2%201.5%2043.5%2030.3%20104%2019.5%20134.6-24.1l494-703.2c30.7-43.5%2020.1-103.9-23.3-134.2z'/%3e%3c/svg%3e");--icon-cpu:url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20width='24'%20height='24'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='currentColor'%20stroke-width='2'%20stroke-linecap='round'%20stroke-linejoin='round'%3e%3cpath%20d='M5%206a1%201%200%200%201%201%20-1h12a1%201%200%200%201%201%201v12a1%201%200%200%201%20-1%201h-12a1%201%200%200%201%20-1%20-1l0%20-12'%20/%3e%3cpath%20d='M9%209h6v6h-6l0%20-6'%20/%3e%3cpath%20d='M3%2010h2'%20/%3e%3cpath%20d='M3%2014h2'%20/%3e%3cpath%20d='M10%203v2'%20/%3e%3cpath%20d='M14%203v2'%20/%3e%3cpath%20d='M21%2010h-2'%20/%3e%3cpath%20d='M21%2014h-2'%20/%3e%3cpath%20d='M14%2021v-2'%20/%3e%3cpath%20d='M10%2021v-2'%20/%3e%3c/svg%3e");--icon-error:url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20width='24'%20height='24'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='currentColor'%20stroke-width='2'%20stroke-linecap='round'%20stroke-linejoin='round'%3e%3cpath%20d='M12%209v4'%20/%3e%3cpath%20d='M10.363%203.591l-8.106%2013.534a1.914%201.914%200%200%200%201.636%202.871h16.214a1.914%201.914%200%200%200%201.636%20-2.87l-8.106%20-13.536a1.914%201.914%200%200%200%20-3.274%200'%20/%3e%3cpath%20d='M12%2016h.01'%20/%3e%3c/svg%3e");--icon-gauge:url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20width='24'%20height='24'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='currentColor'%20stroke-width='2'%20stroke-linecap='round'%20stroke-linejoin='round'%3e%3cpath%20d='M3%2012a9%209%200%201%200%2018%200a9%209%200%201%200%20-18%200'%20/%3e%3cpath%20d='M11%2012a1%201%200%201%200%202%200a1%201%200%201%200%20-2%200'%20/%3e%3cpath%20d='M13.41%2010.59l2.59%20-2.59'%20/%3e%3cpath%20d='M7%2012a5%205%200%200%201%205%20-5'%20/%3e%3c/svg%3e");--icon-info:url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2016%2016'%20width='24'%20height='24'%20fill='%23000000'%20style='opacity:1;'%3e%3cpath%20fill-rule='evenodd'%20d='M15%208A7%207%200%201%201%201%208a7%207%200%200%201%2014%200M9%205a1%201%200%201%201-2%200a1%201%200%200%201%202%200M6.75%208a.75.75%200%200%200%200%201.5h.75v1.75a.75.75%200%200%200%201.5%200v-2.5A.75.75%200%200%200%208.25%208z'%20clip-rule='evenodd'/%3e%3c/svg%3e");--icon-package:url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20width='24'%20height='24'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='currentColor'%20stroke-width='2'%20stroke-linecap='round'%20stroke-linejoin='round'%3e%3cpath%20d='M12%203l8%204.5l0%209l-8%204.5l-8%20-4.5l0%20-9l8%20-4.5'%20/%3e%3cpath%20d='M12%2012l8%20-4.5'%20/%3e%3cpath%20d='M12%2012l0%209'%20/%3e%3cpath%20d='M12%2012l-8%20-4.5'%20/%3e%3cpath%20d='M16%205.25l-8%204.5'%20/%3e%3c/svg%3e");--icon-phone:url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20width='24'%20height='24'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='currentColor'%20stroke-width='2'%20stroke-linecap='round'%20stroke-linejoin='round'%3e%3cpath%20d='M5%204h4l2%205l-2.5%201.5a11%2011%200%200%200%205%205l1.5%20-2.5l5%202v4a2%202%200%200%201%20-2%202a16%2016%200%200%201%20-15%20-15a2%202%200%200%201%202%20-2'%20/%3e%3c/svg%3e");--icon-radio:url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2024%2024'%20fill='currentColor'%3e%3ccircle%20cx='12'%20cy='12'%20r='6'/%3e%3c/svg%3e");--icon-refresh:url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20width='24'%20height='24'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='currentColor'%20stroke-width='2'%20stroke-linecap='round'%20stroke-linejoin='round'%3e%3cpath%20d='M20%2011a8.1%208.1%200%200%200%20-15.5%20-2m-.5%20-4v4h4'%20/%3e%3cpath%20d='M4%2013a8.1%208.1%200%200%200%2015.5%202m.5%204v-4h-4'%20/%3e%3c/svg%3e");--icon-refresh-off:url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20width='24'%20height='24'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='currentColor'%20stroke-width='2'%20stroke-linecap='round'%20stroke-linejoin='round'%3e%3cpath%20d='M20%2011a8.1%208.1%200%200%200%20-11.271%20-6.305m-2.41%201.624a8.083%208.083%200%200%200%20-1.819%202.681m-.5%20-4v4h4'%20/%3e%3cpath%20d='M4%2013a8.1%208.1%200%200%200%2013.671%204.691m2.329%20-1.691v-1h-1'%20/%3e%3cpath%20d='M3%203l18%2018'%20/%3e%3c/svg%3e");--icon-router:url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20width='24'%20height='24'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='currentColor'%20stroke-width='2'%20stroke-linecap='round'%20stroke-linejoin='round'%3e%3cpath%20d='M3%2015a2%202%200%200%201%202%20-2h14a2%202%200%200%201%202%202v4a2%202%200%200%201%20-2%202h-14a2%202%200%200%201%20-2%20-2l0%20-4'%20/%3e%3cpath%20d='M17%2017l0%20.01'%20/%3e%3cpath%20d='M13%2017l0%20.01'%20/%3e%3cpath%20d='M15%2013l0%20-2'%20/%3e%3cpath%20d='M11.75%208.75a4%204%200%200%201%206.5%200'%20/%3e%3cpath%20d='M8.5%206.5a8%208%200%200%201%2013%200'%20/%3e%3c/svg%3e");--icon-search:url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20width='24'%20height='24'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='currentColor'%20stroke-width='2'%20stroke-linecap='round'%20stroke-linejoin='round'%3e%3cpath%20d='M10%2010m-7%200a7%207%200%201%200%2014%200a7%207%200%201%200%20-14%200'%20/%3e%3cpath%20d='M21%2021l-6%20-6'%20/%3e%3c/svg%3e");--icon-server:url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20width='24'%20height='24'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='currentColor'%20stroke-width='2'%20stroke-linecap='round'%20stroke-linejoin='round'%3e%3cpath%20d='M3%207a3%203%200%200%201%203%20-3h12a3%203%200%200%201%203%203v2a3%203%200%200%201%20-3%203h-12a3%203%200%200%201%20-3%20-3v-2'%20/%3e%3cpath%20d='M3%2015a3%203%200%200%201%203%20-3h12a3%203%200%200%201%203%203v2a3%203%200%200%201%20-3%203h-12a3%203%200%200%201%20-3%20-3l0%20-2'%20/%3e%3cpath%20d='M7%208l0%20.01'%20/%3e%3cpath%20d='M7%2016l0%20.01'%20/%3e%3cpath%20d='M11%208h6'%20/%3e%3cpath%20d='M11%2016h6'%20/%3e%3c/svg%3e");--icon-settings:url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20width='24'%20height='24'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='currentColor'%20stroke-width='2'%20stroke-linecap='round'%20stroke-linejoin='round'%3e%3cpath%20d='M10.325%204.317c.426%20-1.756%202.924%20-1.756%203.35%200a1.724%201.724%200%200%200%202.573%201.066c1.543%20-.94%203.31%20.826%202.37%202.37a1.724%201.724%200%200%200%201.065%202.572c1.756%20.426%201.756%202.924%200%203.35a1.724%201.724%200%200%200%20-1.066%202.573c.94%201.543%20-.826%203.31%20-2.37%202.37a1.724%201.724%200%200%200%20-2.572%201.065c-.426%201.756%20-2.924%201.756%20-3.35%200a1.724%201.724%200%200%200%20-2.573%20-1.066c-1.543%20.94%20-3.31%20-.826%20-2.37%20-2.37a1.724%201.724%200%200%200%20-1.065%20-2.572c-1.756%20-.426%20-1.756%20-2.924%200%20-3.35a1.724%201.724%200%200%200%201.066%20-2.573c-.94%20-1.543%20.826%20-3.31%202.37%20-2.37c1%20.608%202.296%20.07%202.572%20-1.065'%20/%3e%3cpath%20d='M9%2012a3%203%200%201%200%206%200a3%203%200%200%200%20-6%200'%20/%3e%3c/svg%3e");--icon-shield:url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20width='24'%20height='24'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='currentColor'%20stroke-width='2'%20stroke-linecap='round'%20stroke-linejoin='round'%3e%3cpath%20d='M12%203a12%2012%200%200%200%208.5%203a12%2012%200%200%201%20-8.5%2015a12%2012%200%200%201%20-8.5%20-15a12%2012%200%200%200%208.5%20-3'%20/%3e%3c/svg%3e");--icon-spinning:url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%201024%201024'%3e%3cpath%20opacity='.05'%20d='M512%2085.333c235.648%200%20426.667%20191.019%20426.667%20426.667S747.648%20938.667%20512%20938.667%2085.333%20747.648%2085.333%20512%20276.352%2085.333%20512%2085.333zm0%20128a298.667%20298.667%200%201%200%200%20597.334%20298.667%20298.667%200%200%200%200-597.334z'/%3e%3cpath%20d='M813.696%20813.696c166.613-166.613%20166.613-436.779%200-603.392s-436.779-166.613-603.392%200a64%2064%200%200%200%2090.496%2090.496%20298.667%20298.667%200%201%201%20422.4%20422.4%2064%2064%200%200%200%2090.496%2090.496z'/%3e%3c/svg%3e");--icon-tag:url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20width='24'%20height='24'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='currentColor'%20stroke-width='2'%20stroke-linecap='round'%20stroke-linejoin='round'%3e%3cpath%20d='M6.5%207.5a1%201%200%201%200%202%200a1%201%200%201%200%20-2%200'%20/%3e%3cpath%20d='M3%206v5.172a2%202%200%200%200%20.586%201.414l7.71%207.71a2.41%202.41%200%200%200%203.408%200l5.592%20-5.592a2.41%202.41%200%200%200%200%20-3.408l-7.71%20-7.71a2%202%200%200%200%20-1.414%20-.586h-5.172a3%203%200%200%200%20-3%203'%20/%3e%3c/svg%3e");--icon-world:url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20width='24'%20height='24'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='currentColor'%20stroke-width='2'%20stroke-linecap='round'%20stroke-linejoin='round'%3e%3cpath%20d='M3%2012a9%209%200%201%200%2018%200a9%209%200%200%200%20-18%200'%20/%3e%3cpath%20d='M3.6%209h16.8'%20/%3e%3cpath%20d='M3.6%2015h16.8'%20/%3e%3cpath%20d='M11.5%203a17%2017%200%200%200%200%2018'%20/%3e%3cpath%20d='M12.5%203a17%2017%200%200%201%200%2018'%20/%3e%3c/svg%3e");--icon-x:url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20width='24'%20height='24'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='currentColor'%20stroke-width='2'%20stroke-linecap='round'%20stroke-linejoin='round'%3e%3cpath%20d='M18%206l-12%2012'%20/%3e%3cpath%20d='M6%206l12%2012'%20/%3e%3c/svg%3e")}html{background-color:var(--bg);min-height:100dvh;font-family:var(--font-sans);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}html[data-darkmode=true]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}html body{background-color:var(--bg);min-height:100dvh}.page-bg{pointer-events:none;background-image:var(--page-bg-lqip,var(--page-bg));background-position:50%;background-repeat:no-repeat;background-size:cover;position:fixed;inset:0;transform:translateZ(0)}.page-bg:after{pointer-events:none;background-image:var(--page-bg);opacity:0;--tw-content:"";content:var(--tw-content);background-position:50%;background-repeat:no-repeat;background-size:cover;transition:opacity .5s;position:absolute;inset:0}.page-bg.full-loaded:after{opacity:1}:not(html){scrollbar-width:thin;scrollbar-color:var(--text-muted) transparent}html{scrollbar-width:thin;scrollbar-color:var(--text-muted) var(--surface);scrollbar-gutter:stable}html body{min-height:100dvh;font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));--tw-leading:var(--leading-relaxed);line-height:var(--leading-relaxed);--tw-font-weight:var(--font-weight-normal);font-weight:var(--font-weight-normal);color:var(--text);flex-direction:column;display:flex;position:relative}html body.modal-overlay-active{height:100vh;overflow:hidden}h1,h2,h3,h4,h5,h6{font-family:var(--font-sans);--tw-leading:var(--leading-tight);line-height:var(--leading-tight);--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold);--tw-tracking:var(--tracking-tight);letter-spacing:var(--tracking-tight);color:var(--text)}h1{margin-bottom:calc(var(--spacing) * 4);padding-left:calc(var(--spacing) * 6);font-size:var(--text-3xl);line-height:var(--tw-leading,var(--text-3xl--line-height))}@media not all and (min-width:48rem){h1{padding-left:calc(var(--spacing) * 4);font-size:var(--text-2xl);line-height:var(--tw-leading,var(--text-2xl--line-height))}}h2{margin-bottom:calc(var(--spacing) * 4);padding-left:calc(var(--spacing) * 5);font-size:var(--text-2xl);line-height:var(--tw-leading,var(--text-2xl--line-height))}@media not all and (min-width:48rem){h2{margin-bottom:calc(var(--spacing) * 2);padding-left:calc(var(--spacing) * 4);font-size:var(--text-xl);line-height:var(--tw-leading,var(--text-xl--line-height))}}h3{margin-bottom:calc(var(--spacing) * 4);font-size:var(--text-xl);line-height:var(--tw-leading,var(--text-xl--line-height));--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold);--tw-tracking:var(--tracking-tight);letter-spacing:var(--tracking-tight)}@media not all and (min-width:48rem){h3{margin-bottom:calc(var(--spacing) * 2);font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height))}}h4{margin-bottom:calc(var(--spacing) * 2);font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height))}@media not all and (min-width:48rem){h4{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}}h5{margin-bottom:calc(var(--spacing) * 2);font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}@media not all and (min-width:48rem){h5{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}}h6{margin-bottom:calc(var(--spacing) * 2);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}@media not all and (min-width:48rem){h6{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}}hr{margin-block:calc(var(--spacing) * 6);border-top-style:var(--tw-border-style);border-top-width:1px;border-color:var(--hairline)}@media not all and (min-width:48rem){hr{margin-block:calc(var(--spacing) * 4)}}strong{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold);--tw-tracking:var(--tracking-tight);letter-spacing:var(--tracking-tight)}abbr{cursor:help}p{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));--tw-leading:var(--leading-relaxed);line-height:var(--leading-relaxed);color:var(--text)}pre{border-radius:calc(var(--radius-base) * 1.5);border-style:var(--tw-border-style);border-width:1px;border-color:var(--hairline);background-color:var(--surface-sunken);padding-inline:calc(var(--spacing) * 3);padding-block:calc(var(--spacing) * 2);font-family:var(--font-mono);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));--tw-leading:var(--leading-relaxed);line-height:var(--leading-relaxed);overflow-wrap:break-word;white-space:pre-wrap;color:var(--text-muted);display:block}code{border-radius:calc(var(--radius-base) * .5);background-color:var(--surface-sunken);padding-inline:calc(var(--spacing) * 2);padding-block:var(--spacing);font-family:var(--font-mono);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));color:var(--text-muted)}a{color:var(--link);text-decoration-line:none}@media (hover:hover){a:hover{text-decoration-line:underline}}var{font-family:var(--font-mono);color:var(--link)}small{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height));--tw-font-weight:var(--font-weight-normal);font-weight:var(--font-weight-normal);color:var(--text)}em{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium);color:var(--text-muted);font-style:italic}header{z-index:40;margin-bottom:calc(var(--spacing) * 2);background-color:var(--bg);position:sticky;top:0}header .header-content{z-index:10;height:calc(var(--spacing) * 14);padding-inline:calc(var(--spacing) * 6);padding-block:calc(var(--spacing) * 3);justify-content:space-between;align-items:center;display:flex;position:relative}@media not all and (min-width:48rem){header .header-content{padding-inline:calc(var(--spacing) * 4);padding-block:calc(var(--spacing) * 2)}}[data-nav-type=mega-menu] :is(header) .desktop-menu-container{pointer-events:none;visibility:hidden;z-index:0;height:calc(var(--mega-menu-height,0px) + 3.5rem + 3rem);inset-inline:0;width:100%;position:absolute;top:0;overflow:clip}@media not all and (min-width:48rem){[data-nav-type=mega-menu] :is(header) .desktop-menu-container{display:none}}[data-nav-type=mega-menu] :is(header) .desktop-menu-container.active,[data-nav-type=mega-menu] :is(header) .desktop-menu-container.closing{visibility:visible}[data-nav-type=mega-menu] :is(header) .desktop-menu-container.active{pointer-events:auto}[data-nav-type=mega-menu] :is(header) .desktop-menu-container.closing{opacity:0;transition-property:opacity;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration));--tw-duration:.22s;--tw-ease:cubic-bezier(.4,0,.6,1);transition-duration:.22s;transition-timing-function:cubic-bezier(.4,0,.6,1)}@media (prefers-reduced-motion:reduce){[data-nav-type=mega-menu] :is(header) .desktop-menu-container.closing{transition-property:none}}[data-nav-type=mega-menu] :is(header) .desktop-menu-container .desktop-menu-sheet{height:calc(var(--mega-menu-height,0px) + 3.5rem);--tw-translate-y:-100%;translate:var(--tw-translate-x) var(--tw-translate-y);background-color:var(--mega-menu-bg);transition-property:translate;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration));--tw-duration:var(--mega-menu-duration,.3s);transition-duration:var(--mega-menu-duration,.3s);--tw-ease:cubic-bezier(.4,0,.6,1);inset-inline:0;transition-timing-function:cubic-bezier(.4,0,.6,1);position:absolute;top:0;overflow:hidden}@media (prefers-reduced-motion:reduce){[data-nav-type=mega-menu] :is(header) .desktop-menu-container .desktop-menu-sheet{transition-property:none}}[data-nav-type=mega-menu] :is(header) .desktop-menu-container .desktop-menu-sheet:after{content:var(--tw-content);pointer-events:none;content:var(--tw-content);content:var(--tw-content);content:var(--tw-content);border-bottom-style:var(--tw-border-style);content:var(--tw-content);border-bottom-width:1px;border-color:var(--hairline);content:var(--tw-content);--tw-shadow:var(--app-shadow-lg);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);content:var(--tw-content);transition-property:opacity;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration));content:var(--tw-content);--tw-duration:var(--mega-menu-duration,.3s);transition-duration:var(--mega-menu-duration,.3s);--tw-content:"";content:var(--tw-content);position:absolute;inset:0}@media (prefers-reduced-motion:reduce){[data-nav-type=mega-menu] :is(header) .desktop-menu-container .desktop-menu-sheet:after{content:var(--tw-content);transition-property:none}}[data-nav-type=mega-menu] :is(header) .desktop-menu-container .desktop-menu-canvas{--tw-translate-y:100%;translate:var(--tw-translate-x) var(--tw-translate-y);transition-property:translate;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration));--tw-duration:var(--mega-menu-duration,.3s);transition-duration:var(--mega-menu-duration,.3s);--tw-ease:cubic-bezier(.4,0,.6,1);transition-timing-function:cubic-bezier(.4,0,.6,1);position:absolute;inset:0}@media (prefers-reduced-motion:reduce){[data-nav-type=mega-menu] :is(header) .desktop-menu-container .desktop-menu-canvas{transition-property:none}}[data-nav-type=mega-menu] :is(header) .desktop-menu-container.active .desktop-menu-sheet,[data-nav-type=mega-menu] :is(header) .desktop-menu-container.active .desktop-menu-canvas{--tw-translate-y:0;translate:var(--tw-translate-x) var(--tw-translate-y)}[data-nav-type=mega-menu] :is(header) .desktop-menu-container.closing .desktop-menu-sheet:after{content:var(--tw-content);opacity:0}[data-nav-type=mega-menu] :is(header) .desktop-menu-container>.desktop-menu-board{display:none}[data-nav-type=mega-menu] :is(header) .desktop-menu-container .desktop-nav{pointer-events:none;inset-inline:0;top:calc(var(--spacing) * 14);--tw-translate-y:calc(var(--spacing) * 1.5);max-width:72rem;max-height:calc(100dvh - 3.5rem);translate:var(--tw-translate-x) var(--tw-translate-y);column-gap:calc(var(--spacing) * 8);overscroll-behavior:contain;padding-inline:calc(var(--spacing) * 10);padding-top:calc(var(--spacing) * 13);padding-bottom:calc(var(--spacing) * 8);opacity:0;transition-property:opacity,translate;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration));--tw-duration:.25s;--tw-ease:var(--ease-out);transition-duration:.25s;transition-timing-function:var(--ease-out);grid-template-columns:12rem minmax(0,1fr) 13rem;margin-inline:auto;display:grid;position:absolute;overflow-y:auto}@media not all and (min-width:64rem){[data-nav-type=mega-menu] :is(header) .desktop-menu-container .desktop-nav{max-width:44rem;padding-inline:calc(var(--spacing) * 8);grid-template-columns:repeat(1,minmax(0,1fr))}}[data-nav-type=mega-menu] :is(header) .desktop-menu-container .desktop-nav.active{pointer-events:auto;--tw-translate-y:0;translate:var(--tw-translate-x) var(--tw-translate-y);opacity:1}[data-nav-type=mega-menu] :is(header) .desktop-menu-container .desktop-nav .desktop-nav-anchor{align-self:flex-start}@media not all and (min-width:64rem){[data-nav-type=mega-menu] :is(header) .desktop-menu-container .desktop-nav .desktop-nav-anchor{display:none}}[data-nav-type=mega-menu] :is(header) .desktop-menu-container .desktop-nav .desktop-nav-anchor .desktop-nav-title{align-items:center;gap:calc(var(--spacing) * 2.5);font-size:var(--text-2xl);line-height:var(--tw-leading,var(--text-2xl--line-height));--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold);--tw-tracking:var(--tracking-tight);letter-spacing:var(--tracking-tight);color:var(--text);display:flex}[data-nav-type=mega-menu] :is(header) .desktop-menu-container .desktop-nav .desktop-nav-anchor .desktop-nav-title:before{width:calc(var(--spacing) * 6);height:calc(var(--spacing) * 6);--tw-content:"";content:var(--tw-content);-webkit-mask:var(--menu-icon,var(--icon-category)) center/contain no-repeat;-webkit-mask:var(--menu-icon,var(--icon-category)) center/contain no-repeat;-webkit-mask:var(--menu-icon,var(--icon-category)) center/contain no-repeat;mask:var(--menu-icon,var(--icon-category)) center/contain no-repeat;background-color:currentColor;flex-shrink:0}[data-nav-type=mega-menu] :is(header) .desktop-menu-container .desktop-nav .desktop-nav-list{grid-auto-flow:column;grid-template-rows:repeat(var(--menu-rows,6),auto);place-content:flex-start;column-gap:calc(var(--spacing) * 8);row-gap:var(--spacing);display:grid}[data-nav-type=mega-menu] :is(header) .desktop-menu-container .desktop-nav .desktop-nav-list>li{margin:0;list-style-type:none}[data-nav-type=mega-menu] :is(header) .desktop-menu-container .desktop-nav .desktop-nav-list>li>a{border-radius:calc(var(--radius-base) * 1.5);width:fit-content;padding-inline:calc(var(--spacing) * 3);padding-block:calc(var(--spacing) * 2);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));white-space:nowrap;color:var(--text);transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration));--tw-duration:.15s;text-decoration-line:none;transition-duration:.15s;display:block}@media (hover:hover){[data-nav-type=mega-menu] :is(header) .desktop-menu-container .desktop-nav .desktop-nav-list>li>a:hover{background-color:var(--hover-faint)}}[data-nav-type=mega-menu] :is(header) .desktop-menu-container .desktop-nav .desktop-nav-list>li>a.is-active-page{background-color:var(--brand-subtle);--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium);color:var(--brand)}[data-nav-type=mega-menu] :is(header) .desktop-menu-container .desktop-nav .desktop-menu-board{gap:calc(var(--spacing) * 2);border-left-style:var(--tw-border-style);border-left-width:1px;border-color:var(--hairline);padding-left:calc(var(--spacing) * 7);flex-direction:column;align-self:flex-start;display:flex}@media not all and (min-width:64rem){[data-nav-type=mega-menu] :is(header) .desktop-menu-container .desktop-nav .desktop-menu-board{display:none}}[data-nav-type=mega-menu] :is(header) .desktop-menu-container .desktop-nav .desktop-menu-board .board-label{margin-bottom:calc(var(--spacing) * .5);--tw-font-weight:var(--font-weight-medium);font-size:11px;font-weight:var(--font-weight-medium);--tw-tracking:var(--tracking-wide);letter-spacing:var(--tracking-wide);color:var(--text-subtle);text-transform:uppercase}[data-nav-type=mega-menu] :is(header) .desktop-menu-container .desktop-nav .desktop-menu-board .board-line{align-items:flex-start;gap:calc(var(--spacing) * 2.5);max-width:100%;font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height));color:var(--text-muted);display:flex}[data-nav-type=mega-menu] :is(header) .desktop-menu-container .desktop-nav .desktop-menu-board .board-line:before{width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4);--tw-content:"";content:var(--tw-content);background-color:currentColor;flex-shrink:0}[data-nav-type=mega-menu] :is(header) .desktop-menu-container .desktop-nav .desktop-menu-board .board-line .board-text{--tw-leading:calc(var(--spacing) * 4);min-width:0;line-height:calc(var(--spacing) * 4);overflow-wrap:anywhere}[data-nav-type=mega-menu] :is(header) .desktop-menu-container .desktop-nav .desktop-menu-board .board-line-host:before{-webkit-mask:var(--icon-router) center/contain no-repeat;-webkit-mask:var(--icon-router) center/contain no-repeat;-webkit-mask:var(--icon-router) center/contain no-repeat;mask:var(--icon-router) center/contain no-repeat}[data-nav-type=mega-menu] :is(header) .desktop-menu-container .desktop-nav .desktop-menu-board .board-line-model:before{-webkit-mask:var(--icon-cpu) center/contain no-repeat;-webkit-mask:var(--icon-cpu) center/contain no-repeat;-webkit-mask:var(--icon-cpu) center/contain no-repeat;mask:var(--icon-cpu) center/contain no-repeat}[data-nav-type=mega-menu] :is(header) .desktop-menu-container .desktop-nav .desktop-menu-board .board-line-firmware:before{-webkit-mask:var(--icon-package) center/contain no-repeat;-webkit-mask:var(--icon-package) center/contain no-repeat;-webkit-mask:var(--icon-package) center/contain no-repeat;mask:var(--icon-package) center/contain no-repeat}[data-nav-type=mega-menu] :is(header) .desktop-menu-container .desktop-nav .desktop-menu-board .board-line-kernel:before{-webkit-mask:var(--icon-tag) center/contain no-repeat;-webkit-mask:var(--icon-tag) center/contain no-repeat;-webkit-mask:var(--icon-tag) center/contain no-repeat;mask:var(--icon-tag) center/contain no-repeat}[data-nav-type=mega-menu] :is(header):has(.desktop-menu-container:is(.active,.closing)){z-index:70}header .brand{font-size:var(--text-xl);line-height:var(--tw-leading,var(--text-xl--line-height));--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold);--tw-tracking:var(--tracking-tight);letter-spacing:var(--tracking-tight);color:var(--text);transition-property:color,transform;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration));--tw-duration:.15s;flex-shrink:0;text-decoration-line:none;transition-duration:.15s;display:inline-block}@media (hover:hover){header .brand:hover{--tw-translate-y:calc(var(--spacing) * -.5);translate:var(--tw-translate-x) var(--tw-translate-y);color:var(--brand)}}@media not all and (min-width:48rem){header .brand{font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height));flex:1}}@media (min-width:48rem){[data-nav-type=sidebar] :is(header .brand){display:none}[data-nav-type=sidebar].sidebar-collapsed :is(header .brand){transition-property:opacity;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration));--tw-duration:.15s;transition-duration:.15s;display:inline-block}@starting-style{[data-nav-type=sidebar].sidebar-collapsed :is(header .brand){opacity:0}}}header .nav{z-index:60;--tw-translate-x:calc(calc(1 / 2 * 100%) * -1);translate:var(--tw-translate-x) var(--tw-translate-y);transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,);align-items:center;gap:var(--spacing);margin:0;padding:0;list-style-type:none;display:flex;position:absolute;left:50%}@media not all and (min-width:48rem){header .nav{display:none}}header .nav>li{position:relative}header .nav>li .menu{border-radius:calc(var(--radius-base) * 1.5);padding-inline:calc(var(--spacing) * 3.5);padding-block:calc(var(--spacing) * 1.5);--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium);color:var(--text);text-decoration-line:none;display:block}@media (hover:hover){header .nav>li .menu:hover{background-color:var(--hover-faint)}}header .nav>li .menu.menu-active{background-color:var(--brand-subtle);color:var(--brand)}header .nav>li .desktop-nav{pointer-events:none;z-index:40;opacity:0;transition-property:opacity;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration));--tw-duration:.15s;padding-inline:0;padding-top:0;transition-duration:.15s;left:0}[data-nav-type=dropdown] :is(header .nav>li .desktop-nav){margin-top:calc(var(--spacing) * 2);min-width:calc(var(--spacing) * 48);position:absolute;top:100%}header .nav>li .desktop-nav.active{pointer-events:auto;opacity:1}[data-nav-type=dropdown] :is(header .nav>li .desktop-nav .desktop-nav-list){row-gap:var(--spacing);border-radius:calc(var(--radius-base) * 3);border-style:var(--tw-border-style);border-width:1px;border-color:var(--hairline);background-color:var(--surface-overlay);padding-block:calc(var(--spacing) * 2);--tw-shadow:var(--app-shadow-md);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);--tw-backdrop-blur:blur(var(--blur-md));--tw-backdrop-saturate:saturate(150%);-webkit-backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);flex-direction:column;display:flex}header .nav>li .desktop-nav .desktop-nav-list>li{margin:0;list-style-type:none}header .nav>li .desktop-nav .desktop-nav-list>li>a{white-space:nowrap;color:var(--text);text-decoration-line:none;display:block}[data-nav-type=dropdown] :is(header .nav>li .desktop-nav .desktop-nav-list>li>a){margin-inline:calc(var(--spacing) * 2);border-radius:calc(var(--radius-base) * 1.5);padding-inline:calc(var(--spacing) * 4);padding-block:calc(var(--spacing) * 2);transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration));--tw-duration:.15s;transition-duration:.15s}@media (hover:hover){[data-nav-type=dropdown] :is(header .nav>li .desktop-nav .desktop-nav-list>li>a):hover{background-color:var(--hover-faint)}}header .nav>li .desktop-nav .desktop-nav-list>li>a.is-active-page{background-color:var(--brand-subtle);--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium);color:var(--brand)}header .navigation-controls{margin-right:calc(var(--spacing) * 3);flex-shrink:0;align-items:center;display:flex}@media (min-width:48rem){header .navigation-controls{display:none}[data-nav-type=sidebar] :is(header .navigation-controls){display:flex}[data-nav-type=sidebar]:not(.sidebar-collapsed) :is(header .navigation-controls) .navigation-toggle-line-bottom{stroke-dasharray:15 15}}header .navigation-controls .navigation-toggle{cursor:pointer;border-style:var(--tw-border-style);--tw-shadow:0 0 #0000;box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);transition-property:transform,translate,scale,rotate;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration));--tw-duration:.15s;background-color:#0000;border-width:0;border-radius:0;padding:0;transition-duration:.15s}@media (hover:hover){header .navigation-controls .navigation-toggle:hover{--tw-scale-x:105%;--tw-scale-y:105%;--tw-scale-z:105%;scale:var(--tw-scale-x) var(--tw-scale-y)}}header .navigation-controls .navigation-toggle:active{--tw-scale-x:95%;--tw-scale-y:95%;--tw-scale-z:95%;scale:var(--tw-scale-x) var(--tw-scale-y)}header .navigation-controls .navigation-toggle svg{width:calc(var(--spacing) * 5);height:calc(var(--spacing) * 5);color:var(--text)}header .navigation-controls .navigation-toggle .navigation-toggle-line{transform-box:fill-box;transform-origin:50%;transition-property:transform,opacity,stroke-dasharray;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration));--tw-duration:.15s;--tw-ease:var(--ease-in-out);transition-duration:.15s;transition-timing-function:var(--ease-in-out)}@media (min-width:48rem){[data-nav-type=sidebar] :is(header .navigation-controls .navigation-toggle .navigation-toggle-line){--tw-duration:.25s;transition-duration:.25s}}header .navigation-controls .navigation-toggle .navigation-toggle-line-bottom{stroke-dasharray:7.5 15}header .navigation-controls .navigation-toggle.is-expanded .navigation-toggle-line-top{transform:translateY(5px)rotate(45deg)}header .navigation-controls .navigation-toggle.is-expanded .navigation-toggle-line-middle{opacity:0;transform:scaleX(.35)}header .navigation-controls .navigation-toggle.is-expanded .navigation-toggle-line-bottom{stroke-dasharray:15 15;transform:translateY(-5px)rotate(-45deg)}header #indicators{margin-right:calc(var(--spacing) * 4);gap:calc(var(--spacing) * 5);flex-direction:row-reverse;flex-shrink:0;margin-left:auto;display:flex}@media (min-width:48rem){header #indicators{gap:calc(var(--spacing) * 8)}}header #indicators span[data-indicator]{width:calc(var(--spacing) * 5);height:calc(var(--spacing) * 5);cursor:pointer;transition-property:transform,translate,scale,rotate;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration));--tw-duration:.15s;font-size:0;transition-duration:.15s}header #indicators span[data-indicator]:before{content:var(--tw-content);content:var(--tw-content);width:calc(var(--spacing) * 5);height:calc(var(--spacing) * 5);content:var(--tw-content);content:var(--tw-content);color:var(--text);background-color:currentColor;position:absolute}@media (hover:hover){header #indicators span[data-indicator]:hover{--tw-scale-x:105%;--tw-scale-y:105%;--tw-scale-z:105%;scale:var(--tw-scale-x) var(--tw-scale-y)}}header #indicators span[data-indicator]:active{--tw-scale-x:95%;--tw-scale-y:95%;--tw-scale-z:95%;scale:var(--tw-scale-x) var(--tw-scale-y)}header #indicators span[data-indicator][data-indicator=media_error]:before{content:var(--tw-content);-webkit-mask:var(--icon-error) center/cover no-repeat;-webkit-mask:var(--icon-error) center/cover no-repeat;-webkit-mask:var(--icon-error) center/cover no-repeat;mask:var(--icon-error) center/cover no-repeat}header #indicators span[data-indicator][data-indicator=poll-status][data-style=active]:before{content:var(--tw-content);-webkit-mask:var(--icon-refresh) center/cover no-repeat;-webkit-mask:var(--icon-refresh) center/cover no-repeat;-webkit-mask:var(--icon-refresh) center/cover no-repeat;mask:var(--icon-refresh) center/cover no-repeat}header #indicators span[data-indicator][data-indicator=poll-status][data-style=inactive]:before{content:var(--tw-content);-webkit-mask:var(--icon-refresh-off) center/cover no-repeat;-webkit-mask:var(--icon-refresh-off) center/cover no-repeat;-webkit-mask:var(--icon-refresh-off) center/cover no-repeat;mask:var(--icon-refresh-off) center/cover no-repeat}header #indicators span[data-indicator][data-indicator=uci-changes]{position:relative}header #indicators span[data-indicator][data-indicator=uci-changes]:before{content:var(--tw-content);-webkit-mask:var(--icon-settings) center/cover no-repeat;-webkit-mask:var(--icon-settings) center/cover no-repeat;-webkit-mask:var(--icon-settings) center/cover no-repeat;mask:var(--icon-settings) center/cover no-repeat}header #indicators span[data-indicator][data-indicator=uci-changes][data-count]:not([data-count="0"]):after{content:var(--tw-content);content:var(--tw-content);top:calc(var(--spacing) * -.5);content:var(--tw-content);right:calc(var(--spacing) * -.5);content:var(--tw-content);z-index:10;content:var(--tw-content);content:var(--tw-content);min-height:calc(var(--spacing) * 3);content:var(--tw-content);min-width:calc(var(--spacing) * 3);content:var(--tw-content);content:var(--tw-content);content:var(--tw-content);content:var(--tw-content);background-color:var(--danger);content:var(--tw-content);padding-inline:calc(var(--spacing) * .5);content:var(--tw-content);content:var(--tw-content);--tw-leading:1;content:var(--tw-content);--tw-font-weight:var(--font-weight-bold);font-size:8px;line-height:1;font-weight:var(--font-weight-bold);content:var(--tw-content);color:var(--on-brand);content:var(--tw-content);--tw-shadow:var(--app-shadow-sm);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);--tw-content:attr(data-count);content:var(--tw-content);border-radius:3.40282e38px;justify-content:center;align-items:center;display:flex;position:absolute}body[data-nav-type=sidebar]{--sidebar-w-full:17rem;--sidebar-w:var(--sidebar-w-full)}@media (min-width:48rem){body[data-nav-type=sidebar]{grid-template-columns:var(--sidebar-w) minmax(0,1fr);transition:grid-template-columns .25s var(--ease-in-out);grid-template-rows:auto minmax(0,1fr);display:grid;overflow-x:clip}body[data-nav-type=sidebar].sidebar-collapsed{--sidebar-w:0rem}body[data-nav-type=sidebar]>header{border-bottom-style:var(--tw-border-style);border-bottom-width:1px;border-color:var(--hairline);grid-row-start:1;grid-column-start:2;margin-bottom:0}body[data-nav-type=sidebar]>.sidebar-panel{grid-row:1/span 2;grid-column-start:1}body[data-nav-type=sidebar]>#maincontent{min-width:0;padding-top:calc(var(--spacing) * 2);width:100%;max-width:none;padding-inline:calc(var(--spacing) * 8);grid-row-start:2;grid-column-start:2}}body[data-nav-type=sidebar] .header-crumb{align-items:center;gap:calc(var(--spacing) * 2);min-width:0;font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));color:var(--text-muted);margin-block:0;margin-left:0;margin-right:auto;padding:0;list-style-type:none;display:none;overflow:hidden}@media (min-width:48rem){body[data-nav-type=sidebar] .header-crumb{display:flex}}body[data-nav-type=sidebar] .header-crumb li{white-space:nowrap;margin:0;list-style-type:none}body[data-nav-type=sidebar] .header-crumb .crumb-sep{opacity:.5}body[data-nav-type=sidebar] .header-crumb .current{text-overflow:ellipsis;white-space:nowrap;--tw-font-weight:var(--font-weight-medium);min-width:0;font-weight:var(--font-weight-medium);color:var(--text);overflow:hidden}@media (min-width:48rem){body[data-nav-type=sidebar].sidebar-collapsed .header-crumb{margin-left:calc(var(--spacing) * 6)}}body[data-nav-type=sidebar] .sidebar-panel{border-radius:0;width:100%;height:100dvh;display:none;position:sticky;top:0;overflow:hidden}@media (min-width:48rem){body[data-nav-type=sidebar] .sidebar-panel{display:block}}body[data-nav-type=sidebar].sidebar-collapsed .sidebar-panel{visibility:hidden;transition:visibility 0s .25s}body[data-nav-type=sidebar] .sidebar-panel-inner{height:100%;width:var(--sidebar-w-full);border-right-style:var(--tw-border-style);border-right-width:1px;border-color:var(--hairline);background-color:var(--bg);transition:translate .25s var(--ease-in-out);flex-direction:column;display:flex;overflow:hidden}body[data-nav-type=sidebar].sidebar-collapsed .sidebar-panel-inner{--tw-translate-x:-100%;translate:var(--tw-translate-x) var(--tw-translate-y)}body[data-nav-type=sidebar] .sidebar-head{box-sizing:content-box;height:calc(var(--spacing) * 14);align-items:center;gap:calc(var(--spacing) * 2.5);border-bottom-style:var(--tw-border-style);border-bottom-width:1px;border-color:var(--hairline);padding-inline:calc(var(--spacing) * 4);flex-shrink:0;display:flex}body[data-nav-type=sidebar] .sidebar-head .sidebar-logo{width:calc(var(--spacing) * 5);height:calc(var(--spacing) * 5);border-radius:calc(var(--radius-base) * .75);flex-shrink:0}body[data-nav-type=sidebar] .sidebar-head .sidebar-brand{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height));--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold);--tw-tracking:var(--tracking-tight);letter-spacing:var(--tracking-tight);color:var(--text);transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration));--tw-duration:.15s;flex:1;text-decoration-line:none;transition-duration:.15s;overflow:hidden}@media (hover:hover){body[data-nav-type=sidebar] .sidebar-head .sidebar-brand:hover{color:var(--brand)}}body[data-nav-type=sidebar] .sidebar-list{flex:1;margin:0;list-style-type:none}:where(body[data-nav-type=sidebar] .sidebar-list>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * .5) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * .5) * calc(1 - var(--tw-space-y-reverse)))}body[data-nav-type=sidebar] .sidebar-list{padding:calc(var(--spacing) * 3);overflow-y:auto}body[data-nav-type=sidebar] .sidebar-list li{margin:0;list-style-type:none}body[data-nav-type=sidebar] .sidebar-list .nav-row{gap:calc(var(--spacing) * 2);border-radius:calc(var(--radius-base) * 1.5);padding-inline:calc(var(--spacing) * 3);padding-block:calc(var(--spacing) * 2);font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height));--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold);--tw-tracking:var(--tracking-wide);letter-spacing:var(--tracking-wide)}body[data-nav-type=sidebar] .sidebar-list .nav-icon{width:calc(var(--spacing) * 4.5);height:calc(var(--spacing) * 4.5)}body[data-nav-type=sidebar] .sidebar-submenu{min-height:0;margin:0;list-style-type:none}:where(body[data-nav-type=sidebar] .sidebar-submenu>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * .5) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * .5) * calc(1 - var(--tw-space-y-reverse)))}body[data-nav-type=sidebar] .sidebar-submenu{padding:0;padding-left:calc(var(--spacing) * 6.5);overflow:hidden}body[data-nav-type=sidebar] .sidebar-submenu .navigation-sublink{padding-inline:calc(var(--spacing) * 3);padding-block:calc(var(--spacing) * 1.5);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}body[data-nav-type=sidebar] .sidebar-footer{border-top-style:var(--tw-border-style);border-top-width:1px;border-color:var(--hairline);padding:calc(var(--spacing) * 3);flex-shrink:0}body[data-nav-type=sidebar] .sidebar-footer .nav-link{color:var(--text-muted)}@media (hover:hover){body[data-nav-type=sidebar] .sidebar-footer .nav-link:hover{color:var(--text)}}#luci-nav-progress{pointer-events:none;z-index:80;height:calc(var(--spacing) * .5);--tw-gradient-position:to right;width:0;position:fixed;top:0;left:0}@supports (background-image:linear-gradient(in lab, red, red)){#luci-nav-progress{--tw-gradient-position:to right in oklab}}#luci-nav-progress{background-image:linear-gradient(var(--tw-gradient-stops));--tw-gradient-from:var(--progress-start);--tw-gradient-to:var(--progress-end);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));transition:width .3s var(--ease-out)}#luci-nav-progress[data-state=done]{opacity:0;transition:width .3s ease-out,opacity .15s ease-in .15s}#luci-nav-status{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}#maincontent{width:95.8333%;min-height:calc(100vh - 4rem);max-width:var(--content-width-centered);padding-inline:calc(var(--spacing) * 4);--tw-outline-style:none;outline-style:none;margin-inline:auto}@media not all and (min-width:48rem){#maincontent{width:100%;padding-inline:calc(var(--spacing) * 3)}}#maincontent .view-staging{visibility:hidden;height:0;overflow:hidden}#maincontent #view{--tw-shadow:0 0 #0000;width:100%;box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);background-color:#0000;margin-inline:0;padding:0}#maincontent #view:empty{display:none}@media (min-width:48rem){#maincontent #view{padding:0}}#maincontent #view.view-leaving{cursor:progress;opacity:.6;transition:opacity .15s ease-out}#maincontent #view .cbi-title-section{margin-bottom:calc(var(--spacing) * 6);--tw-leading:var(--leading-relaxed);line-height:var(--leading-relaxed)}@media not all and (min-width:48rem){#maincontent #view .cbi-title-section{margin-inline:calc(var(--spacing) * 2);margin-bottom:calc(var(--spacing) * 3)}}#maincontent #view .controls{margin:calc(var(--spacing) * 2);align-items:center;gap:calc(var(--spacing) * 3);flex-wrap:wrap;display:flex}@media not all and (min-width:48rem){#maincontent #view .controls{margin:var(--spacing);gap:calc(var(--spacing) * 2)}}#maincontent #view .controls label input[type=radio],#maincontent #view .controls label input[type=checkbox]{margin-right:var(--spacing);vertical-align:middle}#maincontent #view div[style]>svg:where([data-darkmode=true],[data-darkmode=true] *){background-color:var(--surface)!important}#maincontent #view div[style]>svg line[style]:where([data-darkmode=true],[data-darkmode=true] *){stroke:var(--text)!important}#maincontent .cbi-map-descr,#maincontent .cbi-section-descr{margin-bottom:calc(var(--spacing) * 6);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));--tw-leading:var(--leading-relaxed);line-height:var(--leading-relaxed);color:var(--text-muted)}@media not all and (min-width:48rem){#maincontent .cbi-map-descr,#maincontent .cbi-section-descr{margin-inline:calc(var(--spacing) * 2);margin-bottom:calc(var(--spacing) * 3);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}}#maincontent .cbi-page-actions{margin-top:calc(var(--spacing) * 6);justify-content:flex-end;align-items:center;gap:calc(var(--spacing) * 3);border-top-style:var(--tw-border-style);border-top-width:1px;border-color:var(--hairline);padding-top:calc(var(--spacing) * 4);flex-wrap:wrap;display:flex}@media not all and (min-width:48rem){#maincontent .cbi-page-actions{margin-inline:calc(var(--spacing) * 2);margin-top:calc(var(--spacing) * 4);gap:calc(var(--spacing) * 2);padding-top:calc(var(--spacing) * 3)}}#maincontent .zone-forwards{align-items:stretch;gap:calc(var(--spacing) * 2);--tw-leading:var(--leading-relaxed);line-height:var(--leading-relaxed);flex-wrap:nowrap;display:flex}#maincontent .zone-forwards>span{flex-shrink:0;flex-basis:calc(var(--spacing) * 8);color:var(--text-muted);justify-content:center;align-self:center;align-items:center;display:flex}#maincontent .zone-forwards .zone-src,#maincontent .zone-forwards .zone-dest{gap:calc(var(--spacing) * 1.5);flex-direction:column;flex:1;display:flex}#maincontent:has(>#view.view-leaving,>#view>.spinning)>footer{visibility:hidden;animation:none}:root:not(:active-view-transition-type(theme)){view-transition-name:none}footer{margin-top:calc(var(--spacing) * 2);min-height:calc(var(--spacing) * 16);font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height));color:var(--text-muted);flex-wrap:wrap;justify-content:space-between;align-items:center;display:flex}footer a{color:var(--brand)}footer span{text-align:center;display:inline-block}footer .breadcrumb{align-items:center;gap:var(--spacing);background-color:var(--surface-overlay);padding-inline:calc(var(--spacing) * 3);padding-block:calc(var(--spacing) * 1.5);font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height));--tw-shadow:var(--app-shadow-sm);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);--tw-backdrop-blur:blur(var(--blur-md));--tw-backdrop-saturate:saturate(150%);-webkit-backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration));--tw-duration:.15s;border-radius:3.40282e38px;transition-duration:.15s;display:flex}@media (hover:hover){footer .breadcrumb:hover{background-color:var(--surface)}}footer .breadcrumb li{list-style-type:none}footer .breadcrumb li.active a{color:var(--text)}.control-group{margin-top:var(--spacing)}.control-group,.cbi-page-actions>div,.cbi-section-actions>div{align-items:center;gap:calc(var(--spacing) * 2);flex-flow:row;display:flex}@media not all and (min-width:48rem){.control-group,.cbi-page-actions>div,.cbi-section-actions>div{gap:var(--spacing);flex-wrap:wrap}}.nav-row{cursor:pointer;appearance:none;border-style:var(--tw-border-style);text-align:left;--tw-shadow:0 0 #0000;width:100%;box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration));--tw-duration:.15s;-webkit-user-select:none;user-select:none;background-color:#0000;border-width:0;align-items:center;text-decoration-line:none;transition-duration:.15s;display:flex}@media (hover:hover){.nav-row:hover{text-decoration-line:none}}.nav-row:focus-visible{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);--tw-ring-color:var(--focus-ring);--tw-outline-style:none;outline-style:none}.nav-link{border-radius:calc(var(--radius-base) * 1.5);padding-inline:calc(var(--spacing) * 3);padding-block:calc(var(--spacing) * 1.5);color:var(--text);transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration));--tw-duration:.15s;text-decoration-line:none;transition-duration:.15s;display:block}@media (hover:hover){.nav-link:hover{background-color:var(--hover-faint);text-decoration-line:none}}.navigation-direct{color:var(--text)}@media (hover:hover){.navigation-direct:hover{color:var(--text)}}.navigation-direct.is-active-page{background-color:var(--brand-subtle);color:var(--brand)}@media (hover:hover){.navigation-direct.is-active-page:hover{color:var(--brand)}}:where(.sidebar-list) .nav-row{color:var(--text-muted)}@media (hover:hover){:where(.sidebar-list) .nav-row:hover{color:var(--text)}:where(.sidebar-list) .navigation-direct:hover{background-color:var(--hover-faint)}}.navigation-group-toggle:after{content:var(--tw-content);width:calc(var(--spacing) * 4.5);height:calc(var(--spacing) * 4.5);content:var(--tw-content);content:var(--tw-content);content:var(--tw-content);opacity:.55;content:var(--tw-content);transition-property:transform,opacity;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration));content:var(--tw-content);--tw-duration:.25s;--tw-content:"";content:var(--tw-content);content:var(--tw-content);-webkit-mask:var(--icon-arrow-right) center/cover no-repeat;-webkit-mask:var(--icon-arrow-right) center/cover no-repeat;-webkit-mask:var(--icon-arrow-right) center/cover no-repeat;mask:var(--icon-arrow-right) center/cover no-repeat;background-color:currentColor;flex-shrink:0;transition-duration:.25s}@media (hover:hover){.navigation-group-toggle:hover:after{content:var(--tw-content);opacity:1}}.navigation-group.is-expanded>.navigation-group-toggle{color:var(--brand)}.navigation-group.is-expanded>.navigation-group-toggle:after{content:var(--tw-content);rotate:90deg}.navigation-group.is-active-group>.navigation-group-toggle{color:var(--brand)}.nav-icon{opacity:.55;transition-property:opacity;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration));--tw-duration:.15s;-webkit-mask:var(--menu-icon,var(--icon-category)) center/contain no-repeat;-webkit-mask:var(--menu-icon,var(--icon-category)) center/contain no-repeat;-webkit-mask:var(--menu-icon,var(--icon-category)) center/contain no-repeat;mask:var(--menu-icon,var(--icon-category)) center/contain no-repeat;background-color:currentColor;flex-shrink:0;transition-duration:.15s}.nav-label,.nav-category-label{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.navigation-direct:hover .nav-icon,.navigation-group-toggle:hover .nav-icon,.navigation-direct.is-active-page .nav-icon,.navigation-group.is-expanded>.navigation-group-toggle .nav-icon,.navigation-group.is-active-group>.navigation-group-toggle .nav-icon{opacity:1}.navigation-group-region{opacity:0;transition-property:grid-template-rows,opacity;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration));--tw-duration:.25s;--tw-ease:var(--ease-out);transition-duration:.25s;transition-timing-function:var(--ease-out);grid-template-rows:0fr;display:grid}.navigation-group.is-expanded>.navigation-group-region{opacity:1;grid-template-rows:1fr}.navigation-submenu-list{min-height:0;list-style-type:none;overflow:hidden}.navigation-sublink{border-radius:calc(var(--radius-base) * 1.5);--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium);color:var(--text-muted);transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration));--tw-duration:.15s;text-decoration-line:none;transition-duration:.15s;display:flex;position:relative}@media (hover:hover){.navigation-sublink:hover{background-color:var(--hover-faint);color:var(--text)}}.navigation-sublink.is-active-page{background-color:var(--brand-subtle);--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold);color:var(--brand)}@media (hover:hover){.navigation-sublink.is-active-page:hover{color:var(--brand)}}.nav-category-preview{text-overflow:ellipsis;white-space:nowrap;padding-bottom:var(--spacing);color:var(--text-subtle);overflow:hidden}.nav-category-preview .nav-preview-current{color:var(--brand)}:is(.desktop-nav-title,.navigation-direct,.navigation-group-toggle)[data-section=status]{--menu-icon:var(--icon-activity)}:is(.desktop-nav-title,.navigation-direct,.navigation-group-toggle)[data-section=statistics]{--menu-icon:var(--icon-chart-bar)}:is(.desktop-nav-title,.navigation-direct,.navigation-group-toggle)[data-section=nlbw]{--menu-icon:var(--icon-gauge)}:is(.desktop-nav-title,.navigation-direct,.navigation-group-toggle)[data-section=system]{--menu-icon:var(--icon-settings)}:is(.desktop-nav-title,.navigation-direct,.navigation-group-toggle)[data-section=services]{--menu-icon:var(--icon-apps)}:is(.desktop-nav-title,.navigation-direct,.navigation-group-toggle)[data-section=nas]{--menu-icon:var(--icon-server)}:is(.desktop-nav-title,.navigation-direct,.navigation-group-toggle)[data-section=control]{--menu-icon:var(--icon-adjustments)}:is(.desktop-nav-title,.navigation-direct,.navigation-group-toggle)[data-section=network]{--menu-icon:var(--icon-world)}:is(.desktop-nav-title,.navigation-direct,.navigation-group-toggle)[data-section=vpn]{--menu-icon:var(--icon-shield)}:is(.desktop-nav-title,.navigation-direct,.navigation-group-toggle)[data-section=docker]{--menu-icon:var(--icon-box)}:is(.desktop-nav-title,.navigation-direct,.navigation-group-toggle)[data-section=asterisk]{--menu-icon:var(--icon-phone)}.theme-switcher{background-color:var(--surface-sunken);--tw-shadow:var(--app-shadow-sm);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);transition-property:transform,translate,scale,rotate;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration));--tw-duration:.15s;border-radius:3.40282e38px;align-items:center;gap:0;transition-duration:.15s;display:inline-flex;position:relative}@media not all and (min-width:48rem){.theme-switcher{padding-block:calc(var(--spacing) * .5)}}.theme-switcher{border-style:var(--tw-border-style);border-width:1px;border-color:var(--hairline)}.theme-switcher:before{content:var(--tw-content);content:var(--tw-content);top:var(--spacing);content:var(--tw-content);left:var(--spacing);content:var(--tw-content);z-index:0;content:var(--tw-content);content:var(--tw-content);content:var(--tw-content);content:var(--tw-content);background-color:var(--surface-overlay);content:var(--tw-content);--tw-shadow:var(--app-shadow-md);width:calc(33.333% - .5rem);height:calc(100% - .5rem);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);content:var(--tw-content);transition-property:transform,translate,scale,rotate;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration));content:var(--tw-content);--tw-duration:.25s;border-radius:3.40282e38px;transition-duration:.25s;position:absolute}@media not all and (min-width:48rem){footer .theme-switcher{display:none}}.theme-switcher .theme-option{z-index:10;cursor:pointer;justify-content:center;align-items:center;gap:calc(var(--spacing) * 1.5);padding-inline:calc(var(--spacing) * 3);padding-block:calc(var(--spacing) * 1.5);transition-property:transform,translate,scale,rotate;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration));--tw-duration:.15s;border-radius:3.40282e38px;transition-duration:.15s;display:flex;position:relative}@media (hover:hover){.theme-switcher .theme-option:hover{--tw-scale-x:105%;--tw-scale-y:105%;--tw-scale-z:105%;scale:var(--tw-scale-x) var(--tw-scale-y)}}.theme-switcher .theme-option:active{--tw-scale-x:95%;--tw-scale-y:95%;--tw-scale-z:95%;scale:var(--tw-scale-x) var(--tw-scale-y)}.theme-switcher .theme-option input[type=radio]{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.theme-switcher .theme-option .theme-icon{color:var(--text-muted);transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration));--tw-duration:.15s;justify-content:center;align-items:center;transition-duration:.15s;display:flex}.theme-switcher .theme-option .theme-icon svg{width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4);transition-property:transform,translate,scale,rotate;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration));--tw-duration:.15s;transition-duration:.15s}.theme-switcher .theme-option .theme-label{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height));--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium);color:var(--text-muted);transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration));--tw-duration:.15s;transition-duration:.15s;display:none}.theme-switcher .theme-option.active .theme-icon{color:var(--text)}.theme-switcher .theme-option.active .theme-icon svg{--tw-scale-x:110%;--tw-scale-y:110%;--tw-scale-z:110%;scale:var(--tw-scale-x) var(--tw-scale-y)}.theme-switcher .theme-option.active .theme-label,.theme-switcher .theme-option:hover:not(.active) .theme-icon,.theme-switcher .theme-option:hover:not(.active) .theme-label{color:var(--text)}.theme-switcher:has(.theme-option[data-theme=device].active):before{content:var(--tw-content);--tw-translate-x:0;translate:var(--tw-translate-x) var(--tw-translate-y)}.theme-switcher:has(.theme-option[data-theme=light].active):before{content:var(--tw-content);--tw-translate-x:calc(100% + .5rem);translate:var(--tw-translate-x) var(--tw-translate-y)}.theme-switcher:has(.theme-option[data-theme=dark].active):before{content:var(--tw-content);--tw-translate-x:calc(200% + 1rem);translate:var(--tw-translate-x) var(--tw-translate-y)}.floating-toolbar{pointer-events:none;right:calc(var(--spacing) * 4);bottom:calc(var(--spacing) * 4);z-index:40;flex-direction:column;align-items:center;display:flex;position:fixed}@media not all and (min-width:48rem){.floating-toolbar{right:calc(var(--spacing) * 3);bottom:calc(var(--spacing) * 3)}}.floating-toolbar .toolbar-list{margin-bottom:calc(var(--spacing) * 2.5);align-items:center;gap:calc(var(--spacing) * 2.5);flex-direction:column;display:flex}@media not all and (min-width:48rem){.floating-toolbar .toolbar-list{margin-bottom:calc(var(--spacing) * 2);gap:calc(var(--spacing) * 2)}}.floating-toolbar .toolbar-btn{pointer-events:auto;width:calc(var(--spacing) * 11);height:calc(var(--spacing) * 11);cursor:pointer;background-color:var(--surface-overlay);color:var(--text-muted);--tw-shadow:var(--app-shadow-md);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);border-radius:3.40282e38px;place-items:center;display:grid}@media not all and (min-width:48rem){.floating-toolbar .toolbar-btn{width:calc(var(--spacing) * 10);height:calc(var(--spacing) * 10)}}.floating-toolbar .toolbar-btn{transition:translate .32s cubic-bezier(.34,1.25,.5,1),scale .32s cubic-bezier(.34,1.25,.5,1),opacity .22s,visibility .32s,background-color .15s,color .15s;transition-delay:var(--fab-d,0s),var(--fab-d,0s),var(--fab-d,0s),var(--fab-d,0s),0s,0s}.floating-toolbar .toolbar-btn:hover{background-color:var(--hover-faint);color:var(--text)}.floating-toolbar .toolbar-btn:active{scale:.92}.floating-toolbar .toolbar-btn:not(.toggle){--fab-d:calc((var(--fab-n,1) - 1 - var(--fab-i,0)) * 60ms);text-decoration-line:none}.floating-toolbar .toolbar-btn:not(.toggle):active{--fab-d:0s}.floating-toolbar .toolbar-btn:not(.toggle) .icon{width:calc(var(--spacing) * 5);height:calc(var(--spacing) * 5);-webkit-mask:var(--fab-icon) center/contain no-repeat;-webkit-mask:var(--fab-icon) center/contain no-repeat;-webkit-mask:var(--fab-icon) center/contain no-repeat;mask:var(--fab-icon) center/contain no-repeat;background-color:currentColor;flex-shrink:0}@media not all and (min-width:48rem){.floating-toolbar .toolbar-btn:not(.toggle) .icon{width:calc(var(--spacing) * 4.5);height:calc(var(--spacing) * 4.5)}}.floating-toolbar .toolbar-btn.toggle{border-style:var(--tw-border-style);color:var(--text-subtle);border-width:0}@media (hover:hover){.floating-toolbar .toolbar-btn.toggle:hover{color:var(--text)}}.floating-toolbar .toolbar-btn.toggle .icon{width:calc(var(--spacing) * 5);height:calc(var(--spacing) * 5);transition-property:rotate;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration));--tw-duration:.25s;--tw-ease:var(--ease-out);transition-duration:.25s;transition-timing-function:var(--ease-out);place-items:center;display:grid}@media not all and (min-width:48rem){.floating-toolbar .toolbar-btn.toggle .icon{width:calc(var(--spacing) * 4.5);height:calc(var(--spacing) * 4.5)}}.floating-toolbar .toolbar-btn.toggle .icon svg{width:100%;height:100%}.floating-toolbar.collapsed .toolbar-btn:not(.toggle){pointer-events:none;visibility:hidden;opacity:0;--tw-translate-y:calc((var(--fab-n,1) - var(--fab-i,0)) * 3.375rem);scale:.35;translate:var(--tw-translate-x) var(--tw-translate-y);--fab-d:calc(var(--fab-i,0) * 60ms)}@media not all and (min-width:48rem){.floating-toolbar.collapsed .toolbar-btn:not(.toggle){--tw-translate-y:calc((var(--fab-n,1) - var(--fab-i,0)) * 3rem);translate:var(--tw-translate-x) var(--tw-translate-y)}}.floating-toolbar.collapsed .toolbar-btn.toggle .icon{rotate:45deg}button,input[type=button],input[type=submit],input[type=reset],.btn,.cbi-button{cursor:pointer;justify-content:center;align-items:center;gap:calc(var(--spacing) * 1.5);border-radius:calc(var(--radius-base) * 1.5);border-style:var(--tw-border-style);padding-inline:calc(var(--spacing) * 3);padding-block:calc(var(--spacing) * 1.5);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;transition-property:background-color,border-color,transform;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration));--tw-duration:.15s;border-width:1px;transition-duration:.15s;display:inline-flex}@media not all and (min-width:48rem){button,input[type=button],input[type=submit],input[type=reset],.btn,.cbi-button{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height));--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}}:is(button,input[type=button],input[type=submit],input[type=reset],.btn,.cbi-button)[disabled]{cursor:not-allowed;opacity:var(--app-opacity-disabled)}.td :is(button,input[type=button],input[type=submit],input[type=reset],.btn,.cbi-button){white-space:nowrap;flex:none;width:auto;display:inline-flex}@media not all and (min-width:48rem){.td :is(button,input[type=button],input[type=submit],input[type=reset],.btn,.cbi-button){min-height:calc(var(--spacing) * 9);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}}.btn,.cbi-button,.cbi-button-default,.cbi-button-download,.cbi-button-find,.cbi-button-link,.cbi-button-up,.cbi-button-down{border-color:var(--hairline);background-color:var(--surface-sunken);color:var(--text)}@media (hover:hover){:is(.btn,.cbi-button,.cbi-button-default,.cbi-button-download,.cbi-button-find,.cbi-button-link,.cbi-button-up,.cbi-button-down):hover{background-color:var(--hover-faint)}}.drag-handle{border-color:var(--hairline);background-color:var(--surface-sunken);color:var(--text-muted)}@media (hover:hover){.drag-handle:hover{background-color:var(--hover-faint)}}.btn.primary,.cbi-button-action,.cbi-button-apply,.cbi-button-reload,.cbi-button-add,.cbi-button-edit{border-color:var(--brand);background-color:var(--brand);color:var(--on-brand)}@media (hover:hover){:is(.btn.primary,.cbi-button-action,.cbi-button-apply,.cbi-button-reload,.cbi-button-add,.cbi-button-edit):hover{background-color:var(--brand-hover)}}.cbi-button-positive,.cbi-button-fieldadd,.cbi-button-save{background-color:var(--brand-subtle);color:var(--brand);border-color:#0000}@media (hover:hover){:is(.cbi-button-positive,.cbi-button-fieldadd,.cbi-button-save):hover{background-color:var(--brand-subtle-hover)}}.cbi-button-negative,.cbi-section-remove .cbi-button,.cbi-button-reset,.cbi-button-remove{background-color:var(--danger-surface);color:var(--danger);border-color:#0000}@media (hover:hover){:is(.cbi-button-negative,.cbi-section-remove .cbi-button,.cbi-button-reset,.cbi-button-remove):hover{background-color:var(--danger-surface-hover)}}input:disabled{cursor:not-allowed;opacity:var(--app-opacity-disabled)}input[type=text],input[type=password],.cbi-input-text,.cbi-input{width:calc(var(--spacing) * 52.5);border-radius:calc(var(--radius-base) * 2);border-style:var(--tw-border-style);border-width:1px;border-color:var(--hairline);background-color:var(--control-bg);max-width:100%;padding-inline:calc(var(--spacing) * 3);padding-block:calc(var(--spacing) * 1.5);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));--tw-font-weight:var(--font-weight-normal);font-weight:var(--font-weight-normal);color:var(--text);position:relative}:is(input[type=text],input[type=password],.cbi-input-text,.cbi-input)::placeholder{color:var(--text-muted)}input[type=text],input[type=password],.cbi-input-text,.cbi-input{--tw-shadow:var(--app-shadow-sm);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);transition-property:border-color,box-shadow;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration));--tw-duration:.15s;transition-duration:.15s}:is(input[type=text],input[type=password],.cbi-input-text,.cbi-input):focus{border-color:var(--brand);--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);--tw-ring-color:var(--focus-ring);--tw-outline-style:none;outline-style:none}.table.cbi-section-table :is(input[type=text],input[type=password],.cbi-input-text,.cbi-input){width:100%}.cbi-input-text{min-width:calc(var(--spacing) * 20)}@media not all and (min-width:48rem){.cbi-input-text{min-width:calc(var(--spacing) * 14)}}#localtime{min-width:calc(var(--spacing) * 70)}input[type=radio],input[type=checkbox]{margin-right:calc(var(--spacing) * 3);height:calc(var(--spacing) * 4);width:calc(var(--spacing) * 4);cursor:pointer;appearance:none;vertical-align:middle;display:inline-block;position:relative}:is(input[type=radio],input[type=checkbox]):before{content:var(--tw-content);content:var(--tw-content);content:var(--tw-content);content:var(--tw-content);height:calc(var(--spacing) * 4);content:var(--tw-content);width:calc(var(--spacing) * 4);content:var(--tw-content);border-style:var(--tw-border-style);content:var(--tw-content);border-width:1px;border-color:var(--hairline);content:var(--tw-content);background-color:var(--control-bg);content:var(--tw-content);transition-property:background-color,border-color,box-shadow;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration));content:var(--tw-content);--tw-duration:.15s;transition-duration:.15s;position:absolute;top:0;left:0}:is(input[type=radio],input[type=checkbox]):after{content:var(--tw-content);content:var(--tw-content);top:calc(var(--spacing) * .5);content:var(--tw-content);left:calc(var(--spacing) * .5);content:var(--tw-content);height:calc(var(--spacing) * 3);content:var(--tw-content);width:calc(var(--spacing) * 3);content:var(--tw-content);background-color:var(--on-brand);content:var(--tw-content);opacity:0;content:var(--tw-content);transition-property:opacity;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration));content:var(--tw-content);--tw-duration:.15s;transition-duration:.15s;position:absolute}:is(input[type=radio],input[type=checkbox]):checked:before{content:var(--tw-content);border-color:var(--brand);content:var(--tw-content);background-color:var(--brand)}:is(input[type=radio],input[type=checkbox]):checked:after{content:var(--tw-content);opacity:1}@media (hover:hover){:is(input[type=radio],input[type=checkbox]):hover:before{content:var(--tw-content);border-color:var(--hairline)}}:is(input[type=radio],input[type=checkbox]):focus:before{content:var(--tw-content);border-color:var(--brand);content:var(--tw-content);--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);content:var(--tw-content);--tw-ring-color:var(--focus-ring);content:var(--tw-content);--tw-outline-style:none;outline-style:none}:is(input[type=radio],input[type=checkbox]):disabled{cursor:not-allowed}input[type=radio]:before{content:var(--tw-content);border-radius:3.40282e38px}input[type=radio]:after{content:var(--tw-content);-webkit-mask:var(--icon-radio) center/cover no-repeat;-webkit-mask:var(--icon-radio) center/cover no-repeat;-webkit-mask:var(--icon-radio) center/cover no-repeat;mask:var(--icon-radio) center/cover no-repeat}input[type=checkbox]:before{content:var(--tw-content);border-radius:calc(var(--radius-base) * .5)}input[type=checkbox]:after{content:var(--tw-content);-webkit-mask:var(--icon-check) center/cover no-repeat;-webkit-mask:var(--icon-check) center/cover no-repeat;-webkit-mask:var(--icon-check) center/cover no-repeat;mask:var(--icon-check) center/cover no-repeat}.cbi-checkbox{vertical-align:middle;align-items:center;display:inline-flex;position:relative}textarea{min-height:calc(var(--spacing) * 24);resize:vertical;border-radius:calc(var(--radius-base) * 2);border-style:var(--tw-border-style);border-width:1px;border-color:var(--hairline);background-color:var(--control-bg);width:100%;padding-inline:calc(var(--spacing) * 3);padding-block:calc(var(--spacing) * 2);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));--tw-font-weight:var(--font-weight-normal);font-weight:var(--font-weight-normal);color:var(--text)}textarea::placeholder{color:var(--text-muted)}textarea{--tw-shadow:var(--app-shadow-sm);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);transition-property:border-color,box-shadow;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration));--tw-duration:.15s;transition-duration:.15s}textarea:focus{border-color:var(--brand);--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);--tw-ring-color:var(--focus-ring);--tw-outline-style:none;outline-style:none}textarea[disabled]{cursor:not-allowed;opacity:var(--app-opacity-disabled)}select{max-width:100%;min-width:calc(var(--spacing) * 52.5);appearance:none;border-radius:calc(var(--radius-base) * 2);border-style:var(--tw-border-style);border-width:1px;border-color:var(--hairline);background-color:var(--control-bg);padding-inline:calc(var(--spacing) * 3);padding-block:calc(var(--spacing) * 1.5);padding-right:calc(var(--spacing) * 10);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));--tw-font-weight:var(--font-weight-normal);font-weight:var(--font-weight-normal);color:var(--text);--tw-shadow:var(--app-shadow-sm);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);transition-property:border-color,box-shadow;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration));--tw-duration:.15s;transition-duration:.15s}select:focus{border-color:var(--brand);--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);--tw-ring-color:var(--focus-ring);--tw-outline-style:none;outline-style:none}@media (min-width:48rem){select{max-width:calc(var(--spacing) * 100)}}select{background-image:var(--icon-arrow-down);background-position:right .75rem center;background-repeat:no-repeat;background-size:16px}select:where([data-darkmode=true],[data-darkmode=true] *){background-image:var(--icon-arrow-down-dark)}select[disabled]{cursor:not-allowed;opacity:var(--app-opacity-disabled)}.cbi-dropdown{white-space:nowrap;--tw-shadow:var(--app-shadow-sm);min-width:fit-content;max-width:100%;height:fit-content;box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);flex-shrink:0;align-items:center;padding:0;display:inline-flex}.cbi-dropdown[disabled]{pointer-events:none;opacity:var(--app-opacity-disabled)}.cbi-dropdown:not(.btn):not(.cbi-button){max-width:100%;min-width:calc(var(--spacing) * 52.5);border-radius:calc(var(--radius-base) * 2);border-style:var(--tw-border-style);border-width:1px;border-color:var(--hairline);background-color:var(--surface)}@media (min-width:48rem){.cbi-dropdown:not(.btn):not(.cbi-button){max-width:calc(var(--spacing) * 100)}}.cbi-dropdown:not(.btn):not(.cbi-button)>ul>li[placeholder]{display:none}.cbi-dropdown>ul{align-items:center;gap:calc(var(--spacing) * .5);flex-wrap:nowrap;flex:1;margin:0;list-style-type:none;display:flex;overflow:hidden}@media not all and (min-width:48rem){.cbi-dropdown>ul{flex-wrap:wrap}}.cbi-dropdown>ul>li{align-items:center;gap:var(--spacing);padding-inline:calc(var(--spacing) * 2);padding-block:calc(var(--spacing) * 1.5);margin:0;list-style-type:none;display:none;overflow:hidden}.cbi-dropdown>ul>li[display]{display:flex!important}.cbi-dropdown>ul>li .hide-open{display:block}.cbi-dropdown>ul>li .hide-close{display:none}.cbi-dropdown>ul>li>form{pointer-events:none;display:none}.cbi-dropdown>ul>li>label{align-items:center;gap:calc(var(--spacing) * 2);display:flex}.cbi-dropdown>ul>li img{height:calc(var(--spacing) * 5);width:calc(var(--spacing) * 5);vertical-align:middle;flex:none}.cbi-dropdown>ul>li span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.cbi-dropdown>ul.dropdown{z-index:50;border-radius:var(--radius-base);border-style:var(--tw-border-style);border-width:1px;border-color:var(--hairline);background-color:var(--surface-overlay);--tw-shadow:var(--app-shadow-lg);width:fit-content;min-width:100%;box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);--tw-backdrop-blur:blur(var(--blur-md));--tw-backdrop-saturate:saturate(150%);-webkit-backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);position:absolute;left:0;overflow-y:auto}.cbi-dropdown>ul.dropdown>li{min-height:calc(var(--spacing) * 9);cursor:pointer;width:100%;padding-inline:calc(var(--spacing) * 3);padding-block:calc(var(--spacing) * 1.5);--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium);color:var(--text-muted)}@media (hover:hover){.cbi-dropdown>ul.dropdown>li:hover{background-color:var(--brand-subtle)}}.cbi-dropdown>ul.preview{display:none}.cbi-dropdown[empty]>ul{max-width:1px;max-height:1px}.cbi-dropdown[empty]>ul>li,.cbi-dropdown[optional][open]>ul.dropdown>li[placeholder]{display:block}.cbi-dropdown[open]{border-color:var(--brand);--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);--tw-ring-color:var(--focus-ring);position:relative}.cbi-dropdown[open]>ul.dropdown{width:auto;max-width:none;display:block}.cbi-dropdown[open]>ul.dropdown>li{display:flex}.cbi-dropdown[open]>ul.dropdown>li[selected]{background-color:var(--brand-subtle);color:var(--brand)}.cbi-dropdown[open]>ul.dropdown>li[unselectable]{opacity:var(--app-opacity-disabled)}.cbi-dropdown[open]>ul.dropdown>li .hide-open{display:none}.cbi-dropdown[open]>ul.dropdown>li .hide-close{display:block}.cbi-dropdown[open]>ul.preview{display:flex}:is(.cbi-dropdown[multiple][more],.cbi-dropdown[multiple][empty])>.more{padding-inline:calc(var(--spacing) * 2.5);padding-block:calc(var(--spacing) * 1.5);flex:none;display:flex}.cbi-dropdown[multiple][empty]>.more{flex:1}.cbi-dropdown[multiple][open]>ul.dropdown>li>form{align-items:center;display:flex}.cbi-dropdown[multiple]>ul>li>label{display:flex}.cbi-dropdown>.open{cursor:pointer;border-left-style:var(--tw-border-style);border-left-width:1px;border-color:var(--hairline);padding-inline:calc(var(--spacing) * 2.5);padding-block:calc(var(--spacing) * .5);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));color:currentColor;flex:none;justify-content:center;align-items:center;display:flex}.cbi-dropdown>.more{display:none}.cbi-tooltip{z-index:110;width:max-content;max-width:var(--container-xs);--tw-scale-x:95%;--tw-scale-y:95%;--tw-scale-z:95%;scale:var(--tw-scale-x) var(--tw-scale-y);border-radius:calc(var(--radius-base) * 1.5);border-style:var(--tw-border-style);border-width:1px;border-color:var(--hairline);background-color:var(--surface-overlay);padding-inline:calc(var(--spacing) * 3);padding-block:calc(var(--spacing) * 2);font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height));overflow-wrap:normal;word-break:normal;white-space:normal;color:var(--text);opacity:0;--tw-shadow:var(--app-shadow-lg);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);transition-property:visibility,opacity,scale;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration));--tw-duration:.15s;--tw-ease:var(--ease-out);transition-duration:.15s;transition-timing-function:var(--ease-out);position:absolute;inset-inline-start:-10000px}.cbi-tooltip.error{border-color:var(--hairline);background-color:var(--danger-surface);color:var(--danger)}.cbi-tooltip.success{border-color:var(--hairline);background-color:var(--success-surface);color:var(--success)}.cbi-tooltip.info{border-color:var(--hairline);background-color:var(--info-surface);color:var(--info)}.cbi-tooltip.notice{border-color:var(--hairline);background-color:var(--warning-surface);color:var(--warning)}.cbi-tooltip-container,[data-tooltip]{cursor:help;white-space:nowrap;text-underline-offset:2px;text-decoration-line:underline;text-decoration-style:dotted;text-decoration-color:currentColor;display:inline-block;position:relative}:is(.cbi-tooltip-container,[data-tooltip]) .cbi-tooltip{visibility:hidden;--tw-scale-x:95%;--tw-scale-y:95%;--tw-scale-z:95%;scale:var(--tw-scale-x) var(--tw-scale-y);opacity:0;transition-property:visibility,opacity,scale;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration));--tw-duration:.15s;--tw-ease:var(--ease-out);transition-duration:.15s;transition-timing-function:var(--ease-out)}:is(.cbi-tooltip-container,[data-tooltip]):hover .cbi-tooltip{visibility:visible;--tw-scale-x:100%;--tw-scale-y:100%;--tw-scale-z:100%;scale:var(--tw-scale-x) var(--tw-scale-y);opacity:1;inset-inline-start:auto}[data-tip]:not([data-tip=""]){position:relative}[data-tip]:not([data-tip=""]):after{content:attr(data-tip);pointer-events:none;z-index:110;width:max-content;max-width:var(--container-xs);--tw-scale-x:95%;--tw-scale-y:95%;--tw-scale-z:95%;scale:var(--tw-scale-x) var(--tw-scale-y);border-radius:var(--radius-base);background-color:var(--text);padding-inline:calc(var(--spacing) * 2);padding-block:var(--spacing);font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height));overflow-wrap:normal;word-break:normal;white-space:normal;color:var(--bg);opacity:0;transition-property:opacity,scale;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration));--tw-duration:.15s;--tw-ease:var(--ease-out);transition-duration:.15s;transition-timing-function:var(--ease-out);position:absolute}[data-tip]:not([data-tip=""]):not([data-tip-pos]):after,[data-tip]:not([data-tip=""])[data-tip-pos=top]:after{--tw-translate-x:calc(calc(1 / 2 * 100%) * -1);translate:var(--tw-translate-x) var(--tw-translate-y);bottom:calc(100% + .5rem);left:50%}[data-tip]:not([data-tip=""])[data-tip-pos=bottom]:after{--tw-translate-x:calc(calc(1 / 2 * 100%) * -1);translate:var(--tw-translate-x) var(--tw-translate-y);top:calc(100% + .5rem);left:50%}[data-tip]:not([data-tip=""])[data-tip-pos=left]:after{--tw-translate-y:calc(calc(1 / 2 * 100%) * -1);translate:var(--tw-translate-x) var(--tw-translate-y);top:50%;right:calc(100% + .625rem)}[data-tip]:not([data-tip=""])[data-tip-pos=right]:after{--tw-translate-y:calc(calc(1 / 2 * 100%) * -1);translate:var(--tw-translate-x) var(--tw-translate-y);top:50%;left:calc(100% + .625rem)}[data-tip]:not([data-tip=""]):focus-visible:after{--tw-scale-x:100%;--tw-scale-y:100%;--tw-scale-z:100%;scale:var(--tw-scale-x) var(--tw-scale-y);opacity:1;transition-delay:.3s}@media (hover:hover){[data-tip]:not([data-tip=""]):hover:after{--tw-scale-x:100%;--tw-scale-y:100%;--tw-scale-z:100%;scale:var(--tw-scale-x) var(--tw-scale-y);opacity:1;transition-delay:.3s}}.alert-message{margin-bottom:calc(var(--spacing) * 4);border-radius:calc(var(--radius-base) * 2);border-style:var(--tw-border-style);border-width:1px;border-color:var(--hairline);background-color:var(--surface-sunken);padding:calc(var(--spacing) * 6);color:var(--text)}@media not all and (min-width:48rem){.alert-message{margin-inline:0;margin-bottom:calc(var(--spacing) * 3);padding:calc(var(--spacing) * 4)}}.modal .alert-message{margin-bottom:0}.login-shell .alert-message{padding-inline:calc(var(--spacing) * 2);padding-block:calc(var(--spacing) * 2.5);text-align:center;font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height));margin-bottom:0}@media not all and (min-width:48rem){.login-shell .alert-message{padding-inline:calc(var(--spacing) * .5)}}.alert-message.success{border-color:var(--hairline);background-color:var(--success-surface);color:var(--success)}.alert-message.info{border-color:var(--hairline);background-color:var(--info-surface);color:var(--info)}.alert-message.warning,.alert-message.notice{border-color:var(--hairline);background-color:var(--warning-surface);color:var(--warning)}.alert-message.error,.alert-message.danger{border-color:var(--hairline);background-color:var(--danger-surface);color:var(--danger)}.alert-message h4,.alert-message h5,.alert-message pre,.alert-message ul,.alert-message li,.alert-message p{border-style:var(--tw-border-style);color:inherit;background-color:#0000;border-width:0}.alert-message h4{margin-bottom:calc(var(--spacing) * 2);font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height));--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}@media not all and (min-width:48rem){.alert-message h4{margin-bottom:calc(var(--spacing) * 1.5);font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}}.alert-message p{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));--tw-leading:var(--leading-relaxed);line-height:var(--leading-relaxed)}@media not all and (min-width:48rem){.alert-message p{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}}.alert-message .right{margin-top:calc(var(--spacing) * 4)}@media not all and (min-width:48rem){.alert-message .right{margin-top:calc(var(--spacing) * 3)}}.cbi-progressbar{height:calc(var(--spacing) * 3.5);cursor:help;background-color:var(--surface-sunken);border-radius:3.40282e38px;width:100%;position:relative;overflow:hidden}.cbi-progressbar:before{content:var(--tw-content);content:var(--tw-content);content:var(--tw-content);content:var(--tw-content);--tw-translate-x:calc(calc(1 / 2 * 100%) * -1);translate:var(--tw-translate-x) var(--tw-translate-y);content:var(--tw-content);--tw-translate-y:calc(calc(1 / 2 * 100%) * -1);translate:var(--tw-translate-x) var(--tw-translate-y);content:var(--tw-content);border-radius:calc(var(--radius-base) * 2);content:var(--tw-content);font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height));content:var(--tw-content);white-space:nowrap;content:var(--tw-content);color:var(--text);--tw-content:attr(title);content:var(--tw-content);position:absolute;top:50%;left:50%}@media not all and (min-width:48rem){.cbi-progressbar{height:calc(var(--spacing) * 4)}.cbi-progressbar:before{content:var(--tw-content);font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height));content:var(--tw-content);--tw-leading:var(--leading-normal);line-height:var(--leading-normal)}}@media not all and (min-width:40rem){[data-page=admin-system-package-manager] .cbi-progressbar:before{content:var(--tw-content);font-size:10px}}.cbi-progressbar>div{--tw-gradient-position:to right;height:100%}@supports (background-image:linear-gradient(in lab, red, red)){.cbi-progressbar>div{--tw-gradient-position:to right in oklab}}.cbi-progressbar>div{background-image:linear-gradient(var(--tw-gradient-stops));--tw-gradient-from:var(--progress-start);--tw-gradient-to:var(--progress-end);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));transition-property:width;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration));--tw-duration:.25s;transition-duration:.25s}.label{background-color:var(--surface-sunken);padding-inline:calc(var(--spacing) * 3);padding-block:var(--spacing);font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height));--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold);color:var(--text);text-transform:uppercase;border-radius:3.40282e38px}.label.important{background-color:var(--info-surface);color:var(--info)}.label.warning{background-color:var(--danger-surface);color:var(--danger)}.label.success{background-color:var(--success-surface);color:var(--success)}.label.notice{background-color:var(--warning-surface);color:var(--warning)}.zonebadge{align-items:center;gap:calc(var(--spacing) * 1.5);border-radius:var(--radius-base);border-style:var(--tw-border-style);border-width:1px;border-color:var(--hairline);background-color:var(--surface-sunken);padding-inline:calc(var(--spacing) * 2);padding-block:var(--spacing);vertical-align:middle;font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));--tw-leading:var(--leading-normal);line-height:var(--leading-normal);--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold);color:var(--text);display:inline-flex;overflow:visible}@media not all and (min-width:48rem){.zonebadge{gap:var(--spacing);padding-inline:calc(var(--spacing) * 1.5);font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}}.zonebadge[style*=--zone-color-rgb]{border-color:#0000;background-color:rgb(var(--zone-color-rgb),.7)!important}.zonebadge[style*=--zone-color-rgb] em{color:var(--text)}.zonebadge.zonebadge-empty{--tw-border-style:dashed;--tw-font-weight:var(--font-weight-normal);font-weight:var(--font-weight-normal);color:var(--text-muted);background-color:#0000;border-style:dashed;font-style:italic}.ifacebadge>.zonebadge{padding-inline:var(--spacing);padding-block:calc(var(--spacing) * .5);border-radius:3.40282e38px}.cbi-dropdown .zonebadge{padding-inline:calc(var(--spacing) * 1.5);padding-block:calc(var(--spacing) * .5)}.ifacebadge{cursor:default;align-items:center;gap:calc(var(--spacing) * 2);border-radius:calc(var(--radius-base) * 2);border-style:var(--tw-border-style);border-width:1px;border-color:var(--hairline);background-color:var(--surface-sunken);padding-inline:calc(var(--spacing) * 3);padding-block:calc(var(--spacing) * 2);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));--tw-font-weight:var(--font-weight-normal);font-weight:var(--font-weight-normal);color:var(--text);--tw-shadow:var(--app-shadow-sm);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);transition-property:box-shadow,border-color,background-color;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration));--tw-duration:.15s;flex-wrap:nowrap;transition-duration:.15s;display:inline-flex}@media (hover:hover){.ifacebadge:hover{border-color:var(--hairline);background-color:var(--surface-sunken);--tw-shadow:var(--app-shadow-md);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}}@media not all and (min-width:48rem){.ifacebadge{gap:calc(var(--spacing) * 1.5);padding-inline:calc(var(--spacing) * 2.5);padding-block:calc(var(--spacing) * 1.5);font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}}.zonebadge>.ifacebadge{border-radius:calc(var(--radius-base) * 2);padding-inline:calc(var(--spacing) * 1.5);padding-block:0}.zonebadge>.ifacebadge img{margin-right:var(--spacing);width:calc(var(--spacing) * 4)}.cbi-dropdown .ifacebadge{gap:var(--spacing);border-radius:var(--radius-base);padding-inline:calc(var(--spacing) * 1.5);padding-block:calc(var(--spacing) * .5);--tw-shadow:0 0 #0000;box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}@media (hover:hover){.cbi-dropdown .ifacebadge:hover{--tw-shadow:0 0 #0000;box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}}.cbi-dropdown .ifacebadge img{margin-right:var(--spacing);width:calc(var(--spacing) * 4)}.ifacebadge>img,.ifacebadge>.cbi-tooltip-container>img{width:calc(var(--spacing) * 5);flex-shrink:0;align-self:center}@media not all and (min-width:48rem){.ifacebadge>img,.ifacebadge>.cbi-tooltip-container>img{width:calc(var(--spacing) * 4)}}.ifacebadge>span>.nowrap{margin-bottom:calc(var(--spacing) * 1.5);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));display:inline-block}@media not all and (min-width:48rem){.ifacebadge>span>.nowrap{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}}.ifacebadge.ifacebadge-active{border-color:var(--brand);--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.ifacebadge.large{min-width:200px;padding-inline:calc(var(--spacing) * 4);padding-block:calc(var(--spacing) * 3);flex:1}@media not all and (min-width:48rem){.ifacebadge.large{min-width:180px;padding-inline:calc(var(--spacing) * 3);padding-block:calc(var(--spacing) * 2.5)}}.cbi-section{margin-bottom:calc(var(--spacing) * 3);border-radius:calc(var(--radius-base) * 2);padding:calc(var(--spacing) * 5);overflow:visible}@media not all and (min-width:48rem){.cbi-section{padding:calc(var(--spacing) * 3)}}.cbi-section[data-tab-title]{margin:0;padding:0}.cbi-section[data-tab-active=true]{margin-bottom:calc(var(--spacing) * 3);padding:calc(var(--spacing) * 5)}@media not all and (min-width:48rem){.cbi-section[data-tab-active=true]{padding:calc(var(--spacing) * 3)}}#maincontent .cbi-section{border-style:var(--tw-border-style);border-width:1px;border-color:var(--hairline);background-color:var(--surface);--tw-shadow:var(--app-shadow-sm);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.cbi-section>.cbi-title{justify-content:space-between;align-items:flex-start;display:flex}.cbi-section>.cbi-title>h3{flex:1}.cbi-section>.cbi-title>h3 .label[data-clickable]{background-color:var(--surface-sunken);color:var(--text);width:calc(var(--spacing) * 7);height:calc(var(--spacing) * 7);cursor:pointer;justify-content:center;align-items:center;padding:0;display:inline-flex}.cbi-section>.cbi-title>h3 .label[data-clickable]:before{content:var(--tw-content);width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4);content:var(--tw-content);content:var(--tw-content);transition-property:transform,translate,scale,rotate;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration));content:var(--tw-content);--tw-duration:.15s;background-color:currentColor;transition-duration:.15s}@media (hover:hover){.cbi-section>.cbi-title>h3 .label[data-clickable]:hover{--tw-shadow:var(--app-shadow-md);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}}.cbi-section>.cbi-title>h3 .label[data-clickable]:active{--tw-scale-x:95%;--tw-scale-y:95%;--tw-scale-z:95%;scale:var(--tw-scale-x) var(--tw-scale-y)}@media not all and (min-width:48rem){.cbi-section>.cbi-title>h3 .label[data-clickable]{width:calc(var(--spacing) * 6);height:calc(var(--spacing) * 6)}}.cbi-section>.cbi-title>h3 span[data-indicator=poll-status]{width:calc(var(--spacing) * 5);height:calc(var(--spacing) * 5);cursor:pointer;font-size:0;position:relative}.cbi-section>.cbi-title>h3 span[data-indicator=poll-status]:before{content:var(--tw-content);content:var(--tw-content);width:calc(var(--spacing) * 5);height:calc(var(--spacing) * 5);content:var(--tw-content);content:var(--tw-content);transition-property:transform,translate,scale,rotate;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration));content:var(--tw-content);--tw-duration:.15s;content:var(--tw-content);--tw-ease:var(--ease-out);transition-duration:.15s;transition-timing-function:var(--ease-out);background-color:currentColor;position:absolute}@media (hover:hover){.cbi-section>.cbi-title>h3 span[data-indicator=poll-status]:hover:before{content:var(--tw-content);--tw-scale-x:110%;--tw-scale-y:110%;--tw-scale-z:110%;scale:var(--tw-scale-x) var(--tw-scale-y)}}.cbi-section>.cbi-title>h3 span[data-indicator=poll-status]:active:before{content:var(--tw-content);--tw-scale-x:95%;--tw-scale-y:95%;--tw-scale-z:95%;scale:var(--tw-scale-x) var(--tw-scale-y)}.cbi-section>.cbi-title>h3 span[data-indicator=poll-status][data-style=active]:before{content:var(--tw-content);content:var(--tw-content);-webkit-mask:var(--icon-arrow-right) center/cover no-repeat;-webkit-mask:var(--icon-arrow-right) center/cover no-repeat;-webkit-mask:var(--icon-arrow-right) center/cover no-repeat;mask:var(--icon-arrow-right) center/cover no-repeat;rotate:0deg}.cbi-section>.cbi-title>h3 span[data-indicator=poll-status][data-style=inactive]:before{content:var(--tw-content);content:var(--tw-content);-webkit-mask:var(--icon-arrow-right) center/cover no-repeat;-webkit-mask:var(--icon-arrow-right) center/cover no-repeat;-webkit-mask:var(--icon-arrow-right) center/cover no-repeat;mask:var(--icon-arrow-right) center/cover no-repeat;rotate:90deg}.cbi-section legend{font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height));--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.cbi-section h3{border-bottom-style:var(--tw-border-style);border-bottom-width:1px;border-color:var(--hairline);padding-bottom:calc(var(--spacing) * 4);color:var(--text)}@media not all and (min-width:48rem){.cbi-section h3{padding-bottom:calc(var(--spacing) * 2);margin-inline:0}.cbi-section div[style*=display\:grid]{gap:calc(var(--spacing) * 3);grid-template-columns:repeat(2,minmax(0,1fr))!important}}.cbi-section div[style*=display\:grid]:has(>.ifacebox){place-items:center}.cbi-section .network-status-table{margin-bottom:calc(var(--spacing) * 3);justify-content:space-around;gap:calc(var(--spacing) * 4);flex-wrap:nowrap;display:flex}@media not all and (min-width:48rem){.cbi-section .network-status-table{flex-direction:column}}.cbi-section .cbi-section-create{margin-top:calc(var(--spacing) * 6);align-items:center;gap:calc(var(--spacing) * 3);flex-wrap:wrap;display:flex}@media not all and (min-width:48rem){.cbi-section .cbi-section-create{margin-inline:0;margin-top:calc(var(--spacing) * 5);align-items:stretch;gap:calc(var(--spacing) * 3);flex-direction:column}}.cbi-section .cbi-section-create>div{flex:none}@media not all and (min-width:48rem){.cbi-section .cbi-section-create>div{flex:1;width:100%}}.ifacebox{min-width:calc(var(--spacing) * 28);border-radius:calc(var(--radius-base) * 2);border-style:var(--tw-border-style);border-width:1px;border-color:var(--hairline);background-color:var(--surface-overlay);text-align:center;font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height));--tw-leading:calc(var(--spacing) * 5);line-height:calc(var(--spacing) * 5);--tw-shadow:var(--app-shadow-md);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);flex-direction:column;align-items:stretch;display:inline-flex;position:relative;overflow:visible}@media (hover:hover){.ifacebox:hover{border-color:var(--hairline);--tw-shadow:var(--app-shadow-lg);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}}@media not all and (min-width:48rem){.ifacebox{min-width:calc(var(--spacing) * 30);border-radius:calc(var(--radius-base) * 3);border-color:var(--hairline);--tw-shadow:var(--app-shadow-sm);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);flex:1}#cbi-network-interface .ifacebox{flex-direction:row}}@media (min-width:48rem){#cbi-network-interface .ifacebox{min-width:calc(var(--spacing) * 38)}}.ifacebox .ifacebox-head{border-top-left-radius:calc(var(--radius-base) * 2);border-top-right-radius:calc(var(--radius-base) * 2);border-bottom-style:var(--tw-border-style);border-bottom-width:1px;border-color:var(--hairline);background-color:var(--surface-sunken);width:100%;padding-inline:calc(var(--spacing) * 4);padding-block:calc(var(--spacing) * 3);text-align:center;--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold);--tw-tracking:var(--tracking-tight);letter-spacing:var(--tracking-tight);color:var(--text);transition-property:background-color,border-color,color;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration));--tw-duration:.15s;transition-duration:.15s}@media not all and (min-width:48rem){.ifacebox .ifacebox-head{border-top-left-radius:calc(var(--radius-base) * 3);border-top-right-radius:calc(var(--radius-base) * 3);padding-inline:calc(var(--spacing) * 3);padding-block:calc(var(--spacing) * 2.5);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));--tw-leading:calc(var(--spacing) * 5);line-height:calc(var(--spacing) * 5);--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}}.ifacebox .ifacebox-head[style*=--zone-color-rgb]{background-color:rgb(var(--zone-color-rgb),.75)!important}@media not all and (min-width:48rem){#cbi-network-interface :is(.ifacebox .ifacebox-head){border-top-left-radius:calc(var(--radius-base) * 3);border-bottom-left-radius:calc(var(--radius-base) * 3);border-right-style:var(--tw-border-style);border-right-width:1px;border-bottom-style:var(--tw-border-style);border-bottom-width:0;border-top-right-radius:0;flex-shrink:0;justify-content:center;align-items:center;width:auto;display:flex}}.ifacebox .ifacebox-head.cbi-tooltip-container{background-color:#0000;position:static}.ifacebox .ifacebox-head.cbi-tooltip-container .cbi-tooltip{bottom:0;left:0}.ifacebox .ifacebox-head.active{border-color:var(--brand);background-color:var(--brand);color:var(--on-brand)}.ifacebox .ifacebox-body{justify-content:center;align-items:stretch;gap:var(--spacing);border-bottom-right-radius:calc(var(--radius-base) * 2);border-bottom-left-radius:calc(var(--radius-base) * 2);width:100%;padding:calc(var(--spacing) * 3);text-align:center;color:var(--text);flex-direction:column;flex:1;display:flex}@media not all and (min-width:48rem){.ifacebox .ifacebox-body{border-bottom-right-radius:calc(var(--radius-base) * 3);border-bottom-left-radius:calc(var(--radius-base) * 3)}#cbi-network-interface :is(.ifacebox .ifacebox-body){border-top-right-radius:calc(var(--radius-base) * 3);border-bottom-right-radius:calc(var(--radius-base) * 3);padding-block:calc(var(--spacing) * 2);padding-right:calc(var(--spacing) * 2);padding-left:calc(var(--spacing) * 4);border-bottom-left-radius:0;flex-direction:row;align-items:center}}.ifacebox .ifacebox-body>img{width:calc(var(--spacing) * 5);margin-inline:auto}:where(.ifacebox .ifacebox-body>span>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 1.5) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 1.5) * calc(1 - var(--tw-space-y-reverse)))}.ifacebox .ifacebox-body>span{color:var(--text)}@media not all and (min-width:48rem){:where(.ifacebox .ifacebox-body>span>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(var(--spacing) * var(--tw-space-y-reverse));margin-block-end:calc(var(--spacing) * calc(1 - var(--tw-space-y-reverse)))}.ifacebox .ifacebox-body>span{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));--tw-leading:calc(var(--spacing) * 5);line-height:calc(var(--spacing) * 5)}}.network-status-table :is(.ifacebox .ifacebox-body>span){width:100%}.ifacebox .ifacebox-body>span .cbi-tooltip-container+.cbi-tooltip-container{margin-left:var(--spacing)}.ifacebox .ifacebox-body>span .cbi-tooltip{transition-delay:.2s}.ifacebox .ifacebox-body>span .nowrap{display:inline-block}.ifacebox .ifacebox-body>span>.nowrap:not(:last-child){margin-bottom:var(--spacing)}.ifacebox .ifacebox-body>span img{width:calc(var(--spacing) * 5);flex-shrink:0}.ifacebox .ifacebox-body>div{width:100%;display:block}:where(.ifacebox .ifacebox-body>div>:not(:last-child)){--tw-space-y-reverse:0;margin-block:0}@media not all and (min-width:48rem){#cbi-network-interface :is(.ifacebox .ifacebox-body>div){flex:1;width:auto}:where(#cbi-network-interface :is(.ifacebox .ifacebox-body>div)>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(var(--spacing) * var(--tw-space-y-reverse));margin-block-end:calc(var(--spacing) * calc(1 - var(--tw-space-y-reverse)))}}.ifacebox .ifacebox-body .cbi-tooltip-container{cursor:help;color:var(--text);justify-content:center;align-items:center;display:inline-flex;position:static}.ifacebox .ifacebox-body .cbi-tooltip-container .cbi-tooltip{bottom:0}@media (min-width:48rem){.ifacebox .ifacebox-body .cbi-tooltip-container .cbi-tooltip{left:0}}.ifacebox .ifacebox-body .cbi-tooltip-container .cbi-tooltip .nowrap{white-space:nowrap}.ifacebox .ifacebox-body small{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height));--tw-leading:calc(var(--spacing) * 4);line-height:calc(var(--spacing) * 4);display:block}@media not all and (min-width:48rem){#cbi-network-interface :is(.ifacebox .ifacebox-body small){margin-top:0}}.network-status-table .ifacebox-body{justify-content:space-around;align-items:center;gap:calc(var(--spacing) * 2);flex-direction:column;flex:1;height:100%;display:flex}.network-status-table .ifacebox-body>div{gap:calc(var(--spacing) * 2);flex-wrap:wrap;display:flex}@media not all and (min-width:48rem){.network-status-table .ifacebox-body>div{gap:calc(var(--spacing) * 1.5)}}.network-status-table .ifacebox-body .ifacebadge{min-width:calc(var(--spacing) * 55);flex:1}#modal_overlay{pointer-events:none;background-color:#0000;display:none;position:fixed;top:0;bottom:0;overflow:auto}.modal-overlay-active #modal_overlay{pointer-events:auto;z-index:100;background-color:var(--scrim);--tw-backdrop-blur:blur(var(--blur-md));--tw-backdrop-saturate:saturate(150%);-webkit-backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);grid-template-columns:repeat(1,minmax(0,1fr));place-items:center;display:grid;inset:0}#modal_overlay>.modal{width:var(--container-5xl);gap:calc(var(--spacing) * 4);border-radius:calc(var(--radius-base) * 3);border-style:var(--tw-border-style);border-width:1px;border-color:var(--hairline);background-color:var(--surface-overlay);padding:calc(var(--spacing) * 6);overflow-wrap:break-word;white-space:normal;--tw-shadow:var(--app-shadow-lg);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);flex-direction:column;display:flex;position:relative}@media not all and (min-width:48rem){#modal_overlay>.modal{gap:calc(var(--spacing) * 3);width:100%;padding:calc(var(--spacing) * 4)}}#modal_overlay>.modal h4{text-align:center;margin-bottom:0}#modal_overlay>.modal h4 em{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold);color:var(--brand)}#modal_overlay>.modal h5{margin-block:calc(var(--spacing) * 3);color:var(--text)}#modal_overlay>.modal p{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));--tw-leading:var(--leading-relaxed);line-height:var(--leading-relaxed);color:var(--text)}#modal_overlay>.modal>ul{border-radius:calc(var(--radius-base) * 2);border-style:var(--tw-border-style);border-width:1px;border-color:var(--hairline);padding:calc(var(--spacing) * 3);overflow:auto}#modal_overlay>.modal label.btn{border-style:var(--tw-border-style);border-width:1px;border-color:var(--hairline);background-color:var(--surface-sunken);color:var(--text)}@media (hover:hover){#modal_overlay>.modal label.btn:hover{border-color:var(--hairline)}}#modal_overlay>.modal pre{overflow:auto}#modal_overlay>.modal pre.errors{border-color:var(--hairline);background-color:var(--danger-surface);color:var(--danger)}#modal_overlay>.modal pre+pre{margin-top:calc(var(--spacing) * 3)}#modal_overlay>.modal .button-row,#modal_overlay>.modal div.left,#modal_overlay>.modal div.right{gap:calc(var(--spacing) * 3);border-top-style:var(--tw-border-style);border-top-width:1px;border-color:var(--hairline);padding:calc(var(--spacing) * 4);flex-shrink:0;display:flex}@media not all and (min-width:48rem){#modal_overlay>.modal .button-row,#modal_overlay>.modal div.left,#modal_overlay>.modal div.right{gap:calc(var(--spacing) * 1.5);padding:calc(var(--spacing) * 2.5)}}#modal_overlay>.modal div.left{justify-content:flex-start}#modal_overlay>.modal .button-row,#modal_overlay>.modal div.right{justify-content:flex-end}#modal_overlay>.modal.uci-dialog ins,#modal_overlay>.modal.uci-dialog del,#modal_overlay>.modal.uci-dialog var{font-family:var(--font-mono);--tw-shadow:var(--app-shadow-sm);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);font-style:normal;text-decoration-line:none}#modal_overlay>.modal.uci-dialog ins{border-style:var(--tw-border-style);border-width:1px;border-color:var(--hairline);background-color:var(--success-surface);color:var(--success)}#modal_overlay>.modal.uci-dialog del{border-style:var(--tw-border-style);border-width:1px;border-color:var(--hairline);background-color:var(--danger-surface);color:var(--danger)}#modal_overlay>.modal.uci-dialog var{border-style:var(--tw-border-style);border-width:1px;border-color:var(--hairline);background-color:var(--info-surface);color:var(--info)}#modal_overlay>.modal.uci-dialog .uci-change-legend{margin-top:calc(var(--spacing) * 4);gap:calc(var(--spacing) * 3);border-radius:calc(var(--radius-base) * 2);border-style:var(--tw-border-style);border-width:1px;border-color:var(--hairline);background-color:var(--surface-sunken);padding:calc(var(--spacing) * 4);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}@media not all and (min-width:48rem){#modal_overlay>.modal.uci-dialog .uci-change-legend{gap:calc(var(--spacing) * 2);padding:calc(var(--spacing) * 3);grid-template-columns:repeat(1,minmax(0,1fr))}}#modal_overlay>.modal.uci-dialog .uci-change-legend .uci-change-legend-label{align-items:center;gap:calc(var(--spacing) * 2);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium);color:var(--text);display:flex}#modal_overlay>.modal.uci-dialog .uci-change-legend .uci-change-legend-label ins,#modal_overlay>.modal.uci-dialog .uci-change-legend .uci-change-legend-label del,#modal_overlay>.modal.uci-dialog .uci-change-legend .uci-change-legend-label var{height:calc(var(--spacing) * 6);min-width:calc(var(--spacing) * 6);border-radius:var(--radius-base);padding-inline:calc(var(--spacing) * 2);font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height));--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold);justify-content:center;align-items:center;display:flex}#modal_overlay>.modal.uci-dialog .uci-change-legend .uci-change-legend-label var ins,#modal_overlay>.modal.uci-dialog .uci-change-legend .uci-change-legend-label var del{margin-left:var(--spacing);height:calc(var(--spacing) * 4);min-width:calc(var(--spacing) * 4);padding-inline:var(--spacing)}#modal_overlay>.modal.uci-dialog .uci-change-list{margin-top:calc(var(--spacing) * 4)}:where(#modal_overlay>.modal.uci-dialog .uci-change-list>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 3) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 3) * calc(1 - var(--tw-space-y-reverse)))}#modal_overlay>.modal.uci-dialog .uci-change-list h5{margin-top:calc(var(--spacing) * 6);margin-bottom:calc(var(--spacing) * 2);border-radius:calc(var(--radius-base) * 1.5);background-color:var(--surface-sunken);padding-inline:calc(var(--spacing) * 3);padding-block:calc(var(--spacing) * 2);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold);color:var(--text)}#modal_overlay>.modal.uci-dialog .uci-change-list h5:first-child{margin-top:0}#modal_overlay>.modal.uci-dialog .uci-change-list ins,#modal_overlay>.modal.uci-dialog .uci-change-list del{border-radius:calc(var(--radius-base) * 1.5);padding-inline:calc(var(--spacing) * 4);padding-block:calc(var(--spacing) * 3);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));display:block}:is(#modal_overlay>.modal.uci-dialog .uci-change-list ins,#modal_overlay>.modal.uci-dialog .uci-change-list del) strong{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}#modal_overlay>.modal.uci-dialog .uci-change-list var{border-radius:var(--radius-base);padding-inline:calc(var(--spacing) * 2);padding-block:var(--spacing);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));display:inline-block}#modal_overlay>.modal.uci-dialog .uci-change-list var ins,#modal_overlay>.modal.uci-dialog .uci-change-list var del{margin-left:var(--spacing);padding-inline:calc(var(--spacing) * 1.5);padding-block:calc(var(--spacing) * .5);font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height));display:inline-block}@media not all and (min-width:48rem){.mobile-menu-overlay{visibility:hidden;z-index:60;background-color:var(--mega-menu-bg);opacity:0;position:fixed;inset:0}}@media (min-width:48rem){.mobile-menu-overlay{display:none}}@media not all and (min-width:48rem){.mobile-menu-overlay.mobile-menu-open{visibility:visible;opacity:1;transition-property:visibility,opacity;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration));--tw-duration:.25s;transition-duration:.25s}.mobile-menu-overlay .mobile-nav{width:100%;height:100%;padding-top:calc(var(--spacing) * 14);flex-direction:column;display:flex}.mobile-menu-overlay .mobile-nav .mobile-nav-body{min-height:0;padding-inline:calc(var(--spacing) * 5);padding-top:calc(var(--spacing) * 6);flex-direction:column;flex:1;display:flex}.mobile-menu-overlay .mobile-nav .mobile-nav-body .mobile-nav-label{margin-bottom:calc(var(--spacing) * 3);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium);color:var(--text-muted)}.mobile-menu-overlay .mobile-nav .mobile-nav-list{--tw-translate-y:calc(var(--spacing) * -2);min-height:0;translate:var(--tw-translate-x) var(--tw-translate-y);row-gap:calc(var(--spacing) * 4);overscroll-behavior:contain;padding:0;padding-bottom:calc(var(--spacing) * 5);opacity:0;flex-direction:column;flex:1;margin:0;list-style-type:none;display:flex;overflow-y:auto}.mobile-menu-overlay .mobile-nav .mobile-nav-list .mobile-nav-item{flex-shrink:0}.mobile-menu-overlay .mobile-nav .mobile-nav-list .mobile-nav-item .nav-row{min-height:calc(var(--spacing) * 13);justify-content:space-between;gap:calc(var(--spacing) * 3);padding-inline:0;padding-block:calc(var(--spacing) * 2.5);font-size:var(--text-2xl);line-height:var(--tw-leading,var(--text-2xl--line-height));--tw-leading:var(--leading-tight);line-height:var(--leading-tight);--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium);--tw-tracking:var(--tracking-tight);letter-spacing:var(--tracking-tight);background-color:#0000;border-radius:0}.mobile-menu-overlay .mobile-nav .mobile-nav-list .mobile-nav-item .nav-row .nav-icon{width:calc(var(--spacing) * 6);height:calc(var(--spacing) * 6)}.mobile-menu-overlay .mobile-nav .mobile-nav-list .mobile-nav-item .mobile-nav-submenu .mobile-nav-submenu-list{padding:0;padding-left:calc(var(--spacing) * 6);margin:0}.mobile-menu-overlay .mobile-nav .mobile-nav-list .mobile-nav-item .mobile-nav-submenu .mobile-nav-subitem .mobile-nav-sublink{min-height:calc(var(--spacing) * 10);width:100%;padding-inline:calc(var(--spacing) * 3);padding-block:calc(var(--spacing) * 2);font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height));align-items:center}.mobile-menu-overlay .mobile-nav .mobile-nav-footer{border-top-style:var(--tw-border-style);border-top-width:1px;border-color:var(--hairline);padding-inline:calc(var(--spacing) * 5);padding-top:calc(var(--spacing) * 4);padding-bottom:max(1rem, env(safe-area-inset-bottom));flex-shrink:0;justify-content:space-between;align-items:center;display:flex}.mobile-menu-overlay .mobile-nav .mobile-nav-footer .mobile-nav-footer-action{align-items:center;display:flex}.mobile-menu-overlay .mobile-nav .mobile-nav-footer .mobile-nav-logout{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium);color:var(--text);transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration));--tw-duration:.15s;text-decoration-line:none;transition-duration:.15s}@media (hover:hover){.mobile-menu-overlay .mobile-nav .mobile-nav-footer .mobile-nav-logout:hover{color:var(--brand)}}.mobile-menu-overlay .mobile-nav .mobile-nav-footer .theme-switcher .theme-option{padding-inline:calc(var(--spacing) * 2);padding-block:var(--spacing)}.mobile-menu-overlay.mobile-menu-open .mobile-nav-list{--tw-translate-y:0;translate:var(--tw-translate-x) var(--tw-translate-y);opacity:1;transition-property:translate,opacity;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration));--tw-duration:.25s;--tw-ease:var(--ease-out);transition-duration:.25s;transition-timing-function:var(--ease-out)}body.mobile-navigation-open>header{z-index:70;background-color:#0000}}[data-nav-type=mega-menu] .desktop-menu-overlay{pointer-events:none;visibility:hidden;z-index:60;background-color:var(--mega-menu-scrim);opacity:0;transition:opacity .22s cubic-bezier(.4,0,.6,1),visibility 0s .22s;position:fixed;inset:0}@media not all and (min-width:48rem){[data-nav-type=mega-menu] .desktop-menu-overlay{display:none}}[data-nav-type=mega-menu] .desktop-menu-overlay.active{pointer-events:auto;visibility:visible;opacity:1;transition-delay:0s}table.table,.table{margin-bottom:calc(var(--spacing) * 3);border-collapse:separate;--tw-border-spacing-x:0;--tw-border-spacing-y:0;width:100%;border-spacing:var(--tw-border-spacing-x) var(--tw-border-spacing-y);border-radius:calc(var(--radius-base) * 2);border-style:var(--tw-border-style);border-width:1px;border-color:var(--hairline);font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height));overflow:visible}@media not all and (min-width:48rem){table.table,.table{border-style:var(--tw-border-style);width:100%;font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));--tw-shadow:0 0 #0000;box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);border-width:0;border-radius:0;margin-inline:0;display:block;overflow:visible}}:is(table.table,.table)[width="100%"]{width:100%}:is(table.table,.table)[width="33%"]{width:33.3333%}:is(table.table,.table) .cbi-section-table-titles{--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold)}:is(:is(table.table,.table) .cbi-section-table-titles.named,:is(table.table,.table) .cbi-section-table-descr.named,:is(table.table,.table) .cbi-section-table-row[data-title]):before{content:var(--tw-content);content:var(--tw-content);border-color:var(--hairline);content:var(--tw-content);padding-inline:calc(var(--spacing) * 3);content:var(--tw-content);padding-block:calc(var(--spacing) * 3);content:var(--tw-content);vertical-align:middle;content:var(--tw-content);font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height));content:var(--tw-content);--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold);--tw-content:attr(data-title);content:var(--tw-content);content:var(--tw-content);display:table-cell}@media not all and (min-width:48rem){:is(:is(table.table,.table) .cbi-section-table-titles.named,:is(table.table,.table) .cbi-section-table-descr.named,:is(table.table,.table) .cbi-section-table-row[data-title]):before{padding-inline:calc(var(--spacing) * 3);padding-block:calc(var(--spacing) * 2.5);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));flex:0 0 100%;display:flex}}:is(:is(table.table,.table) .cbi-section-table-titles.named,:is(table.table,.table) .cbi-section-table-descr.named,:is(table.table,.table) .cbi-section-table-row[data-title]):before{content:var(--tw-content)}@media (min-width:48rem){:is(:is(table.table,.table) .cbi-section-table-titles.named,:is(table.table,.table) .cbi-section-table-descr.named,:is(table.table,.table) .cbi-section-table-row[data-title]):before{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}}:is(:is(:is(table.table,.table) .cbi-section-table-titles.named,:is(table.table,.table) .cbi-section-table-descr.named,:is(table.table,.table) .cbi-section-table-row[data-title]):not([data-title]),:is(:is(table.table,.table) .cbi-section-table-titles.named,:is(table.table,.table) .cbi-section-table-descr.named,:is(table.table,.table) .cbi-section-table-row[data-title]):has(td.cbi-section-table-titles)):before{content:var(--tw-content);--tw-content:none;content:none}:is(table.table,.table) .cbi-section-table-titles.named:before{content:var(--tw-content);font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height));content:var(--tw-content);--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold);content:var(--tw-content);--tw-tracking:var(--tracking-wider);letter-spacing:var(--tracking-wider);content:var(--tw-content);color:var(--text-subtle);content:var(--tw-content);text-transform:uppercase}@media not all and (min-width:48rem){:is(table.table,.table) tbody,:is(table.table,.table) .tbody{display:block}:is(table.table,.table) tr,:is(table.table,.table) .tr{border-bottom-style:var(--tw-border-style);border-bottom-width:1px;border-color:var(--hairline);padding-inline:calc(var(--spacing) * 2);padding-block:calc(var(--spacing) * 2);flex-wrap:wrap;display:flex}:is(:is(table.table,.table) tr,:is(table.table,.table) .tr):has(.cbi-progressbar){justify-content:center;align-items:center;display:flex}}:is(:is(:is(table.table,.table) tr,:is(table.table,.table) .tr):first-child th,:is(:is(table.table,.table) tr,:is(table.table,.table) .tr):first-child .th):first-child{border-top-left-radius:calc(var(--radius-base) * 2)}:is(:is(:is(table.table,.table) tr,:is(table.table,.table) .tr):first-child th,:is(:is(table.table,.table) tr,:is(table.table,.table) .tr):first-child .th):last-child{border-top-right-radius:calc(var(--radius-base) * 2)}@media not all and (min-width:48rem){:is(:is(table.table,.table) tr,:is(table.table,.table) .tr):last-child{border-bottom-style:var(--tw-border-style);border-bottom-width:0}}:is(:is(table.table,.table) tr,:is(table.table,.table) .tr):last-child[data-title]:before{content:var(--tw-content);border-bottom-style:var(--tw-border-style);border-bottom-width:0}:is(:is(table.table,.table) tr,:is(table.table,.table) .tr):last-child .td{border-bottom-style:var(--tw-border-style);border-bottom-width:0}@media not all and (min-width:48rem){:is(:is(table.table,.table) tr,:is(table.table,.table) .tr).table-titles,:is(:is(table.table,.table) tr,:is(table.table,.table) .tr).cbi-section-table-titles,:is(:is(table.table,.table) tr,:is(table.table,.table) .tr).cbi-section-table-descr{display:none}}:is(:is(table.table,.table) tr,:is(table.table,.table) .tr).cbi-rowstyle-1,:is(:is(table.table,.table) tr,:is(table.table,.table) .tr).cbi-rowstyle-2{background-color:#0000}@media not all and (min-width:48rem){:is(:is(table.table,.table) tr,:is(table.table,.table) .tr)>.col-1{flex:2rem}}@media (min-width:48rem){:is(:is(table.table,.table) tr,:is(table.table,.table) .tr)>.col-1{width:calc(var(--spacing) * 20);max-width:calc(var(--spacing) * 28)}}:is(:is(table.table,.table) tr,:is(table.table,.table) .tr)>.col-2{white-space:normal}@media not all and (min-width:48rem){:is(:is(table.table,.table) tr,:is(table.table,.table) .tr)>.col-2{flex:2 2 4rem}}@media (min-width:48rem){:is(:is(table.table,.table) tr,:is(table.table,.table) .tr)>.col-2{width:calc(var(--spacing) * 32);max-width:calc(var(--spacing) * 40)}}@media not all and (min-width:48rem){:is(:is(table.table,.table) tr,:is(table.table,.table) .tr)>.col-3{flex:3 3 6rem}}@media (min-width:48rem){:is(:is(table.table,.table) tr,:is(table.table,.table) .tr)>.col-3{width:calc(var(--spacing) * 44);max-width:calc(var(--spacing) * 52)}}@media not all and (min-width:48rem){:is(:is(table.table,.table) tr,:is(table.table,.table) .tr)>.col-4{flex:4 4 8rem}}@media (min-width:48rem){:is(:is(table.table,.table) tr,:is(table.table,.table) .tr)>.col-4{width:calc(var(--spacing) * 56);max-width:calc(var(--spacing) * 64)}}@media not all and (min-width:48rem){:is(:is(table.table,.table) tr,:is(table.table,.table) .tr)>.col-5{flex:5 5 10rem}}@media (min-width:48rem){:is(:is(table.table,.table) tr,:is(table.table,.table) .tr)>.col-5{width:calc(var(--spacing) * 68);max-width:calc(var(--spacing) * 76)}}@media not all and (min-width:48rem){:is(:is(table.table,.table) tr,:is(table.table,.table) .tr)>.col-6{flex:6 6 12rem}}@media (min-width:48rem){:is(:is(table.table,.table) tr,:is(table.table,.table) .tr)>.col-6{width:calc(var(--spacing) * 80);max-width:calc(var(--spacing) * 88)}}@media not all and (min-width:48rem){:is(:is(table.table,.table) tr,:is(table.table,.table) .tr)>.col-7{flex:7 7 14rem}}@media (min-width:48rem){:is(:is(table.table,.table) tr,:is(table.table,.table) .tr)>.col-7{width:calc(var(--spacing) * 92);max-width:calc(var(--spacing) * 100)}}@media not all and (min-width:48rem){:is(:is(table.table,.table) tr,:is(table.table,.table) .tr)>.col-8{flex:8 8 16rem}}@media (min-width:48rem){:is(:is(table.table,.table) tr,:is(table.table,.table) .tr)>.col-8{width:calc(var(--spacing) * 104);max-width:calc(var(--spacing) * 112)}}@media not all and (min-width:48rem){:is(:is(table.table,.table) tr,:is(table.table,.table) .tr)>.col-9{flex:9 9 18rem}}@media (min-width:48rem){:is(:is(table.table,.table) tr,:is(table.table,.table) .tr)>.col-9{width:calc(var(--spacing) * 116);max-width:calc(var(--spacing) * 124)}}@media not all and (min-width:48rem){:is(:is(table.table,.table) tr,:is(table.table,.table) .tr)>.col-10{flex:0 0 100%;max-width:calc(100vw - 40px)}}@media (min-width:48rem){:is(:is(table.table,.table) tr,:is(table.table,.table) .tr)>.col-10{width:calc(var(--spacing) * 128);max-width:calc(var(--spacing) * 136)}}:is(table.table,.table) th,:is(table.table,.table) .th{border-bottom-style:var(--tw-border-style);border-bottom-width:1px;border-color:var(--hairline);background-color:var(--surface-sunken);padding-inline:calc(var(--spacing) * 3);padding-block:calc(var(--spacing) * 3);text-align:left;font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height));--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold);--tw-tracking:var(--tracking-wider);letter-spacing:var(--tracking-wider);color:var(--text-subtle);text-transform:uppercase}@media not all and (min-width:48rem){:is(table.table,.table) th,:is(table.table,.table) .th{border-style:var(--tw-border-style);background-color:#0000;border-width:0;flex:50%}}#cbi-samba4 :is(:is(table.table,.table) th,:is(table.table,.table) .th){padding-inline:calc(var(--spacing) * .5);padding-block:calc(var(--spacing) * 1.5)}:is(:is(table.table,.table) th,:is(table.table,.table) .th)[width="100%"]{width:100%}@media not all and (min-width:48rem){:is(:is(table.table,.table) th,:is(table.table,.table) .th)[width="100%"]{flex:0 0 100%}}:is(:is(table.table,.table) th,:is(table.table,.table) .th)[width="33%"]{width:33.3333%}@media not all and (min-width:48rem){:is(:is(table.table,.table) th,:is(table.table,.table) .th)[width="33%"]{flex:0 0 33.333%}}:is(:is(table.table,.table) th,:is(table.table,.table) .th)[data-sortable-row=true]{cursor:pointer;-webkit-user-select:none;user-select:none}:is(:is(table.table,.table) th,:is(table.table,.table) .th)[data-sortable-row=true]:after{content:var(--tw-content);margin-left:calc(var(--spacing) * .5);content:var(--tw-content);font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}@media (hover:hover){:is(:is(table.table,.table) th,:is(table.table,.table) .th)[data-sortable-row=true]:hover{background-color:var(--hover-faint)}}:is(:is(table.table,.table) th,:is(table.table,.table) .th)[data-sortable-row=true][data-sort-direction=asc]:after{--tw-content:"▲";content:var(--tw-content)}:is(:is(table.table,.table) th,:is(table.table,.table) .th)[data-sortable-row=true][data-sort-direction=desc]:after{--tw-content:"▼";content:var(--tw-content)}:is(table.table,.table)[id*=status_leases] .td{max-width:calc(var(--spacing) * 62)}@media not all and (min-width:48rem){:is(table.table,.table)[id*=status_leases] .td{max-width:100%}}:is(table.table,.table) td,:is(table.table,.table) .td{border-bottom-style:var(--tw-border-style);border-bottom-width:1px;border-color:var(--hairline);padding-inline:calc(var(--spacing) * 3);padding-block:calc(var(--spacing) * 3);vertical-align:middle;overflow-wrap:break-word;white-space:normal;display:table-cell}@media not all and (min-width:48rem){:is(table.table,.table) td,:is(table.table,.table) .td{border-style:var(--tw-border-style);padding-inline:var(--spacing);padding-block:var(--spacing);border-width:0;flex:50%}}:is(:is(table.table,.table) td,:is(table.table,.table) .td):before{content:var(--tw-content);--tw-content:attr(data-title);content:var(--tw-content);content:var(--tw-content);display:none}@media not all and (min-width:48rem){:is(:is(table.table,.table) td,:is(table.table,.table) .td):before{margin-bottom:var(--spacing);font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height));--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold);display:block}}:is(:is(table.table,.table) td,:is(table.table,.table) .td):before{content:var(--tw-content)}@media not all and (min-width:48rem){:is(:is(table.table,.table) td,:is(table.table,.table) .td):before{--tw-tracking:var(--tracking-wider);letter-spacing:var(--tracking-wider)}}#cbi-samba4 :is(:is(table.table,.table) td,:is(table.table,.table) .td){padding-inline:calc(var(--spacing) * .5);padding-block:calc(var(--spacing) * 1.5)}[data-page=admin-system-mounts] :is(:is(table.table,.table) td,:is(table.table,.table) .td){max-width:calc(var(--spacing) * 104)}@media not all and (min-width:48rem){[data-page=admin-system-mounts] :is(:is(table.table,.table) td,:is(table.table,.table) .td){max-width:100%}#wifi_assoclist_table :is(:is(table.table,.table) td,:is(table.table,.table) .td){padding-inline:calc(var(--spacing) * 3);padding-block:calc(var(--spacing) * 2);flex:0 0 100%}}#wifi_assoclist_table :is(:is(table.table,.table) td,:is(table.table,.table) .td):before{content:var(--tw-content)}@media not all and (min-width:48rem){#wifi_assoclist_table :is(:is(table.table,.table) td,:is(table.table,.table) .td):before{margin-bottom:calc(var(--spacing) * 1.5)}}:is(:is(table.table,.table) td,:is(table.table,.table) .td)>input[type=text],:is(:is(table.table,.table) td,:is(table.table,.table) .td)>input[type=password],:is(:is(table.table,.table) td,:is(table.table,.table) .td) select,:is(:is(table.table,.table) td,:is(table.table,.table) .td) .cbi-dropdown:not(.btn):not(.cbi-button){width:100%}:is(:is(table.table,.table) td,:is(table.table,.table) .td) select,:is(:is(table.table,.table) td,:is(table.table,.table) .td) .cbi-dropdown:not(.btn):not(.cbi-button){min-width:fit-content}:is(:is(table.table,.table) td,:is(table.table,.table) .td).cbi-value-field{overflow-wrap:anywhere}@media not all and (min-width:48rem){:is(:is(table.table,.table) td,:is(table.table,.table) .td).cbi-value-field{margin-bottom:var(--spacing);text-align:left;flex-basis:100%;align-self:flex-start}}@media (min-width:48rem){:is(:is(table.table,.table) td,:is(table.table,.table) .td).cbi-value-field{max-width:65ch}}@media not all and (min-width:48rem){:is(:is(table.table,.table) td,:is(table.table,.table) .td).cbi-value-field[data-widget=CBI\.DummyValue],:is(:is(table.table,.table) td,:is(table.table,.table) .td).cbi-value-field[data-widget=CBI\.Button],:is(:is(table.table,.table) td,:is(table.table,.table) .td).cbi-value-field[data-widget=CBI\.FlagValue],:is(:is(table.table,.table) td,:is(table.table,.table) .td).cbi-value-field[data-widget=dvalue],:is(:is(table.table,.table) td,:is(table.table,.table) .td).cbi-value-field[data-widget=button],:is(:is(table.table,.table) td,:is(table.table,.table) .td).cbi-value-field[data-widget=fvalue]{flex-basis:50%}:is(:is(table.table,.table) td,:is(table.table,.table) .td).cbi-section-actions{flex:0 0 100%}:is(:is(table.table,.table) td,:is(table.table,.table) .td).cbi-section-actions>div{width:100%}:is(:is(table.table,.table) td,:is(table.table,.table) .td).cbi-section-actions>div>.cbi-button{flex:1}:is(:is(table.table,.table) td,:is(table.table,.table) .td)>.cbi-button{width:100%}}:is(:is(table.table,.table) td,:is(table.table,.table) .td)[width="100%"]{width:100%}@media not all and (min-width:48rem){:is(:is(table.table,.table) td,:is(table.table,.table) .td)[width="100%"]{flex:0 0 100%}}:is(:is(table.table,.table) td,:is(table.table,.table) .td)[width="33%"]{width:33.3333%}@media not all and (min-width:48rem){:is(:is(table.table,.table) td,:is(table.table,.table) .td)[width="33%"]{flex:0 0 33.333%}[data-page=admin-network-network] :is(:is(table.table,.table) td,:is(table.table,.table) .td)[data-name=_ifacebox],[data-page=admin-network-network] :is(:is(table.table,.table) td,:is(table.table,.table) .td)[data-name=_ifacestat]{flex-basis:100%}}.cbi-section-table .cbi-section-table-titles .cbi-section-table-cell{width:auto!important}#content_syslog{margin:calc(var(--spacing) * 2)}@media not all and (min-width:48rem){#content_syslog{margin:var(--spacing)}}#content_syslog>div{align-items:center;column-gap:calc(var(--spacing) * 2);flex-wrap:wrap;display:flex}@media not all and (min-width:48rem){#content_syslog>div{column-gap:calc(var(--spacing) * 1.5)}}#content_syslog>div>select,#content_syslog>div>input{margin-block:0!important}@media not all and (min-width:48rem){#content_syslog>div>.cbi-input-select,#content_syslog>div>.cbi-input-text{min-width:calc(var(--spacing) * 45)}}#content_syslog>.syslog-view{display:block}#syslog,#log_textarea{width:100%;font-family:var(--font-mono);font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height));--tw-leading:var(--leading-snug);line-height:var(--leading-snug)}#syslog{margin-bottom:calc(var(--spacing) * 5);border-radius:calc(var(--radius-base) * 3);border-style:var(--tw-border-style);border-width:1px;border-color:var(--hairline);background-color:var(--surface-sunken);padding:calc(var(--spacing) * 6);color:var(--text);--tw-shadow:var(--app-shadow-md);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}@media not all and (min-width:48rem){#syslog{padding:calc(var(--spacing) * 3)}}#content_syslog.log-enhanced>#syslog{display:none}.syslog-view{width:100%;margin-bottom:calc(var(--spacing) * 5);border-radius:calc(var(--radius-base) * 3);border-style:var(--tw-border-style);border-width:1px;border-color:var(--hairline);background-color:var(--surface-sunken);padding:calc(var(--spacing) * 6);color:var(--text);--tw-shadow:var(--app-shadow-md);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}@media not all and (min-width:48rem){.syslog-view{padding:calc(var(--spacing) * 3)}}.syslog-view{font-family:var(--font-mono);font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height));--tw-leading:var(--leading-relaxed);line-height:var(--leading-relaxed);--tw-outline-style:none;outline-style:none;overflow-x:auto}.syslog-view:focus-visible{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);--tw-ring-color:var(--focus-ring)}.syslog-view .log-row{border-radius:calc(var(--radius-base) * .75);width:max-content;min-width:100%;padding-inline:calc(var(--spacing) * 2);white-space:pre}.syslog-view .log-row:hover{background-color:var(--hover-faint)}.syslog-view ::selection{background-color:var(--info-surface);color:var(--text)}.syslog-view .log-time{color:var(--text-subtle)}@media (min-width:48rem){.syslog-view .log-time{vertical-align:bottom;min-width:24ch;display:inline-block}}.syslog-view .log-sev{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}@media (min-width:48rem){.syslog-view .log-sev{vertical-align:bottom;min-width:16ch;display:inline-block}}.syslog-view .log-tag{color:var(--text-muted)}@media (min-width:48rem){.syslog-view .log-tag{vertical-align:bottom;min-width:18ch;display:inline-block}}.syslog-view .lv-info .log-sev{color:var(--info)}.syslog-view .lv-notice .log-sev{color:var(--success)}.syslog-view .lv-warn .log-sev{color:var(--warning)}.syslog-view .lv-debug,.syslog-view .lv-debug .log-sev,.syslog-view .lv-debug .log-tag{color:var(--text-subtle)}.syslog-view .lv-err,.syslog-view .lv-crit{background-color:var(--danger-surface)}:is(.syslog-view .lv-err,.syslog-view .lv-crit):hover{background-color:var(--danger-surface-hover)}:is(.syslog-view .lv-err,.syslog-view .lv-crit) .log-sev{color:var(--danger)}.cbi-input-invalid,.cbi-value-error{border-color:var(--danger)!important}:is(.cbi-input-invalid,.cbi-value-error):focus{--tw-ring-color:var(--danger)!important}.cbi-value{gap:calc(var(--spacing) * 6);padding-block:calc(var(--spacing) * 1.5);flex-flow:wrap;display:flex}@media not all and (min-width:48rem){.cbi-value{gap:calc(var(--spacing) * 1.5);padding-block:var(--spacing);flex-direction:column}}.cbi-value.hidden{display:none}.cbi-value+.cbi-value{margin-top:calc(var(--spacing) * 3)}@media not all and (min-width:48rem){.cbi-value+.cbi-value{margin-top:calc(var(--spacing) * 2)}}.cbi-value>.cbi-value-title{padding-top:var(--spacing);text-align:right;--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}@media not all and (min-width:48rem){.cbi-value>.cbi-value-title{text-align:left;width:auto}}@media (min-width:48rem){.cbi-value>.cbi-value-title{flex:0 0 12rem}}.cbi-value>.cbi-value-field{flex:1;max-width:100%}.cbi-value>.cbi-value-field:has(>.cbi-dropdown[disabled]){cursor:not-allowed}.cbi-value>.cbi-value-field .cbi-value-description{margin-top:var(--spacing);padding-left:calc(var(--spacing) * 4);--tw-leading:1;overflow-wrap:break-word;color:var(--text-muted);line-height:1;position:relative}.cbi-value>.cbi-value-field .cbi-value-description:not(:empty):before{content:var(--tw-content);content:var(--tw-content);left:calc(var(--spacing) * -.5);content:var(--tw-content);content:var(--tw-content);width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4);content:var(--tw-content);background-color:var(--info);content:var(--tw-content);-webkit-mask:var(--icon-info) center/cover no-repeat;-webkit-mask:var(--icon-info) center/cover no-repeat;-webkit-mask:var(--icon-info) center/cover no-repeat;mask:var(--icon-info) center/cover no-repeat;display:inline-block;position:absolute}.cbi-value>.cbi-section,.cbi-value>.cbi-tblsection{width:100%}.cbi-dynlist{width:max-content;max-width:calc(var(--spacing) * 120);align-items:flex-start;gap:calc(var(--spacing) * 3);flex-direction:column;display:inline-flex}@media not all and (min-width:48rem){.cbi-dynlist{max-width:100%!important}}.cbi-dynlist .item{pointer-events:auto;cursor:move;align-items:flex-start;gap:calc(var(--spacing) * 2);border-radius:calc(var(--radius-base) * 2);border-style:var(--tw-border-style);border-width:1px;border-color:var(--hairline);background-color:var(--surface);padding-block:calc(var(--spacing) * 3);padding-right:calc(var(--spacing) * 10);padding-left:calc(var(--spacing) * 4);word-break:break-all;--tw-shadow:var(--app-shadow-sm);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);transition-property:transform,box-shadow,opacity,border-color,background-color;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration));--tw-duration:.15s;-webkit-user-select:text;user-select:text;flex-direction:column;align-self:stretch;transition-duration:.15s;display:inline-flex;position:relative;overflow:hidden}@media not all and (min-width:48rem){.cbi-dynlist .item{width:100%;padding-block:calc(var(--spacing) * 2.5);padding-right:calc(var(--spacing) * 8);padding-left:calc(var(--spacing) * 3)}}.cbi-dynlist .item:after{content:var(--tw-content);content:var(--tw-content);top:calc(var(--spacing) * 2.5);content:var(--tw-content);right:calc(var(--spacing) * 2);content:var(--tw-content);content:var(--tw-content);height:calc(var(--spacing) * 6);content:var(--tw-content);width:calc(var(--spacing) * 6);content:var(--tw-content);content:var(--tw-content);cursor:pointer;content:var(--tw-content);content:var(--tw-content);content:var(--tw-content);border-radius:calc(var(--radius-base) * 1.5);content:var(--tw-content);background-color:var(--surface-sunken);content:var(--tw-content);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));content:var(--tw-content);--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium);content:var(--tw-content);color:var(--text-muted);--tw-content:"×";content:var(--tw-content);flex-shrink:0;justify-content:center;align-items:center;display:inline-flex;position:absolute}.cbi-dynlist .item.dragging{--tw-scale-x:95%;--tw-scale-y:95%;--tw-scale-z:95%;scale:var(--tw-scale-x) var(--tw-scale-y);cursor:grabbing;opacity:.5;--tw-shadow:var(--app-shadow-lg);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.cbi-dynlist .item.drag-over{--tw-scale-x:105%;--tw-scale-y:105%;--tw-scale-z:105%;scale:var(--tw-scale-x) var(--tw-scale-y);border-color:var(--brand);background-color:var(--brand-subtle);--tw-shadow:var(--app-shadow-md);--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);--tw-ring-color:var(--brand-subtle)}.cbi-dynlist .item>span,.cbi-dynlist .item>code{pointer-events:none;border-radius:var(--radius-base);width:100%;font-family:var(--font-mono);--tw-leading:var(--leading-relaxed);line-height:var(--leading-relaxed)}.cbi-dynlist .placeholder{word-break:break-all}.cbi-dynlist .add-item{align-items:center;gap:calc(var(--spacing) * 1.5);border-radius:calc(var(--radius-base) * 2);border-style:var(--tw-border-style);--tw-border-style:dashed;border-style:dashed;border-width:1px;border-color:var(--hairline);padding-inline:var(--spacing);padding-block:var(--spacing);transition-property:border-color,background-color;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration));--tw-duration:.15s;background-color:#0000;align-self:stretch;transition-duration:.15s;display:inline-flex}@media (hover:hover){.cbi-dynlist .add-item:hover{border-color:var(--hairline);background-color:var(--surface-sunken)}}.cbi-dynlist .add-item>input{min-width:calc(var(--spacing) * 61);flex:1}.cbi-dynlist .add-item>.cbi-button{min-height:calc(var(--spacing) * 6);min-width:calc(var(--spacing) * 6);cursor:pointer;border-radius:calc(var(--radius-base) * 1.5);padding-inline:calc(var(--spacing) * 2);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium);--tw-shadow:0 0 #0000;box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);flex-shrink:0;justify-content:center;align-items:center;padding-block:0;display:inline-flex}.cbi-dynlist .add-item>.cbi-button:active{--tw-scale-x:95%;--tw-scale-y:95%;--tw-scale-z:95%;scale:var(--tw-scale-x) var(--tw-scale-y)}.cbi-tabmenu{margin-bottom:var(--spacing);align-items:center;gap:var(--spacing);border-radius:calc(var(--radius-base) * 4);border-style:var(--tw-border-style);border-width:1px;border-color:var(--hairline);background-color:var(--surface-sunken);padding:var(--spacing);display:flex;overflow-x:auto}.cbi-tabmenu li{flex-shrink:0;min-width:fit-content;margin:0;list-style-type:none;position:relative}.cbi-tabmenu li[data-errors]:after{content:var(--tw-content);content:var(--tw-content);top:calc(var(--spacing) * -.5);content:var(--tw-content);right:calc(var(--spacing) * -1.5);content:var(--tw-content);z-index:20;content:var(--tw-content);content:var(--tw-content);min-height:calc(var(--spacing) * 4);content:var(--tw-content);min-width:calc(var(--spacing) * 4);content:var(--tw-content);content:var(--tw-content);content:var(--tw-content);content:var(--tw-content);background-color:var(--danger);content:var(--tw-content);padding-inline:calc(var(--spacing) * 1.5);content:var(--tw-content);padding-block:calc(var(--spacing) * .5);content:var(--tw-content);font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height));content:var(--tw-content);--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold);content:var(--tw-content);color:var(--on-brand);--tw-content:attr(data-errors);content:var(--tw-content);border-radius:3.40282e38px;justify-content:center;align-items:center;display:inline-flex;position:absolute}.cbi-tabmenu li[data-errors]>a{border-style:var(--tw-border-style);border-width:1px;border-color:var(--hairline)}.cbi-tabmenu li>a{border-radius:calc(var(--radius-base) * 4);padding-inline:calc(var(--spacing) * 4);padding-block:calc(var(--spacing) * 2);text-align:center;font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium);white-space:nowrap;color:var(--text-muted);text-decoration-line:none;display:block}@media (hover:hover){.cbi-tabmenu li>a:hover{color:var(--text)}}.cbi-tabmenu li.cbi-tab a{background-color:var(--text);--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold);color:var(--surface);--tw-shadow:var(--app-shadow-sm);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}[data-tab-title]{visibility:hidden;height:0;overflow:hidden}[data-tab-active=true]{visibility:visible;height:auto;overflow:visible}#tabmenu{margin-bottom:calc(var(--spacing) * 8);width:100%}.tabs{border-bottom-style:var(--tw-border-style);border-bottom-width:1px;border-color:var(--hairline);align-items:center;gap:0;display:flex;position:relative;overflow-x:auto}.tabs a{padding-inline:calc(var(--spacing) * 8);padding-block:calc(var(--spacing) * 4);text-align:center;font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium);white-space:nowrap;color:var(--text-muted);transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration));--tw-duration:.15s;transition-duration:.15s;display:block}@media (hover:hover){.tabs a:hover{color:var(--text);text-decoration-line:none}}.tabs>li.active{border-bottom-style:var(--tw-border-style);border-bottom-width:2px;border-color:var(--text)}.tabs>li.active>a{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold);color:var(--text)}.cbi-section-node-tabbed{margin-top:calc(var(--spacing) * 6)}.cmdk-trigger{width:calc(var(--spacing) * 8);height:calc(var(--spacing) * 8);cursor:pointer;border-radius:var(--radius-base);border-style:var(--tw-border-style);color:var(--text);--tw-shadow:0 0 #0000;box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);transition-property:transform,translate,scale,rotate;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration));--tw-duration:.15s;background-color:#0000;border-width:0;flex-shrink:0;order:9999;place-items:center;padding:0;transition-duration:.15s;display:grid;position:relative}.cmdk-trigger:before{width:calc(var(--spacing) * 5);height:calc(var(--spacing) * 5);--tw-content:"";content:var(--tw-content);-webkit-mask:var(--icon-search) center/contain no-repeat;-webkit-mask:var(--icon-search) center/contain no-repeat;-webkit-mask:var(--icon-search) center/contain no-repeat;mask:var(--icon-search) center/contain no-repeat;background-color:currentColor}.cmdk-trigger:hover{--tw-scale-x:105%;--tw-scale-y:105%;--tw-scale-z:105%;scale:var(--tw-scale-x) var(--tw-scale-y)}.cmdk-trigger:active{--tw-scale-x:95%;--tw-scale-y:95%;--tw-scale-z:95%;scale:var(--tw-scale-x) var(--tw-scale-y)}.cmdk-trigger:focus-visible{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);--tw-ring-color:var(--focus-ring);--tw-outline-style:none;outline-style:none}.cmdk-panel{top:calc(var(--spacing) * 24);z-index:120;--tw-translate-x:calc(calc(1 / 2 * 100%) * -1);width:min(36rem,100vw - 2.5rem);translate:var(--tw-translate-x) var(--tw-translate-y);border-radius:calc(var(--radius-base) * 2);border-style:var(--tw-border-style);border-width:1px;border-color:var(--hairline);background-color:color-mix(in oklab, var(--surface) 85%, transparent);--tw-shadow:var(--app-shadow-lg);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);--tw-backdrop-blur:blur(var(--blur-xl));--tw-backdrop-saturate:saturate(150%);-webkit-backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);transition-property:opacity,translate;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration));--tw-duration:.15s;--tw-ease:var(--ease-out);transition-duration:.15s;transition-timing-function:var(--ease-out);position:fixed;left:50%;overflow:hidden}@starting-style{.cmdk-panel{--tw-translate-y:calc(var(--spacing) * -2);translate:var(--tw-translate-x) var(--tw-translate-y)}}@starting-style{.cmdk-panel{opacity:0}}@media not all and (min-width:48rem){.cmdk-panel{border-style:var(--tw-border-style);background-color:var(--bg);--tw-shadow:0 0 #0000;width:auto;box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);--tw-backdrop-blur: ;-webkit-backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);--tw-backdrop-saturate:saturate(100%);border-width:0;border-radius:0;flex-direction:column;display:flex;inset:0;translate:none}}.cmdk-panel .cmdk-inputrow{align-items:center;gap:calc(var(--spacing) * 3);padding-inline:calc(var(--spacing) * 5);padding-block:calc(var(--spacing) * 3.5);display:flex}@media not all and (min-width:48rem){.cmdk-panel .cmdk-inputrow{border-bottom-style:var(--tw-border-style);border-bottom-width:1px;border-color:var(--hairline);background-color:var(--surface);padding-inline:calc(var(--spacing) * 4);padding-block:calc(var(--spacing) * 2.5)}}.cmdk-panel .cmdk-inputrow:before{width:calc(var(--spacing) * 5);height:calc(var(--spacing) * 5);color:var(--text-subtle);--tw-content:"";content:var(--tw-content);-webkit-mask:var(--icon-search) center/contain no-repeat;-webkit-mask:var(--icon-search) center/contain no-repeat;-webkit-mask:var(--icon-search) center/contain no-repeat;mask:var(--icon-search) center/contain no-repeat;background-color:currentColor;flex-shrink:0}.cmdk-panel .cmdk-inputrow .cmdk-input{border-style:var(--tw-border-style);width:100%;min-width:0;font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height));color:var(--text);background-color:#0000;border-width:0;border-radius:0;flex:1;padding:0}.cmdk-panel .cmdk-inputrow .cmdk-input::placeholder{color:var(--text-subtle)}.cmdk-panel .cmdk-inputrow .cmdk-input{--tw-shadow:0 0 #0000;box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.cmdk-panel .cmdk-inputrow .cmdk-input:focus{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(0px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);--tw-outline-style:none;outline-style:none}.cmdk-panel .cmdk-inputrow .cmdk-clear{width:calc(var(--spacing) * 5);height:calc(var(--spacing) * 5);cursor:pointer;border-radius:calc(var(--radius-base) * .75);border-style:var(--tw-border-style);color:var(--text-subtle);--tw-shadow:0 0 #0000;box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration));--tw-duration:.15s;background-color:#0000;border-width:0;flex-shrink:0;place-items:center;padding:0;transition-duration:.15s;display:grid}.cmdk-panel .cmdk-inputrow .cmdk-clear:before{width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4);--tw-content:"";content:var(--tw-content);-webkit-mask:var(--icon-x) center/contain no-repeat;-webkit-mask:var(--icon-x) center/contain no-repeat;-webkit-mask:var(--icon-x) center/contain no-repeat;mask:var(--icon-x) center/contain no-repeat;background-color:currentColor}.cmdk-panel .cmdk-inputrow .cmdk-clear:hover{color:var(--text)}.cmdk-input:placeholder-shown~:is(.cmdk-panel .cmdk-inputrow .cmdk-clear){display:none}.cmdk-panel .cmdk-inputrow .cmdk-cancel{cursor:pointer;border-style:var(--tw-border-style);padding:var(--spacing);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));color:var(--brand);--tw-shadow:0 0 #0000;box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);background-color:#0000;border-width:0;flex-shrink:0;display:none}@media not all and (min-width:48rem){.cmdk-panel .cmdk-inputrow .cmdk-cancel{display:block}}.cmdk-panel .cmdk-list{max-height:calc(var(--spacing) * 80);border-top-style:var(--tw-border-style);border-top-width:1px;border-color:var(--hairline);padding:calc(var(--spacing) * 2);overflow-y:auto}.cmdk-panel .cmdk-list:empty{display:none}@media not all and (min-width:48rem){.cmdk-panel .cmdk-list{overscroll-behavior:contain;flex:1;max-height:none}}.cmdk-panel .cmdk-list .cmdk-row{align-items:center;gap:calc(var(--spacing) * 3);border-radius:calc(var(--radius-base) * 1.5);padding-inline:calc(var(--spacing) * 3);padding-block:calc(var(--spacing) * 2);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));color:var(--text);text-decoration-line:none;display:flex}.cmdk-panel .cmdk-list .cmdk-row .cmdk-title{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.cmdk-panel .cmdk-list .cmdk-row .cmdk-group-name{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height));color:var(--text-subtle);flex-shrink:0;margin-left:auto}.cmdk-panel .cmdk-list .cmdk-row mark{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold);color:var(--brand);background-color:#0000}.cmdk-panel .cmdk-list .cmdk-row.is-selected{background-color:var(--brand-subtle)}.cmdk-panel .cmdk-list .cmdk-row.is-selected .cmdk-title{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium);color:var(--brand)}.cmdk-panel .cmdk-list .cmdk-empty{padding-inline:calc(var(--spacing) * 3);padding-block:calc(var(--spacing) * 6);text-align:center;font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));color:var(--text-subtle)}.cmdk-panel .cmdk-footer{align-items:center;gap:calc(var(--spacing) * 4);border-top-style:var(--tw-border-style);border-top-width:1px;border-color:var(--hairline);padding-inline:calc(var(--spacing) * 4);padding-block:calc(var(--spacing) * 2);font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height));color:var(--text-subtle);display:flex}@media not all and (min-width:48rem){.cmdk-panel .cmdk-footer{display:none}}.cmdk-panel .cmdk-footer .cmdk-hint-close{margin-left:auto}.cmdk-panel .cmdk-footer kbd{border-radius:calc(var(--radius-base) * .75);border-style:var(--tw-border-style);border-width:1px;border-color:var(--hairline);background-color:var(--surface-sunken);padding-inline:calc(var(--spacing) * 1.5);font-family:var(--font-mono);color:var(--text-muted);padding-block:1px;font-size:11px}.cmdk-title:has(>.cmdk-parent){align-items:baseline;display:flex}.cmdk-parent{text-overflow:ellipsis;white-space:nowrap;--tw-font-weight:var(--font-weight-normal);min-width:0;font-weight:var(--font-weight-normal);color:var(--text-subtle);overflow:hidden}.cmdk-label{text-overflow:ellipsis;white-space:nowrap;flex-shrink:0;max-width:calc(100% - 1.5rem);overflow:hidden}.cmdk-label:before{padding-inline:calc(var(--spacing) * 1.5);--tw-font-weight:var(--font-weight-normal);font-weight:var(--font-weight-normal);color:var(--text-subtle);--tw-content:"›";content:var(--tw-content)}@supports not ((-webkit-backdrop-filter:blur(1px)) or (backdrop-filter:blur(1px))){.cmdk-panel{background-color:var(--surface)}}@media (prefers-reduced-transparency:reduce){.cmdk-panel{background-color:var(--surface)}}body[data-bg] .page-bg{--page-bg:var(--main-bg);--page-bg-lqip:var(--main-bg-lqip)}body[data-bg] #maincontent{background:var(--bg);position:relative}@supports (color:color-mix(in lab, red, red)){body[data-bg] #maincontent{background:color-mix(in srgb,var(--bg) 55%,transparent)}}body[data-bg] header,body[data-bg] .sidebar-panel-inner{-webkit-backdrop-filter:blur(var(--main-bg-blur,20px)) saturate(150%);backdrop-filter:blur(var(--main-bg-blur,20px)) saturate(150%);background:var(--bg)}@supports (color:color-mix(in lab, red, red)){body[data-bg] header,body[data-bg] .sidebar-panel-inner{background:color-mix(in srgb,var(--bg) var(--main-bg-alpha,67%),transparent)}}body[data-bg] .page-bg:before{pointer-events:none;z-index:1;--tw-content:"";content:var(--tw-content);background:var(--bg);position:absolute;inset:0}@supports (color:color-mix(in lab, red, red)){body[data-bg] .page-bg:before{background:color-mix(in srgb,var(--bg) var(--main-bg-scrim,20%),transparent)}}body[data-bg] #maincontent .cbi-section{background:var(--surface)}@supports (color:color-mix(in lab, red, red)){body[data-bg] #maincontent .cbi-section{background:color-mix(in srgb,var(--surface) var(--main-bg-alpha,67%),transparent)}}.hidden{display:none!important}@media (min-width:48rem){.left{text-align:left!important}}.left:not(td){text-align:left!important}@media (min-width:48rem){.right{text-align:right!important}}.right:not(td){text-align:right!important}@media (min-width:48rem){.top{vertical-align:top!important}}.top:not(td){vertical-align:top!important}@media (min-width:48rem){.bottom{vertical-align:bottom!important}}.bottom:not(td){vertical-align:bottom!important}@media (min-width:48rem){.center{text-align:center!important}}.center:not(td){text-align:center!important}@media (min-width:48rem){.middle{vertical-align:middle!important}}.middle:not(td){vertical-align:middle!important}@media (min-width:48rem){.nowrap:not(span){white-space:nowrap}}.nowrap:not(span):not(td){white-space:nowrap}@keyframes aurora-fade-in{0%{opacity:0}}.fade-in{animation:.25s both aurora-fade-in}#view>:not(.spinning),#view>.cbi-map>.cbi-map-tabbed>[data-tab-active=true],.cbi-section-node-tabbed>[data-tab-active=true],#topmenu:not([data-restored]),#sidebar-list:not([data-restored])>*,footer{animation:.25s backwards aurora-fade-in}.fade-out{pointer-events:none;opacity:0;transition-property:opacity;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration));--tw-duration:.25s;transition-duration:.25s}.spinning{display:inline-block;position:relative;padding-left:calc(var(--spacing) * 8)!important}.spinning:before{content:var(--tw-content);content:var(--tw-content);content:var(--tw-content);content:var(--tw-content);width:calc(var(--spacing) * 5);height:calc(var(--spacing) * 5);content:var(--tw-content);--tw-translate-y:calc(calc(1 / 2 * 100%) * -1);translate:var(--tw-translate-x) var(--tw-translate-y);content:var(--tw-content);animation:var(--animate-spin);content:var(--tw-content);content:var(--tw-content);-webkit-mask:var(--icon-spinning) center/cover no-repeat;-webkit-mask:var(--icon-spinning) center/cover no-repeat;-webkit-mask:var(--icon-spinning) center/cover no-repeat;mask:var(--icon-spinning) center/cover no-repeat;background-color:currentColor;position:absolute;top:50%;left:6px}#view>.spinning:first-child{min-height:calc(var(--spacing) * 48);place-items:center;width:fit-content;margin-inline:auto;display:grid}@media not all and (min-width:48rem){#view>.spinning:first-child{min-height:calc(100dvh - 4rem)}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-property:none!important;animation:none!important}.spinning:before{animation:var(--animate-spin)!important}}@media (prefers-reduced-transparency:reduce){*,:before,:after{-webkit-backdrop-filter:none!important;backdrop-filter:none!important}:root{--mega-menu-bg:var(--surface-overlay)}body[data-bg]{--main-bg-alpha:100%}}@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-content{syntax:"*";inherits:false;initial-value:""}@property --tw-leading{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-tracking{syntax:"*";inherits:false}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-duration{syntax:"*";inherits:false}@property --tw-ease{syntax:"*";inherits:false}@property --tw-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-z{syntax:"*";inherits:false;initial-value:0}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"";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:"";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:"";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-backdrop-blur{syntax:"*";inherits:false}@property --tw-backdrop-brightness{syntax:"*";inherits:false}@property --tw-backdrop-contrast{syntax:"*";inherits:false}@property --tw-backdrop-grayscale{syntax:"*";inherits:false}@property --tw-backdrop-hue-rotate{syntax:"*";inherits:false}@property --tw-backdrop-invert{syntax:"*";inherits:false}@property --tw-backdrop-opacity{syntax:"*";inherits:false}@property --tw-backdrop-saturate{syntax:"*";inherits:false}@property --tw-backdrop-sepia{syntax:"*";inherits:false}@property --tw-scale-x{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-y{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-z{syntax:"*";inherits:false;initial-value:1}@property --tw-space-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-gradient-position{syntax:"*";inherits:false}@property --tw-gradient-from{syntax:"";inherits:false;initial-value:#0000}@property --tw-gradient-via{syntax:"";inherits:false;initial-value:#0000}@property --tw-gradient-to{syntax:"";inherits:false;initial-value:#0000}@property --tw-gradient-stops{syntax:"*";inherits:false}@property --tw-gradient-via-stops{syntax:"*";inherits:false}@property --tw-gradient-from-position{syntax:"";inherits:false;initial-value:0%}@property --tw-gradient-via-position{syntax:"";inherits:false;initial-value:50%}@property --tw-gradient-to-position{syntax:"";inherits:false;initial-value:100%}@property --tw-border-spacing-x{syntax:"";inherits:false;initial-value:0}@property --tw-border-spacing-y{syntax:"";inherits:false;initial-value:0}@keyframes spin{to{transform:rotate(360deg)}} diff --git a/luci-theme-aurora/htdocs/luci-static/resources/menu-aurora.js b/luci-theme-aurora/htdocs/luci-static/resources/menu-aurora.js index a47030301..0428975c7 100644 --- a/luci-theme-aurora/htdocs/luci-static/resources/menu-aurora.js +++ b/luci-theme-aurora/htdocs/luci-static/resources/menu-aurora.js @@ -1 +1 @@ -"use strict";"require baseclass";"require ui";const PALETTE_RECENTS_KEY="aurora.paletteRecents";return baseclass.extend({__init__(){ui.menu.load().then(e=>this.render(e)).finally(()=>{for(const e of document.querySelectorAll("[data-restored]"))e.inert=!1}),this.initNavigationControls(),this.initUciIndicator()},initUciIndicator(){const e=ui.changes?.setIndicator;e&&(ui.changes.setIndicator=function(t){e.call(this,t),document.querySelector('[data-indicator="uci-changes"]')?.setAttribute("data-count",t||0)})},initNavigationControls(){const e=document.querySelector("#mobile-menu-overlay"),t=document.querySelector("#navigation-toggle");if(!t||!e)return;const a=e.querySelector("#mobile-nav-list"),n=window.matchMedia("(min-width: 768px)"),i="aurora.sidebarCollapsed",s=()=>n.matches&&"sidebar"===document.body.dataset.navType,o=e=>{const a=s();t.classList.toggle("is-expanded",e&&!n.matches),t.setAttribute("aria-expanded",e?"true":"false"),t.setAttribute("aria-controls",a?"sidebar-panel":"mobile-menu-overlay");const i=e&&!a?_("Close"):_("Navigation");t.setAttribute("title",i),t.setAttribute("aria-label",i)},r=()=>{e.classList.contains("mobile-menu-open")&&(e.classList.remove("mobile-menu-open"),document.body.classList.remove("mobile-navigation-open"),document.body.style.overflow="",this.resetNavigationGroups(a),o(!1))};this.closeMobileNavigation=r;const l=t=>{if(s()){r();const e=!t;return document.body.classList.toggle("sidebar-collapsed",e),localStorage.setItem(i,e),void o(t)}if(n.matches)return r(),void o(!1);e.classList.toggle("mobile-menu-open",t),document.body.classList.toggle("mobile-navigation-open",t),document.body.style.overflow=t?"hidden":"",t?this.expandActiveNavigationGroup(a):this.resetNavigationGroups(a),o(t)},c=()=>{if(r(),s()){const e="true"===localStorage.getItem(i);return document.body.classList.toggle("sidebar-collapsed",e),void o(!e)}o(!1)};t.addEventListener("click",t=>{t.stopPropagation(),l(!(s()?!document.body.classList.contains("sidebar-collapsed"):!n.matches&&e.classList.contains("mobile-menu-open")))}),e.addEventListener("click",t=>{t.target===e&&l(!1)}),document.addEventListener("keydown",t=>{"Escape"===t.key&&e.classList.contains("mobile-menu-open")&&l(!1)}),n.addEventListener("change",c),c(),document.addEventListener("click",t=>{const a=t.target?.closest?.(".navigation-direct, .navigation-sublink, .mobile-nav-logout");a&&e.contains(a)&&l(!1)})},renderMobileMenu(e){const t=document.querySelector("#mobile-nav-list"),a=document.querySelector("#mobile-nav-footer-action");t&&(t.innerHTML=""),a&&(a.innerHTML=""),t&&(e.forEach(e=>{e.isLogout?a&&a.appendChild(E("a",{class:"mobile-nav-logout",href:e.href},[e.title])):t.appendChild(this.renderNavigationItem(e,"mobile"))}),this.bindNavigationAccordion(t))},render(e){this.tree=e,this.renderModeMenu(e),this.renderTabs(e),this.cacheNav()},cacheNav(){const e={};for(const t of document.querySelectorAll("#topmenu, #sidebar-list, #sidebar-footer"))t.firstChild&&(e[t.id]=t.innerHTML);try{sessionStorage.setItem("aurora.nav",JSON.stringify([document.body.dataset.navStamp,e]))}catch{}},renderTabs(e){if(L.env.dispatchpath.length<3)return;let t=e,a="";for(let e=0;e<3&&t;e++){const n=L.env.dispatchpath[e];t=t.children?.[n],a+=(a?"/":"")+n}t&&this.renderTabMenu(t,a)},syncRoute(){if(!this.tree)return;const e=new URL(L.url(...L.env.dispatchpath.slice(0,3)),location.href).pathname;document.querySelectorAll("#topmenu a, .desktop-menu-canvas a, #sidebar-list a, #mobile-nav-list a").forEach(t=>{const a=t.pathname===e&&!t.getAttribute("href").startsWith("#");t.classList.toggle("is-active-page",a),a?t.setAttribute("aria-current","page"):t.removeAttribute("aria-current")}),document.querySelectorAll(".navigation-group").forEach(e=>{const t=!!e.querySelector("a.is-active-page"),a=e.querySelector(".navigation-group-toggle");e.classList.toggle("is-active-group",t),t?a?.setAttribute("aria-current","location"):a?.removeAttribute("aria-current")});for(const e of[document.querySelector("#sidebar-list"),document.querySelector("#mobile-nav-list")])this.resetNavigationGroups(e),this.expandActiveNavigationGroup(e);window.auroraCrumb?.();const t=document.querySelector("#tabmenu");t&&(t.innerHTML="",t.style.display="none"),this.renderTabs(this.tree)},closeSurfaces(){this.hideDesktopNav(),this.paletteList&&this.closePalette(),this.closeMobileNavigation?.()},renderTabMenu(e,t,a=0){const n=document.querySelector("#tabmenu"),i=E("ul",{class:"tabs"}),s=ui.menu.getChildren(e);let o=null;return s.forEach(e=>{const n=L.env.dispatchpath[3+a]===e.name;i.appendChild(E("li",{class:`tabmenu-item-${e.name}${n?" active":""}`},[E("a",{href:L.url(t,e.name)},[_(e.title)])])),n&&(o=e)}),i.children.length?(n.appendChild(i),n.style.display="",o&&this.renderTabMenu(o,`${t}/${o.name}`,a+1),i):E([])},renderMainMenu(e,t,a=0,n=null){const i=a?E("ul",{class:"desktop-nav-list"}):document.querySelector("#topmenu"),s=ui.menu.getChildren(e);if(a>1)return E([]);if(0===a){const e=document.body?.dataset?.navType||"mega-menu";if("sidebar"===e)return this.renderSidebar(n||[]),i||E([]);if(i&&(i.innerHTML=""),!i||!s.length)return E([]);"mega-menu"===e?this.initMegaMenu(s,t,i):this.initDropdown(s,t,i)}else{if(!s.length)return E([]);s.forEach(a=>{const n=this.isActivePath(e.name,a.name),s={class:n?"is-active-page":"",href:L.url(t,a.name)};n&&(s["aria-current"]="page"),i.appendChild(E("li",{},[E("a",s,[_(a.title)])]))})}return i.style.display="",i},isActivePath:(e,t)=>L.env.dispatchpath[1]===e&&(null==t||L.env.dispatchpath[2]===t),buildNavigationModel(e,t){return e.filter(e=>e?.name).map(e=>{const a=ui.menu.getChildren(e).filter(e=>e?.name).map(a=>({name:a.name,title:_(a.title),href:L.url(t,e.name,a.name),isActivePage:this.isActivePath(e.name,a.name)})),n=a.length>0,i=this.isActivePath(e.name);return{name:e.name,title:_(e.title),href:L.url(t,e.name),hasChildren:n,isLogout:"logout"===e.name,isActiveGroup:n&&i,isActivePage:!n&&i,activePage:a.find(e=>e.isActivePage)||null,pages:a}})},navigationSubmenuId:(e,t)=>`${e}-submenu-${encodeURIComponent(String(t))}`,renderNavigationItem(e,t){const a="mobile"===t,n=a?"mobile-nav-item":"";if(!e.hasChildren){const t={class:"navigation-direct nav-row"+(e.isActivePage?" is-active-page":""),href:e.href};return e.isActivePage&&(t["aria-current"]="page"),t["data-section"]=e.name,E("li",{class:n},[E("a",t,[E("span",{class:"nav-icon","aria-hidden":"true"}),E("span",{class:"nav-label"},[e.title])])])}const i=this.navigationSubmenuId(t,e.name),s=["navigation-group",a?"mobile-nav-item":"sidebar-group",e.isActiveGroup?"is-active-group":"",e.isActiveGroup?"is-expanded":""].filter(Boolean),o={class:"navigation-group-toggle nav-row",type:"button","aria-expanded":e.isActiveGroup?"true":"false","aria-controls":i};e.isActiveGroup&&(o["aria-current"]="location"),o["data-section"]=e.name;const r=E("ul",{class:a?"navigation-submenu-list mobile-nav-submenu-list":"navigation-submenu-list sidebar-submenu"});e.pages.forEach(e=>{const t={class:["navigation-sublink",a?"mobile-nav-sublink":"",e.isActivePage?"is-active-page":""].filter(Boolean).join(" "),href:e.href};e.isActivePage&&(t["aria-current"]="page"),r.appendChild(E("li",{class:a?"mobile-nav-subitem":""},[E("a",t,[e.title])]))});const l={class:a?"navigation-group-region mobile-nav-submenu":"navigation-group-region sidebar-section",id:i,"aria-hidden":e.isActiveGroup?"false":"true"};return e.isActiveGroup||(l.inert=""),E("li",{class:s.join(" ")},[E("button",o,[E("span",{class:"nav-icon","aria-hidden":"true"}),E("span",{class:"nav-category-label"},[e.title])]),E("div",l,[r])])},setNavigationGroupExpanded(e,t){const a=e.querySelector(".navigation-group-toggle"),n=e.querySelector(".navigation-group-region");e.classList.toggle("is-expanded",t),a?.setAttribute("aria-expanded",t?"true":"false"),n?.setAttribute("aria-hidden",t?"false":"true"),t?n?.removeAttribute("inert"):n?.setAttribute("inert","")},setExclusiveNavigationGroupExpanded(e,t,a){e&&t&&(a&&e.querySelectorAll(".navigation-group.is-expanded").forEach(e=>{e!==t&&this.setNavigationGroupExpanded(e,!1)}),this.setNavigationGroupExpanded(t,a))},resetNavigationGroups(e){e?.querySelectorAll(".navigation-group.is-expanded").forEach(e=>this.setNavigationGroupExpanded(e,!1))},expandActiveNavigationGroup(e){const t=e?.querySelector(".navigation-group.is-active-group");t&&this.setExclusiveNavigationGroupExpanded(e,t,!0)},bindNavigationAccordion(e){e&&"true"!==e.dataset.accordionBound&&(e.dataset.accordionBound="true",e.addEventListener("click",t=>{const a=t.target?.closest?.(".navigation-group-toggle"),n=a?.closest?.(".navigation-group");n&&e.contains(n)&&(t.preventDefault(),t.stopPropagation(),this.setExclusiveNavigationGroupExpanded(e,n,!n.classList.contains("is-expanded")))}))},renderSidebar(e){const t=document.querySelector("#sidebar-list"),a=document.querySelector("#sidebar-footer");t&&(t.innerHTML=""),a&&(a.innerHTML=""),t&&(e.forEach(e=>{e.isLogout?(a||t).appendChild(E("a",{class:"nav-link",href:e.href},[e.title])):t.appendChild(this.renderNavigationItem(e,"sidebar"))}),this.bindNavigationAccordion(t),window.auroraCrumb?.())},initPalette(e){const t=document.querySelector("#cmdk-trigger");if(!t||this.paletteIndex)return;this.paletteIndex=[];let a=null;e.forEach(e=>{e.isLogout?a=e:e.hasChildren?e.pages.forEach(t=>this.paletteIndex.push({title:t.title,name:`${e.name}/${t.name}`,group:e.title,href:t.href})):this.paletteIndex.push({title:e.title,name:e.name,group:null,href:e.href})}),[["light",_("Light Mode")],["dark",_("Dark Mode")],["device",_("Automatic")]].forEach(([e,t])=>this.paletteIndex.push({title:t,name:`theme ${e}`,group:_("Design"),mode:e})),a&&this.paletteIndex.push({title:a.title,name:a.name,group:null,href:a.href,isLogout:!0});const n=/Mac|iP(ad|hone|od)/.test(navigator.platform);this.paletteKey=n?"⌘K":"Ctrl+K",t.setAttribute("aria-keyshortcuts",n?"Meta+K":"Control+K"),t.setAttribute("aria-expanded","false"),t.addEventListener("click",()=>this.togglePalette()),this.paletteTrigger=t,document.addEventListener("keydown",e=>{e.isComposing||229===e.keyCode||((n?!e.metaKey||e.ctrlKey:!e.ctrlKey||e.metaKey)||e.altKey||e.shiftKey||"k"!==(e.key||"").toLowerCase()?"Escape"===e.key&&this.palettePanel&&!this.palettePanel.hidden&&this.closePalette():(e.preventDefault(),this.togglePalette()))}),this.onPaletteAway=e=>{this.palettePanel.contains(e.target)||t.contains(e.target)||this.closePalette()}},buildPalette(){const e=E("input",{class:"cmdk-input",type:"text",enterkeyhint:"go",placeholder:_("Type to filter…"),"aria-label":_("Type to filter…"),autocomplete:"off",spellcheck:"false",role:"combobox","aria-expanded":"true","aria-autocomplete":"list","aria-controls":"cmdk-list"}),t=E("div",{class:"cmdk-list",id:"cmdk-list",role:"listbox"}),a=E("button",{class:"cmdk-clear",type:"button","aria-label":_("Clear")});a.addEventListener("click",()=>{e.value="",this.renderPaletteResults(""),e.focus()});const n=E("button",{class:"cmdk-cancel",type:"button"},[_("Cancel")]);n.addEventListener("click",()=>this.closePalette());const i=E("div",{id:"cmdk-panel",class:"cmdk-panel",role:"dialog","aria-modal":"true","aria-label":_("Navigation"),hidden:""},[E("div",{class:"cmdk-inputrow"},[e,a,n]),t,E("div",{class:"cmdk-footer"},[E("kbd",{},["↑↓"]),E("kbd",{},["↵"]),E("kbd",{},[">"]),E("kbd",{},["esc"]),E("span",{class:"cmdk-hint-close"},[E("kbd",{},[this.paletteKey])])])]);e.addEventListener("input",()=>this.renderPaletteResults(e.value)),e.addEventListener("keydown",e=>{e.isComposing||229===e.keyCode||("ArrowDown"===e.key||"ArrowUp"===e.key?(e.preventDefault(),this.movePaletteSelection("ArrowDown"===e.key?1:-1)):"Enter"===e.key&&t.querySelector(".is-selected")?.click())}),t.addEventListener("mousemove",e=>{const t=e.target?.closest?.(".cmdk-row");t&&!t.classList.contains("is-selected")&&this.setPaletteSelection(t)}),t.addEventListener("click",a=>{const n=a.target?.closest?.(".cmdk-row");if(!n)return;const i=n.dataset.mode;i?(a.preventDefault(),setTheme(i),syncSwitchers(),this.renderPaletteResults(e.value),this.setPaletteSelection(t.querySelector(`[data-mode="${i}"]`)),e.focus()):n.dataset.name&&this.recordPaletteRecent(n.dataset.name)}),i.addEventListener("keydown",i=>{if("Tab"!==i.key)return;const s=[e,a,...t.querySelectorAll("a"),n].filter(e=>e.getClientRects().length),o=i.shiftKey?s[0]:s.at(-1);document.activeElement===o&&(i.preventDefault(),(i.shiftKey?s.at(-1):s[0]).focus())}),document.body.appendChild(i),this.paletteTrigger.setAttribute("aria-controls",i.id),this.palettePanel=i,this.paletteInput=e,this.paletteList=t},fuzzyMatch(e,t){const a=String(t).toLowerCase();let n=null;for(let t=a.indexOf(e[0]);t>=0;t=a.indexOf(e[0],t+1)){let i=t,s=0,o=0;const r=[];for(const t of e){if(" "===t){o=0;continue}const e=a.indexOf(t,i);if(e<0){r.length=0;break}o=e===i&&r.length?o+1:1,s+=1+o+(e===i&&r.length?4:0)+(0===e||" "===a[e-1]||"/"===a[e-1]?3:0);const n=e+t.length,l=r[r.length-1];l&&l[1]===e?l[1]=n:r.push([e,n]),i=n}s-=.02*a.length,r.length&&(!n||s>n.score)&&(n={score:s,ranges:r})}return n},readPaletteRecents(){try{const e=JSON.parse(localStorage.getItem(PALETTE_RECENTS_KEY));return Array.isArray(e)?e.filter(e=>"string"==typeof e):[]}catch{return[]}},recordPaletteRecent(e){try{localStorage.setItem(PALETTE_RECENTS_KEY,JSON.stringify([e,...this.readPaletteRecents().filter(t=>t!==e)]))}catch{}},paletteBrowseRecents(){return this.readPaletteRecents().filter(e=>this.paletteIndex.some(t=>t.name===e&&!t.mode&&!t.isLogout))},matchPaletteEntry(e,t){if(!e)return{score:0,ranges:null};const a=this.fuzzyMatch(e,t.title);if(a)return{score:a.score+12,ranges:a.ranges};const n=this.fuzzyMatch(e,t.name)||(t.group?this.fuzzyMatch(e,t.group):null);return n&&{score:n.score,ranges:null}},collectPaletteMatches(e){let t=e.trim().toLowerCase();const a=">"===t[0]||">"===t[0];a&&(t=t.slice(1).trim());const n=t||a?[]:this.paletteBrowseRecents(),i=[];for(const e of this.paletteIndex){if(a&&!e.mode&&!e.isLogout)continue;if(e.isLogout&&!a&&!t)continue;const s=this.matchPaletteEntry(t,e);if(!s)continue;const o=n.indexOf(e.name);i.push({page:e,score:o<0?s.score:n.length-o,ranges:s.ranges})}return(t||n.length)&&i.sort((e,t)=>t.score-e.score),i},renderPaletteResults(e){const t=this.collectPaletteMatches(e),a=localStorage.getItem("aurora.theme")||"device";this.paletteInput.removeAttribute("aria-activedescendant"),this.paletteList.replaceChildren(),t.length?(t.forEach(({page:e,ranges:t},n)=>{const i=e.mode&&e.mode===a,s={class:"cmdk-row",id:`cmdk-option-${n}`,role:"option","aria-selected":"false",href:e.href||"#"};e.mode?s["data-mode"]=e.mode:e.isLogout||(s["data-name"]=e.name),i&&(s["aria-current"]="true"),this.paletteList.appendChild(E("a",s,[E("span",{class:"cmdk-title"},this.highlightPaletteMatch(e.title,t)),i?E("span",{class:"cmdk-group-name","aria-hidden":"true"},[E("mark",{},["✓"])]):e.group?E("span",{class:"cmdk-group-name"},[e.group]):""]))}),this.setPaletteSelection(this.paletteList.firstChild)):this.paletteList.appendChild(E("div",{class:"cmdk-empty"},[_("No entries available")]))},highlightPaletteMatch(e,t){if(!t||e.toLowerCase().length!==e.length)return[e];const a=[];let n=0;return t.forEach(([t,i])=>{a.push(e.slice(n,t),E("mark",{},[e.slice(t,i)])),n=i}),a.push(e.slice(n)),a},setPaletteSelection(e){const t=this.paletteList.querySelector(".is-selected");t?.classList.remove("is-selected"),t?.setAttribute("aria-selected","false"),e.classList.add("is-selected"),e.setAttribute("aria-selected","true"),this.paletteInput.setAttribute("aria-activedescendant",e.id)},movePaletteSelection(e){const t=[...this.paletteList.querySelectorAll(".cmdk-row")];if(!t.length)return;const a=t.findIndex(e=>e.classList.contains("is-selected")),n=t[(a+e+t.length)%t.length];this.setPaletteSelection(n),n.scrollIntoView({block:"nearest"})},togglePalette(){this.palettePanel||this.buildPalette(),this.palettePanel.hidden?this.openPalette():this.closePalette()},openPalette(){this.paletteReturnFocus=document.activeElement,this.paletteTrigger.setAttribute("aria-expanded","true"),this.palettePanel.hidden=!1,this.paletteInput.value="",this.renderPaletteResults(""),this.paletteInput.focus(),document.addEventListener("pointerdown",this.onPaletteAway)},closePalette(){this.paletteTrigger.setAttribute("aria-expanded","false"),this.palettePanel.hidden=!0,document.removeEventListener("pointerdown",this.onPaletteAway),this.paletteReturnFocus?.isConnected&&this.paletteReturnFocus.focus(),this.paletteReturnFocus=null},buildDropdownItem(e,t,a){const n=ui.menu.getChildren(e),i=n.length>0,s=E("li",{},[E("a",{class:"menu",href:i?"#":L.url(t,e.name)},[_(e.title)])]);a.appendChild(s);const o=s.querySelector("a");let r=null;if(i){const a=this.renderMainMenu(e,`${t}/${e.name}`,1),i=[a];if("mega-menu"===document.body?.dataset?.navType){a.style.setProperty("--menu-rows",Math.max(6,Math.ceil(n.length/4))),i.unshift(E("div",{class:"desktop-nav-anchor"},[E("span",{class:"desktop-nav-title","data-section":e.name},[_(e.title)])]));const t=document.querySelector(".desktop-menu-container > .desktop-menu-board");t&&i.push(t.cloneNode(!0))}r=E("div",{class:"desktop-nav"},i),s.appendChild(r),o.addEventListener("click",e=>e.preventDefault())}return{li:s,nav:r,menuLink:o,hasSubmenu:i}},deactivateDesktopNavExcept(e,t){document.querySelectorAll(".desktop-nav").forEach(t=>{t!==e&&t.classList.remove("active")}),document.querySelectorAll("#topmenu a").forEach(e=>{e!==t&&e.classList.remove("menu-active")})},initMegaMenu(e,t,a){const n=document.querySelector(".desktop-menu-container"),i=n?.querySelector(".desktop-menu-canvas"),s=document.querySelector(".desktop-menu-overlay"),o=document.querySelector("header");if(!o||!s)return;let r=null,l=null,c=0,d=300;const u=()=>{c||(o.querySelectorAll(".desktop-nav").forEach(e=>c=Math.max(c,e.offsetHeight)),d=Math.min(480,Math.max(240,Math.round(c/2)))),o.style.setProperty("--mega-menu-height",`${c}px`),o.style.setProperty("--mega-menu-duration",`${d}ms`)};let h=null;window.addEventListener("resize",()=>{c=0,clearTimeout(h),h=setTimeout(u,150)});let m={x:0,y:0},p=0,g={x:0,y:0};o.addEventListener("mousemove",e=>{e.timeStamp-p>60&&(m=g,p=e.timeStamp),g={x:e.clientX,y:e.clientY}}),e.forEach(e=>{const{li:c,nav:d,menuLink:h,hasSubmenu:p}=this.buildDropdownItem(e,t,a);p&&(i&&i.appendChild(d),c.addEventListener("mouseenter",()=>{l&&(clearTimeout(l),l=null);const e=n?.classList.contains("active"),t=e?(()=>{const e=o.querySelector(".desktop-nav.active");if(!e)return!1;const t=g.x-m.x,a=g.y-m.y;if(a<=2)return!1;const n=e.getBoundingClientRect();if(g.y>=n.top)return!0;const i=g.x+t*(n.top-g.y)/a;return i>=n.left-24&&i<=n.right+24})()?260:0:100;r=setTimeout(()=>{const e=d.classList.contains("active");this.deactivateDesktopNavExcept(d,h),e||(h.classList.add("menu-active"),n&&(u(),n.dataset.closeToken="",n.classList.add("active"),n.classList.remove("closing"),s.classList.add("active")),d.classList.add("active"))},t)}),c.addEventListener("mouseleave",()=>{r&&(clearTimeout(r),r=null)}))});const v=window.requestIdleCallback||(e=>setTimeout(e,1));(document.fonts?.ready||Promise.resolve()).then(()=>v(()=>{c||u()}));const f=()=>{r&&(clearTimeout(r),r=null),l=setTimeout(()=>{this.hideDesktopNav()},150)};o.addEventListener("mouseleave",f),s.addEventListener("mouseenter",f),o.addEventListener("mouseenter",()=>{l&&(clearTimeout(l),l=null)}),s.addEventListener("click",()=>this.hideDesktopNav())},initDropdown(e,t,a){e.forEach(e=>{const{li:n,nav:i,menuLink:s,hasSubmenu:o}=this.buildDropdownItem(e,t,a);if(!o)return;let r=null,l=null;n.addEventListener("mouseenter",()=>{l&&(clearTimeout(l),l=null),r=setTimeout(()=>{this.deactivateDesktopNavExcept(i,s),s.classList.add("menu-active"),i.classList.add("active")},100)}),n.addEventListener("mouseleave",()=>{r&&(clearTimeout(r),r=null),l=setTimeout(()=>{i.classList.remove("active"),s.classList.remove("menu-active")},150)})})},hideDesktopNav(){this.deactivateDesktopNavExcept(null,null);const e=document.querySelector(".desktop-menu-container");if(document.querySelector(".desktop-menu-overlay")?.classList.remove("active"),!e)return;if(!e.classList.contains("active")&&!e.classList.contains("closing"))return;e.classList.add("closing"),e.classList.remove("active");const t=e.querySelector(".desktop-menu-sheet"),a=`${Date.now()}-${Math.random()}`;e.dataset.closeToken=a;let n=null;const i=s=>{if(!s?.target||s.target===t){if(e.dataset.closeToken!==a)return null!==n&&(clearTimeout(n),n=null),void t?.removeEventListener("transitionend",i);null!==n&&(clearTimeout(n),n=null),t?.removeEventListener("transitionend",i),e.classList.contains("active")||(e.classList.remove("closing"),delete e.dataset.closeToken)}};if(!t||window.matchMedia?.("(prefers-reduced-motion: reduce)").matches)return void i();t.addEventListener("transitionend",i);const s=parseInt(document.querySelector("header")?.style.getPropertyValue("--mega-menu-duration"))||300;n=setTimeout(i,s+50)},renderModeMenu(e){const t=document.querySelector("#modemenu"),a=ui.menu.getChildren(e);let n=null;if(a.forEach((e,a)=>{const i=L.env.requestpath.length?e.name===L.env.requestpath[0]:0===a;t&&t.appendChild(E("li",{class:i?"active":""},[E("a",{href:L.url(e.name)},[_(e.title)])])),i&&(n=e)}),n){const e=this.buildNavigationModel(ui.menu.getChildren(n),n.name);this.renderMainMenu(n,n.name,0,e),this.renderMobileMenu(e),this.initPalette(e)}t?.children.length>1&&(t.style.display="")}}); \ No newline at end of file +"use strict";"require baseclass";"require ui";const PALETTE_RECENTS_KEY="aurora.paletteRecents";return baseclass.extend({__init__(){ui.menu.load().then(e=>this.render(e)).finally(()=>{for(const e of document.querySelectorAll("[data-restored]"))e.inert=!1}),this.initNavigationControls(),this.initUciIndicator()},initUciIndicator(){const e=ui.changes?.setIndicator;e&&(ui.changes.setIndicator=function(t){e.call(this,t),document.querySelector('[data-indicator="uci-changes"]')?.setAttribute("data-count",t||0)})},initNavigationControls(){const e=document.querySelector("#mobile-menu-overlay"),t=document.querySelector("#navigation-toggle");if(!t||!e)return;const a=e.querySelector("#mobile-nav-list"),n=window.matchMedia("(min-width: 768px)"),i="aurora.sidebarCollapsed",s=()=>n.matches&&"sidebar"===document.body.dataset.navType,o=e=>{const a=s();t.classList.toggle("is-expanded",e&&!n.matches),t.setAttribute("aria-expanded",e?"true":"false"),t.setAttribute("aria-controls",a?"sidebar-panel":"mobile-menu-overlay");const i=e&&!a?_("Close"):_("Navigation");t.setAttribute("title",i),t.setAttribute("aria-label",i)},r=()=>{e.classList.contains("mobile-menu-open")&&(e.classList.remove("mobile-menu-open"),document.body.classList.remove("mobile-navigation-open"),document.body.style.overflow="",this.resetNavigationGroups(a),o(!1))};this.closeMobileNavigation=r;const l=t=>{if(s()){r();const e=!t;return document.body.classList.toggle("sidebar-collapsed",e),localStorage.setItem(i,e),void o(t)}if(n.matches)return r(),void o(!1);e.classList.toggle("mobile-menu-open",t),document.body.classList.toggle("mobile-navigation-open",t),document.body.style.overflow=t?"hidden":"",t?this.expandActiveNavigationGroup(a):this.resetNavigationGroups(a),o(t)},c=()=>{if(r(),s()){const e="true"===localStorage.getItem(i);return document.body.classList.toggle("sidebar-collapsed",e),void o(!e)}o(!1)};t.addEventListener("click",t=>{t.stopPropagation(),l(!(s()?!document.body.classList.contains("sidebar-collapsed"):!n.matches&&e.classList.contains("mobile-menu-open")))}),e.addEventListener("click",t=>{t.target===e&&l(!1)}),document.addEventListener("keydown",t=>{"Escape"===t.key&&e.classList.contains("mobile-menu-open")&&l(!1)}),n.addEventListener("change",c),c(),document.addEventListener("click",t=>{const a=t.target?.closest?.(".navigation-direct, .navigation-sublink, .mobile-nav-logout");a&&e.contains(a)&&l(!1)})},renderMobileMenu(e){const t=document.querySelector("#mobile-nav-list"),a=document.querySelector("#mobile-nav-footer-action");t&&(t.innerHTML=""),a&&(a.innerHTML=""),t&&(e.forEach(e=>{e.isLogout?a&&a.appendChild(E("a",{class:"mobile-nav-logout",href:e.href},[e.title])):t.appendChild(this.renderNavigationItem(e,"mobile"))}),this.bindNavigationAccordion(t))},render(e){this.tree=e,this.renderModeMenu(e),this.renderTabs(e),this.cacheNav()},cacheNav(){const e={};for(const t of document.querySelectorAll("#topmenu, #sidebar-list, #sidebar-footer"))t.firstChild&&(e[t.id]=t.innerHTML);try{sessionStorage.setItem("aurora.nav",JSON.stringify([document.body.dataset.navStamp,e]))}catch{}},renderTabs(e){if(L.env.dispatchpath.length<3)return;let t=e,a="";for(let e=0;e<3&&t;e++){const n=L.env.dispatchpath[e];t=t.children?.[n],a+=(a?"/":"")+n}t&&this.renderTabMenu(t,a)},syncRoute(){if(!this.tree)return;const e=new URL(L.url(...L.env.dispatchpath.slice(0,3)),location.href).pathname;document.querySelectorAll("#topmenu a, .desktop-menu-canvas a, #sidebar-list a, #mobile-nav-list a").forEach(t=>{const a=t.pathname===e&&!t.getAttribute("href").startsWith("#");t.classList.toggle("is-active-page",a),a?t.setAttribute("aria-current","page"):t.removeAttribute("aria-current")}),document.querySelectorAll(".navigation-group").forEach(e=>{const t=!!e.querySelector("a.is-active-page"),a=e.querySelector(".navigation-group-toggle");e.classList.toggle("is-active-group",t),t?a?.setAttribute("aria-current","location"):a?.removeAttribute("aria-current")});for(const e of[document.querySelector("#sidebar-list"),document.querySelector("#mobile-nav-list")])this.resetNavigationGroups(e),this.expandActiveNavigationGroup(e);window.auroraCrumb?.();const t=document.querySelector("#tabmenu");t&&(t.innerHTML="",t.style.display="none"),this.renderTabs(this.tree)},closeSurfaces(){this.hideDesktopNav(),this.paletteList&&this.closePalette(),this.closeMobileNavigation?.()},renderTabMenu(e,t,a=0){const n=document.querySelector("#tabmenu"),i=E("ul",{class:"tabs"}),s=ui.menu.getChildren(e);let o=null;return s.forEach(e=>{const n=L.env.dispatchpath[3+a]===e.name;i.appendChild(E("li",{class:`tabmenu-item-${e.name}${n?" active":""}`},[E("a",{href:L.url(t,e.name)},[_(e.title)])])),n&&(o=e)}),i.children.length?(n.appendChild(i),n.style.display="",o&&this.renderTabMenu(o,`${t}/${o.name}`,a+1),i):E([])},renderMainMenu(e,t,a=0,n=null){const i=a?E("ul",{class:"desktop-nav-list"}):document.querySelector("#topmenu"),s=ui.menu.getChildren(e);if(a>1)return E([]);if(0===a){const e=document.body?.dataset?.navType||"mega-menu";if("sidebar"===e)return this.renderSidebar(n||[]),i||E([]);if(i&&(i.innerHTML=""),!i||!s.length)return E([]);"mega-menu"===e?this.initMegaMenu(s,t,i):this.initDropdown(s,t,i)}else{if(!s.length)return E([]);s.forEach(a=>{const n=this.isActivePath(e.name,a.name),s={class:n?"is-active-page":"",href:L.url(t,a.name)};n&&(s["aria-current"]="page"),i.appendChild(E("li",{},[E("a",s,[_(a.title)])]))})}return i.style.display="",i},isActivePath:(e,t)=>L.env.dispatchpath[1]===e&&(null==t||L.env.dispatchpath[2]===t),buildNavigationModel(e,t){return e.filter(e=>e?.name).map(e=>{const a=ui.menu.getChildren(e).filter(e=>e?.name).map(a=>({name:a.name,title:_(a.title),href:L.url(t,e.name,a.name),isActivePage:this.isActivePath(e.name,a.name)})),n=a.length>0,i=this.isActivePath(e.name);return{name:e.name,title:_(e.title),href:L.url(t,e.name),hasChildren:n,isLogout:"logout"===e.name,isActiveGroup:n&&i,isActivePage:!n&&i,activePage:a.find(e=>e.isActivePage)||null,pages:a}})},navigationSubmenuId:(e,t)=>`${e}-submenu-${encodeURIComponent(String(t))}`,renderNavigationItem(e,t){const a="mobile"===t,n=a?"mobile-nav-item":"";if(!e.hasChildren){const t={class:"navigation-direct nav-row"+(e.isActivePage?" is-active-page":""),href:e.href};return e.isActivePage&&(t["aria-current"]="page"),t["data-section"]=e.name,E("li",{class:n},[E("a",t,[E("span",{class:"nav-icon","aria-hidden":"true"}),E("span",{class:"nav-label"},[e.title])])])}const i=this.navigationSubmenuId(t,e.name),s=["navigation-group",a?"mobile-nav-item":"sidebar-group",e.isActiveGroup?"is-active-group":"",e.isActiveGroup?"is-expanded":""].filter(Boolean),o={class:"navigation-group-toggle nav-row",type:"button","aria-expanded":e.isActiveGroup?"true":"false","aria-controls":i};e.isActiveGroup&&(o["aria-current"]="location"),o["data-section"]=e.name;const r=E("ul",{class:a?"navigation-submenu-list mobile-nav-submenu-list":"navigation-submenu-list sidebar-submenu"});e.pages.forEach(e=>{const t={class:["navigation-sublink",a?"mobile-nav-sublink":"",e.isActivePage?"is-active-page":""].filter(Boolean).join(" "),href:e.href};e.isActivePage&&(t["aria-current"]="page"),r.appendChild(E("li",{class:a?"mobile-nav-subitem":""},[E("a",t,[e.title])]))});const l={class:a?"navigation-group-region mobile-nav-submenu":"navigation-group-region sidebar-section",id:i,"aria-hidden":e.isActiveGroup?"false":"true"};return e.isActiveGroup||(l.inert=""),E("li",{class:s.join(" ")},[E("button",o,[E("span",{class:"nav-icon","aria-hidden":"true"}),E("span",{class:"nav-category-label"},[e.title])]),E("div",l,[r])])},setNavigationGroupExpanded(e,t){const a=e.querySelector(".navigation-group-toggle"),n=e.querySelector(".navigation-group-region");e.classList.toggle("is-expanded",t),a?.setAttribute("aria-expanded",t?"true":"false"),n?.setAttribute("aria-hidden",t?"false":"true"),t?n?.removeAttribute("inert"):n?.setAttribute("inert","")},setExclusiveNavigationGroupExpanded(e,t,a){e&&t&&(a&&e.querySelectorAll(".navigation-group.is-expanded").forEach(e=>{e!==t&&this.setNavigationGroupExpanded(e,!1)}),this.setNavigationGroupExpanded(t,a))},resetNavigationGroups(e){e?.querySelectorAll(".navigation-group.is-expanded").forEach(e=>this.setNavigationGroupExpanded(e,!1))},expandActiveNavigationGroup(e){const t=e?.querySelector(".navigation-group.is-active-group");t&&this.setExclusiveNavigationGroupExpanded(e,t,!0)},bindNavigationAccordion(e){e&&"true"!==e.dataset.accordionBound&&(e.dataset.accordionBound="true",e.addEventListener("click",t=>{const a=t.target?.closest?.(".navigation-group-toggle"),n=a?.closest?.(".navigation-group");n&&e.contains(n)&&(t.preventDefault(),t.stopPropagation(),this.setExclusiveNavigationGroupExpanded(e,n,!n.classList.contains("is-expanded")))}))},renderSidebar(e){const t=document.querySelector("#sidebar-list"),a=document.querySelector("#sidebar-footer");t&&(t.innerHTML=""),a&&(a.innerHTML=""),t&&(e.forEach(e=>{e.isLogout?(a||t).appendChild(E("a",{class:"nav-link",href:e.href},[e.title])):t.appendChild(this.renderNavigationItem(e,"sidebar"))}),this.bindNavigationAccordion(t),window.auroraCrumb?.())},initPalette(e,t){const a=document.querySelector("#cmdk-trigger");if(!a||this.paletteIndex)return;this.paletteIndex=[],this.paletteAliases={};let n=null;e.forEach(e=>{e.isLogout?n=e:e.hasChildren?e.pages.forEach(a=>{const n=`${e.name}/${a.name}`,i=t?.children?.[e.name]?.children?.[a.name]??{},s=ui.menu.getChildren(i),o=i.action?.type,r="alias"===o?i.action.path.replace(`${t.name}/${n}/`,""):"firstchild"===o&&s.find(e=>!e.firstchild_ineligible)?.name;s.some(e=>e.name===r)?this.paletteAliases[n]=`${n}/${r}`:this.paletteIndex.push({title:a.title,name:n,group:e.title,href:a.href}),s.forEach(i=>this.paletteIndex.push({title:_(i.title),parent:a.title,name:`${n}/${i.name}`,group:e.title,href:L.url(t.name,e.name,a.name,i.name)}))}):this.paletteIndex.push({title:e.title,name:e.name,group:null,href:e.href})}),[["light",_("Light Mode")],["dark",_("Dark Mode")],["device",_("Automatic")]].forEach(([e,t])=>this.paletteIndex.push({title:t,name:`theme ${e}`,group:_("Design"),mode:e})),n&&this.paletteIndex.push({title:n.title,name:n.name,group:null,href:n.href,isLogout:!0});const i=/Mac|iP(ad|hone|od)/.test(navigator.platform);this.paletteKey=i?"⌘K":"Ctrl+K",a.setAttribute("aria-keyshortcuts",i?"Meta+K":"Control+K"),a.setAttribute("aria-expanded","false"),a.addEventListener("click",()=>this.togglePalette()),this.paletteTrigger=a,document.addEventListener("keydown",e=>{e.isComposing||229===e.keyCode||((i?!e.metaKey||e.ctrlKey:!e.ctrlKey||e.metaKey)||e.altKey||e.shiftKey||"k"!==(e.key||"").toLowerCase()?"Escape"===e.key&&this.palettePanel&&!this.palettePanel.hidden&&this.closePalette():(e.preventDefault(),this.togglePalette()))}),this.onPaletteAway=e=>{this.palettePanel.contains(e.target)||a.contains(e.target)||this.closePalette()}},buildPalette(){const e=E("input",{class:"cmdk-input",type:"text",enterkeyhint:"go",placeholder:_("Type to filter…"),"aria-label":_("Type to filter…"),autocomplete:"off",spellcheck:"false",role:"combobox","aria-expanded":"true","aria-autocomplete":"list","aria-controls":"cmdk-list"}),t=E("div",{class:"cmdk-list",id:"cmdk-list",role:"listbox"}),a=E("button",{class:"cmdk-clear",type:"button","aria-label":_("Clear")});a.addEventListener("click",()=>{e.value="",this.renderPaletteResults(""),e.focus()});const n=E("button",{class:"cmdk-cancel",type:"button"},[_("Cancel")]);n.addEventListener("click",()=>this.closePalette());const i=E("div",{id:"cmdk-panel",class:"cmdk-panel",role:"dialog","aria-modal":"true","aria-label":_("Navigation"),hidden:""},[E("div",{class:"cmdk-inputrow"},[e,a,n]),t,E("div",{class:"cmdk-footer"},[E("kbd",{},["↑↓"]),E("kbd",{},["↵"]),E("kbd",{},[">"]),E("kbd",{},["esc"]),E("span",{class:"cmdk-hint-close"},[E("kbd",{},[this.paletteKey])])])]);e.addEventListener("input",()=>this.renderPaletteResults(e.value)),e.addEventListener("keydown",e=>{e.isComposing||229===e.keyCode||("ArrowDown"===e.key||"ArrowUp"===e.key?(e.preventDefault(),this.movePaletteSelection("ArrowDown"===e.key?1:-1)):"Enter"===e.key&&t.querySelector(".is-selected")?.click())}),t.addEventListener("mousemove",e=>{const t=e.target?.closest?.(".cmdk-row");t&&!t.classList.contains("is-selected")&&this.setPaletteSelection(t)}),t.addEventListener("click",a=>{const n=a.target?.closest?.(".cmdk-row");if(!n)return;const i=n.dataset.mode;i?(a.preventDefault(),setTheme(i),syncSwitchers(),this.renderPaletteResults(e.value),this.setPaletteSelection(t.querySelector(`[data-mode="${i}"]`)),e.focus()):n.dataset.name&&this.recordPaletteRecent(n.dataset.name)}),i.addEventListener("keydown",i=>{if("Tab"!==i.key)return;const s=[e,a,...t.querySelectorAll("a"),n].filter(e=>e.getClientRects().length),o=i.shiftKey?s[0]:s.at(-1);document.activeElement===o&&(i.preventDefault(),(i.shiftKey?s.at(-1):s[0]).focus())}),document.body.appendChild(i),this.paletteTrigger.setAttribute("aria-controls",i.id),this.palettePanel=i,this.paletteInput=e,this.paletteList=t},fuzzyMatch(e,t){const a=String(t).toLowerCase();let n=null;for(let t=a.indexOf(e[0]);t>=0;t=a.indexOf(e[0],t+1)){let i=t,s=0,o=0;const r=[];for(const t of e){if(" "===t){o=0;continue}const e=a.indexOf(t,i);if(e<0){r.length=0;break}o=e===i&&r.length?o+1:1,s+=1+o+(e===i&&r.length?4:0)+(0===e||" "===a[e-1]||"/"===a[e-1]?3:0);const n=e+t.length,l=r[r.length-1];l&&l[1]===e?l[1]=n:r.push([e,n]),i=n}s-=.02*a.length,r.length&&(!n||s>n.score)&&(n={score:s,ranges:r})}return n},readPaletteRecents(){try{const e=JSON.parse(localStorage.getItem(PALETTE_RECENTS_KEY));return Array.isArray(e)?[...new Set(e.filter(e=>"string"==typeof e).map(e=>this.paletteAliases?.[e]??e))]:[]}catch{return[]}},recordPaletteRecent(e){try{localStorage.setItem(PALETTE_RECENTS_KEY,JSON.stringify([e,...this.readPaletteRecents().filter(t=>t!==e)]))}catch{}},paletteBrowseRecents(){return this.readPaletteRecents().filter(e=>this.paletteIndex.some(t=>t.name===e&&!t.mode&&!t.isLogout))},matchPaletteEntry(e,t){if(!e)return{score:0,ranges:null};const a=this.fuzzyMatch(e,t.title);if(a)return{score:a.score+12,ranges:a.ranges};if(t.parent){const a=this.fuzzyMatch(e,t.parent);if(a)return{score:a.score+8,ranges:null,parentRanges:a.ranges};const n=e.split(/\s+/);for(let e=1;et.score-e.score),i},renderPaletteResults(e){const t=this.collectPaletteMatches(e),a=localStorage.getItem("aurora.theme")||"device";this.paletteInput.removeAttribute("aria-activedescendant"),this.paletteList.replaceChildren(),t.length?(t.forEach(({page:e,ranges:t,parentRanges:n},i)=>{const s=e.mode&&e.mode===a,o={class:"cmdk-row",id:`cmdk-option-${i}`,role:"option","aria-selected":"false",href:e.href||"#"};e.mode?o["data-mode"]=e.mode:e.isLogout||(o["data-name"]=e.name),s&&(o["aria-current"]="true"),this.paletteList.appendChild(E("a",o,[E("span",{class:"cmdk-title"},e.parent&&e.parent!==e.title?[E("span",{class:"cmdk-parent"},this.highlightPaletteMatch(e.parent,n)),E("span",{class:"cmdk-label"},this.highlightPaletteMatch(e.title,t))]:this.highlightPaletteMatch(e.title,t)),s?E("span",{class:"cmdk-group-name","aria-hidden":"true"},[E("mark",{},["✓"])]):e.group?E("span",{class:"cmdk-group-name"},[e.group]):""]))}),this.setPaletteSelection(this.paletteList.firstChild)):this.paletteList.appendChild(E("div",{class:"cmdk-empty"},[_("No entries available")]))},highlightPaletteMatch(e,t){if(!t||e.toLowerCase().length!==e.length)return[e];const a=[];let n=0;return t.forEach(([t,i])=>{a.push(e.slice(n,t),E("mark",{},[e.slice(t,i)])),n=i}),a.push(e.slice(n)),a},setPaletteSelection(e){const t=this.paletteList.querySelector(".is-selected");t?.classList.remove("is-selected"),t?.setAttribute("aria-selected","false"),e.classList.add("is-selected"),e.setAttribute("aria-selected","true"),this.paletteInput.setAttribute("aria-activedescendant",e.id)},movePaletteSelection(e){const t=[...this.paletteList.querySelectorAll(".cmdk-row")];if(!t.length)return;const a=t.findIndex(e=>e.classList.contains("is-selected")),n=t[(a+e+t.length)%t.length];this.setPaletteSelection(n),n.scrollIntoView({block:"nearest"})},togglePalette(){this.palettePanel||this.buildPalette(),this.palettePanel.hidden?this.openPalette():this.closePalette()},openPalette(){this.paletteReturnFocus=document.activeElement,this.paletteTrigger.setAttribute("aria-expanded","true"),this.palettePanel.hidden=!1,this.paletteInput.value="",this.renderPaletteResults(""),this.paletteInput.focus(),document.addEventListener("pointerdown",this.onPaletteAway)},closePalette(){this.paletteTrigger.setAttribute("aria-expanded","false"),this.palettePanel.hidden=!0,document.removeEventListener("pointerdown",this.onPaletteAway),this.paletteReturnFocus?.isConnected&&this.paletteReturnFocus.focus(),this.paletteReturnFocus=null},buildDropdownItem(e,t,a){const n=ui.menu.getChildren(e),i=n.length>0,s=E("li",{},[E("a",{class:"menu",href:i?"#":L.url(t,e.name)},[_(e.title)])]);a.appendChild(s);const o=s.querySelector("a");let r=null;if(i){const a=this.renderMainMenu(e,`${t}/${e.name}`,1),i=[a];if("mega-menu"===document.body?.dataset?.navType){a.style.setProperty("--menu-rows",Math.max(6,Math.ceil(n.length/4))),i.unshift(E("div",{class:"desktop-nav-anchor"},[E("span",{class:"desktop-nav-title","data-section":e.name},[_(e.title)])]));const t=document.querySelector(".desktop-menu-container > .desktop-menu-board");t&&i.push(t.cloneNode(!0))}r=E("div",{class:"desktop-nav"},i),s.appendChild(r),o.addEventListener("click",e=>e.preventDefault())}return{li:s,nav:r,menuLink:o,hasSubmenu:i}},deactivateDesktopNavExcept(e,t){document.querySelectorAll(".desktop-nav").forEach(t=>{t!==e&&t.classList.remove("active")}),document.querySelectorAll("#topmenu a").forEach(e=>{e!==t&&e.classList.remove("menu-active")})},initMegaMenu(e,t,a){const n=document.querySelector(".desktop-menu-container"),i=n?.querySelector(".desktop-menu-canvas"),s=document.querySelector(".desktop-menu-overlay"),o=document.querySelector("header");if(!o||!s)return;let r=null,l=null,c=0,d=300;const u=()=>{c||(o.querySelectorAll(".desktop-nav").forEach(e=>c=Math.max(c,e.offsetHeight)),d=Math.min(480,Math.max(240,Math.round(c/2)))),o.style.setProperty("--mega-menu-height",`${c}px`),o.style.setProperty("--mega-menu-duration",`${d}ms`)};let h=null;window.addEventListener("resize",()=>{c=0,clearTimeout(h),h=setTimeout(u,150)});let m={x:0,y:0},p=0,g={x:0,y:0};o.addEventListener("mousemove",e=>{e.timeStamp-p>60&&(m=g,p=e.timeStamp),g={x:e.clientX,y:e.clientY}}),e.forEach(e=>{const{li:c,nav:d,menuLink:h,hasSubmenu:p}=this.buildDropdownItem(e,t,a);p&&(i&&i.appendChild(d),c.addEventListener("mouseenter",()=>{l&&(clearTimeout(l),l=null);const e=n?.classList.contains("active"),t=e?(()=>{const e=o.querySelector(".desktop-nav.active");if(!e)return!1;const t=g.x-m.x,a=g.y-m.y;if(a<=2)return!1;const n=e.getBoundingClientRect();if(g.y>=n.top)return!0;const i=g.x+t*(n.top-g.y)/a;return i>=n.left-24&&i<=n.right+24})()?260:0:100;r=setTimeout(()=>{const e=d.classList.contains("active");this.deactivateDesktopNavExcept(d,h),e||(h.classList.add("menu-active"),n&&(u(),n.dataset.closeToken="",n.classList.add("active"),n.classList.remove("closing"),s.classList.add("active")),d.classList.add("active"))},t)}),c.addEventListener("mouseleave",()=>{r&&(clearTimeout(r),r=null)}))});const v=window.requestIdleCallback||(e=>setTimeout(e,1));(document.fonts?.ready||Promise.resolve()).then(()=>v(()=>{c||u()}));const f=()=>{r&&(clearTimeout(r),r=null),l=setTimeout(()=>{this.hideDesktopNav()},150)};o.addEventListener("mouseleave",f),s.addEventListener("mouseenter",f),o.addEventListener("mouseenter",()=>{l&&(clearTimeout(l),l=null)}),s.addEventListener("click",()=>this.hideDesktopNav())},initDropdown(e,t,a){e.forEach(e=>{const{li:n,nav:i,menuLink:s,hasSubmenu:o}=this.buildDropdownItem(e,t,a);if(!o)return;let r=null,l=null;n.addEventListener("mouseenter",()=>{l&&(clearTimeout(l),l=null),r=setTimeout(()=>{this.deactivateDesktopNavExcept(i,s),s.classList.add("menu-active"),i.classList.add("active")},100)}),n.addEventListener("mouseleave",()=>{r&&(clearTimeout(r),r=null),l=setTimeout(()=>{i.classList.remove("active"),s.classList.remove("menu-active")},150)})})},hideDesktopNav(){this.deactivateDesktopNavExcept(null,null);const e=document.querySelector(".desktop-menu-container");if(document.querySelector(".desktop-menu-overlay")?.classList.remove("active"),!e)return;if(!e.classList.contains("active")&&!e.classList.contains("closing"))return;e.classList.add("closing"),e.classList.remove("active");const t=e.querySelector(".desktop-menu-sheet"),a=`${Date.now()}-${Math.random()}`;e.dataset.closeToken=a;let n=null;const i=s=>{if(!s?.target||s.target===t){if(e.dataset.closeToken!==a)return null!==n&&(clearTimeout(n),n=null),void t?.removeEventListener("transitionend",i);null!==n&&(clearTimeout(n),n=null),t?.removeEventListener("transitionend",i),e.classList.contains("active")||(e.classList.remove("closing"),delete e.dataset.closeToken)}};if(!t||window.matchMedia?.("(prefers-reduced-motion: reduce)").matches)return void i();t.addEventListener("transitionend",i);const s=parseInt(document.querySelector("header")?.style.getPropertyValue("--mega-menu-duration"))||300;n=setTimeout(i,s+50)},renderModeMenu(e){const t=document.querySelector("#modemenu"),a=ui.menu.getChildren(e);let n=null;if(a.forEach((e,a)=>{const i=L.env.requestpath.length?e.name===L.env.requestpath[0]:0===a;t&&t.appendChild(E("li",{class:i?"active":""},[E("a",{href:L.url(e.name)},[_(e.title)])])),i&&(n=e)}),n){const e=this.buildNavigationModel(ui.menu.getChildren(n),n.name);this.renderMainMenu(n,n.name,0,e),this.renderMobileMenu(e),this.initPalette(e,n)}t?.children.length>1&&(t.style.display="")}}); \ No newline at end of file diff --git a/luci-theme-shadcn/.dev/src/media/components/_palette.css b/luci-theme-shadcn/.dev/src/media/components/_palette.css index 3a719df04..6e2503893 100644 --- a/luci-theme-shadcn/.dev/src/media/components/_palette.css +++ b/luci-theme-shadcn/.dev/src/media/components/_palette.css @@ -150,6 +150,27 @@ button.cmdk-cancel { } } +/* A tab row reads "Parent › Title": the parent gives way first (truncate's + overflow already lets it shrink below its content), and keeps at least + an ellipsis so the "›" never leads the row. Unnested: the classes exist + only inside palette rows, and the short selectors keep main.css inside + its budget. */ +.cmdk-title:has(> .cmdk-parent) { + @apply flex items-baseline; +} + +.cmdk-parent { + @apply text-muted-foreground truncate font-normal; +} + +.cmdk-label { + @apply max-w-[calc(100%-1.5rem)] shrink-0 truncate; + + &::before { + @apply text-muted-foreground px-1.5 font-normal content-['›']; + } +} + .cmdk-empty { @apply text-muted-foreground px-3 py-7 text-center text-sm; } diff --git a/luci-theme-shadcn/.dev/src/resource/menu-shadcn.js b/luci-theme-shadcn/.dev/src/resource/menu-shadcn.js index 23f694512..6fbcd66df 100644 --- a/luci-theme-shadcn/.dev/src/resource/menu-shadcn.js +++ b/luci-theme-shadcn/.dev/src/resource/menu-shadcn.js @@ -485,6 +485,7 @@ return baseclass.extend({ if (!trigger || this.palIndex) return; this.palIndex = []; + this.palAliases = {}; ui.menu.getChildren(branch).forEach((section) => { const subs = ui.menu.getChildren(section); if (subs.length === 0) { @@ -499,14 +500,46 @@ return baseclass.extend({ return; } subs.forEach((page) => { - this.palIndex.push({ - title: _(page.title), - group: _(section.title), - icon: section.name, - path: `${branchUrl}/${section.name}/${page.name}`, - href: L.url(branchUrl, section.name, page.name), - isLogout: false, - }); + const title = _(page.title); + const group = _(section.title); + const path = `${branchUrl}/${section.name}/${page.name}`; + // The raw node: getChildren() hands out alias nodes carrying their + // target's children, which would hide an alias parent's tabs. + const node = section.children?.[page.name] ?? {}; + const tabs = ui.menu.getChildren(node); + const type = node.action?.type; + const target = + type === "alias" + ? node.action.path.replace(`${path}/`, "") + : type === "firstchild" && + tabs.find((tab) => !tab.firstchild_ineligible)?.name; + + // A parent that only redirects to one of its tabs is that tab: its + // row gives way to the tabs, and its path (stored by older recents) + // resolves to where it redirects. + if (tabs.some((tab) => tab.name === target)) + this.palAliases[path] = `${path}/${target}`; + else + this.palIndex.push({ + title, + group, + icon: section.name, + path, + href: L.url(branchUrl, section.name, page.name), + isLogout: false, + }); + + tabs.forEach((tab) => + this.palIndex.push({ + title: _(tab.title), + parent: title, + group, + icon: section.name, + path: `${path}/${tab.name}`, + href: L.url(branchUrl, section.name, page.name, tab.name), + isLogout: false, + }), + ); }); }); @@ -698,9 +731,14 @@ return baseclass.extend({ _palReadRecents() { try { const list = JSON.parse(localStorage.getItem(RECENTS_KEY)); - return Array.isArray(list) - ? list.filter((path) => typeof path === "string") - : []; + if (!Array.isArray(list)) return []; + return [ + ...new Set( + list + .filter((path) => typeof path === "string") + .map((path) => this.palAliases?.[path] ?? path), + ), + ]; } catch (e) { return []; } @@ -755,11 +793,22 @@ return baseclass.extend({ ? this.palIndex.filter((page) => page.isLogout) : this.palIndex; pool.forEach((page) => { - const m = this._palScore(q, page.title, page.path, page.group); + const m = this._palScore( + q, + page.title, + page.path, + page.group, + page.parent, + ); if (m) hits.push({ score: m.score, - node: this._palPageRow(page, m.ranges, m.groupRanges), + node: this._palPageRow( + page, + m.ranges, + m.groupRanges, + m.parentRanges, + ), }); }); this.palModes.forEach((cmd) => { @@ -814,7 +863,7 @@ return baseclass.extend({ else this.palInput.removeAttribute("aria-activedescendant"); }, - _palPageRow(page, ranges, groupRanges) { + _palPageRow(page, ranges, groupRanges, parentRanges) { // Title leads, the section label is demoted to small type on the right // edge — same row anatomy as luci-theme-aurora's palette, so the two // themes stay legible side by side. The dispatch path is matchable but @@ -833,7 +882,25 @@ return baseclass.extend({ }, [ this._sectionIcon(page.icon, 15), - E("span", { class: "cmdk-title" }, this._palMark(page.title, ranges)), + E( + "span", + { class: "cmdk-title" }, + // A tab named after its parent is the page the parent opens. + page.parent && page.parent !== page.title + ? [ + E( + "span", + { class: "cmdk-parent" }, + this._palMark(page.parent, parentRanges), + ), + E( + "span", + { class: "cmdk-label" }, + this._palMark(page.title, ranges), + ), + ] + : this._palMark(page.title, ranges), + ), page.group ? E( "span", @@ -897,21 +964,66 @@ return baseclass.extend({ /** * Subsequence scorer: every query char must appear in order; consecutive - * runs and word/segment starts weigh extra. Title hits rank first, then - * the section label, then the language-neutral path. Title and label hits + * runs and word/segment starts weigh extra. Title hits rank first, then a + * tab's parent — scored alone so its tabs tie and keep menu order, or + * paired with the title when the query splits on a space — then the + * section label, then the language-neutral path, where each query word + * (split on spaces or "/") lands inside one segment, in path order, so a + * lone word can't scatter across segments. Title, parent and label hits * highlight the field they matched; a path hit ranks without highlighting. */ - _palScore(q, title, path, group) { + _palScore(q, title, path, group, parent) { const t = this._palSub(q, title.toLowerCase()); if (t) return { score: t.score + 10, ranges: t.ranges, groupRanges: null }; + if (parent) { + const low = parent.toLowerCase(); + const pt = this._palSub(q, low); + if (pt) + return { + score: pt.score + 7, + ranges: null, + groupRanges: null, + parentRanges: pt.ranges, + }; + const words = q.split(/\s+/); + for (let i = 1; i < words.length; i++) { + const head = this._palSub(words.slice(0, i).join(" "), low); + const tail = + head && this._palSub(words.slice(i).join(" "), title.toLowerCase()); + if (tail) + return { + score: head.score + tail.score + 7, + ranges: tail.ranges, + groupRanges: null, + parentRanges: head.ranges, + }; + } + } // On a localized instance the section label is the only group name the // user ever sees: querying the translated 'Network' must reach its rows. const g = group ? this._palSub(q, group.toLowerCase()) : null; if (g) return { score: g.score + 5, ranges: null, groupRanges: g.ranges }; - const p = this._palSub(q, String(path || "").toLowerCase()); + const p = this._palPath(q, String(path || "").toLowerCase()); return p ? { score: p.score, ranges: null, groupRanges: null } : null; }, + _palPath(q, low) { + const words = q.split(/[\s/]+/).filter(Boolean); + const segments = low.split("/"); + let at = 0; + let score = 0; + for (const word of words) { + let hit = null; + for (; at < segments.length; at++) { + hit = this._palSub(word, segments[at]); + if (hit) break; + } + if (!hit) return null; + score += hit.score; + } + return words.length ? { score } : null; + }, + _palSub(q, low) { let ti = 0; let score = 0; diff --git a/luci-theme-shadcn/.dev/tests/build-output.test.js b/luci-theme-shadcn/.dev/tests/build-output.test.js index 0d732b5ea..2c81fe9f0 100644 --- a/luci-theme-shadcn/.dev/tests/build-output.test.js +++ b/luci-theme-shadcn/.dev/tests/build-output.test.js @@ -51,12 +51,15 @@ test("production assets stay within raw-transfer budgets", () => { assert.ok(main <= 130_000, `main.css ${main} B exceeds 130 KB`); assert.ok(login <= 11_000, `login.css ${login} B exceeds 11 KB`); - assert.ok(menu <= 16_000, `menu-shadcn.js ${menu} B exceeds 16 KB`); + // 17.5K: palette tabs (third-level nodes, redirect-parent folding, legacy + // recents mapping, parent-aware scoring, per-segment path words) added + // ~1.2 KB; the admin total below moved by the same amount. + assert.ok(menu <= 17_500, `menu-shadcn.js ${menu} B exceeds 17.5 KB`); assert.ok(router <= 16_000, `router-shadcn.js ${router} B exceeds 16 KB`); assert.ok(sidebar <= 6_500, `sidebar-shadcn.js ${sidebar} B exceeds 6.5 KB`); assert.ok( - main + menu + router + sidebar + font <= 216_000, - "admin assets exceed 216 KB", + main + menu + router + sidebar + font <= 217_500, + "admin assets exceed 217.5 KB", ); assert.ok(login + font + logo <= 60_000, "login assets exceed 60 KB"); }); diff --git a/luci-theme-shadcn/.dev/tests/command-palette.test.js b/luci-theme-shadcn/.dev/tests/command-palette.test.js index d4932dd27..0d22b66a0 100644 --- a/luci-theme-shadcn/.dev/tests/command-palette.test.js +++ b/luci-theme-shadcn/.dev/tests/command-palette.test.js @@ -12,17 +12,20 @@ const E = (tagName, attributes, children) => ({ tagName, attributes, children, + addEventListener() {}, }); // The module's top level only defines constants and returns the extended // object, so empty DOM/storage stubs keep the factory inert. -const loadMenuModule = (localStorage = {}) => { +const loadMenuModule = ( + localStorage = {}, + { document = {}, ui = { menu: { getChildren: () => [] } } } = {}, +) => { const baseclass = { extend(module) { return module; }, }; - const ui = { menu: { getChildren: () => [] } }; const L = { env: { dispatchpath: [], requestpath: [] }, url: (...segments) => `/${segments.join("/")}`, @@ -46,7 +49,7 @@ const loadMenuModule = (localStorage = {}) => { E, L, (value) => value, - {}, + document, {}, localStorage, {}, @@ -192,3 +195,337 @@ test("the logout leaf stays out of the browse list, stored or not", () => { "admin/network/firewall", ]); }); + +// ---- Tabs: third-level menu nodes ---- + +// ui.menu.getChildren() as luci-base ships it, down to handing out alias +// nodes with their target's children (none, for a tab target). +const menuUi = { + menu: { + getChildren: (node) => + Object.entries(node?.children ?? {}) + .filter(([, child]) => child.satisfied && "title" in child) + .map(([name, child]) => + child.action?.type === "alias" + ? { ...child, name, children: undefined } + : Object.assign(child, { name }), + ) + .sort((a, b) => (a.order ?? 1000) - (b.order ?? 1000)), + }, +}; + +const node = (title, order, action, children) => ({ + satisfied: true, + title, + order, + action, + children, +}); +const view = { type: "view" }; + +const menuBranch = () => + node( + "Administration", + 1, + { type: "firstchild" }, + { + status: node("Status", 1, view, { + overview: node("Overview", 1, view), + logs: node( + "System Log", + 2, + { type: "alias", path: "admin/status/logs/syslog" }, + { + dmesg: node("Kernel Log", 2, view), + syslog: node("System Log", 1, view), + }, + ), + }), + system: node("System", 2, view, { + admin: node( + "Administration", + 1, + { type: "firstchild" }, + { + dropbear: node("SSH Access", 2, view), + hidden: { satisfied: true, order: 0, action: view }, + password: node("Router Password", 1, view), + }, + ), + bmx: node("BMX", 2, view, { nodes: node("Nodes", 1, view) }), + }), + }, + ); + +const initTabbedPalette = (storage = fakeStorage()) => { + const trigger = { + querySelector: () => null, + setAttribute() {}, + addEventListener() {}, + }; + const document = { + getElementById: (id) => (id === "cmdk-trigger" ? trigger : null), + addEventListener() {}, + }; + const palette = loadMenuModule(storage, { document, ui: menuUi }); + palette.initPalette(menuBranch(), "admin"); + return palette; +}; + +test("tabs join the index; a redirecting parent gives way to them", () => { + const index = initTabbedPalette().palIndex; + + assert.deepEqual( + index.map((page) => [page.path, page.parent ?? null]), + [ + ["admin/status/overview", null], + ["admin/status/logs/syslog", "System Log"], + ["admin/status/logs/dmesg", "System Log"], + ["admin/system/admin/password", "Administration"], + ["admin/system/admin/dropbear", "Administration"], + ["admin/system/bmx", null], + ["admin/system/bmx/nodes", "BMX"], + ], + ); + assert.equal(index[2].href, "/admin/status/logs/dmesg"); + assert.equal(index[2].group, "Status"); + assert.equal(index[2].icon, "status"); +}); + +test("redirecting parents map to the tab they open", () => { + assert.deepEqual(initTabbedPalette().palAliases, { + "admin/status/logs": "admin/status/logs/syslog", + "admin/system/admin": "admin/system/admin/password", + }); +}); + +test("a stored parent path reads as its tab, deduplicated", () => { + const palette = initTabbedPalette( + fakeStorage( + stored([ + "admin/system/admin", + "admin/system/admin/password", + "admin/status/logs", + ]), + ), + ); + + assert.deepEqual(palette._palReadRecents(), [ + "admin/system/admin/password", + "admin/status/logs/syslog", + ]); + assert.deepEqual(paths(palette._palBrowsePages()).slice(0, 3), [ + "admin/system/admin/password", + "admin/status/logs/syslog", + "admin/status/overview", + ]); +}); + +const menu = loadMenuModule(); +const sliced = (text, ranges) => + ranges.map(([from, to]) => text.slice(from, to)); + +test("a parent-only query ties the tabs and ranks them under title hits", () => { + const title = menu._palScore( + "firewall", + "Firewall", + "admin/status/nftables", + "Status", + ); + const zones = menu._palScore( + "firewall", + "General Settings", + "admin/network/firewall/zones", + "Network", + "Firewall", + ); + const forwards = menu._palScore( + "firewall", + "Port Forwards", + "admin/network/firewall/forwards", + "Network", + "Firewall", + ); + + assert.equal(zones.score, forwards.score); + assert.ok(title.score > zones.score); + assert.equal(zones.ranges, null); + assert.deepEqual(sliced("Firewall", zones.parentRanges), ["Firewall"]); +}); + +test("a parent hit outranks a section-label hit", () => { + const parent = menu._palScore( + "sys", + "Kernel Log", + "admin/status/logs/dmesg", + "Status", + "System Log", + ); + const group = menu._palScore( + "sys", + "Startup", + "admin/system/startup", + "System", + ); + + assert.ok(parent.score > group.score); +}); + +test("a spaced query pairs parent words with title words", () => { + const hit = menu._palScore( + "firewall port", + "Port Forwards", + "admin/network/firewall/forwards", + "Network", + "Firewall", + ); + + assert.ok(hit); + assert.deepEqual(sliced("Port Forwards", hit.ranges), ["Port"]); + assert.deepEqual(sliced("Firewall", hit.parentRanges), ["Firewall"]); + assert.equal( + menu._palScore( + "firewall port", + "Traffic Rules", + "admin/network/firewall/rules", + "Network", + "Firewall", + ), + null, + ); +}); + +test("a query no longer scatters across path segments", () => { + assert.equal( + menu._palScore( + "ssh", + "Other Settings", + "admin/services/passwall2/other", + "Services", + "PassWall 2", + ), + null, + ); + assert.ok( + menu._palScore( + "sshkeys", + "SSH 密钥", + "admin/system/admin/sshkeys", + "系统", + "管理权", + ), + ); +}); + +test("path words land in segments in order, never scattered", () => { + const score = (q, path, parent) => + menu._palScore(q, "无线", path, "网络", parent); + + assert.ok(score("network wireless", "admin/network/wireless")); + assert.ok(score("status/overview", "admin/status/overview")); + assert.ok( + menu._palScore( + "network firewall", + "端口转发", + "admin/network/firewall/forwards", + "网络", + "防火墙", + ), + ); + assert.equal(score("wireless network", "admin/network/wireless"), null); + assert.equal(score("netwire", "admin/network/wireless"), null); + assert.equal(score("/", "admin/network/wireless"), null); +}); + +test("a parent keeps its row unless it redirects to one of its own tabs", () => { + const trigger = { + querySelector: () => null, + setAttribute() {}, + addEventListener() {}, + }; + const document = { + getElementById: (id) => (id === "cmdk-trigger" ? trigger : null), + addEventListener() {}, + }; + const palette = loadMenuModule(fakeStorage(), { document, ui: menuUi }); + const branch = node( + "Administration", + 1, + { type: "firstchild" }, + { + services: node("Services", 1, view, { + // Redirects to an untitled page, so no tab stands in for it. + foo: node( + "Foo", + 1, + { type: "alias", path: "admin/services/foo/main" }, + { + main: { satisfied: true, order: 1, action: view }, + log: node("Log", 2, view), + }, + ), + bar: node( + "Bar", + 2, + { type: "firstchild" }, + { only: { ...node("Only", 1, view), firstchild_ineligible: true } }, + ), + }), + }, + ); + + palette.initPalette(branch, "admin"); + + assert.deepEqual(paths(palette.palIndex), [ + "admin/services/foo", + "admin/services/foo/log", + "admin/services/bar", + "admin/services/bar/only", + ]); + assert.deepEqual(palette.palAliases, {}); +}); + +test("recording after a legacy read writes the mapped paths back", () => { + const storage = fakeStorage( + stored(["admin/status/logs", "admin/status/overview"]), + ); + const palette = initTabbedPalette(storage); + + palette._palRecordRecent("admin/system/admin/dropbear"); + + assert.deepEqual(JSON.parse(storage.map.get(RECENTS_KEY)), [ + "admin/system/admin/dropbear", + "admin/status/logs/syslog", + "admin/status/overview", + ]); +}); + +test("a tab row renders its parent before the title unless they share a name", () => { + const palette = loadMenuModule(); + palette._sectionIcon = () => ""; + const tabPage = (title) => ({ + title, + parent: "Firewall", + group: "Network", + icon: "network", + path: "admin/network/firewall/x", + href: "/x", + isLogout: false, + }); + const marked = (parts) => parts.some((part) => part.tagName === "mark"); + + const forwards = palette._palPageRow(tabPage("Port Forwards"), null, null, [ + [0, 4], + ]).children[1].children; + assert.deepEqual( + forwards.map((part) => part.attributes.class), + ["cmdk-parent", "cmdk-label"], + ); + assert.ok(marked(forwards[0].children)); + assert.deepEqual(forwards[1].children, ["Port Forwards"]); + + const same = palette._palPageRow(tabPage("Firewall"), [[0, 4]]).children[1] + .children; + assert.ok(marked(same)); + assert.ok(!same.some((part) => part.attributes?.class === "cmdk-parent")); +}); diff --git a/luci-theme-shadcn/Makefile b/luci-theme-shadcn/Makefile index c4ccce757..c54f10efe 100644 --- a/luci-theme-shadcn/Makefile +++ b/luci-theme-shadcn/Makefile @@ -8,8 +8,8 @@ include $(TOPDIR)/rules.mk LUCI_TITLE:=A modern sidebar LuCI theme for OpenWrt, built with shadcn/ui design language. LUCI_DEPENDS:=+luci-base -PKG_VERSION:=0.5.10 -PKG_RELEASE:=4 +PKG_VERSION:=0.5.11 +PKG_RELEASE:=5 PKG_LICENSE:=Apache-2.0 LUCI_MINIFY_CSS:= diff --git a/luci-theme-shadcn/htdocs/luci-static/resources/menu-shadcn.js b/luci-theme-shadcn/htdocs/luci-static/resources/menu-shadcn.js index 52622bcc5..e54a84bb9 100644 --- a/luci-theme-shadcn/htdocs/luci-static/resources/menu-shadcn.js +++ b/luci-theme-shadcn/htdocs/luci-static/resources/menu-shadcn.js @@ -1 +1 @@ -"use strict";"require baseclass";"require ui";const ICON_MAP={status:"activity",system:"settings",network:"network",services:"layers",nas:"hard-drive",control:"sliders-horizontal",vpn:"shield",docker:"container",statistics:"chart-bar",nlbw:"gauge",asterisk:"phone",logout:"log-out",default:"layout-dashboard"},CACHE_KEY="shadcn.sidebar.cache",RECENTS_KEY="shadcn.palette.recents";return baseclass.extend({__init__(){ui.menu.load().then(e=>{this.renderSidebarChrome(),this.render(e),this.initUciIndicator(),this.cacheSidebar(),window.addEventListener("pagehide",()=>this.cacheSidebar()),document.dispatchEvent(new Event("shadcn-sidebar-ready"))})},cacheSidebar(){if(window.shadcnSuppressSidebarCache)return;const e=document.getElementById("sidebar"),t=document.getElementById("sidebar-nav");if(e&&t)try{sessionStorage.setItem(CACHE_KEY,JSON.stringify({v:1,lang:document.documentElement.lang||"",html:e.innerHTML,scroll:t.scrollTop||0}))}catch(e){}},_mediaBase(){const e=document.documentElement.getAttribute("data-shadcn-media"),t=document.getElementById("sidebar"),a=t&&t.getAttribute("data-media");return String(e||a||"/luci-static/shadcn").replace(/\/$/,"")},_sectionIcon(e,t){const a=String(e||"").toLowerCase(),s=ICON_MAP[a]||ICON_MAP.default;return this._iconFile(s,t)},_isLogoutMenuItem(e){const t=String(e&&null!=e.name?e.name:"").toLowerCase();return"logout"===t||t.endsWith("/logout")},_iconFile(e,t){const a=this._mediaBase();return E("img",{src:`${a}/icons/${e}.svg`,width:String(t),height:String(t),alt:"",loading:"lazy",class:"shadcn-icon"})},_resolveMenuBranch(e){const t=L.env.dispatchpath||[],a=L.env.requestpath||[],s=ui.menu.getChildren(e);let n=a.length&&a[0]||t.length&&t[0]||"admin",i=null;for(let e=0;e=3){for(var i=0;i<3&&s;i++){const e=t[i];if(!s.children||!s.children[e])break;s=s.children[e],n=n+(n?"/":"")+e}s&&this.renderTabMenu(s,n)}},syncRoute(){if(!this.tree)return;const e=document.getElementById("sidebar");if(e){e.querySelectorAll(".active").forEach(e=>e.classList.remove("active"));const t=new URL(L.url(...(L.env.dispatchpath||[]).slice(0,3)),location.href).pathname;let a=null,s=-1;if(e.querySelectorAll("a.sidebar-sub-link, a.sidebar-nav-parent, a.sidebar-logout").forEach(e=>{const n=e.pathname;(t===n||t.startsWith(n+"/"))&&n.length>s&&(a=e,s=n.length)}),a){const t=a.closest(".sidebar-sub-item");if(t){t.classList.add("active");const s=a.closest(".sidebar-accordion-item");s&&(s.classList.add("active"),"true"!==e.getAttribute("data-collapsed")&&e.querySelectorAll(".sidebar-accordion-item").forEach(e=>e.setAttribute("data-open",e===s?"true":"false")))}else a.classList.contains("sidebar-logout")?a.classList.add("active"):a.closest(".sidebar-nav-item")?.classList.add("active")}}this.renderBreadcrumb(this.branch,this.branchUrl),this.renderTabs(this.tree)},closeSurfaces(){this.closePalette(),window.ShadcnSidebar?.closeDrawer?.(),window.ShadcnSidebar?._hideCollapsedPopover?.()},renderSidebarNav(e,t){const a=document.getElementById("sidebar-nav"),s=document.getElementById("sidebar-footer");if(!a)return;const n=ui.menu.getChildren(e),i=L.env.dispatchpath||[],r="1"===document.getElementById("sidebar")?.getAttribute("data-shadcn-restored"),l=r?Array.from(a.querySelectorAll('.sidebar-accordion-item[data-open="true"]'),e=>e.getAttribute("data-section")):null,c=r?a.scrollTop:0;a.innerHTML="",s&&(s.innerHTML="",s.hidden=!0),n.forEach(e=>{if(this._isLogoutMenuItem(e)&&s){const a=i[1]==e.name,n=this._sectionIcon(e.name,18);return s.appendChild(E("a",{class:"sidebar-logout"+(a?" active":""),href:L.url(t,e.name),"aria-label":_(e.title),onclick:()=>{window.ShadcnSidebar&&window.ShadcnSidebar.closeDrawer&&window.ShadcnSidebar.closeDrawer()}},[E("span",{class:"sidebar-icon","aria-hidden":"true"},[n]),E("span",{class:"sidebar-label"},[_(e.title)])])),void(s.hidden=!1)}const n=ui.menu.getChildren(e),r=i[1]==e.name,l=this._sectionIcon(e.name,18);if(0===n.length)return void a.appendChild(E("div",{class:"sidebar-nav-item"+(r?" active":"")},[E("a",{class:"sidebar-nav-parent no-sub",href:L.url(t,e.name),onclick:()=>{window.ShadcnSidebar&&window.ShadcnSidebar.closeDrawer&&window.ShadcnSidebar.closeDrawer()}},[E("span",{class:"sidebar-icon","aria-hidden":"true"},[l]),E("span",{class:"sidebar-label"},[_(e.title)])])]));const c=E("div",{class:"sidebar-accordion-item"+(r?" active":""),"data-open":r?"true":"false","data-section":e.name},[E("button",{class:"sidebar-nav-parent",type:"button"},[E("span",{class:"sidebar-icon","aria-hidden":"true"},[l]),E("span",{class:"sidebar-label"},[_(e.title)]),E("span",{class:"sidebar-chevron","aria-hidden":"true"},[this._iconFile("chevron-down",18)])]),E("div",{class:"sidebar-accordion-sub"},[E("ul",{class:"sidebar-sub-list"},n.map(a=>{const s=r&&i[2]==a.name;return E("li",{class:"sidebar-sub-item"+(s?" active":"")},[E("a",{class:"sidebar-sub-link",href:L.url(t,e.name,a.name),onclick:()=>{window.ShadcnSidebar&&window.ShadcnSidebar.closeDrawer&&window.ShadcnSidebar.closeDrawer()}},[_(a.title)])])}))])]);a.appendChild(c)}),r&&(a.querySelectorAll(".sidebar-accordion-item").forEach(e=>{e.setAttribute("data-open",l.includes(e.getAttribute("data-section"))?"true":"false")}),a.scrollTop=c)},initPalette(e,t){const a=document.getElementById("cmdk-trigger");if(!a||this.palIndex)return;this.palIndex=[],ui.menu.getChildren(e).forEach(e=>{const a=ui.menu.getChildren(e);0!==a.length?a.forEach(a=>{this.palIndex.push({title:_(a.title),group:_(e.title),icon:e.name,path:`${t}/${e.name}/${a.name}`,href:L.url(t,e.name,a.name),isLogout:!1})}):this.palIndex.push({title:_(e.title),group:null,icon:e.name,path:`${t}/${e.name}`,href:L.url(t,e.name),isLogout:this._isLogoutMenuItem(e)})}),this.palModes=[{mode:"light",title:_("Light Mode"),iconFile:"sun"},{mode:"dark",title:_("Dark Mode"),iconFile:"moon"},{mode:"device",title:_("Automatic"),iconFile:"monitor"}];const s=/Mac|iP(ad|hone|od)/.test(navigator.platform);a.setAttribute("aria-keyshortcuts",s?"Meta+K":"Control+K"),a.addEventListener("click",()=>this.openPalette()),document.addEventListener("keydown",e=>{e.isComposing||229===e.keyCode||(!(s?e.metaKey:e.ctrlKey)||e.altKey||e.shiftKey||"k"!==(e.key||"").toLowerCase()?"Escape"===e.key&&this.palOverlay&&!this.palOverlay.hidden&&this.closePalette():(e.preventDefault(),this.palOverlay&&!this.palOverlay.hidden?this.closePalette():this.openPalette()))})},openPalette(){this.palOverlay||this._buildPalette();const e=document.activeElement;this.palReturn=e&&e!==document.body&&!this.palOverlay.contains(e)?e:null,this.palOverlay.hidden=!1,this._renderPalette(),this.palInput.focus(),this.palInput.select()},closePalette(){if(!this.palOverlay||this.palOverlay.hidden)return;this.palOverlay.hidden=!0,this.palInput.value="";const e=this.palReturn||document.getElementById("cmdk-trigger");this.palReturn=null,e&&e.isConnected&&e.focus()},_buildPalette(){this.palInput=E("input",{class:"cmdk-input",type:"text",placeholder:_("Type to filter…"),"aria-label":_("Type to filter…"),role:"combobox","aria-expanded":"true","aria-controls":"cmdk-list","aria-autocomplete":"list",autocomplete:"off",spellcheck:"false",enterkeyhint:"go"}),this.palInput.addEventListener("input",()=>this._renderPalette()),this.palInput.addEventListener("keydown",e=>{e.isComposing||229===e.keyCode||("ArrowDown"===e.key||"ArrowUp"===e.key?(e.preventDefault(),this._palMove("ArrowDown"===e.key?1:-1)):"Enter"===e.key&&(e.preventDefault(),this.palList.querySelector(".is-selected")?.click()))});const e=E("button",{class:"cmdk-clear",type:"button","aria-label":_("Clear")});e.addEventListener("click",()=>{this.palInput.value="",this._renderPalette(),this.palInput.focus()});const t=E("button",{class:"cmdk-cancel",type:"button"},[_("Cancel")]);t.addEventListener("click",()=>this.closePalette()),this.palList=E("div",{id:"cmdk-list",class:"cmdk-list",role:"listbox","aria-label":_("Navigation")}),this.palList.addEventListener("mousemove",e=>{const t=e.target?.closest?.(".cmdk-row");t&&!t.classList.contains("is-selected")&&this._palSelect(t)});const a=E("div",{class:"cmdk-footer"},[E("span",{class:"cmdk-hint"},[E("kbd",{},["↑"]),E("kbd",{},["↓"]),_("Select")]),E("span",{class:"cmdk-hint"},[E("kbd",{},["↵"]),_("OK")]),E("span",{class:"cmdk-hint"},[E("kbd",{},[">"]),_("Command")]),E("span",{class:"cmdk-hint cmdk-hint-close"},[E("kbd",{},["esc"]),_("Close")])]),s=E("div",{class:"cmdk-panel",role:"dialog","aria-modal":"true","aria-label":_("Navigation")},[E("div",{class:"cmdk-inputrow"},[this.palInput,e,t]),this.palList,a]);s.addEventListener("keydown",a=>{if("Tab"!==a.key)return;const s=[this.palInput,e,t].filter(e=>null!==e.offsetParent);if(!s.length)return;a.preventDefault();const n=s.indexOf(document.activeElement);s[(n+(a.shiftKey?-1:1)+s.length)%s.length].focus()}),this.palOverlay=E("div",{id:"cmdk-overlay",hidden:""},[s]),this.palOverlay.addEventListener("pointerdown",e=>{e.target===this.palOverlay&&this.closePalette()}),document.body.appendChild(this.palOverlay)},_palReadRecents(){try{const e=JSON.parse(localStorage.getItem(RECENTS_KEY));return Array.isArray(e)?e.filter(e=>"string"==typeof e):[]}catch(e){return[]}},_palRecordRecent(e){try{localStorage.setItem(RECENTS_KEY,JSON.stringify([e,...this._palReadRecents().filter(t=>t!==e)]))}catch(e){}},_palBrowsePages(){const e=this._palReadRecents().filter(e=>this.palIndex.some(t=>t.path===e&&!t.isLogout)),t=t=>{const a=e.indexOf(t.path);return a<0?0:e.length-a};return this.palIndex.filter(e=>!e.isLogout).sort((e,a)=>t(a)-t(e))},_renderPalette(){const e=this.palInput.value.trimStart(),t=e.startsWith(">"),a=(t?e.slice(1):e).trim().toLowerCase(),s=localStorage.getItem("shadcn.theme")||"device";let n;if(a){const e=[];(t?this.palIndex.filter(e=>e.isLogout):this.palIndex).forEach(t=>{const s=this._palScore(a,t.title,t.path,t.group);s&&e.push({score:s.score,node:this._palPageRow(t,s.ranges,s.groupRanges)})}),this.palModes.forEach(t=>{const n=this._palScore(a,t.title,`theme ${t.mode}`);n&&e.push({score:n.score,node:this._palModeRow(t,s,n.ranges)})}),e.sort((e,t)=>t.score-e.score),n=e.map(e=>e.node)}else if(n=[],t||this._palBrowsePages().forEach(e=>n.push(this._palPageRow(e,null))),n.push(E("div",{class:"cmdk-group",role:"presentation"},[_("Design")])),this.palModes.forEach(e=>n.push(this._palModeRow(e,s,null))),t){const e=this.palIndex.find(e=>e.isLogout);e&&n.push(this._palPageRow(e,null))}n.length||(n=[E("div",{class:"cmdk-empty",role:"presentation"},[_("No entries available")])]),this.palList.replaceChildren(...n),this.palList.scrollTop=0;const i=this.palList.querySelectorAll(".cmdk-row");i.forEach((e,t)=>e.id=`cmdk-row-${t}`),i.length?this._palSelect(i[0]):this.palInput.removeAttribute("aria-activedescendant")},_palPageRow(e,t,a){const s=E("a",{class:"cmdk-row",href:e.href,role:"option","aria-selected":"false",tabindex:"-1"},[this._sectionIcon(e.icon,15),E("span",{class:"cmdk-title"},this._palMark(e.title,t)),e.group?E("span",{class:"cmdk-group-name"},this._palMark(e.group,a)):""]);return e.isLogout?s.addEventListener("click",()=>{window.shadcnSuppressSidebarCache=!0;try{sessionStorage.removeItem("shadcn.sidebar.cache")}catch(e){}}):s.addEventListener("click",()=>this._palRecordRecent(e.path)),s},_palModeRow(e,t,a){const s=t===e.mode,n=E("button",{class:"cmdk-row cmdk-cmd",type:"button",role:"option","aria-selected":"false",tabindex:"-1","data-mode":e.mode},[this._iconFile(e.iconFile,15),E("span",{class:"cmdk-title"},this._palMark(e.title,a)),s?E("span",{class:"cmdk-check","aria-hidden":"true"}):""]);return n.addEventListener("click",()=>{window.ShadcnSidebar?.applyTheme?.(e.mode),this._renderPalette(),this.palInput.focus();const t=this.palList.querySelector(`.cmdk-row[data-mode="${e.mode}"]`);t&&this._palSelect(t)}),n},_palScore(e,t,a,s){const n=this._palSub(e,t.toLowerCase());if(n)return{score:n.score+10,ranges:n.ranges,groupRanges:null};const i=s?this._palSub(e,s.toLowerCase()):null;if(i)return{score:i.score+5,ranges:null,groupRanges:i.ranges};const r=this._palSub(e,String(a||"").toLowerCase());return r?{score:r.score,ranges:null,groupRanges:null}:null},_palSub(e,t){let a=0,s=0,n=0;const i=[];for(let r=0;r0?n+1:1,s+=n+(0===c||" "===t[c-1]||"/"===t[c-1]?3:0),i.length&&i[i.length-1][1]===c?i[i.length-1][1]=c+1:i.push([c,c+1]),a=c+1}return{score:s-.02*t.length,ranges:i}},_palMark(e,t){if(!t||e.toLowerCase().length!==e.length)return[e];const a=[];let s=0;return t.forEach(([t,n])=>{t>s&&a.push(e.slice(s,t)),a.push(E("mark",{},[e.slice(t,n)])),s=n}),se.classList.contains("is-selected")),s=t[(a+e+t.length)%t.length];this._palSelect(s),s.scrollIntoView({block:"nearest"})},renderBreadcrumb(e,t){const a=document.getElementById("topbar-breadcrumb");if(!a)return;a.innerHTML="";const s=L.env.dispatchpath||[],n=s[1]||"",i=s[2]||"",r=(e.children||{})[n],l=r&&r.children?r.children[i]:null;r&&a.appendChild(E("span",{class:"breadcrumb-item"},[_(r.title)])),l&&(a.appendChild(E("span",{class:"breadcrumb-sep"},[this._iconFile("chevron-right",14)])),a.appendChild(E("span",{class:"breadcrumb-item active"},[_(l.title)])))},renderTabMenu(e,t,a){const s=document.getElementById("tabmenu");if(!s)return;const n=(a||0)+1,i=E("ul",{class:"tabs"}),r=ui.menu.getChildren(e);let l=null;if(0===r.length)return;const c=L.env.dispatchpath||[];return r.forEach(e=>{const a=c[n+2]==e.name,s=a?" active":"",r="tabmenu-item-%s %s".format(e.name,s);i.appendChild(E("li",{class:r},[E("a",{href:L.url(t,e.name)},[_(e.title)])])),a&&(l=e)}),s.appendChild(i),s.style.display="",l&&this.renderTabMenu(l,t+"/"+l.name,n),i},initUciIndicator(){const e=ui.changes&&ui.changes.setIndicator;e&&(ui.changes.setIndicator=function(t){e.call(this,t),document.querySelectorAll('[data-indicator="uci-changes"]').forEach(e=>{e.setAttribute("data-count",t||0)})})}}); \ No newline at end of file +"use strict";"require baseclass";"require ui";const ICON_MAP={status:"activity",system:"settings",network:"network",services:"layers",nas:"hard-drive",control:"sliders-horizontal",vpn:"shield",docker:"container",statistics:"chart-bar",nlbw:"gauge",asterisk:"phone",logout:"log-out",default:"layout-dashboard"},CACHE_KEY="shadcn.sidebar.cache",RECENTS_KEY="shadcn.palette.recents";return baseclass.extend({__init__(){ui.menu.load().then(e=>{this.renderSidebarChrome(),this.render(e),this.initUciIndicator(),this.cacheSidebar(),window.addEventListener("pagehide",()=>this.cacheSidebar()),document.dispatchEvent(new Event("shadcn-sidebar-ready"))})},cacheSidebar(){if(window.shadcnSuppressSidebarCache)return;const e=document.getElementById("sidebar"),t=document.getElementById("sidebar-nav");if(e&&t)try{sessionStorage.setItem(CACHE_KEY,JSON.stringify({v:1,lang:document.documentElement.lang||"",html:e.innerHTML,scroll:t.scrollTop||0}))}catch(e){}},_mediaBase(){const e=document.documentElement.getAttribute("data-shadcn-media"),t=document.getElementById("sidebar"),a=t&&t.getAttribute("data-media");return String(e||a||"/luci-static/shadcn").replace(/\/$/,"")},_sectionIcon(e,t){const a=String(e||"").toLowerCase(),s=ICON_MAP[a]||ICON_MAP.default;return this._iconFile(s,t)},_isLogoutMenuItem(e){const t=String(e&&null!=e.name?e.name:"").toLowerCase();return"logout"===t||t.endsWith("/logout")},_iconFile(e,t){const a=this._mediaBase();return E("img",{src:`${a}/icons/${e}.svg`,width:String(t),height:String(t),alt:"",loading:"lazy",class:"shadcn-icon"})},_resolveMenuBranch(e){const t=L.env.dispatchpath||[],a=L.env.requestpath||[],s=ui.menu.getChildren(e);let n=a.length&&a[0]||t.length&&t[0]||"admin",i=null;for(let e=0;e=3){for(var i=0;i<3&&s;i++){const e=t[i];if(!s.children||!s.children[e])break;s=s.children[e],n=n+(n?"/":"")+e}s&&this.renderTabMenu(s,n)}},syncRoute(){if(!this.tree)return;const e=document.getElementById("sidebar");if(e){e.querySelectorAll(".active").forEach(e=>e.classList.remove("active"));const t=new URL(L.url(...(L.env.dispatchpath||[]).slice(0,3)),location.href).pathname;let a=null,s=-1;if(e.querySelectorAll("a.sidebar-sub-link, a.sidebar-nav-parent, a.sidebar-logout").forEach(e=>{const n=e.pathname;(t===n||t.startsWith(n+"/"))&&n.length>s&&(a=e,s=n.length)}),a){const t=a.closest(".sidebar-sub-item");if(t){t.classList.add("active");const s=a.closest(".sidebar-accordion-item");s&&(s.classList.add("active"),"true"!==e.getAttribute("data-collapsed")&&e.querySelectorAll(".sidebar-accordion-item").forEach(e=>e.setAttribute("data-open",e===s?"true":"false")))}else a.classList.contains("sidebar-logout")?a.classList.add("active"):a.closest(".sidebar-nav-item")?.classList.add("active")}}this.renderBreadcrumb(this.branch,this.branchUrl),this.renderTabs(this.tree)},closeSurfaces(){this.closePalette(),window.ShadcnSidebar?.closeDrawer?.(),window.ShadcnSidebar?._hideCollapsedPopover?.()},renderSidebarNav(e,t){const a=document.getElementById("sidebar-nav"),s=document.getElementById("sidebar-footer");if(!a)return;const n=ui.menu.getChildren(e),i=L.env.dispatchpath||[],r="1"===document.getElementById("sidebar")?.getAttribute("data-shadcn-restored"),l=r?Array.from(a.querySelectorAll('.sidebar-accordion-item[data-open="true"]'),e=>e.getAttribute("data-section")):null,o=r?a.scrollTop:0;a.innerHTML="",s&&(s.innerHTML="",s.hidden=!0),n.forEach(e=>{if(this._isLogoutMenuItem(e)&&s){const a=i[1]==e.name,n=this._sectionIcon(e.name,18);return s.appendChild(E("a",{class:"sidebar-logout"+(a?" active":""),href:L.url(t,e.name),"aria-label":_(e.title),onclick:()=>{window.ShadcnSidebar&&window.ShadcnSidebar.closeDrawer&&window.ShadcnSidebar.closeDrawer()}},[E("span",{class:"sidebar-icon","aria-hidden":"true"},[n]),E("span",{class:"sidebar-label"},[_(e.title)])])),void(s.hidden=!1)}const n=ui.menu.getChildren(e),r=i[1]==e.name,l=this._sectionIcon(e.name,18);if(0===n.length)return void a.appendChild(E("div",{class:"sidebar-nav-item"+(r?" active":"")},[E("a",{class:"sidebar-nav-parent no-sub",href:L.url(t,e.name),onclick:()=>{window.ShadcnSidebar&&window.ShadcnSidebar.closeDrawer&&window.ShadcnSidebar.closeDrawer()}},[E("span",{class:"sidebar-icon","aria-hidden":"true"},[l]),E("span",{class:"sidebar-label"},[_(e.title)])])]));const o=E("div",{class:"sidebar-accordion-item"+(r?" active":""),"data-open":r?"true":"false","data-section":e.name},[E("button",{class:"sidebar-nav-parent",type:"button"},[E("span",{class:"sidebar-icon","aria-hidden":"true"},[l]),E("span",{class:"sidebar-label"},[_(e.title)]),E("span",{class:"sidebar-chevron","aria-hidden":"true"},[this._iconFile("chevron-down",18)])]),E("div",{class:"sidebar-accordion-sub"},[E("ul",{class:"sidebar-sub-list"},n.map(a=>{const s=r&&i[2]==a.name;return E("li",{class:"sidebar-sub-item"+(s?" active":"")},[E("a",{class:"sidebar-sub-link",href:L.url(t,e.name,a.name),onclick:()=>{window.ShadcnSidebar&&window.ShadcnSidebar.closeDrawer&&window.ShadcnSidebar.closeDrawer()}},[_(a.title)])])}))])]);a.appendChild(o)}),r&&(a.querySelectorAll(".sidebar-accordion-item").forEach(e=>{e.setAttribute("data-open",l.includes(e.getAttribute("data-section"))?"true":"false")}),a.scrollTop=o)},initPalette(e,t){const a=document.getElementById("cmdk-trigger");if(!a||this.palIndex)return;this.palIndex=[],this.palAliases={},ui.menu.getChildren(e).forEach(e=>{const a=ui.menu.getChildren(e);0!==a.length?a.forEach(a=>{const s=_(a.title),n=_(e.title),i=`${t}/${e.name}/${a.name}`,r=e.children?.[a.name]??{},l=ui.menu.getChildren(r),o=r.action?.type,c="alias"===o?r.action.path.replace(`${i}/`,""):"firstchild"===o&&l.find(e=>!e.firstchild_ineligible)?.name;l.some(e=>e.name===c)?this.palAliases[i]=`${i}/${c}`:this.palIndex.push({title:s,group:n,icon:e.name,path:i,href:L.url(t,e.name,a.name),isLogout:!1}),l.forEach(r=>this.palIndex.push({title:_(r.title),parent:s,group:n,icon:e.name,path:`${i}/${r.name}`,href:L.url(t,e.name,a.name,r.name),isLogout:!1}))}):this.palIndex.push({title:_(e.title),group:null,icon:e.name,path:`${t}/${e.name}`,href:L.url(t,e.name),isLogout:this._isLogoutMenuItem(e)})}),this.palModes=[{mode:"light",title:_("Light Mode"),iconFile:"sun"},{mode:"dark",title:_("Dark Mode"),iconFile:"moon"},{mode:"device",title:_("Automatic"),iconFile:"monitor"}];const s=/Mac|iP(ad|hone|od)/.test(navigator.platform);a.setAttribute("aria-keyshortcuts",s?"Meta+K":"Control+K"),a.addEventListener("click",()=>this.openPalette()),document.addEventListener("keydown",e=>{e.isComposing||229===e.keyCode||(!(s?e.metaKey:e.ctrlKey)||e.altKey||e.shiftKey||"k"!==(e.key||"").toLowerCase()?"Escape"===e.key&&this.palOverlay&&!this.palOverlay.hidden&&this.closePalette():(e.preventDefault(),this.palOverlay&&!this.palOverlay.hidden?this.closePalette():this.openPalette()))})},openPalette(){this.palOverlay||this._buildPalette();const e=document.activeElement;this.palReturn=e&&e!==document.body&&!this.palOverlay.contains(e)?e:null,this.palOverlay.hidden=!1,this._renderPalette(),this.palInput.focus(),this.palInput.select()},closePalette(){if(!this.palOverlay||this.palOverlay.hidden)return;this.palOverlay.hidden=!0,this.palInput.value="";const e=this.palReturn||document.getElementById("cmdk-trigger");this.palReturn=null,e&&e.isConnected&&e.focus()},_buildPalette(){this.palInput=E("input",{class:"cmdk-input",type:"text",placeholder:_("Type to filter…"),"aria-label":_("Type to filter…"),role:"combobox","aria-expanded":"true","aria-controls":"cmdk-list","aria-autocomplete":"list",autocomplete:"off",spellcheck:"false",enterkeyhint:"go"}),this.palInput.addEventListener("input",()=>this._renderPalette()),this.palInput.addEventListener("keydown",e=>{e.isComposing||229===e.keyCode||("ArrowDown"===e.key||"ArrowUp"===e.key?(e.preventDefault(),this._palMove("ArrowDown"===e.key?1:-1)):"Enter"===e.key&&(e.preventDefault(),this.palList.querySelector(".is-selected")?.click()))});const e=E("button",{class:"cmdk-clear",type:"button","aria-label":_("Clear")});e.addEventListener("click",()=>{this.palInput.value="",this._renderPalette(),this.palInput.focus()});const t=E("button",{class:"cmdk-cancel",type:"button"},[_("Cancel")]);t.addEventListener("click",()=>this.closePalette()),this.palList=E("div",{id:"cmdk-list",class:"cmdk-list",role:"listbox","aria-label":_("Navigation")}),this.palList.addEventListener("mousemove",e=>{const t=e.target?.closest?.(".cmdk-row");t&&!t.classList.contains("is-selected")&&this._palSelect(t)});const a=E("div",{class:"cmdk-footer"},[E("span",{class:"cmdk-hint"},[E("kbd",{},["↑"]),E("kbd",{},["↓"]),_("Select")]),E("span",{class:"cmdk-hint"},[E("kbd",{},["↵"]),_("OK")]),E("span",{class:"cmdk-hint"},[E("kbd",{},[">"]),_("Command")]),E("span",{class:"cmdk-hint cmdk-hint-close"},[E("kbd",{},["esc"]),_("Close")])]),s=E("div",{class:"cmdk-panel",role:"dialog","aria-modal":"true","aria-label":_("Navigation")},[E("div",{class:"cmdk-inputrow"},[this.palInput,e,t]),this.palList,a]);s.addEventListener("keydown",a=>{if("Tab"!==a.key)return;const s=[this.palInput,e,t].filter(e=>null!==e.offsetParent);if(!s.length)return;a.preventDefault();const n=s.indexOf(document.activeElement);s[(n+(a.shiftKey?-1:1)+s.length)%s.length].focus()}),this.palOverlay=E("div",{id:"cmdk-overlay",hidden:""},[s]),this.palOverlay.addEventListener("pointerdown",e=>{e.target===this.palOverlay&&this.closePalette()}),document.body.appendChild(this.palOverlay)},_palReadRecents(){try{const e=JSON.parse(localStorage.getItem(RECENTS_KEY));return Array.isArray(e)?[...new Set(e.filter(e=>"string"==typeof e).map(e=>this.palAliases?.[e]??e))]:[]}catch(e){return[]}},_palRecordRecent(e){try{localStorage.setItem(RECENTS_KEY,JSON.stringify([e,...this._palReadRecents().filter(t=>t!==e)]))}catch(e){}},_palBrowsePages(){const e=this._palReadRecents().filter(e=>this.palIndex.some(t=>t.path===e&&!t.isLogout)),t=t=>{const a=e.indexOf(t.path);return a<0?0:e.length-a};return this.palIndex.filter(e=>!e.isLogout).sort((e,a)=>t(a)-t(e))},_renderPalette(){const e=this.palInput.value.trimStart(),t=e.startsWith(">"),a=(t?e.slice(1):e).trim().toLowerCase(),s=localStorage.getItem("shadcn.theme")||"device";let n;if(a){const e=[];(t?this.palIndex.filter(e=>e.isLogout):this.palIndex).forEach(t=>{const s=this._palScore(a,t.title,t.path,t.group,t.parent);s&&e.push({score:s.score,node:this._palPageRow(t,s.ranges,s.groupRanges,s.parentRanges)})}),this.palModes.forEach(t=>{const n=this._palScore(a,t.title,`theme ${t.mode}`);n&&e.push({score:n.score,node:this._palModeRow(t,s,n.ranges)})}),e.sort((e,t)=>t.score-e.score),n=e.map(e=>e.node)}else if(n=[],t||this._palBrowsePages().forEach(e=>n.push(this._palPageRow(e,null))),n.push(E("div",{class:"cmdk-group",role:"presentation"},[_("Design")])),this.palModes.forEach(e=>n.push(this._palModeRow(e,s,null))),t){const e=this.palIndex.find(e=>e.isLogout);e&&n.push(this._palPageRow(e,null))}n.length||(n=[E("div",{class:"cmdk-empty",role:"presentation"},[_("No entries available")])]),this.palList.replaceChildren(...n),this.palList.scrollTop=0;const i=this.palList.querySelectorAll(".cmdk-row");i.forEach((e,t)=>e.id=`cmdk-row-${t}`),i.length?this._palSelect(i[0]):this.palInput.removeAttribute("aria-activedescendant")},_palPageRow(e,t,a,s){const n=E("a",{class:"cmdk-row",href:e.href,role:"option","aria-selected":"false",tabindex:"-1"},[this._sectionIcon(e.icon,15),E("span",{class:"cmdk-title"},e.parent&&e.parent!==e.title?[E("span",{class:"cmdk-parent"},this._palMark(e.parent,s)),E("span",{class:"cmdk-label"},this._palMark(e.title,t))]:this._palMark(e.title,t)),e.group?E("span",{class:"cmdk-group-name"},this._palMark(e.group,a)):""]);return e.isLogout?n.addEventListener("click",()=>{window.shadcnSuppressSidebarCache=!0;try{sessionStorage.removeItem("shadcn.sidebar.cache")}catch(e){}}):n.addEventListener("click",()=>this._palRecordRecent(e.path)),n},_palModeRow(e,t,a){const s=t===e.mode,n=E("button",{class:"cmdk-row cmdk-cmd",type:"button",role:"option","aria-selected":"false",tabindex:"-1","data-mode":e.mode},[this._iconFile(e.iconFile,15),E("span",{class:"cmdk-title"},this._palMark(e.title,a)),s?E("span",{class:"cmdk-check","aria-hidden":"true"}):""]);return n.addEventListener("click",()=>{window.ShadcnSidebar?.applyTheme?.(e.mode),this._renderPalette(),this.palInput.focus();const t=this.palList.querySelector(`.cmdk-row[data-mode="${e.mode}"]`);t&&this._palSelect(t)}),n},_palScore(e,t,a,s,n){const i=this._palSub(e,t.toLowerCase());if(i)return{score:i.score+10,ranges:i.ranges,groupRanges:null};if(n){const a=n.toLowerCase(),s=this._palSub(e,a);if(s)return{score:s.score+7,ranges:null,groupRanges:null,parentRanges:s.ranges};const i=e.split(/\s+/);for(let e=1;e0?n+1:1,s+=n+(0===o||" "===t[o-1]||"/"===t[o-1]?3:0),i.length&&i[i.length-1][1]===o?i[i.length-1][1]=o+1:i.push([o,o+1]),a=o+1}return{score:s-.02*t.length,ranges:i}},_palMark(e,t){if(!t||e.toLowerCase().length!==e.length)return[e];const a=[];let s=0;return t.forEach(([t,n])=>{t>s&&a.push(e.slice(s,t)),a.push(E("mark",{},[e.slice(t,n)])),s=n}),se.classList.contains("is-selected")),s=t[(a+e+t.length)%t.length];this._palSelect(s),s.scrollIntoView({block:"nearest"})},renderBreadcrumb(e,t){const a=document.getElementById("topbar-breadcrumb");if(!a)return;a.innerHTML="";const s=L.env.dispatchpath||[],n=s[1]||"",i=s[2]||"",r=(e.children||{})[n],l=r&&r.children?r.children[i]:null;r&&a.appendChild(E("span",{class:"breadcrumb-item"},[_(r.title)])),l&&(a.appendChild(E("span",{class:"breadcrumb-sep"},[this._iconFile("chevron-right",14)])),a.appendChild(E("span",{class:"breadcrumb-item active"},[_(l.title)])))},renderTabMenu(e,t,a){const s=document.getElementById("tabmenu");if(!s)return;const n=(a||0)+1,i=E("ul",{class:"tabs"}),r=ui.menu.getChildren(e);let l=null;if(0===r.length)return;const o=L.env.dispatchpath||[];return r.forEach(e=>{const a=o[n+2]==e.name,s=a?" active":"",r="tabmenu-item-%s %s".format(e.name,s);i.appendChild(E("li",{class:r},[E("a",{href:L.url(t,e.name)},[_(e.title)])])),a&&(l=e)}),s.appendChild(i),s.style.display="",l&&this.renderTabMenu(l,t+"/"+l.name,n),i},initUciIndicator(){const e=ui.changes&&ui.changes.setIndicator;e&&(ui.changes.setIndicator=function(t){e.call(this,t),document.querySelectorAll('[data-indicator="uci-changes"]').forEach(e=>{e.setAttribute("data-count",t||0)})})}}); \ No newline at end of file diff --git a/luci-theme-shadcn/htdocs/luci-static/shadcn/main.css b/luci-theme-shadcn/htdocs/luci-static/shadcn/main.css index deb278903..8dc3f6b96 100644 --- a/luci-theme-shadcn/htdocs/luci-static/shadcn/main.css +++ b/luci-theme-shadcn/htdocs/luci-static/shadcn/main.css @@ -1,2 +1,2 @@ /*! tailwindcss v4.3.0 | MIT License | https://tailwindcss.com */ -@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-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-leading:initial;--tw-font-weight:initial;--tw-tracking:initial;--tw-translate-x:0;--tw-translate-y:0;--tw-translate-z:0;--tw-content:"";--tw-scale-x:1;--tw-scale-y:1;--tw-scale-z:1;--tw-gradient-position:initial;--tw-gradient-from:#0000;--tw-gradient-via:#0000;--tw-gradient-to:#0000;--tw-gradient-stops:initial;--tw-gradient-via-stops:initial;--tw-gradient-from-position:0%;--tw-gradient-via-position:50%;--tw-gradient-to-position:100%;--tw-space-y-reverse:0;--tw-backdrop-blur:initial;--tw-backdrop-brightness:initial;--tw-backdrop-contrast:initial;--tw-backdrop-grayscale:initial;--tw-backdrop-hue-rotate:initial;--tw-backdrop-invert:initial;--tw-backdrop-opacity:initial;--tw-backdrop-saturate:initial;--tw-backdrop-sepia:initial;--tw-border-spacing-x:0;--tw-border-spacing-y:0}}}@layer theme{:root,:host{--font-sans:var(--font-sans);--font-mono:var(--font-mono);--spacing:.25rem;--breakpoint-md:48rem;--container-xs:20rem;--container-2xl:42rem;--text-xs:.75rem;--text-xs--line-height:calc(1 / .75);--text-sm:.875rem;--text-sm--line-height:calc(1.25 / .875);--text-base:1rem;--text-base--line-height:calc(1.5 / 1);--text-lg:1.125rem;--text-lg--line-height:calc(1.75 / 1.125);--text-xl:1.25rem;--text-xl--line-height:calc(1.75 / 1.25);--text-2xl:1.5rem;--text-2xl--line-height:calc(2 / 1.5);--font-weight-normal:400;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--tracking-tight:-.025em;--tracking-wide:.025em;--leading-tight:1.25;--leading-snug:1.375;--leading-normal:1.5;--leading-relaxed:1.625;--radius-sm:calc(var(--radius-base) * .5);--radius-md:calc(var(--radius-base) * .75);--radius-lg:var(--radius-base);--radius-xl:calc(var(--radius-base) * 1.5);--shadow-sm:var(--shadow-sm);--ease-out:cubic-bezier(0, 0, .2, 1);--animate-spin:spin 1s linear infinite;--blur-sm:8px;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono);--radius:calc(var(--radius-base) * .5);--color-sidebar-fg:var(--sidebar-foreground);--color-terminal-fg:var(--terminal-foreground)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.collapse{visibility:collapse}.fixed{position:fixed}.relative{position:relative}.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}.hidden{display:none}.inline{display:inline}.overflow-y-auto{overflow-y:auto}.border{border-style:var(--tw-border-style);border-width:1px}.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)}.select-all{-webkit-user-select:all;user-select:all}}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/luci-static/shadcn/inter-cyrillic-ext-wght-normal.woff2)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/luci-static/shadcn/inter-cyrillic-wght-normal.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/luci-static/shadcn/inter-greek-ext-wght-normal.woff2)format("woff2-variations");unicode-range:U+1F??}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/luci-static/shadcn/inter-greek-wght-normal.woff2)format("woff2-variations");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/luci-static/shadcn/inter-vietnamese-wght-normal.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/luci-static/shadcn/inter-latin-ext-wght-normal.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/luci-static/shadcn/inter-latin-wght-normal.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--bg:oklch(98.5% .004 275);--surface:oklch(100% 0 0);--text:oklch(18% .02 275);--brand:oklch(56.7% .158 275);--on-brand:oklch(100% 0 0);--success:oklch(58% .15 150);--warning:oklch(70% .13 75);--danger:oklch(55% .2 25);--info:oklch(58% .13 250);--overlay-base:oklch(0% 0 0);--background:oklch(98.5% .004 275);--foreground:oklch(18% .02 275);--primary:oklch(56.7% .158 275);--primary-foreground:oklch(100% 0 0);--panel-bg:oklch(100% 0 0);--destructive:oklch(55% .2 25);--ring:oklch(56.7% .158 275);--border:oklch(89.65% .0058 275);--input:oklch(89.65% .0058 275);--sidebar-bg:oklch(98.5% .004 275);--sidebar-foreground:oklch(18% .02 275);--sidebar-accent-fg:oklch(18% .02 275);--sidebar-accent:oklch(94.5% .004 275);--sidebar-hover-bg:oklch(94.5% .004 275);--login-path-stroke:oklch(56.7% .158 275);--progress-bar-end:oklch(56.7% .158 275);--destructive-fg:oklch(100% 0 0);--success-fg:oklch(100% 0 0);--info-fg:oklch(100% 0 0);--warning-fg:oklch(20% .05 75);--terminal-foreground:oklch(85% .08 155);--terminal-hover:oklch(85% .08 155/.06);--muted-foreground:oklch(52.62% .0131 275);--secondary-foreground:oklch(30.08% .0176 275);--sidebar-muted:oklch(52.62% .0131 275);--focus-ring:oklch(56.7% .158 275/.5);--muted:oklch(95% .004 275);--secondary:oklch(93.5% .004 275);--label-surface:oklch(96.3% .004 275);--panel-border:oklch(89.65% .0058 275);--primary-hover:oklch(62.7% .158 275);--sidebar-active-bg:oklch(56.7% .158 275/.12);--sidebar-active-fg:oklch(48.7% .158 275);--sidebar-border:oklch(89.65% .0058 275);--terminal-bg:oklch(14% .02 264);--warning-soft-fg:oklch(42% .12 75);--progress-bar-start:oklch(74.02% .0948 275);--login-left-bg:oklch(93.5% .004 275);--primary-a5:oklch(56.7% .158 275/.05);--primary-a10:oklch(56.7% .158 275/.1);--primary-a15:oklch(56.7% .158 275/.15);--primary-a20:oklch(56.7% .158 275/.2);--primary-a25:oklch(56.7% .158 275/.25);--primary-a60:oklch(56.7% .158 275/.6);--primary-a70:oklch(56.7% .158 275/.7);--primary-a90:oklch(56.7% .158 275/.9);--destructive-a8:oklch(55% .2 25/.08);--destructive-a10:oklch(55% .2 25/.1);--destructive-a20:oklch(55% .2 25/.2);--destructive-a30:oklch(55% .2 25/.3);--destructive-a40:oklch(55% .2 25/.4);--destructive-a50:oklch(55% .2 25/.5);--destructive-a60:oklch(55% .2 25/.6);--destructive-a70:oklch(55% .2 25/.7);--destructive-a80:oklch(55% .2 25/.8);--destructive-a90:oklch(55% .2 25/.9);--foreground-a5:oklch(18% .02 275/.05);--foreground-a30:oklch(18% .02 275/.3);--secondary-a80:oklch(93.5% .004 275/.8);--muted-a30:oklch(95% .004 275/.3);--muted-a80:oklch(95% .004 275/.8);--muted-foreground-a70:oklch(52.62% .0131 275/.7);--success-a10:oklch(58% .15 150/.1);--success-a15:oklch(58% .15 150/.15);--success-a30:oklch(58% .15 150/.3);--success-a40:oklch(58% .15 150/.4);--success-a80:oklch(58% .15 150/.8);--warning-a10:oklch(70% .13 75/.1);--warning-a15:oklch(70% .13 75/.15);--warning-a30:oklch(70% .13 75/.3);--warning-a40:oklch(70% .13 75/.4);--info-a10:oklch(58% .13 250/.1);--info-a15:oklch(58% .13 250/.15);--info-a30:oklch(58% .13 250/.3);--info-a40:oklch(58% .13 250/.4);--info-a80:oklch(58% .13 250/.8);--border-a60:oklch(89.65% .0058 275/.6);--border-a80:oklch(89.65% .0058 275/.8);--input-a30:oklch(89.65% .0058 275/.3);--label-surface-a50:oklch(96.3% .004 275/.5);--overlay-base-a50:oklch(0% 0 0/.5);--overlay-base-a60:oklch(0% 0 0/.6);--background-a60:oklch(98.5% .004 275/.6);--ring-a50:oklch(56.7% .158 275/.5);--font-sans:"Inter Variable", ui-sans-serif, system-ui, sans-serif;--font-mono:ui-monospace, "SF Mono", Menlo, Monaco, Consolas, monospace;--radius-base:.5rem;--shadow-sm:0 1px 3px 0 oklch(0% 0 0/.1), 0 1px 2px -1px oklch(0% 0 0/.1)}[data-darkmode=true]{--bg:oklch(15.9% .005 264);--surface:oklch(20.5% .004 264);--text:oklch(90% .006 264);--brand:oklch(56.7% .158 275);--on-brand:oklch(100% 0 0);--success:oklch(63.7% .175 147);--warning:oklch(80% .12 80);--danger:oklch(63% .16 25);--info:oklch(70% .1 250);--overlay-base:oklch(0% 0 0);--background:oklch(15.9% .005 264);--foreground:oklch(90% .006 264);--primary:oklch(56.7% .158 275);--primary-foreground:oklch(100% 0 0);--panel-bg:oklch(20.5% .004 264);--destructive:oklch(63% .16 25);--ring:oklch(56.7% .158 275);--border:oklch(26.27% .0051 264);--input:oklch(26.27% .0051 264);--sidebar-bg:oklch(15.9% .005 264);--sidebar-foreground:oklch(90% .006 264);--sidebar-accent-fg:oklch(90% .006 264);--sidebar-accent:oklch(23% .004 264);--sidebar-hover-bg:oklch(23% .004 264);--login-path-stroke:oklch(56.7% .158 275);--progress-bar-end:oklch(56.7% .158 275);--destructive-fg:oklch(100% 0 0);--success-fg:oklch(100% 0 0);--info-fg:oklch(100% 0 0);--warning-fg:oklch(20% .05 75);--terminal-foreground:oklch(85% .08 155);--terminal-hover:oklch(85% .08 155/.06);--muted-foreground:oklch(58.14% .0056 264);--secondary-foreground:oklch(78.89% .0059 264);--sidebar-muted:oklch(58.14% .0056 264);--focus-ring:oklch(56.7% .158 275/.5);--muted:oklch(18.9% .005 264);--secondary:oklch(22.5% .004 264);--label-surface:oklch(19.5% .004 264);--panel-border:oklch(90% .006 264/.08);--primary-hover:oklch(62.7% .158 275);--sidebar-active-bg:oklch(56.7% .158 275/.14);--sidebar-active-fg:oklch(78.7% .158 275);--sidebar-border:oklch(90% .006 264/.08);--terminal-bg:oklch(12% .02 264);--warning-soft-fg:oklch(86% .1 85);--progress-bar-start:oklch(42.22% .0964 274.8);--login-left-bg:oklch(13.4% .005 264);--primary-a5:oklch(56.7% .158 275/.05);--primary-a10:oklch(56.7% .158 275/.1);--primary-a15:oklch(56.7% .158 275/.15);--primary-a20:oklch(56.7% .158 275/.2);--primary-a25:oklch(56.7% .158 275/.25);--primary-a60:oklch(56.7% .158 275/.6);--primary-a70:oklch(56.7% .158 275/.7);--primary-a90:oklch(56.7% .158 275/.9);--destructive-a8:oklch(63% .16 25/.08);--destructive-a10:oklch(63% .16 25/.1);--destructive-a20:oklch(63% .16 25/.2);--destructive-a30:oklch(63% .16 25/.3);--destructive-a40:oklch(63% .16 25/.4);--destructive-a50:oklch(63% .16 25/.5);--destructive-a60:oklch(63% .16 25/.6);--destructive-a70:oklch(63% .16 25/.7);--destructive-a80:oklch(63% .16 25/.8);--destructive-a90:oklch(63% .16 25/.9);--foreground-a5:oklch(90% .006 264/.05);--foreground-a30:oklch(90% .006 264/.3);--secondary-a80:oklch(22.5% .004 264/.8);--muted-a30:oklch(18.9% .005 264/.3);--muted-a80:oklch(18.9% .005 264/.8);--muted-foreground-a70:oklch(58.14% .0056 264/.7);--success-a10:oklch(63.7% .175 147/.1);--success-a15:oklch(63.7% .175 147/.15);--success-a30:oklch(63.7% .175 147/.3);--success-a40:oklch(63.7% .175 147/.4);--success-a80:oklch(63.7% .175 147/.8);--warning-a10:oklch(80% .12 80/.1);--warning-a15:oklch(80% .12 80/.15);--warning-a30:oklch(80% .12 80/.3);--warning-a40:oklch(80% .12 80/.4);--info-a10:oklch(70% .1 250/.1);--info-a15:oklch(70% .1 250/.15);--info-a30:oklch(70% .1 250/.3);--info-a40:oklch(70% .1 250/.4);--info-a80:oklch(70% .1 250/.8);--border-a60:oklch(26.27% .0051 264/.6);--border-a80:oklch(26.27% .0051 264/.8);--input-a30:oklch(26.27% .0051 264/.3);--label-surface-a50:oklch(19.5% .004 264/.5);--overlay-base-a50:oklch(0% 0 0/.5);--overlay-base-a60:oklch(0% 0 0/.6);--background-a60:oklch(15.9% .005 264/.6);--ring-a50:oklch(56.7% .158 275/.5)}:where(html,.sidebar-nav,#maincontent,.cmdk-list,.cbi-dropdown>ul.dropdown,#modal_overlay,#modal_overlay>.modal>ul,#modal_overlay>.modal pre,.cbi-tabmenu,.tabs,textarea){scrollbar-color:var(--foreground-a30) transparent;scrollbar-width:thin}:where(html,.sidebar-nav,#maincontent,.cmdk-list,.cbi-dropdown>ul.dropdown,#modal_overlay,#modal_overlay>.modal>ul,#modal_overlay>.modal pre,.cbi-tabmenu,.tabs,textarea)::-webkit-scrollbar{width:8px;height:8px}:where(html,.sidebar-nav,#maincontent,.cmdk-list,.cbi-dropdown>ul.dropdown,#modal_overlay,#modal_overlay>.modal>ul,#modal_overlay>.modal pre,.cbi-tabmenu,.tabs,textarea)::-webkit-scrollbar-track{background-color:#0000}:where(html,.sidebar-nav,#maincontent,.cmdk-list,.cbi-dropdown>ul.dropdown,#modal_overlay,#modal_overlay>.modal>ul,#modal_overlay>.modal pre,.cbi-tabmenu,.tabs,textarea)::-webkit-scrollbar-corner{background-color:#0000}:where(html,.sidebar-nav,#maincontent,.cmdk-list,.cbi-dropdown>ul.dropdown,#modal_overlay,#modal_overlay>.modal>ul,#modal_overlay>.modal pre,.cbi-tabmenu,.tabs,textarea)::-webkit-scrollbar-thumb{background-color:var(--foreground-a30);border-radius:9999px}html{background-color:var(--background);font-family:var(--font-sans);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));color:var(--foreground)}html body{flex-wrap:wrap;height:100dvh;display:flex}html body.modal-overlay-active{overflow:hidden}h1,h2,h3,h4,h5,h6{font-family:var(--font-sans);--tw-leading:var(--leading-tight);line-height:var(--leading-tight);--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold);--tw-tracking:var(--tracking-tight);letter-spacing:var(--tracking-tight);color:var(--foreground)}h1{margin-bottom:calc(var(--spacing) * 4);font-size:var(--text-2xl);line-height:var(--tw-leading,var(--text-2xl--line-height))}h2{margin-bottom:calc(var(--spacing) * 3);font-size:var(--text-xl);line-height:var(--tw-leading,var(--text-xl--line-height))}h3{margin-bottom:calc(var(--spacing) * 2);font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height))}h4{margin-bottom:calc(var(--spacing) * 2);font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}h5{margin-bottom:calc(var(--spacing) * 1);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}h6{margin-bottom:calc(var(--spacing) * 1);font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}hr{margin-block:calc(var(--spacing) * 4);border-top-style:var(--tw-border-style);border-top-width:1px;border-color:var(--border)}strong{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}abbr{cursor:help}p{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));--tw-leading:var(--leading-relaxed);line-height:var(--leading-relaxed);color:var(--foreground)}pre{border-radius:var(--radius-base);border-style:var(--tw-border-style);border-width:1px;border-color:var(--border);background-color:var(--muted);padding-inline:calc(var(--spacing) * 3);padding-block:calc(var(--spacing) * 2);font-family:var(--font-mono);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));--tw-leading:var(--leading-relaxed);line-height:var(--leading-relaxed);overflow-wrap:break-word;white-space:pre-wrap;color:var(--muted-foreground);display:block}code{border-radius:calc(var(--radius-base) * .5);background-color:var(--muted);padding-inline:calc(var(--spacing) * 1.5);padding-block:calc(var(--spacing) * .5);font-family:var(--font-mono);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));color:var(--muted-foreground)}a{color:var(--primary);text-decoration-line:none}@media (hover:hover){a:hover{text-decoration-line:underline}}var{font-family:var(--font-mono);color:var(--primary)}small{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height));--tw-font-weight:var(--font-weight-normal);font-weight:var(--font-weight-normal);color:var(--muted-foreground)}em{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium);color:var(--muted-foreground);font-style:italic}#sidebar{background-color:var(--sidebar-bg);flex-direction:column;flex-shrink:0;width:220px;height:100%;display:flex;overflow:hidden}@media not all and (width>=48rem){#sidebar{top:calc(var(--spacing) * 0);left:calc(var(--spacing) * 0);z-index:40;--tw-translate-x:-100%;width:240px;translate:var(--tw-translate-x) var(--tw-translate-y);--tw-shadow:0 20px 25px -5px var(--tw-shadow-color,#0000001a), 0 8px 10px -6px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);height:100dvh;transition:translate .2s;position:fixed}#sidebar[data-drawer-open=true]{--tw-translate-x:calc(var(--spacing) * 0);translate:var(--tw-translate-x) var(--tw-translate-y)}}#sidebar .icon-expand{display:none}@media (width>=48rem){html[data-sidebar-collapsed=true] #sidebar{width:calc(var(--spacing) * 12)}html[data-sidebar-collapsed=true] #sidebar .sidebar-brand-text,html[data-sidebar-collapsed=true] #sidebar .sidebar-label,html[data-sidebar-collapsed=true] #sidebar .sidebar-chevron,html[data-sidebar-collapsed=true] #sidebar .icon-collapse{display:none}html[data-sidebar-collapsed=true] #sidebar .icon-expand{display:block}html[data-sidebar-collapsed=true] #sidebar .sidebar-accordion-sub{display:none!important}}.sidebar-header{height:calc(var(--spacing) * 14);padding-inline:calc(var(--spacing) * 3);flex-shrink:0;justify-content:space-between;align-items:center;display:flex}.sidebar-brand{min-width:calc(var(--spacing) * 0);align-items:center;gap:calc(var(--spacing) * 2);text-overflow:ellipsis;white-space:nowrap;color:var(--sidebar-foreground);flex:1;text-decoration-line:none;display:flex;overflow:hidden}.sidebar-logo{flex-shrink:0}.sidebar-brand-text{text-overflow:ellipsis;white-space:nowrap;font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold);overflow:hidden}.sidebar-toggle{height:calc(var(--spacing) * 7);width:calc(var(--spacing) * 7);cursor:pointer;border-radius:calc(var(--radius-base) * .75);border-style:var(--tw-border-style);padding:calc(var(--spacing) * 0);color:var(--sidebar-muted);background-color:#0000;border-width:0;flex-shrink:0;justify-content:center;align-items:center;transition:color .15s,background-color .15s,border-color .15s;display:flex}.sidebar-toggle:hover{background-color:var(--sidebar-accent);color:var(--sidebar-accent-fg)}.sidebar-toggle svg,.sidebar-toggle img{height:calc(var(--spacing) * 4);width:calc(var(--spacing) * 4)}.sidebar-nav{padding-inline:calc(var(--spacing) * 2);padding-block:calc(var(--spacing) * 2);flex:1;overflow:hidden auto}.sidebar-nav-item,.sidebar-accordion-item{margin-bottom:calc(var(--spacing) * .5)}:is(.sidebar-nav-item,.sidebar-accordion-item).active>.sidebar-nav-parent{color:var(--sidebar-active-fg)}.sidebar-nav-parent{cursor:pointer;appearance:none;justify-content:flex-start;align-items:center;gap:calc(var(--spacing) * 2.5);border-radius:calc(var(--radius-base) * .75);border-style:var(--tw-border-style);width:100%;padding-inline:calc(var(--spacing) * 2);padding-block:calc(var(--spacing) * 1.5);text-align:left;font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium);color:var(--sidebar-muted);background-color:#0000;border-width:0;transition:color .15s,background-color .15s,border-color .15s;display:flex}.sidebar-nav-parent:hover{background-color:var(--sidebar-accent);color:var(--sidebar-accent-fg)}.sidebar-nav-parent .sidebar-icon{flex-shrink:0;justify-content:center;align-items:center;display:flex}.sidebar-nav-parent .sidebar-icon svg,.sidebar-nav-parent .sidebar-icon img{height:calc(var(--spacing) * 4);width:calc(var(--spacing) * 4)}.sidebar-nav-parent .sidebar-label{text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.sidebar-nav-parent .sidebar-chevron{flex-shrink:0;margin-left:auto;transition:rotate .2s}.sidebar-nav-parent .sidebar-chevron svg,.sidebar-nav-parent .sidebar-chevron img{height:calc(var(--spacing) * 3.5);width:calc(var(--spacing) * 3.5)}.sidebar-accordion-item[data-open=true]>.sidebar-nav-parent{background-color:var(--sidebar-active-bg);color:var(--sidebar-active-fg)}.sidebar-accordion-item[data-open=true] .sidebar-chevron{rotate:180deg}.sidebar-accordion-sub{visibility:hidden;opacity:0;transition:grid-template-rows .2s var(--ease-out),opacity .2s var(--ease-out),visibility .2s var(--ease-out);grid-template-rows:0fr;display:grid;overflow:hidden}.sidebar-accordion-sub>*{min-height:calc(var(--spacing) * 0);align-self:flex-start}.sidebar-accordion-item[data-open=true]>.sidebar-accordion-sub{visibility:visible;opacity:1;grid-template-rows:1fr}.sidebar-sub-list{margin-left:calc(var(--spacing) * 4);border-left-style:var(--tw-border-style);border-left-width:1px;border-color:var(--sidebar-border);padding-left:calc(var(--spacing) * 2);list-style-type:none}.sidebar-sub-item{margin-bottom:calc(var(--spacing) * .5)}.sidebar-sub-item.active .sidebar-sub-link{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium);color:var(--sidebar-active-fg)}.sidebar-sub-link{border-radius:calc(var(--radius-base) * .75);padding-inline:calc(var(--spacing) * 2);padding-block:calc(var(--spacing) * 1.5);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));color:var(--sidebar-muted);text-decoration-line:none;transition:color .15s,background-color .15s,border-color .15s;display:block}.sidebar-sub-link:hover{background-color:var(--sidebar-accent);color:var(--sidebar-accent-fg)}.sidebar-collapsed-popover{z-index:50;min-width:calc(var(--spacing) * 44);border-radius:var(--radius-base);border-style:var(--tw-border-style);border-width:1px;border-color:var(--border);background-color:var(--panel-bg);padding-block:calc(var(--spacing) * 1);--tw-shadow:0 10px 15px -3px var(--tw-shadow-color,#0000001a), 0 4px 6px -4px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);position:fixed;overflow:hidden}.sidebar-collapsed-popover-title{padding-inline:calc(var(--spacing) * 3);padding-top:calc(var(--spacing) * 1.5);padding-bottom:calc(var(--spacing) * 1);font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height));--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold);color:var(--foreground)}.sidebar-collapsed-popover-list{margin:calc(var(--spacing) * 0);padding:calc(var(--spacing) * 0);list-style-type:none}.sidebar-collapsed-popover-link{margin-inline:calc(var(--spacing) * 1);border-radius:calc(var(--radius-base) * .5);padding-inline:calc(var(--spacing) * 2);padding-block:calc(var(--spacing) * 1.5);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));color:var(--sidebar-muted);text-decoration-line:none;transition:color .15s,background-color .15s,border-color .15s;display:block}.sidebar-collapsed-popover-link:hover{background-color:var(--sidebar-accent);color:var(--sidebar-accent-fg)}.sidebar-collapsed-popover-link.active{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium);color:var(--sidebar-active-fg)}.sidebar-footer{border-top-style:var(--tw-border-style);border-top-width:1px;border-color:var(--sidebar-border);padding:calc(var(--spacing) * 2);padding-bottom:max(.5rem, env(safe-area-inset-bottom));flex-shrink:0}.sidebar-logout{align-items:center;gap:calc(var(--spacing) * 2.5);border-radius:calc(var(--radius-base) * .75);width:100%;padding-inline:calc(var(--spacing) * 2);padding-block:calc(var(--spacing) * 1.5);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));color:var(--sidebar-muted);text-decoration-line:none;transition:color .15s,background-color .15s,border-color .15s;display:flex}.sidebar-logout:hover{background-color:var(--sidebar-accent);color:var(--sidebar-accent-fg)}.sidebar-logout.active{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium);color:var(--sidebar-active-fg)}.sidebar-logout .sidebar-icon{flex-shrink:0;justify-content:center;align-items:center;display:flex}.sidebar-logout .sidebar-icon svg,.sidebar-logout .sidebar-icon img{height:calc(var(--spacing) * 4);width:calc(var(--spacing) * 4)}.sidebar-logout .sidebar-label{text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}#main-wrapper{background-color:var(--background);height:100%;padding-block:calc(var(--spacing) * 2);padding-right:calc(var(--spacing) * 2);padding-left:calc(var(--spacing) * 0);flex-direction:column;flex:1;display:flex;overflow:hidden}@media not all and (width>=48rem){#main-wrapper{padding:calc(var(--spacing) * 0);flex-basis:100%}}.content-card{border-radius:calc(var(--radius-base) * 1.5);border-style:var(--tw-border-style);border-width:1px;border-color:var(--panel-border);background-color:var(--panel-bg);--tw-shadow:var(--shadow-sm);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);flex-direction:column;flex:1;display:flex;overflow:hidden}@media not all and (width>=48rem){.content-card{--tw-border-style:none;--tw-shadow:0 0 #0000;box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);border-style:none;border-radius:0}}@media (width>=48rem){html[data-sidebar-anim] #sidebar{transition:width .2s var(--ease-out)}}.card-header{height:calc(var(--spacing) * 12);border-bottom-style:var(--tw-border-style);border-bottom-width:1px;border-color:var(--panel-border);background-color:var(--panel-bg);padding-inline:calc(var(--spacing) * 4);flex-shrink:0;justify-content:space-between;align-items:center;display:flex}.card-header-left,.card-header-right{align-items:center;gap:calc(var(--spacing) * 2);display:flex}.topbar-hamburger{height:calc(var(--spacing) * 8);width:calc(var(--spacing) * 8);cursor:pointer;border-radius:calc(var(--radius-base) * .75);border-style:var(--tw-border-style);padding:calc(var(--spacing) * 0);color:var(--muted-foreground);background-color:#0000;border-width:0;justify-content:center;align-items:center;transition:color .15s,background-color .15s,border-color .15s;display:none}@media not all and (width>=48rem){.topbar-hamburger{display:flex}}.topbar-hamburger:hover{background-color:var(--muted)}.topbar-hamburger svg,.topbar-hamburger img{height:calc(var(--spacing) * 5);width:calc(var(--spacing) * 5)}.topbar-breadcrumb{align-items:center;gap:calc(var(--spacing) * 1);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));display:flex}.topbar-breadcrumb .breadcrumb-item{color:var(--muted-foreground)}.topbar-breadcrumb .breadcrumb-item.active{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium);color:var(--foreground)}.topbar-breadcrumb .breadcrumb-sep{color:var(--muted-foreground)}.topbar-breadcrumb .breadcrumb-sep svg,.topbar-breadcrumb .breadcrumb-sep img{height:calc(var(--spacing) * 3.5);width:calc(var(--spacing) * 3.5)}button.topbar-icon-btn{height:calc(var(--spacing) * 8);width:calc(var(--spacing) * 8);cursor:pointer;border-radius:calc(var(--radius-base) * .75);border-style:var(--tw-border-style);padding:calc(var(--spacing) * 0);color:var(--muted-foreground);background-color:#0000;border-width:0;flex-shrink:0;justify-content:center;align-items:center;transition:color .15s,background-color .15s,border-color .15s;display:inline-flex}button.topbar-icon-btn:hover{background-color:var(--muted);color:var(--foreground)}button.topbar-icon-btn img{height:calc(var(--spacing) * 4);width:calc(var(--spacing) * 4);flex-shrink:0}.topbar-indicators{align-items:center;display:flex}.topbar-indicators span[data-indicator]>img{display:none}.topbar-indicators span[data-indicator]{height:calc(var(--spacing) * 8);width:calc(var(--spacing) * 8);cursor:pointer;border-radius:calc(var(--radius-base) * .75);color:var(--muted-foreground);flex-shrink:0;justify-content:center;align-items:center;font-size:0;transition:color .15s,background-color .15s,border-color .15s,width .15s ease-out,opacity .15s ease-out,margin-left .15s ease-out;display:inline-flex;position:relative}@starting-style{.topbar-indicators span[data-indicator]{width:calc(var(--spacing) * 0)}}@starting-style{.topbar-indicators span[data-indicator]{opacity:0}}.topbar-indicators span[data-indicator]:before{content:var(--tw-content);content:var(--tw-content);content:var(--tw-content);width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4);content:var(--tw-content);content:var(--tw-content);content:var(--tw-content);content:var(--tw-content);content:var(--tw-content);background-color:currentColor;flex-shrink:0;display:block;position:relative;-webkit-mask-position:50%;mask-position:50%;-webkit-mask-size:cover;mask-size:cover;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.topbar-indicators span[data-indicator]+span[data-indicator]{margin-left:calc(var(--spacing) * 2)}@starting-style{.topbar-indicators span[data-indicator]+span[data-indicator]{margin-left:calc(var(--spacing) * 0)}}.topbar-indicators span[data-indicator]:hover{background-color:var(--muted);color:var(--foreground)}.topbar-indicators span[data-indicator][data-indicator=poll-status][data-style=active]:before{content:var(--tw-content);-webkit-mask-image:url("data:image/svg+xml,%3c!--%20@license%20lucide-static%20v1.16.0%20-%20ISC%20--%3e%3csvg%20class='lucide%20lucide-refresh-cw'%20xmlns='http://www.w3.org/2000/svg'%20width='24'%20height='24'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='currentColor'%20stroke-width='2'%20stroke-linecap='round'%20stroke-linejoin='round'%3e%3cpath%20d='M3%2012a9%209%200%200%201%209-9%209.75%209.75%200%200%201%206.74%202.74L21%208'/%3e%3cpath%20d='M21%203v5h-5'/%3e%3cpath%20d='M21%2012a9%209%200%200%201-9%209%209.75%209.75%200%200%201-6.74-2.74L3%2016'/%3e%3cpath%20d='M8%2016H3v5'/%3e%3c/svg%3e");mask-image:url("data:image/svg+xml,%3c!--%20@license%20lucide-static%20v1.16.0%20-%20ISC%20--%3e%3csvg%20class='lucide%20lucide-refresh-cw'%20xmlns='http://www.w3.org/2000/svg'%20width='24'%20height='24'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='currentColor'%20stroke-width='2'%20stroke-linecap='round'%20stroke-linejoin='round'%3e%3cpath%20d='M3%2012a9%209%200%200%201%209-9%209.75%209.75%200%200%201%206.74%202.74L21%208'/%3e%3cpath%20d='M21%203v5h-5'/%3e%3cpath%20d='M21%2012a9%209%200%200%201-9%209%209.75%209.75%200%200%201-6.74-2.74L3%2016'/%3e%3cpath%20d='M8%2016H3v5'/%3e%3c/svg%3e")}.topbar-indicators span[data-indicator][data-indicator=poll-status][data-style=inactive]:before{content:var(--tw-content);-webkit-mask-image:url("data:image/svg+xml,%3c!--%20@license%20lucide-static%20v1.16.0%20-%20ISC%20--%3e%3csvg%20class='lucide%20lucide-refresh-cw-off'%20xmlns='http://www.w3.org/2000/svg'%20width='24'%20height='24'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='currentColor'%20stroke-width='2'%20stroke-linecap='round'%20stroke-linejoin='round'%3e%3cpath%20d='M21%208L18.74%205.74A9.75%209.75%200%200%200%2012%203C11%203%2010.03%203.16%209.13%203.47'/%3e%3cpath%20d='M8%2016H3v5'/%3e%3cpath%20d='M3%2012C3%209.51%204%207.26%205.64%205.64'/%3e%3cpath%20d='m3%2016%202.26%202.26A9.75%209.75%200%200%200%2012%2021c2.49%200%204.74-1%206.36-2.64'/%3e%3cpath%20d='M21%2012c0%201-.16%201.97-.47%202.87'/%3e%3cpath%20d='M21%203v5h-5'/%3e%3cpath%20d='M22%2022%202%202'/%3e%3c/svg%3e");mask-image:url("data:image/svg+xml,%3c!--%20@license%20lucide-static%20v1.16.0%20-%20ISC%20--%3e%3csvg%20class='lucide%20lucide-refresh-cw-off'%20xmlns='http://www.w3.org/2000/svg'%20width='24'%20height='24'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='currentColor'%20stroke-width='2'%20stroke-linecap='round'%20stroke-linejoin='round'%3e%3cpath%20d='M21%208L18.74%205.74A9.75%209.75%200%200%200%2012%203C11%203%2010.03%203.16%209.13%203.47'/%3e%3cpath%20d='M8%2016H3v5'/%3e%3cpath%20d='M3%2012C3%209.51%204%207.26%205.64%205.64'/%3e%3cpath%20d='m3%2016%202.26%202.26A9.75%209.75%200%200%200%2012%2021c2.49%200%204.74-1%206.36-2.64'/%3e%3cpath%20d='M21%2012c0%201-.16%201.97-.47%202.87'/%3e%3cpath%20d='M21%203v5h-5'/%3e%3cpath%20d='M22%2022%202%202'/%3e%3c/svg%3e")}.topbar-indicators span[data-indicator][data-indicator=media_error]:before{content:var(--tw-content);-webkit-mask-image:url("data:image/svg+xml,%3c!--%20@license%20lucide-static%20v1.16.0%20-%20ISC%20--%3e%3csvg%20class='lucide%20lucide-alert-circle'%20xmlns='http://www.w3.org/2000/svg'%20width='24'%20height='24'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='currentColor'%20stroke-width='2'%20stroke-linecap='round'%20stroke-linejoin='round'%3e%3ccircle%20cx='12'%20cy='12'%20r='10'/%3e%3cline%20x1='12'%20x2='12'%20y1='8'%20y2='12'/%3e%3cline%20x1='12'%20x2='12.01'%20y1='16'%20y2='16'/%3e%3c/svg%3e");mask-image:url("data:image/svg+xml,%3c!--%20@license%20lucide-static%20v1.16.0%20-%20ISC%20--%3e%3csvg%20class='lucide%20lucide-alert-circle'%20xmlns='http://www.w3.org/2000/svg'%20width='24'%20height='24'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='currentColor'%20stroke-width='2'%20stroke-linecap='round'%20stroke-linejoin='round'%3e%3ccircle%20cx='12'%20cy='12'%20r='10'/%3e%3cline%20x1='12'%20x2='12'%20y1='8'%20y2='12'/%3e%3cline%20x1='12'%20x2='12.01'%20y1='16'%20y2='16'/%3e%3c/svg%3e")}.topbar-indicators span[data-indicator][data-indicator=uci-changes]:before{content:var(--tw-content);-webkit-mask-image:url("data:image/svg+xml,%3c!--%20@license%20lucide-static%20v1.16.0%20-%20ISC%20--%3e%3csvg%20class='lucide%20lucide-settings'%20xmlns='http://www.w3.org/2000/svg'%20width='24'%20height='24'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='currentColor'%20stroke-width='2'%20stroke-linecap='round'%20stroke-linejoin='round'%20%3e%3cpath%20d='M9.671%204.136a2.34%202.34%200%200%201%204.659%200%202.34%202.34%200%200%200%203.319%201.915%202.34%202.34%200%200%201%202.33%204.033%202.34%202.34%200%200%200%200%203.831%202.34%202.34%200%200%201-2.33%204.033%202.34%202.34%200%200%200-3.319%201.915%202.34%202.34%200%200%201-4.659%200%202.34%202.34%200%200%200-3.32-1.915%202.34%202.34%200%200%201-2.33-4.033%202.34%202.34%200%200%200%200-3.831A2.34%202.34%200%200%201%206.35%206.051a2.34%202.34%200%200%200%203.319-1.915'%20/%3e%3ccircle%20cx='12'%20cy='12'%20r='3'%20/%3e%3c/svg%3e");mask-image:url("data:image/svg+xml,%3c!--%20@license%20lucide-static%20v1.16.0%20-%20ISC%20--%3e%3csvg%20class='lucide%20lucide-settings'%20xmlns='http://www.w3.org/2000/svg'%20width='24'%20height='24'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='currentColor'%20stroke-width='2'%20stroke-linecap='round'%20stroke-linejoin='round'%20%3e%3cpath%20d='M9.671%204.136a2.34%202.34%200%200%201%204.659%200%202.34%202.34%200%200%200%203.319%201.915%202.34%202.34%200%200%201%202.33%204.033%202.34%202.34%200%200%200%200%203.831%202.34%202.34%200%200%201-2.33%204.033%202.34%202.34%200%200%200-3.319%201.915%202.34%202.34%200%200%201-4.659%200%202.34%202.34%200%200%200-3.32-1.915%202.34%202.34%200%200%201-2.33-4.033%202.34%202.34%200%200%200%200-3.831A2.34%202.34%200%200%201%206.35%206.051a2.34%202.34%200%200%200%203.319-1.915'%20/%3e%3ccircle%20cx='12'%20cy='12'%20r='3'%20/%3e%3c/svg%3e")}.topbar-indicators span[data-indicator][data-indicator=uci-changes][data-count]:not([data-count="0"]):after{content:var(--tw-content);content:var(--tw-content);top:calc(var(--spacing) * -.5);content:var(--tw-content);right:calc(var(--spacing) * -.5);content:var(--tw-content);z-index:10;content:var(--tw-content);content:var(--tw-content);min-height:calc(var(--spacing) * 3);content:var(--tw-content);min-width:calc(var(--spacing) * 3);content:var(--tw-content);content:var(--tw-content);content:var(--tw-content);content:var(--tw-content);background-color:var(--primary);content:var(--tw-content);padding-inline:calc(var(--spacing) * .5);content:var(--tw-content);content:var(--tw-content);--tw-leading:1;content:var(--tw-content);--tw-font-weight:var(--font-weight-bold);font-size:8px;line-height:1;font-weight:var(--font-weight-bold);content:var(--tw-content);color:var(--primary-foreground);--tw-content:attr(data-count);content:var(--tw-content);border-radius:3.40282e38px;justify-content:center;align-items:center;display:flex;position:absolute}#maincontent{scrollbar-gutter:stable;padding:calc(var(--spacing) * 6);flex:1;overflow-y:auto}@media not all and (width>=48rem){#maincontent{padding:calc(var(--spacing) * 4)}}#maincontent h1{margin-bottom:calc(var(--spacing) * 4);border-style:var(--tw-border-style);padding-left:calc(var(--spacing) * 0);font-size:var(--text-2xl);line-height:var(--tw-leading,var(--text-2xl--line-height));--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold);--tw-tracking:var(--tracking-tight);letter-spacing:var(--tracking-tight);border-width:0}#maincontent h2{margin-bottom:calc(var(--spacing) * 3);border-style:var(--tw-border-style);padding-left:calc(var(--spacing) * 0);font-size:var(--text-xl);line-height:var(--tw-leading,var(--text-xl--line-height));--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold);border-width:0}#maincontent h3{margin-bottom:calc(var(--spacing) * 2);font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height));--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}#maincontent .cbi-map-descr,#maincontent .cbi-section-descr{margin-bottom:calc(var(--spacing) * 4);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));--tw-leading:var(--leading-relaxed);line-height:var(--leading-relaxed);color:var(--muted-foreground)}#maincontent .cbi-page-actions{margin-top:calc(var(--spacing) * 4);justify-content:flex-end;align-items:center;gap:calc(var(--spacing) * 2);border-top-style:var(--tw-border-style);border-top-width:1px;border-color:var(--border);padding-top:calc(var(--spacing) * 4);flex-wrap:wrap;display:flex}#maincontent div[style]>svg:where([data-darkmode=true],[data-darkmode=true] *){background-color:var(--surface)!important}#maincontent div[style]>svg line[style]:where([data-darkmode=true],[data-darkmode=true] *){stroke:var(--text)!important}#maincontent .zone-forwards{align-items:stretch;gap:calc(var(--spacing) * 2);--tw-leading:var(--leading-relaxed);line-height:var(--leading-relaxed);flex-wrap:nowrap;display:flex}#maincontent .zone-forwards>span{flex-shrink:0;flex-basis:calc(var(--spacing) * 8);color:var(--muted-foreground);justify-content:center;align-self:center;align-items:center;display:flex}#maincontent .zone-forwards .zone-src,#maincontent .zone-forwards .zone-dest{gap:calc(var(--spacing) * 1.5);flex-direction:column;flex:1;display:flex}#maincontent .controls{align-items:center;gap:calc(var(--spacing) * 3);flex-wrap:wrap;display:flex}#maincontent .controls label input[type=radio],#maincontent .controls label input[type=checkbox]{margin-right:calc(var(--spacing) * 1);vertical-align:middle}#maincontent .cbi-title-section{margin-bottom:calc(var(--spacing) * 4);--tw-leading:var(--leading-relaxed);line-height:var(--leading-relaxed)}#maincontent .control-group{margin-top:calc(var(--spacing) * 1)}#maincontent .control-group,#maincontent .cbi-page-actions>div,#maincontent .cbi-section-actions>div{align-items:center;gap:calc(var(--spacing) * 2);flex-flow:row;display:flex}#sidebar-overlay{pointer-events:none;inset:calc(var(--spacing) * 0);z-index:30;background-color:var(--overlay-base-a50);opacity:0;transition:opacity .2s;position:absolute}@media (width>=48rem){#sidebar-overlay{display:none}}#sidebar-overlay.active{pointer-events:auto;opacity:1}button,input[type=button],input[type=submit],input[type=reset],.btn,.cbi-button{cursor:pointer;justify-content:center;align-items:center;gap:calc(var(--spacing) * 1.5);border-radius:var(--radius-base);border-style:var(--tw-border-style);padding-inline:calc(var(--spacing) * 3);padding-block:calc(var(--spacing) * 1.5);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium);border-width:1px;transition:color .2s,background-color .2s,border-color .2s;display:inline-flex}:is(button,input[type=button],input[type=submit],input[type=reset],.btn,.cbi-button)[disabled]{cursor:not-allowed;opacity:.4}.td :is(button,input[type=button],input[type=submit],input[type=reset],.btn,.cbi-button){white-space:nowrap}.btn,.cbi-button,.cbi-button-default,.cbi-button-download,.cbi-button-find,.cbi-button-link,.cbi-button-up,.cbi-button-down{border-color:var(--secondary);background-color:var(--secondary);color:var(--secondary-foreground)}@media (hover:hover){:is(.btn,.cbi-button,.cbi-button-default,.cbi-button-download,.cbi-button-find,.cbi-button-link,.cbi-button-up,.cbi-button-down):hover{background-color:var(--secondary-a80)}}.drag-handle{border-color:var(--muted);background-color:var(--muted);color:var(--muted-foreground)}@media (hover:hover){.drag-handle:hover{background-color:var(--muted-a80)}}.btn.primary,.cbi-button-action,.cbi-button-apply,.cbi-button-reload,.cbi-button-add,.cbi-button-edit{border-color:var(--primary);background-color:var(--primary);color:var(--primary-foreground)}@media (hover:hover){:is(.btn.primary,.cbi-button-action,.cbi-button-apply,.cbi-button-reload,.cbi-button-add,.cbi-button-edit):hover{background-color:var(--primary-a90)}}.cbi-button-positive,.cbi-button-fieldadd,.cbi-button-save{border-color:var(--primary-a25);background-color:var(--primary-a15);color:var(--primary)}@media (hover:hover){:is(.cbi-button-positive,.cbi-button-fieldadd,.cbi-button-save):hover{background-color:var(--primary-a25)}}.cbi-button-negative,.cbi-section-remove .cbi-button,.cbi-button-reset,.cbi-button-remove{border-color:var(--destructive);background-color:var(--destructive);color:var(--destructive-fg)}@media (hover:hover){:is(.cbi-button-negative,.cbi-section-remove .cbi-button,.cbi-button-reset,.cbi-button-remove):hover{background-color:var(--destructive-a90)}}input:disabled{cursor:not-allowed;opacity:.4}input[type=text],input[type=password],input[type=number],input[type=email],.cbi-input-text,.cbi-input{width:calc(var(--spacing) * 52.5);border-radius:var(--radius-base);border-style:var(--tw-border-style);border-width:1px;border-color:var(--input);background-color:var(--background);max-width:100%;padding-inline:calc(var(--spacing) * 3);padding-block:calc(var(--spacing) * 1.5);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));color:var(--foreground);--tw-shadow:0 0 #0000;box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);transition:color .2s,background-color .2s,border-color .2s;position:relative}:is(input[type=text],input[type=password],input[type=number],input[type=email],.cbi-input-text,.cbi-input)::placeholder{color:var(--muted-foreground-a70)}:is(input[type=text],input[type=password],input[type=number],input[type=email],.cbi-input-text,.cbi-input):focus{border-color:var(--primary);--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);--tw-ring-color:var(--ring);--tw-outline-style:none;outline-style:none}.table.cbi-section-table :is(input[type=text],input[type=password],input[type=number],input[type=email],.cbi-input-text,.cbi-input){width:100%}.cbi-input-text{min-width:calc(var(--spacing) * 20)}#localtime{min-width:calc(var(--spacing) * 64)}textarea{min-height:calc(var(--spacing) * 24);resize:vertical;border-radius:var(--radius-base);border-style:var(--tw-border-style);border-width:1px;border-color:var(--input);background-color:var(--background);width:100%;padding-inline:calc(var(--spacing) * 3);padding-block:calc(var(--spacing) * 2);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));color:var(--foreground);transition:color .2s,background-color .2s,border-color .2s}textarea::placeholder{color:var(--muted-foreground-a70)}textarea:focus{border-color:var(--primary);--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);--tw-ring-color:var(--ring);--tw-outline-style:none;outline-style:none}textarea[disabled]{cursor:not-allowed;opacity:.4}input[type=radio],input[type=checkbox]{margin-right:calc(var(--spacing) * 3);height:calc(var(--spacing) * 4);width:calc(var(--spacing) * 4);cursor:pointer;appearance:none;vertical-align:middle;display:inline-block;position:relative}:is(input[type=radio],input[type=checkbox]):disabled{cursor:not-allowed}:is(input[type=radio],input[type=checkbox]):before{content:var(--tw-content);content:var(--tw-content);inset:calc(var(--spacing) * 0);content:var(--tw-content);border-radius:calc(var(--radius-base) * .5);content:var(--tw-content);border-style:var(--tw-border-style);content:var(--tw-content);border-width:1px;border-color:var(--input);content:var(--tw-content);background-color:var(--background);content:var(--tw-content);transition:background-color .2s,border-color .2s;position:absolute}:is(input[type=radio],input[type=checkbox]):after{content:var(--tw-content);content:var(--tw-content);inset:calc(var(--spacing) * 0);content:var(--tw-content);background-color:var(--primary-foreground);content:var(--tw-content);content:var(--tw-content);content:var(--tw-content);content:var(--tw-content);opacity:0;content:var(--tw-content);transition:opacity .2s;position:absolute;-webkit-mask-position:50%;mask-position:50%;-webkit-mask-size:cover;mask-size:cover;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}:is(input[type=radio],input[type=checkbox]):checked:before{content:var(--tw-content);border-color:var(--primary);content:var(--tw-content);background-color:var(--primary)}:is(input[type=radio],input[type=checkbox]):checked:after{content:var(--tw-content);opacity:1}:is(input[type=radio],input[type=checkbox]):focus:before{content:var(--tw-content);--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);content:var(--tw-content);--tw-ring-color:var(--ring);content:var(--tw-content);--tw-outline-style:none;outline-style:none}input[type=radio]:before{content:var(--tw-content);border-radius:3.40282e38px}input[type=radio]:after{content:var(--tw-content);-webkit-mask-image:url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2024%2024'%20fill='currentColor'%3e%3ccircle%20cx='12'%20cy='12'%20r='6'/%3e%3c/svg%3e");mask-image:url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2024%2024'%20fill='currentColor'%3e%3ccircle%20cx='12'%20cy='12'%20r='6'/%3e%3c/svg%3e")}input[type=checkbox]:after{content:var(--tw-content);-webkit-mask-image:url("data:image/svg+xml,%3c!--%20@license%20lucide-static%20v1.16.0%20-%20ISC%20--%3e%3csvg%20class='lucide%20lucide-check'%20xmlns='http://www.w3.org/2000/svg'%20width='24'%20height='24'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='currentColor'%20stroke-width='2'%20stroke-linecap='round'%20stroke-linejoin='round'%3e%3cpath%20d='M20%206%209%2017l-5-5'/%3e%3c/svg%3e");mask-image:url("data:image/svg+xml,%3c!--%20@license%20lucide-static%20v1.16.0%20-%20ISC%20--%3e%3csvg%20class='lucide%20lucide-check'%20xmlns='http://www.w3.org/2000/svg'%20width='24'%20height='24'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='currentColor'%20stroke-width='2'%20stroke-linecap='round'%20stroke-linejoin='round'%3e%3cpath%20d='M20%206%209%2017l-5-5'/%3e%3c/svg%3e")}.cbi-checkbox{vertical-align:middle;align-items:center;display:inline-flex;position:relative}select{max-width:100%;min-width:calc(var(--spacing) * 52.5);appearance:none;border-radius:var(--radius-base);border-style:var(--tw-border-style);border-width:1px;border-color:var(--input);background-color:var(--background);padding-inline:calc(var(--spacing) * 3);padding-block:calc(var(--spacing) * 1.5);padding-right:calc(var(--spacing) * 9);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));color:var(--foreground);transition:color .2s,background-color .2s,border-color .2s}select:focus{border-color:var(--primary);--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);--tw-ring-color:var(--ring);--tw-outline-style:none;outline-style:none}select:disabled{cursor:not-allowed;opacity:.4}@media (width>=48rem){select{max-width:calc(var(--spacing) * 100)}}select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%238888a0' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-position:right .6rem center;background-repeat:no-repeat;background-size:16px}[data-darkmode=true] select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%238c8ca8' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E")}.cbi-dropdown{min-width:fit-content;max-width:100%;height:fit-content;padding:calc(var(--spacing) * 0);white-space:nowrap;flex-shrink:0;align-items:center;transition:color .2s,background-color .2s,border-color .2s;display:inline-flex;position:relative}.cbi-dropdown[disabled]{pointer-events:none;opacity:.4}.cbi-dropdown:not(.btn):not(.cbi-button){max-width:100%;min-width:calc(var(--spacing) * 52.5);border-radius:var(--radius-base);border-style:var(--tw-border-style);border-width:1px;border-color:var(--input);background-color:var(--background)}@media (width>=48rem){.cbi-dropdown:not(.btn):not(.cbi-button){max-width:calc(var(--spacing) * 100)}}.cbi-dropdown:not(.btn):not(.cbi-button)>ul>li[placeholder]{display:none}.cbi-dropdown>ul{margin:calc(var(--spacing) * 0);align-items:center;gap:calc(var(--spacing) * .5);opacity:.99;flex-wrap:nowrap;flex:1;list-style-type:none;transition:opacity .12s ease-out;display:flex;overflow:hidden}.cbi-dropdown>ul>li{margin:calc(var(--spacing) * 0);align-items:center;gap:calc(var(--spacing) * 1);padding-inline:calc(var(--spacing) * 2);padding-block:calc(var(--spacing) * 1.5);list-style-type:none;display:none;overflow:hidden}.cbi-dropdown>ul>li[display]{display:flex!important}.cbi-dropdown>ul>li .hide-open{display:block}.cbi-dropdown>ul>li .hide-close{display:none}.cbi-dropdown>ul>li>form{pointer-events:none;display:none}.cbi-dropdown>ul>li>label{align-items:center;gap:calc(var(--spacing) * 2);display:flex}.cbi-dropdown>ul>li img{height:calc(var(--spacing) * 5);width:calc(var(--spacing) * 5);vertical-align:middle;flex:none}.cbi-dropdown>ul>li span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.cbi-dropdown>ul.dropdown{left:calc(var(--spacing) * 0);z-index:50;border-radius:var(--radius-base);border-style:var(--tw-border-style);border-width:1px;border-color:var(--border);background-color:var(--panel-bg);opacity:1;--tw-shadow:0 10px 15px -3px var(--tw-shadow-color,#0000001a), 0 4px 6px -4px var(--tw-shadow-color,#0000001a);width:fit-content;min-width:100%;box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);position:absolute;overflow-y:auto}.cbi-dropdown>ul.dropdown>li{min-height:calc(var(--spacing) * 9);cursor:pointer;width:100%;padding-inline:calc(var(--spacing) * 3);padding-block:calc(var(--spacing) * 1.5);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium);color:var(--muted-foreground)}@media (hover:hover){.cbi-dropdown>ul.dropdown>li:hover{background-color:var(--muted)}}.cbi-dropdown>ul.preview{display:none}.cbi-dropdown[empty]>ul{max-width:1px;max-height:1px}.cbi-dropdown[empty]>ul>li,.cbi-dropdown[optional][open]>ul.dropdown>li[placeholder]{display:block}.cbi-dropdown[open]{border-color:var(--primary);--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);--tw-ring-color:var(--ring)}.cbi-dropdown[open]>ul.dropdown{width:auto;max-width:none;display:block}.cbi-dropdown[open]>ul.dropdown>li{display:flex}.cbi-dropdown[open]>ul.dropdown>li[selected]{background-color:var(--primary-a15);color:var(--primary)}.cbi-dropdown[open]>ul.dropdown>li[unselectable]{opacity:.4}.cbi-dropdown[open]>ul.dropdown>li .hide-open{display:none}.cbi-dropdown[open]>ul.dropdown>li .hide-close{display:block}.cbi-dropdown[open]>ul.preview{display:flex}:is(.cbi-dropdown[multiple][more],.cbi-dropdown[multiple][empty])>.more{padding-inline:calc(var(--spacing) * 2.5);padding-block:calc(var(--spacing) * 1.5);flex:none;display:flex}.cbi-dropdown[multiple][empty]>.more{flex:1}.cbi-dropdown[multiple][open]>ul.dropdown>li>form{align-items:center;display:flex}.cbi-dropdown[multiple]>ul>li>label{display:flex}.cbi-dropdown>.open{cursor:pointer;border-left-style:var(--tw-border-style);border-left-width:1px;border-color:var(--input);padding-inline:calc(var(--spacing) * 2.5);padding-block:calc(var(--spacing) * .5);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));color:currentColor;flex:none;justify-content:center;align-items:center;display:flex}.cbi-dropdown>.more{display:none}.cbi-tooltip{z-index:50;width:max-content;max-width:var(--container-xs);--tw-scale-x:95%;--tw-scale-y:95%;--tw-scale-z:95%;scale:var(--tw-scale-x) var(--tw-scale-y);border-radius:var(--radius-base);border-style:var(--tw-border-style);border-width:1px;border-color:var(--border-a60);background-color:var(--panel-bg);padding-inline:calc(var(--spacing) * 3);padding-block:calc(var(--spacing) * 2);font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height));overflow-wrap:normal;word-break:normal;white-space:normal;color:var(--foreground);opacity:0;--tw-shadow:0 10px 15px -3px var(--tw-shadow-color,#0000001a), 0 4px 6px -4px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);transition:visibility .2s var(--ease-out),opacity .2s var(--ease-out),scale .2s var(--ease-out);position:absolute;inset-inline-start:-10000px}.cbi-tooltip.error{border-color:var(--destructive-a40);background-color:var(--destructive);color:var(--destructive-fg)}.cbi-tooltip.success{border-color:var(--success-a40);background-color:var(--success);color:var(--success-fg)}.cbi-tooltip.info{border-color:var(--info-a40);background-color:var(--info);color:var(--info-fg)}.cbi-tooltip.notice{border-color:var(--warning-a40);background-color:var(--warning);color:var(--warning-fg)}.cbi-tooltip-container,[data-tooltip]{cursor:help;white-space:nowrap;text-underline-offset:2px;text-decoration-line:underline;text-decoration-style:dotted;text-decoration-color:currentColor;display:inline-block;position:relative}:is(.cbi-tooltip-container,[data-tooltip]) .cbi-tooltip{visibility:hidden;--tw-scale-x:95%;--tw-scale-y:95%;--tw-scale-z:95%;scale:var(--tw-scale-x) var(--tw-scale-y);opacity:0;transition:visibility .2s var(--ease-out),opacity .2s var(--ease-out),scale .2s var(--ease-out)}:is(.cbi-tooltip-container,[data-tooltip]):hover .cbi-tooltip{visibility:visible;--tw-scale-x:100%;--tw-scale-y:100%;--tw-scale-z:100%;scale:var(--tw-scale-x) var(--tw-scale-y);opacity:1;inset-inline-start:auto}.alert-message{margin-bottom:calc(var(--spacing) * 4);border-radius:calc(var(--radius-base) * 1.5);border-style:var(--tw-border-style);background-color:var(--muted);padding:calc(var(--spacing) * 4);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));color:var(--foreground);border-width:1px}.alert-message.success{border-color:var(--success-a30);background-color:var(--success-a10);color:var(--success)}.alert-message.info{border-color:var(--info-a30);background-color:var(--info-a10);color:var(--info)}.alert-message.warning,.alert-message.notice{border-color:var(--warning-a30);background-color:var(--warning-a10);color:var(--warning-soft-fg)}.alert-message.error,.alert-message.danger{border-color:var(--destructive-a30);background-color:var(--destructive-a10);color:var(--destructive)}.alert-message h4,.alert-message h5,.alert-message pre,.alert-message ul,.alert-message li,.alert-message p{border-style:var(--tw-border-style);color:inherit;background-color:#0000;border-width:0}.alert-message h4{margin-bottom:calc(var(--spacing) * 2);font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height));--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.alert-message p{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));--tw-leading:var(--leading-relaxed);line-height:var(--leading-relaxed)}.alert-message .right{margin-top:calc(var(--spacing) * 3)}.cbi-progressbar{height:calc(var(--spacing) * 2.5);cursor:help;background-color:var(--secondary);border-radius:3.40282e38px;width:100%;position:relative;overflow:hidden}.cbi-progressbar:before{content:var(--tw-content);content:var(--tw-content);inset-inline:calc(var(--spacing) * 0);content:var(--tw-content);content:var(--tw-content);--tw-translate-y:calc(calc(1 / 2 * 100%) * -1);translate:var(--tw-translate-x) var(--tw-translate-y);content:var(--tw-content);text-align:center;content:var(--tw-content);content:var(--tw-content);--tw-leading:1;content:var(--tw-content);white-space:nowrap;content:var(--tw-content);color:var(--foreground);--tw-content:attr(title);content:var(--tw-content);font-size:10px;line-height:1;position:absolute;top:50%}.cbi-progressbar>div{--tw-gradient-position:to right in oklab;background-image:linear-gradient(var(--tw-gradient-stops));--tw-gradient-from:var(--progress-bar-start);--tw-gradient-to:var(--progress-bar-end);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));height:100%;transition:width .3s}.label{background-color:var(--muted);padding-inline:calc(var(--spacing) * 2.5);padding-block:calc(var(--spacing) * .5);font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height));--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold);color:var(--muted-foreground);border-radius:3.40282e38px;align-items:center;display:inline-flex}.label.important{background-color:var(--info-a15);color:var(--info)}.label.warning{background-color:var(--warning-a15);color:var(--warning-soft-fg)}.label.success{background-color:var(--success-a15);color:var(--success)}.label.notice{background-color:var(--warning-a15);color:var(--warning-soft-fg)}.zonebadge{align-items:center;gap:calc(var(--spacing) * 1.5);border-radius:calc(var(--radius-base) * .75);border-style:var(--tw-border-style);border-width:1px;border-color:var(--secondary);background-color:var(--secondary);padding-inline:calc(var(--spacing) * 2);padding-block:calc(var(--spacing) * 1);vertical-align:middle;font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));--tw-leading:var(--leading-normal);line-height:var(--leading-normal);--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold);color:var(--secondary-foreground);transition:color .2s,background-color .2s,border-color .2s;display:inline-flex;overflow:visible}.zonebadge[style*=--zone-color-rgb]{border-color:#0000;background-color:rgb(var(--zone-color-rgb),.6)!important}.zonebadge.zonebadge-empty{--tw-border-style:dashed;border-style:dashed;border-color:var(--border);--tw-font-weight:var(--font-weight-normal);font-weight:var(--font-weight-normal);color:var(--muted-foreground);background-color:#0000;font-style:italic}.ifacebadge>.zonebadge{padding-inline:calc(var(--spacing) * 1);padding-block:calc(var(--spacing) * .5);border-radius:3.40282e38px}.cbi-dropdown .zonebadge{border-radius:calc(var(--radius-base) * .75);padding-inline:calc(var(--spacing) * 1.5);padding-block:calc(var(--spacing) * .5)}.ifacebadge{cursor:default;align-items:center;gap:calc(var(--spacing) * 1.5);border-radius:var(--radius-base);border-style:var(--tw-border-style);border-width:1px;border-color:var(--border);background-color:var(--label-surface);padding-inline:calc(var(--spacing) * 2.5);padding-block:calc(var(--spacing) * 1.5);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));--tw-font-weight:var(--font-weight-normal);font-weight:var(--font-weight-normal);color:var(--foreground);flex-wrap:nowrap;transition:color .2s,background-color .2s,border-color .2s;display:inline-flex}.zonebadge>.ifacebadge{border-radius:calc(var(--radius-base) * .75);padding-inline:calc(var(--spacing) * 1.5);padding-block:calc(var(--spacing) * 0)}.zonebadge>.ifacebadge img{margin-right:calc(var(--spacing) * 1);width:calc(var(--spacing) * 4)}.cbi-dropdown .ifacebadge{gap:calc(var(--spacing) * 1);border-radius:calc(var(--radius-base) * .75);padding-inline:calc(var(--spacing) * 1.5);padding-block:calc(var(--spacing) * .5)}.cbi-dropdown .ifacebadge img{margin-right:calc(var(--spacing) * 1);width:calc(var(--spacing) * 4)}.ifacebadge>img,.ifacebadge>.cbi-tooltip-container>img{width:calc(var(--spacing) * 5);flex-shrink:0;align-self:center}.ifacebadge>span .nowrap{margin-bottom:calc(var(--spacing) * 1.5);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));display:inline-block}.ifacebadge.ifacebadge-active{border-color:var(--primary);--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.ifacebadge.large{min-width:calc(var(--spacing) * 48);padding-inline:calc(var(--spacing) * 4);padding-block:calc(var(--spacing) * 3);flex:1}.cbi-section{margin-bottom:calc(var(--spacing) * 4);border-radius:calc(var(--radius-base) * 1.5);border-style:var(--tw-border-style);border-width:1px;border-color:var(--panel-border);background-color:var(--panel-bg);padding:calc(var(--spacing) * 4);overflow:visible}.cbi-section[data-tab-title]{margin:calc(var(--spacing) * 0);padding:calc(var(--spacing) * 0)}.cbi-section[data-tab-active=true]{margin-bottom:calc(var(--spacing) * 4);padding:calc(var(--spacing) * 4)}.cbi-section>.cbi-title{justify-content:space-between;align-items:flex-start;display:flex}.cbi-section>.cbi-title>h3{flex:1}.cbi-section>.cbi-title>h3 .label[data-clickable]{width:calc(var(--spacing) * 6);height:calc(var(--spacing) * 6);cursor:pointer;border-radius:calc(var(--radius-base) * .5);background-color:var(--label-surface);padding:calc(var(--spacing) * 0);color:var(--foreground);justify-content:center;align-items:center;display:inline-flex}@media (hover:hover){.cbi-section>.cbi-title>h3 .label[data-clickable]:hover{background-color:var(--muted)}}.cbi-section>.cbi-title>h3 .label[data-clickable]:active{--tw-scale-x:95%;--tw-scale-y:95%;--tw-scale-z:95%;scale:var(--tw-scale-x) var(--tw-scale-y)}.cbi-section>.cbi-title>h3 span[data-indicator=poll-status]{width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4);cursor:pointer;font-size:0;position:relative}.cbi-section>.cbi-title>h3 span[data-indicator=poll-status]:before{content:var(--tw-content);content:var(--tw-content);width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4);content:var(--tw-content);content:var(--tw-content);content:var(--tw-content);content:var(--tw-content);background-color:currentColor;position:absolute;-webkit-mask-position:50%;mask-position:50%;-webkit-mask-size:cover;mask-size:cover;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.cbi-section>.cbi-title>h3 span[data-indicator=poll-status][data-style=active]:before{content:var(--tw-content);-webkit-mask-image:url("data:image/svg+xml,%3c!--%20@license%20lucide-static%20v1.16.0%20-%20ISC%20--%3e%3csvg%20class='lucide%20lucide-chevron-down'%20xmlns='http://www.w3.org/2000/svg'%20width='24'%20height='24'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='currentColor'%20stroke-width='2'%20stroke-linecap='round'%20stroke-linejoin='round'%20%3e%3cpath%20d='m6%209%206%206%206-6'%20/%3e%3c/svg%3e");mask-image:url("data:image/svg+xml,%3c!--%20@license%20lucide-static%20v1.16.0%20-%20ISC%20--%3e%3csvg%20class='lucide%20lucide-chevron-down'%20xmlns='http://www.w3.org/2000/svg'%20width='24'%20height='24'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='currentColor'%20stroke-width='2'%20stroke-linecap='round'%20stroke-linejoin='round'%20%3e%3cpath%20d='m6%209%206%206%206-6'%20/%3e%3c/svg%3e")}.cbi-section>.cbi-title>h3 span[data-indicator=poll-status][data-style=inactive]:before{content:var(--tw-content);-webkit-mask-image:url("data:image/svg+xml,%3c!--%20@license%20lucide-static%20v1.16.0%20-%20ISC%20--%3e%3csvg%20class='lucide%20lucide-chevron-up'%20xmlns='http://www.w3.org/2000/svg'%20width='24'%20height='24'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='currentColor'%20stroke-width='2'%20stroke-linecap='round'%20stroke-linejoin='round'%20%3e%3cpath%20d='m18%2015-6-6-6%206'%20/%3e%3c/svg%3e");mask-image:url("data:image/svg+xml,%3c!--%20@license%20lucide-static%20v1.16.0%20-%20ISC%20--%3e%3csvg%20class='lucide%20lucide-chevron-up'%20xmlns='http://www.w3.org/2000/svg'%20width='24'%20height='24'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='currentColor'%20stroke-width='2'%20stroke-linecap='round'%20stroke-linejoin='round'%20%3e%3cpath%20d='m18%2015-6-6-6%206'%20/%3e%3c/svg%3e")}.cbi-section legend{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height));--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.cbi-section h3{margin-bottom:calc(var(--spacing) * 3);border-bottom-style:var(--tw-border-style);border-bottom-width:1px;border-color:var(--border);padding-bottom:calc(var(--spacing) * 3);font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height));--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold);color:var(--foreground)}.cbi-section .cbi-section-create{margin-top:calc(var(--spacing) * 4);align-items:center;gap:calc(var(--spacing) * 2);flex-wrap:wrap;display:flex}.cbi-section .cbi-section-create>div{flex:none}.cbi-section .network-status-table{margin-bottom:calc(var(--spacing) * 3);justify-content:space-around;gap:calc(var(--spacing) * 4);flex-wrap:wrap;display:flex}@media (width>=48rem){.cbi-section .network-status-table{flex-wrap:nowrap}}.cbi-section div[style*=display\:grid]:has(>.ifacebox){place-items:center}.ifacebox{min-width:calc(var(--spacing) * 32);border-radius:var(--radius-base);border-style:var(--tw-border-style);border-width:1px;border-color:var(--border);background-color:var(--panel-bg);text-align:center;font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));--tw-leading:calc(var(--spacing) * 5);line-height:calc(var(--spacing) * 5);flex-direction:column;align-items:stretch;display:inline-flex;position:relative;overflow:visible}@media (width>=48rem){#cbi-network-interface .ifacebox{min-width:calc(var(--spacing) * 38)}}.ifacebox .ifacebox-head{border-top-left-radius:var(--radius-base);border-top-right-radius:var(--radius-base);border-bottom-style:var(--tw-border-style);border-bottom-width:1px;border-color:var(--border);background-color:var(--label-surface);width:100%;padding-inline:calc(var(--spacing) * 3);padding-block:calc(var(--spacing) * 2);text-align:center;font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold);color:var(--foreground);transition:color .2s,background-color .2s,border-color .2s}.ifacebox .ifacebox-head[style*=--zone-color-rgb]{background-color:rgb(var(--zone-color-rgb),.65)!important}.ifacebox .ifacebox-head.cbi-tooltip-container{background-color:#0000;position:static}.ifacebox .ifacebox-head.cbi-tooltip-container .cbi-tooltip{bottom:calc(var(--spacing) * 0);left:calc(var(--spacing) * 0)}.ifacebox .ifacebox-head.active{border-color:var(--primary);background-color:var(--primary);color:var(--primary-foreground)}.ifacebox .ifacebox-body{justify-content:center;align-items:stretch;gap:calc(var(--spacing) * 1);border-bottom-right-radius:var(--radius-base);border-bottom-left-radius:var(--radius-base);width:100%;padding:calc(var(--spacing) * 3);text-align:center;color:var(--foreground);flex-direction:column;flex:1;display:flex}.ifacebox .ifacebox-body>img{width:calc(var(--spacing) * 5);margin-inline:auto}:where(.ifacebox .ifacebox-body>span>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 1) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 1) * calc(1 - var(--tw-space-y-reverse)))}.ifacebox .ifacebox-body>span .cbi-tooltip{transition-delay:.2s}.ifacebox .ifacebox-body>span .nowrap{display:inline-block}.ifacebox .ifacebox-body>span img{width:calc(var(--spacing) * 5);flex-shrink:0}.ifacebox .ifacebox-body>div{width:100%;display:block}:where(.ifacebox .ifacebox-body>div>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 0) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 0) * calc(1 - var(--tw-space-y-reverse)))}.ifacebox .ifacebox-body .cbi-tooltip-container{cursor:help;color:var(--foreground);justify-content:center;align-items:center;display:inline-flex;position:static}.ifacebox .ifacebox-body .cbi-tooltip-container .cbi-tooltip{bottom:calc(var(--spacing) * 0)}.ifacebox .ifacebox-body .cbi-tooltip-container .cbi-tooltip .nowrap{white-space:nowrap}.ifacebox .ifacebox-body small{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height));--tw-leading:calc(var(--spacing) * 4);line-height:calc(var(--spacing) * 4);display:block}.network-status-table .ifacebox-body{justify-content:space-around;align-items:center;gap:calc(var(--spacing) * 2);flex-direction:column;flex:1;height:100%;display:flex}.network-status-table .ifacebox-body>div{gap:calc(var(--spacing) * 2);flex-wrap:wrap;display:flex}.network-status-table .ifacebox-body .ifacebadge{min-width:calc(var(--spacing) * 55);flex:1}#modal_overlay{pointer-events:none;top:calc(var(--spacing) * 0);bottom:calc(var(--spacing) * 0);background-color:#0000;display:none;position:fixed;overflow:auto}.modal-overlay-active #modal_overlay{pointer-events:auto;inset:calc(var(--spacing) * 0);z-index:50;background-color:var(--overlay-base-a60);--tw-backdrop-blur:blur(var(--blur-sm));-webkit-backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);place-items:center;display:grid}#modal_overlay>.modal{width:100%;max-width:var(--container-2xl);gap:calc(var(--spacing) * 4);border-radius:calc(var(--radius-base) * 1.5);border-style:var(--tw-border-style);border-width:1px;border-color:var(--border);background-color:var(--panel-bg);padding:calc(var(--spacing) * 6);overflow-wrap:break-word;white-space:normal;--tw-shadow:0 25px 50px -12px var(--tw-shadow-color,#00000040);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);flex-direction:column;display:flex}#modal_overlay>.modal h4{margin-bottom:calc(var(--spacing) * 0);text-align:center}#modal_overlay>.modal h4 em{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold);color:var(--primary)}#modal_overlay>.modal h5{margin-block:calc(var(--spacing) * 3);color:var(--foreground)}#modal_overlay>.modal p{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));--tw-leading:var(--leading-relaxed);line-height:var(--leading-relaxed);color:var(--foreground)}#modal_overlay>.modal>ul{border-radius:var(--radius-base);border-style:var(--tw-border-style);border-width:1px;border-color:var(--border);background-color:var(--background-a60);padding:calc(var(--spacing) * 3);overflow:auto}#modal_overlay>.modal label.btn{border-style:var(--tw-border-style);border-width:1px;border-color:var(--border);background-color:var(--background-a60);color:var(--foreground)}@media (hover:hover){#modal_overlay>.modal label.btn:hover{border-color:var(--border)}}#modal_overlay>.modal pre{overflow:auto}#modal_overlay>.modal pre.errors{border-color:var(--destructive-a60);background-color:var(--destructive-a20);color:var(--destructive)}#modal_overlay>.modal pre+pre{margin-top:calc(var(--spacing) * 3)}#modal_overlay>.modal .button-row,#modal_overlay>.modal div.left,#modal_overlay>.modal div.right{gap:calc(var(--spacing) * 3);border-top-style:var(--tw-border-style);border-top-width:1px;border-color:var(--border);padding:calc(var(--spacing) * 4);flex-shrink:0;display:flex}#modal_overlay>.modal div.left{justify-content:flex-start}#modal_overlay>.modal .button-row,#modal_overlay>.modal div.right{justify-content:flex-end}#modal_overlay>.modal.uci-dialog ins,#modal_overlay>.modal.uci-dialog del,#modal_overlay>.modal.uci-dialog var{font-family:var(--font-mono);--tw-shadow:var(--shadow-sm);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);font-style:normal;text-decoration-line:none}#modal_overlay>.modal.uci-dialog ins{border-radius:calc(var(--radius-base) * .5);border-style:var(--tw-border-style);border-width:1px;border-color:var(--success);background-color:var(--success-a80);color:var(--success-fg)}#modal_overlay>.modal.uci-dialog del{border-radius:calc(var(--radius-base) * .5);border-style:var(--tw-border-style);border-width:1px;border-color:var(--destructive);background-color:var(--destructive-a80);color:var(--destructive-fg)}#modal_overlay>.modal.uci-dialog var{border-radius:calc(var(--radius-base) * .5);border-style:var(--tw-border-style);border-width:1px;border-color:var(--info);background-color:var(--info-a80);color:var(--info-fg)}#modal_overlay>.modal.uci-dialog .uci-change-legend{margin-top:calc(var(--spacing) * 4);gap:calc(var(--spacing) * 3);border-radius:var(--radius-base);border-style:var(--tw-border-style);border-width:1px;border-color:var(--border);background-color:var(--background-a60);padding:calc(var(--spacing) * 4);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}#modal_overlay>.modal.uci-dialog .uci-change-legend .uci-change-legend-label{align-items:center;gap:calc(var(--spacing) * 2);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium);color:var(--foreground);display:flex}#modal_overlay>.modal.uci-dialog .uci-change-legend .uci-change-legend-label ins,#modal_overlay>.modal.uci-dialog .uci-change-legend .uci-change-legend-label del,#modal_overlay>.modal.uci-dialog .uci-change-legend .uci-change-legend-label var{height:calc(var(--spacing) * 6);min-width:calc(var(--spacing) * 6);border-radius:calc(var(--radius-base) * .5);padding-inline:calc(var(--spacing) * 2);font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height));--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold);justify-content:center;align-items:center;display:flex}#modal_overlay>.modal.uci-dialog .uci-change-list{margin-top:calc(var(--spacing) * 4)}:where(#modal_overlay>.modal.uci-dialog .uci-change-list>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 3) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 3) * calc(1 - var(--tw-space-y-reverse)))}#modal_overlay>.modal.uci-dialog .uci-change-list h5{margin-top:calc(var(--spacing) * 4);margin-bottom:calc(var(--spacing) * 2);border-radius:var(--radius-base);background-color:var(--muted);padding-inline:calc(var(--spacing) * 3);padding-block:calc(var(--spacing) * 2);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold);color:var(--foreground)}#modal_overlay>.modal.uci-dialog .uci-change-list h5:first-child{margin-top:calc(var(--spacing) * 0)}#modal_overlay>.modal.uci-dialog .uci-change-list ins,#modal_overlay>.modal.uci-dialog .uci-change-list del{border-radius:var(--radius-base);padding-inline:calc(var(--spacing) * 3);padding-block:calc(var(--spacing) * 2);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));display:block}:is(#modal_overlay>.modal.uci-dialog .uci-change-list ins,#modal_overlay>.modal.uci-dialog .uci-change-list del) strong{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}#modal_overlay>.modal.uci-dialog .uci-change-list var{border-radius:calc(var(--radius-base) * .5);padding-inline:calc(var(--spacing) * 1.5);padding-block:calc(var(--spacing) * .5);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));display:inline-block}#modal_overlay>.modal.uci-dialog .uci-change-list var ins,#modal_overlay>.modal.uci-dialog .uci-change-list var del{margin-left:calc(var(--spacing) * 1);padding-inline:calc(var(--spacing) * 1);font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height));padding-block:1px;display:inline-block}table.table,.table{margin-bottom:calc(var(--spacing) * 4);border-collapse:separate;--tw-border-spacing-x:calc(var(--spacing) * 0);--tw-border-spacing-y:calc(var(--spacing) * 0);width:100%;border-spacing:var(--tw-border-spacing-x) var(--tw-border-spacing-y);border-radius:var(--radius-base);border-style:var(--tw-border-style);border-width:1px;border-color:var(--border);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));overflow:visible}@media not all and (width>=48rem){table.table,.table{border-style:var(--tw-border-style);--tw-shadow:0 0 #0000;box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);border-width:0;border-radius:0;display:block}}:is(table.table,.table)[width="100%"]{width:100%}:is(table.table,.table)[width="33%"]{width:33.3333%}:is(table.table,.table) .cbi-section-table-titles{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}:is(:is(table.table,.table) .cbi-section-table-titles.named,:is(table.table,.table) .cbi-section-table-descr.named,:is(table.table,.table) .cbi-section-table-row[data-title]):before{content:var(--tw-content);content:var(--tw-content);border-bottom-style:var(--tw-border-style);content:var(--tw-content);border-bottom-width:1px;border-color:var(--border);content:var(--tw-content);padding-inline:calc(var(--spacing) * 3);content:var(--tw-content);padding-block:calc(var(--spacing) * 2.5);content:var(--tw-content);vertical-align:middle;content:var(--tw-content);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));content:var(--tw-content);--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold);--tw-content:attr(data-title);content:var(--tw-content);display:table-cell}:is(:is(:is(table.table,.table) .cbi-section-table-titles.named,:is(table.table,.table) .cbi-section-table-descr.named,:is(table.table,.table) .cbi-section-table-row[data-title]):not([data-title]),:is(:is(table.table,.table) .cbi-section-table-titles.named,:is(table.table,.table) .cbi-section-table-descr.named,:is(table.table,.table) .cbi-section-table-row[data-title]):has(td.cbi-section-table-titles)):before{content:var(--tw-content);--tw-content:none;content:none}:is(table.table,.table) .cbi-section-table-titles.named:before{content:var(--tw-content);border-top-left-radius:var(--radius-base);content:var(--tw-content);background-color:var(--label-surface)}@media not all and (width>=48rem){:is(table.table,.table) tbody,:is(table.table,.table) .tbody{display:block}}:is(table.table,.table) tr,:is(table.table,.table) .tr{transition:background-color .2s}@media (hover:hover){:is(:is(table.table,.table) tr,:is(table.table,.table) .tr):hover{background-color:var(--label-surface)}}@media not all and (width>=48rem){:is(table.table,.table) tr,:is(table.table,.table) .tr{border-bottom-style:var(--tw-border-style);border-bottom-width:1px;border-color:var(--border);padding-inline:calc(var(--spacing) * 2);padding-block:calc(var(--spacing) * 2);flex-wrap:wrap;display:flex}}@media (width>=48rem){:is(:is(:is(table.table,.table) tr,:is(table.table,.table) .tr):first-child:not([data-title]) .th,:is(:is(table.table,.table) tr,:is(table.table,.table) .tr):first-child:not([data-title]) .td):first-child{border-top-left-radius:var(--radius-base)}:is(:is(:is(table.table,.table) tr,:is(table.table,.table) .tr):first-child .th,:is(:is(table.table,.table) tr,:is(table.table,.table) .tr):first-child .td):last-child{border-top-right-radius:var(--radius-base)}}:is(:is(table.table,.table) tr,:is(table.table,.table) .tr):last-child[data-title]:before{content:var(--tw-content);border-bottom-style:var(--tw-border-style);border-bottom-width:0}@media (width>=48rem){:is(:is(table.table,.table) tr,:is(table.table,.table) .tr):last-child[data-title]:before{content:var(--tw-content);border-bottom-left-radius:var(--radius-base)}}:is(:is(table.table,.table) tr,:is(table.table,.table) .tr):last-child .td{border-bottom-style:var(--tw-border-style);border-bottom-width:0}@media (width>=48rem){:is(:is(table.table,.table) tr,:is(table.table,.table) .tr):last-child .td:first-child{border-bottom-left-radius:var(--radius-base)}:is(:is(table.table,.table) tr,:is(table.table,.table) .tr):last-child .td:last-child{border-bottom-right-radius:var(--radius-base)}}@media not all and (width>=48rem){:is(:is(table.table,.table) tr,:is(table.table,.table) .tr).table-titles,:is(:is(table.table,.table) tr,:is(table.table,.table) .tr).cbi-section-table-titles,:is(:is(table.table,.table) tr,:is(table.table,.table) .tr).cbi-section-table-descr{display:none}}:is(:is(table.table,.table) tr,:is(table.table,.table) .tr).cbi-rowstyle-1{background-color:var(--panel-bg)}:is(:is(table.table,.table) tr,:is(table.table,.table) .tr).cbi-rowstyle-2{background-color:var(--label-surface-a50)}:is(table.table,.table) th,:is(table.table,.table) .th{border-bottom-style:var(--tw-border-style);border-bottom-width:1px;border-color:var(--border);background-color:var(--label-surface);padding-inline:calc(var(--spacing) * 3);padding-block:calc(var(--spacing) * 2.5);text-align:left;font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}@media not all and (width>=48rem){:is(table.table,.table) th,:is(table.table,.table) .th{display:none}}:is(:is(table.table,.table) th,:is(table.table,.table) .th)[width="100%"]{width:100%}:is(:is(table.table,.table) th,:is(table.table,.table) .th)[width="33%"]{width:33.3333%}:is(:is(table.table,.table) th,:is(table.table,.table) .th)[data-sortable-row=true]{cursor:pointer;-webkit-user-select:none;user-select:none}:is(:is(table.table,.table) th,:is(table.table,.table) .th)[data-sortable-row=true]:after{content:var(--tw-content);margin-left:calc(var(--spacing) * .5);content:var(--tw-content);font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}@media (hover:hover){:is(:is(table.table,.table) th,:is(table.table,.table) .th)[data-sortable-row=true]:hover{background-color:var(--label-surface)}}:is(:is(table.table,.table) th,:is(table.table,.table) .th)[data-sortable-row=true][data-sort-direction=asc]:after{--tw-content:"▲";content:var(--tw-content)}:is(:is(table.table,.table) th,:is(table.table,.table) .th)[data-sortable-row=true][data-sort-direction=desc]:after{--tw-content:"▼";content:var(--tw-content)}:is(table.table,.table) td,:is(table.table,.table) .td{border-bottom-style:var(--tw-border-style);border-bottom-width:1px;border-color:var(--border);padding-inline:calc(var(--spacing) * 3);padding-block:calc(var(--spacing) * 2.5);vertical-align:middle;overflow-wrap:break-word;white-space:normal;display:table-cell}@media not all and (width>=48rem){:is(table.table,.table) td,:is(table.table,.table) .td{border-style:var(--tw-border-style);padding-inline:calc(var(--spacing) * 1);padding-block:calc(var(--spacing) * 1);border-width:0;flex:50%}}:is(:is(table.table,.table) td,:is(table.table,.table) .td):before{content:var(--tw-content);--tw-content:attr(data-title);content:var(--tw-content);content:var(--tw-content);display:none}@media not all and (width>=48rem){:is(:is(table.table,.table) td,:is(table.table,.table) .td):before{margin-bottom:calc(var(--spacing) * 1);font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height));display:block}}:is(:is(table.table,.table) td,:is(table.table,.table) .td):before{content:var(--tw-content)}@media not all and (width>=48rem){:is(:is(table.table,.table) td,:is(table.table,.table) .td):before{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}}:is(:is(table.table,.table) td,:is(table.table,.table) .td)>input[type=text],:is(:is(table.table,.table) td,:is(table.table,.table) .td)>input[type=password],:is(:is(table.table,.table) td,:is(table.table,.table) .td) select,:is(:is(table.table,.table) td,:is(table.table,.table) .td) .cbi-dropdown:not(.btn):not(.cbi-button){width:100%}:is(:is(table.table,.table) td,:is(table.table,.table) .td) select,:is(:is(table.table,.table) td,:is(table.table,.table) .td) .cbi-dropdown:not(.btn):not(.cbi-button){min-width:fit-content}:is(:is(table.table,.table) td,:is(table.table,.table) .td).cbi-value-field{overflow-wrap:anywhere}@media not all and (width>=48rem){:is(:is(table.table,.table) td,:is(table.table,.table) .td).cbi-value-field{margin-bottom:calc(var(--spacing) * 1);text-align:left;flex-basis:100%;align-self:flex-start}}@media (width>=48rem){:is(:is(table.table,.table) td,:is(table.table,.table) .td).cbi-value-field{max-width:65ch}}@media not all and (width>=48rem){:is(:is(table.table,.table) td,:is(table.table,.table) .td).cbi-value-field[data-widget=CBI\.DummyValue],:is(:is(table.table,.table) td,:is(table.table,.table) .td).cbi-value-field[data-widget=CBI\.Button],:is(:is(table.table,.table) td,:is(table.table,.table) .td).cbi-value-field[data-widget=CBI\.FlagValue],:is(:is(table.table,.table) td,:is(table.table,.table) .td).cbi-value-field[data-widget=dvalue],:is(:is(table.table,.table) td,:is(table.table,.table) .td).cbi-value-field[data-widget=button],:is(:is(table.table,.table) td,:is(table.table,.table) .td).cbi-value-field[data-widget=fvalue]{flex-basis:50%}:is(:is(table.table,.table) td,:is(table.table,.table) .td).cbi-section-actions{flex:0 0 100%}}:is(:is(table.table,.table) td,:is(table.table,.table) .td).cbi-section-actions>div>.cbi-button{flex:1}@media not all and (width>=48rem){:is(:is(table.table,.table) td,:is(table.table,.table) .td)>.cbi-button{width:100%}}:is(:is(table.table,.table) td,:is(table.table,.table) .td)[width="100%"]{width:100%}@media not all and (width>=48rem){:is(:is(table.table,.table) td,:is(table.table,.table) .td)[width="100%"]{flex:0 0 100%}}:is(:is(table.table,.table) td,:is(table.table,.table) .td)[width="33%"]{width:33.3333%}@media not all and (width>=48rem){:is(:is(table.table,.table) td,:is(table.table,.table) .td)[width="33%"]{flex:0 0 33.333%}}.cbi-section-table .cbi-section-table-titles .cbi-section-table-cell{width:auto!important}#content_syslog>div{align-items:center;column-gap:calc(var(--spacing) * 2);flex-wrap:wrap;display:flex}#content_syslog>div>select,#content_syslog>div>input{margin-block:calc(var(--spacing) * 0)!important}#content_syslog>.syslog-view{display:block}#syslog,#log_textarea{width:100%;font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height));--tw-leading:var(--leading-snug);line-height:var(--leading-snug)}#syslog{margin-bottom:calc(var(--spacing) * 5);border-radius:var(--radius-base);border-style:var(--tw-border-style);border-width:1px;border-color:var(--border);background-color:var(--terminal-bg);padding:calc(var(--spacing) * 4);color:var(--terminal-foreground)}#content_syslog.log-enhanced>#syslog{display:none}.syslog-view{margin-bottom:calc(var(--spacing) * 5);border-radius:var(--radius-base);border-style:var(--tw-border-style);border-width:1px;border-color:var(--border);background-color:var(--terminal-bg);width:100%;padding-inline:calc(var(--spacing) * 2);padding-block:calc(var(--spacing) * 4);font-family:var(--font-mono);font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height));--tw-leading:1.7;color:var(--terminal-foreground);--tw-outline-style:none;outline-style:none;line-height:1.7;overflow-x:auto}.syslog-view:focus-visible{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);--tw-ring-color:var(--ring-a50)}.syslog-view .log-row{border-radius:calc(var(--radius-base) * .5);width:max-content;min-width:100%;padding-inline:calc(var(--spacing) * 2);white-space:pre}.syslog-view .log-row:hover{background-color:var(--terminal-hover)}.syslog-view ::selection{background-color:var(--info-a40)}.syslog-view .log-time{opacity:.55}.syslog-view .log-sev{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.syslog-view .log-tag{opacity:.8}@media (width>=48rem){.syslog-view .log-time,.syslog-view .log-sev,.syslog-view .log-tag{vertical-align:bottom;display:inline-block}.syslog-view .log-time{min-width:24ch}.syslog-view .log-sev{min-width:16ch}.syslog-view .log-tag{min-width:18ch}}.syslog-view .lv-info .log-sev{color:var(--info)}.syslog-view .lv-notice .log-sev{color:var(--success)}.syslog-view .lv-warn .log-sev{color:var(--warning)}.syslog-view .lv-debug{opacity:.5}.syslog-view .lv-err,.syslog-view .lv-crit{background-color:var(--destructive-a20)}:is(.syslog-view .lv-err,.syslog-view .lv-crit):hover{background-color:var(--destructive-a30)}:is(.syslog-view .lv-err,.syslog-view .lv-crit) .log-sev{color:var(--destructive)}.cbi-input-invalid,.cbi-value-error{border-color:var(--destructive-a70)!important}:is(.cbi-input-invalid,.cbi-value-error):focus{--tw-ring-color:var(--destructive-a40)!important}.cbi-value{gap:calc(var(--spacing) * 4);padding-block:calc(var(--spacing) * 1.5);flex-flow:wrap;display:flex}@media not all and (width>=48rem){.cbi-value{gap:calc(var(--spacing) * 1.5);padding-block:calc(var(--spacing) * 1);flex-direction:column}}.cbi-value.hidden{display:none}.cbi-value+.cbi-value{margin-top:calc(var(--spacing) * 3)}.cbi-value>.cbi-value-title{padding-top:calc(var(--spacing) * 1);text-align:right;font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium);color:var(--foreground)}@media not all and (width>=48rem){.cbi-value>.cbi-value-title{text-align:left}}@media (width>=48rem){.cbi-value>.cbi-value-title{flex:0 0 10rem}}.cbi-value>.cbi-value-field{flex:1;max-width:100%}.cbi-value>.cbi-value-field:has(>.cbi-dropdown[disabled]){cursor:not-allowed}.cbi-value>.cbi-value-field .cbi-value-description{margin-top:calc(var(--spacing) * 1);padding-left:calc(var(--spacing) * 5);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));--tw-leading:1;overflow-wrap:break-word;color:var(--muted-foreground);line-height:1;position:relative}.cbi-value>.cbi-value-field .cbi-value-description:not(:empty):before{content:var(--tw-content);content:var(--tw-content);left:calc(var(--spacing) * 0);content:var(--tw-content);content:var(--tw-content);width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4);content:var(--tw-content);background-color:var(--primary);content:var(--tw-content);content:var(--tw-content);content:var(--tw-content);content:var(--tw-content);display:inline-block;position:absolute;-webkit-mask-image:url("data:image/svg+xml,%3c!--%20@license%20lucide-static%20v1.16.0%20-%20ISC%20--%3e%3csvg%20class='lucide%20lucide-info'%20xmlns='http://www.w3.org/2000/svg'%20width='24'%20height='24'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='currentColor'%20stroke-width='2'%20stroke-linecap='round'%20stroke-linejoin='round'%3e%3ccircle%20cx='12'%20cy='12'%20r='10'/%3e%3cpath%20d='M12%2016v-4'/%3e%3cpath%20d='M12%208h.01'/%3e%3c/svg%3e");mask-image:url("data:image/svg+xml,%3c!--%20@license%20lucide-static%20v1.16.0%20-%20ISC%20--%3e%3csvg%20class='lucide%20lucide-info'%20xmlns='http://www.w3.org/2000/svg'%20width='24'%20height='24'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='currentColor'%20stroke-width='2'%20stroke-linecap='round'%20stroke-linejoin='round'%3e%3ccircle%20cx='12'%20cy='12'%20r='10'/%3e%3cpath%20d='M12%2016v-4'/%3e%3cpath%20d='M12%208h.01'/%3e%3c/svg%3e");-webkit-mask-position:50%;mask-position:50%;-webkit-mask-size:cover;mask-size:cover;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.cbi-value>.cbi-section,.cbi-value>.cbi-tblsection{width:100%}.cbi-dynlist{width:max-content;max-width:calc(var(--spacing) * 96);align-items:flex-start;gap:calc(var(--spacing) * 3);flex-direction:column;display:inline-flex}@media not all and (width>=48rem){.cbi-dynlist{max-width:100%}}.cbi-dynlist .item{pointer-events:auto;cursor:move;align-items:flex-start;gap:calc(var(--spacing) * 2);border-radius:var(--radius-base);border-style:var(--tw-border-style);border-width:1px;border-color:var(--border);background-color:var(--panel-bg);padding-block:calc(var(--spacing) * 3);padding-right:calc(var(--spacing) * 9);padding-left:calc(var(--spacing) * 4);word-break:break-all;--tw-shadow:var(--shadow-sm);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);-webkit-user-select:text;user-select:text;flex-direction:column;align-self:stretch;transition:scale .2s,opacity .2s,box-shadow .2s,border-color .2s,background-color .2s;display:inline-flex;position:relative;overflow:hidden}.cbi-dynlist .item:after{content:"×";top:calc(var(--spacing) * 2);right:calc(var(--spacing) * 2);height:calc(var(--spacing) * 5);width:calc(var(--spacing) * 5);cursor:pointer;border-radius:calc(var(--radius-base) * .5);background-color:var(--muted);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium);color:var(--muted-foreground);flex-shrink:0;justify-content:center;align-items:center;display:inline-flex;position:absolute}.cbi-dynlist .item.dragging{--tw-scale-x:95%;--tw-scale-y:95%;--tw-scale-z:95%;scale:var(--tw-scale-x) var(--tw-scale-y);cursor:grabbing;opacity:.5;--tw-shadow:0 10px 15px -3px var(--tw-shadow-color,#0000001a), 0 4px 6px -4px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.cbi-dynlist .item.drag-over{--tw-scale-x:105%;--tw-scale-y:105%;--tw-scale-z:105%;scale:var(--tw-scale-x) var(--tw-scale-y);border-color:var(--primary-a60);background-color:var(--primary-a5);--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);--tw-ring-color:var(--ring)}.cbi-dynlist .item>span,.cbi-dynlist .item>code{pointer-events:none;border-radius:calc(var(--radius-base) * .5);width:100%;font-family:var(--font-mono);--tw-leading:var(--leading-relaxed);line-height:var(--leading-relaxed)}.cbi-dynlist .placeholder{word-break:break-all}.cbi-dynlist .add-item{align-items:center;gap:calc(var(--spacing) * 1.5);border-radius:var(--radius-base);border-style:var(--tw-border-style);--tw-border-style:dashed;border-style:dashed;border-width:1px;border-color:var(--border);padding-inline:calc(var(--spacing) * 1);padding-block:calc(var(--spacing) * 1);background-color:#0000;align-self:stretch;transition:color .2s,background-color .2s,border-color .2s;display:inline-flex}@media (hover:hover){.cbi-dynlist .add-item:hover{border-color:var(--border-a80);background-color:var(--muted-a30)}}.cbi-dynlist .add-item>input{min-width:calc(var(--spacing) * 56);flex:1}.cbi-dynlist .add-item>.cbi-button{min-height:calc(var(--spacing) * 6);min-width:calc(var(--spacing) * 6);cursor:pointer;border-radius:calc(var(--radius-base) * .5);padding-inline:calc(var(--spacing) * 2);padding-block:calc(var(--spacing) * 0);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium);--tw-shadow:0 0 #0000;box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.cbi-dynlist .add-item>.cbi-button:active{--tw-scale-x:95%;--tw-scale-y:95%;--tw-scale-z:95%;scale:var(--tw-scale-x) var(--tw-scale-y)}.cbi-tabmenu{margin-bottom:calc(var(--spacing) * 2);min-height:calc(var(--spacing) * 9);align-items:center;gap:calc(var(--spacing) * 0);border-radius:var(--radius-base);background-color:var(--muted);width:fit-content;max-width:100%;color:var(--muted-foreground);padding:3px;display:inline-flex;overflow-x:auto}.cbi-tabmenu li{margin:calc(var(--spacing) * 0);flex-shrink:0;min-width:fit-content;list-style-type:none;position:relative}.cbi-tabmenu li[data-errors]:after{content:var(--tw-content);content:var(--tw-content);top:calc(var(--spacing) * -.5);content:var(--tw-content);right:calc(var(--spacing) * -1.5);content:var(--tw-content);z-index:20;content:var(--tw-content);content:var(--tw-content);min-height:calc(var(--spacing) * 4);content:var(--tw-content);min-width:calc(var(--spacing) * 4);content:var(--tw-content);content:var(--tw-content);content:var(--tw-content);content:var(--tw-content);background-color:var(--destructive);content:var(--tw-content);padding-inline:calc(var(--spacing) * 1);content:var(--tw-content);padding-block:calc(var(--spacing) * .5);content:var(--tw-content);font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height));content:var(--tw-content);--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold);content:var(--tw-content);color:var(--destructive-fg);--tw-content:attr(data-errors);content:var(--tw-content);border-radius:3.40282e38px;justify-content:center;align-items:center;display:inline-flex;position:absolute}.cbi-tabmenu li[data-errors]>a{border-style:var(--tw-border-style);border-width:1px;border-color:var(--destructive-a50)}.cbi-tabmenu li>a{border-radius:calc(var(--radius-base) * .75);border-style:var(--tw-border-style);padding-inline:calc(var(--spacing) * 3);padding-block:calc(var(--spacing) * 1);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium);white-space:nowrap;color:var(--muted-foreground);border-width:1px;border-color:#0000;justify-content:center;align-items:center;text-decoration-line:none;transition:color .15s,background-color .15s,border-color .15s,box-shadow .15s;display:inline-flex}@media (hover:hover){.cbi-tabmenu li>a:hover{color:var(--foreground)}}.cbi-tabmenu li>a:focus-visible{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);--tw-ring-color:var(--ring-a50);--tw-outline-style:none;outline-style:none}.cbi-tabmenu li.cbi-tab>a{background-color:var(--background);color:var(--foreground);--tw-shadow:var(--shadow-sm);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.cbi-tabmenu li.cbi-tab>a:where([data-darkmode=true],[data-darkmode=true] *){border-style:var(--tw-border-style);border-width:1px;border-color:var(--input);background-color:var(--input-a30)}[data-tab-title]{visibility:hidden;height:calc(var(--spacing) * 0);overflow:hidden}[data-tab-active=true]{visibility:visible;height:auto;overflow:visible}#tabmenu{margin-bottom:calc(var(--spacing) * 6);width:100%}.tabs{align-items:center;gap:calc(var(--spacing) * 0);border-bottom-style:var(--tw-border-style);border-bottom-width:1px;border-color:var(--border);display:flex;position:relative;overflow-x:auto}.tabs a{padding-inline:calc(var(--spacing) * 6);padding-block:calc(var(--spacing) * 3);text-align:center;font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium);white-space:nowrap;color:var(--muted-foreground);transition:color .2s,background-color .2s,border-color .2s;display:block}@media (hover:hover){.tabs a:hover{color:var(--foreground);text-decoration-line:none}}.tabs>li.active{border-bottom-style:var(--tw-border-style);border-bottom-width:2px;border-color:var(--foreground)}.tabs>li.active>a{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold);color:var(--foreground)}.cbi-section-node-tabbed{margin-top:calc(var(--spacing) * 4)}button.cmdk-trigger{height:calc(var(--spacing) * 8);cursor:pointer;align-items:center;gap:calc(var(--spacing) * 2.5);border-radius:var(--radius-base);border-style:var(--tw-border-style);border-width:1px;border-color:var(--input);padding-right:calc(var(--spacing) * 1.5);padding-left:calc(var(--spacing) * 7.5);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));color:var(--muted-foreground);background-color:#0000;display:flex;position:relative}@media not all and (width>=48rem){button.cmdk-trigger{width:calc(var(--spacing) * 8);border-style:var(--tw-border-style);padding:calc(var(--spacing) * 0);border-width:0;justify-content:center}}button.cmdk-trigger:before{pointer-events:none;left:calc(var(--spacing) * 2.5);width:calc(var(--spacing) * 3.5);height:calc(var(--spacing) * 3.5);--tw-content:"";content:var(--tw-content);background-color:currentColor;position:absolute;-webkit-mask:url("data:image/svg+xml,%3csvg%20width='24'%20height='24'%20viewBox='0%200%2024%2024'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cpath%20d='M10%2010m-7%200a7%207%200%201%200%2014%200a7%207%200%201%200%20-14%200'%20stroke='currentColor'%20stroke-width='2'%20stroke-linecap='round'%20stroke-linejoin='round'/%3e%3cpath%20d='M21%2021l-6%20-6'%20stroke='currentColor'%20stroke-width='2'%20stroke-linecap='round'%20stroke-linejoin='round'/%3e%3c/svg%3e") 50%/contain no-repeat;mask:url("data:image/svg+xml,%3csvg%20width='24'%20height='24'%20viewBox='0%200%2024%2024'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cpath%20d='M10%2010m-7%200a7%207%200%201%200%2014%200a7%207%200%201%200%20-14%200'%20stroke='currentColor'%20stroke-width='2'%20stroke-linecap='round'%20stroke-linejoin='round'/%3e%3cpath%20d='M21%2021l-6%20-6'%20stroke='currentColor'%20stroke-width='2'%20stroke-linecap='round'%20stroke-linejoin='round'/%3e%3c/svg%3e") 50%/contain no-repeat}@media not all and (width>=48rem){button.cmdk-trigger:before{width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4);position:static}}button.cmdk-trigger:hover{border-color:var(--muted-foreground)}@media not all and (width>=48rem){button.cmdk-trigger:hover{background-color:var(--muted)}}.cmdk-trigger-label{text-overflow:ellipsis;white-space:nowrap;text-align:left;overflow:hidden}@media not all and (width>=48rem){.cmdk-trigger-label{display:none}}.cmdk-trigger-key{border-radius:calc(var(--radius-base) * .75);border-style:var(--tw-border-style);border-width:1px;border-color:var(--border);background-color:var(--label-surface);padding-inline:calc(var(--spacing) * 1.5);font-family:var(--font-mono);font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height));color:var(--muted-foreground);padding-block:1px}@media not all and (width>=48rem){.cmdk-trigger-key{display:none}}#cmdk-overlay{inset:calc(var(--spacing) * 0);z-index:50;background-color:var(--overlay-base-a60);--tw-backdrop-blur:blur(var(--blur-sm));-webkit-backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);justify-content:center;align-items:flex-start;display:flex;position:fixed}@media not all and (width>=48rem){#cmdk-overlay{--tw-backdrop-blur: ;-webkit-backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);background-color:#0000}}#cmdk-overlay[hidden]{display:none}.cmdk-panel{border-radius:calc(var(--radius-base) * 1.5);border-style:var(--tw-border-style);border-width:1px;border-color:var(--panel-border);background-color:var(--panel-bg);--tw-shadow:0 25px 50px -12px var(--tw-shadow-color,#00000040);width:min(560px,100vw - 32px);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);transition:opacity .15s var(--ease-out),translate .15s var(--ease-out);flex-direction:column;margin-top:15vh;display:flex;overflow:hidden}@starting-style{.cmdk-panel{--tw-translate-y:calc(var(--spacing) * -1.5);translate:var(--tw-translate-x) var(--tw-translate-y)}}@starting-style{.cmdk-panel{opacity:0}}@media not all and (width>=48rem){.cmdk-panel{margin-top:calc(var(--spacing) * 0);border-style:var(--tw-border-style);width:100%;height:100dvh;padding-top:env(safe-area-inset-top);--tw-shadow:0 0 #0000;box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);border-width:0;border-radius:0;transition-property:none}}.cmdk-inputrow{height:calc(var(--spacing) * 12);align-items:center;gap:calc(var(--spacing) * 2);border-bottom-style:var(--tw-border-style);border-bottom-width:1px;border-color:var(--panel-border);padding-right:calc(var(--spacing) * 3);padding-left:calc(var(--spacing) * 10);flex-shrink:0;display:flex;position:relative}@media not all and (width>=48rem){.cmdk-inputrow{height:calc(var(--spacing) * 14);padding-right:calc(var(--spacing) * 1.5)}}.cmdk-inputrow:before{pointer-events:none;left:calc(var(--spacing) * 3.5);width:calc(var(--spacing) * 3.5);height:calc(var(--spacing) * 3.5);color:var(--muted-foreground);--tw-content:"";content:var(--tw-content);background-color:currentColor;position:absolute;-webkit-mask:url("data:image/svg+xml,%3csvg%20width='24'%20height='24'%20viewBox='0%200%2024%2024'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cpath%20d='M10%2010m-7%200a7%207%200%201%200%2014%200a7%207%200%201%200%20-14%200'%20stroke='currentColor'%20stroke-width='2'%20stroke-linecap='round'%20stroke-linejoin='round'/%3e%3cpath%20d='M21%2021l-6%20-6'%20stroke='currentColor'%20stroke-width='2'%20stroke-linecap='round'%20stroke-linejoin='round'/%3e%3c/svg%3e") 50%/contain no-repeat;mask:url("data:image/svg+xml,%3csvg%20width='24'%20height='24'%20viewBox='0%200%2024%2024'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cpath%20d='M10%2010m-7%200a7%207%200%201%200%2014%200a7%207%200%201%200%20-14%200'%20stroke='currentColor'%20stroke-width='2'%20stroke-linecap='round'%20stroke-linejoin='round'/%3e%3cpath%20d='M21%2021l-6%20-6'%20stroke='currentColor'%20stroke-width='2'%20stroke-linecap='round'%20stroke-linejoin='round'/%3e%3c/svg%3e") 50%/contain no-repeat}.cmdk-inputrow:has(input.cmdk-input:placeholder-shown) button.cmdk-clear{display:none}input.cmdk-input{height:100%;min-width:calc(var(--spacing) * 0);border-style:var(--tw-border-style);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));color:var(--text);--tw-shadow:0 0 #0000;box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);--tw-outline-style:none;background-color:#0000;border-width:0;outline-style:none;flex:1}@media not all and (width>=48rem){input.cmdk-input{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}}input.cmdk-input:focus{border-style:var(--tw-border-style);--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(0px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);--tw-outline-style:none;border-width:0;outline-style:none}button.cmdk-clear{width:calc(var(--spacing) * 5.5);height:calc(var(--spacing) * 5.5);cursor:pointer;border-style:var(--tw-border-style);padding:calc(var(--spacing) * 0);color:var(--muted-foreground);background-color:#0000;border-width:0;border-radius:3.40282e38px;flex-shrink:0;justify-content:center;align-items:center;display:flex}button.cmdk-clear:before{width:calc(var(--spacing) * 3.25);height:calc(var(--spacing) * 3.25);--tw-content:"";content:var(--tw-content);background-color:currentColor;-webkit-mask:url("data:image/svg+xml,%3c!--%20@license%20lucide-static%20v1.16.0%20-%20ISC%20--%3e%3csvg%20class='lucide%20lucide-x'%20xmlns='http://www.w3.org/2000/svg'%20width='24'%20height='24'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='currentColor'%20stroke-width='2'%20stroke-linecap='round'%20stroke-linejoin='round'%20%3e%3cpath%20d='M18%206%206%2018'%20/%3e%3cpath%20d='m6%206%2012%2012'%20/%3e%3c/svg%3e") 50%/contain no-repeat;mask:url("data:image/svg+xml,%3c!--%20@license%20lucide-static%20v1.16.0%20-%20ISC%20--%3e%3csvg%20class='lucide%20lucide-x'%20xmlns='http://www.w3.org/2000/svg'%20width='24'%20height='24'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='currentColor'%20stroke-width='2'%20stroke-linecap='round'%20stroke-linejoin='round'%20%3e%3cpath%20d='M18%206%206%2018'%20/%3e%3cpath%20d='m6%206%2012%2012'%20/%3e%3c/svg%3e") 50%/contain no-repeat}button.cmdk-clear:hover{background-color:var(--muted);color:var(--foreground)}button.cmdk-cancel{cursor:pointer;border-style:var(--tw-border-style);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));color:var(--primary);background-color:#0000;border-width:0;flex-shrink:0;display:none}@media not all and (width>=48rem){button.cmdk-cancel{padding-block:calc(var(--spacing) * 1.5);padding-right:calc(var(--spacing) * 4);padding-left:calc(var(--spacing) * 1.5);display:block}}.cmdk-list{overscroll-behavior:contain;max-height:342px;padding:calc(var(--spacing) * 1);overflow-y:auto}@media not all and (width>=48rem){.cmdk-list{max-height:none;padding:calc(var(--spacing) * 2);padding-bottom:calc(.75rem + env(safe-area-inset-bottom));flex:1}}.cmdk-group{padding-inline:calc(var(--spacing) * 2);padding-top:calc(var(--spacing) * 2.5);padding-bottom:calc(var(--spacing) * 1);font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height));--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium);--tw-tracking:var(--tracking-wide);letter-spacing:var(--tracking-wide);color:var(--muted-foreground)}.cmdk-row{cursor:pointer;justify-content:flex-start;align-items:center;gap:calc(var(--spacing) * 2);border-radius:var(--radius-base);border-style:var(--tw-border-style);width:100%;padding-inline:calc(var(--spacing) * 2);padding-block:calc(var(--spacing) * 1.5);text-align:left;font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));color:var(--text);background-color:#0000;border-width:0;text-decoration-line:none;display:flex}@media not all and (width>=48rem){.cmdk-row{min-height:calc(var(--spacing) * 11);padding-inline:calc(var(--spacing) * 2.5)}}.cmdk-row:hover{text-decoration-line:none}.cmdk-row img.shadcn-icon{width:calc(var(--spacing) * 3.75);height:calc(var(--spacing) * 3.75);flex-shrink:0}.cmdk-row mark{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold);color:var(--primary);background-color:#0000}.cmdk-row .cmdk-title{min-width:calc(var(--spacing) * 0);text-overflow:ellipsis;white-space:nowrap;--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium);color:var(--foreground);overflow:hidden}.cmdk-row .cmdk-group-name{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height));color:var(--muted-foreground);flex-shrink:0;margin-left:auto}.cmdk-row .cmdk-check{width:calc(var(--spacing) * 3.5);height:calc(var(--spacing) * 3.5);color:var(--primary);background-color:currentColor;flex-shrink:0;margin-left:auto;display:block;-webkit-mask:url("data:image/svg+xml,%3c!--%20@license%20lucide-static%20v1.16.0%20-%20ISC%20--%3e%3csvg%20class='lucide%20lucide-check'%20xmlns='http://www.w3.org/2000/svg'%20width='24'%20height='24'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='currentColor'%20stroke-width='2'%20stroke-linecap='round'%20stroke-linejoin='round'%3e%3cpath%20d='M20%206%209%2017l-5-5'/%3e%3c/svg%3e") 50%/contain no-repeat;mask:url("data:image/svg+xml,%3c!--%20@license%20lucide-static%20v1.16.0%20-%20ISC%20--%3e%3csvg%20class='lucide%20lucide-check'%20xmlns='http://www.w3.org/2000/svg'%20width='24'%20height='24'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='currentColor'%20stroke-width='2'%20stroke-linecap='round'%20stroke-linejoin='round'%3e%3cpath%20d='M20%206%209%2017l-5-5'/%3e%3c/svg%3e") 50%/contain no-repeat}.cmdk-row.is-selected{background-color:var(--muted)}.cmdk-empty{padding-inline:calc(var(--spacing) * 3);padding-block:calc(var(--spacing) * 7);text-align:center;font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));color:var(--muted-foreground)}.cmdk-footer{align-items:center;gap:calc(var(--spacing) * 3.5);border-top-style:var(--tw-border-style);border-top-width:1px;border-color:var(--panel-border);background-color:var(--background-a60);padding-inline:calc(var(--spacing) * 3.5);padding-block:calc(var(--spacing) * 2);font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height));color:var(--muted-foreground);flex-shrink:0;display:flex}@media not all and (width>=48rem){.cmdk-footer{display:none}}.cmdk-footer kbd{border-radius:calc(var(--radius-base) * .75);border-style:var(--tw-border-style);border-width:1px;border-color:var(--border);background-color:var(--label-surface);padding-inline:calc(var(--spacing) * 1.5);font-family:var(--font-mono);font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height));padding-block:1px}.cmdk-footer .cmdk-hint{align-items:center;gap:calc(var(--spacing) * 1.5);display:flex}.cmdk-footer .cmdk-hint-close{margin-left:auto}:root{view-transition-name:none}#luci-nav-progress{pointer-events:none;top:calc(var(--spacing) * 0);left:calc(var(--spacing) * 0);z-index:80;height:calc(var(--spacing) * .5);width:calc(var(--spacing) * 0);--tw-gradient-position:to right;position:fixed}@supports (background-image:linear-gradient(in lab, red, red)){#luci-nav-progress{--tw-gradient-position:to right in oklab}}#luci-nav-progress{background-image:linear-gradient(var(--tw-gradient-stops));--tw-gradient-from:var(--progress-bar-start);--tw-gradient-to:var(--progress-bar-end);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));transition:width .3s var(--ease-out)}#luci-nav-progress[data-state=done]{opacity:0;transition:width .3s ease-out,opacity .15s ease-in .15s}#luci-nav-status{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}#maincontent{--tw-outline-style:none;outline-style:none}#maincontent .view-staging{visibility:hidden;height:calc(var(--spacing) * 0);overflow:hidden}#maincontent #view.view-leaving{cursor:progress;opacity:.6;transition:opacity .15s}.hidden{display:none!important}.left{text-align:left!important}@media (width>=48rem){.left:is(td){text-align:left!important}}.right{text-align:right!important}@media (width>=48rem){.right:is(td){text-align:right!important}}.center{text-align:center!important}@media (width>=48rem){.center:is(td){text-align:center!important}}.top{vertical-align:top!important}@media (width>=48rem){.top:is(td){vertical-align:top!important}}.bottom{vertical-align:bottom!important}@media (width>=48rem){.bottom:is(td){vertical-align:bottom!important}}.middle{vertical-align:middle!important}@media (width>=48rem){.middle:is(td){vertical-align:middle!important}}.nowrap:not(span){white-space:nowrap}@keyframes shadcn-fade-in{0%{opacity:0}}.fade-in,#view>:not(.spinning),#view>.cbi-map>.cbi-map-tabbed>[data-tab-active=true],.cbi-section-node-tabbed>[data-tab-active=true]{animation:.25s backwards shadcn-fade-in}.fade-out{pointer-events:none;opacity:0;transition:opacity .4s}.spinning{position:relative;padding-left:calc(var(--spacing) * 7)!important}.spinning:before{content:var(--tw-content);content:var(--tw-content);content:var(--tw-content);top:50%;left:calc(var(--spacing) * 1.5);content:var(--tw-content);width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4);content:var(--tw-content);--tw-translate-y:calc(calc(1 / 2 * 100%) * -1);translate:var(--tw-translate-x) var(--tw-translate-y);content:var(--tw-content);animation:var(--animate-spin);content:var(--tw-content);content:var(--tw-content);content:var(--tw-content);content:var(--tw-content);content:var(--tw-content);background-color:currentColor;position:absolute;-webkit-mask-image:url("data:image/svg+xml,%3c!--%20@license%20lucide-static%20v1.16.0%20-%20ISC%20--%3e%3csvg%20class='lucide%20lucide-loader-2'%20xmlns='http://www.w3.org/2000/svg'%20width='24'%20height='24'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='currentColor'%20stroke-width='2'%20stroke-linecap='round'%20stroke-linejoin='round'%3e%3cpath%20d='M21%2012a9%209%200%201%201-6.219-8.56'/%3e%3c/svg%3e");mask-image:url("data:image/svg+xml,%3c!--%20@license%20lucide-static%20v1.16.0%20-%20ISC%20--%3e%3csvg%20class='lucide%20lucide-loader-2'%20xmlns='http://www.w3.org/2000/svg'%20width='24'%20height='24'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='currentColor'%20stroke-width='2'%20stroke-linecap='round'%20stroke-linejoin='round'%3e%3cpath%20d='M21%2012a9%209%200%201%201-6.219-8.56'/%3e%3c/svg%3e");-webkit-mask-position:50%;mask-position:50%;-webkit-mask-size:cover;mask-size:cover;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}#view>.spinning:first-child{min-height:calc(var(--spacing) * 48);place-items:center;width:fit-content;margin-inline:auto;display:grid}html{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}html[data-darkmode=true]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}.card-header img,.login-input-icon img,.login-pw-toggle img,img.shadcn-icon{filter:brightness(0)saturate()}html[data-darkmode=true] .card-header img,html[data-darkmode=true] .login-input-icon img,html[data-darkmode=true] .login-pw-toggle img,html[data-darkmode=true] img.shadcn-icon{filter:brightness(0)saturate()invert()}.card-header img,img.shadcn-icon,#sidebar img.shadcn-icon{opacity:.65}html[data-darkmode=true] #sidebar img.shadcn-icon{opacity:.7}.card-header button:hover img,#sidebar .sidebar-nav-item.active img,#sidebar .sidebar-accordion-item.active img,#sidebar .sidebar-nav-parent:hover img{opacity:1}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:1ms!important;transition-delay:0s!important;animation-duration:1ms!important;animation-delay:0s!important}.spinning:before{animation-duration:1s!important}}@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:"";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:"";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:"";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-leading{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-tracking{syntax:"*";inherits:false}@property --tw-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-z{syntax:"*";inherits:false;initial-value:0}@property --tw-content{syntax:"*";inherits:false;initial-value:""}@property --tw-scale-x{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-y{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-z{syntax:"*";inherits:false;initial-value:1}@property --tw-gradient-position{syntax:"*";inherits:false}@property --tw-gradient-from{syntax:"";inherits:false;initial-value:#0000}@property --tw-gradient-via{syntax:"";inherits:false;initial-value:#0000}@property --tw-gradient-to{syntax:"";inherits:false;initial-value:#0000}@property --tw-gradient-stops{syntax:"*";inherits:false}@property --tw-gradient-via-stops{syntax:"*";inherits:false}@property --tw-gradient-from-position{syntax:"";inherits:false;initial-value:0%}@property --tw-gradient-via-position{syntax:"";inherits:false;initial-value:50%}@property --tw-gradient-to-position{syntax:"";inherits:false;initial-value:100%}@property --tw-space-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-backdrop-blur{syntax:"*";inherits:false}@property --tw-backdrop-brightness{syntax:"*";inherits:false}@property --tw-backdrop-contrast{syntax:"*";inherits:false}@property --tw-backdrop-grayscale{syntax:"*";inherits:false}@property --tw-backdrop-hue-rotate{syntax:"*";inherits:false}@property --tw-backdrop-invert{syntax:"*";inherits:false}@property --tw-backdrop-opacity{syntax:"*";inherits:false}@property --tw-backdrop-saturate{syntax:"*";inherits:false}@property --tw-backdrop-sepia{syntax:"*";inherits:false}@property --tw-border-spacing-x{syntax:"";inherits:false;initial-value:0}@property --tw-border-spacing-y{syntax:"";inherits:false;initial-value:0}@keyframes spin{to{transform:rotate(360deg)}} +@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-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-leading:initial;--tw-font-weight:initial;--tw-tracking:initial;--tw-translate-x:0;--tw-translate-y:0;--tw-translate-z:0;--tw-content:"";--tw-scale-x:1;--tw-scale-y:1;--tw-scale-z:1;--tw-gradient-position:initial;--tw-gradient-from:#0000;--tw-gradient-via:#0000;--tw-gradient-to:#0000;--tw-gradient-stops:initial;--tw-gradient-via-stops:initial;--tw-gradient-from-position:0%;--tw-gradient-via-position:50%;--tw-gradient-to-position:100%;--tw-space-y-reverse:0;--tw-backdrop-blur:initial;--tw-backdrop-brightness:initial;--tw-backdrop-contrast:initial;--tw-backdrop-grayscale:initial;--tw-backdrop-hue-rotate:initial;--tw-backdrop-invert:initial;--tw-backdrop-opacity:initial;--tw-backdrop-saturate:initial;--tw-backdrop-sepia:initial;--tw-border-spacing-x:0;--tw-border-spacing-y:0}}}@layer theme{:root,:host{--font-sans:var(--font-sans);--font-mono:var(--font-mono);--spacing:.25rem;--breakpoint-md:48rem;--container-xs:20rem;--container-2xl:42rem;--text-xs:.75rem;--text-xs--line-height:calc(1 / .75);--text-sm:.875rem;--text-sm--line-height:calc(1.25 / .875);--text-base:1rem;--text-base--line-height:calc(1.5 / 1);--text-lg:1.125rem;--text-lg--line-height:calc(1.75 / 1.125);--text-xl:1.25rem;--text-xl--line-height:calc(1.75 / 1.25);--text-2xl:1.5rem;--text-2xl--line-height:calc(2 / 1.5);--font-weight-normal:400;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--tracking-tight:-.025em;--tracking-wide:.025em;--leading-tight:1.25;--leading-snug:1.375;--leading-normal:1.5;--leading-relaxed:1.625;--radius-sm:calc(var(--radius-base) * .5);--radius-md:calc(var(--radius-base) * .75);--radius-lg:var(--radius-base);--radius-xl:calc(var(--radius-base) * 1.5);--shadow-sm:var(--shadow-sm);--ease-out:cubic-bezier(0, 0, .2, 1);--animate-spin:spin 1s linear infinite;--blur-sm:8px;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono);--radius:calc(var(--radius-base) * .5);--color-sidebar-fg:var(--sidebar-foreground);--color-terminal-fg:var(--terminal-foreground)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.collapse{visibility:collapse}.fixed{position:fixed}.relative{position:relative}.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}.hidden{display:none}.inline{display:inline}.overflow-y-auto{overflow-y:auto}.border{border-style:var(--tw-border-style);border-width:1px}.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)}.select-all{-webkit-user-select:all;user-select:all}}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/luci-static/shadcn/inter-cyrillic-ext-wght-normal.woff2)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/luci-static/shadcn/inter-cyrillic-wght-normal.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/luci-static/shadcn/inter-greek-ext-wght-normal.woff2)format("woff2-variations");unicode-range:U+1F??}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/luci-static/shadcn/inter-greek-wght-normal.woff2)format("woff2-variations");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/luci-static/shadcn/inter-vietnamese-wght-normal.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/luci-static/shadcn/inter-latin-ext-wght-normal.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/luci-static/shadcn/inter-latin-wght-normal.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--bg:oklch(98.5% .004 275);--surface:oklch(100% 0 0);--text:oklch(18% .02 275);--brand:oklch(56.7% .158 275);--on-brand:oklch(100% 0 0);--success:oklch(58% .15 150);--warning:oklch(70% .13 75);--danger:oklch(55% .2 25);--info:oklch(58% .13 250);--overlay-base:oklch(0% 0 0);--background:oklch(98.5% .004 275);--foreground:oklch(18% .02 275);--primary:oklch(56.7% .158 275);--primary-foreground:oklch(100% 0 0);--panel-bg:oklch(100% 0 0);--destructive:oklch(55% .2 25);--ring:oklch(56.7% .158 275);--border:oklch(89.65% .0058 275);--input:oklch(89.65% .0058 275);--sidebar-bg:oklch(98.5% .004 275);--sidebar-foreground:oklch(18% .02 275);--sidebar-accent-fg:oklch(18% .02 275);--sidebar-accent:oklch(94.5% .004 275);--sidebar-hover-bg:oklch(94.5% .004 275);--login-path-stroke:oklch(56.7% .158 275);--progress-bar-end:oklch(56.7% .158 275);--destructive-fg:oklch(100% 0 0);--success-fg:oklch(100% 0 0);--info-fg:oklch(100% 0 0);--warning-fg:oklch(20% .05 75);--terminal-foreground:oklch(85% .08 155);--terminal-hover:oklch(85% .08 155/.06);--muted-foreground:oklch(52.62% .0131 275);--secondary-foreground:oklch(30.08% .0176 275);--sidebar-muted:oklch(52.62% .0131 275);--focus-ring:oklch(56.7% .158 275/.5);--muted:oklch(95% .004 275);--secondary:oklch(93.5% .004 275);--label-surface:oklch(96.3% .004 275);--panel-border:oklch(89.65% .0058 275);--primary-hover:oklch(62.7% .158 275);--sidebar-active-bg:oklch(56.7% .158 275/.12);--sidebar-active-fg:oklch(48.7% .158 275);--sidebar-border:oklch(89.65% .0058 275);--terminal-bg:oklch(14% .02 264);--warning-soft-fg:oklch(42% .12 75);--progress-bar-start:oklch(74.02% .0948 275);--login-left-bg:oklch(93.5% .004 275);--primary-a5:oklch(56.7% .158 275/.05);--primary-a10:oklch(56.7% .158 275/.1);--primary-a15:oklch(56.7% .158 275/.15);--primary-a20:oklch(56.7% .158 275/.2);--primary-a25:oklch(56.7% .158 275/.25);--primary-a60:oklch(56.7% .158 275/.6);--primary-a70:oklch(56.7% .158 275/.7);--primary-a90:oklch(56.7% .158 275/.9);--destructive-a8:oklch(55% .2 25/.08);--destructive-a10:oklch(55% .2 25/.1);--destructive-a20:oklch(55% .2 25/.2);--destructive-a30:oklch(55% .2 25/.3);--destructive-a40:oklch(55% .2 25/.4);--destructive-a50:oklch(55% .2 25/.5);--destructive-a60:oklch(55% .2 25/.6);--destructive-a70:oklch(55% .2 25/.7);--destructive-a80:oklch(55% .2 25/.8);--destructive-a90:oklch(55% .2 25/.9);--foreground-a5:oklch(18% .02 275/.05);--foreground-a30:oklch(18% .02 275/.3);--secondary-a80:oklch(93.5% .004 275/.8);--muted-a30:oklch(95% .004 275/.3);--muted-a80:oklch(95% .004 275/.8);--muted-foreground-a70:oklch(52.62% .0131 275/.7);--success-a10:oklch(58% .15 150/.1);--success-a15:oklch(58% .15 150/.15);--success-a30:oklch(58% .15 150/.3);--success-a40:oklch(58% .15 150/.4);--success-a80:oklch(58% .15 150/.8);--warning-a10:oklch(70% .13 75/.1);--warning-a15:oklch(70% .13 75/.15);--warning-a30:oklch(70% .13 75/.3);--warning-a40:oklch(70% .13 75/.4);--info-a10:oklch(58% .13 250/.1);--info-a15:oklch(58% .13 250/.15);--info-a30:oklch(58% .13 250/.3);--info-a40:oklch(58% .13 250/.4);--info-a80:oklch(58% .13 250/.8);--border-a60:oklch(89.65% .0058 275/.6);--border-a80:oklch(89.65% .0058 275/.8);--input-a30:oklch(89.65% .0058 275/.3);--label-surface-a50:oklch(96.3% .004 275/.5);--overlay-base-a50:oklch(0% 0 0/.5);--overlay-base-a60:oklch(0% 0 0/.6);--background-a60:oklch(98.5% .004 275/.6);--ring-a50:oklch(56.7% .158 275/.5);--font-sans:"Inter Variable", ui-sans-serif, system-ui, sans-serif;--font-mono:ui-monospace, "SF Mono", Menlo, Monaco, Consolas, monospace;--radius-base:.5rem;--shadow-sm:0 1px 3px 0 oklch(0% 0 0/.1), 0 1px 2px -1px oklch(0% 0 0/.1)}[data-darkmode=true]{--bg:oklch(15.9% .005 264);--surface:oklch(20.5% .004 264);--text:oklch(90% .006 264);--brand:oklch(56.7% .158 275);--on-brand:oklch(100% 0 0);--success:oklch(63.7% .175 147);--warning:oklch(80% .12 80);--danger:oklch(63% .16 25);--info:oklch(70% .1 250);--overlay-base:oklch(0% 0 0);--background:oklch(15.9% .005 264);--foreground:oklch(90% .006 264);--primary:oklch(56.7% .158 275);--primary-foreground:oklch(100% 0 0);--panel-bg:oklch(20.5% .004 264);--destructive:oklch(63% .16 25);--ring:oklch(56.7% .158 275);--border:oklch(26.27% .0051 264);--input:oklch(26.27% .0051 264);--sidebar-bg:oklch(15.9% .005 264);--sidebar-foreground:oklch(90% .006 264);--sidebar-accent-fg:oklch(90% .006 264);--sidebar-accent:oklch(23% .004 264);--sidebar-hover-bg:oklch(23% .004 264);--login-path-stroke:oklch(56.7% .158 275);--progress-bar-end:oklch(56.7% .158 275);--destructive-fg:oklch(100% 0 0);--success-fg:oklch(100% 0 0);--info-fg:oklch(100% 0 0);--warning-fg:oklch(20% .05 75);--terminal-foreground:oklch(85% .08 155);--terminal-hover:oklch(85% .08 155/.06);--muted-foreground:oklch(58.14% .0056 264);--secondary-foreground:oklch(78.89% .0059 264);--sidebar-muted:oklch(58.14% .0056 264);--focus-ring:oklch(56.7% .158 275/.5);--muted:oklch(18.9% .005 264);--secondary:oklch(22.5% .004 264);--label-surface:oklch(19.5% .004 264);--panel-border:oklch(90% .006 264/.08);--primary-hover:oklch(62.7% .158 275);--sidebar-active-bg:oklch(56.7% .158 275/.14);--sidebar-active-fg:oklch(78.7% .158 275);--sidebar-border:oklch(90% .006 264/.08);--terminal-bg:oklch(12% .02 264);--warning-soft-fg:oklch(86% .1 85);--progress-bar-start:oklch(42.22% .0964 274.8);--login-left-bg:oklch(13.4% .005 264);--primary-a5:oklch(56.7% .158 275/.05);--primary-a10:oklch(56.7% .158 275/.1);--primary-a15:oklch(56.7% .158 275/.15);--primary-a20:oklch(56.7% .158 275/.2);--primary-a25:oklch(56.7% .158 275/.25);--primary-a60:oklch(56.7% .158 275/.6);--primary-a70:oklch(56.7% .158 275/.7);--primary-a90:oklch(56.7% .158 275/.9);--destructive-a8:oklch(63% .16 25/.08);--destructive-a10:oklch(63% .16 25/.1);--destructive-a20:oklch(63% .16 25/.2);--destructive-a30:oklch(63% .16 25/.3);--destructive-a40:oklch(63% .16 25/.4);--destructive-a50:oklch(63% .16 25/.5);--destructive-a60:oklch(63% .16 25/.6);--destructive-a70:oklch(63% .16 25/.7);--destructive-a80:oklch(63% .16 25/.8);--destructive-a90:oklch(63% .16 25/.9);--foreground-a5:oklch(90% .006 264/.05);--foreground-a30:oklch(90% .006 264/.3);--secondary-a80:oklch(22.5% .004 264/.8);--muted-a30:oklch(18.9% .005 264/.3);--muted-a80:oklch(18.9% .005 264/.8);--muted-foreground-a70:oklch(58.14% .0056 264/.7);--success-a10:oklch(63.7% .175 147/.1);--success-a15:oklch(63.7% .175 147/.15);--success-a30:oklch(63.7% .175 147/.3);--success-a40:oklch(63.7% .175 147/.4);--success-a80:oklch(63.7% .175 147/.8);--warning-a10:oklch(80% .12 80/.1);--warning-a15:oklch(80% .12 80/.15);--warning-a30:oklch(80% .12 80/.3);--warning-a40:oklch(80% .12 80/.4);--info-a10:oklch(70% .1 250/.1);--info-a15:oklch(70% .1 250/.15);--info-a30:oklch(70% .1 250/.3);--info-a40:oklch(70% .1 250/.4);--info-a80:oklch(70% .1 250/.8);--border-a60:oklch(26.27% .0051 264/.6);--border-a80:oklch(26.27% .0051 264/.8);--input-a30:oklch(26.27% .0051 264/.3);--label-surface-a50:oklch(19.5% .004 264/.5);--overlay-base-a50:oklch(0% 0 0/.5);--overlay-base-a60:oklch(0% 0 0/.6);--background-a60:oklch(15.9% .005 264/.6);--ring-a50:oklch(56.7% .158 275/.5)}:where(html,.sidebar-nav,#maincontent,.cmdk-list,.cbi-dropdown>ul.dropdown,#modal_overlay,#modal_overlay>.modal>ul,#modal_overlay>.modal pre,.cbi-tabmenu,.tabs,textarea){scrollbar-color:var(--foreground-a30) transparent;scrollbar-width:thin}:where(html,.sidebar-nav,#maincontent,.cmdk-list,.cbi-dropdown>ul.dropdown,#modal_overlay,#modal_overlay>.modal>ul,#modal_overlay>.modal pre,.cbi-tabmenu,.tabs,textarea)::-webkit-scrollbar{width:8px;height:8px}:where(html,.sidebar-nav,#maincontent,.cmdk-list,.cbi-dropdown>ul.dropdown,#modal_overlay,#modal_overlay>.modal>ul,#modal_overlay>.modal pre,.cbi-tabmenu,.tabs,textarea)::-webkit-scrollbar-track{background-color:#0000}:where(html,.sidebar-nav,#maincontent,.cmdk-list,.cbi-dropdown>ul.dropdown,#modal_overlay,#modal_overlay>.modal>ul,#modal_overlay>.modal pre,.cbi-tabmenu,.tabs,textarea)::-webkit-scrollbar-corner{background-color:#0000}:where(html,.sidebar-nav,#maincontent,.cmdk-list,.cbi-dropdown>ul.dropdown,#modal_overlay,#modal_overlay>.modal>ul,#modal_overlay>.modal pre,.cbi-tabmenu,.tabs,textarea)::-webkit-scrollbar-thumb{background-color:var(--foreground-a30);border-radius:9999px}html{background-color:var(--background);font-family:var(--font-sans);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));color:var(--foreground)}html body{flex-wrap:wrap;height:100dvh;display:flex}html body.modal-overlay-active{overflow:hidden}h1,h2,h3,h4,h5,h6{font-family:var(--font-sans);--tw-leading:var(--leading-tight);line-height:var(--leading-tight);--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold);--tw-tracking:var(--tracking-tight);letter-spacing:var(--tracking-tight);color:var(--foreground)}h1{margin-bottom:calc(var(--spacing) * 4);font-size:var(--text-2xl);line-height:var(--tw-leading,var(--text-2xl--line-height))}h2{margin-bottom:calc(var(--spacing) * 3);font-size:var(--text-xl);line-height:var(--tw-leading,var(--text-xl--line-height))}h3{margin-bottom:calc(var(--spacing) * 2);font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height))}h4{margin-bottom:calc(var(--spacing) * 2);font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}h5{margin-bottom:calc(var(--spacing) * 1);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}h6{margin-bottom:calc(var(--spacing) * 1);font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}hr{margin-block:calc(var(--spacing) * 4);border-top-style:var(--tw-border-style);border-top-width:1px;border-color:var(--border)}strong{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}abbr{cursor:help}p{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));--tw-leading:var(--leading-relaxed);line-height:var(--leading-relaxed);color:var(--foreground)}pre{border-radius:var(--radius-base);border-style:var(--tw-border-style);border-width:1px;border-color:var(--border);background-color:var(--muted);padding-inline:calc(var(--spacing) * 3);padding-block:calc(var(--spacing) * 2);font-family:var(--font-mono);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));--tw-leading:var(--leading-relaxed);line-height:var(--leading-relaxed);overflow-wrap:break-word;white-space:pre-wrap;color:var(--muted-foreground);display:block}code{border-radius:calc(var(--radius-base) * .5);background-color:var(--muted);padding-inline:calc(var(--spacing) * 1.5);padding-block:calc(var(--spacing) * .5);font-family:var(--font-mono);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));color:var(--muted-foreground)}a{color:var(--primary);text-decoration-line:none}@media (hover:hover){a:hover{text-decoration-line:underline}}var{font-family:var(--font-mono);color:var(--primary)}small{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height));--tw-font-weight:var(--font-weight-normal);font-weight:var(--font-weight-normal);color:var(--muted-foreground)}em{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium);color:var(--muted-foreground);font-style:italic}#sidebar{background-color:var(--sidebar-bg);flex-direction:column;flex-shrink:0;width:220px;height:100%;display:flex;overflow:hidden}@media not all and (width>=48rem){#sidebar{top:calc(var(--spacing) * 0);left:calc(var(--spacing) * 0);z-index:40;--tw-translate-x:-100%;width:240px;translate:var(--tw-translate-x) var(--tw-translate-y);--tw-shadow:0 20px 25px -5px var(--tw-shadow-color,#0000001a), 0 8px 10px -6px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);height:100dvh;transition:translate .2s;position:fixed}#sidebar[data-drawer-open=true]{--tw-translate-x:calc(var(--spacing) * 0);translate:var(--tw-translate-x) var(--tw-translate-y)}}#sidebar .icon-expand{display:none}@media (width>=48rem){html[data-sidebar-collapsed=true] #sidebar{width:calc(var(--spacing) * 12)}html[data-sidebar-collapsed=true] #sidebar .sidebar-brand-text,html[data-sidebar-collapsed=true] #sidebar .sidebar-label,html[data-sidebar-collapsed=true] #sidebar .sidebar-chevron,html[data-sidebar-collapsed=true] #sidebar .icon-collapse{display:none}html[data-sidebar-collapsed=true] #sidebar .icon-expand{display:block}html[data-sidebar-collapsed=true] #sidebar .sidebar-accordion-sub{display:none!important}}.sidebar-header{height:calc(var(--spacing) * 14);padding-inline:calc(var(--spacing) * 3);flex-shrink:0;justify-content:space-between;align-items:center;display:flex}.sidebar-brand{min-width:calc(var(--spacing) * 0);align-items:center;gap:calc(var(--spacing) * 2);text-overflow:ellipsis;white-space:nowrap;color:var(--sidebar-foreground);flex:1;text-decoration-line:none;display:flex;overflow:hidden}.sidebar-logo{flex-shrink:0}.sidebar-brand-text{text-overflow:ellipsis;white-space:nowrap;font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold);overflow:hidden}.sidebar-toggle{height:calc(var(--spacing) * 7);width:calc(var(--spacing) * 7);cursor:pointer;border-radius:calc(var(--radius-base) * .75);border-style:var(--tw-border-style);padding:calc(var(--spacing) * 0);color:var(--sidebar-muted);background-color:#0000;border-width:0;flex-shrink:0;justify-content:center;align-items:center;transition:color .15s,background-color .15s,border-color .15s;display:flex}.sidebar-toggle:hover{background-color:var(--sidebar-accent);color:var(--sidebar-accent-fg)}.sidebar-toggle svg,.sidebar-toggle img{height:calc(var(--spacing) * 4);width:calc(var(--spacing) * 4)}.sidebar-nav{padding-inline:calc(var(--spacing) * 2);padding-block:calc(var(--spacing) * 2);flex:1;overflow:hidden auto}.sidebar-nav-item,.sidebar-accordion-item{margin-bottom:calc(var(--spacing) * .5)}:is(.sidebar-nav-item,.sidebar-accordion-item).active>.sidebar-nav-parent{color:var(--sidebar-active-fg)}.sidebar-nav-parent{cursor:pointer;appearance:none;justify-content:flex-start;align-items:center;gap:calc(var(--spacing) * 2.5);border-radius:calc(var(--radius-base) * .75);border-style:var(--tw-border-style);width:100%;padding-inline:calc(var(--spacing) * 2);padding-block:calc(var(--spacing) * 1.5);text-align:left;font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium);color:var(--sidebar-muted);background-color:#0000;border-width:0;transition:color .15s,background-color .15s,border-color .15s;display:flex}.sidebar-nav-parent:hover{background-color:var(--sidebar-accent);color:var(--sidebar-accent-fg)}.sidebar-nav-parent .sidebar-icon{flex-shrink:0;justify-content:center;align-items:center;display:flex}.sidebar-nav-parent .sidebar-icon svg,.sidebar-nav-parent .sidebar-icon img{height:calc(var(--spacing) * 4);width:calc(var(--spacing) * 4)}.sidebar-nav-parent .sidebar-label{text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.sidebar-nav-parent .sidebar-chevron{flex-shrink:0;margin-left:auto;transition:rotate .2s}.sidebar-nav-parent .sidebar-chevron svg,.sidebar-nav-parent .sidebar-chevron img{height:calc(var(--spacing) * 3.5);width:calc(var(--spacing) * 3.5)}.sidebar-accordion-item[data-open=true]>.sidebar-nav-parent{background-color:var(--sidebar-active-bg);color:var(--sidebar-active-fg)}.sidebar-accordion-item[data-open=true] .sidebar-chevron{rotate:180deg}.sidebar-accordion-sub{visibility:hidden;opacity:0;transition:grid-template-rows .2s var(--ease-out),opacity .2s var(--ease-out),visibility .2s var(--ease-out);grid-template-rows:0fr;display:grid;overflow:hidden}.sidebar-accordion-sub>*{min-height:calc(var(--spacing) * 0);align-self:flex-start}.sidebar-accordion-item[data-open=true]>.sidebar-accordion-sub{visibility:visible;opacity:1;grid-template-rows:1fr}.sidebar-sub-list{margin-left:calc(var(--spacing) * 4);border-left-style:var(--tw-border-style);border-left-width:1px;border-color:var(--sidebar-border);padding-left:calc(var(--spacing) * 2);list-style-type:none}.sidebar-sub-item{margin-bottom:calc(var(--spacing) * .5)}.sidebar-sub-item.active .sidebar-sub-link{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium);color:var(--sidebar-active-fg)}.sidebar-sub-link{border-radius:calc(var(--radius-base) * .75);padding-inline:calc(var(--spacing) * 2);padding-block:calc(var(--spacing) * 1.5);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));color:var(--sidebar-muted);text-decoration-line:none;transition:color .15s,background-color .15s,border-color .15s;display:block}.sidebar-sub-link:hover{background-color:var(--sidebar-accent);color:var(--sidebar-accent-fg)}.sidebar-collapsed-popover{z-index:50;min-width:calc(var(--spacing) * 44);border-radius:var(--radius-base);border-style:var(--tw-border-style);border-width:1px;border-color:var(--border);background-color:var(--panel-bg);padding-block:calc(var(--spacing) * 1);--tw-shadow:0 10px 15px -3px var(--tw-shadow-color,#0000001a), 0 4px 6px -4px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);position:fixed;overflow:hidden}.sidebar-collapsed-popover-title{padding-inline:calc(var(--spacing) * 3);padding-top:calc(var(--spacing) * 1.5);padding-bottom:calc(var(--spacing) * 1);font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height));--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold);color:var(--foreground)}.sidebar-collapsed-popover-list{margin:calc(var(--spacing) * 0);padding:calc(var(--spacing) * 0);list-style-type:none}.sidebar-collapsed-popover-link{margin-inline:calc(var(--spacing) * 1);border-radius:calc(var(--radius-base) * .5);padding-inline:calc(var(--spacing) * 2);padding-block:calc(var(--spacing) * 1.5);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));color:var(--sidebar-muted);text-decoration-line:none;transition:color .15s,background-color .15s,border-color .15s;display:block}.sidebar-collapsed-popover-link:hover{background-color:var(--sidebar-accent);color:var(--sidebar-accent-fg)}.sidebar-collapsed-popover-link.active{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium);color:var(--sidebar-active-fg)}.sidebar-footer{border-top-style:var(--tw-border-style);border-top-width:1px;border-color:var(--sidebar-border);padding:calc(var(--spacing) * 2);padding-bottom:max(.5rem, env(safe-area-inset-bottom));flex-shrink:0}.sidebar-logout{align-items:center;gap:calc(var(--spacing) * 2.5);border-radius:calc(var(--radius-base) * .75);width:100%;padding-inline:calc(var(--spacing) * 2);padding-block:calc(var(--spacing) * 1.5);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));color:var(--sidebar-muted);text-decoration-line:none;transition:color .15s,background-color .15s,border-color .15s;display:flex}.sidebar-logout:hover{background-color:var(--sidebar-accent);color:var(--sidebar-accent-fg)}.sidebar-logout.active{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium);color:var(--sidebar-active-fg)}.sidebar-logout .sidebar-icon{flex-shrink:0;justify-content:center;align-items:center;display:flex}.sidebar-logout .sidebar-icon svg,.sidebar-logout .sidebar-icon img{height:calc(var(--spacing) * 4);width:calc(var(--spacing) * 4)}.sidebar-logout .sidebar-label{text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}#main-wrapper{background-color:var(--background);height:100%;padding-block:calc(var(--spacing) * 2);padding-right:calc(var(--spacing) * 2);padding-left:calc(var(--spacing) * 0);flex-direction:column;flex:1;display:flex;overflow:hidden}@media not all and (width>=48rem){#main-wrapper{padding:calc(var(--spacing) * 0);flex-basis:100%}}.content-card{border-radius:calc(var(--radius-base) * 1.5);border-style:var(--tw-border-style);border-width:1px;border-color:var(--panel-border);background-color:var(--panel-bg);--tw-shadow:var(--shadow-sm);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);flex-direction:column;flex:1;display:flex;overflow:hidden}@media not all and (width>=48rem){.content-card{--tw-border-style:none;--tw-shadow:0 0 #0000;box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);border-style:none;border-radius:0}}@media (width>=48rem){html[data-sidebar-anim] #sidebar{transition:width .2s var(--ease-out)}}.card-header{height:calc(var(--spacing) * 12);border-bottom-style:var(--tw-border-style);border-bottom-width:1px;border-color:var(--panel-border);background-color:var(--panel-bg);padding-inline:calc(var(--spacing) * 4);flex-shrink:0;justify-content:space-between;align-items:center;display:flex}.card-header-left,.card-header-right{align-items:center;gap:calc(var(--spacing) * 2);display:flex}.topbar-hamburger{height:calc(var(--spacing) * 8);width:calc(var(--spacing) * 8);cursor:pointer;border-radius:calc(var(--radius-base) * .75);border-style:var(--tw-border-style);padding:calc(var(--spacing) * 0);color:var(--muted-foreground);background-color:#0000;border-width:0;justify-content:center;align-items:center;transition:color .15s,background-color .15s,border-color .15s;display:none}@media not all and (width>=48rem){.topbar-hamburger{display:flex}}.topbar-hamburger:hover{background-color:var(--muted)}.topbar-hamburger svg,.topbar-hamburger img{height:calc(var(--spacing) * 5);width:calc(var(--spacing) * 5)}.topbar-breadcrumb{align-items:center;gap:calc(var(--spacing) * 1);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));display:flex}.topbar-breadcrumb .breadcrumb-item{color:var(--muted-foreground)}.topbar-breadcrumb .breadcrumb-item.active{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium);color:var(--foreground)}.topbar-breadcrumb .breadcrumb-sep{color:var(--muted-foreground)}.topbar-breadcrumb .breadcrumb-sep svg,.topbar-breadcrumb .breadcrumb-sep img{height:calc(var(--spacing) * 3.5);width:calc(var(--spacing) * 3.5)}button.topbar-icon-btn{height:calc(var(--spacing) * 8);width:calc(var(--spacing) * 8);cursor:pointer;border-radius:calc(var(--radius-base) * .75);border-style:var(--tw-border-style);padding:calc(var(--spacing) * 0);color:var(--muted-foreground);background-color:#0000;border-width:0;flex-shrink:0;justify-content:center;align-items:center;transition:color .15s,background-color .15s,border-color .15s;display:inline-flex}button.topbar-icon-btn:hover{background-color:var(--muted);color:var(--foreground)}button.topbar-icon-btn img{height:calc(var(--spacing) * 4);width:calc(var(--spacing) * 4);flex-shrink:0}.topbar-indicators{align-items:center;display:flex}.topbar-indicators span[data-indicator]>img{display:none}.topbar-indicators span[data-indicator]{height:calc(var(--spacing) * 8);width:calc(var(--spacing) * 8);cursor:pointer;border-radius:calc(var(--radius-base) * .75);color:var(--muted-foreground);flex-shrink:0;justify-content:center;align-items:center;font-size:0;transition:color .15s,background-color .15s,border-color .15s,width .15s ease-out,opacity .15s ease-out,margin-left .15s ease-out;display:inline-flex;position:relative}@starting-style{.topbar-indicators span[data-indicator]{width:calc(var(--spacing) * 0)}}@starting-style{.topbar-indicators span[data-indicator]{opacity:0}}.topbar-indicators span[data-indicator]:before{content:var(--tw-content);content:var(--tw-content);content:var(--tw-content);width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4);content:var(--tw-content);content:var(--tw-content);content:var(--tw-content);content:var(--tw-content);content:var(--tw-content);background-color:currentColor;flex-shrink:0;display:block;position:relative;-webkit-mask-position:50%;mask-position:50%;-webkit-mask-size:cover;mask-size:cover;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.topbar-indicators span[data-indicator]+span[data-indicator]{margin-left:calc(var(--spacing) * 2)}@starting-style{.topbar-indicators span[data-indicator]+span[data-indicator]{margin-left:calc(var(--spacing) * 0)}}.topbar-indicators span[data-indicator]:hover{background-color:var(--muted);color:var(--foreground)}.topbar-indicators span[data-indicator][data-indicator=poll-status][data-style=active]:before{content:var(--tw-content);-webkit-mask-image:url("data:image/svg+xml,%3c!--%20@license%20lucide-static%20v1.16.0%20-%20ISC%20--%3e%3csvg%20class='lucide%20lucide-refresh-cw'%20xmlns='http://www.w3.org/2000/svg'%20width='24'%20height='24'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='currentColor'%20stroke-width='2'%20stroke-linecap='round'%20stroke-linejoin='round'%3e%3cpath%20d='M3%2012a9%209%200%200%201%209-9%209.75%209.75%200%200%201%206.74%202.74L21%208'/%3e%3cpath%20d='M21%203v5h-5'/%3e%3cpath%20d='M21%2012a9%209%200%200%201-9%209%209.75%209.75%200%200%201-6.74-2.74L3%2016'/%3e%3cpath%20d='M8%2016H3v5'/%3e%3c/svg%3e");mask-image:url("data:image/svg+xml,%3c!--%20@license%20lucide-static%20v1.16.0%20-%20ISC%20--%3e%3csvg%20class='lucide%20lucide-refresh-cw'%20xmlns='http://www.w3.org/2000/svg'%20width='24'%20height='24'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='currentColor'%20stroke-width='2'%20stroke-linecap='round'%20stroke-linejoin='round'%3e%3cpath%20d='M3%2012a9%209%200%200%201%209-9%209.75%209.75%200%200%201%206.74%202.74L21%208'/%3e%3cpath%20d='M21%203v5h-5'/%3e%3cpath%20d='M21%2012a9%209%200%200%201-9%209%209.75%209.75%200%200%201-6.74-2.74L3%2016'/%3e%3cpath%20d='M8%2016H3v5'/%3e%3c/svg%3e")}.topbar-indicators span[data-indicator][data-indicator=poll-status][data-style=inactive]:before{content:var(--tw-content);-webkit-mask-image:url("data:image/svg+xml,%3c!--%20@license%20lucide-static%20v1.16.0%20-%20ISC%20--%3e%3csvg%20class='lucide%20lucide-refresh-cw-off'%20xmlns='http://www.w3.org/2000/svg'%20width='24'%20height='24'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='currentColor'%20stroke-width='2'%20stroke-linecap='round'%20stroke-linejoin='round'%3e%3cpath%20d='M21%208L18.74%205.74A9.75%209.75%200%200%200%2012%203C11%203%2010.03%203.16%209.13%203.47'/%3e%3cpath%20d='M8%2016H3v5'/%3e%3cpath%20d='M3%2012C3%209.51%204%207.26%205.64%205.64'/%3e%3cpath%20d='m3%2016%202.26%202.26A9.75%209.75%200%200%200%2012%2021c2.49%200%204.74-1%206.36-2.64'/%3e%3cpath%20d='M21%2012c0%201-.16%201.97-.47%202.87'/%3e%3cpath%20d='M21%203v5h-5'/%3e%3cpath%20d='M22%2022%202%202'/%3e%3c/svg%3e");mask-image:url("data:image/svg+xml,%3c!--%20@license%20lucide-static%20v1.16.0%20-%20ISC%20--%3e%3csvg%20class='lucide%20lucide-refresh-cw-off'%20xmlns='http://www.w3.org/2000/svg'%20width='24'%20height='24'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='currentColor'%20stroke-width='2'%20stroke-linecap='round'%20stroke-linejoin='round'%3e%3cpath%20d='M21%208L18.74%205.74A9.75%209.75%200%200%200%2012%203C11%203%2010.03%203.16%209.13%203.47'/%3e%3cpath%20d='M8%2016H3v5'/%3e%3cpath%20d='M3%2012C3%209.51%204%207.26%205.64%205.64'/%3e%3cpath%20d='m3%2016%202.26%202.26A9.75%209.75%200%200%200%2012%2021c2.49%200%204.74-1%206.36-2.64'/%3e%3cpath%20d='M21%2012c0%201-.16%201.97-.47%202.87'/%3e%3cpath%20d='M21%203v5h-5'/%3e%3cpath%20d='M22%2022%202%202'/%3e%3c/svg%3e")}.topbar-indicators span[data-indicator][data-indicator=media_error]:before{content:var(--tw-content);-webkit-mask-image:url("data:image/svg+xml,%3c!--%20@license%20lucide-static%20v1.16.0%20-%20ISC%20--%3e%3csvg%20class='lucide%20lucide-alert-circle'%20xmlns='http://www.w3.org/2000/svg'%20width='24'%20height='24'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='currentColor'%20stroke-width='2'%20stroke-linecap='round'%20stroke-linejoin='round'%3e%3ccircle%20cx='12'%20cy='12'%20r='10'/%3e%3cline%20x1='12'%20x2='12'%20y1='8'%20y2='12'/%3e%3cline%20x1='12'%20x2='12.01'%20y1='16'%20y2='16'/%3e%3c/svg%3e");mask-image:url("data:image/svg+xml,%3c!--%20@license%20lucide-static%20v1.16.0%20-%20ISC%20--%3e%3csvg%20class='lucide%20lucide-alert-circle'%20xmlns='http://www.w3.org/2000/svg'%20width='24'%20height='24'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='currentColor'%20stroke-width='2'%20stroke-linecap='round'%20stroke-linejoin='round'%3e%3ccircle%20cx='12'%20cy='12'%20r='10'/%3e%3cline%20x1='12'%20x2='12'%20y1='8'%20y2='12'/%3e%3cline%20x1='12'%20x2='12.01'%20y1='16'%20y2='16'/%3e%3c/svg%3e")}.topbar-indicators span[data-indicator][data-indicator=uci-changes]:before{content:var(--tw-content);-webkit-mask-image:url("data:image/svg+xml,%3c!--%20@license%20lucide-static%20v1.16.0%20-%20ISC%20--%3e%3csvg%20class='lucide%20lucide-settings'%20xmlns='http://www.w3.org/2000/svg'%20width='24'%20height='24'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='currentColor'%20stroke-width='2'%20stroke-linecap='round'%20stroke-linejoin='round'%20%3e%3cpath%20d='M9.671%204.136a2.34%202.34%200%200%201%204.659%200%202.34%202.34%200%200%200%203.319%201.915%202.34%202.34%200%200%201%202.33%204.033%202.34%202.34%200%200%200%200%203.831%202.34%202.34%200%200%201-2.33%204.033%202.34%202.34%200%200%200-3.319%201.915%202.34%202.34%200%200%201-4.659%200%202.34%202.34%200%200%200-3.32-1.915%202.34%202.34%200%200%201-2.33-4.033%202.34%202.34%200%200%200%200-3.831A2.34%202.34%200%200%201%206.35%206.051a2.34%202.34%200%200%200%203.319-1.915'%20/%3e%3ccircle%20cx='12'%20cy='12'%20r='3'%20/%3e%3c/svg%3e");mask-image:url("data:image/svg+xml,%3c!--%20@license%20lucide-static%20v1.16.0%20-%20ISC%20--%3e%3csvg%20class='lucide%20lucide-settings'%20xmlns='http://www.w3.org/2000/svg'%20width='24'%20height='24'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='currentColor'%20stroke-width='2'%20stroke-linecap='round'%20stroke-linejoin='round'%20%3e%3cpath%20d='M9.671%204.136a2.34%202.34%200%200%201%204.659%200%202.34%202.34%200%200%200%203.319%201.915%202.34%202.34%200%200%201%202.33%204.033%202.34%202.34%200%200%200%200%203.831%202.34%202.34%200%200%201-2.33%204.033%202.34%202.34%200%200%200-3.319%201.915%202.34%202.34%200%200%201-4.659%200%202.34%202.34%200%200%200-3.32-1.915%202.34%202.34%200%200%201-2.33-4.033%202.34%202.34%200%200%200%200-3.831A2.34%202.34%200%200%201%206.35%206.051a2.34%202.34%200%200%200%203.319-1.915'%20/%3e%3ccircle%20cx='12'%20cy='12'%20r='3'%20/%3e%3c/svg%3e")}.topbar-indicators span[data-indicator][data-indicator=uci-changes][data-count]:not([data-count="0"]):after{content:var(--tw-content);content:var(--tw-content);top:calc(var(--spacing) * -.5);content:var(--tw-content);right:calc(var(--spacing) * -.5);content:var(--tw-content);z-index:10;content:var(--tw-content);content:var(--tw-content);min-height:calc(var(--spacing) * 3);content:var(--tw-content);min-width:calc(var(--spacing) * 3);content:var(--tw-content);content:var(--tw-content);content:var(--tw-content);content:var(--tw-content);background-color:var(--primary);content:var(--tw-content);padding-inline:calc(var(--spacing) * .5);content:var(--tw-content);content:var(--tw-content);--tw-leading:1;content:var(--tw-content);--tw-font-weight:var(--font-weight-bold);font-size:8px;line-height:1;font-weight:var(--font-weight-bold);content:var(--tw-content);color:var(--primary-foreground);--tw-content:attr(data-count);content:var(--tw-content);border-radius:3.40282e38px;justify-content:center;align-items:center;display:flex;position:absolute}#maincontent{scrollbar-gutter:stable;padding:calc(var(--spacing) * 6);flex:1;overflow-y:auto}@media not all and (width>=48rem){#maincontent{padding:calc(var(--spacing) * 4)}}#maincontent h1{margin-bottom:calc(var(--spacing) * 4);border-style:var(--tw-border-style);padding-left:calc(var(--spacing) * 0);font-size:var(--text-2xl);line-height:var(--tw-leading,var(--text-2xl--line-height));--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold);--tw-tracking:var(--tracking-tight);letter-spacing:var(--tracking-tight);border-width:0}#maincontent h2{margin-bottom:calc(var(--spacing) * 3);border-style:var(--tw-border-style);padding-left:calc(var(--spacing) * 0);font-size:var(--text-xl);line-height:var(--tw-leading,var(--text-xl--line-height));--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold);border-width:0}#maincontent h3{margin-bottom:calc(var(--spacing) * 2);font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height));--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}#maincontent .cbi-map-descr,#maincontent .cbi-section-descr{margin-bottom:calc(var(--spacing) * 4);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));--tw-leading:var(--leading-relaxed);line-height:var(--leading-relaxed);color:var(--muted-foreground)}#maincontent .cbi-page-actions{margin-top:calc(var(--spacing) * 4);justify-content:flex-end;align-items:center;gap:calc(var(--spacing) * 2);border-top-style:var(--tw-border-style);border-top-width:1px;border-color:var(--border);padding-top:calc(var(--spacing) * 4);flex-wrap:wrap;display:flex}#maincontent div[style]>svg:where([data-darkmode=true],[data-darkmode=true] *){background-color:var(--surface)!important}#maincontent div[style]>svg line[style]:where([data-darkmode=true],[data-darkmode=true] *){stroke:var(--text)!important}#maincontent .zone-forwards{align-items:stretch;gap:calc(var(--spacing) * 2);--tw-leading:var(--leading-relaxed);line-height:var(--leading-relaxed);flex-wrap:nowrap;display:flex}#maincontent .zone-forwards>span{flex-shrink:0;flex-basis:calc(var(--spacing) * 8);color:var(--muted-foreground);justify-content:center;align-self:center;align-items:center;display:flex}#maincontent .zone-forwards .zone-src,#maincontent .zone-forwards .zone-dest{gap:calc(var(--spacing) * 1.5);flex-direction:column;flex:1;display:flex}#maincontent .controls{align-items:center;gap:calc(var(--spacing) * 3);flex-wrap:wrap;display:flex}#maincontent .controls label input[type=radio],#maincontent .controls label input[type=checkbox]{margin-right:calc(var(--spacing) * 1);vertical-align:middle}#maincontent .cbi-title-section{margin-bottom:calc(var(--spacing) * 4);--tw-leading:var(--leading-relaxed);line-height:var(--leading-relaxed)}#maincontent .control-group{margin-top:calc(var(--spacing) * 1)}#maincontent .control-group,#maincontent .cbi-page-actions>div,#maincontent .cbi-section-actions>div{align-items:center;gap:calc(var(--spacing) * 2);flex-flow:row;display:flex}#sidebar-overlay{pointer-events:none;inset:calc(var(--spacing) * 0);z-index:30;background-color:var(--overlay-base-a50);opacity:0;transition:opacity .2s;position:absolute}@media (width>=48rem){#sidebar-overlay{display:none}}#sidebar-overlay.active{pointer-events:auto;opacity:1}button,input[type=button],input[type=submit],input[type=reset],.btn,.cbi-button{cursor:pointer;justify-content:center;align-items:center;gap:calc(var(--spacing) * 1.5);border-radius:var(--radius-base);border-style:var(--tw-border-style);padding-inline:calc(var(--spacing) * 3);padding-block:calc(var(--spacing) * 1.5);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium);border-width:1px;transition:color .2s,background-color .2s,border-color .2s;display:inline-flex}:is(button,input[type=button],input[type=submit],input[type=reset],.btn,.cbi-button)[disabled]{cursor:not-allowed;opacity:.4}.td :is(button,input[type=button],input[type=submit],input[type=reset],.btn,.cbi-button){white-space:nowrap}.btn,.cbi-button,.cbi-button-default,.cbi-button-download,.cbi-button-find,.cbi-button-link,.cbi-button-up,.cbi-button-down{border-color:var(--secondary);background-color:var(--secondary);color:var(--secondary-foreground)}@media (hover:hover){:is(.btn,.cbi-button,.cbi-button-default,.cbi-button-download,.cbi-button-find,.cbi-button-link,.cbi-button-up,.cbi-button-down):hover{background-color:var(--secondary-a80)}}.drag-handle{border-color:var(--muted);background-color:var(--muted);color:var(--muted-foreground)}@media (hover:hover){.drag-handle:hover{background-color:var(--muted-a80)}}.btn.primary,.cbi-button-action,.cbi-button-apply,.cbi-button-reload,.cbi-button-add,.cbi-button-edit{border-color:var(--primary);background-color:var(--primary);color:var(--primary-foreground)}@media (hover:hover){:is(.btn.primary,.cbi-button-action,.cbi-button-apply,.cbi-button-reload,.cbi-button-add,.cbi-button-edit):hover{background-color:var(--primary-a90)}}.cbi-button-positive,.cbi-button-fieldadd,.cbi-button-save{border-color:var(--primary-a25);background-color:var(--primary-a15);color:var(--primary)}@media (hover:hover){:is(.cbi-button-positive,.cbi-button-fieldadd,.cbi-button-save):hover{background-color:var(--primary-a25)}}.cbi-button-negative,.cbi-section-remove .cbi-button,.cbi-button-reset,.cbi-button-remove{border-color:var(--destructive);background-color:var(--destructive);color:var(--destructive-fg)}@media (hover:hover){:is(.cbi-button-negative,.cbi-section-remove .cbi-button,.cbi-button-reset,.cbi-button-remove):hover{background-color:var(--destructive-a90)}}input:disabled{cursor:not-allowed;opacity:.4}input[type=text],input[type=password],input[type=number],input[type=email],.cbi-input-text,.cbi-input{width:calc(var(--spacing) * 52.5);border-radius:var(--radius-base);border-style:var(--tw-border-style);border-width:1px;border-color:var(--input);background-color:var(--background);max-width:100%;padding-inline:calc(var(--spacing) * 3);padding-block:calc(var(--spacing) * 1.5);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));color:var(--foreground);--tw-shadow:0 0 #0000;box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);transition:color .2s,background-color .2s,border-color .2s;position:relative}:is(input[type=text],input[type=password],input[type=number],input[type=email],.cbi-input-text,.cbi-input)::placeholder{color:var(--muted-foreground-a70)}:is(input[type=text],input[type=password],input[type=number],input[type=email],.cbi-input-text,.cbi-input):focus{border-color:var(--primary);--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);--tw-ring-color:var(--ring);--tw-outline-style:none;outline-style:none}.table.cbi-section-table :is(input[type=text],input[type=password],input[type=number],input[type=email],.cbi-input-text,.cbi-input){width:100%}.cbi-input-text{min-width:calc(var(--spacing) * 20)}#localtime{min-width:calc(var(--spacing) * 64)}textarea{min-height:calc(var(--spacing) * 24);resize:vertical;border-radius:var(--radius-base);border-style:var(--tw-border-style);border-width:1px;border-color:var(--input);background-color:var(--background);width:100%;padding-inline:calc(var(--spacing) * 3);padding-block:calc(var(--spacing) * 2);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));color:var(--foreground);transition:color .2s,background-color .2s,border-color .2s}textarea::placeholder{color:var(--muted-foreground-a70)}textarea:focus{border-color:var(--primary);--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);--tw-ring-color:var(--ring);--tw-outline-style:none;outline-style:none}textarea[disabled]{cursor:not-allowed;opacity:.4}input[type=radio],input[type=checkbox]{margin-right:calc(var(--spacing) * 3);height:calc(var(--spacing) * 4);width:calc(var(--spacing) * 4);cursor:pointer;appearance:none;vertical-align:middle;display:inline-block;position:relative}:is(input[type=radio],input[type=checkbox]):disabled{cursor:not-allowed}:is(input[type=radio],input[type=checkbox]):before{content:var(--tw-content);content:var(--tw-content);inset:calc(var(--spacing) * 0);content:var(--tw-content);border-radius:calc(var(--radius-base) * .5);content:var(--tw-content);border-style:var(--tw-border-style);content:var(--tw-content);border-width:1px;border-color:var(--input);content:var(--tw-content);background-color:var(--background);content:var(--tw-content);transition:background-color .2s,border-color .2s;position:absolute}:is(input[type=radio],input[type=checkbox]):after{content:var(--tw-content);content:var(--tw-content);inset:calc(var(--spacing) * 0);content:var(--tw-content);background-color:var(--primary-foreground);content:var(--tw-content);content:var(--tw-content);content:var(--tw-content);content:var(--tw-content);opacity:0;content:var(--tw-content);transition:opacity .2s;position:absolute;-webkit-mask-position:50%;mask-position:50%;-webkit-mask-size:cover;mask-size:cover;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}:is(input[type=radio],input[type=checkbox]):checked:before{content:var(--tw-content);border-color:var(--primary);content:var(--tw-content);background-color:var(--primary)}:is(input[type=radio],input[type=checkbox]):checked:after{content:var(--tw-content);opacity:1}:is(input[type=radio],input[type=checkbox]):focus:before{content:var(--tw-content);--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);content:var(--tw-content);--tw-ring-color:var(--ring);content:var(--tw-content);--tw-outline-style:none;outline-style:none}input[type=radio]:before{content:var(--tw-content);border-radius:3.40282e38px}input[type=radio]:after{content:var(--tw-content);-webkit-mask-image:url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2024%2024'%20fill='currentColor'%3e%3ccircle%20cx='12'%20cy='12'%20r='6'/%3e%3c/svg%3e");mask-image:url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2024%2024'%20fill='currentColor'%3e%3ccircle%20cx='12'%20cy='12'%20r='6'/%3e%3c/svg%3e")}input[type=checkbox]:after{content:var(--tw-content);-webkit-mask-image:url("data:image/svg+xml,%3c!--%20@license%20lucide-static%20v1.16.0%20-%20ISC%20--%3e%3csvg%20class='lucide%20lucide-check'%20xmlns='http://www.w3.org/2000/svg'%20width='24'%20height='24'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='currentColor'%20stroke-width='2'%20stroke-linecap='round'%20stroke-linejoin='round'%3e%3cpath%20d='M20%206%209%2017l-5-5'/%3e%3c/svg%3e");mask-image:url("data:image/svg+xml,%3c!--%20@license%20lucide-static%20v1.16.0%20-%20ISC%20--%3e%3csvg%20class='lucide%20lucide-check'%20xmlns='http://www.w3.org/2000/svg'%20width='24'%20height='24'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='currentColor'%20stroke-width='2'%20stroke-linecap='round'%20stroke-linejoin='round'%3e%3cpath%20d='M20%206%209%2017l-5-5'/%3e%3c/svg%3e")}.cbi-checkbox{vertical-align:middle;align-items:center;display:inline-flex;position:relative}select{max-width:100%;min-width:calc(var(--spacing) * 52.5);appearance:none;border-radius:var(--radius-base);border-style:var(--tw-border-style);border-width:1px;border-color:var(--input);background-color:var(--background);padding-inline:calc(var(--spacing) * 3);padding-block:calc(var(--spacing) * 1.5);padding-right:calc(var(--spacing) * 9);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));color:var(--foreground);transition:color .2s,background-color .2s,border-color .2s}select:focus{border-color:var(--primary);--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);--tw-ring-color:var(--ring);--tw-outline-style:none;outline-style:none}select:disabled{cursor:not-allowed;opacity:.4}@media (width>=48rem){select{max-width:calc(var(--spacing) * 100)}}select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%238888a0' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-position:right .6rem center;background-repeat:no-repeat;background-size:16px}[data-darkmode=true] select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%238c8ca8' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E")}.cbi-dropdown{min-width:fit-content;max-width:100%;height:fit-content;padding:calc(var(--spacing) * 0);white-space:nowrap;flex-shrink:0;align-items:center;transition:color .2s,background-color .2s,border-color .2s;display:inline-flex;position:relative}.cbi-dropdown[disabled]{pointer-events:none;opacity:.4}.cbi-dropdown:not(.btn):not(.cbi-button){max-width:100%;min-width:calc(var(--spacing) * 52.5);border-radius:var(--radius-base);border-style:var(--tw-border-style);border-width:1px;border-color:var(--input);background-color:var(--background)}@media (width>=48rem){.cbi-dropdown:not(.btn):not(.cbi-button){max-width:calc(var(--spacing) * 100)}}.cbi-dropdown:not(.btn):not(.cbi-button)>ul>li[placeholder]{display:none}.cbi-dropdown>ul{margin:calc(var(--spacing) * 0);align-items:center;gap:calc(var(--spacing) * .5);opacity:.99;flex-wrap:nowrap;flex:1;list-style-type:none;transition:opacity .12s ease-out;display:flex;overflow:hidden}.cbi-dropdown>ul>li{margin:calc(var(--spacing) * 0);align-items:center;gap:calc(var(--spacing) * 1);padding-inline:calc(var(--spacing) * 2);padding-block:calc(var(--spacing) * 1.5);list-style-type:none;display:none;overflow:hidden}.cbi-dropdown>ul>li[display]{display:flex!important}.cbi-dropdown>ul>li .hide-open{display:block}.cbi-dropdown>ul>li .hide-close{display:none}.cbi-dropdown>ul>li>form{pointer-events:none;display:none}.cbi-dropdown>ul>li>label{align-items:center;gap:calc(var(--spacing) * 2);display:flex}.cbi-dropdown>ul>li img{height:calc(var(--spacing) * 5);width:calc(var(--spacing) * 5);vertical-align:middle;flex:none}.cbi-dropdown>ul>li span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.cbi-dropdown>ul.dropdown{left:calc(var(--spacing) * 0);z-index:50;border-radius:var(--radius-base);border-style:var(--tw-border-style);border-width:1px;border-color:var(--border);background-color:var(--panel-bg);opacity:1;--tw-shadow:0 10px 15px -3px var(--tw-shadow-color,#0000001a), 0 4px 6px -4px var(--tw-shadow-color,#0000001a);width:fit-content;min-width:100%;box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);position:absolute;overflow-y:auto}.cbi-dropdown>ul.dropdown>li{min-height:calc(var(--spacing) * 9);cursor:pointer;width:100%;padding-inline:calc(var(--spacing) * 3);padding-block:calc(var(--spacing) * 1.5);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium);color:var(--muted-foreground)}@media (hover:hover){.cbi-dropdown>ul.dropdown>li:hover{background-color:var(--muted)}}.cbi-dropdown>ul.preview{display:none}.cbi-dropdown[empty]>ul{max-width:1px;max-height:1px}.cbi-dropdown[empty]>ul>li,.cbi-dropdown[optional][open]>ul.dropdown>li[placeholder]{display:block}.cbi-dropdown[open]{border-color:var(--primary);--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);--tw-ring-color:var(--ring)}.cbi-dropdown[open]>ul.dropdown{width:auto;max-width:none;display:block}.cbi-dropdown[open]>ul.dropdown>li{display:flex}.cbi-dropdown[open]>ul.dropdown>li[selected]{background-color:var(--primary-a15);color:var(--primary)}.cbi-dropdown[open]>ul.dropdown>li[unselectable]{opacity:.4}.cbi-dropdown[open]>ul.dropdown>li .hide-open{display:none}.cbi-dropdown[open]>ul.dropdown>li .hide-close{display:block}.cbi-dropdown[open]>ul.preview{display:flex}:is(.cbi-dropdown[multiple][more],.cbi-dropdown[multiple][empty])>.more{padding-inline:calc(var(--spacing) * 2.5);padding-block:calc(var(--spacing) * 1.5);flex:none;display:flex}.cbi-dropdown[multiple][empty]>.more{flex:1}.cbi-dropdown[multiple][open]>ul.dropdown>li>form{align-items:center;display:flex}.cbi-dropdown[multiple]>ul>li>label{display:flex}.cbi-dropdown>.open{cursor:pointer;border-left-style:var(--tw-border-style);border-left-width:1px;border-color:var(--input);padding-inline:calc(var(--spacing) * 2.5);padding-block:calc(var(--spacing) * .5);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));color:currentColor;flex:none;justify-content:center;align-items:center;display:flex}.cbi-dropdown>.more{display:none}.cbi-tooltip{z-index:50;width:max-content;max-width:var(--container-xs);--tw-scale-x:95%;--tw-scale-y:95%;--tw-scale-z:95%;scale:var(--tw-scale-x) var(--tw-scale-y);border-radius:var(--radius-base);border-style:var(--tw-border-style);border-width:1px;border-color:var(--border-a60);background-color:var(--panel-bg);padding-inline:calc(var(--spacing) * 3);padding-block:calc(var(--spacing) * 2);font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height));overflow-wrap:normal;word-break:normal;white-space:normal;color:var(--foreground);opacity:0;--tw-shadow:0 10px 15px -3px var(--tw-shadow-color,#0000001a), 0 4px 6px -4px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);transition:visibility .2s var(--ease-out),opacity .2s var(--ease-out),scale .2s var(--ease-out);position:absolute;inset-inline-start:-10000px}.cbi-tooltip.error{border-color:var(--destructive-a40);background-color:var(--destructive);color:var(--destructive-fg)}.cbi-tooltip.success{border-color:var(--success-a40);background-color:var(--success);color:var(--success-fg)}.cbi-tooltip.info{border-color:var(--info-a40);background-color:var(--info);color:var(--info-fg)}.cbi-tooltip.notice{border-color:var(--warning-a40);background-color:var(--warning);color:var(--warning-fg)}.cbi-tooltip-container,[data-tooltip]{cursor:help;white-space:nowrap;text-underline-offset:2px;text-decoration-line:underline;text-decoration-style:dotted;text-decoration-color:currentColor;display:inline-block;position:relative}:is(.cbi-tooltip-container,[data-tooltip]) .cbi-tooltip{visibility:hidden;--tw-scale-x:95%;--tw-scale-y:95%;--tw-scale-z:95%;scale:var(--tw-scale-x) var(--tw-scale-y);opacity:0;transition:visibility .2s var(--ease-out),opacity .2s var(--ease-out),scale .2s var(--ease-out)}:is(.cbi-tooltip-container,[data-tooltip]):hover .cbi-tooltip{visibility:visible;--tw-scale-x:100%;--tw-scale-y:100%;--tw-scale-z:100%;scale:var(--tw-scale-x) var(--tw-scale-y);opacity:1;inset-inline-start:auto}.alert-message{margin-bottom:calc(var(--spacing) * 4);border-radius:calc(var(--radius-base) * 1.5);border-style:var(--tw-border-style);background-color:var(--muted);padding:calc(var(--spacing) * 4);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));color:var(--foreground);border-width:1px}.alert-message.success{border-color:var(--success-a30);background-color:var(--success-a10);color:var(--success)}.alert-message.info{border-color:var(--info-a30);background-color:var(--info-a10);color:var(--info)}.alert-message.warning,.alert-message.notice{border-color:var(--warning-a30);background-color:var(--warning-a10);color:var(--warning-soft-fg)}.alert-message.error,.alert-message.danger{border-color:var(--destructive-a30);background-color:var(--destructive-a10);color:var(--destructive)}.alert-message h4,.alert-message h5,.alert-message pre,.alert-message ul,.alert-message li,.alert-message p{border-style:var(--tw-border-style);color:inherit;background-color:#0000;border-width:0}.alert-message h4{margin-bottom:calc(var(--spacing) * 2);font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height));--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.alert-message p{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));--tw-leading:var(--leading-relaxed);line-height:var(--leading-relaxed)}.alert-message .right{margin-top:calc(var(--spacing) * 3)}.cbi-progressbar{height:calc(var(--spacing) * 2.5);cursor:help;background-color:var(--secondary);border-radius:3.40282e38px;width:100%;position:relative;overflow:hidden}.cbi-progressbar:before{content:var(--tw-content);content:var(--tw-content);inset-inline:calc(var(--spacing) * 0);content:var(--tw-content);content:var(--tw-content);--tw-translate-y:calc(calc(1 / 2 * 100%) * -1);translate:var(--tw-translate-x) var(--tw-translate-y);content:var(--tw-content);text-align:center;content:var(--tw-content);content:var(--tw-content);--tw-leading:1;content:var(--tw-content);white-space:nowrap;content:var(--tw-content);color:var(--foreground);--tw-content:attr(title);content:var(--tw-content);font-size:10px;line-height:1;position:absolute;top:50%}.cbi-progressbar>div{--tw-gradient-position:to right in oklab;background-image:linear-gradient(var(--tw-gradient-stops));--tw-gradient-from:var(--progress-bar-start);--tw-gradient-to:var(--progress-bar-end);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));height:100%;transition:width .3s}.label{background-color:var(--muted);padding-inline:calc(var(--spacing) * 2.5);padding-block:calc(var(--spacing) * .5);font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height));--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold);color:var(--muted-foreground);border-radius:3.40282e38px;align-items:center;display:inline-flex}.label.important{background-color:var(--info-a15);color:var(--info)}.label.warning{background-color:var(--warning-a15);color:var(--warning-soft-fg)}.label.success{background-color:var(--success-a15);color:var(--success)}.label.notice{background-color:var(--warning-a15);color:var(--warning-soft-fg)}.zonebadge{align-items:center;gap:calc(var(--spacing) * 1.5);border-radius:calc(var(--radius-base) * .75);border-style:var(--tw-border-style);border-width:1px;border-color:var(--secondary);background-color:var(--secondary);padding-inline:calc(var(--spacing) * 2);padding-block:calc(var(--spacing) * 1);vertical-align:middle;font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));--tw-leading:var(--leading-normal);line-height:var(--leading-normal);--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold);color:var(--secondary-foreground);transition:color .2s,background-color .2s,border-color .2s;display:inline-flex;overflow:visible}.zonebadge[style*=--zone-color-rgb]{border-color:#0000;background-color:rgb(var(--zone-color-rgb),.6)!important}.zonebadge.zonebadge-empty{--tw-border-style:dashed;border-style:dashed;border-color:var(--border);--tw-font-weight:var(--font-weight-normal);font-weight:var(--font-weight-normal);color:var(--muted-foreground);background-color:#0000;font-style:italic}.ifacebadge>.zonebadge{padding-inline:calc(var(--spacing) * 1);padding-block:calc(var(--spacing) * .5);border-radius:3.40282e38px}.cbi-dropdown .zonebadge{border-radius:calc(var(--radius-base) * .75);padding-inline:calc(var(--spacing) * 1.5);padding-block:calc(var(--spacing) * .5)}.ifacebadge{cursor:default;align-items:center;gap:calc(var(--spacing) * 1.5);border-radius:var(--radius-base);border-style:var(--tw-border-style);border-width:1px;border-color:var(--border);background-color:var(--label-surface);padding-inline:calc(var(--spacing) * 2.5);padding-block:calc(var(--spacing) * 1.5);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));--tw-font-weight:var(--font-weight-normal);font-weight:var(--font-weight-normal);color:var(--foreground);flex-wrap:nowrap;transition:color .2s,background-color .2s,border-color .2s;display:inline-flex}.zonebadge>.ifacebadge{border-radius:calc(var(--radius-base) * .75);padding-inline:calc(var(--spacing) * 1.5);padding-block:calc(var(--spacing) * 0)}.zonebadge>.ifacebadge img{margin-right:calc(var(--spacing) * 1);width:calc(var(--spacing) * 4)}.cbi-dropdown .ifacebadge{gap:calc(var(--spacing) * 1);border-radius:calc(var(--radius-base) * .75);padding-inline:calc(var(--spacing) * 1.5);padding-block:calc(var(--spacing) * .5)}.cbi-dropdown .ifacebadge img{margin-right:calc(var(--spacing) * 1);width:calc(var(--spacing) * 4)}.ifacebadge>img,.ifacebadge>.cbi-tooltip-container>img{width:calc(var(--spacing) * 5);flex-shrink:0;align-self:center}.ifacebadge>span .nowrap{margin-bottom:calc(var(--spacing) * 1.5);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));display:inline-block}.ifacebadge.ifacebadge-active{border-color:var(--primary);--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.ifacebadge.large{min-width:calc(var(--spacing) * 48);padding-inline:calc(var(--spacing) * 4);padding-block:calc(var(--spacing) * 3);flex:1}.cbi-section{margin-bottom:calc(var(--spacing) * 4);border-radius:calc(var(--radius-base) * 1.5);border-style:var(--tw-border-style);border-width:1px;border-color:var(--panel-border);background-color:var(--panel-bg);padding:calc(var(--spacing) * 4);overflow:visible}.cbi-section[data-tab-title]{margin:calc(var(--spacing) * 0);padding:calc(var(--spacing) * 0)}.cbi-section[data-tab-active=true]{margin-bottom:calc(var(--spacing) * 4);padding:calc(var(--spacing) * 4)}.cbi-section>.cbi-title{justify-content:space-between;align-items:flex-start;display:flex}.cbi-section>.cbi-title>h3{flex:1}.cbi-section>.cbi-title>h3 .label[data-clickable]{width:calc(var(--spacing) * 6);height:calc(var(--spacing) * 6);cursor:pointer;border-radius:calc(var(--radius-base) * .5);background-color:var(--label-surface);padding:calc(var(--spacing) * 0);color:var(--foreground);justify-content:center;align-items:center;display:inline-flex}@media (hover:hover){.cbi-section>.cbi-title>h3 .label[data-clickable]:hover{background-color:var(--muted)}}.cbi-section>.cbi-title>h3 .label[data-clickable]:active{--tw-scale-x:95%;--tw-scale-y:95%;--tw-scale-z:95%;scale:var(--tw-scale-x) var(--tw-scale-y)}.cbi-section>.cbi-title>h3 span[data-indicator=poll-status]{width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4);cursor:pointer;font-size:0;position:relative}.cbi-section>.cbi-title>h3 span[data-indicator=poll-status]:before{content:var(--tw-content);content:var(--tw-content);width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4);content:var(--tw-content);content:var(--tw-content);content:var(--tw-content);content:var(--tw-content);background-color:currentColor;position:absolute;-webkit-mask-position:50%;mask-position:50%;-webkit-mask-size:cover;mask-size:cover;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.cbi-section>.cbi-title>h3 span[data-indicator=poll-status][data-style=active]:before{content:var(--tw-content);-webkit-mask-image:url("data:image/svg+xml,%3c!--%20@license%20lucide-static%20v1.16.0%20-%20ISC%20--%3e%3csvg%20class='lucide%20lucide-chevron-down'%20xmlns='http://www.w3.org/2000/svg'%20width='24'%20height='24'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='currentColor'%20stroke-width='2'%20stroke-linecap='round'%20stroke-linejoin='round'%20%3e%3cpath%20d='m6%209%206%206%206-6'%20/%3e%3c/svg%3e");mask-image:url("data:image/svg+xml,%3c!--%20@license%20lucide-static%20v1.16.0%20-%20ISC%20--%3e%3csvg%20class='lucide%20lucide-chevron-down'%20xmlns='http://www.w3.org/2000/svg'%20width='24'%20height='24'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='currentColor'%20stroke-width='2'%20stroke-linecap='round'%20stroke-linejoin='round'%20%3e%3cpath%20d='m6%209%206%206%206-6'%20/%3e%3c/svg%3e")}.cbi-section>.cbi-title>h3 span[data-indicator=poll-status][data-style=inactive]:before{content:var(--tw-content);-webkit-mask-image:url("data:image/svg+xml,%3c!--%20@license%20lucide-static%20v1.16.0%20-%20ISC%20--%3e%3csvg%20class='lucide%20lucide-chevron-up'%20xmlns='http://www.w3.org/2000/svg'%20width='24'%20height='24'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='currentColor'%20stroke-width='2'%20stroke-linecap='round'%20stroke-linejoin='round'%20%3e%3cpath%20d='m18%2015-6-6-6%206'%20/%3e%3c/svg%3e");mask-image:url("data:image/svg+xml,%3c!--%20@license%20lucide-static%20v1.16.0%20-%20ISC%20--%3e%3csvg%20class='lucide%20lucide-chevron-up'%20xmlns='http://www.w3.org/2000/svg'%20width='24'%20height='24'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='currentColor'%20stroke-width='2'%20stroke-linecap='round'%20stroke-linejoin='round'%20%3e%3cpath%20d='m18%2015-6-6-6%206'%20/%3e%3c/svg%3e")}.cbi-section legend{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height));--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.cbi-section h3{margin-bottom:calc(var(--spacing) * 3);border-bottom-style:var(--tw-border-style);border-bottom-width:1px;border-color:var(--border);padding-bottom:calc(var(--spacing) * 3);font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height));--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold);color:var(--foreground)}.cbi-section .cbi-section-create{margin-top:calc(var(--spacing) * 4);align-items:center;gap:calc(var(--spacing) * 2);flex-wrap:wrap;display:flex}.cbi-section .cbi-section-create>div{flex:none}.cbi-section .network-status-table{margin-bottom:calc(var(--spacing) * 3);justify-content:space-around;gap:calc(var(--spacing) * 4);flex-wrap:wrap;display:flex}@media (width>=48rem){.cbi-section .network-status-table{flex-wrap:nowrap}}.cbi-section div[style*=display\:grid]:has(>.ifacebox){place-items:center}.ifacebox{min-width:calc(var(--spacing) * 32);border-radius:var(--radius-base);border-style:var(--tw-border-style);border-width:1px;border-color:var(--border);background-color:var(--panel-bg);text-align:center;font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));--tw-leading:calc(var(--spacing) * 5);line-height:calc(var(--spacing) * 5);flex-direction:column;align-items:stretch;display:inline-flex;position:relative;overflow:visible}@media (width>=48rem){#cbi-network-interface .ifacebox{min-width:calc(var(--spacing) * 38)}}.ifacebox .ifacebox-head{border-top-left-radius:var(--radius-base);border-top-right-radius:var(--radius-base);border-bottom-style:var(--tw-border-style);border-bottom-width:1px;border-color:var(--border);background-color:var(--label-surface);width:100%;padding-inline:calc(var(--spacing) * 3);padding-block:calc(var(--spacing) * 2);text-align:center;font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold);color:var(--foreground);transition:color .2s,background-color .2s,border-color .2s}.ifacebox .ifacebox-head[style*=--zone-color-rgb]{background-color:rgb(var(--zone-color-rgb),.65)!important}.ifacebox .ifacebox-head.cbi-tooltip-container{background-color:#0000;position:static}.ifacebox .ifacebox-head.cbi-tooltip-container .cbi-tooltip{bottom:calc(var(--spacing) * 0);left:calc(var(--spacing) * 0)}.ifacebox .ifacebox-head.active{border-color:var(--primary);background-color:var(--primary);color:var(--primary-foreground)}.ifacebox .ifacebox-body{justify-content:center;align-items:stretch;gap:calc(var(--spacing) * 1);border-bottom-right-radius:var(--radius-base);border-bottom-left-radius:var(--radius-base);width:100%;padding:calc(var(--spacing) * 3);text-align:center;color:var(--foreground);flex-direction:column;flex:1;display:flex}.ifacebox .ifacebox-body>img{width:calc(var(--spacing) * 5);margin-inline:auto}:where(.ifacebox .ifacebox-body>span>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 1) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 1) * calc(1 - var(--tw-space-y-reverse)))}.ifacebox .ifacebox-body>span .cbi-tooltip{transition-delay:.2s}.ifacebox .ifacebox-body>span .nowrap{display:inline-block}.ifacebox .ifacebox-body>span img{width:calc(var(--spacing) * 5);flex-shrink:0}.ifacebox .ifacebox-body>div{width:100%;display:block}:where(.ifacebox .ifacebox-body>div>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 0) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 0) * calc(1 - var(--tw-space-y-reverse)))}.ifacebox .ifacebox-body .cbi-tooltip-container{cursor:help;color:var(--foreground);justify-content:center;align-items:center;display:inline-flex;position:static}.ifacebox .ifacebox-body .cbi-tooltip-container .cbi-tooltip{bottom:calc(var(--spacing) * 0)}.ifacebox .ifacebox-body .cbi-tooltip-container .cbi-tooltip .nowrap{white-space:nowrap}.ifacebox .ifacebox-body small{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height));--tw-leading:calc(var(--spacing) * 4);line-height:calc(var(--spacing) * 4);display:block}.network-status-table .ifacebox-body{justify-content:space-around;align-items:center;gap:calc(var(--spacing) * 2);flex-direction:column;flex:1;height:100%;display:flex}.network-status-table .ifacebox-body>div{gap:calc(var(--spacing) * 2);flex-wrap:wrap;display:flex}.network-status-table .ifacebox-body .ifacebadge{min-width:calc(var(--spacing) * 55);flex:1}#modal_overlay{pointer-events:none;top:calc(var(--spacing) * 0);bottom:calc(var(--spacing) * 0);background-color:#0000;display:none;position:fixed;overflow:auto}.modal-overlay-active #modal_overlay{pointer-events:auto;inset:calc(var(--spacing) * 0);z-index:50;background-color:var(--overlay-base-a60);--tw-backdrop-blur:blur(var(--blur-sm));-webkit-backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);place-items:center;display:grid}#modal_overlay>.modal{width:100%;max-width:var(--container-2xl);gap:calc(var(--spacing) * 4);border-radius:calc(var(--radius-base) * 1.5);border-style:var(--tw-border-style);border-width:1px;border-color:var(--border);background-color:var(--panel-bg);padding:calc(var(--spacing) * 6);overflow-wrap:break-word;white-space:normal;--tw-shadow:0 25px 50px -12px var(--tw-shadow-color,#00000040);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);flex-direction:column;display:flex}#modal_overlay>.modal h4{margin-bottom:calc(var(--spacing) * 0);text-align:center}#modal_overlay>.modal h4 em{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold);color:var(--primary)}#modal_overlay>.modal h5{margin-block:calc(var(--spacing) * 3);color:var(--foreground)}#modal_overlay>.modal p{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));--tw-leading:var(--leading-relaxed);line-height:var(--leading-relaxed);color:var(--foreground)}#modal_overlay>.modal>ul{border-radius:var(--radius-base);border-style:var(--tw-border-style);border-width:1px;border-color:var(--border);background-color:var(--background-a60);padding:calc(var(--spacing) * 3);overflow:auto}#modal_overlay>.modal label.btn{border-style:var(--tw-border-style);border-width:1px;border-color:var(--border);background-color:var(--background-a60);color:var(--foreground)}@media (hover:hover){#modal_overlay>.modal label.btn:hover{border-color:var(--border)}}#modal_overlay>.modal pre{overflow:auto}#modal_overlay>.modal pre.errors{border-color:var(--destructive-a60);background-color:var(--destructive-a20);color:var(--destructive)}#modal_overlay>.modal pre+pre{margin-top:calc(var(--spacing) * 3)}#modal_overlay>.modal .button-row,#modal_overlay>.modal div.left,#modal_overlay>.modal div.right{gap:calc(var(--spacing) * 3);border-top-style:var(--tw-border-style);border-top-width:1px;border-color:var(--border);padding:calc(var(--spacing) * 4);flex-shrink:0;display:flex}#modal_overlay>.modal div.left{justify-content:flex-start}#modal_overlay>.modal .button-row,#modal_overlay>.modal div.right{justify-content:flex-end}#modal_overlay>.modal.uci-dialog ins,#modal_overlay>.modal.uci-dialog del,#modal_overlay>.modal.uci-dialog var{font-family:var(--font-mono);--tw-shadow:var(--shadow-sm);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);font-style:normal;text-decoration-line:none}#modal_overlay>.modal.uci-dialog ins{border-radius:calc(var(--radius-base) * .5);border-style:var(--tw-border-style);border-width:1px;border-color:var(--success);background-color:var(--success-a80);color:var(--success-fg)}#modal_overlay>.modal.uci-dialog del{border-radius:calc(var(--radius-base) * .5);border-style:var(--tw-border-style);border-width:1px;border-color:var(--destructive);background-color:var(--destructive-a80);color:var(--destructive-fg)}#modal_overlay>.modal.uci-dialog var{border-radius:calc(var(--radius-base) * .5);border-style:var(--tw-border-style);border-width:1px;border-color:var(--info);background-color:var(--info-a80);color:var(--info-fg)}#modal_overlay>.modal.uci-dialog .uci-change-legend{margin-top:calc(var(--spacing) * 4);gap:calc(var(--spacing) * 3);border-radius:var(--radius-base);border-style:var(--tw-border-style);border-width:1px;border-color:var(--border);background-color:var(--background-a60);padding:calc(var(--spacing) * 4);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}#modal_overlay>.modal.uci-dialog .uci-change-legend .uci-change-legend-label{align-items:center;gap:calc(var(--spacing) * 2);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium);color:var(--foreground);display:flex}#modal_overlay>.modal.uci-dialog .uci-change-legend .uci-change-legend-label ins,#modal_overlay>.modal.uci-dialog .uci-change-legend .uci-change-legend-label del,#modal_overlay>.modal.uci-dialog .uci-change-legend .uci-change-legend-label var{height:calc(var(--spacing) * 6);min-width:calc(var(--spacing) * 6);border-radius:calc(var(--radius-base) * .5);padding-inline:calc(var(--spacing) * 2);font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height));--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold);justify-content:center;align-items:center;display:flex}#modal_overlay>.modal.uci-dialog .uci-change-list{margin-top:calc(var(--spacing) * 4)}:where(#modal_overlay>.modal.uci-dialog .uci-change-list>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 3) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 3) * calc(1 - var(--tw-space-y-reverse)))}#modal_overlay>.modal.uci-dialog .uci-change-list h5{margin-top:calc(var(--spacing) * 4);margin-bottom:calc(var(--spacing) * 2);border-radius:var(--radius-base);background-color:var(--muted);padding-inline:calc(var(--spacing) * 3);padding-block:calc(var(--spacing) * 2);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold);color:var(--foreground)}#modal_overlay>.modal.uci-dialog .uci-change-list h5:first-child{margin-top:calc(var(--spacing) * 0)}#modal_overlay>.modal.uci-dialog .uci-change-list ins,#modal_overlay>.modal.uci-dialog .uci-change-list del{border-radius:var(--radius-base);padding-inline:calc(var(--spacing) * 3);padding-block:calc(var(--spacing) * 2);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));display:block}:is(#modal_overlay>.modal.uci-dialog .uci-change-list ins,#modal_overlay>.modal.uci-dialog .uci-change-list del) strong{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}#modal_overlay>.modal.uci-dialog .uci-change-list var{border-radius:calc(var(--radius-base) * .5);padding-inline:calc(var(--spacing) * 1.5);padding-block:calc(var(--spacing) * .5);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));display:inline-block}#modal_overlay>.modal.uci-dialog .uci-change-list var ins,#modal_overlay>.modal.uci-dialog .uci-change-list var del{margin-left:calc(var(--spacing) * 1);padding-inline:calc(var(--spacing) * 1);font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height));padding-block:1px;display:inline-block}table.table,.table{margin-bottom:calc(var(--spacing) * 4);border-collapse:separate;--tw-border-spacing-x:calc(var(--spacing) * 0);--tw-border-spacing-y:calc(var(--spacing) * 0);width:100%;border-spacing:var(--tw-border-spacing-x) var(--tw-border-spacing-y);border-radius:var(--radius-base);border-style:var(--tw-border-style);border-width:1px;border-color:var(--border);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));overflow:visible}@media not all and (width>=48rem){table.table,.table{border-style:var(--tw-border-style);--tw-shadow:0 0 #0000;box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);border-width:0;border-radius:0;display:block}}:is(table.table,.table)[width="100%"]{width:100%}:is(table.table,.table)[width="33%"]{width:33.3333%}:is(table.table,.table) .cbi-section-table-titles{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}:is(:is(table.table,.table) .cbi-section-table-titles.named,:is(table.table,.table) .cbi-section-table-descr.named,:is(table.table,.table) .cbi-section-table-row[data-title]):before{content:var(--tw-content);content:var(--tw-content);border-bottom-style:var(--tw-border-style);content:var(--tw-content);border-bottom-width:1px;border-color:var(--border);content:var(--tw-content);padding-inline:calc(var(--spacing) * 3);content:var(--tw-content);padding-block:calc(var(--spacing) * 2.5);content:var(--tw-content);vertical-align:middle;content:var(--tw-content);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));content:var(--tw-content);--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold);--tw-content:attr(data-title);content:var(--tw-content);display:table-cell}:is(:is(:is(table.table,.table) .cbi-section-table-titles.named,:is(table.table,.table) .cbi-section-table-descr.named,:is(table.table,.table) .cbi-section-table-row[data-title]):not([data-title]),:is(:is(table.table,.table) .cbi-section-table-titles.named,:is(table.table,.table) .cbi-section-table-descr.named,:is(table.table,.table) .cbi-section-table-row[data-title]):has(td.cbi-section-table-titles)):before{content:var(--tw-content);--tw-content:none;content:none}:is(table.table,.table) .cbi-section-table-titles.named:before{content:var(--tw-content);border-top-left-radius:var(--radius-base);content:var(--tw-content);background-color:var(--label-surface)}@media not all and (width>=48rem){:is(table.table,.table) tbody,:is(table.table,.table) .tbody{display:block}}:is(table.table,.table) tr,:is(table.table,.table) .tr{transition:background-color .2s}@media (hover:hover){:is(:is(table.table,.table) tr,:is(table.table,.table) .tr):hover{background-color:var(--label-surface)}}@media not all and (width>=48rem){:is(table.table,.table) tr,:is(table.table,.table) .tr{border-bottom-style:var(--tw-border-style);border-bottom-width:1px;border-color:var(--border);padding-inline:calc(var(--spacing) * 2);padding-block:calc(var(--spacing) * 2);flex-wrap:wrap;display:flex}}@media (width>=48rem){:is(:is(:is(table.table,.table) tr,:is(table.table,.table) .tr):first-child:not([data-title]) .th,:is(:is(table.table,.table) tr,:is(table.table,.table) .tr):first-child:not([data-title]) .td):first-child{border-top-left-radius:var(--radius-base)}:is(:is(:is(table.table,.table) tr,:is(table.table,.table) .tr):first-child .th,:is(:is(table.table,.table) tr,:is(table.table,.table) .tr):first-child .td):last-child{border-top-right-radius:var(--radius-base)}}:is(:is(table.table,.table) tr,:is(table.table,.table) .tr):last-child[data-title]:before{content:var(--tw-content);border-bottom-style:var(--tw-border-style);border-bottom-width:0}@media (width>=48rem){:is(:is(table.table,.table) tr,:is(table.table,.table) .tr):last-child[data-title]:before{content:var(--tw-content);border-bottom-left-radius:var(--radius-base)}}:is(:is(table.table,.table) tr,:is(table.table,.table) .tr):last-child .td{border-bottom-style:var(--tw-border-style);border-bottom-width:0}@media (width>=48rem){:is(:is(table.table,.table) tr,:is(table.table,.table) .tr):last-child .td:first-child{border-bottom-left-radius:var(--radius-base)}:is(:is(table.table,.table) tr,:is(table.table,.table) .tr):last-child .td:last-child{border-bottom-right-radius:var(--radius-base)}}@media not all and (width>=48rem){:is(:is(table.table,.table) tr,:is(table.table,.table) .tr).table-titles,:is(:is(table.table,.table) tr,:is(table.table,.table) .tr).cbi-section-table-titles,:is(:is(table.table,.table) tr,:is(table.table,.table) .tr).cbi-section-table-descr{display:none}}:is(:is(table.table,.table) tr,:is(table.table,.table) .tr).cbi-rowstyle-1{background-color:var(--panel-bg)}:is(:is(table.table,.table) tr,:is(table.table,.table) .tr).cbi-rowstyle-2{background-color:var(--label-surface-a50)}:is(table.table,.table) th,:is(table.table,.table) .th{border-bottom-style:var(--tw-border-style);border-bottom-width:1px;border-color:var(--border);background-color:var(--label-surface);padding-inline:calc(var(--spacing) * 3);padding-block:calc(var(--spacing) * 2.5);text-align:left;font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}@media not all and (width>=48rem){:is(table.table,.table) th,:is(table.table,.table) .th{display:none}}:is(:is(table.table,.table) th,:is(table.table,.table) .th)[width="100%"]{width:100%}:is(:is(table.table,.table) th,:is(table.table,.table) .th)[width="33%"]{width:33.3333%}:is(:is(table.table,.table) th,:is(table.table,.table) .th)[data-sortable-row=true]{cursor:pointer;-webkit-user-select:none;user-select:none}:is(:is(table.table,.table) th,:is(table.table,.table) .th)[data-sortable-row=true]:after{content:var(--tw-content);margin-left:calc(var(--spacing) * .5);content:var(--tw-content);font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}@media (hover:hover){:is(:is(table.table,.table) th,:is(table.table,.table) .th)[data-sortable-row=true]:hover{background-color:var(--label-surface)}}:is(:is(table.table,.table) th,:is(table.table,.table) .th)[data-sortable-row=true][data-sort-direction=asc]:after{--tw-content:"▲";content:var(--tw-content)}:is(:is(table.table,.table) th,:is(table.table,.table) .th)[data-sortable-row=true][data-sort-direction=desc]:after{--tw-content:"▼";content:var(--tw-content)}:is(table.table,.table) td,:is(table.table,.table) .td{border-bottom-style:var(--tw-border-style);border-bottom-width:1px;border-color:var(--border);padding-inline:calc(var(--spacing) * 3);padding-block:calc(var(--spacing) * 2.5);vertical-align:middle;overflow-wrap:break-word;white-space:normal;display:table-cell}@media not all and (width>=48rem){:is(table.table,.table) td,:is(table.table,.table) .td{border-style:var(--tw-border-style);padding-inline:calc(var(--spacing) * 1);padding-block:calc(var(--spacing) * 1);border-width:0;flex:50%}}:is(:is(table.table,.table) td,:is(table.table,.table) .td):before{content:var(--tw-content);--tw-content:attr(data-title);content:var(--tw-content);content:var(--tw-content);display:none}@media not all and (width>=48rem){:is(:is(table.table,.table) td,:is(table.table,.table) .td):before{margin-bottom:calc(var(--spacing) * 1);font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height));display:block}}:is(:is(table.table,.table) td,:is(table.table,.table) .td):before{content:var(--tw-content)}@media not all and (width>=48rem){:is(:is(table.table,.table) td,:is(table.table,.table) .td):before{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}}:is(:is(table.table,.table) td,:is(table.table,.table) .td)>input[type=text],:is(:is(table.table,.table) td,:is(table.table,.table) .td)>input[type=password],:is(:is(table.table,.table) td,:is(table.table,.table) .td) select,:is(:is(table.table,.table) td,:is(table.table,.table) .td) .cbi-dropdown:not(.btn):not(.cbi-button){width:100%}:is(:is(table.table,.table) td,:is(table.table,.table) .td) select,:is(:is(table.table,.table) td,:is(table.table,.table) .td) .cbi-dropdown:not(.btn):not(.cbi-button){min-width:fit-content}:is(:is(table.table,.table) td,:is(table.table,.table) .td).cbi-value-field{overflow-wrap:anywhere}@media not all and (width>=48rem){:is(:is(table.table,.table) td,:is(table.table,.table) .td).cbi-value-field{margin-bottom:calc(var(--spacing) * 1);text-align:left;flex-basis:100%;align-self:flex-start}}@media (width>=48rem){:is(:is(table.table,.table) td,:is(table.table,.table) .td).cbi-value-field{max-width:65ch}}@media not all and (width>=48rem){:is(:is(table.table,.table) td,:is(table.table,.table) .td).cbi-value-field[data-widget=CBI\.DummyValue],:is(:is(table.table,.table) td,:is(table.table,.table) .td).cbi-value-field[data-widget=CBI\.Button],:is(:is(table.table,.table) td,:is(table.table,.table) .td).cbi-value-field[data-widget=CBI\.FlagValue],:is(:is(table.table,.table) td,:is(table.table,.table) .td).cbi-value-field[data-widget=dvalue],:is(:is(table.table,.table) td,:is(table.table,.table) .td).cbi-value-field[data-widget=button],:is(:is(table.table,.table) td,:is(table.table,.table) .td).cbi-value-field[data-widget=fvalue]{flex-basis:50%}:is(:is(table.table,.table) td,:is(table.table,.table) .td).cbi-section-actions{flex:0 0 100%}}:is(:is(table.table,.table) td,:is(table.table,.table) .td).cbi-section-actions>div>.cbi-button{flex:1}@media not all and (width>=48rem){:is(:is(table.table,.table) td,:is(table.table,.table) .td)>.cbi-button{width:100%}}:is(:is(table.table,.table) td,:is(table.table,.table) .td)[width="100%"]{width:100%}@media not all and (width>=48rem){:is(:is(table.table,.table) td,:is(table.table,.table) .td)[width="100%"]{flex:0 0 100%}}:is(:is(table.table,.table) td,:is(table.table,.table) .td)[width="33%"]{width:33.3333%}@media not all and (width>=48rem){:is(:is(table.table,.table) td,:is(table.table,.table) .td)[width="33%"]{flex:0 0 33.333%}}.cbi-section-table .cbi-section-table-titles .cbi-section-table-cell{width:auto!important}#content_syslog>div{align-items:center;column-gap:calc(var(--spacing) * 2);flex-wrap:wrap;display:flex}#content_syslog>div>select,#content_syslog>div>input{margin-block:calc(var(--spacing) * 0)!important}#content_syslog>.syslog-view{display:block}#syslog,#log_textarea{width:100%;font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height));--tw-leading:var(--leading-snug);line-height:var(--leading-snug)}#syslog{margin-bottom:calc(var(--spacing) * 5);border-radius:var(--radius-base);border-style:var(--tw-border-style);border-width:1px;border-color:var(--border);background-color:var(--terminal-bg);padding:calc(var(--spacing) * 4);color:var(--terminal-foreground)}#content_syslog.log-enhanced>#syslog{display:none}.syslog-view{margin-bottom:calc(var(--spacing) * 5);border-radius:var(--radius-base);border-style:var(--tw-border-style);border-width:1px;border-color:var(--border);background-color:var(--terminal-bg);width:100%;padding-inline:calc(var(--spacing) * 2);padding-block:calc(var(--spacing) * 4);font-family:var(--font-mono);font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height));--tw-leading:1.7;color:var(--terminal-foreground);--tw-outline-style:none;outline-style:none;line-height:1.7;overflow-x:auto}.syslog-view:focus-visible{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);--tw-ring-color:var(--ring-a50)}.syslog-view .log-row{border-radius:calc(var(--radius-base) * .5);width:max-content;min-width:100%;padding-inline:calc(var(--spacing) * 2);white-space:pre}.syslog-view .log-row:hover{background-color:var(--terminal-hover)}.syslog-view ::selection{background-color:var(--info-a40)}.syslog-view .log-time{opacity:.55}.syslog-view .log-sev{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.syslog-view .log-tag{opacity:.8}@media (width>=48rem){.syslog-view .log-time,.syslog-view .log-sev,.syslog-view .log-tag{vertical-align:bottom;display:inline-block}.syslog-view .log-time{min-width:24ch}.syslog-view .log-sev{min-width:16ch}.syslog-view .log-tag{min-width:18ch}}.syslog-view .lv-info .log-sev{color:var(--info)}.syslog-view .lv-notice .log-sev{color:var(--success)}.syslog-view .lv-warn .log-sev{color:var(--warning)}.syslog-view .lv-debug{opacity:.5}.syslog-view .lv-err,.syslog-view .lv-crit{background-color:var(--destructive-a20)}:is(.syslog-view .lv-err,.syslog-view .lv-crit):hover{background-color:var(--destructive-a30)}:is(.syslog-view .lv-err,.syslog-view .lv-crit) .log-sev{color:var(--destructive)}.cbi-input-invalid,.cbi-value-error{border-color:var(--destructive-a70)!important}:is(.cbi-input-invalid,.cbi-value-error):focus{--tw-ring-color:var(--destructive-a40)!important}.cbi-value{gap:calc(var(--spacing) * 4);padding-block:calc(var(--spacing) * 1.5);flex-flow:wrap;display:flex}@media not all and (width>=48rem){.cbi-value{gap:calc(var(--spacing) * 1.5);padding-block:calc(var(--spacing) * 1);flex-direction:column}}.cbi-value.hidden{display:none}.cbi-value+.cbi-value{margin-top:calc(var(--spacing) * 3)}.cbi-value>.cbi-value-title{padding-top:calc(var(--spacing) * 1);text-align:right;font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium);color:var(--foreground)}@media not all and (width>=48rem){.cbi-value>.cbi-value-title{text-align:left}}@media (width>=48rem){.cbi-value>.cbi-value-title{flex:0 0 10rem}}.cbi-value>.cbi-value-field{flex:1;max-width:100%}.cbi-value>.cbi-value-field:has(>.cbi-dropdown[disabled]){cursor:not-allowed}.cbi-value>.cbi-value-field .cbi-value-description{margin-top:calc(var(--spacing) * 1);padding-left:calc(var(--spacing) * 5);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));--tw-leading:1;overflow-wrap:break-word;color:var(--muted-foreground);line-height:1;position:relative}.cbi-value>.cbi-value-field .cbi-value-description:not(:empty):before{content:var(--tw-content);content:var(--tw-content);left:calc(var(--spacing) * 0);content:var(--tw-content);content:var(--tw-content);width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4);content:var(--tw-content);background-color:var(--primary);content:var(--tw-content);content:var(--tw-content);content:var(--tw-content);content:var(--tw-content);display:inline-block;position:absolute;-webkit-mask-image:url("data:image/svg+xml,%3c!--%20@license%20lucide-static%20v1.16.0%20-%20ISC%20--%3e%3csvg%20class='lucide%20lucide-info'%20xmlns='http://www.w3.org/2000/svg'%20width='24'%20height='24'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='currentColor'%20stroke-width='2'%20stroke-linecap='round'%20stroke-linejoin='round'%3e%3ccircle%20cx='12'%20cy='12'%20r='10'/%3e%3cpath%20d='M12%2016v-4'/%3e%3cpath%20d='M12%208h.01'/%3e%3c/svg%3e");mask-image:url("data:image/svg+xml,%3c!--%20@license%20lucide-static%20v1.16.0%20-%20ISC%20--%3e%3csvg%20class='lucide%20lucide-info'%20xmlns='http://www.w3.org/2000/svg'%20width='24'%20height='24'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='currentColor'%20stroke-width='2'%20stroke-linecap='round'%20stroke-linejoin='round'%3e%3ccircle%20cx='12'%20cy='12'%20r='10'/%3e%3cpath%20d='M12%2016v-4'/%3e%3cpath%20d='M12%208h.01'/%3e%3c/svg%3e");-webkit-mask-position:50%;mask-position:50%;-webkit-mask-size:cover;mask-size:cover;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.cbi-value>.cbi-section,.cbi-value>.cbi-tblsection{width:100%}.cbi-dynlist{width:max-content;max-width:calc(var(--spacing) * 96);align-items:flex-start;gap:calc(var(--spacing) * 3);flex-direction:column;display:inline-flex}@media not all and (width>=48rem){.cbi-dynlist{max-width:100%}}.cbi-dynlist .item{pointer-events:auto;cursor:move;align-items:flex-start;gap:calc(var(--spacing) * 2);border-radius:var(--radius-base);border-style:var(--tw-border-style);border-width:1px;border-color:var(--border);background-color:var(--panel-bg);padding-block:calc(var(--spacing) * 3);padding-right:calc(var(--spacing) * 9);padding-left:calc(var(--spacing) * 4);word-break:break-all;--tw-shadow:var(--shadow-sm);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);-webkit-user-select:text;user-select:text;flex-direction:column;align-self:stretch;transition:scale .2s,opacity .2s,box-shadow .2s,border-color .2s,background-color .2s;display:inline-flex;position:relative;overflow:hidden}.cbi-dynlist .item:after{content:"×";top:calc(var(--spacing) * 2);right:calc(var(--spacing) * 2);height:calc(var(--spacing) * 5);width:calc(var(--spacing) * 5);cursor:pointer;border-radius:calc(var(--radius-base) * .5);background-color:var(--muted);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium);color:var(--muted-foreground);flex-shrink:0;justify-content:center;align-items:center;display:inline-flex;position:absolute}.cbi-dynlist .item.dragging{--tw-scale-x:95%;--tw-scale-y:95%;--tw-scale-z:95%;scale:var(--tw-scale-x) var(--tw-scale-y);cursor:grabbing;opacity:.5;--tw-shadow:0 10px 15px -3px var(--tw-shadow-color,#0000001a), 0 4px 6px -4px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.cbi-dynlist .item.drag-over{--tw-scale-x:105%;--tw-scale-y:105%;--tw-scale-z:105%;scale:var(--tw-scale-x) var(--tw-scale-y);border-color:var(--primary-a60);background-color:var(--primary-a5);--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);--tw-ring-color:var(--ring)}.cbi-dynlist .item>span,.cbi-dynlist .item>code{pointer-events:none;border-radius:calc(var(--radius-base) * .5);width:100%;font-family:var(--font-mono);--tw-leading:var(--leading-relaxed);line-height:var(--leading-relaxed)}.cbi-dynlist .placeholder{word-break:break-all}.cbi-dynlist .add-item{align-items:center;gap:calc(var(--spacing) * 1.5);border-radius:var(--radius-base);border-style:var(--tw-border-style);--tw-border-style:dashed;border-style:dashed;border-width:1px;border-color:var(--border);padding-inline:calc(var(--spacing) * 1);padding-block:calc(var(--spacing) * 1);background-color:#0000;align-self:stretch;transition:color .2s,background-color .2s,border-color .2s;display:inline-flex}@media (hover:hover){.cbi-dynlist .add-item:hover{border-color:var(--border-a80);background-color:var(--muted-a30)}}.cbi-dynlist .add-item>input{min-width:calc(var(--spacing) * 56);flex:1}.cbi-dynlist .add-item>.cbi-button{min-height:calc(var(--spacing) * 6);min-width:calc(var(--spacing) * 6);cursor:pointer;border-radius:calc(var(--radius-base) * .5);padding-inline:calc(var(--spacing) * 2);padding-block:calc(var(--spacing) * 0);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium);--tw-shadow:0 0 #0000;box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.cbi-dynlist .add-item>.cbi-button:active{--tw-scale-x:95%;--tw-scale-y:95%;--tw-scale-z:95%;scale:var(--tw-scale-x) var(--tw-scale-y)}.cbi-tabmenu{margin-bottom:calc(var(--spacing) * 2);min-height:calc(var(--spacing) * 9);align-items:center;gap:calc(var(--spacing) * 0);border-radius:var(--radius-base);background-color:var(--muted);width:fit-content;max-width:100%;color:var(--muted-foreground);padding:3px;display:inline-flex;overflow-x:auto}.cbi-tabmenu li{margin:calc(var(--spacing) * 0);flex-shrink:0;min-width:fit-content;list-style-type:none;position:relative}.cbi-tabmenu li[data-errors]:after{content:var(--tw-content);content:var(--tw-content);top:calc(var(--spacing) * -.5);content:var(--tw-content);right:calc(var(--spacing) * -1.5);content:var(--tw-content);z-index:20;content:var(--tw-content);content:var(--tw-content);min-height:calc(var(--spacing) * 4);content:var(--tw-content);min-width:calc(var(--spacing) * 4);content:var(--tw-content);content:var(--tw-content);content:var(--tw-content);content:var(--tw-content);background-color:var(--destructive);content:var(--tw-content);padding-inline:calc(var(--spacing) * 1);content:var(--tw-content);padding-block:calc(var(--spacing) * .5);content:var(--tw-content);font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height));content:var(--tw-content);--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold);content:var(--tw-content);color:var(--destructive-fg);--tw-content:attr(data-errors);content:var(--tw-content);border-radius:3.40282e38px;justify-content:center;align-items:center;display:inline-flex;position:absolute}.cbi-tabmenu li[data-errors]>a{border-style:var(--tw-border-style);border-width:1px;border-color:var(--destructive-a50)}.cbi-tabmenu li>a{border-radius:calc(var(--radius-base) * .75);border-style:var(--tw-border-style);padding-inline:calc(var(--spacing) * 3);padding-block:calc(var(--spacing) * 1);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium);white-space:nowrap;color:var(--muted-foreground);border-width:1px;border-color:#0000;justify-content:center;align-items:center;text-decoration-line:none;transition:color .15s,background-color .15s,border-color .15s,box-shadow .15s;display:inline-flex}@media (hover:hover){.cbi-tabmenu li>a:hover{color:var(--foreground)}}.cbi-tabmenu li>a:focus-visible{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);--tw-ring-color:var(--ring-a50);--tw-outline-style:none;outline-style:none}.cbi-tabmenu li.cbi-tab>a{background-color:var(--background);color:var(--foreground);--tw-shadow:var(--shadow-sm);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.cbi-tabmenu li.cbi-tab>a:where([data-darkmode=true],[data-darkmode=true] *){border-style:var(--tw-border-style);border-width:1px;border-color:var(--input);background-color:var(--input-a30)}[data-tab-title]{visibility:hidden;height:calc(var(--spacing) * 0);overflow:hidden}[data-tab-active=true]{visibility:visible;height:auto;overflow:visible}#tabmenu{margin-bottom:calc(var(--spacing) * 6);width:100%}.tabs{align-items:center;gap:calc(var(--spacing) * 0);border-bottom-style:var(--tw-border-style);border-bottom-width:1px;border-color:var(--border);display:flex;position:relative;overflow-x:auto}.tabs a{padding-inline:calc(var(--spacing) * 6);padding-block:calc(var(--spacing) * 3);text-align:center;font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium);white-space:nowrap;color:var(--muted-foreground);transition:color .2s,background-color .2s,border-color .2s;display:block}@media (hover:hover){.tabs a:hover{color:var(--foreground);text-decoration-line:none}}.tabs>li.active{border-bottom-style:var(--tw-border-style);border-bottom-width:2px;border-color:var(--foreground)}.tabs>li.active>a{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold);color:var(--foreground)}.cbi-section-node-tabbed{margin-top:calc(var(--spacing) * 4)}button.cmdk-trigger{height:calc(var(--spacing) * 8);cursor:pointer;align-items:center;gap:calc(var(--spacing) * 2.5);border-radius:var(--radius-base);border-style:var(--tw-border-style);border-width:1px;border-color:var(--input);padding-right:calc(var(--spacing) * 1.5);padding-left:calc(var(--spacing) * 7.5);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));color:var(--muted-foreground);background-color:#0000;display:flex;position:relative}@media not all and (width>=48rem){button.cmdk-trigger{width:calc(var(--spacing) * 8);border-style:var(--tw-border-style);padding:calc(var(--spacing) * 0);border-width:0;justify-content:center}}button.cmdk-trigger:before{pointer-events:none;left:calc(var(--spacing) * 2.5);width:calc(var(--spacing) * 3.5);height:calc(var(--spacing) * 3.5);--tw-content:"";content:var(--tw-content);background-color:currentColor;position:absolute;-webkit-mask:url("data:image/svg+xml,%3csvg%20width='24'%20height='24'%20viewBox='0%200%2024%2024'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cpath%20d='M10%2010m-7%200a7%207%200%201%200%2014%200a7%207%200%201%200%20-14%200'%20stroke='currentColor'%20stroke-width='2'%20stroke-linecap='round'%20stroke-linejoin='round'/%3e%3cpath%20d='M21%2021l-6%20-6'%20stroke='currentColor'%20stroke-width='2'%20stroke-linecap='round'%20stroke-linejoin='round'/%3e%3c/svg%3e") 50%/contain no-repeat;mask:url("data:image/svg+xml,%3csvg%20width='24'%20height='24'%20viewBox='0%200%2024%2024'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cpath%20d='M10%2010m-7%200a7%207%200%201%200%2014%200a7%207%200%201%200%20-14%200'%20stroke='currentColor'%20stroke-width='2'%20stroke-linecap='round'%20stroke-linejoin='round'/%3e%3cpath%20d='M21%2021l-6%20-6'%20stroke='currentColor'%20stroke-width='2'%20stroke-linecap='round'%20stroke-linejoin='round'/%3e%3c/svg%3e") 50%/contain no-repeat}@media not all and (width>=48rem){button.cmdk-trigger:before{width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4);position:static}}button.cmdk-trigger:hover{border-color:var(--muted-foreground)}@media not all and (width>=48rem){button.cmdk-trigger:hover{background-color:var(--muted)}}.cmdk-trigger-label{text-overflow:ellipsis;white-space:nowrap;text-align:left;overflow:hidden}@media not all and (width>=48rem){.cmdk-trigger-label{display:none}}.cmdk-trigger-key{border-radius:calc(var(--radius-base) * .75);border-style:var(--tw-border-style);border-width:1px;border-color:var(--border);background-color:var(--label-surface);padding-inline:calc(var(--spacing) * 1.5);font-family:var(--font-mono);font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height));color:var(--muted-foreground);padding-block:1px}@media not all and (width>=48rem){.cmdk-trigger-key{display:none}}#cmdk-overlay{inset:calc(var(--spacing) * 0);z-index:50;background-color:var(--overlay-base-a60);--tw-backdrop-blur:blur(var(--blur-sm));-webkit-backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);justify-content:center;align-items:flex-start;display:flex;position:fixed}@media not all and (width>=48rem){#cmdk-overlay{--tw-backdrop-blur: ;-webkit-backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);background-color:#0000}}#cmdk-overlay[hidden]{display:none}.cmdk-panel{border-radius:calc(var(--radius-base) * 1.5);border-style:var(--tw-border-style);border-width:1px;border-color:var(--panel-border);background-color:var(--panel-bg);--tw-shadow:0 25px 50px -12px var(--tw-shadow-color,#00000040);width:min(560px,100vw - 32px);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);transition:opacity .15s var(--ease-out),translate .15s var(--ease-out);flex-direction:column;margin-top:15vh;display:flex;overflow:hidden}@starting-style{.cmdk-panel{--tw-translate-y:calc(var(--spacing) * -1.5);translate:var(--tw-translate-x) var(--tw-translate-y)}}@starting-style{.cmdk-panel{opacity:0}}@media not all and (width>=48rem){.cmdk-panel{margin-top:calc(var(--spacing) * 0);border-style:var(--tw-border-style);width:100%;height:100dvh;padding-top:env(safe-area-inset-top);--tw-shadow:0 0 #0000;box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);border-width:0;border-radius:0;transition-property:none}}.cmdk-inputrow{height:calc(var(--spacing) * 12);align-items:center;gap:calc(var(--spacing) * 2);border-bottom-style:var(--tw-border-style);border-bottom-width:1px;border-color:var(--panel-border);padding-right:calc(var(--spacing) * 3);padding-left:calc(var(--spacing) * 10);flex-shrink:0;display:flex;position:relative}@media not all and (width>=48rem){.cmdk-inputrow{height:calc(var(--spacing) * 14);padding-right:calc(var(--spacing) * 1.5)}}.cmdk-inputrow:before{pointer-events:none;left:calc(var(--spacing) * 3.5);width:calc(var(--spacing) * 3.5);height:calc(var(--spacing) * 3.5);color:var(--muted-foreground);--tw-content:"";content:var(--tw-content);background-color:currentColor;position:absolute;-webkit-mask:url("data:image/svg+xml,%3csvg%20width='24'%20height='24'%20viewBox='0%200%2024%2024'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cpath%20d='M10%2010m-7%200a7%207%200%201%200%2014%200a7%207%200%201%200%20-14%200'%20stroke='currentColor'%20stroke-width='2'%20stroke-linecap='round'%20stroke-linejoin='round'/%3e%3cpath%20d='M21%2021l-6%20-6'%20stroke='currentColor'%20stroke-width='2'%20stroke-linecap='round'%20stroke-linejoin='round'/%3e%3c/svg%3e") 50%/contain no-repeat;mask:url("data:image/svg+xml,%3csvg%20width='24'%20height='24'%20viewBox='0%200%2024%2024'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cpath%20d='M10%2010m-7%200a7%207%200%201%200%2014%200a7%207%200%201%200%20-14%200'%20stroke='currentColor'%20stroke-width='2'%20stroke-linecap='round'%20stroke-linejoin='round'/%3e%3cpath%20d='M21%2021l-6%20-6'%20stroke='currentColor'%20stroke-width='2'%20stroke-linecap='round'%20stroke-linejoin='round'/%3e%3c/svg%3e") 50%/contain no-repeat}.cmdk-inputrow:has(input.cmdk-input:placeholder-shown) button.cmdk-clear{display:none}input.cmdk-input{height:100%;min-width:calc(var(--spacing) * 0);border-style:var(--tw-border-style);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));color:var(--text);--tw-shadow:0 0 #0000;box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);--tw-outline-style:none;background-color:#0000;border-width:0;outline-style:none;flex:1}@media not all and (width>=48rem){input.cmdk-input{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}}input.cmdk-input:focus{border-style:var(--tw-border-style);--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(0px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);--tw-outline-style:none;border-width:0;outline-style:none}button.cmdk-clear{width:calc(var(--spacing) * 5.5);height:calc(var(--spacing) * 5.5);cursor:pointer;border-style:var(--tw-border-style);padding:calc(var(--spacing) * 0);color:var(--muted-foreground);background-color:#0000;border-width:0;border-radius:3.40282e38px;flex-shrink:0;justify-content:center;align-items:center;display:flex}button.cmdk-clear:before{width:calc(var(--spacing) * 3.25);height:calc(var(--spacing) * 3.25);--tw-content:"";content:var(--tw-content);background-color:currentColor;-webkit-mask:url("data:image/svg+xml,%3c!--%20@license%20lucide-static%20v1.16.0%20-%20ISC%20--%3e%3csvg%20class='lucide%20lucide-x'%20xmlns='http://www.w3.org/2000/svg'%20width='24'%20height='24'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='currentColor'%20stroke-width='2'%20stroke-linecap='round'%20stroke-linejoin='round'%20%3e%3cpath%20d='M18%206%206%2018'%20/%3e%3cpath%20d='m6%206%2012%2012'%20/%3e%3c/svg%3e") 50%/contain no-repeat;mask:url("data:image/svg+xml,%3c!--%20@license%20lucide-static%20v1.16.0%20-%20ISC%20--%3e%3csvg%20class='lucide%20lucide-x'%20xmlns='http://www.w3.org/2000/svg'%20width='24'%20height='24'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='currentColor'%20stroke-width='2'%20stroke-linecap='round'%20stroke-linejoin='round'%20%3e%3cpath%20d='M18%206%206%2018'%20/%3e%3cpath%20d='m6%206%2012%2012'%20/%3e%3c/svg%3e") 50%/contain no-repeat}button.cmdk-clear:hover{background-color:var(--muted);color:var(--foreground)}button.cmdk-cancel{cursor:pointer;border-style:var(--tw-border-style);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));color:var(--primary);background-color:#0000;border-width:0;flex-shrink:0;display:none}@media not all and (width>=48rem){button.cmdk-cancel{padding-block:calc(var(--spacing) * 1.5);padding-right:calc(var(--spacing) * 4);padding-left:calc(var(--spacing) * 1.5);display:block}}.cmdk-list{overscroll-behavior:contain;max-height:342px;padding:calc(var(--spacing) * 1);overflow-y:auto}@media not all and (width>=48rem){.cmdk-list{max-height:none;padding:calc(var(--spacing) * 2);padding-bottom:calc(.75rem + env(safe-area-inset-bottom));flex:1}}.cmdk-group{padding-inline:calc(var(--spacing) * 2);padding-top:calc(var(--spacing) * 2.5);padding-bottom:calc(var(--spacing) * 1);font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height));--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium);--tw-tracking:var(--tracking-wide);letter-spacing:var(--tracking-wide);color:var(--muted-foreground)}.cmdk-row{cursor:pointer;justify-content:flex-start;align-items:center;gap:calc(var(--spacing) * 2);border-radius:var(--radius-base);border-style:var(--tw-border-style);width:100%;padding-inline:calc(var(--spacing) * 2);padding-block:calc(var(--spacing) * 1.5);text-align:left;font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));color:var(--text);background-color:#0000;border-width:0;text-decoration-line:none;display:flex}@media not all and (width>=48rem){.cmdk-row{min-height:calc(var(--spacing) * 11);padding-inline:calc(var(--spacing) * 2.5)}}.cmdk-row:hover{text-decoration-line:none}.cmdk-row img.shadcn-icon{width:calc(var(--spacing) * 3.75);height:calc(var(--spacing) * 3.75);flex-shrink:0}.cmdk-row mark{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold);color:var(--primary);background-color:#0000}.cmdk-row .cmdk-title{min-width:calc(var(--spacing) * 0);text-overflow:ellipsis;white-space:nowrap;--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium);color:var(--foreground);overflow:hidden}.cmdk-row .cmdk-group-name{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height));color:var(--muted-foreground);flex-shrink:0;margin-left:auto}.cmdk-row .cmdk-check{width:calc(var(--spacing) * 3.5);height:calc(var(--spacing) * 3.5);color:var(--primary);background-color:currentColor;flex-shrink:0;margin-left:auto;display:block;-webkit-mask:url("data:image/svg+xml,%3c!--%20@license%20lucide-static%20v1.16.0%20-%20ISC%20--%3e%3csvg%20class='lucide%20lucide-check'%20xmlns='http://www.w3.org/2000/svg'%20width='24'%20height='24'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='currentColor'%20stroke-width='2'%20stroke-linecap='round'%20stroke-linejoin='round'%3e%3cpath%20d='M20%206%209%2017l-5-5'/%3e%3c/svg%3e") 50%/contain no-repeat;mask:url("data:image/svg+xml,%3c!--%20@license%20lucide-static%20v1.16.0%20-%20ISC%20--%3e%3csvg%20class='lucide%20lucide-check'%20xmlns='http://www.w3.org/2000/svg'%20width='24'%20height='24'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='currentColor'%20stroke-width='2'%20stroke-linecap='round'%20stroke-linejoin='round'%3e%3cpath%20d='M20%206%209%2017l-5-5'/%3e%3c/svg%3e") 50%/contain no-repeat}.cmdk-row.is-selected{background-color:var(--muted)}.cmdk-title:has(>.cmdk-parent){align-items:baseline;display:flex}.cmdk-parent{text-overflow:ellipsis;white-space:nowrap;--tw-font-weight:var(--font-weight-normal);font-weight:var(--font-weight-normal);color:var(--muted-foreground);overflow:hidden}.cmdk-label{text-overflow:ellipsis;white-space:nowrap;flex-shrink:0;max-width:calc(100% - 1.5rem);overflow:hidden}.cmdk-label:before{padding-inline:calc(var(--spacing) * 1.5);--tw-font-weight:var(--font-weight-normal);font-weight:var(--font-weight-normal);color:var(--muted-foreground);--tw-content:"›";content:var(--tw-content)}.cmdk-empty{padding-inline:calc(var(--spacing) * 3);padding-block:calc(var(--spacing) * 7);text-align:center;font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));color:var(--muted-foreground)}.cmdk-footer{align-items:center;gap:calc(var(--spacing) * 3.5);border-top-style:var(--tw-border-style);border-top-width:1px;border-color:var(--panel-border);background-color:var(--background-a60);padding-inline:calc(var(--spacing) * 3.5);padding-block:calc(var(--spacing) * 2);font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height));color:var(--muted-foreground);flex-shrink:0;display:flex}@media not all and (width>=48rem){.cmdk-footer{display:none}}.cmdk-footer kbd{border-radius:calc(var(--radius-base) * .75);border-style:var(--tw-border-style);border-width:1px;border-color:var(--border);background-color:var(--label-surface);padding-inline:calc(var(--spacing) * 1.5);font-family:var(--font-mono);font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height));padding-block:1px}.cmdk-footer .cmdk-hint{align-items:center;gap:calc(var(--spacing) * 1.5);display:flex}.cmdk-footer .cmdk-hint-close{margin-left:auto}:root{view-transition-name:none}#luci-nav-progress{pointer-events:none;top:calc(var(--spacing) * 0);left:calc(var(--spacing) * 0);z-index:80;height:calc(var(--spacing) * .5);width:calc(var(--spacing) * 0);--tw-gradient-position:to right;position:fixed}@supports (background-image:linear-gradient(in lab, red, red)){#luci-nav-progress{--tw-gradient-position:to right in oklab}}#luci-nav-progress{background-image:linear-gradient(var(--tw-gradient-stops));--tw-gradient-from:var(--progress-bar-start);--tw-gradient-to:var(--progress-bar-end);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));transition:width .3s var(--ease-out)}#luci-nav-progress[data-state=done]{opacity:0;transition:width .3s ease-out,opacity .15s ease-in .15s}#luci-nav-status{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}#maincontent{--tw-outline-style:none;outline-style:none}#maincontent .view-staging{visibility:hidden;height:calc(var(--spacing) * 0);overflow:hidden}#maincontent #view.view-leaving{cursor:progress;opacity:.6;transition:opacity .15s}.hidden{display:none!important}.left{text-align:left!important}@media (width>=48rem){.left:is(td){text-align:left!important}}.right{text-align:right!important}@media (width>=48rem){.right:is(td){text-align:right!important}}.center{text-align:center!important}@media (width>=48rem){.center:is(td){text-align:center!important}}.top{vertical-align:top!important}@media (width>=48rem){.top:is(td){vertical-align:top!important}}.bottom{vertical-align:bottom!important}@media (width>=48rem){.bottom:is(td){vertical-align:bottom!important}}.middle{vertical-align:middle!important}@media (width>=48rem){.middle:is(td){vertical-align:middle!important}}.nowrap:not(span){white-space:nowrap}@keyframes shadcn-fade-in{0%{opacity:0}}.fade-in,#view>:not(.spinning),#view>.cbi-map>.cbi-map-tabbed>[data-tab-active=true],.cbi-section-node-tabbed>[data-tab-active=true]{animation:.25s backwards shadcn-fade-in}.fade-out{pointer-events:none;opacity:0;transition:opacity .4s}.spinning{position:relative;padding-left:calc(var(--spacing) * 7)!important}.spinning:before{content:var(--tw-content);content:var(--tw-content);content:var(--tw-content);top:50%;left:calc(var(--spacing) * 1.5);content:var(--tw-content);width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4);content:var(--tw-content);--tw-translate-y:calc(calc(1 / 2 * 100%) * -1);translate:var(--tw-translate-x) var(--tw-translate-y);content:var(--tw-content);animation:var(--animate-spin);content:var(--tw-content);content:var(--tw-content);content:var(--tw-content);content:var(--tw-content);content:var(--tw-content);background-color:currentColor;position:absolute;-webkit-mask-image:url("data:image/svg+xml,%3c!--%20@license%20lucide-static%20v1.16.0%20-%20ISC%20--%3e%3csvg%20class='lucide%20lucide-loader-2'%20xmlns='http://www.w3.org/2000/svg'%20width='24'%20height='24'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='currentColor'%20stroke-width='2'%20stroke-linecap='round'%20stroke-linejoin='round'%3e%3cpath%20d='M21%2012a9%209%200%201%201-6.219-8.56'/%3e%3c/svg%3e");mask-image:url("data:image/svg+xml,%3c!--%20@license%20lucide-static%20v1.16.0%20-%20ISC%20--%3e%3csvg%20class='lucide%20lucide-loader-2'%20xmlns='http://www.w3.org/2000/svg'%20width='24'%20height='24'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='currentColor'%20stroke-width='2'%20stroke-linecap='round'%20stroke-linejoin='round'%3e%3cpath%20d='M21%2012a9%209%200%201%201-6.219-8.56'/%3e%3c/svg%3e");-webkit-mask-position:50%;mask-position:50%;-webkit-mask-size:cover;mask-size:cover;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}#view>.spinning:first-child{min-height:calc(var(--spacing) * 48);place-items:center;width:fit-content;margin-inline:auto;display:grid}html{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}html[data-darkmode=true]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}.card-header img,.login-input-icon img,.login-pw-toggle img,img.shadcn-icon{filter:brightness(0)saturate()}html[data-darkmode=true] .card-header img,html[data-darkmode=true] .login-input-icon img,html[data-darkmode=true] .login-pw-toggle img,html[data-darkmode=true] img.shadcn-icon{filter:brightness(0)saturate()invert()}.card-header img,img.shadcn-icon,#sidebar img.shadcn-icon{opacity:.65}html[data-darkmode=true] #sidebar img.shadcn-icon{opacity:.7}.card-header button:hover img,#sidebar .sidebar-nav-item.active img,#sidebar .sidebar-accordion-item.active img,#sidebar .sidebar-nav-parent:hover img{opacity:1}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:1ms!important;transition-delay:0s!important;animation-duration:1ms!important;animation-delay:0s!important}.spinning:before{animation-duration:1s!important}}@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:"";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:"";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:"";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-leading{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-tracking{syntax:"*";inherits:false}@property --tw-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-z{syntax:"*";inherits:false;initial-value:0}@property --tw-content{syntax:"*";inherits:false;initial-value:""}@property --tw-scale-x{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-y{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-z{syntax:"*";inherits:false;initial-value:1}@property --tw-gradient-position{syntax:"*";inherits:false}@property --tw-gradient-from{syntax:"";inherits:false;initial-value:#0000}@property --tw-gradient-via{syntax:"";inherits:false;initial-value:#0000}@property --tw-gradient-to{syntax:"";inherits:false;initial-value:#0000}@property --tw-gradient-stops{syntax:"*";inherits:false}@property --tw-gradient-via-stops{syntax:"*";inherits:false}@property --tw-gradient-from-position{syntax:"";inherits:false;initial-value:0%}@property --tw-gradient-via-position{syntax:"";inherits:false;initial-value:50%}@property --tw-gradient-to-position{syntax:"";inherits:false;initial-value:100%}@property --tw-space-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-backdrop-blur{syntax:"*";inherits:false}@property --tw-backdrop-brightness{syntax:"*";inherits:false}@property --tw-backdrop-contrast{syntax:"*";inherits:false}@property --tw-backdrop-grayscale{syntax:"*";inherits:false}@property --tw-backdrop-hue-rotate{syntax:"*";inherits:false}@property --tw-backdrop-invert{syntax:"*";inherits:false}@property --tw-backdrop-opacity{syntax:"*";inherits:false}@property --tw-backdrop-saturate{syntax:"*";inherits:false}@property --tw-backdrop-sepia{syntax:"*";inherits:false}@property --tw-border-spacing-x{syntax:"";inherits:false;initial-value:0}@property --tw-border-spacing-y{syntax:"";inherits:false;initial-value:0}@keyframes spin{to{transform:rotate(360deg)}} diff --git a/mise/Makefile b/mise/Makefile index 08a6026b1..70821a10d 100644 --- a/mise/Makefile +++ b/mise/Makefile @@ -14,8 +14,8 @@ MISE_HASH_x86_64:=3832f39c325e343f81fe3d92b2447c5d1a5eea1bc85092bb7b6c2580622264 MISE_HASH_aarch64:=06186cfbfe947049b21d58575fb0ea800cc26ed1375f20f4b678cb3a9d679437 PKG_NAME:=mise -PKG_VERSION:=2026.9.9 -PKG_RELEASE:=15 +PKG_VERSION:=2026.9.10 +PKG_RELEASE:=16 PKG_SOURCE:=$(PKG_NAME)-v$(PKG_VERSION)-linux-$(MISE_ARCH)-musl.tar.gz PKG_SOURCE_URL:=https://github.com/jdx/mise/releases/download/v$(PKG_VERSION)/ PKG_HASH:=skip diff --git a/netdata/Makefile b/netdata/Makefile index 42532d551..82727fa69 100644 --- a/netdata/Makefile +++ b/netdata/Makefile @@ -8,8 +8,8 @@ include $(TOPDIR)/rules.mk PKG_NAME:=netdata -PKG_VERSION:=2.11.0 -PKG_RELEASE:=17 +PKG_VERSION:=2.11.1 +PKG_RELEASE:=18 PKG_MAINTAINER:=Josef Schlehofer , Daniel Engberg PKG_LICENSE:=GPL-3.0-or-later diff --git a/wwand/Makefile b/wwand/Makefile index 2397b8d3b..7e972acf2 100644 --- a/wwand/Makefile +++ b/wwand/Makefile @@ -49,12 +49,12 @@ include $(TOPDIR)/rules.mk PKG_NAME:=wwand -PKG_VERSION:=1.6.7 -PKG_RELEASE:=41 +PKG_VERSION:=1.6.7_p10 +PKG_RELEASE:=42 PKG_SOURCE_PROTO:=git PKG_SOURCE_URL:=https://github.com/ddimension/wwand.git -PKG_SOURCE_VERSION:=b5ec86779fb145d23d0fe5085241c8b64f05b930 +PKG_SOURCE_VERSION:=6d135f52ec5a686b162bd6455917ce25c8080ae0 PKG_MIRROR_HASH:=skip PKG_LICENSE:=GPL-2.0-only