@orangecheck/design 0.32.1 → 0.32.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.js CHANGED
@@ -1573,7 +1573,7 @@ function Working({ text, size = "md", progress, className }) {
1573
1573
  ] }),
1574
1574
  /* @__PURE__ */ jsxRuntime.jsxs("span", { className: "oc-working-text", children: [
1575
1575
  text,
1576
- progress && /* @__PURE__ */ jsxRuntime.jsxs("span", { className: "text-muted-foreground/60 ml-1.5", children: [
1576
+ progress && /* @__PURE__ */ jsxRuntime.jsxs("span", { className: "text-muted-foreground ml-1.5", children: [
1577
1577
  "[",
1578
1578
  progress,
1579
1579
  "]"
@@ -2116,7 +2116,7 @@ function Modal({ open, onOpenChange, title, subtitle, children, actions, width =
2116
2116
  /* @__PURE__ */ jsxRuntime.jsx("span", { className: "terminal-dot opacity-70", "aria-hidden": true }),
2117
2117
  /* @__PURE__ */ jsxRuntime.jsx("span", { className: "terminal-dot opacity-50", "aria-hidden": true }),
2118
2118
  /* @__PURE__ */ jsxRuntime.jsx(SheetPrimitive__namespace.Title, { className: "ml-2 truncate [flex-shrink:1]", children: title }),
2119
- subtitle && /* @__PURE__ */ jsxRuntime.jsxs("span", { className: "text-muted-foreground/70 ml-1 min-w-0 truncate text-[10px] normal-case tracking-normal [flex-shrink:100]", children: [
2119
+ subtitle && /* @__PURE__ */ jsxRuntime.jsxs("span", { className: "text-muted-foreground ml-1 min-w-0 truncate text-[10px] normal-case tracking-normal [flex-shrink:100]", children: [
2120
2120
  "\xB7 ",
2121
2121
  subtitle
2122
2122
  ] })
@@ -2144,7 +2144,7 @@ function Pagination({ page, pageSize, total, onPage, className }) {
2144
2144
  const start = page * pageSize;
2145
2145
  const shown = Math.max(0, Math.min(pageSize, total - start));
2146
2146
  return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex items-center justify-between " + (className ?? "mt-3"), children: [
2147
- /* @__PURE__ */ jsxRuntime.jsxs("span", { className: "text-muted-foreground/70 font-mono text-[10px]", children: [
2147
+ /* @__PURE__ */ jsxRuntime.jsxs("span", { className: "text-muted-foreground font-mono text-[10px]", children: [
2148
2148
  start + 1,
2149
2149
  "\u2013",
2150
2150
  start + shown,
@@ -2673,13 +2673,13 @@ function Card({
2673
2673
  /* @__PURE__ */ jsxRuntime.jsx("span", { className: "terminal-dot opacity-70", "aria-hidden": true }),
2674
2674
  /* @__PURE__ */ jsxRuntime.jsx("span", { className: "terminal-dot opacity-50", "aria-hidden": true }),
2675
2675
  /* @__PURE__ */ jsxRuntime.jsx("span", { className: "ml-2 truncate [flex-shrink:1]", children: title }),
2676
- subtitle && /* @__PURE__ */ jsxRuntime.jsxs("span", { className: "text-muted-foreground/70 ml-1 min-w-0 truncate text-[10px] tracking-normal normal-case [flex-shrink:100]", children: [
2676
+ subtitle && /* @__PURE__ */ jsxRuntime.jsxs("span", { className: "text-muted-foreground ml-1 min-w-0 truncate text-[10px] tracking-normal normal-case [flex-shrink:100]", children: [
2677
2677
  "\xB7 ",
2678
2678
  subtitle
2679
2679
  ] })
2680
2680
  ] }),
2681
2681
  /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex shrink-0 items-center gap-2", children: [
2682
- refreshedAt && /* @__PURE__ */ jsxRuntime.jsx("span", { className: "text-muted-foreground/60 hidden text-[10px] tracking-normal normal-case sm:inline", children: refreshedAt }),
2682
+ refreshedAt && /* @__PURE__ */ jsxRuntime.jsx("span", { className: "text-muted-foreground hidden text-[10px] tracking-normal normal-case sm:inline", children: refreshedAt }),
2683
2683
  actions,
2684
2684
  expandable && /* @__PURE__ */ jsxRuntime.jsx(
2685
2685
  "button",
@@ -2688,7 +2688,7 @@ function Card({
2688
2688
  onClick: () => setExpanded(true),
2689
2689
  "aria-label": `expand ${title}`,
2690
2690
  title: "expand to fullscreen",
2691
- className: "text-muted-foreground/70 hover:text-foreground inline-flex h-6 w-6 items-center justify-center rounded-sm",
2691
+ className: "text-muted-foreground hover:text-foreground inline-flex h-6 w-6 items-center justify-center rounded-sm",
2692
2692
  children: /* @__PURE__ */ jsxRuntime.jsx(lucideReact.Maximize2, { className: "size-3" })
2693
2693
  }
2694
2694
  )
@@ -2705,7 +2705,7 @@ function Card({
2705
2705
  onOpenChange: setExpanded,
2706
2706
  title,
2707
2707
  ...subtitle ? { subtitle } : {},
2708
- actions: refreshedAt ? /* @__PURE__ */ jsxRuntime.jsx("span", { className: "text-muted-foreground/60 hidden text-[10px] tracking-normal normal-case sm:inline", children: refreshedAt }) : null,
2708
+ actions: refreshedAt ? /* @__PURE__ */ jsxRuntime.jsx("span", { className: "text-muted-foreground hidden text-[10px] tracking-normal normal-case sm:inline", children: refreshedAt }) : null,
2709
2709
  children
2710
2710
  }
2711
2711
  )
@@ -3154,7 +3154,7 @@ function HelpHint({
3154
3154
  onClick: (e) => e.stopPropagation(),
3155
3155
  className: cn(
3156
3156
  "focus-visible:ring-primary/60 inline-flex shrink-0 items-center justify-center rounded-full transition-colors outline-none focus-visible:ring-2",
3157
- tone === "subtle" ? "text-muted-foreground/60 hover:text-foreground/80" : "text-primary/70 hover:text-primary",
3157
+ tone === "subtle" ? "text-muted-foreground hover:text-foreground/80" : "text-primary/70 hover:text-primary",
3158
3158
  className
3159
3159
  ),
3160
3160
  children: /* @__PURE__ */ jsxRuntime.jsx(lucideReact.HelpCircle, { size: iconSize, "aria-hidden": true })
@@ -3201,7 +3201,7 @@ function SectionHeader({
3201
3201
  ] }),
3202
3202
  hint && /* @__PURE__ */ jsxRuntime.jsx(HelpHint, { title: hint.title, side: hint.side ?? "bottom", children: hint.body })
3203
3203
  ] }),
3204
- meta && /* @__PURE__ */ jsxRuntime.jsx("span", { className: "text-muted-foreground/70 font-mono text-[10px] tracking-widest uppercase", children: meta })
3204
+ meta && /* @__PURE__ */ jsxRuntime.jsx("span", { className: "text-muted-foreground font-mono text-[10px] tracking-widest uppercase", children: meta })
3205
3205
  ] });
3206
3206
  }
3207
3207
  var VARIANTS = {
@@ -3365,7 +3365,7 @@ function StatGrid({ items, columns = 3, className = "" }) {
3365
3365
  function Tile({ item }) {
3366
3366
  const tone = item.tone ?? (item.accent ? "primary" : "default");
3367
3367
  return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "oc-stat-tile bg-background p-5", children: [
3368
- /* @__PURE__ */ jsxRuntime.jsx("div", { className: "text-muted-foreground/80 font-mono text-[10px] tracking-widest uppercase", children: item.label }),
3368
+ /* @__PURE__ */ jsxRuntime.jsx("div", { className: "text-muted-foreground font-mono text-[10px] tracking-widest uppercase", children: item.label }),
3369
3369
  /* @__PURE__ */ jsxRuntime.jsx(
3370
3370
  "div",
3371
3371
  {
@@ -3373,7 +3373,7 @@ function Tile({ item }) {
3373
3373
  children: item.value
3374
3374
  }
3375
3375
  ),
3376
- item.sub && /* @__PURE__ */ jsxRuntime.jsx("div", { className: "text-muted-foreground/70 mt-1 font-mono text-[10px] tracking-widest uppercase", children: item.sub })
3376
+ item.sub && /* @__PURE__ */ jsxRuntime.jsx("div", { className: "text-muted-foreground mt-1 font-mono text-[10px] tracking-widest uppercase", children: item.sub })
3377
3377
  ] });
3378
3378
  }
3379
3379
  function StatTile({ children, ...item }) {
@@ -3625,7 +3625,7 @@ function ComparisonTable({ rows, columns, className }) {
3625
3625
  rows.map((row, i) => /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "grid grid-cols-[1.4fr_1fr_1fr] border-t", children: [
3626
3626
  /* @__PURE__ */ jsxRuntime.jsx("div", { className: "px-4 py-3.5 font-medium text-foreground sm:px-6", children: row.label }),
3627
3627
  /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "text-muted-foreground flex items-center gap-2 px-4 py-3.5 sm:px-6", children: [
3628
- /* @__PURE__ */ jsxRuntime.jsx(lucideReact.X, { className: "text-muted-foreground/70 size-4" }),
3628
+ /* @__PURE__ */ jsxRuntime.jsx(lucideReact.X, { className: "text-muted-foreground size-4" }),
3629
3629
  /* @__PURE__ */ jsxRuntime.jsx("span", { children: row.theirs })
3630
3630
  ] }),
3631
3631
  /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "bg-accent/40 border-border/60 flex items-center gap-2 border-l px-4 py-3.5 text-foreground sm:px-6", children: [
@@ -4261,7 +4261,7 @@ var SECTIONS = [
4261
4261
  function CategoryChip({ category }) {
4262
4262
  if (category === "hub") return null;
4263
4263
  const label = category === "product" ? "product" : category === "protocol" ? "protocol" : "owner";
4264
- const tone = category === "product" ? "border-primary/25 bg-primary/10 text-primary" : category === "protocol" ? "border-muted-foreground/20 bg-muted/40 text-muted-foreground/85" : "border-warning/30 bg-warning/10 text-warning";
4264
+ const tone = category === "product" ? "border-primary/25 bg-primary/10 text-primary" : category === "protocol" ? "border-muted-foreground/20 bg-muted/40 text-muted-foreground" : "border-warning/30 bg-warning/10 text-warning";
4265
4265
  return /* @__PURE__ */ jsxRuntime.jsx(
4266
4266
  "span",
4267
4267
  {
@@ -4278,7 +4278,7 @@ function SiteStateBadge({ state }) {
4278
4278
  "span",
4279
4279
  {
4280
4280
  "aria-label": `site lifecycle: ${state}`,
4281
- className: "text-muted-foreground/70 ml-1 hidden font-mono text-[9px] font-medium tracking-widest uppercase sm:inline-block",
4281
+ className: "text-muted-foreground ml-1 hidden font-mono text-[9px] font-medium tracking-widest uppercase sm:inline-block",
4282
4282
  "data-oc-site-state": state,
4283
4283
  children: SITE_STATE_LABEL[state]
4284
4284
  }
@@ -4287,7 +4287,7 @@ function SiteStateBadge({ state }) {
4287
4287
  function MenuCategoryChip({ category }) {
4288
4288
  if (category === "hub") return null;
4289
4289
  const label = category === "product" ? "pro" : category === "protocol" ? "spec" : "own";
4290
- const tone = category === "product" ? "bg-primary/10 text-primary" : category === "protocol" ? "bg-muted/60 text-muted-foreground/80" : "bg-warning/15 text-warning";
4290
+ const tone = category === "product" ? "bg-primary/10 text-primary" : category === "protocol" ? "bg-muted/60 text-muted-foreground" : "bg-warning/15 text-warning";
4291
4291
  return /* @__PURE__ */ jsxRuntime.jsx(
4292
4292
  "span",
4293
4293
  {
@@ -4404,7 +4404,7 @@ function OcLogoDropdown({
4404
4404
  lucideReact.ChevronDown,
4405
4405
  {
4406
4406
  "aria-hidden": true,
4407
- className: "text-muted-foreground/70 group-hover:text-foreground/80 h-3.5 w-3.5 shrink-0 transition-transform duration-200 " + (open ? "rotate-180" : "")
4407
+ className: "text-muted-foreground group-hover:text-foreground/80 h-3.5 w-3.5 shrink-0 transition-transform duration-200 " + (open ? "rotate-180" : "")
4408
4408
  }
4409
4409
  )
4410
4410
  ]
@@ -4419,7 +4419,7 @@ function OcLogoDropdown({
4419
4419
  "aria-label": "go to " + homeHref + " (this site's home)",
4420
4420
  onClick: () => setOpen(false),
4421
4421
  tabIndex: open ? 0 : -1,
4422
- className: "hover:text-primary group/home -ml-1 hidden items-center gap-1 rounded-sm px-1.5 py-1 font-mono text-[9px] tracking-widest uppercase transition-all duration-200 sm:inline-flex " + (open ? "pointer-events-auto translate-x-0 text-muted-foreground/70 opacity-100 hover:bg-accent/30" : "pointer-events-none -translate-x-1 opacity-0"),
4422
+ className: "hover:text-primary group/home -ml-1 hidden items-center gap-1 rounded-sm px-1.5 py-1 font-mono text-[9px] tracking-widest uppercase transition-all duration-200 sm:inline-flex " + (open ? "pointer-events-auto translate-x-0 text-muted-foreground opacity-100 hover:bg-accent/30" : "pointer-events-none -translate-x-1 opacity-0"),
4423
4423
  "data-oc-logo-dropdown-home-hint": "",
4424
4424
  children: [
4425
4425
  /* @__PURE__ */ jsxRuntime.jsx(
@@ -4455,7 +4455,7 @@ function OcLogoDropdown({
4455
4455
  {
4456
4456
  role: "separator",
4457
4457
  "aria-hidden": true,
4458
- className: "text-muted-foreground/60 px-4 pt-2.5 pb-1 font-mono text-[9px] font-medium tracking-widest uppercase " + (category === "hub" ? "" : "border-t mt-1"),
4458
+ className: "text-muted-foreground px-4 pt-2.5 pb-1 font-mono text-[9px] font-medium tracking-widest uppercase " + (category === "hub" ? "" : "border-t mt-1"),
4459
4459
  children: label
4460
4460
  }
4461
4461
  ),
@@ -4577,7 +4577,7 @@ function CopyableDid({ did }) {
4577
4577
  /* @__PURE__ */ jsxRuntime.jsx(
4578
4578
  "span",
4579
4579
  {
4580
- className: "mt-px shrink-0 transition-colors " + (copied ? "text-primary" : "text-muted-foreground/50 group-hover/did:text-foreground/80"),
4580
+ className: "mt-px shrink-0 transition-colors " + (copied ? "text-primary" : "text-muted-foreground group-hover/did:text-foreground/80"),
4581
4581
  "aria-hidden": true,
4582
4582
  children: copied ? /* @__PURE__ */ jsxRuntime.jsx(lucideReact.Check, { className: "size-3.5" }) : /* @__PURE__ */ jsxRuntime.jsx(lucideReact.Copy, { className: "size-3.5" })
4583
4583
  }
@@ -4652,10 +4652,10 @@ function PromoteRow({
4652
4652
  "data-oc-account-menu-promote-copy": kind,
4653
4653
  "data-copied": copied ? "" : void 0,
4654
4654
  className: "hover:bg-background/70 focus-visible:ring-ring/60 flex size-6 shrink-0 items-center justify-center rounded transition-colors focus-visible:ring-2 focus-visible:outline-none",
4655
- children: copied ? /* @__PURE__ */ jsxRuntime.jsx(lucideReact.Check, { className: "text-primary size-3.5" }) : /* @__PURE__ */ jsxRuntime.jsx(lucideReact.Copy, { className: "text-muted-foreground/50 size-3.5" })
4655
+ children: copied ? /* @__PURE__ */ jsxRuntime.jsx(lucideReact.Check, { className: "text-primary size-3.5" }) : /* @__PURE__ */ jsxRuntime.jsx(lucideReact.Copy, { className: "text-muted-foreground size-3.5" })
4656
4656
  }
4657
4657
  ),
4658
- /* @__PURE__ */ jsxRuntime.jsx("span", { className: "text-muted-foreground/50 w-14 shrink-0 text-right text-[9px] tracking-widest uppercase", children: busy ? /* @__PURE__ */ jsxRuntime.jsx(lucideReact.Loader2, { className: "ml-auto size-3 animate-spin" }) : kindLabel }),
4658
+ /* @__PURE__ */ jsxRuntime.jsx("span", { className: "text-muted-foreground w-14 shrink-0 text-right text-[9px] tracking-widest uppercase", children: busy ? /* @__PURE__ */ jsxRuntime.jsx(lucideReact.Loader2, { className: "ml-auto size-3 animate-spin" }) : kindLabel }),
4659
4659
  /* @__PURE__ */ jsxRuntime.jsx("span", { className: "sr-only", "aria-live": "polite", children: copied ? "Copied to clipboard" : "" })
4660
4660
  ]
4661
4661
  }
@@ -4712,7 +4712,7 @@ function IdentityPromoteSection({
4712
4712
  }
4713
4713
  };
4714
4714
  return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "border-border border-b p-1", "data-oc-account-menu-section": "show-as", children: [
4715
- /* @__PURE__ */ jsxRuntime.jsx("div", { className: "text-muted-foreground/60 px-3 pt-2 pb-1 font-mono text-[10px] tracking-widest uppercase", children: "\xA7 show as" }),
4715
+ /* @__PURE__ */ jsxRuntime.jsx("div", { className: "text-muted-foreground px-3 pt-2 pb-1 font-mono text-[10px] tracking-widest uppercase", children: "\xA7 show as" }),
4716
4716
  options.map((opt) => /* @__PURE__ */ jsxRuntime.jsx(
4717
4717
  PromoteRow,
4718
4718
  {
@@ -4806,7 +4806,7 @@ function MobileMenu({
4806
4806
  "data-oc-account-mobile-popover": "",
4807
4807
  children: [
4808
4808
  links.length > 0 && /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "border-b p-1", children: [
4809
- /* @__PURE__ */ jsxRuntime.jsx("div", { className: "text-muted-foreground/60 px-3 pt-2 pb-1 font-mono text-[10px] tracking-widest uppercase", children: "\xA7 navigate" }),
4809
+ /* @__PURE__ */ jsxRuntime.jsx("div", { className: "text-muted-foreground px-3 pt-2 pb-1 font-mono text-[10px] tracking-widest uppercase", children: "\xA7 navigate" }),
4810
4810
  links.map(
4811
4811
  (l) => l.external ? /* @__PURE__ */ jsxRuntime.jsxs(
4812
4812
  "a",
@@ -4820,7 +4820,7 @@ function MobileMenu({
4820
4820
  children: [
4821
4821
  /* @__PURE__ */ jsxRuntime.jsx("span", { className: "text-muted-foreground", "aria-hidden": true, children: "\u2192" }),
4822
4822
  /* @__PURE__ */ jsxRuntime.jsx("span", { className: "flex-1", children: l.label }),
4823
- /* @__PURE__ */ jsxRuntime.jsx("span", { className: "text-muted-foreground/70 text-[10px]", "aria-hidden": true, children: "\u2197" })
4823
+ /* @__PURE__ */ jsxRuntime.jsx("span", { className: "text-muted-foreground text-[10px]", "aria-hidden": true, children: "\u2197" })
4824
4824
  ]
4825
4825
  },
4826
4826
  l.href
@@ -4984,7 +4984,7 @@ function OcAccountMenuView({
4984
4984
  tabPinned ? /* @__PURE__ */ jsxRuntime.jsxs(
4985
4985
  "span",
4986
4986
  {
4987
- className: "text-muted-foreground/70 normal-case",
4987
+ className: "text-muted-foreground normal-case",
4988
4988
  "data-oc-account-menu-tab-pin": "",
4989
4989
  title: "This tab keeps this account even if you switch accounts in another tab",
4990
4990
  children: [
@@ -4996,10 +4996,10 @@ function OcAccountMenuView({
4996
4996
  ] }),
4997
4997
  /* @__PURE__ */ jsxRuntime.jsx(CopyableDid, { did: account.didOc }),
4998
4998
  account.displayIdentity.kind !== "did" && account.displayIdentity.value ? /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "mt-1 flex items-center gap-1.5 font-mono text-[10px] tracking-wide", children: [
4999
- /* @__PURE__ */ jsxRuntime.jsx("span", { className: "text-muted-foreground/50 uppercase", children: IDENTITY_KIND_LABEL[account.displayIdentity.kind] }),
4999
+ /* @__PURE__ */ jsxRuntime.jsx("span", { className: "text-muted-foreground uppercase", children: IDENTITY_KIND_LABEL[account.displayIdentity.kind] }),
5000
5000
  /* @__PURE__ */ jsxRuntime.jsx("span", { className: "text-foreground/75", children: obscureIdentity(account.displayIdentity.value) })
5001
5001
  ] }) : null,
5002
- displayName ? /* @__PURE__ */ jsxRuntime.jsx("div", { className: "text-muted-foreground/80 mt-1 font-mono text-[10px] tracking-wide", children: displayName }) : null
5002
+ displayName ? /* @__PURE__ */ jsxRuntime.jsx("div", { className: "text-muted-foreground mt-1 font-mono text-[10px] tracking-wide", children: displayName }) : null
5003
5003
  ] }),
5004
5004
  /* @__PURE__ */ jsxRuntime.jsx(
5005
5005
  IdentityPromoteSection,
@@ -5040,7 +5040,7 @@ function OcAccountMenuView({
5040
5040
  item.external ? /* @__PURE__ */ jsxRuntime.jsx(
5041
5041
  "span",
5042
5042
  {
5043
- className: "text-muted-foreground/70 text-[10px]",
5043
+ className: "text-muted-foreground text-[10px]",
5044
5044
  "aria-hidden": true,
5045
5045
  children: "\u2197"
5046
5046
  }
@@ -5089,7 +5089,7 @@ function OcAccountMenuView({
5089
5089
  /* @__PURE__ */ jsxRuntime.jsx(
5090
5090
  "span",
5091
5091
  {
5092
- className: "text-muted-foreground/70 text-[10px]",
5092
+ className: "text-muted-foreground text-[10px]",
5093
5093
  "aria-hidden": true,
5094
5094
  children: "\u2197"
5095
5095
  }
@@ -5161,7 +5161,7 @@ function AccountsSection({
5161
5161
  }
5162
5162
  };
5163
5163
  return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "border-border border-b p-1", "data-oc-account-menu-section": "accounts", children: [
5164
- /* @__PURE__ */ jsxRuntime.jsx("div", { className: "text-muted-foreground/60 px-3 pt-2 pb-1 font-mono text-[10px] tracking-widest uppercase", children: "\xA7 accounts" }),
5164
+ /* @__PURE__ */ jsxRuntime.jsx("div", { className: "text-muted-foreground px-3 pt-2 pb-1 font-mono text-[10px] tracking-widest uppercase", children: "\xA7 accounts" }),
5165
5165
  roster.map((peer) => /* @__PURE__ */ jsxRuntime.jsx(
5166
5166
  SwitchRow,
5167
5167
  {
@@ -5239,7 +5239,7 @@ function SwitchRow({
5239
5239
  }
5240
5240
  ),
5241
5241
  /* @__PURE__ */ jsxRuntime.jsx("span", { className: "text-foreground/90 min-w-0 flex-1 truncate", children: label }),
5242
- /* @__PURE__ */ jsxRuntime.jsx("span", { className: "text-muted-foreground/50 w-14 shrink-0 text-right text-[9px] tracking-widest uppercase", children: busy ? /* @__PURE__ */ jsxRuntime.jsx(lucideReact.Loader2, { className: "ml-auto size-3 animate-spin" }) : kindLabel })
5242
+ /* @__PURE__ */ jsxRuntime.jsx("span", { className: "text-muted-foreground w-14 shrink-0 text-right text-[9px] tracking-widest uppercase", children: busy ? /* @__PURE__ */ jsxRuntime.jsx(lucideReact.Loader2, { className: "ml-auto size-3 animate-spin" }) : kindLabel })
5243
5243
  ]
5244
5244
  }
5245
5245
  );
@@ -5258,7 +5258,7 @@ function PopoverSection({
5258
5258
  className: cn("p-1", bordered && "border-border border-t", className),
5259
5259
  "data-oc-account-menu-section": label,
5260
5260
  children: [
5261
- /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "text-muted-foreground/60 px-3 pt-2 pb-1 font-mono text-[10px] tracking-widest uppercase", children: [
5261
+ /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "text-muted-foreground px-3 pt-2 pb-1 font-mono text-[10px] tracking-widest uppercase", children: [
5262
5262
  "\xA7 ",
5263
5263
  label
5264
5264
  ] }),
@@ -5276,7 +5276,7 @@ function PopoverSection({
5276
5276
  children: [
5277
5277
  /* @__PURE__ */ jsxRuntime.jsx("span", { className: "text-muted-foreground", "aria-hidden": true, children: "\u2192" }),
5278
5278
  /* @__PURE__ */ jsxRuntime.jsx("span", { className: "flex-1", children: item.label }),
5279
- /* @__PURE__ */ jsxRuntime.jsx("span", { className: "text-muted-foreground/70 text-[10px]", "aria-hidden": true, children: "\u2197" })
5279
+ /* @__PURE__ */ jsxRuntime.jsx("span", { className: "text-muted-foreground text-[10px]", "aria-hidden": true, children: "\u2197" })
5280
5280
  ]
5281
5281
  },
5282
5282
  item.href
@@ -5311,16 +5311,16 @@ function BuildFooter({
5311
5311
  return /* @__PURE__ */ jsxRuntime.jsxs(
5312
5312
  "div",
5313
5313
  {
5314
- className: "text-muted-foreground/60 border-border border-t px-3 py-2 font-mono text-[9.5px] tracking-widest uppercase",
5314
+ className: "text-muted-foreground border-border border-t px-3 py-2 font-mono text-[9.5px] tracking-widest uppercase",
5315
5315
  "data-oc-account-menu-build": "",
5316
5316
  children: [
5317
5317
  hostname,
5318
5318
  state && state !== "live" ? /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
5319
5319
  " \xB7 ",
5320
- /* @__PURE__ */ jsxRuntime.jsx("span", { className: "text-muted-foreground/80", children: state })
5320
+ /* @__PURE__ */ jsxRuntime.jsx("span", { className: "text-muted-foreground", children: state })
5321
5321
  ] }) : null,
5322
5322
  " ",
5323
- /* @__PURE__ */ jsxRuntime.jsxs("span", { className: "text-muted-foreground/80", children: [
5323
+ /* @__PURE__ */ jsxRuntime.jsxs("span", { className: "text-muted-foreground", children: [
5324
5324
  "v",
5325
5325
  build.version,
5326
5326
  showSha ? /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
@@ -5367,7 +5367,7 @@ function OcPrimaryNav({
5367
5367
  "span",
5368
5368
  {
5369
5369
  "aria-hidden": true,
5370
- className: "text-muted-foreground/60 ml-1 text-[9px]",
5370
+ className: "text-muted-foreground ml-1 text-[9px]",
5371
5371
  children: "\u2197"
5372
5372
  }
5373
5373
  ) : null
@@ -5550,10 +5550,10 @@ function Sidebar({
5550
5550
  }
5551
5551
  ) : null
5552
5552
  ] }),
5553
- siteLabel ? /* @__PURE__ */ jsxRuntime.jsx("div", { className: "text-muted-foreground/70 mt-1 font-mono text-[10px] tracking-widest uppercase", children: siteLabel }) : null
5553
+ siteLabel ? /* @__PURE__ */ jsxRuntime.jsx("div", { className: "text-muted-foreground mt-1 font-mono text-[10px] tracking-widest uppercase", children: siteLabel }) : null
5554
5554
  ] }),
5555
5555
  /* @__PURE__ */ jsxRuntime.jsxs("nav", { className: "flex-1 overflow-y-auto px-2 py-3", children: [
5556
- /* @__PURE__ */ jsxRuntime.jsx("div", { className: "text-muted-foreground/60 mb-1 px-3 font-mono text-[10px] tracking-widest uppercase", children: "\xA7 tools" }),
5556
+ /* @__PURE__ */ jsxRuntime.jsx("div", { className: "text-muted-foreground mb-1 px-3 font-mono text-[10px] tracking-widest uppercase", children: "\xA7 tools" }),
5557
5557
  /* @__PURE__ */ jsxRuntime.jsx("ul", { className: "space-y-0.5", children: tools.map((tool) => {
5558
5558
  const isActive2 = tool.id === active;
5559
5559
  const innerCls = "flex items-baseline gap-2 rounded px-3 py-1.5 text-[12.5px] transition-colors " + (isActive2 ? "bg-primary/10 text-primary font-semibold" : "text-muted-foreground hover:text-foreground hover:bg-muted/30");
@@ -5561,19 +5561,19 @@ function Sidebar({
5561
5561
  tool.icon ? /* @__PURE__ */ jsxRuntime.jsx(
5562
5562
  "span",
5563
5563
  {
5564
- className: "shrink-0 font-mono text-[11px] " + (isActive2 ? "text-primary" : "text-muted-foreground/70"),
5564
+ className: "shrink-0 font-mono text-[11px] " + (isActive2 ? "text-primary" : "text-muted-foreground"),
5565
5565
  "aria-hidden": true,
5566
5566
  children: tool.icon
5567
5567
  }
5568
5568
  ) : null,
5569
5569
  /* @__PURE__ */ jsxRuntime.jsxs("span", { className: "flex-1 leading-tight", children: [
5570
5570
  /* @__PURE__ */ jsxRuntime.jsx("span", { children: tool.label }),
5571
- tool.tagline ? /* @__PURE__ */ jsxRuntime.jsx("span", { className: "text-muted-foreground/60 mt-0.5 block font-mono text-[10px] tracking-wide normal-case", children: tool.tagline }) : null
5571
+ tool.tagline ? /* @__PURE__ */ jsxRuntime.jsx("span", { className: "text-muted-foreground mt-0.5 block font-mono text-[10px] tracking-wide normal-case", children: tool.tagline }) : null
5572
5572
  ] }),
5573
5573
  tool.external ? /* @__PURE__ */ jsxRuntime.jsx(
5574
5574
  "span",
5575
5575
  {
5576
- className: "text-muted-foreground/60 text-[10px]",
5576
+ className: "text-muted-foreground text-[10px]",
5577
5577
  "aria-hidden": true,
5578
5578
  children: "\u2197"
5579
5579
  }
@@ -5628,14 +5628,14 @@ function OcDashboardHub({ tools, className }) {
5628
5628
  tool.external ? /* @__PURE__ */ jsxRuntime.jsx(
5629
5629
  "span",
5630
5630
  {
5631
- className: "text-muted-foreground/60 ml-auto text-xs",
5631
+ className: "text-muted-foreground ml-auto text-xs",
5632
5632
  "aria-hidden": true,
5633
5633
  children: "\u2197"
5634
5634
  }
5635
5635
  ) : /* @__PURE__ */ jsxRuntime.jsx(
5636
5636
  "span",
5637
5637
  {
5638
- className: "text-muted-foreground/60 ml-auto text-xs",
5638
+ className: "text-muted-foreground ml-auto text-xs",
5639
5639
  "aria-hidden": true,
5640
5640
  children: "\u2192"
5641
5641
  }
@@ -5703,7 +5703,7 @@ function LayoutSubHeader({
5703
5703
  /* @__PURE__ */ jsxRuntime.jsx("span", { className: "text-muted-foreground hidden tracking-widest whitespace-nowrap uppercase sm:inline", children: status }),
5704
5704
  /* @__PURE__ */ jsxRuntime.jsx("span", { className: "text-foreground truncate", children: product })
5705
5705
  ] }),
5706
- tags.length > 0 && /* @__PURE__ */ jsxRuntime.jsx("div", { className: "text-muted-foreground/55 hidden shrink-0 items-center gap-x-3 tracking-wider whitespace-nowrap uppercase sm:flex", children: tags.map((tag, i) => /* @__PURE__ */ jsxRuntime.jsx("span", { className: tag.hideBelow ? HIDE[tag.hideBelow] : void 0, children: tag.label }, i)) })
5706
+ tags.length > 0 && /* @__PURE__ */ jsxRuntime.jsx("div", { className: "text-muted-foreground hidden shrink-0 items-center gap-x-3 tracking-wider whitespace-nowrap uppercase sm:flex", children: tags.map((tag, i) => /* @__PURE__ */ jsxRuntime.jsx("span", { className: tag.hideBelow ? HIDE[tag.hideBelow] : void 0, children: tag.label }, i)) })
5707
5707
  ] }) });
5708
5708
  }
5709
5709
  function OcAppBar({
@@ -5746,7 +5746,7 @@ var GRID = {
5746
5746
  4: "md:grid-cols-[1.2fr_1fr_1fr_1fr_1fr]",
5747
5747
  5: "md:grid-cols-[1.2fr_1fr_1fr_1fr_1fr_1fr]"
5748
5748
  };
5749
- var LINK_CLS = "text-muted-foreground hover:text-foreground font-mono text-xs tracking-wide lowercase transition-colors";
5749
+ var LINK_CLS = "text-muted-foreground hover:text-foreground inline-flex min-h-11 min-w-11 items-center font-mono text-xs tracking-wide lowercase transition-colors md:min-h-0 md:min-w-0";
5750
5750
  function FooterLinkItem({ link }) {
5751
5751
  if (link.external) {
5752
5752
  return /* @__PURE__ */ jsxRuntime.jsxs("a", { href: link.href, target: "_blank", rel: "noreferrer", className: LINK_CLS, children: [
@@ -5763,7 +5763,7 @@ function FooterLinkItem({ link }) {
5763
5763
  function FooterColumnView({ column }) {
5764
5764
  return /* @__PURE__ */ jsxRuntime.jsxs("div", { children: [
5765
5765
  /* @__PURE__ */ jsxRuntime.jsx("div", { className: "label-mono text-primary mb-3", children: column.label }),
5766
- /* @__PURE__ */ jsxRuntime.jsx("ul", { className: "space-y-2", children: column.links.map((link) => /* @__PURE__ */ jsxRuntime.jsx("li", { children: /* @__PURE__ */ jsxRuntime.jsx(FooterLinkItem, { link }) }, `${column.label}:${link.href}`)) })
5766
+ /* @__PURE__ */ jsxRuntime.jsx("ul", { className: "md:space-y-2", children: column.links.map((link) => /* @__PURE__ */ jsxRuntime.jsx("li", { children: /* @__PURE__ */ jsxRuntime.jsx(FooterLinkItem, { link }) }, `${column.label}:${link.href}`)) })
5767
5767
  ] });
5768
5768
  }
5769
5769
  function familyColumn(category, label) {
@@ -5824,12 +5824,12 @@ function OcFamilyFooter({
5824
5824
  year,
5825
5825
  " orangecheck \xB7 mit + cc-by-4.0"
5826
5826
  ] }) }),
5827
- /* @__PURE__ */ jsxRuntime.jsx("div", { className: "text-muted-foreground/80 flex flex-wrap items-center gap-x-4 gap-y-1", children: links.map((link) => /* @__PURE__ */ jsxRuntime.jsx(
5827
+ /* @__PURE__ */ jsxRuntime.jsx("div", { className: "text-muted-foreground flex flex-wrap items-center gap-x-4 md:gap-y-1", children: links.map((link) => /* @__PURE__ */ jsxRuntime.jsx(
5828
5828
  "a",
5829
5829
  {
5830
5830
  href: link.href,
5831
5831
  ...link.external ? { target: "_blank", rel: "noreferrer" } : {},
5832
- className: "hover:text-foreground transition-colors",
5832
+ className: "hover:text-foreground inline-flex min-h-11 items-center transition-colors md:min-h-0",
5833
5833
  children: link.label
5834
5834
  },
5835
5835
  link.label