@boost33/ui 0.8.0 → 0.8.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (29) hide show
  1. package/CHANGELOG.md +83 -120
  2. package/dist/components/AccountMenu/AccountMenu.d.ts +42 -32
  3. package/dist/components/AccountMenu/AccountMenu.js +66 -48
  4. package/dist/components/AccountMenu/AccountMenu.js.map +1 -1
  5. package/dist/components/AccountMenu/AccountMenu.module.css.js +44 -38
  6. package/dist/components/AccountMenu/AccountMenu.module.css.js.map +1 -1
  7. package/dist/components/AccountMenu/StandardAccountMenu.d.ts +87 -0
  8. package/dist/components/AccountMenu/StandardAccountMenu.js +86 -0
  9. package/dist/components/AccountMenu/StandardAccountMenu.js.map +1 -0
  10. package/dist/components/AccountMenu/icons.d.ts +2 -2
  11. package/dist/components/AccountMenu/icons.js +21 -8
  12. package/dist/components/AccountMenu/icons.js.map +1 -1
  13. package/dist/components/AccountMenu/initials.d.ts +11 -0
  14. package/dist/components/AccountMenu/initials.js +8 -0
  15. package/dist/components/AccountMenu/initials.js.map +1 -0
  16. package/dist/components/AccountMenu/labels.d.ts +64 -3
  17. package/dist/components/AccountMenu/labels.js +33 -5
  18. package/dist/components/AccountMenu/labels.js.map +1 -1
  19. package/dist/components/AccountMenu/use-menu.d.ts +34 -0
  20. package/dist/components/AccountMenu/use-menu.js +102 -0
  21. package/dist/components/AccountMenu/use-menu.js.map +1 -0
  22. package/dist/components/TopBar/TopBar.d.ts +8 -1
  23. package/dist/components/TopBar/TopBar.js +19 -16
  24. package/dist/components/TopBar/TopBar.js.map +1 -1
  25. package/dist/index.d.ts +4 -2
  26. package/dist/index.js +40 -36
  27. package/dist/index.js.map +1 -1
  28. package/dist/style.css +1 -1
  29. package/package.json +1 -1
@@ -0,0 +1,102 @@
1
+ import { useState as K, useRef as a, useId as O, useCallback as m, useEffect as E } from "react";
2
+ function R(i, r, u) {
3
+ if (u === 0) return null;
4
+ switch (i) {
5
+ case "ArrowDown":
6
+ return r < 0 ? 0 : (r + 1) % u;
7
+ case "ArrowUp":
8
+ return r < 0 ? u - 1 : (r - 1 + u) % u;
9
+ case "Home":
10
+ return 0;
11
+ case "End":
12
+ return u - 1;
13
+ default:
14
+ return null;
15
+ }
16
+ }
17
+ function v(i) {
18
+ return i === "ArrowDown" ? "first" : i === "ArrowUp" ? "last" : null;
19
+ }
20
+ const b = "[role='menuitem']:not([disabled])";
21
+ function C({ defaultOpen: i = !1 } = {}) {
22
+ const [r, u] = K(i), c = a(null), d = a(null), p = a(null), f = a(null), g = O(), l = m(
23
+ () => {
24
+ var e;
25
+ return Array.from(((e = p.current) == null ? void 0 : e.querySelectorAll(b)) ?? []);
26
+ },
27
+ []
28
+ ), w = m((e) => {
29
+ f.current = e, u(!0);
30
+ }, []), s = m((e) => {
31
+ var n;
32
+ u(!1), e && ((n = d.current) == null || n.focus());
33
+ }, []);
34
+ E(() => {
35
+ if (!r || !f.current) return;
36
+ const e = l(), n = f.current === "first" ? e[0] : e[e.length - 1];
37
+ f.current = null, n == null || n.focus();
38
+ }, [r, l]), E(() => {
39
+ if (!r) return;
40
+ function e(n) {
41
+ var t;
42
+ (t = c.current) != null && t.contains(n.target) || (s(!1), setTimeout(() => {
43
+ var y, D;
44
+ const o = document.activeElement;
45
+ (!o || o === document.body || (y = c.current) != null && y.contains(o)) && ((D = d.current) == null || D.focus());
46
+ }, 0));
47
+ }
48
+ return document.addEventListener("pointerdown", e), () => document.removeEventListener("pointerdown", e);
49
+ }, [r, s]);
50
+ function T() {
51
+ r ? s(!1) : w("first");
52
+ }
53
+ function h(e) {
54
+ var t;
55
+ const n = v(e.key);
56
+ if (n)
57
+ if (e.preventDefault(), r) {
58
+ const o = l();
59
+ (t = n === "first" ? o[0] : o[o.length - 1]) == null || t.focus();
60
+ } else
61
+ w(n);
62
+ }
63
+ function k(e) {
64
+ if (e.key === "Escape") {
65
+ e.preventDefault(), s(!0);
66
+ return;
67
+ }
68
+ const n = l(), t = n.indexOf(document.activeElement);
69
+ if (e.key === "Tab") {
70
+ t >= 0 && s(!0);
71
+ return;
72
+ }
73
+ const o = R(e.key, t, n.length);
74
+ o !== null && (e.preventDefault(), n[o].focus());
75
+ }
76
+ function A(e) {
77
+ var t;
78
+ if (!r) return;
79
+ const n = e.relatedTarget;
80
+ n && !((t = c.current) != null && t.contains(n)) && s(!1);
81
+ }
82
+ return {
83
+ open: r,
84
+ close: s,
85
+ rootProps: { ref: c, onBlur: A },
86
+ triggerProps: {
87
+ ref: d,
88
+ "aria-haspopup": "menu",
89
+ "aria-expanded": r,
90
+ "aria-controls": r ? g : void 0,
91
+ onClick: T,
92
+ onKeyDown: h
93
+ },
94
+ menuProps: { ref: p, id: g, role: "menu", onKeyDown: k }
95
+ };
96
+ }
97
+ export {
98
+ R as menuKeyTarget,
99
+ v as triggerKeyOpens,
100
+ C as useMenu
101
+ };
102
+ //# sourceMappingURL=use-menu.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"use-menu.js","sources":["../../../src/components/AccountMenu/use-menu.ts"],"sourcesContent":["import {\n useCallback,\n useEffect,\n useId,\n useRef,\n useState,\n type FocusEvent as ReactFocusEvent,\n type KeyboardEvent as ReactKeyboardEvent,\n} from 'react'\n\n// Menu-button behaviour for AccountMenu (B33-493 Stage B), ported from the Hub's\n// working menu (boost33-hub src/app/use-menu.ts), which is the referent Jamal\n// named on 5 Nov 2026. The WAI-ARIA menu button pattern:\n//\n// - Opening moves focus to the first item (ArrowUp on the trigger: the last).\n// - ArrowDown/ArrowUp wrap through the items, Home/End jump to the ends.\n// - Items carry tabIndex -1, so Tab leaves the menu instead of walking it, and\n// leaving closes it.\n// - Escape closes and returns focus to the trigger. So does a click outside,\n// unless that click put focus somewhere else on purpose.\n//\n// This is a menu, not the disclosure AppSwitcher is (ADR-0010): the Hub's is a\n// menu, every app's avatar is to behave exactly as the Hub's does, and a person\n// moving between the Hub and a product must not meet two keyboard models behind\n// the same avatar. The two key decisions are split out as pure functions so they\n// test without a DOM, as the Hub's are.\n\nexport type MenuFocus = 'first' | 'last'\n\n/**\n * Where a key press inside an open menu moves focus, as an item index, or null\n * when the key is not a menu key. `current` is -1 when focus is on something\n * that is not an item.\n */\nexport function menuKeyTarget(key: string, current: number, count: number): number | null {\n if (count === 0) return null\n switch (key) {\n case 'ArrowDown':\n return current < 0 ? 0 : (current + 1) % count\n case 'ArrowUp':\n return current < 0 ? count - 1 : (current - 1 + count) % count\n case 'Home':\n return 0\n case 'End':\n return count - 1\n default:\n return null\n }\n}\n\n/** What a key press on the closed trigger does: open at one end, or nothing. */\nexport function triggerKeyOpens(key: string): MenuFocus | null {\n if (key === 'ArrowDown') return 'first'\n if (key === 'ArrowUp') return 'last'\n return null\n}\n\nconst ITEM_SELECTOR = \"[role='menuitem']:not([disabled])\"\n\nexport function useMenu({ defaultOpen = false }: { defaultOpen?: boolean } = {}) {\n const [open, setOpen] = useState(defaultOpen)\n const rootRef = useRef<HTMLDivElement>(null)\n const triggerRef = useRef<HTMLButtonElement>(null)\n const menuRef = useRef<HTMLDivElement>(null)\n const focusOnOpen = useRef<MenuFocus | null>(null)\n const menuId = useId()\n\n const items = useCallback(\n () => Array.from(menuRef.current?.querySelectorAll<HTMLElement>(ITEM_SELECTOR) ?? []),\n [],\n )\n\n const show = useCallback((at: MenuFocus) => {\n focusOnOpen.current = at\n setOpen(true)\n }, [])\n\n const close = useCallback((returnFocus: boolean) => {\n setOpen(false)\n if (returnFocus) triggerRef.current?.focus()\n }, [])\n\n // Focus lands on an item once the menu is in the DOM. A menu drawn open by\n // `defaultOpen` takes no focus: nobody opened it, so nothing should move.\n useEffect(() => {\n if (!open || !focusOnOpen.current) return\n const list = items()\n const target = focusOnOpen.current === 'first' ? list[0] : list[list.length - 1]\n focusOnOpen.current = null\n target?.focus()\n }, [open, items])\n\n // `pointerdown` rather than `click`: a press that starts inside the menu and\n // ends outside it should not count as leaving.\n useEffect(() => {\n if (!open) return\n function onPointerDown(event: PointerEvent) {\n if (rootRef.current?.contains(event.target as Node)) return\n close(false)\n // A click on blank page leaves focus nowhere; put it back on the\n // trigger. A click on another control keeps the focus it just took.\n setTimeout(() => {\n const active = document.activeElement\n if (!active || active === document.body || rootRef.current?.contains(active)) {\n triggerRef.current?.focus()\n }\n }, 0)\n }\n document.addEventListener('pointerdown', onPointerDown)\n return () => document.removeEventListener('pointerdown', onPointerDown)\n }, [open, close])\n\n function onTriggerClick() {\n if (open) close(false)\n else show('first')\n }\n\n function onTriggerKeyDown(event: ReactKeyboardEvent<HTMLButtonElement>) {\n const at = triggerKeyOpens(event.key)\n if (!at) return\n event.preventDefault()\n if (open) {\n const list = items()\n ;(at === 'first' ? list[0] : list[list.length - 1])?.focus()\n } else {\n show(at)\n }\n }\n\n function onMenuKeyDown(event: ReactKeyboardEvent<HTMLDivElement>) {\n if (event.key === 'Escape') {\n event.preventDefault()\n close(true)\n return\n }\n const list = items()\n const current = list.indexOf(document.activeElement as HTMLElement)\n if (event.key === 'Tab') {\n // Focus goes to the trigger first so the browser's own Tab moves on from\n // there, to the next thing on the page.\n if (current >= 0) close(true)\n return\n }\n const next = menuKeyTarget(event.key, current, list.length)\n if (next === null) return\n event.preventDefault()\n list[next]!.focus()\n }\n\n /** `focusout` on the whole widget: focus leaving it for somewhere else closes it. */\n function onRootBlur(event: ReactFocusEvent<HTMLDivElement>) {\n if (!open) return\n const to = event.relatedTarget as Node | null\n // Null is focus going nowhere (a blank-page click, the window losing focus,\n // the focused item unmounting); the pointerdown handler covers the click,\n // and the others should not close anything.\n if (to && !rootRef.current?.contains(to)) close(false)\n }\n\n return {\n open,\n close,\n rootProps: { ref: rootRef, onBlur: onRootBlur },\n triggerProps: {\n ref: triggerRef,\n 'aria-haspopup': 'menu' as const,\n 'aria-expanded': open,\n 'aria-controls': open ? menuId : undefined,\n onClick: onTriggerClick,\n onKeyDown: onTriggerKeyDown,\n },\n menuProps: { ref: menuRef, id: menuId, role: 'menu' as const, onKeyDown: onMenuKeyDown },\n }\n}\n"],"names":["menuKeyTarget","key","current","count","triggerKeyOpens","ITEM_SELECTOR","useMenu","defaultOpen","open","setOpen","useState","rootRef","useRef","triggerRef","menuRef","focusOnOpen","menuId","useId","items","useCallback","_a","show","at","close","returnFocus","useEffect","list","target","onPointerDown","event","active","_b","onTriggerClick","onTriggerKeyDown","onMenuKeyDown","next","onRootBlur","to"],"mappings":";AAkCO,SAASA,EAAcC,GAAaC,GAAiBC,GAA8B;AACxF,MAAIA,MAAU,EAAG,QAAO;AACxB,UAAQF,GAAA;AAAA,IACN,KAAK;AACH,aAAOC,IAAU,IAAI,KAAKA,IAAU,KAAKC;AAAA,IAC3C,KAAK;AACH,aAAOD,IAAU,IAAIC,IAAQ,KAAKD,IAAU,IAAIC,KAASA;AAAA,IAC3D,KAAK;AACH,aAAO;AAAA,IACT,KAAK;AACH,aAAOA,IAAQ;AAAA,IACjB;AACE,aAAO;AAAA,EAAA;AAEb;AAGO,SAASC,EAAgBH,GAA+B;AAC7D,SAAIA,MAAQ,cAAoB,UAC5BA,MAAQ,YAAkB,SACvB;AACT;AAEA,MAAMI,IAAgB;AAEf,SAASC,EAAQ,EAAE,aAAAC,IAAc,GAAA,IAAqC,CAAA,GAAI;AAC/E,QAAM,CAACC,GAAMC,CAAO,IAAIC,EAASH,CAAW,GACtCI,IAAUC,EAAuB,IAAI,GACrCC,IAAaD,EAA0B,IAAI,GAC3CE,IAAUF,EAAuB,IAAI,GACrCG,IAAcH,EAAyB,IAAI,GAC3CI,IAASC,EAAA,GAETC,IAAQC;AAAA,IACZ,MAAA;;AAAM,mBAAM,OAAKC,IAAAN,EAAQ,YAAR,gBAAAM,EAAiB,iBAA8Bf,OAAkB,EAAE;AAAA;AAAA,IACpF,CAAA;AAAA,EAAC,GAGGgB,IAAOF,EAAY,CAACG,MAAkB;AAC1C,IAAAP,EAAY,UAAUO,GACtBb,EAAQ,EAAI;AAAA,EACd,GAAG,CAAA,CAAE,GAECc,IAAQJ,EAAY,CAACK,MAAyB;;AAClD,IAAAf,EAAQ,EAAK,GACTe,OAAaJ,IAAAP,EAAW,YAAX,QAAAO,EAAoB;AAAA,EACvC,GAAG,CAAA,CAAE;AAIL,EAAAK,EAAU,MAAM;AACd,QAAI,CAACjB,KAAQ,CAACO,EAAY,QAAS;AACnC,UAAMW,IAAOR,EAAA,GACPS,IAASZ,EAAY,YAAY,UAAUW,EAAK,CAAC,IAAIA,EAAKA,EAAK,SAAS,CAAC;AAC/E,IAAAX,EAAY,UAAU,MACtBY,KAAA,QAAAA,EAAQ;AAAA,EACV,GAAG,CAACnB,GAAMU,CAAK,CAAC,GAIhBO,EAAU,MAAM;AACd,QAAI,CAACjB,EAAM;AACX,aAASoB,EAAcC,GAAqB;;AAC1C,OAAIT,IAAAT,EAAQ,YAAR,QAAAS,EAAiB,SAASS,EAAM,YACpCN,EAAM,EAAK,GAGX,WAAW,MAAM;;AACf,cAAMO,IAAS,SAAS;AACxB,SAAI,CAACA,KAAUA,MAAW,SAAS,SAAQV,IAAAT,EAAQ,YAAR,QAAAS,EAAiB,SAASU,SACnEC,IAAAlB,EAAW,YAAX,QAAAkB,EAAoB;AAAA,MAExB,GAAG,CAAC;AAAA,IACN;AACA,oBAAS,iBAAiB,eAAeH,CAAa,GAC/C,MAAM,SAAS,oBAAoB,eAAeA,CAAa;AAAA,EACxE,GAAG,CAACpB,GAAMe,CAAK,CAAC;AAEhB,WAASS,IAAiB;AACxB,IAAIxB,MAAY,EAAK,MACX,OAAO;AAAA,EACnB;AAEA,WAASyB,EAAiBJ,GAA8C;;AACtE,UAAMP,IAAKlB,EAAgByB,EAAM,GAAG;AACpC,QAAKP;AAEL,UADAO,EAAM,eAAA,GACFrB,GAAM;AACR,cAAMkB,IAAOR,EAAA;AACZ,SAACE,IAAAE,MAAO,UAAUI,EAAK,CAAC,IAAIA,EAAKA,EAAK,SAAS,CAAC,MAA/C,QAAAN,EAAmD;AAAA,MACvD;AACE,QAAAC,EAAKC,CAAE;AAAA,EAEX;AAEA,WAASY,EAAcL,GAA2C;AAChE,QAAIA,EAAM,QAAQ,UAAU;AAC1B,MAAAA,EAAM,eAAA,GACNN,EAAM,EAAI;AACV;AAAA,IACF;AACA,UAAMG,IAAOR,EAAA,GACPhB,IAAUwB,EAAK,QAAQ,SAAS,aAA4B;AAClE,QAAIG,EAAM,QAAQ,OAAO;AAGvB,MAAI3B,KAAW,KAAGqB,EAAM,EAAI;AAC5B;AAAA,IACF;AACA,UAAMY,IAAOnC,EAAc6B,EAAM,KAAK3B,GAASwB,EAAK,MAAM;AAC1D,IAAIS,MAAS,SACbN,EAAM,eAAA,GACNH,EAAKS,CAAI,EAAG,MAAA;AAAA,EACd;AAGA,WAASC,EAAWP,GAAwC;;AAC1D,QAAI,CAACrB,EAAM;AACX,UAAM6B,IAAKR,EAAM;AAIjB,IAAIQ,KAAM,GAACjB,IAAAT,EAAQ,YAAR,QAAAS,EAAiB,SAASiB,SAAW,EAAK;AAAA,EACvD;AAEA,SAAO;AAAA,IACL,MAAA7B;AAAA,IACA,OAAAe;AAAA,IACA,WAAW,EAAE,KAAKZ,GAAS,QAAQyB,EAAA;AAAA,IACnC,cAAc;AAAA,MACZ,KAAKvB;AAAA,MACL,iBAAiB;AAAA,MACjB,iBAAiBL;AAAA,MACjB,iBAAiBA,IAAOQ,IAAS;AAAA,MACjC,SAASgB;AAAA,MACT,WAAWC;AAAA,IAAA;AAAA,IAEb,WAAW,EAAE,KAAKnB,GAAS,IAAIE,GAAQ,MAAM,QAAiB,WAAWkB,EAAA;AAAA,EAAc;AAE3F;"}
@@ -43,6 +43,13 @@ export interface TopBarProps {
43
43
  * open from it is left out of 0.8.0 with no trigger and no shortcut.
44
44
  */
45
45
  actions?: ReactNode;
46
+ /**
47
+ * The account menu, at the far right of the bar after `actions` (B33-493). A
48
+ * slot: pass `StandardAccountMenu`, or `AccountMenu` with rows of your own. Its
49
+ * panel opens under the avatar, aligned to the bar's right edge. Every app
50
+ * puts the same menu here, so a person meets one account menu across Boost33.
51
+ */
52
+ account?: ReactNode;
46
53
  /** The centre group's two labels. Each field defaults to English. */
47
54
  labels?: Partial<TopBarLabels>;
48
55
  /**
@@ -56,4 +63,4 @@ export interface TopBarProps {
56
63
  */
57
64
  breadcrumb?: ReactNode;
58
65
  }
59
- export declare function TopBar({ sidebarToggle, start, switcher, tokens, actions, labels, breadcrumb }: TopBarProps): import("react").JSX.Element;
66
+ export declare function TopBar({ sidebarToggle, start, switcher, tokens, actions, account, labels, breadcrumb }: TopBarProps): import("react").JSX.Element;
@@ -1,29 +1,32 @@
1
- import { jsxs as l, Fragment as c, jsx as n } from "react/jsx-runtime";
2
- import { warnDeprecatedProp as h } from "../../deprecated-prop-warning.js";
3
- import { resolveTopBarLabels as u } from "./labels.js";
4
- import e from "./TopBar.module.css.js";
5
- function T({ sidebarToggle: o, start: d, switcher: r, tokens: a, actions: i, labels: t, breadcrumb: m }) {
6
- m != null && h("TopBar.breadcrumb");
7
- const s = u(t), p = r != null || a != null;
8
- return /* @__PURE__ */ l("header", { className: e.bar, children: [
9
- /* @__PURE__ */ l("div", { className: e.start, children: [
1
+ import { jsxs as e, Fragment as s, jsx as c } from "react/jsx-runtime";
2
+ import { warnDeprecatedProp as u } from "../../deprecated-prop-warning.js";
3
+ import { resolveTopBarLabels as f } from "./labels.js";
4
+ import l from "./TopBar.module.css.js";
5
+ function x({ sidebarToggle: o, start: d, switcher: r, tokens: a, actions: i, account: t, labels: m, breadcrumb: p }) {
6
+ p != null && u("TopBar.breadcrumb");
7
+ const n = f(m), h = r != null || a != null;
8
+ return /* @__PURE__ */ e("header", { className: l.bar, children: [
9
+ /* @__PURE__ */ e("div", { className: l.start, children: [
10
10
  o,
11
11
  d
12
12
  ] }),
13
- p && /* @__PURE__ */ l("div", { className: e.centre, children: [
14
- r != null && /* @__PURE__ */ l(c, { children: [
15
- /* @__PURE__ */ n("span", { className: e.label, children: s.switchTools }),
13
+ h && /* @__PURE__ */ e("div", { className: l.centre, children: [
14
+ r != null && /* @__PURE__ */ e(s, { children: [
15
+ /* @__PURE__ */ c("span", { className: l.label, children: n.switchTools }),
16
16
  r
17
17
  ] }),
18
- a != null && /* @__PURE__ */ l(c, { children: [
19
- /* @__PURE__ */ n("span", { className: e.label, "data-after-switcher": r != null ? "true" : void 0, children: s.checkTokens }),
18
+ a != null && /* @__PURE__ */ e(s, { children: [
19
+ /* @__PURE__ */ c("span", { className: l.label, "data-after-switcher": r != null ? "true" : void 0, children: n.checkTokens }),
20
20
  a
21
21
  ] })
22
22
  ] }),
23
- /* @__PURE__ */ n("div", { className: e.end, children: i })
23
+ /* @__PURE__ */ e("div", { className: l.end, children: [
24
+ i,
25
+ t
26
+ ] })
24
27
  ] });
25
28
  }
26
29
  export {
27
- T as TopBar
30
+ x as TopBar
28
31
  };
29
32
  //# sourceMappingURL=TopBar.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"TopBar.js","sources":["../../../src/components/TopBar/TopBar.tsx"],"sourcesContent":["import type { ReactNode } from 'react'\nimport { warnDeprecatedProp } from '../../deprecated-prop-warning'\nimport { resolveTopBarLabels, type TopBarLabels } from './labels'\nimport styles from './TopBar.module.css'\n\nexport interface TopBarProps {\n /**\n * The control that collapses the sidebar to its 56px rail and back, at the\n * far left of the bar, before the mark (B33-1712). A slot: the product's own\n * button, which owns the collapsed state.\n *\n * It has a slot of its own because the bar stopped drawing `breadcrumb` in\n * 0.8.0, and a consumer that kept its toggle inside the breadcrumb -- the\n * Wallet did -- would otherwise lose its only way into and out of the rail on\n * upgrade, silently: the pixel diff passed the bar at 0.19% with the toggle\n * gone. No board draws it; the rail keeps working with no new design.\n */\n sidebarToggle?: ReactNode\n /**\n * The left of the bar: the Boost33 mark and the organisation's pill, as the 3\n * Nov 2026 redesign draws it (B33-1712, board 20). A slot. Inside `AppShell`\n * the shell fills it from its own `mark`, `hubHref` and `org` props, so a\n * consumer of the shell does not set this.\n */\n start?: ReactNode\n /**\n * The app switcher, at the centre of the bar after its \"Switch Tools →\"\n * label. A slot: pass `AppSwitcher`. Omit it and neither it nor its label is\n * drawn. Inside `AppShell`, the shell's `switcher` prop lands here.\n */\n switcher?: ReactNode\n /**\n * The token chip, after the switcher and its \"Check Your Tokens →\" label. A\n * slot: pass `WalletChip` with `placement=\"topbar\"`. Omit it and neither it\n * nor its label is drawn. Inside `AppShell`, the shell's `wallet` prop lands\n * here.\n */\n tokens?: ReactNode\n /**\n * The right of the bar: the notification button and the account avatar\n * (board 20). A slot -- the product's own, or the package's\n * `NotificationButton` beside the consumer's avatar.\n *\n * Search is not here and nothing replaces it: Jamal removed it on 3 Nov 2026\n * until the feature is built (B33-1710), and the CommandPalette that would\n * open from it is left out of 0.8.0 with no trigger and no shortcut.\n */\n actions?: ReactNode\n /** The centre group's two labels. Each field defaults to English. */\n labels?: Partial<TopBarLabels>\n /**\n * Was the breadcrumb on the left of the bar. **Not drawn since 0.8.0**: the\n * redesign puts the mark and the organisation there, and the page's own\n * `PageHeader` names where you are. Optional so an existing call site still\n * compiles.\n *\n * @deprecated Rendered nowhere since 0.8.0 (B33-1712). Stop passing it; in\n * development, passing it logs a console warning once.\n */\n breadcrumb?: ReactNode\n}\n\n// The bar across the top of every screen (B33-1712). Three regions: the mark\n// and organisation on the left, the switcher and token chip in a centred group,\n// and the product's actions on the right. Left and right take equal shares of\n// what the centre leaves, which is what holds the centre group in the middle of\n// the bar whatever either side holds.\n//\n// A Server Component: no state, no handlers. The two controls in the centre are\n// client components passed in as slots.\nexport function TopBar({ sidebarToggle, start, switcher, tokens, actions, labels, breadcrumb }: TopBarProps) {\n if (breadcrumb != null) warnDeprecatedProp('TopBar.breadcrumb')\n const t = resolveTopBarLabels(labels)\n const hasCentre = switcher != null || tokens != null\n\n // A <header>, so the bar is the page's banner landmark and a screen-reader\n // user can jump to it, and an end-to-end test can scope to it (score-main,\n // 0.8.0-next.2). Inside AppShell it is never within <main> or an <article>,\n // which is what makes a <header> a banner. `display: grid` is set on the\n // class, so the element swap changes no box.\n return (\n <header className={styles.bar}>\n <div className={styles.start}>\n {sidebarToggle}\n {start}\n </div>\n {hasCentre && (\n <div className={styles.centre}>\n {switcher != null && (\n <>\n <span className={styles.label}>{t.switchTools}</span>\n {switcher}\n </>\n )}\n {tokens != null && (\n <>\n {/* The second label keeps 32px clear of the switcher, so each\n label reads as belonging to the control after it, not the one\n before it (board 20). With no switcher there is nothing to\n keep clear of, and the padding goes. */}\n <span className={styles.label} data-after-switcher={switcher != null ? 'true' : undefined}>\n {t.checkTokens}\n </span>\n {tokens}\n </>\n )}\n </div>\n )}\n <div className={styles.end}>{actions}</div>\n </header>\n )\n}\n"],"names":["TopBar","sidebarToggle","start","switcher","tokens","actions","labels","breadcrumb","warnDeprecatedProp","t","resolveTopBarLabels","hasCentre","jsxs","styles","Fragment","jsx"],"mappings":";;;;AAsEO,SAASA,EAAO,EAAE,eAAAC,GAAe,OAAAC,GAAO,UAAAC,GAAU,QAAAC,GAAQ,SAAAC,GAAS,QAAAC,GAAQ,YAAAC,KAA2B;AAC3G,EAAIA,KAAc,QAAMC,EAAmB,mBAAmB;AAC9D,QAAMC,IAAIC,EAAoBJ,CAAM,GAC9BK,IAAYR,KAAY,QAAQC,KAAU;AAOhD,SACE,gBAAAQ,EAAC,UAAA,EAAO,WAAWC,EAAO,KACxB,UAAA;AAAA,IAAA,gBAAAD,EAAC,OAAA,EAAI,WAAWC,EAAO,OACpB,UAAA;AAAA,MAAAZ;AAAA,MACAC;AAAA,IAAA,GACH;AAAA,IACCS,KACC,gBAAAC,EAAC,OAAA,EAAI,WAAWC,EAAO,QACpB,UAAA;AAAA,MAAAV,KAAY,QACX,gBAAAS,EAAAE,GAAA,EACE,UAAA;AAAA,QAAA,gBAAAC,EAAC,QAAA,EAAK,WAAWF,EAAO,OAAQ,YAAE,aAAY;AAAA,QAC7CV;AAAA,MAAA,GACH;AAAA,MAEDC,KAAU,QACT,gBAAAQ,EAAAE,GAAA,EAKE,UAAA;AAAA,QAAA,gBAAAC,EAAC,QAAA,EAAK,WAAWF,EAAO,OAAO,uBAAqBV,KAAY,OAAO,SAAS,QAC7E,UAAAM,EAAE,YAAA,CACL;AAAA,QACCL;AAAA,MAAA,EAAA,CACH;AAAA,IAAA,GAEJ;AAAA,IAEF,gBAAAW,EAAC,OAAA,EAAI,WAAWF,EAAO,KAAM,UAAAR,EAAA,CAAQ;AAAA,EAAA,GACvC;AAEJ;"}
1
+ {"version":3,"file":"TopBar.js","sources":["../../../src/components/TopBar/TopBar.tsx"],"sourcesContent":["import type { ReactNode } from 'react'\nimport { warnDeprecatedProp } from '../../deprecated-prop-warning'\nimport { resolveTopBarLabels, type TopBarLabels } from './labels'\nimport styles from './TopBar.module.css'\n\nexport interface TopBarProps {\n /**\n * The control that collapses the sidebar to its 56px rail and back, at the\n * far left of the bar, before the mark (B33-1712). A slot: the product's own\n * button, which owns the collapsed state.\n *\n * It has a slot of its own because the bar stopped drawing `breadcrumb` in\n * 0.8.0, and a consumer that kept its toggle inside the breadcrumb -- the\n * Wallet did -- would otherwise lose its only way into and out of the rail on\n * upgrade, silently: the pixel diff passed the bar at 0.19% with the toggle\n * gone. No board draws it; the rail keeps working with no new design.\n */\n sidebarToggle?: ReactNode\n /**\n * The left of the bar: the Boost33 mark and the organisation's pill, as the 3\n * Nov 2026 redesign draws it (B33-1712, board 20). A slot. Inside `AppShell`\n * the shell fills it from its own `mark`, `hubHref` and `org` props, so a\n * consumer of the shell does not set this.\n */\n start?: ReactNode\n /**\n * The app switcher, at the centre of the bar after its \"Switch Tools →\"\n * label. A slot: pass `AppSwitcher`. Omit it and neither it nor its label is\n * drawn. Inside `AppShell`, the shell's `switcher` prop lands here.\n */\n switcher?: ReactNode\n /**\n * The token chip, after the switcher and its \"Check Your Tokens →\" label. A\n * slot: pass `WalletChip` with `placement=\"topbar\"`. Omit it and neither it\n * nor its label is drawn. Inside `AppShell`, the shell's `wallet` prop lands\n * here.\n */\n tokens?: ReactNode\n /**\n * The right of the bar: the notification button and the account avatar\n * (board 20). A slot -- the product's own, or the package's\n * `NotificationButton` beside the consumer's avatar.\n *\n * Search is not here and nothing replaces it: Jamal removed it on 3 Nov 2026\n * until the feature is built (B33-1710), and the CommandPalette that would\n * open from it is left out of 0.8.0 with no trigger and no shortcut.\n */\n actions?: ReactNode\n /**\n * The account menu, at the far right of the bar after `actions` (B33-493). A\n * slot: pass `StandardAccountMenu`, or `AccountMenu` with rows of your own. Its\n * panel opens under the avatar, aligned to the bar's right edge. Every app\n * puts the same menu here, so a person meets one account menu across Boost33.\n */\n account?: ReactNode\n /** The centre group's two labels. Each field defaults to English. */\n labels?: Partial<TopBarLabels>\n /**\n * Was the breadcrumb on the left of the bar. **Not drawn since 0.8.0**: the\n * redesign puts the mark and the organisation there, and the page's own\n * `PageHeader` names where you are. Optional so an existing call site still\n * compiles.\n *\n * @deprecated Rendered nowhere since 0.8.0 (B33-1712). Stop passing it; in\n * development, passing it logs a console warning once.\n */\n breadcrumb?: ReactNode\n}\n\n// The bar across the top of every screen (B33-1712). Three regions: the mark\n// and organisation on the left, the switcher and token chip in a centred group,\n// and the product's actions on the right. Left and right take equal shares of\n// what the centre leaves, which is what holds the centre group in the middle of\n// the bar whatever either side holds.\n//\n// A Server Component: no state, no handlers. The two controls in the centre are\n// client components passed in as slots.\nexport function TopBar({ sidebarToggle, start, switcher, tokens, actions, account, labels, breadcrumb }: TopBarProps) {\n if (breadcrumb != null) warnDeprecatedProp('TopBar.breadcrumb')\n const t = resolveTopBarLabels(labels)\n const hasCentre = switcher != null || tokens != null\n\n // A <header>, so the bar is the page's banner landmark and a screen-reader\n // user can jump to it, and an end-to-end test can scope to it (score-main,\n // 0.8.0-next.2). Inside AppShell it is never within <main> or an <article>,\n // which is what makes a <header> a banner. `display: grid` is set on the\n // class, so the element swap changes no box.\n return (\n <header className={styles.bar}>\n <div className={styles.start}>\n {sidebarToggle}\n {start}\n </div>\n {hasCentre && (\n <div className={styles.centre}>\n {switcher != null && (\n <>\n <span className={styles.label}>{t.switchTools}</span>\n {switcher}\n </>\n )}\n {tokens != null && (\n <>\n {/* The second label keeps 32px clear of the switcher, so each\n label reads as belonging to the control after it, not the one\n before it (board 20). With no switcher there is nothing to\n keep clear of, and the padding goes. */}\n <span className={styles.label} data-after-switcher={switcher != null ? 'true' : undefined}>\n {t.checkTokens}\n </span>\n {tokens}\n </>\n )}\n </div>\n )}\n <div className={styles.end}>\n {actions}\n {account}\n </div>\n </header>\n )\n}\n"],"names":["TopBar","sidebarToggle","start","switcher","tokens","actions","account","labels","breadcrumb","warnDeprecatedProp","t","resolveTopBarLabels","hasCentre","jsxs","styles","Fragment","jsx"],"mappings":";;;;AA6EO,SAASA,EAAO,EAAE,eAAAC,GAAe,OAAAC,GAAO,UAAAC,GAAU,QAAAC,GAAQ,SAAAC,GAAS,SAAAC,GAAS,QAAAC,GAAQ,YAAAC,KAA2B;AACpH,EAAIA,KAAc,QAAMC,EAAmB,mBAAmB;AAC9D,QAAMC,IAAIC,EAAoBJ,CAAM,GAC9BK,IAAYT,KAAY,QAAQC,KAAU;AAOhD,SACE,gBAAAS,EAAC,UAAA,EAAO,WAAWC,EAAO,KACxB,UAAA;AAAA,IAAA,gBAAAD,EAAC,OAAA,EAAI,WAAWC,EAAO,OACpB,UAAA;AAAA,MAAAb;AAAA,MACAC;AAAA,IAAA,GACH;AAAA,IACCU,KACC,gBAAAC,EAAC,OAAA,EAAI,WAAWC,EAAO,QACpB,UAAA;AAAA,MAAAX,KAAY,QACX,gBAAAU,EAAAE,GAAA,EACE,UAAA;AAAA,QAAA,gBAAAC,EAAC,QAAA,EAAK,WAAWF,EAAO,OAAQ,YAAE,aAAY;AAAA,QAC7CX;AAAA,MAAA,GACH;AAAA,MAEDC,KAAU,QACT,gBAAAS,EAAAE,GAAA,EAKE,UAAA;AAAA,QAAA,gBAAAC,EAAC,QAAA,EAAK,WAAWF,EAAO,OAAO,uBAAqBX,KAAY,OAAO,SAAS,QAC7E,UAAAO,EAAE,YAAA,CACL;AAAA,QACCN;AAAA,MAAA,EAAA,CACH;AAAA,IAAA,GAEJ;AAAA,IAEF,gBAAAS,EAAC,OAAA,EAAI,WAAWC,EAAO,KACpB,UAAA;AAAA,MAAAT;AAAA,MACAC;AAAA,IAAA,EAAA,CACH;AAAA,EAAA,GACF;AAEJ;"}
package/dist/index.d.ts CHANGED
@@ -35,9 +35,11 @@ export type { NotificationCenterProps, NotificationCenterItem, } from './compone
35
35
  export { defaultNotificationCenterLabels } from './components/NotificationCenter/labels';
36
36
  export type { NotificationCenterLabels } from './components/NotificationCenter/labels';
37
37
  export { AccountMenu } from './components/AccountMenu/AccountMenu';
38
+ export { StandardAccountMenu, standardAccountMenuGroups } from './components/AccountMenu/StandardAccountMenu';
39
+ export type { AccountMenuRole, StandardAccountMenuProps, StandardAccountMenuRowsOptions, } from './components/AccountMenu/StandardAccountMenu';
38
40
  export type { AccountMenuProps, AccountMenuPerson, AccountMenuOrg, AccountMenuGroup, AccountMenuItem, } from './components/AccountMenu/AccountMenu';
39
- export { defaultAccountMenuLabels } from './components/AccountMenu/labels';
40
- export type { AccountMenuLabels } from './components/AccountMenu/labels';
41
+ export { defaultAccountMenuLabels, defaultStandardAccountMenuLabels } from './components/AccountMenu/labels';
42
+ export type { AccountMenuLabels, StandardAccountMenuLabels } from './components/AccountMenu/labels';
41
43
  export type { AccountMenuIcon } from './components/AccountMenu/icons';
42
44
  export { CommandPalette } from './components/CommandPalette/CommandPalette';
43
45
  export type { CommandPaletteProps, CommandPaletteGroup, CommandPaletteResult, } from './components/CommandPalette/CommandPalette';
package/dist/index.js CHANGED
@@ -2,63 +2,67 @@
2
2
  import { Sidebar as e } from "./components/Sidebar/Sidebar.js";
3
3
  import { NavSection as p } from "./components/NavSection/NavSection.js";
4
4
  import { Wordmark as m } from "./components/Wordmark/Wordmark.js";
5
- import { BOOST33_MARK_MIN_LEGIBLE_PX as i, Boost33Mark as l } from "./components/Boost33Mark/Boost33Mark.js";
6
- import { ProductMark as d, hasProductMark as u } from "./components/ProductMark/ProductMark.js";
5
+ import { BOOST33_MARK_MIN_LEGIBLE_PX as x, Boost33Mark as u } from "./components/Boost33Mark/Boost33Mark.js";
6
+ import { ProductMark as l, hasProductMark as i } from "./components/ProductMark/ProductMark.js";
7
7
  import { NavItem as s } from "./components/NavItem/NavItem.js";
8
8
  import { WalletChip as h } from "./components/WalletChip/WalletChip.js";
9
9
  import { defaultWalletChipLabels as b } from "./components/WalletChip/labels.js";
10
- import { TopBar as M } from "./components/TopBar/TopBar.js";
11
- import { defaultTopBarLabels as S } from "./components/TopBar/labels.js";
12
- import { NotificationButton as k } from "./components/NotificationButton/NotificationButton.js";
10
+ import { TopBar as S } from "./components/TopBar/TopBar.js";
11
+ import { defaultTopBarLabels as C } from "./components/TopBar/labels.js";
12
+ import { NotificationButton as g } from "./components/NotificationButton/NotificationButton.js";
13
13
  import { defaultNotificationButtonLabels as P } from "./components/NotificationButton/labels.js";
14
14
  import { PageHeader as _ } from "./components/PageHeader/PageHeader.js";
15
15
  import { AppShell as F } from "./components/AppShell/AppShell.js";
16
16
  import { AppSwitcher as I } from "./components/AppSwitcher/AppSwitcher.js";
17
17
  import { defaultAppSwitcherLabels as W } from "./components/AppSwitcher/labels.js";
18
- import { NotificationCenter as O } from "./components/NotificationCenter/NotificationCenter.js";
19
- import { defaultNotificationCenterLabels as G } from "./components/NotificationCenter/labels.js";
18
+ import { NotificationCenter as G } from "./components/NotificationCenter/NotificationCenter.js";
19
+ import { defaultNotificationCenterLabels as D } from "./components/NotificationCenter/labels.js";
20
20
  import { AccountMenu as R } from "./components/AccountMenu/AccountMenu.js";
21
- import { defaultAccountMenuLabels as X } from "./components/AccountMenu/labels.js";
22
- import { CommandPalette as q } from "./components/CommandPalette/CommandPalette.js";
23
- import { defaultCommandPaletteLabels as z } from "./components/CommandPalette/labels.js";
24
- import { DotMatrixLoader as Q } from "./components/DotMatrixLoader/DotMatrixLoader.js";
25
- import { LaunchLoader as Y } from "./components/LaunchLoader/LaunchLoader.js";
26
- import { launchBackdropCss as $ } from "./launch-gradient.js";
27
- import { SettingsFrame as ro } from "./components/SettingsFrame/SettingsFrame.js";
28
- import { defaultSettingsFrameLabels as eo } from "./components/SettingsFrame/labels.js";
29
- import { checkNavHeightBudget as po, navBudgetForViewport as fo, navContentHeight as mo } from "./nav-height-budget.js";
21
+ import { StandardAccountMenu as X, standardAccountMenuGroups as j } from "./components/AccountMenu/StandardAccountMenu.js";
22
+ import { defaultAccountMenuLabels as y, defaultStandardAccountMenuLabels as z } from "./components/AccountMenu/labels.js";
23
+ import { CommandPalette as Q } from "./components/CommandPalette/CommandPalette.js";
24
+ import { defaultCommandPaletteLabels as Y } from "./components/CommandPalette/labels.js";
25
+ import { DotMatrixLoader as $ } from "./components/DotMatrixLoader/DotMatrixLoader.js";
26
+ import { LaunchLoader as to } from "./components/LaunchLoader/LaunchLoader.js";
27
+ import { launchBackdropCss as eo } from "./launch-gradient.js";
28
+ import { SettingsFrame as po } from "./components/SettingsFrame/SettingsFrame.js";
29
+ import { defaultSettingsFrameLabels as mo } from "./components/SettingsFrame/labels.js";
30
+ import { checkNavHeightBudget as xo, navBudgetForViewport as uo, navContentHeight as lo } from "./nav-height-budget.js";
30
31
  export {
31
32
  R as AccountMenu,
32
33
  F as AppShell,
33
34
  I as AppSwitcher,
34
- i as BOOST33_MARK_MIN_LEGIBLE_PX,
35
- l as Boost33Mark,
36
- q as CommandPalette,
37
- Q as DotMatrixLoader,
38
- Y as LaunchLoader,
35
+ x as BOOST33_MARK_MIN_LEGIBLE_PX,
36
+ u as Boost33Mark,
37
+ Q as CommandPalette,
38
+ $ as DotMatrixLoader,
39
+ to as LaunchLoader,
39
40
  s as NavItem,
40
41
  p as NavSection,
41
- k as NotificationButton,
42
- O as NotificationCenter,
42
+ g as NotificationButton,
43
+ G as NotificationCenter,
43
44
  _ as PageHeader,
44
- d as ProductMark,
45
- ro as SettingsFrame,
45
+ l as ProductMark,
46
+ po as SettingsFrame,
46
47
  e as Sidebar,
47
- M as TopBar,
48
+ X as StandardAccountMenu,
49
+ S as TopBar,
48
50
  h as WalletChip,
49
51
  m as Wordmark,
50
- po as checkNavHeightBudget,
51
- X as defaultAccountMenuLabels,
52
+ xo as checkNavHeightBudget,
53
+ y as defaultAccountMenuLabels,
52
54
  W as defaultAppSwitcherLabels,
53
- z as defaultCommandPaletteLabels,
55
+ Y as defaultCommandPaletteLabels,
54
56
  P as defaultNotificationButtonLabels,
55
- G as defaultNotificationCenterLabels,
56
- eo as defaultSettingsFrameLabels,
57
- S as defaultTopBarLabels,
57
+ D as defaultNotificationCenterLabels,
58
+ mo as defaultSettingsFrameLabels,
59
+ z as defaultStandardAccountMenuLabels,
60
+ C as defaultTopBarLabels,
58
61
  b as defaultWalletChipLabels,
59
- u as hasProductMark,
60
- $ as launchBackdropCss,
61
- fo as navBudgetForViewport,
62
- mo as navContentHeight
62
+ i as hasProductMark,
63
+ eo as launchBackdropCss,
64
+ uo as navBudgetForViewport,
65
+ lo as navContentHeight,
66
+ j as standardAccountMenuGroups
63
67
  };
64
68
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
package/dist/style.css CHANGED
@@ -1 +1 @@
1
- .btn-primary,.btn-quiet,.btn-danger{cursor:pointer;transition:background-color var(--dur-fast) var(--ease-out),border-color var(--dur-fast) var(--ease-out),transform var(--dur-instant) var(--ease-out)}.btn-primary{border:none;background:var(--color-primary);color:var(--color-primary-foreground)}.btn-primary:hover:not(:disabled){background:var(--color-primary-hover)}.btn-quiet{background:transparent;color:var(--color-foreground-secondary)}.btn-quiet:hover:not(:disabled){background:var(--color-surface-muted)}.btn-danger{border:1px solid var(--color-danger);background:var(--color-danger);color:var(--color-neutral-0)}.btn-danger:hover:not(:disabled){border-color:color-mix(in srgb,var(--color-danger) 85%,var(--color-neutral-950));background:color-mix(in srgb,var(--color-danger) 85%,var(--color-neutral-950))}.btn-primary:disabled,.btn-quiet:disabled,.btn-danger:disabled{opacity:.55;cursor:not-allowed}.spinner{box-sizing:border-box;width:var(--spacing-4_5);height:var(--spacing-4_5);border:2px solid var(--color-neutral-0);border-right-color:transparent;border-radius:var(--radius-full);animation:boost33-spin var(--dur-spin) linear infinite}.spinner--sm{width:var(--spacing-3_5);height:var(--spacing-3_5)}.spinner--primary{border-color:var(--color-primary);border-right-color:transparent}@keyframes boost33-spin{to{transform:rotate(360deg)}}.sk{display:block;border-radius:var(--radius-md);background:var(--color-surface-muted);animation:boost33-pulse var(--dur-pulse) ease-in-out infinite}.sk-group{animation:boost33-appear var(--dur-base) var(--ease-out) var(--dur-fast) both}.reveal{animation:boost33-appear var(--dur-base) var(--ease-out) both}@keyframes boost33-pulse{50%{opacity:.55}}@keyframes boost33-appear{0%{opacity:0}}@media(prefers-reduced-motion:no-preference){.btn-primary:active:not(:disabled),.btn-quiet:active:not(:disabled),.btn-danger:active:not(:disabled){transform:scale(.98)}}@media(prefers-reduced-motion:reduce){.sk,.sk-group,.reveal,.spinner{animation:none}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:0s!important;scroll-behavior:auto!important}}._sidebar_197wz_7{display:flex;flex-direction:column;box-sizing:border-box;width:var(--container-sidebar);height:100%;padding:var(--spacing-4) var(--spacing-3);border-right:1px solid var(--color-border);background:var(--color-background);font-family:var(--font-sans)}._sidebar_197wz_7[data-collapsed=true]{width:var(--container-sidebar-rail)}._sidebar_197wz_7>nav{flex-shrink:1;min-height:0;overflow-y:auto;overscroll-behavior:contain;margin:calc(-1 * var(--spacing-1));padding:var(--spacing-1);scroll-padding:var(--spacing-1)}@media(prefers-reduced-motion:reduce){._sidebar_197wz_7>nav{scroll-behavior:auto}}._section_wg5c6_5{display:flex;flex-direction:column}._header_wg5c6_13{margin:0;padding:var(--spacing-2) var(--spacing-2_5);color:var(--color-foreground-muted);font-family:var(--font-sans);font-size:var(--text-2xs);font-weight:var(--font-weight-semibold);letter-spacing:var(--tracking-wider);text-transform:uppercase}._wordmark_ccf4z_4{display:flex;align-items:center;gap:var(--spacing-2_5);font-family:var(--font-display)}a._wordmark_ccf4z_4{border-radius:var(--radius-lg);text-decoration:none}a._wordmark_ccf4z_4:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}._mark_ccf4z_32{display:inline-flex;flex:0 0 var(--spacing-6);align-items:center;justify-content:center;width:var(--spacing-6);height:var(--spacing-6)}._mark_ccf4z_32 svg{width:100%;height:100%}._name_ccf4z_50{color:var(--color-foreground);font-family:var(--font-display);font-size:var(--text-lg);font-weight:var(--font-weight-semibold);letter-spacing:var(--tracking-tight)}._wordmark_ccf4z_4[data-collapsed=true] ._name_ccf4z_50{position:absolute;overflow:hidden;clip-path:inset(50%);width:1px;height:1px;white-space:nowrap}._wordmark_ccf4z_4[data-collapsed=true]{justify-content:center}._tile_w89ja_12{fill:var(--color-neutral-950)}._ring_w89ja_16{fill:var(--color-primary)}._mark_w89ja_24{display:block}._link_w89ja_33{display:inline-flex;vertical-align:top;border-radius:var(--radius-lg);text-decoration:none}._link_w89ja_33:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}._mark_1jt5g_6{display:block}._ground_1jt5g_17{rx:var(--radius-product-tile)}._row_1vu2t_4{display:flex;align-items:center;width:100%;gap:var(--spacing-2_5);padding:var(--spacing-2) var(--spacing-2_5);border:none;border-radius:var(--radius-lg);background:transparent;font-family:var(--font-sans);text-align:left;text-decoration:none;cursor:pointer;transition:background-color var(--dur-fast) var(--ease-out)}._row_1vu2t_4:hover{background:var(--color-surface-muted)}._row_1vu2t_4[data-active=true]{background:var(--color-surface)}._row_1vu2t_4:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}._icon_1vu2t_41{display:inline-flex;flex:0 0 var(--spacing-4);align-items:center;justify-content:center;width:var(--spacing-4);height:var(--spacing-4);color:var(--color-foreground-secondary)}._icon_1vu2t_41 svg{width:100%;height:100%}._row_1vu2t_4[data-active=true] ._icon_1vu2t_41{color:var(--color-foreground)}._row_1vu2t_4[data-collapsed=true]{justify-content:center}._label_1vu2t_66{flex:1 1 auto;min-width:0;overflow:hidden;color:var(--color-foreground-secondary);font-size:var(--text-nav-label);font-weight:var(--font-weight-regular);text-overflow:ellipsis;white-space:nowrap}._row_1vu2t_4[data-active=true] ._label_1vu2t_66{color:var(--color-foreground)}._row_1vu2t_4[data-collapsed=true] ._label_1vu2t_66{position:absolute;overflow:hidden;clip-path:inset(50%);width:1px;height:1px;white-space:nowrap}._trailingSlot_1vu2t_106{display:flex;flex:0 0 var(--spacing-5_5);height:var(--spacing-4);align-items:center;justify-content:flex-end;width:var(--spacing-5_5);font-family:var(--font-sans)}._row_1vu2t_4[data-collapsed=true] ._trailingSlot_1vu2t_106{display:none}._count_1vu2t_122{color:var(--color-foreground-muted);font-size:var(--text-xs);font-weight:var(--font-weight-medium);line-height:var(--spacing-4)}._countUrgent_1vu2t_134{display:inline-flex;box-sizing:border-box;min-width:var(--spacing-5);height:var(--spacing-4_5);align-items:center;justify-content:center;padding:0 var(--spacing-1_5);border-radius:var(--radius-full);background:var(--color-orange-600);color:var(--color-primary-foreground);font-size:var(--text-2xs);font-weight:var(--font-weight-semibold)}._dot_1vu2t_152{width:var(--spacing-1_75);height:var(--spacing-1_75);border-radius:var(--radius-full);background:var(--color-warning)}._srOnly_1vu2t_151{position:absolute;overflow:hidden;width:1px;height:1px;clip-path:inset(50%);white-space:nowrap}@media(prefers-reduced-motion:reduce){._row_1vu2t_4{transition:none}}._primary_1nkom_26,._outlined_1nkom_27{display:inline-flex;box-sizing:border-box;align-items:center;justify-content:center;gap:var(--spacing-2);border-radius:var(--radius-lg);font-family:var(--font-sans);font-size:var(--text-sm);font-weight:var(--font-weight-semibold);line-height:var(--spacing-4);text-decoration:none;white-space:nowrap;cursor:pointer;transition:background-color var(--dur-fast) var(--ease-out)}._primary_1nkom_26{height:var(--spacing-10);padding:0 var(--spacing-4);border:none;background:var(--color-neutral-950);color:var(--color-neutral-0)}._primary_1nkom_26:hover,._primary_1nkom_26[data-active=true]{background:var(--color-neutral-800)}._primary_1nkom_26[data-tone=accent]{background:var(--color-orange-600);color:var(--color-primary-foreground)}._primary_1nkom_26[data-tone=accent]:hover,._primary_1nkom_26[data-tone=accent][data-active=true]{background:var(--color-orange-700)}._outlined_1nkom_27{height:var(--spacing-8);padding:0 var(--spacing-3);border:1px solid var(--color-border-strong);background:var(--color-surface);color:var(--color-foreground)}._outlined_1nkom_27:hover{background:var(--color-surface-muted)}._quiet_1nkom_84{padding:0;border:none;background:transparent;color:var(--color-foreground);font-family:var(--font-sans);font-size:inherit;font-weight:var(--font-weight-medium);line-height:inherit;text-decoration:none;cursor:pointer}._quiet_1nkom_84:hover{text-decoration:underline}._primary_1nkom_26:focus-visible,._outlined_1nkom_27:focus-visible,._quiet_1nkom_84:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}._primary_1nkom_26 svg,._outlined_1nkom_27 svg{width:var(--spacing-4);height:var(--spacing-4);flex-shrink:0}@media(prefers-reduced-motion:reduce){._primary_1nkom_26,._outlined_1nkom_27{transition:none}}._chip_z1nut_37{--chip-lift: 0px;position:relative;box-sizing:border-box;width:100%;padding:calc(var(--spacing-3) + var(--chip-lift));border:1px solid var(--color-border);border-radius:var(--radius-2xl);background:transparent;font-family:var(--font-sans)}._chip_z1nut_37:not([data-unknown]):hover,._chip_z1nut_37:not([data-unknown]):focus-within,._chip_z1nut_37[data-threshold]{--chip-lift: var(--spacing-0_5);box-shadow:var(--shadow-overlay)}._chip_z1nut_37:not([data-threshold]):not([data-unknown]):hover,._chip_z1nut_37:not([data-threshold]):not([data-unknown]):focus-within{background:var(--color-surface)}._chip_z1nut_37:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}._header_z1nut_74{display:flex;align-items:center;gap:var(--spacing-2)}._chip_z1nut_37:not([data-threshold]):not([data-unknown]) ._header_z1nut_74{padding-right:var(--spacing-topup-reserve)}._name_z1nut_83{min-width:0;overflow:hidden;color:var(--color-foreground-muted);font-size:var(--text-xs);font-weight:var(--font-weight-medium);line-height:var(--leading-tight);text-overflow:ellipsis;white-space:nowrap}._pill_z1nut_162{padding:var(--spacing-0_5) var(--spacing-2);border-radius:var(--radius-full);background:var(--color-warning-subtle);color:var(--color-warning);font-size:var(--text-2xs);font-weight:var(--font-weight-semibold)}._figure_z1nut_171{display:flex;align-items:baseline;gap:var(--spacing-1_5);margin-top:calc(var(--spacing-2_5) + var(--chip-lift))}._amount_z1nut_186{color:var(--color-foreground);font-family:var(--font-mono);font-size:var(--text-2xl);font-weight:var(--font-weight-bold);letter-spacing:var(--tracking-tight);line-height:var(--leading-none)}._unit_z1nut_195{color:var(--color-foreground-muted);font-size:var(--text-xs)}._retry_z1nut_200{width:var(--spacing-3);height:var(--spacing-3);color:var(--color-foreground-muted)}._bar_z1nut_209{display:flex;overflow:hidden;width:100%;height:calc(var(--spacing-1_25) + var(--chip-lift));margin-top:calc(var(--spacing-2_5) + var(--chip-lift));border-radius:var(--radius-full)}._bar_z1nut_209[data-tone=rest]{background:var(--color-surface-muted)}._bar_z1nut_209[data-tone=threshold]{background:var(--color-warning-subtle)}._bar_z1nut_209[data-tone=unknown]{background:var(--color-surface-muted)}._segmentGranted_z1nut_230,._segmentPurchased_z1nut_231{height:100%;transition:width var(--dur-fast) var(--ease-out)}._segmentGranted_z1nut_230{background:var(--color-grant)}._segmentPurchased_z1nut_231{background:var(--color-purchased)}._details_z1nut_275{display:none}._chip_z1nut_37:hover ._details_z1nut_275,._chip_z1nut_37:focus-within ._details_z1nut_275{display:block}._split_z1nut_284{display:flex;flex-direction:column;gap:var(--spacing-1);margin:var(--spacing-2_5) 0 0}._splitRow_z1nut_291{display:flex;align-items:center;justify-content:space-between}._splitLabel_z1nut_297{display:flex;align-items:center;gap:var(--spacing-1_5);color:var(--color-foreground);font-size:var(--text-xs)}._splitAmount_z1nut_305{margin:0;color:var(--color-foreground);font-family:var(--font-mono);font-size:var(--text-xs);font-variant-numeric:tabular-nums}._dotGranted_z1nut_313,._dotPurchased_z1nut_314{width:var(--spacing-1_5);height:var(--spacing-1_5);border-radius:var(--radius-full)}._dotGranted_z1nut_313{background:var(--color-grant)}._dotPurchased_z1nut_314{background:var(--color-purchased)}._footer_z1nut_328{margin:var(--spacing-3) 0 0;padding-top:var(--spacing-1);border-top:1px solid var(--color-border);color:var(--color-foreground-muted);font-size:var(--text-2xs)}._burnNote_z1nut_336{margin:var(--spacing-2_5) 0 0;color:var(--color-foreground-secondary);font-size:var(--text-2xs);line-height:var(--leading-snug)}._topUp_z1nut_87:not([data-grown=true]){position:absolute;top:calc(var(--spacing-3) + var(--chip-lift));right:calc(var(--spacing-3) + var(--chip-lift));font-size:var(--text-xs);opacity:0;transition:opacity var(--dur-fast) var(--ease-out)}._chip_z1nut_37:hover ._topUp_z1nut_87,._chip_z1nut_37:focus-within ._topUp_z1nut_87,._topUp_z1nut_87:focus-visible{opacity:1}._topUp_z1nut_87[data-grown=true]{width:100%;margin-top:var(--spacing-2_5)}._rail_z1nut_387{--chip-lift: 0px;position:relative;display:flex;box-sizing:border-box;width:100%;flex-direction:column;align-items:center;gap:var(--spacing-2);padding:var(--spacing-2);font-family:var(--font-sans)}._railIcon_z1nut_401{width:var(--spacing-6);height:var(--spacing-6);color:var(--color-foreground-secondary)}._railFigure_z1nut_407{color:var(--color-foreground);font-family:var(--font-mono);font-size:var(--text-sm);font-weight:var(--font-weight-semibold);font-variant-numeric:tabular-nums}._rail_z1nut_387 ._bar_z1nut_209{height:var(--spacing-0_5);margin-top:0}._srOnly_z1nut_420{position:absolute;overflow:hidden;clip-path:inset(50%);width:1px;height:1px;white-space:nowrap}@media(prefers-reduced-motion:reduce){._segmentGranted_z1nut_230,._segmentPurchased_z1nut_231,._topUp_z1nut_87{transition:none}}._topRoot_z1nut_444{position:relative;font-family:var(--font-sans)}._topTrigger_z1nut_453{display:flex;box-sizing:border-box;height:var(--spacing-8);align-items:center;gap:var(--spacing-2_5);padding:0 var(--spacing-3);border:none;border-radius:var(--radius-lg);background:var(--color-surface-muted);font-family:var(--font-sans);cursor:pointer;transition:background-color var(--dur-fast) var(--ease-out)}._topTrigger_z1nut_453:hover,._topTrigger_z1nut_453[aria-expanded=true]{background:var(--color-border)}._topTrigger_z1nut_453:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}._topFigure_z1nut_482{display:flex;align-items:baseline;gap:var(--spacing-1_25);white-space:nowrap}._topAmount_z1nut_489{color:var(--color-foreground);font-family:var(--font-mono);font-size:var(--text-sm);font-weight:var(--font-weight-semibold);line-height:var(--spacing-4)}._topUnit_z1nut_497{color:var(--color-foreground-muted);font-size:var(--text-2xs);line-height:var(--spacing-3_5)}._topTrigger_z1nut_453:hover ._topUnit_z1nut_497,._topTrigger_z1nut_453[aria-expanded=true] ._topUnit_z1nut_497{color:var(--color-foreground-secondary)}._topChevron_z1nut_508{width:var(--spacing-3);height:var(--spacing-3);flex-shrink:0;color:var(--color-foreground-muted)}._topBar_z1nut_518,._popBar_z1nut_519{display:flex;overflow:hidden;flex-shrink:0;border-radius:var(--radius-sm)}._topBar_z1nut_518{width:var(--spacing-11);height:var(--spacing-1_5);gap:var(--spacing-0_5)}._popover_z1nut_534{position:absolute;z-index:1;top:100%;left:0;display:flex;width:var(--container-token-popover);max-width:calc(100vw - var(--spacing-8));box-sizing:border-box;flex-direction:column;gap:var(--spacing-4);margin-top:var(--spacing-1_5);padding:var(--spacing-5);border-radius:var(--radius-2xl);background:var(--color-surface);box-shadow:var(--shadow-overlay)}._popHead_z1nut_554{display:flex;align-items:baseline;justify-content:space-between;gap:var(--spacing-3)}._popFigure_z1nut_561{display:flex;align-items:baseline;gap:var(--spacing-2)}._popAmount_z1nut_569{color:var(--color-foreground);font-family:var(--font-display);font-size:var(--text-4xl);font-weight:var(--font-weight-semibold);letter-spacing:var(--tracking-tight);line-height:var(--leading-none)}._popUnit_z1nut_578{color:var(--color-foreground-secondary);font-size:var(--text-sm)}._popBar_z1nut_519{width:100%;height:var(--spacing-2);gap:var(--spacing-0_75)}._legend_z1nut_592{display:flex;flex-direction:column;gap:var(--spacing-3);margin:0;padding:0;list-style:none}._legendText_z1nut_601{display:flex;flex-direction:column}._legendRow_z1nut_606{display:flex;align-items:flex-start;gap:var(--spacing-2_5)}._swatchGranted_z1nut_612,._swatchPurchased_z1nut_613{width:var(--spacing-2_25);height:var(--spacing-2_25);flex-shrink:0;margin-top:var(--spacing-1);border-radius:var(--radius-sm)}._swatchGranted_z1nut_612{background:var(--color-grant)}._swatchPurchased_z1nut_613{background:var(--color-purchased)}._legendFigure_z1nut_629{color:var(--color-foreground);font-size:var(--text-sm);font-weight:var(--font-weight-medium);line-height:var(--spacing-4_5)}._legendNote_z1nut_637{color:var(--color-foreground-muted);font-size:var(--text-xs);line-height:var(--spacing-4)}._popFoot_z1nut_644{display:flex;flex-direction:column;gap:var(--spacing-3);padding-top:var(--spacing-3_5);border-top:1px solid var(--color-border)}._popNote_z1nut_652{margin:0;color:var(--color-foreground-secondary);font-size:var(--text-sm);line-height:var(--spacing-4_5)}._popWarning_z1nut_662{margin:0;color:var(--color-warning);font-size:var(--text-sm);font-weight:var(--font-weight-medium);line-height:var(--spacing-4_5)}._topBar_z1nut_518[data-tone=threshold],._popBar_z1nut_519[data-tone=threshold]{background:var(--color-warning-subtle)}._buy_z1nut_681{width:100%}@media(prefers-reduced-motion:reduce){._topTrigger_z1nut_453{transition:none}}._bar_1fqrh_9{display:grid;grid-template-columns:minmax(max-content,1fr) auto minmax(max-content,1fr);container:boost33-top-bar / inline-size;align-items:center;gap:var(--spacing-5);box-sizing:border-box;height:var(--spacing-12);padding:0 var(--spacing-8);border-bottom:1px solid var(--color-border);background:var(--color-surface);font-family:var(--font-sans)}._start_1fqrh_40,._end_1fqrh_41{display:flex;align-items:center}._start_1fqrh_40{grid-column:1;gap:var(--spacing-5)}._end_1fqrh_41{grid-column:3;justify-content:flex-end;gap:var(--spacing-3)}._centre_1fqrh_60{display:flex;grid-column:2;align-items:center;gap:var(--spacing-2)}._label_1fqrh_69{color:var(--color-foreground-muted);font-size:var(--text-sm);font-weight:var(--font-weight-medium);line-height:var(--spacing-4);white-space:nowrap}._label_1fqrh_69[data-after-switcher=true]{padding-left:var(--spacing-8)}@container boost33-top-bar (width < 80rem){._label_1fqrh_69{position:absolute;overflow:hidden;width:1px;height:1px;clip-path:inset(50%);white-space:nowrap}._label_1fqrh_69[data-after-switcher=true]{padding-left:0}._label_1fqrh_69[data-after-switcher=true]+*{margin-left:var(--spacing-6)}}@supports (animation-timeline: --a) and (timeline-scope: --a){@container style(--boost33-shell-timeline: on){._bar_1fqrh_9{position:relative;z-index:1;animation:_scrolled_1fqrh_1 linear both;animation-timeline:--boost33-shell-scroll;animation-range:0 var(--spacing-10)}}}@keyframes _scrolled_1fqrh_1{to{box-shadow:var(--shadow-scrolled)}}._button_oj9om_6{display:inline-flex;box-sizing:border-box;width:var(--spacing-8);height:var(--spacing-8);flex-shrink:0;align-items:center;justify-content:center;padding:0;border:none;border-radius:var(--radius-lg);background:var(--color-surface-muted);color:var(--color-foreground);cursor:pointer;transition:background-color var(--dur-fast) var(--ease-out)}._button_oj9om_6:hover{background:var(--color-border)}._button_oj9om_6:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}._bell_oj9om_33{width:var(--spacing-4);height:var(--spacing-4)}._dot_oj9om_42{fill:var(--color-primary)}._button_oj9om_6:hover ._dot_oj9om_42{fill:var(--color-orange-600)}._srOnly_oj9om_41{position:absolute;overflow:hidden;width:1px;height:1px;clip-path:inset(50%);white-space:nowrap}@media(prefers-reduced-motion:reduce){._button_oj9om_6{transition:none}}._header_i17td_42{display:flex;align-items:center;justify-content:space-between;gap:var(--spacing-8);padding:var(--spacing-4_5) var(--spacing-8) var(--spacing-4);background:var(--color-surface);font-family:var(--font-sans)}._headings_i17td_52{display:flex;min-width:0;flex-direction:column;gap:var(--spacing-1)}._title_i17td_33{margin:0;color:var(--color-foreground);font-family:var(--font-display);font-size:var(--text-2xl);font-weight:var(--font-weight-semibold);letter-spacing:var(--tracking-tight);line-height:var(--leading-tight)}._subtitle_i17td_74{margin:0;color:var(--color-foreground-secondary);font-size:var(--text-base);font-weight:var(--font-weight-regular);line-height:var(--leading-snug)}._actions_i17td_82{display:flex;flex:0 0 auto;align-items:center;gap:var(--spacing-2)}._shell_l6zer_13{display:flex;height:100%;flex-direction:column;background:var(--color-surface);font-family:var(--font-sans)}._body_l6zer_24{display:flex;min-height:0;flex:1}._appName_l6zer_39{flex-shrink:0;margin:0;padding:var(--spacing-1) var(--spacing-2_5) var(--spacing-3_5);overflow:hidden;color:var(--color-foreground-muted);font-family:var(--font-display);font-size:var(--text-md);font-weight:var(--font-weight-semibold);letter-spacing:var(--tracking-tight);line-height:var(--spacing-5);text-overflow:ellipsis;white-space:nowrap}._foot_l6zer_65{display:flex;flex-direction:column;gap:var(--spacing-0_5);margin-block-start:auto;padding-block-start:var(--spacing-4)}._actionSlot_l6zer_79{display:flex;flex-shrink:0;margin-block-start:auto;padding-block-start:var(--spacing-4)}._actionSlot_l6zer_79+._foot_l6zer_65{margin-block-start:var(--spacing-4);padding-block-start:var(--spacing-2_5);border-top:1px solid var(--color-border)}._action_l6zer_79{width:100%}._action_l6zer_79[data-collapsed=true]{width:var(--spacing-10);padding:0}._srOnly_l6zer_103{position:absolute;overflow:hidden;width:1px;height:1px;clip-path:inset(50%);white-space:nowrap}._nav_l6zer_116{display:flex;flex-direction:column;gap:var(--spacing-4)}._main_l6zer_125{display:flex;min-width:0;flex:1;flex-direction:column}._content_l6zer_146{flex:1;min-height:0;overflow-y:auto;background:var(--color-surface)}@supports (animation-timeline: --a) and (timeline-scope: --a){._shell_l6zer_13{timeline-scope:--boost33-shell-scroll;--boost33-shell-timeline: on}._content_l6zer_146{scroll-timeline:--boost33-shell-scroll block}}._phoneChrome_l6zer_207{display:none}@media not (min-width:48rem){._shell_l6zer_13[data-chrome-from=md]>:not(._body_l6zer_24,._phoneChrome_l6zer_207),._shell_l6zer_13[data-chrome-from=md] ._body_l6zer_24>:not(._main_l6zer_125){display:none}._shell_l6zer_13[data-chrome-from=md]{height:auto;min-height:100dvh}._shell_l6zer_13[data-chrome-from=md]>._phoneChrome_l6zer_207{display:contents}._shell_l6zer_13[data-chrome-from=md] ._content_l6zer_146{overflow-y:visible}}@media not (min-width:64rem){._shell_l6zer_13[data-chrome-from=lg]>:not(._body_l6zer_24,._phoneChrome_l6zer_207),._shell_l6zer_13[data-chrome-from=lg] ._body_l6zer_24>:not(._main_l6zer_125){display:none}._shell_l6zer_13[data-chrome-from=lg]{height:auto;min-height:100dvh}._shell_l6zer_13[data-chrome-from=lg]>._phoneChrome_l6zer_207{display:contents}._shell_l6zer_13[data-chrome-from=lg] ._content_l6zer_146{overflow-y:visible}}@media not (min-width:80rem){._shell_l6zer_13[data-chrome-from=xl]>:not(._body_l6zer_24,._phoneChrome_l6zer_207),._shell_l6zer_13[data-chrome-from=xl] ._body_l6zer_24>:not(._main_l6zer_125){display:none}._shell_l6zer_13[data-chrome-from=xl]{height:auto;min-height:100dvh}._shell_l6zer_13[data-chrome-from=xl]>._phoneChrome_l6zer_207{display:contents}._shell_l6zer_13[data-chrome-from=xl] ._content_l6zer_146{overflow-y:visible}}._root_18wu0_8{position:relative;font-family:var(--font-sans)}._trigger_18wu0_17{display:flex;box-sizing:border-box;width:100%;align-items:center;gap:var(--spacing-2);height:var(--spacing-8);padding:0 var(--spacing-3);border:none;border-radius:var(--radius-lg);background:var(--color-surface-muted);font-family:var(--font-sans);cursor:pointer;transition:background-color var(--dur-fast) var(--ease-out)}._trigger_18wu0_17:hover,._trigger_18wu0_17[aria-expanded=true]{background:var(--color-border)}._trigger_18wu0_17:focus-visible,._railTrigger_18wu0_52:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}._triggerName_18wu0_62{overflow:hidden;flex:1;color:var(--color-foreground);font-family:var(--font-display);font-size:var(--text-base);font-weight:var(--font-weight-semibold);line-height:var(--spacing-4_5);text-align:left;text-overflow:ellipsis;white-space:nowrap}._chevron_18wu0_79{width:var(--spacing-3);height:var(--spacing-3);flex-shrink:0;color:var(--color-foreground-muted);transition:transform var(--dur-fast) var(--ease-out)}._trigger_18wu0_17[aria-expanded=true] ._chevron_18wu0_79{transform:rotate(180deg)}._railTrigger_18wu0_52{display:flex;box-sizing:border-box;width:100%;min-height:var(--spacing-6);align-items:flex-start;justify-content:center;padding:0;border:none;background:transparent;cursor:pointer}._panel_18wu0_127{position:absolute;z-index:1;top:100%;left:0;display:flex;width:var(--container-app-switcher);box-sizing:border-box;flex-direction:column;gap:var(--spacing-1);margin-top:var(--spacing-1_5);padding:var(--spacing-2);border-radius:var(--radius-2xl);background:var(--color-surface);box-shadow:var(--shadow-overlay)}._hubRow_18wu0_147,._productRow_18wu0_148{display:flex;box-sizing:border-box;width:100%;align-items:center;gap:var(--spacing-3);border:none;font-family:var(--font-sans);text-align:left;text-decoration:none;cursor:pointer;transition:background-color var(--dur-fast) var(--ease-out)}._hubRow_18wu0_147{margin-bottom:var(--spacing-1);padding:var(--spacing-2_75) var(--spacing-3);border-radius:var(--radius-xl);background:var(--color-neutral-950);color:var(--color-neutral-0)}._hubRow_18wu0_147:hover{background:var(--color-neutral-800)}._hubRow_18wu0_147 ._rowText_18wu0_179{flex:1;gap:var(--spacing-0_5)}._hubRow_18wu0_147 ._rowName_18wu0_184{color:var(--color-neutral-0);font-size:var(--text-base);font-weight:var(--font-weight-semibold);line-height:var(--spacing-4_5)}._hubRow_18wu0_147 ._rowSub_18wu0_191{color:var(--color-neutral-400);font-size:var(--text-sm);line-height:var(--spacing-4)}._hubMark_18wu0_197{width:var(--spacing-5);height:var(--spacing-5);flex-shrink:0;color:var(--color-neutral-0)}._hubChevron_18wu0_204{width:var(--spacing-4);height:var(--spacing-4);flex-shrink:0;color:var(--color-neutral-0)}._productRow_18wu0_148{padding:var(--spacing-2_25) var(--spacing-3);border-radius:var(--radius-lg);background:transparent;color:var(--color-foreground-secondary)}._productRow_18wu0_148:hover,._productRow_18wu0_148[data-current=true]{background:var(--color-surface-muted)}._hubRow_18wu0_147:focus-visible,._productRow_18wu0_148:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}._productRow_18wu0_148[data-current=true] ._rowName_18wu0_184{color:var(--color-foreground);font-weight:var(--font-weight-semibold)}._productRow_18wu0_148[data-entitled=false] ._rowName_18wu0_184{color:var(--color-foreground-muted)}._group_18wu0_250{display:flex;flex-direction:column}._groupLabel_18wu0_258{margin:0;padding:var(--spacing-2) var(--spacing-3);color:var(--color-foreground-muted);font-size:var(--text-2xs);font-weight:var(--font-weight-semibold);line-height:var(--spacing-3_5);text-transform:uppercase}._products_18wu0_269{display:flex;flex-direction:column;margin:0;padding:0;list-style:none}._rowText_18wu0_179{display:flex;min-width:0;flex-direction:column}._rowName_18wu0_184{overflow:hidden;font-size:var(--text-nav-label);font-weight:var(--font-weight-regular);line-height:var(--spacing-4_5);text-overflow:ellipsis;white-space:nowrap}._productRow_18wu0_148 ._rowName_18wu0_184{flex:1}._rowSub_18wu0_191{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}._tag_18wu0_305{flex-shrink:0;padding:var(--spacing-0_5) var(--spacing-1_5);border-radius:var(--radius-full);background:var(--color-surface-muted);color:var(--color-foreground-muted);font-size:var(--text-2xs);font-weight:var(--font-weight-medium)}._trailing_18wu0_317{display:flex;min-width:var(--spacing-5);flex-shrink:0;align-items:center;justify-content:flex-end}._check_18wu0_325{width:var(--spacing-4);height:var(--spacing-4);color:var(--color-foreground)}._trailingValue_18wu0_333{color:var(--color-foreground-muted);font-family:var(--font-mono);font-size:var(--text-xs);line-height:var(--spacing-4);white-space:nowrap}._trailingDot_18wu0_343{width:var(--spacing-1_75);height:var(--spacing-1_75);border-radius:var(--radius-full);background:var(--color-primary)}._srOnly_18wu0_342{position:absolute;overflow:hidden;width:1px;height:1px;clip-path:inset(50%);white-space:nowrap}._chevronRight_18wu0_359{width:var(--spacing-4);height:var(--spacing-4);flex-shrink:0}@media(prefers-reduced-motion:reduce){._chevron_18wu0_79{transition:none}}._panel_1hhcn_36{display:flex;width:var(--container-notification-panel);box-sizing:border-box;flex-direction:column;overflow:hidden;border:1px solid var(--color-border);border-radius:var(--radius-2xl);background:var(--color-surface);box-shadow:var(--shadow-overlay);font-family:var(--font-sans)}._header_1hhcn_54{display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-3_5) var(--spacing-4) var(--spacing-2_5)}._title_1hhcn_62{margin:0;color:var(--color-foreground);font-size:var(--text-base);font-weight:var(--font-weight-semibold);line-height:var(--leading-tight)}._header_1hhcn_54 ._markAll_1hhcn_74{font-size:var(--text-xs);line-height:var(--leading-snug)}._tab_1hhcn_79:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}._tabs_1hhcn_88{display:flex;align-items:center;gap:var(--spacing-4_5);padding-inline:var(--spacing-4);border-bottom:1px solid var(--color-border)}._tab_1hhcn_79{display:flex;align-items:center;gap:var(--spacing-1_25);padding:var(--spacing-2) 0 var(--spacing-2_5);border:none;border-bottom:2px solid transparent;background:transparent;color:var(--color-foreground-muted);font-family:var(--font-sans);font-size:var(--text-sm);font-weight:var(--font-weight-regular);line-height:var(--leading-tight);cursor:pointer}._tab_1hhcn_79[aria-pressed=true]{border-bottom-color:var(--color-foreground);color:var(--color-foreground);font-weight:var(--font-weight-semibold)}._count_1hhcn_123{padding:var(--spacing-0_25) var(--spacing-1_25);border-radius:var(--radius-full);background:var(--color-surface-muted);color:var(--color-foreground-muted);font-size:var(--text-2xs);font-weight:var(--font-weight-semibold);line-height:var(--leading-tight)}._list_1hhcn_133{display:flex;flex-direction:column;margin:0;padding:0;list-style:none}._row_1hhcn_148{display:flex;box-sizing:border-box;width:100%;align-items:flex-start;gap:var(--spacing-2_5);padding:var(--spacing-2_5) var(--spacing-4);color:var(--color-foreground);font-family:var(--font-sans);text-align:left;text-decoration:none}._row_1hhcn_148[href]:hover{background:var(--color-surface-muted)}._row_1hhcn_148[href]:focus-visible{outline:2px solid var(--color-primary);outline-offset:-2px}._sourceMark_1hhcn_179{display:block;flex-shrink:0;margin-top:var(--spacing-0_25);color:var(--color-primary-foreground)}._sourceMarkGround_1hhcn_188{rx:var(--radius-product-tile);fill:var(--color-neutral-950)}._rowText_1hhcn_193{display:flex;min-width:0;flex:1;flex-direction:column;gap:var(--spacing-0_5)}._rowTitle_1hhcn_204{color:var(--color-foreground-secondary);font-size:var(--text-sm);font-weight:var(--font-weight-medium);line-height:var(--leading-snug)}._row_1hhcn_148[data-unread=true] ._rowTitle_1hhcn_204{color:var(--color-foreground)}._rowMeta_1hhcn_215{color:var(--color-foreground-muted);font-size:var(--text-xs);line-height:var(--leading-snug)}._unreadSlot_1hhcn_226{display:flex;width:var(--spacing-4);flex-shrink:0;justify-content:center;padding-top:var(--spacing-1)}._dot_1hhcn_235{width:var(--spacing-1_5);height:var(--spacing-1_5);flex-shrink:0;border-radius:var(--radius-full);background:var(--color-primary)}._empty_1hhcn_250{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--spacing-2_5);padding:var(--spacing-10) var(--spacing-6) var(--spacing-11)}._emptyGlyph_1hhcn_259{display:block;width:var(--spacing-7);height:var(--spacing-7);flex-shrink:0;color:var(--color-foreground-disabled)}._emptyText_1hhcn_267{display:flex;flex-direction:column;align-items:center;gap:var(--spacing-0_5)}._emptyTitle_1hhcn_274{margin:0;color:var(--color-foreground-secondary);font-size:var(--text-sm);font-weight:var(--font-weight-semibold);line-height:var(--leading-tight)}._emptyBody_1hhcn_282{margin:0;color:var(--color-foreground-muted);font-size:var(--text-xs);line-height:var(--leading-snug);text-align:center}._footer_1hhcn_291{display:flex;align-items:center;justify-content:center;padding:var(--spacing-2_5) var(--spacing-4);border-top:1px solid var(--color-border)}._footer_1hhcn_291 ._viewAll_1hhcn_300{font-size:var(--text-xs);line-height:var(--leading-snug)}._srOnly_1hhcn_307{position:absolute;overflow:hidden;width:1px;height:1px;clip-path:inset(50%);white-space:nowrap}._panel_4usug_54{display:flex;box-sizing:border-box;width:var(--container-account-menu);flex-direction:column;padding:var(--spacing-1_5);border:1px solid var(--color-border);border-radius:var(--radius-2xl);background:var(--color-surface);box-shadow:var(--shadow-overlay);font-family:var(--font-sans)}._person_4usug_72{display:flex;align-items:center;gap:var(--spacing-3);padding:var(--spacing-3_5) var(--spacing-3)}._personAvatar_4usug_85{display:block;width:var(--spacing-9_5);height:var(--spacing-9_5);flex-shrink:0;border-radius:var(--radius-full);background:var(--color-border-strong);object-fit:cover}._personText_4usug_98{display:flex;min-width:0;flex-direction:column;gap:var(--spacing-0_5)}._personName_4usug_106{overflow:hidden;color:var(--color-foreground);font-size:var(--text-nav-label);font-weight:var(--font-weight-semibold);line-height:var(--leading-snug);text-overflow:ellipsis;white-space:nowrap}._personEmail_4usug_122{overflow:hidden;color:var(--color-foreground-muted);font-size:var(--text-xs);line-height:var(--leading-snug);text-overflow:ellipsis;white-space:nowrap}._org_4usug_147{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--spacing-1);margin-inline:var(--spacing-1_5);padding:var(--spacing-2_25) var(--spacing-3);border-radius:var(--radius-xl);background:var(--color-neutral-50)}._orgIdentity_4usug_161{display:flex;min-width:0;align-items:center;gap:var(--spacing-2_25)}._orgTile_4usug_178{display:grid;width:var(--spacing-5_5);height:var(--spacing-5_5);flex-shrink:0;border-radius:var(--radius-lg);background:var(--color-neutral-950);color:var(--color-primary-foreground);font-size:var(--text-2xs);font-weight:var(--font-weight-semibold);place-items:center}._orgName_4usug_194{overflow:hidden;color:var(--color-foreground);font-size:var(--text-sm);font-weight:var(--font-weight-semibold);line-height:var(--leading-tight);text-overflow:ellipsis;white-space:nowrap}._orgRole_4usug_209{flex-shrink:0;padding:var(--spacing-0_5) var(--spacing-2);border-radius:var(--radius-full);background:var(--color-neutral-950);color:var(--color-primary-foreground);font-size:var(--text-2xs);font-weight:var(--font-weight-semibold);line-height:var(--leading-tight);white-space:nowrap}._divider_4usug_143{margin:var(--spacing-1_5);border:none;border-top:1px solid var(--color-border)}._rows_4usug_242{display:flex;flex-direction:column;margin:0;padding:0;list-style:none}._row_4usug_48{display:flex;box-sizing:border-box;width:100%;align-items:flex-start;gap:var(--spacing-2_5);padding:var(--spacing-2_25) var(--spacing-3);border:none;border-radius:var(--radius-xl);background:transparent;color:var(--color-foreground);font-family:var(--font-sans);text-align:left;text-decoration:none;cursor:pointer;transition:background-color var(--dur-fast) var(--ease-out)}._row_4usug_48:hover{background:var(--color-neutral-50)}._row_4usug_48:hover ._rowDescription_4usug_299{color:var(--color-foreground-secondary)}._row_4usug_48:hover ._lane_4usug_303{color:var(--color-foreground)}._row_4usug_48:focus-visible{outline:2px solid var(--color-primary);outline-offset:-2px}._row_4usug_48[data-single-line=true]{align-items:center}._row_4usug_48[data-single-line=true] ._lane_4usug_303{margin-top:0}._lane_4usug_303{display:block;width:var(--spacing-4);height:var(--spacing-4);flex-shrink:0;margin-top:var(--spacing-0_5);color:var(--color-foreground-muted)}._lane_4usug_303 svg{display:block;width:100%;height:100%}._rowText_4usug_347{display:flex;min-width:0;flex-direction:column;gap:var(--spacing-0_5)}._rowLabel_4usug_365{overflow:hidden;color:var(--color-foreground);font-size:var(--text-nav-label);font-weight:var(--font-weight-semibold);line-height:var(--leading-snug);text-overflow:ellipsis;white-space:nowrap}._row_4usug_48[data-single-line=true] ._rowLabel_4usug_365{color:var(--color-foreground-secondary);font-weight:var(--font-weight-regular)}._rowDescription_4usug_299{color:var(--color-foreground-muted);font-size:var(--text-xs);line-height:var(--leading-snug)}@media(prefers-reduced-motion:reduce){._row_4usug_48{transition:none}}:root{--shadow-overlay: 0px 16px 40px -10px var(--shadow-overlay-color);--shadow-lift: 0px 10px 24px -14px color-mix(in srgb, var(--color-neutral-950) 28%, transparent);--shadow-scrolled: 0px 6px 16px -12px color-mix(in srgb, var(--color-neutral-950) 35%, transparent)}._panel_1hdli_22{display:flex;overflow:clip;box-sizing:border-box;width:var(--container-command-palette);flex-direction:column;border:1px solid var(--color-border);border-radius:var(--radius-2xl);background:var(--color-surface);box-shadow:var(--shadow-overlay);font-family:var(--font-sans)}._searchRow_1hdli_38{display:flex;box-sizing:border-box;width:100%;align-items:center;flex-shrink:0;gap:var(--spacing-2_5);padding:var(--spacing-4);border-bottom:1px solid var(--color-border)}._searchGlyph_1hdli_49{width:var(--spacing-4);height:var(--spacing-4);flex-shrink:0;color:var(--color-foreground-muted)}._input_1hdli_63{min-width:0;flex:1;border:none;background:transparent;color:var(--color-foreground);font-family:var(--font-sans);font-size:var(--text-md);font-weight:var(--font-weight-medium)}._input_1hdli_63::placeholder{color:var(--color-foreground-muted)}._input_1hdli_63:focus{outline:none}._dismissKey_1hdli_94{flex-shrink:0;padding:var(--spacing-1) var(--spacing-1_5);border-radius:var(--radius-md);background:var(--color-surface-muted);color:var(--color-foreground-muted);font-size:var(--text-2xs)}._results_1hdli_109,._group_1hdli_115{display:flex;flex-direction:column;padding-block:var(--spacing-1)}._groupHeading_1hdli_127{margin:0;padding:var(--spacing-3) var(--spacing-4) var(--spacing-1_5);color:var(--color-foreground-muted);font-family:var(--font-sans);font-size:var(--text-2xs);font-weight:var(--font-weight-semibold);letter-spacing:var(--tracking-caps);text-transform:uppercase}._row_1hdli_146{display:flex;box-sizing:border-box;height:var(--spacing-10);align-items:center;gap:var(--spacing-2_5);margin-inline:var(--spacing-2);padding-inline:var(--spacing-2);border:none;border-radius:var(--radius-lg);background:transparent;color:var(--color-foreground);font-family:var(--font-sans);font-size:var(--text-nav-label);text-align:left;text-decoration:none;cursor:pointer}._row_1hdli_146:hover{background:var(--color-surface-muted)}._row_1hdli_146[aria-selected=true]{background:var(--color-surface-muted);font-weight:var(--font-weight-medium)}._icon_1hdli_184{display:flex;width:var(--spacing-5_5);height:var(--spacing-5_5);flex-shrink:0;align-items:center;justify-content:center;color:var(--color-foreground-muted)}._label_1hdli_197{overflow:hidden;min-width:0;text-overflow:ellipsis;white-space:nowrap}._empty_1hdli_209{margin:0;padding:var(--spacing-5) var(--spacing-4);color:var(--color-foreground-muted);font-size:var(--text-xs)}._footer_1hdli_217{display:flex;box-sizing:border-box;width:100%;align-items:center;flex-shrink:0;padding:var(--spacing-2) var(--spacing-4);border-top:1px solid var(--color-border)}._hints_1hdli_227{color:var(--color-foreground-muted);font-size:var(--text-xs)}._root_g1823_11{--dots-size: var(--spacing-8);--dots-speed: var(--dur-dots);--dots-ease: var(--ease-in-out-quint);--dots-gap: calc(var(--dots-size) * .14);--dots-dot: calc((var(--dots-size) - var(--dots-gap) * 2) / 3);display:inline-flex;align-items:center;justify-content:center}._grid_g1823_25{display:grid;gap:var(--dots-gap);grid-template-columns:repeat(3,var(--dots-dot))}._dot_g1823_31{width:var(--dots-dot);height:var(--dots-dot);border-radius:var(--radius-full);background:currentColor;opacity:1;animation:_dots-pulse_g1823_1 var(--dots-speed) var(--dots-ease) infinite backwards;animation-delay:calc(var(--dots-step, 0) * var(--dots-speed) / 4)}._dot_g1823_31:nth-child(1){--dots-step: 0}._dot_g1823_31:nth-child(2),._dot_g1823_31:nth-child(4){--dots-step: 1}._dot_g1823_31:nth-child(3),._dot_g1823_31:nth-child(5),._dot_g1823_31:nth-child(7){--dots-step: 2}._dot_g1823_31:nth-child(6),._dot_g1823_31:nth-child(8){--dots-step: 3}._dot_g1823_31:nth-child(9){--dots-step: 4}@keyframes _dots-pulse_g1823_1{0%,to{opacity:.2;transform:scale(.7)}50%{opacity:1;transform:scale(1)}}@media(prefers-reduced-motion:reduce){._dot_g1823_31{animation:none}}:root{--dur-instant: 80ms;--dur-fast: .15s;--dur-base: .22s;--dur-slow: .32s;--dur-bold: .7s;--dur-hero: .9s;--dur-spin: .7s;--dur-pulse: 1.6s;--ease-out: cubic-bezier(.22, 1, .36, 1);--ease-in: cubic-bezier(.4, 0, 1, 1);--ease-spring: cubic-bezier(.34, 1.56, .64, 1);--lift-sm: -1px;--lift-md: -2px;--rise: 8px;--stagger: 40ms;--duration-fast: var(--dur-fast);--easing-standard: var(--ease-out);--dur-dots: 1s;--ease-in-out-quint: cubic-bezier(.83, 0, .17, 1)}._root_1pg11_6{position:fixed;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;padding:var(--spacing-4);overflow:hidden;background-color:var(--color-neutral-1000);color:var(--color-neutral-0);--launch-accent: var(--launch-accent-input, var(--color-neutral-0));isolation:isolate}._glow_1pg11_9{position:absolute;top:50%;left:50%;z-index:0;width:298.333%;height:238.222%;transform:translate(-50%);border-radius:50%;background-image:radial-gradient(circle farthest-corner at 50% 50% in oklab,var(--color-orange-500) 0%,var(--color-orange-600) 28%,var(--color-orange-700) 48%,oklab(from var(--color-orange-700) l a b / 0%) 72%);filter:blur(5.5vmax)}._backdrop_1pg11_103{position:absolute;top:0;right:0;bottom:0;left:0;z-index:0;overflow:hidden}._content_1pg11_16{position:relative;display:flex;flex-direction:column;align-items:center;gap:var(--spacing-5);inline-size:min(280px,100%)}._dots_1pg11_139{--dots-size: var(--spacing-6);color:var(--launch-accent);mix-blend-mode:soft-light;opacity:1}._bar_1pg11_178{position:relative;inline-size:100%;block-size:var(--spacing-1);overflow:hidden;border-radius:var(--radius-full)}._track_1pg11_186{position:absolute;top:0;right:0;bottom:0;left:0;background:color-mix(in srgb,var(--launch-accent) 35%,transparent);mix-blend-mode:soft-light;opacity:.75}._fill_1pg11_194{position:absolute;inset-block:0;inset-inline-start:0;inline-size:calc(var(--launch-progress, 0) * 1%);border-radius:inherit;background:var(--color-neutral-0);transition:inline-size var(--dur-fast) var(--ease-out)}._bar_1pg11_178[data-indeterminate=true] ._fill_1pg11_194{inline-size:33.333%;animation:_launch-indeterminate_1pg11_1 calc(var(--dur-dots) * 1.5) var(--ease-out) infinite}@keyframes _launch-indeterminate_1pg11_1{0%{inset-inline-start:-33.333%}to{inset-inline-start:100%}}._caption_1pg11_220{margin:0;opacity:.8;font-family:var(--font-sans);font-size:var(--text-sm);font-weight:var(--font-weight-medium);line-height:var(--leading-normal);text-align:center}@media(prefers-reduced-motion:reduce){._fill_1pg11_194{transition:none}._bar_1pg11_178[data-indeterminate=true] ._fill_1pg11_194{inset-inline-start:33.333%;animation:none}}@media(prefers-contrast){._root_1pg11_6{--launch-accent: var(--color-neutral-0)}._glow_1pg11_9,._backdrop_1pg11_103{display:none}._dots_1pg11_139,._track_1pg11_186{mix-blend-mode:normal;opacity:1}}:root{--color-neutral-0: #FFFFFF;--color-neutral-50: #F7F7F8;--color-neutral-100: #EFEFF1;--color-neutral-200: #E5E5EA;--color-neutral-300: #D9D9D9;--color-neutral-400: #C1C1C2;--color-neutral-500: #8E8E93;--color-neutral-600: #6B6B6B;--color-neutral-700: #525252;--color-neutral-800: #3A3A3C;--color-neutral-900: #292929;--color-neutral-950: #1D1D1B;--color-neutral-1000: #000000;--color-orange-50: #FDF3EE;--color-orange-100: #FBE2D5;--color-orange-200: #F7C3A8;--color-orange-300: #F0A173;--color-orange-400: #EB7147;--color-orange-500: #E9521E;--color-orange-600: #C2410C;--color-orange-700: #9A3412;--color-sand-100: #FBF3E4;--color-sand-300: #F3D6AC;--color-sand-600: #8A6510;--color-green-100: #DDF0E4;--color-green-600: #157F3D;--color-crimson-100: #F7DEE1;--color-crimson-600: #A3182B;--color-blue-100: #DEE6FA;--color-blue-600: #2A5BD7;--color-background: var(--color-neutral-50);--color-surface: var(--color-neutral-0);--color-surface-muted: var(--color-neutral-100);--color-border: var(--color-neutral-200);--color-border-strong: var(--color-neutral-300);--color-foreground: var(--color-neutral-950);--color-foreground-secondary: var(--color-neutral-700);--color-foreground-muted: var(--color-neutral-600);--color-foreground-disabled: var(--color-neutral-400);--color-primary: var(--color-orange-500);--color-primary-hover: var(--color-orange-600);--color-primary-foreground: var(--color-neutral-0);--color-primary-subtle: var(--color-orange-50);--color-primary-border: var(--color-orange-200);--color-success: var(--color-green-600);--color-success-subtle: var(--color-green-100);--color-warning: var(--color-sand-600);--color-warning-subtle: var(--color-sand-300);--color-danger: var(--color-crimson-600);--color-danger-subtle: var(--color-crimson-100);--color-info: var(--color-blue-600);--color-info-subtle: var(--color-blue-100);--color-grant: var(--color-sand-600);--color-purchased: var(--color-neutral-950);--shadow-overlay-color: rgb(29 29 27 / 20%);--font-display: var(--boost33-font-display, Outfit), ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;--font-sans: var(--boost33-font-sans, Inter), ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;--font-mono: var(--boost33-font-mono, "Geist Mono"), ui-monospace, SFMono-Regular, "SF Mono", Menlo, Consolas, "Liberation Mono", monospace;--text-3xs: 9px;--text-2xs: 11px;--text-xs: 12px;--text-sm: 13px;--text-base: 15px;--text-md: 16px;--text-lg: 18px;--text-xl: 20px;--text-2xl: 24px;--text-3xl: 30px;--text-4xl: 36px;--text-5xl: 46px;--text-6xl: 60px;--text-7xl: 78px;--text-nav-label: 14px;--text-settings-group-label: 10px;--font-weight-light: 300;--font-weight-regular: 400;--font-weight-medium: 500;--font-weight-semibold: 600;--font-weight-bold: 700;--tracking-tighter: -.03em;--tracking-tight: -.02em;--tracking-normal: 0em;--tracking-wide: .04em;--tracking-wider: .09em;--tracking-caps: .05em;--tracking-settings-title: -.01em;--leading-none: 100%;--leading-tight: 120%;--leading-snug: 135%;--leading-normal: 150%;--leading-relaxed: 170%;--breakpoint-mobile: 390px;--breakpoint-desktop: 1440px;--container-sidebar: 264px;--container-sidebar-rail: 56px;--container-command-palette: 560px;--container-content: 1440px;--container-account-menu: 312px;--container-app-switcher: 360px;--container-token-popover: 340px;--container-notification-panel: 360px;--spacing-1: 4px;--spacing-2: 8px;--spacing-3: 12px;--spacing-4: 16px;--spacing-4_5: 18px;--spacing-5: 20px;--spacing-6: 24px;--spacing-7: 28px;--spacing-8: 32px;--spacing-10: 40px;--spacing-11: 44px;--spacing-12: 48px;--spacing-16: 64px;--spacing-20: 80px;--spacing-2_5: 10px;--spacing-5_5: 22px;--spacing-1_5: 6px;--spacing-1_25: 5px;--spacing-0_5: 2px;--spacing-2_25: 9px;--spacing-3_5: 14px;--spacing-2_75: 11px;--spacing-1_75: 7px;--spacing-0_75: 3px;--spacing-0_25: 1px;--spacing-settings-crumb: 7px;--spacing-topup-reserve: 68px;--spacing-wallet-segment-min: 3px;--spacing-9_5: 38px;--radius-none: 0px;--radius-xs: 2px;--radius-sm: 3px;--radius-md: 4px;--radius-lg: 6px;--radius-xl: 8px;--radius-2xl: 12px;--radius-full: 9999px;--radius-product-tile: 25%}._root_1y1aa_41{container-type:inline-size}._frame_1y1aa_47{display:flex;min-height:100vh;background:var(--color-background);color:var(--color-foreground);font-family:var(--font-sans)}._sidebar_1y1aa_59{display:flex;box-sizing:border-box;width:var(--container-sidebar);flex-shrink:0;flex-direction:column;padding:0 var(--spacing-3);border-right:1px solid var(--color-border);background:var(--color-neutral-50)}._sidebar_1y1aa_59 a{text-decoration:none}._back_1y1aa_76{display:flex;align-items:center;gap:var(--spacing-2_5);padding:var(--spacing-4) var(--spacing-2_5) var(--spacing-3_5);color:var(--color-foreground)}._backLabel_1y1aa_84{font-size:var(--text-nav-label);font-weight:var(--font-weight-semibold);line-height:var(--spacing-4_5)}._glyph_1y1aa_91{display:block;width:var(--spacing-4);height:var(--spacing-4);flex-shrink:0}._title_1y1aa_99{padding:var(--spacing-2_5) var(--spacing-2_5) var(--spacing-4)}._titleText_1y1aa_103{font-family:var(--font-display);font-size:var(--text-xl);font-weight:var(--font-weight-semibold);letter-spacing:var(--tracking-settings-title);line-height:var(--spacing-6)}._group_1y1aa_112{display:flex;flex-direction:column;gap:var(--spacing-0_25)}._group_1y1aa_112+._group_1y1aa_112{padding-top:var(--spacing-5)}._groupLabel_1y1aa_124{padding:0 var(--spacing-2_5) var(--spacing-2)}._groupLabelText_1y1aa_128{color:var(--color-foreground-muted);font-size:var(--text-settings-group-label);font-weight:var(--font-weight-semibold);letter-spacing:var(--tracking-caps);line-height:var(--spacing-3);text-transform:uppercase}._item_1y1aa_140{display:flex;align-items:center;gap:var(--spacing-2_5);padding:var(--spacing-2) var(--spacing-2_5);border-radius:var(--radius-lg);color:var(--color-foreground-muted)}._item_1y1aa_140[aria-current=page]{background:var(--color-surface);color:var(--color-foreground)}._icon_1y1aa_157{display:flex;width:var(--spacing-4);height:var(--spacing-4);flex-shrink:0;align-items:center;justify-content:center}._icon_1y1aa_157>svg{width:100%;height:100%}._label_1y1aa_171{flex-grow:1;color:var(--color-foreground-secondary);font-size:var(--text-nav-label);font-weight:var(--font-weight-regular);line-height:var(--spacing-4)}._item_1y1aa_140[aria-current=page] ._label_1y1aa_171{color:var(--color-foreground);font-weight:var(--font-weight-semibold)}._swatch_1y1aa_186{width:var(--spacing-4);height:var(--spacing-4);flex-shrink:0;border-radius:var(--radius-md);background:var(--color-neutral-300)}._spacer_1y1aa_195{flex-grow:1}._signOut_1y1aa_201{margin-bottom:var(--spacing-4)}._column_1y1aa_207{display:flex;min-width:0;flex-basis:0;flex-direction:column;flex-grow:1}._header_1y1aa_216{display:flex;box-sizing:border-box;height:var(--spacing-12);flex-shrink:0;align-items:center;justify-content:space-between;padding:0 var(--spacing-5);border-bottom:1px solid var(--color-border)}._headerStart_1y1aa_227{display:flex;align-items:center;gap:var(--spacing-3)}._panelMark_1y1aa_237{display:flex;color:var(--color-foreground-muted)}._crumbs_1y1aa_244{display:flex;align-items:center;gap:var(--spacing-settings-crumb);margin:0;padding:0;font-size:var(--text-sm);line-height:var(--spacing-4);list-style:none}._crumbStep_1y1aa_255{display:flex;align-items:center;gap:var(--spacing-settings-crumb)}._crumb_1y1aa_244{color:var(--color-foreground-muted);text-decoration:none}._crumbSeparator_1y1aa_266{color:var(--color-foreground-disabled)}._crumbCurrent_1y1aa_270{color:var(--color-foreground);font-weight:var(--font-weight-semibold);text-decoration:none}._headerEnd_1y1aa_276,._helpLinks_1y1aa_282{display:flex;align-items:center;gap:var(--spacing-4_5)}._helpLink_1y1aa_282{color:var(--color-foreground-secondary);font-size:var(--text-sm);line-height:var(--leading-normal);text-decoration:none}._content_1y1aa_298{display:flex;flex-direction:column;flex-grow:1;background:var(--color-surface)}._pageHead_1y1aa_307{display:flex;flex-shrink:0;align-items:flex-start;justify-content:space-between;gap:var(--spacing-6);padding:var(--spacing-7) var(--spacing-8) var(--spacing-6);border-bottom:1px solid var(--color-border);background:var(--color-surface)}._pageHeadText_1y1aa_318{display:flex;flex-direction:column;gap:var(--spacing-1)}._pageTitle_1y1aa_325{margin:0;font-family:var(--font-display);font-size:var(--text-xl);font-weight:var(--font-weight-semibold);letter-spacing:var(--tracking-tight);line-height:var(--spacing-6)}._pageDescription_1y1aa_335{margin:0;color:var(--color-foreground-muted);font-size:var(--text-xs);line-height:var(--spacing-4)}@container (max-width: 767px){._frame_1y1aa_47{flex-direction:column}._sidebar_1y1aa_59{width:auto;flex-direction:row;align-items:center;gap:var(--spacing-0_5);padding:var(--spacing-1_5) var(--spacing-2);overflow-x:auto;border-right:none;border-bottom:1px solid var(--color-border);white-space:nowrap}._sidebar_1y1aa_59 a{flex-shrink:0}._title_1y1aa_99,._groupLabel_1y1aa_124,._spacer_1y1aa_195,._helpLinks_1y1aa_282,._panelMark_1y1aa_237{display:none}._group_1y1aa_112{flex-direction:row;gap:var(--spacing-0_5)}._group_1y1aa_112+._group_1y1aa_112{padding-top:0}._back_1y1aa_76,._signOut_1y1aa_201{margin:0;padding:var(--spacing-2) var(--spacing-2_5)}._header_1y1aa_216{padding:0 var(--spacing-4)}._pageHead_1y1aa_307{flex-wrap:wrap;padding:var(--spacing-5) var(--spacing-4) var(--spacing-4_5)}}
1
+ .btn-primary,.btn-quiet,.btn-danger{cursor:pointer;transition:background-color var(--dur-fast) var(--ease-out),border-color var(--dur-fast) var(--ease-out),transform var(--dur-instant) var(--ease-out)}.btn-primary{border:none;background:var(--color-primary);color:var(--color-primary-foreground)}.btn-primary:hover:not(:disabled){background:var(--color-primary-hover)}.btn-quiet{background:transparent;color:var(--color-foreground-secondary)}.btn-quiet:hover:not(:disabled){background:var(--color-surface-muted)}.btn-danger{border:1px solid var(--color-danger);background:var(--color-danger);color:var(--color-neutral-0)}.btn-danger:hover:not(:disabled){border-color:color-mix(in srgb,var(--color-danger) 85%,var(--color-neutral-950));background:color-mix(in srgb,var(--color-danger) 85%,var(--color-neutral-950))}.btn-primary:disabled,.btn-quiet:disabled,.btn-danger:disabled{opacity:.55;cursor:not-allowed}.spinner{box-sizing:border-box;width:var(--spacing-4_5);height:var(--spacing-4_5);border:2px solid var(--color-neutral-0);border-right-color:transparent;border-radius:var(--radius-full);animation:boost33-spin var(--dur-spin) linear infinite}.spinner--sm{width:var(--spacing-3_5);height:var(--spacing-3_5)}.spinner--primary{border-color:var(--color-primary);border-right-color:transparent}@keyframes boost33-spin{to{transform:rotate(360deg)}}.sk{display:block;border-radius:var(--radius-md);background:var(--color-surface-muted);animation:boost33-pulse var(--dur-pulse) ease-in-out infinite}.sk-group{animation:boost33-appear var(--dur-base) var(--ease-out) var(--dur-fast) both}.reveal{animation:boost33-appear var(--dur-base) var(--ease-out) both}@keyframes boost33-pulse{50%{opacity:.55}}@keyframes boost33-appear{0%{opacity:0}}@media(prefers-reduced-motion:no-preference){.btn-primary:active:not(:disabled),.btn-quiet:active:not(:disabled),.btn-danger:active:not(:disabled){transform:scale(.98)}}@media(prefers-reduced-motion:reduce){.sk,.sk-group,.reveal,.spinner{animation:none}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:0s!important;scroll-behavior:auto!important}}._sidebar_197wz_7{display:flex;flex-direction:column;box-sizing:border-box;width:var(--container-sidebar);height:100%;padding:var(--spacing-4) var(--spacing-3);border-right:1px solid var(--color-border);background:var(--color-background);font-family:var(--font-sans)}._sidebar_197wz_7[data-collapsed=true]{width:var(--container-sidebar-rail)}._sidebar_197wz_7>nav{flex-shrink:1;min-height:0;overflow-y:auto;overscroll-behavior:contain;margin:calc(-1 * var(--spacing-1));padding:var(--spacing-1);scroll-padding:var(--spacing-1)}@media(prefers-reduced-motion:reduce){._sidebar_197wz_7>nav{scroll-behavior:auto}}._section_wg5c6_5{display:flex;flex-direction:column}._header_wg5c6_13{margin:0;padding:var(--spacing-2) var(--spacing-2_5);color:var(--color-foreground-muted);font-family:var(--font-sans);font-size:var(--text-2xs);font-weight:var(--font-weight-semibold);letter-spacing:var(--tracking-wider);text-transform:uppercase}._wordmark_ccf4z_4{display:flex;align-items:center;gap:var(--spacing-2_5);font-family:var(--font-display)}a._wordmark_ccf4z_4{border-radius:var(--radius-lg);text-decoration:none}a._wordmark_ccf4z_4:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}._mark_ccf4z_32{display:inline-flex;flex:0 0 var(--spacing-6);align-items:center;justify-content:center;width:var(--spacing-6);height:var(--spacing-6)}._mark_ccf4z_32 svg{width:100%;height:100%}._name_ccf4z_50{color:var(--color-foreground);font-family:var(--font-display);font-size:var(--text-lg);font-weight:var(--font-weight-semibold);letter-spacing:var(--tracking-tight)}._wordmark_ccf4z_4[data-collapsed=true] ._name_ccf4z_50{position:absolute;overflow:hidden;clip-path:inset(50%);width:1px;height:1px;white-space:nowrap}._wordmark_ccf4z_4[data-collapsed=true]{justify-content:center}._tile_w89ja_12{fill:var(--color-neutral-950)}._ring_w89ja_16{fill:var(--color-primary)}._mark_w89ja_24{display:block}._link_w89ja_33{display:inline-flex;vertical-align:top;border-radius:var(--radius-lg);text-decoration:none}._link_w89ja_33:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}._mark_1jt5g_6{display:block}._ground_1jt5g_17{rx:var(--radius-product-tile)}._row_1vu2t_4{display:flex;align-items:center;width:100%;gap:var(--spacing-2_5);padding:var(--spacing-2) var(--spacing-2_5);border:none;border-radius:var(--radius-lg);background:transparent;font-family:var(--font-sans);text-align:left;text-decoration:none;cursor:pointer;transition:background-color var(--dur-fast) var(--ease-out)}._row_1vu2t_4:hover{background:var(--color-surface-muted)}._row_1vu2t_4[data-active=true]{background:var(--color-surface)}._row_1vu2t_4:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}._icon_1vu2t_41{display:inline-flex;flex:0 0 var(--spacing-4);align-items:center;justify-content:center;width:var(--spacing-4);height:var(--spacing-4);color:var(--color-foreground-secondary)}._icon_1vu2t_41 svg{width:100%;height:100%}._row_1vu2t_4[data-active=true] ._icon_1vu2t_41{color:var(--color-foreground)}._row_1vu2t_4[data-collapsed=true]{justify-content:center}._label_1vu2t_66{flex:1 1 auto;min-width:0;overflow:hidden;color:var(--color-foreground-secondary);font-size:var(--text-nav-label);font-weight:var(--font-weight-regular);text-overflow:ellipsis;white-space:nowrap}._row_1vu2t_4[data-active=true] ._label_1vu2t_66{color:var(--color-foreground)}._row_1vu2t_4[data-collapsed=true] ._label_1vu2t_66{position:absolute;overflow:hidden;clip-path:inset(50%);width:1px;height:1px;white-space:nowrap}._trailingSlot_1vu2t_106{display:flex;flex:0 0 var(--spacing-5_5);height:var(--spacing-4);align-items:center;justify-content:flex-end;width:var(--spacing-5_5);font-family:var(--font-sans)}._row_1vu2t_4[data-collapsed=true] ._trailingSlot_1vu2t_106{display:none}._count_1vu2t_122{color:var(--color-foreground-muted);font-size:var(--text-xs);font-weight:var(--font-weight-medium);line-height:var(--spacing-4)}._countUrgent_1vu2t_134{display:inline-flex;box-sizing:border-box;min-width:var(--spacing-5);height:var(--spacing-4_5);align-items:center;justify-content:center;padding:0 var(--spacing-1_5);border-radius:var(--radius-full);background:var(--color-orange-600);color:var(--color-primary-foreground);font-size:var(--text-2xs);font-weight:var(--font-weight-semibold)}._dot_1vu2t_152{width:var(--spacing-1_75);height:var(--spacing-1_75);border-radius:var(--radius-full);background:var(--color-warning)}._srOnly_1vu2t_151{position:absolute;overflow:hidden;width:1px;height:1px;clip-path:inset(50%);white-space:nowrap}@media(prefers-reduced-motion:reduce){._row_1vu2t_4{transition:none}}._primary_1nkom_26,._outlined_1nkom_27{display:inline-flex;box-sizing:border-box;align-items:center;justify-content:center;gap:var(--spacing-2);border-radius:var(--radius-lg);font-family:var(--font-sans);font-size:var(--text-sm);font-weight:var(--font-weight-semibold);line-height:var(--spacing-4);text-decoration:none;white-space:nowrap;cursor:pointer;transition:background-color var(--dur-fast) var(--ease-out)}._primary_1nkom_26{height:var(--spacing-10);padding:0 var(--spacing-4);border:none;background:var(--color-neutral-950);color:var(--color-neutral-0)}._primary_1nkom_26:hover,._primary_1nkom_26[data-active=true]{background:var(--color-neutral-800)}._primary_1nkom_26[data-tone=accent]{background:var(--color-orange-600);color:var(--color-primary-foreground)}._primary_1nkom_26[data-tone=accent]:hover,._primary_1nkom_26[data-tone=accent][data-active=true]{background:var(--color-orange-700)}._outlined_1nkom_27{height:var(--spacing-8);padding:0 var(--spacing-3);border:1px solid var(--color-border-strong);background:var(--color-surface);color:var(--color-foreground)}._outlined_1nkom_27:hover{background:var(--color-surface-muted)}._quiet_1nkom_84{padding:0;border:none;background:transparent;color:var(--color-foreground);font-family:var(--font-sans);font-size:inherit;font-weight:var(--font-weight-medium);line-height:inherit;text-decoration:none;cursor:pointer}._quiet_1nkom_84:hover{text-decoration:underline}._primary_1nkom_26:focus-visible,._outlined_1nkom_27:focus-visible,._quiet_1nkom_84:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}._primary_1nkom_26 svg,._outlined_1nkom_27 svg{width:var(--spacing-4);height:var(--spacing-4);flex-shrink:0}@media(prefers-reduced-motion:reduce){._primary_1nkom_26,._outlined_1nkom_27{transition:none}}._chip_z1nut_37{--chip-lift: 0px;position:relative;box-sizing:border-box;width:100%;padding:calc(var(--spacing-3) + var(--chip-lift));border:1px solid var(--color-border);border-radius:var(--radius-2xl);background:transparent;font-family:var(--font-sans)}._chip_z1nut_37:not([data-unknown]):hover,._chip_z1nut_37:not([data-unknown]):focus-within,._chip_z1nut_37[data-threshold]{--chip-lift: var(--spacing-0_5);box-shadow:var(--shadow-overlay)}._chip_z1nut_37:not([data-threshold]):not([data-unknown]):hover,._chip_z1nut_37:not([data-threshold]):not([data-unknown]):focus-within{background:var(--color-surface)}._chip_z1nut_37:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}._header_z1nut_74{display:flex;align-items:center;gap:var(--spacing-2)}._chip_z1nut_37:not([data-threshold]):not([data-unknown]) ._header_z1nut_74{padding-right:var(--spacing-topup-reserve)}._name_z1nut_83{min-width:0;overflow:hidden;color:var(--color-foreground-muted);font-size:var(--text-xs);font-weight:var(--font-weight-medium);line-height:var(--leading-tight);text-overflow:ellipsis;white-space:nowrap}._pill_z1nut_162{padding:var(--spacing-0_5) var(--spacing-2);border-radius:var(--radius-full);background:var(--color-warning-subtle);color:var(--color-warning);font-size:var(--text-2xs);font-weight:var(--font-weight-semibold)}._figure_z1nut_171{display:flex;align-items:baseline;gap:var(--spacing-1_5);margin-top:calc(var(--spacing-2_5) + var(--chip-lift))}._amount_z1nut_186{color:var(--color-foreground);font-family:var(--font-mono);font-size:var(--text-2xl);font-weight:var(--font-weight-bold);letter-spacing:var(--tracking-tight);line-height:var(--leading-none)}._unit_z1nut_195{color:var(--color-foreground-muted);font-size:var(--text-xs)}._retry_z1nut_200{width:var(--spacing-3);height:var(--spacing-3);color:var(--color-foreground-muted)}._bar_z1nut_209{display:flex;overflow:hidden;width:100%;height:calc(var(--spacing-1_25) + var(--chip-lift));margin-top:calc(var(--spacing-2_5) + var(--chip-lift));border-radius:var(--radius-full)}._bar_z1nut_209[data-tone=rest]{background:var(--color-surface-muted)}._bar_z1nut_209[data-tone=threshold]{background:var(--color-warning-subtle)}._bar_z1nut_209[data-tone=unknown]{background:var(--color-surface-muted)}._segmentGranted_z1nut_230,._segmentPurchased_z1nut_231{height:100%;transition:width var(--dur-fast) var(--ease-out)}._segmentGranted_z1nut_230{background:var(--color-grant)}._segmentPurchased_z1nut_231{background:var(--color-purchased)}._details_z1nut_275{display:none}._chip_z1nut_37:hover ._details_z1nut_275,._chip_z1nut_37:focus-within ._details_z1nut_275{display:block}._split_z1nut_284{display:flex;flex-direction:column;gap:var(--spacing-1);margin:var(--spacing-2_5) 0 0}._splitRow_z1nut_291{display:flex;align-items:center;justify-content:space-between}._splitLabel_z1nut_297{display:flex;align-items:center;gap:var(--spacing-1_5);color:var(--color-foreground);font-size:var(--text-xs)}._splitAmount_z1nut_305{margin:0;color:var(--color-foreground);font-family:var(--font-mono);font-size:var(--text-xs);font-variant-numeric:tabular-nums}._dotGranted_z1nut_313,._dotPurchased_z1nut_314{width:var(--spacing-1_5);height:var(--spacing-1_5);border-radius:var(--radius-full)}._dotGranted_z1nut_313{background:var(--color-grant)}._dotPurchased_z1nut_314{background:var(--color-purchased)}._footer_z1nut_328{margin:var(--spacing-3) 0 0;padding-top:var(--spacing-1);border-top:1px solid var(--color-border);color:var(--color-foreground-muted);font-size:var(--text-2xs)}._burnNote_z1nut_336{margin:var(--spacing-2_5) 0 0;color:var(--color-foreground-secondary);font-size:var(--text-2xs);line-height:var(--leading-snug)}._topUp_z1nut_87:not([data-grown=true]){position:absolute;top:calc(var(--spacing-3) + var(--chip-lift));right:calc(var(--spacing-3) + var(--chip-lift));font-size:var(--text-xs);opacity:0;transition:opacity var(--dur-fast) var(--ease-out)}._chip_z1nut_37:hover ._topUp_z1nut_87,._chip_z1nut_37:focus-within ._topUp_z1nut_87,._topUp_z1nut_87:focus-visible{opacity:1}._topUp_z1nut_87[data-grown=true]{width:100%;margin-top:var(--spacing-2_5)}._rail_z1nut_387{--chip-lift: 0px;position:relative;display:flex;box-sizing:border-box;width:100%;flex-direction:column;align-items:center;gap:var(--spacing-2);padding:var(--spacing-2);font-family:var(--font-sans)}._railIcon_z1nut_401{width:var(--spacing-6);height:var(--spacing-6);color:var(--color-foreground-secondary)}._railFigure_z1nut_407{color:var(--color-foreground);font-family:var(--font-mono);font-size:var(--text-sm);font-weight:var(--font-weight-semibold);font-variant-numeric:tabular-nums}._rail_z1nut_387 ._bar_z1nut_209{height:var(--spacing-0_5);margin-top:0}._srOnly_z1nut_420{position:absolute;overflow:hidden;clip-path:inset(50%);width:1px;height:1px;white-space:nowrap}@media(prefers-reduced-motion:reduce){._segmentGranted_z1nut_230,._segmentPurchased_z1nut_231,._topUp_z1nut_87{transition:none}}._topRoot_z1nut_444{position:relative;font-family:var(--font-sans)}._topTrigger_z1nut_453{display:flex;box-sizing:border-box;height:var(--spacing-8);align-items:center;gap:var(--spacing-2_5);padding:0 var(--spacing-3);border:none;border-radius:var(--radius-lg);background:var(--color-surface-muted);font-family:var(--font-sans);cursor:pointer;transition:background-color var(--dur-fast) var(--ease-out)}._topTrigger_z1nut_453:hover,._topTrigger_z1nut_453[aria-expanded=true]{background:var(--color-border)}._topTrigger_z1nut_453:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}._topFigure_z1nut_482{display:flex;align-items:baseline;gap:var(--spacing-1_25);white-space:nowrap}._topAmount_z1nut_489{color:var(--color-foreground);font-family:var(--font-mono);font-size:var(--text-sm);font-weight:var(--font-weight-semibold);line-height:var(--spacing-4)}._topUnit_z1nut_497{color:var(--color-foreground-muted);font-size:var(--text-2xs);line-height:var(--spacing-3_5)}._topTrigger_z1nut_453:hover ._topUnit_z1nut_497,._topTrigger_z1nut_453[aria-expanded=true] ._topUnit_z1nut_497{color:var(--color-foreground-secondary)}._topChevron_z1nut_508{width:var(--spacing-3);height:var(--spacing-3);flex-shrink:0;color:var(--color-foreground-muted)}._topBar_z1nut_518,._popBar_z1nut_519{display:flex;overflow:hidden;flex-shrink:0;border-radius:var(--radius-sm)}._topBar_z1nut_518{width:var(--spacing-11);height:var(--spacing-1_5);gap:var(--spacing-0_5)}._popover_z1nut_534{position:absolute;z-index:1;top:100%;left:0;display:flex;width:var(--container-token-popover);max-width:calc(100vw - var(--spacing-8));box-sizing:border-box;flex-direction:column;gap:var(--spacing-4);margin-top:var(--spacing-1_5);padding:var(--spacing-5);border-radius:var(--radius-2xl);background:var(--color-surface);box-shadow:var(--shadow-overlay)}._popHead_z1nut_554{display:flex;align-items:baseline;justify-content:space-between;gap:var(--spacing-3)}._popFigure_z1nut_561{display:flex;align-items:baseline;gap:var(--spacing-2)}._popAmount_z1nut_569{color:var(--color-foreground);font-family:var(--font-display);font-size:var(--text-4xl);font-weight:var(--font-weight-semibold);letter-spacing:var(--tracking-tight);line-height:var(--leading-none)}._popUnit_z1nut_578{color:var(--color-foreground-secondary);font-size:var(--text-sm)}._popBar_z1nut_519{width:100%;height:var(--spacing-2);gap:var(--spacing-0_75)}._legend_z1nut_592{display:flex;flex-direction:column;gap:var(--spacing-3);margin:0;padding:0;list-style:none}._legendText_z1nut_601{display:flex;flex-direction:column}._legendRow_z1nut_606{display:flex;align-items:flex-start;gap:var(--spacing-2_5)}._swatchGranted_z1nut_612,._swatchPurchased_z1nut_613{width:var(--spacing-2_25);height:var(--spacing-2_25);flex-shrink:0;margin-top:var(--spacing-1);border-radius:var(--radius-sm)}._swatchGranted_z1nut_612{background:var(--color-grant)}._swatchPurchased_z1nut_613{background:var(--color-purchased)}._legendFigure_z1nut_629{color:var(--color-foreground);font-size:var(--text-sm);font-weight:var(--font-weight-medium);line-height:var(--spacing-4_5)}._legendNote_z1nut_637{color:var(--color-foreground-muted);font-size:var(--text-xs);line-height:var(--spacing-4)}._popFoot_z1nut_644{display:flex;flex-direction:column;gap:var(--spacing-3);padding-top:var(--spacing-3_5);border-top:1px solid var(--color-border)}._popNote_z1nut_652{margin:0;color:var(--color-foreground-secondary);font-size:var(--text-sm);line-height:var(--spacing-4_5)}._popWarning_z1nut_662{margin:0;color:var(--color-warning);font-size:var(--text-sm);font-weight:var(--font-weight-medium);line-height:var(--spacing-4_5)}._topBar_z1nut_518[data-tone=threshold],._popBar_z1nut_519[data-tone=threshold]{background:var(--color-warning-subtle)}._buy_z1nut_681{width:100%}@media(prefers-reduced-motion:reduce){._topTrigger_z1nut_453{transition:none}}._bar_1fqrh_9{display:grid;grid-template-columns:minmax(max-content,1fr) auto minmax(max-content,1fr);container:boost33-top-bar / inline-size;align-items:center;gap:var(--spacing-5);box-sizing:border-box;height:var(--spacing-12);padding:0 var(--spacing-8);border-bottom:1px solid var(--color-border);background:var(--color-surface);font-family:var(--font-sans)}._start_1fqrh_40,._end_1fqrh_41{display:flex;align-items:center}._start_1fqrh_40{grid-column:1;gap:var(--spacing-5)}._end_1fqrh_41{grid-column:3;justify-content:flex-end;gap:var(--spacing-3)}._centre_1fqrh_60{display:flex;grid-column:2;align-items:center;gap:var(--spacing-2)}._label_1fqrh_69{color:var(--color-foreground-muted);font-size:var(--text-sm);font-weight:var(--font-weight-medium);line-height:var(--spacing-4);white-space:nowrap}._label_1fqrh_69[data-after-switcher=true]{padding-left:var(--spacing-8)}@container boost33-top-bar (width < 80rem){._label_1fqrh_69{position:absolute;overflow:hidden;width:1px;height:1px;clip-path:inset(50%);white-space:nowrap}._label_1fqrh_69[data-after-switcher=true]{padding-left:0}._label_1fqrh_69[data-after-switcher=true]+*{margin-left:var(--spacing-6)}}@supports (animation-timeline: --a) and (timeline-scope: --a){@container style(--boost33-shell-timeline: on){._bar_1fqrh_9{position:relative;z-index:1;animation:_scrolled_1fqrh_1 linear both;animation-timeline:--boost33-shell-scroll;animation-range:0 var(--spacing-10)}}}@keyframes _scrolled_1fqrh_1{to{box-shadow:var(--shadow-scrolled)}}._button_oj9om_6{display:inline-flex;box-sizing:border-box;width:var(--spacing-8);height:var(--spacing-8);flex-shrink:0;align-items:center;justify-content:center;padding:0;border:none;border-radius:var(--radius-lg);background:var(--color-surface-muted);color:var(--color-foreground);cursor:pointer;transition:background-color var(--dur-fast) var(--ease-out)}._button_oj9om_6:hover{background:var(--color-border)}._button_oj9om_6:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}._bell_oj9om_33{width:var(--spacing-4);height:var(--spacing-4)}._dot_oj9om_42{fill:var(--color-primary)}._button_oj9om_6:hover ._dot_oj9om_42{fill:var(--color-orange-600)}._srOnly_oj9om_41{position:absolute;overflow:hidden;width:1px;height:1px;clip-path:inset(50%);white-space:nowrap}@media(prefers-reduced-motion:reduce){._button_oj9om_6{transition:none}}._header_i17td_42{display:flex;align-items:center;justify-content:space-between;gap:var(--spacing-8);padding:var(--spacing-4_5) var(--spacing-8) var(--spacing-4);background:var(--color-surface);font-family:var(--font-sans)}._headings_i17td_52{display:flex;min-width:0;flex-direction:column;gap:var(--spacing-1)}._title_i17td_33{margin:0;color:var(--color-foreground);font-family:var(--font-display);font-size:var(--text-2xl);font-weight:var(--font-weight-semibold);letter-spacing:var(--tracking-tight);line-height:var(--leading-tight)}._subtitle_i17td_74{margin:0;color:var(--color-foreground-secondary);font-size:var(--text-base);font-weight:var(--font-weight-regular);line-height:var(--leading-snug)}._actions_i17td_82{display:flex;flex:0 0 auto;align-items:center;gap:var(--spacing-2)}._shell_l6zer_13{display:flex;height:100%;flex-direction:column;background:var(--color-surface);font-family:var(--font-sans)}._body_l6zer_24{display:flex;min-height:0;flex:1}._appName_l6zer_39{flex-shrink:0;margin:0;padding:var(--spacing-1) var(--spacing-2_5) var(--spacing-3_5);overflow:hidden;color:var(--color-foreground-muted);font-family:var(--font-display);font-size:var(--text-md);font-weight:var(--font-weight-semibold);letter-spacing:var(--tracking-tight);line-height:var(--spacing-5);text-overflow:ellipsis;white-space:nowrap}._foot_l6zer_65{display:flex;flex-direction:column;gap:var(--spacing-0_5);margin-block-start:auto;padding-block-start:var(--spacing-4)}._actionSlot_l6zer_79{display:flex;flex-shrink:0;margin-block-start:auto;padding-block-start:var(--spacing-4)}._actionSlot_l6zer_79+._foot_l6zer_65{margin-block-start:var(--spacing-4);padding-block-start:var(--spacing-2_5);border-top:1px solid var(--color-border)}._action_l6zer_79{width:100%}._action_l6zer_79[data-collapsed=true]{width:var(--spacing-10);padding:0}._srOnly_l6zer_103{position:absolute;overflow:hidden;width:1px;height:1px;clip-path:inset(50%);white-space:nowrap}._nav_l6zer_116{display:flex;flex-direction:column;gap:var(--spacing-4)}._main_l6zer_125{display:flex;min-width:0;flex:1;flex-direction:column}._content_l6zer_146{flex:1;min-height:0;overflow-y:auto;background:var(--color-surface)}@supports (animation-timeline: --a) and (timeline-scope: --a){._shell_l6zer_13{timeline-scope:--boost33-shell-scroll;--boost33-shell-timeline: on}._content_l6zer_146{scroll-timeline:--boost33-shell-scroll block}}._phoneChrome_l6zer_207{display:none}@media not (min-width:48rem){._shell_l6zer_13[data-chrome-from=md]>:not(._body_l6zer_24,._phoneChrome_l6zer_207),._shell_l6zer_13[data-chrome-from=md] ._body_l6zer_24>:not(._main_l6zer_125){display:none}._shell_l6zer_13[data-chrome-from=md]{height:auto;min-height:100dvh}._shell_l6zer_13[data-chrome-from=md]>._phoneChrome_l6zer_207{display:contents}._shell_l6zer_13[data-chrome-from=md] ._content_l6zer_146{overflow-y:visible}}@media not (min-width:64rem){._shell_l6zer_13[data-chrome-from=lg]>:not(._body_l6zer_24,._phoneChrome_l6zer_207),._shell_l6zer_13[data-chrome-from=lg] ._body_l6zer_24>:not(._main_l6zer_125){display:none}._shell_l6zer_13[data-chrome-from=lg]{height:auto;min-height:100dvh}._shell_l6zer_13[data-chrome-from=lg]>._phoneChrome_l6zer_207{display:contents}._shell_l6zer_13[data-chrome-from=lg] ._content_l6zer_146{overflow-y:visible}}@media not (min-width:80rem){._shell_l6zer_13[data-chrome-from=xl]>:not(._body_l6zer_24,._phoneChrome_l6zer_207),._shell_l6zer_13[data-chrome-from=xl] ._body_l6zer_24>:not(._main_l6zer_125){display:none}._shell_l6zer_13[data-chrome-from=xl]{height:auto;min-height:100dvh}._shell_l6zer_13[data-chrome-from=xl]>._phoneChrome_l6zer_207{display:contents}._shell_l6zer_13[data-chrome-from=xl] ._content_l6zer_146{overflow-y:visible}}._root_18wu0_8{position:relative;font-family:var(--font-sans)}._trigger_18wu0_17{display:flex;box-sizing:border-box;width:100%;align-items:center;gap:var(--spacing-2);height:var(--spacing-8);padding:0 var(--spacing-3);border:none;border-radius:var(--radius-lg);background:var(--color-surface-muted);font-family:var(--font-sans);cursor:pointer;transition:background-color var(--dur-fast) var(--ease-out)}._trigger_18wu0_17:hover,._trigger_18wu0_17[aria-expanded=true]{background:var(--color-border)}._trigger_18wu0_17:focus-visible,._railTrigger_18wu0_52:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}._triggerName_18wu0_62{overflow:hidden;flex:1;color:var(--color-foreground);font-family:var(--font-display);font-size:var(--text-base);font-weight:var(--font-weight-semibold);line-height:var(--spacing-4_5);text-align:left;text-overflow:ellipsis;white-space:nowrap}._chevron_18wu0_79{width:var(--spacing-3);height:var(--spacing-3);flex-shrink:0;color:var(--color-foreground-muted);transition:transform var(--dur-fast) var(--ease-out)}._trigger_18wu0_17[aria-expanded=true] ._chevron_18wu0_79{transform:rotate(180deg)}._railTrigger_18wu0_52{display:flex;box-sizing:border-box;width:100%;min-height:var(--spacing-6);align-items:flex-start;justify-content:center;padding:0;border:none;background:transparent;cursor:pointer}._panel_18wu0_127{position:absolute;z-index:1;top:100%;left:0;display:flex;width:var(--container-app-switcher);box-sizing:border-box;flex-direction:column;gap:var(--spacing-1);margin-top:var(--spacing-1_5);padding:var(--spacing-2);border-radius:var(--radius-2xl);background:var(--color-surface);box-shadow:var(--shadow-overlay)}._hubRow_18wu0_147,._productRow_18wu0_148{display:flex;box-sizing:border-box;width:100%;align-items:center;gap:var(--spacing-3);border:none;font-family:var(--font-sans);text-align:left;text-decoration:none;cursor:pointer;transition:background-color var(--dur-fast) var(--ease-out)}._hubRow_18wu0_147{margin-bottom:var(--spacing-1);padding:var(--spacing-2_75) var(--spacing-3);border-radius:var(--radius-xl);background:var(--color-neutral-950);color:var(--color-neutral-0)}._hubRow_18wu0_147:hover{background:var(--color-neutral-800)}._hubRow_18wu0_147 ._rowText_18wu0_179{flex:1;gap:var(--spacing-0_5)}._hubRow_18wu0_147 ._rowName_18wu0_184{color:var(--color-neutral-0);font-size:var(--text-base);font-weight:var(--font-weight-semibold);line-height:var(--spacing-4_5)}._hubRow_18wu0_147 ._rowSub_18wu0_191{color:var(--color-neutral-400);font-size:var(--text-sm);line-height:var(--spacing-4)}._hubMark_18wu0_197{width:var(--spacing-5);height:var(--spacing-5);flex-shrink:0;color:var(--color-neutral-0)}._hubChevron_18wu0_204{width:var(--spacing-4);height:var(--spacing-4);flex-shrink:0;color:var(--color-neutral-0)}._productRow_18wu0_148{padding:var(--spacing-2_25) var(--spacing-3);border-radius:var(--radius-lg);background:transparent;color:var(--color-foreground-secondary)}._productRow_18wu0_148:hover,._productRow_18wu0_148[data-current=true]{background:var(--color-surface-muted)}._hubRow_18wu0_147:focus-visible,._productRow_18wu0_148:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}._productRow_18wu0_148[data-current=true] ._rowName_18wu0_184{color:var(--color-foreground);font-weight:var(--font-weight-semibold)}._productRow_18wu0_148[data-entitled=false] ._rowName_18wu0_184{color:var(--color-foreground-muted)}._group_18wu0_250{display:flex;flex-direction:column}._groupLabel_18wu0_258{margin:0;padding:var(--spacing-2) var(--spacing-3);color:var(--color-foreground-muted);font-size:var(--text-2xs);font-weight:var(--font-weight-semibold);line-height:var(--spacing-3_5);text-transform:uppercase}._products_18wu0_269{display:flex;flex-direction:column;margin:0;padding:0;list-style:none}._rowText_18wu0_179{display:flex;min-width:0;flex-direction:column}._rowName_18wu0_184{overflow:hidden;font-size:var(--text-nav-label);font-weight:var(--font-weight-regular);line-height:var(--spacing-4_5);text-overflow:ellipsis;white-space:nowrap}._productRow_18wu0_148 ._rowName_18wu0_184{flex:1}._rowSub_18wu0_191{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}._tag_18wu0_305{flex-shrink:0;padding:var(--spacing-0_5) var(--spacing-1_5);border-radius:var(--radius-full);background:var(--color-surface-muted);color:var(--color-foreground-muted);font-size:var(--text-2xs);font-weight:var(--font-weight-medium)}._trailing_18wu0_317{display:flex;min-width:var(--spacing-5);flex-shrink:0;align-items:center;justify-content:flex-end}._check_18wu0_325{width:var(--spacing-4);height:var(--spacing-4);color:var(--color-foreground)}._trailingValue_18wu0_333{color:var(--color-foreground-muted);font-family:var(--font-mono);font-size:var(--text-xs);line-height:var(--spacing-4);white-space:nowrap}._trailingDot_18wu0_343{width:var(--spacing-1_75);height:var(--spacing-1_75);border-radius:var(--radius-full);background:var(--color-primary)}._srOnly_18wu0_342{position:absolute;overflow:hidden;width:1px;height:1px;clip-path:inset(50%);white-space:nowrap}._chevronRight_18wu0_359{width:var(--spacing-4);height:var(--spacing-4);flex-shrink:0}@media(prefers-reduced-motion:reduce){._chevron_18wu0_79{transition:none}}._panel_1hhcn_36{display:flex;width:var(--container-notification-panel);box-sizing:border-box;flex-direction:column;overflow:hidden;border:1px solid var(--color-border);border-radius:var(--radius-2xl);background:var(--color-surface);box-shadow:var(--shadow-overlay);font-family:var(--font-sans)}._header_1hhcn_54{display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-3_5) var(--spacing-4) var(--spacing-2_5)}._title_1hhcn_62{margin:0;color:var(--color-foreground);font-size:var(--text-base);font-weight:var(--font-weight-semibold);line-height:var(--leading-tight)}._header_1hhcn_54 ._markAll_1hhcn_74{font-size:var(--text-xs);line-height:var(--leading-snug)}._tab_1hhcn_79:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}._tabs_1hhcn_88{display:flex;align-items:center;gap:var(--spacing-4_5);padding-inline:var(--spacing-4);border-bottom:1px solid var(--color-border)}._tab_1hhcn_79{display:flex;align-items:center;gap:var(--spacing-1_25);padding:var(--spacing-2) 0 var(--spacing-2_5);border:none;border-bottom:2px solid transparent;background:transparent;color:var(--color-foreground-muted);font-family:var(--font-sans);font-size:var(--text-sm);font-weight:var(--font-weight-regular);line-height:var(--leading-tight);cursor:pointer}._tab_1hhcn_79[aria-pressed=true]{border-bottom-color:var(--color-foreground);color:var(--color-foreground);font-weight:var(--font-weight-semibold)}._count_1hhcn_123{padding:var(--spacing-0_25) var(--spacing-1_25);border-radius:var(--radius-full);background:var(--color-surface-muted);color:var(--color-foreground-muted);font-size:var(--text-2xs);font-weight:var(--font-weight-semibold);line-height:var(--leading-tight)}._list_1hhcn_133{display:flex;flex-direction:column;margin:0;padding:0;list-style:none}._row_1hhcn_148{display:flex;box-sizing:border-box;width:100%;align-items:flex-start;gap:var(--spacing-2_5);padding:var(--spacing-2_5) var(--spacing-4);color:var(--color-foreground);font-family:var(--font-sans);text-align:left;text-decoration:none}._row_1hhcn_148[href]:hover{background:var(--color-surface-muted)}._row_1hhcn_148[href]:focus-visible{outline:2px solid var(--color-primary);outline-offset:-2px}._sourceMark_1hhcn_179{display:block;flex-shrink:0;margin-top:var(--spacing-0_25);color:var(--color-primary-foreground)}._sourceMarkGround_1hhcn_188{rx:var(--radius-product-tile);fill:var(--color-neutral-950)}._rowText_1hhcn_193{display:flex;min-width:0;flex:1;flex-direction:column;gap:var(--spacing-0_5)}._rowTitle_1hhcn_204{color:var(--color-foreground-secondary);font-size:var(--text-sm);font-weight:var(--font-weight-medium);line-height:var(--leading-snug)}._row_1hhcn_148[data-unread=true] ._rowTitle_1hhcn_204{color:var(--color-foreground)}._rowMeta_1hhcn_215{color:var(--color-foreground-muted);font-size:var(--text-xs);line-height:var(--leading-snug)}._unreadSlot_1hhcn_226{display:flex;width:var(--spacing-4);flex-shrink:0;justify-content:center;padding-top:var(--spacing-1)}._dot_1hhcn_235{width:var(--spacing-1_5);height:var(--spacing-1_5);flex-shrink:0;border-radius:var(--radius-full);background:var(--color-primary)}._empty_1hhcn_250{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--spacing-2_5);padding:var(--spacing-10) var(--spacing-6) var(--spacing-11)}._emptyGlyph_1hhcn_259{display:block;width:var(--spacing-7);height:var(--spacing-7);flex-shrink:0;color:var(--color-foreground-disabled)}._emptyText_1hhcn_267{display:flex;flex-direction:column;align-items:center;gap:var(--spacing-0_5)}._emptyTitle_1hhcn_274{margin:0;color:var(--color-foreground-secondary);font-size:var(--text-sm);font-weight:var(--font-weight-semibold);line-height:var(--leading-tight)}._emptyBody_1hhcn_282{margin:0;color:var(--color-foreground-muted);font-size:var(--text-xs);line-height:var(--leading-snug);text-align:center}._footer_1hhcn_291{display:flex;align-items:center;justify-content:center;padding:var(--spacing-2_5) var(--spacing-4);border-top:1px solid var(--color-border)}._footer_1hhcn_291 ._viewAll_1hhcn_300{font-size:var(--text-xs);line-height:var(--leading-snug)}._srOnly_1hhcn_307{position:absolute;overflow:hidden;width:1px;height:1px;clip-path:inset(50%);white-space:nowrap}._root_trt1y_61{position:relative;display:flex;height:fit-content}._trigger_trt1y_71{display:flex;width:var(--spacing-6_5);height:var(--spacing-6_5);flex-shrink:0;align-items:center;justify-content:center;overflow:hidden;padding:0;border:none;border-radius:var(--radius-full);background:var(--color-neutral-300);color:var(--color-foreground);cursor:pointer;font-family:var(--font-sans);font-size:var(--text-account-menu-micro);font-weight:var(--font-weight-semibold)}._trigger_trt1y_71:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}._avatarImage_trt1y_95{display:block;width:100%;height:100%;object-fit:cover}._panel_trt1y_102{position:absolute;z-index:40;top:calc(100% + var(--spacing-2_5));right:0;display:flex;box-sizing:border-box;width:var(--container-account-menu);flex-direction:column;padding:var(--spacing-1_5);border:1px solid var(--color-border);border-radius:var(--radius-2xl);background:var(--color-surface);box-shadow:var(--shadow-overlay);font-family:var(--font-sans)}._person_trt1y_124{display:flex;align-items:center;gap:var(--spacing-3);padding:var(--spacing-3_5) var(--spacing-3)}._personAvatar_trt1y_138{display:flex;width:var(--spacing-9_5);height:var(--spacing-9_5);flex-shrink:0;align-items:center;justify-content:center;border-radius:var(--radius-full);background:var(--color-neutral-300);color:var(--color-foreground);font-size:var(--text-nav-label);font-weight:var(--font-weight-semibold);object-fit:cover}._personText_trt1y_156{display:flex;min-width:0;flex-direction:column;gap:var(--spacing-0_5)}._personName_trt1y_164{overflow:hidden;color:var(--color-foreground);font-size:var(--text-nav-label);font-weight:var(--font-weight-semibold);line-height:var(--leading-snug);text-overflow:ellipsis;white-space:nowrap}._personEmail_trt1y_180{overflow:hidden;color:var(--color-foreground-muted);font-size:var(--text-xs);line-height:var(--leading-snug);text-overflow:ellipsis;white-space:nowrap}._org_trt1y_205{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--spacing-1);margin-inline:var(--spacing-1_5);padding:var(--spacing-2_25) var(--spacing-3);border-radius:var(--radius-xl);background:var(--color-neutral-50)}._orgIdentity_trt1y_219{display:flex;min-width:0;align-items:center;gap:var(--spacing-2_25)}._orgTile_trt1y_234{display:grid;width:var(--spacing-5_5);height:var(--spacing-5_5);flex-shrink:0;border-radius:var(--radius-lg);background:var(--color-neutral-950);color:var(--color-primary-foreground);font-size:var(--text-account-menu-micro);font-weight:var(--font-weight-semibold);place-items:center}._orgName_trt1y_250{overflow:hidden;color:var(--color-foreground);font-size:var(--text-sm);font-weight:var(--font-weight-semibold);line-height:var(--leading-tight);text-overflow:ellipsis;white-space:nowrap}._orgRole_trt1y_265{flex-shrink:0;padding:var(--spacing-0_5) var(--spacing-2);border-radius:var(--radius-full);background:var(--color-neutral-950);color:var(--color-primary-foreground);font-size:var(--text-account-menu-micro);font-weight:var(--font-weight-semibold);line-height:var(--leading-tight);white-space:nowrap}._divider_trt1y_201{margin:var(--spacing-1_5);border:none;border-top:1px solid var(--color-border)}._rows_trt1y_298{display:flex;flex-direction:column;margin:0;padding:0;list-style:none}._row_trt1y_48{display:flex;box-sizing:border-box;width:100%;align-items:flex-start;gap:var(--spacing-2_5);padding:var(--spacing-2_25) var(--spacing-3);border:none;border-radius:var(--radius-xl);background:transparent;color:var(--color-foreground);font-family:var(--font-sans);text-align:left;text-decoration:none;cursor:pointer;transition:background-color var(--dur-fast) var(--ease-out)}._row_trt1y_48:hover,._row_trt1y_48:focus{background:var(--color-neutral-50)}._row_trt1y_48:hover ._rowDescription_trt1y_359,._row_trt1y_48:focus ._rowDescription_trt1y_359{color:var(--color-foreground-secondary)}._row_trt1y_48:hover ._lane_trt1y_364,._row_trt1y_48:focus ._lane_trt1y_364,._row_trt1y_48[data-single-line=true]:hover ._rowLabel_trt1y_366,._row_trt1y_48[data-single-line=true]:focus ._rowLabel_trt1y_366{color:var(--color-foreground)}._row_trt1y_48:focus-visible{outline:2px solid var(--color-primary);outline-offset:-2px}._row_trt1y_48[data-single-line=true]{align-items:center}._row_trt1y_48[data-single-line=true] ._lane_trt1y_364{margin-top:0}._lane_trt1y_364{display:block;width:var(--spacing-4);height:var(--spacing-4);flex-shrink:0;margin-top:var(--spacing-0_5);color:var(--color-foreground-muted)}._lane_trt1y_364 svg{display:block;width:100%;height:100%}._rowText_trt1y_411{display:flex;min-width:0;flex-direction:column;gap:var(--spacing-0_5)}._rowLabel_trt1y_366{overflow:hidden;color:var(--color-foreground);font-size:var(--text-nav-label);font-weight:var(--font-weight-semibold);line-height:var(--leading-snug);text-overflow:ellipsis;white-space:nowrap}._row_trt1y_48[data-single-line=true] ._rowLabel_trt1y_366{color:var(--color-foreground-secondary);font-weight:var(--font-weight-regular)}._rowDescription_trt1y_359{color:var(--color-foreground-muted);font-size:var(--text-xs);line-height:var(--leading-snug);max-width:var(--container-account-menu-description)}@media(prefers-reduced-motion:reduce){._row_trt1y_48{transition:none}}:root{--shadow-overlay: 0px 16px 40px -10px var(--shadow-overlay-color);--shadow-lift: 0px 10px 24px -14px color-mix(in srgb, var(--color-neutral-950) 28%, transparent);--shadow-scrolled: 0px 6px 16px -12px color-mix(in srgb, var(--color-neutral-950) 35%, transparent)}._panel_1hdli_22{display:flex;overflow:clip;box-sizing:border-box;width:var(--container-command-palette);flex-direction:column;border:1px solid var(--color-border);border-radius:var(--radius-2xl);background:var(--color-surface);box-shadow:var(--shadow-overlay);font-family:var(--font-sans)}._searchRow_1hdli_38{display:flex;box-sizing:border-box;width:100%;align-items:center;flex-shrink:0;gap:var(--spacing-2_5);padding:var(--spacing-4);border-bottom:1px solid var(--color-border)}._searchGlyph_1hdli_49{width:var(--spacing-4);height:var(--spacing-4);flex-shrink:0;color:var(--color-foreground-muted)}._input_1hdli_63{min-width:0;flex:1;border:none;background:transparent;color:var(--color-foreground);font-family:var(--font-sans);font-size:var(--text-md);font-weight:var(--font-weight-medium)}._input_1hdli_63::placeholder{color:var(--color-foreground-muted)}._input_1hdli_63:focus{outline:none}._dismissKey_1hdli_94{flex-shrink:0;padding:var(--spacing-1) var(--spacing-1_5);border-radius:var(--radius-md);background:var(--color-surface-muted);color:var(--color-foreground-muted);font-size:var(--text-2xs)}._results_1hdli_109,._group_1hdli_115{display:flex;flex-direction:column;padding-block:var(--spacing-1)}._groupHeading_1hdli_127{margin:0;padding:var(--spacing-3) var(--spacing-4) var(--spacing-1_5);color:var(--color-foreground-muted);font-family:var(--font-sans);font-size:var(--text-2xs);font-weight:var(--font-weight-semibold);letter-spacing:var(--tracking-caps);text-transform:uppercase}._row_1hdli_146{display:flex;box-sizing:border-box;height:var(--spacing-10);align-items:center;gap:var(--spacing-2_5);margin-inline:var(--spacing-2);padding-inline:var(--spacing-2);border:none;border-radius:var(--radius-lg);background:transparent;color:var(--color-foreground);font-family:var(--font-sans);font-size:var(--text-nav-label);text-align:left;text-decoration:none;cursor:pointer}._row_1hdli_146:hover{background:var(--color-surface-muted)}._row_1hdli_146[aria-selected=true]{background:var(--color-surface-muted);font-weight:var(--font-weight-medium)}._icon_1hdli_184{display:flex;width:var(--spacing-5_5);height:var(--spacing-5_5);flex-shrink:0;align-items:center;justify-content:center;color:var(--color-foreground-muted)}._label_1hdli_197{overflow:hidden;min-width:0;text-overflow:ellipsis;white-space:nowrap}._empty_1hdli_209{margin:0;padding:var(--spacing-5) var(--spacing-4);color:var(--color-foreground-muted);font-size:var(--text-xs)}._footer_1hdli_217{display:flex;box-sizing:border-box;width:100%;align-items:center;flex-shrink:0;padding:var(--spacing-2) var(--spacing-4);border-top:1px solid var(--color-border)}._hints_1hdli_227{color:var(--color-foreground-muted);font-size:var(--text-xs)}._root_g1823_11{--dots-size: var(--spacing-8);--dots-speed: var(--dur-dots);--dots-ease: var(--ease-in-out-quint);--dots-gap: calc(var(--dots-size) * .14);--dots-dot: calc((var(--dots-size) - var(--dots-gap) * 2) / 3);display:inline-flex;align-items:center;justify-content:center}._grid_g1823_25{display:grid;gap:var(--dots-gap);grid-template-columns:repeat(3,var(--dots-dot))}._dot_g1823_31{width:var(--dots-dot);height:var(--dots-dot);border-radius:var(--radius-full);background:currentColor;opacity:1;animation:_dots-pulse_g1823_1 var(--dots-speed) var(--dots-ease) infinite backwards;animation-delay:calc(var(--dots-step, 0) * var(--dots-speed) / 4)}._dot_g1823_31:nth-child(1){--dots-step: 0}._dot_g1823_31:nth-child(2),._dot_g1823_31:nth-child(4){--dots-step: 1}._dot_g1823_31:nth-child(3),._dot_g1823_31:nth-child(5),._dot_g1823_31:nth-child(7){--dots-step: 2}._dot_g1823_31:nth-child(6),._dot_g1823_31:nth-child(8){--dots-step: 3}._dot_g1823_31:nth-child(9){--dots-step: 4}@keyframes _dots-pulse_g1823_1{0%,to{opacity:.2;transform:scale(.7)}50%{opacity:1;transform:scale(1)}}@media(prefers-reduced-motion:reduce){._dot_g1823_31{animation:none}}:root{--dur-instant: 80ms;--dur-fast: .15s;--dur-base: .22s;--dur-slow: .32s;--dur-bold: .7s;--dur-hero: .9s;--dur-spin: .7s;--dur-pulse: 1.6s;--ease-out: cubic-bezier(.22, 1, .36, 1);--ease-in: cubic-bezier(.4, 0, 1, 1);--ease-spring: cubic-bezier(.34, 1.56, .64, 1);--lift-sm: -1px;--lift-md: -2px;--rise: 8px;--stagger: 40ms;--duration-fast: var(--dur-fast);--easing-standard: var(--ease-out);--dur-dots: 1s;--ease-in-out-quint: cubic-bezier(.83, 0, .17, 1)}._root_1pg11_6{position:fixed;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;padding:var(--spacing-4);overflow:hidden;background-color:var(--color-neutral-1000);color:var(--color-neutral-0);--launch-accent: var(--launch-accent-input, var(--color-neutral-0));isolation:isolate}._glow_1pg11_9{position:absolute;top:50%;left:50%;z-index:0;width:298.333%;height:238.222%;transform:translate(-50%);border-radius:50%;background-image:radial-gradient(circle farthest-corner at 50% 50% in oklab,var(--color-orange-500) 0%,var(--color-orange-600) 28%,var(--color-orange-700) 48%,oklab(from var(--color-orange-700) l a b / 0%) 72%);filter:blur(5.5vmax)}._backdrop_1pg11_103{position:absolute;top:0;right:0;bottom:0;left:0;z-index:0;overflow:hidden}._content_1pg11_16{position:relative;display:flex;flex-direction:column;align-items:center;gap:var(--spacing-5);inline-size:min(280px,100%)}._dots_1pg11_139{--dots-size: var(--spacing-6);color:var(--launch-accent);mix-blend-mode:soft-light;opacity:1}._bar_1pg11_178{position:relative;inline-size:100%;block-size:var(--spacing-1);overflow:hidden;border-radius:var(--radius-full)}._track_1pg11_186{position:absolute;top:0;right:0;bottom:0;left:0;background:color-mix(in srgb,var(--launch-accent) 35%,transparent);mix-blend-mode:soft-light;opacity:.75}._fill_1pg11_194{position:absolute;inset-block:0;inset-inline-start:0;inline-size:calc(var(--launch-progress, 0) * 1%);border-radius:inherit;background:var(--color-neutral-0);transition:inline-size var(--dur-fast) var(--ease-out)}._bar_1pg11_178[data-indeterminate=true] ._fill_1pg11_194{inline-size:33.333%;animation:_launch-indeterminate_1pg11_1 calc(var(--dur-dots) * 1.5) var(--ease-out) infinite}@keyframes _launch-indeterminate_1pg11_1{0%{inset-inline-start:-33.333%}to{inset-inline-start:100%}}._caption_1pg11_220{margin:0;opacity:.8;font-family:var(--font-sans);font-size:var(--text-sm);font-weight:var(--font-weight-medium);line-height:var(--leading-normal);text-align:center}@media(prefers-reduced-motion:reduce){._fill_1pg11_194{transition:none}._bar_1pg11_178[data-indeterminate=true] ._fill_1pg11_194{inset-inline-start:33.333%;animation:none}}@media(prefers-contrast){._root_1pg11_6{--launch-accent: var(--color-neutral-0)}._glow_1pg11_9,._backdrop_1pg11_103{display:none}._dots_1pg11_139,._track_1pg11_186{mix-blend-mode:normal;opacity:1}}:root{--color-neutral-0: #FFFFFF;--color-neutral-50: #F7F7F8;--color-neutral-100: #EFEFF1;--color-neutral-200: #E5E5EA;--color-neutral-300: #D9D9D9;--color-neutral-400: #C1C1C2;--color-neutral-500: #8E8E93;--color-neutral-600: #6B6B6B;--color-neutral-700: #525252;--color-neutral-800: #3A3A3C;--color-neutral-900: #292929;--color-neutral-950: #1D1D1B;--color-neutral-1000: #000000;--color-orange-50: #FDF3EE;--color-orange-100: #FBE2D5;--color-orange-200: #F7C3A8;--color-orange-300: #F0A173;--color-orange-400: #EB7147;--color-orange-500: #E9521E;--color-orange-600: #C2410C;--color-orange-700: #9A3412;--color-sand-100: #FBF3E4;--color-sand-300: #F3D6AC;--color-sand-600: #8A6510;--color-green-100: #DDF0E4;--color-green-600: #157F3D;--color-crimson-100: #F7DEE1;--color-crimson-600: #A3182B;--color-blue-100: #DEE6FA;--color-blue-600: #2A5BD7;--color-background: var(--color-neutral-50);--color-surface: var(--color-neutral-0);--color-surface-muted: var(--color-neutral-100);--color-border: var(--color-neutral-200);--color-border-strong: var(--color-neutral-300);--color-foreground: var(--color-neutral-950);--color-foreground-secondary: var(--color-neutral-700);--color-foreground-muted: var(--color-neutral-600);--color-foreground-disabled: var(--color-neutral-400);--color-primary: var(--color-orange-500);--color-primary-hover: var(--color-orange-600);--color-primary-foreground: var(--color-neutral-0);--color-primary-subtle: var(--color-orange-50);--color-primary-border: var(--color-orange-200);--color-success: var(--color-green-600);--color-success-subtle: var(--color-green-100);--color-warning: var(--color-sand-600);--color-warning-subtle: var(--color-sand-300);--color-danger: var(--color-crimson-600);--color-danger-subtle: var(--color-crimson-100);--color-info: var(--color-blue-600);--color-info-subtle: var(--color-blue-100);--color-grant: var(--color-sand-600);--color-purchased: var(--color-neutral-950);--shadow-overlay-color: rgb(29 29 27 / 20%);--font-display: var(--boost33-font-display, Outfit), ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;--font-sans: var(--boost33-font-sans, Inter), ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;--font-mono: var(--boost33-font-mono, "Geist Mono"), ui-monospace, SFMono-Regular, "SF Mono", Menlo, Consolas, "Liberation Mono", monospace;--text-3xs: 9px;--text-2xs: 11px;--text-xs: 12px;--text-sm: 13px;--text-base: 15px;--text-md: 16px;--text-lg: 18px;--text-xl: 20px;--text-2xl: 24px;--text-3xl: 30px;--text-4xl: 36px;--text-5xl: 46px;--text-6xl: 60px;--text-7xl: 78px;--text-nav-label: 14px;--text-account-menu-micro: 10px;--text-settings-group-label: 10px;--font-weight-light: 300;--font-weight-regular: 400;--font-weight-medium: 500;--font-weight-semibold: 600;--font-weight-bold: 700;--tracking-tighter: -.03em;--tracking-tight: -.02em;--tracking-normal: 0em;--tracking-wide: .04em;--tracking-wider: .09em;--tracking-caps: .05em;--tracking-settings-title: -.01em;--leading-none: 100%;--leading-tight: 120%;--leading-snug: 135%;--leading-normal: 150%;--leading-relaxed: 170%;--breakpoint-mobile: 390px;--breakpoint-desktop: 1440px;--container-sidebar: 264px;--container-sidebar-rail: 56px;--container-command-palette: 560px;--container-content: 1440px;--container-account-menu: 312px;--container-account-menu-description: 230px;--container-app-switcher: 360px;--container-token-popover: 340px;--container-notification-panel: 360px;--spacing-1: 4px;--spacing-2: 8px;--spacing-3: 12px;--spacing-4: 16px;--spacing-4_5: 18px;--spacing-5: 20px;--spacing-6: 24px;--spacing-6_5: 26px;--spacing-7: 28px;--spacing-8: 32px;--spacing-10: 40px;--spacing-11: 44px;--spacing-12: 48px;--spacing-16: 64px;--spacing-20: 80px;--spacing-2_5: 10px;--spacing-5_5: 22px;--spacing-1_5: 6px;--spacing-1_25: 5px;--spacing-0_5: 2px;--spacing-2_25: 9px;--spacing-3_5: 14px;--spacing-2_75: 11px;--spacing-1_75: 7px;--spacing-0_75: 3px;--spacing-0_25: 1px;--spacing-settings-crumb: 7px;--spacing-topup-reserve: 68px;--spacing-wallet-segment-min: 3px;--spacing-9_5: 38px;--radius-none: 0px;--radius-xs: 2px;--radius-sm: 3px;--radius-md: 4px;--radius-lg: 6px;--radius-xl: 8px;--radius-2xl: 12px;--radius-full: 9999px;--radius-product-tile: 25%}._root_1y1aa_41{container-type:inline-size}._frame_1y1aa_47{display:flex;min-height:100vh;background:var(--color-background);color:var(--color-foreground);font-family:var(--font-sans)}._sidebar_1y1aa_59{display:flex;box-sizing:border-box;width:var(--container-sidebar);flex-shrink:0;flex-direction:column;padding:0 var(--spacing-3);border-right:1px solid var(--color-border);background:var(--color-neutral-50)}._sidebar_1y1aa_59 a{text-decoration:none}._back_1y1aa_76{display:flex;align-items:center;gap:var(--spacing-2_5);padding:var(--spacing-4) var(--spacing-2_5) var(--spacing-3_5);color:var(--color-foreground)}._backLabel_1y1aa_84{font-size:var(--text-nav-label);font-weight:var(--font-weight-semibold);line-height:var(--spacing-4_5)}._glyph_1y1aa_91{display:block;width:var(--spacing-4);height:var(--spacing-4);flex-shrink:0}._title_1y1aa_99{padding:var(--spacing-2_5) var(--spacing-2_5) var(--spacing-4)}._titleText_1y1aa_103{font-family:var(--font-display);font-size:var(--text-xl);font-weight:var(--font-weight-semibold);letter-spacing:var(--tracking-settings-title);line-height:var(--spacing-6)}._group_1y1aa_112{display:flex;flex-direction:column;gap:var(--spacing-0_25)}._group_1y1aa_112+._group_1y1aa_112{padding-top:var(--spacing-5)}._groupLabel_1y1aa_124{padding:0 var(--spacing-2_5) var(--spacing-2)}._groupLabelText_1y1aa_128{color:var(--color-foreground-muted);font-size:var(--text-settings-group-label);font-weight:var(--font-weight-semibold);letter-spacing:var(--tracking-caps);line-height:var(--spacing-3);text-transform:uppercase}._item_1y1aa_140{display:flex;align-items:center;gap:var(--spacing-2_5);padding:var(--spacing-2) var(--spacing-2_5);border-radius:var(--radius-lg);color:var(--color-foreground-muted)}._item_1y1aa_140[aria-current=page]{background:var(--color-surface);color:var(--color-foreground)}._icon_1y1aa_157{display:flex;width:var(--spacing-4);height:var(--spacing-4);flex-shrink:0;align-items:center;justify-content:center}._icon_1y1aa_157>svg{width:100%;height:100%}._label_1y1aa_171{flex-grow:1;color:var(--color-foreground-secondary);font-size:var(--text-nav-label);font-weight:var(--font-weight-regular);line-height:var(--spacing-4)}._item_1y1aa_140[aria-current=page] ._label_1y1aa_171{color:var(--color-foreground);font-weight:var(--font-weight-semibold)}._swatch_1y1aa_186{width:var(--spacing-4);height:var(--spacing-4);flex-shrink:0;border-radius:var(--radius-md);background:var(--color-neutral-300)}._spacer_1y1aa_195{flex-grow:1}._signOut_1y1aa_201{margin-bottom:var(--spacing-4)}._column_1y1aa_207{display:flex;min-width:0;flex-basis:0;flex-direction:column;flex-grow:1}._header_1y1aa_216{display:flex;box-sizing:border-box;height:var(--spacing-12);flex-shrink:0;align-items:center;justify-content:space-between;padding:0 var(--spacing-5);border-bottom:1px solid var(--color-border)}._headerStart_1y1aa_227{display:flex;align-items:center;gap:var(--spacing-3)}._panelMark_1y1aa_237{display:flex;color:var(--color-foreground-muted)}._crumbs_1y1aa_244{display:flex;align-items:center;gap:var(--spacing-settings-crumb);margin:0;padding:0;font-size:var(--text-sm);line-height:var(--spacing-4);list-style:none}._crumbStep_1y1aa_255{display:flex;align-items:center;gap:var(--spacing-settings-crumb)}._crumb_1y1aa_244{color:var(--color-foreground-muted);text-decoration:none}._crumbSeparator_1y1aa_266{color:var(--color-foreground-disabled)}._crumbCurrent_1y1aa_270{color:var(--color-foreground);font-weight:var(--font-weight-semibold);text-decoration:none}._headerEnd_1y1aa_276,._helpLinks_1y1aa_282{display:flex;align-items:center;gap:var(--spacing-4_5)}._helpLink_1y1aa_282{color:var(--color-foreground-secondary);font-size:var(--text-sm);line-height:var(--leading-normal);text-decoration:none}._content_1y1aa_298{display:flex;flex-direction:column;flex-grow:1;background:var(--color-surface)}._pageHead_1y1aa_307{display:flex;flex-shrink:0;align-items:flex-start;justify-content:space-between;gap:var(--spacing-6);padding:var(--spacing-7) var(--spacing-8) var(--spacing-6);border-bottom:1px solid var(--color-border);background:var(--color-surface)}._pageHeadText_1y1aa_318{display:flex;flex-direction:column;gap:var(--spacing-1)}._pageTitle_1y1aa_325{margin:0;font-family:var(--font-display);font-size:var(--text-xl);font-weight:var(--font-weight-semibold);letter-spacing:var(--tracking-tight);line-height:var(--spacing-6)}._pageDescription_1y1aa_335{margin:0;color:var(--color-foreground-muted);font-size:var(--text-xs);line-height:var(--spacing-4)}@container (max-width: 767px){._frame_1y1aa_47{flex-direction:column}._sidebar_1y1aa_59{width:auto;flex-direction:row;align-items:center;gap:var(--spacing-0_5);padding:var(--spacing-1_5) var(--spacing-2);overflow-x:auto;border-right:none;border-bottom:1px solid var(--color-border);white-space:nowrap}._sidebar_1y1aa_59 a{flex-shrink:0}._title_1y1aa_99,._groupLabel_1y1aa_124,._spacer_1y1aa_195,._helpLinks_1y1aa_282,._panelMark_1y1aa_237{display:none}._group_1y1aa_112{flex-direction:row;gap:var(--spacing-0_5)}._group_1y1aa_112+._group_1y1aa_112{padding-top:0}._back_1y1aa_76,._signOut_1y1aa_201{margin:0;padding:var(--spacing-2) var(--spacing-2_5)}._header_1y1aa_216{padding:0 var(--spacing-4)}._pageHead_1y1aa_307{flex-wrap:wrap;padding:var(--spacing-5) var(--spacing-4) var(--spacing-4_5)}}