@fairmint/ui 0.4.2 → 0.4.4

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 (33) hide show
  1. package/dist/components/layout/MobileNav/MobileNavHeader.cjs +17 -5
  2. package/dist/components/layout/MobileNav/MobileNavHeader.cjs.map +1 -1
  3. package/dist/components/layout/MobileNav/MobileNavHeader.d.ts.map +1 -1
  4. package/dist/components/layout/MobileNav/MobileNavHeader.js +17 -5
  5. package/dist/components/layout/MobileNav/MobileNavHeader.js.map +1 -1
  6. package/dist/components/primitives/MultiSelect/MultiSelect.cjs +6 -1
  7. package/dist/components/primitives/MultiSelect/MultiSelect.cjs.map +1 -1
  8. package/dist/components/primitives/MultiSelect/MultiSelect.d.ts.map +1 -1
  9. package/dist/components/primitives/MultiSelect/MultiSelect.js +6 -1
  10. package/dist/components/primitives/MultiSelect/MultiSelect.js.map +1 -1
  11. package/dist/components/primitives/Select/Select.cjs +8 -2
  12. package/dist/components/primitives/Select/Select.cjs.map +1 -1
  13. package/dist/components/primitives/Select/Select.d.ts.map +1 -1
  14. package/dist/components/primitives/Select/Select.js +8 -2
  15. package/dist/components/primitives/Select/Select.js.map +1 -1
  16. package/dist/components/primitives/muiCompat.cjs +6 -0
  17. package/dist/components/primitives/muiCompat.cjs.map +1 -1
  18. package/dist/components/primitives/muiCompat.d.ts.map +1 -1
  19. package/dist/components/primitives/muiCompat.js +6 -0
  20. package/dist/components/primitives/muiCompat.js.map +1 -1
  21. package/dist/theme/index.cjs +13 -0
  22. package/dist/theme/index.cjs.map +1 -1
  23. package/dist/theme/index.d.ts +1 -1
  24. package/dist/theme/index.d.ts.map +1 -1
  25. package/dist/theme/index.js +14 -0
  26. package/dist/theme/index.js.map +1 -1
  27. package/dist/theme/zIndex.cjs +2 -0
  28. package/dist/theme/zIndex.cjs.map +1 -1
  29. package/dist/theme/zIndex.d.ts +5 -0
  30. package/dist/theme/zIndex.d.ts.map +1 -1
  31. package/dist/theme/zIndex.js +2 -0
  32. package/dist/theme/zIndex.js.map +1 -1
  33. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"index.cjs","sources":["../../src/theme/index.ts"],"sourcesContent":["import {\n type CSSVariablesResolver,\n createTheme,\n type MantineColorsTuple,\n type MantineTheme,\n} from \"@mantine/core\";\nimport { fontSizes } from \"./fontSizes\";\nimport { spacing } from \"./spacing\";\n\n/**\n * Fairmint radius scale — single source of truth used by both the Mantine\n * theme config and the exported `radii` constant. Edit here; both stay in sync.\n */\nexport const radii = {\n xs: \"0.25rem\",\n sm: \"0.375rem\",\n md: \"0.5rem\",\n lg: \"0.75rem\",\n xl: \"1rem\",\n} as const;\n\n/**\n * Indigo palette — primary UI color.\n * Used for buttons, links, active navigation, focus rings.\n * Shade [5] (#6366F1) is the default primary.\n */\nconst indigo: MantineColorsTuple = [\n \"#EEF2FF\",\n \"#E0E7FF\",\n \"#C7D2FE\",\n \"#A5B4FC\",\n \"#818CF8\",\n \"#6366F1\",\n \"#4F46E5\",\n \"#4338CA\",\n \"#3730A3\",\n \"#253974\",\n];\n\n/**\n * Neutral scale — replaces Mantine's default gray.\n * Used for text, borders, backgrounds, disabled states.\n */\nconst neutral: MantineColorsTuple = [\n \"#F8F9FA\",\n \"#F3F4F6\",\n \"#E5E7EB\",\n \"#D2D6DB\",\n \"#9DA4AE\",\n \"#6C737F\",\n \"#4D5761\",\n \"#2F3746\",\n \"#1C2536\",\n \"#111927\",\n];\n\n/**\n * Dark-mode neutral ramp — the dark surface and text anchors used by Chip.\n * Keep these separate from the light neutral ramp so Light mode remains stable.\n */\nconst darkNeutral: MantineColorsTuple = [\n \"#FFFFFF\",\n \"#E7E9F0\",\n \"#B8C2D0\",\n \"#9DA4AE\",\n \"#8F99AB\",\n \"#6C737F\",\n \"#2F3746\",\n \"#1B1D21\",\n \"#17191D\",\n \"#111214\",\n];\n\n/**\n * Approved charcoal dark-mode roles from the onboarding source of truth.\n * Keep these semantic values explicit instead of deriving them from the\n * light neutral ramp so component behavior stays aligned with Figma.\n */\nconst charcoalDark = {\n canvas: \"#111214\",\n surface: \"#17191D\",\n chrome: \"#1B1D21\",\n control: \"#202329\",\n selected: \"#2F3746\",\n // Must read on canvas/chrome. Former #111927 (light-mode N900) made Avatar,\n // Button/ActionIcon `variant=\"light\"`, and brand-subtle plates disappear.\n // Matches light mode where brand-subtle and selected both resolve to indigo[0].\n brandSubtle: \"#2F3746\",\n /** One step above brandSubtle for light-variant / brand-subtle hover. */\n brandSubtleHover: \"#3A4456\",\n textPrimary: \"#FFFFFF\",\n textSecondary: \"#9DA4AE\",\n textTertiary: \"#8F99AB\",\n textDisabled: \"#6C737F\",\n iconSecondary: \"#B8C2D0\",\n border: \"#2F3746\",\n focus: \"#A5B4FC\",\n primary: \"#6366F1\",\n primaryHover: \"#818CF8\",\n primaryActive: \"#A5B4FC\",\n successBg: \"#163E38\",\n successText: \"#6FE3BE\",\n successBorder: \"#2F3746\",\n successSolid: \"#34D399\",\n successSolidHover: \"#6FE3BE\",\n warningBg: \"#402A12\",\n warningText: \"#FDB022\",\n warningBorder: \"#6E4515\",\n warningSolid: \"#DC6803\",\n warningSolidHover: \"#E5A34A\",\n infoBg: \"#172B45\",\n infoText: \"#22CCEE\",\n infoBorder: \"#23476B\",\n} as const;\n\n/**\n * Mantine still references its reserved `dark` ramp directly in several\n * component styles (for example Card uses dark[6] and Paper borders use\n * dark[4]). Map those fallback indices to Fairmint's charcoal roles so an\n * un-tokenized Mantine state cannot reintroduce the warm default gray palette.\n */\nconst mantineDark: MantineColorsTuple = [\n charcoalDark.textPrimary,\n darkNeutral[1],\n darkNeutral[2],\n charcoalDark.textSecondary,\n charcoalDark.border,\n charcoalDark.control,\n charcoalDark.surface,\n charcoalDark.canvas,\n charcoalDark.canvas,\n charcoalDark.canvas,\n];\n\n/**\n * Fairmint brand blue — accent color for gradients and brand elements.\n * Shade [5] (#0A4EFB) is the primary brand blue.\n *\n * This is the current production value documented in design/DESIGN.md.\n */\nconst fairmintBlue: MantineColorsTuple = [\n \"#e6f0ff\",\n \"#cce0ff\",\n \"#99c2ff\",\n \"#66a3ff\",\n \"#3385ff\",\n \"#0A4EFB\",\n \"#083ec9\",\n \"#062e97\",\n \"#041f64\",\n \"#020f32\",\n];\n\n/**\n * Fairmint brand purple — accent color for gradients and brand elements.\n * Shade [5] (#9E03FF) is the primary brand purple.\n *\n * This is the current production value documented in design/DESIGN.md.\n */\nconst fairmintPurple: MantineColorsTuple = [\n \"#f5e6ff\",\n \"#e6ccff\",\n \"#cc99ff\",\n \"#b366ff\",\n \"#9933ff\",\n \"#9E03FF\",\n \"#7e02cc\",\n \"#5f0299\",\n \"#3f0166\",\n \"#200133\",\n];\n\nconst success: MantineColorsTuple = [\n \"#F0FDF9\",\n \"#D1FAE5\",\n \"#A7F3D0\",\n \"#6EE7B7\",\n \"#34D399\",\n \"#10B981\",\n \"#059669\",\n \"#047857\",\n \"#065F46\",\n \"#134E48\",\n];\n\nconst warning: MantineColorsTuple = [\n \"#FFFAEB\",\n \"#FEF0C7\",\n \"#FEDF89\",\n \"#FEC84B\",\n \"#FDB022\",\n \"#F79009\",\n \"#DC6803\",\n \"#B54708\",\n \"#93370D\",\n \"#7A2E0E\",\n];\n\nconst error: MantineColorsTuple = [\n \"#FEF3F2\",\n \"#FEE4E2\",\n \"#FECDCA\",\n \"#FDA29B\",\n \"#F97066\",\n \"#F04438\",\n \"#D92D20\",\n \"#B42318\",\n \"#912018\",\n \"#7A271A\",\n];\n\nconst info: MantineColorsTuple = [\n \"#ECFDFF\",\n \"#CFF9FE\",\n \"#A5F0FC\",\n \"#67E3F9\",\n \"#22CCEE\",\n \"#06AED4\",\n \"#088AB2\",\n \"#0E7090\",\n \"#155B75\",\n \"#164C63\",\n];\n\n/**\n * Typography constants — single source of truth for font families.\n * Use these instead of var(--mantine-font-family-*) in component code.\n * Declared before createTheme so the theme itself references them.\n */\nexport const typography = {\n fontFamily:\n '\"Inter\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\"',\n headingFontFamily: '\"Plus Jakarta Sans\", sans-serif',\n} as const;\n\n/**\n * Semantic toast surfaces keyed by Mantine Notification `color`.\n * Uses Fairmint CSS variables so light/dark flip with the resolver\n * (`*-bg` light values are the /50 ramp shade / tuple[0]).\n */\nconst notificationToneStyles: Record<string, { bg: string; border: string; text: string }> = {\n success: {\n bg: \"var(--fairmint-color-success-bg)\",\n border: \"var(--fairmint-color-success-border)\",\n text: \"var(--fairmint-color-success-text)\",\n },\n error: {\n bg: \"var(--fairmint-color-error-bg)\",\n border: \"var(--fairmint-color-error-border)\",\n text: \"var(--fairmint-color-error-text)\",\n },\n warning: {\n bg: \"var(--fairmint-color-warning-bg)\",\n border: \"var(--fairmint-color-warning-border)\",\n text: \"var(--fairmint-color-warning-text)\",\n },\n info: {\n bg: \"var(--fairmint-color-info-bg)\",\n border: \"var(--fairmint-color-info-border)\",\n text: \"var(--fairmint-color-info-text)\",\n },\n};\n\nexport const theme = createTheme({\n primaryColor: \"indigo\",\n // Mantine defaults to a darker shade for dark-mode filled/light variants\n // (primaryShade: { light: 6, dark: 8 }), but our brand indigo (index 5,\n // #6366F1) is the same accent in both color schemes — pin a single shade\n // so unwrapped Mantine components (color=\"indigo\") don't drift into a\n // different, more saturated purple in dark mode.\n primaryShade: 5,\n colors: {\n indigo,\n gray: neutral,\n dark: mantineDark,\n darkGray: darkNeutral,\n fairmintBlue,\n fairmintPurple,\n success,\n warning,\n error,\n info,\n },\n\n fontFamily: typography.fontFamily,\n headings: {\n fontFamily: typography.headingFontFamily,\n fontWeight: \"700\",\n },\n\n radius: radii,\n defaultRadius: \"md\",\n spacing,\n fontSizes: {\n xs: fontSizes.xs,\n sm: fontSizes.sm,\n md: fontSizes.md,\n lg: fontSizes.lg,\n xl: fontSizes.xl,\n },\n\n breakpoints: {\n xs: \"30em\",\n sm: \"48em\",\n md: \"64em\",\n lg: \"74em\",\n xl: \"90em\",\n },\n\n components: {\n Button: {\n defaultProps: { size: \"md\" },\n styles: {\n root: {\n fontWeight: 600,\n borderRadius: \"0.75rem\",\n textTransform: \"none\" as const,\n },\n },\n },\n Input: {\n classNames: { input: \"fairmint-input\" },\n },\n TextInput: {\n defaultProps: { size: \"md\" },\n },\n Card: {\n defaultProps: {\n padding: \"lg\",\n radius: \"xl\",\n withBorder: true,\n },\n styles: {\n root: {\n backgroundColor: \"var(--fairmint-color-bg-surface, #ffffff)\",\n borderColor: `var(--fairmint-color-border-default, ${neutral[2]})`,\n },\n },\n },\n Paper: {\n styles: {\n root: {\n backgroundColor: \"var(--fairmint-color-bg-surface, #ffffff)\",\n backgroundImage: \"none\",\n borderColor: `var(--fairmint-color-border-default, ${neutral[2]})`,\n },\n },\n },\n Table: {\n styles: {\n thead: {\n fontSize: \"0.75rem\",\n fontWeight: 600,\n letterSpacing: \"0.5px\",\n textTransform: \"uppercase\" as const,\n },\n },\n },\n Modal: {\n styles: {\n title: {\n fontSize: fontSizes.lg,\n fontWeight: 700,\n lineHeight: 1.3,\n },\n },\n },\n // Toasts: Ramp-inspired restraint — single-layer subtle elevation (lighter\n // than Mantine shadow-xs) + 1px semantic border (override shadow-lg / filled\n // icon). Semantic variants use *-bg (light = ramp /50 / tuple[0]; dark =\n // approved charcoal semantic surfaces) with matching border/text/icon tokens.\n // Neutral/default (no color) stays on the standard surface.\n // Horizontal padding is symmetric spacing.md (16px): Mantine defaults to\n // 22px start (accent rail) vs spacing.xs end (~10px); Fairmint toasts use\n // outlined icons (rail hidden), so match left/right on the spacing scale.\n Notification: {\n styles: (_theme: MantineTheme, params: { color?: string }) => {\n const tone = notificationToneStyles[params.color ?? \"\"];\n const rootPadding = {\n paddingInlineStart: spacing.md,\n paddingInlineEnd: spacing.md,\n } as const;\n\n if (!tone) {\n return {\n root: {\n boxShadow: \"var(--fairmint-elevation-subtle)\",\n ...rootPadding,\n },\n icon: {\n backgroundColor: \"transparent\",\n color: \"var(--notification-color)\",\n },\n };\n }\n\n return {\n root: {\n boxShadow: \"var(--fairmint-elevation-subtle)\",\n backgroundColor: tone.bg,\n border: `1px solid ${tone.border}`,\n ...rootPadding,\n },\n title: {\n color: tone.text,\n },\n description: {\n color: tone.text,\n },\n icon: {\n backgroundColor: \"transparent\",\n color: tone.text,\n },\n closeButton: {\n color: tone.text,\n },\n };\n },\n },\n },\n});\n\n/**\n * Fairmint CSS variables resolver for MantineProvider.\n * Publishes --fairmint-* custom properties so components never reference\n * --mantine-* variables directly. All light/dark switching is centralised here.\n */\nexport const fairmintCssVariables: CSSVariablesResolver = () => ({\n variables: {\n \"--fairmint-font-headings\": typography.headingFontFamily,\n \"--fairmint-font-body\": typography.fontFamily,\n \"--fairmint-interactive-focus-ring\": indigo[5],\n },\n light: {\n \"--fairmint-interactive-focus-ring\": indigo[5],\n \"--fairmint-color-bg-canvas\": commonColors.white,\n \"--fairmint-color-bg-surface\": commonColors.white,\n \"--fairmint-color-bg-surface-secondary\": neutral[0],\n \"--fairmint-color-bg-hover\": neutral[0],\n \"--fairmint-color-bg-selected\": indigo[0],\n \"--fairmint-color-bg-brand-subtle\": indigo[0],\n \"--fairmint-color-bg-brand-subtle-hover\": indigo[1],\n \"--fairmint-color-bg-disabled\": neutral[2],\n \"--fairmint-watermark-color\": neutral[1],\n \"--fairmint-color-text-primary\": neutral[9],\n \"--fairmint-color-text-secondary\": neutral[5],\n \"--fairmint-color-text-tertiary\": neutral[4],\n \"--fairmint-color-text-inverse\": commonColors.white,\n \"--fairmint-color-text-disabled\": neutral[6],\n \"--fairmint-color-icon-primary\": neutral[9],\n \"--fairmint-color-icon-secondary\": neutral[5],\n \"--fairmint-color-icon-tertiary\": neutral[4],\n \"--fairmint-color-icon-inverse\": commonColors.white,\n \"--fairmint-color-icon-disabled\": neutral[6],\n \"--fairmint-color-border-default\": neutral[2],\n \"--fairmint-color-border-focus\": indigo[5],\n \"--fairmint-color-border-disabled\": neutral[3],\n \"--fairmint-color-brand-primary\": indigo[6],\n \"--fairmint-color-brand-primary-hover\": indigo[7],\n \"--fairmint-color-brand-primary-active\": indigo[7],\n \"--fairmint-color-brand-blue\": fairmintBlue[5],\n \"--fairmint-color-brand-purple\": fairmintPurple[5],\n \"--fairmint-color-watermark\": neutral[1],\n \"--fairmint-color-surface-selected\": indigo[0],\n \"--fairmint-color-icon-on-surface-selected\": indigo[6],\n \"--fairmint-interactive-hover-shadow\": `0 2px 6px ${neutral[9]}0F`,\n // Single soft layer — lighter than Mantine shadow-xs (no multi-layer stack).\n \"--fairmint-elevation-subtle\": `0 1px 3px ${neutral[9]}06`,\n \"--fairmint-interactive-hover-bg\": neutral[0],\n \"--fairmint-color-success-bg\": success[0],\n \"--fairmint-color-success-text\": success[7],\n \"--fairmint-color-success-border\": success[2],\n \"--fairmint-color-success-solid\": success[7],\n \"--fairmint-color-success-solid-hover\": success[7],\n \"--fairmint-color-warning-bg\": warning[0],\n \"--fairmint-color-warning-text\": warning[7],\n \"--fairmint-color-warning-border\": warning[2],\n \"--fairmint-color-warning-solid\": warning[7],\n \"--fairmint-color-warning-solid-hover\": warning[7],\n \"--fairmint-color-error-bg\": error[0],\n \"--fairmint-color-error-bg-subtle\": error[1],\n \"--fairmint-color-error-text\": error[7],\n \"--fairmint-color-error-border\": error[2],\n \"--fairmint-color-error-solid\": error[7],\n \"--fairmint-color-error-solid-hover\": error[8],\n \"--fairmint-color-error-solid-muted\": error[4],\n \"--fairmint-color-info-bg\": info[0],\n \"--fairmint-color-info-text\": info[7],\n \"--fairmint-color-info-border\": info[2],\n \"--fairmint-color-info-solid\": info[7],\n \"--fairmint-color-info-solid-hover\": info[7],\n },\n dark: {\n \"--fairmint-interactive-focus-ring\": charcoalDark.focus,\n \"--fairmint-color-bg-canvas\": charcoalDark.canvas,\n \"--fairmint-color-bg-surface\": charcoalDark.surface,\n \"--fairmint-color-bg-surface-secondary\": charcoalDark.chrome,\n \"--fairmint-color-bg-hover\": charcoalDark.control,\n \"--fairmint-color-bg-selected\": charcoalDark.selected,\n \"--fairmint-color-bg-brand-subtle\": charcoalDark.brandSubtle,\n \"--fairmint-color-bg-brand-subtle-hover\": charcoalDark.brandSubtleHover,\n \"--fairmint-color-bg-disabled\": charcoalDark.control,\n \"--fairmint-watermark-color\": charcoalDark.control,\n \"--fairmint-color-text-primary\": charcoalDark.textPrimary,\n \"--fairmint-color-text-secondary\": charcoalDark.textSecondary,\n \"--fairmint-color-text-tertiary\": charcoalDark.textTertiary,\n \"--fairmint-color-text-inverse\": neutral[9],\n \"--fairmint-color-text-disabled\": charcoalDark.textDisabled,\n \"--fairmint-color-icon-primary\": charcoalDark.textPrimary,\n \"--fairmint-color-icon-secondary\": charcoalDark.iconSecondary,\n \"--fairmint-color-icon-tertiary\": charcoalDark.textTertiary,\n \"--fairmint-color-icon-inverse\": charcoalDark.textPrimary,\n \"--fairmint-color-icon-disabled\": charcoalDark.textDisabled,\n \"--fairmint-color-border-default\": charcoalDark.border,\n \"--fairmint-color-border-focus\": charcoalDark.focus,\n \"--fairmint-color-border-disabled\": charcoalDark.border,\n \"--fairmint-color-brand-primary\": charcoalDark.primary,\n \"--fairmint-color-brand-primary-hover\": charcoalDark.primaryHover,\n \"--fairmint-color-brand-primary-active\": charcoalDark.primaryActive,\n \"--fairmint-color-brand-blue\": fairmintBlue[5],\n \"--fairmint-color-brand-purple\": fairmintPurple[5],\n \"--fairmint-color-watermark\": charcoalDark.control,\n \"--fairmint-color-surface-selected\": charcoalDark.selected,\n // indigo[6] (the light-mode value) is too dark to read against the\n // dark selected surface — use a light indigo instead.\n \"--fairmint-color-icon-on-surface-selected\": indigo[2],\n \"--fairmint-interactive-hover-shadow\": \"0 2px 6px #00000066\",\n // Single soft layer — restrained vs hover shadow and Mantine shadow-xs.\n \"--fairmint-elevation-subtle\": \"0 1px 3px #00000014\",\n \"--fairmint-interactive-hover-bg\": charcoalDark.surface,\n \"--fairmint-color-success-bg\": charcoalDark.successBg,\n \"--fairmint-color-success-text\": charcoalDark.successText,\n \"--fairmint-color-success-border\": charcoalDark.successBorder,\n \"--fairmint-color-success-solid\": charcoalDark.successSolid,\n \"--fairmint-color-success-solid-hover\": charcoalDark.successSolidHover,\n \"--fairmint-color-warning-bg\": charcoalDark.warningBg,\n \"--fairmint-color-warning-text\": charcoalDark.warningText,\n \"--fairmint-color-warning-border\": charcoalDark.warningBorder,\n \"--fairmint-color-warning-solid\": charcoalDark.warningSolid,\n \"--fairmint-color-warning-solid-hover\": charcoalDark.warningSolidHover,\n \"--fairmint-color-error-bg\": error[9],\n \"--fairmint-color-error-bg-subtle\": error[8],\n \"--fairmint-color-error-text\": error[2],\n \"--fairmint-color-error-border\": error[7],\n \"--fairmint-color-error-solid\": error[7],\n \"--fairmint-color-error-solid-hover\": error[8],\n \"--fairmint-color-error-solid-muted\": error[5],\n \"--fairmint-color-info-bg\": charcoalDark.infoBg,\n \"--fairmint-color-info-text\": charcoalDark.infoText,\n \"--fairmint-color-info-border\": charcoalDark.infoBorder,\n \"--fairmint-color-info-solid\": charcoalDark.primary,\n \"--fairmint-color-info-solid-hover\": charcoalDark.primaryHover,\n\n // Mantine primitives used by the shared component wrappers. These keep\n // Button, Badge, Alert, Loader, and form controls on the same semantic\n // roles instead of falling back to Mantine's default dark palette.\n \"--mantine-color-body\": charcoalDark.canvas,\n \"--mantine-color-text\": charcoalDark.textPrimary,\n \"--mantine-color-bright\": charcoalDark.textPrimary,\n \"--mantine-color-dimmed\": charcoalDark.textSecondary,\n \"--mantine-color-placeholder\": \"#969BA5\",\n \"--mantine-color-default\": charcoalDark.surface,\n \"--mantine-color-default-hover\": charcoalDark.control,\n \"--mantine-color-default-color\": charcoalDark.textPrimary,\n \"--mantine-color-default-border\": charcoalDark.border,\n \"--mantine-color-disabled\": charcoalDark.control,\n \"--mantine-color-disabled-color\": charcoalDark.textDisabled,\n \"--mantine-color-disabled-border\": charcoalDark.border,\n \"--mantine-primary-color-filled\": charcoalDark.primary,\n \"--mantine-primary-color-filled-hover\": charcoalDark.primaryHover,\n \"--mantine-primary-color-light\": charcoalDark.brandSubtle,\n \"--mantine-primary-color-light-hover\": charcoalDark.brandSubtleHover,\n \"--mantine-primary-color-light-color\": charcoalDark.primaryActive,\n \"--mantine-primary-color-3\": charcoalDark.primaryActive,\n \"--mantine-primary-color-4\": charcoalDark.primaryActive,\n \"--mantine-primary-color-6\": charcoalDark.primary,\n \"--mantine-primary-color-7\": charcoalDark.primaryHover,\n \"--mantine-primary-color-8\": charcoalDark.primaryHover,\n \"--mantine-primary-color-9\": charcoalDark.brandSubtle,\n \"--mantine-color-indigo-3\": charcoalDark.primaryActive,\n \"--mantine-color-indigo-4\": charcoalDark.primaryActive,\n \"--mantine-color-indigo-6\": charcoalDark.primary,\n \"--mantine-color-indigo-7\": charcoalDark.primaryHover,\n \"--mantine-color-indigo-8\": charcoalDark.primaryHover,\n \"--mantine-color-indigo-9\": charcoalDark.brandSubtle,\n \"--mantine-color-indigo-text\": charcoalDark.primaryActive,\n \"--mantine-color-indigo-filled\": charcoalDark.primary,\n \"--mantine-color-indigo-filled-hover\": charcoalDark.primaryHover,\n \"--mantine-color-indigo-light\": charcoalDark.brandSubtle,\n \"--mantine-color-indigo-light-hover\": charcoalDark.brandSubtleHover,\n \"--mantine-color-indigo-light-color\": charcoalDark.primaryActive,\n \"--mantine-color-indigo-outline\": charcoalDark.focus,\n \"--mantine-color-indigo-outline-hover\": charcoalDark.control,\n \"--mantine-color-gray-light\": charcoalDark.control,\n \"--mantine-color-gray-light-color\": charcoalDark.textSecondary,\n \"--mantine-color-gray-filled\": charcoalDark.border,\n \"--mantine-color-gray-filled-hover\": charcoalDark.iconSecondary,\n \"--mantine-color-gray-4\": charcoalDark.iconSecondary,\n \"--mantine-color-gray-5\": charcoalDark.textTertiary,\n \"--mantine-color-gray-6\": charcoalDark.textSecondary,\n \"--mantine-color-gray-7\": charcoalDark.border,\n \"--mantine-color-gray-8\": charcoalDark.chrome,\n \"--mantine-color-gray-9\": charcoalDark.canvas,\n \"--mantine-color-success-light\": charcoalDark.successBg,\n \"--mantine-color-success-light-color\": charcoalDark.successText,\n \"--mantine-color-success-filled\": charcoalDark.successSolid,\n \"--mantine-color-success-filled-hover\": charcoalDark.successSolidHover,\n \"--mantine-color-warning-light\": charcoalDark.warningBg,\n \"--mantine-color-warning-light-color\": charcoalDark.warningText,\n \"--mantine-color-warning-filled\": charcoalDark.warningSolid,\n \"--mantine-color-warning-filled-hover\": charcoalDark.warningSolidHover,\n \"--mantine-color-info-light\": charcoalDark.infoBg,\n \"--mantine-color-info-light-color\": charcoalDark.infoText,\n \"--mantine-color-info-filled\": charcoalDark.primary,\n \"--mantine-color-info-filled-hover\": charcoalDark.primaryHover,\n \"--mantine-color-error-2\": error[2],\n \"--mantine-color-error-3\": error[3],\n \"--mantine-color-error-4\": error[4],\n \"--mantine-color-error-6\": error[6],\n \"--mantine-color-error-7\": error[7],\n \"--mantine-color-error-8\": error[8],\n \"--mantine-color-error-9\": error[9],\n \"--mantine-color-error-text\": error[2],\n \"--mantine-color-error-filled\": error[7],\n \"--mantine-color-error-filled-hover\": error[6],\n \"--mantine-color-error-light\": error[9],\n \"--mantine-color-error-light-hover\": error[8],\n \"--mantine-color-error-light-color\": error[2],\n \"--mantine-color-error-outline\": error[7],\n \"--mantine-color-error-outline-hover\": error[8],\n },\n});\n\n/**\n * Typed JS references to every --fairmint-* CSS custom property.\n * Use these in component code instead of raw \"var(--fairmint-...)\" strings so\n * that renaming a token requires one change here rather than hunting every file.\n *\n * Each value includes a CSS fallback derived from the light-mode token value so\n * that components degrade gracefully when cssVariablesResolver is not wired up\n * (e.g. bare MantineProvider in tests or custom setups). Dark-mode fidelity is\n * lost without the resolver, but nothing renders invisibly.\n */\nconst fairmintVar = (name: string, fallback: string) => `var(--fairmint-${name}, ${fallback})`;\n\nexport const fairmintVars = {\n /** Canvas background for the app shell. */\n colorBgCanvas: fairmintVar(\"color-bg-canvas\", \"#ffffff\"),\n /** Primary raised surface. */\n colorBgSurface: fairmintVar(\"color-bg-surface\", \"#ffffff\"),\n /** Secondary surface used for fields, rows, and subtle containers. */\n colorBgSurfaceSecondary: fairmintVar(\"color-bg-surface-secondary\", neutral[0]),\n /** Hover surface. */\n colorBgHover: fairmintVar(\"color-bg-hover\", neutral[0]),\n /** Selected surface. */\n colorBgSelected: fairmintVar(\"color-bg-selected\", indigo[0]),\n /** Subtle brand surface. */\n colorBgBrandSubtle: fairmintVar(\"color-bg-brand-subtle\", indigo[0]),\n /** Hovered subtle brand surface. */\n colorBgBrandSubtleHover: fairmintVar(\"color-bg-brand-subtle-hover\", indigo[1]),\n /** Disabled surface. */\n colorBgDisabled: fairmintVar(\"color-bg-disabled\", neutral[2]),\n /** Primary body/heading text — titles on tinted surfaces (Chip Banner). */\n colorTextPrimary: `var(--fairmint-color-text-primary, ${neutral[9]})`,\n /** Secondary / muted text — subtitles, supporting labels. Adapts to color scheme. */\n colorTextSecondary: `var(--fairmint-color-text-secondary, ${neutral[5]})`,\n /** Tertiary / faint text — timestamps, metadata. Adapts to color scheme. */\n colorTextTertiary: `var(--fairmint-color-text-tertiary, ${neutral[4]})`,\n /** Text on filled controls. */\n colorTextInverse: fairmintVar(\"color-text-inverse\", \"#ffffff\"),\n /** Disabled text. */\n colorTextDisabled: fairmintVar(\"color-text-disabled\", neutral[6]),\n /** Primary icon and stroke color. */\n colorIconPrimary: fairmintVar(\"color-icon-primary\", neutral[9]),\n /** Secondary icon and stroke color. */\n colorIconSecondary: fairmintVar(\"color-icon-secondary\", neutral[5]),\n /** Tertiary icon and stroke color. */\n colorIconTertiary: fairmintVar(\"color-icon-tertiary\", neutral[4]),\n /** Icon color on filled or dark surfaces. */\n colorIconInverse: fairmintVar(\"color-icon-inverse\", \"#ffffff\"),\n /** Disabled icon and stroke color. */\n colorIconDisabled: fairmintVar(\"color-icon-disabled\", neutral[6]),\n /** Default border. */\n colorBorderDefault: fairmintVar(\"color-border-default\", neutral[2]),\n /** Focus border/ring color. */\n colorBorderFocus: fairmintVar(\"color-border-focus\", indigo[5]),\n /** Disabled border. */\n colorBorderDisabled: fairmintVar(\"color-border-disabled\", neutral[3]),\n /** Brand action color. */\n colorBrandPrimary: fairmintVar(\"color-brand-primary\", indigo[6]),\n /** Hovered brand action color. */\n colorBrandPrimaryHover: fairmintVar(\"color-brand-primary-hover\", indigo[7]),\n /** Pressed brand action color. */\n colorBrandPrimaryActive: fairmintVar(\"color-brand-primary-active\", indigo[7]),\n /** Fairmint blue brand accent. */\n colorBrandBlue: fairmintVar(\"color-brand-blue\", fairmintBlue[5]),\n /** Fairmint purple brand accent. */\n colorBrandPurple: fairmintVar(\"color-brand-purple\", fairmintPurple[5]),\n /** Background tint for selected / active rows. Adapts to color scheme. */\n colorSurfaceSelected: `var(--fairmint-color-surface-selected, ${indigo[0]})`,\n /** Icon/text drawn on top of colorSurfaceSelected (e.g. a checkmark in a selected badge). Adapts to color scheme. */\n colorIconOnSurfaceSelected: `var(--fairmint-color-icon-on-surface-selected, ${indigo[6]})`,\n /** Semantic status roles. */\n colorSuccessBg: fairmintVar(\"color-success-bg\", success[0]),\n colorSuccessText: fairmintVar(\"color-success-text\", success[7]),\n colorSuccessBorder: fairmintVar(\"color-success-border\", success[2]),\n colorSuccessSolid: fairmintVar(\"color-success-solid\", success[7]),\n colorSuccessSolidHover: fairmintVar(\"color-success-solid-hover\", success[7]),\n colorWarningBg: fairmintVar(\"color-warning-bg\", warning[0]),\n colorWarningText: fairmintVar(\"color-warning-text\", warning[7]),\n colorWarningBorder: fairmintVar(\"color-warning-border\", warning[2]),\n colorWarningSolid: fairmintVar(\"color-warning-solid\", warning[7]),\n colorWarningSolidHover: fairmintVar(\"color-warning-solid-hover\", warning[7]),\n colorErrorBg: fairmintVar(\"color-error-bg\", error[0]),\n colorErrorBgSubtle: fairmintVar(\"color-error-bg-subtle\", error[1]),\n colorErrorText: fairmintVar(\"color-error-text\", error[7]),\n colorErrorBorder: fairmintVar(\"color-error-border\", error[2]),\n colorErrorSolid: fairmintVar(\"color-error-solid\", error[5]),\n colorErrorSolidHover: fairmintVar(\"color-error-solid-hover\", error[6]),\n colorErrorSolidMuted: fairmintVar(\"color-error-solid-muted\", error[4]),\n colorInfoBg: fairmintVar(\"color-info-bg\", info[0]),\n colorInfoText: fairmintVar(\"color-info-text\", info[7]),\n colorInfoBorder: fairmintVar(\"color-info-border\", info[2]),\n colorInfoSolid: fairmintVar(\"color-info-solid\", info[7]),\n colorInfoSolidHover: fairmintVar(\"color-info-solid-hover\", info[7]),\n /** Decorative watermark color. */\n colorWatermark: fairmintVar(\"color-watermark\", neutral[1]),\n /** Large decorative watermark on error/empty pages. Adapts to color scheme. */\n watermarkColor: fairmintVar(\"color-watermark\", neutral[1]),\n /** Heading font family (Plus Jakarta Sans). */\n fontHeadings: `var(--fairmint-font-headings, ${typography.headingFontFamily})`,\n /** Body font family (Inter). */\n fontBody: `var(--fairmint-font-body, ${typography.fontFamily})`,\n} as const;\n\n/**\n * Returns the MantineProvider props required to use @fairmint/ui components.\n * Use this when you need to instantiate MantineProvider directly (e.g. in\n * Storybook decorators or server-rendering setups) instead of FairmintProvider.\n *\n * @example\n * ```tsx\n * import { MantineProvider } from \"@mantine/core\";\n * import { createFairmintMantineProviderProps } from \"@fairmint/ui\";\n *\n * <MantineProvider {...createFairmintMantineProviderProps()}>\n * <App />\n * </MantineProvider>\n * ```\n */\nexport function createFairmintMantineProviderProps(\n colorScheme: \"light\" | \"dark\" | \"auto\" = \"light\",\n) {\n return {\n theme,\n cssVariablesResolver: fairmintCssVariables,\n defaultColorScheme: colorScheme,\n } as const;\n}\n\n/** Brand colors for gradients and custom styling. */\nexport const brandColors = {\n blue: \"#0A4EFB\",\n purple: \"#9E03FF\",\n indigo: \"#6366F1\",\n gradient: \"linear-gradient(90deg, #0A4EFB 0%, #9E03FF 100%)\",\n} as const;\n\nexport const commonColors = {\n black: \"#000000\",\n white: \"#ffffff\",\n} as const;\n\n/**\n * Card/row shadow used by WalletList and similar card surfaces.\n * Equivalent to neutralColors[900] at ~10% opacity (#111927 → #1119271A).\n */\nexport const shadowColor = {\n card: \"#1119271A\",\n} as const;\n\n/** Indigo scale for direct access outside Mantine's theme system. Keys are numeric literals. */\nexport const indigoColors = {\n 0: \"#EEF2FF\",\n 1: \"#E0E7FF\",\n 2: \"#C7D2FE\",\n 3: \"#A5B4FC\",\n 4: \"#818CF8\",\n 5: \"#6366F1\",\n 6: \"#4F46E5\",\n 7: \"#4338CA\",\n 8: \"#3730A3\",\n 9: \"#312E81\",\n} as const;\n\n/** Neutral scale for direct access outside Mantine's theme system. Keys are numeric literals. */\nexport const neutralColors = {\n 50: \"#F8F9FA\",\n 100: \"#F3F4F6\",\n 200: \"#E5E7EB\",\n 300: \"#D2D6DB\",\n 400: \"#9DA4AE\",\n 500: \"#6C737F\",\n 600: \"#4D5761\",\n 700: \"#2F3746\",\n 800: \"#1C2536\",\n 900: \"#111927\",\n} as const;\n\n/** Dark neutral ramp used by the semantic dark-mode CSS variables. */\nexport const darkNeutralColors = {\n 50: \"#F5F7FA\",\n 100: \"#E2E7ED\",\n 200: \"#B8C2D0\",\n 300: \"#8D99A8\",\n 400: \"#748093\",\n 500: \"#5C687A\",\n 600: \"#2F3746\",\n 700: \"#1F2A39\",\n 800: \"#1B2431\",\n 900: \"#0F141C\",\n} as const;\n\n/** Semantic colors for status-based styling. */\nexport const semanticColors = {\n success: \"#10B981\",\n warning: \"#F79009\",\n error: \"#F04438\",\n info: \"#06AED4\",\n} as const;\n\nexport type { AvatarPaletteColor, FairmintColor } from \"./colors\";\nexport { AVATAR_PALETTE, colors } from \"./colors\";\nexport type { FairmintFontSize } from \"./fontSizes\";\nexport { fontSizes } from \"./fontSizes\";\nexport { DEFAULT_FAIRMINT_LOGO_SRC } from \"./logo\";\nexport type { FairmintResponsiveTypography } from \"./responsiveTypography\";\nexport { responsiveTypography } from \"./responsiveTypography\";\nexport type { FairmintSpacing } from \"./spacing\";\nexport { spacing } from \"./spacing\";\nexport { overlayZIndexAboveLegacyShell } from \"./zIndex\";\n"],"names":["createTheme","spacing","fontSizes"],"mappings":"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"}
1
+ {"version":3,"file":"index.cjs","sources":["../../src/theme/index.ts"],"sourcesContent":["import {\n type CSSVariablesResolver,\n createTheme,\n type MantineColorsTuple,\n type MantineTheme,\n} from \"@mantine/core\";\nimport { fontSizes } from \"./fontSizes\";\nimport { spacing } from \"./spacing\";\nimport { overlayZIndexAboveFairmintOverlays } from \"./zIndex\";\n\n/**\n * Fairmint radius scale — single source of truth used by both the Mantine\n * theme config and the exported `radii` constant. Edit here; both stay in sync.\n */\nexport const radii = {\n xs: \"0.25rem\",\n sm: \"0.375rem\",\n md: \"0.5rem\",\n lg: \"0.75rem\",\n xl: \"1rem\",\n} as const;\n\n/**\n * Indigo palette — primary UI color.\n * Used for buttons, links, active navigation, focus rings.\n * Shade [5] (#6366F1) is the default primary.\n */\nconst indigo: MantineColorsTuple = [\n \"#EEF2FF\",\n \"#E0E7FF\",\n \"#C7D2FE\",\n \"#A5B4FC\",\n \"#818CF8\",\n \"#6366F1\",\n \"#4F46E5\",\n \"#4338CA\",\n \"#3730A3\",\n \"#253974\",\n];\n\n/**\n * Neutral scale — replaces Mantine's default gray.\n * Used for text, borders, backgrounds, disabled states.\n */\nconst neutral: MantineColorsTuple = [\n \"#F8F9FA\",\n \"#F3F4F6\",\n \"#E5E7EB\",\n \"#D2D6DB\",\n \"#9DA4AE\",\n \"#6C737F\",\n \"#4D5761\",\n \"#2F3746\",\n \"#1C2536\",\n \"#111927\",\n];\n\n/**\n * Dark-mode neutral ramp — the dark surface and text anchors used by Chip.\n * Keep these separate from the light neutral ramp so Light mode remains stable.\n */\nconst darkNeutral: MantineColorsTuple = [\n \"#FFFFFF\",\n \"#E7E9F0\",\n \"#B8C2D0\",\n \"#9DA4AE\",\n \"#8F99AB\",\n \"#6C737F\",\n \"#2F3746\",\n \"#1B1D21\",\n \"#17191D\",\n \"#111214\",\n];\n\n/**\n * Approved charcoal dark-mode roles from the onboarding source of truth.\n * Keep these semantic values explicit instead of deriving them from the\n * light neutral ramp so component behavior stays aligned with Figma.\n */\nconst charcoalDark = {\n canvas: \"#111214\",\n surface: \"#17191D\",\n chrome: \"#1B1D21\",\n control: \"#202329\",\n selected: \"#2F3746\",\n // Must read on canvas/chrome. Former #111927 (light-mode N900) made Avatar,\n // Button/ActionIcon `variant=\"light\"`, and brand-subtle plates disappear.\n // Matches light mode where brand-subtle and selected both resolve to indigo[0].\n brandSubtle: \"#2F3746\",\n /** One step above brandSubtle for light-variant / brand-subtle hover. */\n brandSubtleHover: \"#3A4456\",\n textPrimary: \"#FFFFFF\",\n textSecondary: \"#9DA4AE\",\n textTertiary: \"#8F99AB\",\n textDisabled: \"#6C737F\",\n iconSecondary: \"#B8C2D0\",\n border: \"#2F3746\",\n focus: \"#A5B4FC\",\n primary: \"#6366F1\",\n primaryHover: \"#818CF8\",\n primaryActive: \"#A5B4FC\",\n successBg: \"#163E38\",\n successText: \"#6FE3BE\",\n successBorder: \"#2F3746\",\n successSolid: \"#34D399\",\n successSolidHover: \"#6FE3BE\",\n warningBg: \"#402A12\",\n warningText: \"#FDB022\",\n warningBorder: \"#6E4515\",\n warningSolid: \"#DC6803\",\n warningSolidHover: \"#E5A34A\",\n infoBg: \"#172B45\",\n infoText: \"#22CCEE\",\n infoBorder: \"#23476B\",\n} as const;\n\n/**\n * Mantine still references its reserved `dark` ramp directly in several\n * component styles (for example Card uses dark[6] and Paper borders use\n * dark[4]). Map those fallback indices to Fairmint's charcoal roles so an\n * un-tokenized Mantine state cannot reintroduce the warm default gray palette.\n */\nconst mantineDark: MantineColorsTuple = [\n charcoalDark.textPrimary,\n darkNeutral[1],\n darkNeutral[2],\n charcoalDark.textSecondary,\n charcoalDark.border,\n charcoalDark.control,\n charcoalDark.surface,\n charcoalDark.canvas,\n charcoalDark.canvas,\n charcoalDark.canvas,\n];\n\n/**\n * Fairmint brand blue — accent color for gradients and brand elements.\n * Shade [5] (#0A4EFB) is the primary brand blue.\n *\n * This is the current production value documented in design/DESIGN.md.\n */\nconst fairmintBlue: MantineColorsTuple = [\n \"#e6f0ff\",\n \"#cce0ff\",\n \"#99c2ff\",\n \"#66a3ff\",\n \"#3385ff\",\n \"#0A4EFB\",\n \"#083ec9\",\n \"#062e97\",\n \"#041f64\",\n \"#020f32\",\n];\n\n/**\n * Fairmint brand purple — accent color for gradients and brand elements.\n * Shade [5] (#9E03FF) is the primary brand purple.\n *\n * This is the current production value documented in design/DESIGN.md.\n */\nconst fairmintPurple: MantineColorsTuple = [\n \"#f5e6ff\",\n \"#e6ccff\",\n \"#cc99ff\",\n \"#b366ff\",\n \"#9933ff\",\n \"#9E03FF\",\n \"#7e02cc\",\n \"#5f0299\",\n \"#3f0166\",\n \"#200133\",\n];\n\nconst success: MantineColorsTuple = [\n \"#F0FDF9\",\n \"#D1FAE5\",\n \"#A7F3D0\",\n \"#6EE7B7\",\n \"#34D399\",\n \"#10B981\",\n \"#059669\",\n \"#047857\",\n \"#065F46\",\n \"#134E48\",\n];\n\nconst warning: MantineColorsTuple = [\n \"#FFFAEB\",\n \"#FEF0C7\",\n \"#FEDF89\",\n \"#FEC84B\",\n \"#FDB022\",\n \"#F79009\",\n \"#DC6803\",\n \"#B54708\",\n \"#93370D\",\n \"#7A2E0E\",\n];\n\nconst error: MantineColorsTuple = [\n \"#FEF3F2\",\n \"#FEE4E2\",\n \"#FECDCA\",\n \"#FDA29B\",\n \"#F97066\",\n \"#F04438\",\n \"#D92D20\",\n \"#B42318\",\n \"#912018\",\n \"#7A271A\",\n];\n\nconst info: MantineColorsTuple = [\n \"#ECFDFF\",\n \"#CFF9FE\",\n \"#A5F0FC\",\n \"#67E3F9\",\n \"#22CCEE\",\n \"#06AED4\",\n \"#088AB2\",\n \"#0E7090\",\n \"#155B75\",\n \"#164C63\",\n];\n\n/**\n * Typography constants — single source of truth for font families.\n * Use these instead of var(--mantine-font-family-*) in component code.\n * Declared before createTheme so the theme itself references them.\n */\nexport const typography = {\n fontFamily:\n '\"Inter\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\"',\n headingFontFamily: '\"Plus Jakarta Sans\", sans-serif',\n} as const;\n\n/**\n * Semantic toast surfaces keyed by Mantine Notification `color`.\n * Uses Fairmint CSS variables so light/dark flip with the resolver\n * (`*-bg` light values are the /50 ramp shade / tuple[0]).\n */\nconst notificationToneStyles: Record<string, { bg: string; border: string; text: string }> = {\n success: {\n bg: \"var(--fairmint-color-success-bg)\",\n border: \"var(--fairmint-color-success-border)\",\n text: \"var(--fairmint-color-success-text)\",\n },\n error: {\n bg: \"var(--fairmint-color-error-bg)\",\n border: \"var(--fairmint-color-error-border)\",\n text: \"var(--fairmint-color-error-text)\",\n },\n warning: {\n bg: \"var(--fairmint-color-warning-bg)\",\n border: \"var(--fairmint-color-warning-border)\",\n text: \"var(--fairmint-color-warning-text)\",\n },\n info: {\n bg: \"var(--fairmint-color-info-bg)\",\n border: \"var(--fairmint-color-info-border)\",\n text: \"var(--fairmint-color-info-text)\",\n },\n};\n\nexport const theme = createTheme({\n primaryColor: \"indigo\",\n // Mantine defaults to a darker shade for dark-mode filled/light variants\n // (primaryShade: { light: 6, dark: 8 }), but our brand indigo (index 5,\n // #6366F1) is the same accent in both color schemes — pin a single shade\n // so unwrapped Mantine components (color=\"indigo\") don't drift into a\n // different, more saturated purple in dark mode.\n primaryShade: 5,\n colors: {\n indigo,\n gray: neutral,\n dark: mantineDark,\n darkGray: darkNeutral,\n fairmintBlue,\n fairmintPurple,\n success,\n warning,\n error,\n info,\n },\n\n fontFamily: typography.fontFamily,\n headings: {\n fontFamily: typography.headingFontFamily,\n fontWeight: \"700\",\n },\n\n radius: radii,\n defaultRadius: \"md\",\n spacing,\n fontSizes: {\n xs: fontSizes.xs,\n sm: fontSizes.sm,\n md: fontSizes.md,\n lg: fontSizes.lg,\n xl: fontSizes.xl,\n },\n\n breakpoints: {\n xs: \"30em\",\n sm: \"48em\",\n md: \"64em\",\n lg: \"74em\",\n xl: \"90em\",\n },\n\n components: {\n Button: {\n defaultProps: { size: \"md\" },\n styles: {\n root: {\n fontWeight: 600,\n borderRadius: \"0.75rem\",\n textTransform: \"none\" as const,\n },\n },\n },\n Input: {\n classNames: { input: \"fairmint-input\" },\n },\n TextInput: {\n defaultProps: { size: \"md\" },\n },\n Select: {\n defaultProps: {\n comboboxProps: { zIndex: overlayZIndexAboveFairmintOverlays },\n },\n },\n MultiSelect: {\n defaultProps: {\n comboboxProps: { zIndex: overlayZIndexAboveFairmintOverlays },\n },\n },\n Card: {\n defaultProps: {\n padding: \"lg\",\n radius: \"xl\",\n withBorder: true,\n },\n styles: {\n root: {\n backgroundColor: \"var(--fairmint-color-bg-surface, #ffffff)\",\n borderColor: `var(--fairmint-color-border-default, ${neutral[2]})`,\n },\n },\n },\n Paper: {\n styles: {\n root: {\n backgroundColor: \"var(--fairmint-color-bg-surface, #ffffff)\",\n backgroundImage: \"none\",\n borderColor: `var(--fairmint-color-border-default, ${neutral[2]})`,\n },\n },\n },\n Table: {\n styles: {\n thead: {\n fontSize: \"0.75rem\",\n fontWeight: 600,\n letterSpacing: \"0.5px\",\n textTransform: \"uppercase\" as const,\n },\n },\n },\n Modal: {\n styles: {\n title: {\n fontSize: fontSizes.lg,\n fontWeight: 700,\n lineHeight: 1.3,\n },\n },\n },\n // Toasts: Ramp-inspired restraint — single-layer subtle elevation (lighter\n // than Mantine shadow-xs) + 1px semantic border (override shadow-lg / filled\n // icon). Semantic variants use *-bg (light = ramp /50 / tuple[0]; dark =\n // approved charcoal semantic surfaces) with matching border/text/icon tokens.\n // Neutral/default (no color) stays on the standard surface.\n // Horizontal padding is symmetric spacing.md (16px): Mantine defaults to\n // 22px start (accent rail) vs spacing.xs end (~10px); Fairmint toasts use\n // outlined icons (rail hidden), so match left/right on the spacing scale.\n Notification: {\n styles: (_theme: MantineTheme, params: { color?: string }) => {\n const tone = notificationToneStyles[params.color ?? \"\"];\n const rootPadding = {\n paddingInlineStart: spacing.md,\n paddingInlineEnd: spacing.md,\n } as const;\n\n if (!tone) {\n return {\n root: {\n boxShadow: \"var(--fairmint-elevation-subtle)\",\n ...rootPadding,\n },\n icon: {\n backgroundColor: \"transparent\",\n color: \"var(--notification-color)\",\n },\n };\n }\n\n return {\n root: {\n boxShadow: \"var(--fairmint-elevation-subtle)\",\n backgroundColor: tone.bg,\n border: `1px solid ${tone.border}`,\n ...rootPadding,\n },\n title: {\n color: tone.text,\n },\n description: {\n color: tone.text,\n },\n icon: {\n backgroundColor: \"transparent\",\n color: tone.text,\n },\n closeButton: {\n color: tone.text,\n },\n };\n },\n },\n },\n});\n\n/**\n * Fairmint CSS variables resolver for MantineProvider.\n * Publishes --fairmint-* custom properties so components never reference\n * --mantine-* variables directly. All light/dark switching is centralised here.\n */\nexport const fairmintCssVariables: CSSVariablesResolver = () => ({\n variables: {\n \"--fairmint-font-headings\": typography.headingFontFamily,\n \"--fairmint-font-body\": typography.fontFamily,\n \"--fairmint-interactive-focus-ring\": indigo[5],\n },\n light: {\n \"--fairmint-interactive-focus-ring\": indigo[5],\n \"--fairmint-color-bg-canvas\": commonColors.white,\n \"--fairmint-color-bg-surface\": commonColors.white,\n \"--fairmint-color-bg-surface-secondary\": neutral[0],\n \"--fairmint-color-bg-hover\": neutral[0],\n \"--fairmint-color-bg-selected\": indigo[0],\n \"--fairmint-color-bg-brand-subtle\": indigo[0],\n \"--fairmint-color-bg-brand-subtle-hover\": indigo[1],\n \"--fairmint-color-bg-disabled\": neutral[2],\n \"--fairmint-watermark-color\": neutral[1],\n \"--fairmint-color-text-primary\": neutral[9],\n \"--fairmint-color-text-secondary\": neutral[5],\n \"--fairmint-color-text-tertiary\": neutral[4],\n \"--fairmint-color-text-inverse\": commonColors.white,\n \"--fairmint-color-text-disabled\": neutral[6],\n \"--fairmint-color-icon-primary\": neutral[9],\n \"--fairmint-color-icon-secondary\": neutral[5],\n \"--fairmint-color-icon-tertiary\": neutral[4],\n \"--fairmint-color-icon-inverse\": commonColors.white,\n \"--fairmint-color-icon-disabled\": neutral[6],\n \"--fairmint-color-border-default\": neutral[2],\n \"--fairmint-color-border-focus\": indigo[5],\n \"--fairmint-color-border-disabled\": neutral[3],\n \"--fairmint-color-brand-primary\": indigo[6],\n \"--fairmint-color-brand-primary-hover\": indigo[7],\n \"--fairmint-color-brand-primary-active\": indigo[7],\n \"--fairmint-color-brand-blue\": fairmintBlue[5],\n \"--fairmint-color-brand-purple\": fairmintPurple[5],\n \"--fairmint-color-watermark\": neutral[1],\n \"--fairmint-color-surface-selected\": indigo[0],\n \"--fairmint-color-icon-on-surface-selected\": indigo[6],\n \"--fairmint-interactive-hover-shadow\": `0 2px 6px ${neutral[9]}0F`,\n // Single soft layer — lighter than Mantine shadow-xs (no multi-layer stack).\n \"--fairmint-elevation-subtle\": `0 1px 3px ${neutral[9]}06`,\n \"--fairmint-interactive-hover-bg\": neutral[0],\n \"--fairmint-color-success-bg\": success[0],\n \"--fairmint-color-success-text\": success[7],\n \"--fairmint-color-success-border\": success[2],\n \"--fairmint-color-success-solid\": success[7],\n \"--fairmint-color-success-solid-hover\": success[7],\n \"--fairmint-color-warning-bg\": warning[0],\n \"--fairmint-color-warning-text\": warning[7],\n \"--fairmint-color-warning-border\": warning[2],\n \"--fairmint-color-warning-solid\": warning[7],\n \"--fairmint-color-warning-solid-hover\": warning[7],\n \"--fairmint-color-error-bg\": error[0],\n \"--fairmint-color-error-bg-subtle\": error[1],\n \"--fairmint-color-error-text\": error[7],\n \"--fairmint-color-error-border\": error[2],\n \"--fairmint-color-error-solid\": error[7],\n \"--fairmint-color-error-solid-hover\": error[8],\n \"--fairmint-color-error-solid-muted\": error[4],\n \"--fairmint-color-info-bg\": info[0],\n \"--fairmint-color-info-text\": info[7],\n \"--fairmint-color-info-border\": info[2],\n \"--fairmint-color-info-solid\": info[7],\n \"--fairmint-color-info-solid-hover\": info[7],\n },\n dark: {\n \"--fairmint-interactive-focus-ring\": charcoalDark.focus,\n \"--fairmint-color-bg-canvas\": charcoalDark.canvas,\n \"--fairmint-color-bg-surface\": charcoalDark.surface,\n \"--fairmint-color-bg-surface-secondary\": charcoalDark.chrome,\n \"--fairmint-color-bg-hover\": charcoalDark.control,\n \"--fairmint-color-bg-selected\": charcoalDark.selected,\n \"--fairmint-color-bg-brand-subtle\": charcoalDark.brandSubtle,\n \"--fairmint-color-bg-brand-subtle-hover\": charcoalDark.brandSubtleHover,\n \"--fairmint-color-bg-disabled\": charcoalDark.control,\n \"--fairmint-watermark-color\": charcoalDark.control,\n \"--fairmint-color-text-primary\": charcoalDark.textPrimary,\n \"--fairmint-color-text-secondary\": charcoalDark.textSecondary,\n \"--fairmint-color-text-tertiary\": charcoalDark.textTertiary,\n \"--fairmint-color-text-inverse\": neutral[9],\n \"--fairmint-color-text-disabled\": charcoalDark.textDisabled,\n \"--fairmint-color-icon-primary\": charcoalDark.textPrimary,\n \"--fairmint-color-icon-secondary\": charcoalDark.iconSecondary,\n \"--fairmint-color-icon-tertiary\": charcoalDark.textTertiary,\n \"--fairmint-color-icon-inverse\": charcoalDark.textPrimary,\n \"--fairmint-color-icon-disabled\": charcoalDark.textDisabled,\n \"--fairmint-color-border-default\": charcoalDark.border,\n \"--fairmint-color-border-focus\": charcoalDark.focus,\n \"--fairmint-color-border-disabled\": charcoalDark.border,\n \"--fairmint-color-brand-primary\": charcoalDark.primary,\n \"--fairmint-color-brand-primary-hover\": charcoalDark.primaryHover,\n \"--fairmint-color-brand-primary-active\": charcoalDark.primaryActive,\n \"--fairmint-color-brand-blue\": fairmintBlue[5],\n \"--fairmint-color-brand-purple\": fairmintPurple[5],\n \"--fairmint-color-watermark\": charcoalDark.control,\n \"--fairmint-color-surface-selected\": charcoalDark.selected,\n // indigo[6] (the light-mode value) is too dark to read against the\n // dark selected surface — use a light indigo instead.\n \"--fairmint-color-icon-on-surface-selected\": indigo[2],\n \"--fairmint-interactive-hover-shadow\": \"0 2px 6px #00000066\",\n // Single soft layer — restrained vs hover shadow and Mantine shadow-xs.\n \"--fairmint-elevation-subtle\": \"0 1px 3px #00000014\",\n \"--fairmint-interactive-hover-bg\": charcoalDark.surface,\n \"--fairmint-color-success-bg\": charcoalDark.successBg,\n \"--fairmint-color-success-text\": charcoalDark.successText,\n \"--fairmint-color-success-border\": charcoalDark.successBorder,\n \"--fairmint-color-success-solid\": charcoalDark.successSolid,\n \"--fairmint-color-success-solid-hover\": charcoalDark.successSolidHover,\n \"--fairmint-color-warning-bg\": charcoalDark.warningBg,\n \"--fairmint-color-warning-text\": charcoalDark.warningText,\n \"--fairmint-color-warning-border\": charcoalDark.warningBorder,\n \"--fairmint-color-warning-solid\": charcoalDark.warningSolid,\n \"--fairmint-color-warning-solid-hover\": charcoalDark.warningSolidHover,\n \"--fairmint-color-error-bg\": error[9],\n \"--fairmint-color-error-bg-subtle\": error[8],\n \"--fairmint-color-error-text\": error[2],\n \"--fairmint-color-error-border\": error[7],\n \"--fairmint-color-error-solid\": error[7],\n \"--fairmint-color-error-solid-hover\": error[8],\n \"--fairmint-color-error-solid-muted\": error[5],\n \"--fairmint-color-info-bg\": charcoalDark.infoBg,\n \"--fairmint-color-info-text\": charcoalDark.infoText,\n \"--fairmint-color-info-border\": charcoalDark.infoBorder,\n \"--fairmint-color-info-solid\": charcoalDark.primary,\n \"--fairmint-color-info-solid-hover\": charcoalDark.primaryHover,\n\n // Mantine primitives used by the shared component wrappers. These keep\n // Button, Badge, Alert, Loader, and form controls on the same semantic\n // roles instead of falling back to Mantine's default dark palette.\n \"--mantine-color-body\": charcoalDark.canvas,\n \"--mantine-color-text\": charcoalDark.textPrimary,\n \"--mantine-color-bright\": charcoalDark.textPrimary,\n \"--mantine-color-dimmed\": charcoalDark.textSecondary,\n \"--mantine-color-placeholder\": \"#969BA5\",\n \"--mantine-color-default\": charcoalDark.surface,\n \"--mantine-color-default-hover\": charcoalDark.control,\n \"--mantine-color-default-color\": charcoalDark.textPrimary,\n \"--mantine-color-default-border\": charcoalDark.border,\n \"--mantine-color-disabled\": charcoalDark.control,\n \"--mantine-color-disabled-color\": charcoalDark.textDisabled,\n \"--mantine-color-disabled-border\": charcoalDark.border,\n \"--mantine-primary-color-filled\": charcoalDark.primary,\n \"--mantine-primary-color-filled-hover\": charcoalDark.primaryHover,\n \"--mantine-primary-color-light\": charcoalDark.brandSubtle,\n \"--mantine-primary-color-light-hover\": charcoalDark.brandSubtleHover,\n \"--mantine-primary-color-light-color\": charcoalDark.primaryActive,\n \"--mantine-primary-color-3\": charcoalDark.primaryActive,\n \"--mantine-primary-color-4\": charcoalDark.primaryActive,\n \"--mantine-primary-color-6\": charcoalDark.primary,\n \"--mantine-primary-color-7\": charcoalDark.primaryHover,\n \"--mantine-primary-color-8\": charcoalDark.primaryHover,\n \"--mantine-primary-color-9\": charcoalDark.brandSubtle,\n \"--mantine-color-indigo-3\": charcoalDark.primaryActive,\n \"--mantine-color-indigo-4\": charcoalDark.primaryActive,\n \"--mantine-color-indigo-6\": charcoalDark.primary,\n \"--mantine-color-indigo-7\": charcoalDark.primaryHover,\n \"--mantine-color-indigo-8\": charcoalDark.primaryHover,\n \"--mantine-color-indigo-9\": charcoalDark.brandSubtle,\n \"--mantine-color-indigo-text\": charcoalDark.primaryActive,\n \"--mantine-color-indigo-filled\": charcoalDark.primary,\n \"--mantine-color-indigo-filled-hover\": charcoalDark.primaryHover,\n \"--mantine-color-indigo-light\": charcoalDark.brandSubtle,\n \"--mantine-color-indigo-light-hover\": charcoalDark.brandSubtleHover,\n \"--mantine-color-indigo-light-color\": charcoalDark.primaryActive,\n \"--mantine-color-indigo-outline\": charcoalDark.focus,\n \"--mantine-color-indigo-outline-hover\": charcoalDark.control,\n \"--mantine-color-gray-light\": charcoalDark.control,\n \"--mantine-color-gray-light-color\": charcoalDark.textSecondary,\n \"--mantine-color-gray-filled\": charcoalDark.border,\n \"--mantine-color-gray-filled-hover\": charcoalDark.iconSecondary,\n \"--mantine-color-gray-4\": charcoalDark.iconSecondary,\n \"--mantine-color-gray-5\": charcoalDark.textTertiary,\n \"--mantine-color-gray-6\": charcoalDark.textSecondary,\n \"--mantine-color-gray-7\": charcoalDark.border,\n \"--mantine-color-gray-8\": charcoalDark.chrome,\n \"--mantine-color-gray-9\": charcoalDark.canvas,\n \"--mantine-color-success-light\": charcoalDark.successBg,\n \"--mantine-color-success-light-color\": charcoalDark.successText,\n \"--mantine-color-success-filled\": charcoalDark.successSolid,\n \"--mantine-color-success-filled-hover\": charcoalDark.successSolidHover,\n \"--mantine-color-warning-light\": charcoalDark.warningBg,\n \"--mantine-color-warning-light-color\": charcoalDark.warningText,\n \"--mantine-color-warning-filled\": charcoalDark.warningSolid,\n \"--mantine-color-warning-filled-hover\": charcoalDark.warningSolidHover,\n \"--mantine-color-info-light\": charcoalDark.infoBg,\n \"--mantine-color-info-light-color\": charcoalDark.infoText,\n \"--mantine-color-info-filled\": charcoalDark.primary,\n \"--mantine-color-info-filled-hover\": charcoalDark.primaryHover,\n \"--mantine-color-error-2\": error[2],\n \"--mantine-color-error-3\": error[3],\n \"--mantine-color-error-4\": error[4],\n \"--mantine-color-error-6\": error[6],\n \"--mantine-color-error-7\": error[7],\n \"--mantine-color-error-8\": error[8],\n \"--mantine-color-error-9\": error[9],\n \"--mantine-color-error-text\": error[2],\n \"--mantine-color-error-filled\": error[7],\n \"--mantine-color-error-filled-hover\": error[6],\n \"--mantine-color-error-light\": error[9],\n \"--mantine-color-error-light-hover\": error[8],\n \"--mantine-color-error-light-color\": error[2],\n \"--mantine-color-error-outline\": error[7],\n \"--mantine-color-error-outline-hover\": error[8],\n },\n});\n\n/**\n * Typed JS references to every --fairmint-* CSS custom property.\n * Use these in component code instead of raw \"var(--fairmint-...)\" strings so\n * that renaming a token requires one change here rather than hunting every file.\n *\n * Each value includes a CSS fallback derived from the light-mode token value so\n * that components degrade gracefully when cssVariablesResolver is not wired up\n * (e.g. bare MantineProvider in tests or custom setups). Dark-mode fidelity is\n * lost without the resolver, but nothing renders invisibly.\n */\nconst fairmintVar = (name: string, fallback: string) => `var(--fairmint-${name}, ${fallback})`;\n\nexport const fairmintVars = {\n /** Canvas background for the app shell. */\n colorBgCanvas: fairmintVar(\"color-bg-canvas\", \"#ffffff\"),\n /** Primary raised surface. */\n colorBgSurface: fairmintVar(\"color-bg-surface\", \"#ffffff\"),\n /** Secondary surface used for fields, rows, and subtle containers. */\n colorBgSurfaceSecondary: fairmintVar(\"color-bg-surface-secondary\", neutral[0]),\n /** Hover surface. */\n colorBgHover: fairmintVar(\"color-bg-hover\", neutral[0]),\n /** Selected surface. */\n colorBgSelected: fairmintVar(\"color-bg-selected\", indigo[0]),\n /** Subtle brand surface. */\n colorBgBrandSubtle: fairmintVar(\"color-bg-brand-subtle\", indigo[0]),\n /** Hovered subtle brand surface. */\n colorBgBrandSubtleHover: fairmintVar(\"color-bg-brand-subtle-hover\", indigo[1]),\n /** Disabled surface. */\n colorBgDisabled: fairmintVar(\"color-bg-disabled\", neutral[2]),\n /** Primary body/heading text — titles on tinted surfaces (Chip Banner). */\n colorTextPrimary: `var(--fairmint-color-text-primary, ${neutral[9]})`,\n /** Secondary / muted text — subtitles, supporting labels. Adapts to color scheme. */\n colorTextSecondary: `var(--fairmint-color-text-secondary, ${neutral[5]})`,\n /** Tertiary / faint text — timestamps, metadata. Adapts to color scheme. */\n colorTextTertiary: `var(--fairmint-color-text-tertiary, ${neutral[4]})`,\n /** Text on filled controls. */\n colorTextInverse: fairmintVar(\"color-text-inverse\", \"#ffffff\"),\n /** Disabled text. */\n colorTextDisabled: fairmintVar(\"color-text-disabled\", neutral[6]),\n /** Primary icon and stroke color. */\n colorIconPrimary: fairmintVar(\"color-icon-primary\", neutral[9]),\n /** Secondary icon and stroke color. */\n colorIconSecondary: fairmintVar(\"color-icon-secondary\", neutral[5]),\n /** Tertiary icon and stroke color. */\n colorIconTertiary: fairmintVar(\"color-icon-tertiary\", neutral[4]),\n /** Icon color on filled or dark surfaces. */\n colorIconInverse: fairmintVar(\"color-icon-inverse\", \"#ffffff\"),\n /** Disabled icon and stroke color. */\n colorIconDisabled: fairmintVar(\"color-icon-disabled\", neutral[6]),\n /** Default border. */\n colorBorderDefault: fairmintVar(\"color-border-default\", neutral[2]),\n /** Focus border/ring color. */\n colorBorderFocus: fairmintVar(\"color-border-focus\", indigo[5]),\n /** Disabled border. */\n colorBorderDisabled: fairmintVar(\"color-border-disabled\", neutral[3]),\n /** Brand action color. */\n colorBrandPrimary: fairmintVar(\"color-brand-primary\", indigo[6]),\n /** Hovered brand action color. */\n colorBrandPrimaryHover: fairmintVar(\"color-brand-primary-hover\", indigo[7]),\n /** Pressed brand action color. */\n colorBrandPrimaryActive: fairmintVar(\"color-brand-primary-active\", indigo[7]),\n /** Fairmint blue brand accent. */\n colorBrandBlue: fairmintVar(\"color-brand-blue\", fairmintBlue[5]),\n /** Fairmint purple brand accent. */\n colorBrandPurple: fairmintVar(\"color-brand-purple\", fairmintPurple[5]),\n /** Background tint for selected / active rows. Adapts to color scheme. */\n colorSurfaceSelected: `var(--fairmint-color-surface-selected, ${indigo[0]})`,\n /** Icon/text drawn on top of colorSurfaceSelected (e.g. a checkmark in a selected badge). Adapts to color scheme. */\n colorIconOnSurfaceSelected: `var(--fairmint-color-icon-on-surface-selected, ${indigo[6]})`,\n /** Semantic status roles. */\n colorSuccessBg: fairmintVar(\"color-success-bg\", success[0]),\n colorSuccessText: fairmintVar(\"color-success-text\", success[7]),\n colorSuccessBorder: fairmintVar(\"color-success-border\", success[2]),\n colorSuccessSolid: fairmintVar(\"color-success-solid\", success[7]),\n colorSuccessSolidHover: fairmintVar(\"color-success-solid-hover\", success[7]),\n colorWarningBg: fairmintVar(\"color-warning-bg\", warning[0]),\n colorWarningText: fairmintVar(\"color-warning-text\", warning[7]),\n colorWarningBorder: fairmintVar(\"color-warning-border\", warning[2]),\n colorWarningSolid: fairmintVar(\"color-warning-solid\", warning[7]),\n colorWarningSolidHover: fairmintVar(\"color-warning-solid-hover\", warning[7]),\n colorErrorBg: fairmintVar(\"color-error-bg\", error[0]),\n colorErrorBgSubtle: fairmintVar(\"color-error-bg-subtle\", error[1]),\n colorErrorText: fairmintVar(\"color-error-text\", error[7]),\n colorErrorBorder: fairmintVar(\"color-error-border\", error[2]),\n colorErrorSolid: fairmintVar(\"color-error-solid\", error[5]),\n colorErrorSolidHover: fairmintVar(\"color-error-solid-hover\", error[6]),\n colorErrorSolidMuted: fairmintVar(\"color-error-solid-muted\", error[4]),\n colorInfoBg: fairmintVar(\"color-info-bg\", info[0]),\n colorInfoText: fairmintVar(\"color-info-text\", info[7]),\n colorInfoBorder: fairmintVar(\"color-info-border\", info[2]),\n colorInfoSolid: fairmintVar(\"color-info-solid\", info[7]),\n colorInfoSolidHover: fairmintVar(\"color-info-solid-hover\", info[7]),\n /** Decorative watermark color. */\n colorWatermark: fairmintVar(\"color-watermark\", neutral[1]),\n /** Large decorative watermark on error/empty pages. Adapts to color scheme. */\n watermarkColor: fairmintVar(\"color-watermark\", neutral[1]),\n /** Heading font family (Plus Jakarta Sans). */\n fontHeadings: `var(--fairmint-font-headings, ${typography.headingFontFamily})`,\n /** Body font family (Inter). */\n fontBody: `var(--fairmint-font-body, ${typography.fontFamily})`,\n} as const;\n\n/**\n * Returns the MantineProvider props required to use @fairmint/ui components.\n * Use this when you need to instantiate MantineProvider directly (e.g. in\n * Storybook decorators or server-rendering setups) instead of FairmintProvider.\n *\n * @example\n * ```tsx\n * import { MantineProvider } from \"@mantine/core\";\n * import { createFairmintMantineProviderProps } from \"@fairmint/ui\";\n *\n * <MantineProvider {...createFairmintMantineProviderProps()}>\n * <App />\n * </MantineProvider>\n * ```\n */\nexport function createFairmintMantineProviderProps(\n colorScheme: \"light\" | \"dark\" | \"auto\" = \"light\",\n) {\n return {\n theme,\n cssVariablesResolver: fairmintCssVariables,\n defaultColorScheme: colorScheme,\n } as const;\n}\n\n/** Brand colors for gradients and custom styling. */\nexport const brandColors = {\n blue: \"#0A4EFB\",\n purple: \"#9E03FF\",\n indigo: \"#6366F1\",\n gradient: \"linear-gradient(90deg, #0A4EFB 0%, #9E03FF 100%)\",\n} as const;\n\nexport const commonColors = {\n black: \"#000000\",\n white: \"#ffffff\",\n} as const;\n\n/**\n * Card/row shadow used by WalletList and similar card surfaces.\n * Equivalent to neutralColors[900] at ~10% opacity (#111927 → #1119271A).\n */\nexport const shadowColor = {\n card: \"#1119271A\",\n} as const;\n\n/** Indigo scale for direct access outside Mantine's theme system. Keys are numeric literals. */\nexport const indigoColors = {\n 0: \"#EEF2FF\",\n 1: \"#E0E7FF\",\n 2: \"#C7D2FE\",\n 3: \"#A5B4FC\",\n 4: \"#818CF8\",\n 5: \"#6366F1\",\n 6: \"#4F46E5\",\n 7: \"#4338CA\",\n 8: \"#3730A3\",\n 9: \"#312E81\",\n} as const;\n\n/** Neutral scale for direct access outside Mantine's theme system. Keys are numeric literals. */\nexport const neutralColors = {\n 50: \"#F8F9FA\",\n 100: \"#F3F4F6\",\n 200: \"#E5E7EB\",\n 300: \"#D2D6DB\",\n 400: \"#9DA4AE\",\n 500: \"#6C737F\",\n 600: \"#4D5761\",\n 700: \"#2F3746\",\n 800: \"#1C2536\",\n 900: \"#111927\",\n} as const;\n\n/** Dark neutral ramp used by the semantic dark-mode CSS variables. */\nexport const darkNeutralColors = {\n 50: \"#F5F7FA\",\n 100: \"#E2E7ED\",\n 200: \"#B8C2D0\",\n 300: \"#8D99A8\",\n 400: \"#748093\",\n 500: \"#5C687A\",\n 600: \"#2F3746\",\n 700: \"#1F2A39\",\n 800: \"#1B2431\",\n 900: \"#0F141C\",\n} as const;\n\n/** Semantic colors for status-based styling. */\nexport const semanticColors = {\n success: \"#10B981\",\n warning: \"#F79009\",\n error: \"#F04438\",\n info: \"#06AED4\",\n} as const;\n\nexport type { AvatarPaletteColor, FairmintColor } from \"./colors\";\nexport { AVATAR_PALETTE, colors } from \"./colors\";\nexport type { FairmintFontSize } from \"./fontSizes\";\nexport { fontSizes } from \"./fontSizes\";\nexport { DEFAULT_FAIRMINT_LOGO_SRC } from \"./logo\";\nexport type { FairmintResponsiveTypography } from \"./responsiveTypography\";\nexport { responsiveTypography } from \"./responsiveTypography\";\nexport type { FairmintSpacing } from \"./spacing\";\nexport { spacing } from \"./spacing\";\nexport {\n overlayZIndexAboveFairmintOverlays,\n overlayZIndexAboveLegacyShell,\n} from \"./zIndex\";\n"],"names":["createTheme","spacing","fontSizes","overlayZIndexAboveFairmintOverlays"],"mappings":";;;;;;AAcO,MAAM,QAAQ;AAAA,EACnB,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AACN;AAOA,MAAM,SAA6B;AAAA,EACjC;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF;AAMA,MAAM,UAA8B;AAAA,EAClC;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF;AAMA,MAAM,cAAkC;AAAA,EACtC;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF;AAOA,MAAM,eAAe;AAAA,EACnB,QAAQ;AAAA,EACR,SAAS;AAAA,EACT,QAAQ;AAAA,EACR,SAAS;AAAA,EACT,UAAU;AAAA;AAAA;AAAA;AAAA,EAIV,aAAa;AAAA;AAAA,EAEb,kBAAkB;AAAA,EAClB,aAAa;AAAA,EACb,eAAe;AAAA,EACf,cAAc;AAAA,EACd,cAAc;AAAA,EACd,eAAe;AAAA,EACf,QAAQ;AAAA,EACR,OAAO;AAAA,EACP,SAAS;AAAA,EACT,cAAc;AAAA,EACd,eAAe;AAAA,EACf,WAAW;AAAA,EACX,aAAa;AAAA,EACb,eAAe;AAAA,EACf,cAAc;AAAA,EACd,mBAAmB;AAAA,EACnB,WAAW;AAAA,EACX,aAAa;AAAA,EACb,eAAe;AAAA,EACf,cAAc;AAAA,EACd,mBAAmB;AAAA,EACnB,QAAQ;AAAA,EACR,UAAU;AAAA,EACV,YAAY;AACd;AAQA,MAAM,cAAkC;AAAA,EACtC,aAAa;AAAA,EACb,YAAY,CAAC;AAAA,EACb,YAAY,CAAC;AAAA,EACb,aAAa;AAAA,EACb,aAAa;AAAA,EACb,aAAa;AAAA,EACb,aAAa;AAAA,EACb,aAAa;AAAA,EACb,aAAa;AAAA,EACb,aAAa;AACf;AAQA,MAAM,eAAmC;AAAA,EACvC;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF;AAQA,MAAM,iBAAqC;AAAA,EACzC;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF;AAEA,MAAM,UAA8B;AAAA,EAClC;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF;AAEA,MAAM,UAA8B;AAAA,EAClC;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF;AAEA,MAAM,QAA4B;AAAA,EAChC;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF;AAEA,MAAM,OAA2B;AAAA,EAC/B;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF;AAOO,MAAM,aAAa;AAAA,EACxB,YACE;AAAA,EACF,mBAAmB;AACrB;AAOA,MAAM,yBAAuF;AAAA,EAC3F,SAAS;AAAA,IACP,IAAI;AAAA,IACJ,QAAQ;AAAA,IACR,MAAM;AAAA,EAAA;AAAA,EAER,OAAO;AAAA,IACL,IAAI;AAAA,IACJ,QAAQ;AAAA,IACR,MAAM;AAAA,EAAA;AAAA,EAER,SAAS;AAAA,IACP,IAAI;AAAA,IACJ,QAAQ;AAAA,IACR,MAAM;AAAA,EAAA;AAAA,EAER,MAAM;AAAA,IACJ,IAAI;AAAA,IACJ,QAAQ;AAAA,IACR,MAAM;AAAA,EAAA;AAEV;AAEO,MAAM,QAAQA,YAAAA,YAAY;AAAA,EAC/B,cAAc;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAMd,cAAc;AAAA,EACd,QAAQ;AAAA,IACN;AAAA,IACA,MAAM;AAAA,IACN,MAAM;AAAA,IACN,UAAU;AAAA,IACV;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EAAA;AAAA,EAGF,YAAY,WAAW;AAAA,EACvB,UAAU;AAAA,IACR,YAAY,WAAW;AAAA,IACvB,YAAY;AAAA,EAAA;AAAA,EAGd,QAAQ;AAAA,EACR,eAAe;AAAA,EAAA,SACfC,QAAAA;AAAAA,EACA,WAAW;AAAA,IACT,IAAIC,UAAAA,UAAU;AAAA,IACd,IAAIA,UAAAA,UAAU;AAAA,IACd,IAAIA,UAAAA,UAAU;AAAA,IACd,IAAIA,UAAAA,UAAU;AAAA,IACd,IAAIA,UAAAA,UAAU;AAAA,EAAA;AAAA,EAGhB,aAAa;AAAA,IACX,IAAI;AAAA,IACJ,IAAI;AAAA,IACJ,IAAI;AAAA,IACJ,IAAI;AAAA,IACJ,IAAI;AAAA,EAAA;AAAA,EAGN,YAAY;AAAA,IACV,QAAQ;AAAA,MACN,cAAc,EAAE,MAAM,KAAA;AAAA,MACtB,QAAQ;AAAA,QACN,MAAM;AAAA,UACJ,YAAY;AAAA,UACZ,cAAc;AAAA,UACd,eAAe;AAAA,QAAA;AAAA,MACjB;AAAA,IACF;AAAA,IAEF,OAAO;AAAA,MACL,YAAY,EAAE,OAAO,iBAAA;AAAA,IAAiB;AAAA,IAExC,WAAW;AAAA,MACT,cAAc,EAAE,MAAM,KAAA;AAAA,IAAK;AAAA,IAE7B,QAAQ;AAAA,MACN,cAAc;AAAA,QACZ,eAAe,EAAE,QAAQC,OAAAA,mCAAA;AAAA,MAAmC;AAAA,IAC9D;AAAA,IAEF,aAAa;AAAA,MACX,cAAc;AAAA,QACZ,eAAe,EAAE,QAAQA,OAAAA,mCAAA;AAAA,MAAmC;AAAA,IAC9D;AAAA,IAEF,MAAM;AAAA,MACJ,cAAc;AAAA,QACZ,SAAS;AAAA,QACT,QAAQ;AAAA,QACR,YAAY;AAAA,MAAA;AAAA,MAEd,QAAQ;AAAA,QACN,MAAM;AAAA,UACJ,iBAAiB;AAAA,UACjB,aAAa,wCAAwC,QAAQ,CAAC,CAAC;AAAA,QAAA;AAAA,MACjE;AAAA,IACF;AAAA,IAEF,OAAO;AAAA,MACL,QAAQ;AAAA,QACN,MAAM;AAAA,UACJ,iBAAiB;AAAA,UACjB,iBAAiB;AAAA,UACjB,aAAa,wCAAwC,QAAQ,CAAC,CAAC;AAAA,QAAA;AAAA,MACjE;AAAA,IACF;AAAA,IAEF,OAAO;AAAA,MACL,QAAQ;AAAA,QACN,OAAO;AAAA,UACL,UAAU;AAAA,UACV,YAAY;AAAA,UACZ,eAAe;AAAA,UACf,eAAe;AAAA,QAAA;AAAA,MACjB;AAAA,IACF;AAAA,IAEF,OAAO;AAAA,MACL,QAAQ;AAAA,QACN,OAAO;AAAA,UACL,UAAUD,UAAAA,UAAU;AAAA,UACpB,YAAY;AAAA,UACZ,YAAY;AAAA,QAAA;AAAA,MACd;AAAA,IACF;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAUF,cAAc;AAAA,MACZ,QAAQ,CAAC,QAAsB,WAA+B;AAC5D,cAAM,OAAO,uBAAuB,OAAO,SAAS,EAAE;AACtD,cAAM,cAAc;AAAA,UAClB,oBAAoBD,QAAAA,QAAQ;AAAA,UAC5B,kBAAkBA,QAAAA,QAAQ;AAAA,QAAA;AAG5B,YAAI,CAAC,MAAM;AACT,iBAAO;AAAA,YACL,MAAM;AAAA,cACJ,WAAW;AAAA,cACX,GAAG;AAAA,YAAA;AAAA,YAEL,MAAM;AAAA,cACJ,iBAAiB;AAAA,cACjB,OAAO;AAAA,YAAA;AAAA,UACT;AAAA,QAEJ;AAEA,eAAO;AAAA,UACL,MAAM;AAAA,YACJ,WAAW;AAAA,YACX,iBAAiB,KAAK;AAAA,YACtB,QAAQ,aAAa,KAAK,MAAM;AAAA,YAChC,GAAG;AAAA,UAAA;AAAA,UAEL,OAAO;AAAA,YACL,OAAO,KAAK;AAAA,UAAA;AAAA,UAEd,aAAa;AAAA,YACX,OAAO,KAAK;AAAA,UAAA;AAAA,UAEd,MAAM;AAAA,YACJ,iBAAiB;AAAA,YACjB,OAAO,KAAK;AAAA,UAAA;AAAA,UAEd,aAAa;AAAA,YACX,OAAO,KAAK;AAAA,UAAA;AAAA,QACd;AAAA,MAEJ;AAAA,IAAA;AAAA,EACF;AAEJ,CAAC;AAOM,MAAM,uBAA6C,OAAO;AAAA,EAC/D,WAAW;AAAA,IACT,4BAA4B,WAAW;AAAA,IACvC,wBAAwB,WAAW;AAAA,IACnC,qCAAqC,OAAO,CAAC;AAAA,EAAA;AAAA,EAE/C,OAAO;AAAA,IACL,qCAAqC,OAAO,CAAC;AAAA,IAC7C,8BAA8B,aAAa;AAAA,IAC3C,+BAA+B,aAAa;AAAA,IAC5C,yCAAyC,QAAQ,CAAC;AAAA,IAClD,6BAA6B,QAAQ,CAAC;AAAA,IACtC,gCAAgC,OAAO,CAAC;AAAA,IACxC,oCAAoC,OAAO,CAAC;AAAA,IAC5C,0CAA0C,OAAO,CAAC;AAAA,IAClD,gCAAgC,QAAQ,CAAC;AAAA,IACzC,8BAA8B,QAAQ,CAAC;AAAA,IACvC,iCAAiC,QAAQ,CAAC;AAAA,IAC1C,mCAAmC,QAAQ,CAAC;AAAA,IAC5C,kCAAkC,QAAQ,CAAC;AAAA,IAC3C,iCAAiC,aAAa;AAAA,IAC9C,kCAAkC,QAAQ,CAAC;AAAA,IAC3C,iCAAiC,QAAQ,CAAC;AAAA,IAC1C,mCAAmC,QAAQ,CAAC;AAAA,IAC5C,kCAAkC,QAAQ,CAAC;AAAA,IAC3C,iCAAiC,aAAa;AAAA,IAC9C,kCAAkC,QAAQ,CAAC;AAAA,IAC3C,mCAAmC,QAAQ,CAAC;AAAA,IAC5C,iCAAiC,OAAO,CAAC;AAAA,IACzC,oCAAoC,QAAQ,CAAC;AAAA,IAC7C,kCAAkC,OAAO,CAAC;AAAA,IAC1C,wCAAwC,OAAO,CAAC;AAAA,IAChD,yCAAyC,OAAO,CAAC;AAAA,IACjD,+BAA+B,aAAa,CAAC;AAAA,IAC7C,iCAAiC,eAAe,CAAC;AAAA,IACjD,8BAA8B,QAAQ,CAAC;AAAA,IACvC,qCAAqC,OAAO,CAAC;AAAA,IAC7C,6CAA6C,OAAO,CAAC;AAAA,IACrD,uCAAuC,aAAa,QAAQ,CAAC,CAAC;AAAA;AAAA,IAE9D,+BAA+B,aAAa,QAAQ,CAAC,CAAC;AAAA,IACtD,mCAAmC,QAAQ,CAAC;AAAA,IAC5C,+BAA+B,QAAQ,CAAC;AAAA,IACxC,iCAAiC,QAAQ,CAAC;AAAA,IAC1C,mCAAmC,QAAQ,CAAC;AAAA,IAC5C,kCAAkC,QAAQ,CAAC;AAAA,IAC3C,wCAAwC,QAAQ,CAAC;AAAA,IACjD,+BAA+B,QAAQ,CAAC;AAAA,IACxC,iCAAiC,QAAQ,CAAC;AAAA,IAC1C,mCAAmC,QAAQ,CAAC;AAAA,IAC5C,kCAAkC,QAAQ,CAAC;AAAA,IAC3C,wCAAwC,QAAQ,CAAC;AAAA,IACjD,6BAA6B,MAAM,CAAC;AAAA,IACpC,oCAAoC,MAAM,CAAC;AAAA,IAC3C,+BAA+B,MAAM,CAAC;AAAA,IACtC,iCAAiC,MAAM,CAAC;AAAA,IACxC,gCAAgC,MAAM,CAAC;AAAA,IACvC,sCAAsC,MAAM,CAAC;AAAA,IAC7C,sCAAsC,MAAM,CAAC;AAAA,IAC7C,4BAA4B,KAAK,CAAC;AAAA,IAClC,8BAA8B,KAAK,CAAC;AAAA,IACpC,gCAAgC,KAAK,CAAC;AAAA,IACtC,+BAA+B,KAAK,CAAC;AAAA,IACrC,qCAAqC,KAAK,CAAC;AAAA,EAAA;AAAA,EAE7C,MAAM;AAAA,IACJ,qCAAqC,aAAa;AAAA,IAClD,8BAA8B,aAAa;AAAA,IAC3C,+BAA+B,aAAa;AAAA,IAC5C,yCAAyC,aAAa;AAAA,IACtD,6BAA6B,aAAa;AAAA,IAC1C,gCAAgC,aAAa;AAAA,IAC7C,oCAAoC,aAAa;AAAA,IACjD,0CAA0C,aAAa;AAAA,IACvD,gCAAgC,aAAa;AAAA,IAC7C,8BAA8B,aAAa;AAAA,IAC3C,iCAAiC,aAAa;AAAA,IAC9C,mCAAmC,aAAa;AAAA,IAChD,kCAAkC,aAAa;AAAA,IAC/C,iCAAiC,QAAQ,CAAC;AAAA,IAC1C,kCAAkC,aAAa;AAAA,IAC/C,iCAAiC,aAAa;AAAA,IAC9C,mCAAmC,aAAa;AAAA,IAChD,kCAAkC,aAAa;AAAA,IAC/C,iCAAiC,aAAa;AAAA,IAC9C,kCAAkC,aAAa;AAAA,IAC/C,mCAAmC,aAAa;AAAA,IAChD,iCAAiC,aAAa;AAAA,IAC9C,oCAAoC,aAAa;AAAA,IACjD,kCAAkC,aAAa;AAAA,IAC/C,wCAAwC,aAAa;AAAA,IACrD,yCAAyC,aAAa;AAAA,IACtD,+BAA+B,aAAa,CAAC;AAAA,IAC7C,iCAAiC,eAAe,CAAC;AAAA,IACjD,8BAA8B,aAAa;AAAA,IAC3C,qCAAqC,aAAa;AAAA;AAAA;AAAA,IAGlD,6CAA6C,OAAO,CAAC;AAAA,IACrD,uCAAuC;AAAA;AAAA,IAEvC,+BAA+B;AAAA,IAC/B,mCAAmC,aAAa;AAAA,IAChD,+BAA+B,aAAa;AAAA,IAC5C,iCAAiC,aAAa;AAAA,IAC9C,mCAAmC,aAAa;AAAA,IAChD,kCAAkC,aAAa;AAAA,IAC/C,wCAAwC,aAAa;AAAA,IACrD,+BAA+B,aAAa;AAAA,IAC5C,iCAAiC,aAAa;AAAA,IAC9C,mCAAmC,aAAa;AAAA,IAChD,kCAAkC,aAAa;AAAA,IAC/C,wCAAwC,aAAa;AAAA,IACrD,6BAA6B,MAAM,CAAC;AAAA,IACpC,oCAAoC,MAAM,CAAC;AAAA,IAC3C,+BAA+B,MAAM,CAAC;AAAA,IACtC,iCAAiC,MAAM,CAAC;AAAA,IACxC,gCAAgC,MAAM,CAAC;AAAA,IACvC,sCAAsC,MAAM,CAAC;AAAA,IAC7C,sCAAsC,MAAM,CAAC;AAAA,IAC7C,4BAA4B,aAAa;AAAA,IACzC,8BAA8B,aAAa;AAAA,IAC3C,gCAAgC,aAAa;AAAA,IAC7C,+BAA+B,aAAa;AAAA,IAC5C,qCAAqC,aAAa;AAAA;AAAA;AAAA;AAAA,IAKlD,wBAAwB,aAAa;AAAA,IACrC,wBAAwB,aAAa;AAAA,IACrC,0BAA0B,aAAa;AAAA,IACvC,0BAA0B,aAAa;AAAA,IACvC,+BAA+B;AAAA,IAC/B,2BAA2B,aAAa;AAAA,IACxC,iCAAiC,aAAa;AAAA,IAC9C,iCAAiC,aAAa;AAAA,IAC9C,kCAAkC,aAAa;AAAA,IAC/C,4BAA4B,aAAa;AAAA,IACzC,kCAAkC,aAAa;AAAA,IAC/C,mCAAmC,aAAa;AAAA,IAChD,kCAAkC,aAAa;AAAA,IAC/C,wCAAwC,aAAa;AAAA,IACrD,iCAAiC,aAAa;AAAA,IAC9C,uCAAuC,aAAa;AAAA,IACpD,uCAAuC,aAAa;AAAA,IACpD,6BAA6B,aAAa;AAAA,IAC1C,6BAA6B,aAAa;AAAA,IAC1C,6BAA6B,aAAa;AAAA,IAC1C,6BAA6B,aAAa;AAAA,IAC1C,6BAA6B,aAAa;AAAA,IAC1C,6BAA6B,aAAa;AAAA,IAC1C,4BAA4B,aAAa;AAAA,IACzC,4BAA4B,aAAa;AAAA,IACzC,4BAA4B,aAAa;AAAA,IACzC,4BAA4B,aAAa;AAAA,IACzC,4BAA4B,aAAa;AAAA,IACzC,4BAA4B,aAAa;AAAA,IACzC,+BAA+B,aAAa;AAAA,IAC5C,iCAAiC,aAAa;AAAA,IAC9C,uCAAuC,aAAa;AAAA,IACpD,gCAAgC,aAAa;AAAA,IAC7C,sCAAsC,aAAa;AAAA,IACnD,sCAAsC,aAAa;AAAA,IACnD,kCAAkC,aAAa;AAAA,IAC/C,wCAAwC,aAAa;AAAA,IACrD,8BAA8B,aAAa;AAAA,IAC3C,oCAAoC,aAAa;AAAA,IACjD,+BAA+B,aAAa;AAAA,IAC5C,qCAAqC,aAAa;AAAA,IAClD,0BAA0B,aAAa;AAAA,IACvC,0BAA0B,aAAa;AAAA,IACvC,0BAA0B,aAAa;AAAA,IACvC,0BAA0B,aAAa;AAAA,IACvC,0BAA0B,aAAa;AAAA,IACvC,0BAA0B,aAAa;AAAA,IACvC,iCAAiC,aAAa;AAAA,IAC9C,uCAAuC,aAAa;AAAA,IACpD,kCAAkC,aAAa;AAAA,IAC/C,wCAAwC,aAAa;AAAA,IACrD,iCAAiC,aAAa;AAAA,IAC9C,uCAAuC,aAAa;AAAA,IACpD,kCAAkC,aAAa;AAAA,IAC/C,wCAAwC,aAAa;AAAA,IACrD,8BAA8B,aAAa;AAAA,IAC3C,oCAAoC,aAAa;AAAA,IACjD,+BAA+B,aAAa;AAAA,IAC5C,qCAAqC,aAAa;AAAA,IAClD,2BAA2B,MAAM,CAAC;AAAA,IAClC,2BAA2B,MAAM,CAAC;AAAA,IAClC,2BAA2B,MAAM,CAAC;AAAA,IAClC,2BAA2B,MAAM,CAAC;AAAA,IAClC,2BAA2B,MAAM,CAAC;AAAA,IAClC,2BAA2B,MAAM,CAAC;AAAA,IAClC,2BAA2B,MAAM,CAAC;AAAA,IAClC,8BAA8B,MAAM,CAAC;AAAA,IACrC,gCAAgC,MAAM,CAAC;AAAA,IACvC,sCAAsC,MAAM,CAAC;AAAA,IAC7C,+BAA+B,MAAM,CAAC;AAAA,IACtC,qCAAqC,MAAM,CAAC;AAAA,IAC5C,qCAAqC,MAAM,CAAC;AAAA,IAC5C,iCAAiC,MAAM,CAAC;AAAA,IACxC,uCAAuC,MAAM,CAAC;AAAA,EAAA;AAElD;AAYA,MAAM,cAAc,CAAC,MAAc,aAAqB,kBAAkB,IAAI,KAAK,QAAQ;AAEpF,MAAM,eAAe;AAAA;AAAA,EAE1B,eAAe,YAAY,mBAAmB,SAAS;AAAA;AAAA,EAEvD,gBAAgB,YAAY,oBAAoB,SAAS;AAAA;AAAA,EAEzD,yBAAyB,YAAY,8BAA8B,QAAQ,CAAC,CAAC;AAAA;AAAA,EAE7E,cAAc,YAAY,kBAAkB,QAAQ,CAAC,CAAC;AAAA;AAAA,EAEtD,iBAAiB,YAAY,qBAAqB,OAAO,CAAC,CAAC;AAAA;AAAA,EAE3D,oBAAoB,YAAY,yBAAyB,OAAO,CAAC,CAAC;AAAA;AAAA,EAElE,yBAAyB,YAAY,+BAA+B,OAAO,CAAC,CAAC;AAAA;AAAA,EAE7E,iBAAiB,YAAY,qBAAqB,QAAQ,CAAC,CAAC;AAAA;AAAA,EAE5D,kBAAkB,sCAAsC,QAAQ,CAAC,CAAC;AAAA;AAAA,EAElE,oBAAoB,wCAAwC,QAAQ,CAAC,CAAC;AAAA;AAAA,EAEtE,mBAAmB,uCAAuC,QAAQ,CAAC,CAAC;AAAA;AAAA,EAEpE,kBAAkB,YAAY,sBAAsB,SAAS;AAAA;AAAA,EAE7D,mBAAmB,YAAY,uBAAuB,QAAQ,CAAC,CAAC;AAAA;AAAA,EAEhE,kBAAkB,YAAY,sBAAsB,QAAQ,CAAC,CAAC;AAAA;AAAA,EAE9D,oBAAoB,YAAY,wBAAwB,QAAQ,CAAC,CAAC;AAAA;AAAA,EAElE,mBAAmB,YAAY,uBAAuB,QAAQ,CAAC,CAAC;AAAA;AAAA,EAEhE,kBAAkB,YAAY,sBAAsB,SAAS;AAAA;AAAA,EAE7D,mBAAmB,YAAY,uBAAuB,QAAQ,CAAC,CAAC;AAAA;AAAA,EAEhE,oBAAoB,YAAY,wBAAwB,QAAQ,CAAC,CAAC;AAAA;AAAA,EAElE,kBAAkB,YAAY,sBAAsB,OAAO,CAAC,CAAC;AAAA;AAAA,EAE7D,qBAAqB,YAAY,yBAAyB,QAAQ,CAAC,CAAC;AAAA;AAAA,EAEpE,mBAAmB,YAAY,uBAAuB,OAAO,CAAC,CAAC;AAAA;AAAA,EAE/D,wBAAwB,YAAY,6BAA6B,OAAO,CAAC,CAAC;AAAA;AAAA,EAE1E,yBAAyB,YAAY,8BAA8B,OAAO,CAAC,CAAC;AAAA;AAAA,EAE5E,gBAAgB,YAAY,oBAAoB,aAAa,CAAC,CAAC;AAAA;AAAA,EAE/D,kBAAkB,YAAY,sBAAsB,eAAe,CAAC,CAAC;AAAA;AAAA,EAErE,sBAAsB,0CAA0C,OAAO,CAAC,CAAC;AAAA;AAAA,EAEzE,4BAA4B,kDAAkD,OAAO,CAAC,CAAC;AAAA;AAAA,EAEvF,gBAAgB,YAAY,oBAAoB,QAAQ,CAAC,CAAC;AAAA,EAC1D,kBAAkB,YAAY,sBAAsB,QAAQ,CAAC,CAAC;AAAA,EAC9D,oBAAoB,YAAY,wBAAwB,QAAQ,CAAC,CAAC;AAAA,EAClE,mBAAmB,YAAY,uBAAuB,QAAQ,CAAC,CAAC;AAAA,EAChE,wBAAwB,YAAY,6BAA6B,QAAQ,CAAC,CAAC;AAAA,EAC3E,gBAAgB,YAAY,oBAAoB,QAAQ,CAAC,CAAC;AAAA,EAC1D,kBAAkB,YAAY,sBAAsB,QAAQ,CAAC,CAAC;AAAA,EAC9D,oBAAoB,YAAY,wBAAwB,QAAQ,CAAC,CAAC;AAAA,EAClE,mBAAmB,YAAY,uBAAuB,QAAQ,CAAC,CAAC;AAAA,EAChE,wBAAwB,YAAY,6BAA6B,QAAQ,CAAC,CAAC;AAAA,EAC3E,cAAc,YAAY,kBAAkB,MAAM,CAAC,CAAC;AAAA,EACpD,oBAAoB,YAAY,yBAAyB,MAAM,CAAC,CAAC;AAAA,EACjE,gBAAgB,YAAY,oBAAoB,MAAM,CAAC,CAAC;AAAA,EACxD,kBAAkB,YAAY,sBAAsB,MAAM,CAAC,CAAC;AAAA,EAC5D,iBAAiB,YAAY,qBAAqB,MAAM,CAAC,CAAC;AAAA,EAC1D,sBAAsB,YAAY,2BAA2B,MAAM,CAAC,CAAC;AAAA,EACrE,sBAAsB,YAAY,2BAA2B,MAAM,CAAC,CAAC;AAAA,EACrE,aAAa,YAAY,iBAAiB,KAAK,CAAC,CAAC;AAAA,EACjD,eAAe,YAAY,mBAAmB,KAAK,CAAC,CAAC;AAAA,EACrD,iBAAiB,YAAY,qBAAqB,KAAK,CAAC,CAAC;AAAA,EACzD,gBAAgB,YAAY,oBAAoB,KAAK,CAAC,CAAC;AAAA,EACvD,qBAAqB,YAAY,0BAA0B,KAAK,CAAC,CAAC;AAAA;AAAA,EAElE,gBAAgB,YAAY,mBAAmB,QAAQ,CAAC,CAAC;AAAA;AAAA,EAEzD,gBAAgB,YAAY,mBAAmB,QAAQ,CAAC,CAAC;AAAA;AAAA,EAEzD,cAAc,iCAAiC,WAAW,iBAAiB;AAAA;AAAA,EAE3E,UAAU,6BAA6B,WAAW,UAAU;AAC9D;AAiBO,SAAS,mCACd,cAAyC,SACzC;AACA,SAAO;AAAA,IACL;AAAA,IACA,sBAAsB;AAAA,IACtB,oBAAoB;AAAA,EAAA;AAExB;AAGO,MAAM,cAAc;AAAA,EACzB,MAAM;AAAA,EACN,QAAQ;AAAA,EACR,QAAQ;AAAA,EACR,UAAU;AACZ;AAEO,MAAM,eAAe;AAAA,EAC1B,OAAO;AAAA,EACP,OAAO;AACT;AAMO,MAAM,cAAc;AAAA,EACzB,MAAM;AACR;AAGO,MAAM,eAAe;AAAA,EAC1B,GAAG;AAAA,EACH,GAAG;AAAA,EACH,GAAG;AAAA,EACH,GAAG;AAAA,EACH,GAAG;AAAA,EACH,GAAG;AAAA,EACH,GAAG;AAAA,EACH,GAAG;AAAA,EACH,GAAG;AAAA,EACH,GAAG;AACL;AAGO,MAAM,gBAAgB;AAAA,EAC3B,IAAI;AAAA,EACJ,KAAK;AAAA,EACL,KAAK;AAAA,EACL,KAAK;AAAA,EACL,KAAK;AAAA,EACL,KAAK;AAAA,EACL,KAAK;AAAA,EACL,KAAK;AAAA,EACL,KAAK;AAAA,EACL,KAAK;AACP;AAGO,MAAM,oBAAoB;AAAA,EAC/B,IAAI;AAAA,EACJ,KAAK;AAAA,EACL,KAAK;AAAA,EACL,KAAK;AAAA,EACL,KAAK;AAAA,EACL,KAAK;AAAA,EACL,KAAK;AAAA,EACL,KAAK;AAAA,EACL,KAAK;AAAA,EACL,KAAK;AACP;AAGO,MAAM,iBAAiB;AAAA,EAC5B,SAAS;AAAA,EACT,SAAS;AAAA,EACT,OAAO;AAAA,EACP,MAAM;AACR;;;;;;;;;;;;;;;;;;"}
@@ -488,5 +488,5 @@ export type { FairmintResponsiveTypography } from './responsiveTypography';
488
488
  export { responsiveTypography } from './responsiveTypography';
489
489
  export type { FairmintSpacing } from './spacing';
490
490
  export { spacing } from './spacing';
491
- export { overlayZIndexAboveLegacyShell } from './zIndex';
491
+ export { overlayZIndexAboveFairmintOverlays, overlayZIndexAboveLegacyShell, } from './zIndex';
492
492
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/theme/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,oBAAoB,EAEzB,KAAK,kBAAkB,EAExB,MAAM,eAAe,CAAC;AAIvB;;;GAGG;AACH,eAAO,MAAM,KAAK;;;;;;CAMR,CAAC;AA6MX;;;;GAIG;AACH,eAAO,MAAM,UAAU;;;CAIb,CAAC;AA8BX,eAAO,MAAM,KAAK;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA6JhB,CAAC;AAEH;;;;GAIG;AACH,eAAO,MAAM,oBAAoB,EAAE,oBA4MjC,CAAC;AAcH,eAAO,MAAM,YAAY;IACvB,2CAA2C;;IAE3C,8BAA8B;;IAE9B,sEAAsE;;IAEtE,qBAAqB;;IAErB,wBAAwB;;IAExB,4BAA4B;;IAE5B,oCAAoC;;IAEpC,wBAAwB;;IAExB,2EAA2E;;IAE3E,qFAAqF;;IAErF,4EAA4E;;IAE5E,+BAA+B;;IAE/B,qBAAqB;;IAErB,qCAAqC;;IAErC,uCAAuC;;IAEvC,sCAAsC;;IAEtC,6CAA6C;;IAE7C,sCAAsC;;IAEtC,sBAAsB;;IAEtB,+BAA+B;;IAE/B,uBAAuB;;IAEvB,0BAA0B;;IAE1B,kCAAkC;;IAElC,kCAAkC;;IAElC,kCAAkC;;IAElC,oCAAoC;;IAEpC,0EAA0E;;IAE1E,qHAAqH;;IAErH,6BAA6B;;;;;;;;;;;;;;;;;;;;;;;IAuB7B,kCAAkC;;IAElC,+EAA+E;;IAE/E,+CAA+C;;IAE/C,gCAAgC;;CAExB,CAAC;AAEX;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,kCAAkC,CAChD,WAAW,GAAE,OAAO,GAAG,MAAM,GAAG,MAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAOjD;AAED,qDAAqD;AACrD,eAAO,MAAM,WAAW;;;;;CAKd,CAAC;AAEX,eAAO,MAAM,YAAY;;;CAGf,CAAC;AAEX;;;GAGG;AACH,eAAO,MAAM,WAAW;;CAEd,CAAC;AAEX,gGAAgG;AAChG,eAAO,MAAM,YAAY;;;;;;;;;;;CAWf,CAAC;AAEX,iGAAiG;AACjG,eAAO,MAAM,aAAa;;;;;;;;;;;CAWhB,CAAC;AAEX,sEAAsE;AACtE,eAAO,MAAM,iBAAiB;;;;;;;;;;;CAWpB,CAAC;AAEX,gDAAgD;AAChD,eAAO,MAAM,cAAc;;;;;CAKjB,CAAC;AAEX,YAAY,EAAE,kBAAkB,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAClE,OAAO,EAAE,cAAc,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAClD,YAAY,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AACpD,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,yBAAyB,EAAE,MAAM,QAAQ,CAAC;AACnD,YAAY,EAAE,4BAA4B,EAAE,MAAM,wBAAwB,CAAC;AAC3E,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAC9D,YAAY,EAAE,eAAe,EAAE,MAAM,WAAW,CAAC;AACjD,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,6BAA6B,EAAE,MAAM,UAAU,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/theme/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,oBAAoB,EAEzB,KAAK,kBAAkB,EAExB,MAAM,eAAe,CAAC;AAKvB;;;GAGG;AACH,eAAO,MAAM,KAAK;;;;;;CAMR,CAAC;AA6MX;;;;GAIG;AACH,eAAO,MAAM,UAAU;;;CAIb,CAAC;AA8BX,eAAO,MAAM,KAAK;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAuKhB,CAAC;AAEH;;;;GAIG;AACH,eAAO,MAAM,oBAAoB,EAAE,oBA4MjC,CAAC;AAcH,eAAO,MAAM,YAAY;IACvB,2CAA2C;;IAE3C,8BAA8B;;IAE9B,sEAAsE;;IAEtE,qBAAqB;;IAErB,wBAAwB;;IAExB,4BAA4B;;IAE5B,oCAAoC;;IAEpC,wBAAwB;;IAExB,2EAA2E;;IAE3E,qFAAqF;;IAErF,4EAA4E;;IAE5E,+BAA+B;;IAE/B,qBAAqB;;IAErB,qCAAqC;;IAErC,uCAAuC;;IAEvC,sCAAsC;;IAEtC,6CAA6C;;IAE7C,sCAAsC;;IAEtC,sBAAsB;;IAEtB,+BAA+B;;IAE/B,uBAAuB;;IAEvB,0BAA0B;;IAE1B,kCAAkC;;IAElC,kCAAkC;;IAElC,kCAAkC;;IAElC,oCAAoC;;IAEpC,0EAA0E;;IAE1E,qHAAqH;;IAErH,6BAA6B;;;;;;;;;;;;;;;;;;;;;;;IAuB7B,kCAAkC;;IAElC,+EAA+E;;IAE/E,+CAA+C;;IAE/C,gCAAgC;;CAExB,CAAC;AAEX;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,kCAAkC,CAChD,WAAW,GAAE,OAAO,GAAG,MAAM,GAAG,MAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAOjD;AAED,qDAAqD;AACrD,eAAO,MAAM,WAAW;;;;;CAKd,CAAC;AAEX,eAAO,MAAM,YAAY;;;CAGf,CAAC;AAEX;;;GAGG;AACH,eAAO,MAAM,WAAW;;CAEd,CAAC;AAEX,gGAAgG;AAChG,eAAO,MAAM,YAAY;;;;;;;;;;;CAWf,CAAC;AAEX,iGAAiG;AACjG,eAAO,MAAM,aAAa;;;;;;;;;;;CAWhB,CAAC;AAEX,sEAAsE;AACtE,eAAO,MAAM,iBAAiB;;;;;;;;;;;CAWpB,CAAC;AAEX,gDAAgD;AAChD,eAAO,MAAM,cAAc;;;;;CAKjB,CAAC;AAEX,YAAY,EAAE,kBAAkB,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAClE,OAAO,EAAE,cAAc,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAClD,YAAY,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AACpD,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,yBAAyB,EAAE,MAAM,QAAQ,CAAC;AACnD,YAAY,EAAE,4BAA4B,EAAE,MAAM,wBAAwB,CAAC;AAC3E,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAC9D,YAAY,EAAE,eAAe,EAAE,MAAM,WAAW,CAAC;AACjD,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EACL,kCAAkC,EAClC,6BAA6B,GAC9B,MAAM,UAAU,CAAC"}
@@ -1,5 +1,7 @@
1
1
  import { fontSizes } from "./fontSizes.js";
2
2
  import { spacing } from "./spacing.js";
3
+ import { overlayZIndexAboveFairmintOverlays } from "./zIndex.js";
4
+ import { overlayZIndexAboveLegacyShell } from "./zIndex.js";
3
5
  import { createTheme } from "../node_modules/@mantine/core/esm/core/MantineProvider/create-theme/create-theme.js";
4
6
  const radii = {
5
7
  xs: "0.25rem",
@@ -249,6 +251,16 @@ const theme = createTheme({
249
251
  TextInput: {
250
252
  defaultProps: { size: "md" }
251
253
  },
254
+ Select: {
255
+ defaultProps: {
256
+ comboboxProps: { zIndex: overlayZIndexAboveFairmintOverlays }
257
+ }
258
+ },
259
+ MultiSelect: {
260
+ defaultProps: {
261
+ comboboxProps: { zIndex: overlayZIndexAboveFairmintOverlays }
262
+ }
263
+ },
252
264
  Card: {
253
265
  defaultProps: {
254
266
  padding: "lg",
@@ -708,6 +720,8 @@ export {
708
720
  fontSizes,
709
721
  indigoColors,
710
722
  neutralColors,
723
+ overlayZIndexAboveFairmintOverlays,
724
+ overlayZIndexAboveLegacyShell,
711
725
  radii,
712
726
  semanticColors,
713
727
  shadowColor,
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../../src/theme/index.ts"],"sourcesContent":["import {\n type CSSVariablesResolver,\n createTheme,\n type MantineColorsTuple,\n type MantineTheme,\n} from \"@mantine/core\";\nimport { fontSizes } from \"./fontSizes\";\nimport { spacing } from \"./spacing\";\n\n/**\n * Fairmint radius scale — single source of truth used by both the Mantine\n * theme config and the exported `radii` constant. Edit here; both stay in sync.\n */\nexport const radii = {\n xs: \"0.25rem\",\n sm: \"0.375rem\",\n md: \"0.5rem\",\n lg: \"0.75rem\",\n xl: \"1rem\",\n} as const;\n\n/**\n * Indigo palette — primary UI color.\n * Used for buttons, links, active navigation, focus rings.\n * Shade [5] (#6366F1) is the default primary.\n */\nconst indigo: MantineColorsTuple = [\n \"#EEF2FF\",\n \"#E0E7FF\",\n \"#C7D2FE\",\n \"#A5B4FC\",\n \"#818CF8\",\n \"#6366F1\",\n \"#4F46E5\",\n \"#4338CA\",\n \"#3730A3\",\n \"#253974\",\n];\n\n/**\n * Neutral scale — replaces Mantine's default gray.\n * Used for text, borders, backgrounds, disabled states.\n */\nconst neutral: MantineColorsTuple = [\n \"#F8F9FA\",\n \"#F3F4F6\",\n \"#E5E7EB\",\n \"#D2D6DB\",\n \"#9DA4AE\",\n \"#6C737F\",\n \"#4D5761\",\n \"#2F3746\",\n \"#1C2536\",\n \"#111927\",\n];\n\n/**\n * Dark-mode neutral ramp — the dark surface and text anchors used by Chip.\n * Keep these separate from the light neutral ramp so Light mode remains stable.\n */\nconst darkNeutral: MantineColorsTuple = [\n \"#FFFFFF\",\n \"#E7E9F0\",\n \"#B8C2D0\",\n \"#9DA4AE\",\n \"#8F99AB\",\n \"#6C737F\",\n \"#2F3746\",\n \"#1B1D21\",\n \"#17191D\",\n \"#111214\",\n];\n\n/**\n * Approved charcoal dark-mode roles from the onboarding source of truth.\n * Keep these semantic values explicit instead of deriving them from the\n * light neutral ramp so component behavior stays aligned with Figma.\n */\nconst charcoalDark = {\n canvas: \"#111214\",\n surface: \"#17191D\",\n chrome: \"#1B1D21\",\n control: \"#202329\",\n selected: \"#2F3746\",\n // Must read on canvas/chrome. Former #111927 (light-mode N900) made Avatar,\n // Button/ActionIcon `variant=\"light\"`, and brand-subtle plates disappear.\n // Matches light mode where brand-subtle and selected both resolve to indigo[0].\n brandSubtle: \"#2F3746\",\n /** One step above brandSubtle for light-variant / brand-subtle hover. */\n brandSubtleHover: \"#3A4456\",\n textPrimary: \"#FFFFFF\",\n textSecondary: \"#9DA4AE\",\n textTertiary: \"#8F99AB\",\n textDisabled: \"#6C737F\",\n iconSecondary: \"#B8C2D0\",\n border: \"#2F3746\",\n focus: \"#A5B4FC\",\n primary: \"#6366F1\",\n primaryHover: \"#818CF8\",\n primaryActive: \"#A5B4FC\",\n successBg: \"#163E38\",\n successText: \"#6FE3BE\",\n successBorder: \"#2F3746\",\n successSolid: \"#34D399\",\n successSolidHover: \"#6FE3BE\",\n warningBg: \"#402A12\",\n warningText: \"#FDB022\",\n warningBorder: \"#6E4515\",\n warningSolid: \"#DC6803\",\n warningSolidHover: \"#E5A34A\",\n infoBg: \"#172B45\",\n infoText: \"#22CCEE\",\n infoBorder: \"#23476B\",\n} as const;\n\n/**\n * Mantine still references its reserved `dark` ramp directly in several\n * component styles (for example Card uses dark[6] and Paper borders use\n * dark[4]). Map those fallback indices to Fairmint's charcoal roles so an\n * un-tokenized Mantine state cannot reintroduce the warm default gray palette.\n */\nconst mantineDark: MantineColorsTuple = [\n charcoalDark.textPrimary,\n darkNeutral[1],\n darkNeutral[2],\n charcoalDark.textSecondary,\n charcoalDark.border,\n charcoalDark.control,\n charcoalDark.surface,\n charcoalDark.canvas,\n charcoalDark.canvas,\n charcoalDark.canvas,\n];\n\n/**\n * Fairmint brand blue — accent color for gradients and brand elements.\n * Shade [5] (#0A4EFB) is the primary brand blue.\n *\n * This is the current production value documented in design/DESIGN.md.\n */\nconst fairmintBlue: MantineColorsTuple = [\n \"#e6f0ff\",\n \"#cce0ff\",\n \"#99c2ff\",\n \"#66a3ff\",\n \"#3385ff\",\n \"#0A4EFB\",\n \"#083ec9\",\n \"#062e97\",\n \"#041f64\",\n \"#020f32\",\n];\n\n/**\n * Fairmint brand purple — accent color for gradients and brand elements.\n * Shade [5] (#9E03FF) is the primary brand purple.\n *\n * This is the current production value documented in design/DESIGN.md.\n */\nconst fairmintPurple: MantineColorsTuple = [\n \"#f5e6ff\",\n \"#e6ccff\",\n \"#cc99ff\",\n \"#b366ff\",\n \"#9933ff\",\n \"#9E03FF\",\n \"#7e02cc\",\n \"#5f0299\",\n \"#3f0166\",\n \"#200133\",\n];\n\nconst success: MantineColorsTuple = [\n \"#F0FDF9\",\n \"#D1FAE5\",\n \"#A7F3D0\",\n \"#6EE7B7\",\n \"#34D399\",\n \"#10B981\",\n \"#059669\",\n \"#047857\",\n \"#065F46\",\n \"#134E48\",\n];\n\nconst warning: MantineColorsTuple = [\n \"#FFFAEB\",\n \"#FEF0C7\",\n \"#FEDF89\",\n \"#FEC84B\",\n \"#FDB022\",\n \"#F79009\",\n \"#DC6803\",\n \"#B54708\",\n \"#93370D\",\n \"#7A2E0E\",\n];\n\nconst error: MantineColorsTuple = [\n \"#FEF3F2\",\n \"#FEE4E2\",\n \"#FECDCA\",\n \"#FDA29B\",\n \"#F97066\",\n \"#F04438\",\n \"#D92D20\",\n \"#B42318\",\n \"#912018\",\n \"#7A271A\",\n];\n\nconst info: MantineColorsTuple = [\n \"#ECFDFF\",\n \"#CFF9FE\",\n \"#A5F0FC\",\n \"#67E3F9\",\n \"#22CCEE\",\n \"#06AED4\",\n \"#088AB2\",\n \"#0E7090\",\n \"#155B75\",\n \"#164C63\",\n];\n\n/**\n * Typography constants — single source of truth for font families.\n * Use these instead of var(--mantine-font-family-*) in component code.\n * Declared before createTheme so the theme itself references them.\n */\nexport const typography = {\n fontFamily:\n '\"Inter\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\"',\n headingFontFamily: '\"Plus Jakarta Sans\", sans-serif',\n} as const;\n\n/**\n * Semantic toast surfaces keyed by Mantine Notification `color`.\n * Uses Fairmint CSS variables so light/dark flip with the resolver\n * (`*-bg` light values are the /50 ramp shade / tuple[0]).\n */\nconst notificationToneStyles: Record<string, { bg: string; border: string; text: string }> = {\n success: {\n bg: \"var(--fairmint-color-success-bg)\",\n border: \"var(--fairmint-color-success-border)\",\n text: \"var(--fairmint-color-success-text)\",\n },\n error: {\n bg: \"var(--fairmint-color-error-bg)\",\n border: \"var(--fairmint-color-error-border)\",\n text: \"var(--fairmint-color-error-text)\",\n },\n warning: {\n bg: \"var(--fairmint-color-warning-bg)\",\n border: \"var(--fairmint-color-warning-border)\",\n text: \"var(--fairmint-color-warning-text)\",\n },\n info: {\n bg: \"var(--fairmint-color-info-bg)\",\n border: \"var(--fairmint-color-info-border)\",\n text: \"var(--fairmint-color-info-text)\",\n },\n};\n\nexport const theme = createTheme({\n primaryColor: \"indigo\",\n // Mantine defaults to a darker shade for dark-mode filled/light variants\n // (primaryShade: { light: 6, dark: 8 }), but our brand indigo (index 5,\n // #6366F1) is the same accent in both color schemes — pin a single shade\n // so unwrapped Mantine components (color=\"indigo\") don't drift into a\n // different, more saturated purple in dark mode.\n primaryShade: 5,\n colors: {\n indigo,\n gray: neutral,\n dark: mantineDark,\n darkGray: darkNeutral,\n fairmintBlue,\n fairmintPurple,\n success,\n warning,\n error,\n info,\n },\n\n fontFamily: typography.fontFamily,\n headings: {\n fontFamily: typography.headingFontFamily,\n fontWeight: \"700\",\n },\n\n radius: radii,\n defaultRadius: \"md\",\n spacing,\n fontSizes: {\n xs: fontSizes.xs,\n sm: fontSizes.sm,\n md: fontSizes.md,\n lg: fontSizes.lg,\n xl: fontSizes.xl,\n },\n\n breakpoints: {\n xs: \"30em\",\n sm: \"48em\",\n md: \"64em\",\n lg: \"74em\",\n xl: \"90em\",\n },\n\n components: {\n Button: {\n defaultProps: { size: \"md\" },\n styles: {\n root: {\n fontWeight: 600,\n borderRadius: \"0.75rem\",\n textTransform: \"none\" as const,\n },\n },\n },\n Input: {\n classNames: { input: \"fairmint-input\" },\n },\n TextInput: {\n defaultProps: { size: \"md\" },\n },\n Card: {\n defaultProps: {\n padding: \"lg\",\n radius: \"xl\",\n withBorder: true,\n },\n styles: {\n root: {\n backgroundColor: \"var(--fairmint-color-bg-surface, #ffffff)\",\n borderColor: `var(--fairmint-color-border-default, ${neutral[2]})`,\n },\n },\n },\n Paper: {\n styles: {\n root: {\n backgroundColor: \"var(--fairmint-color-bg-surface, #ffffff)\",\n backgroundImage: \"none\",\n borderColor: `var(--fairmint-color-border-default, ${neutral[2]})`,\n },\n },\n },\n Table: {\n styles: {\n thead: {\n fontSize: \"0.75rem\",\n fontWeight: 600,\n letterSpacing: \"0.5px\",\n textTransform: \"uppercase\" as const,\n },\n },\n },\n Modal: {\n styles: {\n title: {\n fontSize: fontSizes.lg,\n fontWeight: 700,\n lineHeight: 1.3,\n },\n },\n },\n // Toasts: Ramp-inspired restraint — single-layer subtle elevation (lighter\n // than Mantine shadow-xs) + 1px semantic border (override shadow-lg / filled\n // icon). Semantic variants use *-bg (light = ramp /50 / tuple[0]; dark =\n // approved charcoal semantic surfaces) with matching border/text/icon tokens.\n // Neutral/default (no color) stays on the standard surface.\n // Horizontal padding is symmetric spacing.md (16px): Mantine defaults to\n // 22px start (accent rail) vs spacing.xs end (~10px); Fairmint toasts use\n // outlined icons (rail hidden), so match left/right on the spacing scale.\n Notification: {\n styles: (_theme: MantineTheme, params: { color?: string }) => {\n const tone = notificationToneStyles[params.color ?? \"\"];\n const rootPadding = {\n paddingInlineStart: spacing.md,\n paddingInlineEnd: spacing.md,\n } as const;\n\n if (!tone) {\n return {\n root: {\n boxShadow: \"var(--fairmint-elevation-subtle)\",\n ...rootPadding,\n },\n icon: {\n backgroundColor: \"transparent\",\n color: \"var(--notification-color)\",\n },\n };\n }\n\n return {\n root: {\n boxShadow: \"var(--fairmint-elevation-subtle)\",\n backgroundColor: tone.bg,\n border: `1px solid ${tone.border}`,\n ...rootPadding,\n },\n title: {\n color: tone.text,\n },\n description: {\n color: tone.text,\n },\n icon: {\n backgroundColor: \"transparent\",\n color: tone.text,\n },\n closeButton: {\n color: tone.text,\n },\n };\n },\n },\n },\n});\n\n/**\n * Fairmint CSS variables resolver for MantineProvider.\n * Publishes --fairmint-* custom properties so components never reference\n * --mantine-* variables directly. All light/dark switching is centralised here.\n */\nexport const fairmintCssVariables: CSSVariablesResolver = () => ({\n variables: {\n \"--fairmint-font-headings\": typography.headingFontFamily,\n \"--fairmint-font-body\": typography.fontFamily,\n \"--fairmint-interactive-focus-ring\": indigo[5],\n },\n light: {\n \"--fairmint-interactive-focus-ring\": indigo[5],\n \"--fairmint-color-bg-canvas\": commonColors.white,\n \"--fairmint-color-bg-surface\": commonColors.white,\n \"--fairmint-color-bg-surface-secondary\": neutral[0],\n \"--fairmint-color-bg-hover\": neutral[0],\n \"--fairmint-color-bg-selected\": indigo[0],\n \"--fairmint-color-bg-brand-subtle\": indigo[0],\n \"--fairmint-color-bg-brand-subtle-hover\": indigo[1],\n \"--fairmint-color-bg-disabled\": neutral[2],\n \"--fairmint-watermark-color\": neutral[1],\n \"--fairmint-color-text-primary\": neutral[9],\n \"--fairmint-color-text-secondary\": neutral[5],\n \"--fairmint-color-text-tertiary\": neutral[4],\n \"--fairmint-color-text-inverse\": commonColors.white,\n \"--fairmint-color-text-disabled\": neutral[6],\n \"--fairmint-color-icon-primary\": neutral[9],\n \"--fairmint-color-icon-secondary\": neutral[5],\n \"--fairmint-color-icon-tertiary\": neutral[4],\n \"--fairmint-color-icon-inverse\": commonColors.white,\n \"--fairmint-color-icon-disabled\": neutral[6],\n \"--fairmint-color-border-default\": neutral[2],\n \"--fairmint-color-border-focus\": indigo[5],\n \"--fairmint-color-border-disabled\": neutral[3],\n \"--fairmint-color-brand-primary\": indigo[6],\n \"--fairmint-color-brand-primary-hover\": indigo[7],\n \"--fairmint-color-brand-primary-active\": indigo[7],\n \"--fairmint-color-brand-blue\": fairmintBlue[5],\n \"--fairmint-color-brand-purple\": fairmintPurple[5],\n \"--fairmint-color-watermark\": neutral[1],\n \"--fairmint-color-surface-selected\": indigo[0],\n \"--fairmint-color-icon-on-surface-selected\": indigo[6],\n \"--fairmint-interactive-hover-shadow\": `0 2px 6px ${neutral[9]}0F`,\n // Single soft layer — lighter than Mantine shadow-xs (no multi-layer stack).\n \"--fairmint-elevation-subtle\": `0 1px 3px ${neutral[9]}06`,\n \"--fairmint-interactive-hover-bg\": neutral[0],\n \"--fairmint-color-success-bg\": success[0],\n \"--fairmint-color-success-text\": success[7],\n \"--fairmint-color-success-border\": success[2],\n \"--fairmint-color-success-solid\": success[7],\n \"--fairmint-color-success-solid-hover\": success[7],\n \"--fairmint-color-warning-bg\": warning[0],\n \"--fairmint-color-warning-text\": warning[7],\n \"--fairmint-color-warning-border\": warning[2],\n \"--fairmint-color-warning-solid\": warning[7],\n \"--fairmint-color-warning-solid-hover\": warning[7],\n \"--fairmint-color-error-bg\": error[0],\n \"--fairmint-color-error-bg-subtle\": error[1],\n \"--fairmint-color-error-text\": error[7],\n \"--fairmint-color-error-border\": error[2],\n \"--fairmint-color-error-solid\": error[7],\n \"--fairmint-color-error-solid-hover\": error[8],\n \"--fairmint-color-error-solid-muted\": error[4],\n \"--fairmint-color-info-bg\": info[0],\n \"--fairmint-color-info-text\": info[7],\n \"--fairmint-color-info-border\": info[2],\n \"--fairmint-color-info-solid\": info[7],\n \"--fairmint-color-info-solid-hover\": info[7],\n },\n dark: {\n \"--fairmint-interactive-focus-ring\": charcoalDark.focus,\n \"--fairmint-color-bg-canvas\": charcoalDark.canvas,\n \"--fairmint-color-bg-surface\": charcoalDark.surface,\n \"--fairmint-color-bg-surface-secondary\": charcoalDark.chrome,\n \"--fairmint-color-bg-hover\": charcoalDark.control,\n \"--fairmint-color-bg-selected\": charcoalDark.selected,\n \"--fairmint-color-bg-brand-subtle\": charcoalDark.brandSubtle,\n \"--fairmint-color-bg-brand-subtle-hover\": charcoalDark.brandSubtleHover,\n \"--fairmint-color-bg-disabled\": charcoalDark.control,\n \"--fairmint-watermark-color\": charcoalDark.control,\n \"--fairmint-color-text-primary\": charcoalDark.textPrimary,\n \"--fairmint-color-text-secondary\": charcoalDark.textSecondary,\n \"--fairmint-color-text-tertiary\": charcoalDark.textTertiary,\n \"--fairmint-color-text-inverse\": neutral[9],\n \"--fairmint-color-text-disabled\": charcoalDark.textDisabled,\n \"--fairmint-color-icon-primary\": charcoalDark.textPrimary,\n \"--fairmint-color-icon-secondary\": charcoalDark.iconSecondary,\n \"--fairmint-color-icon-tertiary\": charcoalDark.textTertiary,\n \"--fairmint-color-icon-inverse\": charcoalDark.textPrimary,\n \"--fairmint-color-icon-disabled\": charcoalDark.textDisabled,\n \"--fairmint-color-border-default\": charcoalDark.border,\n \"--fairmint-color-border-focus\": charcoalDark.focus,\n \"--fairmint-color-border-disabled\": charcoalDark.border,\n \"--fairmint-color-brand-primary\": charcoalDark.primary,\n \"--fairmint-color-brand-primary-hover\": charcoalDark.primaryHover,\n \"--fairmint-color-brand-primary-active\": charcoalDark.primaryActive,\n \"--fairmint-color-brand-blue\": fairmintBlue[5],\n \"--fairmint-color-brand-purple\": fairmintPurple[5],\n \"--fairmint-color-watermark\": charcoalDark.control,\n \"--fairmint-color-surface-selected\": charcoalDark.selected,\n // indigo[6] (the light-mode value) is too dark to read against the\n // dark selected surface — use a light indigo instead.\n \"--fairmint-color-icon-on-surface-selected\": indigo[2],\n \"--fairmint-interactive-hover-shadow\": \"0 2px 6px #00000066\",\n // Single soft layer — restrained vs hover shadow and Mantine shadow-xs.\n \"--fairmint-elevation-subtle\": \"0 1px 3px #00000014\",\n \"--fairmint-interactive-hover-bg\": charcoalDark.surface,\n \"--fairmint-color-success-bg\": charcoalDark.successBg,\n \"--fairmint-color-success-text\": charcoalDark.successText,\n \"--fairmint-color-success-border\": charcoalDark.successBorder,\n \"--fairmint-color-success-solid\": charcoalDark.successSolid,\n \"--fairmint-color-success-solid-hover\": charcoalDark.successSolidHover,\n \"--fairmint-color-warning-bg\": charcoalDark.warningBg,\n \"--fairmint-color-warning-text\": charcoalDark.warningText,\n \"--fairmint-color-warning-border\": charcoalDark.warningBorder,\n \"--fairmint-color-warning-solid\": charcoalDark.warningSolid,\n \"--fairmint-color-warning-solid-hover\": charcoalDark.warningSolidHover,\n \"--fairmint-color-error-bg\": error[9],\n \"--fairmint-color-error-bg-subtle\": error[8],\n \"--fairmint-color-error-text\": error[2],\n \"--fairmint-color-error-border\": error[7],\n \"--fairmint-color-error-solid\": error[7],\n \"--fairmint-color-error-solid-hover\": error[8],\n \"--fairmint-color-error-solid-muted\": error[5],\n \"--fairmint-color-info-bg\": charcoalDark.infoBg,\n \"--fairmint-color-info-text\": charcoalDark.infoText,\n \"--fairmint-color-info-border\": charcoalDark.infoBorder,\n \"--fairmint-color-info-solid\": charcoalDark.primary,\n \"--fairmint-color-info-solid-hover\": charcoalDark.primaryHover,\n\n // Mantine primitives used by the shared component wrappers. These keep\n // Button, Badge, Alert, Loader, and form controls on the same semantic\n // roles instead of falling back to Mantine's default dark palette.\n \"--mantine-color-body\": charcoalDark.canvas,\n \"--mantine-color-text\": charcoalDark.textPrimary,\n \"--mantine-color-bright\": charcoalDark.textPrimary,\n \"--mantine-color-dimmed\": charcoalDark.textSecondary,\n \"--mantine-color-placeholder\": \"#969BA5\",\n \"--mantine-color-default\": charcoalDark.surface,\n \"--mantine-color-default-hover\": charcoalDark.control,\n \"--mantine-color-default-color\": charcoalDark.textPrimary,\n \"--mantine-color-default-border\": charcoalDark.border,\n \"--mantine-color-disabled\": charcoalDark.control,\n \"--mantine-color-disabled-color\": charcoalDark.textDisabled,\n \"--mantine-color-disabled-border\": charcoalDark.border,\n \"--mantine-primary-color-filled\": charcoalDark.primary,\n \"--mantine-primary-color-filled-hover\": charcoalDark.primaryHover,\n \"--mantine-primary-color-light\": charcoalDark.brandSubtle,\n \"--mantine-primary-color-light-hover\": charcoalDark.brandSubtleHover,\n \"--mantine-primary-color-light-color\": charcoalDark.primaryActive,\n \"--mantine-primary-color-3\": charcoalDark.primaryActive,\n \"--mantine-primary-color-4\": charcoalDark.primaryActive,\n \"--mantine-primary-color-6\": charcoalDark.primary,\n \"--mantine-primary-color-7\": charcoalDark.primaryHover,\n \"--mantine-primary-color-8\": charcoalDark.primaryHover,\n \"--mantine-primary-color-9\": charcoalDark.brandSubtle,\n \"--mantine-color-indigo-3\": charcoalDark.primaryActive,\n \"--mantine-color-indigo-4\": charcoalDark.primaryActive,\n \"--mantine-color-indigo-6\": charcoalDark.primary,\n \"--mantine-color-indigo-7\": charcoalDark.primaryHover,\n \"--mantine-color-indigo-8\": charcoalDark.primaryHover,\n \"--mantine-color-indigo-9\": charcoalDark.brandSubtle,\n \"--mantine-color-indigo-text\": charcoalDark.primaryActive,\n \"--mantine-color-indigo-filled\": charcoalDark.primary,\n \"--mantine-color-indigo-filled-hover\": charcoalDark.primaryHover,\n \"--mantine-color-indigo-light\": charcoalDark.brandSubtle,\n \"--mantine-color-indigo-light-hover\": charcoalDark.brandSubtleHover,\n \"--mantine-color-indigo-light-color\": charcoalDark.primaryActive,\n \"--mantine-color-indigo-outline\": charcoalDark.focus,\n \"--mantine-color-indigo-outline-hover\": charcoalDark.control,\n \"--mantine-color-gray-light\": charcoalDark.control,\n \"--mantine-color-gray-light-color\": charcoalDark.textSecondary,\n \"--mantine-color-gray-filled\": charcoalDark.border,\n \"--mantine-color-gray-filled-hover\": charcoalDark.iconSecondary,\n \"--mantine-color-gray-4\": charcoalDark.iconSecondary,\n \"--mantine-color-gray-5\": charcoalDark.textTertiary,\n \"--mantine-color-gray-6\": charcoalDark.textSecondary,\n \"--mantine-color-gray-7\": charcoalDark.border,\n \"--mantine-color-gray-8\": charcoalDark.chrome,\n \"--mantine-color-gray-9\": charcoalDark.canvas,\n \"--mantine-color-success-light\": charcoalDark.successBg,\n \"--mantine-color-success-light-color\": charcoalDark.successText,\n \"--mantine-color-success-filled\": charcoalDark.successSolid,\n \"--mantine-color-success-filled-hover\": charcoalDark.successSolidHover,\n \"--mantine-color-warning-light\": charcoalDark.warningBg,\n \"--mantine-color-warning-light-color\": charcoalDark.warningText,\n \"--mantine-color-warning-filled\": charcoalDark.warningSolid,\n \"--mantine-color-warning-filled-hover\": charcoalDark.warningSolidHover,\n \"--mantine-color-info-light\": charcoalDark.infoBg,\n \"--mantine-color-info-light-color\": charcoalDark.infoText,\n \"--mantine-color-info-filled\": charcoalDark.primary,\n \"--mantine-color-info-filled-hover\": charcoalDark.primaryHover,\n \"--mantine-color-error-2\": error[2],\n \"--mantine-color-error-3\": error[3],\n \"--mantine-color-error-4\": error[4],\n \"--mantine-color-error-6\": error[6],\n \"--mantine-color-error-7\": error[7],\n \"--mantine-color-error-8\": error[8],\n \"--mantine-color-error-9\": error[9],\n \"--mantine-color-error-text\": error[2],\n \"--mantine-color-error-filled\": error[7],\n \"--mantine-color-error-filled-hover\": error[6],\n \"--mantine-color-error-light\": error[9],\n \"--mantine-color-error-light-hover\": error[8],\n \"--mantine-color-error-light-color\": error[2],\n \"--mantine-color-error-outline\": error[7],\n \"--mantine-color-error-outline-hover\": error[8],\n },\n});\n\n/**\n * Typed JS references to every --fairmint-* CSS custom property.\n * Use these in component code instead of raw \"var(--fairmint-...)\" strings so\n * that renaming a token requires one change here rather than hunting every file.\n *\n * Each value includes a CSS fallback derived from the light-mode token value so\n * that components degrade gracefully when cssVariablesResolver is not wired up\n * (e.g. bare MantineProvider in tests or custom setups). Dark-mode fidelity is\n * lost without the resolver, but nothing renders invisibly.\n */\nconst fairmintVar = (name: string, fallback: string) => `var(--fairmint-${name}, ${fallback})`;\n\nexport const fairmintVars = {\n /** Canvas background for the app shell. */\n colorBgCanvas: fairmintVar(\"color-bg-canvas\", \"#ffffff\"),\n /** Primary raised surface. */\n colorBgSurface: fairmintVar(\"color-bg-surface\", \"#ffffff\"),\n /** Secondary surface used for fields, rows, and subtle containers. */\n colorBgSurfaceSecondary: fairmintVar(\"color-bg-surface-secondary\", neutral[0]),\n /** Hover surface. */\n colorBgHover: fairmintVar(\"color-bg-hover\", neutral[0]),\n /** Selected surface. */\n colorBgSelected: fairmintVar(\"color-bg-selected\", indigo[0]),\n /** Subtle brand surface. */\n colorBgBrandSubtle: fairmintVar(\"color-bg-brand-subtle\", indigo[0]),\n /** Hovered subtle brand surface. */\n colorBgBrandSubtleHover: fairmintVar(\"color-bg-brand-subtle-hover\", indigo[1]),\n /** Disabled surface. */\n colorBgDisabled: fairmintVar(\"color-bg-disabled\", neutral[2]),\n /** Primary body/heading text — titles on tinted surfaces (Chip Banner). */\n colorTextPrimary: `var(--fairmint-color-text-primary, ${neutral[9]})`,\n /** Secondary / muted text — subtitles, supporting labels. Adapts to color scheme. */\n colorTextSecondary: `var(--fairmint-color-text-secondary, ${neutral[5]})`,\n /** Tertiary / faint text — timestamps, metadata. Adapts to color scheme. */\n colorTextTertiary: `var(--fairmint-color-text-tertiary, ${neutral[4]})`,\n /** Text on filled controls. */\n colorTextInverse: fairmintVar(\"color-text-inverse\", \"#ffffff\"),\n /** Disabled text. */\n colorTextDisabled: fairmintVar(\"color-text-disabled\", neutral[6]),\n /** Primary icon and stroke color. */\n colorIconPrimary: fairmintVar(\"color-icon-primary\", neutral[9]),\n /** Secondary icon and stroke color. */\n colorIconSecondary: fairmintVar(\"color-icon-secondary\", neutral[5]),\n /** Tertiary icon and stroke color. */\n colorIconTertiary: fairmintVar(\"color-icon-tertiary\", neutral[4]),\n /** Icon color on filled or dark surfaces. */\n colorIconInverse: fairmintVar(\"color-icon-inverse\", \"#ffffff\"),\n /** Disabled icon and stroke color. */\n colorIconDisabled: fairmintVar(\"color-icon-disabled\", neutral[6]),\n /** Default border. */\n colorBorderDefault: fairmintVar(\"color-border-default\", neutral[2]),\n /** Focus border/ring color. */\n colorBorderFocus: fairmintVar(\"color-border-focus\", indigo[5]),\n /** Disabled border. */\n colorBorderDisabled: fairmintVar(\"color-border-disabled\", neutral[3]),\n /** Brand action color. */\n colorBrandPrimary: fairmintVar(\"color-brand-primary\", indigo[6]),\n /** Hovered brand action color. */\n colorBrandPrimaryHover: fairmintVar(\"color-brand-primary-hover\", indigo[7]),\n /** Pressed brand action color. */\n colorBrandPrimaryActive: fairmintVar(\"color-brand-primary-active\", indigo[7]),\n /** Fairmint blue brand accent. */\n colorBrandBlue: fairmintVar(\"color-brand-blue\", fairmintBlue[5]),\n /** Fairmint purple brand accent. */\n colorBrandPurple: fairmintVar(\"color-brand-purple\", fairmintPurple[5]),\n /** Background tint for selected / active rows. Adapts to color scheme. */\n colorSurfaceSelected: `var(--fairmint-color-surface-selected, ${indigo[0]})`,\n /** Icon/text drawn on top of colorSurfaceSelected (e.g. a checkmark in a selected badge). Adapts to color scheme. */\n colorIconOnSurfaceSelected: `var(--fairmint-color-icon-on-surface-selected, ${indigo[6]})`,\n /** Semantic status roles. */\n colorSuccessBg: fairmintVar(\"color-success-bg\", success[0]),\n colorSuccessText: fairmintVar(\"color-success-text\", success[7]),\n colorSuccessBorder: fairmintVar(\"color-success-border\", success[2]),\n colorSuccessSolid: fairmintVar(\"color-success-solid\", success[7]),\n colorSuccessSolidHover: fairmintVar(\"color-success-solid-hover\", success[7]),\n colorWarningBg: fairmintVar(\"color-warning-bg\", warning[0]),\n colorWarningText: fairmintVar(\"color-warning-text\", warning[7]),\n colorWarningBorder: fairmintVar(\"color-warning-border\", warning[2]),\n colorWarningSolid: fairmintVar(\"color-warning-solid\", warning[7]),\n colorWarningSolidHover: fairmintVar(\"color-warning-solid-hover\", warning[7]),\n colorErrorBg: fairmintVar(\"color-error-bg\", error[0]),\n colorErrorBgSubtle: fairmintVar(\"color-error-bg-subtle\", error[1]),\n colorErrorText: fairmintVar(\"color-error-text\", error[7]),\n colorErrorBorder: fairmintVar(\"color-error-border\", error[2]),\n colorErrorSolid: fairmintVar(\"color-error-solid\", error[5]),\n colorErrorSolidHover: fairmintVar(\"color-error-solid-hover\", error[6]),\n colorErrorSolidMuted: fairmintVar(\"color-error-solid-muted\", error[4]),\n colorInfoBg: fairmintVar(\"color-info-bg\", info[0]),\n colorInfoText: fairmintVar(\"color-info-text\", info[7]),\n colorInfoBorder: fairmintVar(\"color-info-border\", info[2]),\n colorInfoSolid: fairmintVar(\"color-info-solid\", info[7]),\n colorInfoSolidHover: fairmintVar(\"color-info-solid-hover\", info[7]),\n /** Decorative watermark color. */\n colorWatermark: fairmintVar(\"color-watermark\", neutral[1]),\n /** Large decorative watermark on error/empty pages. Adapts to color scheme. */\n watermarkColor: fairmintVar(\"color-watermark\", neutral[1]),\n /** Heading font family (Plus Jakarta Sans). */\n fontHeadings: `var(--fairmint-font-headings, ${typography.headingFontFamily})`,\n /** Body font family (Inter). */\n fontBody: `var(--fairmint-font-body, ${typography.fontFamily})`,\n} as const;\n\n/**\n * Returns the MantineProvider props required to use @fairmint/ui components.\n * Use this when you need to instantiate MantineProvider directly (e.g. in\n * Storybook decorators or server-rendering setups) instead of FairmintProvider.\n *\n * @example\n * ```tsx\n * import { MantineProvider } from \"@mantine/core\";\n * import { createFairmintMantineProviderProps } from \"@fairmint/ui\";\n *\n * <MantineProvider {...createFairmintMantineProviderProps()}>\n * <App />\n * </MantineProvider>\n * ```\n */\nexport function createFairmintMantineProviderProps(\n colorScheme: \"light\" | \"dark\" | \"auto\" = \"light\",\n) {\n return {\n theme,\n cssVariablesResolver: fairmintCssVariables,\n defaultColorScheme: colorScheme,\n } as const;\n}\n\n/** Brand colors for gradients and custom styling. */\nexport const brandColors = {\n blue: \"#0A4EFB\",\n purple: \"#9E03FF\",\n indigo: \"#6366F1\",\n gradient: \"linear-gradient(90deg, #0A4EFB 0%, #9E03FF 100%)\",\n} as const;\n\nexport const commonColors = {\n black: \"#000000\",\n white: \"#ffffff\",\n} as const;\n\n/**\n * Card/row shadow used by WalletList and similar card surfaces.\n * Equivalent to neutralColors[900] at ~10% opacity (#111927 → #1119271A).\n */\nexport const shadowColor = {\n card: \"#1119271A\",\n} as const;\n\n/** Indigo scale for direct access outside Mantine's theme system. Keys are numeric literals. */\nexport const indigoColors = {\n 0: \"#EEF2FF\",\n 1: \"#E0E7FF\",\n 2: \"#C7D2FE\",\n 3: \"#A5B4FC\",\n 4: \"#818CF8\",\n 5: \"#6366F1\",\n 6: \"#4F46E5\",\n 7: \"#4338CA\",\n 8: \"#3730A3\",\n 9: \"#312E81\",\n} as const;\n\n/** Neutral scale for direct access outside Mantine's theme system. Keys are numeric literals. */\nexport const neutralColors = {\n 50: \"#F8F9FA\",\n 100: \"#F3F4F6\",\n 200: \"#E5E7EB\",\n 300: \"#D2D6DB\",\n 400: \"#9DA4AE\",\n 500: \"#6C737F\",\n 600: \"#4D5761\",\n 700: \"#2F3746\",\n 800: \"#1C2536\",\n 900: \"#111927\",\n} as const;\n\n/** Dark neutral ramp used by the semantic dark-mode CSS variables. */\nexport const darkNeutralColors = {\n 50: \"#F5F7FA\",\n 100: \"#E2E7ED\",\n 200: \"#B8C2D0\",\n 300: \"#8D99A8\",\n 400: \"#748093\",\n 500: \"#5C687A\",\n 600: \"#2F3746\",\n 700: \"#1F2A39\",\n 800: \"#1B2431\",\n 900: \"#0F141C\",\n} as const;\n\n/** Semantic colors for status-based styling. */\nexport const semanticColors = {\n success: \"#10B981\",\n warning: \"#F79009\",\n error: \"#F04438\",\n info: \"#06AED4\",\n} as const;\n\nexport type { AvatarPaletteColor, FairmintColor } from \"./colors\";\nexport { AVATAR_PALETTE, colors } from \"./colors\";\nexport type { FairmintFontSize } from \"./fontSizes\";\nexport { fontSizes } from \"./fontSizes\";\nexport { DEFAULT_FAIRMINT_LOGO_SRC } from \"./logo\";\nexport type { FairmintResponsiveTypography } from \"./responsiveTypography\";\nexport { responsiveTypography } from \"./responsiveTypography\";\nexport type { FairmintSpacing } from \"./spacing\";\nexport { spacing } from \"./spacing\";\nexport { overlayZIndexAboveLegacyShell } from \"./zIndex\";\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sources":["../../src/theme/index.ts"],"sourcesContent":["import {\n type CSSVariablesResolver,\n createTheme,\n type MantineColorsTuple,\n type MantineTheme,\n} from \"@mantine/core\";\nimport { fontSizes } from \"./fontSizes\";\nimport { spacing } from \"./spacing\";\nimport { overlayZIndexAboveFairmintOverlays } from \"./zIndex\";\n\n/**\n * Fairmint radius scale — single source of truth used by both the Mantine\n * theme config and the exported `radii` constant. Edit here; both stay in sync.\n */\nexport const radii = {\n xs: \"0.25rem\",\n sm: \"0.375rem\",\n md: \"0.5rem\",\n lg: \"0.75rem\",\n xl: \"1rem\",\n} as const;\n\n/**\n * Indigo palette — primary UI color.\n * Used for buttons, links, active navigation, focus rings.\n * Shade [5] (#6366F1) is the default primary.\n */\nconst indigo: MantineColorsTuple = [\n \"#EEF2FF\",\n \"#E0E7FF\",\n \"#C7D2FE\",\n \"#A5B4FC\",\n \"#818CF8\",\n \"#6366F1\",\n \"#4F46E5\",\n \"#4338CA\",\n \"#3730A3\",\n \"#253974\",\n];\n\n/**\n * Neutral scale — replaces Mantine's default gray.\n * Used for text, borders, backgrounds, disabled states.\n */\nconst neutral: MantineColorsTuple = [\n \"#F8F9FA\",\n \"#F3F4F6\",\n \"#E5E7EB\",\n \"#D2D6DB\",\n \"#9DA4AE\",\n \"#6C737F\",\n \"#4D5761\",\n \"#2F3746\",\n \"#1C2536\",\n \"#111927\",\n];\n\n/**\n * Dark-mode neutral ramp — the dark surface and text anchors used by Chip.\n * Keep these separate from the light neutral ramp so Light mode remains stable.\n */\nconst darkNeutral: MantineColorsTuple = [\n \"#FFFFFF\",\n \"#E7E9F0\",\n \"#B8C2D0\",\n \"#9DA4AE\",\n \"#8F99AB\",\n \"#6C737F\",\n \"#2F3746\",\n \"#1B1D21\",\n \"#17191D\",\n \"#111214\",\n];\n\n/**\n * Approved charcoal dark-mode roles from the onboarding source of truth.\n * Keep these semantic values explicit instead of deriving them from the\n * light neutral ramp so component behavior stays aligned with Figma.\n */\nconst charcoalDark = {\n canvas: \"#111214\",\n surface: \"#17191D\",\n chrome: \"#1B1D21\",\n control: \"#202329\",\n selected: \"#2F3746\",\n // Must read on canvas/chrome. Former #111927 (light-mode N900) made Avatar,\n // Button/ActionIcon `variant=\"light\"`, and brand-subtle plates disappear.\n // Matches light mode where brand-subtle and selected both resolve to indigo[0].\n brandSubtle: \"#2F3746\",\n /** One step above brandSubtle for light-variant / brand-subtle hover. */\n brandSubtleHover: \"#3A4456\",\n textPrimary: \"#FFFFFF\",\n textSecondary: \"#9DA4AE\",\n textTertiary: \"#8F99AB\",\n textDisabled: \"#6C737F\",\n iconSecondary: \"#B8C2D0\",\n border: \"#2F3746\",\n focus: \"#A5B4FC\",\n primary: \"#6366F1\",\n primaryHover: \"#818CF8\",\n primaryActive: \"#A5B4FC\",\n successBg: \"#163E38\",\n successText: \"#6FE3BE\",\n successBorder: \"#2F3746\",\n successSolid: \"#34D399\",\n successSolidHover: \"#6FE3BE\",\n warningBg: \"#402A12\",\n warningText: \"#FDB022\",\n warningBorder: \"#6E4515\",\n warningSolid: \"#DC6803\",\n warningSolidHover: \"#E5A34A\",\n infoBg: \"#172B45\",\n infoText: \"#22CCEE\",\n infoBorder: \"#23476B\",\n} as const;\n\n/**\n * Mantine still references its reserved `dark` ramp directly in several\n * component styles (for example Card uses dark[6] and Paper borders use\n * dark[4]). Map those fallback indices to Fairmint's charcoal roles so an\n * un-tokenized Mantine state cannot reintroduce the warm default gray palette.\n */\nconst mantineDark: MantineColorsTuple = [\n charcoalDark.textPrimary,\n darkNeutral[1],\n darkNeutral[2],\n charcoalDark.textSecondary,\n charcoalDark.border,\n charcoalDark.control,\n charcoalDark.surface,\n charcoalDark.canvas,\n charcoalDark.canvas,\n charcoalDark.canvas,\n];\n\n/**\n * Fairmint brand blue — accent color for gradients and brand elements.\n * Shade [5] (#0A4EFB) is the primary brand blue.\n *\n * This is the current production value documented in design/DESIGN.md.\n */\nconst fairmintBlue: MantineColorsTuple = [\n \"#e6f0ff\",\n \"#cce0ff\",\n \"#99c2ff\",\n \"#66a3ff\",\n \"#3385ff\",\n \"#0A4EFB\",\n \"#083ec9\",\n \"#062e97\",\n \"#041f64\",\n \"#020f32\",\n];\n\n/**\n * Fairmint brand purple — accent color for gradients and brand elements.\n * Shade [5] (#9E03FF) is the primary brand purple.\n *\n * This is the current production value documented in design/DESIGN.md.\n */\nconst fairmintPurple: MantineColorsTuple = [\n \"#f5e6ff\",\n \"#e6ccff\",\n \"#cc99ff\",\n \"#b366ff\",\n \"#9933ff\",\n \"#9E03FF\",\n \"#7e02cc\",\n \"#5f0299\",\n \"#3f0166\",\n \"#200133\",\n];\n\nconst success: MantineColorsTuple = [\n \"#F0FDF9\",\n \"#D1FAE5\",\n \"#A7F3D0\",\n \"#6EE7B7\",\n \"#34D399\",\n \"#10B981\",\n \"#059669\",\n \"#047857\",\n \"#065F46\",\n \"#134E48\",\n];\n\nconst warning: MantineColorsTuple = [\n \"#FFFAEB\",\n \"#FEF0C7\",\n \"#FEDF89\",\n \"#FEC84B\",\n \"#FDB022\",\n \"#F79009\",\n \"#DC6803\",\n \"#B54708\",\n \"#93370D\",\n \"#7A2E0E\",\n];\n\nconst error: MantineColorsTuple = [\n \"#FEF3F2\",\n \"#FEE4E2\",\n \"#FECDCA\",\n \"#FDA29B\",\n \"#F97066\",\n \"#F04438\",\n \"#D92D20\",\n \"#B42318\",\n \"#912018\",\n \"#7A271A\",\n];\n\nconst info: MantineColorsTuple = [\n \"#ECFDFF\",\n \"#CFF9FE\",\n \"#A5F0FC\",\n \"#67E3F9\",\n \"#22CCEE\",\n \"#06AED4\",\n \"#088AB2\",\n \"#0E7090\",\n \"#155B75\",\n \"#164C63\",\n];\n\n/**\n * Typography constants — single source of truth for font families.\n * Use these instead of var(--mantine-font-family-*) in component code.\n * Declared before createTheme so the theme itself references them.\n */\nexport const typography = {\n fontFamily:\n '\"Inter\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\"',\n headingFontFamily: '\"Plus Jakarta Sans\", sans-serif',\n} as const;\n\n/**\n * Semantic toast surfaces keyed by Mantine Notification `color`.\n * Uses Fairmint CSS variables so light/dark flip with the resolver\n * (`*-bg` light values are the /50 ramp shade / tuple[0]).\n */\nconst notificationToneStyles: Record<string, { bg: string; border: string; text: string }> = {\n success: {\n bg: \"var(--fairmint-color-success-bg)\",\n border: \"var(--fairmint-color-success-border)\",\n text: \"var(--fairmint-color-success-text)\",\n },\n error: {\n bg: \"var(--fairmint-color-error-bg)\",\n border: \"var(--fairmint-color-error-border)\",\n text: \"var(--fairmint-color-error-text)\",\n },\n warning: {\n bg: \"var(--fairmint-color-warning-bg)\",\n border: \"var(--fairmint-color-warning-border)\",\n text: \"var(--fairmint-color-warning-text)\",\n },\n info: {\n bg: \"var(--fairmint-color-info-bg)\",\n border: \"var(--fairmint-color-info-border)\",\n text: \"var(--fairmint-color-info-text)\",\n },\n};\n\nexport const theme = createTheme({\n primaryColor: \"indigo\",\n // Mantine defaults to a darker shade for dark-mode filled/light variants\n // (primaryShade: { light: 6, dark: 8 }), but our brand indigo (index 5,\n // #6366F1) is the same accent in both color schemes — pin a single shade\n // so unwrapped Mantine components (color=\"indigo\") don't drift into a\n // different, more saturated purple in dark mode.\n primaryShade: 5,\n colors: {\n indigo,\n gray: neutral,\n dark: mantineDark,\n darkGray: darkNeutral,\n fairmintBlue,\n fairmintPurple,\n success,\n warning,\n error,\n info,\n },\n\n fontFamily: typography.fontFamily,\n headings: {\n fontFamily: typography.headingFontFamily,\n fontWeight: \"700\",\n },\n\n radius: radii,\n defaultRadius: \"md\",\n spacing,\n fontSizes: {\n xs: fontSizes.xs,\n sm: fontSizes.sm,\n md: fontSizes.md,\n lg: fontSizes.lg,\n xl: fontSizes.xl,\n },\n\n breakpoints: {\n xs: \"30em\",\n sm: \"48em\",\n md: \"64em\",\n lg: \"74em\",\n xl: \"90em\",\n },\n\n components: {\n Button: {\n defaultProps: { size: \"md\" },\n styles: {\n root: {\n fontWeight: 600,\n borderRadius: \"0.75rem\",\n textTransform: \"none\" as const,\n },\n },\n },\n Input: {\n classNames: { input: \"fairmint-input\" },\n },\n TextInput: {\n defaultProps: { size: \"md\" },\n },\n Select: {\n defaultProps: {\n comboboxProps: { zIndex: overlayZIndexAboveFairmintOverlays },\n },\n },\n MultiSelect: {\n defaultProps: {\n comboboxProps: { zIndex: overlayZIndexAboveFairmintOverlays },\n },\n },\n Card: {\n defaultProps: {\n padding: \"lg\",\n radius: \"xl\",\n withBorder: true,\n },\n styles: {\n root: {\n backgroundColor: \"var(--fairmint-color-bg-surface, #ffffff)\",\n borderColor: `var(--fairmint-color-border-default, ${neutral[2]})`,\n },\n },\n },\n Paper: {\n styles: {\n root: {\n backgroundColor: \"var(--fairmint-color-bg-surface, #ffffff)\",\n backgroundImage: \"none\",\n borderColor: `var(--fairmint-color-border-default, ${neutral[2]})`,\n },\n },\n },\n Table: {\n styles: {\n thead: {\n fontSize: \"0.75rem\",\n fontWeight: 600,\n letterSpacing: \"0.5px\",\n textTransform: \"uppercase\" as const,\n },\n },\n },\n Modal: {\n styles: {\n title: {\n fontSize: fontSizes.lg,\n fontWeight: 700,\n lineHeight: 1.3,\n },\n },\n },\n // Toasts: Ramp-inspired restraint — single-layer subtle elevation (lighter\n // than Mantine shadow-xs) + 1px semantic border (override shadow-lg / filled\n // icon). Semantic variants use *-bg (light = ramp /50 / tuple[0]; dark =\n // approved charcoal semantic surfaces) with matching border/text/icon tokens.\n // Neutral/default (no color) stays on the standard surface.\n // Horizontal padding is symmetric spacing.md (16px): Mantine defaults to\n // 22px start (accent rail) vs spacing.xs end (~10px); Fairmint toasts use\n // outlined icons (rail hidden), so match left/right on the spacing scale.\n Notification: {\n styles: (_theme: MantineTheme, params: { color?: string }) => {\n const tone = notificationToneStyles[params.color ?? \"\"];\n const rootPadding = {\n paddingInlineStart: spacing.md,\n paddingInlineEnd: spacing.md,\n } as const;\n\n if (!tone) {\n return {\n root: {\n boxShadow: \"var(--fairmint-elevation-subtle)\",\n ...rootPadding,\n },\n icon: {\n backgroundColor: \"transparent\",\n color: \"var(--notification-color)\",\n },\n };\n }\n\n return {\n root: {\n boxShadow: \"var(--fairmint-elevation-subtle)\",\n backgroundColor: tone.bg,\n border: `1px solid ${tone.border}`,\n ...rootPadding,\n },\n title: {\n color: tone.text,\n },\n description: {\n color: tone.text,\n },\n icon: {\n backgroundColor: \"transparent\",\n color: tone.text,\n },\n closeButton: {\n color: tone.text,\n },\n };\n },\n },\n },\n});\n\n/**\n * Fairmint CSS variables resolver for MantineProvider.\n * Publishes --fairmint-* custom properties so components never reference\n * --mantine-* variables directly. All light/dark switching is centralised here.\n */\nexport const fairmintCssVariables: CSSVariablesResolver = () => ({\n variables: {\n \"--fairmint-font-headings\": typography.headingFontFamily,\n \"--fairmint-font-body\": typography.fontFamily,\n \"--fairmint-interactive-focus-ring\": indigo[5],\n },\n light: {\n \"--fairmint-interactive-focus-ring\": indigo[5],\n \"--fairmint-color-bg-canvas\": commonColors.white,\n \"--fairmint-color-bg-surface\": commonColors.white,\n \"--fairmint-color-bg-surface-secondary\": neutral[0],\n \"--fairmint-color-bg-hover\": neutral[0],\n \"--fairmint-color-bg-selected\": indigo[0],\n \"--fairmint-color-bg-brand-subtle\": indigo[0],\n \"--fairmint-color-bg-brand-subtle-hover\": indigo[1],\n \"--fairmint-color-bg-disabled\": neutral[2],\n \"--fairmint-watermark-color\": neutral[1],\n \"--fairmint-color-text-primary\": neutral[9],\n \"--fairmint-color-text-secondary\": neutral[5],\n \"--fairmint-color-text-tertiary\": neutral[4],\n \"--fairmint-color-text-inverse\": commonColors.white,\n \"--fairmint-color-text-disabled\": neutral[6],\n \"--fairmint-color-icon-primary\": neutral[9],\n \"--fairmint-color-icon-secondary\": neutral[5],\n \"--fairmint-color-icon-tertiary\": neutral[4],\n \"--fairmint-color-icon-inverse\": commonColors.white,\n \"--fairmint-color-icon-disabled\": neutral[6],\n \"--fairmint-color-border-default\": neutral[2],\n \"--fairmint-color-border-focus\": indigo[5],\n \"--fairmint-color-border-disabled\": neutral[3],\n \"--fairmint-color-brand-primary\": indigo[6],\n \"--fairmint-color-brand-primary-hover\": indigo[7],\n \"--fairmint-color-brand-primary-active\": indigo[7],\n \"--fairmint-color-brand-blue\": fairmintBlue[5],\n \"--fairmint-color-brand-purple\": fairmintPurple[5],\n \"--fairmint-color-watermark\": neutral[1],\n \"--fairmint-color-surface-selected\": indigo[0],\n \"--fairmint-color-icon-on-surface-selected\": indigo[6],\n \"--fairmint-interactive-hover-shadow\": `0 2px 6px ${neutral[9]}0F`,\n // Single soft layer — lighter than Mantine shadow-xs (no multi-layer stack).\n \"--fairmint-elevation-subtle\": `0 1px 3px ${neutral[9]}06`,\n \"--fairmint-interactive-hover-bg\": neutral[0],\n \"--fairmint-color-success-bg\": success[0],\n \"--fairmint-color-success-text\": success[7],\n \"--fairmint-color-success-border\": success[2],\n \"--fairmint-color-success-solid\": success[7],\n \"--fairmint-color-success-solid-hover\": success[7],\n \"--fairmint-color-warning-bg\": warning[0],\n \"--fairmint-color-warning-text\": warning[7],\n \"--fairmint-color-warning-border\": warning[2],\n \"--fairmint-color-warning-solid\": warning[7],\n \"--fairmint-color-warning-solid-hover\": warning[7],\n \"--fairmint-color-error-bg\": error[0],\n \"--fairmint-color-error-bg-subtle\": error[1],\n \"--fairmint-color-error-text\": error[7],\n \"--fairmint-color-error-border\": error[2],\n \"--fairmint-color-error-solid\": error[7],\n \"--fairmint-color-error-solid-hover\": error[8],\n \"--fairmint-color-error-solid-muted\": error[4],\n \"--fairmint-color-info-bg\": info[0],\n \"--fairmint-color-info-text\": info[7],\n \"--fairmint-color-info-border\": info[2],\n \"--fairmint-color-info-solid\": info[7],\n \"--fairmint-color-info-solid-hover\": info[7],\n },\n dark: {\n \"--fairmint-interactive-focus-ring\": charcoalDark.focus,\n \"--fairmint-color-bg-canvas\": charcoalDark.canvas,\n \"--fairmint-color-bg-surface\": charcoalDark.surface,\n \"--fairmint-color-bg-surface-secondary\": charcoalDark.chrome,\n \"--fairmint-color-bg-hover\": charcoalDark.control,\n \"--fairmint-color-bg-selected\": charcoalDark.selected,\n \"--fairmint-color-bg-brand-subtle\": charcoalDark.brandSubtle,\n \"--fairmint-color-bg-brand-subtle-hover\": charcoalDark.brandSubtleHover,\n \"--fairmint-color-bg-disabled\": charcoalDark.control,\n \"--fairmint-watermark-color\": charcoalDark.control,\n \"--fairmint-color-text-primary\": charcoalDark.textPrimary,\n \"--fairmint-color-text-secondary\": charcoalDark.textSecondary,\n \"--fairmint-color-text-tertiary\": charcoalDark.textTertiary,\n \"--fairmint-color-text-inverse\": neutral[9],\n \"--fairmint-color-text-disabled\": charcoalDark.textDisabled,\n \"--fairmint-color-icon-primary\": charcoalDark.textPrimary,\n \"--fairmint-color-icon-secondary\": charcoalDark.iconSecondary,\n \"--fairmint-color-icon-tertiary\": charcoalDark.textTertiary,\n \"--fairmint-color-icon-inverse\": charcoalDark.textPrimary,\n \"--fairmint-color-icon-disabled\": charcoalDark.textDisabled,\n \"--fairmint-color-border-default\": charcoalDark.border,\n \"--fairmint-color-border-focus\": charcoalDark.focus,\n \"--fairmint-color-border-disabled\": charcoalDark.border,\n \"--fairmint-color-brand-primary\": charcoalDark.primary,\n \"--fairmint-color-brand-primary-hover\": charcoalDark.primaryHover,\n \"--fairmint-color-brand-primary-active\": charcoalDark.primaryActive,\n \"--fairmint-color-brand-blue\": fairmintBlue[5],\n \"--fairmint-color-brand-purple\": fairmintPurple[5],\n \"--fairmint-color-watermark\": charcoalDark.control,\n \"--fairmint-color-surface-selected\": charcoalDark.selected,\n // indigo[6] (the light-mode value) is too dark to read against the\n // dark selected surface — use a light indigo instead.\n \"--fairmint-color-icon-on-surface-selected\": indigo[2],\n \"--fairmint-interactive-hover-shadow\": \"0 2px 6px #00000066\",\n // Single soft layer — restrained vs hover shadow and Mantine shadow-xs.\n \"--fairmint-elevation-subtle\": \"0 1px 3px #00000014\",\n \"--fairmint-interactive-hover-bg\": charcoalDark.surface,\n \"--fairmint-color-success-bg\": charcoalDark.successBg,\n \"--fairmint-color-success-text\": charcoalDark.successText,\n \"--fairmint-color-success-border\": charcoalDark.successBorder,\n \"--fairmint-color-success-solid\": charcoalDark.successSolid,\n \"--fairmint-color-success-solid-hover\": charcoalDark.successSolidHover,\n \"--fairmint-color-warning-bg\": charcoalDark.warningBg,\n \"--fairmint-color-warning-text\": charcoalDark.warningText,\n \"--fairmint-color-warning-border\": charcoalDark.warningBorder,\n \"--fairmint-color-warning-solid\": charcoalDark.warningSolid,\n \"--fairmint-color-warning-solid-hover\": charcoalDark.warningSolidHover,\n \"--fairmint-color-error-bg\": error[9],\n \"--fairmint-color-error-bg-subtle\": error[8],\n \"--fairmint-color-error-text\": error[2],\n \"--fairmint-color-error-border\": error[7],\n \"--fairmint-color-error-solid\": error[7],\n \"--fairmint-color-error-solid-hover\": error[8],\n \"--fairmint-color-error-solid-muted\": error[5],\n \"--fairmint-color-info-bg\": charcoalDark.infoBg,\n \"--fairmint-color-info-text\": charcoalDark.infoText,\n \"--fairmint-color-info-border\": charcoalDark.infoBorder,\n \"--fairmint-color-info-solid\": charcoalDark.primary,\n \"--fairmint-color-info-solid-hover\": charcoalDark.primaryHover,\n\n // Mantine primitives used by the shared component wrappers. These keep\n // Button, Badge, Alert, Loader, and form controls on the same semantic\n // roles instead of falling back to Mantine's default dark palette.\n \"--mantine-color-body\": charcoalDark.canvas,\n \"--mantine-color-text\": charcoalDark.textPrimary,\n \"--mantine-color-bright\": charcoalDark.textPrimary,\n \"--mantine-color-dimmed\": charcoalDark.textSecondary,\n \"--mantine-color-placeholder\": \"#969BA5\",\n \"--mantine-color-default\": charcoalDark.surface,\n \"--mantine-color-default-hover\": charcoalDark.control,\n \"--mantine-color-default-color\": charcoalDark.textPrimary,\n \"--mantine-color-default-border\": charcoalDark.border,\n \"--mantine-color-disabled\": charcoalDark.control,\n \"--mantine-color-disabled-color\": charcoalDark.textDisabled,\n \"--mantine-color-disabled-border\": charcoalDark.border,\n \"--mantine-primary-color-filled\": charcoalDark.primary,\n \"--mantine-primary-color-filled-hover\": charcoalDark.primaryHover,\n \"--mantine-primary-color-light\": charcoalDark.brandSubtle,\n \"--mantine-primary-color-light-hover\": charcoalDark.brandSubtleHover,\n \"--mantine-primary-color-light-color\": charcoalDark.primaryActive,\n \"--mantine-primary-color-3\": charcoalDark.primaryActive,\n \"--mantine-primary-color-4\": charcoalDark.primaryActive,\n \"--mantine-primary-color-6\": charcoalDark.primary,\n \"--mantine-primary-color-7\": charcoalDark.primaryHover,\n \"--mantine-primary-color-8\": charcoalDark.primaryHover,\n \"--mantine-primary-color-9\": charcoalDark.brandSubtle,\n \"--mantine-color-indigo-3\": charcoalDark.primaryActive,\n \"--mantine-color-indigo-4\": charcoalDark.primaryActive,\n \"--mantine-color-indigo-6\": charcoalDark.primary,\n \"--mantine-color-indigo-7\": charcoalDark.primaryHover,\n \"--mantine-color-indigo-8\": charcoalDark.primaryHover,\n \"--mantine-color-indigo-9\": charcoalDark.brandSubtle,\n \"--mantine-color-indigo-text\": charcoalDark.primaryActive,\n \"--mantine-color-indigo-filled\": charcoalDark.primary,\n \"--mantine-color-indigo-filled-hover\": charcoalDark.primaryHover,\n \"--mantine-color-indigo-light\": charcoalDark.brandSubtle,\n \"--mantine-color-indigo-light-hover\": charcoalDark.brandSubtleHover,\n \"--mantine-color-indigo-light-color\": charcoalDark.primaryActive,\n \"--mantine-color-indigo-outline\": charcoalDark.focus,\n \"--mantine-color-indigo-outline-hover\": charcoalDark.control,\n \"--mantine-color-gray-light\": charcoalDark.control,\n \"--mantine-color-gray-light-color\": charcoalDark.textSecondary,\n \"--mantine-color-gray-filled\": charcoalDark.border,\n \"--mantine-color-gray-filled-hover\": charcoalDark.iconSecondary,\n \"--mantine-color-gray-4\": charcoalDark.iconSecondary,\n \"--mantine-color-gray-5\": charcoalDark.textTertiary,\n \"--mantine-color-gray-6\": charcoalDark.textSecondary,\n \"--mantine-color-gray-7\": charcoalDark.border,\n \"--mantine-color-gray-8\": charcoalDark.chrome,\n \"--mantine-color-gray-9\": charcoalDark.canvas,\n \"--mantine-color-success-light\": charcoalDark.successBg,\n \"--mantine-color-success-light-color\": charcoalDark.successText,\n \"--mantine-color-success-filled\": charcoalDark.successSolid,\n \"--mantine-color-success-filled-hover\": charcoalDark.successSolidHover,\n \"--mantine-color-warning-light\": charcoalDark.warningBg,\n \"--mantine-color-warning-light-color\": charcoalDark.warningText,\n \"--mantine-color-warning-filled\": charcoalDark.warningSolid,\n \"--mantine-color-warning-filled-hover\": charcoalDark.warningSolidHover,\n \"--mantine-color-info-light\": charcoalDark.infoBg,\n \"--mantine-color-info-light-color\": charcoalDark.infoText,\n \"--mantine-color-info-filled\": charcoalDark.primary,\n \"--mantine-color-info-filled-hover\": charcoalDark.primaryHover,\n \"--mantine-color-error-2\": error[2],\n \"--mantine-color-error-3\": error[3],\n \"--mantine-color-error-4\": error[4],\n \"--mantine-color-error-6\": error[6],\n \"--mantine-color-error-7\": error[7],\n \"--mantine-color-error-8\": error[8],\n \"--mantine-color-error-9\": error[9],\n \"--mantine-color-error-text\": error[2],\n \"--mantine-color-error-filled\": error[7],\n \"--mantine-color-error-filled-hover\": error[6],\n \"--mantine-color-error-light\": error[9],\n \"--mantine-color-error-light-hover\": error[8],\n \"--mantine-color-error-light-color\": error[2],\n \"--mantine-color-error-outline\": error[7],\n \"--mantine-color-error-outline-hover\": error[8],\n },\n});\n\n/**\n * Typed JS references to every --fairmint-* CSS custom property.\n * Use these in component code instead of raw \"var(--fairmint-...)\" strings so\n * that renaming a token requires one change here rather than hunting every file.\n *\n * Each value includes a CSS fallback derived from the light-mode token value so\n * that components degrade gracefully when cssVariablesResolver is not wired up\n * (e.g. bare MantineProvider in tests or custom setups). Dark-mode fidelity is\n * lost without the resolver, but nothing renders invisibly.\n */\nconst fairmintVar = (name: string, fallback: string) => `var(--fairmint-${name}, ${fallback})`;\n\nexport const fairmintVars = {\n /** Canvas background for the app shell. */\n colorBgCanvas: fairmintVar(\"color-bg-canvas\", \"#ffffff\"),\n /** Primary raised surface. */\n colorBgSurface: fairmintVar(\"color-bg-surface\", \"#ffffff\"),\n /** Secondary surface used for fields, rows, and subtle containers. */\n colorBgSurfaceSecondary: fairmintVar(\"color-bg-surface-secondary\", neutral[0]),\n /** Hover surface. */\n colorBgHover: fairmintVar(\"color-bg-hover\", neutral[0]),\n /** Selected surface. */\n colorBgSelected: fairmintVar(\"color-bg-selected\", indigo[0]),\n /** Subtle brand surface. */\n colorBgBrandSubtle: fairmintVar(\"color-bg-brand-subtle\", indigo[0]),\n /** Hovered subtle brand surface. */\n colorBgBrandSubtleHover: fairmintVar(\"color-bg-brand-subtle-hover\", indigo[1]),\n /** Disabled surface. */\n colorBgDisabled: fairmintVar(\"color-bg-disabled\", neutral[2]),\n /** Primary body/heading text — titles on tinted surfaces (Chip Banner). */\n colorTextPrimary: `var(--fairmint-color-text-primary, ${neutral[9]})`,\n /** Secondary / muted text — subtitles, supporting labels. Adapts to color scheme. */\n colorTextSecondary: `var(--fairmint-color-text-secondary, ${neutral[5]})`,\n /** Tertiary / faint text — timestamps, metadata. Adapts to color scheme. */\n colorTextTertiary: `var(--fairmint-color-text-tertiary, ${neutral[4]})`,\n /** Text on filled controls. */\n colorTextInverse: fairmintVar(\"color-text-inverse\", \"#ffffff\"),\n /** Disabled text. */\n colorTextDisabled: fairmintVar(\"color-text-disabled\", neutral[6]),\n /** Primary icon and stroke color. */\n colorIconPrimary: fairmintVar(\"color-icon-primary\", neutral[9]),\n /** Secondary icon and stroke color. */\n colorIconSecondary: fairmintVar(\"color-icon-secondary\", neutral[5]),\n /** Tertiary icon and stroke color. */\n colorIconTertiary: fairmintVar(\"color-icon-tertiary\", neutral[4]),\n /** Icon color on filled or dark surfaces. */\n colorIconInverse: fairmintVar(\"color-icon-inverse\", \"#ffffff\"),\n /** Disabled icon and stroke color. */\n colorIconDisabled: fairmintVar(\"color-icon-disabled\", neutral[6]),\n /** Default border. */\n colorBorderDefault: fairmintVar(\"color-border-default\", neutral[2]),\n /** Focus border/ring color. */\n colorBorderFocus: fairmintVar(\"color-border-focus\", indigo[5]),\n /** Disabled border. */\n colorBorderDisabled: fairmintVar(\"color-border-disabled\", neutral[3]),\n /** Brand action color. */\n colorBrandPrimary: fairmintVar(\"color-brand-primary\", indigo[6]),\n /** Hovered brand action color. */\n colorBrandPrimaryHover: fairmintVar(\"color-brand-primary-hover\", indigo[7]),\n /** Pressed brand action color. */\n colorBrandPrimaryActive: fairmintVar(\"color-brand-primary-active\", indigo[7]),\n /** Fairmint blue brand accent. */\n colorBrandBlue: fairmintVar(\"color-brand-blue\", fairmintBlue[5]),\n /** Fairmint purple brand accent. */\n colorBrandPurple: fairmintVar(\"color-brand-purple\", fairmintPurple[5]),\n /** Background tint for selected / active rows. Adapts to color scheme. */\n colorSurfaceSelected: `var(--fairmint-color-surface-selected, ${indigo[0]})`,\n /** Icon/text drawn on top of colorSurfaceSelected (e.g. a checkmark in a selected badge). Adapts to color scheme. */\n colorIconOnSurfaceSelected: `var(--fairmint-color-icon-on-surface-selected, ${indigo[6]})`,\n /** Semantic status roles. */\n colorSuccessBg: fairmintVar(\"color-success-bg\", success[0]),\n colorSuccessText: fairmintVar(\"color-success-text\", success[7]),\n colorSuccessBorder: fairmintVar(\"color-success-border\", success[2]),\n colorSuccessSolid: fairmintVar(\"color-success-solid\", success[7]),\n colorSuccessSolidHover: fairmintVar(\"color-success-solid-hover\", success[7]),\n colorWarningBg: fairmintVar(\"color-warning-bg\", warning[0]),\n colorWarningText: fairmintVar(\"color-warning-text\", warning[7]),\n colorWarningBorder: fairmintVar(\"color-warning-border\", warning[2]),\n colorWarningSolid: fairmintVar(\"color-warning-solid\", warning[7]),\n colorWarningSolidHover: fairmintVar(\"color-warning-solid-hover\", warning[7]),\n colorErrorBg: fairmintVar(\"color-error-bg\", error[0]),\n colorErrorBgSubtle: fairmintVar(\"color-error-bg-subtle\", error[1]),\n colorErrorText: fairmintVar(\"color-error-text\", error[7]),\n colorErrorBorder: fairmintVar(\"color-error-border\", error[2]),\n colorErrorSolid: fairmintVar(\"color-error-solid\", error[5]),\n colorErrorSolidHover: fairmintVar(\"color-error-solid-hover\", error[6]),\n colorErrorSolidMuted: fairmintVar(\"color-error-solid-muted\", error[4]),\n colorInfoBg: fairmintVar(\"color-info-bg\", info[0]),\n colorInfoText: fairmintVar(\"color-info-text\", info[7]),\n colorInfoBorder: fairmintVar(\"color-info-border\", info[2]),\n colorInfoSolid: fairmintVar(\"color-info-solid\", info[7]),\n colorInfoSolidHover: fairmintVar(\"color-info-solid-hover\", info[7]),\n /** Decorative watermark color. */\n colorWatermark: fairmintVar(\"color-watermark\", neutral[1]),\n /** Large decorative watermark on error/empty pages. Adapts to color scheme. */\n watermarkColor: fairmintVar(\"color-watermark\", neutral[1]),\n /** Heading font family (Plus Jakarta Sans). */\n fontHeadings: `var(--fairmint-font-headings, ${typography.headingFontFamily})`,\n /** Body font family (Inter). */\n fontBody: `var(--fairmint-font-body, ${typography.fontFamily})`,\n} as const;\n\n/**\n * Returns the MantineProvider props required to use @fairmint/ui components.\n * Use this when you need to instantiate MantineProvider directly (e.g. in\n * Storybook decorators or server-rendering setups) instead of FairmintProvider.\n *\n * @example\n * ```tsx\n * import { MantineProvider } from \"@mantine/core\";\n * import { createFairmintMantineProviderProps } from \"@fairmint/ui\";\n *\n * <MantineProvider {...createFairmintMantineProviderProps()}>\n * <App />\n * </MantineProvider>\n * ```\n */\nexport function createFairmintMantineProviderProps(\n colorScheme: \"light\" | \"dark\" | \"auto\" = \"light\",\n) {\n return {\n theme,\n cssVariablesResolver: fairmintCssVariables,\n defaultColorScheme: colorScheme,\n } as const;\n}\n\n/** Brand colors for gradients and custom styling. */\nexport const brandColors = {\n blue: \"#0A4EFB\",\n purple: \"#9E03FF\",\n indigo: \"#6366F1\",\n gradient: \"linear-gradient(90deg, #0A4EFB 0%, #9E03FF 100%)\",\n} as const;\n\nexport const commonColors = {\n black: \"#000000\",\n white: \"#ffffff\",\n} as const;\n\n/**\n * Card/row shadow used by WalletList and similar card surfaces.\n * Equivalent to neutralColors[900] at ~10% opacity (#111927 → #1119271A).\n */\nexport const shadowColor = {\n card: \"#1119271A\",\n} as const;\n\n/** Indigo scale for direct access outside Mantine's theme system. Keys are numeric literals. */\nexport const indigoColors = {\n 0: \"#EEF2FF\",\n 1: \"#E0E7FF\",\n 2: \"#C7D2FE\",\n 3: \"#A5B4FC\",\n 4: \"#818CF8\",\n 5: \"#6366F1\",\n 6: \"#4F46E5\",\n 7: \"#4338CA\",\n 8: \"#3730A3\",\n 9: \"#312E81\",\n} as const;\n\n/** Neutral scale for direct access outside Mantine's theme system. Keys are numeric literals. */\nexport const neutralColors = {\n 50: \"#F8F9FA\",\n 100: \"#F3F4F6\",\n 200: \"#E5E7EB\",\n 300: \"#D2D6DB\",\n 400: \"#9DA4AE\",\n 500: \"#6C737F\",\n 600: \"#4D5761\",\n 700: \"#2F3746\",\n 800: \"#1C2536\",\n 900: \"#111927\",\n} as const;\n\n/** Dark neutral ramp used by the semantic dark-mode CSS variables. */\nexport const darkNeutralColors = {\n 50: \"#F5F7FA\",\n 100: \"#E2E7ED\",\n 200: \"#B8C2D0\",\n 300: \"#8D99A8\",\n 400: \"#748093\",\n 500: \"#5C687A\",\n 600: \"#2F3746\",\n 700: \"#1F2A39\",\n 800: \"#1B2431\",\n 900: \"#0F141C\",\n} as const;\n\n/** Semantic colors for status-based styling. */\nexport const semanticColors = {\n success: \"#10B981\",\n warning: \"#F79009\",\n error: \"#F04438\",\n info: \"#06AED4\",\n} as const;\n\nexport type { AvatarPaletteColor, FairmintColor } from \"./colors\";\nexport { AVATAR_PALETTE, colors } from \"./colors\";\nexport type { FairmintFontSize } from \"./fontSizes\";\nexport { fontSizes } from \"./fontSizes\";\nexport { DEFAULT_FAIRMINT_LOGO_SRC } from \"./logo\";\nexport type { FairmintResponsiveTypography } from \"./responsiveTypography\";\nexport { responsiveTypography } from \"./responsiveTypography\";\nexport type { FairmintSpacing } from \"./spacing\";\nexport { spacing } from \"./spacing\";\nexport {\n overlayZIndexAboveFairmintOverlays,\n overlayZIndexAboveLegacyShell,\n} from \"./zIndex\";\n"],"names":[],"mappings":"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"}
@@ -1,5 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
3
  const overlayZIndexAboveLegacyShell = 1300;
4
+ const overlayZIndexAboveFairmintOverlays = overlayZIndexAboveLegacyShell + 11;
5
+ exports.overlayZIndexAboveFairmintOverlays = overlayZIndexAboveFairmintOverlays;
4
6
  exports.overlayZIndexAboveLegacyShell = overlayZIndexAboveLegacyShell;
5
7
  //# sourceMappingURL=zIndex.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"zIndex.cjs","sources":["../../src/theme/zIndex.ts"],"sourcesContent":["export const overlayZIndexAboveLegacyShell = 1300;\n"],"names":[],"mappings":";;AAAO,MAAM,gCAAgC;;"}
1
+ {"version":3,"file":"zIndex.cjs","sources":["../../src/theme/zIndex.ts"],"sourcesContent":["export const overlayZIndexAboveLegacyShell = 1300;\n\n/**\n * Above Fairmint's highest default overlay layer. BottomSheet and AccountSheet\n * render at overlayZIndexAboveLegacyShell + 10.\n */\nexport const overlayZIndexAboveFairmintOverlays = overlayZIndexAboveLegacyShell + 11;\n"],"names":[],"mappings":";;AAAO,MAAM,gCAAgC;AAMtC,MAAM,qCAAqC,gCAAgC;;;"}
@@ -1,2 +1,7 @@
1
1
  export declare const overlayZIndexAboveLegacyShell = 1300;
2
+ /**
3
+ * Above Fairmint's highest default overlay layer. BottomSheet and AccountSheet
4
+ * render at overlayZIndexAboveLegacyShell + 10.
5
+ */
6
+ export declare const overlayZIndexAboveFairmintOverlays: number;
2
7
  //# sourceMappingURL=zIndex.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"zIndex.d.ts","sourceRoot":"","sources":["../../src/theme/zIndex.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,6BAA6B,OAAO,CAAC"}
1
+ {"version":3,"file":"zIndex.d.ts","sourceRoot":"","sources":["../../src/theme/zIndex.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,6BAA6B,OAAO,CAAC;AAElD;;;GAGG;AACH,eAAO,MAAM,kCAAkC,QAAqC,CAAC"}
@@ -1,5 +1,7 @@
1
1
  const overlayZIndexAboveLegacyShell = 1300;
2
+ const overlayZIndexAboveFairmintOverlays = overlayZIndexAboveLegacyShell + 11;
2
3
  export {
4
+ overlayZIndexAboveFairmintOverlays,
3
5
  overlayZIndexAboveLegacyShell
4
6
  };
5
7
  //# sourceMappingURL=zIndex.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"zIndex.js","sources":["../../src/theme/zIndex.ts"],"sourcesContent":["export const overlayZIndexAboveLegacyShell = 1300;\n"],"names":[],"mappings":"AAAO,MAAM,gCAAgC;"}
1
+ {"version":3,"file":"zIndex.js","sources":["../../src/theme/zIndex.ts"],"sourcesContent":["export const overlayZIndexAboveLegacyShell = 1300;\n\n/**\n * Above Fairmint's highest default overlay layer. BottomSheet and AccountSheet\n * render at overlayZIndexAboveLegacyShell + 10.\n */\nexport const overlayZIndexAboveFairmintOverlays = overlayZIndexAboveLegacyShell + 11;\n"],"names":[],"mappings":"AAAO,MAAM,gCAAgC;AAMtC,MAAM,qCAAqC,gCAAgC;"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@fairmint/ui",
3
- "version": "0.4.2",
3
+ "version": "0.4.4",
4
4
  "type": "module",
5
5
  "description": "Fairmint design system and UI component library",
6
6
  "license": "UNLICENSED",