@xsolla/xui-core 0.128.0 → 0.129.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +66 -5
- package/index.d.mts +3550 -3073
- package/index.d.ts +3550 -3073
- package/index.js +374 -927
- package/index.js.map +1 -1
- package/index.mjs +372 -926
- package/index.mjs.map +1 -1
- package/package.json +6 -1
package/index.mjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/index.tsx","../src/tokens/xsolla-dark.json","../src/tokens/xsolla-light.json","../src/tokens/pentagram-dark.json","../src/tokens/pentagram-light.json","../src/tokens/ltg-dark.json","../src/tokens/colors.ts","../src/tokens/spacing.ts","../src/tokens/shadows.ts","../src/tokens/fonts.ts","../src/tokens/typography.ts","../src/fonts/FontLoader.tsx","../src/platform.ts","../src/fonts/fontFaces.ts"],"sourcesContent":["import React, { createContext, useContext, useState, useMemo } from \"react\";\nimport { colors } from \"./tokens/colors\";\nimport { spacing, radius } from \"./tokens/spacing\";\nimport { shadow } from \"./tokens/shadows\";\nimport { getFonts } from \"./tokens/fonts\";\nimport {\n ProductContext,\n getTypographyTokens,\n defaultProductContext,\n} from \"./tokens/typography\";\nimport { FontLoader } from \"./fonts/FontLoader\";\n\nexport type ThemeMode =\n | \"dark\"\n | \"light\"\n | \"pentagram-dark\"\n | \"pentagram-light\"\n | \"xsolla-dark\"\n | \"xsolla-light\"\n | \"xsollaDark\"\n | \"xsollaLight\"\n | \"ltg-dark\";\n\nconst DEPRECATED_MODES = new Set([\n \"xsolla-dark\",\n \"xsolla-light\",\n \"xsollaDark\",\n \"xsollaLight\",\n]);\n\nexport const themeConfig = (\n mode: ThemeMode = \"dark\",\n productContext: ProductContext = defaultProductContext\n) => {\n if (DEPRECATED_MODES.has(mode)) {\n console.warn(\n `Theme mode \"${mode}\" is deprecated and will be removed in the next major update. Please migrate to \"dark\" or \"light\".`\n );\n }\n const contextFonts = getFonts(productContext);\n return {\n colors: colors[mode as keyof typeof colors],\n spacing,\n radius,\n shadow,\n fonts: contextFonts,\n typography: {\n primary: contextFonts.body,\n heading: contextFonts.heading,\n body: contextFonts.body,\n },\n typographyTokens: getTypographyTokens(productContext),\n productContext,\n sizing: {\n button: (size: \"xl\" | \"lg\" | \"md\" | \"sm\" | \"xs\") => {\n const configs = {\n xl: {\n height: 64,\n padding: 20,\n fontSize: 20,\n sublabelFontSize: 18,\n spinnerSize: 24,\n iconSize: 32,\n iconContainerSize: 64,\n iconPadding: 20,\n loadingPadding: 40,\n borderRadius: 8,\n labelIconSize: 18,\n labelIconGap: 6,\n },\n lg: {\n height: 56,\n padding: 20,\n fontSize: 18,\n sublabelFontSize: 16,\n spinnerSize: 24,\n iconSize: 32,\n iconContainerSize: 56,\n iconPadding: 20,\n loadingPadding: 36,\n borderRadius: 8,\n labelIconSize: 16,\n labelIconGap: 6,\n },\n md: {\n height: 48,\n padding: 20,\n fontSize: 16,\n sublabelFontSize: 14,\n spinnerSize: 20,\n iconSize: 28,\n iconContainerSize: 48,\n iconPadding: 20,\n loadingPadding: 32,\n borderRadius: 8,\n labelIconSize: 14,\n labelIconGap: 4,\n },\n sm: {\n height: 40,\n padding: 20,\n fontSize: 14,\n sublabelFontSize: 12,\n spinnerSize: 16,\n iconSize: 28,\n iconContainerSize: 40,\n iconPadding: 20,\n loadingPadding: 28,\n borderRadius: 4,\n labelIconSize: 12,\n labelIconGap: 4,\n },\n xs: {\n height: 32,\n padding: 20,\n fontSize: 12,\n sublabelFontSize: 10,\n spinnerSize: 16,\n iconSize: 24,\n iconContainerSize: 32,\n iconPadding: 20,\n loadingPadding: 28,\n borderRadius: 4,\n labelIconSize: 10,\n labelIconGap: 4,\n },\n };\n return configs[size];\n },\n flexButton: (size: \"xl\" | \"lg\" | \"md\" | \"sm\" | \"xs\") => {\n const configs = {\n xl: {\n height: 36,\n padding: 4,\n fontSize: 16,\n spinnerSize: 28,\n iconSize: 20,\n borderRadius: 4,\n },\n lg: {\n height: 32,\n padding: 4,\n fontSize: 14,\n spinnerSize: 24,\n iconSize: 18,\n borderRadius: 4,\n },\n md: {\n height: 28,\n padding: 2,\n fontSize: 14,\n spinnerSize: 24,\n iconSize: 16,\n borderRadius: 2,\n },\n sm: {\n height: 22,\n padding: 2,\n fontSize: 12,\n spinnerSize: 16,\n iconSize: 14,\n borderRadius: 2,\n },\n xs: {\n height: 20,\n padding: 2,\n fontSize: 12,\n spinnerSize: 16,\n iconSize: 12,\n borderRadius: 2,\n },\n };\n return configs[size];\n },\n checkbox: (size: \"xl\" | \"lg\" | \"md\" | \"sm\") => {\n const configs = {\n xl: {\n size: 22,\n fontSize: 18,\n descriptionFontSize: 16,\n labelGap: 12,\n textGap: 4,\n borderRadius: 2,\n },\n lg: {\n size: 20,\n fontSize: 16,\n descriptionFontSize: 14,\n labelGap: 10,\n textGap: 2,\n borderRadius: 2,\n },\n md: {\n size: 18,\n fontSize: 16,\n descriptionFontSize: 14,\n labelGap: 8,\n textGap: 2,\n borderRadius: 2,\n },\n sm: {\n size: 16,\n fontSize: 14,\n descriptionFontSize: 12,\n labelGap: 8,\n textGap: 0,\n borderRadius: 2,\n },\n };\n return configs[size];\n },\n radio: (size: \"xl\" | \"lg\" | \"md\" | \"sm\") => {\n const configs = {\n xl: {\n size: 24,\n fontSize: 20,\n lineHeight: 22,\n descriptionFontSize: 18,\n descriptionLineHeight: 20,\n labelGap: 12,\n textGap: 4,\n borderWidth: 2,\n },\n lg: {\n size: 20,\n fontSize: 18,\n lineHeight: 20,\n descriptionFontSize: 16,\n descriptionLineHeight: 18,\n labelGap: 10,\n textGap: 2,\n borderWidth: 2,\n },\n md: {\n size: 18,\n fontSize: 16,\n lineHeight: 18,\n descriptionFontSize: 14,\n descriptionLineHeight: 16,\n labelGap: 8,\n textGap: 2,\n borderWidth: 1,\n },\n sm: {\n size: 16,\n fontSize: 14,\n lineHeight: 16,\n descriptionFontSize: 12,\n descriptionLineHeight: 14,\n labelGap: 8,\n textGap: 0,\n borderWidth: 1,\n },\n };\n return configs[size];\n },\n input: (size: \"xl\" | \"lg\" | \"md\" | \"sm\" | \"xs\") => {\n const configs = {\n xl: {\n height: 64,\n paddingVertical: 12,\n paddingHorizontal: 12,\n fontSize: 20,\n iconSize: 18,\n radius: 8,\n borderWidth: 2,\n fieldGap: 8,\n lineHeight: 20,\n },\n lg: {\n height: 56,\n paddingVertical: 14,\n paddingHorizontal: 12,\n fontSize: 18,\n iconSize: 18,\n radius: 8,\n borderWidth: 2,\n fieldGap: 6,\n lineHeight: 18,\n },\n md: {\n height: 48,\n paddingVertical: 11,\n paddingHorizontal: 12,\n fontSize: 16,\n iconSize: 18,\n radius: 8,\n borderWidth: 1,\n fieldGap: 4,\n lineHeight: 16,\n },\n sm: {\n height: 40,\n paddingVertical: 7,\n paddingHorizontal: 10,\n fontSize: 14,\n iconSize: 18,\n radius: 4,\n borderWidth: 1,\n fieldGap: 4,\n lineHeight: 14,\n },\n xs: {\n height: 32,\n paddingVertical: 7,\n paddingHorizontal: 10,\n fontSize: 12,\n iconSize: 18,\n radius: 4,\n borderWidth: 1,\n fieldGap: 4,\n lineHeight: 10,\n },\n };\n return configs[size];\n },\n inputPin: (size: \"xl\" | \"lg\" | \"md\" | \"sm\" | \"xs\") => {\n const configs = {\n xl: {\n size: 64,\n gap: 10,\n fontSize: 20,\n radius: 8,\n borderWidth: 1,\n fieldGap: 8,\n },\n lg: {\n size: 56,\n gap: 8,\n fontSize: 18,\n radius: 8,\n borderWidth: 1,\n fieldGap: 6,\n },\n md: {\n size: 48,\n gap: 6,\n fontSize: 16,\n radius: 8,\n borderWidth: 1,\n fieldGap: 4,\n },\n sm: {\n size: 40,\n gap: 4,\n fontSize: 14,\n radius: 4,\n borderWidth: 1,\n fieldGap: 4,\n },\n xs: {\n size: 32,\n gap: 4,\n fontSize: 12,\n radius: 4,\n borderWidth: 1,\n fieldGap: 4,\n },\n };\n return configs[size];\n },\n textarea: (size: \"xl\" | \"lg\" | \"md\" | \"sm\" | \"xs\") => {\n const configs = {\n xl: {\n height: 144,\n padding: spacing.xl,\n fontSize: 20,\n iconSize: 32,\n radius: 8,\n },\n lg: {\n height: 128,\n padding: spacing.l,\n fontSize: 18,\n iconSize: 28,\n radius: 8,\n },\n md: {\n height: 112,\n padding: spacing.m,\n fontSize: 16,\n iconSize: 24,\n radius: 8,\n },\n sm: {\n height: 96,\n padding: spacing.s,\n fontSize: 14,\n iconSize: 20,\n radius: 4,\n },\n xs: {\n height: 80,\n padding: spacing.xs,\n fontSize: 12,\n iconSize: 16,\n radius: 4,\n },\n };\n return configs[size];\n },\n switch: (size: \"xl\" | \"lg\" | \"md\" | \"sm\") => {\n const configs = {\n xl: {\n width: 40,\n height: 22,\n knobSize: 18,\n fontSize: 20,\n lineHeight: 22,\n descriptionFontSize: 18,\n descriptionLineHeight: 20,\n labelGap: 12,\n textGap: 4,\n frameBorderRadius: 4,\n knobBorderRadius: 2,\n },\n lg: {\n width: 36,\n height: 20,\n knobSize: 16,\n fontSize: 18,\n lineHeight: 20,\n descriptionFontSize: 16,\n descriptionLineHeight: 18,\n labelGap: 10,\n textGap: 2,\n frameBorderRadius: 4,\n knobBorderRadius: 2,\n },\n md: {\n width: 32,\n height: 18,\n knobSize: 14,\n fontSize: 16,\n lineHeight: 18,\n descriptionFontSize: 14,\n descriptionLineHeight: 16,\n labelGap: 8,\n textGap: 2,\n frameBorderRadius: 2,\n knobBorderRadius: 2,\n },\n sm: {\n width: 28,\n height: 16,\n knobSize: 12,\n fontSize: 14,\n lineHeight: 16,\n descriptionFontSize: 12,\n descriptionLineHeight: 14,\n labelGap: 8,\n textGap: 0,\n frameBorderRadius: 2,\n knobBorderRadius: 2,\n },\n };\n return configs[size];\n },\n avatar: (size: \"xl\" | \"lg\" | \"md\" | \"sm\" | \"xs\") => {\n // Badge offsets adjusted for XL badge size (20px)\n const configs = {\n xl: {\n size: 64,\n fontSize: 24,\n iconSize: 32,\n badgeSize: 20,\n badgeOffsetCircle: { right: -4, top: -4 },\n badgeOffsetSquare: { right: -8, top: -8 },\n borderRadiusSquare: radius.avatarLarge,\n borderRadiusCircle: radius.avatarCircle,\n },\n lg: {\n size: 56,\n fontSize: 20,\n iconSize: 28,\n badgeSize: 20,\n badgeOffsetCircle: { right: -4, top: -4 },\n badgeOffsetSquare: { right: -8, top: -8 },\n borderRadiusSquare: radius.avatarLarge,\n borderRadiusCircle: radius.avatarCircle,\n },\n md: {\n size: 48,\n fontSize: 18,\n iconSize: 24,\n badgeSize: 20,\n badgeOffsetCircle: { right: -5, top: -5 },\n badgeOffsetSquare: { right: -8, top: -8 },\n borderRadiusSquare: radius.avatarLarge,\n borderRadiusCircle: radius.avatarCircle,\n },\n sm: {\n size: 40,\n fontSize: 16,\n iconSize: 20,\n badgeSize: 20,\n badgeOffsetCircle: { right: -6, top: -6 },\n badgeOffsetSquare: { right: -8, top: -8 },\n borderRadiusSquare: radius.avatarLarge,\n borderRadiusCircle: radius.avatarCircle,\n },\n xs: {\n size: 32,\n fontSize: 14,\n iconSize: 16,\n badgeSize: 20,\n badgeOffsetCircle: { right: -6, top: -6 },\n badgeOffsetSquare: { right: -8, top: -8 },\n borderRadiusSquare: radius.avatarSmall,\n borderRadiusCircle: radius.avatarCircle,\n },\n };\n return configs[size];\n },\n tag: (size: \"xl\" | \"lg\" | \"md\" | \"sm\" | \"xs\") => {\n const configs = {\n xl: {\n height: 48,\n padding: 20,\n fontSize: 20,\n gap: 10,\n iconSize: 24,\n radius: radius.tagLarge,\n },\n lg: {\n height: 40,\n padding: 16,\n fontSize: 18,\n gap: 8,\n iconSize: 24,\n radius: radius.tagLarge,\n },\n md: {\n height: 32,\n padding: 12,\n fontSize: 16,\n gap: 6,\n iconSize: 16,\n radius: radius.tagMedium,\n },\n sm: {\n height: 24,\n padding: 8,\n fontSize: 14,\n gap: 4,\n iconSize: 16,\n radius: radius.tagMedium,\n },\n xs: {\n height: 20,\n padding: 6,\n fontSize: 12,\n gap: 4,\n iconSize: 16,\n radius: radius.tagSmall,\n },\n };\n return configs[size];\n },\n divider: (size: \"lg\" | \"md\" | \"sm\") => {\n const configs = {\n lg: { height: 18, fontSize: 16, lineWeight: 1 },\n md: { height: 16, fontSize: 14, lineWeight: 1 },\n sm: { height: 14, fontSize: 12, lineWeight: 1 },\n };\n return configs[size];\n },\n spinner: (size: \"xl\" | \"lg\" | \"md\" | \"sm\" | \"xs\") => {\n const configs = {\n xl: { size: 96, strokeWidth: 10 },\n lg: { size: 48, strokeWidth: 5 },\n md: { size: 24, strokeWidth: 2 },\n sm: { size: 16, strokeWidth: 2 },\n xs: { size: 8, strokeWidth: 1 },\n };\n return configs[size];\n },\n tabs: (size: \"xl\" | \"lg\" | \"md\" | \"sm\") => {\n const configs = {\n xl: {\n height: 64,\n fontSize: 20,\n iconSize: 18,\n gap: 6,\n paddingHorizontal: 20,\n },\n lg: {\n height: 56,\n fontSize: 18,\n iconSize: 18,\n gap: 6,\n paddingHorizontal: 20,\n },\n md: {\n height: 48,\n fontSize: 16,\n iconSize: 18,\n gap: 6,\n paddingHorizontal: 20,\n },\n sm: {\n height: 40,\n fontSize: 14,\n iconSize: 18,\n gap: 6,\n paddingHorizontal: 20,\n },\n };\n return configs[size];\n },\n segmented: (size: \"xl\" | \"lg\" | \"md\" | \"sm\") => {\n // Sizing based on Figma: node-id=5867-44879\n const configs = {\n xl: {\n height: 64,\n containerPadding: 4,\n containerRadius: 8,\n itemHeight: 56,\n itemPaddingHorizontal: 20,\n itemPaddingVertical: 10,\n itemRadius: 6,\n fontSize: 20,\n lineHeight: 22,\n iconSize: 24,\n gap: 8,\n },\n lg: {\n height: 56,\n containerPadding: 4,\n containerRadius: 8,\n itemHeight: 48,\n itemPaddingHorizontal: 20,\n itemPaddingVertical: 10,\n itemRadius: 6,\n fontSize: 18,\n lineHeight: 20,\n iconSize: 24,\n gap: 8,\n },\n md: {\n height: 48,\n containerPadding: 4,\n containerRadius: 8,\n itemHeight: 40,\n itemPaddingHorizontal: 16,\n itemPaddingVertical: 8,\n itemRadius: 6,\n fontSize: 16,\n lineHeight: 18,\n iconSize: 24,\n gap: 6,\n },\n sm: {\n height: 40,\n containerPadding: 4,\n containerRadius: 4,\n itemHeight: 32,\n itemPaddingHorizontal: 12,\n itemPaddingVertical: 6,\n itemRadius: 2,\n fontSize: 14,\n lineHeight: 16,\n iconSize: 20,\n gap: 4,\n },\n };\n return configs[size];\n },\n tabsSegmented: (size: \"xl\" | \"lg\" | \"md\" | \"sm\") => {\n // Sizing based on Figma: node-id=5986-3922\n const configs = {\n xl: {\n height: 64,\n containerPadding: 4,\n containerRadius: 4,\n itemPaddingHorizontal: 16,\n itemPaddingVertical: 18,\n itemRadius: 2,\n fontSize: 20,\n lineHeight: 22,\n iconSize: 24,\n gap: 8,\n },\n lg: {\n height: 56,\n containerPadding: 4,\n containerRadius: 4,\n itemPaddingHorizontal: 16,\n itemPaddingVertical: 14,\n itemRadius: 2,\n fontSize: 18,\n lineHeight: 20,\n iconSize: 24,\n gap: 8,\n },\n md: {\n height: 48,\n containerPadding: 4,\n containerRadius: 4,\n itemPaddingHorizontal: 12,\n itemPaddingVertical: 11,\n itemRadius: 2,\n fontSize: 16,\n lineHeight: 18,\n iconSize: 24,\n gap: 6,\n },\n sm: {\n height: 40,\n containerPadding: 3,\n containerRadius: 2,\n itemPaddingHorizontal: 12,\n itemPaddingVertical: 8,\n itemRadius: 2,\n fontSize: 14,\n lineHeight: 16,\n iconSize: 20,\n gap: 6,\n },\n };\n return configs[size];\n },\n checkboxTagGroup: (size: \"xl\" | \"lg\" | \"md\" | \"sm\") => {\n const configs = {\n xl: {\n height: 64,\n paddingHorizontal: 16,\n paddingVertical: 21,\n fontSize: 20,\n lineHeight: 22,\n gap: 8,\n borderRadius: 4,\n },\n lg: {\n height: 56,\n paddingHorizontal: 16,\n paddingVertical: 18,\n fontSize: 18,\n lineHeight: 20,\n gap: 8,\n borderRadius: 4,\n },\n md: {\n height: 48,\n paddingHorizontal: 12,\n paddingVertical: 15,\n fontSize: 16,\n lineHeight: 18,\n gap: 8,\n borderRadius: 2,\n },\n sm: {\n height: 40,\n paddingHorizontal: 12,\n paddingVertical: 11,\n fontSize: 14,\n lineHeight: 16,\n gap: 4,\n borderRadius: 2,\n },\n };\n return configs[size];\n },\n badge: (size: \"xl\" | \"lg\" | \"md\" | \"sm\" | \"xs\") => {\n const configs = {\n xl: {\n size: 20,\n fontSize: 12,\n lineHeight: 14,\n iconSize: 12,\n padding: 4,\n },\n lg: {\n size: 16,\n fontSize: 10,\n lineHeight: 10,\n iconSize: 10,\n padding: 4,\n },\n md: {\n size: 12,\n fontSize: 10,\n lineHeight: 10,\n iconSize: 8,\n padding: 4,\n },\n sm: { size: 8, fontSize: 8, lineHeight: 8, iconSize: 6, padding: 0 },\n xs: { size: 6, fontSize: 6, lineHeight: 6, iconSize: 4, padding: 0 },\n };\n return configs[size];\n },\n notification: (type: \"toast\" | \"inline\") => {\n const configs = {\n toast: {\n width: 400,\n paddingHorizontal: 20,\n paddingVertical: 16,\n gap: 16,\n titleSize: 18,\n messageSize: 14,\n iconSize: 20,\n iconWrapperSize: 32,\n radius: radius.card,\n },\n inline: {\n width: \"100%\",\n paddingHorizontal: 20,\n paddingVertical: 16,\n gap: 28,\n titleSize: 18,\n messageSize: 14,\n iconSize: 20,\n iconWrapperSize: 32,\n radius: radius.card,\n },\n };\n return configs[type];\n },\n notificationPanel: () => ({\n minHeight: 66,\n iconFrameWidth: 54,\n iconSize: 24,\n borderRadius: 8,\n bodyPaddingHorizontal: 16,\n bodyPaddingVertical: 12,\n textGap: 2,\n contentGap: 24,\n buttonsGap: 8,\n closeButtonSize: 32,\n titleFontSize: 16,\n titleLineHeight: 20,\n descriptionFontSize: 14,\n descriptionLineHeight: 20,\n }),\n progress: (size: \"xl\" | \"lg\" | \"md\" | \"sm\" | \"xs\" | \"xxs\") => {\n const configs = {\n xl: { height: 10, labelSize: 16, helperSize: 14, gap: 10 },\n lg: { height: 8, labelSize: 14, helperSize: 12, gap: 8 },\n md: { height: 6, labelSize: 12, helperSize: 12, gap: 6 },\n sm: { height: 4, labelSize: 12, helperSize: 12, gap: 4 },\n xs: { height: 2, labelSize: 10, helperSize: 10, gap: 2 },\n xxs: { height: 2, labelSize: 10, helperSize: 10, gap: 2 },\n };\n return configs[size];\n },\n supportingText: (size: \"xl\" | \"lg\" | \"md\" | \"sm\" | \"xs\") => {\n const configs = {\n xl: { fontSize: 18, lineHeight: \"20px\", gap: 6, iconSize: 18 },\n lg: { fontSize: 16, lineHeight: \"18px\", gap: 6, iconSize: 18 },\n md: { fontSize: 14, lineHeight: \"16px\", gap: 6, iconSize: 18 },\n sm: { fontSize: 12, lineHeight: \"14px\", gap: 4, iconSize: 16 },\n xs: { fontSize: 10, lineHeight: \"10px\", gap: 4, iconSize: 16 },\n };\n return configs[size];\n },\n iconWrapper: (size: \"xl\" | \"lg\" | \"md\" | \"sm\" | \"xs\" | \"xxs\") => {\n const configs = {\n xl: { size: 56, iconSize: 32, fontSize: 24 },\n lg: { size: 48, iconSize: 28, fontSize: 20 },\n md: { size: 40, iconSize: 24, fontSize: 18 },\n sm: { size: 32, iconSize: 20, fontSize: 16 },\n xs: { size: 24, iconSize: 16, fontSize: 14 },\n xxs: { size: 18, iconSize: 12, fontSize: 12 },\n };\n return configs[size];\n },\n stepper: (size: \"md\" | \"sm\") => {\n const configs = {\n md: {\n iconSize: 32,\n titleSize: 16,\n descSize: 14,\n gap: 12,\n currentTitleSize: 20,\n currentDescSize: 14,\n currentPadding: 24,\n tailSize: 5,\n },\n sm: {\n iconSize: 24,\n titleSize: 14,\n descSize: 12,\n gap: 8,\n currentTitleSize: 16,\n currentDescSize: 12,\n currentPadding: 20,\n tailSize: 3,\n },\n };\n return configs[size];\n },\n contextMenu: (size: \"xl\" | \"lg\" | \"md\" | \"sm\") => {\n // Sizing values from Figma design: node-id=5867-47111\n const configs = {\n xl: {\n paddingVertical: 8,\n itemPaddingHorizontal: 16,\n itemPaddingVertical: 18,\n fontSize: 20,\n lineHeight: 22,\n descriptionFontSize: 18,\n iconSize: 18,\n gap: 12,\n minWidth: 276,\n // Search sizing from Figma\n searchPaddingHorizontal: 16,\n searchPaddingVertical: 18,\n searchGap: 18,\n searchFontSize: 20,\n searchLineHeight: 22,\n searchIconSize: 18,\n },\n lg: {\n paddingVertical: 8,\n itemPaddingHorizontal: 14,\n itemPaddingVertical: 14,\n fontSize: 18,\n lineHeight: 20,\n descriptionFontSize: 16,\n iconSize: 18,\n gap: 10,\n minWidth: 220,\n // Search sizing from Figma\n searchPaddingHorizontal: 14,\n searchPaddingVertical: 14,\n searchGap: 14,\n searchFontSize: 18,\n searchLineHeight: 20,\n searchIconSize: 18,\n },\n md: {\n paddingVertical: 8,\n itemPaddingHorizontal: 12,\n itemPaddingVertical: 11,\n fontSize: 16,\n lineHeight: 18,\n descriptionFontSize: 14,\n iconSize: 18,\n gap: 8,\n minWidth: 172,\n // Search sizing from Figma\n searchPaddingHorizontal: 12,\n searchPaddingVertical: 11,\n searchGap: 10,\n searchFontSize: 16,\n searchLineHeight: 18,\n searchIconSize: 18,\n },\n sm: {\n paddingVertical: 8,\n itemPaddingHorizontal: 10,\n itemPaddingVertical: 8,\n fontSize: 14,\n lineHeight: 16,\n descriptionFontSize: 12,\n iconSize: 18,\n gap: 8,\n minWidth: 132,\n // Search sizing from Figma\n searchPaddingHorizontal: 10,\n searchPaddingVertical: 7,\n searchGap: 6,\n searchFontSize: 14,\n searchLineHeight: 16,\n searchIconSize: 18,\n },\n };\n return configs[size];\n },\n modal: () => {\n // Sizing values from Figma design: node-id=10457-7055\n return {\n borderRadius: 12,\n headerPadding: 8,\n contentPadding: 40,\n headerButtonSize: \"xl\" as const,\n headerGap: 8,\n shadow:\n \"0px 8px 12px 6px rgba(7, 7, 8, 0.1), 0px 4px 4px rgba(7, 7, 8, 0.2)\",\n maxWidth: 680,\n overlayColor: \"rgba(0, 0, 0, 0.5)\",\n portalPadding: 20,\n zIndex: 1000,\n };\n },\n toast: () => {\n // Sizing values from Figma design: node-id=3044-8872\n return {\n minHeight: 64,\n paddingHorizontal: 12,\n paddingVertical: 8,\n borderRadius: 4,\n gap: 12,\n iconSize: 24,\n closeButtonSize: 24,\n closeIconSize: 20,\n fontSize: 16,\n lineHeight: 20,\n maxWidth: 400,\n containerPadding: 12,\n groupGap: 4,\n };\n },\n toggleButtonGroup: (size: \"xl\" | \"lg\" | \"md\" | \"sm\" | \"xs\") => {\n // Sizing values from Figma design: node-id=6409-34323\n const configs = {\n xl: {\n height: 64,\n paddingHorizontal: 18,\n fontSize: 20,\n lineHeight: 22,\n iconSize: 24,\n gap: 6,\n borderRadius: 8,\n itemGap: 8,\n },\n lg: {\n height: 56,\n paddingHorizontal: 16,\n fontSize: 18,\n lineHeight: 20,\n iconSize: 24,\n gap: 4,\n borderRadius: 8,\n itemGap: 8,\n },\n md: {\n height: 48,\n paddingHorizontal: 16,\n fontSize: 16,\n lineHeight: 18,\n iconSize: 24,\n gap: 4,\n borderRadius: 8,\n itemGap: 8,\n },\n sm: {\n height: 40,\n paddingHorizontal: 12,\n fontSize: 14,\n lineHeight: 16,\n iconSize: 24,\n gap: 2,\n borderRadius: 4,\n itemGap: 4,\n },\n xs: {\n height: 32,\n paddingHorizontal: 12,\n fontSize: 14,\n lineHeight: 16,\n iconSize: 24,\n gap: 2,\n borderRadius: 4,\n itemGap: 4,\n },\n };\n return configs[size];\n },\n },\n };\n};\n\ninterface DesignSystemContextType {\n mode: ThemeMode;\n setMode: (mode: ThemeMode) => void;\n productContext: ProductContext;\n setProductContext: (productContext: ProductContext) => void;\n theme: ReturnType<typeof themeConfig>;\n}\n\nconst DesignSystemContext = createContext<DesignSystemContextType | undefined>(\n undefined\n);\n\nexport const XUIProvider: React.FC<{\n children: React.ReactNode;\n initialMode?: ThemeMode;\n initialProductContext?: ProductContext;\n /** Use `initialProductContext` instead. */\n productContext?: never;\n /** Load toolkit fonts from the Xsolla CDN. Defaults to true on web, no-ops on native. */\n loadFonts?: boolean;\n}> = ({\n children,\n initialMode = \"dark\",\n initialProductContext = defaultProductContext,\n loadFonts = true,\n}) => {\n const [mode, setMode] = useState<ThemeMode>(initialMode);\n const [productContext, setProductContext] = useState<ProductContext>(\n initialProductContext\n );\n\n const value = useMemo(\n () => ({\n mode,\n setMode,\n productContext,\n setProductContext,\n theme: themeConfig(mode, productContext),\n }),\n [mode, productContext]\n );\n\n return (\n <DesignSystemContext.Provider value={value}>\n {loadFonts && <FontLoader />}\n {children}\n </DesignSystemContext.Provider>\n );\n};\n\nexport const useDesignSystem = () => {\n const context = useContext(DesignSystemContext);\n if (!context) {\n // Return default theme if provider is missing\n return {\n mode: \"dark\" as ThemeMode,\n setMode: () => {},\n productContext: defaultProductContext,\n setProductContext: () => {},\n theme: themeConfig(\"dark\", defaultProductContext),\n };\n }\n return context;\n};\n\nlet idCounter = 0;\n\nconst hasReactUseId = typeof React.useId === \"function\";\n\nconst useIdFallback = (): string => {\n const [id] = useState(() => `xui-${++idCounter}`);\n return id;\n};\n\nexport const useId: () => string = hasReactUseId ? React.useId : useIdFallback;\n\n/**\n * Context for the current modal's ID.\n * Used by portal-based components (tooltips, dropdowns) to mark their content\n * as belonging to a modal, preventing click-outside from closing the modal.\n */\nexport const ModalIdContext = createContext<string | null>(null);\n\n/**\n * Returns the current modal's ID for use with portal content.\n * Apply as `data-modal-id={modalId}` to portal containers.\n * Returns null if not inside a modal.\n */\nexport const useModalId = (): string | null => useContext(ModalIdContext);\n\nexport * from \"./tokens/colors\";\nexport * from \"./tokens/spacing\";\nexport * from \"./tokens/shadows\";\nexport * from \"./tokens/fonts\";\nexport * from \"./tokens/typography\";\nexport * from \"./platform\";\nexport { FontLoader } from \"./fonts/FontLoader\";\nexport { fontFacesCSS } from \"./fonts/fontFaces\";\nexport type { ProductContext };\n","{\n \"background\": {\n \"primary\": \"#1b2628\",\n \"secondary\": \"#141d1f\",\n \"inverse\": \"#ffffff\",\n \"brand\": {\n \"primary\": \"#80eaff\",\n \"secondary\": \"#0b3841\"\n },\n \"brandExtra\": {\n \"primary\": \"#cef655\",\n \"secondary\": \"#566c13\"\n },\n \"success\": {\n \"primary\": \"#95ff80\",\n \"secondary\": \"#14410b\"\n },\n \"warning\": {\n \"primary\": \"#ffc380\",\n \"secondary\": \"#6c4313\"\n },\n \"alert\": {\n \"primary\": \"#e84f30\",\n \"secondary\": \"#6c2213\"\n },\n \"neutral\": {\n \"primary\": \"#99aeb2\",\n \"secondary\": \"#34474b\"\n }\n },\n \"content\": {\n \"primary\": \"#ffffff\",\n \"secondary\": \"rgba(255, 255, 255, 0.72)\",\n \"tertiary\": \"rgba(255, 255, 255, 0.58)\",\n \"inverse\": \"#000000\",\n \"brand\": {\n \"primary\": \"#55dcf6\",\n \"secondary\": \"#31cae8\"\n },\n \"brandExtra\": {\n \"primary\": \"#cef655\",\n \"secondary\": \"#9bc323\"\n },\n \"success\": {\n \"primary\": \"#70f655\",\n \"secondary\": \"#3dc322\"\n },\n \"warning\": {\n \"primary\": \"#f6ab55\",\n \"secondary\": \"#c37822\"\n },\n \"alert\": {\n \"primary\": \"#f67055\",\n \"secondary\": \"#e84f30\"\n },\n \"neutral\": {\n \"primary\": \"#99aeb2\",\n \"secondary\": \"#607f85\"\n },\n \"on\": {\n \"brand\": \"#000000\",\n \"brandExtra\": \"#000000\",\n \"success\": \"#000000\",\n \"warning\": \"#000000\",\n \"alert\": \"#ffffff\",\n \"neutral\": \"#ffffff\"\n },\n \"static\": {\n \"light\": \"#ffffff\",\n \"dark\": \"#000000\"\n }\n },\n \"border\": {\n \"primary\": \"#ffffff\",\n \"secondary\": \"rgba(255, 255, 255, 0.16)\",\n \"inverse\": \"rgba(0, 0, 0, 0.15)\",\n \"brand\": \"#55dcf6\",\n \"brandExtra\": \"#cef655\",\n \"success\": \"#70f655\",\n \"warning\": \"#f6ab55\",\n \"alert\": \"#f67055\",\n \"neutral\": \"#9580ff\"\n },\n \"overlay\": {\n \"mono\": \"rgba(255, 255, 255, 0.1)\",\n \"brand\": \"rgba(128, 234, 255, 0.2)\",\n \"brandExtra\": \"rgba(206, 246, 85, 0.3)\",\n \"success\": \"rgba(149, 255, 128, 0.2)\",\n \"warning\": \"rgba(255, 195, 128, 0.24)\",\n \"alert\": \"rgba(232, 79, 48, 0.32)\",\n \"neutral\": \"rgba(123, 152, 157, 0.28)\"\n },\n \"layer\": {\n \"scrim\": \"rgba(0, 0, 0, 0.5)\",\n \"float\": \"#1b2628\"\n },\n \"control\": {\n \"brand\": {\n \"primary\": {\n \"bg\": \"#55dcf6\",\n \"bgHover\": \"#80eaff\",\n \"bgPress\": \"#31cae8\",\n \"bgDisable\": \"#666666\",\n \"border\": \"rgba(255, 255, 255, 0)\",\n \"borderHover\": \"rgba(255, 255, 255, 0)\",\n \"borderPress\": \"rgba(255, 255, 255, 0)\",\n \"borderDisable\": \"rgba(255, 255, 255, 0)\"\n },\n \"secondary\": {\n \"bg\": \"rgba(128, 234, 255, 0.4)\",\n \"bgHover\": \"rgba(178, 242, 255, 0.4)\",\n \"bgPress\": \"rgba(85, 220, 246, 0.4)\",\n \"border\": \"rgba(255, 255, 255, 0)\",\n \"borderHover\": \"rgba(255, 255, 255, 0)\",\n \"borderPress\": \"rgba(255, 255, 255, 0)\"\n },\n \"tertiary\": {\n \"bg\": \"rgba(255, 255, 255, 0)\",\n \"bgHover\": \"rgba(178, 242, 255, 0.07)\",\n \"bgPress\": \"rgba(85, 220, 246, 0.12)\",\n \"border\": \"rgba(255, 255, 255, 0)\",\n \"borderHover\": \"rgba(255, 255, 255, 0)\",\n \"borderPress\": \"rgba(255, 255, 255, 0)\"\n },\n \"ghost\": {\n \"bg\": \"rgba(255, 255, 255, 0)\",\n \"bgHover\": \"rgba(85, 220, 246, 0.04)\",\n \"bgPress\": \"rgba(85, 220, 246, 0.08)\",\n \"border\": \"rgba(85, 220, 246, 0.16)\",\n \"borderHover\": \"rgba(85, 220, 246, 0.24)\",\n \"borderPress\": \"rgba(85, 220, 246, 0.16)\"\n },\n \"text\": {\n \"primary\": \"#000000\",\n \"secondary\": \"#ffffff\",\n \"tertiary\": \"#55dcf6\",\n \"ghost\": \"#55dcf6\",\n \"disable\": \"#b3b3b3\"\n }\n },\n \"mono\": {\n \"primary\": {\n \"bg\": \"#ffffff\",\n \"bgHover\": \"#e8eced\",\n \"bgPress\": \"#f4f5f6\",\n \"border\": \"rgba(255, 255, 255, 0)\",\n \"borderHover\": \"rgba(255, 255, 255, 0)\",\n \"borderPress\": \"rgba(255, 255, 255, 0)\"\n },\n \"secondary\": {\n \"bg\": \"rgba(255, 255, 255, 0.4)\",\n \"bgHover\": \"rgba(255, 255, 255, 0.34)\",\n \"bgPress\": \"rgba(255, 255, 255, 0.44)\",\n \"border\": \"rgba(255, 255, 255, 0)\",\n \"borderHover\": \"rgba(255, 255, 255, 0)\",\n \"borderPress\": \"rgba(255, 255, 255, 0)\"\n },\n \"tertiary\": {\n \"bg\": \"rgba(255, 255, 255, 0)\",\n \"bgHover\": \"rgba(255, 255, 255, 0.07)\",\n \"bgPress\": \"rgba(255, 255, 255, 0.12)\",\n \"border\": \"rgba(255, 255, 255, 0)\",\n \"borderHover\": \"rgba(255, 255, 255, 0)\",\n \"borderPress\": \"rgba(255, 255, 255, 0)\"\n },\n \"ghost\": {\n \"bg\": \"rgba(255, 255, 255, 0)\",\n \"bgHover\": \"rgba(255, 255, 255, 0.04)\",\n \"bgPress\": \"rgba(255, 255, 255, 0.08)\",\n \"border\": \"rgba(255, 255, 255, 0.16)\",\n \"borderHover\": \"rgba(255, 255, 255, 0.24)\",\n \"borderPress\": \"rgba(255, 255, 255, 0.16)\"\n },\n \"text\": {\n \"primary\": \"#000000\",\n \"secondary\": \"#ffffff\",\n \"tertiary\": \"#ffffff\",\n \"ghost\": \"#ffffff\"\n }\n },\n \"brandExtra\": {\n \"primary\": {\n \"bg\": \"#cef655\",\n \"bgHover\": \"#bae831\",\n \"bgPress\": \"#dfff80\",\n \"border\": \"rgba(255, 255, 255, 0)\",\n \"borderHover\": \"rgba(255, 255, 255, 0)\",\n \"borderPress\": \"rgba(255, 255, 255, 0)\"\n },\n \"secondary\": {\n \"bg\": \"rgba(186, 232, 49, 0.4)\",\n \"bgHover\": \"rgba(206, 246, 85, 0.4)\",\n \"bgPress\": \"rgba(186, 232, 49, 0.4)\",\n \"border\": \"rgba(255, 255, 255, 0)\",\n \"borderHover\": \"rgba(255, 255, 255, 0)\",\n \"borderPress\": \"rgba(255, 255, 255, 0)\"\n },\n \"tertiary\": {\n \"bg\": \"rgba(186, 232, 49, 0)\",\n \"bgHover\": \"rgba(206, 246, 85, 0.07)\",\n \"bgPress\": \"rgba(186, 232, 49, 0.12)\",\n \"border\": \"rgba(255, 255, 255, 0)\",\n \"borderHover\": \"rgba(255, 255, 255, 0)\",\n \"borderPress\": \"rgba(255, 255, 255, 0)\"\n },\n \"ghost\": {\n \"bg\": \"rgba(255, 255, 255, 0)\",\n \"bgHover\": \"rgba(206, 246, 85, 0.04)\",\n \"bgPress\": \"rgba(206, 246, 85, 0.08)\",\n \"border\": \"rgba(206, 246, 85, 0.16)\",\n \"borderHover\": \"rgba(206, 246, 85, 0.24)\",\n \"borderPress\": \"rgba(206, 246, 85, 0.16)\"\n },\n \"text\": {\n \"primary\": \"#000000\",\n \"secondary\": \"#ffffff\",\n \"tertiary\": \"#cef655\",\n \"ghost\": \"#cef655\"\n }\n },\n \"alert\": {\n \"bg\": \"#6c2213\",\n \"border\": \"#f67055\",\n \"primary\": {\n \"bg\": \"#f67055\",\n \"bgHover\": \"#ff9580\",\n \"bgPress\": \"#e84f30\",\n \"border\": \"rgba(255, 255, 255, 0)\",\n \"borderHover\": \"rgba(255, 255, 255, 0)\",\n \"borderPress\": \"rgba(255, 255, 255, 0)\"\n },\n \"secondary\": {\n \"bg\": \"rgba(232, 79, 48, 0.4)\",\n \"bgHover\": \"rgba(246, 112, 85, 0.4)\",\n \"bgPress\": \"rgba(195, 61, 34, 0.4)\",\n \"border\": \"rgba(255, 255, 255, 0)\",\n \"borderHover\": \"rgba(255, 255, 255, 0)\",\n \"borderPress\": \"rgba(255, 255, 255, 0)\"\n },\n \"tertiary\": {\n \"bg\": \"rgba(255, 43, 0, 0)\",\n \"bgHover\": \"rgba(255, 170, 153, 0.07)\",\n \"bgPress\": \"rgba(255, 85, 51, 0.12)\",\n \"border\": \"rgba(255, 255, 255, 0)\",\n \"borderHover\": \"rgba(255, 255, 255, 0)\",\n \"borderPress\": \"rgba(255, 255, 255, 0)\"\n },\n \"ghost\": {\n \"bg\": \"rgba(255, 255, 255, 0)\",\n \"bgHover\": \"rgba(246, 112, 85, 0.04)\",\n \"bgPress\": \"rgba(246, 112, 85, 0.08)\",\n \"border\": \"rgba(246, 112, 85, 0.16)\",\n \"borderHover\": \"rgba(246, 112, 85, 0.24)\",\n \"borderPress\": \"rgba(246, 112, 85, 0.16)\"\n },\n \"text\": {\n \"primary\": \"#ffffff\",\n \"secondary\": \"#ffffff\",\n \"tertiary\": \"#f67055\",\n \"ghost\": \"#f67055\"\n }\n },\n \"appButton\": {\n \"bg\": \"#34474b\",\n \"bgHover\": \"#3d5256\",\n \"bgPress\": \"#2b3b3e\",\n \"border\": \"rgba(255, 255, 255, 0.12)\",\n \"borderHover\": \"rgba(255, 255, 255, 0.18)\",\n \"borderPress\": \"rgba(255, 255, 255, 0.12)\",\n \"text\": \"#b7c5c8\",\n \"textDisable\": \"#b3b3b3\"\n },\n \"input\": {\n \"bg\": \"rgba(255, 255, 255, 0.12)\",\n \"bgHover\": \"rgba(255, 255, 255, 0.15)\",\n \"bgDisable\": \"rgba(255, 255, 255, 0.25)\",\n \"border\": \"rgba(255, 255, 255, 0.1)\",\n \"borderHover\": \"rgba(255, 255, 255, 0.15)\",\n \"borderDisable\": \"rgba(255, 255, 255, 0)\",\n \"text\": \"#ffffff\",\n \"placeholder\": \"rgba(255, 255, 255, 0.56)\",\n \"textDisable\": \"rgba(255, 255, 255, 0.36)\"\n },\n \"focus\": {\n \"bg\": \"#1b2628\",\n \"border\": \"#55dcf6\"\n },\n \"check\": {\n \"bg\": \"#ffffff\",\n \"bgHover\": \"#e8eced\",\n \"bgDisable\": \"rgba(255, 255, 255, 0.2)\",\n \"border\": \"rgba(255, 255, 255, 0)\",\n \"borderHover\": \"rgba(255, 255, 255, 0)\",\n \"borderDisable\": \"rgba(255, 255, 255, 0)\",\n \"icon\": \"#000000\"\n },\n \"faint\": {\n \"bg\": \"rgba(255, 255, 255, 0.15)\",\n \"bgHover\": \"rgba(255, 255, 255, 0.2)\",\n \"border\": \"rgba(255, 255, 255, 0)\",\n \"borderHover\": \"rgba(255, 255, 255, 0.16)\"\n },\n \"slider\": {\n \"bg\": \"#ffffff\",\n \"bgHover\": \"#ffffff\",\n \"bgDisable\": \"rgba(52, 71, 75, 0.85)\"\n },\n \"switch\": {\n \"bg\": \"rgba(255, 255, 255, 0.1)\",\n \"bgHover\": \"rgba(255, 255, 255, 0.15)\",\n \"bgDisable\": \"rgba(255, 255, 255, 0.2)\",\n \"border\": \"#ffffff\",\n \"borderHover\": \"#ffffff\",\n \"borderDisable\": \"rgba(255, 255, 255, 0)\"\n },\n \"knob\": {\n \"bg\": \"#ffffff\",\n \"bgHover\": \"#e8eced\",\n \"bgInactive\": \"#ffffff\"\n },\n \"text\": {\n \"primary\": \"#ffffff\",\n \"disable\": \"rgba(255, 255, 255, 0.4)\"\n },\n \"link\": {\n \"primary\": \"#55dcf6\",\n \"primaryHover\": \"#80eaff\",\n \"secondary\": \"#cef655\",\n \"secondaryHover\": \"#dfff80\"\n },\n \"segmented\": {\n \"bg\": \"rgba(255, 255, 255, 0.1)\",\n \"bgHover\": \"rgba(255, 255, 255, 0.1)\",\n \"bgActive\": \"rgba(255, 255, 255, 0.1)\",\n \"border\": \"rgba(255, 255, 255, 0.1)\",\n \"borderHover\": \"rgba(255, 255, 255, 0.1)\",\n \"borderActive\": \"rgba(255, 255, 255, 0.1)\",\n \"text\": \"#ffffff\",\n \"textDisable\": \"#ffffff\"\n },\n \"toggleButton\": {\n \"bg\": \"rgba(255, 255, 255, 0.1)\",\n \"bgHover\": \"rgba(255, 255, 255, 0.15)\",\n \"bgActive\": \"#000000\",\n \"bgDisable\": \"rgba(255, 255, 255, 0.06)\",\n \"border\": \"rgba(255, 255, 255, 0.16)\",\n \"borderHover\": \"rgba(255, 255, 255, 0.16)\",\n \"borderActive\": \"rgba(255, 255, 255, 0)\",\n \"borderDisable\": \"rgba(255, 255, 255, 0.16)\",\n \"text\": \"#e8eced\",\n \"textActive\": \"#ffffff\",\n \"textDisable\": \"rgba(255, 255, 255, 0.4)\"\n }\n }\n}\n","{\n \"background\": {\n \"primary\": \"#ffffff\",\n \"secondary\": \"#f3f3f2\",\n \"inverse\": \"#000000\",\n \"brand\": {\n \"primary\": \"#80eaff\",\n \"secondary\": \"#b2f2ff\"\n },\n \"brandExtra\": {\n \"primary\": \"#cef655\",\n \"secondary\": \"#dfff80\"\n },\n \"success\": {\n \"primary\": \"#95ff80\",\n \"secondary\": \"#bfffb2\"\n },\n \"warning\": {\n \"primary\": \"#ffc380\",\n \"secondary\": \"#ffdbb2\"\n },\n \"alert\": {\n \"primary\": \"#e84f30\",\n \"secondary\": \"#ffbfb2\"\n },\n \"neutral\": {\n \"primary\": \"#99aeb2\",\n \"secondary\": \"#d7dee0\"\n }\n },\n \"content\": {\n \"primary\": \"#000000\",\n \"secondary\": \"rgba(0, 0, 0, 0.75)\",\n \"tertiary\": \"rgba(0, 0, 0, 0.6)\",\n \"inverse\": \"#ffffff\",\n \"brand\": {\n \"primary\": \"#22a8c3\",\n \"secondary\": \"#31cae8\"\n },\n \"brandExtra\": {\n \"primary\": \"#79971b\",\n \"secondary\": \"#9bc323\"\n },\n \"success\": {\n \"primary\": \"#30981b\",\n \"secondary\": \"#3dc322\"\n },\n \"warning\": {\n \"primary\": \"#c37822\",\n \"secondary\": \"#f6ab55\"\n },\n \"alert\": {\n \"primary\": \"#e84f30\",\n \"secondary\": \"#f67055\"\n },\n \"neutral\": {\n \"primary\": \"#34474b\",\n \"secondary\": \"#607f85\"\n },\n \"on\": {\n \"brand\": \"#000000\",\n \"brandExtra\": \"#000000\",\n \"success\": \"#000000\",\n \"warning\": \"#000000\",\n \"alert\": \"#ffffff\",\n \"neutral\": \"#ffffff\"\n },\n \"static\": {\n \"light\": \"#ffffff\",\n \"dark\": \"#000000\"\n }\n },\n \"border\": {\n \"primary\": \"#000000\",\n \"secondary\": \"rgba(0, 0, 0, 0.1)\",\n \"inverse\": \"rgba(255, 255, 255, 0.15)\",\n \"brand\": \"#31cae8\",\n \"brandExtra\": \"#bae831\",\n \"success\": \"#30981b\",\n \"warning\": \"#e89331\",\n \"alert\": \"#e84f30\",\n \"neutral\": \"#3d22c3\"\n },\n \"overlay\": {\n \"mono\": \"rgba(0, 0, 0, 0.05)\",\n \"brand\": \"rgba(128, 234, 255, 0.3)\",\n \"brandExtra\": \"rgba(206, 246, 85, 0.3)\",\n \"success\": \"rgba(149, 255, 128, 0.24)\",\n \"warning\": \"rgba(255, 195, 128, 0.28)\",\n \"alert\": \"rgba(232, 79, 48, 0.24)\",\n \"neutral\": \"rgba(96, 127, 133, 0.24)\"\n },\n \"layer\": {\n \"scrim\": \"rgba(0, 0, 0, 0.75)\",\n \"float\": \"#ffffff\"\n },\n \"control\": {\n \"brand\": {\n \"primary\": {\n \"bg\": \"#55dcf6\",\n \"bgHover\": \"#80eaff\",\n \"bgPress\": \"#31cae8\",\n \"bgDisable\": \"#cccccc\",\n \"border\": \"rgba(255, 255, 255, 0)\",\n \"borderHover\": \"rgba(255, 255, 255, 0)\",\n \"borderPress\": \"rgba(255, 255, 255, 0)\",\n \"borderDisable\": \"rgba(255, 255, 255, 0)\"\n },\n \"secondary\": {\n \"bg\": \"rgba(128, 234, 255, 0.4)\",\n \"bgHover\": \"rgba(178, 242, 255, 0.4)\",\n \"bgPress\": \"rgba(85, 220, 246, 0.4)\",\n \"border\": \"rgba(255, 255, 255, 0)\",\n \"borderHover\": \"rgba(255, 255, 255, 0)\",\n \"borderPress\": \"rgba(255, 255, 255, 0)\"\n },\n \"tertiary\": {\n \"bg\": \"rgba(255, 255, 255, 0)\",\n \"bgHover\": \"rgba(178, 242, 255, 0.07)\",\n \"bgPress\": \"rgba(85, 220, 246, 0.12)\",\n \"border\": \"rgba(255, 255, 255, 0)\",\n \"borderHover\": \"rgba(255, 255, 255, 0)\",\n \"borderPress\": \"rgba(255, 255, 255, 0)\"\n },\n \"ghost\": {\n \"bg\": \"rgba(0, 0, 0, 0)\",\n \"bgHover\": \"rgba(27, 131, 152, 0.04)\",\n \"bgPress\": \"rgba(27, 131, 152, 0.08)\",\n \"border\": \"rgba(27, 131, 152, 0.1)\",\n \"borderHover\": \"rgba(27, 131, 152, 0.16)\",\n \"borderPress\": \"rgba(27, 131, 152, 0.1)\"\n },\n \"text\": {\n \"primary\": \"#000000\",\n \"secondary\": \"#000000\",\n \"tertiary\": \"#1b8398\",\n \"ghost\": \"#1b8398\",\n \"disable\": \"#999999\"\n }\n },\n \"mono\": {\n \"primary\": {\n \"bg\": \"#000000\",\n \"bgHover\": \"#141d1f\",\n \"bgPress\": \"#1b2628\",\n \"border\": \"rgba(255, 255, 255, 0)\",\n \"borderHover\": \"rgba(255, 255, 255, 0)\",\n \"borderPress\": \"rgba(255, 255, 255, 0)\"\n },\n \"secondary\": {\n \"bg\": \"rgba(0, 0, 0, 0.12)\",\n \"bgHover\": \"rgba(21, 28, 30, 0.12)\",\n \"bgPress\": \"rgba(32, 42, 44, 0.12)\",\n \"border\": \"rgba(255, 255, 255, 0)\",\n \"borderHover\": \"rgba(255, 255, 255, 0)\",\n \"borderPress\": \"rgba(255, 255, 255, 0)\"\n },\n \"tertiary\": {\n \"bg\": \"rgba(0, 0, 0, 0)\",\n \"bgHover\": \"rgba(21, 28, 30, 0.07)\",\n \"bgPress\": \"rgba(32, 42, 44, 0.12)\",\n \"border\": \"rgba(255, 255, 255, 0)\",\n \"borderHover\": \"rgba(255, 255, 255, 0)\",\n \"borderPress\": \"rgba(255, 255, 255, 0)\"\n },\n \"ghost\": {\n \"bg\": \"rgba(0, 0, 0, 0)\",\n \"bgHover\": \"rgba(0, 0, 0, 0.04)\",\n \"bgPress\": \"rgba(0, 0, 0, 0.08)\",\n \"border\": \"rgba(0, 0, 0, 0.1)\",\n \"borderHover\": \"rgba(0, 0, 0, 0.16)\",\n \"borderPress\": \"rgba(0, 0, 0, 0.1)\"\n },\n \"text\": {\n \"primary\": \"#ffffff\",\n \"secondary\": \"#000000\",\n \"tertiary\": \"#000000\",\n \"ghost\": \"#000000\"\n }\n },\n \"brandExtra\": {\n \"primary\": {\n \"bg\": \"#bae831\",\n \"bgHover\": \"#cef655\",\n \"bgPress\": \"#9bc323\",\n \"border\": \"rgba(255, 255, 255, 0)\",\n \"borderHover\": \"rgba(255, 255, 255, 0)\",\n \"borderPress\": \"rgba(255, 255, 255, 0)\"\n },\n \"secondary\": {\n \"bg\": \"rgba(186, 232, 49, 0.4)\",\n \"bgHover\": \"rgba(206, 246, 85, 0.4)\",\n \"bgPress\": \"rgba(186, 232, 49, 0.4)\",\n \"border\": \"rgba(255, 255, 255, 0)\",\n \"borderHover\": \"rgba(255, 255, 255, 0)\",\n \"borderPress\": \"rgba(255, 255, 255, 0)\"\n },\n \"tertiary\": {\n \"bg\": \"rgba(186, 232, 49, 0)\",\n \"bgHover\": \"rgba(206, 246, 85, 0.07)\",\n \"bgPress\": \"rgba(186, 232, 49, 0.12)\",\n \"border\": \"rgba(255, 255, 255, 0)\",\n \"borderHover\": \"rgba(255, 255, 255, 0)\",\n \"borderPress\": \"rgba(255, 255, 255, 0)\"\n },\n \"ghost\": {\n \"bg\": \"rgba(0, 0, 0, 0)\",\n \"bgHover\": \"rgba(121, 151, 27, 0.04)\",\n \"bgPress\": \"rgba(121, 151, 27, 0.08)\",\n \"border\": \"rgba(121, 151, 27, 0.1)\",\n \"borderHover\": \"rgba(121, 151, 27, 0.16)\",\n \"borderPress\": \"rgba(121, 151, 27, 0.1)\"\n },\n \"text\": {\n \"primary\": \"#000000\",\n \"secondary\": \"#000000\",\n \"tertiary\": \"#79971b\",\n \"ghost\": \"#79971b\"\n }\n },\n \"alert\": {\n \"bg\": \"#ffbfb2\",\n \"border\": \"#e84f30\",\n \"primary\": {\n \"bg\": \"#e84f30\",\n \"bgHover\": \"#f67055\",\n \"bgPress\": \"#c33d22\",\n \"border\": \"rgba(255, 255, 255, 0)\",\n \"borderHover\": \"rgba(255, 255, 255, 0)\",\n \"borderPress\": \"rgba(255, 255, 255, 0)\"\n },\n \"secondary\": {\n \"bg\": \"rgba(232, 79, 48, 0.4)\",\n \"bgHover\": \"rgba(246, 112, 85, 0.4)\",\n \"bgPress\": \"rgba(195, 61, 34, 0.4)\",\n \"border\": \"rgba(255, 255, 255, 0)\",\n \"borderHover\": \"rgba(255, 255, 255, 0)\",\n \"borderPress\": \"rgba(255, 255, 255, 0)\"\n },\n \"tertiary\": {\n \"bg\": \"rgba(255, 43, 0, 0)\",\n \"bgHover\": \"rgba(255, 85, 51, 0.07)\",\n \"bgPress\": \"rgba(204, 34, 0, 0.12)\",\n \"border\": \"rgba(255, 255, 255, 0)\",\n \"borderHover\": \"rgba(255, 255, 255, 0)\",\n \"borderPress\": \"rgba(255, 255, 255, 0)\"\n },\n \"ghost\": {\n \"bg\": \"rgba(0, 0, 0, 0)\",\n \"bgHover\": \"rgba(195, 61, 34, 0.04)\",\n \"bgPress\": \"rgba(195, 61, 34, 0.08)\",\n \"border\": \"rgba(195, 61, 34, 0.1)\",\n \"borderHover\": \"rgba(195, 61, 34, 0.16)\",\n \"borderPress\": \"rgba(195, 61, 34, 0.1)\"\n },\n \"text\": {\n \"primary\": \"#ffffff\",\n \"secondary\": \"#000000\",\n \"tertiary\": \"#c33d22\",\n \"ghost\": \"#c33d22\"\n }\n },\n \"appButton\": {\n \"bg\": \"#d7dee0\",\n \"bgHover\": \"#c5cdd0\",\n \"bgPress\": \"#b3bfc3\",\n \"border\": \"rgba(0, 0, 0, 0.1)\",\n \"borderHover\": \"rgba(0, 0, 0, 0.16)\",\n \"borderPress\": \"rgba(0, 0, 0, 0.1)\",\n \"text\": \"#34474b\",\n \"textDisable\": \"#999999\"\n },\n \"input\": {\n \"bg\": \"rgba(0, 0, 0, 0.1)\",\n \"bgHover\": \"rgba(0, 0, 0, 0.15)\",\n \"bgDisable\": \"rgba(0, 0, 0, 0.2)\",\n \"border\": \"rgba(0, 0, 0, 0.1)\",\n \"borderHover\": \"rgba(0, 0, 0, 0.15)\",\n \"borderDisable\": \"rgba(0, 0, 0, 0)\",\n \"text\": \"#000000\",\n \"placeholder\": \"rgba(0, 0, 0, 0.6)\",\n \"textDisable\": \"rgba(0, 0, 0, 0.36)\"\n },\n \"focus\": {\n \"bg\": \"#ffffff\",\n \"border\": \"#31cae8\"\n },\n \"check\": {\n \"bg\": \"#000000\",\n \"bgHover\": \"#233134\",\n \"bgDisable\": \"rgba(0, 0, 0, 0.2)\",\n \"border\": \"rgba(255, 255, 255, 0)\",\n \"borderHover\": \"rgba(255, 255, 255, 0)\",\n \"borderDisable\": \"rgba(255, 255, 255, 0)\",\n \"icon\": \"#ffffff\"\n },\n \"faint\": {\n \"bg\": \"rgba(0, 0, 0, 0.15)\",\n \"bgHover\": \"rgba(0, 0, 0, 0.2)\",\n \"border\": \"rgba(0, 0, 0, 0)\",\n \"borderHover\": \"rgba(0, 0, 0, 0.1)\"\n },\n \"slider\": {\n \"bg\": \"#000000\",\n \"bgHover\": \"#000000\",\n \"bgDisable\": \"#cccccc\"\n },\n \"switch\": {\n \"bg\": \"rgba(0, 0, 0, 0.1)\",\n \"bgHover\": \"rgba(0, 0, 0, 0.15)\",\n \"bgDisable\": \"rgba(0, 0, 0, 0.2)\",\n \"border\": \"#ffffff\",\n \"borderHover\": \"#ffffff\",\n \"borderDisable\": \"rgba(255, 255, 255, 0)\"\n },\n \"knob\": {\n \"bg\": \"#ffffff\",\n \"bgHover\": \"#233134\",\n \"bgInactive\": \"#ffffff\"\n },\n \"text\": {\n \"primary\": \"#000000\",\n \"disable\": \"rgba(0, 0, 0, 0.4)\"\n },\n \"link\": {\n \"primary\": \"#22a8c3\",\n \"primaryHover\": \"#31cae8\",\n \"secondary\": \"#9bc323\",\n \"secondaryHover\": \"#bae831\"\n },\n \"segmented\": {\n \"bg\": \"rgba(0, 0, 0, 0.08)\",\n \"bgHover\": \"#ffffff\",\n \"bgActive\": \"#ffffff\",\n \"border\": \"rgba(0, 0, 0, 0.1)\",\n \"borderHover\": \"rgba(0, 0, 0, 0.1)\",\n \"borderActive\": \"#ffffff\",\n \"text\": \"#000000\",\n \"textDisable\": \"#000000\"\n },\n \"toggleButton\": {\n \"bg\": \"#ffffff\",\n \"bgHover\": \"rgba(0, 0, 0, 0.06)\",\n \"bgActive\": \"rgba(0, 0, 0, 0.1)\",\n \"bgDisable\": \"rgba(0, 0, 0, 0.15)\",\n \"border\": \"rgba(0, 0, 0, 0.1)\",\n \"borderHover\": \"rgba(0, 0, 0, 0.15)\",\n \"borderActive\": \"rgba(0, 0, 0, 0.1)\",\n \"borderDisable\": \"rgba(0, 0, 0, 0.1)\",\n \"text\": \"#000000\",\n \"textActive\": \"#ffffff\",\n \"textDisable\": \"rgba(255, 255, 255, 0.4)\"\n }\n }\n}\n","{\n \"background\": {\n \"primary\": \"#1b2628\",\n \"secondary\": \"#141d1f\",\n \"brand\": {\n \"primary\": \"#80eaff\",\n \"secondary\": \"#0b3841\"\n },\n \"brandExtra\": {\n \"primary\": \"#cef655\",\n \"secondary\": \"#566c13\"\n },\n \"inverse\": \"#ffffff\",\n \"success\": {\n \"primary\": \"#95ff80\",\n \"secondary\": \"#14410b\"\n },\n \"warning\": {\n \"primary\": \"#ffc380\",\n \"secondary\": \"#6c4313\"\n },\n \"alert\": {\n \"primary\": \"#e84f30\",\n \"secondary\": \"#6c2213\"\n },\n \"neutral\": {\n \"primary\": \"#99aeb2\",\n \"secondary\": \"#34474b\"\n }\n },\n \"content\": {\n \"primary\": \"#e8eced\",\n \"secondary\": \"rgba(232, 236, 237, 0.72)\",\n \"tertiary\": \"rgba(232, 236, 237, 0.58)\",\n \"brand\": {\n \"primary\": \"#80eaff\",\n \"secondary\": \"#55dcf6\"\n },\n \"brandExtra\": {\n \"primary\": \"#cef655\",\n \"secondary\": \"#9bc323\"\n },\n \"inverse\": \"#000000\",\n \"static\": {\n \"light\": \"#ffffff\",\n \"dark\": \"#000000\"\n },\n \"success\": {\n \"primary\": \"#70f655\",\n \"secondary\": \"#3dc322\"\n },\n \"warning\": {\n \"primary\": \"#f6ab55\",\n \"secondary\": \"#c37822\"\n },\n \"alert\": {\n \"primary\": \"#f67055\",\n \"secondary\": \"#e84f30\"\n },\n \"neutral\": {\n \"primary\": \"#99aeb2\",\n \"secondary\": \"#4b6368\"\n },\n \"on\": {\n \"brand\": \"#000000\",\n \"brandExtra\": \"#000000\",\n \"success\": \"#000000\",\n \"warning\": \"#000000\",\n \"alert\": \"#ffffff\",\n \"neutral\": \"#ffffff\"\n }\n },\n \"border\": {\n \"primary\": \"#ffffff\",\n \"secondary\": \"rgba(178, 242, 255, 0.1)\",\n \"brand\": \"#55dcf6\",\n \"brandExtra\": \"#cef655\",\n \"inverse\": \"rgba(0, 0, 0, 0.15)\",\n \"success\": \"#70f655\",\n \"warning\": \"#f6ab55\",\n \"alert\": \"#f67055\",\n \"neutral\": \"#9580ff\"\n },\n \"overlay\": {\n \"mono\": \"rgba(178, 242, 255, 0.06)\",\n \"brand\": \"rgba(128, 234, 255, 0.2)\",\n \"brandExtra\": \"rgba(206, 246, 85, 0.3)\",\n \"success\": \"rgba(149, 255, 128, 0.2)\",\n \"warning\": \"rgba(255, 195, 128, 0.24)\",\n \"alert\": \"rgba(232, 79, 48, 0.32)\",\n \"neutral\": \"rgba(123, 152, 157, 0.28)\"\n },\n \"layer\": {\n \"scrim\": \"rgba(0, 0, 0, 0.5)\",\n \"float\": \"#000000\"\n },\n \"control\": {\n \"brand\": {\n \"primary\": {\n \"bg\": \"#80eaff\",\n \"bgHover\": \"#b2f2ff\",\n \"bgPress\": \"#55dcf6\",\n \"bgDisable\": \"rgba(52, 71, 75, 0.85)\",\n \"border\": \"#31cae8\",\n \"borderHover\": \"#55dcf6\",\n \"borderPress\": \"rgba(255, 255, 255, 0)\",\n \"borderDisable\": \"rgba(255, 255, 255, 0)\"\n },\n \"secondary\": {\n \"bg\": \"#135d6c\",\n \"bgHover\": \"#1b8398\",\n \"bgPress\": \"#0b3841\",\n \"border\": \"#22a8c3\",\n \"borderHover\": \"#22a8c3\",\n \"borderPress\": \"rgba(255, 255, 255, 0)\"\n },\n \"tertiary\": {\n \"bg\": \"rgba(255, 255, 255, 0)\",\n \"bgHover\": \"#0b3841\",\n \"bgPress\": \"#135d6c\",\n \"border\": \"rgba(255, 255, 255, 0)\",\n \"borderHover\": \"rgba(255, 255, 255, 0)\",\n \"borderPress\": \"rgba(255, 255, 255, 0)\"\n },\n \"ghost\": {\n \"bg\": \"rgba(255, 255, 255, 0)\",\n \"bgHover\": \"rgba(128, 234, 255, 0.04)\",\n \"bgPress\": \"rgba(128, 234, 255, 0.08)\",\n \"border\": \"rgba(128, 234, 255, 0.16)\",\n \"borderHover\": \"rgba(128, 234, 255, 0.24)\",\n \"borderPress\": \"rgba(128, 234, 255, 0.16)\"\n },\n \"text\": {\n \"primary\": \"#000000\",\n \"secondary\": \"#80eaff\",\n \"tertiary\": \"#80eaff\",\n \"ghost\": \"#80eaff\",\n \"disable\": \"rgba(232, 236, 237, 0.2)\"\n }\n },\n \"mono\": {\n \"primary\": {\n \"bg\": \"#ffffff\",\n \"bgHover\": \"#e8eced\",\n \"bgPress\": \"#f4f5f6\",\n \"border\": \"rgba(255, 255, 255, 0)\",\n \"borderHover\": \"rgba(255, 255, 255, 0)\",\n \"borderPress\": \"rgba(255, 255, 255, 0)\"\n },\n \"secondary\": {\n \"bg\": \"#34474b\",\n \"bgHover\": \"#4b6368\",\n \"bgPress\": \"#233134\",\n \"border\": \"#4b6368\",\n \"borderHover\": \"#607f85\",\n \"borderPress\": \"rgba(255, 255, 255, 0)\"\n },\n \"tertiary\": {\n \"bg\": \"rgba(255, 255, 255, 0)\",\n \"bgHover\": \"#233134\",\n \"bgPress\": \"#34474b\",\n \"border\": \"rgba(255, 255, 255, 0)\",\n \"borderHover\": \"rgba(255, 255, 255, 0)\",\n \"borderPress\": \"rgba(255, 255, 255, 0)\"\n },\n \"ghost\": {\n \"bg\": \"rgba(255, 255, 255, 0)\",\n \"bgHover\": \"rgba(255, 255, 255, 0.04)\",\n \"bgPress\": \"rgba(255, 255, 255, 0.08)\",\n \"border\": \"rgba(255, 255, 255, 0.16)\",\n \"borderHover\": \"rgba(255, 255, 255, 0.24)\",\n \"borderPress\": \"rgba(255, 255, 255, 0.16)\"\n },\n \"text\": {\n \"primary\": \"#000000\",\n \"secondary\": \"#ffffff\",\n \"tertiary\": \"#ffffff\",\n \"ghost\": \"#ffffff\"\n }\n },\n \"brandExtra\": {\n \"primary\": {\n \"bg\": \"#cef655\",\n \"bgHover\": \"#bae831\",\n \"bgPress\": \"#dfff80\",\n \"border\": \"rgba(255, 255, 255, 0)\",\n \"borderHover\": \"rgba(255, 255, 255, 0)\",\n \"borderPress\": \"rgba(255, 255, 255, 0)\"\n },\n \"secondary\": {\n \"bg\": \"rgba(186, 232, 49, 0.4)\",\n \"bgHover\": \"rgba(206, 246, 85, 0.4)\",\n \"bgPress\": \"rgba(186, 232, 49, 0.4)\",\n \"border\": \"rgba(255, 255, 255, 0)\",\n \"borderHover\": \"rgba(255, 255, 255, 0)\",\n \"borderPress\": \"rgba(255, 255, 255, 0)\"\n },\n \"tertiary\": {\n \"bg\": \"rgba(186, 232, 49, 0)\",\n \"bgHover\": \"rgba(206, 246, 85, 0.07)\",\n \"bgPress\": \"rgba(186, 232, 49, 0.12)\",\n \"border\": \"rgba(255, 255, 255, 0)\",\n \"borderHover\": \"rgba(255, 255, 255, 0)\",\n \"borderPress\": \"rgba(255, 255, 255, 0)\"\n },\n \"ghost\": {\n \"bg\": \"rgba(255, 255, 255, 0)\",\n \"bgHover\": \"rgba(206, 246, 85, 0.04)\",\n \"bgPress\": \"rgba(206, 246, 85, 0.08)\",\n \"border\": \"rgba(206, 246, 85, 0.16)\",\n \"borderHover\": \"rgba(206, 246, 85, 0.24)\",\n \"borderPress\": \"rgba(206, 246, 85, 0.16)\"\n },\n \"text\": {\n \"primary\": \"#000000\",\n \"secondary\": \"#ffffff\",\n \"tertiary\": \"#cef655\",\n \"ghost\": \"#cef655\"\n }\n },\n \"alert\": {\n \"bg\": \"#6c2213\",\n \"border\": \"#f67055\",\n \"primary\": {\n \"bg\": \"#f67055\",\n \"bgHover\": \"#ff9580\",\n \"bgPress\": \"#e84f30\",\n \"border\": \"rgba(255, 255, 255, 0)\",\n \"borderHover\": \"rgba(255, 255, 255, 0)\",\n \"borderPress\": \"rgba(255, 255, 255, 0)\"\n },\n \"secondary\": {\n \"bg\": \"rgba(232, 79, 48, 0.4)\",\n \"bgHover\": \"rgba(246, 112, 85, 0.4)\",\n \"bgPress\": \"rgba(195, 61, 34, 0.4)\",\n \"border\": \"rgba(255, 255, 255, 0)\",\n \"borderHover\": \"rgba(255, 255, 255, 0)\",\n \"borderPress\": \"rgba(255, 255, 255, 0)\"\n },\n \"tertiary\": {\n \"bg\": \"rgba(255, 43, 0, 0)\",\n \"bgHover\": \"rgba(255, 170, 153, 0.07)\",\n \"bgPress\": \"rgba(255, 85, 51, 0.12)\",\n \"border\": \"rgba(255, 255, 255, 0)\",\n \"borderHover\": \"rgba(255, 255, 255, 0)\",\n \"borderPress\": \"rgba(255, 255, 255, 0)\"\n },\n \"ghost\": {\n \"bg\": \"rgba(255, 255, 255, 0)\",\n \"bgHover\": \"rgba(246, 112, 85, 0.04)\",\n \"bgPress\": \"rgba(246, 112, 85, 0.08)\",\n \"border\": \"rgba(246, 112, 85, 0.16)\",\n \"borderHover\": \"rgba(246, 112, 85, 0.24)\",\n \"borderPress\": \"rgba(246, 112, 85, 0.16)\"\n },\n \"text\": {\n \"primary\": \"#ffffff\",\n \"secondary\": \"#ffffff\",\n \"tertiary\": \"#f67055\",\n \"ghost\": \"#f67055\"\n }\n },\n \"appButton\": {\n \"bg\": \"#34474b\",\n \"bgHover\": \"#4b6368\",\n \"bgPress\": \"#607f85\",\n \"border\": \"#4b6368\",\n \"borderHover\": \"#607f85\",\n \"borderPress\": \"rgba(255, 255, 255, 0)\",\n \"text\": \"#b7c5c8\",\n \"textDisable\": \"rgba(232, 236, 237, 0.2)\"\n },\n \"input\": {\n \"bg\": \"rgba(178, 242, 255, 0.12)\",\n \"bgHover\": \"rgba(178, 242, 255, 0.15)\",\n \"bgDisable\": \"rgba(178, 242, 255, 0.25)\",\n \"border\": \"rgba(178, 242, 255, 0.1)\",\n \"borderHover\": \"rgba(178, 242, 255, 0.15)\",\n \"borderDisable\": \"rgba(255, 255, 255, 0)\",\n \"text\": \"#ffffff\",\n \"placeholder\": \"rgba(255, 255, 255, 0.56)\",\n \"textDisable\": \"rgba(255, 255, 255, 0.36)\"\n },\n \"focus\": {\n \"bg\": \"#000000\",\n \"border\": \"#55dcf6\"\n },\n \"check\": {\n \"bg\": \"#135d6c\",\n \"bgHover\": \"#1b8398\",\n \"bgDisable\": \"rgba(178, 242, 255, 0.25)\",\n \"border\": \"#22a8c3\",\n \"borderHover\": \"#22a8c3\",\n \"borderDisable\": \"rgba(255, 255, 255, 0)\",\n \"icon\": \"#80eaff\"\n },\n \"faint\": {\n \"bg\": \"rgba(178, 242, 255, 0.15)\",\n \"bgHover\": \"rgba(178, 242, 255, 0.2)\",\n \"border\": \"rgba(178, 242, 255, 0.1)\",\n \"borderHover\": \"rgba(178, 242, 255, 0.15)\"\n },\n \"slider\": {\n \"bg\": \"#80eaff\",\n \"bgHover\": \"#b2f2ff\",\n \"bgDisable\": \"rgba(52, 71, 75, 0.85)\"\n },\n \"switch\": {\n \"bg\": \"#135d6c\",\n \"bgHover\": \"#1b8398\",\n \"bgDisable\": \"rgba(178, 242, 255, 0.25)\",\n \"border\": \"#22a8c3\",\n \"borderHover\": \"#22a8c3\",\n \"borderDisable\": \"rgba(255, 255, 255, 0)\"\n },\n \"knob\": {\n \"bg\": \"#80eaff\",\n \"bgHover\": \"#b2f2ff\",\n \"bgInactive\": \"#ffffff\"\n },\n \"text\": {\n \"primary\": \"#ffffff\",\n \"disable\": \"rgba(255, 255, 255, 0.4)\"\n },\n \"link\": {\n \"primary\": \"#55dcf6\",\n \"primaryHover\": \"#80eaff\",\n \"secondary\": \"#cef655\",\n \"secondaryHover\": \"#dfff80\"\n },\n \"segmented\": {\n \"bg\": \"rgba(178, 242, 255, 0.1)\",\n \"bgHover\": \"rgba(178, 242, 255, 0.1)\",\n \"bgActive\": \"rgba(178, 242, 255, 0.15)\",\n \"border\": \"rgba(178, 242, 255, 0.1)\",\n \"borderHover\": \"rgba(178, 242, 255, 0.1)\",\n \"borderActive\": \"rgba(255, 255, 255, 0)\",\n \"text\": \"#ffffff\",\n \"textDisable\": \"rgba(255, 255, 255, 0.4)\"\n },\n \"toggleButton\": {\n \"bg\": \"rgba(178, 242, 255, 0.12)\",\n \"bgHover\": \"rgba(178, 242, 255, 0.15)\",\n \"bgActive\": \"#135d6c\",\n \"bgDisable\": \"rgba(178, 242, 255, 0.25)\",\n \"border\": \"rgba(178, 242, 255, 0.1)\",\n \"borderHover\": \"rgba(178, 242, 255, 0.15)\",\n \"borderActive\": \"#22a8c3\",\n \"borderDisable\": \"rgba(255, 255, 255, 0)\",\n \"text\": \"#ffffff\",\n \"textActive\": \"#80eaff\",\n \"textDisable\": \"rgba(255, 255, 255, 0.36)\"\n }\n }\n}\n","{\n \"background\": {\n \"primary\": \"#ffffff\",\n \"secondary\": \"#f3f3f2\",\n \"brand\": {\n \"primary\": \"#80eaff\",\n \"secondary\": \"#b2f2ff\"\n },\n \"brandExtra\": {\n \"primary\": \"#cef655\",\n \"secondary\": \"#dfff80\"\n },\n \"inverse\": \"#000000\",\n \"success\": {\n \"primary\": \"#95ff80\",\n \"secondary\": \"#bfffb2\"\n },\n \"warning\": {\n \"primary\": \"#ffc380\",\n \"secondary\": \"#ffdbb2\"\n },\n \"alert\": {\n \"primary\": \"#e84f30\",\n \"secondary\": \"#ffbfb2\"\n },\n \"neutral\": {\n \"primary\": \"#99aeb2\",\n \"secondary\": \"#d7dee0\"\n }\n },\n \"content\": {\n \"primary\": \"#000000\",\n \"secondary\": \"rgba(0, 0, 0, 0.75)\",\n \"tertiary\": \"rgba(0, 0, 0, 0.6)\",\n \"brand\": {\n \"primary\": \"#22a8c3\",\n \"secondary\": \"#31cae8\"\n },\n \"brandExtra\": {\n \"primary\": \"#79971b\",\n \"secondary\": \"#9bc323\"\n },\n \"inverse\": \"#ffffff\",\n \"static\": {\n \"light\": \"#ffffff\",\n \"dark\": \"#000000\"\n },\n \"success\": {\n \"primary\": \"#30981b\",\n \"secondary\": \"#3dc322\"\n },\n \"warning\": {\n \"primary\": \"#c37822\",\n \"secondary\": \"#f6ab55\"\n },\n \"alert\": {\n \"primary\": \"#e84f30\",\n \"secondary\": \"#f67055\"\n },\n \"neutral\": {\n \"primary\": \"#34474b\",\n \"secondary\": \"#607f85\"\n },\n \"on\": {\n \"brand\": \"#000000\",\n \"brandExtra\": \"#000000\",\n \"success\": \"#000000\",\n \"warning\": \"#000000\",\n \"alert\": \"#ffffff\",\n \"neutral\": \"#ffffff\"\n }\n },\n \"border\": {\n \"primary\": \"#000000\",\n \"secondary\": \"rgba(0, 0, 0, 0.1)\",\n \"brand\": \"#31cae8\",\n \"brandExtra\": \"#bae831\",\n \"inverse\": \"rgba(255, 255, 255, 0.15)\",\n \"success\": \"#30981b\",\n \"warning\": \"#e89331\",\n \"alert\": \"#e84f30\",\n \"neutral\": \"#3d22c3\"\n },\n \"overlay\": {\n \"mono\": \"rgba(0, 0, 0, 0.05)\",\n \"brand\": \"rgba(128, 234, 255, 0.3)\",\n \"brandExtra\": \"rgba(206, 246, 85, 0.3)\",\n \"success\": \"rgba(149, 255, 128, 0.24)\",\n \"warning\": \"rgba(255, 195, 128, 0.28)\",\n \"alert\": \"rgba(232, 79, 48, 0.24)\",\n \"neutral\": \"rgba(96, 127, 133, 0.24)\"\n },\n \"layer\": {\n \"scrim\": \"rgba(0, 0, 0, 0.75)\",\n \"float\": \"#ffffff\"\n },\n \"control\": {\n \"brand\": {\n \"primary\": {\n \"bg\": \"#80eaff\",\n \"bgHover\": \"#b2f2ff\",\n \"bgPress\": \"#55dcf6\",\n \"bgDisable\": \"#cccccc\",\n \"border\": \"#31cae8\",\n \"borderHover\": \"#55dcf6\",\n \"borderPress\": \"rgba(255, 255, 255, 0)\",\n \"borderDisable\": \"rgba(255, 255, 255, 0)\"\n },\n \"secondary\": {\n \"bg\": \"#ccf6ff\",\n \"bgHover\": \"#e5fbff\",\n \"bgPress\": \"#b2f2ff\",\n \"border\": \"#80eaff\",\n \"borderHover\": \"#b2f2ff\",\n \"borderPress\": \"rgba(255, 255, 255, 0)\"\n },\n \"tertiary\": {\n \"bg\": \"rgba(255, 255, 255, 0)\",\n \"bgHover\": \"#e5fbff\",\n \"bgPress\": \"#ccf6ff\",\n \"border\": \"rgba(255, 255, 255, 0)\",\n \"borderHover\": \"rgba(255, 255, 255, 0)\",\n \"borderPress\": \"rgba(255, 255, 255, 0)\"\n },\n \"ghost\": {\n \"bg\": \"rgba(0, 0, 0, 0)\",\n \"bgHover\": \"rgba(34, 168, 195, 0.04)\",\n \"bgPress\": \"rgba(34, 168, 195, 0.08)\",\n \"border\": \"rgba(34, 168, 195, 0.1)\",\n \"borderHover\": \"rgba(34, 168, 195, 0.16)\",\n \"borderPress\": \"rgba(34, 168, 195, 0.1)\"\n },\n \"text\": {\n \"primary\": \"#000000\",\n \"secondary\": \"#000000\",\n \"tertiary\": \"#1b8398\",\n \"ghost\": \"#22a8c3\",\n \"disable\": \"#999999\"\n }\n },\n \"mono\": {\n \"primary\": {\n \"bg\": \"#141d1f\",\n \"bgHover\": \"#233134\",\n \"bgPress\": \"#000000\",\n \"border\": \"rgba(255, 255, 255, 0)\",\n \"borderHover\": \"rgba(255, 255, 255, 0)\",\n \"borderPress\": \"rgba(255, 255, 255, 0)\"\n },\n \"secondary\": {\n \"bg\": \"#dadbd7\",\n \"bgHover\": \"#e6e7e4\",\n \"bgPress\": \"#c1c2bc\",\n \"border\": \"#c1c2bc\",\n \"borderHover\": \"#dadbd7\",\n \"borderPress\": \"rgba(255, 255, 255, 0)\"\n },\n \"tertiary\": {\n \"bg\": \"rgba(255, 255, 255, 0)\",\n \"bgHover\": \"#f3f3f2\",\n \"bgPress\": \"#e6e7e4\",\n \"border\": \"rgba(255, 255, 255, 0)\",\n \"borderHover\": \"rgba(255, 255, 255, 0)\",\n \"borderPress\": \"rgba(255, 255, 255, 0)\"\n },\n \"ghost\": {\n \"bg\": \"rgba(0, 0, 0, 0)\",\n \"bgHover\": \"rgba(0, 0, 0, 0.04)\",\n \"bgPress\": \"rgba(0, 0, 0, 0.08)\",\n \"border\": \"rgba(0, 0, 0, 0.1)\",\n \"borderHover\": \"rgba(0, 0, 0, 0.16)\",\n \"borderPress\": \"rgba(0, 0, 0, 0.1)\"\n },\n \"text\": {\n \"primary\": \"#ffffff\",\n \"secondary\": \"#000000\",\n \"tertiary\": \"#000000\",\n \"ghost\": \"#000000\"\n }\n },\n \"brandExtra\": {\n \"primary\": {\n \"bg\": \"#bae831\",\n \"bgHover\": \"#cef655\",\n \"bgPress\": \"#9bc323\",\n \"border\": \"rgba(255, 255, 255, 0)\",\n \"borderHover\": \"rgba(255, 255, 255, 0)\",\n \"borderPress\": \"rgba(255, 255, 255, 0)\"\n },\n \"secondary\": {\n \"bg\": \"rgba(186, 232, 49, 0.4)\",\n \"bgHover\": \"rgba(206, 246, 85, 0.4)\",\n \"bgPress\": \"rgba(186, 232, 49, 0.4)\",\n \"border\": \"rgba(255, 255, 255, 0)\",\n \"borderHover\": \"rgba(255, 255, 255, 0)\",\n \"borderPress\": \"rgba(255, 255, 255, 0)\"\n },\n \"tertiary\": {\n \"bg\": \"rgba(186, 232, 49, 0)\",\n \"bgHover\": \"rgba(206, 246, 85, 0.07)\",\n \"bgPress\": \"rgba(186, 232, 49, 0.12)\",\n \"border\": \"rgba(255, 255, 255, 0)\",\n \"borderHover\": \"rgba(255, 255, 255, 0)\",\n \"borderPress\": \"rgba(255, 255, 255, 0)\"\n },\n \"ghost\": {\n \"bg\": \"rgba(0, 0, 0, 0)\",\n \"bgHover\": \"rgba(121, 151, 27, 0.04)\",\n \"bgPress\": \"rgba(121, 151, 27, 0.08)\",\n \"border\": \"rgba(121, 151, 27, 0.1)\",\n \"borderHover\": \"rgba(121, 151, 27, 0.16)\",\n \"borderPress\": \"rgba(121, 151, 27, 0.1)\"\n },\n \"text\": {\n \"primary\": \"#000000\",\n \"secondary\": \"#000000\",\n \"tertiary\": \"#79971b\",\n \"ghost\": \"#79971b\"\n }\n },\n \"alert\": {\n \"bg\": \"#ffbfb2\",\n \"border\": \"#e84f30\",\n \"primary\": {\n \"bg\": \"#e84f30\",\n \"bgHover\": \"#f67055\",\n \"bgPress\": \"#c33d22\",\n \"border\": \"rgba(255, 255, 255, 0)\",\n \"borderHover\": \"rgba(255, 255, 255, 0)\",\n \"borderPress\": \"rgba(255, 255, 255, 0)\"\n },\n \"secondary\": {\n \"bg\": \"rgba(232, 79, 48, 0.4)\",\n \"bgHover\": \"rgba(246, 112, 85, 0.4)\",\n \"bgPress\": \"rgba(195, 61, 34, 0.4)\",\n \"border\": \"rgba(255, 255, 255, 0)\",\n \"borderHover\": \"rgba(255, 255, 255, 0)\",\n \"borderPress\": \"rgba(255, 255, 255, 0)\"\n },\n \"tertiary\": {\n \"bg\": \"rgba(255, 43, 0, 0)\",\n \"bgHover\": \"rgba(255, 85, 51, 0.07)\",\n \"bgPress\": \"rgba(204, 34, 0, 0.12)\",\n \"border\": \"rgba(255, 255, 255, 0)\",\n \"borderHover\": \"rgba(255, 255, 255, 0)\",\n \"borderPress\": \"rgba(255, 255, 255, 0)\"\n },\n \"ghost\": {\n \"bg\": \"rgba(0, 0, 0, 0)\",\n \"bgHover\": \"rgba(195, 61, 34, 0.04)\",\n \"bgPress\": \"rgba(195, 61, 34, 0.08)\",\n \"border\": \"rgba(195, 61, 34, 0.1)\",\n \"borderHover\": \"rgba(195, 61, 34, 0.16)\",\n \"borderPress\": \"rgba(195, 61, 34, 0.1)\"\n },\n \"text\": {\n \"primary\": \"#ffffff\",\n \"secondary\": \"#000000\",\n \"tertiary\": \"#c33d22\",\n \"ghost\": \"#c33d22\"\n }\n },\n \"appButton\": {\n \"bg\": \"#dadbd7\",\n \"bgHover\": \"#c1c2bc\",\n \"bgPress\": \"#a8aaa2\",\n \"border\": \"#c1c2bc\",\n \"borderHover\": \"#a8aaa2\",\n \"borderPress\": \"rgba(255, 255, 255, 0)\",\n \"text\": \"#000000\",\n \"textDisable\": \"#999999\"\n },\n \"input\": {\n \"bg\": \"rgba(0, 0, 0, 0.08)\",\n \"bgHover\": \"rgba(0, 0, 0, 0.15)\",\n \"bgDisable\": \"rgba(0, 0, 0, 0.2)\",\n \"border\": \"rgba(0, 0, 0, 0.1)\",\n \"borderHover\": \"rgba(0, 0, 0, 0.15)\",\n \"borderDisable\": \"rgba(0, 0, 0, 0)\",\n \"text\": \"#000000\",\n \"placeholder\": \"rgba(0, 0, 0, 0.6)\",\n \"textDisable\": \"rgba(5, 5, 5, 0.36)\"\n },\n \"focus\": {\n \"bg\": \"#ffffff\",\n \"border\": \"#31cae8\"\n },\n \"check\": {\n \"bg\": \"#ccf6ff\",\n \"bgHover\": \"#e5fbff\",\n \"bgDisable\": \"rgba(0, 0, 0, 0.25)\",\n \"border\": \"#80eaff\",\n \"borderHover\": \"#b2f2ff\",\n \"borderDisable\": \"rgba(0, 0, 0, 0)\",\n \"icon\": \"#000000\"\n },\n \"faint\": {\n \"bg\": \"rgba(0, 0, 0, 0.15)\",\n \"bgHover\": \"rgba(0, 0, 0, 0.2)\",\n \"border\": \"rgba(0, 0, 0, 0.1)\",\n \"borderHover\": \"rgba(0, 0, 0, 0.15)\"\n },\n \"slider\": {\n \"bg\": \"#80eaff\",\n \"bgHover\": \"#b2f2ff\",\n \"bgDisable\": \"#cccccc\"\n },\n \"switch\": {\n \"bg\": \"#ccf6ff\",\n \"bgHover\": \"#e5fbff\",\n \"bgDisable\": \"rgba(0, 0, 0, 0.25)\",\n \"border\": \"#80eaff\",\n \"borderHover\": \"#b2f2ff\",\n \"borderDisable\": \"rgba(0, 0, 0, 0)\"\n },\n \"knob\": {\n \"bg\": \"#000000\",\n \"bgHover\": \"#233134\",\n \"bgInactive\": \"#000000\"\n },\n \"text\": {\n \"primary\": \"#000000\",\n \"disable\": \"rgba(0, 0, 0, 0.4)\"\n },\n \"link\": {\n \"primary\": \"#22a8c3\",\n \"primaryHover\": \"#31cae8\",\n \"secondary\": \"#9bc323\",\n \"secondaryHover\": \"#bae831\"\n },\n \"segmented\": {\n \"bg\": \"rgba(0, 0, 0, 0.08)\",\n \"bgHover\": \"rgba(0, 0, 0, 0.08)\",\n \"bgActive\": \"#ffffff\",\n \"border\": \"rgba(0, 0, 0, 0.1)\",\n \"borderHover\": \"rgba(0, 0, 0, 0.1)\",\n \"borderActive\": \"rgba(0, 0, 0, 0)\",\n \"text\": \"#000000\",\n \"textDisable\": \"rgba(0, 0, 0, 0.4)\"\n },\n \"toggleButton\": {\n \"bg\": \"rgba(0, 0, 0, 0.08)\",\n \"bgHover\": \"rgba(0, 0, 0, 0.15)\",\n \"bgActive\": \"#ccf6ff\",\n \"bgDisable\": \"rgba(0, 0, 0, 0.2)\",\n \"border\": \"rgba(0, 0, 0, 0.1)\",\n \"borderHover\": \"rgba(0, 0, 0, 0.15)\",\n \"borderActive\": \"#80eaff\",\n \"borderDisable\": \"rgba(0, 0, 0, 0)\",\n \"text\": \"#000000\",\n \"textActive\": \"#000000\",\n \"textDisable\": \"rgba(0, 0, 0, 0.36)\"\n }\n }\n}\n","{\n \"background\": {\n \"primary\": \"#0d143a\",\n \"secondary\": \"#161d45\",\n \"inverse\": \"#000000\",\n \"brand\": {\n \"primary\": \"#454f88\",\n \"secondary\": \"#2b335e\"\n },\n \"brandExtra\": {\n \"primary\": \"#292f52\",\n \"secondary\": \"#2d3358\"\n },\n \"success\": {\n \"primary\": \"#14b87e\",\n \"secondary\": \"#75f0b9\"\n },\n \"warning\": {\n \"primary\": \"#ffee99\",\n \"secondary\": \"#ffdd33\"\n },\n \"alert\": {\n \"primary\": \"#e80000\",\n \"secondary\": \"#f53d3d\"\n },\n \"neutral\": {\n \"primary\": \"#7f8bc9\",\n \"secondary\": \"#b0baee\"\n }\n },\n \"content\": {\n \"primary\": \"#ffffff\",\n \"secondary\": \"rgba(255, 255, 255, 0.76)\",\n \"tertiary\": \"rgba(255, 255, 255, 0.5)\",\n \"inverse\": \"#000000\",\n \"brand\": {\n \"primary\": \"#ffffff\",\n \"secondary\": \"rgba(255, 255, 255, 0.76)\"\n },\n \"brandExtra\": {\n \"primary\": \"#8576fd\",\n \"secondary\": \"#aea0ff\"\n },\n \"success\": {\n \"primary\": \"#66ffa6\",\n \"secondary\": \"#00ff6a\"\n },\n \"warning\": {\n \"primary\": \"#ffe566\",\n \"secondary\": \"#ffd400\"\n },\n \"alert\": {\n \"primary\": \"#e80000\",\n \"secondary\": \"#f53d3d\"\n },\n \"neutral\": {\n \"primary\": \"#aa99ff\",\n \"secondary\": \"#8066ff\"\n },\n \"on\": {\n \"brand\": \"#ffffff\",\n \"brandExtra\": \"#ffffff\",\n \"success\": \"#ffffff\",\n \"warning\": \"#ffffff\",\n \"alert\": \"#ffffff\",\n \"neutral\": \"#ffffff\"\n },\n \"static\": {\n \"light\": \"#ffffff\",\n \"dark\": \"#000000\"\n }\n },\n \"border\": {\n \"primary\": \"#ffffff\",\n \"secondary\": \"rgba(255, 255, 255, 0.24)\",\n \"inverse\": \"rgba(0, 0, 0, 0.15)\",\n \"brand\": \"#ffffff\",\n \"brandExtra\": \"#8576fd\",\n \"success\": \"#14b87e\",\n \"warning\": \"#ffe566\",\n \"alert\": \"#f53d3d\",\n \"neutral\": \"#7f8bc9\"\n },\n \"overlay\": {\n \"mono\": \"rgba(255, 255, 255, 0.1)\",\n \"brand\": \"rgba(255, 255, 255, 0.3)\",\n \"brandExtra\": \"rgba(133, 118, 253, 0.3)\",\n \"success\": \"rgba(20, 184, 126, 0.3)\",\n \"warning\": \"rgba(255, 229, 102, 0.3)\",\n \"alert\": \"rgba(245, 61, 61, 0.3)\",\n \"neutral\": \"rgba(127, 139, 201, 0.3)\"\n },\n \"layer\": {\n \"scrim\": \"rgba(0, 0, 0, 0.5)\",\n \"float\": \"#161d45\"\n },\n \"control\": {\n \"brand\": {\n \"primary\": {\n \"bg\": \"#ffca43\",\n \"bgHover\": \"#f2c173\",\n \"bgPress\": \"#ffbb33\",\n \"bgDisable\": \"#484848\",\n \"border\": \"rgba(255, 255, 255, 0)\",\n \"borderHover\": \"rgba(255, 255, 255, 0)\",\n \"borderPress\": \"rgba(255, 255, 255, 0)\",\n \"borderDisable\": \"rgba(255, 255, 255, 0)\"\n },\n \"secondary\": {\n \"bg\": \"#ffffff\",\n \"bgHover\": \"rgba(255, 255, 255, 0.76)\",\n \"bgPress\": \"rgba(255, 255, 255, 0.5)\",\n \"border\": \"rgba(255, 255, 255, 0)\",\n \"borderHover\": \"rgba(255, 255, 255, 0)\",\n \"borderPress\": \"rgba(255, 255, 255, 0)\"\n },\n \"tertiary\": {\n \"bg\": \"#ffffff\",\n \"bgHover\": \"rgba(255, 255, 255, 0.76)\",\n \"bgPress\": \"rgba(255, 255, 255, 0.5)\",\n \"border\": \"rgba(255, 255, 255, 0)\",\n \"borderHover\": \"rgba(255, 255, 255, 0)\",\n \"borderPress\": \"rgba(255, 255, 255, 0)\"\n },\n \"ghost\": {\n \"bg\": \"rgba(255, 255, 255, 0)\",\n \"bgHover\": \"rgba(255, 202, 67, 0.04)\",\n \"bgPress\": \"rgba(255, 202, 67, 0.08)\",\n \"border\": \"rgba(255, 202, 67, 0.16)\",\n \"borderHover\": \"rgba(255, 202, 67, 0.24)\",\n \"borderPress\": \"rgba(255, 202, 67, 0.16)\"\n },\n \"text\": {\n \"primary\": \"#000000\",\n \"secondary\": \"#000000\",\n \"tertiary\": \"#000000\",\n \"ghost\": \"#ffca43\",\n \"disable\": \"#c4d1d4\"\n }\n },\n \"mono\": {\n \"primary\": {\n \"bg\": \"#ffffff\",\n \"bgHover\": \"#f0f4f4\",\n \"bgPress\": \"#f6f8f9\",\n \"border\": \"rgba(255, 255, 255, 0)\",\n \"borderHover\": \"rgba(255, 255, 255, 0)\",\n \"borderPress\": \"rgba(255, 255, 255, 0)\"\n },\n \"secondary\": {\n \"bg\": \"rgba(255, 255, 255, 0.1)\",\n \"bgHover\": \"rgba(255, 255, 255, 0.34)\",\n \"bgPress\": \"rgba(255, 255, 255, 0.44)\",\n \"border\": \"#ffffff\",\n \"borderHover\": \"#ffffff\",\n \"borderPress\": \"#ffffff\"\n },\n \"tertiary\": {\n \"bg\": \"#ffffff\",\n \"bgHover\": \"rgba(255, 255, 255, 0.76)\",\n \"bgPress\": \"rgba(255, 255, 255, 0.5)\",\n \"border\": \"rgba(255, 255, 255, 0)\",\n \"borderHover\": \"rgba(255, 255, 255, 0)\",\n \"borderPress\": \"rgba(255, 255, 255, 0)\"\n },\n \"ghost\": {\n \"bg\": \"rgba(255, 255, 255, 0)\",\n \"bgHover\": \"rgba(255, 255, 255, 0.04)\",\n \"bgPress\": \"rgba(255, 255, 255, 0.08)\",\n \"border\": \"rgba(255, 255, 255, 0.16)\",\n \"borderHover\": \"rgba(255, 255, 255, 0.24)\",\n \"borderPress\": \"rgba(255, 255, 255, 0.16)\"\n },\n \"text\": {\n \"primary\": \"#000000\",\n \"secondary\": \"#ffffff\",\n \"tertiary\": \"#000000\",\n \"ghost\": \"#ffffff\"\n }\n },\n \"brandExtra\": {\n \"primary\": {\n \"bg\": \"#292f52\",\n \"bgHover\": \"#ccff33\",\n \"bgPress\": \"#e6ff99\",\n \"border\": \"rgba(255, 255, 255, 0)\",\n \"borderHover\": \"rgba(255, 255, 255, 0)\",\n \"borderPress\": \"rgba(255, 255, 255, 0)\"\n },\n \"secondary\": {\n \"bg\": \"rgba(186, 232, 49, 0.4)\",\n \"bgHover\": \"rgba(206, 246, 85, 0.4)\",\n \"bgPress\": \"rgba(186, 232, 49, 0.4)\",\n \"border\": \"rgba(255, 255, 255, 0)\",\n \"borderHover\": \"rgba(255, 255, 255, 0)\",\n \"borderPress\": \"rgba(255, 255, 255, 0)\"\n },\n \"tertiary\": {\n \"bg\": \"#ffffff\",\n \"bgHover\": \"rgba(255, 255, 255, 0.76)\",\n \"bgPress\": \"rgba(255, 255, 255, 0.5)\",\n \"border\": \"rgba(255, 255, 255, 0)\",\n \"borderHover\": \"rgba(255, 255, 255, 0)\",\n \"borderPress\": \"rgba(255, 255, 255, 0)\"\n },\n \"ghost\": {\n \"bg\": \"rgba(255, 255, 255, 0)\",\n \"bgHover\": \"rgba(255, 255, 255, 0.04)\",\n \"bgPress\": \"rgba(255, 255, 255, 0.08)\",\n \"border\": \"rgba(255, 255, 255, 0.16)\",\n \"borderHover\": \"rgba(255, 255, 255, 0.24)\",\n \"borderPress\": \"rgba(255, 255, 255, 0.16)\"\n },\n \"text\": {\n \"primary\": \"#000000\",\n \"secondary\": \"#000000\",\n \"tertiary\": \"#000000\",\n \"ghost\": \"#ffffff\"\n }\n },\n \"alert\": {\n \"bg\": \"#e80000\",\n \"border\": \"#f53d3d\",\n \"primary\": {\n \"bg\": \"#ff8066\",\n \"bgHover\": \"#ffaa99\",\n \"bgPress\": \"#ff5533\",\n \"border\": \"rgba(255, 255, 255, 0)\",\n \"borderHover\": \"rgba(255, 255, 255, 0)\",\n \"borderPress\": \"rgba(255, 255, 255, 0)\"\n },\n \"secondary\": {\n \"bg\": \"rgba(255, 128, 102, 0.4)\",\n \"bgHover\": \"rgba(255, 170, 153, 0.4)\",\n \"bgPress\": \"rgba(255, 85, 51, 0.4)\",\n \"border\": \"rgba(255, 255, 255, 0)\",\n \"borderHover\": \"rgba(255, 255, 255, 0)\",\n \"borderPress\": \"rgba(255, 255, 255, 0)\"\n },\n \"tertiary\": {\n \"bg\": \"#ffffff\",\n \"bgHover\": \"rgba(255, 255, 255, 0.76)\",\n \"bgPress\": \"rgba(255, 255, 255, 0.5)\",\n \"border\": \"rgba(255, 255, 255, 0)\",\n \"borderHover\": \"rgba(255, 255, 255, 0)\",\n \"borderPress\": \"rgba(255, 255, 255, 0)\"\n },\n \"ghost\": {\n \"bg\": \"rgba(255, 255, 255, 0)\",\n \"bgHover\": \"rgba(255, 255, 255, 0.04)\",\n \"bgPress\": \"rgba(255, 255, 255, 0.08)\",\n \"border\": \"rgba(255, 255, 255, 0.16)\",\n \"borderHover\": \"rgba(255, 255, 255, 0.24)\",\n \"borderPress\": \"rgba(255, 255, 255, 0.16)\"\n },\n \"text\": {\n \"primary\": \"#ffffff\",\n \"secondary\": \"#000000\",\n \"tertiary\": \"#000000\",\n \"ghost\": \"#ffffff\"\n }\n },\n \"appButton\": {\n \"bg\": \"#ffffff\",\n \"bgHover\": \"rgba(255, 255, 255, 0.76)\",\n \"bgPress\": \"rgba(255, 255, 255, 0.5)\",\n \"border\": \"rgba(255, 255, 255, 0)\",\n \"borderHover\": \"rgba(255, 255, 255, 0)\",\n \"borderPress\": \"rgba(255, 255, 255, 0)\",\n \"text\": \"#000000\",\n \"textDisable\": \"#666666\"\n },\n \"input\": {\n \"bg\": \"rgba(255, 255, 255, 0.12)\",\n \"bgHover\": \"rgba(255, 255, 255, 0.15)\",\n \"bgDisable\": \"rgba(255, 255, 255, 0.25)\",\n \"border\": \"rgba(255, 255, 255, 0)\",\n \"borderHover\": \"rgba(255, 255, 255, 0.1)\",\n \"borderDisable\": \"rgba(255, 255, 255, 0)\",\n \"text\": \"#ffffff\",\n \"placeholder\": \"rgba(255, 255, 255, 0.55)\",\n \"textDisable\": \"rgba(255, 255, 255, 0.36)\"\n },\n \"focus\": {\n \"bg\": \"rgba(255, 255, 255, 0.2)\",\n \"border\": \"#8576fd\"\n },\n \"check\": {\n \"bg\": \"#ffffff\",\n \"bgHover\": \"#f6f8f9\",\n \"bgDisable\": \"rgba(255, 255, 255, 0.2)\",\n \"border\": \"#ffffff\",\n \"borderHover\": \"#ffffff\",\n \"borderDisable\": \"#ffffff\",\n \"icon\": \"#ffffff\"\n },\n \"faint\": {\n \"bg\": \"rgba(255, 255, 255, 0.15)\",\n \"bgHover\": \"rgba(255, 255, 255, 0.2)\",\n \"border\": \"rgba(255, 255, 255, 0)\",\n \"borderHover\": \"rgba(255, 255, 255, 0.24)\"\n },\n \"slider\": {\n \"bg\": \"#ffffff\",\n \"bgHover\": \"#ffffff\",\n \"bgDisable\": \"rgba(255, 255, 255, 0.2)\"\n },\n \"switch\": {\n \"bg\": \"rgba(255, 255, 255, 0.1)\",\n \"bgHover\": \"rgba(255, 255, 255, 0.15)\",\n \"bgDisable\": \"rgba(255, 255, 255, 0.2)\",\n \"border\": \"#ffffff\",\n \"borderHover\": \"#ffffff\",\n \"borderDisable\": \"#ffffff\"\n },\n \"knob\": {\n \"bg\": \"#ffffff\",\n \"bgHover\": \"#f6f8f9\",\n \"bgInactive\": \"#ffffff\"\n },\n \"text\": {\n \"primary\": \"#ffffff\",\n \"disable\": \"#8c8b9a\"\n },\n \"link\": {\n \"primary\": \"#ffffff\",\n \"primaryHover\": \"rgba(255, 255, 255, 0.7)\",\n \"secondary\": \"#8576fd\",\n \"secondaryHover\": \"rgba(157, 149, 222, 0.7)\"\n },\n \"segmented\": {\n \"bg\": \"#ffffff\",\n \"bgHover\": \"#ffffff\",\n \"bgActive\": \"#ffffff\",\n \"border\": \"#ffffff\",\n \"borderHover\": \"#ffffff\",\n \"borderActive\": \"#ffffff\",\n \"text\": \"#ffffff\",\n \"textDisable\": \"#ffffff\"\n },\n \"toggleButton\": {\n \"bg\": \"#ffffff\",\n \"bgHover\": \"#ffffff\",\n \"bgActive\": \"#ffffff\",\n \"bgDisable\": \"#ffffff\",\n \"border\": \"#ffffff\",\n \"borderHover\": \"#ffffff\",\n \"borderActive\": \"#ffffff\",\n \"borderDisable\": \"#ffffff\",\n \"text\": \"#ffffff\",\n \"textActive\": \"#ffffff\",\n \"textDisable\": \"#ffffff\"\n }\n }\n}\n","import xsollaDark from \"./xsolla-dark.json\";\nimport xsollaLight from \"./xsolla-light.json\";\nimport pentagramDark from \"./pentagram-dark.json\";\nimport pentagramLight from \"./pentagram-light.json\";\nimport ltgDark from \"./ltg-dark.json\";\n\n/**\n * NOTE: The \"ghost\" button variant tokens (control.brand.ghost, control.mono.ghost,\n * control.brandExtra.ghost, control.alert.ghost, and their text.ghost counterparts)\n * are developer-added tokens NOT present in the Figma design token exports.\n * Do NOT delete them when syncing tokens from Figma.\n *\n * Similarly, \"appButton\" tokens are developer-added (by r.tallmadge@xsolla.com).\n */\nexport const colors = {\n // Default themes (Pentagram)\n dark: pentagramDark,\n light: pentagramLight,\n // Pentagram theme aliases\n \"pentagram-dark\": pentagramDark,\n \"pentagram-light\": pentagramLight,\n // Xsolla themes\n \"xsolla-dark\": xsollaDark,\n \"xsolla-light\": xsollaLight,\n xsollaDark: xsollaDark,\n xsollaLight: xsollaLight,\n // LTG themes\n \"ltg-dark\": ltgDark,\n};\n\n// Theme color type inferred from xsolla-dark as the reference theme\nexport type ThemeColors = typeof xsollaDark;\n","export const spacing = {\n xs: 4,\n s: 8,\n m: 16,\n l: 24,\n xl: 32,\n};\n\nexport const radius = {\n button: 4,\n card: 12,\n input: 4,\n tagSmall: 4,\n tagMedium: 6,\n tagLarge: 8,\n avatarSmall: 4,\n avatarLarge: 8,\n avatarCircle: 999,\n};\n","export const shadow = {\n active: \"0px 1px 2px rgba(7, 7, 8, 0.2), 0px 1px 3px 1px rgba(7, 7, 8, 0.1)\",\n surface: \"0px 1px 2px rgba(7, 7, 8, 0.2), 0px 2px 6px 2px rgba(7, 7, 8, 0.1)\",\n surfaceHover:\n \"0px 4px 8px 3px rgba(7, 7, 8, 0.1), 0px 1px 3px rgba(7, 7, 8, 0.2)\",\n popover:\n \"0px 6px 10px 4px rgba(7, 7, 8, 0.1), 0px 2px 3px rgba(7, 7, 8, 0.2)\",\n modal: \"0px 8px 12px 6px rgba(7, 7, 8, 0.1), 0px 4px 4px rgba(7, 7, 8, 0.2)\",\n};\n","import type { ProductContext } from \"./typography\";\n\nconst FALLBACK =\n '-apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif';\n\nconst displayFontByContext: Record<ProductContext, string> = {\n b2b: `\"Pilat\", \"Aktiv Grotesk\", \"Noto Sans\", \"Montserrat\", ${FALLBACK}`,\n b2c: `\"Pilat Wide\", \"Aktiv Grotesk\", \"Noto Sans\", \"Montserrat\", ${FALLBACK}`,\n paystation: `\"Pilat Wide\", \"Aktiv Grotesk\", \"Noto Sans\", \"Montserrat\", ${FALLBACK}`,\n presentation: `\"Pilat Wide\", \"Aktiv Grotesk\", \"Noto Sans\", \"Montserrat\", ${FALLBACK}`,\n};\n\nconst bodyFont = `\"Aktiv Grotesk\", \"Noto Sans\", \"Montserrat\", ${FALLBACK}`;\n\n/** Static fonts object (defaults to B2B for backwards compatibility) */\nexport const fonts = {\n heading: displayFontByContext.b2b,\n body: bodyFont,\n /** @deprecated Use `heading` or `body` instead */\n primary: bodyFont,\n};\n\n/** Returns context-aware font families */\nexport const getFonts = (productContext: ProductContext = \"b2b\") => ({\n heading: displayFontByContext[productContext],\n body: bodyFont,\n /** @deprecated Use `heading` or `body` instead */\n primary: bodyFont,\n});\n\nexport const typography = {\n button: {\n fontFamily: fonts.body,\n fontWeight: \"bold\",\n },\n};\n","// Typography token definitions for different product contexts (B2C, B2B, Pay Station, Presentation)\n// ProductContext determines typography, and in the future may also control component variations,\n// spacing, and other design system tokens that differ between B2B and B2C products.\n\nexport type ProductContext = \"b2c\" | \"b2b\" | \"paystation\" | \"presentation\";\n\nexport interface TypographyVariant {\n fontSize: number;\n lineHeight: string;\n fontWeight: number;\n}\n\nexport interface TypographyBodyVariant extends TypographyVariant {\n accent?: {\n fontWeight: number;\n };\n paragraph?: {\n lineHeight: string;\n spacing?: number;\n };\n}\n\nexport interface TypographyTokens {\n heading: {\n h1: TypographyVariant;\n h2: TypographyVariant;\n h3: TypographyVariant;\n h4: TypographyVariant;\n h5: TypographyVariant;\n };\n basic: {\n display: TypographyVariant;\n \"body-lg\": TypographyBodyVariant;\n \"body-md\": TypographyBodyVariant;\n \"body-sm\": TypographyBodyVariant;\n \"body-xs\": TypographyBodyVariant;\n };\n}\n\nexport const typographyTokens: Record<ProductContext, TypographyTokens> = {\n b2c: {\n heading: {\n h1: { fontSize: 40, lineHeight: \"48px\", fontWeight: 700 },\n h2: { fontSize: 32, lineHeight: \"38px\", fontWeight: 700 },\n h3: { fontSize: 28, lineHeight: \"34px\", fontWeight: 700 },\n h4: { fontSize: 24, lineHeight: \"28px\", fontWeight: 700 },\n h5: { fontSize: 20, lineHeight: \"24px\", fontWeight: 700 },\n },\n basic: {\n display: { fontSize: 48, lineHeight: \"58px\", fontWeight: 800 },\n \"body-lg\": {\n fontSize: 18,\n lineHeight: \"24px\",\n fontWeight: 400,\n accent: { fontWeight: 500 },\n paragraph: { lineHeight: \"26px\", spacing: 20 },\n },\n \"body-md\": {\n fontSize: 16,\n lineHeight: \"20px\",\n fontWeight: 400,\n accent: { fontWeight: 500 },\n paragraph: { lineHeight: \"22px\", spacing: 16 },\n },\n \"body-sm\": {\n fontSize: 14,\n lineHeight: \"18px\",\n fontWeight: 400,\n accent: { fontWeight: 500 },\n paragraph: { lineHeight: \"20px\", spacing: 12 },\n },\n \"body-xs\": {\n fontSize: 12,\n lineHeight: \"16px\",\n fontWeight: 400,\n accent: { fontWeight: 500 },\n paragraph: { lineHeight: \"18px\", spacing: 8 },\n },\n },\n },\n b2b: {\n heading: {\n h1: { fontSize: 56, lineHeight: \"68px\", fontWeight: 400 },\n h2: { fontSize: 48, lineHeight: \"58px\", fontWeight: 400 },\n h3: { fontSize: 32, lineHeight: \"38px\", fontWeight: 400 },\n h4: { fontSize: 24, lineHeight: \"28px\", fontWeight: 400 },\n h5: { fontSize: 20, lineHeight: \"24px\", fontWeight: 600 },\n },\n basic: {\n display: { fontSize: 64, lineHeight: \"78px\", fontWeight: 400 },\n \"body-lg\": {\n fontSize: 18,\n lineHeight: \"24px\",\n fontWeight: 400,\n accent: { fontWeight: 500 },\n paragraph: { lineHeight: \"26px\", spacing: 20 },\n },\n \"body-md\": {\n fontSize: 16,\n lineHeight: \"20px\",\n fontWeight: 400,\n accent: { fontWeight: 500 },\n paragraph: { lineHeight: \"22px\", spacing: 16 },\n },\n \"body-sm\": {\n fontSize: 14,\n lineHeight: \"18px\",\n fontWeight: 400,\n accent: { fontWeight: 500 },\n paragraph: { lineHeight: \"20px\", spacing: 12 },\n },\n \"body-xs\": {\n fontSize: 12,\n lineHeight: \"16px\",\n fontWeight: 400,\n accent: { fontWeight: 500 },\n paragraph: { lineHeight: \"18px\", spacing: 8 },\n },\n },\n },\n paystation: {\n heading: {\n h1: { fontSize: 28, lineHeight: \"34px\", fontWeight: 700 },\n h2: { fontSize: 24, lineHeight: \"28px\", fontWeight: 700 },\n h3: { fontSize: 20, lineHeight: \"24px\", fontWeight: 700 },\n h4: { fontSize: 18, lineHeight: \"22px\", fontWeight: 700 },\n h5: { fontSize: 16, lineHeight: \"20px\", fontWeight: 700 },\n },\n basic: {\n display: { fontSize: 40, lineHeight: \"48px\", fontWeight: 800 },\n \"body-lg\": {\n fontSize: 16,\n lineHeight: \"20px\",\n fontWeight: 400,\n accent: { fontWeight: 500 },\n paragraph: { lineHeight: \"22px\", spacing: 16 },\n },\n \"body-md\": {\n fontSize: 14,\n lineHeight: \"18px\",\n fontWeight: 400,\n accent: { fontWeight: 500 },\n paragraph: { lineHeight: \"20px\", spacing: 12 },\n },\n \"body-sm\": {\n fontSize: 12,\n lineHeight: \"16px\",\n fontWeight: 400,\n accent: { fontWeight: 500 },\n paragraph: { lineHeight: \"18px\", spacing: 8 },\n },\n \"body-xs\": {\n fontSize: 10,\n lineHeight: \"14px\",\n fontWeight: 400,\n accent: { fontWeight: 500 },\n paragraph: { lineHeight: \"14px\", spacing: 6 },\n },\n },\n },\n presentation: {\n heading: {\n h1: { fontSize: 56, lineHeight: \"68px\", fontWeight: 700 },\n h2: { fontSize: 48, lineHeight: \"58px\", fontWeight: 700 },\n h3: { fontSize: 40, lineHeight: \"48px\", fontWeight: 700 },\n h4: { fontSize: 32, lineHeight: \"38px\", fontWeight: 700 },\n h5: { fontSize: 28, lineHeight: \"34px\", fontWeight: 700 },\n },\n basic: {\n display: { fontSize: 64, lineHeight: \"78px\", fontWeight: 800 },\n \"body-lg\": {\n fontSize: 24,\n lineHeight: \"30px\",\n fontWeight: 400,\n accent: { fontWeight: 500 },\n paragraph: { lineHeight: \"34px\", spacing: 24 },\n },\n \"body-md\": {\n fontSize: 20,\n lineHeight: \"26px\",\n fontWeight: 400,\n accent: { fontWeight: 500 },\n paragraph: { lineHeight: \"28px\", spacing: 20 },\n },\n \"body-sm\": {\n fontSize: 18,\n lineHeight: \"24px\",\n fontWeight: 400,\n accent: { fontWeight: 500 },\n paragraph: { lineHeight: \"26px\", spacing: 16 },\n },\n \"body-xs\": {\n fontSize: 16,\n lineHeight: \"20px\",\n fontWeight: 400,\n accent: { fontWeight: 500 },\n paragraph: { lineHeight: \"22px\", spacing: 12 },\n },\n },\n },\n};\n\n// Default product context (B2B for backwards compatibility)\nexport const defaultProductContext: ProductContext = \"b2b\";\n\n// Helper function to get typography tokens for a specific product context\nexport const getTypographyTokens = (\n productContext: ProductContext = defaultProductContext\n): TypographyTokens => {\n return (\n typographyTokens[productContext] || typographyTokens[defaultProductContext]\n );\n};\n\n// Helper function to get a specific variant's styles\nexport const getTypographyVariant = (\n productContext: ProductContext,\n variant: string\n): TypographyVariant | TypographyBodyVariant | undefined => {\n const tokens = getTypographyTokens(productContext);\n\n // Check heading variants\n if (variant in tokens.heading) {\n return tokens.heading[variant as keyof typeof tokens.heading];\n }\n\n // Check basic variants\n if (variant === \"display\") {\n return tokens.basic.display;\n }\n\n // Check body variants\n const bodyVariantMap: Record<string, keyof typeof tokens.basic> = {\n bodyLg: \"body-lg\",\n bodyMd: \"body-md\",\n bodySm: \"body-sm\",\n bodyXs: \"body-xs\",\n };\n\n const bodyKey =\n bodyVariantMap[variant.replace(\"Accent\", \"\").replace(\"Paragraph\", \"\")];\n if (bodyKey && bodyKey in tokens.basic) {\n const baseVariant = tokens.basic[\n bodyKey as keyof typeof tokens.basic\n ] as TypographyBodyVariant;\n\n if (variant.includes(\"Accent\") && baseVariant.accent) {\n return {\n ...baseVariant,\n fontWeight: baseVariant.accent.fontWeight,\n };\n }\n\n if (variant.includes(\"Paragraph\") && baseVariant.paragraph) {\n return {\n ...baseVariant,\n lineHeight: baseVariant.paragraph.lineHeight,\n };\n }\n\n return baseVariant;\n }\n\n return undefined;\n};\n","import React, { useEffect, useRef } from \"react\";\nimport { isWeb } from \"../platform\";\nimport { fontFacesCSS } from \"./fontFaces\";\n\nlet injected = false;\n\n/**\n * Injects @font-face declarations into the document on web.\n * Safe to render multiple times — the style tag is only created once.\n * No-ops on React Native.\n */\nfunction injectFontStyles(): void {\n if (!isWeb || injected) return;\n\n const style = document.createElement(\"style\");\n style.setAttribute(\"data-xui-fonts\", \"\");\n style.textContent = fontFacesCSS;\n document.head.appendChild(style);\n injected = true;\n}\n\n/**\n * React component that loads the toolkit's font-face declarations.\n * Drop-in for any framework — works in Next.js, Vite, CRA, etc.\n *\n * Renders nothing to the DOM. Injects a single `<style>` tag into `<head>` on mount.\n */\nexport const FontLoader: React.FC = () => {\n const mountedRef = useRef(false);\n\n useEffect(() => {\n if (!mountedRef.current) {\n injectFontStyles();\n mountedRef.current = true;\n }\n }, []);\n\n return null;\n};\n\nFontLoader.displayName = \"FontLoader\";\n","export const isWeb = typeof document !== \"undefined\";\nexport const isNative = !isWeb;\n\n// For native platforms, we can check specific globals if needed,\n// but usually we just care about isWeb vs isNative for common logic.\nexport const isIOS =\n isNative &&\n typeof global !== \"undefined\" &&\n (global as any).Platform?.OS === \"ios\";\nexport const isAndroid =\n isNative &&\n typeof global !== \"undefined\" &&\n (global as any).Platform?.OS === \"android\";\n","const CDN_STRAPI = \"https://cdn.xsolla.net/strapi-v2-bucket-prod\";\nconst CDN_MERCHANT =\n \"https://cdn.xsolla.net/merchant-bucket-prod/files/uploaded/722279\";\n\n/**\n * @font-face CSS for all toolkit fonts, loaded from Xsolla CDN.\n *\n * Pilat Wide — B2C heading/display font, registered at weights 400, 600, 700, 800.\n *\n * Pilat — B2B heading/display font, registered at weights 300, 400, 600, 700, 800.\n *\n * Aktiv Grotesk — body font for all contexts,\n * mapped from the Sharp Grotesk CDN files (same typeface under a legacy name).\n * Registered at weights 300, 400, 500, 600, 700.\n */\nexport const fontFacesCSS = `\n /* ── Pilat Wide (B2C headings) ── */\n\n @font-face {\n font-family: 'Pilat Wide';\n src: url('${CDN_STRAPI}/Pilat_Test_Medium_/Pilat_Test_Medium.ttf') format('truetype');\n font-weight: 400;\n font-style: normal;\n font-display: swap;\n }\n @font-face {\n font-family: 'Pilat Wide';\n src: url('${CDN_STRAPI}/Pilat_Test_Demi_Bold_bee67c470a/Pilat_Test_Demi_Bold_bee67c470a.ttf') format('truetype');\n font-weight: 600;\n font-style: normal;\n font-display: swap;\n }\n @font-face {\n font-family: 'Pilat Wide';\n src: url('${CDN_STRAPI}/Pilat_Test_Bold_b12b40d234/Pilat_Test_Bold_b12b40d234.ttf') format('truetype');\n font-weight: 700;\n font-style: normal;\n font-display: swap;\n }\n @font-face {\n font-family: 'Pilat Wide';\n src: url('${CDN_STRAPI}/Pilat_Test_Heavy_2885678ca4/Pilat_Test_Heavy_2885678ca4.otf') format('opentype');\n font-weight: 800;\n font-style: normal;\n font-display: swap;\n }\n\n /* ── Pilat (B2B headings) ── */\n\n @font-face {\n font-family: 'Pilat';\n src: url('${CDN_MERCHANT}/55a03110b2400b778d485de2c8d064c0.woff2') format('woff2');\n font-weight: 300;\n font-style: normal;\n font-display: swap;\n }\n @font-face {\n font-family: 'Pilat';\n src: url('${CDN_MERCHANT}/e968c9cc76e48ff6111c90534549bbf9.woff2') format('woff2');\n font-weight: 400;\n font-style: normal;\n font-display: swap;\n }\n @font-face {\n font-family: 'Pilat';\n src: url('${CDN_MERCHANT}/ed4fe74e88aaacc6978f06a862e75b08.woff2') format('woff2');\n font-weight: 600;\n font-style: normal;\n font-display: swap;\n }\n @font-face {\n font-family: 'Pilat';\n src: url('${CDN_MERCHANT}/7450f429979af7eaa8fa4d4d91cee927.woff2') format('woff2');\n font-weight: 700;\n font-style: normal;\n font-display: swap;\n }\n @font-face {\n font-family: 'Pilat';\n src: url('${CDN_MERCHANT}/218d647ff7690c1e312f6943e29af375.woff2') format('woff2');\n font-weight: 800;\n font-style: normal;\n font-display: swap;\n }\n\n /* ── Aktiv Grotesk (body) — served from Sharp Grotesk CDN files ── */\n\n @font-face {\n font-family: 'Aktiv Grotesk';\n src: url('${CDN_STRAPI}/Pilat_Test_Light_c4650750bb/Pilat_Test_Light_c4650750bb.otf') format('opentype');\n font-weight: 300;\n font-style: normal;\n font-display: swap;\n }\n @font-face {\n font-family: 'Aktiv Grotesk';\n src: url('${CDN_STRAPI}/Pilat_Test_Book_5cb49cd592/Pilat_Test_Book_5cb49cd592.otf') format('opentype');\n font-weight: 400;\n font-style: normal;\n font-display: swap;\n }\n @font-face {\n font-family: 'Aktiv Grotesk';\n src: url('${CDN_STRAPI}/Pilat_Test_Demi_e9bed59107/Pilat_Test_Demi_e9bed59107.otf') format('opentype');\n font-weight: 500;\n font-style: normal;\n font-display: swap;\n }\n @font-face {\n font-family: 'Aktiv Grotesk';\n src: url('${CDN_STRAPI}/Pilat_Test_Bold_195d1b44fa/Pilat_Test_Bold_195d1b44fa.otf') format('opentype');\n font-weight: 600;\n font-style: normal;\n font-display: swap;\n }\n @font-face {\n font-family: 'Aktiv Grotesk';\n src: url('${CDN_STRAPI}/Pilat_Test_Bold_195d1b44fa/Pilat_Test_Bold_195d1b44fa.otf') format('opentype');\n font-weight: 700;\n font-style: normal;\n font-display: swap;\n }\n`;\n"],"mappings":"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","names":["React","React"]}
|
|
1
|
+
{"version":3,"sources":["../src/index.tsx","../src/tokens/pentagram-dark.json","../src/tokens/pentagram-light.json","../src/tokens/ltg-dark.json","../src/tokens/colors.ts","../src/tokens/spacing.ts","../src/tokens/shadows.ts","../src/tokens/fonts.ts","../src/tokens/typography.ts","../src/fonts/FontLoader.tsx","../src/platform.ts","../src/fonts/fontFaces.ts"],"sourcesContent":["import React, { createContext, useContext, useState, useMemo } from \"react\";\nimport { colors } from \"./tokens/colors\";\nimport { spacing, radius } from \"./tokens/spacing\";\nimport { shadow } from \"./tokens/shadows\";\nimport { getFonts } from \"./tokens/fonts\";\nimport {\n ProductContext,\n getTypographyTokens,\n defaultProductContext,\n} from \"./tokens/typography\";\nimport { FontLoader } from \"./fonts/FontLoader\";\n\nexport type ThemeMode =\n | \"dark\"\n | \"light\"\n | \"pentagram-dark\"\n | \"pentagram-light\"\n | \"ltg-dark\";\n\nconst DEPRECATED_MODES = new Set([\n \"xsolla-dark\",\n \"xsolla-light\",\n \"xsollaDark\",\n \"xsollaLight\",\n]);\n\nexport const themeConfig = (\n mode: ThemeMode = \"dark\",\n productContext: ProductContext = defaultProductContext\n) => {\n if (DEPRECATED_MODES.has(mode)) {\n console.warn(\n `Theme mode \"${mode}\" is deprecated and will be removed in the next major update. Please migrate to \"dark\" or \"light\".`\n );\n }\n const contextFonts = getFonts(productContext);\n return {\n colors: colors[mode as keyof typeof colors],\n spacing,\n radius,\n shadow,\n fonts: contextFonts,\n typography: {\n primary: contextFonts.body,\n heading: contextFonts.heading,\n body: contextFonts.body,\n },\n typographyTokens: getTypographyTokens(productContext),\n productContext,\n sizing: {\n button: (size: \"xl\" | \"lg\" | \"md\" | \"sm\" | \"xs\") => {\n const configs = {\n xl: {\n height: 64,\n padding: 20,\n fontSize: 20,\n sublabelFontSize: 18,\n spinnerSize: 24,\n iconSize: 32,\n iconContainerSize: 64,\n iconPadding: 20,\n loadingPadding: 40,\n borderRadius: 8,\n labelIconSize: 18,\n labelIconGap: 6,\n },\n lg: {\n height: 56,\n padding: 20,\n fontSize: 18,\n sublabelFontSize: 16,\n spinnerSize: 24,\n iconSize: 32,\n iconContainerSize: 56,\n iconPadding: 20,\n loadingPadding: 36,\n borderRadius: 8,\n labelIconSize: 16,\n labelIconGap: 6,\n },\n md: {\n height: 48,\n padding: 20,\n fontSize: 16,\n sublabelFontSize: 14,\n spinnerSize: 20,\n iconSize: 28,\n iconContainerSize: 48,\n iconPadding: 20,\n loadingPadding: 32,\n borderRadius: 8,\n labelIconSize: 14,\n labelIconGap: 4,\n },\n sm: {\n height: 40,\n padding: 20,\n fontSize: 14,\n sublabelFontSize: 12,\n spinnerSize: 16,\n iconSize: 28,\n iconContainerSize: 40,\n iconPadding: 20,\n loadingPadding: 28,\n borderRadius: 4,\n labelIconSize: 12,\n labelIconGap: 4,\n },\n xs: {\n height: 32,\n padding: 20,\n fontSize: 12,\n sublabelFontSize: 10,\n spinnerSize: 16,\n iconSize: 24,\n iconContainerSize: 32,\n iconPadding: 20,\n loadingPadding: 28,\n borderRadius: 4,\n labelIconSize: 10,\n labelIconGap: 4,\n },\n };\n return configs[size];\n },\n flexButton: (size: \"xl\" | \"lg\" | \"md\" | \"sm\" | \"xs\") => {\n const configs = {\n xl: {\n height: 36,\n padding: 4,\n fontSize: 16,\n spinnerSize: 28,\n iconSize: 20,\n borderRadius: 4,\n },\n lg: {\n height: 32,\n padding: 4,\n fontSize: 14,\n spinnerSize: 24,\n iconSize: 18,\n borderRadius: 4,\n },\n md: {\n height: 28,\n padding: 2,\n fontSize: 14,\n spinnerSize: 24,\n iconSize: 16,\n borderRadius: 2,\n },\n sm: {\n height: 22,\n padding: 2,\n fontSize: 12,\n spinnerSize: 16,\n iconSize: 14,\n borderRadius: 2,\n },\n xs: {\n height: 20,\n padding: 2,\n fontSize: 12,\n spinnerSize: 16,\n iconSize: 12,\n borderRadius: 2,\n },\n };\n return configs[size];\n },\n checkbox: (size: \"xl\" | \"lg\" | \"md\" | \"sm\") => {\n const configs = {\n xl: {\n size: 22,\n fontSize: 18,\n descriptionFontSize: 16,\n labelGap: 12,\n textGap: 4,\n borderRadius: 2,\n },\n lg: {\n size: 20,\n fontSize: 16,\n descriptionFontSize: 14,\n labelGap: 10,\n textGap: 2,\n borderRadius: 2,\n },\n md: {\n size: 18,\n fontSize: 16,\n descriptionFontSize: 14,\n labelGap: 8,\n textGap: 2,\n borderRadius: 2,\n },\n sm: {\n size: 16,\n fontSize: 14,\n descriptionFontSize: 12,\n labelGap: 8,\n textGap: 0,\n borderRadius: 2,\n },\n };\n return configs[size];\n },\n radio: (size: \"xl\" | \"lg\" | \"md\" | \"sm\") => {\n const configs = {\n xl: {\n size: 24,\n fontSize: 20,\n lineHeight: 22,\n descriptionFontSize: 18,\n descriptionLineHeight: 20,\n labelGap: 12,\n textGap: 4,\n borderWidth: 2,\n },\n lg: {\n size: 20,\n fontSize: 18,\n lineHeight: 20,\n descriptionFontSize: 16,\n descriptionLineHeight: 18,\n labelGap: 10,\n textGap: 2,\n borderWidth: 2,\n },\n md: {\n size: 18,\n fontSize: 16,\n lineHeight: 18,\n descriptionFontSize: 14,\n descriptionLineHeight: 16,\n labelGap: 8,\n textGap: 2,\n borderWidth: 1,\n },\n sm: {\n size: 16,\n fontSize: 14,\n lineHeight: 16,\n descriptionFontSize: 12,\n descriptionLineHeight: 14,\n labelGap: 8,\n textGap: 0,\n borderWidth: 1,\n },\n };\n return configs[size];\n },\n input: (size: \"xl\" | \"lg\" | \"md\" | \"sm\" | \"xs\") => {\n const configs = {\n xl: {\n height: 64,\n paddingVertical: 12,\n paddingHorizontal: 12,\n fontSize: 20,\n iconSize: 18,\n radius: 8,\n borderWidth: 2,\n fieldGap: 8,\n lineHeight: 20,\n },\n lg: {\n height: 56,\n paddingVertical: 14,\n paddingHorizontal: 12,\n fontSize: 18,\n iconSize: 18,\n radius: 8,\n borderWidth: 2,\n fieldGap: 6,\n lineHeight: 18,\n },\n md: {\n height: 48,\n paddingVertical: 11,\n paddingHorizontal: 12,\n fontSize: 16,\n iconSize: 18,\n radius: 8,\n borderWidth: 1,\n fieldGap: 4,\n lineHeight: 16,\n },\n sm: {\n height: 40,\n paddingVertical: 7,\n paddingHorizontal: 10,\n fontSize: 14,\n iconSize: 18,\n radius: 4,\n borderWidth: 1,\n fieldGap: 4,\n lineHeight: 14,\n },\n xs: {\n height: 32,\n paddingVertical: 7,\n paddingHorizontal: 10,\n fontSize: 12,\n iconSize: 18,\n radius: 4,\n borderWidth: 1,\n fieldGap: 4,\n lineHeight: 10,\n },\n };\n return configs[size];\n },\n inputPin: (size: \"xl\" | \"lg\" | \"md\" | \"sm\" | \"xs\") => {\n const configs = {\n xl: {\n size: 64,\n gap: 10,\n fontSize: 20,\n radius: 8,\n borderWidth: 1,\n fieldGap: 8,\n },\n lg: {\n size: 56,\n gap: 8,\n fontSize: 18,\n radius: 8,\n borderWidth: 1,\n fieldGap: 6,\n },\n md: {\n size: 48,\n gap: 6,\n fontSize: 16,\n radius: 8,\n borderWidth: 1,\n fieldGap: 4,\n },\n sm: {\n size: 40,\n gap: 4,\n fontSize: 14,\n radius: 4,\n borderWidth: 1,\n fieldGap: 4,\n },\n xs: {\n size: 32,\n gap: 4,\n fontSize: 12,\n radius: 4,\n borderWidth: 1,\n fieldGap: 4,\n },\n };\n return configs[size];\n },\n textarea: (size: \"xl\" | \"lg\" | \"md\" | \"sm\" | \"xs\") => {\n const configs = {\n xl: {\n height: 144,\n padding: spacing.xl,\n fontSize: 20,\n iconSize: 32,\n radius: 8,\n },\n lg: {\n height: 128,\n padding: spacing.l,\n fontSize: 18,\n iconSize: 28,\n radius: 8,\n },\n md: {\n height: 112,\n padding: spacing.m,\n fontSize: 16,\n iconSize: 24,\n radius: 8,\n },\n sm: {\n height: 96,\n padding: spacing.s,\n fontSize: 14,\n iconSize: 20,\n radius: 4,\n },\n xs: {\n height: 80,\n padding: spacing.xs,\n fontSize: 12,\n iconSize: 16,\n radius: 4,\n },\n };\n return configs[size];\n },\n switch: (size: \"xl\" | \"lg\" | \"md\" | \"sm\") => {\n const configs = {\n xl: {\n width: 40,\n height: 22,\n knobSize: 18,\n fontSize: 20,\n lineHeight: 22,\n descriptionFontSize: 18,\n descriptionLineHeight: 20,\n labelGap: 12,\n textGap: 4,\n frameBorderRadius: 4,\n knobBorderRadius: 2,\n },\n lg: {\n width: 36,\n height: 20,\n knobSize: 16,\n fontSize: 18,\n lineHeight: 20,\n descriptionFontSize: 16,\n descriptionLineHeight: 18,\n labelGap: 10,\n textGap: 2,\n frameBorderRadius: 4,\n knobBorderRadius: 2,\n },\n md: {\n width: 32,\n height: 18,\n knobSize: 14,\n fontSize: 16,\n lineHeight: 18,\n descriptionFontSize: 14,\n descriptionLineHeight: 16,\n labelGap: 8,\n textGap: 2,\n frameBorderRadius: 2,\n knobBorderRadius: 2,\n },\n sm: {\n width: 28,\n height: 16,\n knobSize: 12,\n fontSize: 14,\n lineHeight: 16,\n descriptionFontSize: 12,\n descriptionLineHeight: 14,\n labelGap: 8,\n textGap: 0,\n frameBorderRadius: 2,\n knobBorderRadius: 2,\n },\n };\n return configs[size];\n },\n avatar: (size: \"xl\" | \"lg\" | \"md\" | \"sm\" | \"xs\" | \"xxs\") => {\n // Badge offsets adjusted for XL badge size (20px)\n const configs = {\n xl: {\n size: 64,\n fontSize: 20,\n iconSize: 48,\n badgeSize: 20,\n badgeOffsetCircle: { right: -4, top: -4 },\n badgeOffsetSquare: { right: -8, top: -8 },\n borderRadiusSquare: radius.avatarSmall,\n borderRadiusCircle: radius.avatarCircle,\n },\n lg: {\n size: 56,\n fontSize: 20,\n iconSize: 40,\n badgeSize: 20,\n badgeOffsetCircle: { right: -4, top: -4 },\n badgeOffsetSquare: { right: -8, top: -8 },\n borderRadiusSquare: radius.avatarSmall,\n borderRadiusCircle: radius.avatarCircle,\n },\n md: {\n size: 48,\n fontSize: 18,\n iconSize: 32,\n badgeSize: 20,\n badgeOffsetCircle: { right: -5, top: -5 },\n badgeOffsetSquare: { right: -8, top: -8 },\n borderRadiusSquare: radius.avatarSmall,\n borderRadiusCircle: radius.avatarCircle,\n },\n sm: {\n size: 40,\n fontSize: 16,\n iconSize: 24,\n badgeSize: 20,\n badgeOffsetCircle: { right: -6, top: -6 },\n badgeOffsetSquare: { right: -8, top: -8 },\n borderRadiusSquare: radius.avatarSmall,\n borderRadiusCircle: radius.avatarCircle,\n },\n xs: {\n size: 32,\n fontSize: 12,\n iconSize: 24,\n badgeSize: 8,\n badgeOffsetCircle: { right: -1, top: -1 },\n badgeOffsetSquare: { right: -3, top: -3 },\n borderRadiusSquare: radius.avatarSmall,\n borderRadiusCircle: radius.avatarCircle,\n },\n xxs: {\n size: 24,\n fontSize: 10,\n iconSize: 16,\n badgeSize: 6,\n badgeOffsetCircle: { right: -1, top: -1 },\n badgeOffsetSquare: { right: -2, top: -2 },\n borderRadiusSquare: radius.avatarSmall,\n borderRadiusCircle: radius.avatarCircle,\n },\n };\n return configs[size];\n },\n tag: (size: \"xl\" | \"lg\" | \"md\" | \"sm\" | \"xs\") => {\n const configs = {\n xl: {\n height: 48,\n padding: 13,\n fontSize: 20,\n lineHeight: 22,\n gap: 6,\n iconSize: 22,\n radius: 8,\n borderWidth: 1,\n },\n lg: {\n height: 40,\n padding: 10,\n fontSize: 18,\n lineHeight: 20,\n gap: 6,\n iconSize: 20,\n radius: 8,\n borderWidth: 1,\n },\n md: {\n height: 32,\n padding: 7,\n fontSize: 16,\n lineHeight: 18,\n gap: 4,\n iconSize: 18,\n radius: 6,\n borderWidth: 1,\n },\n sm: {\n height: 24,\n padding: 4,\n fontSize: 14,\n lineHeight: 16,\n gap: 4,\n iconSize: 16,\n radius: 4,\n borderWidth: 1,\n },\n xs: {\n height: 20,\n padding: 3,\n fontSize: 12,\n lineHeight: 14,\n gap: 4,\n iconSize: 14,\n radius: 4,\n borderWidth: 1,\n },\n };\n return configs[size];\n },\n divider: (size: \"lg\" | \"md\" | \"sm\") => {\n const configs = {\n lg: { height: 18, fontSize: 16, lineWeight: 1 },\n md: { height: 16, fontSize: 14, lineWeight: 1 },\n sm: { height: 14, fontSize: 12, lineWeight: 1 },\n };\n return configs[size];\n },\n spinner: (size: \"xl\" | \"lg\" | \"md\" | \"sm\" | \"xs\") => {\n const configs = {\n xl: { size: 96, strokeWidth: 10 },\n lg: { size: 48, strokeWidth: 5 },\n md: { size: 24, strokeWidth: 2 },\n sm: { size: 16, strokeWidth: 2 },\n xs: { size: 8, strokeWidth: 1 },\n };\n return configs[size];\n },\n tabs: (size: \"xl\" | \"lg\" | \"md\" | \"sm\") => {\n const configs = {\n xl: {\n height: 64,\n fontSize: 20,\n iconSize: 18,\n gap: 6,\n paddingHorizontal: 20,\n },\n lg: {\n height: 56,\n fontSize: 18,\n iconSize: 18,\n gap: 6,\n paddingHorizontal: 20,\n },\n md: {\n height: 48,\n fontSize: 16,\n iconSize: 18,\n gap: 6,\n paddingHorizontal: 20,\n },\n sm: {\n height: 40,\n fontSize: 14,\n iconSize: 18,\n gap: 6,\n paddingHorizontal: 20,\n },\n };\n return configs[size];\n },\n segmented: (size: \"xl\" | \"lg\" | \"md\" | \"sm\") => {\n // Sizing based on Figma: node-id=5867-44879\n const configs = {\n xl: {\n height: 64,\n containerPadding: 4,\n containerRadius: 8,\n itemHeight: 56,\n itemPaddingHorizontal: 20,\n itemPaddingVertical: 10,\n itemRadius: 6,\n fontSize: 20,\n lineHeight: 22,\n iconSize: 24,\n gap: 8,\n },\n lg: {\n height: 56,\n containerPadding: 4,\n containerRadius: 8,\n itemHeight: 48,\n itemPaddingHorizontal: 20,\n itemPaddingVertical: 10,\n itemRadius: 6,\n fontSize: 18,\n lineHeight: 20,\n iconSize: 24,\n gap: 8,\n },\n md: {\n height: 48,\n containerPadding: 4,\n containerRadius: 8,\n itemHeight: 40,\n itemPaddingHorizontal: 16,\n itemPaddingVertical: 8,\n itemRadius: 6,\n fontSize: 16,\n lineHeight: 18,\n iconSize: 24,\n gap: 6,\n },\n sm: {\n height: 40,\n containerPadding: 4,\n containerRadius: 4,\n itemHeight: 32,\n itemPaddingHorizontal: 12,\n itemPaddingVertical: 6,\n itemRadius: 2,\n fontSize: 14,\n lineHeight: 16,\n iconSize: 20,\n gap: 4,\n },\n };\n return configs[size];\n },\n tabsSegmented: (size: \"xl\" | \"lg\" | \"md\" | \"sm\") => {\n // Sizing based on Figma: node-id=5986-3922\n const configs = {\n xl: {\n height: 64,\n containerPadding: 4,\n containerRadius: 4,\n itemPaddingHorizontal: 16,\n itemPaddingVertical: 18,\n itemRadius: 2,\n fontSize: 20,\n lineHeight: 22,\n iconSize: 24,\n gap: 8,\n },\n lg: {\n height: 56,\n containerPadding: 4,\n containerRadius: 4,\n itemPaddingHorizontal: 16,\n itemPaddingVertical: 14,\n itemRadius: 2,\n fontSize: 18,\n lineHeight: 20,\n iconSize: 24,\n gap: 8,\n },\n md: {\n height: 48,\n containerPadding: 4,\n containerRadius: 4,\n itemPaddingHorizontal: 12,\n itemPaddingVertical: 11,\n itemRadius: 2,\n fontSize: 16,\n lineHeight: 18,\n iconSize: 24,\n gap: 6,\n },\n sm: {\n height: 40,\n containerPadding: 3,\n containerRadius: 2,\n itemPaddingHorizontal: 12,\n itemPaddingVertical: 8,\n itemRadius: 2,\n fontSize: 14,\n lineHeight: 16,\n iconSize: 20,\n gap: 6,\n },\n };\n return configs[size];\n },\n checkboxTagGroup: (size: \"xl\" | \"lg\" | \"md\" | \"sm\") => {\n const configs = {\n xl: {\n height: 64,\n paddingHorizontal: 16,\n paddingVertical: 21,\n fontSize: 20,\n lineHeight: 22,\n gap: 8,\n borderRadius: 4,\n },\n lg: {\n height: 56,\n paddingHorizontal: 16,\n paddingVertical: 18,\n fontSize: 18,\n lineHeight: 20,\n gap: 8,\n borderRadius: 4,\n },\n md: {\n height: 48,\n paddingHorizontal: 12,\n paddingVertical: 15,\n fontSize: 16,\n lineHeight: 18,\n gap: 8,\n borderRadius: 2,\n },\n sm: {\n height: 40,\n paddingHorizontal: 12,\n paddingVertical: 11,\n fontSize: 14,\n lineHeight: 16,\n gap: 4,\n borderRadius: 2,\n },\n };\n return configs[size];\n },\n badge: (size: \"xl\" | \"lg\" | \"md\" | \"sm\" | \"xs\" | \"xxs\") => {\n const configs = {\n xl: {\n size: 20,\n fontSize: 12,\n lineHeight: 14,\n iconSize: 12,\n padding: 4,\n },\n lg: {\n size: 16,\n fontSize: 10,\n lineHeight: 10,\n iconSize: 10,\n padding: 4,\n },\n md: {\n size: 12,\n fontSize: 10,\n lineHeight: 10,\n iconSize: 8,\n padding: 4,\n },\n sm: { size: 8, fontSize: 8, lineHeight: 8, iconSize: 6, padding: 0 },\n xs: { size: 6, fontSize: 6, lineHeight: 6, iconSize: 4, padding: 0 },\n xxs: { size: 4, fontSize: 4, lineHeight: 4, iconSize: 4, padding: 0 },\n };\n return configs[size];\n },\n notification: (type: \"toast\" | \"inline\") => {\n const configs = {\n toast: {\n width: 400,\n paddingHorizontal: 20,\n paddingVertical: 16,\n gap: 16,\n titleSize: 18,\n messageSize: 14,\n iconSize: 20,\n iconWrapperSize: 32,\n radius: radius.card,\n },\n inline: {\n width: \"100%\",\n paddingHorizontal: 20,\n paddingVertical: 16,\n gap: 28,\n titleSize: 18,\n messageSize: 14,\n iconSize: 20,\n iconWrapperSize: 32,\n radius: radius.card,\n },\n };\n return configs[type];\n },\n notificationPanel: () => ({\n minHeight: 66,\n iconFrameWidth: 54,\n iconSize: 24,\n borderRadius: 8,\n bodyPaddingHorizontal: 16,\n bodyPaddingVertical: 12,\n textGap: 2,\n contentGap: 24,\n buttonsGap: 8,\n closeButtonSize: 32,\n titleFontSize: 16,\n titleLineHeight: 20,\n descriptionFontSize: 14,\n descriptionLineHeight: 20,\n }),\n progress: (size: \"xl\" | \"lg\" | \"md\" | \"sm\" | \"xs\" | \"xxs\") => {\n const configs = {\n xl: { height: 10, labelSize: 16, helperSize: 14, gap: 10 },\n lg: { height: 8, labelSize: 14, helperSize: 12, gap: 8 },\n md: { height: 6, labelSize: 12, helperSize: 12, gap: 6 },\n sm: { height: 4, labelSize: 12, helperSize: 12, gap: 4 },\n xs: { height: 2, labelSize: 10, helperSize: 10, gap: 2 },\n xxs: { height: 2, labelSize: 10, helperSize: 10, gap: 2 },\n };\n return configs[size];\n },\n supportingText: (size: \"xl\" | \"lg\" | \"md\" | \"sm\" | \"xs\") => {\n const configs = {\n xl: { fontSize: 18, lineHeight: \"20px\", gap: 6, iconSize: 18 },\n lg: { fontSize: 16, lineHeight: \"18px\", gap: 6, iconSize: 18 },\n md: { fontSize: 14, lineHeight: \"16px\", gap: 6, iconSize: 18 },\n sm: { fontSize: 12, lineHeight: \"14px\", gap: 4, iconSize: 16 },\n xs: { fontSize: 10, lineHeight: \"10px\", gap: 4, iconSize: 16 },\n };\n return configs[size];\n },\n iconWrapper: (size: \"xl\" | \"lg\" | \"md\" | \"sm\" | \"xs\" | \"xxs\") => {\n const configs = {\n xl: { size: 56, iconSize: 32, fontSize: 24 },\n lg: { size: 48, iconSize: 28, fontSize: 20 },\n md: { size: 40, iconSize: 24, fontSize: 18 },\n sm: { size: 32, iconSize: 20, fontSize: 16 },\n xs: { size: 24, iconSize: 16, fontSize: 14 },\n xxs: { size: 18, iconSize: 12, fontSize: 12 },\n };\n return configs[size];\n },\n stepper: (size: \"md\" | \"sm\") => {\n const configs = {\n md: {\n iconSize: 32,\n titleSize: 16,\n descSize: 14,\n gap: 12,\n currentTitleSize: 20,\n currentDescSize: 14,\n currentPadding: 24,\n tailSize: 5,\n },\n sm: {\n iconSize: 24,\n titleSize: 14,\n descSize: 12,\n gap: 8,\n currentTitleSize: 16,\n currentDescSize: 12,\n currentPadding: 20,\n tailSize: 3,\n },\n };\n return configs[size];\n },\n contextMenu: (size: \"xl\" | \"lg\" | \"md\" | \"sm\") => {\n // Sizing values from Figma design: node-id=5867-47111\n const configs = {\n xl: {\n paddingVertical: 8,\n itemPaddingHorizontal: 16,\n itemPaddingVertical: 18,\n fontSize: 20,\n lineHeight: 22,\n descriptionFontSize: 18,\n iconSize: 18,\n gap: 12,\n minWidth: 276,\n // Search sizing from Figma\n searchPaddingHorizontal: 16,\n searchPaddingVertical: 18,\n searchGap: 18,\n searchFontSize: 20,\n searchLineHeight: 22,\n searchIconSize: 18,\n },\n lg: {\n paddingVertical: 8,\n itemPaddingHorizontal: 14,\n itemPaddingVertical: 14,\n fontSize: 18,\n lineHeight: 20,\n descriptionFontSize: 16,\n iconSize: 18,\n gap: 10,\n minWidth: 220,\n // Search sizing from Figma\n searchPaddingHorizontal: 14,\n searchPaddingVertical: 14,\n searchGap: 14,\n searchFontSize: 18,\n searchLineHeight: 20,\n searchIconSize: 18,\n },\n md: {\n paddingVertical: 8,\n itemPaddingHorizontal: 12,\n itemPaddingVertical: 11,\n fontSize: 16,\n lineHeight: 18,\n descriptionFontSize: 14,\n iconSize: 18,\n gap: 8,\n minWidth: 172,\n // Search sizing from Figma\n searchPaddingHorizontal: 12,\n searchPaddingVertical: 11,\n searchGap: 10,\n searchFontSize: 16,\n searchLineHeight: 18,\n searchIconSize: 18,\n },\n sm: {\n paddingVertical: 8,\n itemPaddingHorizontal: 10,\n itemPaddingVertical: 8,\n fontSize: 14,\n lineHeight: 16,\n descriptionFontSize: 12,\n iconSize: 18,\n gap: 8,\n minWidth: 132,\n // Search sizing from Figma\n searchPaddingHorizontal: 10,\n searchPaddingVertical: 7,\n searchGap: 6,\n searchFontSize: 14,\n searchLineHeight: 16,\n searchIconSize: 18,\n },\n };\n return configs[size];\n },\n modal: () => {\n // Sizing values from Figma design: node-id=10457-7055\n return {\n borderRadius: 12,\n headerPadding: 8,\n contentPadding: 40,\n headerButtonSize: \"xl\" as const,\n headerGap: 8,\n shadow:\n \"0px 8px 12px 6px rgba(7, 7, 8, 0.1), 0px 4px 4px rgba(7, 7, 8, 0.2)\",\n maxWidth: 680,\n overlayColor: \"rgba(0, 0, 0, 0.5)\",\n portalPadding: 20,\n zIndex: 1000,\n };\n },\n toast: () => {\n // Sizing values from Figma design: node-id=3044-8872\n return {\n minHeight: 64,\n paddingHorizontal: 12,\n paddingVertical: 8,\n borderRadius: 4,\n gap: 12,\n iconSize: 24,\n closeButtonSize: 24,\n closeIconSize: 20,\n fontSize: 16,\n lineHeight: 20,\n maxWidth: 400,\n containerPadding: 12,\n groupGap: 4,\n };\n },\n toggleButtonGroup: (size: \"xl\" | \"lg\" | \"md\" | \"sm\" | \"xs\") => {\n // Sizing values from Figma design: node-id=6409-34323\n const configs = {\n xl: {\n height: 64,\n paddingHorizontal: 18,\n fontSize: 20,\n lineHeight: 22,\n iconSize: 24,\n gap: 6,\n borderRadius: 8,\n itemGap: 8,\n },\n lg: {\n height: 56,\n paddingHorizontal: 16,\n fontSize: 18,\n lineHeight: 20,\n iconSize: 24,\n gap: 4,\n borderRadius: 8,\n itemGap: 8,\n },\n md: {\n height: 48,\n paddingHorizontal: 16,\n fontSize: 16,\n lineHeight: 18,\n iconSize: 24,\n gap: 4,\n borderRadius: 8,\n itemGap: 8,\n },\n sm: {\n height: 40,\n paddingHorizontal: 12,\n fontSize: 14,\n lineHeight: 16,\n iconSize: 24,\n gap: 2,\n borderRadius: 4,\n itemGap: 4,\n },\n xs: {\n height: 32,\n paddingHorizontal: 12,\n fontSize: 14,\n lineHeight: 16,\n iconSize: 24,\n gap: 2,\n borderRadius: 4,\n itemGap: 4,\n },\n };\n return configs[size];\n },\n },\n };\n};\n\ninterface DesignSystemContextType {\n mode: ThemeMode;\n setMode: (mode: ThemeMode) => void;\n productContext: ProductContext;\n setProductContext: (productContext: ProductContext) => void;\n theme: ReturnType<typeof themeConfig>;\n}\n\nconst DesignSystemContext = createContext<DesignSystemContextType | undefined>(\n undefined\n);\n\nexport const XUIProvider: React.FC<{\n children: React.ReactNode;\n initialMode?: ThemeMode;\n initialProductContext?: ProductContext;\n /** Use `initialProductContext` instead. */\n productContext?: never;\n /** Load toolkit fonts from the Xsolla CDN. Defaults to true on web, no-ops on native. */\n loadFonts?: boolean;\n}> = ({\n children,\n initialMode = \"dark\",\n initialProductContext = defaultProductContext,\n loadFonts = true,\n}) => {\n const [mode, setMode] = useState<ThemeMode>(initialMode);\n const [productContext, setProductContext] = useState<ProductContext>(\n initialProductContext\n );\n\n const value = useMemo(\n () => ({\n mode,\n setMode,\n productContext,\n setProductContext,\n theme: themeConfig(mode, productContext),\n }),\n [mode, productContext]\n );\n\n return (\n <DesignSystemContext.Provider value={value}>\n {loadFonts && <FontLoader />}\n {children}\n </DesignSystemContext.Provider>\n );\n};\n\nexport const useDesignSystem = () => {\n const context = useContext(DesignSystemContext);\n if (!context) {\n // Return default theme if provider is missing\n return {\n mode: \"dark\" as ThemeMode,\n setMode: () => {},\n productContext: defaultProductContext,\n setProductContext: () => {},\n theme: themeConfig(\"dark\", defaultProductContext),\n };\n }\n return context;\n};\n\nexport interface ThemeOverrideProps {\n /** Override the global theme mode for this component */\n themeMode?: ThemeMode;\n /** Override the global product context (fonts/typography) for this component */\n themeProductContext?: ProductContext;\n}\n\nexport const useResolvedTheme = (overrides?: ThemeOverrideProps) => {\n const context = useDesignSystem();\n\n const resolvedMode = overrides?.themeMode ?? context.mode;\n const resolvedProductContext =\n overrides?.themeProductContext ?? context.productContext;\n\n const theme = useMemo(() => {\n if (\n resolvedMode === context.mode &&\n resolvedProductContext === context.productContext\n ) {\n return context.theme;\n }\n return themeConfig(resolvedMode, resolvedProductContext);\n }, [\n resolvedMode,\n resolvedProductContext,\n context.mode,\n context.productContext,\n context.theme,\n ]);\n\n return {\n ...context,\n mode: resolvedMode,\n productContext: resolvedProductContext,\n theme,\n };\n};\n\nlet idCounter = 0;\n\nconst hasReactUseId = typeof React.useId === \"function\";\n\nconst useIdFallback = (): string => {\n const [id] = useState(() => `xui-${++idCounter}`);\n return id;\n};\n\nexport const useId: () => string = hasReactUseId ? React.useId : useIdFallback;\n\n/**\n * Context for the current modal's ID.\n * Used by portal-based components (tooltips, dropdowns) to mark their content\n * as belonging to a modal, preventing click-outside from closing the modal.\n */\nexport const ModalIdContext = createContext<string | null>(null);\n\n/**\n * Returns the current modal's ID for use with portal content.\n * Apply as `data-modal-id={modalId}` to portal containers.\n * Returns null if not inside a modal.\n */\nexport const useModalId = (): string | null => useContext(ModalIdContext);\n\nexport * from \"./tokens/colors\";\nexport * from \"./tokens/spacing\";\nexport * from \"./tokens/shadows\";\nexport * from \"./tokens/fonts\";\nexport * from \"./tokens/typography\";\nexport * from \"./platform\";\nexport { FontLoader } from \"./fonts/FontLoader\";\nexport { fontFacesCSS } from \"./fonts/fontFaces\";\nexport type { ProductContext };\n","{\n \"background\": {\n \"primary\": \"#1b2628\",\n \"secondary\": \"#141d1f\",\n \"brand\": {\n \"primary\": \"#80eaff\",\n \"secondary\": \"#0b3841\"\n },\n \"brandExtra\": {\n \"primary\": \"#cef655\",\n \"secondary\": \"#566c13\"\n },\n \"inverse\": \"#ffffff\",\n \"static\": {\n \"dark\": \"#000000\",\n \"light\": \"#ffffff\"\n },\n \"success\": {\n \"primary\": \"#95ff80\",\n \"secondary\": \"#14410b\"\n },\n \"warning\": {\n \"primary\": \"#ffc380\",\n \"secondary\": \"#6c4313\"\n },\n \"alert\": {\n \"primary\": \"#e84f30\",\n \"secondary\": \"#6c2213\"\n },\n \"neutral\": {\n \"primary\": \"#99aeb2\",\n \"secondary\": \"#34474b\"\n }\n },\n \"content\": {\n \"primary\": \"#e8eced\",\n \"secondary\": \"rgba(232, 236, 237, 0.72)\",\n \"tertiary\": \"rgba(232, 236, 237, 0.58)\",\n \"brand\": {\n \"primary\": \"#80eaff\",\n \"secondary\": \"#55dcf6\"\n },\n \"brandExtra\": {\n \"primary\": \"#cef655\",\n \"secondary\": \"#9bc323\"\n },\n \"inverse\": \"#000000\",\n \"static\": {\n \"light\": \"#ffffff\",\n \"dark\": \"#000000\"\n },\n \"success\": {\n \"primary\": \"#70f655\",\n \"secondary\": \"#3dc322\"\n },\n \"warning\": {\n \"primary\": \"#f6ab55\",\n \"secondary\": \"#c37822\"\n },\n \"alert\": {\n \"primary\": \"#f67055\",\n \"secondary\": \"#e84f30\"\n },\n \"neutral\": {\n \"primary\": \"#99aeb2\",\n \"secondary\": \"#4b6368\"\n },\n \"on\": {\n \"brand\": \"#000000\",\n \"brandExtra\": \"#000000\",\n \"success\": \"#000000\",\n \"warning\": \"#000000\",\n \"alert\": \"#ffffff\",\n \"neutral\": \"#000000\"\n }\n },\n \"border\": {\n \"primary\": \"#ffffff\",\n \"secondary\": \"rgba(178, 242, 255, 0.1)\",\n \"brand\": \"#31cae8\",\n \"brandExtra\": \"#9bc323\",\n \"inverse\": \"rgba(0, 0, 0, 0.15)\",\n \"success\": \"#3dc322\",\n \"warning\": \"#c37822\",\n \"alert\": \"#c33d22\",\n \"neutral\": \"#607f85\"\n },\n \"overlay\": {\n \"mono\": \"rgba(178, 242, 255, 0.06)\",\n \"monoHover\": \"rgba(178, 242, 255, 0.12)\",\n \"brand\": \"rgba(128, 234, 255, 0.2)\",\n \"brandExtra\": \"rgba(206, 246, 85, 0.3)\",\n \"success\": \"rgba(149, 255, 128, 0.2)\",\n \"warning\": \"rgba(255, 195, 128, 0.24)\",\n \"alert\": \"rgba(232, 79, 48, 0.32)\",\n \"neutral\": \"rgba(123, 152, 157, 0.28)\"\n },\n \"layer\": {\n \"scrim\": \"rgba(0, 0, 0, 0.5)\",\n \"float\": \"#000000\"\n },\n \"control\": {\n \"brand\": {\n \"primary\": {\n \"bg\": \"#80eaff\",\n \"bgHover\": \"#b2f2ff\",\n \"bgPress\": \"#55dcf6\",\n \"bgDisable\": \"rgba(52, 71, 75, 0.85)\",\n \"border\": \"#31cae8\",\n \"borderHover\": \"#55dcf6\",\n \"borderPress\": \"rgba(255, 255, 255, 0)\",\n \"borderDisable\": \"rgba(255, 255, 255, 0)\"\n },\n \"secondary\": {\n \"bg\": \"#135d6c\",\n \"bgHover\": \"#1b8398\",\n \"bgPress\": \"#0b3841\",\n \"border\": \"#22a8c3\",\n \"borderHover\": \"#22a8c3\",\n \"borderPress\": \"rgba(255, 255, 255, 0)\"\n },\n \"tertiary\": {\n \"bg\": \"rgba(255, 255, 255, 0)\",\n \"bgHover\": \"#0b3841\",\n \"bgPress\": \"#135d6c\",\n \"border\": \"rgba(255, 255, 255, 0)\",\n \"borderHover\": \"rgba(255, 255, 255, 0)\",\n \"borderPress\": \"rgba(255, 255, 255, 0)\"\n },\n \"text\": {\n \"primary\": \"#000000\",\n \"secondary\": \"#80eaff\",\n \"tertiary\": \"#80eaff\",\n \"disable\": \"rgba(232, 236, 237, 0.2)\",\n \"ghost\": \"#80eaff\"\n },\n \"ghost\": {\n \"bg\": \"rgba(255, 255, 255, 0)\",\n \"bgHover\": \"rgba(128, 234, 255, 0.04)\",\n \"bgPress\": \"rgba(128, 234, 255, 0.08)\",\n \"border\": \"rgba(128, 234, 255, 0.16)\",\n \"borderHover\": \"rgba(128, 234, 255, 0.24)\",\n \"borderPress\": \"rgba(128, 234, 255, 0.16)\"\n }\n },\n \"mono\": {\n \"primary\": {\n \"bg\": \"#ffffff\",\n \"bgHover\": \"#e8eced\",\n \"bgPress\": \"#f4f5f6\",\n \"border\": \"rgba(255, 255, 255, 0)\",\n \"borderHover\": \"rgba(255, 255, 255, 0)\",\n \"borderPress\": \"rgba(255, 255, 255, 0)\"\n },\n \"secondary\": {\n \"bg\": \"#34474b\",\n \"bgHover\": \"#4b6368\",\n \"bgPress\": \"#233134\",\n \"border\": \"#4b6368\",\n \"borderHover\": \"#607f85\",\n \"borderPress\": \"rgba(255, 255, 255, 0)\"\n },\n \"tertiary\": {\n \"bg\": \"rgba(255, 255, 255, 0)\",\n \"bgHover\": \"#233134\",\n \"bgPress\": \"#34474b\",\n \"border\": \"rgba(255, 255, 255, 0)\",\n \"borderHover\": \"rgba(255, 255, 255, 0)\",\n \"borderPress\": \"rgba(255, 255, 255, 0)\"\n },\n \"text\": {\n \"primary\": \"#000000\",\n \"secondary\": \"#ffffff\",\n \"tertiary\": \"#ffffff\",\n \"ghost\": \"#ffffff\"\n },\n \"ghost\": {\n \"bg\": \"rgba(255, 255, 255, 0)\",\n \"bgHover\": \"rgba(255, 255, 255, 0.04)\",\n \"bgPress\": \"rgba(255, 255, 255, 0.08)\",\n \"border\": \"rgba(255, 255, 255, 0.16)\",\n \"borderHover\": \"rgba(255, 255, 255, 0.24)\",\n \"borderPress\": \"rgba(255, 255, 255, 0.16)\"\n }\n },\n \"brandExtra\": {\n \"primary\": {\n \"bg\": \"#cef655\",\n \"bgHover\": \"#bae831\",\n \"bgPress\": \"#dfff80\",\n \"border\": \"rgba(255, 255, 255, 0)\",\n \"borderHover\": \"rgba(255, 255, 255, 0)\",\n \"borderPress\": \"rgba(255, 255, 255, 0)\"\n },\n \"secondary\": {\n \"bg\": \"rgba(186, 232, 49, 0.4)\",\n \"bgHover\": \"rgba(206, 246, 85, 0.4)\",\n \"bgPress\": \"rgba(186, 232, 49, 0.4)\",\n \"border\": \"rgba(255, 255, 255, 0)\",\n \"borderHover\": \"rgba(255, 255, 255, 0)\",\n \"borderPress\": \"rgba(255, 255, 255, 0)\"\n },\n \"tertiary\": {\n \"bg\": \"rgba(186, 232, 49, 0)\",\n \"bgHover\": \"rgba(206, 246, 85, 0.07)\",\n \"bgPress\": \"rgba(186, 232, 49, 0.12)\",\n \"border\": \"rgba(255, 255, 255, 0)\",\n \"borderHover\": \"rgba(255, 255, 255, 0)\",\n \"borderPress\": \"rgba(255, 255, 255, 0)\"\n },\n \"text\": {\n \"primary\": \"#000000\",\n \"secondary\": \"#ffffff\",\n \"tertiary\": \"#cef655\",\n \"ghost\": \"#cef655\"\n },\n \"ghost\": {\n \"bg\": \"rgba(255, 255, 255, 0)\",\n \"bgHover\": \"rgba(206, 246, 85, 0.04)\",\n \"bgPress\": \"rgba(206, 246, 85, 0.08)\",\n \"border\": \"rgba(206, 246, 85, 0.16)\",\n \"borderHover\": \"rgba(206, 246, 85, 0.24)\",\n \"borderPress\": \"rgba(206, 246, 85, 0.16)\"\n }\n },\n \"alert\": {\n \"bg\": \"#6c2213\",\n \"border\": \"#c33d22\",\n \"primary\": {\n \"bg\": \"#f67055\",\n \"bgHover\": \"#ff9580\",\n \"bgPress\": \"#e84f30\",\n \"border\": \"rgba(255, 255, 255, 0)\",\n \"borderHover\": \"rgba(255, 255, 255, 0)\",\n \"borderPress\": \"rgba(255, 255, 255, 0)\"\n },\n \"secondary\": {\n \"bg\": \"rgba(232, 79, 48, 0.4)\",\n \"bgHover\": \"rgba(246, 112, 85, 0.4)\",\n \"bgPress\": \"rgba(195, 61, 34, 0.4)\",\n \"border\": \"rgba(255, 255, 255, 0)\",\n \"borderHover\": \"rgba(255, 255, 255, 0)\",\n \"borderPress\": \"rgba(255, 255, 255, 0)\"\n },\n \"tertiary\": {\n \"bg\": \"rgba(255, 43, 0, 0)\",\n \"bgHover\": \"rgba(255, 170, 153, 0.07)\",\n \"bgPress\": \"rgba(255, 85, 51, 0.12)\",\n \"border\": \"rgba(255, 255, 255, 0)\",\n \"borderHover\": \"rgba(255, 255, 255, 0)\",\n \"borderPress\": \"rgba(255, 255, 255, 0)\"\n },\n \"text\": {\n \"primary\": \"#ffffff\",\n \"secondary\": \"#ffffff\",\n \"tertiary\": \"#f67055\",\n \"ghost\": \"#f67055\"\n },\n \"ghost\": {\n \"bg\": \"rgba(255, 255, 255, 0)\",\n \"bgHover\": \"rgba(246, 112, 85, 0.04)\",\n \"bgPress\": \"rgba(246, 112, 85, 0.08)\",\n \"border\": \"rgba(246, 112, 85, 0.16)\",\n \"borderHover\": \"rgba(246, 112, 85, 0.24)\",\n \"borderPress\": \"rgba(246, 112, 85, 0.16)\"\n }\n },\n \"input\": {\n \"bg\": \"rgba(178, 242, 255, 0.1)\",\n \"bgHover\": \"rgba(178, 242, 255, 0.15)\",\n \"bgDisable\": \"rgba(178, 242, 255, 0.25)\",\n \"border\": \"rgba(178, 242, 255, 0.1)\",\n \"borderHover\": \"rgba(178, 242, 255, 0.15)\",\n \"borderDisable\": \"rgba(255, 255, 255, 0)\",\n \"text\": \"#ffffff\",\n \"placeholder\": \"rgba(255, 255, 255, 0.56)\",\n \"textDisable\": \"rgba(255, 255, 255, 0.36)\"\n },\n \"focus\": {\n \"bg\": \"#000000\",\n \"border\": \"#31cae8\"\n },\n \"check\": {\n \"bg\": \"#135d6c\",\n \"bgHover\": \"#1b8398\",\n \"bgDisable\": \"rgba(178, 242, 255, 0.25)\",\n \"border\": \"#22a8c3\",\n \"borderHover\": \"#22a8c3\",\n \"borderDisable\": \"rgba(255, 255, 255, 0)\",\n \"icon\": \"#80eaff\"\n },\n \"faint\": {\n \"bg\": \"rgba(178, 242, 255, 0.15)\",\n \"bgHover\": \"rgba(178, 242, 255, 0.2)\",\n \"border\": \"rgba(178, 242, 255, 0.1)\",\n \"borderHover\": \"rgba(178, 242, 255, 0.15)\"\n },\n \"slider\": {\n \"bg\": \"#80eaff\",\n \"bgHover\": \"#b2f2ff\",\n \"bgDisable\": \"rgba(52, 71, 75, 0.85)\"\n },\n \"switch\": {\n \"bg\": \"#135d6c\",\n \"bgDisable\": \"rgba(178, 242, 255, 0.25)\",\n \"bgHover\": \"#1b8398\",\n \"border\": \"#22a8c3\",\n \"borderHover\": \"#22a8c3\",\n \"borderDisable\": \"rgba(255, 255, 255, 0)\"\n },\n \"knob\": {\n \"bg\": \"#80eaff\",\n \"bgHover\": \"#b2f2ff\",\n \"bgInactive\": \"#ffffff\"\n },\n \"text\": {\n \"primary\": \"#ffffff\",\n \"disable\": \"rgba(255, 255, 255, 0.4)\"\n },\n \"link\": {\n \"primary\": \"#55dcf6\",\n \"primaryHover\": \"#80eaff\",\n \"secondary\": \"#cef655\",\n \"secondaryHover\": \"#dfff80\"\n },\n \"segmented\": {\n \"bg\": \"rgba(178, 242, 255, 0.1)\",\n \"bgHover\": \"rgba(178, 242, 255, 0.1)\",\n \"bgActive\": \"rgba(178, 242, 255, 0.15)\",\n \"border\": \"rgba(178, 242, 255, 0.1)\",\n \"borderHover\": \"rgba(178, 242, 255, 0.1)\",\n \"borderActive\": \"rgba(255, 255, 255, 0)\",\n \"text\": \"#ffffff\",\n \"textDisable\": \"rgba(255, 255, 255, 0.4)\"\n },\n \"tagLabel\": {\n \"product\": {\n \"bg\": \"#dfff80\",\n \"text\": \"#000000\",\n \"textCompact\": \"rgba(255, 255, 255, 0.48)\"\n },\n \"rarity\": {\n \"bg\": \"#141d1f\",\n \"text\": \"#22a8c3\"\n },\n \"name\": {\n \"bg\": \"#233134\",\n \"text\": \"#b7c5c8\"\n },\n \"account\": {\n \"bg\": \"#9580ff\",\n \"text\": \"#000000\",\n \"textCompact\": \"rgba(255, 255, 255, 0.48)\"\n },\n \"id\": {\n \"bg\": \"#34474b\",\n \"bgSeries\": \"#000000\",\n \"textSeries\": \"#4b6368\",\n \"textNumber\": \"#000000\",\n \"textCompact\": \"rgba(255, 255, 255, 0.48)\"\n },\n \"subentity\": {\n \"bg\": \"#607f85\",\n \"text\": \"#000000\"\n },\n \"item\": {\n \"bg\": \"#80eaff\",\n \"text\": \"#000000\",\n \"textCompact\": \"rgba(255, 255, 255, 0.48)\"\n }\n },\n \"toggleButton\": {\n \"bg\": \"rgba(178, 242, 255, 0.1)\",\n \"bgHover\": \"rgba(178, 242, 255, 0.15)\",\n \"bgActive\": \"#135d6c\",\n \"bgDisable\": \"rgba(178, 242, 255, 0.25)\",\n \"border\": \"rgba(178, 242, 255, 0.1)\",\n \"borderHover\": \"rgba(178, 242, 255, 0.15)\",\n \"borderActive\": \"#22a8c3\",\n \"borderDisable\": \"rgba(255, 255, 255, 0)\",\n \"text\": \"#ffffff\",\n \"textActive\": \"#80eaff\",\n \"textDisable\": \"rgba(255, 255, 255, 0.36)\"\n },\n \"appButton\": {\n \"bg\": \"#34474b\",\n \"bgHover\": \"#4b6368\",\n \"bgPress\": \"#607f85\",\n \"border\": \"#4b6368\",\n \"borderHover\": \"#607f85\",\n \"borderPress\": \"rgba(255, 255, 255, 0)\",\n \"text\": \"#b7c5c8\",\n \"textDisable\": \"rgba(232, 236, 237, 0.2)\"\n }\n }\n}\n","{\n \"background\": {\n \"primary\": \"#ffffff\",\n \"secondary\": \"#f3f3f2\",\n \"brand\": {\n \"primary\": \"#80eaff\",\n \"secondary\": \"#b2f2ff\"\n },\n \"brandExtra\": {\n \"primary\": \"#cef655\",\n \"secondary\": \"#dfff80\"\n },\n \"inverse\": \"#000000\",\n \"static\": {\n \"dark\": \"#000000\",\n \"light\": \"#ffffff\"\n },\n \"success\": {\n \"primary\": \"#95ff80\",\n \"secondary\": \"#bfffb2\"\n },\n \"warning\": {\n \"primary\": \"#ffc380\",\n \"secondary\": \"#ffdbb2\"\n },\n \"alert\": {\n \"primary\": \"#f67055\",\n \"secondary\": \"#ffbfb2\"\n },\n \"neutral\": {\n \"primary\": \"#99aeb2\",\n \"secondary\": \"#d7dee0\"\n }\n },\n \"content\": {\n \"primary\": \"#000000\",\n \"secondary\": \"rgba(0, 0, 0, 0.75)\",\n \"tertiary\": \"rgba(0, 0, 0, 0.6)\",\n \"brand\": {\n \"primary\": \"#22a8c3\",\n \"secondary\": \"#31cae8\"\n },\n \"brandExtra\": {\n \"primary\": \"#79971b\",\n \"secondary\": \"#9bc323\"\n },\n \"inverse\": \"#ffffff\",\n \"static\": {\n \"light\": \"#ffffff\",\n \"dark\": \"#000000\"\n },\n \"success\": {\n \"primary\": \"#30981b\",\n \"secondary\": \"#3dc322\"\n },\n \"warning\": {\n \"primary\": \"#c37822\",\n \"secondary\": \"#f6ab55\"\n },\n \"alert\": {\n \"primary\": \"#e84f30\",\n \"secondary\": \"#f67055\"\n },\n \"neutral\": {\n \"primary\": \"#34474b\",\n \"secondary\": \"#607f85\"\n },\n \"on\": {\n \"brand\": \"#000000\",\n \"brandExtra\": \"#000000\",\n \"success\": \"#000000\",\n \"warning\": \"#000000\",\n \"alert\": \"#ffffff\",\n \"neutral\": \"#000000\"\n }\n },\n \"border\": {\n \"primary\": \"#000000\",\n \"secondary\": \"rgba(0, 0, 0, 0.1)\",\n \"brand\": \"#31cae8\",\n \"brandExtra\": \"#bae831\",\n \"inverse\": \"rgba(255, 255, 255, 0.15)\",\n \"success\": \"#50e831\",\n \"warning\": \"#e89331\",\n \"alert\": \"#e84f30\",\n \"neutral\": \"#7b989d\"\n },\n \"overlay\": {\n \"mono\": \"rgba(0, 0, 0, 0.05)\",\n \"monoHover\": \"rgba(0, 0, 0, 0.1)\",\n \"brand\": \"rgba(128, 234, 255, 0.3)\",\n \"brandExtra\": \"rgba(206, 246, 85, 0.3)\",\n \"success\": \"rgba(149, 255, 128, 0.24)\",\n \"warning\": \"rgba(255, 195, 128, 0.28)\",\n \"alert\": \"rgba(232, 79, 48, 0.24)\",\n \"neutral\": \"rgba(96, 127, 133, 0.24)\"\n },\n \"layer\": {\n \"scrim\": \"rgba(0, 0, 0, 0.75)\",\n \"float\": \"#ffffff\"\n },\n \"control\": {\n \"brand\": {\n \"primary\": {\n \"bg\": \"#80eaff\",\n \"bgHover\": \"#b2f2ff\",\n \"bgPress\": \"#55dcf6\",\n \"bgDisable\": \"#cccccc\",\n \"border\": \"#31cae8\",\n \"borderHover\": \"#55dcf6\",\n \"borderPress\": \"rgba(255, 255, 255, 0)\",\n \"borderDisable\": \"rgba(255, 255, 255, 0)\"\n },\n \"secondary\": {\n \"bg\": \"#ccf6ff\",\n \"bgHover\": \"#e5fbff\",\n \"bgPress\": \"#b2f2ff\",\n \"border\": \"#80eaff\",\n \"borderHover\": \"#b2f2ff\",\n \"borderPress\": \"rgba(255, 255, 255, 0)\"\n },\n \"tertiary\": {\n \"bg\": \"rgba(255, 255, 255, 0)\",\n \"bgHover\": \"#e5fbff\",\n \"bgPress\": \"#ccf6ff\",\n \"border\": \"rgba(255, 255, 255, 0)\",\n \"borderHover\": \"rgba(255, 255, 255, 0)\",\n \"borderPress\": \"rgba(255, 255, 255, 0)\"\n },\n \"text\": {\n \"primary\": \"#000000\",\n \"secondary\": \"#000000\",\n \"tertiary\": \"#1b8398\",\n \"disable\": \"#999999\",\n \"ghost\": \"#22a8c3\"\n },\n \"ghost\": {\n \"bg\": \"rgba(0, 0, 0, 0)\",\n \"bgHover\": \"rgba(34, 168, 195, 0.04)\",\n \"bgPress\": \"rgba(34, 168, 195, 0.08)\",\n \"border\": \"rgba(34, 168, 195, 0.1)\",\n \"borderHover\": \"rgba(34, 168, 195, 0.16)\",\n \"borderPress\": \"rgba(34, 168, 195, 0.1)\"\n }\n },\n \"mono\": {\n \"primary\": {\n \"bg\": \"#141d1f\",\n \"bgHover\": \"#233134\",\n \"bgPress\": \"#000000\",\n \"border\": \"rgba(255, 255, 255, 0)\",\n \"borderHover\": \"rgba(255, 255, 255, 0)\",\n \"borderPress\": \"rgba(255, 255, 255, 0)\"\n },\n \"secondary\": {\n \"bg\": \"#dadbd7\",\n \"bgHover\": \"#e6e7e4\",\n \"bgPress\": \"#c1c2bc\",\n \"border\": \"#c1c2bc\",\n \"borderHover\": \"#dadbd7\",\n \"borderPress\": \"rgba(255, 255, 255, 0)\"\n },\n \"tertiary\": {\n \"bg\": \"rgba(255, 255, 255, 0)\",\n \"bgHover\": \"#f3f3f2\",\n \"bgPress\": \"#e6e7e4\",\n \"border\": \"rgba(255, 255, 255, 0)\",\n \"borderHover\": \"rgba(255, 255, 255, 0)\",\n \"borderPress\": \"rgba(255, 255, 255, 0)\"\n },\n \"text\": {\n \"primary\": \"#ffffff\",\n \"secondary\": \"#000000\",\n \"tertiary\": \"#000000\",\n \"ghost\": \"#000000\"\n },\n \"ghost\": {\n \"bg\": \"rgba(0, 0, 0, 0)\",\n \"bgHover\": \"rgba(0, 0, 0, 0.04)\",\n \"bgPress\": \"rgba(0, 0, 0, 0.08)\",\n \"border\": \"rgba(0, 0, 0, 0.1)\",\n \"borderHover\": \"rgba(0, 0, 0, 0.16)\",\n \"borderPress\": \"rgba(0, 0, 0, 0.1)\"\n }\n },\n \"brandExtra\": {\n \"primary\": {\n \"bg\": \"#bae831\",\n \"bgHover\": \"#cef655\",\n \"bgPress\": \"#9bc323\",\n \"border\": \"rgba(255, 255, 255, 0)\",\n \"borderHover\": \"rgba(255, 255, 255, 0)\",\n \"borderPress\": \"rgba(255, 255, 255, 0)\"\n },\n \"secondary\": {\n \"bg\": \"rgba(186, 232, 49, 0.4)\",\n \"bgHover\": \"rgba(206, 246, 85, 0.4)\",\n \"bgPress\": \"rgba(186, 232, 49, 0.4)\",\n \"border\": \"rgba(255, 255, 255, 0)\",\n \"borderHover\": \"rgba(255, 255, 255, 0)\",\n \"borderPress\": \"rgba(255, 255, 255, 0)\"\n },\n \"tertiary\": {\n \"bg\": \"rgba(186, 232, 49, 0)\",\n \"bgHover\": \"rgba(206, 246, 85, 0.07)\",\n \"bgPress\": \"rgba(186, 232, 49, 0.12)\",\n \"border\": \"rgba(255, 255, 255, 0)\",\n \"borderHover\": \"rgba(255, 255, 255, 0)\",\n \"borderPress\": \"rgba(255, 255, 255, 0)\"\n },\n \"text\": {\n \"primary\": \"#000000\",\n \"secondary\": \"#000000\",\n \"tertiary\": \"#79971b\",\n \"ghost\": \"#79971b\"\n },\n \"ghost\": {\n \"bg\": \"rgba(0, 0, 0, 0)\",\n \"bgHover\": \"rgba(121, 151, 27, 0.04)\",\n \"bgPress\": \"rgba(121, 151, 27, 0.08)\",\n \"border\": \"rgba(121, 151, 27, 0.1)\",\n \"borderHover\": \"rgba(121, 151, 27, 0.16)\",\n \"borderPress\": \"rgba(121, 151, 27, 0.1)\"\n }\n },\n \"alert\": {\n \"bg\": \"#ffbfb2\",\n \"border\": \"#e84f30\",\n \"primary\": {\n \"bg\": \"#e84f30\",\n \"bgHover\": \"#f67055\",\n \"bgPress\": \"#c33d22\",\n \"border\": \"rgba(255, 255, 255, 0)\",\n \"borderHover\": \"rgba(255, 255, 255, 0)\",\n \"borderPress\": \"rgba(255, 255, 255, 0)\"\n },\n \"secondary\": {\n \"bg\": \"rgba(232, 79, 48, 0.4)\",\n \"bgHover\": \"rgba(246, 112, 85, 0.4)\",\n \"bgPress\": \"rgba(195, 61, 34, 0.4)\",\n \"border\": \"rgba(255, 255, 255, 0)\",\n \"borderHover\": \"rgba(255, 255, 255, 0)\",\n \"borderPress\": \"rgba(255, 255, 255, 0)\"\n },\n \"tertiary\": {\n \"bg\": \"rgba(255, 43, 0, 0)\",\n \"bgHover\": \"rgba(255, 85, 51, 0.07)\",\n \"bgPress\": \"rgba(204, 34, 0, 0.12)\",\n \"border\": \"rgba(255, 255, 255, 0)\",\n \"borderHover\": \"rgba(255, 255, 255, 0)\",\n \"borderPress\": \"rgba(255, 255, 255, 0)\"\n },\n \"text\": {\n \"primary\": \"#ffffff\",\n \"secondary\": \"#000000\",\n \"tertiary\": \"#c33d22\",\n \"ghost\": \"#c33d22\"\n },\n \"ghost\": {\n \"bg\": \"rgba(0, 0, 0, 0)\",\n \"bgHover\": \"rgba(195, 61, 34, 0.04)\",\n \"bgPress\": \"rgba(195, 61, 34, 0.08)\",\n \"border\": \"rgba(195, 61, 34, 0.1)\",\n \"borderHover\": \"rgba(195, 61, 34, 0.16)\",\n \"borderPress\": \"rgba(195, 61, 34, 0.1)\"\n }\n },\n \"input\": {\n \"bg\": \"rgba(0, 0, 0, 0.08)\",\n \"bgHover\": \"rgba(0, 0, 0, 0.15)\",\n \"bgDisable\": \"rgba(0, 0, 0, 0.2)\",\n \"border\": \"rgba(0, 0, 0, 0.1)\",\n \"borderHover\": \"rgba(0, 0, 0, 0.15)\",\n \"borderDisable\": \"rgba(0, 0, 0, 0)\",\n \"text\": \"#000000\",\n \"placeholder\": \"rgba(0, 0, 0, 0.6)\",\n \"textDisable\": \"rgba(5, 5, 5, 0.36)\"\n },\n \"focus\": {\n \"bg\": \"#ffffff\",\n \"border\": \"#31cae8\"\n },\n \"check\": {\n \"bg\": \"#ccf6ff\",\n \"bgHover\": \"#e5fbff\",\n \"bgDisable\": \"rgba(0, 0, 0, 0.25)\",\n \"border\": \"#80eaff\",\n \"borderHover\": \"#b2f2ff\",\n \"borderDisable\": \"rgba(0, 0, 0, 0)\",\n \"icon\": \"#000000\"\n },\n \"faint\": {\n \"bg\": \"rgba(0, 0, 0, 0.15)\",\n \"bgHover\": \"rgba(0, 0, 0, 0.2)\",\n \"border\": \"rgba(0, 0, 0, 0.1)\",\n \"borderHover\": \"rgba(0, 0, 0, 0.15)\"\n },\n \"slider\": {\n \"bg\": \"#80eaff\",\n \"bgHover\": \"#b2f2ff\",\n \"bgDisable\": \"#cccccc\"\n },\n \"switch\": {\n \"bg\": \"#ccf6ff\",\n \"bgDisable\": \"rgba(0, 0, 0, 0.25)\",\n \"bgHover\": \"#e5fbff\",\n \"border\": \"#80eaff\",\n \"borderHover\": \"#b2f2ff\",\n \"borderDisable\": \"rgba(0, 0, 0, 0)\"\n },\n \"knob\": {\n \"bg\": \"#000000\",\n \"bgHover\": \"#233134\",\n \"bgInactive\": \"#000000\"\n },\n \"text\": {\n \"primary\": \"#000000\",\n \"disable\": \"rgba(0, 0, 0, 0.4)\"\n },\n \"link\": {\n \"primary\": \"#22a8c3\",\n \"primaryHover\": \"#31cae8\",\n \"secondary\": \"#9bc323\",\n \"secondaryHover\": \"#bae831\"\n },\n \"segmented\": {\n \"bg\": \"rgba(0, 0, 0, 0.08)\",\n \"bgHover\": \"rgba(0, 0, 0, 0.08)\",\n \"bgActive\": \"#ffffff\",\n \"border\": \"rgba(0, 0, 0, 0.1)\",\n \"borderHover\": \"rgba(0, 0, 0, 0.1)\",\n \"borderActive\": \"rgba(0, 0, 0, 0)\",\n \"text\": \"#000000\",\n \"textDisable\": \"rgba(0, 0, 0, 0.4)\"\n },\n \"tagLabel\": {\n \"product\": {\n \"bg\": \"#dfff80\",\n \"text\": \"#000000\",\n \"textCompact\": \"rgba(0, 0, 0, 0.48)\"\n },\n \"rarity\": {\n \"bg\": \"#141d1f\",\n \"text\": \"#22a8c3\"\n },\n \"name\": {\n \"bg\": \"#ffffff\",\n \"text\": \"#000000\"\n },\n \"account\": {\n \"bg\": \"#9580ff\",\n \"text\": \"#000000\",\n \"textCompact\": \"rgba(0, 0, 0, 0.48)\"\n },\n \"id\": {\n \"bg\": \"#dadbd7\",\n \"bgSeries\": \"#000000\",\n \"textSeries\": \"#d7dee0\",\n \"textNumber\": \"#000000\",\n \"textCompact\": \"rgba(0, 0, 0, 0.48)\"\n },\n \"subentity\": {\n \"bg\": \"#a8aaa2\",\n \"text\": \"#000000\"\n },\n \"item\": {\n \"bg\": \"#55dcf6\",\n \"text\": \"#000000\",\n \"textCompact\": \"rgba(0, 0, 0, 0.48)\"\n }\n },\n \"toggleButton\": {\n \"bg\": \"rgba(0, 0, 0, 0.08)\",\n \"bgHover\": \"rgba(0, 0, 0, 0.15)\",\n \"bgActive\": \"#ccf6ff\",\n \"bgDisable\": \"rgba(0, 0, 0, 0.2)\",\n \"border\": \"rgba(0, 0, 0, 0.1)\",\n \"borderHover\": \"rgba(0, 0, 0, 0.15)\",\n \"borderActive\": \"#80eaff\",\n \"borderDisable\": \"rgba(0, 0, 0, 0)\",\n \"text\": \"#000000\",\n \"textActive\": \"#000000\",\n \"textDisable\": \"rgba(0, 0, 0, 0.36)\"\n },\n \"appButton\": {\n \"bg\": \"#dadbd7\",\n \"bgHover\": \"#c1c2bc\",\n \"bgPress\": \"#a8aaa2\",\n \"border\": \"#c1c2bc\",\n \"borderHover\": \"#a8aaa2\",\n \"borderPress\": \"rgba(255, 255, 255, 0)\",\n \"text\": \"#000000\",\n \"textDisable\": \"#999999\"\n }\n }\n}\n","{\n \"background\": {\n \"primary\": \"#0d143a\",\n \"secondary\": \"#161d45\",\n \"brand\": {\n \"primary\": \"#454f88\",\n \"secondary\": \"#2b335e\"\n },\n \"brandExtra\": {\n \"primary\": \"#292f52\",\n \"secondary\": \"#2d3358\"\n },\n \"inverse\": \"#000000\",\n \"static\": {\n \"dark\": \"#000000\",\n \"light\": \"#ffffff\"\n },\n \"success\": {\n \"primary\": \"#14b87e\",\n \"secondary\": \"#75f0b9\"\n },\n \"warning\": {\n \"primary\": \"#ffee99\",\n \"secondary\": \"#ffdd33\"\n },\n \"alert\": {\n \"primary\": \"#e80000\",\n \"secondary\": \"#f53d3d\"\n },\n \"neutral\": {\n \"primary\": \"#7f8bc9\",\n \"secondary\": \"#b0baee\"\n }\n },\n \"content\": {\n \"primary\": \"#ffffff\",\n \"secondary\": \"rgba(255, 255, 255, 0.76)\",\n \"tertiary\": \"rgba(255, 255, 255, 0.5)\",\n \"brand\": {\n \"primary\": \"#ffffff\",\n \"secondary\": \"rgba(255, 255, 255, 0.76)\"\n },\n \"brandExtra\": {\n \"primary\": \"#8576fd\",\n \"secondary\": \"#aea0ff\"\n },\n \"inverse\": \"#000000\",\n \"static\": {\n \"light\": \"#ffffff\",\n \"dark\": \"#000000\"\n },\n \"success\": {\n \"primary\": \"#66ffa6\",\n \"secondary\": \"#00ff6a\"\n },\n \"warning\": {\n \"primary\": \"#ffe566\",\n \"secondary\": \"#ffd400\"\n },\n \"alert\": {\n \"primary\": \"#e80000\",\n \"secondary\": \"#f53d3d\"\n },\n \"neutral\": {\n \"primary\": \"#aa99ff\",\n \"secondary\": \"#8066ff\"\n },\n \"on\": {\n \"brand\": \"#000000\",\n \"brandExtra\": \"#0d143a\",\n \"success\": \"#000000\",\n \"warning\": \"#000000\",\n \"alert\": \"#ffffff\",\n \"neutral\": \"#0d143a\"\n }\n },\n \"border\": {\n \"primary\": \"#ffffff\",\n \"secondary\": \"rgba(255, 255, 255, 0.12)\",\n \"brand\": \"#ffffff\",\n \"brandExtra\": \"#8576fd\",\n \"inverse\": \"rgba(0, 0, 0, 0.15)\",\n \"success\": \"#14b87e\",\n \"warning\": \"#ffe566\",\n \"alert\": \"#f53d3d\",\n \"neutral\": \"#7f8bc9\"\n },\n \"overlay\": {\n \"mono\": \"rgba(255, 255, 255, 0.1)\",\n \"monoHover\": \"rgba(255, 255, 255, 0.2)\",\n \"brand\": \"rgba(255, 255, 255, 0.3)\",\n \"brandExtra\": \"rgba(133, 118, 253, 0.3)\",\n \"success\": \"rgba(20, 184, 126, 0.3)\",\n \"warning\": \"rgba(255, 229, 102, 0.3)\",\n \"alert\": \"rgba(245, 61, 61, 0.3)\",\n \"neutral\": \"rgba(127, 139, 201, 0.3)\"\n },\n \"layer\": {\n \"scrim\": \"rgba(0, 0, 0, 0.5)\",\n \"float\": \"#0a0f2b\"\n },\n \"control\": {\n \"brand\": {\n \"primary\": {\n \"bg\": \"#ffca43\",\n \"bgHover\": \"#f2c173\",\n \"bgPress\": \"#ffbb33\",\n \"bgDisable\": \"rgba(13, 20, 58, 0.3)\",\n \"border\": \"rgba(255, 255, 255, 0)\",\n \"borderHover\": \"rgba(255, 255, 255, 0)\",\n \"borderPress\": \"rgba(255, 255, 255, 0)\",\n \"borderDisable\": \"rgba(255, 255, 255, 0)\"\n },\n \"secondary\": {\n \"bg\": \"#ffffff\",\n \"bgHover\": \"rgba(255, 255, 255, 0.76)\",\n \"bgPress\": \"rgba(255, 255, 255, 0.5)\",\n \"border\": \"rgba(255, 255, 255, 0)\",\n \"borderHover\": \"rgba(255, 255, 255, 0)\",\n \"borderPress\": \"rgba(255, 255, 255, 0)\"\n },\n \"tertiary\": {\n \"bg\": \"rgba(255, 255, 255, 0.1)\",\n \"bgHover\": \"rgba(255, 255, 255, 0.76)\",\n \"bgPress\": \"rgba(255, 255, 255, 0.5)\",\n \"border\": \"rgba(255, 255, 255, 0)\",\n \"borderHover\": \"rgba(255, 255, 255, 0)\",\n \"borderPress\": \"rgba(255, 255, 255, 0)\"\n },\n \"text\": {\n \"primary\": \"#000000\",\n \"secondary\": \"#000000\",\n \"tertiary\": \"#000000\",\n \"disable\": \"#c4d1d4\",\n \"ghost\": \"#ffca43\"\n },\n \"ghost\": {\n \"bg\": \"rgba(255, 255, 255, 0)\",\n \"bgHover\": \"rgba(255, 202, 67, 0.04)\",\n \"bgPress\": \"rgba(255, 202, 67, 0.08)\",\n \"border\": \"rgba(255, 202, 67, 0.16)\",\n \"borderHover\": \"rgba(255, 202, 67, 0.24)\",\n \"borderPress\": \"rgba(255, 202, 67, 0.16)\"\n }\n },\n \"mono\": {\n \"primary\": {\n \"bg\": \"#ffffff\",\n \"bgHover\": \"#f0f4f4\",\n \"bgPress\": \"#f6f8f9\",\n \"border\": \"rgba(255, 255, 255, 0)\",\n \"borderHover\": \"rgba(255, 255, 255, 0)\",\n \"borderPress\": \"rgba(255, 255, 255, 0)\"\n },\n \"secondary\": {\n \"bg\": \"rgba(255, 255, 255, 0.1)\",\n \"bgHover\": \"rgba(255, 255, 255, 0.34)\",\n \"bgPress\": \"rgba(255, 255, 255, 0.44)\",\n \"border\": \"#ffffff\",\n \"borderHover\": \"#ffffff\",\n \"borderPress\": \"#ffffff\"\n },\n \"tertiary\": {\n \"bg\": \"rgba(255, 255, 255, 0.1)\",\n \"bgHover\": \"rgba(255, 255, 255, 0.76)\",\n \"bgPress\": \"rgba(255, 255, 255, 0.5)\",\n \"border\": \"rgba(255, 255, 255, 0)\",\n \"borderHover\": \"rgba(255, 255, 255, 0)\",\n \"borderPress\": \"rgba(255, 255, 255, 0)\"\n },\n \"text\": {\n \"primary\": \"#000000\",\n \"secondary\": \"#ffffff\",\n \"tertiary\": \"#ffffff\",\n \"ghost\": \"#ffffff\"\n },\n \"ghost\": {\n \"bg\": \"rgba(255, 255, 255, 0)\",\n \"bgHover\": \"rgba(255, 255, 255, 0.04)\",\n \"bgPress\": \"rgba(255, 255, 255, 0.08)\",\n \"border\": \"rgba(255, 255, 255, 0.16)\",\n \"borderHover\": \"rgba(255, 255, 255, 0.24)\",\n \"borderPress\": \"rgba(255, 255, 255, 0.16)\"\n }\n },\n \"brandExtra\": {\n \"primary\": {\n \"bg\": \"#8576fd\",\n \"bgHover\": \"#9d95de\",\n \"bgPress\": \"#6b5fd4\",\n \"border\": \"rgba(255, 255, 255, 0)\",\n \"borderHover\": \"rgba(255, 255, 255, 0)\",\n \"borderPress\": \"rgba(255, 255, 255, 0)\"\n },\n \"secondary\": {\n \"bg\": \"rgba(133, 118, 253, 0.4)\",\n \"bgHover\": \"rgba(157, 149, 222, 0.4)\",\n \"bgPress\": \"rgba(107, 95, 212, 0.4)\",\n \"border\": \"rgba(255, 255, 255, 0)\",\n \"borderHover\": \"rgba(255, 255, 255, 0)\",\n \"borderPress\": \"rgba(255, 255, 255, 0)\"\n },\n \"tertiary\": {\n \"bg\": \"rgba(133, 118, 253, 0.1)\",\n \"bgHover\": \"rgba(133, 118, 253, 0.2)\",\n \"bgPress\": \"rgba(133, 118, 253, 0.3)\",\n \"border\": \"rgba(255, 255, 255, 0)\",\n \"borderHover\": \"rgba(255, 255, 255, 0)\",\n \"borderPress\": \"rgba(255, 255, 255, 0)\"\n },\n \"text\": {\n \"primary\": \"#000000\",\n \"secondary\": \"#000000\",\n \"tertiary\": \"#8576fd\",\n \"ghost\": \"#ffffff\"\n },\n \"ghost\": {\n \"bg\": \"rgba(255, 255, 255, 0)\",\n \"bgHover\": \"rgba(255, 255, 255, 0.04)\",\n \"bgPress\": \"rgba(255, 255, 255, 0.08)\",\n \"border\": \"rgba(255, 255, 255, 0.16)\",\n \"borderHover\": \"rgba(255, 255, 255, 0.24)\",\n \"borderPress\": \"rgba(255, 255, 255, 0.16)\"\n }\n },\n \"alert\": {\n \"bg\": \"#e80000\",\n \"border\": \"#f53d3d\",\n \"primary\": {\n \"bg\": \"#ff8066\",\n \"bgHover\": \"#ffaa99\",\n \"bgPress\": \"#ff5533\",\n \"border\": \"rgba(255, 255, 255, 0)\",\n \"borderHover\": \"rgba(255, 255, 255, 0)\",\n \"borderPress\": \"rgba(255, 255, 255, 0)\"\n },\n \"secondary\": {\n \"bg\": \"rgba(255, 128, 102, 0.4)\",\n \"bgHover\": \"rgba(255, 170, 153, 0.4)\",\n \"bgPress\": \"rgba(255, 85, 51, 0.4)\",\n \"border\": \"rgba(255, 255, 255, 0)\",\n \"borderHover\": \"rgba(255, 255, 255, 0)\",\n \"borderPress\": \"rgba(255, 255, 255, 0)\"\n },\n \"tertiary\": {\n \"bg\": \"rgba(255, 43, 0, 0)\",\n \"bgHover\": \"rgba(255, 170, 153, 0.07)\",\n \"bgPress\": \"rgba(255, 85, 51, 0.12)\",\n \"border\": \"rgba(255, 255, 255, 0)\",\n \"borderHover\": \"rgba(255, 255, 255, 0)\",\n \"borderPress\": \"rgba(255, 255, 255, 0)\"\n },\n \"text\": {\n \"primary\": \"#ffffff\",\n \"secondary\": \"#000000\",\n \"tertiary\": \"#ff8066\",\n \"ghost\": \"#ffffff\"\n },\n \"ghost\": {\n \"bg\": \"rgba(255, 255, 255, 0)\",\n \"bgHover\": \"rgba(255, 255, 255, 0.04)\",\n \"bgPress\": \"rgba(255, 255, 255, 0.08)\",\n \"border\": \"rgba(255, 255, 255, 0.16)\",\n \"borderHover\": \"rgba(255, 255, 255, 0.24)\",\n \"borderPress\": \"rgba(255, 255, 255, 0.16)\"\n }\n },\n \"input\": {\n \"bg\": \"rgba(255, 255, 255, 0.12)\",\n \"bgHover\": \"rgba(255, 255, 255, 0.15)\",\n \"bgDisable\": \"rgba(255, 255, 255, 0.25)\",\n \"border\": \"rgba(255, 255, 255, 0)\",\n \"borderHover\": \"rgba(255, 255, 255, 0.1)\",\n \"borderDisable\": \"rgba(255, 255, 255, 0)\",\n \"text\": \"#ffffff\",\n \"placeholder\": \"rgba(255, 255, 255, 0.55)\",\n \"textDisable\": \"rgba(255, 255, 255, 0.36)\"\n },\n \"focus\": {\n \"bg\": \"rgba(255, 255, 255, 0.2)\",\n \"border\": \"#8576fd\"\n },\n \"check\": {\n \"bg\": \"#ffffff\",\n \"bgHover\": \"#f6f8f9\",\n \"bgDisable\": \"rgba(255, 255, 255, 0.2)\",\n \"border\": \"#ffffff\",\n \"borderHover\": \"#ffffff\",\n \"borderDisable\": \"rgba(255, 255, 255, 0.2)\",\n \"icon\": \"#0d143a\"\n },\n \"faint\": {\n \"bg\": \"rgba(255, 255, 255, 0.15)\",\n \"bgHover\": \"rgba(255, 255, 255, 0.2)\",\n \"border\": \"rgba(255, 255, 255, 0)\",\n \"borderHover\": \"rgba(255, 255, 255, 0.24)\"\n },\n \"slider\": {\n \"bg\": \"#ffffff\",\n \"bgHover\": \"#ffffff\",\n \"bgDisable\": \"rgba(255, 255, 255, 0.2)\"\n },\n \"switch\": {\n \"bg\": \"rgba(255, 255, 255, 0.1)\",\n \"bgDisable\": \"rgba(255, 255, 255, 0.2)\",\n \"bgHover\": \"rgba(255, 255, 255, 0.15)\",\n \"border\": \"#ffffff\",\n \"borderHover\": \"#ffffff\",\n \"borderDisable\": \"rgba(255, 255, 255, 0)\"\n },\n \"knob\": {\n \"bg\": \"#ffffff\",\n \"bgHover\": \"#f6f8f9\",\n \"bgInactive\": \"#ffffff\"\n },\n \"text\": {\n \"primary\": \"#ffffff\",\n \"disable\": \"#8c8b9a\"\n },\n \"link\": {\n \"primary\": \"#ffffff\",\n \"primaryHover\": \"rgba(255, 255, 255, 0.7)\",\n \"secondary\": \"#8576fd\",\n \"secondaryHover\": \"rgba(157, 149, 222, 0.7)\"\n },\n \"segmented\": {\n \"bg\": \"rgba(255, 255, 255, 0.1)\",\n \"bgHover\": \"rgba(255, 255, 255, 0.1)\",\n \"bgActive\": \"#2e3766\",\n \"border\": \"rgba(255, 255, 255, 0.1)\",\n \"borderHover\": \"rgba(255, 255, 255, 0.1)\",\n \"borderActive\": \"rgba(255, 255, 255, 0)\",\n \"text\": \"#ffffff\",\n \"textDisable\": \"rgba(255, 255, 255, 0.4)\"\n },\n \"tagLabel\": {\n \"product\": {\n \"bg\": \"#dfff80\",\n \"text\": \"#000000\",\n \"textCompact\": \"rgba(255, 255, 255, 0.48)\"\n },\n \"rarity\": {\n \"bg\": \"#141d1f\",\n \"text\": \"#22a8c3\"\n },\n \"name\": {\n \"bg\": \"#ffffff\",\n \"text\": \"#b7c5c8\"\n },\n \"account\": {\n \"bg\": \"#9580ff\",\n \"text\": \"#000000\",\n \"textCompact\": \"rgba(255, 255, 255, 0.48)\"\n },\n \"id\": {\n \"bg\": \"#d7dee0\",\n \"bgSeries\": \"#000000\",\n \"textSeries\": \"#d7dee0\",\n \"textNumber\": \"#000000\",\n \"textCompact\": \"rgba(255, 255, 255, 0.48)\"\n },\n \"subentity\": {\n \"bg\": \"#607f85\",\n \"text\": \"#000000\"\n },\n \"item\": {\n \"bg\": \"#80eaff\",\n \"text\": \"#000000\",\n \"textCompact\": \"rgba(255, 255, 255, 0.48)\"\n }\n },\n \"toggleButton\": {\n \"bg\": \"rgba(255, 255, 255, 0.1)\",\n \"bgHover\": \"rgba(255, 255, 255, 0.15)\",\n \"bgActive\": \"#454f88\",\n \"bgDisable\": \"rgba(255, 255, 255, 0.25)\",\n \"border\": \"rgba(255, 255, 255, 0.1)\",\n \"borderHover\": \"rgba(255, 255, 255, 0.15)\",\n \"borderActive\": \"#535e99\",\n \"borderDisable\": \"rgba(255, 255, 255, 0)\",\n \"text\": \"#ffffff\",\n \"textActive\": \"#d0d8ff\",\n \"textDisable\": \"rgba(255, 255, 255, 0.36)\"\n },\n \"appButton\": {\n \"bg\": \"#ffffff\",\n \"bgHover\": \"rgba(255, 255, 255, 0.76)\",\n \"bgPress\": \"rgba(255, 255, 255, 0.5)\",\n \"border\": \"rgba(255, 255, 255, 0)\",\n \"borderHover\": \"rgba(255, 255, 255, 0)\",\n \"borderPress\": \"rgba(255, 255, 255, 0)\",\n \"text\": \"#000000\",\n \"textDisable\": \"#666666\"\n }\n }\n}\n","import pentagramDark from \"./pentagram-dark.json\";\nimport pentagramLight from \"./pentagram-light.json\";\nimport ltgDark from \"./ltg-dark.json\";\n\n/**\n * NOTE: The \"ghost\" button variant tokens (control.brand.ghost, control.mono.ghost,\n * control.brandExtra.ghost, control.alert.ghost, and their text.ghost counterparts)\n * are developer-added tokens NOT present in the Figma design token exports.\n * Do NOT delete them when syncing tokens from Figma.\n *\n * Similarly, \"appButton\" tokens are developer-added (by r.tallmadge@xsolla.com).\n */\nexport const colors = {\n dark: pentagramDark,\n light: pentagramLight,\n \"pentagram-dark\": pentagramDark,\n \"pentagram-light\": pentagramLight,\n \"ltg-dark\": ltgDark,\n};\n\nexport type ThemeColors = typeof pentagramDark;\n","export const spacing = {\n xs: 4,\n s: 8,\n m: 16,\n l: 24,\n xl: 32,\n};\n\nexport const radius = {\n button: 4,\n card: 12,\n input: 4,\n tagSmall: 4,\n tagMedium: 6,\n tagLarge: 8,\n avatarSmall: 4,\n avatarLarge: 8,\n avatarCircle: 999,\n};\n","export const shadow = {\n active: \"0px 1px 2px rgba(7, 7, 8, 0.2), 0px 1px 3px 1px rgba(7, 7, 8, 0.1)\",\n surface: \"0px 1px 2px rgba(7, 7, 8, 0.2), 0px 2px 6px 2px rgba(7, 7, 8, 0.1)\",\n surfaceHover:\n \"0px 4px 8px 3px rgba(7, 7, 8, 0.1), 0px 1px 3px rgba(7, 7, 8, 0.2)\",\n popover:\n \"0px 6px 10px 4px rgba(7, 7, 8, 0.1), 0px 2px 3px rgba(7, 7, 8, 0.2)\",\n modal: \"0px 8px 12px 6px rgba(7, 7, 8, 0.1), 0px 4px 4px rgba(7, 7, 8, 0.2)\",\n};\n","import type { ProductContext } from \"./typography\";\n\nconst FALLBACK =\n '-apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif';\n\nconst displayFontByContext: Record<ProductContext, string> = {\n b2b: `\"Pilat\", \"Aktiv Grotesk\", \"Noto Sans\", \"Montserrat\", ${FALLBACK}`,\n b2c: `\"Pilat Wide\", \"Aktiv Grotesk\", \"Noto Sans\", \"Montserrat\", ${FALLBACK}`,\n paystation: `\"Pilat Wide\", \"Aktiv Grotesk\", \"Noto Sans\", \"Montserrat\", ${FALLBACK}`,\n presentation: `\"Pilat Wide\", \"Aktiv Grotesk\", \"Noto Sans\", \"Montserrat\", ${FALLBACK}`,\n};\n\nconst bodyFont = `\"Aktiv Grotesk\", \"Noto Sans\", \"Montserrat\", ${FALLBACK}`;\n\n/** Static fonts object (defaults to B2B for backwards compatibility) */\nexport const fonts = {\n heading: displayFontByContext.b2b,\n body: bodyFont,\n /** @deprecated Use `heading` or `body` instead */\n primary: bodyFont,\n};\n\n/** Returns context-aware font families */\nexport const getFonts = (productContext: ProductContext = \"b2b\") => ({\n heading: displayFontByContext[productContext],\n body: bodyFont,\n /** @deprecated Use `heading` or `body` instead */\n primary: bodyFont,\n});\n\nexport const typography = {\n button: {\n fontFamily: fonts.body,\n fontWeight: \"bold\",\n },\n};\n","// Typography token definitions for different product contexts (B2C, B2B, Pay Station, Presentation)\n// ProductContext determines typography, and in the future may also control component variations,\n// spacing, and other design system tokens that differ between B2B and B2C products.\n\nexport type ProductContext = \"b2c\" | \"b2b\" | \"paystation\" | \"presentation\";\n\nexport interface TypographyVariant {\n fontSize: number;\n lineHeight: string;\n fontWeight: number;\n}\n\nexport interface TypographyBodyVariant extends TypographyVariant {\n accent?: {\n fontWeight: number;\n };\n paragraph?: {\n lineHeight: string;\n spacing?: number;\n };\n}\n\nexport interface TypographyTokens {\n heading: {\n h1: TypographyVariant;\n h2: TypographyVariant;\n h3: TypographyVariant;\n h4: TypographyVariant;\n h5: TypographyVariant;\n };\n basic: {\n display: TypographyVariant;\n \"body-lg\": TypographyBodyVariant;\n \"body-md\": TypographyBodyVariant;\n \"body-sm\": TypographyBodyVariant;\n \"body-xs\": TypographyBodyVariant;\n };\n}\n\nexport const typographyTokens: Record<ProductContext, TypographyTokens> = {\n b2c: {\n heading: {\n h1: { fontSize: 40, lineHeight: \"48px\", fontWeight: 700 },\n h2: { fontSize: 32, lineHeight: \"38px\", fontWeight: 700 },\n h3: { fontSize: 28, lineHeight: \"34px\", fontWeight: 700 },\n h4: { fontSize: 24, lineHeight: \"28px\", fontWeight: 700 },\n h5: { fontSize: 20, lineHeight: \"24px\", fontWeight: 700 },\n },\n basic: {\n display: { fontSize: 48, lineHeight: \"58px\", fontWeight: 800 },\n \"body-lg\": {\n fontSize: 18,\n lineHeight: \"24px\",\n fontWeight: 400,\n accent: { fontWeight: 500 },\n paragraph: { lineHeight: \"26px\", spacing: 20 },\n },\n \"body-md\": {\n fontSize: 16,\n lineHeight: \"20px\",\n fontWeight: 400,\n accent: { fontWeight: 500 },\n paragraph: { lineHeight: \"22px\", spacing: 16 },\n },\n \"body-sm\": {\n fontSize: 14,\n lineHeight: \"18px\",\n fontWeight: 400,\n accent: { fontWeight: 500 },\n paragraph: { lineHeight: \"20px\", spacing: 12 },\n },\n \"body-xs\": {\n fontSize: 12,\n lineHeight: \"16px\",\n fontWeight: 400,\n accent: { fontWeight: 500 },\n paragraph: { lineHeight: \"18px\", spacing: 8 },\n },\n },\n },\n b2b: {\n heading: {\n h1: { fontSize: 56, lineHeight: \"68px\", fontWeight: 400 },\n h2: { fontSize: 48, lineHeight: \"58px\", fontWeight: 400 },\n h3: { fontSize: 32, lineHeight: \"38px\", fontWeight: 400 },\n h4: { fontSize: 24, lineHeight: \"28px\", fontWeight: 400 },\n h5: { fontSize: 20, lineHeight: \"24px\", fontWeight: 600 },\n },\n basic: {\n display: { fontSize: 64, lineHeight: \"78px\", fontWeight: 400 },\n \"body-lg\": {\n fontSize: 18,\n lineHeight: \"24px\",\n fontWeight: 400,\n accent: { fontWeight: 500 },\n paragraph: { lineHeight: \"26px\", spacing: 20 },\n },\n \"body-md\": {\n fontSize: 16,\n lineHeight: \"20px\",\n fontWeight: 400,\n accent: { fontWeight: 500 },\n paragraph: { lineHeight: \"22px\", spacing: 16 },\n },\n \"body-sm\": {\n fontSize: 14,\n lineHeight: \"18px\",\n fontWeight: 400,\n accent: { fontWeight: 500 },\n paragraph: { lineHeight: \"20px\", spacing: 12 },\n },\n \"body-xs\": {\n fontSize: 12,\n lineHeight: \"16px\",\n fontWeight: 400,\n accent: { fontWeight: 500 },\n paragraph: { lineHeight: \"18px\", spacing: 8 },\n },\n },\n },\n paystation: {\n heading: {\n h1: { fontSize: 28, lineHeight: \"34px\", fontWeight: 700 },\n h2: { fontSize: 24, lineHeight: \"28px\", fontWeight: 700 },\n h3: { fontSize: 20, lineHeight: \"24px\", fontWeight: 700 },\n h4: { fontSize: 18, lineHeight: \"22px\", fontWeight: 700 },\n h5: { fontSize: 16, lineHeight: \"20px\", fontWeight: 700 },\n },\n basic: {\n display: { fontSize: 40, lineHeight: \"48px\", fontWeight: 800 },\n \"body-lg\": {\n fontSize: 16,\n lineHeight: \"20px\",\n fontWeight: 400,\n accent: { fontWeight: 500 },\n paragraph: { lineHeight: \"22px\", spacing: 16 },\n },\n \"body-md\": {\n fontSize: 14,\n lineHeight: \"18px\",\n fontWeight: 400,\n accent: { fontWeight: 500 },\n paragraph: { lineHeight: \"20px\", spacing: 12 },\n },\n \"body-sm\": {\n fontSize: 12,\n lineHeight: \"16px\",\n fontWeight: 400,\n accent: { fontWeight: 500 },\n paragraph: { lineHeight: \"18px\", spacing: 8 },\n },\n \"body-xs\": {\n fontSize: 10,\n lineHeight: \"14px\",\n fontWeight: 400,\n accent: { fontWeight: 500 },\n paragraph: { lineHeight: \"14px\", spacing: 6 },\n },\n },\n },\n presentation: {\n heading: {\n h1: { fontSize: 56, lineHeight: \"68px\", fontWeight: 700 },\n h2: { fontSize: 48, lineHeight: \"58px\", fontWeight: 700 },\n h3: { fontSize: 40, lineHeight: \"48px\", fontWeight: 700 },\n h4: { fontSize: 32, lineHeight: \"38px\", fontWeight: 700 },\n h5: { fontSize: 28, lineHeight: \"34px\", fontWeight: 700 },\n },\n basic: {\n display: { fontSize: 64, lineHeight: \"78px\", fontWeight: 800 },\n \"body-lg\": {\n fontSize: 24,\n lineHeight: \"30px\",\n fontWeight: 400,\n accent: { fontWeight: 500 },\n paragraph: { lineHeight: \"34px\", spacing: 24 },\n },\n \"body-md\": {\n fontSize: 20,\n lineHeight: \"26px\",\n fontWeight: 400,\n accent: { fontWeight: 500 },\n paragraph: { lineHeight: \"28px\", spacing: 20 },\n },\n \"body-sm\": {\n fontSize: 18,\n lineHeight: \"24px\",\n fontWeight: 400,\n accent: { fontWeight: 500 },\n paragraph: { lineHeight: \"26px\", spacing: 16 },\n },\n \"body-xs\": {\n fontSize: 16,\n lineHeight: \"20px\",\n fontWeight: 400,\n accent: { fontWeight: 500 },\n paragraph: { lineHeight: \"22px\", spacing: 12 },\n },\n },\n },\n};\n\n// Default product context (B2B for backwards compatibility)\nexport const defaultProductContext: ProductContext = \"b2b\";\n\n// Helper function to get typography tokens for a specific product context\nexport const getTypographyTokens = (\n productContext: ProductContext = defaultProductContext\n): TypographyTokens => {\n return (\n typographyTokens[productContext] || typographyTokens[defaultProductContext]\n );\n};\n\n// Helper function to get a specific variant's styles\nexport const getTypographyVariant = (\n productContext: ProductContext,\n variant: string\n): TypographyVariant | TypographyBodyVariant | undefined => {\n const tokens = getTypographyTokens(productContext);\n\n // Check heading variants\n if (variant in tokens.heading) {\n return tokens.heading[variant as keyof typeof tokens.heading];\n }\n\n // Check basic variants\n if (variant === \"display\") {\n return tokens.basic.display;\n }\n\n // Check body variants\n const bodyVariantMap: Record<string, keyof typeof tokens.basic> = {\n bodyLg: \"body-lg\",\n bodyMd: \"body-md\",\n bodySm: \"body-sm\",\n bodyXs: \"body-xs\",\n };\n\n const bodyKey =\n bodyVariantMap[variant.replace(\"Accent\", \"\").replace(\"Paragraph\", \"\")];\n if (bodyKey && bodyKey in tokens.basic) {\n const baseVariant = tokens.basic[\n bodyKey as keyof typeof tokens.basic\n ] as TypographyBodyVariant;\n\n if (variant.includes(\"Accent\") && baseVariant.accent) {\n return {\n ...baseVariant,\n fontWeight: baseVariant.accent.fontWeight,\n };\n }\n\n if (variant.includes(\"Paragraph\") && baseVariant.paragraph) {\n return {\n ...baseVariant,\n lineHeight: baseVariant.paragraph.lineHeight,\n };\n }\n\n return baseVariant;\n }\n\n return undefined;\n};\n","import React, { useEffect, useRef } from \"react\";\nimport { isWeb } from \"../platform\";\nimport { fontFacesCSS } from \"./fontFaces\";\n\nlet injected = false;\n\n/**\n * Injects @font-face declarations into the document on web.\n * Safe to render multiple times — the style tag is only created once.\n * No-ops on React Native.\n */\nfunction injectFontStyles(): void {\n if (!isWeb || injected) return;\n\n const style = document.createElement(\"style\");\n style.setAttribute(\"data-xui-fonts\", \"\");\n style.textContent = fontFacesCSS;\n document.head.appendChild(style);\n injected = true;\n}\n\n/**\n * React component that loads the toolkit's font-face declarations.\n * Drop-in for any framework — works in Next.js, Vite, CRA, etc.\n *\n * Renders nothing to the DOM. Injects a single `<style>` tag into `<head>` on mount.\n */\nexport const FontLoader: React.FC = () => {\n const mountedRef = useRef(false);\n\n useEffect(() => {\n if (!mountedRef.current) {\n injectFontStyles();\n mountedRef.current = true;\n }\n }, []);\n\n return null;\n};\n\nFontLoader.displayName = \"FontLoader\";\n","export const isWeb = typeof document !== \"undefined\";\nexport const isNative = !isWeb;\n\n// For native platforms, we can check specific globals if needed,\n// but usually we just care about isWeb vs isNative for common logic.\nexport const isIOS =\n isNative &&\n typeof global !== \"undefined\" &&\n (global as any).Platform?.OS === \"ios\";\nexport const isAndroid =\n isNative &&\n typeof global !== \"undefined\" &&\n (global as any).Platform?.OS === \"android\";\n","const CDN_STRAPI = \"https://cdn.xsolla.net/strapi-v2-bucket-prod\";\nconst CDN_MERCHANT =\n \"https://cdn.xsolla.net/merchant-bucket-prod/files/uploaded/722279\";\n\n/**\n * @font-face CSS for all toolkit fonts, loaded from Xsolla CDN.\n *\n * Pilat Wide — B2C heading/display font, registered at weights 400, 600, 700, 800.\n *\n * Pilat — B2B heading/display font, registered at weights 300, 400, 600, 700, 800.\n *\n * Aktiv Grotesk — body font for all contexts,\n * mapped from the Sharp Grotesk CDN files (same typeface under a legacy name).\n * Registered at weights 300, 400, 500, 600, 700.\n */\nexport const fontFacesCSS = `\n /* ── Pilat Wide (B2C headings) ── */\n\n @font-face {\n font-family: 'Pilat Wide';\n src: url('${CDN_STRAPI}/Pilat_Test_Medium_/Pilat_Test_Medium.ttf') format('truetype');\n font-weight: 400;\n font-style: normal;\n font-display: swap;\n }\n @font-face {\n font-family: 'Pilat Wide';\n src: url('${CDN_STRAPI}/Pilat_Test_Demi_Bold_bee67c470a/Pilat_Test_Demi_Bold_bee67c470a.ttf') format('truetype');\n font-weight: 600;\n font-style: normal;\n font-display: swap;\n }\n @font-face {\n font-family: 'Pilat Wide';\n src: url('${CDN_STRAPI}/Pilat_Test_Bold_b12b40d234/Pilat_Test_Bold_b12b40d234.ttf') format('truetype');\n font-weight: 700;\n font-style: normal;\n font-display: swap;\n }\n @font-face {\n font-family: 'Pilat Wide';\n src: url('${CDN_STRAPI}/Pilat_Test_Heavy_2885678ca4/Pilat_Test_Heavy_2885678ca4.otf') format('opentype');\n font-weight: 800;\n font-style: normal;\n font-display: swap;\n }\n\n /* ── Pilat (B2B headings) ── */\n\n @font-face {\n font-family: 'Pilat';\n src: url('${CDN_MERCHANT}/55a03110b2400b778d485de2c8d064c0.woff2') format('woff2');\n font-weight: 300;\n font-style: normal;\n font-display: swap;\n }\n @font-face {\n font-family: 'Pilat';\n src: url('${CDN_MERCHANT}/e968c9cc76e48ff6111c90534549bbf9.woff2') format('woff2');\n font-weight: 400;\n font-style: normal;\n font-display: swap;\n }\n @font-face {\n font-family: 'Pilat';\n src: url('${CDN_MERCHANT}/ed4fe74e88aaacc6978f06a862e75b08.woff2') format('woff2');\n font-weight: 600;\n font-style: normal;\n font-display: swap;\n }\n @font-face {\n font-family: 'Pilat';\n src: url('${CDN_MERCHANT}/7450f429979af7eaa8fa4d4d91cee927.woff2') format('woff2');\n font-weight: 700;\n font-style: normal;\n font-display: swap;\n }\n @font-face {\n font-family: 'Pilat';\n src: url('${CDN_MERCHANT}/218d647ff7690c1e312f6943e29af375.woff2') format('woff2');\n font-weight: 800;\n font-style: normal;\n font-display: swap;\n }\n\n /* ── Aktiv Grotesk (body) — served from Sharp Grotesk CDN files ── */\n\n @font-face {\n font-family: 'Aktiv Grotesk';\n src: url('${CDN_STRAPI}/Pilat_Test_Light_c4650750bb/Pilat_Test_Light_c4650750bb.otf') format('opentype');\n font-weight: 300;\n font-style: normal;\n font-display: swap;\n }\n @font-face {\n font-family: 'Aktiv Grotesk';\n src: url('${CDN_STRAPI}/Pilat_Test_Book_5cb49cd592/Pilat_Test_Book_5cb49cd592.otf') format('opentype');\n font-weight: 400;\n font-style: normal;\n font-display: swap;\n }\n @font-face {\n font-family: 'Aktiv Grotesk';\n src: url('${CDN_STRAPI}/Pilat_Test_Demi_e9bed59107/Pilat_Test_Demi_e9bed59107.otf') format('opentype');\n font-weight: 500;\n font-style: normal;\n font-display: swap;\n }\n @font-face {\n font-family: 'Aktiv Grotesk';\n src: url('${CDN_STRAPI}/Pilat_Test_Bold_195d1b44fa/Pilat_Test_Bold_195d1b44fa.otf') format('opentype');\n font-weight: 600;\n font-style: normal;\n font-display: swap;\n }\n @font-face {\n font-family: 'Aktiv Grotesk';\n src: url('${CDN_STRAPI}/Pilat_Test_Bold_195d1b44fa/Pilat_Test_Bold_195d1b44fa.otf') format('opentype');\n font-weight: 700;\n font-style: normal;\n font-display: swap;\n }\n`;\n"],"mappings":"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","names":["React","React"]}
|