@dsh-workbench/core 1.1.5 → 1.1.6

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 (27) hide show
  1. package/client.js +704 -520
  2. package/dist/client/client.body.js +704 -520
  3. package/dist/client/index.js +575 -391
  4. package/dist/host/index.js +613 -149
  5. package/dist/types/app/layouts/market/market-check.d.ts +7 -0
  6. package/dist/types/app/layouts/market/market-header.d.ts +3 -1
  7. package/dist/types/app/layouts/market/section-check.d.ts +12 -0
  8. package/dist/types/app/layouts/market/use-market-reload.d.ts +14 -0
  9. package/dist/types/app/layouts/market/use-module-versions.d.ts +20 -4
  10. package/dist/types/app/layouts/rightbar/FailureCard.d.ts +3 -3
  11. package/dist/types/app/layouts/rightbar/MarketView.d.ts +5 -3
  12. package/dist/types/app/layouts/rightbar/failure-card-text.d.ts +6 -0
  13. package/dist/types/app/layouts/rightbar/market-row-types.d.ts +2 -0
  14. package/dist/types/app/layouts/rightbar/market-rows.d.ts +2 -0
  15. package/dist/types/app/layouts/rightbar/market-uninstall.d.ts +10 -0
  16. package/dist/types/app/layouts/rightbar/market-update-verdict.d.ts +2 -0
  17. package/dist/types/kernel/contract/market-index.d.ts +1 -1
  18. package/dist/types/modules/panels/model/market-env.d.ts +2 -2
  19. package/dist/types/modules/panels/model/market-swap-stuck.d.ts +20 -0
  20. package/dist/types/modules/panels/model/market-swap-stuck.test.d.ts +1 -0
  21. package/dist/types/modules/panels/model/market-types.d.ts +3 -0
  22. package/dist/types/modules/panels/model/market-update-bundle.d.ts +5 -0
  23. package/dist/types/modules/panels/model/plugin-actions.d.ts +1 -1
  24. package/dist/types/shared/api/host/self-update-marker.d.ts +5 -0
  25. package/dist/types/shared/api/host/self-update-marker.test.d.ts +1 -0
  26. package/package.json +3 -3
  27. package/skills/workbench-module-diy/WIRING.md +2 -1
package/client.js CHANGED
@@ -792,13 +792,13 @@ window.__ModuleLoader__.load({
792
792
  //#endregion
793
793
  //#region ../shared/dist/lib/react.js
794
794
  var react$1 = require("react");
795
- var h$69 = react$1.createElement;
795
+ var h$71 = react$1.createElement;
796
796
  var Fragment$22 = react$1.Fragment;
797
797
  var Component = react$1.Component;
798
798
  react$1.createContext;
799
799
  react$1.useContext;
800
800
  var useState$42 = react$1.useState;
801
- var useEffect$31 = react$1.useEffect;
801
+ var useEffect$32 = react$1.useEffect;
802
802
  react$1.useLayoutEffect;
803
803
  var useMemo$10 = react$1.useMemo;
804
804
  react$1.useCallback;
@@ -813,7 +813,7 @@ window.__ModuleLoader__.load({
813
813
  * @returns 一个 div。
814
814
  */
815
815
  function ActivityBlock({ head, children }) {
816
- return h$69("div", { className: "wb-activityBlock" }, head === void 0 ? null : h$69("div", { className: "wb-activityBlockHead" }, head), children);
816
+ return h$71("div", { className: "wb-activityBlock" }, head === void 0 ? null : h$71("div", { className: "wb-activityBlockHead" }, head), children);
817
817
  }
818
818
  /**
819
819
  * 一条活动:状态点 + 正文 + 时间,行尾可挂动作;时间一律用它,别自己拼。
@@ -824,7 +824,7 @@ window.__ModuleLoader__.load({
824
824
  * @returns 一行。
825
825
  */
826
826
  function ActivityLine({ dot, text, at, actions }) {
827
- return h$69("div", { className: "wb-activityLine" }, dot, h$69("span", { className: "wb-activityLineText" }, text), at === void 0 ? null : h$69("span", { className: "wb-activityLineAt" }, at), actions === void 0 ? null : h$69("span", { className: "wb-activityLineActions" }, actions));
827
+ return h$71("div", { className: "wb-activityLine" }, dot, h$71("span", { className: "wb-activityLineText" }, text), at === void 0 ? null : h$71("span", { className: "wb-activityLineAt" }, at), actions === void 0 ? null : h$71("span", { className: "wb-activityLineActions" }, actions));
828
828
  }
829
829
  /**
830
830
  * 活动行尾那颗动作:给 `href` 就是外链,否则是图标钮并带上 tooltip。
@@ -838,7 +838,7 @@ window.__ModuleLoader__.load({
838
838
  */
839
839
  function ActivityAction({ label, hint, icon, href, onClick, failed }) {
840
840
  const tip = hint ?? label;
841
- if (href !== void 0) return h$69("a", {
841
+ if (href !== void 0) return h$71("a", {
842
842
  className: "wb-iconButton",
843
843
  href,
844
844
  target: "_blank",
@@ -846,13 +846,13 @@ window.__ModuleLoader__.load({
846
846
  title: tip,
847
847
  "aria-label": label
848
848
  }, icon);
849
- return h$69(_deepseek_ai_dsh_client_ui_primitives.Tooltip, {
849
+ return h$71(_deepseek_ai_dsh_client_ui_primitives.Tooltip, {
850
850
  side: "bottom",
851
851
  align: "end",
852
852
  gap: 6,
853
853
  portal: true,
854
854
  label: tip
855
- }, h$69(_deepseek_ai_dsh_client_ui_primitives.Button, {
855
+ }, h$71(_deepseek_ai_dsh_client_ui_primitives.Button, {
856
856
  type: "button",
857
857
  variant: "ghost",
858
858
  size: "sm",
@@ -874,10 +874,10 @@ window.__ModuleLoader__.load({
874
874
  */
875
875
  function Note({ tone = "muted", as, role, children }) {
876
876
  const className = tone === "problem" ? "wb-problem" : "wb-note";
877
- return as === "span" ? h$69("span", {
877
+ return as === "span" ? h$71("span", {
878
878
  className,
879
879
  role
880
- }, children) : h$69("p", {
880
+ }, children) : h$71("p", {
881
881
  className,
882
882
  role
883
883
  }, children);
@@ -921,10 +921,10 @@ window.__ModuleLoader__.load({
921
921
  render() {
922
922
  const { reason } = this.state;
923
923
  if (reason === null) return this.props.children;
924
- return h$69(Note, { tone: "problem" }, h$69("span", null, this.props.t("panels.cardBroken", {
924
+ return h$71(Note, { tone: "problem" }, h$71("span", null, this.props.t("panels.cardBroken", {
925
925
  unit: this.props.unit,
926
926
  reason
927
- })), " ", h$69(_deepseek_ai_dsh_client_ui_primitives.Button, {
927
+ })), " ", h$71(_deepseek_ai_dsh_client_ui_primitives.Button, {
928
928
  type: "button",
929
929
  variant: "outline",
930
930
  size: "sm",
@@ -974,19 +974,19 @@ window.__ModuleLoader__.load({
974
974
  const owner = (props.units ?? []).find((face) => face.approval?.tools.includes(input.tool) === true);
975
975
  if (owner?.approval !== void 0) {
976
976
  const Render = owner.approval.render;
977
- return h$69(CardBoundary, {
977
+ return h$71(CardBoundary, {
978
978
  unit: owner.unit,
979
979
  resetKey: props.callId ?? "",
980
980
  t
981
- }, h$69(Render, {
981
+ }, h$71(Render, {
982
982
  input,
983
983
  t
984
984
  }));
985
985
  }
986
986
  const shell = props.renderShell?.(input, t);
987
- if (shell !== void 0 && shell !== null) return h$69(Fragment$22, null, shell);
987
+ if (shell !== void 0 && shell !== null) return h$71(Fragment$22, null, shell);
988
988
  if (command === "") return null;
989
- return h$69(_deepseek_ai_dsh_client_ui_primitives.CodeBlock, {
989
+ return h$71(_deepseek_ai_dsh_client_ui_primitives.CodeBlock, {
990
990
  code: command,
991
991
  className: "wb-approvalCommand",
992
992
  copyLabel: t("blocker.copy"),
@@ -1004,10 +1004,10 @@ window.__ModuleLoader__.load({
1004
1004
  * @returns 一个 div。
1005
1005
  */
1006
1006
  function ApprovalPlan({ rows, hint, warn, children }) {
1007
- return h$69("div", { className: "wb-approvalPlan" }, hint === void 0 ? null : h$69("p", { className: "wb-approvalHint" }, hint), h$69("dl", { className: "wb-approvalRows" }, rows.map((row, index) => h$69("div", {
1007
+ return h$71("div", { className: "wb-approvalPlan" }, hint === void 0 ? null : h$71("p", { className: "wb-approvalHint" }, hint), h$71("dl", { className: "wb-approvalRows" }, rows.map((row, index) => h$71("div", {
1008
1008
  className: "wb-approvalRow",
1009
1009
  key: String(index)
1010
- }, h$69("dt", { className: "wb-approvalLabel" }, row.label), h$69("dd", { className: "wb-approvalValue" }, row.value)))), children, warn === void 0 ? null : h$69("p", { className: "wb-approvalWarn" }, warn));
1010
+ }, h$71("dt", { className: "wb-approvalLabel" }, row.label), h$71("dd", { className: "wb-approvalValue" }, row.value)))), children, warn === void 0 ? null : h$71("p", { className: "wb-approvalWarn" }, warn));
1011
1011
  }
1012
1012
  //#endregion
1013
1013
  //#region ../shared/dist/components/CardHead.js
@@ -1024,47 +1024,47 @@ window.__ModuleLoader__.load({
1024
1024
  function CardHead({ t, title, meta, refreshing, onRefresh, gear, gearOpen, onToggleGear, platformHref, platform, platformTitle }) {
1025
1025
  const refreshLabel = refreshing ? t("rightbar.refreshing") : t("rightbar.refresh");
1026
1026
  const platformLabel = platformTitle ?? platform ?? t("rightbar.openPlatform");
1027
- return h$69("header", { className: "wb-cardHead" }, h$69("h2", { className: "wb-cardTitle" }, title), meta === void 0 ? null : h$69("span", { className: "wb-cardMeta" }, meta), platformHref === void 0 ? null : h$69(_deepseek_ai_dsh_client_ui_primitives.Tooltip, {
1027
+ return h$71("header", { className: "wb-cardHead" }, h$71("h2", { className: "wb-cardTitle" }, title), meta === void 0 ? null : h$71("span", { className: "wb-cardMeta" }, meta), platformHref === void 0 ? null : h$71(_deepseek_ai_dsh_client_ui_primitives.Tooltip, {
1028
1028
  side: "bottom",
1029
1029
  align: "end",
1030
1030
  gap: 6,
1031
1031
  portal: true,
1032
1032
  label: platformLabel
1033
- }, h$69("a", {
1033
+ }, h$71("a", {
1034
1034
  className: "wb-iconButton wb-cardOpen",
1035
1035
  href: platformHref,
1036
1036
  target: "_blank",
1037
1037
  rel: "noreferrer noopener",
1038
1038
  "aria-label": platform ?? platformLabel
1039
- }, h$69(_deepseek_ai_dsh_client_ui_primitives.IconRightUpOutlineRegular, { size: 14 }))), h$69(_deepseek_ai_dsh_client_ui_primitives.Tooltip, {
1039
+ }, h$71(_deepseek_ai_dsh_client_ui_primitives.IconRightUpOutlineRegular, { size: 14 }))), h$71(_deepseek_ai_dsh_client_ui_primitives.Tooltip, {
1040
1040
  side: "bottom",
1041
1041
  align: "end",
1042
1042
  gap: 6,
1043
1043
  portal: true,
1044
1044
  label: refreshLabel
1045
- }, h$69(_deepseek_ai_dsh_client_ui_primitives.Button, {
1045
+ }, h$71(_deepseek_ai_dsh_client_ui_primitives.Button, {
1046
1046
  type: "button",
1047
1047
  size: "sm",
1048
1048
  variant: "ghost",
1049
1049
  className: `wb-cardRefresh${refreshing ? " wb-spinning" : ""}`,
1050
1050
  "aria-label": refreshLabel,
1051
1051
  disabled: refreshing,
1052
- icon: h$69(_deepseek_ai_dsh_client_ui_primitives.IconRefreshOutlineRegular, { size: 14 }),
1052
+ icon: h$71(_deepseek_ai_dsh_client_ui_primitives.IconRefreshOutlineRegular, { size: 14 }),
1053
1053
  onClick: onRefresh
1054
- })), gear === void 0 || onToggleGear === void 0 ? null : h$69(_deepseek_ai_dsh_client_ui_primitives.Tooltip, {
1054
+ })), gear === void 0 || onToggleGear === void 0 ? null : h$71(_deepseek_ai_dsh_client_ui_primitives.Tooltip, {
1055
1055
  side: "bottom",
1056
1056
  align: "end",
1057
1057
  gap: 6,
1058
1058
  portal: true,
1059
1059
  label: gear
1060
- }, h$69(_deepseek_ai_dsh_client_ui_primitives.Button, {
1060
+ }, h$71(_deepseek_ai_dsh_client_ui_primitives.Button, {
1061
1061
  type: "button",
1062
1062
  size: "sm",
1063
1063
  variant: "ghost",
1064
1064
  className: `wb-cardGear${gearOpen === true ? " wb-iconButtonActive" : ""}`,
1065
1065
  "aria-label": gear,
1066
1066
  "aria-expanded": gearOpen === true,
1067
- icon: h$69(_deepseek_ai_dsh_client_ui_primitives.IconSettingsOutlineRegular, { size: 15 }),
1067
+ icon: h$71(_deepseek_ai_dsh_client_ui_primitives.IconSettingsOutlineRegular, { size: 15 }),
1068
1068
  onClick: onToggleGear
1069
1069
  })));
1070
1070
  }
@@ -1081,13 +1081,13 @@ window.__ModuleLoader__.load({
1081
1081
  * @returns 一个 `<section>`。
1082
1082
  */
1083
1083
  function Card({ t, title, refreshing, onRefresh, meta, head, children }) {
1084
- return h$69("section", { className: "wb-card" }, head === void 0 ? h$69(CardHead, {
1084
+ return h$71("section", { className: "wb-card" }, head === void 0 ? h$71(CardHead, {
1085
1085
  t,
1086
1086
  title,
1087
1087
  refreshing,
1088
1088
  onRefresh,
1089
1089
  meta
1090
- }) : head, h$69("div", { className: "wb-cardBody" }, children));
1090
+ }) : head, h$71("div", { className: "wb-cardBody" }, children));
1091
1091
  }
1092
1092
  var CardAnchor_module_default = { anchor: "_anchor_yq4s2_1" };
1093
1093
  //#endregion
@@ -1107,7 +1107,7 @@ window.__ModuleLoader__.load({
1107
1107
  * @returns 带 id 的占位 div。
1108
1108
  */
1109
1109
  function CardAnchor({ unit, children }) {
1110
- return h$69("div", {
1110
+ return h$71("div", {
1111
1111
  id: cardIdOf(unit),
1112
1112
  className: CardAnchor_module_default.anchor
1113
1113
  }, children);
@@ -1121,13 +1121,13 @@ window.__ModuleLoader__.load({
1121
1121
  * @returns 一枚 `StateDot state="ongoing"`,自身不带文字。
1122
1122
  */
1123
1123
  function Spinner({ size = 14, label }) {
1124
- return h$69("span", {
1124
+ return h$71("span", {
1125
1125
  className: "wb-spinner",
1126
1126
  ...label === void 0 ? { "aria-hidden": true } : {
1127
1127
  role: "status",
1128
1128
  "aria-label": label
1129
1129
  }
1130
- }, h$69(_deepseek_ai_dsh_client_ui_primitives.StateDot, {
1130
+ }, h$71(_deepseek_ai_dsh_client_ui_primitives.StateDot, {
1131
1131
  state: "ongoing",
1132
1132
  size
1133
1133
  }));
@@ -1135,24 +1135,24 @@ window.__ModuleLoader__.load({
1135
1135
  //#endregion
1136
1136
  //#region ../shared/dist/components/ChoiceGroup.js
1137
1137
  function ChoiceMenu(input) {
1138
- const body = input.loading ? h$69("span", {
1138
+ const body = input.loading ? h$71("span", {
1139
1139
  className: "wb-choiceLoading",
1140
1140
  role: "status"
1141
- }, h$69(Spinner, { size: 14 }), h$69("span", { className: "wb-choiceLoadingText" }, input.loadingText ?? "…")) : input.options.length === 0 ? input.emptyText === void 0 ? null : h$69("span", { className: "wb-choiceEmpty" }, input.emptyText) : input.options.map((option) => {
1141
+ }, h$71(Spinner, { size: 14 }), h$71("span", { className: "wb-choiceLoadingText" }, input.loadingText ?? "…")) : input.options.length === 0 ? input.emptyText === void 0 ? null : h$71("span", { className: "wb-choiceEmpty" }, input.emptyText) : input.options.map((option) => {
1142
1142
  const row = input.rowOf(option.value);
1143
- return h$69(Fragment$22, { key: option.value }, h$69("label", { className: `wb-choiceOption${row.checked ? " wb-choiceOptionOn" : ""}` }, h$69("input", {
1143
+ return h$71(Fragment$22, { key: option.value }, h$71("label", { className: `wb-choiceOption${row.checked ? " wb-choiceOptionOn" : ""}` }, h$71("input", {
1144
1144
  className: input.multi ? "wb-checkbox" : "wb-radio",
1145
1145
  type: input.multi ? "checkbox" : "radio",
1146
1146
  name: input.name,
1147
1147
  checked: row.checked,
1148
1148
  disabled: input.disabled,
1149
1149
  onChange: row.onSelect
1150
- }), input.multi ? h$69("span", {
1150
+ }), input.multi ? h$71("span", {
1151
1151
  className: "wb-checkboxBox",
1152
1152
  "aria-hidden": "true"
1153
- }, row.checked ? h$69(_deepseek_ai_dsh_client_ui_primitives.IconCheckOutlineRegular, { size: 12 }) : null) : null, h$69("span", { className: "wb-choiceLabel" }, h$69("span", { className: "wb-choiceLabelText" }, option.label), option.description === void 0 ? null : h$69("span", { className: "wb-choiceDescription" }, option.description))));
1153
+ }, row.checked ? h$71(_deepseek_ai_dsh_client_ui_primitives.IconCheckOutlineRegular, { size: 12 }) : null) : null, h$71("span", { className: "wb-choiceLabel" }, h$71("span", { className: "wb-choiceLabelText" }, option.label), option.description === void 0 ? null : h$71("span", { className: "wb-choiceDescription" }, option.description))));
1154
1154
  });
1155
- return h$69("div", {
1155
+ return h$71("div", {
1156
1156
  className: "wb-choiceMenu",
1157
1157
  "data-variant": input.variant,
1158
1158
  role: input.multi ? "group" : "radiogroup",
@@ -1186,7 +1186,7 @@ window.__ModuleLoader__.load({
1186
1186
  if (props.multi === true) {
1187
1187
  const values = props.values;
1188
1188
  const onChange = props.onChange;
1189
- return h$69(ChoiceMenu, {
1189
+ return h$71(ChoiceMenu, {
1190
1190
  label: common.label,
1191
1191
  name: common.name,
1192
1192
  options: common.options,
@@ -1206,7 +1206,7 @@ window.__ModuleLoader__.load({
1206
1206
  }
1207
1207
  const value = props.value;
1208
1208
  const onChange = props.onChange;
1209
- return h$69(ChoiceMenu, {
1209
+ return h$71(ChoiceMenu, {
1210
1210
  label: common.label,
1211
1211
  name: common.name,
1212
1212
  options: common.options,
@@ -1259,17 +1259,17 @@ window.__ModuleLoader__.load({
1259
1259
  function FormActions({ actions }) {
1260
1260
  if (actions.length === 0) return null;
1261
1261
  reportExtraPrimaries(actions);
1262
- return h$69("div", { className: "wb-formActions" }, ordered(actions).map((action) => {
1262
+ return h$71("div", { className: "wb-formActions" }, ordered(actions).map((action) => {
1263
1263
  const kind = kindOf(action);
1264
1264
  const busy = action.busy === true;
1265
- return h$69(_deepseek_ai_dsh_client_ui_primitives.Button, {
1265
+ return h$71(_deepseek_ai_dsh_client_ui_primitives.Button, {
1266
1266
  key: action.key,
1267
1267
  type: "button",
1268
1268
  size: "sm",
1269
1269
  variant: variantOf(kind),
1270
1270
  className: kind === "danger" ? "wb-formActionDanger" : void 0,
1271
1271
  disabled: busy || action.disabled === true,
1272
- icon: busy ? h$69(Spinner, { size: 12 }) : void 0,
1272
+ icon: busy ? h$71(Spinner, { size: 12 }) : void 0,
1273
1273
  onClick: action.onClick
1274
1274
  }, action.label);
1275
1275
  }));
@@ -1282,7 +1282,7 @@ window.__ModuleLoader__.load({
1282
1282
  * @returns 竖排的 div。
1283
1283
  */
1284
1284
  function Rows({ children }) {
1285
- return h$69("div", { className: "wb-rows" }, children);
1285
+ return h$71("div", { className: "wb-rows" }, children);
1286
1286
  }
1287
1287
  /**
1288
1288
  * 一行键值:左边名字、右边值;要成对说明一项数据就用它,别自己写两栏。
@@ -1291,7 +1291,7 @@ window.__ModuleLoader__.load({
1291
1291
  * @returns 一行两格。
1292
1292
  */
1293
1293
  function Row({ label, value }) {
1294
- return h$69("div", { className: "wb-row" }, h$69("span", { className: "wb-rowKey" }, label), h$69("span", { className: "wb-rowValue" }, value));
1294
+ return h$71("div", { className: "wb-row" }, h$71("span", { className: "wb-rowKey" }, label), h$71("span", { className: "wb-rowValue" }, value));
1295
1295
  }
1296
1296
  //#endregion
1297
1297
  //#region ../shared/dist/components/ConfirmBar.js
@@ -1308,19 +1308,19 @@ window.__ModuleLoader__.load({
1308
1308
  * @returns 一个 `role="group"` 的条;`actions` 空数组时最后那一块不渲染。
1309
1309
  */
1310
1310
  function ConfirmBar({ title, hint, rows, actions, problem, busy, label }) {
1311
- return h$69("div", {
1311
+ return h$71("div", {
1312
1312
  className: "wb-confirmBar",
1313
1313
  role: "group",
1314
1314
  "aria-label": label ?? (typeof title === "string" ? title : void 0),
1315
1315
  "aria-busy": busy
1316
- }, h$69("p", { className: "wb-confirmBarTitle" }, title), hint === void 0 ? null : h$69("p", { className: "wb-confirmBarHint" }, hint), rows === void 0 || rows.length === 0 ? null : h$69(Rows, null, rows.map((row) => h$69(Row, {
1316
+ }, h$71("p", { className: "wb-confirmBarTitle" }, title), hint === void 0 ? null : h$71("p", { className: "wb-confirmBarHint" }, hint), rows === void 0 || rows.length === 0 ? null : h$71(Rows, null, rows.map((row) => h$71(Row, {
1317
1317
  key: row.key,
1318
1318
  label: row.label,
1319
1319
  value: row.value
1320
- }))), problem === void 0 ? null : h$69(Note, {
1320
+ }))), problem === void 0 ? null : h$71(Note, {
1321
1321
  tone: "problem",
1322
1322
  role: "alert"
1323
- }, problem), h$69(FormActions, { actions }));
1323
+ }, problem), h$71(FormActions, { actions }));
1324
1324
  }
1325
1325
  //#endregion
1326
1326
  //#region ../shared/dist/components/Field.js
@@ -1332,7 +1332,7 @@ window.__ModuleLoader__.load({
1332
1332
  * @returns 一个 `<label>`,点标签会聚焦里面的控件。
1333
1333
  */
1334
1334
  function Field({ label, hint, children }) {
1335
- return h$69("label", { className: "wb-field" }, h$69("span", { className: "wb-fieldLabel" }, label), children, hint === void 0 ? null : h$69("span", { className: "wb-fieldHint" }, hint));
1335
+ return h$71("label", { className: "wb-field" }, h$71("span", { className: "wb-fieldLabel" }, label), children, hint === void 0 ? null : h$71("span", { className: "wb-fieldHint" }, hint));
1336
1336
  }
1337
1337
  //#endregion
1338
1338
  //#region ../shared/dist/components/FormRows.js
@@ -1342,7 +1342,7 @@ window.__ModuleLoader__.load({
1342
1342
  * @returns 竖排的 div。
1343
1343
  */
1344
1344
  function FormRows({ children }) {
1345
- return h$69("div", { className: "wb-formRows" }, children);
1345
+ return h$71("div", { className: "wb-formRows" }, children);
1346
1346
  }
1347
1347
  /**
1348
1348
  * 表单一行:左边标签、右边控件,提示与错误占控件下面那一格。
@@ -1355,14 +1355,14 @@ window.__ModuleLoader__.load({
1355
1355
  * @returns 一个 `<div>`:里面的 `<label>` 只包标签文字,不包控件、提示与整行的空白。
1356
1356
  */
1357
1357
  function FormRow({ label, htmlFor, hint, problem, layout = "inline", children }) {
1358
- return h$69("div", {
1358
+ return h$71("div", {
1359
1359
  className: "wb-formRow",
1360
1360
  "data-layout": layout,
1361
1361
  "data-wb-problem": problem === void 0 ? void 0 : ""
1362
- }, h$69("label", {
1362
+ }, h$71("label", {
1363
1363
  className: "wb-formLabel",
1364
1364
  htmlFor
1365
- }, label), h$69("span", { className: "wb-formControl" }, children), problem === void 0 ? hint === void 0 ? null : h$69("span", { className: "wb-formHint" }, hint) : h$69("span", { className: "wb-formProblem" }, problem));
1365
+ }, label), h$71("span", { className: "wb-formControl" }, children), problem === void 0 ? hint === void 0 ? null : h$71("span", { className: "wb-formHint" }, hint) : h$71("span", { className: "wb-formProblem" }, problem));
1366
1366
  }
1367
1367
  //#endregion
1368
1368
  //#region ../shared/dist/components/FormNodes.js
@@ -1509,7 +1509,7 @@ window.__ModuleLoader__.load({
1509
1509
  * @returns `FormRow` 组成的数组;没有可画的格子时给空数组。
1510
1510
  */
1511
1511
  function formRowsOf(args) {
1512
- return args.fields.map((field) => h$69(FormRow, {
1512
+ return args.fields.map((field) => h$71(FormRow, {
1513
1513
  key: field.key,
1514
1514
  label: field.label,
1515
1515
  htmlFor: controlIdOf(field.key),
@@ -1591,7 +1591,7 @@ window.__ModuleLoader__.load({
1591
1591
  const shown = visibleFieldsOf(fields);
1592
1592
  const problems = formProblemsOf(shown, done);
1593
1593
  reportDuplicateKeys(shown);
1594
- useEffect$31(() => {
1594
+ useEffect$32(() => {
1595
1595
  if (reveal === 0) return;
1596
1596
  const root = rootRef.current;
1597
1597
  if (root !== null) revealFirstProblem(root);
@@ -1606,7 +1606,7 @@ window.__ModuleLoader__.load({
1606
1606
  }
1607
1607
  onSubmit(outcome.values);
1608
1608
  };
1609
- return h$69("form", {
1609
+ return h$71("form", {
1610
1610
  className: "wb-form",
1611
1611
  ref: rootRef,
1612
1612
  noValidate: true,
@@ -1614,15 +1614,15 @@ window.__ModuleLoader__.load({
1614
1614
  event.preventDefault();
1615
1615
  submitForm();
1616
1616
  }
1617
- }, h$69(FormRows, null, formRowsOf({
1617
+ }, h$71(FormRows, null, formRowsOf({
1618
1618
  fields: shown,
1619
1619
  problems,
1620
1620
  showProblem: done,
1621
1621
  busy
1622
- })), problem === void 0 ? null : h$69(Note, {
1622
+ })), problem === void 0 ? null : h$71(Note, {
1623
1623
  tone: "problem",
1624
1624
  role: "alert"
1625
- }, problem), h$69(FormActions, { actions: formActionsOf({
1625
+ }, problem), h$71(FormActions, { actions: formActionsOf({
1626
1626
  extra,
1627
1627
  cancel,
1628
1628
  submit,
@@ -1643,7 +1643,7 @@ window.__ModuleLoader__.load({
1643
1643
  * @returns 一个 `<a>`。
1644
1644
  */
1645
1645
  function Link({ href, children, title, external = true, className }) {
1646
- return h$69("a", {
1646
+ return h$71("a", {
1647
1647
  className: className === void 0 ? "wb-link" : `wb-link ${className}`,
1648
1648
  href,
1649
1649
  ...title === void 0 ? {} : { title },
@@ -1651,7 +1651,7 @@ window.__ModuleLoader__.load({
1651
1651
  target: "_blank",
1652
1652
  rel: "noopener noreferrer"
1653
1653
  } : {}
1654
- }, children, external ? h$69(_deepseek_ai_dsh_client_ui_primitives.IconRightUpOutlineRegular, { size: 12 }) : null);
1654
+ }, children, external ? h$71(_deepseek_ai_dsh_client_ui_primitives.IconRightUpOutlineRegular, { size: 12 }) : null);
1655
1655
  }
1656
1656
  //#endregion
1657
1657
  //#region ../shared/dist/contract/long-task.js
@@ -1743,7 +1743,7 @@ window.__ModuleLoader__.load({
1743
1743
  //#endregion
1744
1744
  //#region ../shared/dist/components/LongTaskRow.js
1745
1745
  function RowLink({ href, text }) {
1746
- return h$69(Link, {
1746
+ return h$71(Link, {
1747
1747
  href,
1748
1748
  className: "wb-longTaskLink"
1749
1749
  }, text);
@@ -1773,7 +1773,7 @@ window.__ModuleLoader__.load({
1773
1773
  const stop = props.stop;
1774
1774
  const busy = stop?.busy === true;
1775
1775
  const stopWhy = stop?.failed ?? "";
1776
- useEffect$31(() => {
1776
+ useEffect$32(() => {
1777
1777
  if (!armed) return void 0;
1778
1778
  const timer = setTimeout(() => setArmed(false), LONG_TASK_STOP_ARM_MS);
1779
1779
  return () => clearTimeout(timer);
@@ -1792,14 +1792,14 @@ window.__ModuleLoader__.load({
1792
1792
  setArmed(false);
1793
1793
  stop.onStop();
1794
1794
  };
1795
- return h$69("div", { className: "wb-longTask" }, h$69("p", { className: "wb-longTaskHead" }, h$69(_deepseek_ai_dsh_client_ui_primitives.StateDot, {
1795
+ return h$71("div", { className: "wb-longTask" }, h$71("p", { className: "wb-longTaskHead" }, h$71(_deepseek_ai_dsh_client_ui_primitives.StateDot, {
1796
1796
  state: longTaskDot(props.status),
1797
1797
  size: 10
1798
- }), h$69("span", { className: "wb-longTaskHeadline" }, props.headline), (props.links ?? []).map((link) => h$69(RowLink, {
1798
+ }), h$71("span", { className: "wb-longTaskHeadline" }, props.headline), (props.links ?? []).map((link) => h$71(RowLink, {
1799
1799
  href: link.href,
1800
1800
  key: `${link.text}@${link.href}`,
1801
1801
  text: link.text
1802
- })), stop === void 0 ? null : h$69("button", {
1802
+ })), stop === void 0 ? null : h$71("button", {
1803
1803
  type: "button",
1804
1804
  className: `wb-longTaskStop${armed ? " wb-longTaskStopArmed" : ""}`,
1805
1805
  "data-stop-state": longTaskStopStage({
@@ -1810,31 +1810,31 @@ window.__ModuleLoader__.load({
1810
1810
  disabled: busy,
1811
1811
  onClick: onStopPress,
1812
1812
  onBlur: () => setArmed(false)
1813
- }, h$69(_deepseek_ai_dsh_client_ui_primitives.IconStopFillRegular, { size: 12 }), armed ? h$69("span", { className: "wb-longTaskStopLabel" }, stop.askLabel) : null)), problem === "" ? null : h$69("p", { className: "wb-longTaskProblem" }, problem), stopWhy === "" ? null : h$69("p", { className: "wb-longTaskStopWhy" }, stopWhy), !failed ? null : h$69(Fragment$22, null, steps.length === 0 || props.stepsTitle === void 0 ? null : h$69(_deepseek_ai_dsh_client_ui_primitives.DisclosureRow, {
1813
+ }, h$71(_deepseek_ai_dsh_client_ui_primitives.IconStopFillRegular, { size: 12 }), armed ? h$71("span", { className: "wb-longTaskStopLabel" }, stop.askLabel) : null)), problem === "" ? null : h$71("p", { className: "wb-longTaskProblem" }, problem), stopWhy === "" ? null : h$71("p", { className: "wb-longTaskStopWhy" }, stopWhy), !failed ? null : h$71(Fragment$22, null, steps.length === 0 || props.stepsTitle === void 0 ? null : h$71(_deepseek_ai_dsh_client_ui_primitives.DisclosureRow, {
1814
1814
  className: "wb-longTaskDump",
1815
- icon: h$69(_deepseek_ai_dsh_client_ui_primitives.IconFlatListOutlineRegular, { size: 14 }),
1815
+ icon: h$71(_deepseek_ai_dsh_client_ui_primitives.IconFlatListOutlineRegular, { size: 14 }),
1816
1816
  title: props.stepsTitle,
1817
1817
  open: stepsOpen,
1818
1818
  expandable: true,
1819
1819
  expandOnRowClick: true,
1820
1820
  previewChevron: true,
1821
1821
  onToggle: () => setStepsOpen(!stepsOpen)
1822
- }, h$69(_deepseek_ai_dsh_client_ui_primitives.CodeBlock, {
1822
+ }, h$71(_deepseek_ai_dsh_client_ui_primitives.CodeBlock, {
1823
1823
  code: steps.join("\n"),
1824
1824
  className: "wb-longTaskDump",
1825
1825
  showHeader: props.copyLabel !== void 0,
1826
1826
  copyLabel: props.copyLabel ?? "",
1827
1827
  copiedLabel: props.copiedLabel ?? ""
1828
- })), raw === "" || props.rawTitle === void 0 ? null : h$69(_deepseek_ai_dsh_client_ui_primitives.DisclosureRow, {
1828
+ })), raw === "" || props.rawTitle === void 0 ? null : h$71(_deepseek_ai_dsh_client_ui_primitives.DisclosureRow, {
1829
1829
  className: "wb-longTaskDump",
1830
- icon: h$69(_deepseek_ai_dsh_client_ui_primitives.IconCodeOutlineRegular, { size: 14 }),
1830
+ icon: h$71(_deepseek_ai_dsh_client_ui_primitives.IconCodeOutlineRegular, { size: 14 }),
1831
1831
  title: props.rawTitle,
1832
1832
  open: rawOpen,
1833
1833
  expandable: true,
1834
1834
  expandOnRowClick: true,
1835
1835
  previewChevron: true,
1836
1836
  onToggle: () => setRawOpen(!rawOpen)
1837
- }, h$69(_deepseek_ai_dsh_client_ui_primitives.CodeBlock, {
1837
+ }, h$71(_deepseek_ai_dsh_client_ui_primitives.CodeBlock, {
1838
1838
  code: raw,
1839
1839
  className: "wb-longTaskDump",
1840
1840
  showHeader: props.copyLabel !== void 0,
@@ -1850,13 +1850,13 @@ window.__ModuleLoader__.load({
1850
1850
  * @returns 一叠占位条。
1851
1851
  */
1852
1852
  function SkeletonRows({ rows = 4 }) {
1853
- return h$69("div", {
1853
+ return h$71("div", {
1854
1854
  className: "wb-skeleton",
1855
1855
  "aria-hidden": "true"
1856
- }, Array.from({ length: rows }, (_, index) => h$69("span", {
1856
+ }, Array.from({ length: rows }, (_, index) => h$71("span", {
1857
1857
  key: index,
1858
1858
  className: "wb-skeletonRow"
1859
- }, h$69("span", { className: "wb-skeletonBar wb-skeletonBarTitle" }), h$69("span", { className: "wb-skeletonBar wb-skeletonBarMeta" }))));
1859
+ }, h$71("span", { className: "wb-skeletonBar wb-skeletonBarTitle" }), h$71("span", { className: "wb-skeletonBar wb-skeletonBarMeta" }))));
1860
1860
  }
1861
1861
  /**
1862
1862
  * 居中一屏:要他先选一个 / 正在读 / 读不到时用它占住卡片版面。
@@ -1869,13 +1869,13 @@ window.__ModuleLoader__.load({
1869
1869
  * @returns 一个 `role="status"` 的居中块。
1870
1870
  */
1871
1871
  function CenteredState({ icon, title, hint, detail, action, compact = false }) {
1872
- return h$69("div", {
1872
+ return h$71("div", {
1873
1873
  className: compact ? "wb-centered wb-centeredCompact" : "wb-centered",
1874
1874
  role: "status"
1875
- }, icon === null ? null : h$69("span", {
1875
+ }, icon === null ? null : h$71("span", {
1876
1876
  className: "wb-centeredHero",
1877
1877
  "aria-hidden": "true"
1878
- }, icon), h$69("div", { className: "wb-centeredTitle" }, title), hint === void 0 ? null : h$69("div", { className: "wb-centeredHint" }, hint), detail === void 0 ? null : h$69("div", { className: "wb-centeredDetail" }, detail), action === void 0 ? null : h$69("div", { className: "wb-centeredAction" }, action));
1878
+ }, icon), h$71("div", { className: "wb-centeredTitle" }, title), hint === void 0 ? null : h$71("div", { className: "wb-centeredHint" }, hint), detail === void 0 ? null : h$71("div", { className: "wb-centeredDetail" }, detail), action === void 0 ? null : h$71("div", { className: "wb-centeredAction" }, action));
1879
1879
  }
1880
1880
  /**
1881
1881
  * 就绪但空:它只是 `CenteredState` 的简写,标题就是那句空态文案。
@@ -1885,7 +1885,7 @@ window.__ModuleLoader__.load({
1885
1885
  * @returns 一个居中块。
1886
1886
  */
1887
1887
  function EmptyState({ text, icon = null, compact = false }) {
1888
- return h$69(CenteredState, {
1888
+ return h$71(CenteredState, {
1889
1889
  icon,
1890
1890
  title: text,
1891
1891
  compact
@@ -1903,7 +1903,7 @@ window.__ModuleLoader__.load({
1903
1903
  * @returns 一组按钮。
1904
1904
  */
1905
1905
  function SaveBar({ busy, disabled, labels, onCancel, onSave }) {
1906
- return h$69(FormActions, { actions: [{
1906
+ return h$71(FormActions, { actions: [{
1907
1907
  key: "cancel",
1908
1908
  label: labels.cancel,
1909
1909
  kind: "default",
@@ -1936,7 +1936,7 @@ window.__ModuleLoader__.load({
1936
1936
  * @returns 一颗 `<button>`。
1937
1937
  */
1938
1938
  function selectTriggerNode(args) {
1939
- return h$69("button", {
1939
+ return h$71("button", {
1940
1940
  type: "button",
1941
1941
  id: args.id,
1942
1942
  className: args.className,
@@ -1947,7 +1947,7 @@ window.__ModuleLoader__.load({
1947
1947
  "aria-label": args.ariaLabel,
1948
1948
  title: args.title,
1949
1949
  onClick: args.onOpen
1950
- }, args.iconOnly ? h$69("span", { className: "wb-selectIcon" }, args.icon) : h$69(Fragment$22, null, args.icon === void 0 ? null : h$69("span", { className: "wb-selectIcon" }, args.icon), h$69("span", { className: "wb-selectValue" }, args.value), h$69("span", { className: "wb-selectChevron" }, h$69(_deepseek_ai_dsh_client_ui_primitives.IconChevronDownOutlineRegular, { size: 14 }))));
1950
+ }, args.iconOnly ? h$71("span", { className: "wb-selectIcon" }, args.icon) : h$71(Fragment$22, null, args.icon === void 0 ? null : h$71("span", { className: "wb-selectIcon" }, args.icon), h$71("span", { className: "wb-selectValue" }, args.value), h$71("span", { className: "wb-selectChevron" }, h$71(_deepseek_ai_dsh_client_ui_primitives.IconChevronDownOutlineRegular, { size: 14 }))));
1951
1951
  }
1952
1952
  /**
1953
1953
  * 名单还没读到时的触发器:禁用 + `aria-busy` 的按钮,`SelectField` 在 `loading` 那档画它。
@@ -1959,7 +1959,7 @@ window.__ModuleLoader__.load({
1959
1959
  * @returns 一颗禁用且 `aria-busy` 的按钮。
1960
1960
  */
1961
1961
  function selectLoadingNode(args) {
1962
- return h$69("button", {
1962
+ return h$71("button", {
1963
1963
  type: "button",
1964
1964
  id: args.id,
1965
1965
  className: `${args.className} wb-selectLoading`,
@@ -1968,7 +1968,7 @@ window.__ModuleLoader__.load({
1968
1968
  "aria-invalid": args.invalid || void 0,
1969
1969
  "aria-label": args.ariaLabel,
1970
1970
  title: args.loadingText
1971
- }, h$69("span", { className: "wb-selectValue" }, h$69(_deepseek_ai_dsh_client_ui_primitives.TextShimmer, { active: true }, args.loadingText ?? "…")), h$69("span", { className: "wb-selectChevron" }, h$69(Spinner, { size: 14 })));
1971
+ }, h$71("span", { className: "wb-selectValue" }, h$71(_deepseek_ai_dsh_client_ui_primitives.TextShimmer, { active: true }, args.loadingText ?? "…")), h$71("span", { className: "wb-selectChevron" }, h$71(Spinner, { size: 14 })));
1972
1972
  }
1973
1973
  //#endregion
1974
1974
  //#region ../shared/dist/components/TextField.js
@@ -1978,7 +1978,7 @@ window.__ModuleLoader__.load({
1978
1978
  * @returns 输入框元素;`className` 是追加在基础类名之后,而不是替换它。
1979
1979
  */
1980
1980
  function TextField({ invalid = false, className, ...rest }) {
1981
- return h$69("input", {
1981
+ return h$71("input", {
1982
1982
  ...rest,
1983
1983
  className: className === void 0 ? "wb-textField" : `wb-textField ${className}`,
1984
1984
  "aria-invalid": invalid || void 0
@@ -2001,7 +2001,7 @@ window.__ModuleLoader__.load({
2001
2001
  ...option.icon === void 0 ? {} : { icon: option.icon },
2002
2002
  ...option.disabled === true ? { disabled: true } : {}
2003
2003
  };
2004
- const revealed = (node) => h$69("span", {
2004
+ const revealed = (node) => h$71("span", {
2005
2005
  className: "wb-selectReveal",
2006
2006
  "data-wb-select-reveal": ""
2007
2007
  }, node);
@@ -2017,20 +2017,20 @@ window.__ModuleLoader__.load({
2017
2017
  return found instanceof HTMLElement ? found : null;
2018
2018
  }
2019
2019
  function useRevealOnOpen(open, revealId) {
2020
- useEffect$31(() => {
2020
+ useEffect$32(() => {
2021
2021
  if (!open || revealId === void 0) return;
2022
2022
  revealNode()?.scrollIntoView({ block: "nearest" });
2023
2023
  }, [open, revealId]);
2024
2024
  }
2025
2025
  function selectValueNode(current, renderValue, placeholder) {
2026
- if (current === void 0) return h$69("span", { className: "wb-selectPlaceholder" }, placeholder ?? "—");
2026
+ if (current === void 0) return h$71("span", { className: "wb-selectPlaceholder" }, placeholder ?? "—");
2027
2027
  return renderValue === void 0 ? current.label : renderValue(current);
2028
2028
  }
2029
2029
  function searchNode(args) {
2030
- return h$69("span", {
2030
+ return h$71("span", {
2031
2031
  ref: args.boxRef,
2032
2032
  className: args.className
2033
- }, h$69("span", { className: "wb-selectSearchIcon" }, h$69(_deepseek_ai_dsh_client_ui_primitives.IconSearchOutlineRegular, { size: 14 })), h$69(TextField, {
2033
+ }, h$71("span", { className: "wb-selectSearchIcon" }, h$71(_deepseek_ai_dsh_client_ui_primitives.IconSearchOutlineRegular, { size: 14 })), h$71(TextField, {
2034
2034
  id: args.id,
2035
2035
  name: args.name,
2036
2036
  className: "wb-selectSearchInput",
@@ -2045,7 +2045,7 @@ window.__ModuleLoader__.load({
2045
2045
  }));
2046
2046
  }
2047
2047
  function menuNode(args) {
2048
- return h$69(_deepseek_ai_dsh_client_ui_primitives.Menu, {
2048
+ return h$71(_deepseek_ai_dsh_client_ui_primitives.Menu, {
2049
2049
  open: args.open,
2050
2050
  portal: true,
2051
2051
  className: "wb-selectAnchor",
@@ -2062,11 +2062,11 @@ window.__ModuleLoader__.load({
2062
2062
  });
2063
2063
  }
2064
2064
  function framed(label, hint, className, control) {
2065
- const inner = label === void 0 ? hint === void 0 ? control : h$69("span", { className: "wb-select" }, control, h$69("span", { className: "wb-selectHint" }, hint)) : h$69(Field, {
2065
+ const inner = label === void 0 ? hint === void 0 ? control : h$71("span", { className: "wb-select" }, control, h$71("span", { className: "wb-selectHint" }, hint)) : h$71(Field, {
2066
2066
  label,
2067
2067
  hint
2068
2068
  }, control);
2069
- return className === void 0 ? inner : h$69("div", { className }, inner);
2069
+ return className === void 0 ? inner : h$71("div", { className }, inner);
2070
2070
  }
2071
2071
  /** 算候选项用来匹配搜索的文本:有 `searchText` 就用它,否则取字符串标签;标签不是字符串又没给它是空串(这项搜不到)。 */
2072
2072
  function searchTextOf(option) {
@@ -2131,11 +2131,11 @@ window.__ModuleLoader__.load({
2131
2131
  if (openProp === void 0) setOpenState(next);
2132
2132
  onOpenChange?.(next);
2133
2133
  };
2134
- useEffect$31(() => {
2134
+ useEffect$32(() => {
2135
2135
  if (!open || props.search === false) return;
2136
2136
  boxRef.current?.querySelector("input")?.focus();
2137
2137
  }, [open, props.search]);
2138
- useEffect$31(() => {
2138
+ useEffect$32(() => {
2139
2139
  if (open) {
2140
2140
  wasOpenRef.current = true;
2141
2141
  return;
@@ -2205,7 +2205,7 @@ window.__ModuleLoader__.load({
2205
2205
  ariaLabel,
2206
2206
  loadingText
2207
2207
  }));
2208
- if (fallback !== void 0 && options.length === 0) return framed(label, hint, className, h$69(TextField, {
2208
+ if (fallback !== void 0 && options.length === 0) return framed(label, hint, className, h$71(TextField, {
2209
2209
  id,
2210
2210
  name,
2211
2211
  className: "wb-selectFallback",
@@ -2288,11 +2288,11 @@ window.__ModuleLoader__.load({
2288
2288
  * @returns 一个 `role="group"` 的 section。
2289
2289
  */
2290
2290
  function SettingsSection({ label, title, action, children }) {
2291
- return h$69("section", {
2291
+ return h$71("section", {
2292
2292
  className: "wb-settings",
2293
2293
  role: "group",
2294
2294
  "aria-label": label
2295
- }, h$69("header", { className: "wb-settingsHead" }, h$69("span", { className: "wb-settingsTitle" }, title), action), children);
2295
+ }, h$71("header", { className: "wb-settingsHead" }, h$71("span", { className: "wb-settingsTitle" }, title), action), children);
2296
2296
  }
2297
2297
  //#endregion
2298
2298
  //#region ../shared/dist/components/Stack.js
@@ -2302,7 +2302,7 @@ window.__ModuleLoader__.load({
2302
2302
  * @returns 竖排的 div。
2303
2303
  */
2304
2304
  function Stack({ children }) {
2305
- return h$69("div", { className: "wb-stack" }, children);
2305
+ return h$71("div", { className: "wb-stack" }, children);
2306
2306
  }
2307
2307
  //#endregion
2308
2308
  //#region ../shared/dist/components/StateBlock.js
@@ -2317,12 +2317,12 @@ window.__ModuleLoader__.load({
2317
2317
  * @returns 一个 div。
2318
2318
  */
2319
2319
  function StateBlock({ title, dot, hint, actions, resolving, children }) {
2320
- return h$69("div", { className: "wb-stateBlock" }, title === void 0 && dot === void 0 ? null : h$69("p", { className: "wb-stateBlockTitle" }, dot, title), resolving === void 0 ? null : h$69("p", { className: "wb-stateBlockResolving" }, resolving), hint === void 0 ? null : h$69("p", { className: "wb-stateBlockHint" }, hint), children, actions === void 0 ? null : h$69("div", { className: "wb-stateBlockActions" }, actions));
2320
+ return h$71("div", { className: "wb-stateBlock" }, title === void 0 && dot === void 0 ? null : h$71("p", { className: "wb-stateBlockTitle" }, dot, title), resolving === void 0 ? null : h$71("p", { className: "wb-stateBlockResolving" }, resolving), hint === void 0 ? null : h$71("p", { className: "wb-stateBlockHint" }, hint), children, actions === void 0 ? null : h$71("div", { className: "wb-stateBlockActions" }, actions));
2321
2321
  }
2322
2322
  //#endregion
2323
2323
  //#region ../shared/dist/components/icons.js
2324
2324
  function Shell({ size, strokeWidth = 1, viewBox = "0 0 16 16", children }) {
2325
- return h$69("svg", {
2325
+ return h$71("svg", {
2326
2326
  width: size,
2327
2327
  height: size,
2328
2328
  viewBox,
@@ -2339,10 +2339,10 @@ window.__ModuleLoader__.load({
2339
2339
  * @returns 一枚 `aria-hidden` 的 svg。
2340
2340
  */
2341
2341
  function IconConversation({ size = 16 }) {
2342
- return h$69(Shell, {
2342
+ return h$71(Shell, {
2343
2343
  size,
2344
2344
  strokeWidth: 1.3
2345
- }, h$69("path", {
2345
+ }, h$71("path", {
2346
2346
  d: "M2.5 7.2c0-2.3 2.1-4.2 4.8-4.2h1.4c2.7 0 4.8 1.9 4.8 4.2s-2.1 4.2-4.8 4.2H7.5l-3.2 2v-2.3c-1.1-.8-1.8-2-1.8-3.9Z",
2347
2347
  stroke: "currentColor",
2348
2348
  strokeLinejoin: "round"
@@ -2357,30 +2357,30 @@ window.__ModuleLoader__.load({
2357
2357
  * @returns 一枚 `aria-hidden` 的 svg。
2358
2358
  */
2359
2359
  function IconBrandMark({ size = 24 }) {
2360
- return h$69(Shell, {
2360
+ return h$71(Shell, {
2361
2361
  size,
2362
2362
  viewBox: "0 0 64 64"
2363
- }, h$69("path", {
2363
+ }, h$71("path", {
2364
2364
  d: BRAND_FRAME,
2365
2365
  fill: "currentColor",
2366
2366
  fillRule: "evenodd"
2367
- }), h$69("rect", {
2367
+ }), h$71("rect", {
2368
2368
  x: 27.5,
2369
2369
  y: 48,
2370
2370
  width: 9,
2371
2371
  height: 4.75,
2372
2372
  fill: "currentColor"
2373
- }), h$69("rect", {
2373
+ }), h$71("rect", {
2374
2374
  x: 19,
2375
2375
  y: 52.75,
2376
2376
  width: 26,
2377
2377
  height: 4.75,
2378
2378
  rx: 2.375,
2379
2379
  fill: "currentColor"
2380
- }), h$69("g", { transform: BRAND_TAIL_TRANSFORM }, h$69("path", {
2380
+ }), h$71("g", { transform: BRAND_TAIL_TRANSFORM }, h$71("path", {
2381
2381
  d: BRAND_TAIL,
2382
2382
  fill: "currentColor"
2383
- }), h$69("circle", {
2383
+ }), h$71("circle", {
2384
2384
  cx: 6.885,
2385
2385
  cy: 13.742,
2386
2386
  r: 1.95,
@@ -2393,30 +2393,30 @@ window.__ModuleLoader__.load({
2393
2393
  * @returns 一枚 `aria-hidden` 的 svg。
2394
2394
  */
2395
2395
  function IconOpencli({ size = 16 }) {
2396
- return h$69(Shell, {
2396
+ return h$71(Shell, {
2397
2397
  size,
2398
2398
  viewBox: "0 0 64 64"
2399
- }, h$69("defs", null, h$69("linearGradient", {
2399
+ }, h$71("defs", null, h$71("linearGradient", {
2400
2400
  id: "opencli-mark",
2401
2401
  x1: "0%",
2402
2402
  y1: "0%",
2403
2403
  x2: "100%",
2404
2404
  y2: "100%"
2405
- }, h$69("stop", {
2405
+ }, h$71("stop", {
2406
2406
  offset: "0%",
2407
2407
  stopColor: "#00e5a0"
2408
- }), h$69("stop", {
2408
+ }), h$71("stop", {
2409
2409
  offset: "50%",
2410
2410
  stopColor: "#00b4d8"
2411
- }), h$69("stop", {
2411
+ }), h$71("stop", {
2412
2412
  offset: "100%",
2413
2413
  stopColor: "#7b61ff"
2414
- }))), h$69("rect", {
2414
+ }))), h$71("rect", {
2415
2415
  width: 64,
2416
2416
  height: 64,
2417
2417
  rx: 14,
2418
2418
  fill: "#0a0a0f"
2419
- }), h$69("text", {
2419
+ }), h$71("text", {
2420
2420
  x: "50%",
2421
2421
  y: "54%",
2422
2422
  dominantBaseline: "middle",
@@ -2433,10 +2433,10 @@ window.__ModuleLoader__.load({
2433
2433
  * @returns 一枚 `aria-hidden` 的 svg。
2434
2434
  */
2435
2435
  function IconNpm({ size = 16 }) {
2436
- return h$69(Shell, {
2436
+ return h$71(Shell, {
2437
2437
  size,
2438
2438
  viewBox: "0 0 1024 1024"
2439
- }, h$69("path", {
2439
+ }, h$71("path", {
2440
2440
  d: "M64 337.76h896v298.72H512v49.792H312.896v-49.824H64z m49.792 248.928h99.552v-149.376h49.76v149.344h49.792v-199.104H113.792z m248.896-199.136v248.928h99.552v-49.792h99.552v-199.136z m99.552 49.792H512v99.584h-49.792z m149.344-49.792v199.136h99.552v-149.376h49.792v149.344h49.792v-149.344h49.792v149.344h49.792v-199.104z",
2441
2441
  fill: "#CB3837"
2442
2442
  }));
@@ -2447,37 +2447,37 @@ window.__ModuleLoader__.load({
2447
2447
  * @returns 一枚 `aria-hidden` 的 svg。
2448
2448
  */
2449
2449
  function IconModuleMark({ size = 16 }) {
2450
- return h$69(Shell, {
2450
+ return h$71(Shell, {
2451
2451
  size,
2452
2452
  viewBox: "0 0 24 24"
2453
- }, h$69("defs", null, h$69("linearGradient", {
2453
+ }, h$71("defs", null, h$71("linearGradient", {
2454
2454
  id: "workbench-module-mark",
2455
2455
  x1: "0%",
2456
2456
  y1: "0%",
2457
2457
  x2: "100%",
2458
2458
  y2: "100%"
2459
- }, h$69("stop", {
2459
+ }, h$71("stop", {
2460
2460
  offset: "0%",
2461
2461
  stopColor: "#3b82f6"
2462
- }), h$69("stop", {
2462
+ }), h$71("stop", {
2463
2463
  offset: "55%",
2464
2464
  stopColor: "#8b5cf6"
2465
- }), h$69("stop", {
2465
+ }), h$71("stop", {
2466
2466
  offset: "100%",
2467
2467
  stopColor: "#14b8a6"
2468
- }))), h$69("rect", {
2468
+ }))), h$71("rect", {
2469
2469
  width: 24,
2470
2470
  height: 24,
2471
2471
  rx: 7,
2472
2472
  fill: "url(#workbench-module-mark)"
2473
- }), h$69("rect", {
2473
+ }), h$71("rect", {
2474
2474
  x: "4.6",
2475
2475
  y: "4.6",
2476
2476
  width: "6.2",
2477
2477
  height: "6.2",
2478
2478
  rx: "1.9",
2479
2479
  fill: "#ffffff"
2480
- }), h$69("rect", {
2480
+ }), h$71("rect", {
2481
2481
  x: "13.2",
2482
2482
  y: "4.6",
2483
2483
  width: "6.2",
@@ -2485,7 +2485,7 @@ window.__ModuleLoader__.load({
2485
2485
  rx: "1.9",
2486
2486
  fill: "#ffffff",
2487
2487
  fillOpacity: .78
2488
- }), h$69("rect", {
2488
+ }), h$71("rect", {
2489
2489
  x: "4.6",
2490
2490
  y: "13.2",
2491
2491
  width: "6.2",
@@ -2493,7 +2493,7 @@ window.__ModuleLoader__.load({
2493
2493
  rx: "1.9",
2494
2494
  fill: "#ffffff",
2495
2495
  fillOpacity: .78
2496
- }), h$69("rect", {
2496
+ }), h$71("rect", {
2497
2497
  x: "13.2",
2498
2498
  y: "13.2",
2499
2499
  width: "6.2",
@@ -2508,7 +2508,7 @@ window.__ModuleLoader__.load({
2508
2508
  * @returns 一枚 `aria-hidden` 的 svg。
2509
2509
  */
2510
2510
  function IconPanelScreen({ size = 16 }) {
2511
- return h$69("svg", {
2511
+ return h$71("svg", {
2512
2512
  width: size,
2513
2513
  height: size,
2514
2514
  viewBox: "0 0 1024 1024",
@@ -2519,7 +2519,7 @@ window.__ModuleLoader__.load({
2519
2519
  display: "block",
2520
2520
  overflow: "hidden"
2521
2521
  }
2522
- }, h$69("path", { d: "M939 112c17.673 0 32 14.327 32 32v554.667c0 17.673-14.327 32-32 32l-394.5-0.001v96c0 3.74-0.642 7.331-1.82 10.668H768.4c17.673 0 32 14.326 32 32 0 17.496-14.042 31.712-31.47 31.995l-0.53 0.004H256.6c-17.673 0-32-14.327-32-32 0-17.496 14.042-31.713 31.47-31.995l0.53-0.005h225.721a31.923 31.923 0 0 1-1.817-10.137l-0.004-0.53v-96H86c-17.496 0-31.713-14.041-31.996-31.47l-0.004-0.53V144c0-17.673 14.327-32 32-32z m-32 64H118v490.666h789V176zM341.9 432c17.496 0 31.713 14.042 31.996 31.47l0.004 0.53v85.333c0 17.673-14.327 32-32 32-17.496 0-31.713-14.041-31.996-31.47l-0.004-0.53V464c0-17.673 14.327-32 32-32z m170.6-85.333c17.496 0 31.713 14.041 31.996 31.47l0.004 0.53v170.666c0 17.673-14.327 32-32 32-17.496 0-31.713-14.041-31.996-31.47l-0.004-0.53V378.667c0-17.673 14.327-32 32-32z m170.6-85.334c17.496 0 31.713 14.042 31.996 31.471l0.004 0.53v256c0 17.672-14.327 32-32 32-17.496 0-31.713-14.042-31.996-31.471l-0.004-0.53v-256c0-17.673 14.327-32 32-32z" }));
2522
+ }, h$71("path", { d: "M939 112c17.673 0 32 14.327 32 32v554.667c0 17.673-14.327 32-32 32l-394.5-0.001v96c0 3.74-0.642 7.331-1.82 10.668H768.4c17.673 0 32 14.326 32 32 0 17.496-14.042 31.712-31.47 31.995l-0.53 0.004H256.6c-17.673 0-32-14.327-32-32 0-17.496 14.042-31.713 31.47-31.995l0.53-0.005h225.721a31.923 31.923 0 0 1-1.817-10.137l-0.004-0.53v-96H86c-17.496 0-31.713-14.041-31.996-31.47l-0.004-0.53V144c0-17.673 14.327-32 32-32z m-32 64H118v490.666h789V176zM341.9 432c17.496 0 31.713 14.042 31.996 31.47l0.004 0.53v85.333c0 17.673-14.327 32-32 32-17.496 0-31.713-14.041-31.996-31.47l-0.004-0.53V464c0-17.673 14.327-32 32-32z m170.6-85.333c17.496 0 31.713 14.041 31.996 31.47l0.004 0.53v170.666c0 17.673-14.327 32-32 32-17.496 0-31.713-14.041-31.996-31.47l-0.004-0.53V378.667c0-17.673 14.327-32 32-32z m170.6-85.334c17.496 0 31.713 14.042 31.996 31.471l0.004 0.53v256c0 17.672-14.327 32-32 32-17.496 0-31.713-14.042-31.996-31.471l-0.004-0.53v-256c0-17.673 14.327-32 32-32z" }));
2523
2523
  }
2524
2524
  //#endregion
2525
2525
  //#region ../shared/dist/config/storage.js
@@ -3129,11 +3129,14 @@ window.__ModuleLoader__.load({
3129
3129
  "panels.market.update": "Update",
3130
3130
  "panels.market.swapSlow": "Not swapped yet — maybe a slow or failed download. Press Update again; if it stays like this, restart dsh.",
3131
3131
  "panels.market.removeSlow": "Not removed yet — maybe a slow network or an uninstall that did not finish. Check again in a moment; if it stays like this, restart dsh.",
3132
- "panels.market.updateNoChange": "Update failed: still {from}. The newest on the registry is {latest} — press Update again.",
3132
+ "panels.market.updateNoChange": "Update did not swap in: still {from}; the registry has {latest}.",
3133
3133
  "panels.market.updateUnknownVersion": "(unknown)",
3134
3134
  "panels.market.updateGone": "Update failed: the module is gone after the update.",
3135
3135
  "panels.market.updateRestored": "Update failed: the new version could not be found after the update, so {version} was put back.",
3136
- "panels.market.updateBehind": "Installed {installed}, but the newest on the registry is {latest} — not the latest; you can update once more.",
3136
+ "panels.market.updateBehind": "Installed {installed}, but the registry has {latest}.",
3137
+ "panels.market.updateStuck.title": "Update did not swap in",
3138
+ "panels.market.updateStuck.factNoChange": "Still {from} on disk; the registry has {latest}.",
3139
+ "panels.market.updateStuck.copiedHint": "Paste it into a terminal, then restart the workbench once.",
3137
3140
  "panels.market.selfUpdateFailed": "Workbench update failed: {reason}",
3138
3141
  "panels.market.selfUpdateUnknown": "the outside process left no reason (see ~/.dsh/workbench/self-update.log)",
3139
3142
  "panels.market.selfUpdateRolledBack": "Workbench update failed; rolled back to {version}.",
@@ -3219,6 +3222,7 @@ window.__ModuleLoader__.load({
3219
3222
  "panels.market.restartNeeded": "The new version is installed — restart once to pick it up.",
3220
3223
  "panels.market.foot": "After installing, enable it in the panel page of that project.",
3221
3224
  "panels.market.checkUpdates": "Check for updates",
3225
+ "panels.market.checkAll": "Check all updates",
3222
3226
  "panels.market.checkingNow": "Checking…",
3223
3227
  "panels.market.checkFailed": "The last check failed. Check your connection and retry.",
3224
3228
  "panels.market.checkedAt": "Last checked: {time}",
@@ -3283,6 +3287,8 @@ window.__ModuleLoader__.load({
3283
3287
  "panels.market.add.failurePermission": "No write permission, cannot install",
3284
3288
  "panels.market.add.failureBuildBlocked": "A dependency wants to run install scripts; you have to allow it first",
3285
3289
  "panels.market.add.failureIntegrity": "The downloaded package failed its integrity check",
3290
+ "panels.market.add.failureStopProfile": "The old copy is still in use (the workbench has this module loaded), so this dsh version will not overwrite it in place.",
3291
+ "panels.market.add.failureCancelled": "This run was cancelled and nothing changed.",
3286
3292
  "panels.market.add.failureTimeout": "The install timed out",
3287
3293
  "panels.market.add.failurePnpmMissing": "pnpm was not found, cannot install",
3288
3294
  "panels.market.add.failureInstalled": "It is already installed in this workbench. The same package cannot be installed over itself: uninstall it first, then install again. The uninstall did not succeed this time.",
@@ -3366,7 +3372,7 @@ window.__ModuleLoader__.load({
3366
3372
  "panels.discover.missingIndex": "This repository has no {path} yet.",
3367
3373
  "panels.discover.initTitle": "Initialize this repository as a module market index?",
3368
3374
  "panels.discover.initCta": "Initialize market index",
3369
- "panels.discover.initWhat": "It will write market.json and README.md on {branch}, commit once, and push. Modules you publish from this workbench will commit their build files under packages/<package-name>/. The repository stays owned by its owner.",
3375
+ "panels.discover.initWhat": "It will write the index directory market/ and README.md on {branch}, commit once, and push. Modules you publish from this workbench will commit their build files under artifacts/<package-name>/<version>/ and their entry under market/<package-name>/<version>.json. The repository stays owned by its owner.",
3370
3376
  "panels.discover.initBranch": "Branch",
3371
3377
  "panels.discover.initBranchHint": "The index and build files go to this branch; an empty repository gets it created.",
3372
3378
  "panels.discover.initBranchBad": "Use only letters, digits, dots, underscores, slashes, or dashes in a branch name.",
@@ -3711,7 +3717,7 @@ window.__ModuleLoader__.load({
3711
3717
  "approval.publish.artifacts": "Build files",
3712
3718
  "approval.publish.index": "Index",
3713
3719
  "approval.publish.commits": "Commits",
3714
- "approval.publish.twoCommits": "build files + market.json in 2 commits, one push",
3720
+ "approval.publish.twoCommits": "build files + entry file in 2 commits, one push",
3715
3721
  "approval.publish.reading": "Reading…",
3716
3722
  "approval.publish.changelog": "Changelog for {version}",
3717
3723
  "approval.publish.changelogPending": "This release writes the {version} changelog entry",
@@ -3869,11 +3875,14 @@ window.__ModuleLoader__.load({
3869
3875
  "panels.market.update": "更新",
3870
3876
  "panels.market.swapSlow": "还没换上:可能网慢或没装上。再点一次「更新」;一直这样就把 dsh 重启一遍。",
3871
3877
  "panels.market.removeSlow": "还没卸掉:可能网慢或卸载没走完。等一下再看;一直这样就把 dsh 重启一遍。",
3872
- "panels.market.updateNoChange": "更新失败:还是 {from};源上最新是 {latest},可以再点一次「更新」。",
3878
+ "panels.market.updateNoChange": "更新没换上:还是 {from};源上最新是 {latest}。",
3873
3879
  "panels.market.updateUnknownVersion": "(问不到)",
3874
3880
  "panels.market.updateGone": "更新失败:更新后找不到这个模块。",
3875
3881
  "panels.market.updateRestored": "更新失败:更新后找不到新版本,已把 {version} 装回去。",
3876
- "panels.market.updateBehind": "装上了 {installed},但源上最新是 {latest} —— 没更到最新,可以再点一次。",
3882
+ "panels.market.updateBehind": "装上了 {installed},但源上最新是 {latest}。",
3883
+ "panels.market.updateStuck.title": "更新没换上",
3884
+ "panels.market.updateStuck.factNoChange": "盘上还是 {from};源上最新是 {latest}。",
3885
+ "panels.market.updateStuck.copiedHint": "粘到终端跑一次,跑完重启一次工作台。",
3877
3886
  "panels.market.selfUpdateFailed": "工作台更新失败:{reason}",
3878
3887
  "panels.market.selfUpdateUnknown": "外部进程没留下原因(看 ~/.dsh/workbench/self-update.log)",
3879
3888
  "panels.market.selfUpdateRolledBack": "工作台更新失败,已回滚到 {version}。",
@@ -3959,6 +3968,7 @@ window.__ModuleLoader__.load({
3959
3968
  "panels.market.restartNeeded": "新版装好了,重启一次才生效。",
3960
3969
  "panels.market.foot": "装好后到那个项目的面板页勾选它,模块才会出现。",
3961
3970
  "panels.market.checkUpdates": "检查更新",
3971
+ "panels.market.checkAll": "检查全部更新",
3962
3972
  "panels.market.checkingNow": "正在检查…",
3963
3973
  "panels.market.checkFailed": "最近一次没查到,检查网络后重试",
3964
3974
  "panels.market.checkedAt": "最近检查:{time}",
@@ -4023,6 +4033,8 @@ window.__ModuleLoader__.load({
4023
4033
  "panels.market.add.failurePermission": "没有写入权限,无法安装",
4024
4034
  "panels.market.add.failureBuildBlocked": "有依赖的安装脚本需要你允许后才能继续",
4025
4035
  "panels.market.add.failureIntegrity": "下载的安装包校验失败",
4036
+ "panels.market.add.failureStopProfile": "旧版还在用着(工作台正加载这个模块),这一版 dsh 不肯就地覆盖。",
4037
+ "panels.market.add.failureCancelled": "这次操作被取消了,什么都没动。",
4026
4038
  "panels.market.add.failureTimeout": "安装超时",
4027
4039
  "panels.market.add.failurePnpmMissing": "没有找到 pnpm,无法安装",
4028
4040
  "panels.market.add.failureInstalled": "它已经装在这份工作台里了。同一个包不能就地覆盖,得先卸载再装;这次卸载也没成功。",
@@ -4106,7 +4118,7 @@ window.__ModuleLoader__.load({
4106
4118
  "panels.discover.missingIndex": "仓库里还没有索引文件 {path}",
4107
4119
  "panels.discover.initTitle": "把这个仓库初始化成模块市场索引?",
4108
4120
  "panels.discover.initCta": "初始化成市场索引",
4109
- "panels.discover.initWhat": "会在 {branch} 分支写 market.json 与 README.md,提交一次并推上去;之后从这个工作台发布的模块会把打包好的文件提交到按包名分的 packages/<包名>/。仓库的写权限归它的所有者。",
4121
+ "panels.discover.initWhat": "会在 {branch} 分支写索引目录 market/ 与 README.md,提交一次并推上去;之后从这个工作台发布的模块会把打包好的文件提交到 artifacts/<包名>/<版本>/,条目写到 market/<包名>/<版本>.json。仓库的写权限归它的所有者。",
4110
4122
  "panels.discover.initBranch": "分支",
4111
4123
  "panels.discover.initBranchHint": "索引和打包文件都发到这个分支;空仓库会新建它。",
4112
4124
  "panels.discover.initBranchBad": "分支名只能用字母、数字、点、下划线、斜杠或短横线",
@@ -4451,7 +4463,7 @@ window.__ModuleLoader__.load({
4451
4463
  "approval.publish.artifacts": "打包文件",
4452
4464
  "approval.publish.index": "索引",
4453
4465
  "approval.publish.commits": "提交",
4454
- "approval.publish.twoCommits": "打包文件 + market.json 两次提交,一次推送",
4466
+ "approval.publish.twoCommits": "打包文件 + 条目文件两次提交,一次推送",
4455
4467
  "approval.publish.reading": "读取中…",
4456
4468
  "approval.publish.changelog": "{version} 的更新日志",
4457
4469
  "approval.publish.changelogPending": "{version} 这一版会写进更新日志,随包发布",
@@ -4803,6 +4815,33 @@ window.__ModuleLoader__.load({
4803
4815
  }));
4804
4816
  }
4805
4817
  //#endregion
4818
+ //#region src/shared/api/unit-board.ts
4819
+ function gateOf(capability, mode) {
4820
+ if (mode === "none") return { gated: true };
4821
+ if (capability === null) return { gated: true };
4822
+ return { gated: capability.status === "ok" || capability.status === "unchecked" };
4823
+ }
4824
+ function splitBlocker(candidates) {
4825
+ let blocker;
4826
+ let notice;
4827
+ for (const candidate of candidates) {
4828
+ if (candidate === void 0) continue;
4829
+ if (candidate.severity === "block") {
4830
+ blocker ??= candidate;
4831
+ continue;
4832
+ }
4833
+ notice ??= candidate;
4834
+ }
4835
+ return {
4836
+ ...blocker === void 0 ? {} : { blocker },
4837
+ ...blocker !== void 0 || notice === void 0 ? {} : { notice }
4838
+ };
4839
+ }
4840
+ function probeKeyOf(error) {
4841
+ if (error === void 0) return null;
4842
+ return error.code === "" ? "unknown" : error.code;
4843
+ }
4844
+ //#endregion
4806
4845
  //#region src/shared/hooks/fact-transports.ts
4807
4846
  function sseTransport(options) {
4808
4847
  return { start({ onFrame, cursor, onMode }) {
@@ -5021,12 +5060,12 @@ window.__ModuleLoader__.load({
5021
5060
  };
5022
5061
  return promise;
5023
5062
  }
5024
- var readSeq$1 = 0;
5063
+ var readSeq = 0;
5025
5064
  var newestForceSeq$1 = -1;
5026
5065
  function runCapabilityRead(options) {
5027
5066
  const { force, silent = false, load = fetchAll } = options;
5028
5067
  const at = epoch$1;
5029
- const seq = readSeq$1 += 1;
5068
+ const seq = readSeq += 1;
5030
5069
  if (force) newestForceSeq$1 = seq;
5031
5070
  const shown = force && !silent;
5032
5071
  if (shown) beginProbe();
@@ -5062,33 +5101,6 @@ window.__ModuleLoader__.load({
5062
5101
  return (0, react.useSyncExternalStore)(subscribeProbe, probeValue);
5063
5102
  }
5064
5103
  //#endregion
5065
- //#region src/shared/api/unit-board.ts
5066
- function gateOf(capability, mode) {
5067
- if (mode === "none") return { gated: true };
5068
- if (capability === null) return { gated: true };
5069
- return { gated: capability.status === "ok" || capability.status === "unchecked" };
5070
- }
5071
- function splitBlocker(candidates) {
5072
- let blocker;
5073
- let notice;
5074
- for (const candidate of candidates) {
5075
- if (candidate === void 0) continue;
5076
- if (candidate.severity === "block") {
5077
- blocker ??= candidate;
5078
- continue;
5079
- }
5080
- notice ??= candidate;
5081
- }
5082
- return {
5083
- ...blocker === void 0 ? {} : { blocker },
5084
- ...blocker !== void 0 || notice === void 0 ? {} : { notice }
5085
- };
5086
- }
5087
- function probeKeyOf(error) {
5088
- if (error === void 0) return null;
5089
- return error.code === "" ? "unknown" : error.code;
5090
- }
5091
- //#endregion
5092
5104
  //#region src/shared/hooks/use-capability-gate.ts
5093
5105
  var use_capability_gate_exports = /* @__PURE__ */ __exportAll({
5094
5106
  useCapabilityGate: () => useCapabilityGate,
@@ -5338,6 +5350,9 @@ window.__ModuleLoader__.load({
5338
5350
  unknown
5339
5351
  };
5340
5352
  }
5353
+ function checkedPluginCount(plugins) {
5354
+ return (plugins ?? []).filter((plugin) => plugin.latest !== void 0).length;
5355
+ }
5341
5356
  function installedRows(modules, manifests, listed, names, defaults = /* @__PURE__ */ new Set(), changed = {}) {
5342
5357
  const titles = new Map(manifests.map((manifest) => [manifest.id, manifest.titleKey]));
5343
5358
  const rows = [];
@@ -5869,14 +5884,14 @@ window.__ModuleLoader__.load({
5869
5884
  //#endregion
5870
5885
  //#region src/app/layouts/rightbar/market-install.ts
5871
5886
  var NO_UNITS$2 = /* @__PURE__ */ new Set();
5872
- var IDLE$1 = {
5887
+ var IDLE$2 = {
5873
5888
  installing: false,
5874
5889
  applied: NO_UNITS$2
5875
5890
  };
5876
5891
  var tokens = /* @__PURE__ */ new Set();
5877
5892
  var applied = /* @__PURE__ */ new Map();
5878
5893
  var listeners$5 = /* @__PURE__ */ new Set();
5879
- var snapshot$1 = IDLE$1;
5894
+ var snapshot$1 = IDLE$2;
5880
5895
  var timer$2;
5881
5896
  function sameUnits(left, right) {
5882
5897
  if (left.size !== right.size) return false;
@@ -5893,7 +5908,7 @@ window.__ModuleLoader__.load({
5893
5908
  }
5894
5909
  function refresh(now) {
5895
5910
  for (const [unit, at] of applied) if (now - at >= 15e3) applied.delete(unit);
5896
- const next = tokens.size === 0 && applied.size === 0 ? IDLE$1 : {
5911
+ const next = tokens.size === 0 && applied.size === 0 ? IDLE$2 : {
5897
5912
  installing: tokens.size > 0,
5898
5913
  applied: applied.size === 0 ? NO_UNITS$2 : new Set(applied.keys())
5899
5914
  };
@@ -6167,138 +6182,138 @@ window.__ModuleLoader__.load({
6167
6182
  };
6168
6183
  }
6169
6184
  var MarketPage_module_default = {
6170
- marketList: "_marketList_485ym_1",
6171
- marketRow: "_marketRow_485ym_10",
6172
- marketIcon: "_marketIcon_485ym_20",
6173
- marketMain: "_marketMain_485ym_32",
6174
- marketName: "_marketName_485ym_39",
6175
- marketStatus: "_marketStatus_485ym_48",
6176
- marketStateText: "_marketStateText_485ym_58",
6177
- marketSep: "_marketSep_485ym_62",
6178
- marketReason: "_marketReason_485ym_66",
6179
- marketVersion: "_marketVersion_485ym_72",
6180
- marketLocalTag: "_marketLocalTag_485ym_94",
6181
- marketEnd: "_marketEnd_485ym_105",
6182
- marketSwitchSeat: "_marketSwitchSeat_485ym_112",
6183
- marketActions: "_marketActions_485ym_125",
6184
- marketUpdateAction: "_marketUpdateAction_485ym_131",
6185
- marketSelfDivider: "_marketSelfDivider_485ym_137",
6186
- marketSection: "_marketSection_485ym_143",
6187
- marketSectionHead: "_marketSectionHead_485ym_150",
6188
- marketSectionIcon: "_marketSectionIcon_485ym_156",
6189
- marketSectionTitle: "_marketSectionTitle_485ym_163",
6190
- marketSectionCount: "_marketSectionCount_485ym_169",
6191
- marketSectionAction: "_marketSectionAction_485ym_175",
6192
- marketSectionQuiet: "_marketSectionQuiet_485ym_183",
6193
- marketProgress: "_marketProgress_485ym_196",
6194
- marketNote: "_marketNote_485ym_206",
6195
- marketFailure: "_marketFailure_485ym_213",
6196
- marketFailureSeat: "_marketFailureSeat_485ym_220",
6197
- marketEmpty: "_marketEmpty_485ym_225",
6198
- marketPage: "_marketPage_485ym_230",
6199
- marketPageHead: "_marketPageHead_485ym_248",
6200
- marketPageTitle: "_marketPageTitle_485ym_256",
6201
- marketPageIntro: "_marketPageIntro_485ym_261",
6202
- marketPageTools: "_marketPageTools_485ym_267",
6203
- marketPanel: "_marketPanel_485ym_276",
6204
- marketTabs: "_marketTabs_485ym_286",
6205
- marketTabList: "_marketTabList_485ym_291",
6206
- marketAddButton: "_marketAddButton_485ym_296",
6207
- marketEmptyTitle: "_marketEmptyTitle_485ym_313",
6208
- discoverPage: "_discoverPage_485ym_318",
6209
- discoverBar: "_discoverBar_485ym_325",
6210
- discoverTools: "_discoverTools_485ym_332",
6211
- discoverMarket: "_discoverMarket_485ym_338",
6212
- discoverMarketButton: "_discoverMarketButton_485ym_343",
6213
- discoverMarketName: "_discoverMarketName_485ym_350",
6214
- discoverLabels: "_discoverLabels_485ym_356",
6215
- discoverSort: "_discoverSort_485ym_361",
6216
- discoverRefresh: "_discoverRefresh_485ym_366",
6217
- discoverSearch: "_discoverSearch_485ym_370",
6218
- discoverSearchField: "_discoverSearchField_485ym_378",
6219
- discoverSearchFieldFilled: "_discoverSearchFieldFilled_485ym_383",
6220
- discoverSearchClear: "_discoverSearchClear_485ym_392",
6221
- discoverChips: "_discoverChips_485ym_443",
6222
- discoverList: "_discoverList_485ym_450",
6223
- discoverCard: "_discoverCard_485ym_459",
6224
- discoverArtwork: "_discoverArtwork_485ym_473",
6225
- discoverArtworkImage: "_discoverArtworkImage_485ym_485",
6226
- discoverMain: "_discoverMain_485ym_489",
6227
- discoverTitleRow: "_discoverTitleRow_485ym_497",
6228
- discoverCardOpen: "_discoverCardOpen_485ym_505",
6229
- discoverStrong: "_discoverStrong_485ym_536",
6230
- discoverDesc: "_discoverDesc_485ym_542",
6231
- discoverMeta: "_discoverMeta_485ym_551",
6232
- discoverMuted: "_discoverMuted_485ym_558",
6233
- discoverEnd: "_discoverEnd_485ym_564",
6234
- discoverUpdateAction: "_discoverUpdateAction_485ym_573",
6235
- discoverBlocked: "_discoverBlocked_485ym_578",
6236
- discoverEmpty: "_discoverEmpty_485ym_583",
6237
- discoverEmptyTitle: "_discoverEmptyTitle_485ym_592",
6238
- discoverDetail: "_discoverDetail_485ym_602",
6239
- discoverCrumb: "_discoverCrumb_485ym_608",
6240
- discoverCrumbIcon: "_discoverCrumbIcon_485ym_631",
6241
- discoverDetailHead: "_discoverDetailHead_485ym_635",
6242
- discoverDetailTitle: "_discoverDetailTitle_485ym_641",
6243
- discoverDetailText: "_discoverDetailText_485ym_647",
6244
- discoverDetailPanel: "_discoverDetailPanel_485ym_654",
6245
- discoverDetailTabs: "_discoverDetailTabs_485ym_661",
6246
- discoverDetailTabList: "_discoverDetailTabList_485ym_666",
6247
- discoverDocBody: "_discoverDocBody_485ym_671",
6248
- discoverDocNotice: "_discoverDocNotice_485ym_676",
6249
- discoverSection: "_discoverSection_485ym_682",
6250
- discoverSectionTitle: "_discoverSectionTitle_485ym_689",
6251
- discoverFacts: "_discoverFacts_485ym_695",
6252
- discoverFactRow: "_discoverFactRow_485ym_700",
6253
- discoverFactKind: "_discoverFactKind_485ym_710",
6254
- discoverFactValue: "_discoverFactValue_485ym_716",
6255
- discoverCode: "_discoverCode_485ym_724",
6256
- discoverTags: "_discoverTags_485ym_733",
6257
- discoverLink: "_discoverLink_485ym_740",
6258
- discoverVersions: "_discoverVersions_485ym_750",
6259
- discoverVersionRow: "_discoverVersionRow_485ym_758",
6260
- discoverVersionName: "_discoverVersionName_485ym_766",
6261
- discoverError: "_discoverError_485ym_771",
6262
- discoverFailure: "_discoverFailure_485ym_780",
6263
- discoverLoading: "_discoverLoading_485ym_786",
6264
- discoverNotice: "_discoverNotice_485ym_795",
6265
- discoverMore: "_discoverMore_485ym_813",
6266
- discoverTransport: "_discoverTransport_485ym_817",
6267
- discoverTransportHead: "_discoverTransportHead_485ym_823",
6268
- discoverTransportTitle: "_discoverTransportTitle_485ym_830",
6269
- discoverTransportKind: "_discoverTransportKind_485ym_835",
6270
- discoverTransportState: "_discoverTransportState_485ym_840",
6271
- discoverTransportRows: "_discoverTransportRows_485ym_848",
6272
- discoverTransportRow: "_discoverTransportRow_485ym_848",
6273
- discoverTransportRadio: "_discoverTransportRadio_485ym_869",
6274
- discoverTransportCustom: "_discoverTransportCustom_485ym_909",
6275
- discoverTransportInput: "_discoverTransportInput_485ym_915",
6276
- discoverInstallBar: "_discoverInstallBar_485ym_920",
6277
- discoverInstallText: "_discoverInstallText_485ym_931",
6278
- discoverDialog: "_discoverDialog_485ym_937",
6279
- discoverDialogBody: "_discoverDialogBody_485ym_941",
6280
- discoverSourceList: "_discoverSourceList_485ym_947",
6281
- discoverSourceRow: "_discoverSourceRow_485ym_955",
6282
- discoverSourceConfirm: "_discoverSourceConfirm_485ym_964",
6283
- discoverSourcePick: "_discoverSourcePick_485ym_970",
6284
- discoverSourceRadio: "_discoverSourceRadio_485ym_979",
6285
- discoverSourceMain: "_discoverSourceMain_485ym_987",
6286
- discoverSourceHead: "_discoverSourceHead_485ym_995",
6287
- discoverSourceUrl: "_discoverSourceUrl_485ym_1003",
6288
- discoverSourceMore: "_discoverSourceMore_485ym_1013",
6289
- discoverSourceLoading: "_discoverSourceLoading_485ym_1017",
6290
- discoverSourceHint: "_discoverSourceHint_485ym_1027",
6291
- discoverSourceError: "_discoverSourceError_485ym_1041",
6292
- discoverSourceForm: "_discoverSourceForm_485ym_1047",
6293
- discoverGrow: "_discoverGrow_485ym_1053",
6294
- discoverField: "_discoverField_485ym_1058",
6295
- discoverFieldLabel: "_discoverFieldLabel_485ym_1064",
6296
- discoverConfirmHead: "_discoverConfirmHead_485ym_1069",
6297
- discoverSkeletonFill: "_discoverSkeletonFill_485ym_1075",
6298
- "wb-skeleton": "_wb-skeleton_485ym_1",
6299
- discoverSkeletonBar: "_discoverSkeletonBar_485ym_1084",
6300
- discoverSkeletonTitle: "_discoverSkeletonTitle_485ym_1091",
6301
- discoverSkeletonDesc: "_discoverSkeletonDesc_485ym_1095"
6185
+ marketList: "_marketList_1vpw3_1",
6186
+ marketRow: "_marketRow_1vpw3_10",
6187
+ marketIcon: "_marketIcon_1vpw3_20",
6188
+ marketMain: "_marketMain_1vpw3_32",
6189
+ marketName: "_marketName_1vpw3_39",
6190
+ marketStatus: "_marketStatus_1vpw3_48",
6191
+ marketStateText: "_marketStateText_1vpw3_58",
6192
+ marketSep: "_marketSep_1vpw3_62",
6193
+ marketReason: "_marketReason_1vpw3_66",
6194
+ marketVersion: "_marketVersion_1vpw3_72",
6195
+ marketLocalTag: "_marketLocalTag_1vpw3_94",
6196
+ marketEnd: "_marketEnd_1vpw3_105",
6197
+ marketSwitchSeat: "_marketSwitchSeat_1vpw3_112",
6198
+ marketActions: "_marketActions_1vpw3_125",
6199
+ marketUpdateAction: "_marketUpdateAction_1vpw3_131",
6200
+ marketSelfDivider: "_marketSelfDivider_1vpw3_137",
6201
+ marketSection: "_marketSection_1vpw3_143",
6202
+ marketSectionHead: "_marketSectionHead_1vpw3_150",
6203
+ marketSectionIcon: "_marketSectionIcon_1vpw3_156",
6204
+ marketSectionTitle: "_marketSectionTitle_1vpw3_163",
6205
+ marketSectionCount: "_marketSectionCount_1vpw3_169",
6206
+ marketSectionAction: "_marketSectionAction_1vpw3_175",
6207
+ marketSectionQuiet: "_marketSectionQuiet_1vpw3_183",
6208
+ marketProgress: "_marketProgress_1vpw3_195",
6209
+ marketNote: "_marketNote_1vpw3_205",
6210
+ marketFailure: "_marketFailure_1vpw3_212",
6211
+ marketFailureSeat: "_marketFailureSeat_1vpw3_219",
6212
+ marketEmpty: "_marketEmpty_1vpw3_224",
6213
+ marketPage: "_marketPage_1vpw3_229",
6214
+ marketPageHead: "_marketPageHead_1vpw3_247",
6215
+ marketPageTitle: "_marketPageTitle_1vpw3_255",
6216
+ marketPageIntro: "_marketPageIntro_1vpw3_260",
6217
+ marketPageTools: "_marketPageTools_1vpw3_266",
6218
+ marketPanel: "_marketPanel_1vpw3_275",
6219
+ marketTabs: "_marketTabs_1vpw3_285",
6220
+ marketTabList: "_marketTabList_1vpw3_290",
6221
+ marketAddButton: "_marketAddButton_1vpw3_295",
6222
+ marketEmptyTitle: "_marketEmptyTitle_1vpw3_312",
6223
+ discoverPage: "_discoverPage_1vpw3_317",
6224
+ discoverBar: "_discoverBar_1vpw3_324",
6225
+ discoverTools: "_discoverTools_1vpw3_331",
6226
+ discoverMarket: "_discoverMarket_1vpw3_337",
6227
+ discoverMarketButton: "_discoverMarketButton_1vpw3_342",
6228
+ discoverMarketName: "_discoverMarketName_1vpw3_349",
6229
+ discoverLabels: "_discoverLabels_1vpw3_355",
6230
+ discoverSort: "_discoverSort_1vpw3_360",
6231
+ discoverRefresh: "_discoverRefresh_1vpw3_365",
6232
+ discoverSearch: "_discoverSearch_1vpw3_369",
6233
+ discoverSearchField: "_discoverSearchField_1vpw3_377",
6234
+ discoverSearchFieldFilled: "_discoverSearchFieldFilled_1vpw3_382",
6235
+ discoverSearchClear: "_discoverSearchClear_1vpw3_391",
6236
+ discoverChips: "_discoverChips_1vpw3_442",
6237
+ discoverList: "_discoverList_1vpw3_449",
6238
+ discoverCard: "_discoverCard_1vpw3_458",
6239
+ discoverArtwork: "_discoverArtwork_1vpw3_472",
6240
+ discoverArtworkImage: "_discoverArtworkImage_1vpw3_484",
6241
+ discoverMain: "_discoverMain_1vpw3_488",
6242
+ discoverTitleRow: "_discoverTitleRow_1vpw3_496",
6243
+ discoverCardOpen: "_discoverCardOpen_1vpw3_504",
6244
+ discoverStrong: "_discoverStrong_1vpw3_535",
6245
+ discoverDesc: "_discoverDesc_1vpw3_541",
6246
+ discoverMeta: "_discoverMeta_1vpw3_550",
6247
+ discoverMuted: "_discoverMuted_1vpw3_557",
6248
+ discoverEnd: "_discoverEnd_1vpw3_563",
6249
+ discoverUpdateAction: "_discoverUpdateAction_1vpw3_572",
6250
+ discoverBlocked: "_discoverBlocked_1vpw3_577",
6251
+ discoverEmpty: "_discoverEmpty_1vpw3_582",
6252
+ discoverEmptyTitle: "_discoverEmptyTitle_1vpw3_591",
6253
+ discoverDetail: "_discoverDetail_1vpw3_601",
6254
+ discoverCrumb: "_discoverCrumb_1vpw3_607",
6255
+ discoverCrumbIcon: "_discoverCrumbIcon_1vpw3_630",
6256
+ discoverDetailHead: "_discoverDetailHead_1vpw3_634",
6257
+ discoverDetailTitle: "_discoverDetailTitle_1vpw3_640",
6258
+ discoverDetailText: "_discoverDetailText_1vpw3_646",
6259
+ discoverDetailPanel: "_discoverDetailPanel_1vpw3_653",
6260
+ discoverDetailTabs: "_discoverDetailTabs_1vpw3_660",
6261
+ discoverDetailTabList: "_discoverDetailTabList_1vpw3_665",
6262
+ discoverDocBody: "_discoverDocBody_1vpw3_670",
6263
+ discoverDocNotice: "_discoverDocNotice_1vpw3_675",
6264
+ discoverSection: "_discoverSection_1vpw3_681",
6265
+ discoverSectionTitle: "_discoverSectionTitle_1vpw3_688",
6266
+ discoverFacts: "_discoverFacts_1vpw3_694",
6267
+ discoverFactRow: "_discoverFactRow_1vpw3_699",
6268
+ discoverFactKind: "_discoverFactKind_1vpw3_709",
6269
+ discoverFactValue: "_discoverFactValue_1vpw3_715",
6270
+ discoverCode: "_discoverCode_1vpw3_723",
6271
+ discoverTags: "_discoverTags_1vpw3_732",
6272
+ discoverLink: "_discoverLink_1vpw3_739",
6273
+ discoverVersions: "_discoverVersions_1vpw3_749",
6274
+ discoverVersionRow: "_discoverVersionRow_1vpw3_757",
6275
+ discoverVersionName: "_discoverVersionName_1vpw3_765",
6276
+ discoverError: "_discoverError_1vpw3_770",
6277
+ discoverFailure: "_discoverFailure_1vpw3_779",
6278
+ discoverLoading: "_discoverLoading_1vpw3_785",
6279
+ discoverNotice: "_discoverNotice_1vpw3_794",
6280
+ discoverMore: "_discoverMore_1vpw3_812",
6281
+ discoverTransport: "_discoverTransport_1vpw3_816",
6282
+ discoverTransportHead: "_discoverTransportHead_1vpw3_822",
6283
+ discoverTransportTitle: "_discoverTransportTitle_1vpw3_829",
6284
+ discoverTransportKind: "_discoverTransportKind_1vpw3_834",
6285
+ discoverTransportState: "_discoverTransportState_1vpw3_839",
6286
+ discoverTransportRows: "_discoverTransportRows_1vpw3_847",
6287
+ discoverTransportRow: "_discoverTransportRow_1vpw3_847",
6288
+ discoverTransportRadio: "_discoverTransportRadio_1vpw3_868",
6289
+ discoverTransportCustom: "_discoverTransportCustom_1vpw3_908",
6290
+ discoverTransportInput: "_discoverTransportInput_1vpw3_914",
6291
+ discoverInstallBar: "_discoverInstallBar_1vpw3_919",
6292
+ discoverInstallText: "_discoverInstallText_1vpw3_930",
6293
+ discoverDialog: "_discoverDialog_1vpw3_936",
6294
+ discoverDialogBody: "_discoverDialogBody_1vpw3_940",
6295
+ discoverSourceList: "_discoverSourceList_1vpw3_946",
6296
+ discoverSourceRow: "_discoverSourceRow_1vpw3_954",
6297
+ discoverSourceConfirm: "_discoverSourceConfirm_1vpw3_963",
6298
+ discoverSourcePick: "_discoverSourcePick_1vpw3_969",
6299
+ discoverSourceRadio: "_discoverSourceRadio_1vpw3_978",
6300
+ discoverSourceMain: "_discoverSourceMain_1vpw3_986",
6301
+ discoverSourceHead: "_discoverSourceHead_1vpw3_994",
6302
+ discoverSourceUrl: "_discoverSourceUrl_1vpw3_1002",
6303
+ discoverSourceMore: "_discoverSourceMore_1vpw3_1012",
6304
+ discoverSourceLoading: "_discoverSourceLoading_1vpw3_1016",
6305
+ discoverSourceHint: "_discoverSourceHint_1vpw3_1026",
6306
+ discoverSourceError: "_discoverSourceError_1vpw3_1040",
6307
+ discoverSourceForm: "_discoverSourceForm_1vpw3_1046",
6308
+ discoverGrow: "_discoverGrow_1vpw3_1052",
6309
+ discoverField: "_discoverField_1vpw3_1057",
6310
+ discoverFieldLabel: "_discoverFieldLabel_1vpw3_1063",
6311
+ discoverConfirmHead: "_discoverConfirmHead_1vpw3_1068",
6312
+ discoverSkeletonFill: "_discoverSkeletonFill_1vpw3_1074",
6313
+ "wb-skeleton": "_wb-skeleton_1vpw3_1",
6314
+ discoverSkeletonBar: "_discoverSkeletonBar_1vpw3_1083",
6315
+ discoverSkeletonTitle: "_discoverSkeletonTitle_1vpw3_1090",
6316
+ discoverSkeletonDesc: "_discoverSkeletonDesc_1vpw3_1094"
6302
6317
  };
6303
6318
  //#endregion
6304
6319
  //#region src/app/layouts/market/discover-states.tsx
@@ -6378,6 +6393,75 @@ window.__ModuleLoader__.load({
6378
6393
  function MarketEmpty({ t }) {
6379
6394
  return /* @__PURE__ */ (0, react.createElement)("div", { className: MarketPage_module_default.marketEmpty }, /* @__PURE__ */ (0, react.createElement)("div", { className: MarketPage_module_default.marketEmptyTitle }, t("panels.market.empty")));
6380
6395
  }
6396
+ var FailureCard_module_default = {
6397
+ block: "_block_mxnbc_1",
6398
+ head: "_head_mxnbc_9",
6399
+ title: "_title_mxnbc_16",
6400
+ fact: "_fact_mxnbc_22",
6401
+ actions: "_actions_mxnbc_30",
6402
+ hint: "_hint_mxnbc_38",
6403
+ output: "_output_mxnbc_44"
6404
+ };
6405
+ //#endregion
6406
+ //#region src/app/layouts/rightbar/FailureCard.tsx
6407
+ var COPIED_MS$1 = 1200;
6408
+ function terminalLabels(t) {
6409
+ return {
6410
+ commandLine: (line) => t("panels.market.failure.term.commandLine", { line }),
6411
+ signal: (signal) => t("panels.market.failure.term.signal", { signal }),
6412
+ exitCode: (exitCode) => t("panels.market.failure.term.exitCode", { exitCode }),
6413
+ noExitCode: t("panels.market.failure.term.noExitCode"),
6414
+ running: t("panels.market.failure.term.running"),
6415
+ failed: t("panels.market.failure.term.failed"),
6416
+ done: t("panels.market.failure.term.done"),
6417
+ copy: t("panels.market.failure.term.copy"),
6418
+ copied: t("panels.market.failure.term.copied"),
6419
+ noOutput: t("panels.market.failure.term.noOutput"),
6420
+ collapseAria: t("panels.market.failure.term.collapse"),
6421
+ collapse: t("panels.market.failure.term.collapse"),
6422
+ expandAria: (hidden) => t("panels.market.failure.term.expandAria", { hidden }),
6423
+ expand: (hidden) => t("panels.market.failure.term.expand", { hidden })
6424
+ };
6425
+ }
6426
+ function FailureCard({ t, model, onRecheck, rechecking }) {
6427
+ const hasOutput = model.command !== "" || model.output !== "";
6428
+ const [copied, setCopied] = (0, react.useState)(false);
6429
+ const [open, setOpen] = (0, react.useState)(false);
6430
+ const onCopy = (0, react.useCallback)(() => {
6431
+ (0, _deepseek_ai_dsh_client_ui_primitives.writeClipboard)(model.fix).then((ok) => {
6432
+ if (!ok) return;
6433
+ setCopied(true);
6434
+ setTimeout(() => setCopied(false), COPIED_MS$1);
6435
+ });
6436
+ }, [model.fix]);
6437
+ return /* @__PURE__ */ (0, react.createElement)("div", { className: FailureCard_module_default.block }, /* @__PURE__ */ (0, react.createElement)("div", { className: FailureCard_module_default.head }, /* @__PURE__ */ (0, react.createElement)(_deepseek_ai_dsh_client_ui_primitives.StateDot, {
6438
+ state: "error",
6439
+ size: 8
6440
+ }), /* @__PURE__ */ (0, react.createElement)("span", { className: FailureCard_module_default.title }, model.title)), /* @__PURE__ */ (0, react.createElement)("p", { className: FailureCard_module_default.fact }, model.fact), /* @__PURE__ */ (0, react.createElement)("div", { className: FailureCard_module_default.actions }, /* @__PURE__ */ (0, react.createElement)(_deepseek_ai_dsh_client_ui_primitives.Button, {
6441
+ type: "button",
6442
+ size: "sm",
6443
+ variant: "ghost",
6444
+ onClick: onCopy
6445
+ }, copied ? t("panels.market.failure.copied") : model.fixLabel), /* @__PURE__ */ (0, react.createElement)(_deepseek_ai_dsh_client_ui_primitives.Button, {
6446
+ type: "button",
6447
+ size: "sm",
6448
+ variant: "ghost",
6449
+ disabled: rechecking,
6450
+ onClick: onRecheck
6451
+ }, t("panels.market.failure.recheck")), hasOutput ? /* @__PURE__ */ (0, react.createElement)(_deepseek_ai_dsh_client_ui_primitives.Button, {
6452
+ type: "button",
6453
+ size: "sm",
6454
+ variant: "ghost",
6455
+ onClick: () => setOpen(!open)
6456
+ }, open ? t("panels.market.failure.hideOutput") : t("panels.market.failure.showOutput")) : null), copied ? /* @__PURE__ */ (0, react.createElement)("p", { className: FailureCard_module_default.hint }, model.copiedHint) : null, open && hasOutput ? /* @__PURE__ */ (0, react.createElement)(_deepseek_ai_dsh_client_ui_primitives.TerminalBlock, {
6457
+ command: model.command,
6458
+ output: model.output,
6459
+ exitCode: model.exitCode,
6460
+ maxLines: 8,
6461
+ labels: terminalLabels(t),
6462
+ className: FailureCard_module_default.output
6463
+ }) : null);
6464
+ }
6381
6465
  //#endregion
6382
6466
  //#region src/app/layouts/rightbar/failure-card-text.ts
6383
6467
  var TITLE_KEY = {
@@ -6387,6 +6471,22 @@ window.__ModuleLoader__.load({
6387
6471
  unknown: "panels.market.failure.unknown"
6388
6472
  };
6389
6473
  var ASK_AGENT_KEY = "panels.market.failure.askAgent";
6474
+ function updateStuckCardOf(t, input) {
6475
+ const unknown = t("panels.market.updateUnknownVersion");
6476
+ return {
6477
+ title: t("panels.market.updateStuck.title"),
6478
+ fact: input.fact ?? t("panels.market.updateStuck.factNoChange", {
6479
+ from: input.from ?? unknown,
6480
+ latest: input.latest ?? unknown
6481
+ }),
6482
+ fixLabel: t("panels.market.failure.copyFix"),
6483
+ fix: input.command,
6484
+ copiedHint: t("panels.market.updateStuck.copiedHint"),
6485
+ command: "",
6486
+ output: "",
6487
+ exitCode: null
6488
+ };
6489
+ }
6390
6490
  function shellPath(path) {
6391
6491
  return /^[\w./@%+-]+$/.test(path) ? path : `'${path.replaceAll("'", "'\\''")}'`;
6392
6492
  }
@@ -6454,75 +6554,6 @@ window.__ModuleLoader__.load({
6454
6554
  exitCode: failure.exitCode
6455
6555
  };
6456
6556
  }
6457
- var FailureCard_module_default = {
6458
- block: "_block_mxnbc_1",
6459
- head: "_head_mxnbc_9",
6460
- title: "_title_mxnbc_16",
6461
- fact: "_fact_mxnbc_22",
6462
- actions: "_actions_mxnbc_30",
6463
- hint: "_hint_mxnbc_38",
6464
- output: "_output_mxnbc_44"
6465
- };
6466
- //#endregion
6467
- //#region src/app/layouts/rightbar/FailureCard.tsx
6468
- var COPIED_MS$1 = 1200;
6469
- function terminalLabels(t) {
6470
- return {
6471
- commandLine: (line) => t("panels.market.failure.term.commandLine", { line }),
6472
- signal: (signal) => t("panels.market.failure.term.signal", { signal }),
6473
- exitCode: (exitCode) => t("panels.market.failure.term.exitCode", { exitCode }),
6474
- noExitCode: t("panels.market.failure.term.noExitCode"),
6475
- running: t("panels.market.failure.term.running"),
6476
- failed: t("panels.market.failure.term.failed"),
6477
- done: t("panels.market.failure.term.done"),
6478
- copy: t("panels.market.failure.term.copy"),
6479
- copied: t("panels.market.failure.term.copied"),
6480
- noOutput: t("panels.market.failure.term.noOutput"),
6481
- collapseAria: t("panels.market.failure.term.collapse"),
6482
- collapse: t("panels.market.failure.term.collapse"),
6483
- expandAria: (hidden) => t("panels.market.failure.term.expandAria", { hidden }),
6484
- expand: (hidden) => t("panels.market.failure.term.expand", { hidden })
6485
- };
6486
- }
6487
- function FailureCard({ t, failure, onRecheck, rechecking }) {
6488
- const model = failureCardOf(failure, t);
6489
- const [copied, setCopied] = (0, react.useState)(false);
6490
- const [open, setOpen] = (0, react.useState)(false);
6491
- const onCopy = (0, react.useCallback)(() => {
6492
- (0, _deepseek_ai_dsh_client_ui_primitives.writeClipboard)(model.fix).then((ok) => {
6493
- if (!ok) return;
6494
- setCopied(true);
6495
- setTimeout(() => setCopied(false), COPIED_MS$1);
6496
- });
6497
- }, [model.fix]);
6498
- return /* @__PURE__ */ (0, react.createElement)("div", { className: FailureCard_module_default.block }, /* @__PURE__ */ (0, react.createElement)("div", { className: FailureCard_module_default.head }, /* @__PURE__ */ (0, react.createElement)(_deepseek_ai_dsh_client_ui_primitives.StateDot, {
6499
- state: "error",
6500
- size: 8
6501
- }), /* @__PURE__ */ (0, react.createElement)("span", { className: FailureCard_module_default.title }, model.title)), /* @__PURE__ */ (0, react.createElement)("p", { className: FailureCard_module_default.fact }, model.fact), /* @__PURE__ */ (0, react.createElement)("div", { className: FailureCard_module_default.actions }, /* @__PURE__ */ (0, react.createElement)(_deepseek_ai_dsh_client_ui_primitives.Button, {
6502
- type: "button",
6503
- size: "sm",
6504
- variant: "ghost",
6505
- onClick: onCopy
6506
- }, copied ? t("panels.market.failure.copied") : model.fixLabel), /* @__PURE__ */ (0, react.createElement)(_deepseek_ai_dsh_client_ui_primitives.Button, {
6507
- type: "button",
6508
- size: "sm",
6509
- variant: "ghost",
6510
- disabled: rechecking,
6511
- onClick: onRecheck
6512
- }, t("panels.market.failure.recheck")), /* @__PURE__ */ (0, react.createElement)(_deepseek_ai_dsh_client_ui_primitives.Button, {
6513
- type: "button",
6514
- size: "sm",
6515
- variant: "ghost",
6516
- onClick: () => setOpen(!open)
6517
- }, open ? t("panels.market.failure.hideOutput") : t("panels.market.failure.showOutput"))), copied ? /* @__PURE__ */ (0, react.createElement)("p", { className: FailureCard_module_default.hint }, model.copiedHint) : null, open ? /* @__PURE__ */ (0, react.createElement)(_deepseek_ai_dsh_client_ui_primitives.TerminalBlock, {
6518
- command: model.command,
6519
- output: model.output,
6520
- exitCode: model.exitCode,
6521
- maxLines: 8,
6522
- labels: terminalLabels(t),
6523
- className: FailureCard_module_default.output
6524
- }) : null);
6525
- }
6526
6557
  //#endregion
6527
6558
  //#region src/app/layouts/rightbar/market-section-icon.ts
6528
6559
  var SIZE$1 = 14;
@@ -6732,7 +6763,7 @@ window.__ModuleLoader__.load({
6732
6763
  onClick: () => onAct(action)
6733
6764
  }, t(ACTION_LABEL_KEY[action]))))), failure === null ? null : failure.failure === void 0 ? /* @__PURE__ */ (0, react.createElement)("div", { className: MarketPage_module_default.marketFailure }, failure.message) : /* @__PURE__ */ (0, react.createElement)("div", { className: MarketPage_module_default.marketFailureSeat }, /* @__PURE__ */ (0, react.createElement)(FailureCard, {
6734
6765
  t,
6735
- failure: failure.failure,
6766
+ model: failureCardOf(failure.failure, t),
6736
6767
  onRecheck,
6737
6768
  rechecking
6738
6769
  })));
@@ -6862,6 +6893,17 @@ window.__ModuleLoader__.load({
6862
6893
  "aria-hidden": "true"
6863
6894
  }, "·"), /* @__PURE__ */ (0, react.createElement)("span", { className: MarketPage_module_default.marketReason }, noteText)));
6864
6895
  }
6896
+ function MarketFailureBlock({ t, failure, onRecheck, rechecking }) {
6897
+ if (failure === null) return null;
6898
+ const model = failure.card ?? (failure.failure === void 0 ? void 0 : failureCardOf(failure.failure, t));
6899
+ if (model !== void 0) return /* @__PURE__ */ (0, react.createElement)("div", { className: MarketPage_module_default.marketFailureSeat }, /* @__PURE__ */ (0, react.createElement)(FailureCard, {
6900
+ t,
6901
+ model,
6902
+ onRecheck,
6903
+ rechecking
6904
+ }));
6905
+ return /* @__PURE__ */ (0, react.createElement)("div", { className: MarketPage_module_default.marketFailure }, failure.message);
6906
+ }
6865
6907
  function MarketLine({ t, row, pending, failure, onAct, onDefault, boardBusy, onRecheck, rechecking }) {
6866
6908
  const running = pending !== null && pending.id === row.id ? pending : null;
6867
6909
  const locked = pending !== null;
@@ -6908,12 +6950,12 @@ window.__ModuleLoader__.load({
6908
6950
  disabled: boardBusy === true || locked || switchLocked,
6909
6951
  label: `${marketRowTitle(row, t)} · ${t("panels.market.defaultLabel")}`,
6910
6952
  onChange: (next) => onDefault?.(next)
6911
- })))), failure === null ? null : failure.failure === void 0 ? /* @__PURE__ */ (0, react.createElement)("div", { className: MarketPage_module_default.marketFailure }, failure.message) : /* @__PURE__ */ (0, react.createElement)("div", { className: MarketPage_module_default.marketFailureSeat }, /* @__PURE__ */ (0, react.createElement)(FailureCard, {
6953
+ })))), /* @__PURE__ */ (0, react.createElement)(MarketFailureBlock, {
6912
6954
  t,
6913
- failure: failure.failure,
6955
+ failure,
6914
6956
  onRecheck,
6915
6957
  rechecking
6916
- })), /* @__PURE__ */ (0, react.createElement)(MarketLineDialogs, {
6958
+ }), /* @__PURE__ */ (0, react.createElement)(MarketLineDialogs, {
6917
6959
  t,
6918
6960
  migrationOpen,
6919
6961
  dismissOpen,
@@ -7120,9 +7162,10 @@ window.__ModuleLoader__.load({
7120
7162
  "incompatible-version": "panels.market.add.failureGeneric",
7121
7163
  "not-bundle": "panels.market.add.failureGeneric",
7122
7164
  "invalid-spec": "panels.market.add.failureGeneric",
7123
- "bundle-in-use": "panels.market.add.failureGeneric",
7165
+ "bundle-in-use": "panels.market.add.failureStopProfile",
7124
7166
  "not-removable": "panels.market.add.failureGeneric",
7125
- "stop-profile": "panels.market.add.failureGeneric",
7167
+ "stop-profile": "panels.market.add.failureStopProfile",
7168
+ cancelled: "panels.market.add.failureCancelled",
7126
7169
  "stale-approval": "panels.market.add.failureGeneric"
7127
7170
  };
7128
7171
  function needsCredentials(change) {
@@ -7194,6 +7237,7 @@ window.__ModuleLoader__.load({
7194
7237
  ...input.restored === void 0 ? {} : { restored: input.restored }
7195
7238
  };
7196
7239
  const installed = input.module?.version;
7240
+ if ((input.change?.application === "failed" || input.change?.application === "cancelled") && input.change?.errorCode !== "no-change") return { kind: "failed" };
7197
7241
  if (input.change?.errorCode === "no-change") return { kind: "no-change" };
7198
7242
  if (installed === void 0) return { kind: "ok" };
7199
7243
  if (input.clicked !== void 0 && installed === input.clicked) return { kind: "no-change" };
@@ -7240,6 +7284,10 @@ window.__ModuleLoader__.load({
7240
7284
  const restored = recordOf(value)?.restored;
7241
7285
  return typeof restored === "string" && restored !== "" ? restored : void 0;
7242
7286
  }
7287
+ function remedyOf(value) {
7288
+ const command = recordOf(recordOf(value)?.remedy)?.command;
7289
+ return typeof command === "string" && command !== "" ? { command } : void 0;
7290
+ }
7243
7291
  function marketActOf(options) {
7244
7292
  const { t, mocked, rowOf, seats, send, onChanged } = options;
7245
7293
  return async (id, action) => {
@@ -7321,24 +7369,33 @@ window.__ModuleLoader__.load({
7321
7369
  return;
7322
7370
  }
7323
7371
  const change = changeOf(value);
7324
- const failure = updateVerdictText(updateVerdictOf({
7372
+ const remedy = remedyOf(value);
7373
+ const verdict = updateVerdictOf({
7325
7374
  action,
7326
7375
  change,
7327
7376
  module: moduleOf(value),
7328
7377
  restored: restoredOf(value),
7329
7378
  clicked: next.version,
7330
7379
  latest: next.latest
7331
- }), t, {
7380
+ });
7381
+ const failure = updateVerdictText(verdict, t, {
7332
7382
  ...next.version === void 0 ? {} : { from: next.version },
7333
7383
  ...next.latest === void 0 ? {} : { latest: next.latest }
7334
7384
  });
7385
+ const cardOf = (fact) => remedy === void 0 || verdict.kind !== "no-change" && verdict.kind !== "failed" ? {} : { card: updateStuckCardOf(t, {
7386
+ command: remedy.command,
7387
+ ...fact === void 0 ? {} : { fact },
7388
+ ...next.version === void 0 ? {} : { from: next.version },
7389
+ ...next.latest === void 0 ? {} : { latest: next.latest }
7390
+ }) };
7335
7391
  onChanged({ force: true });
7336
7392
  if (failure !== void 0) {
7337
7393
  seats.setPending(null);
7338
7394
  seats.setHeld(void 0);
7339
7395
  seats.setFailed({
7340
7396
  id,
7341
- message: failure
7397
+ message: failure,
7398
+ ...cardOf()
7342
7399
  });
7343
7400
  return;
7344
7401
  }
@@ -7353,7 +7410,8 @@ window.__ModuleLoader__.load({
7353
7410
  const reason = changeFailure(change, t);
7354
7411
  if (reason !== void 0) seats.setFailed({
7355
7412
  id,
7356
- message: t("panels.market.failed", { reason })
7413
+ message: t("panels.market.failed", { reason }),
7414
+ ...cardOf(reason)
7357
7415
  });
7358
7416
  };
7359
7417
  }
@@ -7431,6 +7489,21 @@ window.__ModuleLoader__.load({
7431
7489
  };
7432
7490
  //#endregion
7433
7491
  //#region src/app/layouts/market/market-check.tsx
7492
+ function MarketRefreshButton({ label, checking, disabled, onCheck }) {
7493
+ return /* @__PURE__ */ (0, react.createElement)(Tip, { label }, /* @__PURE__ */ (0, react.createElement)(_deepseek_ai_dsh_client_ui_primitives.Button, {
7494
+ type: "button",
7495
+ variant: "ghost",
7496
+ size: "sm",
7497
+ className: market_check_module_default.button,
7498
+ "aria-label": label,
7499
+ disabled: disabled || checking,
7500
+ icon: /* @__PURE__ */ (0, react.createElement)("span", {
7501
+ className: `${market_check_module_default.icon}${checking ? " wb-spinning" : ""}`,
7502
+ "aria-hidden": "true"
7503
+ }, /* @__PURE__ */ (0, react.createElement)(_deepseek_ai_dsh_client_ui_primitives.IconRefreshOutlineRegular, { size: 14 })),
7504
+ onClick: onCheck
7505
+ }));
7506
+ }
7434
7507
  function MarketCheck({ t, checkedAt, latestCheck = {
7435
7508
  checked: 0,
7436
7509
  unknown: 0
@@ -7446,39 +7519,29 @@ window.__ModuleLoader__.load({
7446
7519
  return /* @__PURE__ */ (0, react.createElement)("span", { className: market_check_module_default.check }, status === null ? null : /* @__PURE__ */ (0, react.createElement)("span", {
7447
7520
  className: market_check_module_default.status,
7448
7521
  "aria-live": "polite"
7449
- }, status), /* @__PURE__ */ (0, react.createElement)(Tip, { label: t("panels.market.checkUpdates") }, /* @__PURE__ */ (0, react.createElement)(_deepseek_ai_dsh_client_ui_primitives.Button, {
7450
- type: "button",
7451
- variant: "ghost",
7452
- size: "sm",
7453
- className: market_check_module_default.button,
7454
- "aria-label": t("panels.market.checkUpdates"),
7455
- disabled: disabled || checking,
7456
- icon: /* @__PURE__ */ (0, react.createElement)("span", {
7457
- className: `${market_check_module_default.icon}${checking ? " wb-spinning" : ""}`,
7458
- "aria-hidden": "true"
7459
- }, /* @__PURE__ */ (0, react.createElement)(_deepseek_ai_dsh_client_ui_primitives.IconRefreshOutlineRegular, { size: 14 })),
7460
- onClick: onCheck
7461
- })));
7522
+ }, status), /* @__PURE__ */ (0, react.createElement)(MarketRefreshButton, {
7523
+ label: t("panels.market.checkUpdates"),
7524
+ checking,
7525
+ disabled,
7526
+ onCheck
7527
+ }));
7462
7528
  }
7463
- var PanelFoot_module_default = {
7464
- foot: "_foot_1ud1j_1",
7465
- footText: "_footText_1ud1j_13",
7466
- footTextMd: "_footTextMd_1ud1j_18"
7467
- };
7468
7529
  //#endregion
7469
- //#region src/shared/components/PanelFoot.tsx
7470
- function PanelFoot({ text, size = "sm", children }) {
7471
- return /* @__PURE__ */ (0, react.createElement)("footer", { className: PanelFoot_module_default.foot }, text === void 0 ? null : /* @__PURE__ */ (0, react.createElement)("span", { className: size === "md" ? PanelFoot_module_default.footTextMd : PanelFoot_module_default.footText }, text), children ?? null);
7530
+ //#region src/app/layouts/market/section-check.tsx
7531
+ function SectionCheck({ t, part, seat, latest, disabled, onCheck }) {
7532
+ const { busy } = useVisibleBusy(seat.checking, 500);
7533
+ return /* @__PURE__ */ (0, react.createElement)(MarketCheck, {
7534
+ t,
7535
+ checkedAt: seat.checkedAt,
7536
+ latestCheck: latest,
7537
+ checking: busy,
7538
+ failed: seat.failed,
7539
+ disabled,
7540
+ onCheck: () => onCheck?.(part)
7541
+ });
7472
7542
  }
7473
7543
  //#endregion
7474
- //#region src/app/layouts/rightbar/MarketView.tsx
7475
- var CONFIRM_UNINSTALL = [
7476
- "uninstall",
7477
- "remove-bundle",
7478
- "uninstall-plugin"
7479
- ];
7480
- var NO_ROWS = [];
7481
- var NO_UNITS$1 = /* @__PURE__ */ new Set();
7544
+ //#region src/app/layouts/rightbar/market-uninstall.tsx
7482
7545
  function ConfirmUninstall({ t, name, onConfirm, onCancel }) {
7483
7546
  const [acknowledged, setAcknowledged] = (0, react.useState)(false);
7484
7547
  return /* @__PURE__ */ (0, react.createElement)(_deepseek_ai_dsh_client_ui_primitives.RiskConfirmation, {
@@ -7495,7 +7558,46 @@ window.__ModuleLoader__.load({
7495
7558
  onConfirm
7496
7559
  });
7497
7560
  }
7498
- function MarketBody({ t, self, shown, pluginList, installedList, shared, pending, failed, notice, act, onConfirming, setDefault, boardBusy, check, onRecheck, rechecking }) {
7561
+ function UninstallConfirm({ t, confirming, row, onClose, act, rowById }) {
7562
+ return /* @__PURE__ */ (0, react.createElement)(ConfirmUninstall, {
7563
+ key: confirming ?? "",
7564
+ t,
7565
+ name: row === void 0 ? null : marketRowTitle(row, t),
7566
+ onCancel: onClose,
7567
+ onConfirm: () => {
7568
+ const id = confirming;
7569
+ onClose();
7570
+ if (id === null) return;
7571
+ const target = rowById.get(id);
7572
+ act(id, target?.plugin === true ? "uninstall-plugin" : target?.pkg === void 0 ? "uninstall" : "remove-bundle");
7573
+ }
7574
+ });
7575
+ }
7576
+ var PanelFoot_module_default = {
7577
+ foot: "_foot_1ud1j_1",
7578
+ footText: "_footText_1ud1j_13",
7579
+ footTextMd: "_footTextMd_1ud1j_18"
7580
+ };
7581
+ //#endregion
7582
+ //#region src/shared/components/PanelFoot.tsx
7583
+ function PanelFoot({ text, size = "sm", children }) {
7584
+ return /* @__PURE__ */ (0, react.createElement)("footer", { className: PanelFoot_module_default.foot }, text === void 0 ? null : /* @__PURE__ */ (0, react.createElement)("span", { className: size === "md" ? PanelFoot_module_default.footTextMd : PanelFoot_module_default.footText }, text), children ?? null);
7585
+ }
7586
+ //#endregion
7587
+ //#region src/app/layouts/rightbar/MarketView.tsx
7588
+ var CONFIRM_UNINSTALL = [
7589
+ "uninstall",
7590
+ "remove-bundle",
7591
+ "uninstall-plugin"
7592
+ ];
7593
+ var NO_CHECK = {
7594
+ checking: false,
7595
+ failed: false,
7596
+ checkedAt: null
7597
+ };
7598
+ var NO_ROWS = [];
7599
+ var NO_UNITS$1 = /* @__PURE__ */ new Set();
7600
+ function MarketBody({ t, self, shown, pluginList, installedList, shared, pending, failed, notice, act, onConfirming, setDefault, boardBusy, checks, onRecheck, rechecking }) {
7499
7601
  const failureOf = (id) => failed?.id === id ? failed : null;
7500
7602
  const foot = marketFootVisible(shown, installedList);
7501
7603
  const sections = marketSections(marketOrder([...shown, ...installedList], (row) => marketRowTitle(row, t)));
@@ -7522,7 +7624,7 @@ window.__ModuleLoader__.load({
7522
7624
  icon: marketSectionIcon("installed"),
7523
7625
  rows: installed?.rows ?? NO_ROWS,
7524
7626
  keepHead: true,
7525
- headAction: check,
7627
+ headAction: checks.modules,
7526
7628
  onDefault: setDefault,
7527
7629
  boardBusy,
7528
7630
  pending,
@@ -7551,7 +7653,7 @@ window.__ModuleLoader__.load({
7551
7653
  titleKey: "panels.market.sectionPlugins",
7552
7654
  icon: marketSectionIcon("plugins"),
7553
7655
  rows: pluginList,
7554
- headAction: check,
7656
+ headAction: checks.plugins,
7555
7657
  onDefault: setDefault,
7556
7658
  boardBusy,
7557
7659
  pending,
@@ -7607,7 +7709,27 @@ window.__ModuleLoader__.load({
7607
7709
  busyId
7608
7710
  };
7609
7711
  }
7610
- function MarketView({ t, titleOf, manifests, installable, capabilities, freshness, onChanged, onPending, updates, updatesCheckedAt = null, updatesFailed = false, installed, installedRead, workbench, selfUpdate, plugins, settling, installing = false, mock, defaults = [], changed = {} }) {
7712
+ function sectionChecksOf(input) {
7713
+ return {
7714
+ modules: /* @__PURE__ */ (0, react.createElement)(SectionCheck, {
7715
+ t: input.t,
7716
+ part: "modules",
7717
+ seat: input.modules ?? NO_CHECK,
7718
+ latest: input.latestModules,
7719
+ disabled: input.disabled,
7720
+ onCheck: input.onCheck
7721
+ }),
7722
+ plugins: /* @__PURE__ */ (0, react.createElement)(SectionCheck, {
7723
+ t: input.t,
7724
+ part: "plugins",
7725
+ seat: input.plugins ?? NO_CHECK,
7726
+ latest: input.latestPlugins,
7727
+ disabled: input.disabled,
7728
+ onCheck: input.onCheck
7729
+ })
7730
+ };
7731
+ }
7732
+ function MarketView({ t, titleOf, manifests, installable, capabilities, freshness, onChanged, onPending, updates, modulesCheck, pluginsCheck, onCheck, installed, installedRead, workbench, selfUpdate, plugins, settling, installing = false, mock, defaults = [], changed = {} }) {
7611
7733
  const { pending, setPending, confirming, setConfirming, failed, setFailed, notice, setNotice } = useMarketTransient({
7612
7734
  mock,
7613
7735
  onPending
@@ -7692,15 +7814,17 @@ window.__ModuleLoader__.load({
7692
7814
  setFailed(null);
7693
7815
  if (mock === void 0) onChanged({ force: true });
7694
7816
  };
7695
- const latestCheck = latestCheckSummary(mock?.installed ?? installed);
7696
- const check = /* @__PURE__ */ (0, react.createElement)(MarketCheck, {
7817
+ const checks = sectionChecksOf({
7697
7818
  t,
7698
- checkedAt: updatesCheckedAt,
7699
- latestCheck,
7700
- checking: checkingShown,
7701
- failed: updatesFailed,
7819
+ modules: modulesCheck,
7820
+ plugins: pluginsCheck,
7821
+ latestModules: latestCheckSummary(mock?.installed ?? installed),
7822
+ latestPlugins: {
7823
+ checked: checkedPluginCount(mock?.plugins ?? plugins),
7824
+ unknown: 0
7825
+ },
7702
7826
  disabled: pending !== null,
7703
- onCheck: () => onChanged({ force: true })
7827
+ onCheck: mock === void 0 ? onCheck : void 0
7704
7828
  });
7705
7829
  if (!settled || (settling?.size ?? 0) > 0 && shown.length === 0 && installedList.length === 0) return /* @__PURE__ */ (0, react.createElement)(MarketChecking, { t });
7706
7830
  if (nothing) return /* @__PURE__ */ (0, react.createElement)(MarketEmpty, { t });
@@ -7718,7 +7842,7 @@ window.__ModuleLoader__.load({
7718
7842
  onConfirming: setConfirming,
7719
7843
  setDefault,
7720
7844
  boardBusy,
7721
- check,
7845
+ checks,
7722
7846
  onRecheck: recheck,
7723
7847
  rechecking: checkingShown
7724
7848
  }), /* @__PURE__ */ (0, react.createElement)(UninstallConfirm, {
@@ -7730,21 +7854,6 @@ window.__ModuleLoader__.load({
7730
7854
  rowById
7731
7855
  }));
7732
7856
  }
7733
- function UninstallConfirm({ t, confirming, row, onClose, act, rowById }) {
7734
- return /* @__PURE__ */ (0, react.createElement)(ConfirmUninstall, {
7735
- key: confirming ?? "",
7736
- t,
7737
- name: row === void 0 ? null : marketRowTitle(row, t),
7738
- onCancel: onClose,
7739
- onConfirm: () => {
7740
- const id = confirming;
7741
- onClose();
7742
- if (id === null) return;
7743
- const target = rowById.get(id);
7744
- act(id, target?.plugin === true ? "uninstall-plugin" : target?.pkg === void 0 ? "uninstall" : "remove-bundle");
7745
- }
7746
- });
7747
- }
7748
7857
  //#endregion
7749
7858
  //#region ../../node_modules/.pnpm/dayjs@1.11.23/node_modules/dayjs/plugin/localizedFormat.js
7750
7859
  var require_localizedFormat = /* @__PURE__ */ __commonJSMin(((exports, module) => {
@@ -9164,7 +9273,7 @@ window.__ModuleLoader__.load({
9164
9273
  if (selectedSource === void 0 || selectedSource.kind !== "git") return null;
9165
9274
  if (kind !== "git-empty" && kind !== "git-missing-index") return null;
9166
9275
  return {
9167
- path: selectedSource.path ?? "market.json",
9276
+ path: selectedSource.path ?? "market",
9168
9277
  empty: kind === "git-empty"
9169
9278
  };
9170
9279
  }, [payload, selectedSource]);
@@ -9519,7 +9628,7 @@ window.__ModuleLoader__.load({
9519
9628
  }
9520
9629
  //#endregion
9521
9630
  //#region src/app/layouts/market/market-header.tsx
9522
- function MarketHeader({ t, idPrefix, tab, busy, onTab, onAdd }) {
9631
+ function MarketHeader({ t, idPrefix, tab, busy, checking, onTab, onReload, onAdd }) {
9523
9632
  const tabItems = (0, react.useMemo)(() => [{
9524
9633
  value: "installed",
9525
9634
  label: t("panels.market.tabInstalled"),
@@ -9531,14 +9640,19 @@ window.__ModuleLoader__.load({
9531
9640
  id: `${idPrefix}-tab-discover`,
9532
9641
  panelId: `${idPrefix}-panel-discover`
9533
9642
  }], [idPrefix, t]);
9534
- return /* @__PURE__ */ (0, react.createElement)(react.Fragment, null, /* @__PURE__ */ (0, react.createElement)("header", { className: MarketPage_module_default.marketPageHead }, /* @__PURE__ */ (0, react.createElement)("div", null, /* @__PURE__ */ (0, react.createElement)("h1", { className: MarketPage_module_default.marketPageTitle }, t("panels.tab.market")), /* @__PURE__ */ (0, react.createElement)("p", { className: MarketPage_module_default.marketPageIntro }, t("panels.market.lead"))), /* @__PURE__ */ (0, react.createElement)("div", { className: MarketPage_module_default.marketPageTools }, tab !== "installed" ? null : /* @__PURE__ */ (0, react.createElement)(_deepseek_ai_dsh_client_ui_primitives.Button, {
9643
+ return /* @__PURE__ */ (0, react.createElement)(react.Fragment, null, /* @__PURE__ */ (0, react.createElement)("header", { className: MarketPage_module_default.marketPageHead }, /* @__PURE__ */ (0, react.createElement)("div", null, /* @__PURE__ */ (0, react.createElement)("h1", { className: MarketPage_module_default.marketPageTitle }, t("panels.tab.market")), /* @__PURE__ */ (0, react.createElement)("p", { className: MarketPage_module_default.marketPageIntro }, t("panels.market.lead"))), /* @__PURE__ */ (0, react.createElement)("div", { className: MarketPage_module_default.marketPageTools }, tab !== "installed" ? null : /* @__PURE__ */ (0, react.createElement)(react.Fragment, null, /* @__PURE__ */ (0, react.createElement)(MarketRefreshButton, {
9644
+ label: t("panels.market.checkAll"),
9645
+ checking,
9646
+ disabled: busy,
9647
+ onCheck: onReload
9648
+ }), /* @__PURE__ */ (0, react.createElement)(_deepseek_ai_dsh_client_ui_primitives.Button, {
9535
9649
  variant: "primary",
9536
9650
  size: "sm",
9537
9651
  className: MarketPage_module_default.marketAddButton,
9538
9652
  icon: /* @__PURE__ */ (0, react.createElement)(_deepseek_ai_dsh_client_ui_primitives.IconPlusOutlineRegular, { size: 13 }),
9539
9653
  disabled: busy,
9540
9654
  onClick: onAdd
9541
- }, t("panels.market.add.open")))), /* @__PURE__ */ (0, react.createElement)("div", { className: MarketPage_module_default.marketTabs }, /* @__PURE__ */ (0, react.createElement)(_deepseek_ai_dsh_client_ui_primitives.SegmentedTabs, {
9655
+ }, t("panels.market.add.open"))))), /* @__PURE__ */ (0, react.createElement)("div", { className: MarketPage_module_default.marketTabs }, /* @__PURE__ */ (0, react.createElement)(_deepseek_ai_dsh_client_ui_primitives.SegmentedTabs, {
9542
9656
  className: MarketPage_module_default.marketTabList,
9543
9657
  items: tabItems,
9544
9658
  value: tab,
@@ -9955,21 +10069,35 @@ window.__ModuleLoader__.load({
9955
10069
  function readInstalledPlugins(force = false) {
9956
10070
  return apiGet(INSTALLED_PLUGINS_ROUTE, force ? { force: "1" } : void 0);
9957
10071
  }
10072
+ //#endregion
10073
+ //#region src/app/layouts/market/use-module-versions.ts
10074
+ var IDLE$1 = {
10075
+ checking: false,
10076
+ failed: false,
10077
+ checkedAt: null
10078
+ };
9958
10079
  var state = {
9959
10080
  modules: null,
9960
10081
  plugins: null,
9961
10082
  workbench: null,
9962
10083
  selfUpdate: null,
9963
10084
  read: false,
9964
- checking: false,
9965
- failed: false,
9966
- checkedAt: null
10085
+ allChecking: false,
10086
+ modulesCheck: IDLE$1,
10087
+ pluginsCheck: IDLE$1
9967
10088
  };
9968
10089
  var listeners$2 = /* @__PURE__ */ new Set();
9969
- var inFlight = null;
9970
- var readSeq = 0;
9971
- var newestForceSeq = -1;
10090
+ var inFlight = /* @__PURE__ */ new Map();
10091
+ var seq$1 = {
10092
+ modules: 0,
10093
+ plugins: 0
10094
+ };
10095
+ var newestForceSeq = {
10096
+ modules: -1,
10097
+ plugins: -1
10098
+ };
9972
10099
  var epoch = 0;
10100
+ var allSeq = 0;
9973
10101
  function bumpModuleVersionsEpoch() {
9974
10102
  epoch += 1;
9975
10103
  }
@@ -9994,48 +10122,87 @@ window.__ModuleLoader__.load({
9994
10122
  };
9995
10123
  });
9996
10124
  }
10125
+ function moduleVersionsCheckedAt(now) {
10126
+ const at = [now.modulesCheck.checkedAt, now.pluginsCheck.checkedAt].filter((one) => one !== null);
10127
+ return at.length === 0 ? null : Math.max(...at);
10128
+ }
10129
+ function moduleVersionsChecking(value) {
10130
+ return value.allChecking || value.modulesCheck.checking || value.pluginsCheck.checking;
10131
+ }
9997
10132
  function publish$1(next) {
9998
10133
  state = next;
9999
10134
  for (const listener of [...listeners$2]) listener();
10000
10135
  }
10001
- function runModuleVersionsRead(force = false, fresh = false) {
10002
- const at = epoch;
10003
- if (!fresh && inFlight !== null && inFlight.force === force && inFlight.epoch === at) return inFlight.promise;
10004
- const seq = readSeq += 1;
10005
- if (force) newestForceSeq = seq;
10006
- if (!state.checking) publish$1({
10007
- ...state,
10136
+ function partsOf(scope) {
10137
+ return scope === "all" ? ["modules", "plugins"] : [scope];
10138
+ }
10139
+ function checking(scope) {
10140
+ const mark = (seat) => seat.checking ? seat : {
10141
+ ...seat,
10008
10142
  checking: true
10009
- });
10010
- const promise = Promise.all([
10011
- readModuleVersions(force),
10012
- readInstalledPlugins(force),
10013
- readMarketInstalled()
10014
- ]).catch(() => null).then((responses) => {
10143
+ };
10144
+ return {
10145
+ ...state,
10146
+ allChecking: scope === "all" || state.allChecking,
10147
+ modulesCheck: scope === "plugins" ? state.modulesCheck : mark(state.modulesCheck),
10148
+ pluginsCheck: scope === "modules" ? state.pluginsCheck : mark(state.pluginsCheck)
10149
+ };
10150
+ }
10151
+ function landed(seat, ticket, latest, ok, at) {
10152
+ return {
10153
+ checking: ticket === latest ? false : seat.checking,
10154
+ failed: !ok,
10155
+ checkedAt: ok ? at : seat.checkedAt
10156
+ };
10157
+ }
10158
+ function readModulesOnce(force) {
10159
+ return Promise.all([readModuleVersions(force), readMarketInstalled()]).catch(() => null);
10160
+ }
10161
+ function readPluginsOnce(force) {
10162
+ return readInstalledPlugins(force).catch(() => null);
10163
+ }
10164
+ function runModuleVersionsRead(force = false, fresh = false, scope = "all") {
10165
+ const at = epoch;
10166
+ const running = inFlight.get(scope);
10167
+ if (!fresh && running !== void 0 && running.force === force && running.epoch === at) return running.promise;
10168
+ const allTicket = scope === "all" ? allSeq += 1 : allSeq;
10169
+ const tickets = /* @__PURE__ */ new Map();
10170
+ for (const part of partsOf(scope)) {
10171
+ const ticket = seq$1[part] += 1;
10172
+ tickets.set(part, ticket);
10173
+ if (force) newestForceSeq[part] = ticket;
10174
+ }
10175
+ publish$1(checking(scope));
10176
+ const modulesRead = tickets.has("modules") ? readModulesOnce(force) : null;
10177
+ const pluginsRead = tickets.has("plugins") ? readPluginsOnce(force) : null;
10178
+ const promise = Promise.all([modulesRead, pluginsRead]).then(([modules, plugins]) => {
10015
10179
  if (at !== epoch) return;
10016
- if (!force && seq < newestForceSeq) return;
10017
- const versions = responses?.[0];
10018
- const plugins = responses?.[1];
10019
- const market = responses?.[2];
10020
- const read = versions?.ok === true;
10180
+ const now = Date.now();
10181
+ const modulesTicket = tickets.get("modules");
10182
+ const pluginsTicket = tickets.get("plugins");
10183
+ const modulesLanded = modulesTicket !== void 0 && (force || modulesTicket >= newestForceSeq.modules);
10184
+ const pluginsLanded = pluginsTicket !== void 0 && (force || pluginsTicket >= newestForceSeq.plugins);
10185
+ const modulesOk = modulesLanded && modules !== null && modules[0].ok === true;
10186
+ const pluginsOk = pluginsLanded && plugins !== null && plugins.ok === true;
10021
10187
  publish$1({
10022
- modules: read ? withMarketUpdates(versions.modules, market?.ok === true ? market.modules : []) : state.modules,
10023
- plugins: plugins?.ok === true ? plugins.plugins : state.plugins,
10024
- workbench: read ? versions.workbench ?? null : state.workbench,
10025
- selfUpdate: read ? versions.selfUpdate ?? null : state.selfUpdate,
10188
+ ...state,
10189
+ modules: modulesOk ? withMarketUpdates(modules[0].modules, modules[1].ok === true ? modules[1].modules : []) : state.modules,
10190
+ workbench: modulesOk ? modules[0].workbench ?? null : state.workbench,
10191
+ selfUpdate: modulesOk ? modules[0].selfUpdate ?? null : state.selfUpdate,
10192
+ plugins: pluginsOk ? plugins.plugins : state.plugins,
10026
10193
  read: true,
10027
- checking: false,
10028
- failed: !read,
10029
- checkedAt: read ? Date.now() : state.checkedAt
10194
+ allChecking: scope === "all" && allTicket === allSeq ? false : state.allChecking,
10195
+ modulesCheck: modulesLanded && modulesTicket !== void 0 ? landed(state.modulesCheck, modulesTicket, seq$1.modules, modulesOk, now) : state.modulesCheck,
10196
+ pluginsCheck: pluginsLanded && pluginsTicket !== void 0 ? landed(state.pluginsCheck, pluginsTicket, seq$1.plugins, pluginsOk, now) : state.pluginsCheck
10030
10197
  });
10031
10198
  }).finally(() => {
10032
- if (inFlight?.promise === promise) inFlight = null;
10199
+ if (inFlight.get(scope)?.promise === promise) inFlight.delete(scope);
10033
10200
  });
10034
- inFlight = {
10201
+ inFlight.set(scope, {
10035
10202
  force,
10036
10203
  epoch: at,
10037
10204
  promise
10038
- };
10205
+ });
10039
10206
  return promise;
10040
10207
  }
10041
10208
  function useModuleVersions() {
@@ -10046,27 +10213,70 @@ window.__ModuleLoader__.load({
10046
10213
  const first = !mountedRef.current;
10047
10214
  mountedRef.current = true;
10048
10215
  if (first && !shouldProbeOnEnter({
10049
- checkedAt: state.checkedAt,
10216
+ checkedAt: moduleVersionsCheckedAt(state),
10050
10217
  now: Date.now(),
10051
10218
  staleMs: MARKET_STALE_MS
10052
10219
  })) return;
10053
10220
  runModuleVersionsRead(false);
10054
10221
  }, [factRev]);
10055
10222
  const reload = (0, react.useCallback)((options) => {
10056
- runModuleVersionsRead(options?.force === true, options?.fresh === true);
10223
+ runModuleVersionsRead(options?.force === true, options?.fresh === true, options?.scope ?? "all");
10057
10224
  }, []);
10058
10225
  return {
10059
- modules: value.modules,
10060
- plugins: value.plugins,
10061
- workbench: value.workbench,
10062
- selfUpdate: value.selfUpdate,
10063
- read: value.read,
10064
- checking: value.checking,
10065
- failed: value.failed,
10066
- checkedAt: value.checkedAt,
10226
+ ...value,
10227
+ checking: moduleVersionsChecking(value),
10067
10228
  reload
10068
10229
  };
10069
10230
  }
10231
+ //#endregion
10232
+ //#region src/app/layouts/market/use-market-reload.ts
10233
+ function useMarketReload(input) {
10234
+ const { checkedAt, forceProbe, reloadCapability, reloadVersions } = input;
10235
+ const reload = (0, react.useCallback)((options) => {
10236
+ if (options?.force === true) {
10237
+ bumpModuleVersionsEpoch();
10238
+ bumpCapabilityEpoch();
10239
+ forceProbe();
10240
+ reloadVersions({
10241
+ force: true,
10242
+ fresh: true
10243
+ });
10244
+ return;
10245
+ }
10246
+ reloadCapability();
10247
+ reloadVersions();
10248
+ }, [
10249
+ reloadCapability,
10250
+ reloadVersions,
10251
+ forceProbe
10252
+ ]);
10253
+ const checkPart = (0, react.useCallback)((part) => reloadVersions({
10254
+ force: true,
10255
+ fresh: true,
10256
+ scope: part
10257
+ }), [reloadVersions]);
10258
+ const enteredRef = (0, react.useRef)(false);
10259
+ (0, react.useEffect)(() => {
10260
+ if (enteredRef.current) return;
10261
+ enteredRef.current = true;
10262
+ reloadVersions();
10263
+ if (!shouldProbeOnEnter({
10264
+ checkedAt,
10265
+ now: Date.now(),
10266
+ staleMs: MARKET_STALE_MS
10267
+ })) return;
10268
+ markNextProbeSilent();
10269
+ forceProbe();
10270
+ }, [
10271
+ checkedAt,
10272
+ forceProbe,
10273
+ reloadVersions
10274
+ ]);
10275
+ return {
10276
+ reload,
10277
+ checkPart
10278
+ };
10279
+ }
10070
10280
  var AddModule_module_default = {
10071
10281
  wide: "_wide_1lv8f_1",
10072
10282
  dialog: "_dialog_1lv8f_8",
@@ -10723,7 +10933,7 @@ window.__ModuleLoader__.load({
10723
10933
  const manifests = useLiveManifests(units);
10724
10934
  const installable = useInstallableUnits(units);
10725
10935
  const { capabilities, checkedAt, checking, forceProbe, reload: reloadCapability } = useCapabilityMap(0);
10726
- const { modules, plugins, workbench, selfUpdate, checking: versionsChecking, failed: versionsFailed, checkedAt: versionsCheckedAt, read: installedRead, reload: reloadVersions } = useModuleVersions();
10936
+ const { modules, plugins, workbench, selfUpdate, checking: versionsChecking, allChecking: versionsAllChecking, modulesCheck, pluginsCheck, read: installedRead, reload: reloadVersions } = useModuleVersions();
10727
10937
  const machineBoard = useEnabledUnits(0, null);
10728
10938
  const install = useMarketInstallState();
10729
10939
  const [adding, setAdding] = (0, react.useState)(false);
@@ -10732,41 +10942,12 @@ window.__ModuleLoader__.load({
10732
10942
  const openAddModule = (0, react.useCallback)(() => setAdding(true), []);
10733
10943
  const updates = (0, react.useMemo)(() => marketUpdatesOf(modules), [modules]);
10734
10944
  const installed = modules === null ? void 0 : withClientRefusals(modules, units.refusals());
10735
- const reload = (0, react.useCallback)((options) => {
10736
- if (options?.force === true) {
10737
- bumpModuleVersionsEpoch();
10738
- bumpCapabilityEpoch();
10739
- forceProbe();
10740
- reloadVersions({
10741
- force: true,
10742
- fresh: true
10743
- });
10744
- return;
10745
- }
10746
- reloadCapability();
10747
- reloadVersions();
10748
- }, [
10749
- reloadCapability,
10750
- reloadVersions,
10751
- forceProbe
10752
- ]);
10753
- const enteredRef = (0, react.useRef)(false);
10754
- (0, react.useEffect)(() => {
10755
- if (enteredRef.current) return;
10756
- enteredRef.current = true;
10757
- reloadVersions();
10758
- if (!shouldProbeOnEnter({
10759
- checkedAt,
10760
- now: Date.now(),
10761
- staleMs: MARKET_STALE_MS
10762
- })) return;
10763
- markNextProbeSilent();
10764
- forceProbe();
10765
- }, [
10945
+ const { reload, checkPart } = useMarketReload({
10766
10946
  checkedAt,
10767
10947
  forceProbe,
10948
+ reloadCapability,
10768
10949
  reloadVersions
10769
- ]);
10950
+ });
10770
10951
  const settling = useSettlingModules((installed ?? []).map((module) => module.unit).join("|"), manifests.map((manifest) => manifest.id).join("|"), Object.keys(capabilities ?? {}).join("|"));
10771
10952
  const held = install.applied.size === 0 ? settling : /* @__PURE__ */ new Set([...settling, ...install.applied]);
10772
10953
  const freshness = {
@@ -10790,7 +10971,9 @@ window.__ModuleLoader__.load({
10790
10971
  idPrefix: MARKET_PANEL_ID,
10791
10972
  tab,
10792
10973
  busy,
10974
+ checking: checking || versionsAllChecking,
10793
10975
  onTab: setTab,
10976
+ onReload: () => reload({ force: true }),
10794
10977
  onAdd: openAddModule
10795
10978
  }), devMarket.strip, /* @__PURE__ */ (0, react.createElement)("div", {
10796
10979
  id: `${MARKET_PANEL_ID}-panel-installed`,
@@ -10808,8 +10991,9 @@ window.__ModuleLoader__.load({
10808
10991
  onChanged: reload,
10809
10992
  onPending: setActing,
10810
10993
  updates,
10811
- updatesCheckedAt: versionsCheckedAt,
10812
- updatesFailed: versionsFailed,
10994
+ modulesCheck,
10995
+ pluginsCheck,
10996
+ onCheck: checkPart,
10813
10997
  installed,
10814
10998
  installedRead: shownRead,
10815
10999
  workbench,
@@ -16241,7 +16425,7 @@ window.__ModuleLoader__.load({
16241
16425
  ...face.messages === void 0 ? {} : { messages: face.messages }
16242
16426
  }));
16243
16427
  }
16244
- var COMPONENT_CSS_MARKER = ".wb-activityBlock {\n display: flex;\n flex-direction: column;\n gap: var(--wb-len-6);\n padding-top: var(--wb-len-10);\n border-top: 0.5px solid var(--dsw-alias-border-l2);\n}\n\n.wb-activityBlock:first-child {\n padding-top: 0;\n border-top: none;\n}\n\n.wb-activityBlockHead {\n display: flex;\n align-items: center;\n justify-content: space-between;\n gap: var(--wb-len-8);\n}\n\n.wb-activityLine {\n display: flex;\n align-items: center;\n gap: var(--wb-len-6);\n margin: 0;\n font-size: var(--dsw-font-xxs-12-font-size);\n line-height: var(--wb-line-18);\n color: var(--dsw-alias-label-secondary);\n}\n\n.wb-activityLineText {\n flex: none;\n min-width: 0;\n font-size: var(--dsw-font-xxs-12-font-size);\n line-height: var(--wb-line-18);\n overflow-wrap: anywhere;\n white-space: pre-wrap;\n max-height: var(--wb-len-72);\n overflow-y: auto;\n}\n\n.wb-activityLineAt {\n flex: none;\n margin-left: auto;\n font-size: var(--wb-font-10);\n line-height: var(--wb-line-16);\n font-variant-numeric: tabular-nums;\n color: var(--dsw-alias-label-tertiary);\n}\n\n.wb-activityLine > .wb-activityLineAt,\n.wb-activityLine > .wb-activityLineActions {\n margin-left: auto;\n}\n\n.wb-activityLine > .wb-activityLineAt + .wb-activityLineActions {\n margin-left: 0;\n}\n\n.wb-activityLineActions {\n flex: none;\n display: inline-flex;\n align-items: center;\n gap: var(--wb-len-6);\n}\n\n.wb-activityActionFailed {\n color: var(--dsw-alias-state-error-primary);\n}\n.wb-note {\n margin: 0;\n font-size: var(--dsw-font-xxs-12-font-size);\n line-height: var(--wb-line-18);\n color: var(--dsw-alias-label-tertiary);\n}\n.wb-problem {\n margin: 0;\n font-size: var(--dsw-font-xxs-12-font-size);\n line-height: var(--wb-line-18);\n color: var(--dsw-alias-state-error-primary);\n overflow-wrap: anywhere;\n}\n.wb-approvalCommand {\n max-width: 100%;\n}\n.wb-approvalPlan {\n display: flex;\n flex-direction: column;\n gap: var(--wb-len-6);\n}\n.wb-approvalHint {\n margin: 0;\n font-size: var(--dsw-font-xxs-12-font-size);\n line-height: var(--wb-line-18);\n color: var(--dsw-alias-label-secondary);\n}\n.wb-approvalRows {\n display: grid;\n grid-template-columns: minmax(var(--wb-len-56), auto) minmax(0, 1fr);\n column-gap: var(--wb-len-8);\n row-gap: var(--wb-len-2);\n align-items: baseline;\n margin: 0;\n}\n.wb-approvalRow {\n display: contents;\n}\n.wb-approvalLabel {\n font-size: var(--dsw-font-xxs-12-font-size);\n line-height: var(--wb-line-18);\n color: var(--dsw-alias-label-tertiary);\n overflow-wrap: anywhere;\n}\n.wb-approvalValue {\n margin: 0;\n font-size: var(--dsw-font-xs-13-font-size);\n line-height: var(--wb-line-18);\n font-weight: 500;\n color: var(--dsw-alias-label-primary);\n overflow-wrap: anywhere;\n}\n.wb-approvalWarn {\n color: var(--dsw-alias-label-secondary);\n}\n.wb-cardHead {\n display: flex;\n align-items: center;\n gap: var(--wb-len-6);\n flex: none;\n padding: var(--wb-len-8) var(--wb-len-10) var(--wb-len-8) var(--wb-card-gutter);\n border-bottom: 0.5px solid var(--dsw-alias-border-l2);\n background: var(--dsw-alias-bg-layer-2);\n}\n\n.wb-cardTitle {\n margin: 0;\n font-size: var(--dsw-font-xxs-12-font-size);\n line-height: var(--wb-line-18);\n font-weight: 600;\n color: var(--dsw-alias-label-secondary);\n}\n\n.wb-cardMeta {\n font-size: var(--dsw-font-xxxs-11-font-size);\n line-height: var(--wb-line-16);\n color: var(--dsw-alias-label-tertiary);\n min-width: 0;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n\n.wb-cardMeta::before {\n content: '\\00b7';\n margin-right: var(--wb-len-6);\n color: var(--dsw-alias-label-tertiary);\n}\n\n.wb-cardOpen {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n box-sizing: border-box;\n margin-left: auto;\n flex: none;\n width: var(--wb-len-22);\n height: var(--wb-len-22);\n padding: var(--wb-len-4);\n border-radius: var(--wb-radius-6);\n color: var(--dsw-alias-label-tertiary);\n}\n\n.wb-cardOpen ~ .wb-cardRefresh {\n margin-left: 0;\n}\n\n.wb-cardOpen:hover {\n color: var(--dsw-alias-label-primary);\n}\n\n.wb-cardRefresh {\n margin-left: auto;\n flex: none;\n width: var(--wb-len-22);\n height: var(--wb-len-22);\n padding: var(--wb-len-4);\n border-radius: var(--wb-radius-6);\n color: var(--dsw-alias-label-tertiary);\n}\n\n.wb-cardRefresh:hover:not(:disabled) {\n color: var(--dsw-alias-label-primary);\n}\n\n.wb-cardRefresh:disabled {\n cursor: default;\n opacity: 1;\n}\n\n.wb-cardGear {\n flex: none;\n width: var(--wb-len-22);\n height: var(--wb-len-22);\n padding: var(--wb-len-3);\n border-radius: var(--wb-radius-6);\n color: var(--dsw-alias-label-tertiary);\n}\n\n.wb-cardGear:hover:not(:disabled) {\n color: var(--dsw-alias-label-primary);\n}\n.wb-card {\n border: 0.5px solid var(--dsw-alias-border-l3);\n border-radius: var(--dsw-radius-xl);\n background: var(--dsw-alias-bg-layer-1);\n overflow: hidden;\n display: flex;\n flex-direction: column;\n flex: none;\n}\n.wb-cardBody {\n display: flex;\n flex-direction: column;\n gap: var(--wb-len-12);\n padding: var(--wb-len-12) var(--wb-card-gutter);\n font-size: var(--dsw-font-xxs-12-font-size);\n}\n.wb-cardBleed {\n margin-inline: calc(-1 * var(--wb-card-gutter));\n}\n._anchor_yq4s2_1 {\n display: contents;\n}\n.wb-spinner {\n display: inline-flex;\n align-items: center;\n flex: none;\n}\n.wb-choiceMenu {\n display: flex;\n flex-direction: column;\n gap: var(--wb-len-2);\n background: transparent;\n}\n\n.wb-choiceMenu[data-variant='boxed'] {\n padding: var(--wb-len-4);\n border: 0.5px solid var(--dsw-alias-border-l3);\n border-radius: var(--dsw-radius-md);\n}\n\n.wb-choiceOption {\n position: relative;\n display: flex;\n align-items: center;\n gap: var(--wb-len-6);\n min-height: var(--wb-len-28);\n padding: var(--wb-len-4) var(--wb-len-8);\n border-radius: var(--dsw-radius-md);\n cursor: pointer;\n font-size: var(--dsw-font-xs-13-font-size);\n line-height: var(--wb-line-20);\n color: var(--dsw-alias-label-primary);\n}\n\n.wb-choiceOptionOn {\n background: var(--dsw-alias-interactive-bg-hover);\n}\n\n.wb-checkbox {\n position: absolute;\n width: var(--wb-len-16);\n height: var(--wb-len-16);\n margin: 0;\n opacity: 0;\n pointer-events: none;\n}\n\n.wb-checkboxBox {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n box-sizing: border-box;\n flex: none;\n width: var(--wb-len-16);\n height: var(--wb-len-16);\n border: 1px solid var(--dsw-alias-border-l3);\n border-radius: var(--dsw-radius-xs);\n corner-shape: round;\n color: var(--dsw-alias-label-primary-foreground);\n transition:\n background-color var(--wb-dur-0-12) ease, border-color var(--wb-dur-0-12) ease;\n}\n\n.wb-choiceOption:hover .wb-checkboxBox {\n border-color: var(--dsw-alias-label-tertiary);\n}\n\n.wb-checkbox:checked + .wb-checkboxBox {\n border-color: var(--dsw-alias-brand-primary);\n background: var(--dsw-alias-brand-primary);\n}\n\n.wb-checkbox:disabled + .wb-checkboxBox {\n cursor: default;\n}\n\n.wb-checkbox:focus-visible + .wb-checkboxBox {\n outline: var(--dsw-focus-ring-width, var(--wb-len-2)) solid\n var(--dsw-focus-ring-color, var(--dsw-alias-state-business-primary));\n outline-offset: 2px;\n}\n\n.wb-choiceOption:hover {\n background: var(--dsw-alias-interactive-bg-hover);\n}\n\n.wb-choiceOption:has(:disabled) {\n cursor: default;\n opacity: 0.5;\n}\n\n.wb-choiceOption:has(:disabled),\n.wb-choiceOption:has(:disabled):hover {\n background: transparent;\n}\n\n.wb-choiceLabel {\n flex: 1;\n min-width: 0;\n display: flex;\n flex-direction: column;\n overflow: hidden;\n}\n\n.wb-choiceLabelText {\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n\n.wb-choiceLabel:has(.wb-choiceDescription) .wb-choiceLabelText {\n overflow: visible;\n white-space: normal;\n overflow-wrap: anywhere;\n}\n\n.wb-choiceDescription {\n font-size: var(--dsw-font-xxs-12-font-size);\n line-height: var(--wb-line-18);\n color: var(--dsw-alias-label-tertiary);\n overflow-wrap: anywhere;\n}\n\n.wb-choiceLoading {\n display: flex;\n align-items: center;\n gap: var(--wb-len-6);\n min-height: var(--wb-len-28);\n padding: var(--wb-len-4) var(--wb-len-8);\n font-size: var(--dsw-font-xs-13-font-size);\n line-height: var(--wb-line-20);\n color: var(--dsw-alias-label-secondary);\n}\n\n.wb-choiceLoadingText {\n min-width: 0;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n\n.wb-choiceEmpty {\n display: flex;\n align-items: center;\n min-height: var(--wb-len-28);\n padding: var(--wb-len-4) var(--wb-len-8);\n font-size: var(--dsw-font-xs-13-font-size);\n line-height: var(--wb-line-20);\n color: var(--dsw-alias-label-tertiary);\n}\n\n.wb-radio {\n appearance: none;\n -webkit-appearance: none;\n flex: none;\n box-sizing: border-box;\n width: var(--wb-len-12);\n height: var(--wb-len-12);\n margin: 0;\n border: 1px solid var(--dsw-alias-border-l3);\n border-radius: 50%;\n corner-shape: round;\n background-color: transparent;\n cursor: pointer;\n transition:\n background-color var(--wb-dur-0-12) ease, border-color var(--wb-dur-0-12) ease;\n}\n\n.wb-radio:not(:checked):hover {\n border-color: var(--dsw-alias-label-tertiary);\n}\n\n.wb-radio:checked {\n border-color: var(--dsw-alias-brand-primary);\n background-image: radial-gradient(\n circle at center,\n var(--dsw-alias-brand-primary) 0 3px,\n transparent 3px\n );\n}\n\n.wb-radio:disabled {\n cursor: default;\n}\n\n.wb-radio:focus-visible {\n outline: var(--dsw-focus-ring-width, var(--wb-len-2)) solid var(--dsw-focus-ring-color, var(--dsw-alias-state-business-primary));\n outline-offset: 2px;\n}\n.wb-formActions {\n display: flex;\n flex-wrap: wrap;\n align-items: center;\n justify-content: flex-end;\n gap: var(--wb-len-8);\n}\n\n.wb-formActionDanger {\n color: var(--dsw-alias-state-error-primary);\n border-color: color-mix(in srgb, var(--dsw-alias-state-error-primary) 30%, transparent);\n --dsw-alias-interactive-bg-hover: color-mix(in srgb, var(--dsw-alias-state-error-primary) 8%, transparent);\n}\n.wb-rows {\n display: grid;\n grid-template-columns: minmax(72px, max-content) minmax(0, 1fr);\n column-gap: var(--wb-len-8);\n}\n.wb-rows > :not(.wb-row) {\n grid-column: 1 / -1;\n}\n.wb-row {\n display: grid;\n grid-column: 1 / -1;\n grid-template-columns: minmax(72px, max-content) minmax(0, 1fr);\n align-items: baseline;\n gap: var(--wb-len-8);\n padding: var(--wb-len-4) 0;\n}\n.wb-row + .wb-row {\n border-top: 0.5px solid var(--dsw-alias-border-l2);\n}\n.wb-rowKey {\n white-space: nowrap;\n font-size: var(--dsw-font-xxxs-11-font-size);\n line-height: var(--wb-line-16);\n color: var(--dsw-alias-label-tertiary);\n}\n.wb-rowValue {\n min-width: 0;\n font-size: var(--dsw-font-xxs-12-font-size);\n line-height: var(--wb-line-18);\n color: var(--dsw-alias-label-primary);\n overflow-wrap: anywhere;\n}\n\n.wb-rows > .wb-row {\n grid-template-columns: subgrid;\n}\n\n@supports not (grid-template-columns: subgrid) {\n .wb-rows > .wb-row {\n grid-template-columns: minmax(72px, max-content) minmax(0, 1fr);\n }\n}\n.wb-confirmBar {\n display: flex;\n flex-direction: column;\n gap: var(--wb-len-8);\n width: 100%;\n box-sizing: border-box;\n padding: var(--wb-len-10) var(--wb-len-12);\n border: 0.5px solid var(--dsw-alias-border-l3);\n border-radius: var(--dsw-radius-md);\n background: var(--dsw-alias-bg-layer-1);\n}\n.wb-confirmBarTitle {\n margin: 0;\n font-size: var(--dsw-font-xxs-12-font-size);\n font-weight: 600;\n line-height: var(--wb-line-18);\n color: var(--dsw-alias-label-primary);\n overflow-wrap: anywhere;\n}\n.wb-confirmBarHint {\n margin: 0;\n font-size: var(--dsw-font-xxxs-11-font-size);\n line-height: var(--wb-line-16);\n color: var(--dsw-alias-label-secondary);\n overflow-wrap: anywhere;\n}\n.wb-field {\n display: flex;\n flex-direction: column;\n gap: var(--wb-len-6);\n font-size: var(--dsw-font-xs-13-font-size);\n}\n\n.wb-fieldLabel {\n color: var(--dsw-alias-label-secondary);\n}\n\n.wb-fieldHint {\n font-size: var(--dsw-font-xxs-12-font-size);\n line-height: var(--wb-line-18);\n color: var(--dsw-alias-label-tertiary);\n}\n\n.wb-field:has(:disabled) .wb-fieldLabel {\n opacity: 0.4;\n}\n.wb-formRows {\n display: grid;\n grid-template-columns: minmax(72px, max-content) minmax(0, 1fr);\n column-gap: var(--wb-len-8);\n row-gap: var(--wb-len-12);\n}\n\n.wb-formRows > :not(.wb-formRow) {\n grid-column: 1 / -1;\n}\n\n.wb-formRow {\n display: grid;\n grid-column: 1 / -1;\n grid-template-columns: minmax(72px, max-content) minmax(0, 1fr);\n align-items: center;\n column-gap: var(--wb-len-8);\n row-gap: var(--wb-len-8);\n}\n\n.wb-formRow[data-layout='stacked'] {\n grid-template-columns: minmax(0, 1fr);\n align-items: stretch;\n gap: var(--wb-len-6);\n}\n\n.wb-formRows > .wb-formRow[data-layout='stacked'] {\n grid-template-columns: minmax(0, 1fr);\n}\n\n.wb-formLabel {\n justify-self: start;\n min-width: 0;\n font-size: var(--dsw-font-xs-13-font-size);\n color: var(--dsw-alias-label-secondary);\n overflow-wrap: anywhere;\n white-space: nowrap;\n}\n\n.wb-formRow[data-layout='stacked'] .wb-formLabel {\n white-space: normal;\n}\n\n.wb-formRow[data-layout='stacked'] .wb-formHint,\n.wb-formRow[data-layout='stacked'] .wb-formProblem {\n grid-column: 1 / -1;\n}\n\n.wb-formControl {\n display: flex;\n align-items: center;\n min-width: 0;\n}\n\n.wb-formControl\n > :where(\n .wb-selectAnchor,\n .wb-choiceMenu,\n input:not(\n [type='checkbox'],\n [type='radio'],\n [type='button'],\n [type='submit'],\n [type='reset'],\n [type='image'],\n [type='color'],\n [type='range']\n ),\n select,\n textarea\n ) {\n box-sizing: border-box;\n width: 100%;\n min-width: 0;\n}\n\n.wb-formHint {\n grid-column: 2;\n font-size: var(--dsw-font-xxs-12-font-size);\n line-height: var(--wb-line-18);\n color: var(--dsw-alias-label-tertiary);\n}\n\n.wb-formProblem {\n grid-column: 2;\n font-size: var(--dsw-font-xxs-12-font-size);\n line-height: var(--wb-line-18);\n color: var(--dsw-alias-state-error-primary);\n}\n\n.wb-formRow:has(.wb-formProblem) .wb-formLabel {\n color: var(--dsw-alias-state-error-primary);\n}\n\n.wb-formRow:has(:disabled) .wb-formLabel {\n opacity: 0.4;\n}\n\n.wb-formRows > .wb-formRow {\n grid-template-columns: subgrid;\n}\n\n@supports not (grid-template-columns: subgrid) {\n .wb-formRows > .wb-formRow {\n grid-template-columns: minmax(72px, max-content) minmax(0, 1fr);\n }\n}\n.wb-form {\n display: flex;\n flex-direction: column;\n gap: var(--wb-len-12);\n width: 100%;\n}\n:where(.wb-link) {\n margin-left: var(--wb-len-2);\n display: inline-flex;\n align-items: center;\n gap: var(--wb-len-2);\n font: inherit;\n font-size: var(--dsw-font-xxs-12-font-size);\n line-height: var(--wb-line-18);\n color: var(--dsw-alias-label-primary);\n text-decoration: none;\n white-space: nowrap;\n vertical-align: baseline;\n}\n\n:where(.wb-link:hover) {\n text-decoration: underline;\n}\n\n:where(.wb-link:focus-visible) {\n outline: var(--dsw-focus-ring-width) solid var(--dsw-focus-ring-color, var(--dsw-alias-state-business-primary));\n outline-offset: -2px;\n}\n.wb-longTask {\n padding-top: var(--wb-len-12);\n border-top: 0.5px solid var(--dsw-alias-border-l2);\n display: flex;\n flex-direction: column;\n gap: var(--wb-len-2);\n}\n\n.wb-longTaskHead {\n display: flex;\n align-items: center;\n gap: var(--wb-len-6);\n margin: 0;\n}\n\n.wb-longTaskLink {\n flex: none;\n}\n\n.wb-longTaskHeadline {\n margin: 0;\n font-size: var(--dsw-font-xxs-12-font-size);\n line-height: var(--wb-line-18);\n white-space: pre-wrap;\n overflow-wrap: anywhere;\n color: var(--dsw-alias-label-secondary);\n}\n\n.wb-longTaskProblem {\n margin: 0;\n font-size: var(--dsw-font-xxxs-11-font-size);\n line-height: var(--wb-line-16);\n color: var(--dsw-alias-state-error-primary);\n overflow-wrap: anywhere;\n}\n\n.wb-longTaskDump {\n margin: var(--wb-len-2) 0 0;\n font-size: var(--dsw-font-xxxs-11-font-size);\n color: var(--dsw-alias-label-tertiary);\n}\n\n.wb-longTaskDump pre {\n margin: var(--wb-len-4) 0 0;\n max-height: var(--wb-len-220);\n overflow: auto;\n}\n\n.wb-longTaskStop {\n display: inline-flex;\n flex: none;\n align-items: center;\n align-self: center;\n justify-content: center;\n width: var(--wb-len-20);\n height: var(--wb-len-20);\n padding: 0;\n margin-left: auto;\n border: 0.5px solid var(--dsw-alias-border-l2);\n border-radius: var(--dsw-radius-sm);\n background: var(--dsw-specific-menu);\n color: var(--dsw-alias-label-secondary);\n cursor: pointer;\n}\n\n.wb-longTaskStop:hover:not(:disabled),\n.wb-longTaskStop:focus-visible {\n border-color: color-mix(in srgb, var(--dsw-alias-state-error-primary) 45%, transparent);\n color: var(--dsw-alias-state-error-primary);\n}\n\n.wb-longTaskStop:disabled {\n cursor: default;\n}\n\n.wb-longTaskStopArmed,\n.wb-longTaskStopArmed:hover:not(:disabled),\n.wb-longTaskStopArmed:focus-visible {\n gap: var(--wb-len-4);\n width: auto;\n padding: 0 var(--wb-len-7);\n border-color: color-mix(in srgb, var(--dsw-alias-state-error-primary) 45%, transparent);\n background: color-mix(in srgb, var(--dsw-alias-state-error-primary) 12%, transparent);\n color: var(--dsw-alias-state-error-primary);\n}\n\n.wb-longTaskStopLabel {\n white-space: nowrap;\n font-size: var(--dsw-font-xxxs-11-font-size);\n line-height: var(--wb-line-18);\n}\n\n.wb-longTaskStopWhy {\n margin: 0;\n font-size: var(--dsw-font-xxxs-11-font-size);\n line-height: var(--wb-line-16);\n color: var(--dsw-alias-state-error-primary);\n overflow-wrap: anywhere;\n}\n.wb-centered.wb-centeredCompact {\n flex: none;\n min-height: 0;\n gap: var(--wb-len-8);\n padding: var(--wb-len-20) var(--wb-len-16);\n}\n\n.wb-centered.wb-centeredCompact .wb-centeredHero {\n margin-bottom: var(--wb-len-4);\n}\n\n.wb-skeleton {\n display: flex;\n flex-direction: column;\n}\n\n.wb-skeletonRow {\n display: flex;\n flex-direction: column;\n gap: var(--wb-len-8);\n padding: var(--wb-len-8);\n border-radius: var(--dsw-radius-md);\n}\n\n.wb-skeletonRow + .wb-skeletonRow::before {\n content: '';\n align-self: stretch;\n height: var(--wb-len-0-5);\n margin: 0 var(--wb-len-8) var(--wb-len-neg-0-5);\n background: var(--dsw-alias-border-l2);\n}\n\n.wb-skeletonBar {\n display: block;\n height: var(--wb-len-13);\n border-radius: var(--dsw-radius-xs);\n background: var(--dsw-alias-bg-skeleton);\n animation: wb-skeleton-pulse var(--wb-dur-1-4) var(--ds-ease-in-out) infinite;\n}\n\n.wb-skeletonBarTitle {\n width: 62%;\n}\n\n.wb-skeletonBarMeta {\n width: 32%;\n height: var(--wb-len-10);\n}\n\n.wb-skeletonRow:nth-child(2n) .wb-skeletonBarTitle {\n width: 74%;\n}\n\n.wb-skeletonRow:nth-child(3n) .wb-skeletonBarTitle {\n width: 52%;\n}\n\n@keyframes wb-skeleton-pulse {\n 50% {\n opacity: 0.45;\n }\n}\n\n.wb-centered {\n box-sizing: border-box;\n display: flex;\n flex-direction: column;\n justify-content: center;\n align-items: center;\n gap: var(--wb-len-14);\n flex: 1;\n min-height: var(--wb-len-240);\n padding: 0 var(--wb-len-24) var(--wb-len-24);\n text-align: center;\n}\n\n.wb-centeredHero {\n display: flex;\n margin-bottom: var(--wb-len-16);\n color: var(--dsw-alias-label-dimmed);\n}\n\n.wb-centeredTitle {\n font-size: var(--dsw-font-s-14-font-size);\n line-height: var(--wb-line-22);\n color: var(--dsw-alias-label-primary);\n}\n\n.wb-centeredHint {\n max-width: var(--wb-len-300);\n font-size: var(--dsw-font-xxs-12-font-size);\n line-height: var(--wb-line-18);\n color: var(--dsw-alias-label-tertiary);\n}\n\n.wb-centeredDetail {\n max-width: var(--wb-len-320);\n font-family: var(--ds-font-family-code, monospace);\n font-size: var(--dsw-font-xxxs-11-font-size);\n line-height: var(--wb-line-16);\n color: var(--dsw-alias-label-dimmed);\n word-break: break-all;\n}\n\n.wb-centeredAction {\n display: flex;\n justify-content: center;\n gap: var(--wb-len-8);\n margin-top: var(--wb-len-2);\n}\n@media (prefers-reduced-motion: reduce) {\n .wb-skeletonBar {\n animation: none;\n }}\n.wb-textField {\n box-sizing: border-box;\n border: 0.5px solid var(--dsw-alias-border-l4);\n border-radius: var(--dsw-radius-md);\n background: var(--dsw-alias-bg-layer-3);\n font: var(--dsw-font-xs-13);\n color: var(--dsw-alias-label-primary);\n outline: none;\n}\n\n.wb-textField:focus {\n border-color: var(--dsw-alias-state-business-primary);\n box-shadow: inset 0 0 0 0.5px var(--dsw-alias-state-business-primary);\n}\n\n.wb-textField:disabled {\n cursor: not-allowed;\n opacity: 0.4;\n}\n\n.wb-textField[aria-invalid='true'] {\n border-color: var(--dsw-alias-state-error-primary);\n}\n\n.wb-textField[aria-invalid='true']:focus {\n box-shadow: inset 0 0 0 0.5px var(--dsw-alias-state-error-primary);\n}\n\n:where(.wb-textField) {\n min-height: var(--wb-len-28);\n padding: var(--wb-len-4) var(--wb-len-10);\n}\n:where(.wb-selectTrigger) {\n box-sizing: border-box;\n display: flex;\n align-items: center;\n gap: var(--wb-len-8);\n width: 100%;\n min-height: var(--wb-len-28);\n padding: var(--wb-len-4) var(--wb-len-10);\n border: 0.5px solid var(--dsw-alias-border-l4);\n border-radius: var(--dsw-radius-md);\n background: var(--dsw-alias-bg-layer-3);\n font: var(--dsw-font-xs-13);\n color: var(--dsw-alias-label-primary);\n text-align: left;\n cursor: pointer;\n}\n\n.wb-selectTrigger:focus-visible {\n outline: none;\n border-color: var(--dsw-alias-state-business-primary);\n box-shadow: inset 0 0 0 0.5px var(--dsw-alias-state-business-primary);\n}\n\n.wb-selectTrigger[aria-invalid='true'] {\n border-color: var(--dsw-alias-state-error-primary);\n}\n\n.wb-selectTrigger[aria-invalid='true']:focus-visible {\n box-shadow: inset 0 0 0 0.5px var(--dsw-alias-state-error-primary);\n}\n\n.wb-selectTrigger:disabled {\n cursor: not-allowed;\n opacity: 0.4;\n}\n\n.wb-selectLoading:disabled {\n cursor: default;\n opacity: 1;\n}\n\n.wb-selectGhost {\n gap: var(--wb-gap-xs);\n min-height: 0;\n height: var(--wb-len-34);\n padding: 0 var(--wb-len-8);\n border: none;\n background: transparent;\n font-size: var(--wb-font-row);\n}\n\n.wb-selectGhost:hover:not(:disabled) {\n background: var(--dsw-alias-interactive-bg-hover);\n}\n\n.wb-selectGhost:focus-visible {\n outline: var(--dsw-focus-ring-width) solid\n var(--dsw-focus-ring-color, var(--dsw-alias-state-business-primary));\n outline-offset: -2px;\n border-color: transparent;\n box-shadow: none;\n}\n\n.wb-selectIconOnly {\n width: var(--wb-len-36);\n height: var(--wb-len-36);\n min-height: 0;\n gap: 0;\n padding: 0;\n justify-content: center;\n}\n\n.wb-selectReveal {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n}\n\n.wb-selectIconOnly .wb-selectIcon {\n width: 100%;\n height: 100%;\n}\n\n.wb-selectAnchor {\n display: block;\n width: 100%;\n}\n\n.wb-selectIcon {\n flex: none;\n display: inline-flex;\n align-items: center;\n justify-content: center;\n width: var(--wb-len-16);\n height: var(--wb-len-20);\n color: var(--dsw-alias-label-tertiary);\n}\n\n.wb-selectValue {\n flex: 1;\n min-width: 0;\n display: flex;\n align-items: baseline;\n gap: var(--wb-len-6);\n line-height: var(--wb-line-20);\n overflow: hidden;\n}\n\n.wb-selectPlaceholder {\n color: var(--dsw-alias-label-tertiary);\n}\n\n.wb-selectChevron {\n flex: none;\n display: inline-flex;\n color: var(--dsw-alias-label-caption);\n}\n\n.wb-selectMenu {\n min-width: var(--wb-len-240);\n max-width: var(--wb-len-360);\n max-height: min(var(--wb-len-320), calc(100vh - var(--wb-len-24)));\n}\n\n:where(.wb-selectSearch) {\n box-sizing: border-box;\n display: flex;\n align-items: center;\n gap: var(--wb-len-8);\n width: 100%;\n min-height: var(--wb-len-28);\n padding: var(--wb-len-4) var(--wb-len-10);\n border: 0.5px solid var(--dsw-alias-border-l4);\n border-radius: var(--dsw-radius-md);\n background: var(--dsw-alias-bg-layer-3);\n}\n\n.wb-selectSearch:focus-within {\n border-color: var(--dsw-alias-state-business-primary);\n box-shadow: inset 0 0 0 0.5px var(--dsw-alias-state-business-primary);\n}\n\n.wb-selectSearch.wb-selectGhost {\n gap: var(--wb-gap-xs);\n min-height: 0;\n height: var(--wb-len-34);\n padding: 0 var(--wb-len-8);\n border: 0.5px solid var(--dsw-alias-border-l3);\n background: var(--dsw-alias-bg-layer-2);\n}\n\n.wb-selectSearch.wb-selectGhost:focus-within {\n border-color: var(--dsw-alias-state-business-primary);\n box-shadow: none;\n}\n\n.wb-selectSearchIcon {\n flex: none;\n display: inline-flex;\n color: var(--dsw-alias-label-tertiary);\n}\n\n.wb-textField.wb-selectSearchInput {\n flex: 1;\n min-width: 0;\n min-height: 0;\n padding: 0;\n border: none;\n background: transparent;\n}\n\n.wb-textField.wb-selectSearchInput:focus {\n box-shadow: none;\n}\n\n.wb-selectFallback {\n width: 100%;\n}\n\n.wb-selectHint {\n font-size: var(--dsw-font-xxs-12-font-size);\n line-height: var(--wb-line-18);\n color: var(--dsw-alias-label-tertiary);\n}\nsection.wb-settings {\n display: flex;\n flex-direction: column;\n gap: var(--wb-len-12);\n padding: var(--wb-len-12) var(--wb-len-16);\n border: 0;\n border-radius: var(--dsw-radius-md);\n background: var(--dsw-alias-settings-card-fill);\n}\n.wb-settingsHead {\n display: flex;\n align-items: center;\n gap: var(--wb-len-8);\n}\n.wb-settings .wb-settingsTitle {\n flex: 1 1 auto;\n min-width: 0;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n font-size: var(--dsw-font-s-strong-14-font-size);\n line-height: var(--wb-line-24);\n font-weight: 500;\n color: var(--dsw-alias-label-primary);\n}\n.wb-stack {\n display: flex;\n flex-direction: column;\n gap: var(--wb-len-10);\n min-height: 0;\n}\n.wb-stateBlock {\n display: flex;\n flex-direction: column;\n gap: var(--wb-len-6);\n}\n.wb-stateBlockTitle {\n margin: 0;\n display: flex;\n align-items: center;\n gap: var(--wb-len-6);\n font-size: var(--dsw-font-xxs-12-font-size);\n line-height: var(--wb-line-18);\n color: var(--dsw-alias-label-primary);\n}\n.wb-stateBlockHint {\n margin: 0;\n font-size: var(--dsw-font-xxxs-11-font-size);\n line-height: var(--wb-line-16);\n color: var(--dsw-alias-label-tertiary);\n}\n.wb-stateBlockActions {\n display: flex;\n align-items: center;\n gap: var(--wb-len-8);\n margin-top: var(--wb-len-2);\n}\n.wb-stateBlockResolving {\n display: flex;\n align-items: center;\n gap: var(--wb-len-8);\n margin: 0;\n font-size: var(--dsw-font-xxs-12-font-size);\n line-height: var(--wb-line-18);\n color: var(--dsw-alias-label-secondary);\n}\n._marketList_485ym_1 {\n list-style: none;\n margin: 0;\n padding: var(--wb-len-6);\n display: flex;\n flex-direction: column;\n gap: var(--wb-len-2);\n}\n\n._marketRow_485ym_10 {\n display: grid;\n grid-template-columns: auto minmax(0, 1fr) auto;\n align-items: center;\n column-gap: var(--wb-len-14);\n row-gap: var(--wb-len-4);\n padding: var(--wb-len-8);\n border-radius: var(--dsw-radius-lg);\n}\n\n._marketIcon_485ym_20 {\n flex: none;\n display: inline-flex;\n align-items: center;\n justify-content: center;\n width: var(--wb-len-48);\n height: var(--wb-len-48);\n border: 0.5px solid var(--dsw-alias-border-l3);\n border-radius: var(--dsw-radius-lg);\n color: var(--dsw-alias-label-secondary);\n}\n\n._marketMain_485ym_32 {\n display: flex;\n flex-direction: column;\n gap: var(--wb-len-4);\n min-width: 0;\n}\n\n._marketName_485ym_39 {\n min-width: 0;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n font: var(--dsw-font-base-strong-16);\n color: var(--dsw-alias-label-primary);\n}\n\n._marketStatus_485ym_48 {\n display: inline-flex;\n flex-wrap: wrap;\n align-items: center;\n gap: var(--wb-len-6);\n min-width: 0;\n font: var(--dsw-font-s-14);\n color: var(--dsw-alias-label-secondary);\n}\n\n._marketStateText_485ym_58 {\n color: var(--dsw-alias-label-secondary);\n}\n\n._marketSep_485ym_62 {\n color: var(--dsw-alias-label-caption);\n}\n\n._marketReason_485ym_66 {\n font-size: var(--dsw-font-xxs-12-font-size);\n line-height: var(--wb-line-18);\n color: var(--dsw-alias-label-tertiary);\n}\n\n._marketName_485ym_39 ._marketVersion_485ym_72 {\n margin-left: var(--wb-len-6);\n font-size: var(--dsw-font-xxs-12-font-size);\n font-weight: 400;\n line-height: var(--wb-line-18);\n}\n\n._marketVersion_485ym_72 {\n font-variant-numeric: tabular-nums;\n color: var(--dsw-alias-label-caption);\n}\n\n._marketVersion_485ym_72::before {\n content: '';\n display: inline-block;\n width: var(--wb-len-1);\n height: var(--wb-len-10);\n margin: 0 var(--wb-len-8) 0 var(--wb-len-2);\n vertical-align: -1px;\n background: var(--dsw-alias-border-l2);\n}\n\n._marketLocalTag_485ym_94 {\n margin-left: var(--wb-len-8);\n padding: 0 var(--wb-len-6);\n border: var(--wb-len-1) solid var(--dsw-alias-border-l2);\n border-radius: var(--dsw-radius-sm);\n font-size: var(--dsw-font-xxs-12-font-size);\n font-weight: 400;\n line-height: var(--wb-line-18);\n color: var(--dsw-alias-label-caption);\n}\n\n._marketEnd_485ym_105 {\n flex: none;\n display: flex;\n align-items: center;\n gap: var(--wb-len-10);\n}\n\n._marketSwitchSeat_485ym_112 {\n display: inline-flex;\n align-items: center;\n gap: var(--wb-len-10);\n}\n\n._marketSwitchSeat_485ym_112::before {\n content: '';\n width: 0;\n height: var(--wb-len-14);\n border-left: 0.5px solid var(--dsw-alias-border-l3);\n}\n\n._marketActions_485ym_125 {\n flex: none;\n display: flex;\n gap: var(--wb-len-6);\n}\n\n._marketUpdateAction_485ym_131 {\n color: var(--dsw-alias-state-warn-primary);\n border-color: color-mix(in srgb, var(--dsw-alias-state-warn-primary) 30%, transparent);\n --dsw-alias-interactive-bg-hover: color-mix(in srgb, var(--dsw-alias-state-warn-primary) 8%, transparent);\n}\n\n._marketSelfDivider_485ym_137 {\n height: 0;\n margin-top: calc(0px - var(--wb-len-16));\n border-top: 0.5px solid var(--dsw-alias-border-l3);\n}\n\n._marketSection_485ym_143 {\n display: flex;\n flex-direction: column;\n gap: var(--wb-len-8);\n min-width: 0;\n}\n\n._marketSectionHead_485ym_150 {\n display: flex;\n align-items: baseline;\n gap: var(--wb-len-8);\n}\n\n._marketSectionIcon_485ym_156 {\n display: inline-flex;\n align-items: center;\n align-self: center;\n color: var(--dsw-alias-label-caption);\n}\n\n._marketSectionTitle_485ym_163 {\n margin: 0;\n font: var(--dsw-font-base-strong-16);\n color: var(--dsw-alias-label-primary);\n}\n\n._marketSectionCount_485ym_169 {\n font: var(--dsw-font-s-14);\n font-variant-numeric: tabular-nums;\n color: var(--dsw-alias-label-caption);\n}\n\n._marketSectionAction_485ym_175 {\n display: inline-flex;\n align-items: center;\n align-self: center;\n margin-left: auto;\n min-width: 0;\n}\n\n._marketSectionQuiet_485ym_183 ._marketSectionTitle_485ym_163 {\n color: var(--dsw-alias-label-secondary);\n}\n\n._marketSectionQuiet_485ym_183 ._marketName_485ym_39 {\n color: var(--dsw-alias-label-secondary);\n}\n\n._marketSectionQuiet_485ym_183 ._marketIcon_485ym_20 {\n color: var(--dsw-alias-label-tertiary);\n}\n\n\n._marketProgress_485ym_196 {\n flex: none;\n display: inline-flex;\n align-items: center;\n gap: var(--wb-len-8);\n min-height: var(--wb-len-32);\n font: var(--dsw-font-s-14);\n color: var(--dsw-alias-label-secondary);\n}\n\n._marketNote_485ym_206 {\n grid-column: 2 / -1;\n font: var(--dsw-font-s-14);\n color: var(--dsw-alias-state-warn-primary);\n overflow-wrap: anywhere;\n}\n\n._marketFailure_485ym_213 {\n grid-column: 2 / -1;\n font: var(--dsw-font-s-14);\n color: var(--dsw-alias-state-error-primary);\n overflow-wrap: anywhere;\n}\n\n._marketFailureSeat_485ym_220 {\n grid-column: 2 / -1;\n min-width: 0;\n}\n\n._marketEmpty_485ym_225 {\n padding: var(--wb-len-18) var(--wb-len-16);\n text-align: center;\n}\n\n._marketPage_485ym_230 {\n box-sizing: border-box;\n height: 100%;\n display: flex;\n flex-direction: column;\n align-items: center;\n gap: var(--wb-len-32);\n padding: 0 clamp(var(--wb-len-24), 4vw, var(--wb-len-48)) var(--wb-len-48);\n overflow-x: hidden;\n overflow-y: auto;\n color: var(--dsw-alias-label-primary);\n}\n\n._marketPage_485ym_230 > * {\n width: 100%;\n max-width: var(--wb-len-960);\n}\n\n._marketPageHead_485ym_248 {\n box-sizing: border-box;\n display: flex;\n align-items: flex-start;\n gap: var(--wb-len-16);\n padding-top: var(--wb-len-28);\n}\n\n._marketPageTitle_485ym_256 {\n margin: 0;\n font: var(--dsw-font-l-20);\n}\n\n._marketPageIntro_485ym_261 {\n margin: var(--wb-len-4) 0 0;\n font: var(--dsw-font-xs-13);\n color: var(--dsw-alias-label-secondary);\n}\n\n._marketPageTools_485ym_267 {\n flex: none;\n align-self: center;\n margin-left: auto;\n display: flex;\n align-items: center;\n gap: var(--wb-len-16);\n}\n\n._marketPanel_485ym_276 {\n display: flex;\n flex-direction: column;\n gap: var(--wb-len-32);\n}\n\n._marketPanel_485ym_276[hidden] {\n display: none;\n}\n\n._marketTabs_485ym_286 {\n display: flex;\n margin: calc(0px - var(--wb-len-16)) 0;\n}\n\n._marketTabList_485ym_291 {\n width: fit-content;\n min-width: var(--wb-len-240);\n}\n\n._marketAddButton_485ym_296 {\n height: var(--wb-len-32);\n padding: 0 var(--wb-len-12);\n font-size: var(--dsw-font-xs-13-font-size);\n line-height: var(--wb-line-20);\n border-radius: var(--dsw-radius-md);\n}\n\n._marketEmpty_485ym_225 {\n display: flex;\n flex-direction: column;\n align-items: center;\n gap: var(--wb-len-8);\n padding: var(--wb-len-64) var(--wb-len-16);\n text-align: center;\n}\n\n._marketEmptyTitle_485ym_313 {\n font: var(--dsw-font-base-strong-16);\n color: var(--dsw-alias-label-primary);\n}\n\n._discoverPage_485ym_318 {\n box-sizing: border-box;\n display: flex;\n flex-direction: column;\n gap: var(--wb-len-16);\n}\n\n._discoverBar_485ym_325 {\n display: flex;\n flex-direction: column;\n gap: var(--wb-len-8);\n container-type: inline-size;\n}\n\n._discoverTools_485ym_332 {\n display: flex;\n align-items: center;\n gap: var(--wb-len-8);\n}\n\n._discoverMarket_485ym_338 {\n flex: 0 1 auto;\n min-width: 0;\n}\n\n._discoverMarketButton_485ym_343 {\n min-width: 0;\n max-width: var(--wb-len-240);\n margin-left: calc(0px - var(--wb-len-8));\n font-weight: 500;\n}\n\n._discoverMarketName_485ym_350 {\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n\n._discoverLabels_485ym_356 {\n flex: none;\n white-space: nowrap;\n}\n\n._discoverSort_485ym_361 {\n flex: none;\n white-space: nowrap;\n}\n\n._discoverRefresh_485ym_366 {\n flex: none;\n}\n\n._discoverSearch_485ym_370 {\n position: relative;\n box-sizing: border-box;\n display: flex;\n flex: 1 1 var(--wb-len-120);\n min-width: var(--wb-len-120);\n}\n\n._discoverSearchField_485ym_378 {\n flex: 1 1 auto;\n min-width: 0;\n}\n\n._discoverSearchFieldFilled_485ym_383 input {\n padding-inline-end: var(--wb-len-20);\n}\n\n._discoverSearchField_485ym_378 input::-webkit-search-cancel-button {\n appearance: none;\n -webkit-appearance: none;\n}\n\n._discoverSearch_485ym_370 ._discoverSearchClear_485ym_392 {\n position: absolute;\n top: 50%;\n inset-inline-end: var(--wb-len-4);\n width: var(--wb-len-24);\n height: var(--wb-len-24);\n padding: 0;\n border-radius: var(--dsw-radius-sm);\n color: var(--dsw-alias-label-tertiary);\n transform: translateY(-50%);\n}\n\n._discoverSearchClear_485ym_392:hover:not(:disabled) {\n color: var(--dsw-alias-label-primary);\n}\n\n@container (max-width: 560px) {\n ._discoverTools_485ym_332 {\n display: grid;\n grid-template-columns: minmax(0, auto) minmax(var(--wb-len-120), 1fr) auto;\n grid-template-areas:\n 'market search refresh'\n 'labels sort sort';\n }\n\n ._discoverMarket_485ym_338 {\n grid-area: market;\n }\n\n ._discoverMarketButton_485ym_343 {\n margin-left: 0;\n }\n\n ._discoverLabels_485ym_356 {\n grid-area: labels;\n }\n\n ._discoverSearch_485ym_370 {\n grid-area: search;\n }\n\n ._discoverSort_485ym_361 {\n grid-area: sort;\n justify-self: end;\n }\n\n ._discoverRefresh_485ym_366 {\n grid-area: refresh;\n }\n}\n\n._discoverChips_485ym_443 {\n display: flex;\n flex-wrap: wrap;\n align-items: center;\n gap: var(--wb-len-6);\n}\n\n._discoverList_485ym_450 {\n list-style: none;\n margin: 0;\n padding: 0;\n display: flex;\n flex-direction: column;\n gap: var(--wb-len-2);\n}\n\n._discoverCard_485ym_459 {\n position: relative;\n display: flex;\n align-items: center;\n gap: var(--wb-len-14);\n margin: 0 calc(0px - var(--wb-len-8));\n padding: var(--wb-len-8);\n border-radius: var(--dsw-radius-xl);\n}\n\n._discoverCard_485ym_459:hover {\n background: var(--dsw-alias-interactive-bg-hover);\n}\n\n._discoverArtwork_485ym_473 {\n flex: none;\n display: inline-flex;\n align-items: center;\n justify-content: center;\n width: var(--wb-len-48);\n height: var(--wb-len-48);\n border: 0.5px solid var(--dsw-alias-border-l3);\n border-radius: var(--dsw-radius-lg);\n color: var(--dsw-alias-label-secondary);\n}\n\n._discoverArtworkImage_485ym_485 {\n object-fit: contain;\n}\n\n._discoverMain_485ym_489 {\n display: flex;\n flex: 1;\n flex-direction: column;\n gap: var(--wb-len-2);\n min-width: 0;\n}\n\n._discoverTitleRow_485ym_497 {\n display: flex;\n flex-wrap: wrap;\n align-items: center;\n gap: var(--wb-len-8);\n min-width: 0;\n}\n\n._discoverCardOpen_485ym_505 {\n max-width: 100%;\n padding: 0;\n border: 0;\n background: transparent;\n color: inherit;\n font: var(--dsw-font-s-14);\n font-weight: 500;\n text-align: left;\n text-overflow: ellipsis;\n white-space: nowrap;\n overflow: hidden;\n cursor: pointer;\n}\n\n._discoverCardOpen_485ym_505::after {\n content: '';\n position: absolute;\n inset: 0;\n border-radius: var(--dsw-radius-xl);\n}\n\n._discoverCardOpen_485ym_505:focus-visible {\n outline: none;\n}\n\n._discoverCardOpen_485ym_505:focus-visible::after {\n outline: var(--dsw-focus-ring-width) solid var(--dsw-focus-ring-color, var(--dsw-alias-state-business-primary));\n outline-offset: 2px;\n}\n\n._discoverStrong_485ym_536 {\n font: var(--dsw-font-s-14);\n font-weight: 500;\n overflow-wrap: anywhere;\n}\n\n._discoverDesc_485ym_542 {\n display: -webkit-box;\n overflow: hidden;\n -webkit-box-orient: vertical;\n -webkit-line-clamp: 1;\n font: var(--dsw-font-xs-13);\n color: var(--dsw-alias-label-tertiary);\n}\n\n._discoverMeta_485ym_551 {\n margin: 0;\n font: var(--dsw-font-xxs-12);\n color: var(--dsw-alias-label-tertiary);\n overflow-wrap: anywhere;\n}\n\n._discoverMuted_485ym_558 {\n margin: 0;\n font: var(--dsw-font-xs-13);\n color: var(--dsw-alias-label-tertiary);\n}\n\n._discoverEnd_485ym_564 {\n position: relative;\n z-index: var(--wb-z-10);\n flex: none;\n display: inline-flex;\n align-items: center;\n gap: var(--wb-len-8);\n}\n\n._discoverUpdateAction_485ym_573 {\n color: var(--dsw-alias-state-warn-primary);\n --dsw-alias-interactive-bg-hover: color-mix(in srgb, var(--dsw-alias-state-warn-primary) 8%, transparent);\n}\n\n._discoverBlocked_485ym_578 {\n opacity: 0.5;\n cursor: not-allowed;\n}\n\n._discoverEmpty_485ym_583 {\n display: flex;\n flex-direction: column;\n align-items: center;\n gap: var(--wb-len-8);\n padding: var(--wb-len-64) 0;\n text-align: center;\n}\n\n._discoverEmptyTitle_485ym_592 {\n margin: var(--wb-len-8) 0 0;\n font: var(--dsw-font-s-14);\n font-weight: 500;\n}\n\n._discoverEmpty_485ym_583 > button {\n margin-top: var(--wb-len-8);\n}\n\n._discoverDetail_485ym_602 {\n display: flex;\n flex-direction: column;\n gap: var(--wb-len-16);\n}\n\n._discoverCrumb_485ym_608 {\n align-self: flex-start;\n display: inline-flex;\n align-items: center;\n gap: var(--wb-len-6);\n padding: 0;\n border: 0;\n background: 0 0;\n color: var(--dsw-alias-label-tertiary);\n font: inherit;\n font-size: var(--wb-font-12-5);\n cursor: pointer;\n}\n\n._discoverCrumb_485ym_608:hover {\n color: var(--dsw-alias-label-primary);\n}\n\n._discoverCrumb_485ym_608:focus-visible {\n outline: var(--dsw-focus-ring-width) solid var(--dsw-focus-ring-color, var(--dsw-alias-state-business-primary));\n outline-offset: 2px;\n}\n\n._discoverCrumbIcon_485ym_631 {\n transform: rotate(90deg);\n}\n\n._discoverDetailHead_485ym_635 {\n display: flex;\n align-items: center;\n gap: var(--wb-len-14);\n}\n\n._discoverDetailTitle_485ym_641 {\n margin: 0;\n font: var(--dsw-font-l-20);\n font-weight: 500;\n}\n\n._discoverDetailText_485ym_647 {\n margin: 0;\n font: var(--dsw-font-s-14);\n color: var(--dsw-alias-label-secondary);\n overflow-wrap: anywhere;\n}\n\n._discoverDetailPanel_485ym_654 {\n display: flex;\n flex-direction: column;\n gap: var(--wb-len-16);\n min-width: 0;\n}\n\n._discoverDetailTabs_485ym_661 {\n display: flex;\n margin-bottom: calc(0px - var(--wb-len-4));\n}\n\n._discoverDetailTabList_485ym_666 {\n width: fit-content;\n min-width: var(--wb-len-240);\n}\n\n._discoverDocBody_485ym_671 {\n min-width: 0;\n overflow-wrap: anywhere;\n}\n\n._discoverDocNotice_485ym_676 {\n margin: var(--wb-len-16) 0 0;\n font: var(--dsw-font-s-14);\n color: var(--dsw-alias-label-secondary);\n}\n\n._discoverSection_485ym_682 {\n display: flex;\n flex-direction: column;\n gap: var(--wb-len-12);\n margin-top: var(--wb-len-16);\n}\n\n._discoverSectionTitle_485ym_689 {\n margin: 0;\n font: var(--dsw-font-s-14);\n font-weight: 500;\n}\n\n._discoverFacts_485ym_695 {\n margin: 0;\n padding: 0;\n}\n\n._discoverFactRow_485ym_700 {\n display: flex;\n justify-content: space-between;\n align-items: center;\n gap: var(--wb-len-16);\n min-height: var(--wb-len-44);\n padding: var(--wb-len-8) var(--wb-len-2);\n border-bottom: 0.5px solid var(--dsw-alias-border-l2);\n}\n\n._discoverFactKind_485ym_710 {\n flex: none;\n font: var(--dsw-font-xs-13);\n color: var(--dsw-alias-label-secondary);\n}\n\n._discoverFactValue_485ym_716 {\n min-width: 0;\n margin: 0;\n text-align: end;\n overflow-wrap: anywhere;\n font: var(--dsw-font-xs-13);\n}\n\n._discoverCode_485ym_724 {\n padding: var(--wb-len-2) var(--wb-len-6);\n border-radius: var(--wb-radius-6);\n background: var(--dsw-alias-bg-module-platform);\n font-family: var(--ds-font-family-code);\n font-size: var(--dsw-font-xxs-12-font-size);\n box-decoration-break: clone;\n}\n\n._discoverTags_485ym_733 {\n display: flex;\n flex-wrap: wrap;\n justify-content: flex-end;\n gap: var(--wb-len-6);\n}\n\n._discoverLink_485ym_740 {\n color: var(--dsw-alias-link);\n overflow-wrap: anywhere;\n text-decoration: none;\n}\n\n._discoverLink_485ym_740:hover {\n text-decoration: underline;\n}\n\n._discoverVersions_485ym_750 {\n list-style: none;\n margin: 0;\n padding: 0;\n display: flex;\n flex-direction: column;\n}\n\n._discoverVersionRow_485ym_758 {\n display: flex;\n align-items: center;\n gap: var(--wb-len-8);\n padding: var(--wb-len-8) 0;\n border-bottom: 0.5px solid var(--dsw-alias-border-l2);\n}\n\n._discoverVersionName_485ym_766 {\n font: var(--dsw-font-s-14);\n font-weight: 500;\n}\n\n._discoverError_485ym_771 {\n display: inline-flex;\n align-items: center;\n gap: var(--wb-len-6);\n margin: 0;\n font: var(--dsw-font-xs-13);\n color: var(--dsw-alias-state-error-primary);\n}\n\n._discoverFailure_485ym_780 {\n display: flex;\n align-items: center;\n gap: var(--wb-len-10);\n}\n\n._discoverLoading_485ym_786 {\n display: flex;\n align-items: center;\n gap: var(--wb-len-8);\n margin: 0;\n color: var(--dsw-alias-label-secondary);\n font: var(--dsw-font-xs-13);\n}\n\n._discoverNotice_485ym_795 {\n display: flex;\n align-items: flex-start;\n gap: var(--wb-len-8);\n margin: 0;\n padding: var(--wb-len-10) var(--wb-len-12);\n border-radius: var(--dsw-radius-md);\n background: var(--dsw-alias-state-warn-tertiary);\n color: var(--dsw-alias-label-secondary);\n font: var(--dsw-font-xxs-12);\n}\n\n._discoverNotice_485ym_795 svg {\n flex: none;\n margin-top: var(--wb-len-2);\n color: var(--dsw-alias-state-warn-primary);\n}\n\n._discoverMore_485ym_813 {\n align-self: center;\n}\n\n._discoverTransport_485ym_817 {\n display: flex;\n flex-direction: column;\n gap: var(--wb-len-8);\n}\n\n._discoverTransportHead_485ym_823 {\n display: flex;\n flex-wrap: wrap;\n align-items: center;\n gap: var(--wb-len-8);\n}\n\n._discoverTransportTitle_485ym_830 {\n font: var(--dsw-font-xs-13);\n color: var(--dsw-alias-label-secondary);\n}\n\n._discoverTransportHead_485ym_823 ._discoverTransportKind_485ym_835 {\n font: var(--dsw-font-xs-13);\n font-weight: 500;\n}\n\n._discoverTransportHead_485ym_823 ._discoverTransportState_485ym_840 {\n margin-left: 0;\n}\n\n._discoverTransportHead_485ym_823 > :last-child {\n margin-left: auto;\n}\n\n._discoverTransportRows_485ym_848 {\n display: flex;\n gap: var(--wb-len-8);\n}\n\n._discoverTransportRow_485ym_848 {\n display: flex;\n flex: 1;\n align-items: center;\n gap: var(--wb-len-8);\n min-width: 0;\n padding: var(--wb-len-8) var(--wb-len-10);\n border: 0.5px solid var(--dsw-alias-border-l2);\n border-radius: var(--dsw-radius-md);\n cursor: pointer;\n}\n\n._discoverTransportRow_485ym_848:hover {\n border-color: var(--dsw-alias-border-l3);\n}\n\n._discoverTransportRow_485ym_848:has(._discoverTransportRadio_485ym_869:checked) {\n border-color: var(--dsw-alias-label-primary);\n}\n\n._discoverTransportRow_485ym_848:has(._discoverTransportRadio_485ym_869:focus-visible) {\n outline: 2px solid var(--dsw-alias-label-primary);\n outline-offset: 1px;\n}\n\n._discoverTransportRadio_485ym_869 {\n flex: none;\n margin: 0;\n}\n\n._discoverTransportKind_485ym_835 {\n flex: none;\n font: var(--dsw-font-xs-13);\n font-weight: 500;\n}\n\n._discoverTransportState_485ym_840 {\n flex: none;\n margin-left: auto;\n font: var(--dsw-font-xxs-12);\n color: var(--dsw-alias-label-secondary);\n}\n\n._discoverTransportRow_485ym_848[data-state='ok'] ._discoverTransportState_485ym_840 {\n color: var(--dsw-alias-state-success-primary);\n}\n\n._discoverTransportRow_485ym_848[data-state='auth'] ._discoverTransportState_485ym_840 {\n color: var(--dsw-alias-state-error-primary);\n}\n\n._discoverTransportRow_485ym_848[data-state='unreachable'] ._discoverTransportState_485ym_840,\n._discoverTransportRow_485ym_848[data-state='unknown'] ._discoverTransportState_485ym_840 {\n color: var(--dsw-alias-state-warn-primary);\n}\n\n._discoverTransportCustom_485ym_909 {\n display: flex;\n align-items: center;\n gap: var(--wb-len-8);\n}\n\n._discoverTransportInput_485ym_915 {\n flex: 1;\n min-width: 0;\n}\n\n._discoverInstallBar_485ym_920 {\n display: flex;\n align-items: center;\n gap: var(--wb-len-8);\n margin: 0;\n padding: var(--wb-len-8) var(--wb-len-12);\n border-radius: var(--dsw-radius-md);\n background: var(--dsw-alias-bg-module-platform);\n font: var(--dsw-font-xs-13);\n}\n\n._discoverInstallText_485ym_931 {\n flex: 1;\n min-width: 0;\n overflow-wrap: anywhere;\n}\n\n._discoverDialog_485ym_937 {\n width: min(var(--wb-len-560), calc(100vw - var(--wb-len-32)));\n}\n\n._discoverDialogBody_485ym_941 {\n display: flex;\n flex-direction: column;\n gap: var(--wb-len-12);\n}\n\n._discoverSourceList_485ym_947 {\n list-style: none;\n margin: 0;\n padding: 0;\n display: flex;\n flex-direction: column;\n}\n\n._discoverSourceRow_485ym_955 {\n display: flex;\n flex-wrap: wrap;\n align-items: flex-start;\n gap: var(--wb-len-12);\n padding: var(--wb-len-10) 0;\n border-bottom: 0.5px solid var(--dsw-alias-border-l2);\n}\n\n._discoverSourceConfirm_485ym_964 {\n margin: 0;\n padding: var(--wb-len-2) 0 var(--wb-len-10);\n list-style: none;\n}\n\n._discoverSourcePick_485ym_970 {\n display: flex;\n flex: 1;\n align-items: flex-start;\n gap: var(--wb-len-10);\n min-width: 0;\n cursor: pointer;\n}\n\n._discoverSourceRadio_485ym_979 {\n flex: none;\n width: var(--wb-len-16);\n height: var(--wb-len-16);\n margin: var(--wb-len-2) 0 0;\n accent-color: var(--dsw-alias-brand-primary);\n}\n\n._discoverSourceMain_485ym_987 {\n display: flex;\n flex: 1;\n flex-direction: column;\n gap: var(--wb-len-4);\n min-width: 0;\n}\n\n._discoverSourceHead_485ym_995 {\n display: flex;\n flex-wrap: wrap;\n align-items: center;\n gap: var(--wb-len-8);\n min-width: 0;\n}\n\n._discoverSourceUrl_485ym_1003 {\n display: block;\n margin: 0;\n font: var(--dsw-font-xxs-12);\n color: var(--dsw-alias-label-tertiary);\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n\n._discoverSourceMore_485ym_1013 {\n flex: none;\n}\n\n._discoverSourceLoading_485ym_1017 {\n display: flex;\n flex: none;\n align-items: center;\n gap: var(--wb-len-6);\n color: var(--dsw-alias-label-secondary);\n font: var(--dsw-font-xxs-12);\n white-space: nowrap;\n}\n\n._discoverSourceHint_485ym_1027 {\n display: flex;\n flex-basis: 100%;\n align-items: center;\n gap: var(--wb-len-6);\n color: var(--dsw-alias-label-secondary);\n font: var(--dsw-font-xxs-12);\n}\n\n._discoverSourceHint_485ym_1027 svg {\n flex: none;\n color: var(--dsw-alias-state-warn-primary);\n}\n\n._discoverSourceError_485ym_1041 {\n font: var(--dsw-font-xxs-12);\n color: var(--dsw-alias-state-error-primary);\n overflow-wrap: anywhere;\n}\n\n._discoverSourceForm_485ym_1047 {\n display: flex;\n align-items: center;\n gap: var(--wb-len-8);\n}\n\n._discoverGrow_485ym_1053 {\n flex: 1;\n min-width: 0;\n}\n\n._discoverField_485ym_1058 {\n display: flex;\n flex-direction: column;\n gap: var(--wb-len-6);\n}\n\n._discoverFieldLabel_485ym_1064 {\n font: var(--dsw-font-xxs-12);\n color: var(--dsw-alias-label-secondary);\n}\n\n._discoverConfirmHead_485ym_1069 {\n display: flex;\n align-items: center;\n gap: var(--wb-len-14);\n}\n\n._discoverSkeletonFill_485ym_1075 {\n background: var(--dsw-alias-bg-skeleton);\n animation: _wb-skeleton_485ym_1 var(--wb-dur-1-5) cubic-bezier(0.36, 0, 0.64, 1) infinite;\n}\n\n._discoverArtwork_485ym_473._discoverSkeletonFill_485ym_1075 {\n border-color: transparent;\n}\n\n._discoverSkeletonBar_485ym_1084 {\n display: block;\n height: var(--wb-len-12);\n margin: var(--wb-len-4) 0;\n border-radius: var(--dsw-radius-xs);\n}\n\n._discoverSkeletonTitle_485ym_1091 {\n width: min(var(--wb-len-144), 60%);\n}\n\n._discoverSkeletonDesc_485ym_1095 {\n width: min(var(--wb-len-280), 85%);\n}\n\n@keyframes _wb-skeleton_485ym_1 {\n 0% {\n opacity: 1;\n }\n 40% {\n opacity: 0.6;\n }\n 80%,\n to {\n opacity: 1;\n }\n}\n\n@media (prefers-reduced-motion: reduce) {\n ._discoverSkeletonFill_485ym_1075 {\n animation: none;\n }\n}\n\n._block_mxnbc_1 {\n display: flex;\n flex-direction: column;\n gap: var(--wb-len-4);\n padding: var(--wb-len-2) 0 var(--wb-len-8);\n min-width: 0;\n}\n\n._head_mxnbc_9 {\n display: flex;\n align-items: center;\n gap: var(--wb-len-6);\n min-width: 0;\n}\n\n._title_mxnbc_16 {\n font: var(--dsw-font-s-14);\n color: var(--dsw-alias-state-error-primary);\n overflow-wrap: anywhere;\n}\n\n._fact_mxnbc_22 {\n margin: 0;\n font: var(--dsw-font-xxs-12);\n line-height: var(--wb-line-18);\n color: var(--dsw-alias-label-secondary);\n overflow-wrap: anywhere;\n}\n\n._actions_mxnbc_30 {\n display: flex;\n flex-wrap: wrap;\n align-items: center;\n gap: var(--wb-len-2);\n margin-left: calc(-1 * var(--wb-len-8));\n}\n\n._hint_mxnbc_38 {\n margin: 0;\n font: var(--dsw-font-xxs-12);\n color: var(--dsw-alias-label-tertiary);\n}\n\n._output_mxnbc_44 {\n margin-top: var(--wb-len-2);\n min-width: 0;\n}\n._check_1g6tv_1 {\n display: inline-flex;\n align-items: center;\n gap: var(--wb-len-10);\n min-width: 0;\n}\n\n._status_1g6tv_8 {\n font: var(--dsw-font-xxs-12);\n color: var(--dsw-alias-label-caption);\n font-variant-numeric: tabular-nums;\n white-space: nowrap;\n}\n\n._button_1g6tv_15 {\n flex: none;\n width: var(--wb-len-28);\n height: var(--wb-len-28);\n padding: 0;\n}\n\n._icon_1g6tv_22 {\n display: inline-flex;\n}\n\n@media (max-width: 720px) {\n ._status_1g6tv_8 {\n display: none;\n }\n}\n._foot_1ud1j_1 {\n display: flex;\n align-items: center;\n justify-content: flex-end;\n gap: var(--wb-len-8);\n padding: var(--wb-len-8) var(--wb-len-14) var(--wb-len-10);\n border-top: 0.5px solid var(--dsw-alias-border-l2);\n font-size: var(--dsw-font-xxxs-11-font-size);\n line-height: var(--wb-line-16);\n color: var(--dsw-alias-label-tertiary);\n}\n\n._footText_1ud1j_13 {\n flex: 1;\n min-width: 0;\n}\n\n._footTextMd_1ud1j_18 {\n flex: 1;\n min-width: 0;\n font: var(--dsw-font-s-14);\n color: var(--dsw-alias-label-secondary);\n}\n._wide_1lv8f_1 {\n justify-content: center;\n width: 100%;\n height: var(--wb-len-40);\n border-radius: var(--dsw-radius-md);\n}\n\n._dialog_1lv8f_8 {\n width: min(var(--wb-len-560), 100%);\n max-height: min(var(--wb-len-800), 100%);\n}\n\n._content_1lv8f_13 {\n min-height: 0;\n overflow: auto;\n}\n\n._stack_1lv8f_18 {\n display: flex;\n flex-direction: column;\n gap: var(--wb-len-12);\n min-width: 0;\n}\n\n._body_1lv8f_25 {\n display: flex;\n flex-direction: column;\n gap: var(--wb-len-12);\n min-width: 0;\n}\n\n._field_1lv8f_32 {\n display: flex;\n flex-direction: column;\n gap: var(--wb-len-6);\n font-size: var(--dsw-font-xs-13-font-size);\n}\n\n._input_1lv8f_39 {\n width: 100%;\n height: var(--wb-len-40);\n padding: 0 var(--wb-len-14);\n}\n\n._registryField_1lv8f_45 {\n height: var(--wb-len-32);\n margin-left: var(--wb-len-26);\n padding: 0 var(--wb-len-10);\n}\n\n._options_1lv8f_51 {\n display: flex;\n flex-wrap: wrap;\n align-items: center;\n justify-content: space-between;\n gap: var(--wb-len-8) var(--wb-len-12);\n}\n\n._guideToggle_1lv8f_59 {\n display: inline-flex;\n align-items: center;\n gap: var(--wb-len-4);\n align-self: flex-start;\n margin-top: var(--wb-len-4);\n padding: 0;\n border: 0;\n background: transparent;\n font: var(--dsw-font-xs-13);\n color: var(--dsw-alias-label-secondary);\n cursor: pointer;\n}\n\n._guideToggle_1lv8f_59:hover {\n color: var(--dsw-alias-label-primary);\n}\n\n._guideToggle_1lv8f_59 svg,\n._registryToggle_1lv8f_78 svg {\n transition: transform var(--wb-dur-0-12) ease;\n}\n\n._guideToggle_1lv8f_59[aria-expanded='true'] svg,\n._registryToggle_1lv8f_78[aria-expanded='true'] svg {\n transform: rotate(180deg);\n}\n\n._registryWrap_1lv8f_87 {\n position: relative;\n flex: none;\n}\n\n._registryToggle_1lv8f_78 {\n display: inline-flex;\n align-items: center;\n gap: var(--wb-len-6);\n height: var(--wb-len-26);\n padding: 0 var(--wb-len-8) 0 var(--wb-len-10);\n border: 0.5px solid var(--dsw-alias-border-l4);\n border-radius: var(--dsw-radius-sm);\n background: var(--dsw-alias-bg-layer-2);\n font: inherit;\n font-size: var(--wb-font-12-5);\n color: var(--dsw-alias-label-secondary);\n cursor: pointer;\n}\n\n._registryToggle_1lv8f_78:hover:not(:disabled) {\n color: var(--dsw-alias-label-primary);\n}\n\n._registryToggle_1lv8f_78:disabled {\n cursor: default;\n opacity: 0.6;\n}\n\n._registryToggle_1lv8f_78[aria-expanded='true'] {\n border-color: var(--dsw-alias-border-l3);\n background: var(--dsw-alias-bg-layer-3);\n}\n\n._registryChosen_1lv8f_121 {\n color: var(--dsw-alias-label-primary);\n font-weight: 500;\n}\n\n._registry_1lv8f_45 {\n position: fixed;\n z-index: var(--wb-z-1100);\n box-sizing: border-box;\n width: min(var(--wb-len-440), 100vw - var(--wb-len-24));\n display: flex;\n flex-direction: column;\n gap: var(--wb-len-4);\n margin: 0;\n padding: var(--wb-len-8) var(--wb-len-10) var(--wb-len-12);\n border: 0;\n border-radius: var(--dsw-radius-lg);\n background: var(--dsw-alias-bg-layer-2);\n --dsw-elevation-stroke-color: var(--dsw-alias-border-l3);\n box-shadow: var(--dsw-elevation-prominent);\n}\n\n._registryOption_1lv8f_143 {\n display: flex;\n flex-direction: column;\n gap: var(--wb-len-4);\n padding: var(--wb-len-8) var(--wb-len-10);\n border: 0.5px solid transparent;\n border-radius: var(--dsw-radius-lg);\n cursor: pointer;\n}\n\nlabel._registryOption_1lv8f_143 {\n flex-direction: row;\n align-items: flex-start;\n gap: var(--wb-len-10);\n}\n\n._registryPick_1lv8f_159 {\n display: flex;\n align-items: flex-start;\n gap: var(--wb-len-10);\n cursor: pointer;\n}\n\n._registryOption_1lv8f_143[data-checked='true'] {\n border-color: color-mix(in srgb, var(--dsw-alias-brand-primary) 40%, transparent);\n background: var(--dsw-alias-bg-layer-2);\n}\n\n._registryOption_1lv8f_143 input[type='radio'] {\n flex: none;\n width: var(--wb-len-16);\n height: var(--wb-len-16);\n margin: var(--wb-len-2) 0 0;\n accent-color: var(--dsw-alias-brand-primary);\n}\n\n._registryTitle_1lv8f_179 {\n display: flex;\n flex-wrap: wrap;\n align-items: center;\n gap: var(--wb-len-8);\n font: var(--dsw-font-xs-13);\n line-height: var(--wb-line-20);\n color: var(--dsw-alias-label-primary);\n}\n\n._registryHint_1lv8f_189 {\n margin-left: var(--wb-len-26);\n font-size: var(--dsw-font-xxs-12-font-size);\n line-height: var(--wb-line-18);\n color: var(--dsw-alias-label-tertiary);\n overflow-wrap: anywhere;\n}\n\n._inputError_1lv8f_197 {\n margin: var(--wb-len-neg-4) 0 0 var(--wb-len-26);\n font-size: var(--dsw-font-xxs-12-font-size);\n line-height: var(--wb-line-18);\n color: var(--dsw-alias-state-error-primary);\n}\n\n._guide_1lv8f_59 {\n display: flex;\n flex-direction: column;\n gap: var(--wb-len-10);\n padding: var(--wb-len-8) var(--wb-len-14) var(--wb-len-14);\n border: 0.5px solid var(--dsw-alias-border-l4);\n border-radius: var(--dsw-radius-lg);\n background: var(--dsw-alias-bg-layer-1);\n}\n\n._guideList_1lv8f_214 {\n display: flex;\n flex-direction: column;\n gap: var(--wb-len-2);\n margin: 0;\n padding: 0;\n list-style: none;\n}\n\n._guideItem_1lv8f_223 {\n display: flex;\n align-items: flex-start;\n gap: var(--wb-len-10);\n padding: var(--wb-len-8) 0;\n}\n\n._guideIndex_1lv8f_230 {\n flex: none;\n display: inline-flex;\n align-items: center;\n justify-content: center;\n width: var(--wb-len-20);\n height: var(--wb-len-20);\n border-radius: var(--wb-radius-pill);\n corner-shape: round;\n background: var(--dsw-alias-bg-module-platform);\n font: var(--dsw-font-xs-13);\n color: var(--dsw-alias-label-secondary);\n}\n\n._guideMain_1lv8f_244 {\n display: flex;\n flex-direction: column;\n flex: 1;\n gap: 0;\n min-width: 0;\n}\n\n._guideTitle_1lv8f_252 {\n font: var(--dsw-font-s-14);\n font-weight: 500;\n color: var(--dsw-alias-label-primary);\n}\n\n._guideHint_1lv8f_258 {\n margin: 0;\n font: var(--dsw-font-xs-13);\n color: var(--dsw-alias-label-caption);\n}\n\n._guideExample_1lv8f_264 {\n font: var(--dsw-font-xs-13);\n color: var(--dsw-alias-label-secondary);\n overflow-wrap: anywhere;\n}\n\n._guideExample_1lv8f_264 code {\n font-family: var(--dsw-font-mono, monospace);\n}\n\n._guideExampleLabel_1lv8f_274 {\n color: var(--dsw-alias-label-caption);\n}\n\n._footer_1lv8f_278 {\n display: flex;\n flex-direction: column;\n gap: var(--wb-len-20);\n width: 100%;\n}\n\n._hero_1lv8f_285 {\n display: flex;\n flex-direction: column;\n align-items: center;\n gap: var(--wb-len-10);\n padding: var(--wb-len-8) 0 var(--wb-len-4);\n text-align: center;\n}\n\n._heroIcon_1lv8f_294 {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n width: var(--wb-len-44);\n height: var(--wb-len-44);\n color: var(--dsw-alias-label-secondary);\n}\n\n._heroIcon_1lv8f_294[data-state='done'] {\n color: var(--dsw-alias-state-success-secondary);\n}\n\n._heroIcon_1lv8f_294[data-state='error'] {\n color: var(--dsw-alias-state-warn-label);\n}\n\n._pendingTitle_1lv8f_311 {\n margin: 0;\n font-size: var(--dsw-font-s-14-font-size);\n line-height: var(--wb-line-22);\n font-weight: 500;\n color: var(--dsw-alias-label-secondary);\n}\n\n._wizardTitle_1lv8f_319 {\n margin: 0;\n font-size: var(--wb-font-18);\n line-height: var(--wb-len-26);\n font-weight: 600;\n}\n\n._subject_1lv8f_326 {\n display: flex;\n flex-direction: column;\n align-items: center;\n gap: var(--wb-len-6);\n padding: var(--wb-len-16);\n border: 0.5px solid var(--dsw-alias-border-l3);\n border-radius: var(--dsw-radius-lg);\n text-align: center;\n}\n\n._subjectName_1lv8f_337 {\n margin: 0;\n font: var(--dsw-font-base-strong-16);\n overflow-wrap: anywhere;\n}\n\n._subjectMeta_1lv8f_343,\n._subjectDesc_1lv8f_344 {\n margin: 0;\n font: var(--dsw-font-xs-13);\n color: var(--dsw-alias-label-secondary);\n overflow-wrap: anywhere;\n}\n\n._result_1lv8f_351,\n._resultWarn_1lv8f_352 {\n margin: 0;\n padding: var(--wb-len-8) var(--wb-len-12);\n border-radius: var(--dsw-radius-md);\n background: color-mix(in srgb, var(--dsw-alias-state-success-primary) 10%, transparent);\n font: var(--dsw-font-s-14);\n color: var(--dsw-alias-label-primary);\n}\n\n._resultWarn_1lv8f_352 {\n background: color-mix(in srgb, var(--dsw-alias-state-warn-primary) 12%, transparent);\n}\n\n._resultMeta_1lv8f_365 {\n margin: 0;\n padding: 0 var(--wb-len-12);\n font: var(--dsw-font-xs-13);\n color: var(--dsw-alias-label-secondary);\n overflow-wrap: anywhere;\n}\n\n._approval_1lv8f_373 {\n display: flex;\n flex-direction: column;\n gap: var(--wb-len-8);\n padding: var(--wb-len-12) var(--wb-len-14);\n border: 0.5px solid var(--dsw-alias-state-warn-primary);\n border-radius: var(--dsw-radius-lg);\n background: color-mix(in srgb, var(--dsw-alias-state-warn-primary) 8%, transparent);\n}\n\n._approvalTitle_1lv8f_383 {\n margin: 0;\n font: var(--dsw-font-s-14);\n font-weight: 600;\n color: var(--dsw-alias-label-primary);\n}\n\n._approvalText_1lv8f_390 {\n margin: 0;\n font: var(--dsw-font-xs-13);\n color: var(--dsw-alias-label-secondary);\n}\n\n._approvalCaution_1lv8f_396 {\n margin: 0;\n font: var(--dsw-font-xs-13);\n font-weight: 600;\n color: var(--dsw-alias-state-warn-primary);\n}\n\n._note_1lv8f_403 {\n margin: 0;\n font: var(--dsw-font-s-14);\n color: var(--dsw-alias-label-secondary);\n overflow-wrap: anywhere;\n}\n\n._noteWarn_1lv8f_410 {\n color: var(--dsw-alias-state-warn-primary);\n}\n\n._noteError_1lv8f_414 {\n color: var(--dsw-alias-state-error-primary);\n}\n\n._problem_1lv8f_418 {\n margin: 0;\n font: var(--dsw-font-xs-13);\n color: var(--dsw-alias-state-error-primary);\n overflow-wrap: anywhere;\n}\n\n._detailLabel_1lv8f_425 {\n margin: 0;\n font: var(--dsw-font-xs-13);\n color: var(--dsw-alias-label-caption);\n}\n\n._detail_1lv8f_425 {\n margin: 0;\n padding: var(--wb-len-8) var(--wb-len-10);\n border: 0.5px solid var(--dsw-alias-border-l1);\n border-radius: var(--dsw-radius-sm);\n background: var(--dsw-alias-bg-layer-3);\n font-family: var(--dsw-font-mono, monospace);\n font-size: var(--dsw-font-xs-13-font-size);\n line-height: var(--wb-line-18);\n color: var(--dsw-alias-label-secondary);\n overflow-wrap: anywhere;\n white-space: pre-wrap;\n}\n._note_1enlz_1 {\n display: flex;\n align-items: flex-start;\n gap: var(--wb-len-8);\n margin: 0;\n padding: var(--wb-len-10) var(--wb-len-12);\n border-radius: var(--dsw-radius-md);\n background: var(--dsw-alias-state-warn-tertiary);\n font-size: var(--dsw-font-xxs-12-font-size);\n line-height: var(--wb-line-18);\n color: var(--dsw-alias-label-secondary);\n}\n\n._note_1enlz_1 > svg {\n flex: none;\n margin-top: var(--wb-len-2);\n color: var(--dsw-alias-state-warn-primary);\n}\n._slot_1t7dx_1 {\n display: flex;\n flex: 0 0 100%;\n min-width: 0;\n}\n\n._slot_1t7dx_1 > * {\n flex: 0 0 100%;\n min-width: 0;\n}\n\n._action_1t7dx_12 {\n box-sizing: border-box;\n display: flex;\n align-items: center;\n justify-content: flex-start;\n flex: 1 1 0;\n width: 100%;\n min-width: 0;\n min-height: var(--wb-len-36);\n margin: 0 var(--wb-len-2);\n padding: var(--wb-len-7) var(--wb-len-8);\n border-radius: var(--dsw-radius-md);\n cursor: default;\n overflow: hidden;\n gap: var(--wb-len-4);\n font-size: var(--dsw-font-xs-13-font-size);\n line-height: var(--wb-line-18);\n}\n\n._live_1t7dx_31 {\n color: var(--dsw-alias-state-success-primary);\n}\n\n._paused_1t7dx_35 {\n color: var(--dsw-alias-state-warn-primary);\n}\n\n._trouble_1t7dx_39 {\n color: var(--dsw-alias-state-error-primary);\n}\n\n._pulse_1t7dx_43 {\n animation: _wb-debug-breathe_1t7dx_1 var(--wb-dur-1-5) var(--ds-ease-in-out, ease-in-out) infinite;\n}\n\n@keyframes _wb-debug-breathe_1t7dx_1 {\n 0%,\n 100% {\n opacity: 1;\n }\n\n 50% {\n opacity: 0.35;\n }\n}\n\n@media (prefers-reduced-motion: reduce) {\n ._pulse_1t7dx_43 {\n animation: none;\n }\n}\n\n._entry_1t7dx_64 {\n display: flex;\n align-items: center;\n flex: 1 1 auto;\n min-width: 0;\n}\n\n._entryInner_1t7dx_71 {\n display: flex;\n align-items: center;\n gap: var(--wb-len-6);\n min-width: 0;\n}\n\n._acts_1t7dx_78 {\n display: flex;\n align-items: center;\n gap: var(--wb-len-2);\n flex: none;\n}\n\n._act_1t7dx_12 {\n appearance: none;\n border: 0;\n background: transparent;\n color: var(--dsw-alias-label-secondary);\n display: inline-flex;\n align-items: center;\n justify-content: center;\n width: var(--wb-len-22);\n height: var(--wb-len-22);\n padding: 0;\n border-radius: var(--dsw-radius-sm, var(--wb-len-6));\n flex: none;\n cursor: pointer;\n}\n\n._act_1t7dx_12:hover {\n background: var(--dsw-alias-interactive-bg-hover);\n}\n\n._act_1t7dx_12:focus-visible {\n outline: var(--dsw-focus-ring-width) solid var(--dsw-focus-ring-color, var(--dsw-alias-state-business-primary));\n outline-offset: -2px;\n}\n\n._actStop_1t7dx_110:hover,\n._actStop_1t7dx_110:focus-visible {\n color: var(--dsw-alias-state-error-primary);\n}\n\n._actArmed_1t7dx_115,\n._actArmed_1t7dx_115:hover,\n._actArmed_1t7dx_115:focus-visible {\n background: color-mix(in srgb, var(--dsw-alias-state-error-primary) 12%, transparent);\n width: auto;\n color: var(--dsw-alias-state-error-primary);\n gap: var(--wb-len-4);\n padding: 0 var(--wb-len-7);\n}\n\n._actLabel_1t7dx_125 {\n white-space: nowrap;\n font-size: var(--dsw-font-xxxs-11-font-size);\n line-height: var(--wb-line-18);\n}\n\n._entryLine_1t7dx_131 {\n min-width: 0;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n\n._actionRail_1t7dx_138 {\n justify-content: center;\n flex: none;\n width: var(--wb-len-36);\n min-width: var(--wb-len-36);\n height: var(--wb-len-36);\n margin: 0;\n padding: 0;\n corner-shape: round;\n border-radius: 50%;\n}\n\n._card_1t7dx_150 {\n display: flex;\n flex-direction: column;\n gap: var(--wb-len-4);\n}\n\n._cardTitle_1t7dx_156 {\n color: var(--dsw-alias-label-primary);\n font-size: var(--dsw-font-s-14-font-size);\n line-height: var(--wb-line-20);\n}\n\n._cardNote_1t7dx_162 {\n color: var(--dsw-alias-label-secondary);\n font-size: var(--dsw-font-xxs-12-font-size);\n line-height: var(--wb-line-18);\n}\n._slot_1gkj9_1 {\n display: flex;\n flex: 0 0 100%;\n min-width: 0;\n}\n\n._slot_1gkj9_1 > * {\n flex: 0 0 100%;\n min-width: 0;\n}\n\n._action_1gkj9_12 {\n box-sizing: border-box;\n display: flex;\n align-items: center;\n justify-content: flex-start;\n flex: 1 1 0;\n width: 100%;\n min-width: 0;\n min-height: var(--wb-len-36);\n margin: 0 var(--wb-len-2);\n padding: var(--wb-len-7) var(--wb-len-8);\n border-radius: var(--dsw-radius-md);\n cursor: default;\n overflow: hidden;\n gap: var(--wb-len-4);\n font-size: var(--dsw-font-xs-13-font-size);\n line-height: var(--wb-line-18);\n}\n\n._live_1gkj9_31 {\n color: var(--dsw-alias-state-warn-primary);\n}\n\n._done_1gkj9_35 {\n color: var(--dsw-alias-state-success-primary);\n}\n\n._pulse_1gkj9_39 {\n animation: _wb-record-breathe_1gkj9_1 var(--wb-dur-1-5) var(--ds-ease-in-out, ease-in-out) infinite;\n}\n\n@keyframes _wb-record-breathe_1gkj9_1 {\n 0%,\n 100% {\n opacity: 1;\n }\n\n 50% {\n opacity: 0.35;\n }\n}\n\n@media (prefers-reduced-motion: reduce) {\n ._pulse_1gkj9_39 {\n animation: none;\n }\n}\n\n._entry_1gkj9_60 {\n display: flex;\n align-items: center;\n flex: 1 1 auto;\n min-width: 0;\n}\n\n._entryInner_1gkj9_67 {\n display: flex;\n align-items: center;\n gap: var(--wb-len-6);\n min-width: 0;\n}\n\n._acts_1gkj9_74 {\n display: flex;\n align-items: center;\n gap: var(--wb-len-2);\n flex: none;\n}\n\n._act_1gkj9_12 {\n appearance: none;\n border: 0;\n background: transparent;\n color: var(--dsw-alias-label-secondary);\n display: inline-flex;\n align-items: center;\n justify-content: center;\n height: var(--wb-len-22);\n padding: 0 var(--wb-len-7);\n border-radius: var(--dsw-radius-sm, var(--wb-len-6));\n flex: none;\n cursor: pointer;\n white-space: nowrap;\n font-size: var(--dsw-font-xxxs-11-font-size);\n line-height: var(--wb-line-18);\n}\n\n._act_1gkj9_12:hover {\n background: var(--dsw-alias-interactive-bg-hover);\n}\n\n._act_1gkj9_12:focus-visible {\n outline: var(--dsw-focus-ring-width) solid var(--dsw-focus-ring-color, var(--dsw-alias-state-business-primary));\n outline-offset: -2px;\n}\n\n._entryLine_1gkj9_108 {\n min-width: 0;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n\n._actionRail_1gkj9_115 {\n justify-content: center;\n flex: none;\n width: var(--wb-len-36);\n min-width: var(--wb-len-36);\n height: var(--wb-len-36);\n margin: 0;\n padding: 0;\n corner-shape: round;\n border-radius: 50%;\n}\n\n._card_1gkj9_127 {\n display: flex;\n flex-direction: column;\n gap: var(--wb-len-4);\n}\n\n._cardTitle_1gkj9_133 {\n color: var(--dsw-alias-label-primary);\n font-size: var(--dsw-font-s-14-font-size);\n line-height: var(--wb-line-20);\n}\n\n._cardNote_1gkj9_139 {\n color: var(--dsw-alias-label-secondary);\n font-size: var(--dsw-font-xxs-12-font-size);\n line-height: var(--wb-line-18);\n}\n._item_lyox9_1 {\n display: flex;\n flex-direction: column;\n gap: var(--wb-len-10);\n}\n\n._item_lyox9_1 + ._item_lyox9_1 {\n padding-top: var(--wb-len-14);\n border-top: var(--wb-len-0-5) solid var(--dsw-alias-settings-card-stroke);\n}\n\n._head_lyox9_12 {\n display: flex;\n align-items: center;\n gap: var(--wb-len-8);\n min-width: 0;\n}\n\n._title_lyox9_19 {\n flex: 1 1 auto;\n min-width: 0;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n font-size: var(--dsw-font-s-14-font-size);\n line-height: var(--wb-line-20);\n font-weight: 600;\n color: var(--dsw-alias-label-primary);\n}\n\n._description_lyox9_31 {\n margin: 0;\n font-size: var(--dsw-font-xs-13-font-size);\n line-height: var(--wb-line-18);\n color: var(--dsw-alias-label-secondary);\n}\n._rows_85r3w_1 {\n display: flex;\n flex-direction: column;\n gap: var(--wb-len-8);\n margin: 0;\n padding: 0;\n list-style: none;\n}\n\n._row_85r3w_1 {\n display: flex;\n flex-direction: column;\n gap: var(--wb-len-6);\n padding: var(--wb-len-12) var(--wb-len-14);\n border: 0.5px solid var(--dsw-alias-settings-card-stroke);\n border-radius: var(--dsw-radius-xl);\n background: var(--dsw-alias-settings-card-fill);\n}\n\n._head_85r3w_20 {\n display: flex;\n align-items: center;\n gap: var(--wb-len-8);\n min-width: 0;\n}\n\n._pick_85r3w_27 {\n flex: 0 1 auto;\n min-width: 0;\n font-size: var(--dsw-font-xs-13-font-size);\n}\n\n._pick_85r3w_27 > span {\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n\n._code_85r3w_39 {\n --dsl-code-block-background: var(--dsw-alias-bg-layer-1);\n margin: 0;\n}\n\n._missing_85r3w_44,\n._conflict_85r3w_45 {\n font-size: var(--dsw-font-xxs-12-font-size);\n line-height: var(--wb-line-18);\n color: var(--dsw-alias-state-warn-primary);\n}\n._body_11oac_1 {\n display: flex;\n flex-direction: column;\n gap: var(--wb-len-12);\n}\n\n._sources_11oac_7 {\n display: flex;\n flex-wrap: wrap;\n align-items: center;\n gap: var(--wb-len-8);\n}\n\n._sourcesLabel_11oac_14 {\n font-size: var(--dsw-font-xxs-12-font-size);\n color: var(--dsw-alias-label-secondary);\n}\n\nbutton._sourceOn_11oac_19 {\n border-color: var(--dsw-alias-brand-primary);\n}\n._sourceCount_11oac_22 {\n margin-left: var(--wb-len-4);\n font-variant-numeric: tabular-nums;\n font-size: var(--dsw-font-xxs-12-font-size);\n color: var(--dsw-alias-label-tertiary);\n}\n\n._reading_11oac_29 {\n display: flex;\n flex-direction: column;\n gap: var(--wb-len-4);\n}\n\n._status_11oac_35 {\n display: inline-flex;\n align-items: center;\n gap: var(--wb-len-6);\n margin: 0;\n font-size: var(--dsw-font-xxs-12-font-size);\n line-height: var(--wb-line-18);\n color: var(--dsw-alias-label-tertiary);\n}\n\n._failure_11oac_45 {\n display: grid;\n grid-template-columns: minmax(0, 1fr) auto;\n column-gap: var(--wb-len-10);\n row-gap: var(--wb-len-2);\n color: var(--dsw-alias-state-error-primary);\n font-size: var(--dsw-font-xxs-12-font-size);\n line-height: var(--wb-line-18);\n}\n\n._failureTitle_11oac_55 {\n display: inline-flex;\n align-items: center;\n gap: var(--wb-len-6);\n min-width: 0;\n}\n\n._failureHint_11oac_62 {\n grid-column: 1;\n color: var(--dsw-alias-label-tertiary);\n}\n\n._failureAction_11oac_67 {\n grid-column: 2;\n grid-row: 1;\n justify-self: end;\n}\n\n._foot_11oac_73 {\n display: flex;\n justify-content: flex-end;\n}\n._body_lox98_1 {\n display: flex;\n flex-direction: column;\n gap: var(--wb-len-12);\n}\n\n._field_lox98_7 {\n display: flex;\n flex-direction: column;\n gap: var(--wb-len-6);\n}\n\n._input_lox98_13 {\n width: 100%;\n}\n\n._label_lox98_17 {\n font-size: var(--dsw-font-xxs-12-font-size);\n color: var(--dsw-alias-label-secondary);\n}\n\n._hint_lox98_22 {\n margin: 0;\n font-size: var(--dsw-font-xxs-12-font-size);\n color: var(--dsw-alias-label-tertiary);\n}\n\n._copy_lox98_28 {\n display: flex;\n flex-wrap: wrap;\n gap: var(--wb-len-8) var(--wb-len-16);\n margin: 0;\n padding: 0;\n border: 0;\n}\n\n._copy_lox98_28 legend {\n padding: 0;\n margin-bottom: var(--wb-len-6);\n}\n\n._actions_lox98_42 {\n display: flex;\n justify-content: flex-end;\n}\n\n._commandLabel_lox98_47 {\n display: block;\n margin-top: var(--wb-len-4);\n}\n\n._command_lox98_47 {\n display: block;\n margin-top: var(--wb-len-4);\n padding: var(--wb-len-6) var(--wb-len-8);\n border-radius: var(--dsw-radius-md);\n background: var(--dsw-alias-bg-layer-1);\n font-family: var(--ds-font-family-code, monospace);\n font-size: var(--dsw-font-xxs-12-font-size);\n overflow-wrap: anywhere;\n}\n._body_zi2j5_1 {\n display: flex;\n flex-direction: column;\n gap: var(--wb-len-12);\n}\n\n._lead_zi2j5_7 {\n margin: 0;\n font-size: var(--dsw-font-xs-13-font-size);\n line-height: var(--wb-line-18);\n color: var(--dsw-alias-label-secondary);\n}\n\n._title_zi2j5_14 {\n font-size: var(--wb-font-18);\n line-height: var(--wb-line-24);\n}\n._hint_zyzt3_1[hidden],\n._actions_zyzt3_2[hidden],\n._progress_zyzt3_3[hidden],\n._commandRow_zyzt3_4[hidden],\n._bridge_zyzt3_5[hidden],\n._raw_zyzt3_6[hidden] {\n display: none;\n}\n\n._gate_zyzt3_10 {\n position: fixed;\n inset: 0;\n z-index: var(--wb-z-top);\n display: flex;\n align-items: center;\n justify-content: center;\n padding: var(--wb-len-24);\n background: var(--dsw-alias-bg-base);\n}\n\n._card_zyzt3_21 {\n width: 100%;\n max-width: var(--wb-len-420);\n display: flex;\n flex-direction: column;\n align-items: center;\n gap: var(--wb-len-16);\n text-align: center;\n}\n\n._card_zyzt3_21:has(._actions_zyzt3_2:not([hidden])),\n._card_zyzt3_21:has(._bridge_zyzt3_5:not([hidden])) {\n max-width: var(--wb-len-520);\n}\n\n._title_zyzt3_36 {\n margin: 0;\n font-size: var(--dsw-font-base-16-font-size);\n line-height: var(--wb-line-24);\n font-weight: 600;\n color: var(--dsw-alias-label-primary);\n}\n\n._hint_zyzt3_1 {\n margin: 0;\n font-size: var(--dsw-font-xxs-12-font-size);\n line-height: var(--wb-line-18);\n color: var(--dsw-alias-label-tertiary);\n}\n\n._steps_zyzt3_51 {\n list-style: none;\n margin: var(--wb-len-6) 0 0;\n padding: 0;\n width: 100%;\n display: flex;\n flex-direction: column;\n gap: var(--wb-len-2);\n text-align: left;\n}\n\n._step_zyzt3_51 {\n display: flex;\n align-items: center;\n gap: var(--wb-len-8);\n padding: var(--wb-len-6) var(--wb-len-10);\n border-radius: var(--dsw-radius-sm);\n font-size: var(--dsw-font-xxs-12-font-size);\n line-height: var(--wb-line-18);\n color: var(--dsw-alias-label-secondary);\n background: var(--dsw-alias-bg-layer-1);\n}\n\n._step_zyzt3_51[data-status='running'] {\n color: var(--dsw-alias-label-primary);\n}\n\n._mark_zyzt3_78 {\n flex: none;\n display: flex;\n align-items: center;\n justify-content: center;\n width: var(--wb-len-14);\n height: var(--wb-len-14);\n font-size: var(--dsw-font-xxs-12-font-size);\n line-height: var(--wb-line-18);\n color: var(--dsw-alias-label-tertiary);\n font-variant-numeric: tabular-nums;\n}\n\n._step_zyzt3_51[data-status='ok'] ._mark_zyzt3_78 {\n color: var(--dsw-alias-state-success-primary);\n}\n\n._step_zyzt3_51[data-status='warn'] ._mark_zyzt3_78 {\n color: var(--dsw-alias-state-warn-primary);\n}\n\n._step_zyzt3_51[data-status='failed'] ._mark_zyzt3_78 {\n color: var(--dsw-alias-state-error-primary);\n}\n\n._label_zyzt3_103 {\n flex: none;\n}\n\n._detail_zyzt3_107 {\n margin-left: auto;\n min-width: 0;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n color: var(--dsw-alias-label-tertiary);\n}\n\n._progress_zyzt3_3 {\n display: flex;\n align-items: center;\n justify-content: center;\n gap: var(--wb-len-8);\n margin-top: var(--wb-len-4);\n max-width: 100%;\n}\n\n._elapsed_zyzt3_125 {\n flex: none;\n font-size: var(--dsw-font-xxxs-11-font-size);\n line-height: var(--wb-line-16);\n color: var(--dsw-alias-label-tertiary);\n font-variant-numeric: tabular-nums;\n}\n\n._error_zyzt3_133 {\n margin: 0;\n padding: var(--wb-len-8) var(--wb-len-10);\n max-height: var(--wb-len-120);\n overflow: auto;\n border-radius: var(--dsw-radius-sm);\n background: var(--dsw-alias-bg-layer-1);\n font-family: var(--ds-font-family-code, monospace);\n font-size: var(--dsw-font-xxxs-11-font-size);\n line-height: var(--wb-line-16);\n white-space: pre-wrap;\n word-break: break-all;\n text-align: left;\n color: var(--dsw-alias-label-tertiary);\n}\n\n._commandRow_zyzt3_4 {\n display: flex;\n align-items: center;\n gap: var(--wb-len-4);\n margin: 0 0 var(--wb-len-8);\n padding-right: var(--wb-len-4);\n border-radius: var(--dsw-radius-sm);\n background: var(--dsw-alias-bg-layer-2);\n}\n\n._copy_zyzt3_159 {\n flex: none;\n display: flex;\n align-items: center;\n justify-content: center;\n width: var(--wb-len-24);\n height: var(--wb-len-24);\n padding: 0;\n border: none;\n border-radius: var(--wb-radius-6);\n background: transparent;\n color: var(--dsw-alias-label-tertiary);\n cursor: pointer;\n}\n\n._copy_zyzt3_159:hover {\n background: var(--dsw-alias-interactive-bg-hover);\n color: var(--dsw-alias-label-primary);\n}\n\n._command_zyzt3_4 {\n flex: 1;\n min-width: 0;\n padding: var(--wb-len-8) var(--wb-len-10);\n border-radius: var(--dsw-radius-sm);\n background: transparent;\n font-family: var(--ds-font-family-code, monospace);\n font-size: var(--dsw-font-xxxs-11-font-size);\n line-height: var(--wb-line-16);\n overflow-wrap: anywhere;\n color: var(--dsw-alias-label-primary);\n}\n\n._buttons_zyzt3_192 {\n display: flex;\n align-items: center;\n justify-content: center;\n gap: var(--wb-len-12);\n}\n\n._mockSlot_zyzt3_199 {\n position: absolute;\n top: 0;\n left: 0;\n right: 0;\n justify-content: center;\n background: var(--dsw-alias-bg-base);\n}\n\n._button_zyzt3_192 {\n box-sizing: border-box;\n display: inline-flex;\n align-items: center;\n justify-content: center;\n height: var(--wb-len-28);\n padding: 0 var(--wb-len-10);\n border: 0.5px solid var(--dsw-alias-border-l3);\n border-radius: var(--dsw-radius-sm);\n background: transparent;\n font: inherit;\n font-size: var(--dsw-font-xxs-12-font-size);\n line-height: var(--wb-line-18);\n color: var(--dsw-alias-label-primary);\n cursor: pointer;\n}\n\n._button_zyzt3_192:hover:not(:disabled) {\n background: var(--dsw-alias-interactive-bg-hover);\n}\n\n._button_zyzt3_192:disabled {\n cursor: not-allowed;\n opacity: 0.4;\n}\n\n._actions_zyzt3_2,\n._bridge_zyzt3_5 {\n box-sizing: border-box;\n width: 100%;\n display: flex;\n flex-direction: column;\n align-items: stretch;\n gap: var(--wb-len-10);\n margin-top: var(--wb-len-4);\n padding: var(--wb-len-14) var(--wb-len-16);\n border: 0.5px solid var(--dsw-alias-border-l2);\n border-radius: var(--wb-radius-14);\n background: var(--dsw-alias-bg-layer-1);\n text-align: left;\n}\n\n._fixTitle_zyzt3_250 {\n margin: 0;\n font-size: var(--dsw-font-xs-13-font-size);\n line-height: var(--wb-line-20);\n font-weight: 600;\n color: var(--dsw-alias-label-primary);\n}\n\n._actions_zyzt3_2 ._hint_zyzt3_1,\n._bridge_zyzt3_5 ._hint_zyzt3_1 {\n margin: 0;\n font-size: var(--dsw-font-xxs-12-font-size);\n line-height: var(--wb-line-19);\n color: var(--dsw-alias-label-secondary);\n}\n\n._actions_zyzt3_2 ._commandRow_zyzt3_4,\n._bridge_zyzt3_5 ._commandRow_zyzt3_4 {\n margin: 0;\n}\n\n._actions_zyzt3_2 ._buttons_zyzt3_192,\n._bridge_zyzt3_5 ._buttons_zyzt3_192 {\n justify-content: flex-start;\n}\n\n._raw_zyzt3_6 {\n box-sizing: border-box;\n width: 100%;\n margin: 0;\n font-size: var(--dsw-font-xxxs-11-font-size);\n line-height: var(--wb-line-16);\n text-align: left;\n color: var(--dsw-alias-label-tertiary);\n}\n\n._rawSummary_zyzt3_286 {\n cursor: pointer;\n color: var(--dsw-alias-label-tertiary);\n}\n\n._actions_zyzt3_2 ._error_zyzt3_133,\n._bridge_zyzt3_5 ._error_zyzt3_133 {\n margin-top: var(--wb-len-6);\n}\n\n._bridgeLines_zyzt3_296 {\n margin: 0;\n padding-left: var(--wb-len-18);\n display: flex;\n flex-direction: column;\n gap: var(--wb-len-8);\n font-size: var(--dsw-font-xxs-12-font-size);\n line-height: var(--wb-line-19);\n color: var(--dsw-alias-label-secondary);\n}\n\n._bridgeLine_zyzt3_296 a {\n display: block;\n margin-top: var(--wb-len-4);\n width: fit-content;\n}\n\n._link_zyzt3_313 {\n color: var(--dsw-alias-label-primary);\n text-decoration: none;\n}\n\n._link_zyzt3_313::after {\n content: '↗';\n margin-left: var(--wb-len-2);\n}\n\n._link_zyzt3_313:hover {\n text-decoration: underline;\n}\n\n._loading_zyzt3_327 {\n flex: none;\n color: var(--dsw-alias-label-tertiary);\n}\n\n._loading_zyzt3_327[hidden] {\n display: none;\n}\n\n._loadingMotion_zyzt3_336 {\n transform-origin: center;\n animation: _wb-spin_zyzt3_1 var(--wb-dur-1-5) linear infinite;\n}\n\n._loadingTrack_zyzt3_341,\n._loadingArc_zyzt3_342 {\n fill: none;\n stroke: currentColor;\n stroke-width: 2;\n stroke-linecap: round;\n}\n\n._loadingTrack_zyzt3_341 {\n opacity: 0.25;\n}\n\n._loadingArc_zyzt3_342 {\n stroke-dasharray: 12 150;\n animation: _wb-dash_zyzt3_1 var(--wb-dur-1-5) ease-in-out infinite;\n}\n\n@keyframes _wb-spin_zyzt3_1 {\n from {\n transform: rotate(0deg);\n }\n to {\n transform: rotate(360deg);\n }\n}\n\n@keyframes _wb-dash_zyzt3_1 {\n 0% {\n stroke-dasharray: 12 150;\n stroke-dashoffset: 0;\n }\n 50% {\n stroke-dasharray: 24 150;\n stroke-dashoffset: -6;\n }\n to {\n stroke-dasharray: 12 150;\n stroke-dashoffset: 0;\n }\n}\n\n@media (prefers-reduced-motion: reduce) {\n ._loadingMotion_zyzt3_336,\n ._loadingArc_zyzt3_342 {\n animation: none;\n }\n}\n._changelog_1q6pj_1 {\n display: flex;\n flex-direction: column;\n gap: var(--wb-len-6);\n margin-top: var(--wb-len-10);\n min-width: 0;\n}\n\n._changelogTitle_1q6pj_9 {\n margin: 0;\n font: var(--dsw-font-s-14);\n color: var(--dsw-alias-label-secondary);\n}\n\n._changelogMissing_1q6pj_15 {\n margin: 0;\n font: var(--dsw-font-s-14);\n color: var(--dsw-alias-label-primary);\n}\n\n._changelogBody_1q6pj_21 {\n max-height: var(--wb-len-320);\n overflow: auto;\n padding: var(--wb-len-10);\n border: 0.5px solid var(--dsw-alias-border-l3);\n border-radius: var(--dsw-radius-lg);\n}\n._group_1hxis_1 {\n display: inline-flex;\n align-items: center;\n gap: var(--wb-len-2);\n}\n\n._button_1hxis_7 {\n flex: none;\n width: var(--wb-len-28);\n height: var(--wb-len-28);\n padding: 0;\n color: var(--dsw-alias-label-secondary);\n}\n\n._button_1hxis_7:hover:not(:disabled) {\n color: var(--dsw-alias-label-primary);\n}\n\n._active_1hxis_19 {\n background: var(--dsw-alias-interactive-bg-hover);\n}\n\n._icon_1hxis_23 {\n display: flex;\n align-items: center;\n justify-content: center;\n}\n\n._icon_1hxis_23 svg {\n display: block;\n width: var(--wb-len-15);\n height: var(--wb-len-15);\n}\n\n._mirror_1hxis_35 {\n transform: scaleX(-1);\n}\n._stripTabs_1dqp4_1 {\n display: flex;\n align-items: center;\n gap: var(--wb-len-4);\n min-width: 0;\n overflow: hidden;\n}\n\n._tab_1dqp4_9 {\n display: inline-flex;\n align-items: center;\n gap: var(--wb-len-6);\n flex: none;\n height: var(--wb-len-28);\n padding: 0 var(--wb-len-10);\n border: 0;\n border-radius: var(--dsw-radius-sm);\n background: none;\n font: inherit;\n font-size: var(--dsw-font-xs-13-font-size);\n line-height: var(--wb-line-16);\n max-width: 100%;\n}\n\n._tabActive_1dqp4_25 {\n color: var(--dsw-alias-label-primary);\n}\n\n._tabQuiet_1dqp4_29 {\n color: var(--dsw-alias-label-tertiary);\n cursor: pointer;\n}\n\n._tabQuiet_1dqp4_29:hover {\n color: var(--dsw-alias-label-primary);\n background: var(--dsw-alias-interactive-bg-hover);\n}\n\n._tabTitle_1dqp4_39 {\n display: inline-flex;\n align-items: center;\n gap: var(--wb-len-6);\n min-width: 0;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n\n._sep_1dqp4_49 {\n flex: none;\n color: var(--dsw-alias-label-dimmed);\n}\n._actions_smeq7_1 {\n display: flex;\n flex-wrap: wrap;\n justify-content: center;\n gap: var(--wb-len-8);\n max-width: 100%;\n}\n\n._action_smeq7_1 {\n flex: none;\n white-space: nowrap;\n}\n\n@container (max-width: 340px) {\n ._actions_smeq7_1 {\n flex-direction: column;\n width: var(--wb-len-220);\n max-width: 100%;\n }\n\n ._action_smeq7_1 {\n width: 100%;\n }\n}\n._trigger_15ptp_1 {\n display: flex;\n align-items: center;\n}\n\n._pop_15ptp_6 {\n position: absolute;\n top: calc(var(--wb-len-38) + var(--wb-len-8));\n right: var(--wb-len-6);\n z-index: var(--wb-z-30);\n width: min(var(--wb-len-360), calc(100% - var(--wb-len-12)));\n max-width: calc(100vw - var(--wb-len-48));\n border: 0.5px solid var(--dsw-alias-border-l2);\n border-radius: var(--wb-radius-14);\n background: var(--dsw-alias-bg-layer-2);\n box-shadow: var(--dsw-shadow-lv3);\n overflow: hidden;\n}\n\n._head_15ptp_20 {\n display: flex;\n align-items: center;\n gap: var(--wb-len-8);\n padding: var(--wb-len-10) var(--wb-len-12) var(--wb-len-9) var(--wb-len-14);\n border-bottom: 0.5px solid var(--dsw-alias-border-l2);\n}\n\n._title_15ptp_28 {\n flex: 1;\n font-size: var(--dsw-font-xs-13-font-size);\n line-height: var(--wb-line-20);\n font-weight: 600;\n color: var(--dsw-alias-label-primary);\n}\n\n._rowControls_15ptp_36 {\n flex: none;\n display: inline-flex;\n align-items: center;\n gap: var(--wb-len-8);\n}\n\n._reset_15ptp_43 {\n flex: none;\n padding: var(--wb-len-3) var(--wb-len-8);\n border: none;\n border-radius: var(--wb-radius-6);\n background: transparent;\n font-size: var(--dsw-font-xxxs-11-font-size);\n line-height: var(--wb-line-16);\n color: var(--dsw-alias-label-tertiary);\n cursor: pointer;\n}\n\n._reset_15ptp_43:hover:not(:disabled) {\n background: var(--dsw-alias-interactive-bg-hover);\n color: var(--dsw-alias-label-primary);\n}\n\n._reset_15ptp_43:disabled {\n cursor: default;\n opacity: 0.5;\n}\n\n._list_15ptp_65 {\n list-style: none;\n margin: 0;\n padding: var(--wb-len-6);\n display: flex;\n flex-direction: column;\n gap: var(--wb-len-2);\n}\n\n._row_15ptp_36 {\n position: relative;\n display: grid;\n grid-template-columns: 12px minmax(0, 1fr) auto;\n align-items: center;\n gap: var(--wb-len-8);\n padding: var(--wb-len-7) var(--wb-len-8);\n border-radius: var(--dsw-radius-sm);\n cursor: default;\n}\n\n._rowDragging_15ptp_85 {\n cursor: grabbing;\n}\n\n._rowBlocked_15ptp_89 {\n cursor: not-allowed;\n}\n\n._listDragging_15ptp_93 ._rowControls_15ptp_36 {\n pointer-events: none;\n}\n\n._row_15ptp_36:hover {\n background: var(--dsw-alias-interactive-bg-hover);\n}\n\n._rowOff_15ptp_101 {\n opacity: 0.55;\n}\n\n._rowOff_15ptp_101:hover {\n opacity: 1;\n}\n\n._rowOver_15ptp_109::before {\n content: '';\n position: absolute;\n top: var(--wb-len-neg-3);\n left: var(--wb-len-8);\n right: var(--wb-len-8);\n height: var(--wb-len-2);\n background: var(--dsw-alias-brand-primary);\n}\n\n._ghost_15ptp_119 {\n position: fixed;\n z-index: var(--wb-z-40);\n pointer-events: none;\n padding: var(--wb-len-4) var(--wb-len-10);\n border: 0.5px solid var(--dsw-alias-border-l3);\n border-radius: var(--dsw-radius-sm);\n background: var(--dsw-alias-bg-layer-1);\n box-shadow: var(--wb-static-shadow-ghost);\n font-size: var(--dsw-font-xs-13-font-size);\n line-height: var(--wb-line-18);\n color: var(--dsw-alias-label-primary);\n white-space: nowrap;\n}\n\n._grip_15ptp_134 {\n font-size: var(--dsw-font-xxxs-11-font-size);\n line-height: var(--wb-line-16);\n text-align: center;\n color: var(--dsw-alias-label-tertiary);\n user-select: none;\n cursor: grab;\n touch-action: none;\n}\n\n._gripDragging_15ptp_144 {\n cursor: grabbing;\n}\n\n._gripBlocked_15ptp_148 {\n cursor: not-allowed;\n}\n\n._label_15ptp_152 {\n display: flex;\n align-items: center;\n gap: var(--wb-len-6);\n min-width: 0;\n}\n\n._name_15ptp_159 {\n min-width: 0;\n flex: 0 1 auto;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n font-size: var(--dsw-font-xs-13-font-size);\n line-height: var(--wb-line-18);\n color: var(--dsw-alias-label-primary);\n}\n\n._error_15ptp_170 {\n margin: 0;\n padding: 0 var(--wb-len-14) var(--wb-len-10);\n font-size: var(--dsw-font-xxxs-11-font-size);\n line-height: var(--wb-line-16);\n color: var(--dsw-alias-state-error-primary);\n}\n\n._dep_15ptp_178 {\n flex: none;\n font-size: var(--dsw-font-xxxs-11-font-size);\n line-height: var(--wb-line-16);\n color: var(--dsw-alias-label-tertiary);\n white-space: nowrap;\n}\n\n._group_15ptp_186 {\n padding-top: var(--wb-len-6);\n border-top: 0.5px solid var(--dsw-alias-border-l2);\n}\n\n._groupTitle_15ptp_191 {\n margin: 0;\n padding: var(--wb-len-2) var(--wb-len-8) 0 var(--wb-len-14);\n font-size: var(--dsw-font-xxxs-11-font-size);\n line-height: var(--wb-line-16);\n font-weight: 400;\n color: var(--dsw-alias-label-tertiary);\n}\n._panel_1whum_1 {\n position: absolute;\n top: 0;\n right: 0;\n bottom: 0;\n z-index: var(--wb-z-10);\n visibility: hidden;\n}\n\n._panel_1whum_1[data-fullscreen] {\n z-index: var(--wb-z-40);\n}\n\n._panel_1whum_1[data-open] {\n visibility: visible;\n}\n\n._columns_1whum_18 {\n display: block;\n column-gap: var(--wb-len-12);\n}\n\n._cell_1whum_23 {\n display: flow-root;\n min-width: 0;\n break-inside: avoid;\n margin-bottom: var(--wb-len-12);\n}\n._root_1cmz0_1 {\n position: relative;\n flex: none;\n margin: 0 var(--wb-len-2) var(--wb-len-4);\n}\n\n._rail_1cmz0_7 {\n margin: 0 0 var(--wb-len-4);\n}\n\n._glyphBox_1cmz0_11 {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n width: 100%;\n height: 100%;\n}\n\n._glyph_1cmz0_11 {\n position: relative;\n flex: none;\n display: inline-flex;\n align-items: center;\n justify-content: center;\n width: var(--wb-len-16);\n height: var(--wb-len-20);\n color: var(--dsw-alias-label-tertiary);\n}\n\n._glyphActive_1cmz0_30 {\n color: var(--dsw-alias-state-business-primary);\n}\n\n._triggerName_1cmz0_34 {\n flex: 1;\n min-width: 0;\n display: flex;\n align-items: baseline;\n gap: var(--wb-len-6);\n font-size: var(--wb-font-row);\n line-height: var(--wb-line-20);\n overflow: hidden;\n}\n\n._dir_1cmz0_45 {\n flex: 0 1 auto;\n min-width: 0;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n\n._name_1cmz0_53 {\n flex: 0 1 auto;\n max-width: 50%;\n font-size: var(--dsw-font-xxs-12-font-size);\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n\n._triggerName_1cmz0_34 ._name_1cmz0_53 {\n color: var(--dsw-alias-label-tertiary);\n}\n\n._row_1cmz0_66 {\n display: flex;\n align-items: center;\n gap: var(--wb-len-6);\n width: 100%;\n min-width: 0;\n}\n\n._trailing_1cmz0_74 {\n flex: none;\n display: inline-flex;\n align-items: center;\n justify-content: center;\n width: var(--wb-len-20);\n height: var(--wb-len-20);\n margin-inline-start: auto;\n}\n\n._trailing_1cmz0_74 ._rowAction_1cmz0_84 {\n width: var(--wb-len-20);\n min-width: var(--wb-len-20);\n height: var(--wb-len-20);\n min-height: var(--wb-len-20);\n padding: 0;\n border-radius: var(--dsw-radius-sm);\n}\n\n._row_1cmz0_66 ._name_1cmz0_53 {\n color: var(--dsw-alias-label-tertiary);\n}\n\n._current_1cmz0_97 {\n flex: none;\n display: inline-flex;\n align-items: center;\n color: var(--dsw-alias-label-primary);\n}\n._dot_sosf1_1 {\n flex: none;\n display: inline-flex;\n align-items: center;\n justify-content: center;\n}\n\n._overlay_sosf1_8 {\n position: absolute;\n inset-block-start: var(--wb-len-neg-3);\n inset-inline-end: var(--wb-len-neg-3);\n}\n._tag_g9dg8_1 {\n flex: none;\n margin-inline-start: auto;\n}\n._dialog_1vye5_1 {\n width: min(var(--wb-len-420), 100%);\n}\n\n._stack_1vye5_5 {\n display: flex;\n flex-direction: column;\n gap: var(--wb-len-8);\n min-width: 0;\n}\n\n._input_1vye5_12 {\n width: 100%;\n height: var(--wb-len-40);\n padding: 0 var(--wb-len-12);\n}\n\n._meta_1vye5_18 {\n display: flex;\n align-items: center;\n justify-content: space-between;\n gap: var(--wb-len-12);\n min-width: 0;\n}\n._dot_14w1n_1 {\n display: inline-flex;\n align-items: center;\n}\n\n._hover_14w1n_6 {\n display: inline-flex;\n align-items: center;\n gap: var(--wb-len-6);\n font-size: var(--dsw-font-xxs-12-font-size);\n line-height: var(--wb-line-18);\n color: var(--dsw-alias-label-secondary);\n}\n._blocker_1oaj0_1 {\n display: flex;\n flex-direction: column;\n align-items: center;\n gap: var(--wb-len-6);\n padding: var(--wb-len-20) var(--wb-len-16);\n text-align: center;\n}\n\n._icon_1oaj0_10 {\n display: flex;\n color: var(--dsw-alias-label-tertiary);\n}\n\n._title_1oaj0_15 {\n margin: var(--wb-len-2) 0 0;\n font-size: var(--dsw-font-s-14-font-size);\n line-height: var(--wb-line-22);\n font-weight: 600;\n color: var(--dsw-alias-label-primary);\n}\n\n._hint_1oaj0_23 {\n margin: 0;\n max-width: var(--wb-len-42em);\n font-size: var(--dsw-font-xxs-12-font-size);\n line-height: var(--wb-line-18);\n color: var(--dsw-alias-label-tertiary);\n text-wrap: pretty;\n}\n\n._blocker_1oaj0_1._blockerInline_1oaj0_32 {\n align-items: flex-start;\n gap: var(--wb-len-6);\n padding: var(--wb-len-4) 0 var(--wb-len-2);\n text-align: left;\n}\n\n._blocker_1oaj0_1._blockerInline_1oaj0_32 ._title_1oaj0_15 {\n font-size: var(--dsw-font-xs-13-font-size);\n line-height: var(--wb-line-20);\n}\n\n._blocker_1oaj0_1._blockerInline_1oaj0_32 ._hint_1oaj0_23 {\n max-width: 100%;\n}\n\n._blocker_1oaj0_1._blockerInline_1oaj0_32 ._actions_1oaj0_48 {\n margin-top: var(--wb-len-8);\n}\n\n._blocker_1oaj0_1._blockerInline_1oaj0_32 ._raw_1oaj0_52 {\n margin-top: var(--wb-len-4);\n max-width: 100%;\n}\n\n._actions_1oaj0_48 {\n display: flex;\n align-items: center;\n gap: var(--wb-len-10);\n margin-top: var(--wb-len-6);\n}\n\n._raw_1oaj0_52 {\n margin-top: var(--wb-len-10);\n width: 100%;\n max-width: var(--wb-len-360);\n text-align: left;\n}\n\n._notice_1oaj0_71 {\n display: grid;\n grid-template-columns: minmax(0, 1fr) auto;\n align-items: start;\n column-gap: var(--wb-len-10);\n margin: 0 0 var(--wb-len-10);\n padding: var(--wb-len-10) var(--wb-len-12);\n border: 0.5px solid var(--dsw-alias-border-l2);\n border-left: 2px solid var(--dsw-alias-border-l3);\n border-radius: var(--dsw-radius-sm);\n background: var(--dsw-alias-bg-layer-1);\n}\n\n._notice_1oaj0_71._noticeFlat_1oaj0_84 {\n margin: 0;\n padding: 0;\n border: 0;\n background: transparent;\n}\n\n._noticeText_1oaj0_91 {\n display: flex;\n flex-direction: column;\n gap: var(--wb-len-3);\n min-width: 0;\n}\n\n._noticeTitle_1oaj0_98 {\n font-size: var(--wb-font-12-5);\n line-height: var(--wb-line-18);\n font-weight: 600;\n color: var(--dsw-alias-label-primary);\n}\n\n._noticeHint_1oaj0_105 {\n font-size: var(--wb-font-11-5);\n line-height: var(--wb-line-17);\n color: var(--dsw-alias-label-tertiary);\n overflow-wrap: anywhere;\n}\n\n._noticeActions_1oaj0_112 {\n display: flex;\n align-items: center;\n gap: var(--wb-len-6);\n margin-top: var(--wb-len-neg-2);\n}\n\n._failure_1oaj0_119 {\n margin: var(--wb-len-8) 0 0;\n font-size: var(--wb-font-11-5);\n line-height: var(--wb-line-17);\n color: var(--dsw-alias-state-error-primary);\n overflow-wrap: anywhere;\n}\n\n._failureDetail_1oaj0_127 {\n display: block;\n margin-top: var(--wb-len-2);\n color: var(--dsw-alias-label-tertiary);\n white-space: pre-wrap;\n}\n\n._inlineAction_1oaj0_134 {\n padding: 0;\n border: none;\n background: transparent;\n cursor: pointer;\n}\n\n._inlineAction_1oaj0_134:disabled {\n opacity: 0.6;\n cursor: default;\n}\n\n._rawText_1oaj0_146 {\n margin: var(--wb-len-6) 0 0;\n max-width: 100%;\n}\n/*$vite$:1*/";
16428
+ var COMPONENT_CSS_MARKER = ".wb-activityBlock {\n display: flex;\n flex-direction: column;\n gap: var(--wb-len-6);\n padding-top: var(--wb-len-10);\n border-top: 0.5px solid var(--dsw-alias-border-l2);\n}\n\n.wb-activityBlock:first-child {\n padding-top: 0;\n border-top: none;\n}\n\n.wb-activityBlockHead {\n display: flex;\n align-items: center;\n justify-content: space-between;\n gap: var(--wb-len-8);\n}\n\n.wb-activityLine {\n display: flex;\n align-items: center;\n gap: var(--wb-len-6);\n margin: 0;\n font-size: var(--dsw-font-xxs-12-font-size);\n line-height: var(--wb-line-18);\n color: var(--dsw-alias-label-secondary);\n}\n\n.wb-activityLineText {\n flex: none;\n min-width: 0;\n font-size: var(--dsw-font-xxs-12-font-size);\n line-height: var(--wb-line-18);\n overflow-wrap: anywhere;\n white-space: pre-wrap;\n max-height: var(--wb-len-72);\n overflow-y: auto;\n}\n\n.wb-activityLineAt {\n flex: none;\n margin-left: auto;\n font-size: var(--wb-font-10);\n line-height: var(--wb-line-16);\n font-variant-numeric: tabular-nums;\n color: var(--dsw-alias-label-tertiary);\n}\n\n.wb-activityLine > .wb-activityLineAt,\n.wb-activityLine > .wb-activityLineActions {\n margin-left: auto;\n}\n\n.wb-activityLine > .wb-activityLineAt + .wb-activityLineActions {\n margin-left: 0;\n}\n\n.wb-activityLineActions {\n flex: none;\n display: inline-flex;\n align-items: center;\n gap: var(--wb-len-6);\n}\n\n.wb-activityActionFailed {\n color: var(--dsw-alias-state-error-primary);\n}\n.wb-note {\n margin: 0;\n font-size: var(--dsw-font-xxs-12-font-size);\n line-height: var(--wb-line-18);\n color: var(--dsw-alias-label-tertiary);\n}\n.wb-problem {\n margin: 0;\n font-size: var(--dsw-font-xxs-12-font-size);\n line-height: var(--wb-line-18);\n color: var(--dsw-alias-state-error-primary);\n overflow-wrap: anywhere;\n}\n.wb-approvalCommand {\n max-width: 100%;\n}\n.wb-approvalPlan {\n display: flex;\n flex-direction: column;\n gap: var(--wb-len-6);\n}\n.wb-approvalHint {\n margin: 0;\n font-size: var(--dsw-font-xxs-12-font-size);\n line-height: var(--wb-line-18);\n color: var(--dsw-alias-label-secondary);\n}\n.wb-approvalRows {\n display: grid;\n grid-template-columns: minmax(var(--wb-len-56), auto) minmax(0, 1fr);\n column-gap: var(--wb-len-8);\n row-gap: var(--wb-len-2);\n align-items: baseline;\n margin: 0;\n}\n.wb-approvalRow {\n display: contents;\n}\n.wb-approvalLabel {\n font-size: var(--dsw-font-xxs-12-font-size);\n line-height: var(--wb-line-18);\n color: var(--dsw-alias-label-tertiary);\n overflow-wrap: anywhere;\n}\n.wb-approvalValue {\n margin: 0;\n font-size: var(--dsw-font-xs-13-font-size);\n line-height: var(--wb-line-18);\n font-weight: 500;\n color: var(--dsw-alias-label-primary);\n overflow-wrap: anywhere;\n}\n.wb-approvalWarn {\n color: var(--dsw-alias-label-secondary);\n}\n.wb-cardHead {\n display: flex;\n align-items: center;\n gap: var(--wb-len-6);\n flex: none;\n padding: var(--wb-len-8) var(--wb-len-10) var(--wb-len-8) var(--wb-card-gutter);\n border-bottom: 0.5px solid var(--dsw-alias-border-l2);\n background: var(--dsw-alias-bg-layer-2);\n}\n\n.wb-cardTitle {\n margin: 0;\n font-size: var(--dsw-font-xxs-12-font-size);\n line-height: var(--wb-line-18);\n font-weight: 600;\n color: var(--dsw-alias-label-secondary);\n}\n\n.wb-cardMeta {\n font-size: var(--dsw-font-xxxs-11-font-size);\n line-height: var(--wb-line-16);\n color: var(--dsw-alias-label-tertiary);\n min-width: 0;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n\n.wb-cardMeta::before {\n content: '\\00b7';\n margin-right: var(--wb-len-6);\n color: var(--dsw-alias-label-tertiary);\n}\n\n.wb-cardOpen {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n box-sizing: border-box;\n margin-left: auto;\n flex: none;\n width: var(--wb-len-22);\n height: var(--wb-len-22);\n padding: var(--wb-len-4);\n border-radius: var(--wb-radius-6);\n color: var(--dsw-alias-label-tertiary);\n}\n\n.wb-cardOpen ~ .wb-cardRefresh {\n margin-left: 0;\n}\n\n.wb-cardOpen:hover {\n color: var(--dsw-alias-label-primary);\n}\n\n.wb-cardRefresh {\n margin-left: auto;\n flex: none;\n width: var(--wb-len-22);\n height: var(--wb-len-22);\n padding: var(--wb-len-4);\n border-radius: var(--wb-radius-6);\n color: var(--dsw-alias-label-tertiary);\n}\n\n.wb-cardRefresh:hover:not(:disabled) {\n color: var(--dsw-alias-label-primary);\n}\n\n.wb-cardRefresh:disabled {\n cursor: default;\n opacity: 1;\n}\n\n.wb-cardGear {\n flex: none;\n width: var(--wb-len-22);\n height: var(--wb-len-22);\n padding: var(--wb-len-3);\n border-radius: var(--wb-radius-6);\n color: var(--dsw-alias-label-tertiary);\n}\n\n.wb-cardGear:hover:not(:disabled) {\n color: var(--dsw-alias-label-primary);\n}\n.wb-card {\n border: 0.5px solid var(--dsw-alias-border-l3);\n border-radius: var(--dsw-radius-xl);\n background: var(--dsw-alias-bg-layer-1);\n overflow: hidden;\n display: flex;\n flex-direction: column;\n flex: none;\n}\n.wb-cardBody {\n display: flex;\n flex-direction: column;\n gap: var(--wb-len-12);\n padding: var(--wb-len-12) var(--wb-card-gutter);\n font-size: var(--dsw-font-xxs-12-font-size);\n}\n.wb-cardBleed {\n margin-inline: calc(-1 * var(--wb-card-gutter));\n}\n._anchor_yq4s2_1 {\n display: contents;\n}\n.wb-spinner {\n display: inline-flex;\n align-items: center;\n flex: none;\n}\n.wb-choiceMenu {\n display: flex;\n flex-direction: column;\n gap: var(--wb-len-2);\n background: transparent;\n}\n\n.wb-choiceMenu[data-variant='boxed'] {\n padding: var(--wb-len-4);\n border: 0.5px solid var(--dsw-alias-border-l3);\n border-radius: var(--dsw-radius-md);\n}\n\n.wb-choiceOption {\n position: relative;\n display: flex;\n align-items: center;\n gap: var(--wb-len-6);\n min-height: var(--wb-len-28);\n padding: var(--wb-len-4) var(--wb-len-8);\n border-radius: var(--dsw-radius-md);\n cursor: pointer;\n font-size: var(--dsw-font-xs-13-font-size);\n line-height: var(--wb-line-20);\n color: var(--dsw-alias-label-primary);\n}\n\n.wb-choiceOptionOn {\n background: var(--dsw-alias-interactive-bg-hover);\n}\n\n.wb-checkbox {\n position: absolute;\n width: var(--wb-len-16);\n height: var(--wb-len-16);\n margin: 0;\n opacity: 0;\n pointer-events: none;\n}\n\n.wb-checkboxBox {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n box-sizing: border-box;\n flex: none;\n width: var(--wb-len-16);\n height: var(--wb-len-16);\n border: 1px solid var(--dsw-alias-border-l3);\n border-radius: var(--dsw-radius-xs);\n corner-shape: round;\n color: var(--dsw-alias-label-primary-foreground);\n transition:\n background-color var(--wb-dur-0-12) ease, border-color var(--wb-dur-0-12) ease;\n}\n\n.wb-choiceOption:hover .wb-checkboxBox {\n border-color: var(--dsw-alias-label-tertiary);\n}\n\n.wb-checkbox:checked + .wb-checkboxBox {\n border-color: var(--dsw-alias-brand-primary);\n background: var(--dsw-alias-brand-primary);\n}\n\n.wb-checkbox:disabled + .wb-checkboxBox {\n cursor: default;\n}\n\n.wb-checkbox:focus-visible + .wb-checkboxBox {\n outline: var(--dsw-focus-ring-width, var(--wb-len-2)) solid\n var(--dsw-focus-ring-color, var(--dsw-alias-state-business-primary));\n outline-offset: 2px;\n}\n\n.wb-choiceOption:hover {\n background: var(--dsw-alias-interactive-bg-hover);\n}\n\n.wb-choiceOption:has(:disabled) {\n cursor: default;\n opacity: 0.5;\n}\n\n.wb-choiceOption:has(:disabled),\n.wb-choiceOption:has(:disabled):hover {\n background: transparent;\n}\n\n.wb-choiceLabel {\n flex: 1;\n min-width: 0;\n display: flex;\n flex-direction: column;\n overflow: hidden;\n}\n\n.wb-choiceLabelText {\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n\n.wb-choiceLabel:has(.wb-choiceDescription) .wb-choiceLabelText {\n overflow: visible;\n white-space: normal;\n overflow-wrap: anywhere;\n}\n\n.wb-choiceDescription {\n font-size: var(--dsw-font-xxs-12-font-size);\n line-height: var(--wb-line-18);\n color: var(--dsw-alias-label-tertiary);\n overflow-wrap: anywhere;\n}\n\n.wb-choiceLoading {\n display: flex;\n align-items: center;\n gap: var(--wb-len-6);\n min-height: var(--wb-len-28);\n padding: var(--wb-len-4) var(--wb-len-8);\n font-size: var(--dsw-font-xs-13-font-size);\n line-height: var(--wb-line-20);\n color: var(--dsw-alias-label-secondary);\n}\n\n.wb-choiceLoadingText {\n min-width: 0;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n\n.wb-choiceEmpty {\n display: flex;\n align-items: center;\n min-height: var(--wb-len-28);\n padding: var(--wb-len-4) var(--wb-len-8);\n font-size: var(--dsw-font-xs-13-font-size);\n line-height: var(--wb-line-20);\n color: var(--dsw-alias-label-tertiary);\n}\n\n.wb-radio {\n appearance: none;\n -webkit-appearance: none;\n flex: none;\n box-sizing: border-box;\n width: var(--wb-len-12);\n height: var(--wb-len-12);\n margin: 0;\n border: 1px solid var(--dsw-alias-border-l3);\n border-radius: 50%;\n corner-shape: round;\n background-color: transparent;\n cursor: pointer;\n transition:\n background-color var(--wb-dur-0-12) ease, border-color var(--wb-dur-0-12) ease;\n}\n\n.wb-radio:not(:checked):hover {\n border-color: var(--dsw-alias-label-tertiary);\n}\n\n.wb-radio:checked {\n border-color: var(--dsw-alias-brand-primary);\n background-image: radial-gradient(\n circle at center,\n var(--dsw-alias-brand-primary) 0 3px,\n transparent 3px\n );\n}\n\n.wb-radio:disabled {\n cursor: default;\n}\n\n.wb-radio:focus-visible {\n outline: var(--dsw-focus-ring-width, var(--wb-len-2)) solid var(--dsw-focus-ring-color, var(--dsw-alias-state-business-primary));\n outline-offset: 2px;\n}\n.wb-formActions {\n display: flex;\n flex-wrap: wrap;\n align-items: center;\n justify-content: flex-end;\n gap: var(--wb-len-8);\n}\n\n.wb-formActionDanger {\n color: var(--dsw-alias-state-error-primary);\n border-color: color-mix(in srgb, var(--dsw-alias-state-error-primary) 30%, transparent);\n --dsw-alias-interactive-bg-hover: color-mix(in srgb, var(--dsw-alias-state-error-primary) 8%, transparent);\n}\n.wb-rows {\n display: grid;\n grid-template-columns: minmax(72px, max-content) minmax(0, 1fr);\n column-gap: var(--wb-len-8);\n}\n.wb-rows > :not(.wb-row) {\n grid-column: 1 / -1;\n}\n.wb-row {\n display: grid;\n grid-column: 1 / -1;\n grid-template-columns: minmax(72px, max-content) minmax(0, 1fr);\n align-items: baseline;\n gap: var(--wb-len-8);\n padding: var(--wb-len-4) 0;\n}\n.wb-row + .wb-row {\n border-top: 0.5px solid var(--dsw-alias-border-l2);\n}\n.wb-rowKey {\n white-space: nowrap;\n font-size: var(--dsw-font-xxxs-11-font-size);\n line-height: var(--wb-line-16);\n color: var(--dsw-alias-label-tertiary);\n}\n.wb-rowValue {\n min-width: 0;\n font-size: var(--dsw-font-xxs-12-font-size);\n line-height: var(--wb-line-18);\n color: var(--dsw-alias-label-primary);\n overflow-wrap: anywhere;\n}\n\n.wb-rows > .wb-row {\n grid-template-columns: subgrid;\n}\n\n@supports not (grid-template-columns: subgrid) {\n .wb-rows > .wb-row {\n grid-template-columns: minmax(72px, max-content) minmax(0, 1fr);\n }\n}\n.wb-confirmBar {\n display: flex;\n flex-direction: column;\n gap: var(--wb-len-8);\n width: 100%;\n box-sizing: border-box;\n padding: var(--wb-len-10) var(--wb-len-12);\n border: 0.5px solid var(--dsw-alias-border-l3);\n border-radius: var(--dsw-radius-md);\n background: var(--dsw-alias-bg-layer-1);\n}\n.wb-confirmBarTitle {\n margin: 0;\n font-size: var(--dsw-font-xxs-12-font-size);\n font-weight: 600;\n line-height: var(--wb-line-18);\n color: var(--dsw-alias-label-primary);\n overflow-wrap: anywhere;\n}\n.wb-confirmBarHint {\n margin: 0;\n font-size: var(--dsw-font-xxxs-11-font-size);\n line-height: var(--wb-line-16);\n color: var(--dsw-alias-label-secondary);\n overflow-wrap: anywhere;\n}\n.wb-field {\n display: flex;\n flex-direction: column;\n gap: var(--wb-len-6);\n font-size: var(--dsw-font-xs-13-font-size);\n}\n\n.wb-fieldLabel {\n color: var(--dsw-alias-label-secondary);\n}\n\n.wb-fieldHint {\n font-size: var(--dsw-font-xxs-12-font-size);\n line-height: var(--wb-line-18);\n color: var(--dsw-alias-label-tertiary);\n}\n\n.wb-field:has(:disabled) .wb-fieldLabel {\n opacity: 0.4;\n}\n.wb-formRows {\n display: grid;\n grid-template-columns: minmax(72px, max-content) minmax(0, 1fr);\n column-gap: var(--wb-len-8);\n row-gap: var(--wb-len-12);\n}\n\n.wb-formRows > :not(.wb-formRow) {\n grid-column: 1 / -1;\n}\n\n.wb-formRow {\n display: grid;\n grid-column: 1 / -1;\n grid-template-columns: minmax(72px, max-content) minmax(0, 1fr);\n align-items: center;\n column-gap: var(--wb-len-8);\n row-gap: var(--wb-len-8);\n}\n\n.wb-formRow[data-layout='stacked'] {\n grid-template-columns: minmax(0, 1fr);\n align-items: stretch;\n gap: var(--wb-len-6);\n}\n\n.wb-formRows > .wb-formRow[data-layout='stacked'] {\n grid-template-columns: minmax(0, 1fr);\n}\n\n.wb-formLabel {\n justify-self: start;\n min-width: 0;\n font-size: var(--dsw-font-xs-13-font-size);\n color: var(--dsw-alias-label-secondary);\n overflow-wrap: anywhere;\n white-space: nowrap;\n}\n\n.wb-formRow[data-layout='stacked'] .wb-formLabel {\n white-space: normal;\n}\n\n.wb-formRow[data-layout='stacked'] .wb-formHint,\n.wb-formRow[data-layout='stacked'] .wb-formProblem {\n grid-column: 1 / -1;\n}\n\n.wb-formControl {\n display: flex;\n align-items: center;\n min-width: 0;\n}\n\n.wb-formControl\n > :where(\n .wb-selectAnchor,\n .wb-choiceMenu,\n input:not(\n [type='checkbox'],\n [type='radio'],\n [type='button'],\n [type='submit'],\n [type='reset'],\n [type='image'],\n [type='color'],\n [type='range']\n ),\n select,\n textarea\n ) {\n box-sizing: border-box;\n width: 100%;\n min-width: 0;\n}\n\n.wb-formHint {\n grid-column: 2;\n font-size: var(--dsw-font-xxs-12-font-size);\n line-height: var(--wb-line-18);\n color: var(--dsw-alias-label-tertiary);\n}\n\n.wb-formProblem {\n grid-column: 2;\n font-size: var(--dsw-font-xxs-12-font-size);\n line-height: var(--wb-line-18);\n color: var(--dsw-alias-state-error-primary);\n}\n\n.wb-formRow:has(.wb-formProblem) .wb-formLabel {\n color: var(--dsw-alias-state-error-primary);\n}\n\n.wb-formRow:has(:disabled) .wb-formLabel {\n opacity: 0.4;\n}\n\n.wb-formRows > .wb-formRow {\n grid-template-columns: subgrid;\n}\n\n@supports not (grid-template-columns: subgrid) {\n .wb-formRows > .wb-formRow {\n grid-template-columns: minmax(72px, max-content) minmax(0, 1fr);\n }\n}\n.wb-form {\n display: flex;\n flex-direction: column;\n gap: var(--wb-len-12);\n width: 100%;\n}\n:where(.wb-link) {\n margin-left: var(--wb-len-2);\n display: inline-flex;\n align-items: center;\n gap: var(--wb-len-2);\n font: inherit;\n font-size: var(--dsw-font-xxs-12-font-size);\n line-height: var(--wb-line-18);\n color: var(--dsw-alias-label-primary);\n text-decoration: none;\n white-space: nowrap;\n vertical-align: baseline;\n}\n\n:where(.wb-link:hover) {\n text-decoration: underline;\n}\n\n:where(.wb-link:focus-visible) {\n outline: var(--dsw-focus-ring-width) solid var(--dsw-focus-ring-color, var(--dsw-alias-state-business-primary));\n outline-offset: -2px;\n}\n.wb-longTask {\n padding-top: var(--wb-len-12);\n border-top: 0.5px solid var(--dsw-alias-border-l2);\n display: flex;\n flex-direction: column;\n gap: var(--wb-len-2);\n}\n\n.wb-longTaskHead {\n display: flex;\n align-items: center;\n gap: var(--wb-len-6);\n margin: 0;\n}\n\n.wb-longTaskLink {\n flex: none;\n}\n\n.wb-longTaskHeadline {\n margin: 0;\n font-size: var(--dsw-font-xxs-12-font-size);\n line-height: var(--wb-line-18);\n white-space: pre-wrap;\n overflow-wrap: anywhere;\n color: var(--dsw-alias-label-secondary);\n}\n\n.wb-longTaskProblem {\n margin: 0;\n font-size: var(--dsw-font-xxxs-11-font-size);\n line-height: var(--wb-line-16);\n color: var(--dsw-alias-state-error-primary);\n overflow-wrap: anywhere;\n}\n\n.wb-longTaskDump {\n margin: var(--wb-len-2) 0 0;\n font-size: var(--dsw-font-xxxs-11-font-size);\n color: var(--dsw-alias-label-tertiary);\n}\n\n.wb-longTaskDump pre {\n margin: var(--wb-len-4) 0 0;\n max-height: var(--wb-len-220);\n overflow: auto;\n}\n\n.wb-longTaskStop {\n display: inline-flex;\n flex: none;\n align-items: center;\n align-self: center;\n justify-content: center;\n width: var(--wb-len-20);\n height: var(--wb-len-20);\n padding: 0;\n margin-left: auto;\n border: 0.5px solid var(--dsw-alias-border-l2);\n border-radius: var(--dsw-radius-sm);\n background: var(--dsw-specific-menu);\n color: var(--dsw-alias-label-secondary);\n cursor: pointer;\n}\n\n.wb-longTaskStop:hover:not(:disabled),\n.wb-longTaskStop:focus-visible {\n border-color: color-mix(in srgb, var(--dsw-alias-state-error-primary) 45%, transparent);\n color: var(--dsw-alias-state-error-primary);\n}\n\n.wb-longTaskStop:disabled {\n cursor: default;\n}\n\n.wb-longTaskStopArmed,\n.wb-longTaskStopArmed:hover:not(:disabled),\n.wb-longTaskStopArmed:focus-visible {\n gap: var(--wb-len-4);\n width: auto;\n padding: 0 var(--wb-len-7);\n border-color: color-mix(in srgb, var(--dsw-alias-state-error-primary) 45%, transparent);\n background: color-mix(in srgb, var(--dsw-alias-state-error-primary) 12%, transparent);\n color: var(--dsw-alias-state-error-primary);\n}\n\n.wb-longTaskStopLabel {\n white-space: nowrap;\n font-size: var(--dsw-font-xxxs-11-font-size);\n line-height: var(--wb-line-18);\n}\n\n.wb-longTaskStopWhy {\n margin: 0;\n font-size: var(--dsw-font-xxxs-11-font-size);\n line-height: var(--wb-line-16);\n color: var(--dsw-alias-state-error-primary);\n overflow-wrap: anywhere;\n}\n.wb-centered.wb-centeredCompact {\n flex: none;\n min-height: 0;\n gap: var(--wb-len-8);\n padding: var(--wb-len-20) var(--wb-len-16);\n}\n\n.wb-centered.wb-centeredCompact .wb-centeredHero {\n margin-bottom: var(--wb-len-4);\n}\n\n.wb-skeleton {\n display: flex;\n flex-direction: column;\n}\n\n.wb-skeletonRow {\n display: flex;\n flex-direction: column;\n gap: var(--wb-len-8);\n padding: var(--wb-len-8);\n border-radius: var(--dsw-radius-md);\n}\n\n.wb-skeletonRow + .wb-skeletonRow::before {\n content: '';\n align-self: stretch;\n height: var(--wb-len-0-5);\n margin: 0 var(--wb-len-8) var(--wb-len-neg-0-5);\n background: var(--dsw-alias-border-l2);\n}\n\n.wb-skeletonBar {\n display: block;\n height: var(--wb-len-13);\n border-radius: var(--dsw-radius-xs);\n background: var(--dsw-alias-bg-skeleton);\n animation: wb-skeleton-pulse var(--wb-dur-1-4) var(--ds-ease-in-out) infinite;\n}\n\n.wb-skeletonBarTitle {\n width: 62%;\n}\n\n.wb-skeletonBarMeta {\n width: 32%;\n height: var(--wb-len-10);\n}\n\n.wb-skeletonRow:nth-child(2n) .wb-skeletonBarTitle {\n width: 74%;\n}\n\n.wb-skeletonRow:nth-child(3n) .wb-skeletonBarTitle {\n width: 52%;\n}\n\n@keyframes wb-skeleton-pulse {\n 50% {\n opacity: 0.45;\n }\n}\n\n.wb-centered {\n box-sizing: border-box;\n display: flex;\n flex-direction: column;\n justify-content: center;\n align-items: center;\n gap: var(--wb-len-14);\n flex: 1;\n min-height: var(--wb-len-240);\n padding: 0 var(--wb-len-24) var(--wb-len-24);\n text-align: center;\n}\n\n.wb-centeredHero {\n display: flex;\n margin-bottom: var(--wb-len-16);\n color: var(--dsw-alias-label-dimmed);\n}\n\n.wb-centeredTitle {\n font-size: var(--dsw-font-s-14-font-size);\n line-height: var(--wb-line-22);\n color: var(--dsw-alias-label-primary);\n}\n\n.wb-centeredHint {\n max-width: var(--wb-len-300);\n font-size: var(--dsw-font-xxs-12-font-size);\n line-height: var(--wb-line-18);\n color: var(--dsw-alias-label-tertiary);\n}\n\n.wb-centeredDetail {\n max-width: var(--wb-len-320);\n font-family: var(--ds-font-family-code, monospace);\n font-size: var(--dsw-font-xxxs-11-font-size);\n line-height: var(--wb-line-16);\n color: var(--dsw-alias-label-dimmed);\n word-break: break-all;\n}\n\n.wb-centeredAction {\n display: flex;\n justify-content: center;\n gap: var(--wb-len-8);\n margin-top: var(--wb-len-2);\n}\n@media (prefers-reduced-motion: reduce) {\n .wb-skeletonBar {\n animation: none;\n }}\n.wb-textField {\n box-sizing: border-box;\n border: 0.5px solid var(--dsw-alias-border-l4);\n border-radius: var(--dsw-radius-md);\n background: var(--dsw-alias-bg-layer-3);\n font: var(--dsw-font-xs-13);\n color: var(--dsw-alias-label-primary);\n outline: none;\n}\n\n.wb-textField:focus {\n border-color: var(--dsw-alias-state-business-primary);\n box-shadow: inset 0 0 0 0.5px var(--dsw-alias-state-business-primary);\n}\n\n.wb-textField:disabled {\n cursor: not-allowed;\n opacity: 0.4;\n}\n\n.wb-textField[aria-invalid='true'] {\n border-color: var(--dsw-alias-state-error-primary);\n}\n\n.wb-textField[aria-invalid='true']:focus {\n box-shadow: inset 0 0 0 0.5px var(--dsw-alias-state-error-primary);\n}\n\n:where(.wb-textField) {\n min-height: var(--wb-len-28);\n padding: var(--wb-len-4) var(--wb-len-10);\n}\n:where(.wb-selectTrigger) {\n box-sizing: border-box;\n display: flex;\n align-items: center;\n gap: var(--wb-len-8);\n width: 100%;\n min-height: var(--wb-len-28);\n padding: var(--wb-len-4) var(--wb-len-10);\n border: 0.5px solid var(--dsw-alias-border-l4);\n border-radius: var(--dsw-radius-md);\n background: var(--dsw-alias-bg-layer-3);\n font: var(--dsw-font-xs-13);\n color: var(--dsw-alias-label-primary);\n text-align: left;\n cursor: pointer;\n}\n\n.wb-selectTrigger:focus-visible {\n outline: none;\n border-color: var(--dsw-alias-state-business-primary);\n box-shadow: inset 0 0 0 0.5px var(--dsw-alias-state-business-primary);\n}\n\n.wb-selectTrigger[aria-invalid='true'] {\n border-color: var(--dsw-alias-state-error-primary);\n}\n\n.wb-selectTrigger[aria-invalid='true']:focus-visible {\n box-shadow: inset 0 0 0 0.5px var(--dsw-alias-state-error-primary);\n}\n\n.wb-selectTrigger:disabled {\n cursor: not-allowed;\n opacity: 0.4;\n}\n\n.wb-selectLoading:disabled {\n cursor: default;\n opacity: 1;\n}\n\n.wb-selectGhost {\n gap: var(--wb-gap-xs);\n min-height: 0;\n height: var(--wb-len-34);\n padding: 0 var(--wb-len-8);\n border: none;\n background: transparent;\n font-size: var(--wb-font-row);\n}\n\n.wb-selectGhost:hover:not(:disabled) {\n background: var(--dsw-alias-interactive-bg-hover);\n}\n\n.wb-selectGhost:focus-visible {\n outline: var(--dsw-focus-ring-width) solid\n var(--dsw-focus-ring-color, var(--dsw-alias-state-business-primary));\n outline-offset: -2px;\n border-color: transparent;\n box-shadow: none;\n}\n\n.wb-selectIconOnly {\n width: var(--wb-len-36);\n height: var(--wb-len-36);\n min-height: 0;\n gap: 0;\n padding: 0;\n justify-content: center;\n}\n\n.wb-selectReveal {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n}\n\n.wb-selectIconOnly .wb-selectIcon {\n width: 100%;\n height: 100%;\n}\n\n.wb-selectAnchor {\n display: block;\n width: 100%;\n}\n\n.wb-selectIcon {\n flex: none;\n display: inline-flex;\n align-items: center;\n justify-content: center;\n width: var(--wb-len-16);\n height: var(--wb-len-20);\n color: var(--dsw-alias-label-tertiary);\n}\n\n.wb-selectValue {\n flex: 1;\n min-width: 0;\n display: flex;\n align-items: baseline;\n gap: var(--wb-len-6);\n line-height: var(--wb-line-20);\n overflow: hidden;\n}\n\n.wb-selectPlaceholder {\n color: var(--dsw-alias-label-tertiary);\n}\n\n.wb-selectChevron {\n flex: none;\n display: inline-flex;\n color: var(--dsw-alias-label-caption);\n}\n\n.wb-selectMenu {\n min-width: var(--wb-len-240);\n max-width: var(--wb-len-360);\n max-height: min(var(--wb-len-320), calc(100vh - var(--wb-len-24)));\n}\n\n:where(.wb-selectSearch) {\n box-sizing: border-box;\n display: flex;\n align-items: center;\n gap: var(--wb-len-8);\n width: 100%;\n min-height: var(--wb-len-28);\n padding: var(--wb-len-4) var(--wb-len-10);\n border: 0.5px solid var(--dsw-alias-border-l4);\n border-radius: var(--dsw-radius-md);\n background: var(--dsw-alias-bg-layer-3);\n}\n\n.wb-selectSearch:focus-within {\n border-color: var(--dsw-alias-state-business-primary);\n box-shadow: inset 0 0 0 0.5px var(--dsw-alias-state-business-primary);\n}\n\n.wb-selectSearch.wb-selectGhost {\n gap: var(--wb-gap-xs);\n min-height: 0;\n height: var(--wb-len-34);\n padding: 0 var(--wb-len-8);\n border: 0.5px solid var(--dsw-alias-border-l3);\n background: var(--dsw-alias-bg-layer-2);\n}\n\n.wb-selectSearch.wb-selectGhost:focus-within {\n border-color: var(--dsw-alias-state-business-primary);\n box-shadow: none;\n}\n\n.wb-selectSearchIcon {\n flex: none;\n display: inline-flex;\n color: var(--dsw-alias-label-tertiary);\n}\n\n.wb-textField.wb-selectSearchInput {\n flex: 1;\n min-width: 0;\n min-height: 0;\n padding: 0;\n border: none;\n background: transparent;\n}\n\n.wb-textField.wb-selectSearchInput:focus {\n box-shadow: none;\n}\n\n.wb-selectFallback {\n width: 100%;\n}\n\n.wb-selectHint {\n font-size: var(--dsw-font-xxs-12-font-size);\n line-height: var(--wb-line-18);\n color: var(--dsw-alias-label-tertiary);\n}\nsection.wb-settings {\n display: flex;\n flex-direction: column;\n gap: var(--wb-len-12);\n padding: var(--wb-len-12) var(--wb-len-16);\n border: 0;\n border-radius: var(--dsw-radius-md);\n background: var(--dsw-alias-settings-card-fill);\n}\n.wb-settingsHead {\n display: flex;\n align-items: center;\n gap: var(--wb-len-8);\n}\n.wb-settings .wb-settingsTitle {\n flex: 1 1 auto;\n min-width: 0;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n font-size: var(--dsw-font-s-strong-14-font-size);\n line-height: var(--wb-line-24);\n font-weight: 500;\n color: var(--dsw-alias-label-primary);\n}\n.wb-stack {\n display: flex;\n flex-direction: column;\n gap: var(--wb-len-10);\n min-height: 0;\n}\n.wb-stateBlock {\n display: flex;\n flex-direction: column;\n gap: var(--wb-len-6);\n}\n.wb-stateBlockTitle {\n margin: 0;\n display: flex;\n align-items: center;\n gap: var(--wb-len-6);\n font-size: var(--dsw-font-xxs-12-font-size);\n line-height: var(--wb-line-18);\n color: var(--dsw-alias-label-primary);\n}\n.wb-stateBlockHint {\n margin: 0;\n font-size: var(--dsw-font-xxxs-11-font-size);\n line-height: var(--wb-line-16);\n color: var(--dsw-alias-label-tertiary);\n}\n.wb-stateBlockActions {\n display: flex;\n align-items: center;\n gap: var(--wb-len-8);\n margin-top: var(--wb-len-2);\n}\n.wb-stateBlockResolving {\n display: flex;\n align-items: center;\n gap: var(--wb-len-8);\n margin: 0;\n font-size: var(--dsw-font-xxs-12-font-size);\n line-height: var(--wb-line-18);\n color: var(--dsw-alias-label-secondary);\n}\n._marketList_1vpw3_1 {\n list-style: none;\n margin: 0;\n padding: var(--wb-len-6);\n display: flex;\n flex-direction: column;\n gap: var(--wb-len-2);\n}\n\n._marketRow_1vpw3_10 {\n display: grid;\n grid-template-columns: auto minmax(0, 1fr) auto;\n align-items: center;\n column-gap: var(--wb-len-14);\n row-gap: var(--wb-len-4);\n padding: var(--wb-len-8);\n border-radius: var(--dsw-radius-lg);\n}\n\n._marketIcon_1vpw3_20 {\n flex: none;\n display: inline-flex;\n align-items: center;\n justify-content: center;\n width: var(--wb-len-48);\n height: var(--wb-len-48);\n border: 0.5px solid var(--dsw-alias-border-l3);\n border-radius: var(--dsw-radius-lg);\n color: var(--dsw-alias-label-secondary);\n}\n\n._marketMain_1vpw3_32 {\n display: flex;\n flex-direction: column;\n gap: var(--wb-len-4);\n min-width: 0;\n}\n\n._marketName_1vpw3_39 {\n min-width: 0;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n font: var(--dsw-font-base-strong-16);\n color: var(--dsw-alias-label-primary);\n}\n\n._marketStatus_1vpw3_48 {\n display: inline-flex;\n flex-wrap: wrap;\n align-items: center;\n gap: var(--wb-len-6);\n min-width: 0;\n font: var(--dsw-font-s-14);\n color: var(--dsw-alias-label-secondary);\n}\n\n._marketStateText_1vpw3_58 {\n color: var(--dsw-alias-label-secondary);\n}\n\n._marketSep_1vpw3_62 {\n color: var(--dsw-alias-label-caption);\n}\n\n._marketReason_1vpw3_66 {\n font-size: var(--dsw-font-xxs-12-font-size);\n line-height: var(--wb-line-18);\n color: var(--dsw-alias-label-tertiary);\n}\n\n._marketName_1vpw3_39 ._marketVersion_1vpw3_72 {\n margin-left: var(--wb-len-6);\n font-size: var(--dsw-font-xxs-12-font-size);\n font-weight: 400;\n line-height: var(--wb-line-18);\n}\n\n._marketVersion_1vpw3_72 {\n font-variant-numeric: tabular-nums;\n color: var(--dsw-alias-label-caption);\n}\n\n._marketVersion_1vpw3_72::before {\n content: '';\n display: inline-block;\n width: var(--wb-len-1);\n height: var(--wb-len-10);\n margin: 0 var(--wb-len-8) 0 var(--wb-len-2);\n vertical-align: -1px;\n background: var(--dsw-alias-border-l2);\n}\n\n._marketLocalTag_1vpw3_94 {\n margin-left: var(--wb-len-8);\n padding: 0 var(--wb-len-6);\n border: var(--wb-len-1) solid var(--dsw-alias-border-l2);\n border-radius: var(--dsw-radius-sm);\n font-size: var(--dsw-font-xxs-12-font-size);\n font-weight: 400;\n line-height: var(--wb-line-18);\n color: var(--dsw-alias-label-caption);\n}\n\n._marketEnd_1vpw3_105 {\n flex: none;\n display: flex;\n align-items: center;\n gap: var(--wb-len-10);\n}\n\n._marketSwitchSeat_1vpw3_112 {\n display: inline-flex;\n align-items: center;\n gap: var(--wb-len-10);\n}\n\n._marketSwitchSeat_1vpw3_112::before {\n content: '';\n width: 0;\n height: var(--wb-len-14);\n border-left: 0.5px solid var(--dsw-alias-border-l3);\n}\n\n._marketActions_1vpw3_125 {\n flex: none;\n display: flex;\n gap: var(--wb-len-6);\n}\n\n._marketUpdateAction_1vpw3_131 {\n color: var(--dsw-alias-state-warn-primary);\n border-color: color-mix(in srgb, var(--dsw-alias-state-warn-primary) 30%, transparent);\n --dsw-alias-interactive-bg-hover: color-mix(in srgb, var(--dsw-alias-state-warn-primary) 8%, transparent);\n}\n\n._marketSelfDivider_1vpw3_137 {\n height: 0;\n margin-top: calc(0px - var(--wb-len-16));\n border-top: 0.5px solid var(--dsw-alias-border-l3);\n}\n\n._marketSection_1vpw3_143 {\n display: flex;\n flex-direction: column;\n gap: var(--wb-len-8);\n min-width: 0;\n}\n\n._marketSectionHead_1vpw3_150 {\n display: flex;\n align-items: baseline;\n gap: var(--wb-len-8);\n}\n\n._marketSectionIcon_1vpw3_156 {\n display: inline-flex;\n align-items: center;\n align-self: center;\n color: var(--dsw-alias-label-caption);\n}\n\n._marketSectionTitle_1vpw3_163 {\n margin: 0;\n font: var(--dsw-font-base-strong-16);\n color: var(--dsw-alias-label-primary);\n}\n\n._marketSectionCount_1vpw3_169 {\n font: var(--dsw-font-s-14);\n font-variant-numeric: tabular-nums;\n color: var(--dsw-alias-label-caption);\n}\n\n._marketSectionAction_1vpw3_175 {\n display: inline-flex;\n align-items: center;\n align-self: center;\n margin-left: auto;\n min-width: 0;\n}\n\n._marketSectionQuiet_1vpw3_183 ._marketSectionTitle_1vpw3_163 {\n color: var(--dsw-alias-label-secondary);\n}\n\n._marketSectionQuiet_1vpw3_183 ._marketName_1vpw3_39 {\n color: var(--dsw-alias-label-secondary);\n}\n\n._marketSectionQuiet_1vpw3_183 ._marketIcon_1vpw3_20 {\n color: var(--dsw-alias-label-tertiary);\n}\n\n._marketProgress_1vpw3_195 {\n flex: none;\n display: inline-flex;\n align-items: center;\n gap: var(--wb-len-8);\n min-height: var(--wb-len-32);\n font: var(--dsw-font-s-14);\n color: var(--dsw-alias-label-secondary);\n}\n\n._marketNote_1vpw3_205 {\n grid-column: 2 / -1;\n font: var(--dsw-font-s-14);\n color: var(--dsw-alias-state-warn-primary);\n overflow-wrap: anywhere;\n}\n\n._marketFailure_1vpw3_212 {\n grid-column: 2 / -1;\n font: var(--dsw-font-s-14);\n color: var(--dsw-alias-state-error-primary);\n overflow-wrap: anywhere;\n}\n\n._marketFailureSeat_1vpw3_219 {\n grid-column: 2 / -1;\n min-width: 0;\n}\n\n._marketEmpty_1vpw3_224 {\n padding: var(--wb-len-18) var(--wb-len-16);\n text-align: center;\n}\n\n._marketPage_1vpw3_229 {\n box-sizing: border-box;\n height: 100%;\n display: flex;\n flex-direction: column;\n align-items: center;\n gap: var(--wb-len-32);\n padding: 0 clamp(var(--wb-len-24), 4vw, var(--wb-len-48)) var(--wb-len-48);\n overflow-x: hidden;\n overflow-y: auto;\n color: var(--dsw-alias-label-primary);\n}\n\n._marketPage_1vpw3_229 > * {\n width: 100%;\n max-width: var(--wb-len-960);\n}\n\n._marketPageHead_1vpw3_247 {\n box-sizing: border-box;\n display: flex;\n align-items: flex-start;\n gap: var(--wb-len-16);\n padding-top: var(--wb-len-28);\n}\n\n._marketPageTitle_1vpw3_255 {\n margin: 0;\n font: var(--dsw-font-l-20);\n}\n\n._marketPageIntro_1vpw3_260 {\n margin: var(--wb-len-4) 0 0;\n font: var(--dsw-font-xs-13);\n color: var(--dsw-alias-label-secondary);\n}\n\n._marketPageTools_1vpw3_266 {\n flex: none;\n align-self: center;\n margin-left: auto;\n display: flex;\n align-items: center;\n gap: var(--wb-len-16);\n}\n\n._marketPanel_1vpw3_275 {\n display: flex;\n flex-direction: column;\n gap: var(--wb-len-32);\n}\n\n._marketPanel_1vpw3_275[hidden] {\n display: none;\n}\n\n._marketTabs_1vpw3_285 {\n display: flex;\n margin: calc(0px - var(--wb-len-16)) 0;\n}\n\n._marketTabList_1vpw3_290 {\n width: fit-content;\n min-width: var(--wb-len-240);\n}\n\n._marketAddButton_1vpw3_295 {\n height: var(--wb-len-32);\n padding: 0 var(--wb-len-12);\n font-size: var(--dsw-font-xs-13-font-size);\n line-height: var(--wb-line-20);\n border-radius: var(--dsw-radius-md);\n}\n\n._marketEmpty_1vpw3_224 {\n display: flex;\n flex-direction: column;\n align-items: center;\n gap: var(--wb-len-8);\n padding: var(--wb-len-64) var(--wb-len-16);\n text-align: center;\n}\n\n._marketEmptyTitle_1vpw3_312 {\n font: var(--dsw-font-base-strong-16);\n color: var(--dsw-alias-label-primary);\n}\n\n._discoverPage_1vpw3_317 {\n box-sizing: border-box;\n display: flex;\n flex-direction: column;\n gap: var(--wb-len-16);\n}\n\n._discoverBar_1vpw3_324 {\n display: flex;\n flex-direction: column;\n gap: var(--wb-len-8);\n container-type: inline-size;\n}\n\n._discoverTools_1vpw3_331 {\n display: flex;\n align-items: center;\n gap: var(--wb-len-8);\n}\n\n._discoverMarket_1vpw3_337 {\n flex: 0 1 auto;\n min-width: 0;\n}\n\n._discoverMarketButton_1vpw3_342 {\n min-width: 0;\n max-width: var(--wb-len-240);\n margin-left: calc(0px - var(--wb-len-8));\n font-weight: 500;\n}\n\n._discoverMarketName_1vpw3_349 {\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n\n._discoverLabels_1vpw3_355 {\n flex: none;\n white-space: nowrap;\n}\n\n._discoverSort_1vpw3_360 {\n flex: none;\n white-space: nowrap;\n}\n\n._discoverRefresh_1vpw3_365 {\n flex: none;\n}\n\n._discoverSearch_1vpw3_369 {\n position: relative;\n box-sizing: border-box;\n display: flex;\n flex: 1 1 var(--wb-len-120);\n min-width: var(--wb-len-120);\n}\n\n._discoverSearchField_1vpw3_377 {\n flex: 1 1 auto;\n min-width: 0;\n}\n\n._discoverSearchFieldFilled_1vpw3_382 input {\n padding-inline-end: var(--wb-len-20);\n}\n\n._discoverSearchField_1vpw3_377 input::-webkit-search-cancel-button {\n appearance: none;\n -webkit-appearance: none;\n}\n\n._discoverSearch_1vpw3_369 ._discoverSearchClear_1vpw3_391 {\n position: absolute;\n top: 50%;\n inset-inline-end: var(--wb-len-4);\n width: var(--wb-len-24);\n height: var(--wb-len-24);\n padding: 0;\n border-radius: var(--dsw-radius-sm);\n color: var(--dsw-alias-label-tertiary);\n transform: translateY(-50%);\n}\n\n._discoverSearchClear_1vpw3_391:hover:not(:disabled) {\n color: var(--dsw-alias-label-primary);\n}\n\n@container (max-width: 560px) {\n ._discoverTools_1vpw3_331 {\n display: grid;\n grid-template-columns: minmax(0, auto) minmax(var(--wb-len-120), 1fr) auto;\n grid-template-areas:\n 'market search refresh'\n 'labels sort sort';\n }\n\n ._discoverMarket_1vpw3_337 {\n grid-area: market;\n }\n\n ._discoverMarketButton_1vpw3_342 {\n margin-left: 0;\n }\n\n ._discoverLabels_1vpw3_355 {\n grid-area: labels;\n }\n\n ._discoverSearch_1vpw3_369 {\n grid-area: search;\n }\n\n ._discoverSort_1vpw3_360 {\n grid-area: sort;\n justify-self: end;\n }\n\n ._discoverRefresh_1vpw3_365 {\n grid-area: refresh;\n }\n}\n\n._discoverChips_1vpw3_442 {\n display: flex;\n flex-wrap: wrap;\n align-items: center;\n gap: var(--wb-len-6);\n}\n\n._discoverList_1vpw3_449 {\n list-style: none;\n margin: 0;\n padding: 0;\n display: flex;\n flex-direction: column;\n gap: var(--wb-len-2);\n}\n\n._discoverCard_1vpw3_458 {\n position: relative;\n display: flex;\n align-items: center;\n gap: var(--wb-len-14);\n margin: 0 calc(0px - var(--wb-len-8));\n padding: var(--wb-len-8);\n border-radius: var(--dsw-radius-xl);\n}\n\n._discoverCard_1vpw3_458:hover {\n background: var(--dsw-alias-interactive-bg-hover);\n}\n\n._discoverArtwork_1vpw3_472 {\n flex: none;\n display: inline-flex;\n align-items: center;\n justify-content: center;\n width: var(--wb-len-48);\n height: var(--wb-len-48);\n border: 0.5px solid var(--dsw-alias-border-l3);\n border-radius: var(--dsw-radius-lg);\n color: var(--dsw-alias-label-secondary);\n}\n\n._discoverArtworkImage_1vpw3_484 {\n object-fit: contain;\n}\n\n._discoverMain_1vpw3_488 {\n display: flex;\n flex: 1;\n flex-direction: column;\n gap: var(--wb-len-2);\n min-width: 0;\n}\n\n._discoverTitleRow_1vpw3_496 {\n display: flex;\n flex-wrap: wrap;\n align-items: center;\n gap: var(--wb-len-8);\n min-width: 0;\n}\n\n._discoverCardOpen_1vpw3_504 {\n max-width: 100%;\n padding: 0;\n border: 0;\n background: transparent;\n color: inherit;\n font: var(--dsw-font-s-14);\n font-weight: 500;\n text-align: left;\n text-overflow: ellipsis;\n white-space: nowrap;\n overflow: hidden;\n cursor: pointer;\n}\n\n._discoverCardOpen_1vpw3_504::after {\n content: '';\n position: absolute;\n inset: 0;\n border-radius: var(--dsw-radius-xl);\n}\n\n._discoverCardOpen_1vpw3_504:focus-visible {\n outline: none;\n}\n\n._discoverCardOpen_1vpw3_504:focus-visible::after {\n outline: var(--dsw-focus-ring-width) solid var(--dsw-focus-ring-color, var(--dsw-alias-state-business-primary));\n outline-offset: 2px;\n}\n\n._discoverStrong_1vpw3_535 {\n font: var(--dsw-font-s-14);\n font-weight: 500;\n overflow-wrap: anywhere;\n}\n\n._discoverDesc_1vpw3_541 {\n display: -webkit-box;\n overflow: hidden;\n -webkit-box-orient: vertical;\n -webkit-line-clamp: 1;\n font: var(--dsw-font-xs-13);\n color: var(--dsw-alias-label-tertiary);\n}\n\n._discoverMeta_1vpw3_550 {\n margin: 0;\n font: var(--dsw-font-xxs-12);\n color: var(--dsw-alias-label-tertiary);\n overflow-wrap: anywhere;\n}\n\n._discoverMuted_1vpw3_557 {\n margin: 0;\n font: var(--dsw-font-xs-13);\n color: var(--dsw-alias-label-tertiary);\n}\n\n._discoverEnd_1vpw3_563 {\n position: relative;\n z-index: var(--wb-z-10);\n flex: none;\n display: inline-flex;\n align-items: center;\n gap: var(--wb-len-8);\n}\n\n._discoverUpdateAction_1vpw3_572 {\n color: var(--dsw-alias-state-warn-primary);\n --dsw-alias-interactive-bg-hover: color-mix(in srgb, var(--dsw-alias-state-warn-primary) 8%, transparent);\n}\n\n._discoverBlocked_1vpw3_577 {\n opacity: 0.5;\n cursor: not-allowed;\n}\n\n._discoverEmpty_1vpw3_582 {\n display: flex;\n flex-direction: column;\n align-items: center;\n gap: var(--wb-len-8);\n padding: var(--wb-len-64) 0;\n text-align: center;\n}\n\n._discoverEmptyTitle_1vpw3_591 {\n margin: var(--wb-len-8) 0 0;\n font: var(--dsw-font-s-14);\n font-weight: 500;\n}\n\n._discoverEmpty_1vpw3_582 > button {\n margin-top: var(--wb-len-8);\n}\n\n._discoverDetail_1vpw3_601 {\n display: flex;\n flex-direction: column;\n gap: var(--wb-len-16);\n}\n\n._discoverCrumb_1vpw3_607 {\n align-self: flex-start;\n display: inline-flex;\n align-items: center;\n gap: var(--wb-len-6);\n padding: 0;\n border: 0;\n background: 0 0;\n color: var(--dsw-alias-label-tertiary);\n font: inherit;\n font-size: var(--wb-font-12-5);\n cursor: pointer;\n}\n\n._discoverCrumb_1vpw3_607:hover {\n color: var(--dsw-alias-label-primary);\n}\n\n._discoverCrumb_1vpw3_607:focus-visible {\n outline: var(--dsw-focus-ring-width) solid var(--dsw-focus-ring-color, var(--dsw-alias-state-business-primary));\n outline-offset: 2px;\n}\n\n._discoverCrumbIcon_1vpw3_630 {\n transform: rotate(90deg);\n}\n\n._discoverDetailHead_1vpw3_634 {\n display: flex;\n align-items: center;\n gap: var(--wb-len-14);\n}\n\n._discoverDetailTitle_1vpw3_640 {\n margin: 0;\n font: var(--dsw-font-l-20);\n font-weight: 500;\n}\n\n._discoverDetailText_1vpw3_646 {\n margin: 0;\n font: var(--dsw-font-s-14);\n color: var(--dsw-alias-label-secondary);\n overflow-wrap: anywhere;\n}\n\n._discoverDetailPanel_1vpw3_653 {\n display: flex;\n flex-direction: column;\n gap: var(--wb-len-16);\n min-width: 0;\n}\n\n._discoverDetailTabs_1vpw3_660 {\n display: flex;\n margin-bottom: calc(0px - var(--wb-len-4));\n}\n\n._discoverDetailTabList_1vpw3_665 {\n width: fit-content;\n min-width: var(--wb-len-240);\n}\n\n._discoverDocBody_1vpw3_670 {\n min-width: 0;\n overflow-wrap: anywhere;\n}\n\n._discoverDocNotice_1vpw3_675 {\n margin: var(--wb-len-16) 0 0;\n font: var(--dsw-font-s-14);\n color: var(--dsw-alias-label-secondary);\n}\n\n._discoverSection_1vpw3_681 {\n display: flex;\n flex-direction: column;\n gap: var(--wb-len-12);\n margin-top: var(--wb-len-16);\n}\n\n._discoverSectionTitle_1vpw3_688 {\n margin: 0;\n font: var(--dsw-font-s-14);\n font-weight: 500;\n}\n\n._discoverFacts_1vpw3_694 {\n margin: 0;\n padding: 0;\n}\n\n._discoverFactRow_1vpw3_699 {\n display: flex;\n justify-content: space-between;\n align-items: center;\n gap: var(--wb-len-16);\n min-height: var(--wb-len-44);\n padding: var(--wb-len-8) var(--wb-len-2);\n border-bottom: 0.5px solid var(--dsw-alias-border-l2);\n}\n\n._discoverFactKind_1vpw3_709 {\n flex: none;\n font: var(--dsw-font-xs-13);\n color: var(--dsw-alias-label-secondary);\n}\n\n._discoverFactValue_1vpw3_715 {\n min-width: 0;\n margin: 0;\n text-align: end;\n overflow-wrap: anywhere;\n font: var(--dsw-font-xs-13);\n}\n\n._discoverCode_1vpw3_723 {\n padding: var(--wb-len-2) var(--wb-len-6);\n border-radius: var(--wb-radius-6);\n background: var(--dsw-alias-bg-module-platform);\n font-family: var(--ds-font-family-code);\n font-size: var(--dsw-font-xxs-12-font-size);\n box-decoration-break: clone;\n}\n\n._discoverTags_1vpw3_732 {\n display: flex;\n flex-wrap: wrap;\n justify-content: flex-end;\n gap: var(--wb-len-6);\n}\n\n._discoverLink_1vpw3_739 {\n color: var(--dsw-alias-link);\n overflow-wrap: anywhere;\n text-decoration: none;\n}\n\n._discoverLink_1vpw3_739:hover {\n text-decoration: underline;\n}\n\n._discoverVersions_1vpw3_749 {\n list-style: none;\n margin: 0;\n padding: 0;\n display: flex;\n flex-direction: column;\n}\n\n._discoverVersionRow_1vpw3_757 {\n display: flex;\n align-items: center;\n gap: var(--wb-len-8);\n padding: var(--wb-len-8) 0;\n border-bottom: 0.5px solid var(--dsw-alias-border-l2);\n}\n\n._discoverVersionName_1vpw3_765 {\n font: var(--dsw-font-s-14);\n font-weight: 500;\n}\n\n._discoverError_1vpw3_770 {\n display: inline-flex;\n align-items: center;\n gap: var(--wb-len-6);\n margin: 0;\n font: var(--dsw-font-xs-13);\n color: var(--dsw-alias-state-error-primary);\n}\n\n._discoverFailure_1vpw3_779 {\n display: flex;\n align-items: center;\n gap: var(--wb-len-10);\n}\n\n._discoverLoading_1vpw3_785 {\n display: flex;\n align-items: center;\n gap: var(--wb-len-8);\n margin: 0;\n color: var(--dsw-alias-label-secondary);\n font: var(--dsw-font-xs-13);\n}\n\n._discoverNotice_1vpw3_794 {\n display: flex;\n align-items: flex-start;\n gap: var(--wb-len-8);\n margin: 0;\n padding: var(--wb-len-10) var(--wb-len-12);\n border-radius: var(--dsw-radius-md);\n background: var(--dsw-alias-state-warn-tertiary);\n color: var(--dsw-alias-label-secondary);\n font: var(--dsw-font-xxs-12);\n}\n\n._discoverNotice_1vpw3_794 svg {\n flex: none;\n margin-top: var(--wb-len-2);\n color: var(--dsw-alias-state-warn-primary);\n}\n\n._discoverMore_1vpw3_812 {\n align-self: center;\n}\n\n._discoverTransport_1vpw3_816 {\n display: flex;\n flex-direction: column;\n gap: var(--wb-len-8);\n}\n\n._discoverTransportHead_1vpw3_822 {\n display: flex;\n flex-wrap: wrap;\n align-items: center;\n gap: var(--wb-len-8);\n}\n\n._discoverTransportTitle_1vpw3_829 {\n font: var(--dsw-font-xs-13);\n color: var(--dsw-alias-label-secondary);\n}\n\n._discoverTransportHead_1vpw3_822 ._discoverTransportKind_1vpw3_834 {\n font: var(--dsw-font-xs-13);\n font-weight: 500;\n}\n\n._discoverTransportHead_1vpw3_822 ._discoverTransportState_1vpw3_839 {\n margin-left: 0;\n}\n\n._discoverTransportHead_1vpw3_822 > :last-child {\n margin-left: auto;\n}\n\n._discoverTransportRows_1vpw3_847 {\n display: flex;\n gap: var(--wb-len-8);\n}\n\n._discoverTransportRow_1vpw3_847 {\n display: flex;\n flex: 1;\n align-items: center;\n gap: var(--wb-len-8);\n min-width: 0;\n padding: var(--wb-len-8) var(--wb-len-10);\n border: 0.5px solid var(--dsw-alias-border-l2);\n border-radius: var(--dsw-radius-md);\n cursor: pointer;\n}\n\n._discoverTransportRow_1vpw3_847:hover {\n border-color: var(--dsw-alias-border-l3);\n}\n\n._discoverTransportRow_1vpw3_847:has(._discoverTransportRadio_1vpw3_868:checked) {\n border-color: var(--dsw-alias-label-primary);\n}\n\n._discoverTransportRow_1vpw3_847:has(._discoverTransportRadio_1vpw3_868:focus-visible) {\n outline: 2px solid var(--dsw-alias-label-primary);\n outline-offset: 1px;\n}\n\n._discoverTransportRadio_1vpw3_868 {\n flex: none;\n margin: 0;\n}\n\n._discoverTransportKind_1vpw3_834 {\n flex: none;\n font: var(--dsw-font-xs-13);\n font-weight: 500;\n}\n\n._discoverTransportState_1vpw3_839 {\n flex: none;\n margin-left: auto;\n font: var(--dsw-font-xxs-12);\n color: var(--dsw-alias-label-secondary);\n}\n\n._discoverTransportRow_1vpw3_847[data-state='ok'] ._discoverTransportState_1vpw3_839 {\n color: var(--dsw-alias-state-success-primary);\n}\n\n._discoverTransportRow_1vpw3_847[data-state='auth'] ._discoverTransportState_1vpw3_839 {\n color: var(--dsw-alias-state-error-primary);\n}\n\n._discoverTransportRow_1vpw3_847[data-state='unreachable'] ._discoverTransportState_1vpw3_839,\n._discoverTransportRow_1vpw3_847[data-state='unknown'] ._discoverTransportState_1vpw3_839 {\n color: var(--dsw-alias-state-warn-primary);\n}\n\n._discoverTransportCustom_1vpw3_908 {\n display: flex;\n align-items: center;\n gap: var(--wb-len-8);\n}\n\n._discoverTransportInput_1vpw3_914 {\n flex: 1;\n min-width: 0;\n}\n\n._discoverInstallBar_1vpw3_919 {\n display: flex;\n align-items: center;\n gap: var(--wb-len-8);\n margin: 0;\n padding: var(--wb-len-8) var(--wb-len-12);\n border-radius: var(--dsw-radius-md);\n background: var(--dsw-alias-bg-module-platform);\n font: var(--dsw-font-xs-13);\n}\n\n._discoverInstallText_1vpw3_930 {\n flex: 1;\n min-width: 0;\n overflow-wrap: anywhere;\n}\n\n._discoverDialog_1vpw3_936 {\n width: min(var(--wb-len-560), calc(100vw - var(--wb-len-32)));\n}\n\n._discoverDialogBody_1vpw3_940 {\n display: flex;\n flex-direction: column;\n gap: var(--wb-len-12);\n}\n\n._discoverSourceList_1vpw3_946 {\n list-style: none;\n margin: 0;\n padding: 0;\n display: flex;\n flex-direction: column;\n}\n\n._discoverSourceRow_1vpw3_954 {\n display: flex;\n flex-wrap: wrap;\n align-items: flex-start;\n gap: var(--wb-len-12);\n padding: var(--wb-len-10) 0;\n border-bottom: 0.5px solid var(--dsw-alias-border-l2);\n}\n\n._discoverSourceConfirm_1vpw3_963 {\n margin: 0;\n padding: var(--wb-len-2) 0 var(--wb-len-10);\n list-style: none;\n}\n\n._discoverSourcePick_1vpw3_969 {\n display: flex;\n flex: 1;\n align-items: flex-start;\n gap: var(--wb-len-10);\n min-width: 0;\n cursor: pointer;\n}\n\n._discoverSourceRadio_1vpw3_978 {\n flex: none;\n width: var(--wb-len-16);\n height: var(--wb-len-16);\n margin: var(--wb-len-2) 0 0;\n accent-color: var(--dsw-alias-brand-primary);\n}\n\n._discoverSourceMain_1vpw3_986 {\n display: flex;\n flex: 1;\n flex-direction: column;\n gap: var(--wb-len-4);\n min-width: 0;\n}\n\n._discoverSourceHead_1vpw3_994 {\n display: flex;\n flex-wrap: wrap;\n align-items: center;\n gap: var(--wb-len-8);\n min-width: 0;\n}\n\n._discoverSourceUrl_1vpw3_1002 {\n display: block;\n margin: 0;\n font: var(--dsw-font-xxs-12);\n color: var(--dsw-alias-label-tertiary);\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n\n._discoverSourceMore_1vpw3_1012 {\n flex: none;\n}\n\n._discoverSourceLoading_1vpw3_1016 {\n display: flex;\n flex: none;\n align-items: center;\n gap: var(--wb-len-6);\n color: var(--dsw-alias-label-secondary);\n font: var(--dsw-font-xxs-12);\n white-space: nowrap;\n}\n\n._discoverSourceHint_1vpw3_1026 {\n display: flex;\n flex-basis: 100%;\n align-items: center;\n gap: var(--wb-len-6);\n color: var(--dsw-alias-label-secondary);\n font: var(--dsw-font-xxs-12);\n}\n\n._discoverSourceHint_1vpw3_1026 svg {\n flex: none;\n color: var(--dsw-alias-state-warn-primary);\n}\n\n._discoverSourceError_1vpw3_1040 {\n font: var(--dsw-font-xxs-12);\n color: var(--dsw-alias-state-error-primary);\n overflow-wrap: anywhere;\n}\n\n._discoverSourceForm_1vpw3_1046 {\n display: flex;\n align-items: center;\n gap: var(--wb-len-8);\n}\n\n._discoverGrow_1vpw3_1052 {\n flex: 1;\n min-width: 0;\n}\n\n._discoverField_1vpw3_1057 {\n display: flex;\n flex-direction: column;\n gap: var(--wb-len-6);\n}\n\n._discoverFieldLabel_1vpw3_1063 {\n font: var(--dsw-font-xxs-12);\n color: var(--dsw-alias-label-secondary);\n}\n\n._discoverConfirmHead_1vpw3_1068 {\n display: flex;\n align-items: center;\n gap: var(--wb-len-14);\n}\n\n._discoverSkeletonFill_1vpw3_1074 {\n background: var(--dsw-alias-bg-skeleton);\n animation: _wb-skeleton_1vpw3_1 var(--wb-dur-1-5) cubic-bezier(0.36, 0, 0.64, 1) infinite;\n}\n\n._discoverArtwork_1vpw3_472._discoverSkeletonFill_1vpw3_1074 {\n border-color: transparent;\n}\n\n._discoverSkeletonBar_1vpw3_1083 {\n display: block;\n height: var(--wb-len-12);\n margin: var(--wb-len-4) 0;\n border-radius: var(--dsw-radius-xs);\n}\n\n._discoverSkeletonTitle_1vpw3_1090 {\n width: min(var(--wb-len-144), 60%);\n}\n\n._discoverSkeletonDesc_1vpw3_1094 {\n width: min(var(--wb-len-280), 85%);\n}\n\n@keyframes _wb-skeleton_1vpw3_1 {\n 0% {\n opacity: 1;\n }\n 40% {\n opacity: 0.6;\n }\n 80%,\n to {\n opacity: 1;\n }\n}\n\n@media (prefers-reduced-motion: reduce) {\n ._discoverSkeletonFill_1vpw3_1074 {\n animation: none;\n }\n}\n\n._block_mxnbc_1 {\n display: flex;\n flex-direction: column;\n gap: var(--wb-len-4);\n padding: var(--wb-len-2) 0 var(--wb-len-8);\n min-width: 0;\n}\n\n._head_mxnbc_9 {\n display: flex;\n align-items: center;\n gap: var(--wb-len-6);\n min-width: 0;\n}\n\n._title_mxnbc_16 {\n font: var(--dsw-font-s-14);\n color: var(--dsw-alias-state-error-primary);\n overflow-wrap: anywhere;\n}\n\n._fact_mxnbc_22 {\n margin: 0;\n font: var(--dsw-font-xxs-12);\n line-height: var(--wb-line-18);\n color: var(--dsw-alias-label-secondary);\n overflow-wrap: anywhere;\n}\n\n._actions_mxnbc_30 {\n display: flex;\n flex-wrap: wrap;\n align-items: center;\n gap: var(--wb-len-2);\n margin-left: calc(-1 * var(--wb-len-8));\n}\n\n._hint_mxnbc_38 {\n margin: 0;\n font: var(--dsw-font-xxs-12);\n color: var(--dsw-alias-label-tertiary);\n}\n\n._output_mxnbc_44 {\n margin-top: var(--wb-len-2);\n min-width: 0;\n}\n._check_1g6tv_1 {\n display: inline-flex;\n align-items: center;\n gap: var(--wb-len-10);\n min-width: 0;\n}\n\n._status_1g6tv_8 {\n font: var(--dsw-font-xxs-12);\n color: var(--dsw-alias-label-caption);\n font-variant-numeric: tabular-nums;\n white-space: nowrap;\n}\n\n._button_1g6tv_15 {\n flex: none;\n width: var(--wb-len-28);\n height: var(--wb-len-28);\n padding: 0;\n}\n\n._icon_1g6tv_22 {\n display: inline-flex;\n}\n\n@media (max-width: 720px) {\n ._status_1g6tv_8 {\n display: none;\n }\n}\n._foot_1ud1j_1 {\n display: flex;\n align-items: center;\n justify-content: flex-end;\n gap: var(--wb-len-8);\n padding: var(--wb-len-8) var(--wb-len-14) var(--wb-len-10);\n border-top: 0.5px solid var(--dsw-alias-border-l2);\n font-size: var(--dsw-font-xxxs-11-font-size);\n line-height: var(--wb-line-16);\n color: var(--dsw-alias-label-tertiary);\n}\n\n._footText_1ud1j_13 {\n flex: 1;\n min-width: 0;\n}\n\n._footTextMd_1ud1j_18 {\n flex: 1;\n min-width: 0;\n font: var(--dsw-font-s-14);\n color: var(--dsw-alias-label-secondary);\n}\n._wide_1lv8f_1 {\n justify-content: center;\n width: 100%;\n height: var(--wb-len-40);\n border-radius: var(--dsw-radius-md);\n}\n\n._dialog_1lv8f_8 {\n width: min(var(--wb-len-560), 100%);\n max-height: min(var(--wb-len-800), 100%);\n}\n\n._content_1lv8f_13 {\n min-height: 0;\n overflow: auto;\n}\n\n._stack_1lv8f_18 {\n display: flex;\n flex-direction: column;\n gap: var(--wb-len-12);\n min-width: 0;\n}\n\n._body_1lv8f_25 {\n display: flex;\n flex-direction: column;\n gap: var(--wb-len-12);\n min-width: 0;\n}\n\n._field_1lv8f_32 {\n display: flex;\n flex-direction: column;\n gap: var(--wb-len-6);\n font-size: var(--dsw-font-xs-13-font-size);\n}\n\n._input_1lv8f_39 {\n width: 100%;\n height: var(--wb-len-40);\n padding: 0 var(--wb-len-14);\n}\n\n._registryField_1lv8f_45 {\n height: var(--wb-len-32);\n margin-left: var(--wb-len-26);\n padding: 0 var(--wb-len-10);\n}\n\n._options_1lv8f_51 {\n display: flex;\n flex-wrap: wrap;\n align-items: center;\n justify-content: space-between;\n gap: var(--wb-len-8) var(--wb-len-12);\n}\n\n._guideToggle_1lv8f_59 {\n display: inline-flex;\n align-items: center;\n gap: var(--wb-len-4);\n align-self: flex-start;\n margin-top: var(--wb-len-4);\n padding: 0;\n border: 0;\n background: transparent;\n font: var(--dsw-font-xs-13);\n color: var(--dsw-alias-label-secondary);\n cursor: pointer;\n}\n\n._guideToggle_1lv8f_59:hover {\n color: var(--dsw-alias-label-primary);\n}\n\n._guideToggle_1lv8f_59 svg,\n._registryToggle_1lv8f_78 svg {\n transition: transform var(--wb-dur-0-12) ease;\n}\n\n._guideToggle_1lv8f_59[aria-expanded='true'] svg,\n._registryToggle_1lv8f_78[aria-expanded='true'] svg {\n transform: rotate(180deg);\n}\n\n._registryWrap_1lv8f_87 {\n position: relative;\n flex: none;\n}\n\n._registryToggle_1lv8f_78 {\n display: inline-flex;\n align-items: center;\n gap: var(--wb-len-6);\n height: var(--wb-len-26);\n padding: 0 var(--wb-len-8) 0 var(--wb-len-10);\n border: 0.5px solid var(--dsw-alias-border-l4);\n border-radius: var(--dsw-radius-sm);\n background: var(--dsw-alias-bg-layer-2);\n font: inherit;\n font-size: var(--wb-font-12-5);\n color: var(--dsw-alias-label-secondary);\n cursor: pointer;\n}\n\n._registryToggle_1lv8f_78:hover:not(:disabled) {\n color: var(--dsw-alias-label-primary);\n}\n\n._registryToggle_1lv8f_78:disabled {\n cursor: default;\n opacity: 0.6;\n}\n\n._registryToggle_1lv8f_78[aria-expanded='true'] {\n border-color: var(--dsw-alias-border-l3);\n background: var(--dsw-alias-bg-layer-3);\n}\n\n._registryChosen_1lv8f_121 {\n color: var(--dsw-alias-label-primary);\n font-weight: 500;\n}\n\n._registry_1lv8f_45 {\n position: fixed;\n z-index: var(--wb-z-1100);\n box-sizing: border-box;\n width: min(var(--wb-len-440), 100vw - var(--wb-len-24));\n display: flex;\n flex-direction: column;\n gap: var(--wb-len-4);\n margin: 0;\n padding: var(--wb-len-8) var(--wb-len-10) var(--wb-len-12);\n border: 0;\n border-radius: var(--dsw-radius-lg);\n background: var(--dsw-alias-bg-layer-2);\n --dsw-elevation-stroke-color: var(--dsw-alias-border-l3);\n box-shadow: var(--dsw-elevation-prominent);\n}\n\n._registryOption_1lv8f_143 {\n display: flex;\n flex-direction: column;\n gap: var(--wb-len-4);\n padding: var(--wb-len-8) var(--wb-len-10);\n border: 0.5px solid transparent;\n border-radius: var(--dsw-radius-lg);\n cursor: pointer;\n}\n\nlabel._registryOption_1lv8f_143 {\n flex-direction: row;\n align-items: flex-start;\n gap: var(--wb-len-10);\n}\n\n._registryPick_1lv8f_159 {\n display: flex;\n align-items: flex-start;\n gap: var(--wb-len-10);\n cursor: pointer;\n}\n\n._registryOption_1lv8f_143[data-checked='true'] {\n border-color: color-mix(in srgb, var(--dsw-alias-brand-primary) 40%, transparent);\n background: var(--dsw-alias-bg-layer-2);\n}\n\n._registryOption_1lv8f_143 input[type='radio'] {\n flex: none;\n width: var(--wb-len-16);\n height: var(--wb-len-16);\n margin: var(--wb-len-2) 0 0;\n accent-color: var(--dsw-alias-brand-primary);\n}\n\n._registryTitle_1lv8f_179 {\n display: flex;\n flex-wrap: wrap;\n align-items: center;\n gap: var(--wb-len-8);\n font: var(--dsw-font-xs-13);\n line-height: var(--wb-line-20);\n color: var(--dsw-alias-label-primary);\n}\n\n._registryHint_1lv8f_189 {\n margin-left: var(--wb-len-26);\n font-size: var(--dsw-font-xxs-12-font-size);\n line-height: var(--wb-line-18);\n color: var(--dsw-alias-label-tertiary);\n overflow-wrap: anywhere;\n}\n\n._inputError_1lv8f_197 {\n margin: var(--wb-len-neg-4) 0 0 var(--wb-len-26);\n font-size: var(--dsw-font-xxs-12-font-size);\n line-height: var(--wb-line-18);\n color: var(--dsw-alias-state-error-primary);\n}\n\n._guide_1lv8f_59 {\n display: flex;\n flex-direction: column;\n gap: var(--wb-len-10);\n padding: var(--wb-len-8) var(--wb-len-14) var(--wb-len-14);\n border: 0.5px solid var(--dsw-alias-border-l4);\n border-radius: var(--dsw-radius-lg);\n background: var(--dsw-alias-bg-layer-1);\n}\n\n._guideList_1lv8f_214 {\n display: flex;\n flex-direction: column;\n gap: var(--wb-len-2);\n margin: 0;\n padding: 0;\n list-style: none;\n}\n\n._guideItem_1lv8f_223 {\n display: flex;\n align-items: flex-start;\n gap: var(--wb-len-10);\n padding: var(--wb-len-8) 0;\n}\n\n._guideIndex_1lv8f_230 {\n flex: none;\n display: inline-flex;\n align-items: center;\n justify-content: center;\n width: var(--wb-len-20);\n height: var(--wb-len-20);\n border-radius: var(--wb-radius-pill);\n corner-shape: round;\n background: var(--dsw-alias-bg-module-platform);\n font: var(--dsw-font-xs-13);\n color: var(--dsw-alias-label-secondary);\n}\n\n._guideMain_1lv8f_244 {\n display: flex;\n flex-direction: column;\n flex: 1;\n gap: 0;\n min-width: 0;\n}\n\n._guideTitle_1lv8f_252 {\n font: var(--dsw-font-s-14);\n font-weight: 500;\n color: var(--dsw-alias-label-primary);\n}\n\n._guideHint_1lv8f_258 {\n margin: 0;\n font: var(--dsw-font-xs-13);\n color: var(--dsw-alias-label-caption);\n}\n\n._guideExample_1lv8f_264 {\n font: var(--dsw-font-xs-13);\n color: var(--dsw-alias-label-secondary);\n overflow-wrap: anywhere;\n}\n\n._guideExample_1lv8f_264 code {\n font-family: var(--dsw-font-mono, monospace);\n}\n\n._guideExampleLabel_1lv8f_274 {\n color: var(--dsw-alias-label-caption);\n}\n\n._footer_1lv8f_278 {\n display: flex;\n flex-direction: column;\n gap: var(--wb-len-20);\n width: 100%;\n}\n\n._hero_1lv8f_285 {\n display: flex;\n flex-direction: column;\n align-items: center;\n gap: var(--wb-len-10);\n padding: var(--wb-len-8) 0 var(--wb-len-4);\n text-align: center;\n}\n\n._heroIcon_1lv8f_294 {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n width: var(--wb-len-44);\n height: var(--wb-len-44);\n color: var(--dsw-alias-label-secondary);\n}\n\n._heroIcon_1lv8f_294[data-state='done'] {\n color: var(--dsw-alias-state-success-secondary);\n}\n\n._heroIcon_1lv8f_294[data-state='error'] {\n color: var(--dsw-alias-state-warn-label);\n}\n\n._pendingTitle_1lv8f_311 {\n margin: 0;\n font-size: var(--dsw-font-s-14-font-size);\n line-height: var(--wb-line-22);\n font-weight: 500;\n color: var(--dsw-alias-label-secondary);\n}\n\n._wizardTitle_1lv8f_319 {\n margin: 0;\n font-size: var(--wb-font-18);\n line-height: var(--wb-len-26);\n font-weight: 600;\n}\n\n._subject_1lv8f_326 {\n display: flex;\n flex-direction: column;\n align-items: center;\n gap: var(--wb-len-6);\n padding: var(--wb-len-16);\n border: 0.5px solid var(--dsw-alias-border-l3);\n border-radius: var(--dsw-radius-lg);\n text-align: center;\n}\n\n._subjectName_1lv8f_337 {\n margin: 0;\n font: var(--dsw-font-base-strong-16);\n overflow-wrap: anywhere;\n}\n\n._subjectMeta_1lv8f_343,\n._subjectDesc_1lv8f_344 {\n margin: 0;\n font: var(--dsw-font-xs-13);\n color: var(--dsw-alias-label-secondary);\n overflow-wrap: anywhere;\n}\n\n._result_1lv8f_351,\n._resultWarn_1lv8f_352 {\n margin: 0;\n padding: var(--wb-len-8) var(--wb-len-12);\n border-radius: var(--dsw-radius-md);\n background: color-mix(in srgb, var(--dsw-alias-state-success-primary) 10%, transparent);\n font: var(--dsw-font-s-14);\n color: var(--dsw-alias-label-primary);\n}\n\n._resultWarn_1lv8f_352 {\n background: color-mix(in srgb, var(--dsw-alias-state-warn-primary) 12%, transparent);\n}\n\n._resultMeta_1lv8f_365 {\n margin: 0;\n padding: 0 var(--wb-len-12);\n font: var(--dsw-font-xs-13);\n color: var(--dsw-alias-label-secondary);\n overflow-wrap: anywhere;\n}\n\n._approval_1lv8f_373 {\n display: flex;\n flex-direction: column;\n gap: var(--wb-len-8);\n padding: var(--wb-len-12) var(--wb-len-14);\n border: 0.5px solid var(--dsw-alias-state-warn-primary);\n border-radius: var(--dsw-radius-lg);\n background: color-mix(in srgb, var(--dsw-alias-state-warn-primary) 8%, transparent);\n}\n\n._approvalTitle_1lv8f_383 {\n margin: 0;\n font: var(--dsw-font-s-14);\n font-weight: 600;\n color: var(--dsw-alias-label-primary);\n}\n\n._approvalText_1lv8f_390 {\n margin: 0;\n font: var(--dsw-font-xs-13);\n color: var(--dsw-alias-label-secondary);\n}\n\n._approvalCaution_1lv8f_396 {\n margin: 0;\n font: var(--dsw-font-xs-13);\n font-weight: 600;\n color: var(--dsw-alias-state-warn-primary);\n}\n\n._note_1lv8f_403 {\n margin: 0;\n font: var(--dsw-font-s-14);\n color: var(--dsw-alias-label-secondary);\n overflow-wrap: anywhere;\n}\n\n._noteWarn_1lv8f_410 {\n color: var(--dsw-alias-state-warn-primary);\n}\n\n._noteError_1lv8f_414 {\n color: var(--dsw-alias-state-error-primary);\n}\n\n._problem_1lv8f_418 {\n margin: 0;\n font: var(--dsw-font-xs-13);\n color: var(--dsw-alias-state-error-primary);\n overflow-wrap: anywhere;\n}\n\n._detailLabel_1lv8f_425 {\n margin: 0;\n font: var(--dsw-font-xs-13);\n color: var(--dsw-alias-label-caption);\n}\n\n._detail_1lv8f_425 {\n margin: 0;\n padding: var(--wb-len-8) var(--wb-len-10);\n border: 0.5px solid var(--dsw-alias-border-l1);\n border-radius: var(--dsw-radius-sm);\n background: var(--dsw-alias-bg-layer-3);\n font-family: var(--dsw-font-mono, monospace);\n font-size: var(--dsw-font-xs-13-font-size);\n line-height: var(--wb-line-18);\n color: var(--dsw-alias-label-secondary);\n overflow-wrap: anywhere;\n white-space: pre-wrap;\n}\n._note_1enlz_1 {\n display: flex;\n align-items: flex-start;\n gap: var(--wb-len-8);\n margin: 0;\n padding: var(--wb-len-10) var(--wb-len-12);\n border-radius: var(--dsw-radius-md);\n background: var(--dsw-alias-state-warn-tertiary);\n font-size: var(--dsw-font-xxs-12-font-size);\n line-height: var(--wb-line-18);\n color: var(--dsw-alias-label-secondary);\n}\n\n._note_1enlz_1 > svg {\n flex: none;\n margin-top: var(--wb-len-2);\n color: var(--dsw-alias-state-warn-primary);\n}\n._slot_1t7dx_1 {\n display: flex;\n flex: 0 0 100%;\n min-width: 0;\n}\n\n._slot_1t7dx_1 > * {\n flex: 0 0 100%;\n min-width: 0;\n}\n\n._action_1t7dx_12 {\n box-sizing: border-box;\n display: flex;\n align-items: center;\n justify-content: flex-start;\n flex: 1 1 0;\n width: 100%;\n min-width: 0;\n min-height: var(--wb-len-36);\n margin: 0 var(--wb-len-2);\n padding: var(--wb-len-7) var(--wb-len-8);\n border-radius: var(--dsw-radius-md);\n cursor: default;\n overflow: hidden;\n gap: var(--wb-len-4);\n font-size: var(--dsw-font-xs-13-font-size);\n line-height: var(--wb-line-18);\n}\n\n._live_1t7dx_31 {\n color: var(--dsw-alias-state-success-primary);\n}\n\n._paused_1t7dx_35 {\n color: var(--dsw-alias-state-warn-primary);\n}\n\n._trouble_1t7dx_39 {\n color: var(--dsw-alias-state-error-primary);\n}\n\n._pulse_1t7dx_43 {\n animation: _wb-debug-breathe_1t7dx_1 var(--wb-dur-1-5) var(--ds-ease-in-out, ease-in-out) infinite;\n}\n\n@keyframes _wb-debug-breathe_1t7dx_1 {\n 0%,\n 100% {\n opacity: 1;\n }\n\n 50% {\n opacity: 0.35;\n }\n}\n\n@media (prefers-reduced-motion: reduce) {\n ._pulse_1t7dx_43 {\n animation: none;\n }\n}\n\n._entry_1t7dx_64 {\n display: flex;\n align-items: center;\n flex: 1 1 auto;\n min-width: 0;\n}\n\n._entryInner_1t7dx_71 {\n display: flex;\n align-items: center;\n gap: var(--wb-len-6);\n min-width: 0;\n}\n\n._acts_1t7dx_78 {\n display: flex;\n align-items: center;\n gap: var(--wb-len-2);\n flex: none;\n}\n\n._act_1t7dx_12 {\n appearance: none;\n border: 0;\n background: transparent;\n color: var(--dsw-alias-label-secondary);\n display: inline-flex;\n align-items: center;\n justify-content: center;\n width: var(--wb-len-22);\n height: var(--wb-len-22);\n padding: 0;\n border-radius: var(--dsw-radius-sm, var(--wb-len-6));\n flex: none;\n cursor: pointer;\n}\n\n._act_1t7dx_12:hover {\n background: var(--dsw-alias-interactive-bg-hover);\n}\n\n._act_1t7dx_12:focus-visible {\n outline: var(--dsw-focus-ring-width) solid var(--dsw-focus-ring-color, var(--dsw-alias-state-business-primary));\n outline-offset: -2px;\n}\n\n._actStop_1t7dx_110:hover,\n._actStop_1t7dx_110:focus-visible {\n color: var(--dsw-alias-state-error-primary);\n}\n\n._actArmed_1t7dx_115,\n._actArmed_1t7dx_115:hover,\n._actArmed_1t7dx_115:focus-visible {\n background: color-mix(in srgb, var(--dsw-alias-state-error-primary) 12%, transparent);\n width: auto;\n color: var(--dsw-alias-state-error-primary);\n gap: var(--wb-len-4);\n padding: 0 var(--wb-len-7);\n}\n\n._actLabel_1t7dx_125 {\n white-space: nowrap;\n font-size: var(--dsw-font-xxxs-11-font-size);\n line-height: var(--wb-line-18);\n}\n\n._entryLine_1t7dx_131 {\n min-width: 0;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n\n._actionRail_1t7dx_138 {\n justify-content: center;\n flex: none;\n width: var(--wb-len-36);\n min-width: var(--wb-len-36);\n height: var(--wb-len-36);\n margin: 0;\n padding: 0;\n corner-shape: round;\n border-radius: 50%;\n}\n\n._card_1t7dx_150 {\n display: flex;\n flex-direction: column;\n gap: var(--wb-len-4);\n}\n\n._cardTitle_1t7dx_156 {\n color: var(--dsw-alias-label-primary);\n font-size: var(--dsw-font-s-14-font-size);\n line-height: var(--wb-line-20);\n}\n\n._cardNote_1t7dx_162 {\n color: var(--dsw-alias-label-secondary);\n font-size: var(--dsw-font-xxs-12-font-size);\n line-height: var(--wb-line-18);\n}\n._slot_1gkj9_1 {\n display: flex;\n flex: 0 0 100%;\n min-width: 0;\n}\n\n._slot_1gkj9_1 > * {\n flex: 0 0 100%;\n min-width: 0;\n}\n\n._action_1gkj9_12 {\n box-sizing: border-box;\n display: flex;\n align-items: center;\n justify-content: flex-start;\n flex: 1 1 0;\n width: 100%;\n min-width: 0;\n min-height: var(--wb-len-36);\n margin: 0 var(--wb-len-2);\n padding: var(--wb-len-7) var(--wb-len-8);\n border-radius: var(--dsw-radius-md);\n cursor: default;\n overflow: hidden;\n gap: var(--wb-len-4);\n font-size: var(--dsw-font-xs-13-font-size);\n line-height: var(--wb-line-18);\n}\n\n._live_1gkj9_31 {\n color: var(--dsw-alias-state-warn-primary);\n}\n\n._done_1gkj9_35 {\n color: var(--dsw-alias-state-success-primary);\n}\n\n._pulse_1gkj9_39 {\n animation: _wb-record-breathe_1gkj9_1 var(--wb-dur-1-5) var(--ds-ease-in-out, ease-in-out) infinite;\n}\n\n@keyframes _wb-record-breathe_1gkj9_1 {\n 0%,\n 100% {\n opacity: 1;\n }\n\n 50% {\n opacity: 0.35;\n }\n}\n\n@media (prefers-reduced-motion: reduce) {\n ._pulse_1gkj9_39 {\n animation: none;\n }\n}\n\n._entry_1gkj9_60 {\n display: flex;\n align-items: center;\n flex: 1 1 auto;\n min-width: 0;\n}\n\n._entryInner_1gkj9_67 {\n display: flex;\n align-items: center;\n gap: var(--wb-len-6);\n min-width: 0;\n}\n\n._acts_1gkj9_74 {\n display: flex;\n align-items: center;\n gap: var(--wb-len-2);\n flex: none;\n}\n\n._act_1gkj9_12 {\n appearance: none;\n border: 0;\n background: transparent;\n color: var(--dsw-alias-label-secondary);\n display: inline-flex;\n align-items: center;\n justify-content: center;\n height: var(--wb-len-22);\n padding: 0 var(--wb-len-7);\n border-radius: var(--dsw-radius-sm, var(--wb-len-6));\n flex: none;\n cursor: pointer;\n white-space: nowrap;\n font-size: var(--dsw-font-xxxs-11-font-size);\n line-height: var(--wb-line-18);\n}\n\n._act_1gkj9_12:hover {\n background: var(--dsw-alias-interactive-bg-hover);\n}\n\n._act_1gkj9_12:focus-visible {\n outline: var(--dsw-focus-ring-width) solid var(--dsw-focus-ring-color, var(--dsw-alias-state-business-primary));\n outline-offset: -2px;\n}\n\n._entryLine_1gkj9_108 {\n min-width: 0;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n\n._actionRail_1gkj9_115 {\n justify-content: center;\n flex: none;\n width: var(--wb-len-36);\n min-width: var(--wb-len-36);\n height: var(--wb-len-36);\n margin: 0;\n padding: 0;\n corner-shape: round;\n border-radius: 50%;\n}\n\n._card_1gkj9_127 {\n display: flex;\n flex-direction: column;\n gap: var(--wb-len-4);\n}\n\n._cardTitle_1gkj9_133 {\n color: var(--dsw-alias-label-primary);\n font-size: var(--dsw-font-s-14-font-size);\n line-height: var(--wb-line-20);\n}\n\n._cardNote_1gkj9_139 {\n color: var(--dsw-alias-label-secondary);\n font-size: var(--dsw-font-xxs-12-font-size);\n line-height: var(--wb-line-18);\n}\n._item_lyox9_1 {\n display: flex;\n flex-direction: column;\n gap: var(--wb-len-10);\n}\n\n._item_lyox9_1 + ._item_lyox9_1 {\n padding-top: var(--wb-len-14);\n border-top: var(--wb-len-0-5) solid var(--dsw-alias-settings-card-stroke);\n}\n\n._head_lyox9_12 {\n display: flex;\n align-items: center;\n gap: var(--wb-len-8);\n min-width: 0;\n}\n\n._title_lyox9_19 {\n flex: 1 1 auto;\n min-width: 0;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n font-size: var(--dsw-font-s-14-font-size);\n line-height: var(--wb-line-20);\n font-weight: 600;\n color: var(--dsw-alias-label-primary);\n}\n\n._description_lyox9_31 {\n margin: 0;\n font-size: var(--dsw-font-xs-13-font-size);\n line-height: var(--wb-line-18);\n color: var(--dsw-alias-label-secondary);\n}\n._rows_85r3w_1 {\n display: flex;\n flex-direction: column;\n gap: var(--wb-len-8);\n margin: 0;\n padding: 0;\n list-style: none;\n}\n\n._row_85r3w_1 {\n display: flex;\n flex-direction: column;\n gap: var(--wb-len-6);\n padding: var(--wb-len-12) var(--wb-len-14);\n border: 0.5px solid var(--dsw-alias-settings-card-stroke);\n border-radius: var(--dsw-radius-xl);\n background: var(--dsw-alias-settings-card-fill);\n}\n\n._head_85r3w_20 {\n display: flex;\n align-items: center;\n gap: var(--wb-len-8);\n min-width: 0;\n}\n\n._pick_85r3w_27 {\n flex: 0 1 auto;\n min-width: 0;\n font-size: var(--dsw-font-xs-13-font-size);\n}\n\n._pick_85r3w_27 > span {\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n\n._code_85r3w_39 {\n --dsl-code-block-background: var(--dsw-alias-bg-layer-1);\n margin: 0;\n}\n\n._missing_85r3w_44,\n._conflict_85r3w_45 {\n font-size: var(--dsw-font-xxs-12-font-size);\n line-height: var(--wb-line-18);\n color: var(--dsw-alias-state-warn-primary);\n}\n._body_11oac_1 {\n display: flex;\n flex-direction: column;\n gap: var(--wb-len-12);\n}\n\n._sources_11oac_7 {\n display: flex;\n flex-wrap: wrap;\n align-items: center;\n gap: var(--wb-len-8);\n}\n\n._sourcesLabel_11oac_14 {\n font-size: var(--dsw-font-xxs-12-font-size);\n color: var(--dsw-alias-label-secondary);\n}\n\nbutton._sourceOn_11oac_19 {\n border-color: var(--dsw-alias-brand-primary);\n}\n._sourceCount_11oac_22 {\n margin-left: var(--wb-len-4);\n font-variant-numeric: tabular-nums;\n font-size: var(--dsw-font-xxs-12-font-size);\n color: var(--dsw-alias-label-tertiary);\n}\n\n._reading_11oac_29 {\n display: flex;\n flex-direction: column;\n gap: var(--wb-len-4);\n}\n\n._status_11oac_35 {\n display: inline-flex;\n align-items: center;\n gap: var(--wb-len-6);\n margin: 0;\n font-size: var(--dsw-font-xxs-12-font-size);\n line-height: var(--wb-line-18);\n color: var(--dsw-alias-label-tertiary);\n}\n\n._failure_11oac_45 {\n display: grid;\n grid-template-columns: minmax(0, 1fr) auto;\n column-gap: var(--wb-len-10);\n row-gap: var(--wb-len-2);\n color: var(--dsw-alias-state-error-primary);\n font-size: var(--dsw-font-xxs-12-font-size);\n line-height: var(--wb-line-18);\n}\n\n._failureTitle_11oac_55 {\n display: inline-flex;\n align-items: center;\n gap: var(--wb-len-6);\n min-width: 0;\n}\n\n._failureHint_11oac_62 {\n grid-column: 1;\n color: var(--dsw-alias-label-tertiary);\n}\n\n._failureAction_11oac_67 {\n grid-column: 2;\n grid-row: 1;\n justify-self: end;\n}\n\n._foot_11oac_73 {\n display: flex;\n justify-content: flex-end;\n}\n._body_lox98_1 {\n display: flex;\n flex-direction: column;\n gap: var(--wb-len-12);\n}\n\n._field_lox98_7 {\n display: flex;\n flex-direction: column;\n gap: var(--wb-len-6);\n}\n\n._input_lox98_13 {\n width: 100%;\n}\n\n._label_lox98_17 {\n font-size: var(--dsw-font-xxs-12-font-size);\n color: var(--dsw-alias-label-secondary);\n}\n\n._hint_lox98_22 {\n margin: 0;\n font-size: var(--dsw-font-xxs-12-font-size);\n color: var(--dsw-alias-label-tertiary);\n}\n\n._copy_lox98_28 {\n display: flex;\n flex-wrap: wrap;\n gap: var(--wb-len-8) var(--wb-len-16);\n margin: 0;\n padding: 0;\n border: 0;\n}\n\n._copy_lox98_28 legend {\n padding: 0;\n margin-bottom: var(--wb-len-6);\n}\n\n._actions_lox98_42 {\n display: flex;\n justify-content: flex-end;\n}\n\n._commandLabel_lox98_47 {\n display: block;\n margin-top: var(--wb-len-4);\n}\n\n._command_lox98_47 {\n display: block;\n margin-top: var(--wb-len-4);\n padding: var(--wb-len-6) var(--wb-len-8);\n border-radius: var(--dsw-radius-md);\n background: var(--dsw-alias-bg-layer-1);\n font-family: var(--ds-font-family-code, monospace);\n font-size: var(--dsw-font-xxs-12-font-size);\n overflow-wrap: anywhere;\n}\n._body_zi2j5_1 {\n display: flex;\n flex-direction: column;\n gap: var(--wb-len-12);\n}\n\n._lead_zi2j5_7 {\n margin: 0;\n font-size: var(--dsw-font-xs-13-font-size);\n line-height: var(--wb-line-18);\n color: var(--dsw-alias-label-secondary);\n}\n\n._title_zi2j5_14 {\n font-size: var(--wb-font-18);\n line-height: var(--wb-line-24);\n}\n._hint_zyzt3_1[hidden],\n._actions_zyzt3_2[hidden],\n._progress_zyzt3_3[hidden],\n._commandRow_zyzt3_4[hidden],\n._bridge_zyzt3_5[hidden],\n._raw_zyzt3_6[hidden] {\n display: none;\n}\n\n._gate_zyzt3_10 {\n position: fixed;\n inset: 0;\n z-index: var(--wb-z-top);\n display: flex;\n align-items: center;\n justify-content: center;\n padding: var(--wb-len-24);\n background: var(--dsw-alias-bg-base);\n}\n\n._card_zyzt3_21 {\n width: 100%;\n max-width: var(--wb-len-420);\n display: flex;\n flex-direction: column;\n align-items: center;\n gap: var(--wb-len-16);\n text-align: center;\n}\n\n._card_zyzt3_21:has(._actions_zyzt3_2:not([hidden])),\n._card_zyzt3_21:has(._bridge_zyzt3_5:not([hidden])) {\n max-width: var(--wb-len-520);\n}\n\n._title_zyzt3_36 {\n margin: 0;\n font-size: var(--dsw-font-base-16-font-size);\n line-height: var(--wb-line-24);\n font-weight: 600;\n color: var(--dsw-alias-label-primary);\n}\n\n._hint_zyzt3_1 {\n margin: 0;\n font-size: var(--dsw-font-xxs-12-font-size);\n line-height: var(--wb-line-18);\n color: var(--dsw-alias-label-tertiary);\n}\n\n._steps_zyzt3_51 {\n list-style: none;\n margin: var(--wb-len-6) 0 0;\n padding: 0;\n width: 100%;\n display: flex;\n flex-direction: column;\n gap: var(--wb-len-2);\n text-align: left;\n}\n\n._step_zyzt3_51 {\n display: flex;\n align-items: center;\n gap: var(--wb-len-8);\n padding: var(--wb-len-6) var(--wb-len-10);\n border-radius: var(--dsw-radius-sm);\n font-size: var(--dsw-font-xxs-12-font-size);\n line-height: var(--wb-line-18);\n color: var(--dsw-alias-label-secondary);\n background: var(--dsw-alias-bg-layer-1);\n}\n\n._step_zyzt3_51[data-status='running'] {\n color: var(--dsw-alias-label-primary);\n}\n\n._mark_zyzt3_78 {\n flex: none;\n display: flex;\n align-items: center;\n justify-content: center;\n width: var(--wb-len-14);\n height: var(--wb-len-14);\n font-size: var(--dsw-font-xxs-12-font-size);\n line-height: var(--wb-line-18);\n color: var(--dsw-alias-label-tertiary);\n font-variant-numeric: tabular-nums;\n}\n\n._step_zyzt3_51[data-status='ok'] ._mark_zyzt3_78 {\n color: var(--dsw-alias-state-success-primary);\n}\n\n._step_zyzt3_51[data-status='warn'] ._mark_zyzt3_78 {\n color: var(--dsw-alias-state-warn-primary);\n}\n\n._step_zyzt3_51[data-status='failed'] ._mark_zyzt3_78 {\n color: var(--dsw-alias-state-error-primary);\n}\n\n._label_zyzt3_103 {\n flex: none;\n}\n\n._detail_zyzt3_107 {\n margin-left: auto;\n min-width: 0;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n color: var(--dsw-alias-label-tertiary);\n}\n\n._progress_zyzt3_3 {\n display: flex;\n align-items: center;\n justify-content: center;\n gap: var(--wb-len-8);\n margin-top: var(--wb-len-4);\n max-width: 100%;\n}\n\n._elapsed_zyzt3_125 {\n flex: none;\n font-size: var(--dsw-font-xxxs-11-font-size);\n line-height: var(--wb-line-16);\n color: var(--dsw-alias-label-tertiary);\n font-variant-numeric: tabular-nums;\n}\n\n._error_zyzt3_133 {\n margin: 0;\n padding: var(--wb-len-8) var(--wb-len-10);\n max-height: var(--wb-len-120);\n overflow: auto;\n border-radius: var(--dsw-radius-sm);\n background: var(--dsw-alias-bg-layer-1);\n font-family: var(--ds-font-family-code, monospace);\n font-size: var(--dsw-font-xxxs-11-font-size);\n line-height: var(--wb-line-16);\n white-space: pre-wrap;\n word-break: break-all;\n text-align: left;\n color: var(--dsw-alias-label-tertiary);\n}\n\n._commandRow_zyzt3_4 {\n display: flex;\n align-items: center;\n gap: var(--wb-len-4);\n margin: 0 0 var(--wb-len-8);\n padding-right: var(--wb-len-4);\n border-radius: var(--dsw-radius-sm);\n background: var(--dsw-alias-bg-layer-2);\n}\n\n._copy_zyzt3_159 {\n flex: none;\n display: flex;\n align-items: center;\n justify-content: center;\n width: var(--wb-len-24);\n height: var(--wb-len-24);\n padding: 0;\n border: none;\n border-radius: var(--wb-radius-6);\n background: transparent;\n color: var(--dsw-alias-label-tertiary);\n cursor: pointer;\n}\n\n._copy_zyzt3_159:hover {\n background: var(--dsw-alias-interactive-bg-hover);\n color: var(--dsw-alias-label-primary);\n}\n\n._command_zyzt3_4 {\n flex: 1;\n min-width: 0;\n padding: var(--wb-len-8) var(--wb-len-10);\n border-radius: var(--dsw-radius-sm);\n background: transparent;\n font-family: var(--ds-font-family-code, monospace);\n font-size: var(--dsw-font-xxxs-11-font-size);\n line-height: var(--wb-line-16);\n overflow-wrap: anywhere;\n color: var(--dsw-alias-label-primary);\n}\n\n._buttons_zyzt3_192 {\n display: flex;\n align-items: center;\n justify-content: center;\n gap: var(--wb-len-12);\n}\n\n._mockSlot_zyzt3_199 {\n position: absolute;\n top: 0;\n left: 0;\n right: 0;\n justify-content: center;\n background: var(--dsw-alias-bg-base);\n}\n\n._button_zyzt3_192 {\n box-sizing: border-box;\n display: inline-flex;\n align-items: center;\n justify-content: center;\n height: var(--wb-len-28);\n padding: 0 var(--wb-len-10);\n border: 0.5px solid var(--dsw-alias-border-l3);\n border-radius: var(--dsw-radius-sm);\n background: transparent;\n font: inherit;\n font-size: var(--dsw-font-xxs-12-font-size);\n line-height: var(--wb-line-18);\n color: var(--dsw-alias-label-primary);\n cursor: pointer;\n}\n\n._button_zyzt3_192:hover:not(:disabled) {\n background: var(--dsw-alias-interactive-bg-hover);\n}\n\n._button_zyzt3_192:disabled {\n cursor: not-allowed;\n opacity: 0.4;\n}\n\n._actions_zyzt3_2,\n._bridge_zyzt3_5 {\n box-sizing: border-box;\n width: 100%;\n display: flex;\n flex-direction: column;\n align-items: stretch;\n gap: var(--wb-len-10);\n margin-top: var(--wb-len-4);\n padding: var(--wb-len-14) var(--wb-len-16);\n border: 0.5px solid var(--dsw-alias-border-l2);\n border-radius: var(--wb-radius-14);\n background: var(--dsw-alias-bg-layer-1);\n text-align: left;\n}\n\n._fixTitle_zyzt3_250 {\n margin: 0;\n font-size: var(--dsw-font-xs-13-font-size);\n line-height: var(--wb-line-20);\n font-weight: 600;\n color: var(--dsw-alias-label-primary);\n}\n\n._actions_zyzt3_2 ._hint_zyzt3_1,\n._bridge_zyzt3_5 ._hint_zyzt3_1 {\n margin: 0;\n font-size: var(--dsw-font-xxs-12-font-size);\n line-height: var(--wb-line-19);\n color: var(--dsw-alias-label-secondary);\n}\n\n._actions_zyzt3_2 ._commandRow_zyzt3_4,\n._bridge_zyzt3_5 ._commandRow_zyzt3_4 {\n margin: 0;\n}\n\n._actions_zyzt3_2 ._buttons_zyzt3_192,\n._bridge_zyzt3_5 ._buttons_zyzt3_192 {\n justify-content: flex-start;\n}\n\n._raw_zyzt3_6 {\n box-sizing: border-box;\n width: 100%;\n margin: 0;\n font-size: var(--dsw-font-xxxs-11-font-size);\n line-height: var(--wb-line-16);\n text-align: left;\n color: var(--dsw-alias-label-tertiary);\n}\n\n._rawSummary_zyzt3_286 {\n cursor: pointer;\n color: var(--dsw-alias-label-tertiary);\n}\n\n._actions_zyzt3_2 ._error_zyzt3_133,\n._bridge_zyzt3_5 ._error_zyzt3_133 {\n margin-top: var(--wb-len-6);\n}\n\n._bridgeLines_zyzt3_296 {\n margin: 0;\n padding-left: var(--wb-len-18);\n display: flex;\n flex-direction: column;\n gap: var(--wb-len-8);\n font-size: var(--dsw-font-xxs-12-font-size);\n line-height: var(--wb-line-19);\n color: var(--dsw-alias-label-secondary);\n}\n\n._bridgeLine_zyzt3_296 a {\n display: block;\n margin-top: var(--wb-len-4);\n width: fit-content;\n}\n\n._link_zyzt3_313 {\n color: var(--dsw-alias-label-primary);\n text-decoration: none;\n}\n\n._link_zyzt3_313::after {\n content: '↗';\n margin-left: var(--wb-len-2);\n}\n\n._link_zyzt3_313:hover {\n text-decoration: underline;\n}\n\n._loading_zyzt3_327 {\n flex: none;\n color: var(--dsw-alias-label-tertiary);\n}\n\n._loading_zyzt3_327[hidden] {\n display: none;\n}\n\n._loadingMotion_zyzt3_336 {\n transform-origin: center;\n animation: _wb-spin_zyzt3_1 var(--wb-dur-1-5) linear infinite;\n}\n\n._loadingTrack_zyzt3_341,\n._loadingArc_zyzt3_342 {\n fill: none;\n stroke: currentColor;\n stroke-width: 2;\n stroke-linecap: round;\n}\n\n._loadingTrack_zyzt3_341 {\n opacity: 0.25;\n}\n\n._loadingArc_zyzt3_342 {\n stroke-dasharray: 12 150;\n animation: _wb-dash_zyzt3_1 var(--wb-dur-1-5) ease-in-out infinite;\n}\n\n@keyframes _wb-spin_zyzt3_1 {\n from {\n transform: rotate(0deg);\n }\n to {\n transform: rotate(360deg);\n }\n}\n\n@keyframes _wb-dash_zyzt3_1 {\n 0% {\n stroke-dasharray: 12 150;\n stroke-dashoffset: 0;\n }\n 50% {\n stroke-dasharray: 24 150;\n stroke-dashoffset: -6;\n }\n to {\n stroke-dasharray: 12 150;\n stroke-dashoffset: 0;\n }\n}\n\n@media (prefers-reduced-motion: reduce) {\n ._loadingMotion_zyzt3_336,\n ._loadingArc_zyzt3_342 {\n animation: none;\n }\n}\n._changelog_1q6pj_1 {\n display: flex;\n flex-direction: column;\n gap: var(--wb-len-6);\n margin-top: var(--wb-len-10);\n min-width: 0;\n}\n\n._changelogTitle_1q6pj_9 {\n margin: 0;\n font: var(--dsw-font-s-14);\n color: var(--dsw-alias-label-secondary);\n}\n\n._changelogMissing_1q6pj_15 {\n margin: 0;\n font: var(--dsw-font-s-14);\n color: var(--dsw-alias-label-primary);\n}\n\n._changelogBody_1q6pj_21 {\n max-height: var(--wb-len-320);\n overflow: auto;\n padding: var(--wb-len-10);\n border: 0.5px solid var(--dsw-alias-border-l3);\n border-radius: var(--dsw-radius-lg);\n}\n._group_1hxis_1 {\n display: inline-flex;\n align-items: center;\n gap: var(--wb-len-2);\n}\n\n._button_1hxis_7 {\n flex: none;\n width: var(--wb-len-28);\n height: var(--wb-len-28);\n padding: 0;\n color: var(--dsw-alias-label-secondary);\n}\n\n._button_1hxis_7:hover:not(:disabled) {\n color: var(--dsw-alias-label-primary);\n}\n\n._active_1hxis_19 {\n background: var(--dsw-alias-interactive-bg-hover);\n}\n\n._icon_1hxis_23 {\n display: flex;\n align-items: center;\n justify-content: center;\n}\n\n._icon_1hxis_23 svg {\n display: block;\n width: var(--wb-len-15);\n height: var(--wb-len-15);\n}\n\n._mirror_1hxis_35 {\n transform: scaleX(-1);\n}\n._stripTabs_1dqp4_1 {\n display: flex;\n align-items: center;\n gap: var(--wb-len-4);\n min-width: 0;\n overflow: hidden;\n}\n\n._tab_1dqp4_9 {\n display: inline-flex;\n align-items: center;\n gap: var(--wb-len-6);\n flex: none;\n height: var(--wb-len-28);\n padding: 0 var(--wb-len-10);\n border: 0;\n border-radius: var(--dsw-radius-sm);\n background: none;\n font: inherit;\n font-size: var(--dsw-font-xs-13-font-size);\n line-height: var(--wb-line-16);\n max-width: 100%;\n}\n\n._tabActive_1dqp4_25 {\n color: var(--dsw-alias-label-primary);\n}\n\n._tabQuiet_1dqp4_29 {\n color: var(--dsw-alias-label-tertiary);\n cursor: pointer;\n}\n\n._tabQuiet_1dqp4_29:hover {\n color: var(--dsw-alias-label-primary);\n background: var(--dsw-alias-interactive-bg-hover);\n}\n\n._tabTitle_1dqp4_39 {\n display: inline-flex;\n align-items: center;\n gap: var(--wb-len-6);\n min-width: 0;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n\n._sep_1dqp4_49 {\n flex: none;\n color: var(--dsw-alias-label-dimmed);\n}\n._actions_smeq7_1 {\n display: flex;\n flex-wrap: wrap;\n justify-content: center;\n gap: var(--wb-len-8);\n max-width: 100%;\n}\n\n._action_smeq7_1 {\n flex: none;\n white-space: nowrap;\n}\n\n@container (max-width: 340px) {\n ._actions_smeq7_1 {\n flex-direction: column;\n width: var(--wb-len-220);\n max-width: 100%;\n }\n\n ._action_smeq7_1 {\n width: 100%;\n }\n}\n._trigger_15ptp_1 {\n display: flex;\n align-items: center;\n}\n\n._pop_15ptp_6 {\n position: absolute;\n top: calc(var(--wb-len-38) + var(--wb-len-8));\n right: var(--wb-len-6);\n z-index: var(--wb-z-30);\n width: min(var(--wb-len-360), calc(100% - var(--wb-len-12)));\n max-width: calc(100vw - var(--wb-len-48));\n border: 0.5px solid var(--dsw-alias-border-l2);\n border-radius: var(--wb-radius-14);\n background: var(--dsw-alias-bg-layer-2);\n box-shadow: var(--dsw-shadow-lv3);\n overflow: hidden;\n}\n\n._head_15ptp_20 {\n display: flex;\n align-items: center;\n gap: var(--wb-len-8);\n padding: var(--wb-len-10) var(--wb-len-12) var(--wb-len-9) var(--wb-len-14);\n border-bottom: 0.5px solid var(--dsw-alias-border-l2);\n}\n\n._title_15ptp_28 {\n flex: 1;\n font-size: var(--dsw-font-xs-13-font-size);\n line-height: var(--wb-line-20);\n font-weight: 600;\n color: var(--dsw-alias-label-primary);\n}\n\n._rowControls_15ptp_36 {\n flex: none;\n display: inline-flex;\n align-items: center;\n gap: var(--wb-len-8);\n}\n\n._reset_15ptp_43 {\n flex: none;\n padding: var(--wb-len-3) var(--wb-len-8);\n border: none;\n border-radius: var(--wb-radius-6);\n background: transparent;\n font-size: var(--dsw-font-xxxs-11-font-size);\n line-height: var(--wb-line-16);\n color: var(--dsw-alias-label-tertiary);\n cursor: pointer;\n}\n\n._reset_15ptp_43:hover:not(:disabled) {\n background: var(--dsw-alias-interactive-bg-hover);\n color: var(--dsw-alias-label-primary);\n}\n\n._reset_15ptp_43:disabled {\n cursor: default;\n opacity: 0.5;\n}\n\n._list_15ptp_65 {\n list-style: none;\n margin: 0;\n padding: var(--wb-len-6);\n display: flex;\n flex-direction: column;\n gap: var(--wb-len-2);\n}\n\n._row_15ptp_36 {\n position: relative;\n display: grid;\n grid-template-columns: 12px minmax(0, 1fr) auto;\n align-items: center;\n gap: var(--wb-len-8);\n padding: var(--wb-len-7) var(--wb-len-8);\n border-radius: var(--dsw-radius-sm);\n cursor: default;\n}\n\n._rowDragging_15ptp_85 {\n cursor: grabbing;\n}\n\n._rowBlocked_15ptp_89 {\n cursor: not-allowed;\n}\n\n._listDragging_15ptp_93 ._rowControls_15ptp_36 {\n pointer-events: none;\n}\n\n._row_15ptp_36:hover {\n background: var(--dsw-alias-interactive-bg-hover);\n}\n\n._rowOff_15ptp_101 {\n opacity: 0.55;\n}\n\n._rowOff_15ptp_101:hover {\n opacity: 1;\n}\n\n._rowOver_15ptp_109::before {\n content: '';\n position: absolute;\n top: var(--wb-len-neg-3);\n left: var(--wb-len-8);\n right: var(--wb-len-8);\n height: var(--wb-len-2);\n background: var(--dsw-alias-brand-primary);\n}\n\n._ghost_15ptp_119 {\n position: fixed;\n z-index: var(--wb-z-40);\n pointer-events: none;\n padding: var(--wb-len-4) var(--wb-len-10);\n border: 0.5px solid var(--dsw-alias-border-l3);\n border-radius: var(--dsw-radius-sm);\n background: var(--dsw-alias-bg-layer-1);\n box-shadow: var(--wb-static-shadow-ghost);\n font-size: var(--dsw-font-xs-13-font-size);\n line-height: var(--wb-line-18);\n color: var(--dsw-alias-label-primary);\n white-space: nowrap;\n}\n\n._grip_15ptp_134 {\n font-size: var(--dsw-font-xxxs-11-font-size);\n line-height: var(--wb-line-16);\n text-align: center;\n color: var(--dsw-alias-label-tertiary);\n user-select: none;\n cursor: grab;\n touch-action: none;\n}\n\n._gripDragging_15ptp_144 {\n cursor: grabbing;\n}\n\n._gripBlocked_15ptp_148 {\n cursor: not-allowed;\n}\n\n._label_15ptp_152 {\n display: flex;\n align-items: center;\n gap: var(--wb-len-6);\n min-width: 0;\n}\n\n._name_15ptp_159 {\n min-width: 0;\n flex: 0 1 auto;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n font-size: var(--dsw-font-xs-13-font-size);\n line-height: var(--wb-line-18);\n color: var(--dsw-alias-label-primary);\n}\n\n._error_15ptp_170 {\n margin: 0;\n padding: 0 var(--wb-len-14) var(--wb-len-10);\n font-size: var(--dsw-font-xxxs-11-font-size);\n line-height: var(--wb-line-16);\n color: var(--dsw-alias-state-error-primary);\n}\n\n._dep_15ptp_178 {\n flex: none;\n font-size: var(--dsw-font-xxxs-11-font-size);\n line-height: var(--wb-line-16);\n color: var(--dsw-alias-label-tertiary);\n white-space: nowrap;\n}\n\n._group_15ptp_186 {\n padding-top: var(--wb-len-6);\n border-top: 0.5px solid var(--dsw-alias-border-l2);\n}\n\n._groupTitle_15ptp_191 {\n margin: 0;\n padding: var(--wb-len-2) var(--wb-len-8) 0 var(--wb-len-14);\n font-size: var(--dsw-font-xxxs-11-font-size);\n line-height: var(--wb-line-16);\n font-weight: 400;\n color: var(--dsw-alias-label-tertiary);\n}\n._panel_1whum_1 {\n position: absolute;\n top: 0;\n right: 0;\n bottom: 0;\n z-index: var(--wb-z-10);\n visibility: hidden;\n}\n\n._panel_1whum_1[data-fullscreen] {\n z-index: var(--wb-z-40);\n}\n\n._panel_1whum_1[data-open] {\n visibility: visible;\n}\n\n._columns_1whum_18 {\n display: block;\n column-gap: var(--wb-len-12);\n}\n\n._cell_1whum_23 {\n display: flow-root;\n min-width: 0;\n break-inside: avoid;\n margin-bottom: var(--wb-len-12);\n}\n._root_1cmz0_1 {\n position: relative;\n flex: none;\n margin: 0 var(--wb-len-2) var(--wb-len-4);\n}\n\n._rail_1cmz0_7 {\n margin: 0 0 var(--wb-len-4);\n}\n\n._glyphBox_1cmz0_11 {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n width: 100%;\n height: 100%;\n}\n\n._glyph_1cmz0_11 {\n position: relative;\n flex: none;\n display: inline-flex;\n align-items: center;\n justify-content: center;\n width: var(--wb-len-16);\n height: var(--wb-len-20);\n color: var(--dsw-alias-label-tertiary);\n}\n\n._glyphActive_1cmz0_30 {\n color: var(--dsw-alias-state-business-primary);\n}\n\n._triggerName_1cmz0_34 {\n flex: 1;\n min-width: 0;\n display: flex;\n align-items: baseline;\n gap: var(--wb-len-6);\n font-size: var(--wb-font-row);\n line-height: var(--wb-line-20);\n overflow: hidden;\n}\n\n._dir_1cmz0_45 {\n flex: 0 1 auto;\n min-width: 0;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n\n._name_1cmz0_53 {\n flex: 0 1 auto;\n max-width: 50%;\n font-size: var(--dsw-font-xxs-12-font-size);\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n\n._triggerName_1cmz0_34 ._name_1cmz0_53 {\n color: var(--dsw-alias-label-tertiary);\n}\n\n._row_1cmz0_66 {\n display: flex;\n align-items: center;\n gap: var(--wb-len-6);\n width: 100%;\n min-width: 0;\n}\n\n._trailing_1cmz0_74 {\n flex: none;\n display: inline-flex;\n align-items: center;\n justify-content: center;\n width: var(--wb-len-20);\n height: var(--wb-len-20);\n margin-inline-start: auto;\n}\n\n._trailing_1cmz0_74 ._rowAction_1cmz0_84 {\n width: var(--wb-len-20);\n min-width: var(--wb-len-20);\n height: var(--wb-len-20);\n min-height: var(--wb-len-20);\n padding: 0;\n border-radius: var(--dsw-radius-sm);\n}\n\n._row_1cmz0_66 ._name_1cmz0_53 {\n color: var(--dsw-alias-label-tertiary);\n}\n\n._current_1cmz0_97 {\n flex: none;\n display: inline-flex;\n align-items: center;\n color: var(--dsw-alias-label-primary);\n}\n._dot_sosf1_1 {\n flex: none;\n display: inline-flex;\n align-items: center;\n justify-content: center;\n}\n\n._overlay_sosf1_8 {\n position: absolute;\n inset-block-start: var(--wb-len-neg-3);\n inset-inline-end: var(--wb-len-neg-3);\n}\n._tag_g9dg8_1 {\n flex: none;\n margin-inline-start: auto;\n}\n._dialog_1vye5_1 {\n width: min(var(--wb-len-420), 100%);\n}\n\n._stack_1vye5_5 {\n display: flex;\n flex-direction: column;\n gap: var(--wb-len-8);\n min-width: 0;\n}\n\n._input_1vye5_12 {\n width: 100%;\n height: var(--wb-len-40);\n padding: 0 var(--wb-len-12);\n}\n\n._meta_1vye5_18 {\n display: flex;\n align-items: center;\n justify-content: space-between;\n gap: var(--wb-len-12);\n min-width: 0;\n}\n._dot_14w1n_1 {\n display: inline-flex;\n align-items: center;\n}\n\n._hover_14w1n_6 {\n display: inline-flex;\n align-items: center;\n gap: var(--wb-len-6);\n font-size: var(--dsw-font-xxs-12-font-size);\n line-height: var(--wb-line-18);\n color: var(--dsw-alias-label-secondary);\n}\n._blocker_1oaj0_1 {\n display: flex;\n flex-direction: column;\n align-items: center;\n gap: var(--wb-len-6);\n padding: var(--wb-len-20) var(--wb-len-16);\n text-align: center;\n}\n\n._icon_1oaj0_10 {\n display: flex;\n color: var(--dsw-alias-label-tertiary);\n}\n\n._title_1oaj0_15 {\n margin: var(--wb-len-2) 0 0;\n font-size: var(--dsw-font-s-14-font-size);\n line-height: var(--wb-line-22);\n font-weight: 600;\n color: var(--dsw-alias-label-primary);\n}\n\n._hint_1oaj0_23 {\n margin: 0;\n max-width: var(--wb-len-42em);\n font-size: var(--dsw-font-xxs-12-font-size);\n line-height: var(--wb-line-18);\n color: var(--dsw-alias-label-tertiary);\n text-wrap: pretty;\n}\n\n._blocker_1oaj0_1._blockerInline_1oaj0_32 {\n align-items: flex-start;\n gap: var(--wb-len-6);\n padding: var(--wb-len-4) 0 var(--wb-len-2);\n text-align: left;\n}\n\n._blocker_1oaj0_1._blockerInline_1oaj0_32 ._title_1oaj0_15 {\n font-size: var(--dsw-font-xs-13-font-size);\n line-height: var(--wb-line-20);\n}\n\n._blocker_1oaj0_1._blockerInline_1oaj0_32 ._hint_1oaj0_23 {\n max-width: 100%;\n}\n\n._blocker_1oaj0_1._blockerInline_1oaj0_32 ._actions_1oaj0_48 {\n margin-top: var(--wb-len-8);\n}\n\n._blocker_1oaj0_1._blockerInline_1oaj0_32 ._raw_1oaj0_52 {\n margin-top: var(--wb-len-4);\n max-width: 100%;\n}\n\n._actions_1oaj0_48 {\n display: flex;\n align-items: center;\n gap: var(--wb-len-10);\n margin-top: var(--wb-len-6);\n}\n\n._raw_1oaj0_52 {\n margin-top: var(--wb-len-10);\n width: 100%;\n max-width: var(--wb-len-360);\n text-align: left;\n}\n\n._notice_1oaj0_71 {\n display: grid;\n grid-template-columns: minmax(0, 1fr) auto;\n align-items: start;\n column-gap: var(--wb-len-10);\n margin: 0 0 var(--wb-len-10);\n padding: var(--wb-len-10) var(--wb-len-12);\n border: 0.5px solid var(--dsw-alias-border-l2);\n border-left: 2px solid var(--dsw-alias-border-l3);\n border-radius: var(--dsw-radius-sm);\n background: var(--dsw-alias-bg-layer-1);\n}\n\n._notice_1oaj0_71._noticeFlat_1oaj0_84 {\n margin: 0;\n padding: 0;\n border: 0;\n background: transparent;\n}\n\n._noticeText_1oaj0_91 {\n display: flex;\n flex-direction: column;\n gap: var(--wb-len-3);\n min-width: 0;\n}\n\n._noticeTitle_1oaj0_98 {\n font-size: var(--wb-font-12-5);\n line-height: var(--wb-line-18);\n font-weight: 600;\n color: var(--dsw-alias-label-primary);\n}\n\n._noticeHint_1oaj0_105 {\n font-size: var(--wb-font-11-5);\n line-height: var(--wb-line-17);\n color: var(--dsw-alias-label-tertiary);\n overflow-wrap: anywhere;\n}\n\n._noticeActions_1oaj0_112 {\n display: flex;\n align-items: center;\n gap: var(--wb-len-6);\n margin-top: var(--wb-len-neg-2);\n}\n\n._failure_1oaj0_119 {\n margin: var(--wb-len-8) 0 0;\n font-size: var(--wb-font-11-5);\n line-height: var(--wb-line-17);\n color: var(--dsw-alias-state-error-primary);\n overflow-wrap: anywhere;\n}\n\n._failureDetail_1oaj0_127 {\n display: block;\n margin-top: var(--wb-len-2);\n color: var(--dsw-alias-label-tertiary);\n white-space: pre-wrap;\n}\n\n._inlineAction_1oaj0_134 {\n padding: 0;\n border: none;\n background: transparent;\n cursor: pointer;\n}\n\n._inlineAction_1oaj0_134:disabled {\n opacity: 0.6;\n cursor: default;\n}\n\n._rawText_1oaj0_146 {\n margin: var(--wb-len-6) 0 0;\n max-width: 100%;\n}\n/*$vite$:1*/";
16245
16429
  function workbenchCss() {
16246
16430
  return `${tokens_default}\n${palette_default}\n${scale_default}\n${sidebar_default}\n${sidebar_app_default}\n${rightbar_default}\n${chrome_default}\n${board_default}\n${motion_default}\n${COMPONENT_CSS_MARKER}`;
16247
16431
  }