@lmb-it/kitsconcerto-native 0.1.291 → 0.1.293
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/apps/mobile/src/Core/Dropdown/index.cjs +30 -1
- package/apps/mobile/src/Core/Dropdown/index.cjs.map +1 -1
- package/apps/mobile/src/Core/Dropdown/index.js +30 -1
- package/apps/mobile/src/Core/Dropdown/index.js.map +1 -1
- package/hooks/useSeverityColors.cjs +66 -7
- package/hooks/useSeverityColors.cjs.map +1 -1
- package/hooks/useSeverityColors.js +66 -7
- package/hooks/useSeverityColors.js.map +1 -1
- package/index.d.ts +997 -914
- package/package.json +1 -1
- package/packages/types/src/Theme/defaultSeverityTheme.cjs +17 -0
- package/packages/types/src/Theme/defaultSeverityTheme.cjs.map +1 -1
- package/packages/types/src/Theme/defaultSeverityTheme.js +17 -0
- package/packages/types/src/Theme/defaultSeverityTheme.js.map +1 -1
- package/packages/types/src/Theme/defaultTheme.cjs +17 -0
- package/packages/types/src/Theme/defaultTheme.cjs.map +1 -1
- package/packages/types/src/Theme/defaultTheme.js +17 -0
- package/packages/types/src/Theme/defaultTheme.js.map +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"defaultTheme.js","sources":["../../../../../../../types/src/Theme/defaultTheme.ts"],"sourcesContent":["import type {IKitsTheme} from './types';\nimport {defaultSeverityTheme} from './defaultSeverityTheme';\nimport {DEFAULT_NATIVE_SHADOWS} from './shadows';\n\nexport const defaultTheme: IKitsTheme = {\n /* ─────────────────────────────────────────────────────────────\n * Palettes\n *\n * `primary` and `brand` share the same teal scale so consumers\n * can target either name. Anchors taken from the prototype:\n * AM.tealPale '#F0F8F8' → 50\n * AM.tealSoft '#E3F5F5' → 100\n * AM.teal '#20AAB0' → 500\n * AM.tealDark '#1A8E93' → 600\n * Other shades interpolated to keep the scale usable for tints\n * (50–300) and pressed/dark text on light surfaces (700–900).\n * ───────────────────────────────────────────────────────────── */\n colors: {\n blue: {\n 50: '#EFF6FF', 100: '#DBEAFE', 200: '#BFDBFE', 300: '#93C5FD', 400: '#60A5FA',\n 500: '#3B82F6', 600: '#2563EB', 700: '#1D4ED8', 800: '#1E40AF', 900: '#1E3A8A',\n },\n green: {\n 50: '#F0FDF4', 100: '#DCFCE7', 200: '#BBF7D0', 300: '#86EFAC', 400: '#4ADE80',\n 500: '#22C55E', 600: '#16A34A', 700: '#15803D', 800: '#166534', 900: '#14532D',\n },\n red: {\n 50: '#FEF2F2', 100: '#FEE2E2', 200: '#FECACA', 300: '#FCA5A5', 400: '#F87171',\n 500: '#EF4444', 600: '#DC2626', 700: '#B91C1C', 800: '#991B1B', 900: '#7F1D1D',\n },\n yellow: {\n 50: '#FEFCE8', 100: '#FEF9C3', 200: '#FEF08A', 300: '#FDE047', 400: '#FACC15',\n 500: '#EAB308', 600: '#CA8A04', 700: '#A16207', 800: '#854D0E', 900: '#713F12',\n },\n orange: {\n 50: '#FFF7ED', 100: '#FFEDD5', 200: '#FED7AA', 300: '#FDBA74', 400: '#FB923C',\n 500: '#F97316', 600: '#EA580C', 700: '#C2410C', 800: '#9A3412', 900: '#7C2D12',\n },\n purple: {\n 50: '#FAF5FF', 100: '#F3E8FF', 200: '#E9D5FF', 300: '#D8B4FE', 400: '#C084FC',\n 500: '#8B5CF6', 600: '#7C3AED', 700: '#6D28D9', 800: '#5B21B6', 900: '#4C1D95',\n },\n teal: {\n 50: '#F0FDFA', 100: '#CCFBF1', 200: '#99F6E4', 300: '#5EEAD4', 400: '#2DD4BF',\n 500: '#14B8A6', 600: '#0D9488', 700: '#0F766E', 800: '#115E59', 900: '#134E4A',\n },\n cyan: {\n 50: '#ECFEFF', 100: '#CFFAFE', 200: '#A5F3FC', 300: '#67E8F9', 400: '#22D3EE',\n 500: '#06B6D4', 600: '#0891B2', 700: '#0E7490', 800: '#155E75', 900: '#164E63',\n },\n pink: {\n 50: '#FDF2F8', 100: '#FCE7F3', 200: '#FBCFE8', 300: '#F9A8D4', 400: '#F472B6',\n 500: '#EC4899', 600: '#DB2777', 700: '#BE185D', 800: '#9D174D', 900: '#831843',\n },\n gray: {\n 50: '#F9FAFB', 100: '#F3F4F6', 200: '#E5E7EB', 300: '#D1D5DB', 400: '#9CA3AF',\n 500: '#6B7280', 600: '#4B5563', 700: '#374151', 800: '#1F2937', 900: '#111827',\n },\n indigo: {\n 50: '#EEF2FF', 100: '#E0E7FF', 200: '#C7D2FE', 300: '#A5B4FC', 400: '#818CF8',\n 500: '#6366F1', 600: '#4F46E5', 700: '#4338CA', 800: '#3730A3', 900: '#312E81',\n },\n // Brand: warm gold. Anchors:\n // 400 = --gold-bright (#E5C661) — accents / glow / highlights\n // 500 = --gold-primary (#C9A84C) — primary brand\n // 700 = --gold-deep (#9A7E2E) — pressed / on-light text emphasis\n // 900 = --gold-muted (#5C4920) — deepest tone / dark surfaces\n // The 50–300 / 600 / 800 stops are interpolated to keep the scale usable.\n gold: {\n 50: '#FBF7E8', 100: '#F5EBC3', 200: '#EFDD9A', 300: '#E5C661', 400: '#D7B554',\n 500: '#C9A84C', 600: '#B69241', 700: '#9A7E2E', 800: '#7A632A', 900: '#5C4920',\n },\n primary: {\n 50: '#F0F8F8', // AM.tealPale\n 100: '#E3F5F5', // AM.tealSoft\n 200: '#B7E5E7',\n 300: '#85D2D6',\n 400: '#4DBEC4',\n 500: '#20AAB0', // AM.teal\n 600: '#1A8E93', // AM.tealDark\n 700: '#157479',\n 800: '#0F5A5F',\n 900: '#0A4045',\n },\n brand: {\n 50: '#F0F8F8',\n 100: '#E3F5F5',\n 200: '#B7E5E7',\n 300: '#85D2D6',\n 400: '#4DBEC4',\n 500: '#20AAB0',\n 600: '#1A8E93',\n 700: '#157479',\n 800: '#0F5A5F',\n 900: '#0A4045',\n },\n /* Ink scale — reflects the prototype's ink/inkDim/inkMute trio\n * plus a few stops above/below for shadow text and disabled. */\n ink: {\n 50: '#F5F7F7', // AM.lineSoft\n 100: '#EEEEEE', // AM.line\n 200: '#D6DCDF',\n 300: '#B7C0C5',\n 400: '#8896A0', // AM.inkMute\n 500: '#75808E', // splash text-secondary\n 600: '#546067', // AM.inkDim\n 700: '#3D464C',\n 800: '#263238', // AM.ink\n 900: '#0F1A1C',\n },\n },\n\n /* ─────────────────────────────────────────────────────────────\n * Semantic tokens\n *\n * Light is the prototype's day mode; the user lands here. Cards\n * (`#FFFFFF`) stack on the cream `bg-page` (`#F0EEE9`).\n * Dark mirrors AM_DARK exactly — same hierarchy of bg / bgAlt /\n * bgSunk so depth reads consistently across modes.\n * ───────────────────────────────────────────────────────────── */\n semanticTokens: {\n light: {\n // Brand\n primary: 'primary.500', // #20AAB0\n 'primary-hover': 'primary.600', // #1A8E93 = AM.tealDark\n 'primary-active':'primary.700', // pressed\n secondary: 'ink.600', // #546067 = AM.inkDim\n brand: 'primary.500',\n 'brand-bright': 'primary.300',\n 'brand-deep': 'primary.700',\n 'brand-muted': 'primary.900',\n\n // Status — prototype's amber / rose / indigo, synthetic green for success\n success: '#16A34A',\n danger: '#E3595B', // AM.rose\n warning: '#F59E0B', // AM.amber\n info: '#4F5BD5', // AM.indigo\n help: '#4F5BD5',\n 'ai-accent':'#4F5BD5',\n\n // Text\n text: 'ink.800', // #263238 = AM.ink\n 'text-primary': 'ink.800',\n 'text-secondary':'ink.600', // #546067 = AM.inkDim\n 'text-subtle': 'ink.400', // #8896A0 = AM.inkMute\n 'text-muted': 'ink.400',\n 'text-on-primary':'#FFFFFF',\n 'text-link': 'primary.500',\n\n // Backgrounds — cream page, white cards\n bg: '#FFFFFF', // AM.bg\n 'bg-subtle': '#F5F7F6', // AM.bgAlt — card well\n 'bg-muted': '#EEF3F2', // AM.bgSunk — deepest layer\n 'bg-accent': '#E3F5F5', // AM.tealSoft — selected/highlight wash\n 'bg-input': '#EEF3F2', // AM.bgSunk — input wells\n 'bg-page': '#F0EEE9', // splash body background\n\n // Surfaces\n 'surface-ground': '#F0EEE9', // page (cream)\n 'surface-card': '#FFFFFF', // AM.bg\n 'surface-muted': '#F3F4F6', // subtle muted panel (chat system pill / separator / typing)\n 'surface-overlay': '#FFFFFF', // popovers / dropdowns\n 'surface-hover': '#F5F7F6', // AM.bgAlt\n 'surface-sidebar': '#FAF8F3', // slightly tinted cream for sidebar\n 'surface-border': '#EEEEEE', // AM.line\n\n // Borders\n border: '#EEEEEE', // AM.line\n 'border-default': '#EEEEEE',\n 'border-subtle': '#F5F7F7', // AM.lineSoft\n 'border-strong': '#D6DCDF', // ink.200\n divider: '#EEEEEE',\n\n // Status tints (~12–15% alpha of the named hex)\n 'success-tint': 'rgba(22,163,74,0.12)',\n 'danger-tint': 'rgba(227,89,91,0.12)', // rose 12%\n 'warning-tint': 'rgba(245,158,11,0.14)', // amber 14%\n 'info-tint': 'rgba(79,91,213,0.12)', // indigo 12%\n 'brand-tint': 'rgba(32,170,176,0.14)', // AM.tealGlow\n 'ai-tint': 'rgba(79,91,213,0.14)',\n // Status text — dark-aware, legible on the matching -tint bg (ChatBubble system tones)\n 'brand-text': '#0A4E54',\n 'success-text': '#065F46',\n 'warning-text': '#92400E',\n\n // Switch\n 'switch-bg': '#D6DCDF', // ink.200\n },\n\n dark: {\n // Brand — flip the anchor so OFF-state is brighter (AM_DARK.teal)\n primary: 'primary.400', // visually #4DBEC4 — close to AM_DARK.teal '#2DC0C7'\n 'primary-hover': 'primary.300',\n 'primary-active':'primary.600',\n secondary: '#B6C1BF', // AM_DARK.inkDim\n brand: 'primary.400',\n 'brand-bright': 'primary.300',\n 'brand-deep': 'primary.700',\n 'brand-muted': 'primary.900',\n\n // Status (slightly punchier on dark)\n success: '#22C55E',\n danger: '#FF7A7C', // lifted rose for dark\n warning: '#FBBF24',\n info: '#7C84F5', // lifted indigo for dark\n help: '#7C84F5',\n 'ai-accent':'#7C84F5',\n\n // Text — cream-ish near-white on near-black\n text: '#ECF1F0', // AM_DARK.ink\n 'text-primary': '#ECF1F0',\n 'text-secondary':'#B6C1BF', // AM_DARK.inkDim\n 'text-subtle': '#7F8C8B', // AM_DARK.inkMute\n 'text-muted': '#7F8C8B',\n 'text-on-primary':'#0F1A1C', // ink.900 — readable on bright teal in dark\n 'text-link': 'primary.300',\n\n // Backgrounds — AM_DARK trio\n bg: '#161D1E', // AM_DARK.bgAlt — card surface\n 'bg-subtle': '#10161A', // AM_DARK.bg\n 'bg-muted': '#0C1114', // AM_DARK.bgSunk\n 'bg-accent': 'rgba(45,192,199,0.12)',\n 'bg-input': '#0C1114',\n 'bg-page': '#10161A', // AM_DARK.bg\n\n // Surfaces\n 'surface-ground': '#10161A',\n 'surface-card': '#161D1E',\n 'surface-muted': '#374151',\n 'surface-overlay': '#161D1E',\n 'surface-hover': '#1B2426',\n 'surface-sidebar': '#10161A',\n 'surface-border': '#2A302F', // AM_DARK.line\n\n // Borders\n border: '#2A302F', // AM_DARK.line\n 'border-default': '#2A302F',\n 'border-subtle': '#1F2424', // AM_DARK.lineSoft\n 'border-strong': '#3D464C',\n divider: '#2A302F',\n\n // Status tints\n 'success-tint': 'rgba(34,197,94,0.18)',\n 'danger-tint': 'rgba(255,122,124,0.20)',\n 'warning-tint': 'rgba(251,191,36,0.20)',\n 'info-tint': 'rgba(124,132,245,0.18)',\n 'brand-tint': 'rgba(45,192,199,0.20)', // AM_DARK.tealGlow\n 'ai-tint': 'rgba(124,132,245,0.20)',\n // Status text — dark-aware, legible on the matching -tint bg (ChatBubble system tones)\n 'brand-text': '#B2EBF2',\n 'success-text': '#A7F3D0',\n 'warning-text': '#FDE68A',\n\n // Switch\n 'switch-bg': '#3D464C',\n },\n },\n\n /* ─────────────────────────────────────────────────────────────\n * Severity (Button / Alert / Toast / Dialog)\n * Brand lane = teal. Other lanes use the prototype's accent colours\n * via direct hex on the slots that don't have a palette name.\n * ───────────────────────────────────────────────────────────── */\n severity: {\n brand: {\n solid: 'brand.500',\n solidText: '#FFFFFF',\n bgTint: 'brand.50',\n iconFg: 'brand.600',\n iconBg: 'brand.100',\n text: 'brand.700',\n border: 'brand.500',\n },\n success: {\n solid: 'green.500',\n solidText: '#FFFFFF',\n bgTint: 'green.50',\n iconFg: 'green.600',\n iconBg: 'green.100',\n text: 'green.700',\n border: 'green.500',\n },\n danger: {\n // AM.rose lane — kits palette has no `rose`, so we use red shades\n // and override the solid with the exact AM hex for fidelity.\n solid: '#E3595B',\n solidText: '#FFFFFF',\n bgTint: 'red.50',\n iconFg: 'red.600',\n iconBg: 'red.100',\n text: 'red.700',\n border: '#E3595B',\n },\n warning: {\n // AM.amber lane — yellow-ish palette plus exact amber on solid.\n solid: '#F59E0B',\n solidText: '#FFFFFF',\n bgTint: 'yellow.50',\n iconFg: '#B45309',\n iconBg: 'yellow.100',\n text: '#92400E',\n border: '#F59E0B',\n },\n info: {\n // AM.indigo lane.\n solid: '#4F5BD5',\n solidText: '#FFFFFF',\n bgTint: 'indigo.50',\n iconFg: 'indigo.600',\n iconBg: 'indigo.100',\n text: 'indigo.700',\n border: '#4F5BD5',\n },\n secondary: {\n solid: 'gray.500',\n solidText: '#FFFFFF',\n bgTint: 'gray.50',\n iconFg: 'gray.600',\n iconBg: 'gray.100',\n text: 'gray.700',\n border: 'gray.400',\n },\n help: {\n // Same as info — prototype uses one indigo for both lanes.\n solid: '#4F5BD5',\n solidText: '#FFFFFF',\n bgTint: 'indigo.50',\n iconFg: 'indigo.600',\n iconBg: 'indigo.100',\n text: 'indigo.700',\n border: '#4F5BD5',\n },\n },\n\n /* ─────────────────────────────────────────────────────────────\n * Spacing — kits default scale (matches existing dashboard theme).\n * ───────────────────────────────────────────────────────────── */\n spacing: {\n '0': '0',\n '0.5': '0.125rem',\n '1': '0.25rem',\n '1.5': '0.375rem',\n '2': '0.5rem',\n '3': '0.75rem',\n '4': '1rem',\n '5': '1.25rem',\n '6': '1.5rem',\n '8': '2rem',\n '10': '2.5rem',\n '12': '3rem',\n '16': '4rem',\n '20': '5rem',\n '24': '6rem',\n },\n\n /* ─────────────────────────────────────────────────────────────\n * Radii — taken from the prototype's `AM.r`:\n * AM.r.sm = 8\n * AM.r.md = 12\n * AM.r.lg = 16\n * AM.r.xl = 24\n * AM.r.pill = 999\n * Slightly softer than `theme.ts` (10px lg) — matches the\n * prototype's airier card chrome.\n * ───────────────────────────────────────────────────────────── */\n radii: {\n none: '0',\n sm: '8px',\n base: '8px',\n md: '12px',\n lg: '16px',\n xl: '20px',\n '2xl':'24px',\n '3xl':'32px',\n pill: '999px',\n full: '9999px',\n },\n\n /* ─────────────────────────────────────────────────────────────\n * Shadows — lifted from `AM.shadow` and `AM.shadowLg`. Both use\n * `rgba(15,26,28,…)` to tint the shadow toward the ink colour for\n * a softer, less neutral elevation.\n * ───────────────────────────────────────────────────────────── */\n shadows: {\n // Cross-platform presets (web `box-shadow` + native params). `native`\n // values are the single source `DEFAULT_NATIVE_SHADOWS` so the web var\n // and the native scale never drift. Override either field per consumer.\n none: {web: 'none', native: DEFAULT_NATIVE_SHADOWS.none},\n xs: {web: '0 1px 1px rgba(15,26,28,0.03)', native: DEFAULT_NATIVE_SHADOWS.xs},\n sm: {web: '0 1px 2px rgba(15,26,28,0.04)', native: DEFAULT_NATIVE_SHADOWS.sm},\n md: {web: '0 2px 4px rgba(15,26,28,0.05), 0 6px 16px rgba(15,26,28,0.06)', native: DEFAULT_NATIVE_SHADOWS.md},\n lg: {web: '0 4px 16px rgba(15,26,28,0.06), 0 20px 40px rgba(15,26,28,0.08)', native: DEFAULT_NATIVE_SHADOWS.lg},\n // ⛔ THE ONLY PRESET THAT CASTS UPWARD. For blocks anchored to the\n // bottom of the viewport; see the note on `up` in `shadows.ts`.\n up: {web: '0 -3px 5px rgba(15,26,28,0.05), 0 -8px 20px rgba(15,26,28,0.06)', native: DEFAULT_NATIVE_SHADOWS.up},\n // Web-only legacy levels (no cross-platform native mapping).\n base: '0 1px 2px rgba(15,26,28,0.04), 0 4px 12px rgba(15,26,28,0.04)', // AM.shadow\n xl: '0 8px 24px rgba(15,26,28,0.10), 0 30px 60px rgba(15,26,28,0.12)',\n '2xl':'0 25px 50px rgba(15,26,28,0.20)',\n inner:'inset 0 2px 4px rgba(15,26,28,0.05)',\n },\n\n /* ─────────────────────────────────────────────────────────────\n * Fonts — Roboto, mirroring the prototype's\n * font: 'Roboto, -apple-system, system-ui, sans-serif'\n * The KitsThemeProvider emits `--kits-font-body` and applies it\n * globally (see KitsThemeProvider.web.tsx — kits-global-fonts\n * style tag), so changing `body` here flips the entire app.\n * ───────────────────────────────────────────────────────────── */\n fonts: {\n heading: 'Roboto, -apple-system, system-ui, \"Segoe UI\", sans-serif',\n body: 'Roboto, -apple-system, system-ui, \"Segoe UI\", sans-serif',\n mono: '\"JetBrains Mono\", ui-monospace, \"SF Mono\", Menlo, monospace',\n serif: 'ui-serif, Georgia, Cambria, \"Times New Roman\", Times, serif',\n sans: 'Roboto, -apple-system, system-ui, \"Segoe UI\", sans-serif',\n },\n\n fontSizes: {\n xs: '0.75rem',\n sm: '0.875rem',\n md: '1rem',\n lg: '1.125rem',\n xl: '1.25rem',\n '2xl':'1.5rem',\n '3xl':'1.875rem',\n '4xl':'2.25rem',\n '5xl':'3rem',\n '6xl':'3.75rem',\n },\n\n fontWeights: {\n light: 300,\n normal: 400,\n medium: 500,\n semibold: 600,\n bold: 700,\n },\n\n lineHeights: {\n none: 1,\n tight: 1.25,\n snug: 1.375,\n normal: 1.5,\n relaxed: 1.625,\n loose: 2,\n },\n\n /* ─────────────────────────────────────────────────────────────\n * Component slot defaults\n *\n * Identical structurally to `./theme.ts` — only token references\n * change (radii are `12` instead of `8` on Cards, shadows resolve\n * to `AM.shadow`, etc.). Slots that don't reference colour-bound\n * tokens (paddings, gaps, line-heights) are unchanged.\n * ───────────────────────────────────────────────────────────── */\n components: {\n // ─── Button ────────────────────────────────────────────\n Button: {\n root: {\n props: {\n rounded: true,\n size: 'sm',\n },\n style: {\n borderRadius: 12, // AM.r.md\n fontWeight: '600',\n },\n },\n },\n\n // ─── Input (base group) ────────────────────────────────\n // FormElement (label/helperText/error) is configured by the kits\n // default theme — leaving those slots off here so they inherit.\n //\n // `borderWidth: 0` is required alongside `border: 'none'` so the\n // inner input is borderless on BOTH platforms — the visual frame\n // is owned by `inputGroup`. Web reads `border: 'none'` (CSS\n // shorthand → resets borderWidth/style/color). React Native\n // silently ignores the `border` string but accepts the explicit\n // `borderWidth: 0`. Both end up with no inner border.\n Input: {\n root: {\n props: {\n inputSize: 'md',\n },\n style: {\n borderRadius: 0,\n border: 'none',\n borderWidth: 0,\n fontSize: 14,\n color: 'text',\n },\n },\n container: {\n style: { gap: 6 },\n },\n // `borderWidth: 1` is a number, not the CSS string `'1px'`.\n // RN's ViewStyle requires numeric borderWidth; web CSS accepts\n // `1` and treats it as `1px`, so both platforms render the same\n // 1px frame around the input group.\n inputGroup: {\n style: {\n borderColor: \"bg-accent\",\n borderRadius: 10,\n borderStyle:'solid',\n borderWidth: 1,\n fontSize: 14,\n height:52,\n color: 'text',\n },\n },\n leftAddon: {\n style: { backgroundColor: 'transparent' },\n },\n },\n\n // Members inherit the Input chrome via baseGroup=\"Input\"\n InputText: {},\n InputNumber: {},\n InputMask: {},\n InputPassword: {},\n ColorPicker: {},\n PhoneInput: {},\n\n // ─── Datepicker ────────────────────────────────────────\n // The `panel` slot is the calendar popup (web-only; the native\n // Datepicker uses platform-native UI). Keeping `borderWidth: 1`\n // as a number for consistency with the rest of the theme.\n Datepicker: {\n panel: {\n style: {\n backgroundColor: 'surface-overlay',\n borderColor: \"bg-accent\",\n borderRadius: 10,\n borderStyle:'solid',\n borderWidth: 1,\n padding: 8,\n overflow: 'hidden',\n },\n },\n calendarHeader: {\n style: {\n backgroundColor: 'transparent',\n borderBottom: '1px solid',\n borderColor: \"bg-accent\",\n paddingBottom: 8,\n marginBottom: 4,\n color: 'text-primary',\n fontWeight: '600',\n },\n },\n calendarNavButton: {\n // style: { color: 'text-secondary', width: 28, height: 28, borderRadius: 8 },\n },\n weekDay: {\n style: {\n color: 'text-muted',\n fontSize: 11,\n fontWeight: '600',\n textTransform: 'uppercase',\n letterSpacing: '0.04em',\n },\n },\n dayCell: {\n style: {\n color: 'text-primary',\n borderRadius: 8,\n transition: 'background-color 0.12s ease, color 0.12s ease',\n },\n },\n // Selected day — teal pill\n daySelected: {\n style: { backgroundColor: 'primary', color: 'text-on-primary', fontWeight: '600' },\n },\n // Today — teal-tinted ring + bold\n dayToday: {\n style: { color: 'brand-deep', backgroundColor: 'brand-tint', fontWeight: '700' },\n },\n dayDisabled: {\n style: { color: 'text-muted', opacity: 0.45, cursor: 'not-allowed' },\n },\n },\n\n // ─── Textarea ──────────────────────────────────────────\n // Textarea is borderless internally on native (its own visual frame\n // is drawn here on the root, not on a separate inputGroup wrapper,\n // because textareas rarely host addons). `borderWidth: 1` is a\n // number for RN compatibility.\n Textarea: {\n root: {\n props: { inputSize: 'md' },\n style: {\n borderColor: \"bg-accent\",\n borderRadius: 10,\n borderStyle:'solid',\n borderWidth: 1,\n backgroundColor: 'transparent',\n fontSize: 14,\n color: 'text',\n },\n },\n },\n\n // ─── Select base group ─────────────────────────────────\n // `borderWidth: 0` alongside `border: 'none'` for RN parity — same\n // rationale as `Input.root.style` above.\n Select: {\n root: {\n props: { inputSize: 'md' },\n style: {\n borderRadius: 0,\n border: 'none',\n borderWidth: 0,\n fontSize: 14,\n color: 'text',\n backgroundColor: 'transparent',\n },\n },\n container: {\n style: { height: '100%', gap: 6 },\n },\n // `borderWidth: 1` (number, not the string `'1px'`) for RN\n // compatibility — same rationale as `Input.inputGroup` above.\n inputGroup:{\n style:{\n borderColor: \"bg-accent\",\n height:52,\n borderRadius: 10,\n borderStyle:'solid',\n borderWidth: 1,\n fontSize: 14,\n color: 'text',\n }\n },\n /* Option-list (popover panel) */\n panel: {\n style: {\n backgroundColor: 'surface-overlay',\n border: '1px solid',\n borderColor: \"bg-accent\",\n borderRadius: 16, // AM.r.lg\n overflow: 'hidden',\n },\n },\n item: {\n style: {\n paddingLeft: 12,\n paddingRight: 12,\n paddingTop: 8,\n paddingBottom: 8,\n fontSize: 14,\n color: 'text-primary',\n borderRadius: 8,\n margin: 2,\n transition: 'background-color 0.12s ease, color 0.12s ease',\n },\n },\n itemSelected: {\n style: {\n backgroundColor: 'brand-tint', // AM.tealGlow\n color: 'brand-deep',\n fontWeight: '600',\n },\n },\n itemFocused: {\n style: { backgroundColor: 'bg-subtle', color: 'text-primary' },\n },\n itemHover: {\n style: { backgroundColor: 'bg-subtle', color: 'text-primary' },\n },\n itemDisabled: {\n style: { color: 'text-muted', opacity: 0.55, cursor: 'not-allowed' },\n },\n\n /* ─── Chips (MultiSelect display=\"chip\" AND Tags) ───────\n ⛔ THESE LIVE ON THE BASE GROUP BECAUSE TWO CONTROLS DRAW CHIPS\n AND THEY DISAGREED. The values below used to sit under\n `MultiSelect`, so MultiSelect drew a pill and the Tags field —\n AutoComplete with `isMultiple`, which hardcoded its own\n background+colour and read no slot at all — drew PrimeReact's\n square token right next to it. One definition, both readers. */\n token: {\n style: {\n backgroundColor: 'brand-tint',\n color: 'brand-deep',\n borderRadius: 999, // AM.r.pill\n paddingLeft: 10,\n paddingRight: 8,\n paddingTop: 2,\n paddingBottom: 2,\n fontSize: 12,\n fontWeight: '500',\n margin: 2,\n },\n },\n tokenIcon: {\n style: { color: 'brand-deep', marginLeft: 4, fontSize: 12, cursor: 'pointer' },\n },\n /* ⚠️ THE CHIPS BOX IS FLAT BY DEFAULT, AND THAT IS NOT THE SAME AS\n UNSTYLEABLE. `KitsContainer` already paints the `inputGroup`\n border around the field, so a second border here would double it.\n The slot exists so a consumer CAN paint it — an `attached` tags\n field has no KitsContainer at all and needs to draw its own\n chrome. See `IChipInputSlots.tokenContainer`. */\n tokenContainer: {\n style: {\n backgroundColor: 'transparent',\n borderWidth: 0,\n },\n },\n },\n\n // ─── MultiSelect (per-item checkbox slots; chips inherit\n // from the Select base group above) ───────────────────\n MultiSelect: {\n checkboxBox: {\n style: {\n borderColor: 'border-strong',\n backgroundColor: 'transparent',\n borderRadius: 4,\n },\n },\n checkboxBoxChecked: {\n style: { backgroundColor: 'primary', borderColor: 'primary' },\n },\n checkboxIcon: {\n style: { color: 'text-on-primary' },\n },\n },\n\n // Select members (inherit via baseGroup=\"Select\")\n DropdownSelect: {},\n TreeSelect: {},\n ListBox: {},\n CascadeSelect: {},\n\n AutoComplete: {\n container: { style: { height: 'auto' } },\n },\n\n // ─── Switch ────────────────────────────────────────────\n // Slot keys use the post-refactor names (track / trackOn / thumb /\n // thumbOn). Prototype never animates the thumb colour, so OFF and\n // ON both stay white.\n Switch: {\n track: {\n style: {\n backgroundColor: 'switch-bg',\n borderRadius: 999,\n transition: 'background-color 0.18s ease',\n },\n },\n trackOn: {\n style: { backgroundColor: 'primary' },\n },\n thumb: { style: { backgroundColor: '#FFFFFF' } },\n thumbOn: { style: { backgroundColor: '#FFFFFF' } },\n // ⛔ THE LABEL NEEDS ITS OWN COLOUR — fixed 21 Sep 2026. A Switch's\n // label had no colour from any slot, so native drew it in the platform\n // default (black) — invisible on the dark background, beside inputs\n // whose labels were readable. Measured on the iPhone 16 simulator in\n // dark mode; the switch itself (teal ON / grey OFF) was always legible.\n label: {\n style: { color: 'text-primary', fontWeight: '600' },\n },\n },\n\n // ─── Checkbox / Radio ──────────────────────────────────\n Checkbox: {\n container: { style: { backgroundColor: 'transparent' } },\n // ⛔ THE ITEM LABEL NEEDS A COLOUR — the Radio label's twin (21 Sep\n // 2026, 9c002a5b), found sweeping every native input for the same\n // fault (22 Sep 2026): with no `item` slot, `checkbox.native.tsx`\n // resolved an empty style and native drew the label black on the\n // dark background. 'text-primary' is dark-aware.\n item: { style: { color: 'text-primary' } },\n },\n Radio: {\n container: { style: { backgroundColor: 'transparent' } },\n // ⛔ THE LABEL AND THE OPTION TEXT NEED A COLOUR — fixed 21 Sep 2026, the\n // Switch label's twin: with no slot colour, native drew both black on a\n // dark background. 'text-primary' is dark-aware.\n label: { style: { color: 'text-primary', fontWeight: '600' } },\n item: { style: { color: 'text-primary' } },\n },\n\n // ─── Card ──────────────────────────────────────────────\n // Slightly larger radius and softer shadow than `theme.ts` —\n // matches the prototype's airier feel.\n Card: {\n root: {\n props: { variant: 'elevated' },\n style: {\n borderRadius: 16, // AM.r.lg\n padding: 16,\n backgroundColor: 'surface-card',\n borderWidth: 1,\n borderColor: 'border',\n },\n },\n header: { style: { paddingBottom: 12 } },\n title: { style: { fontSize: 16, fontWeight: '600', color: 'text' } },\n subTitle:{ style: { fontSize: 13, color: 'text-secondary' } },\n content: { style: { padding: 0 } },\n footer: { style: { paddingTop: 12 } },\n },\n\n // ─── Badge / Chip ─────────────────────────────────────\n Badge: {\n root: {\n style: {\n borderRadius: 999, // AM.r.pill\n paddingLeft: 12,\n paddingRight: 12,\n paddingTop: 4,\n paddingBottom: 4,\n fontSize: 12,\n fontWeight: '500',\n letterSpacing: '0.01em',\n },\n },\n },\n\n // ─── Table ────────────────────────────────────────────\n Table: {\n paginatorTemplate:\n 'PrevPageLink PageLinks NextPageLink CurrentPageReport RowsPerPageDropdown',\n currentPageReportTemplate: 'Showing {first}–{last} of {totalRecords}',\n rowsPerPageOptions: [10, 25, 50, 100],\n // NOTE: `paginatorAlign` and `paginatorLabels` are deliberately\n // left unset. Both change the paginator's layout for every\n // existing consumer, so they stay opt-in:\n // paginatorAlign: 'between' → report leading, nav trailing\n // paginatorLabels: { prev: 'Prev', next: 'Next' } → word buttons\n\n // Spacing. `paginatorGap` separates the report, the nav buttons\n // and the block of page links; `paginatorPageGap` separates the\n // numbered links from each other. The latter also makes their\n // container a flex box — PrimeReact ships it as a plain block\n // span, so without this there is nothing for a gap to act on.\n paginatorGap: 8,\n paginatorPageGap: 4,\n\n // Every toolbar control — search box included — shares one\n // height and floor width, so a text input and a dropdown line up.\n filtersLayout: 'flex',\n filterControlHeight: '2.5rem',\n filterControlMinWidth: 150,\n filterInputSize: 'sm',\n externalFilterLabelMode: 'label',\n\n cellVerticalAlign: 'middle',\n\n // `container` spans the top bar, toolbar, grid and paginator.\n // Left unstyled on purpose: the default look keeps a detached\n // filter bar above a bordered grid (`filterBar` + `root`). To get\n // the single-card look instead, move the border/radius here and\n // clear them from `root` and `filterBar`.\n container: {},\n topBar: {\n style: {\n paddingLeft: 20,\n paddingRight: 20,\n borderBottom: '1px solid',\n borderColor: 'bg-accent',\n backgroundColor: 'surface-card',\n },\n },\n bulkBar: {\n style: {\n paddingLeft: 20,\n paddingRight: 20,\n paddingTop: 10,\n paddingBottom: 10,\n gap: 12,\n backgroundColor: 'bg-subtle',\n borderBottom: '1px solid',\n borderColor: 'bg-accent',\n },\n },\n bulkBarText: {\n style: { fontSize: 13, fontWeight: '600', color: 'text-primary' },\n },\n\n root: {\n style: {\n borderRadius: 16, // AM.r.lg\n overflow: 'hidden',\n backgroundColor: 'surface-card',\n border: '1px solid',\n borderColor: 'border',\n },\n },\n header: {\n style: { border: 'none', backgroundColor: 'transparent' },\n },\n headerRow: {\n style: { border: 'none', backgroundColor: 'transparent' },\n },\n headerCell: {\n style: {\n fontSize: 11,\n fontWeight: '700',\n textTransform: 'uppercase',\n letterSpacing: '0.06em',\n color: 'text-secondary',\n paddingLeft: 20,\n paddingRight: 20,\n paddingTop: 14,\n paddingBottom: 14,\n border: 'none',\n backgroundColor: 'bg-subtle',\n },\n },\n bodyRow: {\n style: {\n border: 'none',\n transition: 'background-color 0.15s ease',\n },\n },\n // Selected row left accent — teal bar\n selectedRowAccent: {\n style: { boxShadow: 'inset 3px 0 0 0 var(--primary-color, #20AAB0)' },\n },\n bodyCell: {\n style: {\n paddingLeft: 20,\n paddingRight: 20,\n paddingTop: 16,\n paddingBottom: 16,\n fontSize: 14,\n color: 'text-primary',\n },\n },\n tableHeader: {\n style: {\n backgroundColor: 'transparent',\n paddingLeft: 0,\n paddingRight: 0,\n paddingTop: 0,\n paddingBottom: 0,\n border: 'none',\n },\n },\n\n /* In-header filter row (the <tr> containing per-column filter inputs).\n Override to re-skin the whole row (background, borders, etc.). */\n filterRow: {\n style: {\n backgroundColor: 'bg-subtle',\n borderTop: '1px solid',\n borderColor: 'bg-accent',\n },\n },\n /* In-header filter cell (each <td> inside the filter row). */\n filterCell: {\n style: {\n backgroundColor: 'bg-subtle',\n padding: '0.5rem 1rem',\n },\n },\n\n /* External filter bar */\n filterBar: {\n style: {\n backgroundColor: 'bg',\n border: '1px solid',\n borderColor: \"bg-accent\",\n borderRadius: 12,\n padding: 12,\n gap: 12,\n marginBottom: 12,\n },\n },\n /* Chrome shared by every toolbar control — the search box, each\n external filter and the column picker. It lives here rather\n than on `filterInput` / `searchInput` so `toolbarControl` is\n genuinely the one knob for \"restyle all of them\": a value on a\n more specific slot wins, so duplicating this chrome there would\n mean a consumer's `toolbarControl` override was silently beaten\n by a default it never set. Per-control slots stay free for\n genuine per-control differences. */\n toolbarControl: {\n style: {\n backgroundColor: 'bg-input',\n borderRadius: 8, // AM.r.sm\n borderWidth: 1,\n borderStyle: 'solid',\n borderColor: \"bg-accent\",\n },\n },\n filterInput: {},\n filterLabel: {\n style: {\n fontSize: 11,\n fontWeight: '600',\n letterSpacing: '0.05em',\n color: 'text-secondary',\n textTransform: 'uppercase',\n },\n },\n /* Placeholder text across every toolbar control — text inputs\n (::placeholder) and PrimeReact selects (.p-placeholder) alike. */\n filterPlaceholder: {\n style: {\n color: 'text-secondary',\n opacity: 1,\n },\n },\n /* Sizing only — the search box's chrome comes from\n `toolbarControl` along with every other control's. */\n searchInput: {\n style: {\n minWidth: 260,\n maxWidth: 460,\n },\n },\n toolbarRight: { style: { gap: 8 } },\n toolbarButton: {\n style: { height: '2.5rem', width: '2.5rem', padding: 0, borderRadius: 8 },\n },\n clearFilterButton: {\n props: { severity: 'danger', outlined: true, rounded: false },\n style: { height: '2.5rem', width: '2.5rem', padding: 0, borderRadius: 8 },\n },\n columnPicker: { style: { minWidth: 160, height: '2.5rem' } },\n\n /* Pagination */\n paginator: {\n style: {\n border: 'none',\n borderTop: '1px solid',\n borderColor: \"bg-accent\",\n paddingTop: 10,\n paddingBottom: 10,\n paddingLeft: 16,\n paddingRight: 16,\n backgroundColor: 'bg-subtle',\n },\n },\n paginatorPageButton: {\n style: { color: 'text-secondary', minWidth: 32, height: 32, borderRadius: 8, fontSize: 13 },\n },\n paginatorPageLink: {\n style: { color: 'text-primary', minWidth: 32, height: 32, borderRadius: 8, fontSize: 13, fontWeight: '500' },\n },\n paginatorActivePageButton: {\n style: {\n backgroundColor: 'primary',\n color: 'text-on-primary',\n height: 32,\n minWidth: 32,\n borderRadius: 8,\n fontWeight: '600',\n },\n },\n paginatorPageReport: {\n style: { color: 'text-secondary', fontSize: 13 },\n },\n paginatorRowsPerPage: {\n style: {\n height: 32,\n justifyContent: 'center',\n alignItems: 'center',\n color: 'text-secondary',\n fontSize: 13,\n margin: '0 10px',\n },\n },\n paginatorRowsPerPageDropdown: {\n style: {\n height: 32,\n border: '1px solid',\n borderColor: \"bg-accent\",\n borderRadius: 8,\n color: 'text-primary',\n fontSize: 13,\n },\n },\n emptyMessage: {\n style: {\n paddingTop: 40,\n paddingBottom: 40,\n textAlign: 'center',\n color: 'text-subtle',\n fontSize: 14,\n },\n },\n },\n\n // ─── Sidebar ──────────────────────────────────────────\n // ─── ImageCropper ─────────────────────────────────\n // ⚠️ NUMBERS, NOT CSS STRINGS, FOR ANYTHING NATIVE ALSO READS — the\n // same rule `Input.inputGroup` carries: React Native's ViewStyle wants\n // `borderWidth: 1`, web treats the bare `1` as `1px`, and one shared\n // declaration then renders the same frame on both.\n /* ─── ImageCropper ────────────────────────────────────────\n ⛔ EVERY NUMBER HERE IS MEASURED OFF THE MOCKUP,\n `UML/UI/ClientPortal/AlphaMatch - Image Cropper.dc.html`, which is\n the design source for this component. Changing one of them is a\n design change, not a tidy-up — check the mockup first.\n\n ⚠️ THE STAGE AND ITS CHROME DO NOT INVERT WITH THE COLOUR MODE. A\n photograph has to read against the stage in light mode and dark\n mode alike, so the dark surfaces below are literals and the alpha\n families (literal in both modes by construction) carry the rest.\n The light chrome — header, footer, card — goes through tokens. */\n ImageCropper: {\n root: {\n style: {\n backgroundColor: 'surface-card',\n borderRadius: 20,\n overflow: 'hidden',\n /* ⚠️ THE CARD'S DROP SHADOW IS NOT HERE. On web\n `IStyleClasses` types `shadowColor`/`shadowOpacity`/\n `shadowRadius`/`shadowOffset`/`elevation` as `null` —\n they are the NATIVE spelling, and putting them in a slot\n is a type error in the web project (the `handle` slot\n below is the pre-existing instance of exactly that).\n Each platform file applies the mockup's\n `0 24px 64px rgba(0,0,0,.35)` in its own spelling:\n `boxShadow` on web, `shadow*` on native. */\n },\n },\n header: {\n style: {\n paddingLeft: 24, paddingRight: 24, paddingTop: 18, paddingBottom: 18,\n borderBottomWidth: 1,\n borderColor: '#F0F1F3',\n gap: 12,\n },\n },\n title: {\n style: {\n fontSize: 17,\n fontWeight: '800',\n fontColor: 'text-primary',\n /* ⚠️ A STRING WITH UNITS. `letterSpacing` is typed\n `LetterSpacing<0 | (string & {})>`, so a bare -0.17 does\n not compile — and the mockup writes `-.01em` anyway. */\n letterSpacing: '-0.01em',\n },\n },\n content: {\n style: {\n paddingLeft: 24, paddingRight: 24, paddingTop: 22, paddingBottom: 22,\n /* The mockup's left column: stage, then the tool row, 14 apart. */\n gap: 14,\n },\n },\n /* The stage. Dark on purpose: a photo reads against it in either\n colour mode, and a light stage makes every pale image look like\n it has no edges. */\n container: {\n style: {\n backgroundColor: '#0E1A1C',\n borderRadius: 14,\n overflow: 'hidden',\n },\n },\n footer: {\n style: {\n paddingLeft: 24, paddingRight: 24, paddingTop: 14, paddingBottom: 14,\n borderTopWidth: 1,\n borderColor: '#F0F1F3',\n gap: 10,\n },\n },\n icon: { style: { fontColor: '#6B7280' } },\n text: { style: { fontSize: 12.5, fontColor: '#9CA3AF' } },\n\n /* ⛔ THE SCRIM IS AN ALPHA TOKEN, NOT A SOLID. `black-alpha-*` is\n literal in both colour modes — a scrim that inverted in dark mode\n would light UP the area the user is cropping away.\n\n ⚠️ 0.66, NOT 0.74. The mockup uses two different dims and they\n are not interchangeable: 0.66 is the scrim around the window,\n 0.74 is the full-stage overlay while saving. */\n shade: { style: { backgroundColor: 'rgba(6,14,16,0.66)' } },\n cropWindow: { style: { borderWidth: 2, borderColor: '#FFFFFF' } },\n gridLine: { style: { backgroundColor: 'white-alpha-50' } },\n /* ⚠️ A ROUND KNOB WITH A TEAL RING, not a bare square. Against a\n photo a flat white square disappears into any pale area; the ring\n and the drop shadow are what keep a grip findable on a bright\n image, and the mockup draws the ring in the accent so a grip\n never reads as part of the picture.\n\n ⚠️ THE SIZE HERE IS THE CORNER KNOB'S. The four EDGE grips are\n bars, not circles — the platform files size those from\n `HANDLE_BAR_LONG` / `HANDLE_BAR_SHORT`, because one slot cannot\n carry two shapes. */\n handle: {\n style: {\n backgroundColor: '#FFFFFF',\n borderRadius: 999,\n width: 16,\n height: 16,\n borderWidth: 3,\n borderColor: '#20AAB0',\n /* ⛔ NO `shadow*`/`elevation` HERE, AND THIS IS THE ONE THAT\n BROKE A RELEASE. They are the NATIVE spelling; on web\n `IStyleClasses` types all five as `null`, so they are a\n type ERROR — and `packages/types` is built with\n `tsc -p tsconfig.web.json`, an EMITTING build that\n `publish.yml` runs as its first step and that must exit\n zero. Five keys here failed that step and the release\n never reached npm.\n The grip's drop shadow is applied by the platform file\n instead: `boxShadow` in `index.web.tsx`. Native renders\n no grips at all — it fixes the window and moves the\n image — so there is nothing to spell there. */\n },\n },\n zoomChip: {\n style: {\n backgroundColor: 'black-alpha-60',\n fontColor: '#FFFFFF',\n borderRadius: 13,\n paddingLeft: 10, paddingRight: 10,\n height: 26,\n fontSize: 11.5,\n fontWeight: '700',\n },\n },\n /* The mockup rings the preview in white and floats it, rather than\n outlining it — an outline on a photo reads as part of the photo. */\n previewFrame: {\n style: {\n borderWidth: 4,\n borderColor: '#FFFFFF',\n borderRadius: 12,\n overflow: 'hidden',\n backgroundColor: '#E5E7EB',\n /* The float — `0 4px 14px rgba(0,0,0,.14)` — is applied by\n each platform file, for the reason given on `root`. */\n },\n },\n /* ⛔ THE DROP TARGET LIVES ON THE STAGE, NOT INSTEAD OF IT. It used\n to be a light box that replaced the dark stage entirely, so\n choosing a photo made the whole component change colour. The\n mockup keeps the stage and insets a dashed frame inside it. */\n dropZone: {\n style: {\n borderWidth: 1.5,\n borderStyle: 'dashed',\n borderColor: 'white-alpha-20',\n borderRadius: 14,\n backgroundColor: '#0E1A1C',\n padding: 20,\n gap: 9,\n },\n },\n progressFill: { style: { backgroundColor: '#20AAB0', height: 5, borderRadius: 999 } },\n\n /* ⛔ THE SHAPE SLOT, AND IT CARRIES THE *RECTANGLE'S* RADIUS. The\n circle is NOT a 999 pill set here — `maskShape: 'circle'` makes\n the component use a true 50%, because a pill radius on a window\n that is wider than it is tall gives a STADIUM, not a circle.\n That is exactly what shipped for one render of the 16:9 cover\n story: 999 leaked out of this slot into the rectangle case and\n drew a lozenge. What belongs here is the corner rounding a\n RECTANGULAR window should have; the circle overrides it.\n\n ⚠️ 3, NOT 12 — the mockup's cover window is very nearly square\n cornered, because a banner crop with 12px corners does not match\n the banner it is cropped for. */\n mask: { style: { borderRadius: 3 } },\n /* The zoom rail sits on the dark stage on a phone, so its unfilled\n half is a white alpha rather than a surface token. */\n track: { style: { backgroundColor: 'white-alpha-20', borderRadius: 999, height: 4 } },\n thumb: { style: { backgroundColor: '#20AAB0', borderRadius: 999 } },\n },\n\n Sidebar: {\n root: {\n style: {\n backgroundColor: 'surface-sidebar',\n color: 'text',\n borderLeft: '1px solid',\n borderColor: 'border',\n },\n },\n header: {\n style: {\n paddingLeft: 24,\n paddingRight: 24,\n paddingTop: 20,\n paddingBottom: 20,\n borderBottom: '1px solid',\n borderColor: 'border',\n },\n },\n headerTitle: {\n style: { fontSize: 18, fontWeight: '700', color: 'text' },\n },\n closeButton: {\n style: { borderRadius: '50%', color: 'text-subtle' },\n },\n content: {\n style: { paddingLeft: 24, paddingRight: 24, paddingTop: 24, paddingBottom: 24 },\n },\n mask: {\n style: { backgroundColor: 'rgba(15, 26, 28, 0.40)' },\n },\n },\n\n // ─── Accordion ────────────────────────────────────────\n Accordion: {\n root: {\n style: {\n backgroundColor: 'surface-card',\n border: '1px solid',\n borderColor: \"bg-accent\",\n borderRadius: 16, // AM.r.lg\n overflow: 'hidden',\n },\n },\n title: {\n style: {\n backgroundColor: 'bg-subtle',\n color: 'text-primary',\n fontSize: 16,\n fontWeight: '600',\n padding: 16,\n borderBottom: '1px solid',\n borderColor: \"bg-accent\",\n },\n },\n header: {\n style: {\n backgroundColor: 'transparent',\n color: 'text-primary',\n paddingLeft: 16,\n paddingRight: 16,\n paddingTop: 14,\n paddingBottom: 14,\n fontWeight: '500',\n fontSize: 14,\n borderBottom: '1px solid',\n borderColor: \"bg-accent\",\n transition: 'background-color 0.15s ease, color 0.15s ease',\n },\n },\n headerActive: {\n style: { backgroundColor: 'bg-subtle', color: 'brand-deep', fontWeight: '600' },\n },\n headerHover: {\n style: { backgroundColor: 'bg-subtle', color: 'text-primary' },\n },\n icon: {\n style: { color: 'text-secondary', transition: 'transform 0.2s ease, color 0.15s ease' },\n },\n content: {\n style: {\n backgroundColor: 'surface-card',\n color: 'text-primary',\n padding: 16,\n borderBottom: '1px solid',\n borderColor: \"bg-accent\",\n },\n },\n },\n\n // ─── Group (repeatable field array) ───────────────────\n Group: {\n root: { style: { gap: 12 } },\n // No `header` slot — it was removed from IGroupElementSlots\n // because nothing ever rendered it (see the note on that type).\n body: { style: { gap: 8 } },\n row: { style: { gap: 8, paddingBottom: 8 } },\n addButton: { props: { severity: 'success', size: 'sm', outlined: true } },\n removeButton: { props: { severity: 'danger', size: 'sm', outlined: true } },\n },\n\n // ─── Header (app-shell top bar) ───────────────────────\n Header: {\n root: {\n style: {\n backgroundColor: 'bg',\n borderBottom: '1px solid',\n borderColor: 'border',\n fontFamily: 'var(--kits-font-body, Roboto, -apple-system, system-ui, sans-serif)',\n paddingLeft: 16,\n paddingRight: 16,\n paddingTop: 10,\n paddingBottom: 10,\n },\n },\n container: {\n style: { minWidth: 0, paddingLeft: 8, paddingRight: 8 },\n },\n toggleModeButton: { style: { width: 36, height: 36 } },\n avatarButton: { style: { width: 36, height: 36 } },\n breadcrumb: { style: {} },\n },\n\n // ─── AlphaMatch component set (v2) — default knob values ──────────\n // `root.props` carry each component's default props; user props always\n // win (merged by useComponentDefaults). Colour values are theme tokens\n // that resolve per platform — one source for web AND native.\n Avatar: { root: { props: { size: 'md', shape: 'circle', status: 'none', ring: false, ringColor: 'brand', maskFillColor: 'indigo.600' } } },\n AvatarStack: { root: { props: { max: 4, size: 'md', overlap: 0.35, ringColor: 'brand' } } },\n Stepper: { root: { props: { variant: 'bar', size: 'md', activeColor: 'brand', trackColor: 'gray.200' } } },\n StatCard: { root: { props: { variant: 'card', size: 'md', align: 'left', accentColor: 'brand' } } },\n StatGroup: { root: { props: { gap: 8 } } },\n ProgressBar: { root: { props: { max: 100, color: 'brand', trackColor: 'gray.200', thickness: 8, rounded: true } } },\n Timeline: { root: { props: { size: 'md', activeColor: 'brand', trackColor: 'gray.200' } } },\n EmptyState: { root: { props: { size: 'md', accentColor: 'brand' } } },\n Tabs: { root: { props: { size: 'md', activeColor: 'brand', scrollable: true, gap: 8, countVariant: 'suffix', activeBadgeBackground: 'surface-card', activeBadgeTextColor: 'text-primary', inactiveBadgeBackground: 'surface-card', inactiveBadgeTextColor: 'text-secondary', inactiveBackground: 'surface-muted', inactiveTextColor: 'text-secondary', sizeHeights: { sm: 28, md: 32, lg: 40 } } } },\n BottomTabBar: { root: { props: { activeColor: 'brand', inactiveColor: 'text-secondary', background: 'surface-card', showLabels: true } } },\n Gallery: { root: { props: { columns: 2, gap: 8, aspectRatio: 1, radius: 12 } } },\n Carousel: { root: { props: { aspectRatio: 1.2, radius: 0, showCounter: true, showDots: true } } },\n ChatBubble: { root: { props: { variant: 'incoming', tone: 'neutral', incomingColor: 'gray.100', outgoingColor: 'brand', authorColor: 'text-secondary' } } },\n MessageComposer: { root: { props: { placeholder: 'Message…', accentColor: 'brand' } } },\n MessageReceipt: { root: { props: { size: 'sm', color: 'text-secondary', seenColor: 'brand', failedColor: 'danger' } } },\n DateSeparator: { root: { props: { color: 'text-secondary', backgroundColor: 'surface-muted' } } },\n TypingIndicator: { root: { props: { dotColor: 'text-secondary', bubble: true, bubbleColor: 'surface-muted' } } },\n },\n\n config: {\n initialColorMode: 'light',\n useSystemColorMode: false,\n },\n};\n"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"defaultTheme.js","sources":["../../../../../../../types/src/Theme/defaultTheme.ts"],"sourcesContent":["import type {IKitsTheme} from './types';\nimport {defaultSeverityTheme} from './defaultSeverityTheme';\nimport {DEFAULT_NATIVE_SHADOWS} from './shadows';\n\nexport const defaultTheme: IKitsTheme = {\n /* ─────────────────────────────────────────────────────────────\n * Palettes\n *\n * `primary` and `brand` share the same teal scale so consumers\n * can target either name. Anchors taken from the prototype:\n * AM.tealPale '#F0F8F8' → 50\n * AM.tealSoft '#E3F5F5' → 100\n * AM.teal '#20AAB0' → 500\n * AM.tealDark '#1A8E93' → 600\n * Other shades interpolated to keep the scale usable for tints\n * (50–300) and pressed/dark text on light surfaces (700–900).\n * ───────────────────────────────────────────────────────────── */\n colors: {\n blue: {\n 50: '#EFF6FF', 100: '#DBEAFE', 200: '#BFDBFE', 300: '#93C5FD', 400: '#60A5FA',\n 500: '#3B82F6', 600: '#2563EB', 700: '#1D4ED8', 800: '#1E40AF', 900: '#1E3A8A',\n },\n green: {\n 50: '#F0FDF4', 100: '#DCFCE7', 200: '#BBF7D0', 300: '#86EFAC', 400: '#4ADE80',\n 500: '#22C55E', 600: '#16A34A', 700: '#15803D', 800: '#166534', 900: '#14532D',\n },\n red: {\n 50: '#FEF2F2', 100: '#FEE2E2', 200: '#FECACA', 300: '#FCA5A5', 400: '#F87171',\n 500: '#EF4444', 600: '#DC2626', 700: '#B91C1C', 800: '#991B1B', 900: '#7F1D1D',\n },\n yellow: {\n 50: '#FEFCE8', 100: '#FEF9C3', 200: '#FEF08A', 300: '#FDE047', 400: '#FACC15',\n 500: '#EAB308', 600: '#CA8A04', 700: '#A16207', 800: '#854D0E', 900: '#713F12',\n },\n orange: {\n 50: '#FFF7ED', 100: '#FFEDD5', 200: '#FED7AA', 300: '#FDBA74', 400: '#FB923C',\n 500: '#F97316', 600: '#EA580C', 700: '#C2410C', 800: '#9A3412', 900: '#7C2D12',\n },\n purple: {\n 50: '#FAF5FF', 100: '#F3E8FF', 200: '#E9D5FF', 300: '#D8B4FE', 400: '#C084FC',\n 500: '#8B5CF6', 600: '#7C3AED', 700: '#6D28D9', 800: '#5B21B6', 900: '#4C1D95',\n },\n teal: {\n 50: '#F0FDFA', 100: '#CCFBF1', 200: '#99F6E4', 300: '#5EEAD4', 400: '#2DD4BF',\n 500: '#14B8A6', 600: '#0D9488', 700: '#0F766E', 800: '#115E59', 900: '#134E4A',\n },\n cyan: {\n 50: '#ECFEFF', 100: '#CFFAFE', 200: '#A5F3FC', 300: '#67E8F9', 400: '#22D3EE',\n 500: '#06B6D4', 600: '#0891B2', 700: '#0E7490', 800: '#155E75', 900: '#164E63',\n },\n pink: {\n 50: '#FDF2F8', 100: '#FCE7F3', 200: '#FBCFE8', 300: '#F9A8D4', 400: '#F472B6',\n 500: '#EC4899', 600: '#DB2777', 700: '#BE185D', 800: '#9D174D', 900: '#831843',\n },\n gray: {\n 50: '#F9FAFB', 100: '#F3F4F6', 200: '#E5E7EB', 300: '#D1D5DB', 400: '#9CA3AF',\n 500: '#6B7280', 600: '#4B5563', 700: '#374151', 800: '#1F2937', 900: '#111827',\n },\n indigo: {\n 50: '#EEF2FF', 100: '#E0E7FF', 200: '#C7D2FE', 300: '#A5B4FC', 400: '#818CF8',\n 500: '#6366F1', 600: '#4F46E5', 700: '#4338CA', 800: '#3730A3', 900: '#312E81',\n },\n // Brand: warm gold. Anchors:\n // 400 = --gold-bright (#E5C661) — accents / glow / highlights\n // 500 = --gold-primary (#C9A84C) — primary brand\n // 700 = --gold-deep (#9A7E2E) — pressed / on-light text emphasis\n // 900 = --gold-muted (#5C4920) — deepest tone / dark surfaces\n // The 50–300 / 600 / 800 stops are interpolated to keep the scale usable.\n gold: {\n 50: '#FBF7E8', 100: '#F5EBC3', 200: '#EFDD9A', 300: '#E5C661', 400: '#D7B554',\n 500: '#C9A84C', 600: '#B69241', 700: '#9A7E2E', 800: '#7A632A', 900: '#5C4920',\n },\n primary: {\n 50: '#F0F8F8', // AM.tealPale\n 100: '#E3F5F5', // AM.tealSoft\n 200: '#B7E5E7',\n 300: '#85D2D6',\n 400: '#4DBEC4',\n 500: '#20AAB0', // AM.teal\n 600: '#1A8E93', // AM.tealDark\n 700: '#157479',\n 800: '#0F5A5F',\n 900: '#0A4045',\n },\n brand: {\n 50: '#F0F8F8',\n 100: '#E3F5F5',\n 200: '#B7E5E7',\n 300: '#85D2D6',\n 400: '#4DBEC4',\n 500: '#20AAB0',\n 600: '#1A8E93',\n 700: '#157479',\n 800: '#0F5A5F',\n 900: '#0A4045',\n },\n /* Ink scale — reflects the prototype's ink/inkDim/inkMute trio\n * plus a few stops above/below for shadow text and disabled. */\n ink: {\n 50: '#F5F7F7', // AM.lineSoft\n 100: '#EEEEEE', // AM.line\n 200: '#D6DCDF',\n 300: '#B7C0C5',\n 400: '#8896A0', // AM.inkMute\n 500: '#75808E', // splash text-secondary\n 600: '#546067', // AM.inkDim\n 700: '#3D464C',\n 800: '#263238', // AM.ink\n 900: '#0F1A1C',\n },\n },\n\n /* ─────────────────────────────────────────────────────────────\n * Semantic tokens\n *\n * Light is the prototype's day mode; the user lands here. Cards\n * (`#FFFFFF`) stack on the cream `bg-page` (`#F0EEE9`).\n * Dark mirrors AM_DARK exactly — same hierarchy of bg / bgAlt /\n * bgSunk so depth reads consistently across modes.\n * ───────────────────────────────────────────────────────────── */\n semanticTokens: {\n light: {\n // Brand\n primary: 'primary.500', // #20AAB0\n 'primary-hover': 'primary.600', // #1A8E93 = AM.tealDark\n 'primary-active':'primary.700', // pressed\n secondary: 'ink.600', // #546067 = AM.inkDim\n brand: 'primary.500',\n 'brand-bright': 'primary.300',\n 'brand-deep': 'primary.700',\n 'brand-muted': 'primary.900',\n\n // Status — prototype's amber / rose / indigo, synthetic green for success\n success: '#16A34A',\n danger: '#E3595B', // AM.rose\n warning: '#F59E0B', // AM.amber\n info: '#4F5BD5', // AM.indigo\n help: '#4F5BD5',\n 'ai-accent':'#4F5BD5',\n\n // Text\n text: 'ink.800', // #263238 = AM.ink\n 'text-primary': 'ink.800',\n 'text-secondary':'ink.600', // #546067 = AM.inkDim\n 'text-subtle': 'ink.400', // #8896A0 = AM.inkMute\n 'text-muted': 'ink.400',\n 'text-on-primary':'#FFFFFF',\n 'text-link': 'primary.500',\n\n // Backgrounds — cream page, white cards\n bg: '#FFFFFF', // AM.bg\n 'bg-subtle': '#F5F7F6', // AM.bgAlt — card well\n 'bg-muted': '#EEF3F2', // AM.bgSunk — deepest layer\n 'bg-accent': '#E3F5F5', // AM.tealSoft — selected/highlight wash\n 'bg-input': '#EEF3F2', // AM.bgSunk — input wells\n 'bg-page': '#F0EEE9', // splash body background\n\n // Surfaces\n 'surface-ground': '#F0EEE9', // page (cream)\n 'surface-card': '#FFFFFF', // AM.bg\n 'surface-muted': '#F3F4F6', // subtle muted panel (chat system pill / separator / typing)\n 'surface-overlay': '#FFFFFF', // popovers / dropdowns\n 'surface-hover': '#F5F7F6', // AM.bgAlt\n 'surface-sidebar': '#FAF8F3', // slightly tinted cream for sidebar\n 'surface-border': '#EEEEEE', // AM.line\n\n // Borders\n border: '#EEEEEE', // AM.line\n 'border-default': '#EEEEEE',\n 'border-subtle': '#F5F7F7', // AM.lineSoft\n 'border-strong': '#D6DCDF', // ink.200\n divider: '#EEEEEE',\n\n // Status tints (~12–15% alpha of the named hex)\n 'success-tint': 'rgba(22,163,74,0.12)',\n 'danger-tint': 'rgba(227,89,91,0.12)', // rose 12%\n 'warning-tint': 'rgba(245,158,11,0.14)', // amber 14%\n 'info-tint': 'rgba(79,91,213,0.12)', // indigo 12%\n 'brand-tint': 'rgba(32,170,176,0.14)', // AM.tealGlow\n 'ai-tint': 'rgba(79,91,213,0.14)',\n // Status text — dark-aware, legible on the matching -tint bg (ChatBubble system tones)\n 'brand-text': '#0A4E54',\n 'success-text': '#065F46',\n 'warning-text': '#92400E',\n\n // Switch\n 'switch-bg': '#D6DCDF', // ink.200\n },\n\n dark: {\n // Brand — flip the anchor so OFF-state is brighter (AM_DARK.teal)\n primary: 'primary.400', // visually #4DBEC4 — close to AM_DARK.teal '#2DC0C7'\n 'primary-hover': 'primary.300',\n 'primary-active':'primary.600',\n secondary: '#B6C1BF', // AM_DARK.inkDim\n brand: 'primary.400',\n 'brand-bright': 'primary.300',\n 'brand-deep': 'primary.700',\n 'brand-muted': 'primary.900',\n\n // Status (slightly punchier on dark)\n success: '#22C55E',\n danger: '#FF7A7C', // lifted rose for dark\n warning: '#FBBF24',\n info: '#7C84F5', // lifted indigo for dark\n help: '#7C84F5',\n 'ai-accent':'#7C84F5',\n\n // Text — cream-ish near-white on near-black\n text: '#ECF1F0', // AM_DARK.ink\n 'text-primary': '#ECF1F0',\n 'text-secondary':'#B6C1BF', // AM_DARK.inkDim\n 'text-subtle': '#7F8C8B', // AM_DARK.inkMute\n 'text-muted': '#7F8C8B',\n 'text-on-primary':'#0F1A1C', // ink.900 — readable on bright teal in dark\n 'text-link': 'primary.300',\n\n // Backgrounds — AM_DARK trio\n bg: '#161D1E', // AM_DARK.bgAlt — card surface\n 'bg-subtle': '#10161A', // AM_DARK.bg\n 'bg-muted': '#0C1114', // AM_DARK.bgSunk\n 'bg-accent': 'rgba(45,192,199,0.12)',\n 'bg-input': '#0C1114',\n 'bg-page': '#10161A', // AM_DARK.bg\n\n // Surfaces\n 'surface-ground': '#10161A',\n 'surface-card': '#161D1E',\n 'surface-muted': '#374151',\n 'surface-overlay': '#161D1E',\n 'surface-hover': '#1B2426',\n 'surface-sidebar': '#10161A',\n 'surface-border': '#2A302F', // AM_DARK.line\n\n // Borders\n border: '#2A302F', // AM_DARK.line\n 'border-default': '#2A302F',\n 'border-subtle': '#1F2424', // AM_DARK.lineSoft\n 'border-strong': '#3D464C',\n divider: '#2A302F',\n\n // Status tints\n 'success-tint': 'rgba(34,197,94,0.18)',\n 'danger-tint': 'rgba(255,122,124,0.20)',\n 'warning-tint': 'rgba(251,191,36,0.20)',\n 'info-tint': 'rgba(124,132,245,0.18)',\n 'brand-tint': 'rgba(45,192,199,0.20)', // AM_DARK.tealGlow\n 'ai-tint': 'rgba(124,132,245,0.20)',\n // Status text — dark-aware, legible on the matching -tint bg (ChatBubble system tones)\n 'brand-text': '#B2EBF2',\n 'success-text': '#A7F3D0',\n 'warning-text': '#FDE68A',\n\n // Switch\n 'switch-bg': '#3D464C',\n },\n },\n\n /* ─────────────────────────────────────────────────────────────\n * Severity (Button / Alert / Toast / Dialog)\n * Brand lane = teal. Other lanes use the prototype's accent colours\n * via direct hex on the slots that don't have a palette name.\n * ───────────────────────────────────────────────────────────── */\n severity: {\n brand: {\n solid: 'brand.500',\n solidText: '#FFFFFF',\n bgTint: 'brand.50',\n iconFg: 'brand.600',\n iconBg: 'brand.100',\n text: 'brand.700',\n border: 'brand.500',\n },\n /*\n * ⚠️ PRESENT FOR THE TYPE, NOT READ AT RENDER. `ISeverityThemeMap` requires\n * one entry per severity, and `useSeverityColors` resolves THIS one from\n * the `primary-interactive` / `on-primary-interactive` tokens before it\n * looks at slots. These values are the honest fallback if that branch is\n * ever removed — not what renders today. The shape mirrors `brand` so the\n * dark-mode shade swap still has a shaded token to work on.\n */\n 'primary-interactive': {\n solid: 'brand.600',\n solidText: '#FFFFFF',\n bgTint: 'brand.50',\n iconFg: 'brand.700',\n iconBg: 'brand.100',\n text: 'brand.700',\n border: 'brand.600',\n },\n success: {\n solid: 'green.500',\n solidText: '#FFFFFF',\n bgTint: 'green.50',\n iconFg: 'green.600',\n iconBg: 'green.100',\n text: 'green.700',\n border: 'green.500',\n },\n danger: {\n // AM.rose lane — kits palette has no `rose`, so we use red shades\n // and override the solid with the exact AM hex for fidelity.\n solid: '#E3595B',\n solidText: '#FFFFFF',\n bgTint: 'red.50',\n iconFg: 'red.600',\n iconBg: 'red.100',\n text: 'red.700',\n border: '#E3595B',\n },\n warning: {\n // AM.amber lane — yellow-ish palette plus exact amber on solid.\n solid: '#F59E0B',\n solidText: '#FFFFFF',\n bgTint: 'yellow.50',\n iconFg: '#B45309',\n iconBg: 'yellow.100',\n text: '#92400E',\n border: '#F59E0B',\n },\n info: {\n // AM.indigo lane.\n solid: '#4F5BD5',\n solidText: '#FFFFFF',\n bgTint: 'indigo.50',\n iconFg: 'indigo.600',\n iconBg: 'indigo.100',\n text: 'indigo.700',\n border: '#4F5BD5',\n },\n secondary: {\n solid: 'gray.500',\n solidText: '#FFFFFF',\n bgTint: 'gray.50',\n iconFg: 'gray.600',\n iconBg: 'gray.100',\n text: 'gray.700',\n border: 'gray.400',\n },\n help: {\n // Same as info — prototype uses one indigo for both lanes.\n solid: '#4F5BD5',\n solidText: '#FFFFFF',\n bgTint: 'indigo.50',\n iconFg: 'indigo.600',\n iconBg: 'indigo.100',\n text: 'indigo.700',\n border: '#4F5BD5',\n },\n },\n\n /* ─────────────────────────────────────────────────────────────\n * Spacing — kits default scale (matches existing dashboard theme).\n * ───────────────────────────────────────────────────────────── */\n spacing: {\n '0': '0',\n '0.5': '0.125rem',\n '1': '0.25rem',\n '1.5': '0.375rem',\n '2': '0.5rem',\n '3': '0.75rem',\n '4': '1rem',\n '5': '1.25rem',\n '6': '1.5rem',\n '8': '2rem',\n '10': '2.5rem',\n '12': '3rem',\n '16': '4rem',\n '20': '5rem',\n '24': '6rem',\n },\n\n /* ─────────────────────────────────────────────────────────────\n * Radii — taken from the prototype's `AM.r`:\n * AM.r.sm = 8\n * AM.r.md = 12\n * AM.r.lg = 16\n * AM.r.xl = 24\n * AM.r.pill = 999\n * Slightly softer than `theme.ts` (10px lg) — matches the\n * prototype's airier card chrome.\n * ───────────────────────────────────────────────────────────── */\n radii: {\n none: '0',\n sm: '8px',\n base: '8px',\n md: '12px',\n lg: '16px',\n xl: '20px',\n '2xl':'24px',\n '3xl':'32px',\n pill: '999px',\n full: '9999px',\n },\n\n /* ─────────────────────────────────────────────────────────────\n * Shadows — lifted from `AM.shadow` and `AM.shadowLg`. Both use\n * `rgba(15,26,28,…)` to tint the shadow toward the ink colour for\n * a softer, less neutral elevation.\n * ───────────────────────────────────────────────────────────── */\n shadows: {\n // Cross-platform presets (web `box-shadow` + native params). `native`\n // values are the single source `DEFAULT_NATIVE_SHADOWS` so the web var\n // and the native scale never drift. Override either field per consumer.\n none: {web: 'none', native: DEFAULT_NATIVE_SHADOWS.none},\n xs: {web: '0 1px 1px rgba(15,26,28,0.03)', native: DEFAULT_NATIVE_SHADOWS.xs},\n sm: {web: '0 1px 2px rgba(15,26,28,0.04)', native: DEFAULT_NATIVE_SHADOWS.sm},\n md: {web: '0 2px 4px rgba(15,26,28,0.05), 0 6px 16px rgba(15,26,28,0.06)', native: DEFAULT_NATIVE_SHADOWS.md},\n lg: {web: '0 4px 16px rgba(15,26,28,0.06), 0 20px 40px rgba(15,26,28,0.08)', native: DEFAULT_NATIVE_SHADOWS.lg},\n // ⛔ THE ONLY PRESET THAT CASTS UPWARD. For blocks anchored to the\n // bottom of the viewport; see the note on `up` in `shadows.ts`.\n up: {web: '0 -3px 5px rgba(15,26,28,0.05), 0 -8px 20px rgba(15,26,28,0.06)', native: DEFAULT_NATIVE_SHADOWS.up},\n // Web-only legacy levels (no cross-platform native mapping).\n base: '0 1px 2px rgba(15,26,28,0.04), 0 4px 12px rgba(15,26,28,0.04)', // AM.shadow\n xl: '0 8px 24px rgba(15,26,28,0.10), 0 30px 60px rgba(15,26,28,0.12)',\n '2xl':'0 25px 50px rgba(15,26,28,0.20)',\n inner:'inset 0 2px 4px rgba(15,26,28,0.05)',\n },\n\n /* ─────────────────────────────────────────────────────────────\n * Fonts — Roboto, mirroring the prototype's\n * font: 'Roboto, -apple-system, system-ui, sans-serif'\n * The KitsThemeProvider emits `--kits-font-body` and applies it\n * globally (see KitsThemeProvider.web.tsx — kits-global-fonts\n * style tag), so changing `body` here flips the entire app.\n * ───────────────────────────────────────────────────────────── */\n fonts: {\n heading: 'Roboto, -apple-system, system-ui, \"Segoe UI\", sans-serif',\n body: 'Roboto, -apple-system, system-ui, \"Segoe UI\", sans-serif',\n mono: '\"JetBrains Mono\", ui-monospace, \"SF Mono\", Menlo, monospace',\n serif: 'ui-serif, Georgia, Cambria, \"Times New Roman\", Times, serif',\n sans: 'Roboto, -apple-system, system-ui, \"Segoe UI\", sans-serif',\n },\n\n fontSizes: {\n xs: '0.75rem',\n sm: '0.875rem',\n md: '1rem',\n lg: '1.125rem',\n xl: '1.25rem',\n '2xl':'1.5rem',\n '3xl':'1.875rem',\n '4xl':'2.25rem',\n '5xl':'3rem',\n '6xl':'3.75rem',\n },\n\n fontWeights: {\n light: 300,\n normal: 400,\n medium: 500,\n semibold: 600,\n bold: 700,\n },\n\n lineHeights: {\n none: 1,\n tight: 1.25,\n snug: 1.375,\n normal: 1.5,\n relaxed: 1.625,\n loose: 2,\n },\n\n /* ─────────────────────────────────────────────────────────────\n * Component slot defaults\n *\n * Identical structurally to `./theme.ts` — only token references\n * change (radii are `12` instead of `8` on Cards, shadows resolve\n * to `AM.shadow`, etc.). Slots that don't reference colour-bound\n * tokens (paddings, gaps, line-heights) are unchanged.\n * ───────────────────────────────────────────────────────────── */\n components: {\n // ─── Button ────────────────────────────────────────────\n Button: {\n root: {\n props: {\n rounded: true,\n size: 'sm',\n },\n style: {\n borderRadius: 12, // AM.r.md\n fontWeight: '600',\n },\n },\n },\n\n // ─── Input (base group) ────────────────────────────────\n // FormElement (label/helperText/error) is configured by the kits\n // default theme — leaving those slots off here so they inherit.\n //\n // `borderWidth: 0` is required alongside `border: 'none'` so the\n // inner input is borderless on BOTH platforms — the visual frame\n // is owned by `inputGroup`. Web reads `border: 'none'` (CSS\n // shorthand → resets borderWidth/style/color). React Native\n // silently ignores the `border` string but accepts the explicit\n // `borderWidth: 0`. Both end up with no inner border.\n Input: {\n root: {\n props: {\n inputSize: 'md',\n },\n style: {\n borderRadius: 0,\n border: 'none',\n borderWidth: 0,\n fontSize: 14,\n color: 'text',\n },\n },\n container: {\n style: { gap: 6 },\n },\n // `borderWidth: 1` is a number, not the CSS string `'1px'`.\n // RN's ViewStyle requires numeric borderWidth; web CSS accepts\n // `1` and treats it as `1px`, so both platforms render the same\n // 1px frame around the input group.\n inputGroup: {\n style: {\n borderColor: \"bg-accent\",\n borderRadius: 10,\n borderStyle:'solid',\n borderWidth: 1,\n fontSize: 14,\n height:52,\n color: 'text',\n },\n },\n leftAddon: {\n style: { backgroundColor: 'transparent' },\n },\n },\n\n // Members inherit the Input chrome via baseGroup=\"Input\"\n InputText: {},\n InputNumber: {},\n InputMask: {},\n InputPassword: {},\n ColorPicker: {},\n PhoneInput: {},\n\n // ─── Datepicker ────────────────────────────────────────\n // The `panel` slot is the calendar popup (web-only; the native\n // Datepicker uses platform-native UI). Keeping `borderWidth: 1`\n // as a number for consistency with the rest of the theme.\n Datepicker: {\n panel: {\n style: {\n backgroundColor: 'surface-overlay',\n borderColor: \"bg-accent\",\n borderRadius: 10,\n borderStyle:'solid',\n borderWidth: 1,\n padding: 8,\n overflow: 'hidden',\n },\n },\n calendarHeader: {\n style: {\n backgroundColor: 'transparent',\n borderBottom: '1px solid',\n borderColor: \"bg-accent\",\n paddingBottom: 8,\n marginBottom: 4,\n color: 'text-primary',\n fontWeight: '600',\n },\n },\n calendarNavButton: {\n // style: { color: 'text-secondary', width: 28, height: 28, borderRadius: 8 },\n },\n weekDay: {\n style: {\n color: 'text-muted',\n fontSize: 11,\n fontWeight: '600',\n textTransform: 'uppercase',\n letterSpacing: '0.04em',\n },\n },\n dayCell: {\n style: {\n color: 'text-primary',\n borderRadius: 8,\n transition: 'background-color 0.12s ease, color 0.12s ease',\n },\n },\n // Selected day — teal pill\n daySelected: {\n style: { backgroundColor: 'primary', color: 'text-on-primary', fontWeight: '600' },\n },\n // Today — teal-tinted ring + bold\n dayToday: {\n style: { color: 'brand-deep', backgroundColor: 'brand-tint', fontWeight: '700' },\n },\n dayDisabled: {\n style: { color: 'text-muted', opacity: 0.45, cursor: 'not-allowed' },\n },\n },\n\n // ─── Textarea ──────────────────────────────────────────\n // Textarea is borderless internally on native (its own visual frame\n // is drawn here on the root, not on a separate inputGroup wrapper,\n // because textareas rarely host addons). `borderWidth: 1` is a\n // number for RN compatibility.\n Textarea: {\n root: {\n props: { inputSize: 'md' },\n style: {\n borderColor: \"bg-accent\",\n borderRadius: 10,\n borderStyle:'solid',\n borderWidth: 1,\n backgroundColor: 'transparent',\n fontSize: 14,\n color: 'text',\n },\n },\n },\n\n // ─── Select base group ─────────────────────────────────\n // `borderWidth: 0` alongside `border: 'none'` for RN parity — same\n // rationale as `Input.root.style` above.\n Select: {\n root: {\n props: { inputSize: 'md' },\n style: {\n borderRadius: 0,\n border: 'none',\n borderWidth: 0,\n fontSize: 14,\n color: 'text',\n backgroundColor: 'transparent',\n },\n },\n container: {\n style: { height: '100%', gap: 6 },\n },\n // `borderWidth: 1` (number, not the string `'1px'`) for RN\n // compatibility — same rationale as `Input.inputGroup` above.\n inputGroup:{\n style:{\n borderColor: \"bg-accent\",\n height:52,\n borderRadius: 10,\n borderStyle:'solid',\n borderWidth: 1,\n fontSize: 14,\n color: 'text',\n }\n },\n /* Option-list (popover panel) */\n panel: {\n style: {\n backgroundColor: 'surface-overlay',\n border: '1px solid',\n borderColor: \"bg-accent\",\n borderRadius: 16, // AM.r.lg\n overflow: 'hidden',\n },\n },\n item: {\n style: {\n paddingLeft: 12,\n paddingRight: 12,\n paddingTop: 8,\n paddingBottom: 8,\n fontSize: 14,\n color: 'text-primary',\n borderRadius: 8,\n margin: 2,\n transition: 'background-color 0.12s ease, color 0.12s ease',\n },\n },\n itemSelected: {\n style: {\n backgroundColor: 'brand-tint', // AM.tealGlow\n color: 'brand-deep',\n fontWeight: '600',\n },\n },\n itemFocused: {\n style: { backgroundColor: 'bg-subtle', color: 'text-primary' },\n },\n itemHover: {\n style: { backgroundColor: 'bg-subtle', color: 'text-primary' },\n },\n itemDisabled: {\n style: { color: 'text-muted', opacity: 0.55, cursor: 'not-allowed' },\n },\n\n /* ─── Chips (MultiSelect display=\"chip\" AND Tags) ───────\n ⛔ THESE LIVE ON THE BASE GROUP BECAUSE TWO CONTROLS DRAW CHIPS\n AND THEY DISAGREED. The values below used to sit under\n `MultiSelect`, so MultiSelect drew a pill and the Tags field —\n AutoComplete with `isMultiple`, which hardcoded its own\n background+colour and read no slot at all — drew PrimeReact's\n square token right next to it. One definition, both readers. */\n token: {\n style: {\n backgroundColor: 'brand-tint',\n color: 'brand-deep',\n borderRadius: 999, // AM.r.pill\n paddingLeft: 10,\n paddingRight: 8,\n paddingTop: 2,\n paddingBottom: 2,\n fontSize: 12,\n fontWeight: '500',\n margin: 2,\n },\n },\n tokenIcon: {\n style: { color: 'brand-deep', marginLeft: 4, fontSize: 12, cursor: 'pointer' },\n },\n /* ⚠️ THE CHIPS BOX IS FLAT BY DEFAULT, AND THAT IS NOT THE SAME AS\n UNSTYLEABLE. `KitsContainer` already paints the `inputGroup`\n border around the field, so a second border here would double it.\n The slot exists so a consumer CAN paint it — an `attached` tags\n field has no KitsContainer at all and needs to draw its own\n chrome. See `IChipInputSlots.tokenContainer`. */\n tokenContainer: {\n style: {\n backgroundColor: 'transparent',\n borderWidth: 0,\n },\n },\n },\n\n // ─── MultiSelect (per-item checkbox slots; chips inherit\n // from the Select base group above) ───────────────────\n MultiSelect: {\n checkboxBox: {\n style: {\n borderColor: 'border-strong',\n backgroundColor: 'transparent',\n borderRadius: 4,\n },\n },\n checkboxBoxChecked: {\n style: { backgroundColor: 'primary', borderColor: 'primary' },\n },\n checkboxIcon: {\n style: { color: 'text-on-primary' },\n },\n },\n\n // Select members (inherit via baseGroup=\"Select\")\n DropdownSelect: {},\n TreeSelect: {},\n ListBox: {},\n CascadeSelect: {},\n\n AutoComplete: {\n container: { style: { height: 'auto' } },\n },\n\n // ─── Switch ────────────────────────────────────────────\n // Slot keys use the post-refactor names (track / trackOn / thumb /\n // thumbOn). Prototype never animates the thumb colour, so OFF and\n // ON both stay white.\n Switch: {\n track: {\n style: {\n backgroundColor: 'switch-bg',\n borderRadius: 999,\n transition: 'background-color 0.18s ease',\n },\n },\n trackOn: {\n style: { backgroundColor: 'primary' },\n },\n thumb: { style: { backgroundColor: '#FFFFFF' } },\n thumbOn: { style: { backgroundColor: '#FFFFFF' } },\n // ⛔ THE LABEL NEEDS ITS OWN COLOUR — fixed 21 Sep 2026. A Switch's\n // label had no colour from any slot, so native drew it in the platform\n // default (black) — invisible on the dark background, beside inputs\n // whose labels were readable. Measured on the iPhone 16 simulator in\n // dark mode; the switch itself (teal ON / grey OFF) was always legible.\n label: {\n style: { color: 'text-primary', fontWeight: '600' },\n },\n },\n\n // ─── Checkbox / Radio ──────────────────────────────────\n Checkbox: {\n container: { style: { backgroundColor: 'transparent' } },\n // ⛔ THE ITEM LABEL NEEDS A COLOUR — the Radio label's twin (21 Sep\n // 2026, 9c002a5b), found sweeping every native input for the same\n // fault (22 Sep 2026): with no `item` slot, `checkbox.native.tsx`\n // resolved an empty style and native drew the label black on the\n // dark background. 'text-primary' is dark-aware.\n item: { style: { color: 'text-primary' } },\n },\n Radio: {\n container: { style: { backgroundColor: 'transparent' } },\n // ⛔ THE LABEL AND THE OPTION TEXT NEED A COLOUR — fixed 21 Sep 2026, the\n // Switch label's twin: with no slot colour, native drew both black on a\n // dark background. 'text-primary' is dark-aware.\n label: { style: { color: 'text-primary', fontWeight: '600' } },\n item: { style: { color: 'text-primary' } },\n },\n\n // ─── Card ──────────────────────────────────────────────\n // Slightly larger radius and softer shadow than `theme.ts` —\n // matches the prototype's airier feel.\n Card: {\n root: {\n props: { variant: 'elevated' },\n style: {\n borderRadius: 16, // AM.r.lg\n padding: 16,\n backgroundColor: 'surface-card',\n borderWidth: 1,\n borderColor: 'border',\n },\n },\n header: { style: { paddingBottom: 12 } },\n title: { style: { fontSize: 16, fontWeight: '600', color: 'text' } },\n subTitle:{ style: { fontSize: 13, color: 'text-secondary' } },\n content: { style: { padding: 0 } },\n footer: { style: { paddingTop: 12 } },\n },\n\n // ─── Badge / Chip ─────────────────────────────────────\n Badge: {\n root: {\n style: {\n borderRadius: 999, // AM.r.pill\n paddingLeft: 12,\n paddingRight: 12,\n paddingTop: 4,\n paddingBottom: 4,\n fontSize: 12,\n fontWeight: '500',\n letterSpacing: '0.01em',\n },\n },\n },\n\n // ─── Table ────────────────────────────────────────────\n Table: {\n paginatorTemplate:\n 'PrevPageLink PageLinks NextPageLink CurrentPageReport RowsPerPageDropdown',\n currentPageReportTemplate: 'Showing {first}–{last} of {totalRecords}',\n rowsPerPageOptions: [10, 25, 50, 100],\n // NOTE: `paginatorAlign` and `paginatorLabels` are deliberately\n // left unset. Both change the paginator's layout for every\n // existing consumer, so they stay opt-in:\n // paginatorAlign: 'between' → report leading, nav trailing\n // paginatorLabels: { prev: 'Prev', next: 'Next' } → word buttons\n\n // Spacing. `paginatorGap` separates the report, the nav buttons\n // and the block of page links; `paginatorPageGap` separates the\n // numbered links from each other. The latter also makes their\n // container a flex box — PrimeReact ships it as a plain block\n // span, so without this there is nothing for a gap to act on.\n paginatorGap: 8,\n paginatorPageGap: 4,\n\n // Every toolbar control — search box included — shares one\n // height and floor width, so a text input and a dropdown line up.\n filtersLayout: 'flex',\n filterControlHeight: '2.5rem',\n filterControlMinWidth: 150,\n filterInputSize: 'sm',\n externalFilterLabelMode: 'label',\n\n cellVerticalAlign: 'middle',\n\n // `container` spans the top bar, toolbar, grid and paginator.\n // Left unstyled on purpose: the default look keeps a detached\n // filter bar above a bordered grid (`filterBar` + `root`). To get\n // the single-card look instead, move the border/radius here and\n // clear them from `root` and `filterBar`.\n container: {},\n topBar: {\n style: {\n paddingLeft: 20,\n paddingRight: 20,\n borderBottom: '1px solid',\n borderColor: 'bg-accent',\n backgroundColor: 'surface-card',\n },\n },\n bulkBar: {\n style: {\n paddingLeft: 20,\n paddingRight: 20,\n paddingTop: 10,\n paddingBottom: 10,\n gap: 12,\n backgroundColor: 'bg-subtle',\n borderBottom: '1px solid',\n borderColor: 'bg-accent',\n },\n },\n bulkBarText: {\n style: { fontSize: 13, fontWeight: '600', color: 'text-primary' },\n },\n\n root: {\n style: {\n borderRadius: 16, // AM.r.lg\n overflow: 'hidden',\n backgroundColor: 'surface-card',\n border: '1px solid',\n borderColor: 'border',\n },\n },\n header: {\n style: { border: 'none', backgroundColor: 'transparent' },\n },\n headerRow: {\n style: { border: 'none', backgroundColor: 'transparent' },\n },\n headerCell: {\n style: {\n fontSize: 11,\n fontWeight: '700',\n textTransform: 'uppercase',\n letterSpacing: '0.06em',\n color: 'text-secondary',\n paddingLeft: 20,\n paddingRight: 20,\n paddingTop: 14,\n paddingBottom: 14,\n border: 'none',\n backgroundColor: 'bg-subtle',\n },\n },\n bodyRow: {\n style: {\n border: 'none',\n transition: 'background-color 0.15s ease',\n },\n },\n // Selected row left accent — teal bar\n selectedRowAccent: {\n style: { boxShadow: 'inset 3px 0 0 0 var(--primary-color, #20AAB0)' },\n },\n bodyCell: {\n style: {\n paddingLeft: 20,\n paddingRight: 20,\n paddingTop: 16,\n paddingBottom: 16,\n fontSize: 14,\n color: 'text-primary',\n },\n },\n tableHeader: {\n style: {\n backgroundColor: 'transparent',\n paddingLeft: 0,\n paddingRight: 0,\n paddingTop: 0,\n paddingBottom: 0,\n border: 'none',\n },\n },\n\n /* In-header filter row (the <tr> containing per-column filter inputs).\n Override to re-skin the whole row (background, borders, etc.). */\n filterRow: {\n style: {\n backgroundColor: 'bg-subtle',\n borderTop: '1px solid',\n borderColor: 'bg-accent',\n },\n },\n /* In-header filter cell (each <td> inside the filter row). */\n filterCell: {\n style: {\n backgroundColor: 'bg-subtle',\n padding: '0.5rem 1rem',\n },\n },\n\n /* External filter bar */\n filterBar: {\n style: {\n backgroundColor: 'bg',\n border: '1px solid',\n borderColor: \"bg-accent\",\n borderRadius: 12,\n padding: 12,\n gap: 12,\n marginBottom: 12,\n },\n },\n /* Chrome shared by every toolbar control — the search box, each\n external filter and the column picker. It lives here rather\n than on `filterInput` / `searchInput` so `toolbarControl` is\n genuinely the one knob for \"restyle all of them\": a value on a\n more specific slot wins, so duplicating this chrome there would\n mean a consumer's `toolbarControl` override was silently beaten\n by a default it never set. Per-control slots stay free for\n genuine per-control differences. */\n toolbarControl: {\n style: {\n backgroundColor: 'bg-input',\n borderRadius: 8, // AM.r.sm\n borderWidth: 1,\n borderStyle: 'solid',\n borderColor: \"bg-accent\",\n },\n },\n filterInput: {},\n filterLabel: {\n style: {\n fontSize: 11,\n fontWeight: '600',\n letterSpacing: '0.05em',\n color: 'text-secondary',\n textTransform: 'uppercase',\n },\n },\n /* Placeholder text across every toolbar control — text inputs\n (::placeholder) and PrimeReact selects (.p-placeholder) alike. */\n filterPlaceholder: {\n style: {\n color: 'text-secondary',\n opacity: 1,\n },\n },\n /* Sizing only — the search box's chrome comes from\n `toolbarControl` along with every other control's. */\n searchInput: {\n style: {\n minWidth: 260,\n maxWidth: 460,\n },\n },\n toolbarRight: { style: { gap: 8 } },\n toolbarButton: {\n style: { height: '2.5rem', width: '2.5rem', padding: 0, borderRadius: 8 },\n },\n clearFilterButton: {\n props: { severity: 'danger', outlined: true, rounded: false },\n style: { height: '2.5rem', width: '2.5rem', padding: 0, borderRadius: 8 },\n },\n columnPicker: { style: { minWidth: 160, height: '2.5rem' } },\n\n /* Pagination */\n paginator: {\n style: {\n border: 'none',\n borderTop: '1px solid',\n borderColor: \"bg-accent\",\n paddingTop: 10,\n paddingBottom: 10,\n paddingLeft: 16,\n paddingRight: 16,\n backgroundColor: 'bg-subtle',\n },\n },\n paginatorPageButton: {\n style: { color: 'text-secondary', minWidth: 32, height: 32, borderRadius: 8, fontSize: 13 },\n },\n paginatorPageLink: {\n style: { color: 'text-primary', minWidth: 32, height: 32, borderRadius: 8, fontSize: 13, fontWeight: '500' },\n },\n paginatorActivePageButton: {\n style: {\n backgroundColor: 'primary',\n color: 'text-on-primary',\n height: 32,\n minWidth: 32,\n borderRadius: 8,\n fontWeight: '600',\n },\n },\n paginatorPageReport: {\n style: { color: 'text-secondary', fontSize: 13 },\n },\n paginatorRowsPerPage: {\n style: {\n height: 32,\n justifyContent: 'center',\n alignItems: 'center',\n color: 'text-secondary',\n fontSize: 13,\n margin: '0 10px',\n },\n },\n paginatorRowsPerPageDropdown: {\n style: {\n height: 32,\n border: '1px solid',\n borderColor: \"bg-accent\",\n borderRadius: 8,\n color: 'text-primary',\n fontSize: 13,\n },\n },\n emptyMessage: {\n style: {\n paddingTop: 40,\n paddingBottom: 40,\n textAlign: 'center',\n color: 'text-subtle',\n fontSize: 14,\n },\n },\n },\n\n // ─── Sidebar ──────────────────────────────────────────\n // ─── ImageCropper ─────────────────────────────────\n // ⚠️ NUMBERS, NOT CSS STRINGS, FOR ANYTHING NATIVE ALSO READS — the\n // same rule `Input.inputGroup` carries: React Native's ViewStyle wants\n // `borderWidth: 1`, web treats the bare `1` as `1px`, and one shared\n // declaration then renders the same frame on both.\n /* ─── ImageCropper ────────────────────────────────────────\n ⛔ EVERY NUMBER HERE IS MEASURED OFF THE MOCKUP,\n `UML/UI/ClientPortal/AlphaMatch - Image Cropper.dc.html`, which is\n the design source for this component. Changing one of them is a\n design change, not a tidy-up — check the mockup first.\n\n ⚠️ THE STAGE AND ITS CHROME DO NOT INVERT WITH THE COLOUR MODE. A\n photograph has to read against the stage in light mode and dark\n mode alike, so the dark surfaces below are literals and the alpha\n families (literal in both modes by construction) carry the rest.\n The light chrome — header, footer, card — goes through tokens. */\n ImageCropper: {\n root: {\n style: {\n backgroundColor: 'surface-card',\n borderRadius: 20,\n overflow: 'hidden',\n /* ⚠️ THE CARD'S DROP SHADOW IS NOT HERE. On web\n `IStyleClasses` types `shadowColor`/`shadowOpacity`/\n `shadowRadius`/`shadowOffset`/`elevation` as `null` —\n they are the NATIVE spelling, and putting them in a slot\n is a type error in the web project (the `handle` slot\n below is the pre-existing instance of exactly that).\n Each platform file applies the mockup's\n `0 24px 64px rgba(0,0,0,.35)` in its own spelling:\n `boxShadow` on web, `shadow*` on native. */\n },\n },\n header: {\n style: {\n paddingLeft: 24, paddingRight: 24, paddingTop: 18, paddingBottom: 18,\n borderBottomWidth: 1,\n borderColor: '#F0F1F3',\n gap: 12,\n },\n },\n title: {\n style: {\n fontSize: 17,\n fontWeight: '800',\n fontColor: 'text-primary',\n /* ⚠️ A STRING WITH UNITS. `letterSpacing` is typed\n `LetterSpacing<0 | (string & {})>`, so a bare -0.17 does\n not compile — and the mockup writes `-.01em` anyway. */\n letterSpacing: '-0.01em',\n },\n },\n content: {\n style: {\n paddingLeft: 24, paddingRight: 24, paddingTop: 22, paddingBottom: 22,\n /* The mockup's left column: stage, then the tool row, 14 apart. */\n gap: 14,\n },\n },\n /* The stage. Dark on purpose: a photo reads against it in either\n colour mode, and a light stage makes every pale image look like\n it has no edges. */\n container: {\n style: {\n backgroundColor: '#0E1A1C',\n borderRadius: 14,\n overflow: 'hidden',\n },\n },\n footer: {\n style: {\n paddingLeft: 24, paddingRight: 24, paddingTop: 14, paddingBottom: 14,\n borderTopWidth: 1,\n borderColor: '#F0F1F3',\n gap: 10,\n },\n },\n icon: { style: { fontColor: '#6B7280' } },\n text: { style: { fontSize: 12.5, fontColor: '#9CA3AF' } },\n\n /* ⛔ THE SCRIM IS AN ALPHA TOKEN, NOT A SOLID. `black-alpha-*` is\n literal in both colour modes — a scrim that inverted in dark mode\n would light UP the area the user is cropping away.\n\n ⚠️ 0.66, NOT 0.74. The mockup uses two different dims and they\n are not interchangeable: 0.66 is the scrim around the window,\n 0.74 is the full-stage overlay while saving. */\n shade: { style: { backgroundColor: 'rgba(6,14,16,0.66)' } },\n cropWindow: { style: { borderWidth: 2, borderColor: '#FFFFFF' } },\n gridLine: { style: { backgroundColor: 'white-alpha-50' } },\n /* ⚠️ A ROUND KNOB WITH A TEAL RING, not a bare square. Against a\n photo a flat white square disappears into any pale area; the ring\n and the drop shadow are what keep a grip findable on a bright\n image, and the mockup draws the ring in the accent so a grip\n never reads as part of the picture.\n\n ⚠️ THE SIZE HERE IS THE CORNER KNOB'S. The four EDGE grips are\n bars, not circles — the platform files size those from\n `HANDLE_BAR_LONG` / `HANDLE_BAR_SHORT`, because one slot cannot\n carry two shapes. */\n handle: {\n style: {\n backgroundColor: '#FFFFFF',\n borderRadius: 999,\n width: 16,\n height: 16,\n borderWidth: 3,\n borderColor: '#20AAB0',\n /* ⛔ NO `shadow*`/`elevation` HERE, AND THIS IS THE ONE THAT\n BROKE A RELEASE. They are the NATIVE spelling; on web\n `IStyleClasses` types all five as `null`, so they are a\n type ERROR — and `packages/types` is built with\n `tsc -p tsconfig.web.json`, an EMITTING build that\n `publish.yml` runs as its first step and that must exit\n zero. Five keys here failed that step and the release\n never reached npm.\n The grip's drop shadow is applied by the platform file\n instead: `boxShadow` in `index.web.tsx`. Native renders\n no grips at all — it fixes the window and moves the\n image — so there is nothing to spell there. */\n },\n },\n zoomChip: {\n style: {\n backgroundColor: 'black-alpha-60',\n fontColor: '#FFFFFF',\n borderRadius: 13,\n paddingLeft: 10, paddingRight: 10,\n height: 26,\n fontSize: 11.5,\n fontWeight: '700',\n },\n },\n /* The mockup rings the preview in white and floats it, rather than\n outlining it — an outline on a photo reads as part of the photo. */\n previewFrame: {\n style: {\n borderWidth: 4,\n borderColor: '#FFFFFF',\n borderRadius: 12,\n overflow: 'hidden',\n backgroundColor: '#E5E7EB',\n /* The float — `0 4px 14px rgba(0,0,0,.14)` — is applied by\n each platform file, for the reason given on `root`. */\n },\n },\n /* ⛔ THE DROP TARGET LIVES ON THE STAGE, NOT INSTEAD OF IT. It used\n to be a light box that replaced the dark stage entirely, so\n choosing a photo made the whole component change colour. The\n mockup keeps the stage and insets a dashed frame inside it. */\n dropZone: {\n style: {\n borderWidth: 1.5,\n borderStyle: 'dashed',\n borderColor: 'white-alpha-20',\n borderRadius: 14,\n backgroundColor: '#0E1A1C',\n padding: 20,\n gap: 9,\n },\n },\n progressFill: { style: { backgroundColor: '#20AAB0', height: 5, borderRadius: 999 } },\n\n /* ⛔ THE SHAPE SLOT, AND IT CARRIES THE *RECTANGLE'S* RADIUS. The\n circle is NOT a 999 pill set here — `maskShape: 'circle'` makes\n the component use a true 50%, because a pill radius on a window\n that is wider than it is tall gives a STADIUM, not a circle.\n That is exactly what shipped for one render of the 16:9 cover\n story: 999 leaked out of this slot into the rectangle case and\n drew a lozenge. What belongs here is the corner rounding a\n RECTANGULAR window should have; the circle overrides it.\n\n ⚠️ 3, NOT 12 — the mockup's cover window is very nearly square\n cornered, because a banner crop with 12px corners does not match\n the banner it is cropped for. */\n mask: { style: { borderRadius: 3 } },\n /* The zoom rail sits on the dark stage on a phone, so its unfilled\n half is a white alpha rather than a surface token. */\n track: { style: { backgroundColor: 'white-alpha-20', borderRadius: 999, height: 4 } },\n thumb: { style: { backgroundColor: '#20AAB0', borderRadius: 999 } },\n },\n\n Sidebar: {\n root: {\n style: {\n backgroundColor: 'surface-sidebar',\n color: 'text',\n borderLeft: '1px solid',\n borderColor: 'border',\n },\n },\n header: {\n style: {\n paddingLeft: 24,\n paddingRight: 24,\n paddingTop: 20,\n paddingBottom: 20,\n borderBottom: '1px solid',\n borderColor: 'border',\n },\n },\n headerTitle: {\n style: { fontSize: 18, fontWeight: '700', color: 'text' },\n },\n closeButton: {\n style: { borderRadius: '50%', color: 'text-subtle' },\n },\n content: {\n style: { paddingLeft: 24, paddingRight: 24, paddingTop: 24, paddingBottom: 24 },\n },\n mask: {\n style: { backgroundColor: 'rgba(15, 26, 28, 0.40)' },\n },\n },\n\n // ─── Accordion ────────────────────────────────────────\n Accordion: {\n root: {\n style: {\n backgroundColor: 'surface-card',\n border: '1px solid',\n borderColor: \"bg-accent\",\n borderRadius: 16, // AM.r.lg\n overflow: 'hidden',\n },\n },\n title: {\n style: {\n backgroundColor: 'bg-subtle',\n color: 'text-primary',\n fontSize: 16,\n fontWeight: '600',\n padding: 16,\n borderBottom: '1px solid',\n borderColor: \"bg-accent\",\n },\n },\n header: {\n style: {\n backgroundColor: 'transparent',\n color: 'text-primary',\n paddingLeft: 16,\n paddingRight: 16,\n paddingTop: 14,\n paddingBottom: 14,\n fontWeight: '500',\n fontSize: 14,\n borderBottom: '1px solid',\n borderColor: \"bg-accent\",\n transition: 'background-color 0.15s ease, color 0.15s ease',\n },\n },\n headerActive: {\n style: { backgroundColor: 'bg-subtle', color: 'brand-deep', fontWeight: '600' },\n },\n headerHover: {\n style: { backgroundColor: 'bg-subtle', color: 'text-primary' },\n },\n icon: {\n style: { color: 'text-secondary', transition: 'transform 0.2s ease, color 0.15s ease' },\n },\n content: {\n style: {\n backgroundColor: 'surface-card',\n color: 'text-primary',\n padding: 16,\n borderBottom: '1px solid',\n borderColor: \"bg-accent\",\n },\n },\n },\n\n // ─── Group (repeatable field array) ───────────────────\n Group: {\n root: { style: { gap: 12 } },\n // No `header` slot — it was removed from IGroupElementSlots\n // because nothing ever rendered it (see the note on that type).\n body: { style: { gap: 8 } },\n row: { style: { gap: 8, paddingBottom: 8 } },\n addButton: { props: { severity: 'success', size: 'sm', outlined: true } },\n removeButton: { props: { severity: 'danger', size: 'sm', outlined: true } },\n },\n\n // ─── Header (app-shell top bar) ───────────────────────\n Header: {\n root: {\n style: {\n backgroundColor: 'bg',\n borderBottom: '1px solid',\n borderColor: 'border',\n fontFamily: 'var(--kits-font-body, Roboto, -apple-system, system-ui, sans-serif)',\n paddingLeft: 16,\n paddingRight: 16,\n paddingTop: 10,\n paddingBottom: 10,\n },\n },\n container: {\n style: { minWidth: 0, paddingLeft: 8, paddingRight: 8 },\n },\n toggleModeButton: { style: { width: 36, height: 36 } },\n avatarButton: { style: { width: 36, height: 36 } },\n breadcrumb: { style: {} },\n },\n\n // ─── AlphaMatch component set (v2) — default knob values ──────────\n // `root.props` carry each component's default props; user props always\n // win (merged by useComponentDefaults). Colour values are theme tokens\n // that resolve per platform — one source for web AND native.\n Avatar: { root: { props: { size: 'md', shape: 'circle', status: 'none', ring: false, ringColor: 'brand', maskFillColor: 'indigo.600' } } },\n AvatarStack: { root: { props: { max: 4, size: 'md', overlap: 0.35, ringColor: 'brand' } } },\n Stepper: { root: { props: { variant: 'bar', size: 'md', activeColor: 'brand', trackColor: 'gray.200' } } },\n StatCard: { root: { props: { variant: 'card', size: 'md', align: 'left', accentColor: 'brand' } } },\n StatGroup: { root: { props: { gap: 8 } } },\n ProgressBar: { root: { props: { max: 100, color: 'brand', trackColor: 'gray.200', thickness: 8, rounded: true } } },\n Timeline: { root: { props: { size: 'md', activeColor: 'brand', trackColor: 'gray.200' } } },\n EmptyState: { root: { props: { size: 'md', accentColor: 'brand' } } },\n Tabs: { root: { props: { size: 'md', activeColor: 'brand', scrollable: true, gap: 8, countVariant: 'suffix', activeBadgeBackground: 'surface-card', activeBadgeTextColor: 'text-primary', inactiveBadgeBackground: 'surface-card', inactiveBadgeTextColor: 'text-secondary', inactiveBackground: 'surface-muted', inactiveTextColor: 'text-secondary', sizeHeights: { sm: 28, md: 32, lg: 40 } } } },\n BottomTabBar: { root: { props: { activeColor: 'brand', inactiveColor: 'text-secondary', background: 'surface-card', showLabels: true } } },\n Gallery: { root: { props: { columns: 2, gap: 8, aspectRatio: 1, radius: 12 } } },\n Carousel: { root: { props: { aspectRatio: 1.2, radius: 0, showCounter: true, showDots: true } } },\n ChatBubble: { root: { props: { variant: 'incoming', tone: 'neutral', incomingColor: 'gray.100', outgoingColor: 'brand', authorColor: 'text-secondary' } } },\n MessageComposer: { root: { props: { placeholder: 'Message…', accentColor: 'brand' } } },\n MessageReceipt: { root: { props: { size: 'sm', color: 'text-secondary', seenColor: 'brand', failedColor: 'danger' } } },\n DateSeparator: { root: { props: { color: 'text-secondary', backgroundColor: 'surface-muted' } } },\n TypingIndicator: { root: { props: { dotColor: 'text-secondary', bubble: true, bubbleColor: 'surface-muted' } } },\n },\n\n config: {\n initialColorMode: 'light',\n useSystemColorMode: false,\n },\n};\n"],"names":[],"mappings":";;AAIO,MAAM,YAAA,GAA2B;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAapC,MAAA,EAAQ;AAAA,IACJ,IAAA,EAAM;AAAA,MACF,EAAA,EAAI,SAAA;AAAA,MAAW,GAAA,EAAK,SAAA;AAAA,MAAW,GAAA,EAAK,SAAA;AAAA,MAAW,GAAA,EAAK,SAAA;AAAA,MAAW,GAAA,EAAK,SAAA;AAAA,MACpE,GAAA,EAAK,SAAA;AAAA,MAAW,GAAA,EAAK,SAAA;AAAA,MAAW,GAAA,EAAK,SAAA;AAAA,MAAW,GAAA,EAAK,SAAA;AAAA,MAAW,GAAA,EAAK;AAAA,KACzE;AAAA,IACA,KAAA,EAAO;AAAA,MACH,EAAA,EAAI,SAAA;AAAA,MAAW,GAAA,EAAK,SAAA;AAAA,MAAW,GAAA,EAAK,SAAA;AAAA,MAAW,GAAA,EAAK,SAAA;AAAA,MAAW,GAAA,EAAK,SAAA;AAAA,MACpE,GAAA,EAAK,SAAA;AAAA,MAAW,GAAA,EAAK,SAAA;AAAA,MAAW,GAAA,EAAK,SAAA;AAAA,MAAW,GAAA,EAAK,SAAA;AAAA,MAAW,GAAA,EAAK;AAAA,KACzE;AAAA,IACA,GAAA,EAAK;AAAA,MACD,EAAA,EAAI,SAAA;AAAA,MAAW,GAAA,EAAK,SAAA;AAAA,MAAW,GAAA,EAAK,SAAA;AAAA,MAAW,GAAA,EAAK,SAAA;AAAA,MAAW,GAAA,EAAK,SAAA;AAAA,MACpE,GAAA,EAAK,SAAA;AAAA,MAAW,GAAA,EAAK,SAAA;AAAA,MAAW,GAAA,EAAK,SAAA;AAAA,MAAW,GAAA,EAAK,SAAA;AAAA,MAAW,GAAA,EAAK;AAAA,KACzE;AAAA,IACA,MAAA,EAAQ;AAAA,MACJ,EAAA,EAAI,SAAA;AAAA,MAAW,GAAA,EAAK,SAAA;AAAA,MAAW,GAAA,EAAK,SAAA;AAAA,MAAW,GAAA,EAAK,SAAA;AAAA,MAAW,GAAA,EAAK,SAAA;AAAA,MACpE,GAAA,EAAK,SAAA;AAAA,MAAW,GAAA,EAAK,SAAA;AAAA,MAAW,GAAA,EAAK,SAAA;AAAA,MAAW,GAAA,EAAK,SAAA;AAAA,MAAW,GAAA,EAAK;AAAA,KACzE;AAAA,IACA,MAAA,EAAQ;AAAA,MACJ,EAAA,EAAI,SAAA;AAAA,MAAW,GAAA,EAAK,SAAA;AAAA,MAAW,GAAA,EAAK,SAAA;AAAA,MAAW,GAAA,EAAK,SAAA;AAAA,MAAW,GAAA,EAAK,SAAA;AAAA,MACpE,GAAA,EAAK,SAAA;AAAA,MAAW,GAAA,EAAK,SAAA;AAAA,MAAW,GAAA,EAAK,SAAA;AAAA,MAAW,GAAA,EAAK,SAAA;AAAA,MAAW,GAAA,EAAK;AAAA,KACzE;AAAA,IACA,MAAA,EAAQ;AAAA,MACJ,EAAA,EAAI,SAAA;AAAA,MAAW,GAAA,EAAK,SAAA;AAAA,MAAW,GAAA,EAAK,SAAA;AAAA,MAAW,GAAA,EAAK,SAAA;AAAA,MAAW,GAAA,EAAK,SAAA;AAAA,MACpE,GAAA,EAAK,SAAA;AAAA,MAAW,GAAA,EAAK,SAAA;AAAA,MAAW,GAAA,EAAK,SAAA;AAAA,MAAW,GAAA,EAAK,SAAA;AAAA,MAAW,GAAA,EAAK;AAAA,KACzE;AAAA,IACA,IAAA,EAAM;AAAA,MACF,EAAA,EAAI,SAAA;AAAA,MAAW,GAAA,EAAK,SAAA;AAAA,MAAW,GAAA,EAAK,SAAA;AAAA,MAAW,GAAA,EAAK,SAAA;AAAA,MAAW,GAAA,EAAK,SAAA;AAAA,MACpE,GAAA,EAAK,SAAA;AAAA,MAAW,GAAA,EAAK,SAAA;AAAA,MAAW,GAAA,EAAK,SAAA;AAAA,MAAW,GAAA,EAAK,SAAA;AAAA,MAAW,GAAA,EAAK;AAAA,KACzE;AAAA,IACA,IAAA,EAAM;AAAA,MACF,EAAA,EAAI,SAAA;AAAA,MAAW,GAAA,EAAK,SAAA;AAAA,MAAW,GAAA,EAAK,SAAA;AAAA,MAAW,GAAA,EAAK,SAAA;AAAA,MAAW,GAAA,EAAK,SAAA;AAAA,MACpE,GAAA,EAAK,SAAA;AAAA,MAAW,GAAA,EAAK,SAAA;AAAA,MAAW,GAAA,EAAK,SAAA;AAAA,MAAW,GAAA,EAAK,SAAA;AAAA,MAAW,GAAA,EAAK;AAAA,KACzE;AAAA,IACA,IAAA,EAAM;AAAA,MACF,EAAA,EAAI,SAAA;AAAA,MAAW,GAAA,EAAK,SAAA;AAAA,MAAW,GAAA,EAAK,SAAA;AAAA,MAAW,GAAA,EAAK,SAAA;AAAA,MAAW,GAAA,EAAK,SAAA;AAAA,MACpE,GAAA,EAAK,SAAA;AAAA,MAAW,GAAA,EAAK,SAAA;AAAA,MAAW,GAAA,EAAK,SAAA;AAAA,MAAW,GAAA,EAAK,SAAA;AAAA,MAAW,GAAA,EAAK;AAAA,KACzE;AAAA,IACA,IAAA,EAAM;AAAA,MACF,EAAA,EAAI,SAAA;AAAA,MAAW,GAAA,EAAK,SAAA;AAAA,MAAW,GAAA,EAAK,SAAA;AAAA,MAAW,GAAA,EAAK,SAAA;AAAA,MAAW,GAAA,EAAK,SAAA;AAAA,MACpE,GAAA,EAAK,SAAA;AAAA,MAAW,GAAA,EAAK,SAAA;AAAA,MAAW,GAAA,EAAK,SAAA;AAAA,MAAW,GAAA,EAAK,SAAA;AAAA,MAAW,GAAA,EAAK;AAAA,KACzE;AAAA,IACA,MAAA,EAAQ;AAAA,MACJ,EAAA,EAAI,SAAA;AAAA,MAAW,GAAA,EAAK,SAAA;AAAA,MAAW,GAAA,EAAK,SAAA;AAAA,MAAW,GAAA,EAAK,SAAA;AAAA,MAAW,GAAA,EAAK,SAAA;AAAA,MACpE,GAAA,EAAK,SAAA;AAAA,MAAW,GAAA,EAAK,SAAA;AAAA,MAAW,GAAA,EAAK,SAAA;AAAA,MAAW,GAAA,EAAK,SAAA;AAAA,MAAW,GAAA,EAAK;AAAA,KACzE;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAOA,IAAA,EAAM;AAAA,MACF,EAAA,EAAI,SAAA;AAAA,MAAW,GAAA,EAAK,SAAA;AAAA,MAAW,GAAA,EAAK,SAAA;AAAA,MAAW,GAAA,EAAK,SAAA;AAAA,MAAW,GAAA,EAAK,SAAA;AAAA,MACpE,GAAA,EAAK,SAAA;AAAA,MAAW,GAAA,EAAK,SAAA;AAAA,MAAW,GAAA,EAAK,SAAA;AAAA,MAAW,GAAA,EAAK,SAAA;AAAA,MAAW,GAAA,EAAK;AAAA,KACzE;AAAA,IACA,OAAA,EAAS;AAAA,MACL,EAAA,EAAK,SAAA;AAAA;AAAA,MACL,GAAA,EAAK,SAAA;AAAA;AAAA,MACL,GAAA,EAAK,SAAA;AAAA,MACL,GAAA,EAAK,SAAA;AAAA,MACL,GAAA,EAAK,SAAA;AAAA,MACL,GAAA,EAAK,SAAA;AAAA;AAAA,MACL,GAAA,EAAK,SAAA;AAAA;AAAA,MACL,GAAA,EAAK,SAAA;AAAA,MACL,GAAA,EAAK,SAAA;AAAA,MACL,GAAA,EAAK;AAAA,KACT;AAAA,IACA,KAAA,EAAO;AAAA,MACH,EAAA,EAAK,SAAA;AAAA,MACL,GAAA,EAAK,SAAA;AAAA,MACL,GAAA,EAAK,SAAA;AAAA,MACL,GAAA,EAAK,SAAA;AAAA,MACL,GAAA,EAAK,SAAA;AAAA,MACL,GAAA,EAAK,SAAA;AAAA,MACL,GAAA,EAAK,SAAA;AAAA,MACL,GAAA,EAAK,SAAA;AAAA,MACL,GAAA,EAAK,SAAA;AAAA,MACL,GAAA,EAAK;AAAA,KACT;AAAA;AAAA;AAAA,IAGA,GAAA,EAAK;AAAA,MACD,EAAA,EAAK,SAAA;AAAA;AAAA,MACL,GAAA,EAAK,SAAA;AAAA;AAAA,MACL,GAAA,EAAK,SAAA;AAAA,MACL,GAAA,EAAK,SAAA;AAAA,MACL,GAAA,EAAK,SAAA;AAAA;AAAA,MACL,GAAA,EAAK,SAAA;AAAA;AAAA,MACL,GAAA,EAAK,SAAA;AAAA;AAAA,MACL,GAAA,EAAK,SAAA;AAAA,MACL,GAAA,EAAK,SAAA;AAAA;AAAA,MACL,GAAA,EAAK;AAAA;AACT,GACJ;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAUA,cAAA,EAAgB;AAAA,IACZ,KAAA,EAAO;AAAA;AAAA,MAEH,OAAA,EAAiB,aAAA;AAAA;AAAA,MACjB,eAAA,EAAiB,aAAA;AAAA;AAAA,MACjB,gBAAA,EAAiB,aAAA;AAAA;AAAA,MACjB,SAAA,EAAiB,SAAA;AAAA;AAAA,MACjB,KAAA,EAAiB,aAAA;AAAA,MACjB,cAAA,EAAiB,aAAA;AAAA,MACjB,YAAA,EAAiB,aAAA;AAAA,MACjB,aAAA,EAAiB,aAAA;AAAA;AAAA,MAGjB,OAAA,EAAY,SAAA;AAAA,MACZ,MAAA,EAAY,SAAA;AAAA;AAAA,MACZ,OAAA,EAAY,SAAA;AAAA;AAAA,MACZ,IAAA,EAAY,SAAA;AAAA;AAAA,MACZ,IAAA,EAAY,SAAA;AAAA,MACZ,WAAA,EAAY,SAAA;AAAA;AAAA,MAGZ,IAAA,EAAgB,SAAA;AAAA;AAAA,MAChB,cAAA,EAAgB,SAAA;AAAA,MAChB,gBAAA,EAAiB,SAAA;AAAA;AAAA,MACjB,aAAA,EAAgB,SAAA;AAAA;AAAA,MAChB,YAAA,EAAgB,SAAA;AAAA,MAChB,iBAAA,EAAkB,SAAA;AAAA,MAClB,WAAA,EAAgB,aAAA;AAAA;AAAA,MAGhB,EAAA,EAAc,SAAA;AAAA;AAAA,MACd,WAAA,EAAc,SAAA;AAAA;AAAA,MACd,UAAA,EAAc,SAAA;AAAA;AAAA,MACd,WAAA,EAAc,SAAA;AAAA;AAAA,MACd,UAAA,EAAc,SAAA;AAAA;AAAA,MACd,SAAA,EAAc,SAAA;AAAA;AAAA;AAAA,MAGd,gBAAA,EAAmB,SAAA;AAAA;AAAA,MACnB,cAAA,EAAmB,SAAA;AAAA;AAAA,MACnB,eAAA,EAAmB,SAAA;AAAA;AAAA,MACnB,iBAAA,EAAmB,SAAA;AAAA;AAAA,MACnB,eAAA,EAAmB,SAAA;AAAA;AAAA,MACnB,iBAAA,EAAmB,SAAA;AAAA;AAAA,MACnB,gBAAA,EAAmB,SAAA;AAAA;AAAA;AAAA,MAGnB,MAAA,EAAkB,SAAA;AAAA;AAAA,MAClB,gBAAA,EAAkB,SAAA;AAAA,MAClB,eAAA,EAAkB,SAAA;AAAA;AAAA,MAClB,eAAA,EAAkB,SAAA;AAAA;AAAA,MAClB,OAAA,EAAkB,SAAA;AAAA;AAAA,MAGlB,cAAA,EAAgB,sBAAA;AAAA,MAChB,aAAA,EAAgB,sBAAA;AAAA;AAAA,MAChB,cAAA,EAAgB,uBAAA;AAAA;AAAA,MAChB,WAAA,EAAgB,sBAAA;AAAA;AAAA,MAChB,YAAA,EAAgB,uBAAA;AAAA;AAAA,MAChB,SAAA,EAAgB,sBAAA;AAAA;AAAA,MAEhB,YAAA,EAAgB,SAAA;AAAA,MAChB,cAAA,EAAgB,SAAA;AAAA,MAChB,cAAA,EAAgB,SAAA;AAAA;AAAA,MAGhB,WAAA,EAAa;AAAA;AAAA,KACjB;AAAA,IAEA,IAAA,EAAM;AAAA;AAAA,MAEF,OAAA,EAAiB,aAAA;AAAA;AAAA,MACjB,eAAA,EAAiB,aAAA;AAAA,MACjB,gBAAA,EAAiB,aAAA;AAAA,MACjB,SAAA,EAAiB,SAAA;AAAA;AAAA,MACjB,KAAA,EAAiB,aAAA;AAAA,MACjB,cAAA,EAAiB,aAAA;AAAA,MACjB,YAAA,EAAiB,aAAA;AAAA,MACjB,aAAA,EAAiB,aAAA;AAAA;AAAA,MAGjB,OAAA,EAAY,SAAA;AAAA,MACZ,MAAA,EAAY,SAAA;AAAA;AAAA,MACZ,OAAA,EAAY,SAAA;AAAA,MACZ,IAAA,EAAY,SAAA;AAAA;AAAA,MACZ,IAAA,EAAY,SAAA;AAAA,MACZ,WAAA,EAAY,SAAA;AAAA;AAAA,MAGZ,IAAA,EAAgB,SAAA;AAAA;AAAA,MAChB,cAAA,EAAgB,SAAA;AAAA,MAChB,gBAAA,EAAiB,SAAA;AAAA;AAAA,MACjB,aAAA,EAAgB,SAAA;AAAA;AAAA,MAChB,YAAA,EAAgB,SAAA;AAAA,MAChB,iBAAA,EAAkB,SAAA;AAAA;AAAA,MAClB,WAAA,EAAgB,aAAA;AAAA;AAAA,MAGhB,EAAA,EAAc,SAAA;AAAA;AAAA,MACd,WAAA,EAAc,SAAA;AAAA;AAAA,MACd,UAAA,EAAc,SAAA;AAAA;AAAA,MACd,WAAA,EAAc,uBAAA;AAAA,MACd,UAAA,EAAc,SAAA;AAAA,MACd,SAAA,EAAc,SAAA;AAAA;AAAA;AAAA,MAGd,gBAAA,EAAmB,SAAA;AAAA,MACnB,cAAA,EAAmB,SAAA;AAAA,MACnB,eAAA,EAAmB,SAAA;AAAA,MACnB,iBAAA,EAAmB,SAAA;AAAA,MACnB,eAAA,EAAmB,SAAA;AAAA,MACnB,iBAAA,EAAmB,SAAA;AAAA,MACnB,gBAAA,EAAmB,SAAA;AAAA;AAAA;AAAA,MAGnB,MAAA,EAAkB,SAAA;AAAA;AAAA,MAClB,gBAAA,EAAkB,SAAA;AAAA,MAClB,eAAA,EAAkB,SAAA;AAAA;AAAA,MAClB,eAAA,EAAkB,SAAA;AAAA,MAClB,OAAA,EAAkB,SAAA;AAAA;AAAA,MAGlB,cAAA,EAAgB,sBAAA;AAAA,MAChB,aAAA,EAAgB,wBAAA;AAAA,MAChB,cAAA,EAAgB,uBAAA;AAAA,MAChB,WAAA,EAAgB,wBAAA;AAAA,MAChB,YAAA,EAAgB,uBAAA;AAAA;AAAA,MAChB,SAAA,EAAgB,wBAAA;AAAA;AAAA,MAEhB,YAAA,EAAgB,SAAA;AAAA,MAChB,cAAA,EAAgB,SAAA;AAAA,MAChB,cAAA,EAAgB,SAAA;AAAA;AAAA,MAGhB,WAAA,EAAa;AAAA;AACjB,GACJ;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAOA,QAAA,EAAU;AAAA,IACN,KAAA,EAAO;AAAA,MACH,KAAA,EAAW,WAAA;AAAA,MACX,SAAA,EAAW,SAAA;AAAA,MACX,MAAA,EAAW,UAAA;AAAA,MACX,MAAA,EAAW,WAAA;AAAA,MACX,MAAA,EAAW,WAAA;AAAA,MACX,IAAA,EAAW,WAAA;AAAA,MACX,MAAA,EAAW;AAAA,KACf;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IASA,qBAAA,EAAuB;AAAA,MACnB,KAAA,EAAW,WAAA;AAAA,MACX,SAAA,EAAW,SAAA;AAAA,MACX,MAAA,EAAW,UAAA;AAAA,MACX,MAAA,EAAW,WAAA;AAAA,MACX,MAAA,EAAW,WAAA;AAAA,MACX,IAAA,EAAW,WAAA;AAAA,MACX,MAAA,EAAW;AAAA,KACf;AAAA,IACA,OAAA,EAAS;AAAA,MACL,KAAA,EAAW,WAAA;AAAA,MACX,SAAA,EAAW,SAAA;AAAA,MACX,MAAA,EAAW,UAAA;AAAA,MACX,MAAA,EAAW,WAAA;AAAA,MACX,MAAA,EAAW,WAAA;AAAA,MACX,IAAA,EAAW,WAAA;AAAA,MACX,MAAA,EAAW;AAAA,KACf;AAAA,IACA,MAAA,EAAQ;AAAA;AAAA;AAAA,MAGJ,KAAA,EAAW,SAAA;AAAA,MACX,SAAA,EAAW,SAAA;AAAA,MACX,MAAA,EAAW,QAAA;AAAA,MACX,MAAA,EAAW,SAAA;AAAA,MACX,MAAA,EAAW,SAAA;AAAA,MACX,IAAA,EAAW,SAAA;AAAA,MACX,MAAA,EAAW;AAAA,KACf;AAAA,IACA,OAAA,EAAS;AAAA;AAAA,MAEL,KAAA,EAAW,SAAA;AAAA,MACX,SAAA,EAAW,SAAA;AAAA,MACX,MAAA,EAAW,WAAA;AAAA,MACX,MAAA,EAAW,SAAA;AAAA,MACX,MAAA,EAAW,YAAA;AAAA,MACX,IAAA,EAAW,SAAA;AAAA,MACX,MAAA,EAAW;AAAA,KACf;AAAA,IACA,IAAA,EAAM;AAAA;AAAA,MAEF,KAAA,EAAW,SAAA;AAAA,MACX,SAAA,EAAW,SAAA;AAAA,MACX,MAAA,EAAW,WAAA;AAAA,MACX,MAAA,EAAW,YAAA;AAAA,MACX,MAAA,EAAW,YAAA;AAAA,MACX,IAAA,EAAW,YAAA;AAAA,MACX,MAAA,EAAW;AAAA,KACf;AAAA,IACA,SAAA,EAAW;AAAA,MACP,KAAA,EAAW,UAAA;AAAA,MACX,SAAA,EAAW,SAAA;AAAA,MACX,MAAA,EAAW,SAAA;AAAA,MACX,MAAA,EAAW,UAAA;AAAA,MACX,MAAA,EAAW,UAAA;AAAA,MACX,IAAA,EAAW,UAAA;AAAA,MACX,MAAA,EAAW;AAAA,KACf;AAAA,IACA,IAAA,EAAM;AAAA;AAAA,MAEF,KAAA,EAAW,SAAA;AAAA,MACX,SAAA,EAAW,SAAA;AAAA,MACX,MAAA,EAAW,WAAA;AAAA,MACX,MAAA,EAAW,YAAA;AAAA,MACX,MAAA,EAAW,YAAA;AAAA,MACX,IAAA,EAAW,YAAA;AAAA,MACX,MAAA,EAAW;AAAA;AACf,GACJ;AAAA;AAAA;AAAA;AAAA,EAKA,OAAA,EAAS;AAAA,IACL,GAAA,EAAK,GAAA;AAAA,IACL,KAAA,EAAO,UAAA;AAAA,IACP,GAAA,EAAK,SAAA;AAAA,IACL,KAAA,EAAO,UAAA;AAAA,IACP,GAAA,EAAK,QAAA;AAAA,IACL,GAAA,EAAK,SAAA;AAAA,IACL,GAAA,EAAK,MAAA;AAAA,IACL,GAAA,EAAK,SAAA;AAAA,IACL,GAAA,EAAK,QAAA;AAAA,IACL,GAAA,EAAK,MAAA;AAAA,IACL,IAAA,EAAM,QAAA;AAAA,IACN,IAAA,EAAM,MAAA;AAAA,IACN,IAAA,EAAM,MAAA;AAAA,IACN,IAAA,EAAM,MAAA;AAAA,IACN,IAAA,EAAM;AAAA,GACV;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAYA,KAAA,EAAO;AAAA,IACH,IAAA,EAAM,GAAA;AAAA,IACN,EAAA,EAAM,KAAA;AAAA,IACN,IAAA,EAAM,KAAA;AAAA,IACN,EAAA,EAAM,MAAA;AAAA,IACN,EAAA,EAAM,MAAA;AAAA,IACN,EAAA,EAAM,MAAA;AAAA,IACN,KAAA,EAAM,MAAA;AAAA,IACN,KAAA,EAAM,MAAA;AAAA,IACN,IAAA,EAAM,OAAA;AAAA,IACN,IAAA,EAAM;AAAA,GACV;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAOA,OAAA,EAAS;AAAA;AAAA;AAAA;AAAA,IAIL,MAAM,EAAC,GAAA,EAAK,MAAA,EAAqE,MAAA,EAAQ,uBAAuB,IAAA,EAAI;AAAA,IACpH,IAAM,EAAC,GAAA,EAAK,+BAAA,EAAqE,MAAA,EAAQ,uBAAuB,EAAA,EAAE;AAAA,IAClH,IAAM,EAAC,GAAA,EAAK,+BAAA,EAAqE,MAAA,EAAQ,uBAAuB,EAAA,EAAE;AAAA,IAClH,IAAM,EAAC,GAAA,EAAK,+DAAA,EAAqE,MAAA,EAAQ,uBAAuB,EAAA,EAAE;AAAA,IAClH,IAAM,EAAC,GAAA,EAAK,iEAAA,EAAqE,MAAA,EAAQ,uBAAuB,EAAA,EAAE;AAAA;AAAA;AAAA,IAGlH,IAAM,EAAC,GAAA,EAAK,iEAAA,EAAqE,MAAA,EAAQ,uBAAuB,EAAA,EAAE;AAAA;AAAA,IAElH,IAAA,EAAM,+DAAA;AAAA;AAAA,IACN,EAAA,EAAM,iEAAA;AAAA,IACN,KAAA,EAAM,iCAAA;AAAA,IACN,KAAA,EAAM;AAAA,GACV;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EASA,KAAA,EAAO;AAAA,IACH,OAAA,EAAS,0DAAA;AAAA,IACT,IAAA,EAAS,0DAAA;AAAA,IACT,IAAA,EAAS,6DAAA;AAAA,IACT,KAAA,EAAS,6DAAA;AAAA,IACT,IAAA,EAAS;AAAA,GACb;AAAA,EAEA,SAAA,EAAW;AAAA,IACP,EAAA,EAAM,SAAA;AAAA,IACN,EAAA,EAAM,UAAA;AAAA,IACN,EAAA,EAAM,MAAA;AAAA,IACN,EAAA,EAAM,UAAA;AAAA,IACN,EAAA,EAAM,SAAA;AAAA,IACN,KAAA,EAAM,QAAA;AAAA,IACN,KAAA,EAAM,UAAA;AAAA,IACN,KAAA,EAAM,SAAA;AAAA,IACN,KAAA,EAAM,MAAA;AAAA,IACN,KAAA,EAAM;AAAA,GACV;AAAA,EAEA,WAAA,EAAa;AAAA,IACT,KAAA,EAAU,GAAA;AAAA,IACV,MAAA,EAAU,GAAA;AAAA,IACV,MAAA,EAAU,GAAA;AAAA,IACV,QAAA,EAAU,GAAA;AAAA,IACV,IAAA,EAAU;AAAA,GACd;AAAA,EAEA,WAAA,EAAa;AAAA,IACT,IAAA,EAAS,CAAA;AAAA,IACT,KAAA,EAAS,IAAA;AAAA,IACT,IAAA,EAAS,KAAA;AAAA,IACT,MAAA,EAAS,GAAA;AAAA,IACT,OAAA,EAAS,KAAA;AAAA,IACT,KAAA,EAAS;AAAA,GACb;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAUA,UAAA,EAAY;AAAA;AAAA,IAER,MAAA,EAAQ;AAAA,MACJ,IAAA,EAAM;AAAA,QACF,KAAA,EAAO;AAAA,UACH,OAAA,EAAS,IAAA;AAAA,UACT,IAAA,EAAM;AAAA,SACV;AAAA,QACA,KAAA,EAAO;AAAA,UACH,YAAA,EAAc,EAAA;AAAA;AAAA,UACd,UAAA,EAAY;AAAA;AAChB;AACJ,KACJ;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAYA,KAAA,EAAO;AAAA,MACH,IAAA,EAAM;AAAA,QACF,KAAA,EAAO;AAAA,UACH,SAAA,EAAW;AAAA,SACf;AAAA,QACA,KAAA,EAAO;AAAA,UACH,YAAA,EAAc,CAAA;AAAA,UACd,MAAA,EAAQ,MAAA;AAAA,UACR,WAAA,EAAa,CAAA;AAAA,UACb,QAAA,EAAU,EAAA;AAAA,UACV,KAAA,EAAO;AAAA;AACX,OACJ;AAAA,MACA,SAAA,EAAW;AAAA,QACP,KAAA,EAAO,EAAE,GAAA,EAAK,CAAA;AAAE,OACpB;AAAA;AAAA;AAAA;AAAA;AAAA,MAKA,UAAA,EAAY;AAAA,QACR,KAAA,EAAO;AAAA,UACH,WAAA,EAAa,WAAA;AAAA,UACb,YAAA,EAAc,EAAA;AAAA,UACd,WAAA,EAAY,OAAA;AAAA,UACZ,WAAA,EAAa,CAAA;AAAA,UACb,QAAA,EAAU,EAAA;AAAA,UACV,MAAA,EAAO,EAAA;AAAA,UACP,KAAA,EAAO;AAAA;AACX,OACJ;AAAA,MACA,SAAA,EAAW;AAAA,QACP,KAAA,EAAO,EAAE,eAAA,EAAiB,aAAA;AAAc;AAC5C,KACJ;AAAA;AAAA,IAGA,WAAe,EAAC;AAAA,IAChB,aAAe,EAAC;AAAA,IAChB,WAAe,EAAC;AAAA,IAChB,eAAe,EAAC;AAAA,IAChB,aAAe,EAAC;AAAA,IAChB,YAAe,EAAC;AAAA;AAAA;AAAA;AAAA;AAAA,IAMhB,UAAA,EAAY;AAAA,MACR,KAAA,EAAO;AAAA,QACH,KAAA,EAAO;AAAA,UACH,eAAA,EAAiB,iBAAA;AAAA,UACjB,WAAA,EAAa,WAAA;AAAA,UACb,YAAA,EAAc,EAAA;AAAA,UACd,WAAA,EAAY,OAAA;AAAA,UACZ,WAAA,EAAa,CAAA;AAAA,UACb,OAAA,EAAS,CAAA;AAAA,UACT,QAAA,EAAU;AAAA;AACd,OACJ;AAAA,MACA,cAAA,EAAgB;AAAA,QACZ,KAAA,EAAO;AAAA,UACH,eAAA,EAAiB,aAAA;AAAA,UACjB,YAAA,EAAc,WAAA;AAAA,UACd,WAAA,EAAa,WAAA;AAAA,UACb,aAAA,EAAe,CAAA;AAAA,UACf,YAAA,EAAc,CAAA;AAAA,UACd,KAAA,EAAO,cAAA;AAAA,UACP,UAAA,EAAY;AAAA;AAChB,OACJ;AAAA,MACA,iBAAA,EAAmB;AAAA;AAAA,OAEnB;AAAA,MACA,OAAA,EAAS;AAAA,QACL,KAAA,EAAO;AAAA,UACH,KAAA,EAAO,YAAA;AAAA,UACP,QAAA,EAAU,EAAA;AAAA,UACV,UAAA,EAAY,KAAA;AAAA,UACZ,aAAA,EAAe,WAAA;AAAA,UACf,aAAA,EAAe;AAAA;AACnB,OACJ;AAAA,MACA,OAAA,EAAS;AAAA,QACL,KAAA,EAAO;AAAA,UACH,KAAA,EAAO,cAAA;AAAA,UACP,YAAA,EAAc,CAAA;AAAA,UACd,UAAA,EAAY;AAAA;AAChB,OACJ;AAAA;AAAA,MAEA,WAAA,EAAa;AAAA,QACT,OAAO,EAAE,eAAA,EAAiB,WAAW,KAAA,EAAO,iBAAA,EAAmB,YAAY,KAAA;AAAM,OACrF;AAAA;AAAA,MAEA,QAAA,EAAU;AAAA,QACN,OAAO,EAAE,KAAA,EAAO,cAAc,eAAA,EAAiB,YAAA,EAAc,YAAY,KAAA;AAAM,OACnF;AAAA,MACA,WAAA,EAAa;AAAA,QACT,OAAO,EAAE,KAAA,EAAO,cAAc,OAAA,EAAS,IAAA,EAAM,QAAQ,aAAA;AAAc;AACvE,KACJ;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAOA,QAAA,EAAU;AAAA,MACN,IAAA,EAAM;AAAA,QACF,KAAA,EAAO,EAAE,SAAA,EAAW,IAAA,EAAK;AAAA,QACzB,KAAA,EAAO;AAAA,UACH,WAAA,EAAa,WAAA;AAAA,UACb,YAAA,EAAc,EAAA;AAAA,UACd,WAAA,EAAY,OAAA;AAAA,UACZ,WAAA,EAAa,CAAA;AAAA,UACb,eAAA,EAAiB,aAAA;AAAA,UACjB,QAAA,EAAU,EAAA;AAAA,UACV,KAAA,EAAO;AAAA;AACX;AACJ,KACJ;AAAA;AAAA;AAAA;AAAA,IAKA,MAAA,EAAQ;AAAA,MACJ,IAAA,EAAM;AAAA,QACF,KAAA,EAAO,EAAE,SAAA,EAAW,IAAA,EAAK;AAAA,QACzB,KAAA,EAAO;AAAA,UACH,YAAA,EAAc,CAAA;AAAA,UACd,MAAA,EAAQ,MAAA;AAAA,UACR,WAAA,EAAa,CAAA;AAAA,UACb,QAAA,EAAU,EAAA;AAAA,UACV,KAAA,EAAO,MAAA;AAAA,UACP,eAAA,EAAiB;AAAA;AACrB,OACJ;AAAA,MACA,SAAA,EAAW;AAAA,QACP,KAAA,EAAO,EAAE,MAAA,EAAQ,MAAA,EAAQ,KAAK,CAAA;AAAE,OACpC;AAAA;AAAA;AAAA,MAGA,UAAA,EAAW;AAAA,QACT,KAAA,EAAM;AAAA,UACF,WAAA,EAAa,WAAA;AAAA,UACb,MAAA,EAAO,EAAA;AAAA,UACP,YAAA,EAAc,EAAA;AAAA,UACd,WAAA,EAAY,OAAA;AAAA,UACZ,WAAA,EAAa,CAAA;AAAA,UACb,QAAA,EAAU,EAAA;AAAA,UACV,KAAA,EAAO;AAAA;AACX,OACF;AAAA;AAAA,MAEA,KAAA,EAAO;AAAA,QACH,KAAA,EAAO;AAAA,UACH,eAAA,EAAiB,iBAAA;AAAA,UACjB,MAAA,EAAQ,WAAA;AAAA,UACR,WAAA,EAAa,WAAA;AAAA,UACb,YAAA,EAAc,EAAA;AAAA;AAAA,UACd,QAAA,EAAU;AAAA;AACd,OACJ;AAAA,MACA,IAAA,EAAM;AAAA,QACF,KAAA,EAAO;AAAA,UACH,WAAA,EAAa,EAAA;AAAA,UACb,YAAA,EAAc,EAAA;AAAA,UACd,UAAA,EAAY,CAAA;AAAA,UACZ,aAAA,EAAe,CAAA;AAAA,UACf,QAAA,EAAU,EAAA;AAAA,UACV,KAAA,EAAO,cAAA;AAAA,UACP,YAAA,EAAc,CAAA;AAAA,UACd,MAAA,EAAQ,CAAA;AAAA,UACR,UAAA,EAAY;AAAA;AAChB,OACJ;AAAA,MACA,YAAA,EAAc;AAAA,QACV,KAAA,EAAO;AAAA,UACH,eAAA,EAAiB,YAAA;AAAA;AAAA,UACjB,KAAA,EAAO,YAAA;AAAA,UACP,UAAA,EAAY;AAAA;AAChB,OACJ;AAAA,MACA,WAAA,EAAa;AAAA,QACT,KAAA,EAAO,EAAE,eAAA,EAAiB,WAAA,EAAa,OAAO,cAAA;AAAe,OACjE;AAAA,MACA,SAAA,EAAW;AAAA,QACP,KAAA,EAAO,EAAE,eAAA,EAAiB,WAAA,EAAa,OAAO,cAAA;AAAe,OACjE;AAAA,MACA,YAAA,EAAc;AAAA,QACV,OAAO,EAAE,KAAA,EAAO,cAAc,OAAA,EAAS,IAAA,EAAM,QAAQ,aAAA;AAAc,OACvE;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,MASA,KAAA,EAAO;AAAA,QACH,KAAA,EAAO;AAAA,UACH,eAAA,EAAiB,YAAA;AAAA,UACjB,KAAA,EAAO,YAAA;AAAA,UACP,YAAA,EAAc,GAAA;AAAA;AAAA,UACd,WAAA,EAAa,EAAA;AAAA,UACb,YAAA,EAAc,CAAA;AAAA,UACd,UAAA,EAAY,CAAA;AAAA,UACZ,aAAA,EAAe,CAAA;AAAA,UACf,QAAA,EAAU,EAAA;AAAA,UACV,UAAA,EAAY,KAAA;AAAA,UACZ,MAAA,EAAQ;AAAA;AACZ,OACJ;AAAA,MACA,SAAA,EAAW;AAAA,QACP,KAAA,EAAO,EAAE,KAAA,EAAO,YAAA,EAAc,YAAY,CAAA,EAAG,QAAA,EAAU,EAAA,EAAI,MAAA,EAAQ,SAAA;AAAU,OACjF;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,MAOA,cAAA,EAAgB;AAAA,QACZ,KAAA,EAAO;AAAA,UACH,eAAA,EAAiB,aAAA;AAAA,UACjB,WAAA,EAAa;AAAA;AACjB;AACJ,KACJ;AAAA;AAAA;AAAA,IAIA,WAAA,EAAa;AAAA,MACT,WAAA,EAAa;AAAA,QACT,KAAA,EAAO;AAAA,UACH,WAAA,EAAa,eAAA;AAAA,UACb,eAAA,EAAiB,aAAA;AAAA,UACjB,YAAA,EAAc;AAAA;AAClB,OACJ;AAAA,MACA,kBAAA,EAAoB;AAAA,QAChB,KAAA,EAAO,EAAE,eAAA,EAAiB,SAAA,EAAW,aAAa,SAAA;AAAU,OAChE;AAAA,MACA,YAAA,EAAc;AAAA,QACV,KAAA,EAAO,EAAE,KAAA,EAAO,iBAAA;AAAkB;AACtC,KACJ;AAAA;AAAA,IAGA,gBAAgB,EAAC;AAAA,IACjB,YAAgB,EAAC;AAAA,IACjB,SAAgB,EAAC;AAAA,IACjB,eAAgB,EAAC;AAAA,IAEjB,YAAA,EAAc;AAAA,MACV,WAAW,EAAE,KAAA,EAAO,EAAE,MAAA,EAAQ,QAAO;AAAE,KAC3C;AAAA;AAAA;AAAA;AAAA;AAAA,IAMA,MAAA,EAAQ;AAAA,MACJ,KAAA,EAAO;AAAA,QACH,KAAA,EAAO;AAAA,UACH,eAAA,EAAiB,WAAA;AAAA,UACjB,YAAA,EAAc,GAAA;AAAA,UACd,UAAA,EAAY;AAAA;AAChB,OACJ;AAAA,MACA,OAAA,EAAS;AAAA,QACL,KAAA,EAAO,EAAE,eAAA,EAAiB,SAAA;AAAU,OACxC;AAAA,MACA,OAAS,EAAE,KAAA,EAAO,EAAE,eAAA,EAAiB,WAAU,EAAE;AAAA,MACjD,SAAS,EAAE,KAAA,EAAO,EAAE,eAAA,EAAiB,WAAU,EAAE;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,MAMjD,KAAA,EAAO;AAAA,QACH,KAAA,EAAO,EAAE,KAAA,EAAO,cAAA,EAAgB,YAAY,KAAA;AAAM;AACtD,KACJ;AAAA;AAAA,IAGA,QAAA,EAAU;AAAA,MACN,WAAW,EAAE,KAAA,EAAO,EAAE,eAAA,EAAiB,eAAc,EAAE;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,MAMvD,MAAM,EAAE,KAAA,EAAO,EAAE,KAAA,EAAO,gBAAe;AAAE,KAC7C;AAAA,IACA,KAAA,EAAO;AAAA,MACH,WAAW,EAAE,KAAA,EAAO,EAAE,eAAA,EAAiB,eAAc,EAAE;AAAA;AAAA;AAAA;AAAA,MAIvD,KAAA,EAAO,EAAE,KAAA,EAAO,EAAE,OAAO,cAAA,EAAgB,UAAA,EAAY,OAAM,EAAE;AAAA,MAC7D,MAAM,EAAE,KAAA,EAAO,EAAE,KAAA,EAAO,gBAAe;AAAE,KAC7C;AAAA;AAAA;AAAA;AAAA,IAKA,IAAA,EAAM;AAAA,MACF,IAAA,EAAM;AAAA,QACF,KAAA,EAAO,EAAE,OAAA,EAAS,UAAA,EAAW;AAAA,QAC7B,KAAA,EAAO;AAAA,UACH,YAAA,EAAc,EAAA;AAAA;AAAA,UACd,OAAA,EAAS,EAAA;AAAA,UACT,eAAA,EAAiB,cAAA;AAAA,UACjB,WAAA,EAAa,CAAA;AAAA,UACb,WAAA,EAAa;AAAA;AACjB,OACJ;AAAA,MACA,QAAS,EAAE,KAAA,EAAO,EAAE,aAAA,EAAe,IAAG,EAAE;AAAA,MACxC,KAAA,EAAS,EAAE,KAAA,EAAO,EAAE,QAAA,EAAU,IAAI,UAAA,EAAY,KAAA,EAAO,KAAA,EAAO,MAAA,EAAO,EAAE;AAAA,MACrE,QAAA,EAAS,EAAE,KAAA,EAAO,EAAE,UAAU,EAAA,EAAI,KAAA,EAAO,kBAAiB,EAAE;AAAA,MAC5D,SAAS,EAAE,KAAA,EAAO,EAAE,OAAA,EAAS,GAAE,EAAE;AAAA,MACjC,QAAS,EAAE,KAAA,EAAO,EAAE,UAAA,EAAY,IAAG;AAAE,KACzC;AAAA;AAAA,IAGA,KAAA,EAAO;AAAA,MACH,IAAA,EAAM;AAAA,QACF,KAAA,EAAO;AAAA,UACH,YAAA,EAAc,GAAA;AAAA;AAAA,UACd,WAAA,EAAa,EAAA;AAAA,UACb,YAAA,EAAc,EAAA;AAAA,UACd,UAAA,EAAY,CAAA;AAAA,UACZ,aAAA,EAAe,CAAA;AAAA,UACf,QAAA,EAAU,EAAA;AAAA,UACV,UAAA,EAAY,KAAA;AAAA,UACZ,aAAA,EAAe;AAAA;AACnB;AACJ,KACJ;AAAA;AAAA,IAGA,KAAA,EAAO;AAAA,MACH,iBAAA,EACI,2EAAA;AAAA,MACJ,yBAAA,EAA2B,+CAAA;AAAA,MAC3B,kBAAA,EAAoB,CAAC,EAAA,EAAI,EAAA,EAAI,IAAI,GAAG,CAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,MAYpC,YAAA,EAAc,CAAA;AAAA,MACd,gBAAA,EAAkB,CAAA;AAAA;AAAA;AAAA,MAIlB,aAAA,EAAe,MAAA;AAAA,MACf,mBAAA,EAAqB,QAAA;AAAA,MACrB,qBAAA,EAAuB,GAAA;AAAA,MACvB,eAAA,EAAiB,IAAA;AAAA,MACjB,uBAAA,EAAyB,OAAA;AAAA,MAEzB,iBAAA,EAAmB,QAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,MAOnB,WAAW,EAAC;AAAA,MACZ,MAAA,EAAQ;AAAA,QACJ,KAAA,EAAO;AAAA,UACH,WAAA,EAAa,EAAA;AAAA,UACb,YAAA,EAAc,EAAA;AAAA,UACd,YAAA,EAAc,WAAA;AAAA,UACd,WAAA,EAAa,WAAA;AAAA,UACb,eAAA,EAAiB;AAAA;AACrB,OACJ;AAAA,MACA,OAAA,EAAS;AAAA,QACL,KAAA,EAAO;AAAA,UACH,WAAA,EAAa,EAAA;AAAA,UACb,YAAA,EAAc,EAAA;AAAA,UACd,UAAA,EAAY,EAAA;AAAA,UACZ,aAAA,EAAe,EAAA;AAAA,UACf,GAAA,EAAK,EAAA;AAAA,UACL,eAAA,EAAiB,WAAA;AAAA,UACjB,YAAA,EAAc,WAAA;AAAA,UACd,WAAA,EAAa;AAAA;AACjB,OACJ;AAAA,MACA,WAAA,EAAa;AAAA,QACT,OAAO,EAAE,QAAA,EAAU,IAAI,UAAA,EAAY,KAAA,EAAO,OAAO,cAAA;AAAe,OACpE;AAAA,MAEA,IAAA,EAAM;AAAA,QACF,KAAA,EAAO;AAAA,UACH,YAAA,EAAc,EAAA;AAAA;AAAA,UACd,QAAA,EAAU,QAAA;AAAA,UACV,eAAA,EAAiB,cAAA;AAAA,UACjB,MAAA,EAAQ,WAAA;AAAA,UACR,WAAA,EAAa;AAAA;AACjB,OACJ;AAAA,MACA,MAAA,EAAQ;AAAA,QACJ,KAAA,EAAO,EAAE,MAAA,EAAQ,MAAA,EAAQ,iBAAiB,aAAA;AAAc,OAC5D;AAAA,MACA,SAAA,EAAW;AAAA,QACP,KAAA,EAAO,EAAE,MAAA,EAAQ,MAAA,EAAQ,iBAAiB,aAAA;AAAc,OAC5D;AAAA,MACA,UAAA,EAAY;AAAA,QACR,KAAA,EAAO;AAAA,UACH,QAAA,EAAU,EAAA;AAAA,UACV,UAAA,EAAY,KAAA;AAAA,UACZ,aAAA,EAAe,WAAA;AAAA,UACf,aAAA,EAAe,QAAA;AAAA,UACf,KAAA,EAAO,gBAAA;AAAA,UACP,WAAA,EAAa,EAAA;AAAA,UACb,YAAA,EAAc,EAAA;AAAA,UACd,UAAA,EAAY,EAAA;AAAA,UACZ,aAAA,EAAe,EAAA;AAAA,UACf,MAAA,EAAQ,MAAA;AAAA,UACR,eAAA,EAAiB;AAAA;AACrB,OACJ;AAAA,MACA,OAAA,EAAS;AAAA,QACL,KAAA,EAAO;AAAA,UACH,MAAA,EAAQ,MAAA;AAAA,UACR,UAAA,EAAY;AAAA;AAChB,OACJ;AAAA;AAAA,MAEA,iBAAA,EAAmB;AAAA,QACf,KAAA,EAAO,EAAE,SAAA,EAAW,+CAAA;AAAgD,OACxE;AAAA,MACA,QAAA,EAAU;AAAA,QACN,KAAA,EAAO;AAAA,UACH,WAAA,EAAa,EAAA;AAAA,UACb,YAAA,EAAc,EAAA;AAAA,UACd,UAAA,EAAY,EAAA;AAAA,UACZ,aAAA,EAAe,EAAA;AAAA,UACf,QAAA,EAAU,EAAA;AAAA,UACV,KAAA,EAAO;AAAA;AACX,OACJ;AAAA,MACA,WAAA,EAAa;AAAA,QACT,KAAA,EAAO;AAAA,UACH,eAAA,EAAiB,aAAA;AAAA,UACjB,WAAA,EAAa,CAAA;AAAA,UACb,YAAA,EAAc,CAAA;AAAA,UACd,UAAA,EAAY,CAAA;AAAA,UACZ,aAAA,EAAe,CAAA;AAAA,UACf,MAAA,EAAQ;AAAA;AACZ,OACJ;AAAA;AAAA;AAAA,MAIA,SAAA,EAAW;AAAA,QACP,KAAA,EAAO;AAAA,UACH,eAAA,EAAiB,WAAA;AAAA,UACjB,SAAA,EAAW,WAAA;AAAA,UACX,WAAA,EAAa;AAAA;AACjB,OACJ;AAAA;AAAA,MAEA,UAAA,EAAY;AAAA,QACR,KAAA,EAAO;AAAA,UACH,eAAA,EAAiB,WAAA;AAAA,UACjB,OAAA,EAAS;AAAA;AACb,OACJ;AAAA;AAAA,MAGA,SAAA,EAAW;AAAA,QACP,KAAA,EAAO;AAAA,UACH,eAAA,EAAiB,IAAA;AAAA,UACjB,MAAA,EAAQ,WAAA;AAAA,UACR,WAAA,EAAa,WAAA;AAAA,UACb,YAAA,EAAc,EAAA;AAAA,UACd,OAAA,EAAS,EAAA;AAAA,UACT,GAAA,EAAK,EAAA;AAAA,UACL,YAAA,EAAc;AAAA;AAClB,OACJ;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,MASA,cAAA,EAAgB;AAAA,QACZ,KAAA,EAAO;AAAA,UACH,eAAA,EAAiB,UAAA;AAAA,UACjB,YAAA,EAAc,CAAA;AAAA;AAAA,UACd,WAAA,EAAa,CAAA;AAAA,UACb,WAAA,EAAa,OAAA;AAAA,UACb,WAAA,EAAa;AAAA;AACjB,OACJ;AAAA,MACA,aAAa,EAAC;AAAA,MACd,WAAA,EAAa;AAAA,QACT,KAAA,EAAO;AAAA,UACH,QAAA,EAAU,EAAA;AAAA,UACV,UAAA,EAAY,KAAA;AAAA,UACZ,aAAA,EAAe,QAAA;AAAA,UACf,KAAA,EAAO,gBAAA;AAAA,UACP,aAAA,EAAe;AAAA;AACnB,OACJ;AAAA;AAAA;AAAA,MAGA,iBAAA,EAAmB;AAAA,QACf,KAAA,EAAO;AAAA,UACH,KAAA,EAAO,gBAAA;AAAA,UACP,OAAA,EAAS;AAAA;AACb,OACJ;AAAA;AAAA;AAAA,MAGA,WAAA,EAAa;AAAA,QACT,KAAA,EAAO;AAAA,UACH,QAAA,EAAU,GAAA;AAAA,UACV,QAAA,EAAU;AAAA;AACd,OACJ;AAAA,MACA,cAAc,EAAE,KAAA,EAAO,EAAE,GAAA,EAAK,GAAE,EAAE;AAAA,MAClC,aAAA,EAAe;AAAA,QACX,KAAA,EAAO,EAAE,MAAA,EAAQ,QAAA,EAAU,OAAO,QAAA,EAAU,OAAA,EAAS,CAAA,EAAG,YAAA,EAAc,CAAA;AAAE,OAC5E;AAAA,MACA,iBAAA,EAAmB;AAAA,QACf,OAAO,EAAE,QAAA,EAAU,UAAU,QAAA,EAAU,IAAA,EAAM,SAAS,KAAA,EAAM;AAAA,QAC5D,KAAA,EAAO,EAAE,MAAA,EAAQ,QAAA,EAAU,OAAO,QAAA,EAAU,OAAA,EAAS,CAAA,EAAG,YAAA,EAAc,CAAA;AAAE,OAC5E;AAAA,MACA,YAAA,EAAc,EAAE,KAAA,EAAO,EAAE,UAAU,GAAA,EAAK,MAAA,EAAQ,UAAS,EAAE;AAAA;AAAA,MAG3D,SAAA,EAAW;AAAA,QACP,KAAA,EAAO;AAAA,UACH,MAAA,EAAQ,MAAA;AAAA,UACR,SAAA,EAAW,WAAA;AAAA,UACX,WAAA,EAAa,WAAA;AAAA,UACb,UAAA,EAAY,EAAA;AAAA,UACZ,aAAA,EAAe,EAAA;AAAA,UACf,WAAA,EAAa,EAAA;AAAA,UACb,YAAA,EAAc,EAAA;AAAA,UACd,eAAA,EAAiB;AAAA;AACrB,OACJ;AAAA,MACA,mBAAA,EAAqB;AAAA,QACjB,KAAA,EAAO,EAAE,KAAA,EAAO,gBAAA,EAAkB,QAAA,EAAU,EAAA,EAAI,MAAA,EAAQ,EAAA,EAAI,YAAA,EAAc,CAAA,EAAG,QAAA,EAAU,EAAA;AAAG,OAC9F;AAAA,MACA,iBAAA,EAAmB;AAAA,QACf,KAAA,EAAO,EAAE,KAAA,EAAO,cAAA,EAAgB,QAAA,EAAU,EAAA,EAAI,MAAA,EAAQ,EAAA,EAAI,YAAA,EAAc,CAAA,EAAG,QAAA,EAAU,EAAA,EAAI,YAAY,KAAA;AAAM,OAC/G;AAAA,MACA,yBAAA,EAA2B;AAAA,QACvB,KAAA,EAAO;AAAA,UACH,eAAA,EAAiB,SAAA;AAAA,UACjB,KAAA,EAAO,iBAAA;AAAA,UACP,MAAA,EAAQ,EAAA;AAAA,UACR,QAAA,EAAU,EAAA;AAAA,UACV,YAAA,EAAc,CAAA;AAAA,UACd,UAAA,EAAY;AAAA;AAChB,OACJ;AAAA,MACA,mBAAA,EAAqB;AAAA,QACjB,KAAA,EAAO,EAAE,KAAA,EAAO,gBAAA,EAAkB,UAAU,EAAA;AAAG,OACnD;AAAA,MACA,oBAAA,EAAsB;AAAA,QAClB,KAAA,EAAO;AAAA,UACH,MAAA,EAAQ,EAAA;AAAA,UACR,cAAA,EAAgB,QAAA;AAAA,UAChB,UAAA,EAAY,QAAA;AAAA,UACZ,KAAA,EAAO,gBAAA;AAAA,UACP,QAAA,EAAU,EAAA;AAAA,UACV,MAAA,EAAQ;AAAA;AACZ,OACJ;AAAA,MACA,4BAAA,EAA8B;AAAA,QAC1B,KAAA,EAAO;AAAA,UACH,MAAA,EAAQ,EAAA;AAAA,UACR,MAAA,EAAQ,WAAA;AAAA,UACR,WAAA,EAAa,WAAA;AAAA,UACb,YAAA,EAAc,CAAA;AAAA,UACd,KAAA,EAAO,cAAA;AAAA,UACP,QAAA,EAAU;AAAA;AACd,OACJ;AAAA,MACA,YAAA,EAAc;AAAA,QACV,KAAA,EAAO;AAAA,UACH,UAAA,EAAY,EAAA;AAAA,UACZ,aAAA,EAAe,EAAA;AAAA,UACf,SAAA,EAAW,QAAA;AAAA,UACX,KAAA,EAAO,aAAA;AAAA,UACP,QAAA,EAAU;AAAA;AACd;AACJ,KACJ;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAmBA,YAAA,EAAc;AAAA,MACV,IAAA,EAAM;AAAA,QACF,KAAA,EAAO;AAAA,UACH,eAAA,EAAiB,cAAA;AAAA,UACjB,YAAA,EAAc,EAAA;AAAA,UACd,QAAA,EAAU;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAUd,OACJ;AAAA,MACA,MAAA,EAAQ;AAAA,QACJ,KAAA,EAAO;AAAA,UACH,WAAA,EAAa,EAAA;AAAA,UAAI,YAAA,EAAc,EAAA;AAAA,UAAI,UAAA,EAAY,EAAA;AAAA,UAAI,aAAA,EAAe,EAAA;AAAA,UAClE,iBAAA,EAAmB,CAAA;AAAA,UACnB,WAAA,EAAa,SAAA;AAAA,UACb,GAAA,EAAK;AAAA;AACT,OACJ;AAAA,MACA,KAAA,EAAO;AAAA,QACH,KAAA,EAAO;AAAA,UACH,QAAA,EAAU,EAAA;AAAA,UACV,UAAA,EAAY,KAAA;AAAA,UACZ,SAAA,EAAW,cAAA;AAAA;AAAA;AAAA;AAAA,UAIX,aAAA,EAAe;AAAA;AACnB,OACJ;AAAA,MACA,OAAA,EAAS;AAAA,QACL,KAAA,EAAO;AAAA,UACH,WAAA,EAAa,EAAA;AAAA,UAAI,YAAA,EAAc,EAAA;AAAA,UAAI,UAAA,EAAY,EAAA;AAAA,UAAI,aAAA,EAAe,EAAA;AAAA;AAAA,UAElE,GAAA,EAAK;AAAA;AACT,OACJ;AAAA;AAAA;AAAA;AAAA,MAIA,SAAA,EAAW;AAAA,QACP,KAAA,EAAO;AAAA,UACH,eAAA,EAAiB,SAAA;AAAA,UACjB,YAAA,EAAc,EAAA;AAAA,UACd,QAAA,EAAU;AAAA;AACd,OACJ;AAAA,MACA,MAAA,EAAQ;AAAA,QACJ,KAAA,EAAO;AAAA,UACH,WAAA,EAAa,EAAA;AAAA,UAAI,YAAA,EAAc,EAAA;AAAA,UAAI,UAAA,EAAY,EAAA;AAAA,UAAI,aAAA,EAAe,EAAA;AAAA,UAClE,cAAA,EAAgB,CAAA;AAAA,UAChB,WAAA,EAAa,SAAA;AAAA,UACb,GAAA,EAAK;AAAA;AACT,OACJ;AAAA,MACA,MAAO,EAAE,KAAA,EAAO,EAAE,SAAA,EAAW,WAAU,EAAE;AAAA,MACzC,IAAA,EAAO,EAAE,KAAA,EAAO,EAAE,UAAU,IAAA,EAAM,SAAA,EAAW,WAAU,EAAE;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,MASzD,OAAY,EAAE,KAAA,EAAO,EAAE,eAAA,EAAiB,sBAAqB,EAAE;AAAA,MAC/D,UAAA,EAAY,EAAE,KAAA,EAAO,EAAE,aAAa,CAAA,EAAG,WAAA,EAAa,WAAU,EAAE;AAAA,MAChE,UAAY,EAAE,KAAA,EAAO,EAAE,eAAA,EAAiB,kBAAiB,EAAE;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,MAW3D,MAAA,EAAQ;AAAA,QACJ,KAAA,EAAO;AAAA,UACH,eAAA,EAAiB,SAAA;AAAA,UACjB,YAAA,EAAc,GAAA;AAAA,UACd,KAAA,EAAO,EAAA;AAAA,UACP,MAAA,EAAQ,EAAA;AAAA,UACR,WAAA,EAAa,CAAA;AAAA,UACb,WAAA,EAAa;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAajB,OACJ;AAAA,MACA,QAAA,EAAU;AAAA,QACN,KAAA,EAAO;AAAA,UACH,eAAA,EAAiB,gBAAA;AAAA,UACjB,SAAA,EAAW,SAAA;AAAA,UACX,YAAA,EAAc,EAAA;AAAA,UACd,WAAA,EAAa,EAAA;AAAA,UAAI,YAAA,EAAc,EAAA;AAAA,UAC/B,MAAA,EAAQ,EAAA;AAAA,UACR,QAAA,EAAU,IAAA;AAAA,UACV,UAAA,EAAY;AAAA;AAChB,OACJ;AAAA;AAAA;AAAA,MAGA,YAAA,EAAc;AAAA,QACV,KAAA,EAAO;AAAA,UACH,WAAA,EAAa,CAAA;AAAA,UACb,WAAA,EAAa,SAAA;AAAA,UACb,YAAA,EAAc,EAAA;AAAA,UACd,QAAA,EAAU,QAAA;AAAA,UACV,eAAA,EAAiB;AAAA;AAAA;AAAA;AAGrB,OACJ;AAAA;AAAA;AAAA;AAAA;AAAA,MAKA,QAAA,EAAU;AAAA,QACN,KAAA,EAAO;AAAA,UACH,WAAA,EAAa,GAAA;AAAA,UACb,WAAA,EAAa,QAAA;AAAA,UACb,WAAA,EAAa,gBAAA;AAAA,UACb,YAAA,EAAc,EAAA;AAAA,UACd,eAAA,EAAiB,SAAA;AAAA,UACjB,OAAA,EAAS,EAAA;AAAA,UACT,GAAA,EAAK;AAAA;AACT,OACJ;AAAA,MACA,YAAA,EAAc,EAAE,KAAA,EAAO,EAAE,eAAA,EAAiB,WAAW,MAAA,EAAQ,CAAA,EAAG,YAAA,EAAc,GAAA,EAAI,EAAE;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,MAcpF,MAAO,EAAE,KAAA,EAAO,EAAE,YAAA,EAAc,GAAE,EAAE;AAAA;AAAA;AAAA,MAGpC,KAAA,EAAO,EAAE,KAAA,EAAO,EAAE,eAAA,EAAiB,kBAAkB,YAAA,EAAc,GAAA,EAAK,MAAA,EAAQ,CAAA,EAAE,EAAE;AAAA,MACpF,KAAA,EAAO,EAAE,KAAA,EAAO,EAAE,iBAAiB,SAAA,EAAW,YAAA,EAAc,KAAI;AAAE,KACtE;AAAA,IAEA,OAAA,EAAS;AAAA,MACL,IAAA,EAAM;AAAA,QACF,KAAA,EAAO;AAAA,UACH,eAAA,EAAiB,iBAAA;AAAA,UACjB,KAAA,EAAO,MAAA;AAAA,UACP,UAAA,EAAY,WAAA;AAAA,UACZ,WAAA,EAAa;AAAA;AACjB,OACJ;AAAA,MACA,MAAA,EAAQ;AAAA,QACJ,KAAA,EAAO;AAAA,UACH,WAAA,EAAa,EAAA;AAAA,UACb,YAAA,EAAc,EAAA;AAAA,UACd,UAAA,EAAY,EAAA;AAAA,UACZ,aAAA,EAAe,EAAA;AAAA,UACf,YAAA,EAAc,WAAA;AAAA,UACd,WAAA,EAAa;AAAA;AACjB,OACJ;AAAA,MACA,WAAA,EAAa;AAAA,QACT,OAAO,EAAE,QAAA,EAAU,IAAI,UAAA,EAAY,KAAA,EAAO,OAAO,MAAA;AAAO,OAC5D;AAAA,MACA,WAAA,EAAa;AAAA,QACT,KAAA,EAAO,EAAE,YAAA,EAAc,KAAA,EAAO,OAAO,aAAA;AAAc,OACvD;AAAA,MACA,OAAA,EAAS;AAAA,QACL,KAAA,EAAO,EAAE,WAAA,EAAa,EAAA,EAAI,cAAc,EAAA,EAAI,UAAA,EAAY,EAAA,EAAI,aAAA,EAAe,EAAA;AAAG,OAClF;AAAA,MACA,IAAA,EAAM;AAAA,QACF,KAAA,EAAO,EAAE,eAAA,EAAiB,wBAAA;AAAyB;AACvD,KACJ;AAAA;AAAA,IAGA,SAAA,EAAW;AAAA,MACP,IAAA,EAAM;AAAA,QACF,KAAA,EAAO;AAAA,UACH,eAAA,EAAiB,cAAA;AAAA,UACjB,MAAA,EAAQ,WAAA;AAAA,UACR,WAAA,EAAa,WAAA;AAAA,UACb,YAAA,EAAc,EAAA;AAAA;AAAA,UACd,QAAA,EAAU;AAAA;AACd,OACJ;AAAA,MACA,KAAA,EAAO;AAAA,QACH,KAAA,EAAO;AAAA,UACH,eAAA,EAAiB,WAAA;AAAA,UACjB,KAAA,EAAO,cAAA;AAAA,UACP,QAAA,EAAU,EAAA;AAAA,UACV,UAAA,EAAY,KAAA;AAAA,UACZ,OAAA,EAAS,EAAA;AAAA,UACT,YAAA,EAAc,WAAA;AAAA,UACd,WAAA,EAAa;AAAA;AACjB,OACJ;AAAA,MACA,MAAA,EAAQ;AAAA,QACJ,KAAA,EAAO;AAAA,UACH,eAAA,EAAiB,aAAA;AAAA,UACjB,KAAA,EAAO,cAAA;AAAA,UACP,WAAA,EAAa,EAAA;AAAA,UACb,YAAA,EAAc,EAAA;AAAA,UACd,UAAA,EAAY,EAAA;AAAA,UACZ,aAAA,EAAe,EAAA;AAAA,UACf,UAAA,EAAY,KAAA;AAAA,UACZ,QAAA,EAAU,EAAA;AAAA,UACV,YAAA,EAAc,WAAA;AAAA,UACd,WAAA,EAAa,WAAA;AAAA,UACb,UAAA,EAAY;AAAA;AAChB,OACJ;AAAA,MACA,YAAA,EAAc;AAAA,QACV,OAAO,EAAE,eAAA,EAAiB,aAAa,KAAA,EAAO,YAAA,EAAc,YAAY,KAAA;AAAM,OAClF;AAAA,MACA,WAAA,EAAa;AAAA,QACT,KAAA,EAAO,EAAE,eAAA,EAAiB,WAAA,EAAa,OAAO,cAAA;AAAe,OACjE;AAAA,MACA,IAAA,EAAM;AAAA,QACF,KAAA,EAAO,EAAE,KAAA,EAAO,gBAAA,EAAkB,YAAY,uCAAA;AAAwC,OAC1F;AAAA,MACA,OAAA,EAAS;AAAA,QACL,KAAA,EAAO;AAAA,UACH,eAAA,EAAiB,cAAA;AAAA,UACjB,KAAA,EAAO,cAAA;AAAA,UACP,OAAA,EAAS,EAAA;AAAA,UACT,YAAA,EAAc,WAAA;AAAA,UACd,WAAA,EAAa;AAAA;AACjB;AACJ,KACJ;AAAA;AAAA,IAGA,KAAA,EAAO;AAAA,MACH,MAAQ,EAAE,KAAA,EAAO,EAAE,GAAA,EAAK,IAAG,EAAE;AAAA;AAAA;AAAA,MAG7B,MAAQ,EAAE,KAAA,EAAO,EAAE,GAAA,EAAK,GAAE,EAAE;AAAA,MAC5B,GAAA,EAAQ,EAAE,KAAA,EAAO,EAAE,KAAK,CAAA,EAAG,aAAA,EAAe,GAAE,EAAE;AAAA,MAC9C,SAAA,EAAc,EAAE,KAAA,EAAO,EAAE,QAAA,EAAU,WAAW,IAAA,EAAM,IAAA,EAAM,QAAA,EAAU,IAAA,EAAK,EAAE;AAAA,MAC3E,YAAA,EAAc,EAAE,KAAA,EAAO,EAAE,QAAA,EAAU,UAAW,IAAA,EAAM,IAAA,EAAM,QAAA,EAAU,IAAA,EAAK;AAAE,KAC/E;AAAA;AAAA,IAGA,MAAA,EAAQ;AAAA,MACJ,IAAA,EAAM;AAAA,QACF,KAAA,EAAO;AAAA,UACH,eAAA,EAAiB,IAAA;AAAA,UACjB,YAAA,EAAc,WAAA;AAAA,UACd,WAAA,EAAa,QAAA;AAAA,UACb,UAAA,EAAY,qEAAA;AAAA,UACZ,WAAA,EAAa,EAAA;AAAA,UACb,YAAA,EAAc,EAAA;AAAA,UACd,UAAA,EAAY,EAAA;AAAA,UACZ,aAAA,EAAe;AAAA;AACnB,OACJ;AAAA,MACA,SAAA,EAAW;AAAA,QACP,OAAO,EAAE,QAAA,EAAU,GAAG,WAAA,EAAa,CAAA,EAAG,cAAc,CAAA;AAAE,OAC1D;AAAA,MACA,gBAAA,EAAkB,EAAE,KAAA,EAAO,EAAE,OAAO,EAAA,EAAI,MAAA,EAAQ,IAAG,EAAE;AAAA,MACrD,YAAA,EAAkB,EAAE,KAAA,EAAO,EAAE,OAAO,EAAA,EAAI,MAAA,EAAQ,IAAG,EAAE;AAAA,MACrD,UAAA,EAAkB,EAAE,KAAA,EAAO,EAAC;AAAE,KAClC;AAAA;AAAA;AAAA;AAAA;AAAA,IAMA,QAAe,EAAE,IAAA,EAAM,EAAE,KAAA,EAAO,EAAE,MAAM,IAAA,EAAM,KAAA,EAAO,UAAU,MAAA,EAAQ,MAAA,EAAQ,MAAM,KAAA,EAAO,SAAA,EAAW,SAAS,aAAA,EAAe,YAAA,IAAe,EAAE;AAAA,IAChJ,WAAA,EAAe,EAAE,IAAA,EAAM,EAAE,OAAO,EAAE,GAAA,EAAK,CAAA,EAAG,IAAA,EAAM,MAAM,OAAA,EAAS,IAAA,EAAM,SAAA,EAAW,OAAA,IAAU,EAAE;AAAA,IAC5F,OAAA,EAAe,EAAE,IAAA,EAAM,EAAE,OAAO,EAAE,OAAA,EAAS,KAAA,EAAO,IAAA,EAAM,MAAM,WAAA,EAAa,OAAA,EAAS,UAAA,EAAY,UAAA,IAAa,EAAE;AAAA,IAC/G,QAAA,EAAe,EAAE,IAAA,EAAM,EAAE,OAAO,EAAE,OAAA,EAAS,MAAA,EAAQ,IAAA,EAAM,MAAM,KAAA,EAAO,MAAA,EAAQ,WAAA,EAAa,OAAA,IAAU,EAAE;AAAA,IACvG,SAAA,EAAe,EAAE,IAAA,EAAM,EAAE,OAAO,EAAE,GAAA,EAAK,CAAA,EAAE,EAAE,EAAE;AAAA,IAC7C,aAAe,EAAE,IAAA,EAAM,EAAE,KAAA,EAAO,EAAE,GAAA,EAAK,GAAA,EAAK,KAAA,EAAO,OAAA,EAAS,YAAY,UAAA,EAAY,SAAA,EAAW,GAAG,OAAA,EAAS,IAAA,IAAO,EAAE;AAAA,IACpH,QAAA,EAAe,EAAE,IAAA,EAAM,EAAE,KAAA,EAAO,EAAE,IAAA,EAAM,IAAA,EAAM,WAAA,EAAa,OAAA,EAAS,UAAA,EAAY,UAAA,IAAa,EAAE;AAAA,IAC/F,UAAA,EAAe,EAAE,IAAA,EAAM,EAAE,KAAA,EAAO,EAAE,IAAA,EAAM,IAAA,EAAM,WAAA,EAAa,OAAA,EAAQ,EAAE,EAAE;AAAA,IACvE,MAAe,EAAE,IAAA,EAAM,EAAE,KAAA,EAAO,EAAE,IAAA,EAAM,IAAA,EAAM,WAAA,EAAa,OAAA,EAAS,YAAY,IAAA,EAAM,GAAA,EAAK,GAAG,YAAA,EAAc,QAAA,EAAU,uBAAuB,cAAA,EAAgB,oBAAA,EAAsB,cAAA,EAAgB,uBAAA,EAAyB,gBAAgB,sBAAA,EAAwB,gBAAA,EAAkB,kBAAA,EAAoB,eAAA,EAAiB,mBAAmB,gBAAA,EAAkB,WAAA,EAAa,EAAE,EAAA,EAAI,IAAI,EAAA,EAAI,EAAA,EAAI,IAAI,EAAA,EAAG,IAAI,EAAE;AAAA,IAC5Y,YAAA,EAAe,EAAE,IAAA,EAAM,EAAE,OAAO,EAAE,WAAA,EAAa,OAAA,EAAS,aAAA,EAAe,kBAAkB,UAAA,EAAY,cAAA,EAAgB,UAAA,EAAY,IAAA,IAAO,EAAE;AAAA,IAC1I,OAAA,EAAe,EAAE,IAAA,EAAM,EAAE,OAAO,EAAE,OAAA,EAAS,CAAA,EAAG,GAAA,EAAK,GAAG,WAAA,EAAa,CAAA,EAAG,MAAA,EAAQ,EAAA,IAAK,EAAE;AAAA,IACrF,QAAA,EAAe,EAAE,IAAA,EAAM,EAAE,OAAO,EAAE,WAAA,EAAa,GAAA,EAAK,MAAA,EAAQ,GAAG,WAAA,EAAa,IAAA,EAAM,QAAA,EAAU,IAAA,IAAO,EAAE;AAAA,IACrG,YAAe,EAAE,IAAA,EAAM,EAAE,KAAA,EAAO,EAAE,OAAA,EAAS,UAAA,EAAY,IAAA,EAAM,SAAA,EAAW,eAAe,UAAA,EAAY,aAAA,EAAe,SAAS,WAAA,EAAa,gBAAA,IAAmB,EAAE;AAAA,IAC7J,eAAA,EAAiB,EAAE,IAAA,EAAM,EAAE,KAAA,EAAO,EAAE,WAAA,EAAa,eAAA,EAAY,WAAA,EAAa,OAAA,EAAQ,EAAE,EAAE;AAAA,IACtF,cAAA,EAAgB,EAAE,IAAA,EAAM,EAAE,OAAO,EAAE,IAAA,EAAM,IAAA,EAAM,KAAA,EAAO,kBAAkB,SAAA,EAAW,OAAA,EAAS,WAAA,EAAa,QAAA,IAAW,EAAE;AAAA,IACtH,aAAA,EAAe,EAAE,IAAA,EAAM,EAAE,KAAA,EAAO,EAAE,KAAA,EAAO,gBAAA,EAAkB,eAAA,EAAiB,eAAA,EAAgB,EAAE,EAAE;AAAA,IAChG,eAAA,EAAiB,EAAE,IAAA,EAAM,EAAE,KAAA,EAAO,EAAE,QAAA,EAAU,gBAAA,EAAkB,MAAA,EAAQ,IAAA,EAAM,WAAA,EAAa,eAAA,IAAkB;AAAE,GACnH;AAAA,EAEA,MAAA,EAAQ;AAAA,IACJ,gBAAA,EAAkB,OAAA;AAAA,IAClB,kBAAA,EAAoB;AAAA;AAE5B;;;;"}
|