@knkcs/anker 1.10.3 → 1.10.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CLAUDE-ANKER.md CHANGED
@@ -92,7 +92,7 @@ Full spec with composition diagrams, slot tables, and authoring rules: `docs/pag
92
92
 
93
93
  ## DataTable cells
94
94
 
95
- anker ships 16 reusable cell components for `<DataTable>` columns under `@knkcs/anker/components/data-table/cells`. **Use cells before composing primitives.** Inline `<Badge>` / `<Box>` / `<Text>` / `<Tooltip>` cell content fragments the visual language and silently misses later improvements (a11y, dark mode, density).
95
+ anker ships 16 reusable cell components for `<DataTable>` columns. They are exported from `@knkcs/anker/components` (the same import path as `DataTable`, `Card`, `Modal`, etc.). **Use cells before composing primitives.** Inline `<Badge>` / `<Box>` / `<Text>` / `<Tooltip>` cell content fragments the visual language and silently misses later improvements (a11y, dark mode, density).
96
96
 
97
97
  **Rule:** cells are the contract — if no cell fits, file an issue and propose a new cell. Don't hand-roll.
98
98
 
@@ -115,7 +115,11 @@ anker ships 16 reusable cell components for `<DataTable>` columns under `@knkcs/
115
115
  | `TruncatedTextCell` | text (+ optional `subText`, `maxLength`) |
116
116
  | `UrlCell` | external URL |
117
117
 
118
- Import path: `@knkcs/anker/components/data-table/cells`.
118
+ Import path: `@knkcs/anker/components`.
119
+
120
+ ```ts
121
+ import { IdentityCell, StatusBadgeCell, DateCell } from "@knkcs/anker/components";
122
+ ```
119
123
 
120
124
  Full slot/prop tables: `docs/react-table-reference.md`. Mapping guide for common column intents: `docs/page-patterns.md` §11.13.
121
125
 
@@ -133,17 +133,21 @@ var buttonTheme = defineRecipe({
133
133
  bg: { base: "gray.100", _dark: "gray.700" }
134
134
  }
135
135
  },
136
- // Outline: white background with subtle hover/active states
136
+ // Outline: white background with subtle hover/active states.
137
+ // Uses the `colorPalette` semantic tokens so the hover/active tints
138
+ // follow whichever palette the consumer set on the Button (e.g.
139
+ // `colorPalette="red"` -> red-tinted hover). Defaults to the
140
+ // `primary` palette via the recipe's `defaultVariants`.
137
141
  outline: {
138
142
  bg: { base: "white", _dark: "gray.800" },
139
143
  _hover: {
140
- bg: { base: "gray.50", _dark: "gray.700/40" }
144
+ bg: { base: "colorPalette.50", _dark: "colorPalette.900/40" }
141
145
  },
142
146
  _checked: {
143
- bg: { base: "gray.100", _dark: "gray.700" }
147
+ bg: { base: "colorPalette.100", _dark: "colorPalette.800" }
144
148
  },
145
149
  _active: {
146
- bg: { base: "gray.100", _dark: "gray.700" }
150
+ bg: { base: "colorPalette.100", _dark: "colorPalette.800" }
147
151
  }
148
152
  },
149
153
  // Ghost: transparent hover that shifts to primary color, gray active
@@ -2162,5 +2166,5 @@ var system = createAnkerTheme();
2162
2166
  var theme_default = system;
2163
2167
 
2164
2168
  export { colors_default, createAnkerTheme, defaultPreset, durations, easings, fonts, getColor, keyframes, radii_default, semantic_default, spacing_default, textStyles, theme_default, transparentize, z_index_default };
2165
- //# sourceMappingURL=chunk-VAUYWBWI.js.map
2166
- //# sourceMappingURL=chunk-VAUYWBWI.js.map
2169
+ //# sourceMappingURL=chunk-UOXSDSBY.js.map
2170
+ //# sourceMappingURL=chunk-UOXSDSBY.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/theme/recipes/button.ts","../src/theme/recipes/card.ts","../src/theme/recipes/checkbox.ts","../src/theme/recipes/comment.ts","../src/theme/recipes/container.ts","../src/theme/recipes/dialog.ts","../src/theme/recipes/drawer.ts","../src/theme/recipes/form-label.ts","../src/theme/recipes/input.ts","../src/theme/recipes/menu.ts","../src/theme/recipes/modal.ts","../src/theme/recipes/persona.ts","../src/theme/recipes/popover.ts","../src/theme/recipes/property.ts","../src/theme/recipes/prose.ts","../src/theme/recipes/radio-card.ts","../src/theme/recipes/separator.ts","../src/theme/recipes/stepper.ts","../src/theme/recipes/table.ts","../src/theme/recipes/tabs.ts","../src/theme/recipes/tag.ts","../src/theme/recipes/textarea.ts","../src/theme/recipes/tooltip.ts","../src/theme/recipes/tree-item.ts","../src/theme/tokens/animations.ts","../src/theme/tokens/colors.ts","../src/theme/tokens/radii.ts","../src/theme/tokens/semantic.ts","../src/theme/tokens/spacing.ts","../src/theme/tokens/typography.ts","../src/theme/tokens/z-index.ts","../src/theme/create-theme.ts","../src/theme/presets/default.ts","../src/theme/utils/color.ts","../src/theme/index.ts"],"names":["defineSlotRecipe","defineRecipe","fonts","colors","durations","easings","radii","textStyles","semanticTokens","setTransparency"],"mappings":"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","file":"chunk-UOXSDSBY.js","sourcesContent":["import { defineRecipe } from \"@chakra-ui/react\";\n\nexport const buttonTheme = defineRecipe({\n\tbase: {\n\t\tlineHeight: \"1.2\",\n\t\tborderRadius: \"md\",\n\t\tfontWeight: \"semibold\",\n\t\ttransitionProperty: \"common\",\n\t\ttransitionDuration: \"normal\",\n\t\t_focusVisible: {\n\t\t\tboxShadow: \"focus-ring\",\n\t\t\toutline: \"none\",\n\t\t},\n\t\t_active: {\n\t\t\ttransform: \"scale(0.98)\",\n\t\t},\n\t\t_disabled: {\n\t\t\topacity: 0.4,\n\t\t\tcursor: \"not-allowed\",\n\t\t\tboxShadow: \"none\",\n\t\t\t_active: {\n\t\t\t\ttransform: \"none\",\n\t\t\t},\n\t\t},\n\t\t_hover: {\n\t\t\t_disabled: {\n\t\t\t\tbg: \"initial\",\n\t\t\t},\n\t\t},\n\t\t// WCAG 2.5.8 touch target: expand hit area to 44×44px minimum\n\t\t// without changing visual size. The pseudo is invisible and captures\n\t\t// pointer events beyond the button's visual bounds.\n\t\t_after: {\n\t\t\tcontent: '\"\"',\n\t\t\tposition: \"absolute\",\n\t\t\ttop: \"50%\",\n\t\t\tinsetInlineStart: \"50%\",\n\t\t\tminWidth: \"44px\",\n\t\t\tminHeight: \"44px\",\n\t\t\ttransform: \"translate(-50%, -50%)\",\n\t\t},\n\t},\n\n\tvariants: {\n\t\tsize: {\n\t\t\txl: {\n\t\t\t\trounded: \"md\",\n\t\t\t\tpx: 3.5,\n\t\t\t\tfontSize: \"sm\",\n\t\t\t\tlineHeight: 1.5,\n\t\t\t\tfontWeight: 600,\n\t\t\t\th: \"10\",\n\t\t\t\tminW: \"10\",\n\t\t\t},\n\t\t\tlg: {\n\t\t\t\trounded: \"md\",\n\t\t\t\tpx: 3,\n\t\t\t\tfontSize: \"sm\",\n\t\t\t\tlineHeight: 1.5,\n\t\t\t\tfontWeight: 600,\n\t\t\t\th: \"9\",\n\t\t\t\tminW: \"9\",\n\t\t\t},\n\t\t\tmd: {\n\t\t\t\trounded: \"md\",\n\t\t\t\tpx: 2.5,\n\t\t\t\tfontSize: \"sm\",\n\t\t\t\tlineHeight: 1.5,\n\t\t\t\tfontWeight: 600,\n\t\t\t\th: \"8\",\n\t\t\t\tminW: \"8\",\n\t\t\t},\n\t\t\tsm: {\n\t\t\t\trounded: \"md\",\n\t\t\t\tpx: 2,\n\t\t\t\tfontSize: \"sm\",\n\t\t\t\tlineHeight: 1.5,\n\t\t\t\tfontWeight: 600,\n\t\t\t\th: \"7\",\n\t\t\t\tminW: \"7\",\n\t\t\t},\n\t\t\txs: {\n\t\t\t\th: \"6\",\n\t\t\t\tminW: \"6\",\n\t\t\t\trounded: \"md\",\n\t\t\t\tpx: 2,\n\t\t\t\tfontSize: \"xs\",\n\t\t\t\tlineHeight: \"1rem\",\n\t\t\t\tfontWeight: 600,\n\t\t\t},\n\t\t},\n\n\t\tvariant: {\n\t\t\t// Solid variant: highlights the current page item\n\t\t\tsolid: {\n\t\t\t\t'&[aria-current=\"page\"]': {\n\t\t\t\t\tbg: \"colorPalette.300\",\n\t\t\t\t\t_dark: {\n\t\t\t\t\t\tbg: \"colorPalette.400\",\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\n\t\t\t// @deprecated Use variant=\"solid\" instead — solid now defaults to\n\t\t\t// colorPalette=\"primary\". This variant will be removed in a future\n\t\t\t// major release.\n\t\t\tprimary: {\n\t\t\t\tbg: \"primary.700\",\n\t\t\t\tcolor: \"white\",\n\t\t\t\t_hover: {\n\t\t\t\t\tbg: \"primary.800\",\n\t\t\t\t\t_disabled: {\n\t\t\t\t\t\tbg: \"primary.700\",\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\t_active: {\n\t\t\t\t\tbg: \"primary.900\",\n\t\t\t\t},\n\t\t\t},\n\n\t\t\t// Secondary: outline style using gray color palette\n\t\t\tsecondary: {\n\t\t\t\tbg: { base: \"white\", _dark: \"gray.800\" },\n\t\t\t\tborderWidth: \"1px\",\n\t\t\t\tborderColor: \"gray.200\",\n\t\t\t\tcolor: \"gray.800\",\n\t\t\t\t_dark: {\n\t\t\t\t\tborderColor: \"gray.600\",\n\t\t\t\t\tcolor: \"gray.200\",\n\t\t\t\t},\n\t\t\t\t_hover: {\n\t\t\t\t\tbg: { base: \"gray.50\", _dark: \"gray.700\" },\n\t\t\t\t},\n\t\t\t\t_active: {\n\t\t\t\t\tbg: { base: \"gray.100\", _dark: \"gray.700\" },\n\t\t\t\t},\n\t\t\t},\n\n\t\t\t// Outline: white background with subtle hover/active states.\n\t\t\t// Uses the `colorPalette` semantic tokens so the hover/active tints\n\t\t\t// follow whichever palette the consumer set on the Button (e.g.\n\t\t\t// `colorPalette=\"red\"` -> red-tinted hover). Defaults to the\n\t\t\t// `primary` palette via the recipe's `defaultVariants`.\n\t\t\toutline: {\n\t\t\t\tbg: { base: \"white\", _dark: \"gray.800\" },\n\t\t\t\t_hover: {\n\t\t\t\t\tbg: { base: \"colorPalette.50\", _dark: \"colorPalette.900/40\" },\n\t\t\t\t},\n\t\t\t\t_checked: {\n\t\t\t\t\tbg: { base: \"colorPalette.100\", _dark: \"colorPalette.800\" },\n\t\t\t\t},\n\t\t\t\t_active: {\n\t\t\t\t\tbg: { base: \"colorPalette.100\", _dark: \"colorPalette.800\" },\n\t\t\t\t},\n\t\t\t},\n\n\t\t\t// Ghost: transparent hover that shifts to primary color, gray active\n\t\t\tghost: {\n\t\t\t\t_hover: {\n\t\t\t\t\tbg: \"transparent\",\n\t\t\t\t\tcolor: \"primary.700\",\n\t\t\t\t},\n\t\t\t\t_active: {\n\t\t\t\t\tbg: \"gray.200\",\n\t\t\t\t},\n\t\t\t},\n\n\t\t\t// Link: no background, text color based on color palette.\n\t\t\tlink: {\n\t\t\t\tcolor: { base: \"colorPalette.600\", _dark: \"colorPalette.200\" },\n\t\t\t\t_hover: {\n\t\t\t\t\tcolor: { base: \"colorPalette.700\", _dark: \"colorPalette.300\" },\n\t\t\t\t\ttextDecoration: \"none\",\n\t\t\t\t},\n\t\t\t\t_active: {\n\t\t\t\t\tcolor: { base: \"colorPalette.700\", _dark: \"colorPalette.300\" },\n\t\t\t\t},\n\t\t\t},\n\n\t\t\t// Link variant for gray colorPalette\n\t\t\t\"link-gray\": {\n\t\t\t\tcolor: \"muted\",\n\t\t\t\t_hover: {\n\t\t\t\t\ttextDecoration: \"none\",\n\t\t\t\t\tcolor: \"default\",\n\t\t\t\t},\n\t\t\t\t_active: {\n\t\t\t\t\tcolor: \"default\",\n\t\t\t\t},\n\t\t\t},\n\t\t},\n\t},\n\n\tdefaultVariants: {\n\t\tsize: \"lg\",\n\t\tvariant: \"solid\",\n\t\tcolorPalette: \"primary\" as never,\n\t},\n});\n","import { defineSlotRecipe } from \"@chakra-ui/react\";\n\nexport const cardSlotRecipe = defineSlotRecipe({\n\tslots: [\"root\", \"header\", \"body\", \"footer\", \"title\", \"description\"],\n\tbase: {\n\t\troot: {\n\t\t\tbg: { base: \"white\", _dark: \"gray.800\" },\n\t\t\ttransitionProperty: \"box-shadow, transform\",\n\t\t\ttransitionDuration: \"normal\",\n\t\t},\n\t},\n\tvariants: {\n\t\tvariant: {\n\t\t\televated: {\n\t\t\t\troot: {\n\t\t\t\t\tboxShadow: \"md\",\n\t\t\t\t\t_hover: {\n\t\t\t\t\t\tboxShadow: \"lg\",\n\t\t\t\t\t\ttransform: \"translateY(-1px)\",\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tflat: {\n\t\t\t\troot: {\n\t\t\t\t\tshadow: \"md\",\n\t\t\t\t},\n\t\t\t},\n\t\t},\n\t},\n\tdefaultVariants: {\n\t\tvariant: \"elevated\",\n\t},\n});\n\nexport default cardSlotRecipe;\n","import { defineSlotRecipe } from \"@chakra-ui/react\";\n\nexport const checkboxSlotRecipe = defineSlotRecipe({\n\tslots: [\"root\", \"label\", \"control\", \"indicator\", \"group\"],\n\tbase: {\n\t\tlabel: {\n\t\t\tcolor: \"muted\",\n\t\t\tfontWeight: \"medium\",\n\t\t},\n\t\tcontrol: {\n\t\t\tbg: { base: \"white\", _dark: \"gray.800\" },\n\t\t\tborderRadius: \"base\",\n\t\t},\n\t},\n\tvariants: {\n\t\tsize: {\n\t\t\tmd: {\n\t\t\t\tlabel: {\n\t\t\t\t\tfontSize: \"sm\",\n\t\t\t\t},\n\t\t\t},\n\t\t},\n\t},\n\tdefaultVariants: {\n\t\tsize: \"md\",\n\t\tcolorPalette: \"primary\" as never,\n\t},\n});\n\nexport default checkboxSlotRecipe;\n","import { defineSlotRecipe } from \"@chakra-ui/react\";\n\nexport const commentSlotRecipe = defineSlotRecipe({\n\tslots: [\n\t\t\"container\",\n\t\t\"avatar\",\n\t\t\"contentContainer\",\n\t\t\"children\",\n\t\t\"field\",\n\t\t\"deletedText\",\n\t],\n\tbase: {\n\t\tcontainer: {\n\t\t\tdisplay: \"grid\",\n\t\t\tposition: \"relative\",\n\t\t\tgap: 2,\n\t\t\tgridTemplateAreas: `\"avatar-area comment-area\" \". nested-comments-area\"`,\n\t\t\tgridTemplateColumns: \"auto 1fr\",\n\t\t\tfontSize: \"sm\",\n\t\t},\n\t\tavatar: {\n\t\t\tgridArea: \"avatar-area\",\n\t\t\tdisplay: \"block\",\n\t\t},\n\t\tcontentContainer: {\n\t\t\tminW: 0,\n\t\t\tpt: 1,\n\t\t\tgridArea: \"comment-area\",\n\t\t\twordWrap: \"break-word\",\n\t\t\tbg: { base: \"gray.50\", _dark: \"gray.700\" },\n\t\t\tborderRadius: \"md\",\n\t\t\tp: 4,\n\t\t},\n\t\tchildren: {\n\t\t\tgridArea: \"nested-comments-area\",\n\t\t\tpaddingTop: 8,\n\t\t},\n\t\tfield: {\n\t\t\tfontWeight: \"inherit\",\n\t\t\t\"&:not(:hover):not(:active)\": {\n\t\t\t\tcolor: { base: \"gray.500\", _dark: \"gray.400\" },\n\t\t\t},\n\t\t},\n\t\tdeletedText: {\n\t\t\tcolor: { base: \"gray.500\", _dark: \"gray.400\" },\n\t\t\tfontStyle: \"italic\",\n\t\t},\n\t},\n});\n\nexport default commentSlotRecipe;\n","import { defineRecipe } from \"@chakra-ui/react\";\n\nexport default defineRecipe({\n\tbase: {\n\t\tmaxW: \"9xl\",\n\t\tpx: { base: \"4\", md: \"8\" },\n\t},\n});\n","import { defineSlotRecipe } from \"@chakra-ui/react\";\n\nexport const dialog = defineSlotRecipe({\n\tslots: [\"content\"],\n\tvariants: {\n\t\tsize: {\n\t\t\t\"7xl\": {\n\t\t\t\tcontent: {\n\t\t\t\t\tmaxW: \"95%\",\n\t\t\t\t\tminH: \"95%\",\n\t\t\t\t\tmaxH: \"95%\",\n\t\t\t\t\tmy: 0,\n\t\t\t\t},\n\t\t\t},\n\t\t},\n\t},\n});\n","import { defineSlotRecipe } from \"@chakra-ui/react\";\n\nexport const drawerTheme = defineSlotRecipe({\n\tslots: [\"content\"],\n\tvariants: {\n\t\tsize: {\n\t\t\txl: {\n\t\t\t\tcontent: { minW: \"50vw\", h: \"100vh\" },\n\t\t\t},\n\t\t\txxl: {\n\t\t\t\tcontent: { minW: \"51vw\", h: \"100vh\", maxW: \"70vw\" },\n\t\t\t},\n\t\t\tfull: {\n\t\t\t\tcontent: { maxW: \"90vw\", h: \"100vh\" },\n\t\t\t},\n\t\t},\n\t},\n});\n","import { defineRecipe } from \"@chakra-ui/react\";\n\nexport default defineRecipe({\n\tbase: {\n\t\tcolor: \"emphasized\",\n\t\tmb: \"1.5\",\n\t\tfontSize: \"sm\",\n\t},\n\tvariants: {\n\t\tsize: {\n\t\t\tsm: {\n\t\t\t\t_peerPlaceholderShown: {\n\t\t\t\t\tfontSize: \"sm\",\n\t\t\t\t\ttop: \"1.5\",\n\t\t\t\t\tinsetInlineStart: \"4\",\n\t\t\t\t},\n\t\t\t},\n\t\t\tmd: {\n\t\t\t\t_peerPlaceholderShown: {\n\t\t\t\t\tfontSize: \"md\",\n\t\t\t\t\ttop: \"2\",\n\t\t\t\t\tinsetInlineStart: \"4\",\n\t\t\t\t},\n\t\t\t},\n\t\t\tlg: {\n\t\t\t\t_peerPlaceholderShown: {\n\t\t\t\t\tfontSize: \"lg\",\n\t\t\t\t\ttop: \"2.5\",\n\t\t\t\t\tinsetInlineStart: \"4\",\n\t\t\t\t},\n\t\t\t},\n\t\t},\n\t\tvariant: {\n\t\t\tinline: {\n\t\t\t\tmargin: 0,\n\t\t\t\tminW: \"2xs\",\n\t\t\t},\n\t\t\tfloating: {\n\t\t\t\tposition: \"absolute\",\n\t\t\t\ttransition: \"all 0.12s ease-in\",\n\t\t\t\tpointerEvents: \"none\",\n\t\t\t\ttop: \"-27px\",\n\t\t\t\tinsetInlineStart: \"0\",\n\t\t\t\t_peerPlaceholderShown: {\n\t\t\t\t\tfontWeight: \"normal\",\n\t\t\t\t\tcolor: \"subtle\",\n\t\t\t\t},\n\t\t\t\t_peerFocus: {\n\t\t\t\t\tfontSize: \"sm\",\n\t\t\t\t\tfontWeight: \"medium\",\n\t\t\t\t\ttop: \"-27px\",\n\t\t\t\t\tinsetInlineStart: \"0\",\n\t\t\t\t\tcolor: \"muted\",\n\t\t\t\t},\n\t\t\t},\n\t\t},\n\t},\n\tdefaultVariants: {\n\t\tsize: \"md\",\n\t},\n});\n","import { defineSlotRecipe } from \"@chakra-ui/react\";\n\n/**\n * FIX: Replaced `blue.500` / `blue.600` references with `primary.500` / `primary.600`.\n * The Core monolith's input recipe used raw `blue.*` references in the link variant\n * which should reference the `primary` palette instead.\n */\nexport const inputSlotRecipe = defineSlotRecipe({\n\tslots: [\"field\", \"addon\"],\n\tvariants: {\n\t\tvariant: {\n\t\t\toutline: {\n\t\t\t\tfield: {\n\t\t\t\t\tborderRadius: \"md\",\n\t\t\t\t\tbg: { base: \"white\", _dark: \"gray.800\" },\n\t\t\t\t\t_hover: { borderColor: { base: \"gray.300\", _dark: \"gray.600\" } },\n\t\t\t\t\t_focus: {\n\t\t\t\t\t\tborderColor: { base: \"primary.700\", _dark: \"primary.300\" },\n\t\t\t\t\t\tboxShadow: \"0px 0px 0px 1px var(--chakra-colors-primary-700)\",\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\taddon: {\n\t\t\t\t\tborderRadius: \"md\",\n\t\t\t\t\tbg: { base: \"gray.50\", _dark: \"gray.700\" },\n\t\t\t\t},\n\t\t\t},\n\t\t\t\"outline-on-accent\": {\n\t\t\t\tfield: {\n\t\t\t\t\tbg: { base: \"white\", _dark: \"gray.800\" },\n\t\t\t\t\tborderRadius: \"md\",\n\t\t\t\t\tcolor: { base: \"gray.900\", _dark: \"gray.100\" },\n\t\t\t\t\tborderWidth: \"1px\",\n\t\t\t\t\tborderColor: { base: \"primary.50\", _dark: \"primary.800\" },\n\t\t\t\t\t_placeholder: {\n\t\t\t\t\t\tcolor: { base: \"gray.500\", _dark: \"gray.400\" },\n\t\t\t\t\t},\n\t\t\t\t\t_hover: {\n\t\t\t\t\t\tborderColor: { base: \"primary.100\", _dark: \"primary.700\" },\n\t\t\t\t\t},\n\t\t\t\t\t_focus: {\n\t\t\t\t\t\tborderColor: { base: \"primary.200\", _dark: \"primary.600\" },\n\t\t\t\t\t\tboxShadow: \"0px 0px 0px 1px var(--chakra-colors-primary-200)\",\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tfilled: {\n\t\t\t\tfield: {\n\t\t\t\t\tbg: { base: \"white\", _dark: \"gray.800\" },\n\t\t\t\t\t_hover: {\n\t\t\t\t\t\tborderColor: { base: \"gray.200\", _dark: \"gray.700\" },\n\t\t\t\t\t\tbg: { base: \"white\", _dark: \"gray.700\" },\n\t\t\t\t\t},\n\t\t\t\t\t_focus: {\n\t\t\t\t\t\tborderColor: \"accent\",\n\t\t\t\t\t\tbg: { base: \"white\", _dark: \"gray.800\" },\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tlink: {\n\t\t\t\tfield: {\n\t\t\t\t\tbackground: \"transparent\",\n\t\t\t\t\tborder: \"none\",\n\t\t\t\t\tboxShadow: \"none\",\n\t\t\t\t\tpadding: 0,\n\t\t\t\t\tminHeight: \"auto\",\n\t\t\t\t\tcolor: \"primary.700\",\n\t\t\t\t\ttextDecoration: \"underline\",\n\t\t\t\t\tcursor: \"pointer\",\n\t\t\t\t\t_hover: {\n\t\t\t\t\t\tcolor: \"primary.800\",\n\t\t\t\t\t\ttextDecoration: \"underline\",\n\t\t\t\t\t},\n\t\t\t\t\t_focus: {\n\t\t\t\t\t\tboxShadow: \"none\",\n\t\t\t\t\t\tcolor: \"primary.800\",\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t},\n\t\tsize: {\n\t\t\tlg: {\n\t\t\t\tfield: {\n\t\t\t\t\tfontSize: \"md\",\n\t\t\t\t\tborderRadius: \"md\",\n\t\t\t\t},\n\t\t\t},\n\t\t},\n\t},\n\tdefaultVariants: {\n\t\tvariant: \"outline\",\n\t\tcolorPalette: \"gray\",\n\t},\n});\n\nexport default inputSlotRecipe;\n","import { defineSlotRecipe } from \"@chakra-ui/react\";\n\nconst $bg = \"--menu-bg\";\nconst $shadow = \"--menu-shadow\";\n\n/**\n * FIX: Replaced `shadows.dark-lg` with semantic shadow token `shadows.lg`\n * (the semantic shadow system already handles dark mode via _dark).\n */\nexport const menuTheme = defineSlotRecipe({\n\tslots: [\"content\", \"item\", \"itemGroupLabel\", \"itemCommand\", \"separator\"],\n\tbase: {\n\t\tcontent: {\n\t\t\t[$bg]: \"colors.white\",\n\t\t\t[$shadow]: \"shadows.md\",\n\t\t\t_dark: {\n\t\t\t\t[$bg]: \"colors.gray.700\",\n\t\t\t\t[$shadow]: \"shadows.lg\",\n\t\t\t},\n\t\t\tcolor: \"inherit\",\n\t\t\tminW: \"3xs\",\n\t\t\tpy: \"2\",\n\t\t\tzIndex: 1,\n\t\t\tborderRadius: \"md\",\n\t\t\tborderWidth: \"1px\",\n\t\t\tbg: `var(${$bg})`,\n\t\t\tboxShadow: `var(${$shadow})`,\n\t\t},\n\t\titem: {\n\t\t\tpy: \"0.4rem\",\n\t\t\tpx: \"0.8rem\",\n\t\t\tfontSize: \"sm\",\n\t\t\tfontWeight: \"normal\",\n\t\t\tcolor: { base: \"gray.800\", _dark: \"gray.100\" },\n\t\t\ttransitionProperty: \"background\",\n\t\t\ttransitionDuration: \"ultra-fast\",\n\t\t\ttransitionTimingFunction: \"ease-in\",\n\t\t\t_focus: {\n\t\t\t\t[$bg]: \"colors.gray.100\",\n\t\t\t\t_dark: {\n\t\t\t\t\t[$bg]: \"colors.whiteAlpha.100\",\n\t\t\t\t},\n\t\t\t},\n\t\t\t_active: {\n\t\t\t\t[$bg]: \"colors.gray.200\",\n\t\t\t\t_dark: {\n\t\t\t\t\t[$bg]: \"colors.whiteAlpha.200\",\n\t\t\t\t},\n\t\t\t},\n\t\t\t_expanded: {\n\t\t\t\t[$bg]: \"colors.gray.100\",\n\t\t\t\t_dark: {\n\t\t\t\t\t[$bg]: \"colors.whiteAlpha.100\",\n\t\t\t\t},\n\t\t\t},\n\t\t\t_disabled: {\n\t\t\t\topacity: 0.4,\n\t\t\t\tcursor: \"not-allowed\",\n\t\t\t},\n\t\t\tbg: `var(${$bg})`,\n\t\t},\n\t\titemGroupLabel: {\n\t\t\tmx: 4,\n\t\t\tmy: 2,\n\t\t\tfontWeight: \"semibold\",\n\t\t\tfontSize: \"sm\",\n\t\t},\n\t\titemCommand: {\n\t\t\topacity: 0.6,\n\t\t},\n\t\tseparator: {\n\t\t\tborder: 0,\n\t\t\tborderBottom: \"1px solid\",\n\t\t\tborderColor: \"inherit\",\n\t\t\tmy: \"2\",\n\t\t\topacity: 0.6,\n\t\t},\n\t},\n});\n","import { defineSlotRecipe } from \"@chakra-ui/react\";\n\nexport const modalSlotRecipe = defineSlotRecipe({\n\tslots: [\"header\", \"closeButton\", \"dialog\", \"backdrop\"],\n\tbase: {\n\t\theader: {\n\t\t\tpx: \"6\",\n\t\t\tpy: \"4\",\n\t\t\tfontSize: \"xl\",\n\t\t\tfontWeight: \"semibold\",\n\t\t\troundedTop: \"md\",\n\t\t},\n\t\tcloseButton: {},\n\t\tbackdrop: {\n\t\t\tbackdropFilter: \"blur(4px)\",\n\t\t},\n\t},\n\tvariants: {\n\t\tsize: {\n\t\t\t\"7xl\": {\n\t\t\t\tdialog: {\n\t\t\t\t\tmaxW: \"95%\",\n\t\t\t\t\tminH: \"95%\",\n\t\t\t\t\tmaxH: \"95%\",\n\t\t\t\t\tmy: 0,\n\t\t\t\t},\n\t\t\t},\n\t\t},\n\t},\n});\n","import { defineSlotRecipe } from \"@chakra-ui/react\";\n\nexport const personaSlotRecipe = defineSlotRecipe({\n\tslots: [\n\t\t\"container\",\n\t\t\"details\",\n\t\t\"avatar\",\n\t\t\"label\",\n\t\t\"secondaryLabel\",\n\t\t\"tertiaryLabel\",\n\t],\n\tbase: {\n\t\tcontainer: {},\n\t\tavatar: {},\n\t\tlabel: {},\n\t\tsecondaryLabel: {\n\t\t\tcolor: { base: \"gray.500\", _dark: \"whiteAlpha.600\" },\n\t\t\toverflow: \"hidden\",\n\t\t\twhiteSpace: \"nowrap\",\n\t\t\ttextOverflow: \"ellipsis\",\n\t\t},\n\t\ttertiaryLabel: {\n\t\t\tcolor: { base: \"gray.500\", _dark: \"whiteAlpha.600\" },\n\t\t\toverflow: \"hidden\",\n\t\t\twhiteSpace: \"nowrap\",\n\t\t\ttextOverflow: \"ellipsis\",\n\t\t},\n\t},\n\tvariants: {\n\t\tsize: {\n\t\t\t\"2xs\": {\n\t\t\t\tdetails: { ms: 2 },\n\t\t\t\tlabel: { fontSize: \"xs\" },\n\t\t\t\tsecondaryLabel: { display: \"none\" },\n\t\t\t\ttertiaryLabel: { display: \"none\" },\n\t\t\t},\n\t\t\txs: {\n\t\t\t\tdetails: { ms: 2 },\n\t\t\t\tlabel: { fontSize: \"md\" },\n\t\t\t\tsecondaryLabel: { display: \"none\" },\n\t\t\t\ttertiaryLabel: { display: \"none\" },\n\t\t\t},\n\t\t\tsm: {\n\t\t\t\tdetails: { ms: 2 },\n\t\t\t\tlabel: { fontSize: \"md\" },\n\t\t\t\tsecondaryLabel: { fontSize: \"sm\" },\n\t\t\t\ttertiaryLabel: { display: \"none\" },\n\t\t\t},\n\t\t\tmd: {\n\t\t\t\tdetails: { ms: 2 },\n\t\t\t\tlabel: { fontSize: \"md\" },\n\t\t\t\tsecondaryLabel: { fontSize: \"sm\" },\n\t\t\t\ttertiaryLabel: { display: \"none\" },\n\t\t\t},\n\t\t\tlg: {\n\t\t\t\tdetails: { ms: 3 },\n\t\t\t\tlabel: { fontSize: \"md\" },\n\t\t\t\tsecondaryLabel: { fontSize: \"sm\" },\n\t\t\t\ttertiaryLabel: { fontSize: \"sm\" },\n\t\t\t},\n\t\t\txl: {\n\t\t\t\tdetails: { ms: 3 },\n\t\t\t\tlabel: { fontSize: \"xl\" },\n\t\t\t\tsecondaryLabel: { fontSize: \"md\" },\n\t\t\t\ttertiaryLabel: { fontSize: \"md\" },\n\t\t\t},\n\t\t\t\"2xl\": {\n\t\t\t\tdetails: { ms: 4 },\n\t\t\t\tlabel: { fontSize: \"2xl\" },\n\t\t\t\tsecondaryLabel: { fontSize: \"lg\" },\n\t\t\t\ttertiaryLabel: { fontSize: \"lg\" },\n\t\t\t},\n\t\t},\n\t},\n\tdefaultVariants: {\n\t\tsize: \"md\",\n\t},\n});\n\nexport default personaSlotRecipe;\n","import { defineSlotRecipe } from \"@chakra-ui/react\";\n\n/**\n * FIX: Replaced `lg-dark` shadow reference with semantic `lg` shadow token.\n * The semantic shadow system handles dark mode via the _dark condition.\n */\nexport const popoverSlotRecipe = defineSlotRecipe({\n\tslots: [\"content\"],\n\tbase: {\n\t\tcontent: {\n\t\t\tborderWidth: \"1px\",\n\t\t\tboxShadow: \"lg\",\n\t\t\tborderRadius: \"md\",\n\t\t\tbackground: \"bg-surface\",\n\t\t\toverflow: \"hidden\",\n\t\t},\n\t},\n});\n\nexport default popoverSlotRecipe;\n","import { defineSlotRecipe } from \"@chakra-ui/react\";\n\nexport const propertyTheme = defineSlotRecipe({\n\tslots: [\"property\", \"label\", \"value\"],\n\tbase: {\n\t\tlabel: {\n\t\t\tcolor: \"muted\",\n\t\t},\n\t},\n});\n","import { defineRecipe } from \"@chakra-ui/react\";\n\nconst TRAILING_PSEUDO_REGEX = /(::?[\\w-]+(?:\\([^)]*\\))?)+$/;\nconst EXCLUDE_CLASSNAME = \".not-prose\";\nfunction inWhere<T extends string>(selector: T): T {\n\tconst rebuiltSelector = selector.startsWith(\"& \")\n\t\t? selector.slice(2)\n\t\t: selector;\n\tconst match = selector.match(TRAILING_PSEUDO_REGEX);\n\tconst pseudo = match ? match[0] : \"\";\n\tconst base = match ? selector.slice(0, -match[0].length) : rebuiltSelector;\n\treturn `& :where(${base}):not(${EXCLUDE_CLASSNAME}, ${EXCLUDE_CLASSNAME} *)${pseudo}` as T;\n}\n\nexport const proseTheme = defineRecipe({\n\tclassName: \"prose\",\n\tbase: {\n\t\tcolor: \"fg.muted\",\n\t\tmaxWidth: \"65ch\",\n\t\tfontSize: \"sm\",\n\t\tlineHeight: \"1.7em\",\n\t\t[inWhere(\"& p\")]: {\n\t\t\tmarginTop: \"1em\",\n\t\t\tmarginBottom: \"1em\",\n\t\t},\n\t\t[inWhere(\"& blockquote\")]: {\n\t\t\tmarginTop: \"1.285em\",\n\t\t\tmarginBottom: \"1.285em\",\n\t\t\tpaddingInline: \"1.285em\",\n\t\t\tborderInlineStartWidth: \"0.25em\",\n\t\t\tcolor: \"fg\",\n\t\t},\n\t\t[inWhere(\"& a\")]: {\n\t\t\tcolor: \"fg\",\n\t\t\ttextDecoration: \"underline\",\n\t\t\ttextUnderlineOffset: \"3px\",\n\t\t\ttextDecorationThickness: \"2px\",\n\t\t\ttextDecorationColor: \"border.muted\",\n\t\t\tfontWeight: \"500\",\n\t\t},\n\t\t[inWhere(\"& strong\")]: {\n\t\t\tfontWeight: \"600\",\n\t\t},\n\t\t[inWhere(\"& a strong\")]: {\n\t\t\tcolor: \"inherit\",\n\t\t},\n\t\t[inWhere(\"& em\")]: {\n\t\t\tfontStyle: \"italic\",\n\t\t},\n\t\t[inWhere(\"& h1\")]: {\n\t\t\tfontSize: \"2.15em\",\n\t\t\tletterSpacing: \"-0.02em\",\n\t\t\tmarginTop: \"0\",\n\t\t\tmarginBottom: \"0.8em\",\n\t\t\tlineHeight: \"1.2em\",\n\t\t},\n\t\t[inWhere(\"& h2\")]: {\n\t\t\tfontSize: \"1.65em\",\n\t\t\tletterSpacing: \"-0.02em\",\n\t\t\tmarginTop: \"1.6em\",\n\t\t\tmarginBottom: \"0.8em\",\n\t\t\tlineHeight: \"1.3em\",\n\t\t},\n\t\t[inWhere(\"& h3\")]: {\n\t\t\tfontSize: \"1.35em\",\n\t\t\tletterSpacing: \"-0.01em\",\n\t\t\tmarginTop: \"1.5em\",\n\t\t\tmarginBottom: \"0.4em\",\n\t\t\tlineHeight: \"1.4em\",\n\t\t},\n\t\t[inWhere(\"& h4\")]: {\n\t\t\tmarginTop: \"1.4em\",\n\t\t\tmarginBottom: \"0.5em\",\n\t\t\tletterSpacing: \"-0.01em\",\n\t\t\tlineHeight: \"1.5em\",\n\t\t},\n\t\t[inWhere(\"& img\")]: {\n\t\t\tmarginTop: \"1.7em\",\n\t\t\tmarginBottom: \"1.7em\",\n\t\t\tborderRadius: \"lg\",\n\t\t\tboxShadow: \"inset\",\n\t\t},\n\t\t[inWhere(\"& picture\")]: {\n\t\t\tmarginTop: \"1.7em\",\n\t\t\tmarginBottom: \"1.7em\",\n\t\t},\n\t\t[inWhere(\"& picture > img\")]: {\n\t\t\tmarginTop: \"0\",\n\t\t\tmarginBottom: \"0\",\n\t\t},\n\t\t[inWhere(\"& video\")]: {\n\t\t\tmarginTop: \"1.7em\",\n\t\t\tmarginBottom: \"1.7em\",\n\t\t},\n\t\t[inWhere(\"& kbd\")]: {\n\t\t\tfontSize: \"0.85em\",\n\t\t\tborderRadius: \"xs\",\n\t\t\tpaddingTop: \"0.15em\",\n\t\t\tpaddingBottom: \"0.15em\",\n\t\t\tpaddingInlineEnd: \"0.35em\",\n\t\t\tpaddingInlineStart: \"0.35em\",\n\t\t\tfontFamily: \"inherit\",\n\t\t\tcolor: \"fg.muted\",\n\t\t\t\"--shadow\": \"colors.border\",\n\t\t\tboxShadow: \"0 0 0 1px var(--shadow), 0 1px 0 1px var(--shadow)\",\n\t\t},\n\t\t[inWhere(\"& code\")]: {\n\t\t\tfontSize: \"0.925em\",\n\t\t\tbg: \"bg.muted\",\n\t\t\tletterSpacing: \"-0.01em\",\n\t\t\tlineHeight: \"1\",\n\t\t\tborderRadius: \"md\",\n\t\t\tborderWidth: \"1px\",\n\t\t\tpaddingInline: \"0.25em\",\n\t\t},\n\t\t[inWhere(\"& pre code\")]: {\n\t\t\tfontSize: \"inherit\",\n\t\t\tletterSpacing: \"inherit\",\n\t\t\tborderWidth: \"inherit\",\n\t\t\tpadding: \"0\",\n\t\t\tbg: \"transparent\",\n\t\t},\n\t\t[inWhere(\"& h2 code\")]: {\n\t\t\tfontSize: \"0.9em\",\n\t\t},\n\t\t[inWhere(\"& h3 code\")]: {\n\t\t\tfontSize: \"0.8em\",\n\t\t},\n\t\t[inWhere(\"& pre\")]: {\n\t\t\tbackgroundColor: \"bg.muted\",\n\t\t\tmarginTop: \"1.6em\",\n\t\t\tmarginBottom: \"1.6em\",\n\t\t\tborderRadius: \"md\",\n\t\t\tfontSize: \"0.9em\",\n\t\t\tpaddingTop: \"0.65em\",\n\t\t\tpaddingBottom: \"0.65em\",\n\t\t\tpaddingInlineEnd: \"1em\",\n\t\t\tpaddingInlineStart: \"1em\",\n\t\t\toverflowX: \"auto\",\n\t\t\tfontWeight: \"400\",\n\t\t},\n\t\t[inWhere(\"& ol\")]: {\n\t\t\tmarginTop: \"1em\",\n\t\t\tmarginBottom: \"1em\",\n\t\t\tpaddingInlineStart: \"1.5em\",\n\t\t},\n\t\t[inWhere(\"& ul\")]: {\n\t\t\tmarginTop: \"1em\",\n\t\t\tmarginBottom: \"1em\",\n\t\t\tpaddingInlineStart: \"1.5em\",\n\t\t},\n\t\t[inWhere(\"& li\")]: {\n\t\t\tmarginTop: \"0.285em\",\n\t\t\tmarginBottom: \"0.285em\",\n\t\t},\n\t\t[inWhere(\"& ol > li\")]: {\n\t\t\tpaddingInlineStart: \"0.4em\",\n\t\t\tlistStyleType: \"decimal\",\n\t\t\t\"&::marker\": {\n\t\t\t\tcolor: \"fg.muted\",\n\t\t\t},\n\t\t},\n\t\t[inWhere(\"& ul > li\")]: {\n\t\t\tpaddingInlineStart: \"0.4em\",\n\t\t\tlistStyleType: \"disc\",\n\t\t\t\"&::marker\": {\n\t\t\t\tcolor: \"fg.muted\",\n\t\t\t},\n\t\t},\n\t\t[inWhere(\"& > ul > li p\")]: {\n\t\t\tmarginTop: \"0.5em\",\n\t\t\tmarginBottom: \"0.5em\",\n\t\t},\n\t\t[inWhere(\"& > ol > li p\")]: {\n\t\t\tmarginTop: \"0.5em\",\n\t\t\tmarginBottom: \"0.5em\",\n\t\t},\n\t\t[inWhere(\"& > ul > li > p:first-of-type\")]: {\n\t\t\tmarginTop: \"0em\",\n\t\t},\n\t\t[inWhere(\"& > ul > li > p:last-of-type\")]: {\n\t\t\tmarginBottom: \"0em\",\n\t\t},\n\t\t[inWhere(\"& > ol > li > p:first-of-type\")]: {\n\t\t\tmarginTop: \"0em\",\n\t\t},\n\t\t[inWhere(\"& > ol > li > p:last-of-type\")]: {\n\t\t\tmarginBottom: \"0em\",\n\t\t},\n\t\t[inWhere(\"& ul ul, ul ol, ol ul, ol ol\")]: {\n\t\t\tmarginTop: \"0.5em\",\n\t\t\tmarginBottom: \"0.5em\",\n\t\t},\n\t\t[inWhere(\"& dl\")]: {\n\t\t\tmarginTop: \"1em\",\n\t\t\tmarginBottom: \"1em\",\n\t\t},\n\t\t[inWhere(\"& dt\")]: {\n\t\t\tfontWeight: \"600\",\n\t\t\tmarginTop: \"1em\",\n\t\t},\n\t\t[inWhere(\"& dd\")]: {\n\t\t\tmarginTop: \"0.285em\",\n\t\t\tpaddingInlineStart: \"1.5em\",\n\t\t},\n\t\t[inWhere(\"& hr\")]: {\n\t\t\tmarginTop: \"2.25em\",\n\t\t\tmarginBottom: \"2.25em\",\n\t\t},\n\t\t[inWhere(\"& :is(h1,h2,h3,h4,h5,hr) + *\")]: {\n\t\t\tmarginTop: \"0\",\n\t\t},\n\t\t[inWhere(\"& table\")]: {\n\t\t\twidth: \"100%\",\n\t\t\ttableLayout: \"auto\",\n\t\t\ttextAlign: \"start\",\n\t\t\tlineHeight: \"1.5em\",\n\t\t\tmarginTop: \"2em\",\n\t\t\tmarginBottom: \"2em\",\n\t\t},\n\t\t[inWhere(\"& thead\")]: {\n\t\t\tborderBottomWidth: \"1px\",\n\t\t\tcolor: \"fg\",\n\t\t},\n\t\t[inWhere(\"& tbody tr\")]: {\n\t\t\tborderBottomWidth: \"1px\",\n\t\t\tborderBottomColor: \"border\",\n\t\t},\n\t\t[inWhere(\"& thead th\")]: {\n\t\t\tpaddingInlineEnd: \"1em\",\n\t\t\tpaddingBottom: \"0.65em\",\n\t\t\tpaddingInlineStart: \"1em\",\n\t\t\tfontWeight: \"medium\",\n\t\t\ttextAlign: \"start\",\n\t\t},\n\t\t[inWhere(\"& thead th:first-of-type\")]: {\n\t\t\tpaddingInlineStart: \"0\",\n\t\t},\n\t\t[inWhere(\"& thead th:last-of-type\")]: {\n\t\t\tpaddingInlineEnd: \"0\",\n\t\t},\n\t\t[inWhere(\"& tbody td, tfoot td\")]: {\n\t\t\tpaddingTop: \"0.65em\",\n\t\t\tpaddingInlineEnd: \"1em\",\n\t\t\tpaddingBottom: \"0.65em\",\n\t\t\tpaddingInlineStart: \"1em\",\n\t\t},\n\t\t[inWhere(\"& tbody td:first-of-type, tfoot td:first-of-type\")]: {\n\t\t\tpaddingInlineStart: \"0\",\n\t\t},\n\t\t[inWhere(\"& tbody td:last-of-type, tfoot td:last-of-type\")]: {\n\t\t\tpaddingInlineEnd: \"0\",\n\t\t},\n\t\t[inWhere(\"& figure\")]: {\n\t\t\tmarginTop: \"1.625em\",\n\t\t\tmarginBottom: \"1.625em\",\n\t\t},\n\t\t[inWhere(\"& figure > *\")]: {\n\t\t\tmarginTop: \"0\",\n\t\t\tmarginBottom: \"0\",\n\t\t},\n\t\t[inWhere(\"& figcaption\")]: {\n\t\t\tfontSize: \"0.85em\",\n\t\t\tlineHeight: \"1.25em\",\n\t\t\tmarginTop: \"0.85em\",\n\t\t\tcolor: \"fg.muted\",\n\t\t},\n\t\t[inWhere(\"& h1, h2, h3, h4, h5, h6\")]: {\n\t\t\tcolor: \"fg\",\n\t\t\tfontWeight: \"600\",\n\t\t},\n\t},\n\tvariants: {\n\t\tsize: {\n\t\t\tmd: {\n\t\t\t\tfontSize: \"sm\",\n\t\t\t},\n\t\t\tlg: {\n\t\t\t\tfontSize: \"md\",\n\t\t\t},\n\t\t},\n\t},\n\tdefaultVariants: {\n\t\tsize: \"md\",\n\t},\n});\n","import { defineRecipe } from \"@chakra-ui/react\";\n\nexport const radioCardTheme = defineRecipe({\n\tbase: {\n\t\tborderWidth: \"1px\",\n\t\tborderRadius: \"md\",\n\t\tp: \"4\",\n\t\tbg: \"bg-surface\",\n\t\ttransitionProperty: \"common\",\n\t\ttransitionDuration: \"normal\",\n\t\t_hover: {\n\t\t\tborderColor: { base: \"gray.300\", _dark: \"gray.600\" },\n\t\t},\n\t\t_checked: {\n\t\t\tborderColor: { base: \"primary.700\", _dark: \"primary.300\" },\n\t\t\tboxShadow: {\n\t\t\t\tbase: \"0px 0px 0px 1px var(--chakra-colors-primary-700)\",\n\t\t\t\t_dark: \"0px 0px 0px 1px var(--chakra-colors-primary-300)\",\n\t\t\t},\n\t\t},\n\t},\n});\n","import { defineRecipe } from \"@chakra-ui/react\";\n\nexport default defineRecipe({\n\tbase: {\n\t\topacity: 1,\n\t},\n});\n","import { defineSlotRecipe } from \"@chakra-ui/react\";\n\n/**\n * FIX: Replaced `colorPalette: \"blue\"` with `colorPalette: \"primary\"` in\n * defaultVariants to use our primary palette consistently.\n */\nexport const stepperTheme = defineSlotRecipe({\n\tslots: [\n\t\t\"container\",\n\t\t\"steps\",\n\t\t\"icon\",\n\t\t\"content\",\n\t\t\"title\",\n\t\t\"separator\",\n\t\t\"step\",\n\t],\n\tbase: {\n\t\tcontainer: {\n\t\t\tdisplay: \"flex\",\n\t\t\tflexDirection: \"column\",\n\t\t\tpy: 4,\n\t\t},\n\t\tsteps: {\n\t\t\tdisplay: \"flex\",\n\t\t\tmb: 4,\n\t\t},\n\t\tstep: {\n\t\t\tdisplay: \"flex\",\n\t\t\talignItems: \"center\",\n\t\t\tflexDirection: \"row\",\n\t\t},\n\t\ticon: {\n\t\t\tdisplay: \"flex\",\n\t\t\talignItems: \"center\",\n\t\t\tjustifyContent: \"center\",\n\t\t\tborderRadius: \"full\",\n\t\t\tfontSize: \"1em\",\n\t\t\tbg: \"whiteAlpha.400\",\n\t\t\tlineHeight: 1,\n\t\t\tflexShrink: 0,\n\t\t\ttransitionProperty: \"common\",\n\t\t\ttransitionDuration: \"normal\",\n\t\t},\n\t\tseparator: {\n\t\t\tflex: 1,\n\t\t\ttransitionProperty: \"common\",\n\t\t\ttransitionDuration: \"normal\",\n\t\t},\n\t},\n\tvariants: {\n\t\tvariant: {\n\t\t\tsubtle: {\n\t\t\t\ticon: {\n\t\t\t\t\tbg: \"blackAlpha.300\",\n\t\t\t\t\tcolor: \"blackAlpha.600\",\n\t\t\t\t\t_dark: {\n\t\t\t\t\t\tbg: \"whiteAlpha.200\",\n\t\t\t\t\t\tcolor: \"whiteAlpha.600\",\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tstep: {\n\t\t\t\t\t\"&[data-active] .stepper__icon, &[data-completed] .stepper__icon\": {\n\t\t\t\t\t\tbg: \"colorPalette.muted\",\n\t\t\t\t\t\tcolor: \"colorPalette.fg\",\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tseparator: {\n\t\t\t\t\t\"&[data-active]\": {\n\t\t\t\t\t\tbg: \"colorPalette.emphasized\",\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tsolid: {\n\t\t\t\ticon: {\n\t\t\t\t\tbg: \"gray.300\",\n\t\t\t\t\tcolor: \"gray.600\",\n\t\t\t\t\t_dark: {\n\t\t\t\t\t\tbg: \"gray.600\",\n\t\t\t\t\t\tcolor: \"gray.400\",\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tstep: {\n\t\t\t\t\t\"&[data-active] .stepper__icon\": {\n\t\t\t\t\t\tbg: \"colorPalette.muted\",\n\t\t\t\t\t\tborderColor: \"colorPalette.solid\",\n\t\t\t\t\t\tcolor: \"colorPalette.fg\",\n\t\t\t\t\t},\n\t\t\t\t\t\"&[data-completed] .stepper__icon\": {\n\t\t\t\t\t\tbg: \"colorPalette.solid\",\n\t\t\t\t\t\tcolor: \"colorPalette.contrast\",\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tseparator: {\n\t\t\t\t\t\"&[data-active]\": {\n\t\t\t\t\t\tborderColor: \"colorPalette.solid\",\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t},\n\t\tsize: {\n\t\t\tmd: {\n\t\t\t\ticon: {\n\t\t\t\t\tboxSize: 6,\n\t\t\t\t\tfontSize: \"sm\",\n\t\t\t\t},\n\t\t\t\ttitle: {\n\t\t\t\t\tfontSize: \"md\",\n\t\t\t\t},\n\t\t\t},\n\t\t\tlg: {\n\t\t\t\ticon: {\n\t\t\t\t\tboxSize: 8,\n\t\t\t\t},\n\t\t\t\ttitle: {\n\t\t\t\t\tfontSize: \"lg\",\n\t\t\t\t},\n\t\t\t},\n\t\t},\n\t\torientation: {\n\t\t\tvertical: {\n\t\t\t\tsteps: {\n\t\t\t\t\tflexDirection: \"column\",\n\t\t\t\t\talignItems: \"stretch\",\n\t\t\t\t},\n\t\t\t\ticon: {\n\t\t\t\t\tme: 2,\n\t\t\t\t},\n\t\t\t\tseparator: {\n\t\t\t\t\tminHeight: 4,\n\t\t\t\t\tborderLeftWidth: 1,\n\t\t\t\t\tborderTopWidth: 0,\n\t\t\t\t\tmx: 3,\n\t\t\t\t},\n\t\t\t\tcontent: {\n\t\t\t\t\tborderLeftWidth: 1,\n\t\t\t\t\tms: 3,\n\t\t\t\t\tps: 5,\n\t\t\t\t},\n\t\t\t},\n\t\t\thorizontal: {\n\t\t\t\tsteps: {\n\t\t\t\t\tflexDirection: \"row\",\n\t\t\t\t\talignItems: { base: \"flex-start\", sm: \"center\" },\n\t\t\t\t\tposition: \"relative\",\n\t\t\t\t},\n\t\t\t\ticon: {\n\t\t\t\t\tme: { base: 0, sm: 2 },\n\t\t\t\t},\n\t\t\t\ttitle: {\n\t\t\t\t\tmt: { base: 2, sm: 0 },\n\t\t\t\t\ttextAlign: \"center\",\n\t\t\t\t},\n\t\t\t\tseparator: {\n\t\t\t\t\tborderTopWidth: 1,\n\t\t\t\t\tmx: { base: 0, sm: 3 },\n\t\t\t\t\tmt: { base: 5, sm: 0 },\n\t\t\t\t\talignSelf: { base: \"flex-start\", sm: \"center\" },\n\t\t\t\t\tflex: { base: \"inherit\", sm: 1 },\n\t\t\t\t},\n\t\t\t},\n\t\t},\n\t},\n\tdefaultVariants: {\n\t\tvariant: \"solid\",\n\t\tcolorPalette: \"primary\" as never,\n\t\tsize: \"lg\",\n\t\torientation: \"horizontal\",\n\t},\n});\n","import { defineSlotRecipe } from \"@chakra-ui/react\";\n\n/**\n * FIX: Replaced `blue.50` in the hoverable variant body with `primary.50`\n * to use the primary palette consistently.\n */\nexport const tableTheme = defineSlotRecipe({\n\tslots: [\n\t\t\"root\",\n\t\t\"header\",\n\t\t\"body\",\n\t\t\"footer\",\n\t\t\"row\",\n\t\t\"columnHeader\",\n\t\t\"cell\",\n\t\t\"caption\",\n\t],\n\tbase: {\n\t\troot: {\n\t\t\twhiteSpace: \"nowrap\",\n\t\t\ttableLayout: \"fixed\",\n\t\t\ttextIndent: 0,\n\t\t},\n\t\tcolumnHeader: {\n\t\t\tpy: 3,\n\t\t\tpx: 3,\n\t\t\ttextAlign: \"start\",\n\t\t\tfontSize: \"xs\",\n\t\t\tfontWeight: \"600\",\n\t\t\ttextTransform: \"uppercase\",\n\t\t\tletterSpacing: \"wider\",\n\t\t\tcolor: \"gray.500\",\n\t\t\tbg: \"gray.50\",\n\t\t\tborderBottomWidth: \"1px\",\n\t\t\tborderColor: \"border\",\n\t\t},\n\t\tcell: {\n\t\t\tfontSize: \"sm\",\n\t\t\tpy: 3,\n\t\t\tpx: 3,\n\t\t\twhiteSpace: \"nowrap\",\n\t\t\tborderColor: \"border\",\n\t\t},\n\t\trow: {\n\t\t\tbg: \"bg-surface\",\n\t\t\t_hover: {\n\t\t\t\tbg: \"gray.50\",\n\t\t\t},\n\t\t},\n\t},\n\tvariants: {\n\t\tvariant: {\n\t\t\tline: {\n\t\t\t\tcolumnHeader: {\n\t\t\t\t\tborderBottomWidth: \"1px\",\n\t\t\t\t\tborderColor: \"border\",\n\t\t\t\t},\n\t\t\t\tcell: {\n\t\t\t\t\tborderBottomWidth: \"1px\",\n\t\t\t\t\tborderColor: \"border\",\n\t\t\t\t},\n\t\t\t\trow: {\n\t\t\t\t\tbg: \"bg-surface\",\n\t\t\t\t},\n\t\t\t},\n\t\t\tstriped: {\n\t\t\t\tbody: {\n\t\t\t\t\t\"& tr:nth-of-type(odd) td\": {\n\t\t\t\t\t\tbg: \"gray.50\",\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\thoverable: {\n\t\t\t\tbody: {\n\t\t\t\t\t\"& tr:hover\": {\n\t\t\t\t\t\tbg: \"primary.50\",\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t},\n\t},\n\tdefaultVariants: {\n\t\tvariant: \"line\",\n\t},\n});\n","import { defineSlotRecipe } from \"@chakra-ui/react\";\n\nexport const tabTheme = defineSlotRecipe({\n\tslots: [\"root\", \"list\", \"trigger\", \"content\", \"contentGroup\", \"indicator\"],\n\tvariants: {\n\t\tvariant: {\n\t\t\t\"with-line\": {\n\t\t\t\tlist: {\n\t\t\t\t\tborderBottom: \"1px solid\",\n\t\t\t\t\tborderColor: \"border\",\n\t\t\t\t},\n\t\t\t\ttrigger: {\n\t\t\t\t\tcolor: \"muted\",\n\t\t\t\t\tborderBottom: \"2px solid transparent\",\n\t\t\t\t\tmarginBottom: \"-1px\",\n\t\t\t\t\tpt: \"0\",\n\t\t\t\t\tpb: \"4.5\",\n\t\t\t\t\tpx: \"1\",\n\t\t\t\t\tjustifyContent: \"start\",\n\t\t\t\t\t\"&:not(:last-child)\": {\n\t\t\t\t\t\tme: \"4\",\n\t\t\t\t\t},\n\t\t\t\t\t_selected: {\n\t\t\t\t\t\tcolor: \"colorPalette.solid\",\n\t\t\t\t\t\tborderBottom: \"2px solid\",\n\t\t\t\t\t\tborderBottomColor: \"colorPalette.solid\",\n\t\t\t\t\t},\n\t\t\t\t\t_active: {\n\t\t\t\t\t\tbg: \"transparent\",\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\t\"with-line-vertical\": {\n\t\t\t\tlist: {\n\t\t\t\t\tborderStart: \"1px solid\",\n\t\t\t\t\tborderColor: \"border\",\n\t\t\t\t},\n\t\t\t\ttrigger: {\n\t\t\t\t\tcolor: \"muted\",\n\t\t\t\t\tborderStart: \"2px solid transparent\",\n\t\t\t\t\tmarginStart: \"-1px\",\n\t\t\t\t\tjustifyContent: \"start\",\n\t\t\t\t\tpx: \"3\",\n\t\t\t\t\t\"&:not(:last-child)\": {\n\t\t\t\t\t\tmb: \"2\",\n\t\t\t\t\t},\n\t\t\t\t\t_selected: {\n\t\t\t\t\t\tcolor: \"colorPalette.solid\",\n\t\t\t\t\t\tborderStartColor: \"colorPalette.solid\",\n\t\t\t\t\t},\n\t\t\t\t\t_active: {\n\t\t\t\t\t\tbg: \"transparent\",\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t},\n\t},\n});\n","import { defineRecipe } from \"@chakra-ui/react\";\n\nexport const tagTheme = defineRecipe({\n\tbase: {\n\t\tlineHeight: \"1.2\",\n\t\tborderRadius: \"md\",\n\t\tfontWeight: \"semibold\",\n\t\ttransitionProperty: \"common\",\n\t\ttransitionDuration: \"normal\",\n\t\t_focusVisible: {\n\t\t\tboxShadow: \"none\",\n\t\t\toutlineOffset: \"2px\",\n\t\t\toutlineWidth: \"2px\",\n\t\t\toutlineStyle: \"solid\",\n\t\t\toutlineColor: \"primary.700\",\n\t\t},\n\t\t_disabled: {\n\t\t\topacity: 0.4,\n\t\t\tcursor: \"not-allowed\",\n\t\t\tboxShadow: \"none\",\n\t\t},\n\t\t_hover: {\n\t\t\t_disabled: {\n\t\t\t\tbg: \"initial\",\n\t\t\t},\n\t\t},\n\t},\n\tvariants: {\n\t\tvariant: {\n\t\t\tsolid: {\n\t\t\t\t'&[aria-current=\"page\"]': {\n\t\t\t\t\tbg: { base: \"colorPalette.300\", _dark: \"colorPalette.400\" },\n\t\t\t\t},\n\t\t\t},\n\t\t\tprimary: {\n\t\t\t\tbg: { base: \"primary.300\", _dark: \"primary.400\" },\n\t\t\t},\n\t\t\tsecondary: {\n\t\t\t\tborderWidth: \"1px\",\n\t\t\t\tbg: { base: \"white\", _dark: \"gray.800\" },\n\t\t\t\tcolor: { base: \"gray.800\", _dark: \"whiteAlpha.900\" },\n\t\t\t},\n\t\t\toutline: {\n\t\t\t\tbg: { base: \"white\", _dark: \"gray.800\" },\n\t\t\t\t_hover: {\n\t\t\t\t\tbg: { base: \"gray.50\", _dark: \"gray.700/40\" },\n\t\t\t\t},\n\t\t\t\t_checked: {\n\t\t\t\t\tbg: { base: \"gray.100\", _dark: \"gray.700\" },\n\t\t\t\t},\n\t\t\t\t_active: {\n\t\t\t\t\tbg: { base: \"gray.100\", _dark: \"gray.700\" },\n\t\t\t\t},\n\t\t\t},\n\t\t\tghost: {\n\t\t\t\t_hover: {\n\t\t\t\t\tbg: \"transparent\",\n\t\t\t\t\tcolor: \"primary.700\",\n\t\t\t\t},\n\t\t\t\t_active: {\n\t\t\t\t\tbg: \"transparent\",\n\t\t\t\t},\n\t\t\t},\n\t\t\tlink: {\n\t\t\t\tcolor: { base: \"colorPalette.600\", _dark: \"colorPalette.200\" },\n\t\t\t\t_hover: {\n\t\t\t\t\tcolor: { base: \"colorPalette.700\", _dark: \"colorPalette.300\" },\n\t\t\t\t\ttextDecoration: \"none\",\n\t\t\t\t},\n\t\t\t\t_active: {\n\t\t\t\t\tcolor: { base: \"colorPalette.700\", _dark: \"colorPalette.300\" },\n\t\t\t\t},\n\t\t\t},\n\t\t},\n\t\tsize: {\n\t\t\txl: {\n\t\t\t\trounded: \"md\",\n\t\t\t\tpx: 3.5,\n\t\t\t\tfontSize: \"sm\",\n\t\t\t\tlineHeight: 1.5,\n\t\t\t\tfontWeight: 600,\n\t\t\t\th: \"10\",\n\t\t\t\tminW: \"10\",\n\t\t\t},\n\t\t\tlg: {\n\t\t\t\trounded: \"md\",\n\t\t\t\tpx: 3,\n\t\t\t\tfontSize: \"sm\",\n\t\t\t\tlineHeight: 1.5,\n\t\t\t\tfontWeight: 600,\n\t\t\t\th: \"9\",\n\t\t\t\tminW: \"9\",\n\t\t\t},\n\t\t\tmd: {\n\t\t\t\trounded: \"md\",\n\t\t\t\tpx: 2.5,\n\t\t\t\tfontSize: \"sm\",\n\t\t\t\tlineHeight: 1.5,\n\t\t\t\tfontWeight: 600,\n\t\t\t\th: \"8\",\n\t\t\t\tminW: \"8\",\n\t\t\t},\n\t\t\tsm: {\n\t\t\t\trounded: \"base\",\n\t\t\t\tpx: 2,\n\t\t\t\tfontSize: \"sm\",\n\t\t\t\tlineHeight: 1.5,\n\t\t\t\tfontWeight: 600,\n\t\t\t\th: \"7\",\n\t\t\t\tminW: \"7\",\n\t\t\t},\n\t\t\txs: {\n\t\t\t\th: \"6\",\n\t\t\t\tminW: \"6\",\n\t\t\t\trounded: \"base\",\n\t\t\t\tpx: 2,\n\t\t\t\tfontSize: \"xs\",\n\t\t\t\tlineHeight: \"1rem\",\n\t\t\t\tfontWeight: 600,\n\t\t\t},\n\t\t},\n\t},\n\tdefaultVariants: {\n\t\tsize: \"lg\",\n\t\tcolorPalette: \"primary\" as never,\n\t},\n});\n","import { defineRecipe } from \"@chakra-ui/react\";\n\n/**\n * FIX: Replaced `brand.500`/`brand.200` references with `primary.500`/`primary.200`.\n */\nexport default defineRecipe({\n\tvariants: {\n\t\tvariant: {\n\t\t\toutline: {\n\t\t\t\tborderRadius: \"md\",\n\t\t\t\tbg: { base: \"white\", _dark: \"gray.800\" },\n\t\t\t\t_hover: { borderColor: { base: \"gray.300\", _dark: \"gray.600\" } },\n\t\t\t\t_focus: {\n\t\t\t\t\tborderColor: { base: \"primary.700\", _dark: \"primary.300\" },\n\t\t\t\t\tboxShadow: {\n\t\t\t\t\t\tbase: \"0px 0px 0px 1px var(--chakra-colors-primary-700)\",\n\t\t\t\t\t\t_dark: \"0px 0px 0px 1px var(--chakra-colors-primary-300)\",\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t},\n\t},\n});\n","import { defineRecipe } from \"@chakra-ui/react\";\n\nexport const tooltipTheme = defineRecipe({\n\tbase: {\n\t\tpx: \"2\",\n\t\tpy: \"1\",\n\t\tbg: \"gray.700\",\n\t\tcolor: \"whiteAlpha.900\",\n\t\t_dark: {\n\t\t\tbg: \"gray.300\",\n\t\t\tcolor: \"gray.900\",\n\t\t},\n\t\tborderRadius: \"md\",\n\t\tfontWeight: \"medium\",\n\t\tfontSize: \"sm\",\n\t\tboxShadow: \"md\",\n\t\tmaxW: \"xs\",\n\t\tzIndex: \"tooltip\",\n\t\tanimation: \"slideUp 150ms ease-out\",\n\t},\n});\n","import { defineSlotRecipe } from \"@chakra-ui/react\";\n\nexport default defineSlotRecipe({\n\tslots: [\n\t\t\"treeItem\",\n\t\t\"treeItemElement\",\n\t\t\"treeItemToggle\",\n\t\t\"treeItemIcon\",\n\t\t\"treeItemContent\",\n\t\t\"treeItemLabel\",\n\t\t\"treeItemActions\",\n\t\t\"treeItemChildren\",\n\t],\n\tbase: {\n\t\ttreeItem: {},\n\t\ttreeItemElement: {\n\t\t\theight: \"42px\",\n\t\t\tdisplay: \"grid\",\n\t\t\tgridTemplateColumns: \"30px 24px 20px auto 50px\",\n\t\t\tgridGap: \"2px\",\n\t\t\talignItems: \"center\",\n\t\t\talignContent: \"center\",\n\t\t\tpadding: 0,\n\t\t\tfontSize: \"xs\",\n\t\t\tcolor: { base: \"gray.700\", _dark: \"gray.300\" },\n\t\t\tborderRadius: \"base\",\n\t\t\t_hover: {\n\t\t\t\tbg: { base: \"gray.100\", _dark: \"gray.700\" },\n\t\t\t},\n\t\t\t\".is--no-checkbox &\": {\n\t\t\t\tgridTemplateColumns: \"30px 0 24px auto 50px\",\n\t\t\t},\n\t\t},\n\t\ttreeItemToggle: {\n\t\t\twidth: \"15px\",\n\t\t\theight: \"24px\",\n\t\t\tlineHeight: \"20px\",\n\t\t\ttextAlign: \"center\",\n\t\t\tposition: \"relative\",\n\t\t\tcursor: \"pointer\",\n\t\t\tuserSelect: \"none\",\n\t\t\tjustifySelf: \"center\",\n\t\t\t_expanded: {\n\t\t\t\tcolor: \"primary.400\",\n\t\t\t},\n\t\t},\n\t\ttreeItemIcon: {\n\t\t\twidth: \"45px\",\n\t\t\theight: \"22px\",\n\t\t\tcolor: \"primary.700\",\n\t\t\t\"&[aria-leaf=true],&[data-leaf]\": {\n\t\t\t\tcolor: \"gray.400\",\n\t\t\t},\n\t\t},\n\t\ttreeItemContent: {},\n\t\ttreeItemLabel: {\n\t\t\tcolor: { base: \"gray.700\", _dark: \"gray.300\" },\n\t\t},\n\t\ttreeItemActions: {\n\t\t\ttextAlign: \"end\",\n\t\t\tmarginInlineStart: \"4px\",\n\t\t},\n\t\ttreeItemChildren: {\n\t\t\tposition: \"relative\",\n\t\t\tpaddingInlineStart: 12,\n\t\t\t_before: {\n\t\t\t\tcontent: '\"\"',\n\t\t\t\tposition: \"absolute\",\n\t\t\t\tinsetInlineStart: \"16px\",\n\t\t\t\theight: \"100%\",\n\t\t\t\twidth: \"1px\",\n\t\t\t\tbg: { base: \"gray.200\", _dark: \"gray.600\" },\n\t\t\t},\n\t\t},\n\t},\n});\n","/**\n * Motion tokens for consistent animation timing across components.\n */\nexport const durations = {\n\tfast: { value: \"150ms\" },\n\tnormal: { value: \"200ms\" },\n\tslow: { value: \"300ms\" },\n\tslower: { value: \"400ms\" },\n\tentrance: { value: \"250ms\" },\n\texit: { value: \"200ms\" },\n};\n\nexport const easings = {\n\t\"ease-in\": { value: \"cubic-bezier(0.4, 0, 1, 1)\" },\n\t\"ease-out\": { value: \"cubic-bezier(0, 0, 0.2, 1)\" },\n\t\"ease-in-out\": { value: \"cubic-bezier(0.4, 0, 0.2, 1)\" },\n\tspring: { value: \"cubic-bezier(0.175, 0.885, 0.32, 1.275)\" },\n};\n\n/**\n * Reusable keyframe definitions for component animations.\n * These are CSS keyframe strings intended for use in globalCss or recipes.\n */\nexport const keyframes = {\n\tfadeIn: {\n\t\tfrom: { opacity: 0 },\n\t\tto: { opacity: 1 },\n\t},\n\tfadeOut: {\n\t\tfrom: { opacity: 1 },\n\t\tto: { opacity: 0 },\n\t},\n\tslideUp: {\n\t\tfrom: { opacity: 0, transform: \"translateY(4px)\" },\n\t\tto: { opacity: 1, transform: \"translateY(0)\" },\n\t},\n\tslideDown: {\n\t\tfrom: { opacity: 0, transform: \"translateY(-4px)\" },\n\t\tto: { opacity: 1, transform: \"translateY(0)\" },\n\t},\n\tscaleIn: {\n\t\tfrom: { opacity: 0, transform: \"scale(0.95)\" },\n\t\tto: { opacity: 1, transform: \"scale(1)\" },\n\t},\n};\n","/**\n * Raw color scales for the design system.\n *\n * `primary` is the UI blue (anchored at step 700 = #134788 — used for\n * action surfaces, links, focus rings). `secondary` is the brand orange\n * (anchored at step 600 = #e9580c — matches the brand guideline exactly).\n * `gray` is a blue-tinted neutral scale (~80% of UI pixels). `brand`\n * contains the exact hex values from the knk Brand Guidelines (October\n * 2021) for branding contexts like logos, headers, and about pages.\n *\n * `success`, `warning`, `danger`, `info` are explicit status palettes\n * owned by anker (rather than inheriting Chakra's defaults), so consumers\n * get stable status colors regardless of Chakra version.\n *\n * NOTE: `primary.800` (#0f395d) matches `brand.navy` exactly. The\n * brand-guideline blue (`brand.blue` = #004576) is intentionally NOT in\n * the `primary` scale — the action anchor (`primary.700` = #134788) is\n * calibrated for web legibility instead, since #004576 reads as too\n * heavy as a CTA on white surfaces.\n */\nconst colors = {\n\tprimary: {\n\t\t\"50\": { value: \"#eff6fc\" },\n\t\t\"100\": { value: \"#d9eafa\" },\n\t\t\"200\": { value: \"#b8d6f5\" },\n\t\t\"300\": { value: \"#88baeb\" },\n\t\t\"400\": { value: \"#5995dc\" },\n\t\t\"500\": { value: \"#2f6fbf\" },\n\t\t\"600\": { value: \"#1c5aa8\" },\n\t\t\"700\": { value: \"#134788\" },\n\t\t\"800\": { value: \"#0f395d\" },\n\t\t\"900\": { value: \"#0a2740\" },\n\t\t\"950\": { value: \"#061a2c\" },\n\t},\n\tsecondary: {\n\t\t\"50\": { value: \"#fff5ed\" },\n\t\t\"100\": { value: \"#ffe6d4\" },\n\t\t\"200\": { value: \"#ffc8a8\" },\n\t\t\"300\": { value: \"#ffa170\" },\n\t\t\"400\": { value: \"#ff7c41\" },\n\t\t\"500\": { value: \"#f25f1c\" },\n\t\t\"600\": { value: \"#e9580c\" },\n\t\t\"700\": { value: \"#b73806\" },\n\t\t\"800\": { value: \"#912e0d\" },\n\t\t\"900\": { value: \"#762a0e\" },\n\t\t\"950\": { value: \"#411208\" },\n\t},\n\t// Exact brand guideline colors for branding elements (headers, logos, about pages).\n\t// See: knk Brand Guidelines, October 2021\n\tbrand: {\n\t\tblue: { value: \"#004576\" },\n\t\tnavy: { value: \"#0f395d\" },\n\t\t\"light-blue\": { value: \"#6fa7d1\" },\n\t\torange: { value: \"#e9580c\" },\n\t\tgold: { value: \"#f4b235\" },\n\t\t\"light-gray\": { value: \"#f2f2f2\" },\n\t},\n\t// Blue-tinted gray\n\tgray: {\n\t\t\"50\": { value: \"#f8fafc\" },\n\t\t\"100\": { value: \"#f1f5f9\" },\n\t\t\"200\": { value: \"#e2e8f0\" },\n\t\t\"300\": { value: \"#cbd5e1\" },\n\t\t\"400\": { value: \"#94a3b8\" },\n\t\t\"500\": { value: \"#64748b\" },\n\t\t\"600\": { value: \"#475569\" },\n\t\t\"700\": { value: \"#334155\" },\n\t\t\"800\": { value: \"#1e293b\" },\n\t\t\"900\": { value: \"#0f172a\" },\n\t\t\"950\": { value: \"#020617\" },\n\t},\n\tsuccess: {\n\t\t\"50\": { value: \"#ecfdf5\" },\n\t\t\"100\": { value: \"#d1fae5\" },\n\t\t\"500\": { value: \"#10b981\" },\n\t\t\"600\": { value: \"#059669\" },\n\t\t\"700\": { value: \"#047857\" },\n\t},\n\twarning: {\n\t\t\"50\": { value: \"#fffbeb\" },\n\t\t\"100\": { value: \"#fef3c7\" },\n\t\t\"500\": { value: \"#f59e0b\" },\n\t\t\"600\": { value: \"#d97706\" },\n\t\t\"700\": { value: \"#b45309\" },\n\t},\n\tdanger: {\n\t\t\"50\": { value: \"#fef2f2\" },\n\t\t\"100\": { value: \"#fee2e2\" },\n\t\t\"500\": { value: \"#ef4444\" },\n\t\t\"600\": { value: \"#dc2626\" },\n\t\t\"700\": { value: \"#b91c1c\" },\n\t},\n\tinfo: {\n\t\t\"50\": { value: \"#eff6fc\" },\n\t\t\"100\": { value: \"#d9eafa\" },\n\t\t\"500\": { value: \"#2f6fbf\" },\n\t\t\"600\": { value: \"#1c5aa8\" },\n\t\t\"700\": { value: \"#134788\" },\n\t},\n};\n\nexport default colors;\n","/**\n * Border-radius tokens.\n *\n * Tightened (1.0): sm=4px, md=6px, lg=8px, xl=12px, 2xl=16px.\n * The refined design system favors moderate radii — every component\n * was previously one step looser. `md` (6px) is the default for\n * buttons, inputs, and small cards.\n */\nconst radii = {\n\tsm: \"0.25rem\",\n\tmd: \"0.375rem\",\n\tlg: \"0.5rem\",\n\txl: \"0.75rem\",\n\t\"2xl\": \"1rem\",\n};\n\nexport default radii;\n","/**\n * Semantic tokens for colors and shadows.\n *\n * These map abstract names (bg-canvas, accent, border, etc.) to raw color\n * scale values, with automatic light/dark mode variants.\n *\n * Cross-token references must use {colors.X} brace syntax so Chakra v3\n * emits them as `var(--chakra-colors-X)` references. Bare strings like\n * `\"gray.50\"` are stored verbatim into the CSS custom property and yield\n * invalid CSS at runtime.\n */\nconst semanticTokens = {\n\tcolors: {\n\t\t\"bg-canvas\": {\n\t\t\tvalue: { base: \"{colors.gray.50}\", _dark: \"{colors.gray.900}\" },\n\t\t},\n\t\t\"bg-surface\": {\n\t\t\tvalue: { base: \"{colors.white}\", _dark: \"{colors.gray.800}\" },\n\t\t},\n\t\t\"bg-subtle\": {\n\t\t\tvalue: { base: \"{colors.gray.50}\", _dark: \"{colors.gray.700}\" },\n\t\t},\n\t\t\"bg-muted\": {\n\t\t\tvalue: { base: \"{colors.gray.100}\", _dark: \"{colors.gray.600}\" },\n\t\t},\n\t\tdefault: {\n\t\t\tvalue: { base: \"{colors.gray.900}\", _dark: \"{colors.white}\" },\n\t\t},\n\t\tinverted: {\n\t\t\tvalue: { base: \"{colors.white}\", _dark: \"{colors.gray.900}\" },\n\t\t},\n\t\temphasized: {\n\t\t\tvalue: { base: \"{colors.gray.700}\", _dark: \"{colors.gray.100}\" },\n\t\t},\n\t\tmuted: {\n\t\t\tvalue: { base: \"{colors.gray.600}\", _dark: \"{colors.gray.300}\" },\n\t\t},\n\t\tsubtle: {\n\t\t\tvalue: { base: \"{colors.gray.500}\", _dark: \"{colors.gray.400}\" },\n\t\t},\n\t\tborder: {\n\t\t\tvalue: { base: \"{colors.gray.200}\", _dark: \"{colors.gray.700}\" },\n\t\t},\n\t\t\"border-muted\": {\n\t\t\tvalue: { base: \"{colors.gray.100}\", _dark: \"{colors.gray.800}\" },\n\t\t},\n\t\taccent: {\n\t\t\tvalue: { base: \"{colors.primary.700}\", _dark: \"{colors.primary.300}\" },\n\t\t},\n\t\tsuccess: {\n\t\t\tvalue: { base: \"{colors.green.600}\", _dark: \"{colors.green.200}\" },\n\t\t},\n\t\terror: {\n\t\t\tvalue: { base: \"{colors.red.600}\", _dark: \"{colors.red.200}\" },\n\t\t},\n\t\t// Color palette tokens for colorPalette=\"primary\" (required by Chakra v3\n\t\t// for solid/subtle/outline/ghost button variants and other components)\n\t\tprimary: {\n\t\t\tcontrast: { value: { base: \"white\", _dark: \"white\" } },\n\t\t\tfg: {\n\t\t\t\tvalue: {\n\t\t\t\t\tbase: \"{colors.primary.700}\",\n\t\t\t\t\t_dark: \"{colors.primary.300}\",\n\t\t\t\t},\n\t\t\t},\n\t\t\tsubtle: {\n\t\t\t\tvalue: {\n\t\t\t\t\tbase: \"{colors.primary.100}\",\n\t\t\t\t\t_dark: \"{colors.primary.900}\",\n\t\t\t\t},\n\t\t\t},\n\t\t\tmuted: {\n\t\t\t\tvalue: {\n\t\t\t\t\tbase: \"{colors.primary.200}\",\n\t\t\t\t\t_dark: \"{colors.primary.800}\",\n\t\t\t\t},\n\t\t\t},\n\t\t\temphasized: {\n\t\t\t\tvalue: {\n\t\t\t\t\tbase: \"{colors.primary.300}\",\n\t\t\t\t\t_dark: \"{colors.primary.700}\",\n\t\t\t\t},\n\t\t\t},\n\t\t\t// solid + focusRing intentionally keep dark at step 500 (not 700)\n\t\t\t// so the action color stays visible on dark canvas. This breaks the\n\t\t\t// \"same step both modes\" pattern that held before the 1.0 anchor\n\t\t\t// shift. Do not \"fix\" the asymmetry — see design-system spec §5.2.\n\t\t\tsolid: {\n\t\t\t\tvalue: {\n\t\t\t\t\tbase: \"{colors.primary.700}\",\n\t\t\t\t\t_dark: \"{colors.primary.500}\",\n\t\t\t\t},\n\t\t\t},\n\t\t\tfocusRing: {\n\t\t\t\tvalue: {\n\t\t\t\t\tbase: \"{colors.primary.700}\",\n\t\t\t\t\t_dark: \"{colors.primary.500}\",\n\t\t\t\t},\n\t\t\t},\n\t\t\tborder: {\n\t\t\t\tvalue: {\n\t\t\t\t\tbase: \"{colors.primary.700}\",\n\t\t\t\t\t_dark: \"{colors.primary.400}\",\n\t\t\t\t},\n\t\t\t},\n\t\t},\n\t\t// Secondary color palette tokens (for colorPalette=\"secondary\")\n\t\tsecondary: {\n\t\t\tcontrast: { value: { base: \"white\", _dark: \"white\" } },\n\t\t\tfg: {\n\t\t\t\tvalue: {\n\t\t\t\t\tbase: \"{colors.secondary.700}\",\n\t\t\t\t\t_dark: \"{colors.secondary.300}\",\n\t\t\t\t},\n\t\t\t},\n\t\t\tsubtle: {\n\t\t\t\tvalue: {\n\t\t\t\t\tbase: \"{colors.secondary.100}\",\n\t\t\t\t\t_dark: \"{colors.secondary.900}\",\n\t\t\t\t},\n\t\t\t},\n\t\t\tmuted: {\n\t\t\t\tvalue: {\n\t\t\t\t\tbase: \"{colors.secondary.200}\",\n\t\t\t\t\t_dark: \"{colors.secondary.800}\",\n\t\t\t\t},\n\t\t\t},\n\t\t\temphasized: {\n\t\t\t\tvalue: {\n\t\t\t\t\tbase: \"{colors.secondary.300}\",\n\t\t\t\t\t_dark: \"{colors.secondary.700}\",\n\t\t\t\t},\n\t\t\t},\n\t\t\tsolid: {\n\t\t\t\tvalue: {\n\t\t\t\t\tbase: \"{colors.secondary.600}\",\n\t\t\t\t\t_dark: \"{colors.secondary.500}\",\n\t\t\t\t},\n\t\t\t},\n\t\t\tfocusRing: {\n\t\t\t\tvalue: {\n\t\t\t\t\tbase: \"{colors.secondary.600}\",\n\t\t\t\t\t_dark: \"{colors.secondary.500}\",\n\t\t\t\t},\n\t\t\t},\n\t\t\tborder: {\n\t\t\t\tvalue: {\n\t\t\t\t\tbase: \"{colors.secondary.600}\",\n\t\t\t\t\t_dark: \"{colors.secondary.400}\",\n\t\t\t\t},\n\t\t\t},\n\t\t},\n\t\t// Accent surface tokens\n\t\t\"bg-accent\": {\n\t\t\tvalue: { base: \"{colors.primary.700}\", _dark: \"{colors.primary.400}\" },\n\t\t},\n\t\t\"bg-accent-subtle\": {\n\t\t\tvalue: { base: \"{colors.primary.700}\", _dark: \"{colors.primary.500}\" },\n\t\t},\n\t\t\"bg-accent-muted\": {\n\t\t\tvalue: { base: \"{colors.primary.500}\", _dark: \"{colors.primary.600}\" },\n\t\t},\n\t\t\"on-accent\": { value: { base: \"white\", _dark: \"white\" } },\n\t\t\"on-accent-muted\": {\n\t\t\tvalue: { base: \"{colors.primary.50}\", _dark: \"{colors.primary.100}\" },\n\t\t},\n\t\t\"on-accent-subtle\": {\n\t\t\tvalue: { base: \"{colors.primary.100}\", _dark: \"{colors.primary.200}\" },\n\t\t},\n\t},\n\tshadows: {\n\t\txs: {\n\t\t\tvalue: {\n\t\t\t\tbase: \"0 1px 2px rgba(0, 0, 0, 0.04)\",\n\t\t\t\t_dark: \"0 1px 2px rgba(0, 0, 0, 0.4)\",\n\t\t\t},\n\t\t},\n\t\tsm: {\n\t\t\tvalue: {\n\t\t\t\tbase: \"0 1px 2px rgba(0, 0, 0, 0.06)\",\n\t\t\t\t_dark: \"0 1px 2px rgba(0, 0, 0, 0.5)\",\n\t\t\t},\n\t\t},\n\t\tmd: {\n\t\t\tvalue: {\n\t\t\t\tbase: \"0 4px 6px -1px rgba(0, 0, 0, 0.08), 0 2px 4px -2px rgba(0, 0, 0, 0.04)\",\n\t\t\t\t_dark:\n\t\t\t\t\t\"0 4px 6px -1px rgba(0, 0, 0, 0.5), 0 2px 4px -2px rgba(0, 0, 0, 0.3)\",\n\t\t\t},\n\t\t},\n\t\tlg: {\n\t\t\tvalue: {\n\t\t\t\tbase: \"0 10px 15px -3px rgba(0, 0, 0, 0.08), 0 4px 6px -4px rgba(0, 0, 0, 0.04)\",\n\t\t\t\t_dark:\n\t\t\t\t\t\"0 10px 15px -3px rgba(0, 0, 0, 0.5), 0 4px 6px -4px rgba(0, 0, 0, 0.3)\",\n\t\t\t},\n\t\t},\n\t\txl: {\n\t\t\tvalue: {\n\t\t\t\tbase: \"0 20px 25px -5px rgba(0, 0, 0, 0.10), 0 8px 10px -6px rgba(0, 0, 0, 0.04)\",\n\t\t\t\t_dark:\n\t\t\t\t\t\"0 20px 25px -5px rgba(0, 0, 0, 0.6), 0 8px 10px -6px rgba(0, 0, 0, 0.3)\",\n\t\t\t},\n\t\t},\n\t\t\"2xl\": {\n\t\t\tvalue: {\n\t\t\t\tbase: \"0 25px 50px -12px rgba(0, 0, 0, 0.18)\",\n\t\t\t\t_dark: \"0 25px 50px -12px rgba(0, 0, 0, 0.7)\",\n\t\t\t},\n\t\t},\n\t\t\"focus-ring\": {\n\t\t\tvalue: {\n\t\t\t\tbase: \"0 0 0 3px rgba(19, 71, 136, 0.18)\",\n\t\t\t\t_dark: \"0 0 0 3px rgba(47, 111, 191, 0.4)\",\n\t\t\t},\n\t\t},\n\t},\n\topacity: {\n\t\tdisabled: { value: 0.4 },\n\t\treadOnly: { value: 0.8 },\n\t},\n};\n\nexport default semanticTokens;\n","/**\n * Custom spacing additions that extend the Chakra default scale.\n */\nconst space = {\n\t\"1.5\": \"0.375rem\",\n\t\"2.5\": \"0.625rem\",\n\t\"3.5\": \"0.875rem\",\n\t\"4.5\": \"1.125rem\",\n};\n\nexport default space;\n","/**\n * Font families and text style presets.\n *\n * Merged from the Core monolith's `foundations/fonts.ts` and\n * `foundations/text-styles.ts` into a single module.\n */\nexport const fonts = {\n\theading: \"'Inter Tight', system-ui, -apple-system, 'Segoe UI', sans-serif\",\n\tbody: \"'Inter Tight', system-ui, -apple-system, 'Segoe UI', sans-serif\",\n\tmono: \"'JetBrains Mono', ui-monospace, SFMono-Regular, monospace\",\n};\n\nexport const textStyles = {\n\t\"7xl\": {\n\t\tfontSize: \"7xl\",\n\t\tlineHeight: \"5.75rem\", // 92px\n\t\tletterSpacing: \"-0.02em\",\n\t},\n\t\"6xl\": {\n\t\tfontSize: \"6xl\",\n\t\tlineHeight: \"4.5rem\", // 72px\n\t\tletterSpacing: \"-0.02em\",\n\t},\n\t\"5xl\": {\n\t\tfontSize: \"5xl\",\n\t\tlineHeight: \"3.75rem\", // 60px\n\t\tletterSpacing: \"-0.02em\",\n\t},\n\t\"4xl\": {\n\t\tfontSize: \"4xl\",\n\t\tlineHeight: \"2.75rem\", // 44px\n\t\tletterSpacing: \"-0.02em\",\n\t},\n\t\"3xl\": {\n\t\tfontSize: \"3xl\",\n\t\tlineHeight: \"2.375rem\", // 38px\n\t},\n\t\"2xl\": {\n\t\tfontSize: \"2xl\",\n\t\tlineHeight: \"2rem\", // 32px\n\t},\n\txl: {\n\t\tfontSize: \"xl\",\n\t\tlineHeight: \"1.875rem\", // 30px\n\t},\n\tlg: {\n\t\tfontSize: \"lg\",\n\t\tlineHeight: \"1.75rem\", // 28px\n\t},\n\tmd: {\n\t\tfontSize: \"md\",\n\t\tlineHeight: \"1.5rem\", // 24px\n\t},\n\tsm: {\n\t\tfontSize: \"sm\",\n\t\tlineHeight: \"1.25rem\", // 20px\n\t},\n\txs: {\n\t\tfontSize: \"xs\",\n\t\tlineHeight: \"1.125rem\", // 18px\n\t},\n\t// Additional semantic presets\n\tdisplay: {\n\t\tfontSize: \"6xl\",\n\t\tlineHeight: \"4.5rem\",\n\t\tletterSpacing: \"-0.03em\",\n\t\tfontWeight: \"bold\",\n\t},\n\tcaption: {\n\t\tfontSize: \"xs\",\n\t\tlineHeight: \"1rem\",\n\t\tletterSpacing: \"0.01em\",\n\t\tcolor: \"muted\",\n\t},\n\toverline: {\n\t\tfontSize: \"xs\",\n\t\tlineHeight: \"1rem\",\n\t\tletterSpacing: \"0.08em\",\n\t\tfontWeight: \"semibold\",\n\t\ttextTransform: \"uppercase\" as const,\n\t},\n\tbodyLg: {\n\t\tfontSize: \"lg\",\n\t\tfontWeight: \"normal\",\n\t\tlineHeight: \"1.5\", // unitless multiplier — scales with fontSize\n\t},\n\tbody: {\n\t\tfontSize: \"md\",\n\t\tfontWeight: \"normal\",\n\t\tlineHeight: \"1.5\",\n\t},\n\tbodySm: {\n\t\tfontSize: \"sm\",\n\t\tfontWeight: \"normal\",\n\t\tlineHeight: \"1.45\",\n\t},\n\tmono: {\n\t\tfontFamily: \"mono\",\n\t\tfontSize: \"md\",\n\t\tlineHeight: \"1.5\",\n\t},\n\tmonoSm: {\n\t\tfontFamily: \"mono\",\n\t\tfontSize: \"xs\",\n\t\tlineHeight: \"1.45\",\n\t},\n};\n","/**\n * Z-index scale for consistent stacking order.\n *\n * dropdown < sticky < overlay < modal < popover < toast\n */\nconst zIndex = {\n\tdropdown: { value: 1000 },\n\tsticky: { value: 1100 },\n\toverlay: { value: 1300 },\n\tmodal: { value: 1400 },\n\tpopover: { value: 1500 },\n\ttoast: { value: 1700 },\n};\n\nexport default zIndex;\n","import {\n\tcreateSystem,\n\tdefaultConfig,\n\tdefineSlotRecipe,\n} from \"@chakra-ui/react\";\nimport type { ThemePreset } from \"./presets/types\";\nimport {\n\tbutton,\n\tcard,\n\tcheckbox,\n\tcomment,\n\tcontainer,\n\tdialog,\n\tdrawer,\n\tformLabel,\n\tinput,\n\tmenu,\n\tmodal,\n\tpersona,\n\tpopover,\n\tprose,\n\tseparator,\n\tstepper,\n\ttable,\n\ttabs,\n\ttag,\n\ttextarea,\n\ttooltip,\n\ttreeItem,\n\ttsProperty,\n\ttsRadioCard,\n} from \"./recipes\";\nimport {\n\tcolors as baseColors,\n\tdurations as baseDurations,\n\teasings as baseEasings,\n\tfonts as baseFonts,\n\tradii as baseRadii,\n\tsemanticTokens as baseSemanticTokens,\n\ttextStyles as baseTextStyles,\n\tkeyframes,\n\tspace,\n\tzIndex,\n} from \"./tokens\";\n\n/**\n * Creates an Anker theme system with optional preset overrides.\n * Without a preset (or with the default preset), this produces the\n * same system as the default export from `@knkcs/anker/theme`.\n *\n * @example\n * ```tsx\n * import { createAnkerTheme } from \"@knkcs/anker/theme\";\n * import type { ThemePreset } from \"@knkcs/anker/theme\";\n *\n * const myPreset: ThemePreset = { name: \"custom\", radii: { md: \"0\" } };\n * <Provider system={createAnkerTheme(myPreset)}>\n * ```\n */\nexport function createAnkerTheme(preset?: ThemePreset) {\n\tconst fonts = {\n\t\theading: preset?.fonts?.heading ?? baseFonts.heading,\n\t\tbody: preset?.fonts?.body ?? baseFonts.body,\n\t\tmono: preset?.fonts?.mono ?? baseFonts.mono,\n\t};\n\n\tconst colors = preset?.colors\n\t\t? { ...baseColors, ...preset.colors }\n\t\t: baseColors;\n\n\tconst durations = preset?.durations\n\t\t? { ...baseDurations, ...preset.durations }\n\t\t: baseDurations;\n\n\tconst easings = preset?.easings\n\t\t? { ...baseEasings, ...preset.easings }\n\t\t: baseEasings;\n\n\tconst radii = preset?.radii ?? baseRadii;\n\n\tconst textStyles = preset?.textStyles\n\t\t? { ...baseTextStyles, ...preset.textStyles }\n\t\t: baseTextStyles;\n\n\tconst semanticTokens = preset?.semanticTokens\n\t\t? deepMerge(\n\t\t\t\tbaseSemanticTokens,\n\t\t\t\tpreset.semanticTokens as Partial<typeof baseSemanticTokens>,\n\t\t\t)\n\t\t: baseSemanticTokens;\n\n\treturn createSystem(defaultConfig, {\n\t\tglobalCss: {\n\t\t\t\"@keyframes fadeIn\": keyframes.fadeIn,\n\t\t\t\"@keyframes fadeOut\": keyframes.fadeOut,\n\t\t\t\"@keyframes slideUp\": keyframes.slideUp,\n\t\t\t\"@keyframes slideDown\": keyframes.slideDown,\n\t\t\t\"@keyframes scaleIn\": keyframes.scaleIn,\n\t\t\tbody: {\n\t\t\t\tcolor: \"default\",\n\t\t\t\tbg: { base: \"white\", _dark: \"#000\" },\n\t\t\t},\n\t\t\t\"*::placeholder\": {\n\t\t\t\topacity: 1,\n\t\t\t\tcolor: \"muted\",\n\t\t\t},\n\t\t\t\"*, *::before, *::after\": {\n\t\t\t\tborderColor: \"border\",\n\t\t\t},\n\t\t\t\"table, td, th\": {\n\t\t\t\tborderColor: \"border\",\n\t\t\t},\n\t\t\t\"html, body\": {\n\t\t\t\theight: \"100%\",\n\t\t\t},\n\t\t\t\"#__next, #root, #app\": {\n\t\t\t\tdisplay: \"flex\",\n\t\t\t\tflexDirection: \"column\",\n\t\t\t\tminH: \"100%\",\n\t\t\t},\n\t\t\t\"*\": {\n\t\t\t\t_motionReduce: {\n\t\t\t\t\tanimationDuration: \"0.01ms !important\",\n\t\t\t\t\tanimationIterationCount: \"1 !important\",\n\t\t\t\t\ttransitionDuration: \"0.01ms !important\",\n\t\t\t\t\tscrollBehavior: \"auto !important\",\n\t\t\t\t},\n\t\t\t},\n\t\t},\n\n\t\ttheme: {\n\t\t\ttokens: {\n\t\t\t\tcolors,\n\t\t\t\tdurations,\n\t\t\t\teasings,\n\t\t\t\tfonts: {\n\t\t\t\t\theading: { value: fonts.heading },\n\t\t\t\t\tbody: { value: fonts.body },\n\t\t\t\t\tmono: { value: fonts.mono },\n\t\t\t\t},\n\t\t\t\tspacing: Object.fromEntries(\n\t\t\t\t\tObject.entries(space).map(([k, v]) => [k, { value: v }]),\n\t\t\t\t),\n\t\t\t\tradii: Object.fromEntries(\n\t\t\t\t\tObject.entries(radii).map(([k, v]) => [k, { value: v }]),\n\t\t\t\t),\n\t\t\t\tzIndex,\n\t\t\t},\n\n\t\t\ttextStyles,\n\t\t\tsemanticTokens,\n\n\t\t\trecipes: {\n\t\t\t\tbutton,\n\t\t\t\tcontainer,\n\t\t\t\tprose,\n\t\t\t\tseparator,\n\t\t\t\tformLabel,\n\t\t\t\ttextarea,\n\t\t\t\ttooltip,\n\t\t\t\ttsRadioCard,\n\t\t\t\ttag,\n\t\t\t},\n\n\t\t\tslotRecipes: {\n\t\t\t\tcard,\n\t\t\t\ttsProperty,\n\t\t\t\ttreeItem,\n\t\t\t\tcheckbox,\n\t\t\t\tcomment,\n\t\t\t\tdialog,\n\t\t\t\tdrawer,\n\t\t\t\t// Field.Root override: v3 defaults to alignItems: flex-start which\n\t\t\t\t// shrinks children. Restore v2 behavior where children stretch.\n\t\t\t\tfield: defineSlotRecipe({\n\t\t\t\t\tslots: [\"root\"],\n\t\t\t\t\tvariants: {\n\t\t\t\t\t\torientation: {\n\t\t\t\t\t\t\tvertical: {\n\t\t\t\t\t\t\t\troot: {\n\t\t\t\t\t\t\t\t\talignItems: \"stretch\",\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t}),\n\t\t\t\tinput,\n\t\t\t\tmenu,\n\t\t\t\tmodal,\n\t\t\t\tpersona,\n\t\t\t\tpopover,\n\t\t\t\tstepper,\n\t\t\t\ttable,\n\t\t\t\ttabs,\n\t\t\t},\n\t\t},\n\t});\n}\n\n/** Deep-merge two objects (1 level deep for token groups). */\nfunction deepMerge<T extends Record<string, unknown>>(\n\tbase: T,\n\toverride: Partial<T>,\n): T {\n\tconst result = { ...base };\n\tfor (const key of Object.keys(override) as (keyof T)[]) {\n\t\tconst baseVal = base[key];\n\t\tconst overrideVal = override[key];\n\t\tif (\n\t\t\tbaseVal &&\n\t\t\toverrideVal &&\n\t\t\ttypeof baseVal === \"object\" &&\n\t\t\ttypeof overrideVal === \"object\" &&\n\t\t\t!Array.isArray(baseVal)\n\t\t) {\n\t\t\tresult[key] = { ...baseVal, ...overrideVal } as T[keyof T];\n\t\t} else if (overrideVal !== undefined) {\n\t\t\tresult[key] = overrideVal as T[keyof T];\n\t\t}\n\t}\n\treturn result;\n}\n","import type { ThemePreset } from \"./types\";\n\n/**\n * Default preset — applies no overrides.\n * Equivalent to using the base Anker theme as-is.\n */\nexport const defaultPreset: ThemePreset = {\n\tname: \"default\",\n};\n","import { transparentize as setTransparency, toHex } from \"color2k\";\n\ntype Dict = { [key: string]: unknown };\n\n/**\n * Get the color raw value from a theme/token dictionary.\n *\n * Supports both Chakra v3 system token structure (where tokens are wrapped in\n * `{ value: \"...\" }`) and flat color dictionaries (e.g., `{ primary: { 500: \"#2f6fbf\" } }`).\n *\n * @param theme - the theme or token object\n * @param color - the color path (\"green.200\")\n * @param fallback - the fallback color\n */\nexport const getColor = (theme: Dict, color: string, fallback?: string) => {\n\tconst hex = get(theme, `colors.${color}`, color);\n\ttry {\n\t\ttoHex(hex);\n\t\treturn hex;\n\t} catch {\n\t\t// returning black to stay consistent with TinyColor behaviour so as to prevent breaking change\n\t\treturn fallback ?? \"#000000\";\n\t}\n};\n\n/**\n * Make a color transparent\n * @param color - the color in hex, rgb, or hsl\n * @param opacity - the amount of opacity the color should have (0-1)\n */\nexport const transparentize =\n\t(color: string, opacity: number) => (theme: Dict) => {\n\t\tconst raw = getColor(theme, color);\n\t\treturn setTransparency(raw, 1 - opacity);\n\t};\n\n/**\n * Minimal deep-get utility (replaces `dlv` dependency).\n *\n * Unwraps Chakra v3 `{ value: \"...\" }` token wrappers automatically.\n */\nfunction get(obj: unknown, path: string, fallback: unknown): string {\n\tconst keys = path.split(\".\");\n\tlet current: unknown = obj;\n\tfor (const key of keys) {\n\t\tif (current == null || typeof current !== \"object\") return String(fallback);\n\t\tcurrent = (current as Record<string, unknown>)[key];\n\t\t// Unwrap Chakra v3 token wrapper { value: \"...\" }\n\t\tif (\n\t\t\tcurrent != null &&\n\t\t\ttypeof current === \"object\" &&\n\t\t\t\"value\" in (current as Record<string, unknown>)\n\t\t) {\n\t\t\tconst val = (current as Record<string, unknown>).value;\n\t\t\tif (typeof val === \"string\") {\n\t\t\t\tcurrent = val;\n\t\t\t}\n\t\t}\n\t}\n\treturn current != null ? String(current) : String(fallback);\n}\n","import { createAnkerTheme } from \"./create-theme\";\n\nconst system = createAnkerTheme();\n\nexport type CustomTheme = typeof system;\n\nexport default system;\n\nexport { createAnkerTheme } from \"./create-theme\";\nexport type { ThemePreset } from \"./presets\";\nexport { defaultPreset } from \"./presets\";\n// Re-export all tokens and utilities for consumer overrides\nexport {\n\tcolors,\n\tdurations,\n\teasings,\n\tfonts,\n\tkeyframes,\n\tradii,\n\tsemanticTokens,\n\tspace,\n\ttextStyles,\n\tzIndex,\n} from \"./tokens\";\nexport { getColor, transparentize } from \"./utils\";\n"]}
@@ -1,4 +1,4 @@
1
- import { theme_default } from '../chunk-VAUYWBWI.js';
1
+ import { theme_default } from '../chunk-UOXSDSBY.js';
2
2
  export { Checkbox, CheckboxGroup, Collapsible, Separator, Skeleton, SkeletonCircle, SkeletonText } from '../chunk-TXGJ7BNX.js';
3
3
  export { Prose } from '../chunk-VOGT33LU.js';
4
4
  export { Avatar, AvatarGroup, Badge, MenuArrow, MenuCheckboxItem, MenuContent, MenuContextTrigger, MenuItem, MenuItemCommand, MenuItemGroup, MenuItemText, MenuRadioItem, MenuRadioItemGroup, MenuRoot, MenuSeparator, MenuTrigger, MenuTriggerItem, Table, Tooltip } from '../chunk-2ZWZ2WAS.js';
@@ -107,7 +107,20 @@ function AppShellInner({ sidebar, rail, children }) {
107
107
  minH: "100vh",
108
108
  bg: "bg-canvas",
109
109
  children: [
110
- /* @__PURE__ */ jsx(Box, { gridColumn: "1", minW: "0", children: sidebar }),
110
+ /* @__PURE__ */ jsx(
111
+ Box,
112
+ {
113
+ "data-testid": "app-shell-sidebar",
114
+ gridColumn: "1",
115
+ minW: "0",
116
+ position: "sticky",
117
+ top: "0",
118
+ alignSelf: "start",
119
+ maxH: "100vh",
120
+ overflowY: "auto",
121
+ children: sidebar
122
+ }
123
+ ),
111
124
  /* @__PURE__ */ jsx(
112
125
  Flex,
113
126
  {
@@ -128,6 +141,11 @@ function AppShellInner({ sidebar, rail, children }) {
128
141
  "data-testid": "app-shell-rail",
129
142
  gridColumn: "3",
130
143
  minW: "0",
144
+ position: "sticky",
145
+ top: "0",
146
+ alignSelf: "start",
147
+ maxH: "100vh",
148
+ overflowY: "auto",
131
149
  bg: "bg-surface",
132
150
  borderLeftWidth: "1px",
133
151
  borderColor: "border",
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/templates/app-shell.tsx","../../src/templates/auth-page-template.tsx","../../src/templates/dashboard-page-template.tsx","../../src/templates/detail-page-template.tsx","../../src/templates/error-page.tsx","../../src/templates/index-page-template.tsx","../../src/templates/loading-page.tsx","../../src/templates/maintenance-page.tsx","../../src/templates/marketing-page-template.tsx","../../src/templates/settings-page-template.tsx"],"names":["jsx","jsxs"],"mappings":"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","file":"index.js","sourcesContent":["// src/templates/app-shell.tsx\n//\n// AppShell — top-level layout for authenticated knkCMS pages.\n//\n// Composition: a 3-column CSS grid with a fixed-width sidebar, a fluid main\n// content column, and an optional fixed-width context rail.\n//\n// ┌─────────┬───────────────────────────┬─────────┐\n// │ │ │ │\n// │ sidebar │ children │ rail │\n// │ │ (page header / content) │ │\n// │ │ │ │\n// └─────────┴───────────────────────────┴─────────┘\n//\n// Slot mechanism\n// --------------\n// AppShell installs an external slot store on its descendants via context.\n// Two named slots are exposed:\n//\n// - \"actions\" — registered via `usePageActions(node)` — surfaced by page\n// templates inside their <PageHeader actions=…> slot.\n// - \"rail\" — registered via `usePageRail(node)` — surfaced by AppShell\n// as the content of the right rail column.\n//\n// The store uses `useSyncExternalStore` so that producers (deep child\n// components rendered after the consumer) and consumers (AppShell, the page\n// templates) stay decoupled. A naive `useState`-based context would force the\n// consumer to render in the same React commit as the producer, which causes\n// the actions/rail to flicker on route changes (the Path-B fix originally\n// shipped in odon as PR #115). The external-store pattern lets the producer\n// register its content in a `useEffect`, the consumer re-reads on the next\n// browser frame, and React's concurrent renderer is happy.\n\nimport {\n\tcreateContext,\n\ttype ReactNode,\n\tuseCallback,\n\tuseContext,\n\tuseEffect,\n\tuseMemo,\n\tuseRef,\n\tuseSyncExternalStore,\n} from \"react\";\nimport { Box, Flex, Grid } from \"../primitives/layout\";\n\ntype SlotName = \"actions\" | \"rail\";\n\ninterface SlotStore {\n\tget(slot: SlotName): ReactNode;\n\tset(slot: SlotName, node: ReactNode): void;\n\tclear(slot: SlotName): void;\n\tsubscribe(slot: SlotName, listener: () => void): () => void;\n}\n\nfunction createSlotStore(): SlotStore {\n\tconst values: Record<SlotName, ReactNode> = {\n\t\tactions: null,\n\t\trail: null,\n\t};\n\tconst listeners: Record<SlotName, Set<() => void>> = {\n\t\tactions: new Set(),\n\t\trail: new Set(),\n\t};\n\n\tfunction notify(slot: SlotName) {\n\t\tfor (const listener of listeners[slot]) listener();\n\t}\n\n\treturn {\n\t\tget(slot) {\n\t\t\treturn values[slot];\n\t\t},\n\t\tset(slot, node) {\n\t\t\tif (values[slot] === node) return;\n\t\t\tvalues[slot] = node;\n\t\t\tnotify(slot);\n\t\t},\n\t\tclear(slot) {\n\t\t\tif (values[slot] === null) return;\n\t\t\tvalues[slot] = null;\n\t\t\tnotify(slot);\n\t\t},\n\t\tsubscribe(slot, listener) {\n\t\t\tlisteners[slot].add(listener);\n\t\t\treturn () => {\n\t\t\t\tlisteners[slot].delete(listener);\n\t\t\t};\n\t\t},\n\t};\n}\n\nconst SlotStoreContext = createContext<SlotStore | null>(null);\n\n/**\n * Read-side hook used internally by AppShell and the page templates to\n * subscribe to a named slot's currently-registered ReactNode. Returns `null`\n * when no producer has registered content (or when called outside an AppShell).\n */\nfunction useSlotValue(slot: SlotName): ReactNode {\n\tconst store = useContext(SlotStoreContext);\n\tconst subscribe = useCallback(\n\t\t(listener: () => void) => {\n\t\t\tif (!store) return () => undefined;\n\t\t\treturn store.subscribe(slot, listener);\n\t\t},\n\t\t[store, slot],\n\t);\n\tconst getSnapshot = useCallback(() => {\n\t\tif (!store) return null;\n\t\treturn store.get(slot);\n\t}, [store, slot]);\n\treturn useSyncExternalStore(subscribe, getSnapshot, getSnapshot);\n}\n\n/**\n * Register page-action content (typically buttons rendered to the right of\n * the page title) from any descendant of `<AppShell>`. The content is\n * surfaced by the active page template inside its `<PageHeader>` actions\n * slot.\n *\n * Pass `null` (or omit) to clear the registration. The hook is a no-op when\n * called outside an AppShell, which keeps it safe to use in stories and\n * isolated component tests.\n */\nexport function usePageActions(content: ReactNode): void {\n\tconst store = useContext(SlotStoreContext);\n\t// Stash the most recent content in a ref so the effect can run on every\n\t// render without forcing a fresh effect-cleanup cycle for unstable nodes.\n\tconst latest = useRef<ReactNode>(content);\n\tlatest.current = content;\n\tuseEffect(() => {\n\t\tif (!store) return;\n\t\tstore.set(\"actions\", latest.current);\n\t\treturn () => {\n\t\t\tstore.clear(\"actions\");\n\t\t};\n\t}, [store]);\n\t// Re-register on every change of `content` (effect above only runs once\n\t// per mount; this second effect re-pushes the latest value).\n\tuseEffect(() => {\n\t\tif (!store) return;\n\t\tstore.set(\"actions\", content);\n\t}, [store, content]);\n}\n\n/**\n * Register context-rail content from any descendant of `<AppShell>`. The\n * content is rendered in the rail column (assuming the AppShell has a rail\n * slot enabled).\n *\n * Pass `null` (or omit) to clear the registration. The hook is a no-op when\n * called outside an AppShell.\n */\nexport function usePageRail(content: ReactNode): void {\n\tconst store = useContext(SlotStoreContext);\n\tconst latest = useRef<ReactNode>(content);\n\tlatest.current = content;\n\tuseEffect(() => {\n\t\tif (!store) return;\n\t\tstore.set(\"rail\", latest.current);\n\t\treturn () => {\n\t\t\tstore.clear(\"rail\");\n\t\t};\n\t}, [store]);\n\tuseEffect(() => {\n\t\tif (!store) return;\n\t\tstore.set(\"rail\", content);\n\t}, [store, content]);\n}\n\n/**\n * Internal hook used by page templates to read the currently-registered\n * page-actions ReactNode. Page templates fall back to a locally-passed\n * `actions` prop when nothing is registered.\n */\nexport function useRegisteredPageActions(): ReactNode {\n\treturn useSlotValue(\"actions\");\n}\n\nexport interface AppShellProps {\n\t/**\n\t * Sidebar element — the navigation column. Required. Typically an instance\n\t * of `<Sidebar>` from `@knkcs/anker/components`. AppShell does not own the\n\t * sidebar's collapsed-state — pass it through the Sidebar's own props.\n\t */\n\tsidebar: ReactNode;\n\t/**\n\t * Context rail element. Acts as a *fallback* for the rail column: it\n\t * renders when no descendant has registered rail content via\n\t * `usePageRail`. Registered content always wins over the prop.\n\t *\n\t * The rail column is enabled — and a grid track is reserved — when *either*\n\t * a `rail` prop is supplied *or* a descendant has registered rail content.\n\t * Omit both (or pass `null`) to drop the rail column entirely.\n\t */\n\trail?: ReactNode;\n\t/** Page content. */\n\tchildren: ReactNode;\n}\n\n/**\n * AppShell is the top-level layout for authenticated knkCMS pages. It owns\n * the slot context that powers `usePageActions` and `usePageRail`, and\n * arranges sidebar / main / rail in a 3-column CSS grid.\n *\n * AppShell is layout-only — it does not render a PageHeader, and it does not\n * inject any business chrome. Pages compose `<IndexPageTemplate>`,\n * `<DetailPageTemplate>`, etc. inside `children`.\n *\n * Rail precedence: content registered by a descendant via `usePageRail` wins\n * over the static `rail` prop. The prop is the fallback when no descendant\n * has registered content. Rationale: a descendant explicitly registering\n * content is signaling \"show this here\", which should trump the static prop.\n */\nexport function AppShell({ sidebar, rail, children }: AppShellProps) {\n\t// AppShell is split into an outer Provider and an inner Renderer so the\n\t// renderer's `useContext(SlotStoreContext)` resolves to *our* store rather\n\t// than the parent context. (A naive single component that both provides\n\t// and consumes the context at the same level reads the parent context —\n\t// the Provider only takes effect for descendants.)\n\tconst store = useMemo(() => createSlotStore(), []);\n\treturn (\n\t\t<SlotStoreContext.Provider value={store}>\n\t\t\t<AppShellInner sidebar={sidebar} rail={rail}>\n\t\t\t\t{children}\n\t\t\t</AppShellInner>\n\t\t</SlotStoreContext.Provider>\n\t);\n}\nAppShell.displayName = \"AppShell\";\n\nfunction AppShellInner({ sidebar, rail, children }: AppShellProps) {\n\tconst railNode = useSlotValue(\"rail\");\n\n\t// Precedence: registered rail content wins, fall back to the `rail` prop.\n\t// The rail column is enabled when *either* the consumer passed a `rail`\n\t// element *or* a descendant registered content via `usePageRail`.\n\tconst renderedRail = railNode ?? rail;\n\tconst showRailColumn =\n\t\trenderedRail !== undefined &&\n\t\trenderedRail !== null &&\n\t\trenderedRail !== false;\n\n\treturn (\n\t\t<Grid\n\t\t\tdata-testid=\"app-shell\"\n\t\t\tdata-rail={showRailColumn ? \"true\" : \"false\"}\n\t\t\ttemplateColumns={showRailColumn ? \"auto 1fr auto\" : \"auto 1fr\"}\n\t\t\tminH=\"100vh\"\n\t\t\tbg=\"bg-canvas\"\n\t\t>\n\t\t\t<Box gridColumn=\"1\" minW=\"0\">\n\t\t\t\t{sidebar}\n\t\t\t</Box>\n\t\t\t<Flex\n\t\t\t\tdata-testid=\"app-shell-main\"\n\t\t\t\tgridColumn=\"2\"\n\t\t\t\tdirection=\"column\"\n\t\t\t\tminW=\"0\"\n\t\t\t\tminH=\"100vh\"\n\t\t\t\tbg=\"bg-surface\"\n\t\t\t\tborderLeftWidth=\"1px\"\n\t\t\t\tborderColor=\"border\"\n\t\t\t>\n\t\t\t\t{children}\n\t\t\t</Flex>\n\t\t\t{showRailColumn ? (\n\t\t\t\t<Box\n\t\t\t\t\tdata-testid=\"app-shell-rail\"\n\t\t\t\t\tgridColumn=\"3\"\n\t\t\t\t\tminW=\"0\"\n\t\t\t\t\tbg=\"bg-surface\"\n\t\t\t\t\tborderLeftWidth=\"1px\"\n\t\t\t\t\tborderColor=\"border\"\n\t\t\t\t>\n\t\t\t\t\t{renderedRail}\n\t\t\t\t</Box>\n\t\t\t) : null}\n\t\t</Grid>\n\t);\n}\nAppShellInner.displayName = \"AppShellInner\";\n","// src/templates/auth-page-template.tsx\n//\n// AuthPageTemplate — full-bleed centered card on a neutral canvas. No app\n// shell, no sidebar, no rail. Used for login, register, MFA challenge,\n// forgot/reset password, and email-verification screens.\n//\n// Internally this is a thin wrapper around `<AuthCard>` (in\n// `@knkcs/anker/components`) — surfaced under the templates module so\n// consumers can import their layout chrome from one entry point.\n//\n// We re-expose the wrapper rather than re-implementing it because AuthCard\n// is already battle-tested and stable; the templates module is the consumer\n// contract, AuthCard is the implementation.\n\nimport type { ReactNode } from \"react\";\nimport { AuthCard, type AuthCardProps } from \"../components/auth-card\";\n\nexport interface AuthPageTemplateProps extends AuthCardProps {\n\t/**\n\t * Page body — typically a form or a verification CTA. Inherits all\n\t * AuthCard slots (logo, topBarRight, eyebrow, title, subtitle, footer).\n\t */\n\tchildren: ReactNode;\n}\n\n/**\n * Auth-flow page layout. Use for any pre-authentication screen (login,\n * register, MFA, forgot-password, reset-password) and for short\n * confirmation flows (email-verify, account-deleted). For consent\n * dialogs, prefer `<OAuthConsentPageTemplate>` (denser layout).\n *\n * The template supplies a centered card with a dot-grid background, an\n * optional topbar with logo + locale switcher, and a footer slot. To hide\n * the topbar (rare — embedded preview, printable receipts) pass\n * `hideTopBar`. To hide the dot-grid (printable) pass `hideBackground`.\n */\nexport function AuthPageTemplate(props: AuthPageTemplateProps) {\n\treturn <AuthCard {...props} />;\n}\nAuthPageTemplate.displayName = \"AuthPageTemplate\";\n","// src/templates/dashboard-page-template.tsx\n//\n// DashboardPageTemplate — for at-a-glance overview pages composed of a grid\n// of widgets (Stat cards, mini-charts, recent-activity panes, etc.).\n//\n// ┌─────────────────────────────────────────┐\n// │ PageHeader (greeting · range picker) │\n// ├─────────────────────────────────────────┤\n// │ ┌──────┬──────┬──────┬──────┐ │\n// │ │ stat │ stat │ stat │ stat │ │\n// │ ├──────┴──────┼──────┴──────┤ │\n// │ │ widget │ widget │ │\n// │ │ │ │ │\n// │ ├─────────────┴─────────────┤ │\n// │ │ wide widget │ │\n// │ └───────────────────────────┘ │\n// └─────────────────────────────────────────┘\n//\n// The template provides the page chrome and a 12-column responsive grid.\n// Widgets opt into the column count via Chakra's `gridColumn` prop on each\n// child. Inspired by Linear's \"All issues\" overview and GitHub's repo\n// insights — calm surfaces, dense info, clear hierarchy.\n\nimport type { ReactNode } from \"react\";\nimport { PageHeader, type PageHeaderProps } from \"../components/page-header\";\nimport { Box, Flex, Grid } from \"../primitives/layout\";\nimport { useRegisteredPageActions } from \"./app-shell\";\n\nexport interface DashboardPageTemplateProps\n\textends Pick<\n\t\tPageHeaderProps,\n\t\t\"breadcrumbs\" | \"title\" | \"subtitle\" | \"eyebrow\"\n\t> {\n\tactions?: ReactNode;\n\t/**\n\t * Dashboard widgets. Children are placed inside a 12-column responsive\n\t * CSS grid with `gap=\"4\"`. Each child should set `gridColumn` (e.g.\n\t * `\"span 3\"` for a quarter-width tile, `\"span 6\"` for half, `\"span 12\"`\n\t * for full-width). The default per-child column span is `\"span 12\"`.\n\t */\n\tchildren: ReactNode;\n\t/**\n\t * Override the grid `gap` between widgets. @default \"4\" (= 16px)\n\t */\n\tgap?: string;\n}\n\nexport function DashboardPageTemplate({\n\tbreadcrumbs,\n\ttitle,\n\tsubtitle,\n\teyebrow,\n\tactions,\n\tchildren,\n\tgap = \"4\",\n}: DashboardPageTemplateProps) {\n\tconst registered = useRegisteredPageActions();\n\tconst resolvedActions = actions ?? registered;\n\treturn (\n\t\t<Flex\n\t\t\tdata-testid=\"dashboard-page-template\"\n\t\t\tdirection=\"column\"\n\t\t\tflex=\"1\"\n\t\t\tminH=\"0\"\n\t\t>\n\t\t\t<PageHeader\n\t\t\t\tbreadcrumbs={breadcrumbs}\n\t\t\t\ttitle={title}\n\t\t\t\tsubtitle={subtitle}\n\t\t\t\teyebrow={eyebrow}\n\t\t\t\tactions={resolvedActions}\n\t\t\t/>\n\t\t\t<Box flex=\"1\" minH=\"0\" px=\"8\" py=\"6\">\n\t\t\t\t<Grid\n\t\t\t\t\tdata-testid=\"dashboard-grid\"\n\t\t\t\t\ttemplateColumns=\"repeat(12, minmax(0, 1fr))\"\n\t\t\t\t\tgap={gap}\n\t\t\t\t>\n\t\t\t\t\t{children}\n\t\t\t\t</Grid>\n\t\t\t</Box>\n\t\t</Flex>\n\t);\n}\nDashboardPageTemplate.displayName = \"DashboardPageTemplate\";\n","// src/templates/detail-page-template.tsx\n//\n// DetailPageTemplate — the canonical \"single entity\" page layout.\n//\n// Composition:\n//\n// ┌─────────────────────────────────────────┐\n// │ PageHeader (breadcrumbs · title · …) │\n// ├─────────────────────────────────────────┤\n// │ Tabs (optional — pinned beneath header) │\n// ├─────────────────────────────────────────┤\n// │ children (identity card · panes · …) │\n// └─────────────────────────────────────────┘\n//\n// Use for pages that show one entity: a single user, a single OAuth client,\n// a single audit-event detail. Detail pages often have an identity Card at\n// the top followed by tabbed sections — DetailPageTemplate is intentionally\n// thin so consumers can compose those freely under `children`.\n\nimport type { ReactNode } from \"react\";\nimport { PageHeader, type PageHeaderProps } from \"../components/page-header\";\nimport { Box, Flex } from \"../primitives/layout\";\nimport { useRegisteredPageActions } from \"./app-shell\";\n\nexport interface DetailPageTemplateProps\n\textends Pick<\n\t\tPageHeaderProps,\n\t\t\"breadcrumbs\" | \"title\" | \"subtitle\" | \"eyebrow\"\n\t> {\n\tactions?: ReactNode;\n\t/**\n\t * Tab strip rendered immediately under the PageHeader. Typically a\n\t * `<Tabs.Root>` containing a `<Tabs.List>` and one `<Tabs.Content>` per\n\t * pane. The template does not render `<Tabs.Content>` separately —\n\t * consumers control the tab body composition entirely.\n\t */\n\ttabs?: ReactNode;\n\t/**\n\t * Page body — the entity's identity card, tab bodies, edit forms, etc.\n\t * Rendered flush against the canvas. Add internal padding inside\n\t * `children` if you need it.\n\t */\n\tchildren: ReactNode;\n}\n\nexport function DetailPageTemplate({\n\tbreadcrumbs,\n\ttitle,\n\tsubtitle,\n\teyebrow,\n\tactions,\n\ttabs,\n\tchildren,\n}: DetailPageTemplateProps) {\n\tconst registered = useRegisteredPageActions();\n\tconst resolvedActions = actions ?? registered;\n\treturn (\n\t\t<Flex\n\t\t\tdata-testid=\"detail-page-template\"\n\t\t\tdirection=\"column\"\n\t\t\tflex=\"1\"\n\t\t\tminH=\"0\"\n\t\t>\n\t\t\t<PageHeader\n\t\t\t\tbreadcrumbs={breadcrumbs}\n\t\t\t\ttitle={title}\n\t\t\t\tsubtitle={subtitle}\n\t\t\t\teyebrow={eyebrow}\n\t\t\t\tactions={resolvedActions}\n\t\t\t/>\n\t\t\t{tabs ? <Box>{tabs}</Box> : null}\n\t\t\t<Box flex=\"1\" minH=\"0\">\n\t\t\t\t{children}\n\t\t\t</Box>\n\t\t</Flex>\n\t);\n}\nDetailPageTemplate.displayName = \"DetailPageTemplate\";\n","// src/templates/error-page.tsx\n//\n// ErrorPage — full-bleed error layout for 404 / 403 / 500 / generic\n// failures. Centered status code + message + suggested next step. No app\n// shell, no sidebar.\n//\n// We keep it deliberately spare — an enterprise B2B error screen does not\n// need a 404-illustration of an astronaut. The optional `illustration`\n// slot is there for the rare case where a product wants to reach for one\n// (e.g. a dedicated brand \"OOPS\" SVG).\n\nimport type { ReactNode } from \"react\";\nimport { Box, Flex } from \"../primitives/layout\";\nimport { Heading, Text } from \"../primitives/typography\";\n\nexport interface ErrorPageProps {\n\t/**\n\t * Status code (404, 500, 403, …) shown as the page's largest piece of\n\t * type. Pass any string — non-numeric codes like \"OOPS\" work too.\n\t */\n\tstatusCode: ReactNode;\n\t/** Short headline — e.g. \"Page not found\" or \"Something went wrong\". */\n\ttitle: ReactNode;\n\t/**\n\t * One-paragraph explanation. Keep it short — the user is already in a\n\t * frustrated state.\n\t */\n\tdescription?: ReactNode;\n\t/**\n\t * Action(s) — typically one solid button (back home / retry) plus an\n\t * optional secondary link.\n\t */\n\tactions?: ReactNode;\n\t/**\n\t * Optional illustration rendered above the status code. Use sparingly.\n\t */\n\tillustration?: ReactNode;\n\t/**\n\t * Logo or wordmark rendered top-left. Useful for branded error pages\n\t * served from the root domain.\n\t */\n\tlogo?: ReactNode;\n}\n\nexport function ErrorPage({\n\tstatusCode,\n\ttitle,\n\tdescription,\n\tactions,\n\tillustration,\n\tlogo,\n}: ErrorPageProps) {\n\treturn (\n\t\t<Flex\n\t\t\tdata-testid=\"error-page\"\n\t\t\tdirection=\"column\"\n\t\t\tminH=\"100vh\"\n\t\t\tbg=\"bg-canvas\"\n\t\t>\n\t\t\t{logo && (\n\t\t\t\t<Box px=\"8\" py=\"6\">\n\t\t\t\t\t{logo}\n\t\t\t\t</Box>\n\t\t\t)}\n\t\t\t<Flex\n\t\t\t\tflex=\"1\"\n\t\t\t\tdirection=\"column\"\n\t\t\t\talign=\"center\"\n\t\t\t\tjustify=\"center\"\n\t\t\t\tpx=\"8\"\n\t\t\t\tpb=\"16\"\n\t\t\t\ttextAlign=\"center\"\n\t\t\t>\n\t\t\t\t{illustration && <Box mb=\"8\">{illustration}</Box>}\n\t\t\t\t<Text\n\t\t\t\t\tfontSize=\"7xl\"\n\t\t\t\t\tfontWeight=\"semibold\"\n\t\t\t\t\tcolor=\"muted\"\n\t\t\t\t\tletterSpacing=\"-0.04em\"\n\t\t\t\t\tlineHeight=\"1\"\n\t\t\t\t\tmb=\"4\"\n\t\t\t\t>\n\t\t\t\t\t{statusCode}\n\t\t\t\t</Text>\n\t\t\t\t<Heading\n\t\t\t\t\tas=\"h1\"\n\t\t\t\t\tfontSize=\"2xl\"\n\t\t\t\t\tfontWeight=\"semibold\"\n\t\t\t\t\tcolor=\"default\"\n\t\t\t\t\tletterSpacing=\"-0.02em\"\n\t\t\t\t\tmb=\"3\"\n\t\t\t\t>\n\t\t\t\t\t{title}\n\t\t\t\t</Heading>\n\t\t\t\t{description && (\n\t\t\t\t\t<Text fontSize=\"md\" color=\"muted\" lineHeight=\"1.6\" maxW=\"lg\" mb=\"8\">\n\t\t\t\t\t\t{description}\n\t\t\t\t\t</Text>\n\t\t\t\t)}\n\t\t\t\t{actions && (\n\t\t\t\t\t<Flex gap=\"3\" align=\"center\" justify=\"center\">\n\t\t\t\t\t\t{actions}\n\t\t\t\t\t</Flex>\n\t\t\t\t)}\n\t\t\t</Flex>\n\t\t</Flex>\n\t);\n}\nErrorPage.displayName = \"ErrorPage\";\n","// src/templates/index-page-template.tsx\n//\n// IndexPageTemplate — the canonical \"list of items\" page layout.\n//\n// Composition (top to bottom):\n//\n// ┌─────────────────────────────────────────┐\n// │ PageHeader (breadcrumbs · title · …) │\n// ├─────────────────────────────────────────┤\n// │ Tabs (optional — under header) │\n// ├─────────────────────────────────────────┤\n// │ Toolbar (search · filters · count) │\n// ├─────────────────────────────────────────┤\n// │ children (DataTable, list, empty state) │\n// └─────────────────────────────────────────┘\n//\n// Use this template for any \"browse a list\" page: users index, OAuth-clients\n// index, audit-log, etc. The template flushes its content (no horizontal\n// padding) so a full-bleed DataTable sits cleanly under the toolbar. Pages\n// that need padded content should wrap children in a `<Box px=\"8\" py=\"6\">`.\n\nimport type { ReactNode } from \"react\";\nimport { PageHeader, type PageHeaderProps } from \"../components/page-header\";\nimport { Box, Flex } from \"../primitives/layout\";\nimport { useRegisteredPageActions } from \"./app-shell\";\n\nexport interface IndexPageTemplateProps\n\textends Pick<\n\t\tPageHeaderProps,\n\t\t\"breadcrumbs\" | \"title\" | \"subtitle\" | \"eyebrow\"\n\t> {\n\t/**\n\t * Optional explicit page-action content (rendered inside the PageHeader's\n\t * actions slot). When omitted, the template falls back to whatever a\n\t * descendant has registered via `usePageActions`.\n\t */\n\tactions?: ReactNode;\n\t/**\n\t * Optional tab strip rendered between the PageHeader and the toolbar.\n\t * Pass an instance of `<Tabs.Root>` (with its own `<Tabs.List>` and\n\t * `<Tabs.Content>`s). When omitted, no tab strip is rendered.\n\t */\n\ttabs?: ReactNode;\n\t/**\n\t * Toolbar element rendered between the tabs (if any) and the page body.\n\t * Typically an instance of `<Toolbar>` from `@knkcs/anker/components`.\n\t * Pass `null` to omit the toolbar entirely (rare).\n\t */\n\ttoolbar?: ReactNode;\n\t/**\n\t * Page body — DataTable, list, empty state, or error/loading content.\n\t * Rendered flush against the canvas. Add internal padding inside\n\t * `children` if you need it.\n\t */\n\tchildren: ReactNode;\n}\n\n/**\n * Canonical list-page layout. Renders PageHeader → optional Tabs → optional\n * Toolbar → children, full-bleed against the canvas.\n *\n * Page actions are sourced from (in priority order): `actions` prop →\n * registered slot via `usePageActions`. This lets a tab-pane component deep\n * inside `children` register its own actions without prop-drilling.\n */\nexport function IndexPageTemplate({\n\tbreadcrumbs,\n\ttitle,\n\tsubtitle,\n\teyebrow,\n\tactions,\n\ttabs,\n\ttoolbar,\n\tchildren,\n}: IndexPageTemplateProps) {\n\tconst registered = useRegisteredPageActions();\n\tconst resolvedActions = actions ?? registered;\n\treturn (\n\t\t<Flex\n\t\t\tdata-testid=\"index-page-template\"\n\t\t\tdirection=\"column\"\n\t\t\tflex=\"1\"\n\t\t\tminH=\"0\"\n\t\t>\n\t\t\t<PageHeader\n\t\t\t\tbreadcrumbs={breadcrumbs}\n\t\t\t\ttitle={title}\n\t\t\t\tsubtitle={subtitle}\n\t\t\t\teyebrow={eyebrow}\n\t\t\t\tactions={resolvedActions}\n\t\t\t/>\n\t\t\t{tabs ? <Box>{tabs}</Box> : null}\n\t\t\t{toolbar ? <Box>{toolbar}</Box> : null}\n\t\t\t<Box flex=\"1\" minH=\"0\">\n\t\t\t\t{children}\n\t\t\t</Box>\n\t\t</Flex>\n\t);\n}\nIndexPageTemplate.displayName = \"IndexPageTemplate\";\n","// src/templates/loading-page.tsx\n//\n// LoadingPage — full-bleed initial-boot loading screen. Used while the\n// authenticated app shell is being hydrated (auth check, theme loading,\n// initial data fetch). For in-page loading states (e.g. tab switch),\n// prefer a centered <Spinner /> inside the page body — this template is\n// only for the very first frame of the app.\n\nimport type { ReactNode } from \"react\";\nimport { Box, Flex } from \"../primitives/layout\";\nimport { Spinner } from \"../primitives/spinner\";\nimport { Text } from \"../primitives/typography\";\n\nexport interface LoadingPageProps {\n\t/** Optional logo rendered above the spinner. */\n\tlogo?: ReactNode;\n\t/**\n\t * Optional message rendered below the spinner. Keep it short\n\t * (e.g. \"Loading your workspace…\").\n\t */\n\tmessage?: ReactNode;\n}\n\nexport function LoadingPage({ logo, message }: LoadingPageProps) {\n\treturn (\n\t\t<Flex\n\t\t\tdata-testid=\"loading-page\"\n\t\t\tdirection=\"column\"\n\t\t\talign=\"center\"\n\t\t\tjustify=\"center\"\n\t\t\tminH=\"100vh\"\n\t\t\tbg=\"bg-canvas\"\n\t\t\tgap=\"6\"\n\t\t\ttextAlign=\"center\"\n\t\t>\n\t\t\t{logo && <Box>{logo}</Box>}\n\t\t\t<Spinner size=\"lg\" color=\"accent\" />\n\t\t\t{message && (\n\t\t\t\t<Text fontSize=\"sm\" color=\"muted\">\n\t\t\t\t\t{message}\n\t\t\t\t</Text>\n\t\t\t)}\n\t\t</Flex>\n\t);\n}\nLoadingPage.displayName = \"LoadingPage\";\n","// src/templates/maintenance-page.tsx\n//\n// MaintenancePage — full-bleed maintenance/down-for-upgrade screen. No app\n// shell. Surfaces a clear message, an optional ETA, and an optional link\n// to a status page. Operators serve this from a static asset or a\n// fallback handler when the app is offline.\n\nimport type { ReactNode } from \"react\";\nimport { Box, Flex } from \"../primitives/layout\";\nimport { Heading, Text } from \"../primitives/typography\";\n\nexport interface MaintenancePageProps {\n\t/** Logo rendered top-left. */\n\tlogo?: ReactNode;\n\t/** Headline — e.g. \"We'll be right back\". */\n\ttitle?: ReactNode;\n\t/**\n\t * One-paragraph message explaining what's happening and what users\n\t * should do (typically \"wait, we'll be back shortly\").\n\t */\n\tdescription?: ReactNode;\n\t/**\n\t * Estimated-time-of-restoration banner. Pass a string like\n\t * \"Estimated back online: 14:30 UTC\". Rendered below the description.\n\t */\n\teta?: ReactNode;\n\t/**\n\t * Optional link to a status page or twitter status. Pass a fully-\n\t * styled `<Link>` or an `<a>` element.\n\t */\n\tstatusLink?: ReactNode;\n}\n\nexport function MaintenancePage({\n\tlogo,\n\ttitle = \"We'll be right back\",\n\tdescription = \"We're upgrading the service. Please refresh in a few minutes.\",\n\teta,\n\tstatusLink,\n}: MaintenancePageProps) {\n\treturn (\n\t\t<Flex\n\t\t\tdata-testid=\"maintenance-page\"\n\t\t\tdirection=\"column\"\n\t\t\tminH=\"100vh\"\n\t\t\tbg=\"bg-canvas\"\n\t\t>\n\t\t\t{logo && (\n\t\t\t\t<Box px=\"8\" py=\"6\">\n\t\t\t\t\t{logo}\n\t\t\t\t</Box>\n\t\t\t)}\n\t\t\t<Flex\n\t\t\t\tflex=\"1\"\n\t\t\t\tdirection=\"column\"\n\t\t\t\talign=\"center\"\n\t\t\t\tjustify=\"center\"\n\t\t\t\tpx=\"8\"\n\t\t\t\tpb=\"16\"\n\t\t\t\ttextAlign=\"center\"\n\t\t\t>\n\t\t\t\t<Heading\n\t\t\t\t\tas=\"h1\"\n\t\t\t\t\tfontSize=\"3xl\"\n\t\t\t\t\tfontWeight=\"semibold\"\n\t\t\t\t\tcolor=\"default\"\n\t\t\t\t\tletterSpacing=\"-0.02em\"\n\t\t\t\t\tmb=\"4\"\n\t\t\t\t>\n\t\t\t\t\t{title}\n\t\t\t\t</Heading>\n\t\t\t\t{description && (\n\t\t\t\t\t<Text fontSize=\"md\" color=\"muted\" lineHeight=\"1.6\" maxW=\"lg\" mb=\"6\">\n\t\t\t\t\t\t{description}\n\t\t\t\t\t</Text>\n\t\t\t\t)}\n\t\t\t\t{eta && (\n\t\t\t\t\t<Box\n\t\t\t\t\t\tpx=\"4\"\n\t\t\t\t\t\tpy=\"2\"\n\t\t\t\t\t\tborderWidth=\"1px\"\n\t\t\t\t\t\tborderColor=\"border\"\n\t\t\t\t\t\tborderRadius=\"md\"\n\t\t\t\t\t\tbg=\"bg-surface\"\n\t\t\t\t\t\tmb=\"6\"\n\t\t\t\t\t>\n\t\t\t\t\t\t<Text fontSize=\"sm\" fontWeight=\"medium\" color=\"emphasized\">\n\t\t\t\t\t\t\t{eta}\n\t\t\t\t\t\t</Text>\n\t\t\t\t\t</Box>\n\t\t\t\t)}\n\t\t\t\t{statusLink && <Box>{statusLink}</Box>}\n\t\t\t</Flex>\n\t\t</Flex>\n\t);\n}\nMaintenancePage.displayName = \"MaintenancePage\";\n","// src/templates/marketing-page-template.tsx\n//\n// MarketingPageTemplate — full-bleed landing-page chrome. No app shell, no\n// sidebar, no rail. Used for product landing pages, \"about us\", coming-\n// soon teasers, and other unauthenticated marketing surfaces.\n//\n// Composition (top to bottom):\n//\n// ┌──────────────────────────────────────────┐\n// │ topbar (logo · nav · CTA) │\n// ├──────────────────────────────────────────┤\n// │ hero (eyebrow · title · subtitle · CTAs) │\n// ├──────────────────────────────────────────┤\n// │ children (feature sections, testimonials) │\n// ├──────────────────────────────────────────┤\n// │ footer (copyright, links) │\n// └──────────────────────────────────────────┘\n//\n// The template aims for the same refined-minimalism aesthetic as the rest\n// of anker — calm surfaces, generous spacing on the hero only, brand\n// colors used as accents rather than full backgrounds. No carousels, no\n// animated parallax, no auto-rotating testimonials.\n\nimport type { ReactNode } from \"react\";\nimport { Box, Flex } from \"../primitives/layout\";\nimport { Heading, Text } from \"../primitives/typography\";\n\nexport interface MarketingPageTemplateProps {\n\t/** Logo or wordmark, far-left of the topbar. */\n\tlogo?: ReactNode;\n\t/** Navigation links and/or sign-in CTA, far-right of the topbar. */\n\ttopBarRight?: ReactNode;\n\t/** Hide the topbar (rare). */\n\thideTopBar?: boolean;\n\t/** Eyebrow above the hero title (uppercase, muted). */\n\theroEyebrow?: ReactNode;\n\t/** Hero title — large display text. */\n\theroTitle?: ReactNode;\n\t/** Hero subtitle — one-paragraph value statement. */\n\theroSubtitle?: ReactNode;\n\t/** Hero CTAs — typically one solid button + one ghost link. */\n\theroActions?: ReactNode;\n\t/** Optional visual rendered to the right of the hero copy on wide viewports. */\n\theroVisual?: ReactNode;\n\t/**\n\t * Feature sections, testimonials, etc. Rendered with `maxW=\"6xl\"` and\n\t * `marginInline=\"auto\"` so content tracks a consistent reading column.\n\t */\n\tchildren?: ReactNode;\n\t/** Footer content — copyright, secondary nav, contact. */\n\tfooter?: ReactNode;\n}\n\nexport function MarketingPageTemplate({\n\tlogo,\n\ttopBarRight,\n\thideTopBar,\n\theroEyebrow,\n\theroTitle,\n\theroSubtitle,\n\theroActions,\n\theroVisual,\n\tchildren,\n\tfooter,\n}: MarketingPageTemplateProps) {\n\treturn (\n\t\t<Box data-testid=\"marketing-page-template\" minH=\"100vh\" bg=\"bg-canvas\">\n\t\t\t{!hideTopBar && (\n\t\t\t\t<Flex\n\t\t\t\t\talign=\"center\"\n\t\t\t\t\tjustify=\"space-between\"\n\t\t\t\t\tpx=\"8\"\n\t\t\t\t\tpy=\"4\"\n\t\t\t\t\tbg=\"bg-surface\"\n\t\t\t\t\tborderBottomWidth=\"1px\"\n\t\t\t\t\tborderBottomColor=\"border\"\n\t\t\t\t>\n\t\t\t\t\t<Box>{logo}</Box>\n\t\t\t\t\t<Flex gap=\"6\" align=\"center\" fontSize=\"sm\" color=\"emphasized\">\n\t\t\t\t\t\t{topBarRight}\n\t\t\t\t\t</Flex>\n\t\t\t\t</Flex>\n\t\t\t)}\n\n\t\t\t{(heroEyebrow || heroTitle || heroSubtitle || heroActions) && (\n\t\t\t\t<Box px=\"8\" py=\"20\" bg=\"bg-canvas\">\n\t\t\t\t\t<Flex\n\t\t\t\t\t\tmaxW=\"6xl\"\n\t\t\t\t\t\tmarginInline=\"auto\"\n\t\t\t\t\t\talign=\"center\"\n\t\t\t\t\t\tgap=\"12\"\n\t\t\t\t\t\tdirection={{ base: \"column\", md: \"row\" }}\n\t\t\t\t\t>\n\t\t\t\t\t\t<Box flex=\"1\" minW=\"0\">\n\t\t\t\t\t\t\t{heroEyebrow && (\n\t\t\t\t\t\t\t\t<Text\n\t\t\t\t\t\t\t\t\tfontSize=\"2xs\"\n\t\t\t\t\t\t\t\t\tfontWeight=\"semibold\"\n\t\t\t\t\t\t\t\t\tletterSpacing=\"wider\"\n\t\t\t\t\t\t\t\t\ttextTransform=\"uppercase\"\n\t\t\t\t\t\t\t\t\tcolor=\"muted\"\n\t\t\t\t\t\t\t\t\tmb=\"3\"\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t{heroEyebrow}\n\t\t\t\t\t\t\t\t</Text>\n\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t{heroTitle && (\n\t\t\t\t\t\t\t\t<Heading\n\t\t\t\t\t\t\t\t\tas=\"h1\"\n\t\t\t\t\t\t\t\t\tfontSize={{ base: \"4xl\", md: \"6xl\" }}\n\t\t\t\t\t\t\t\t\tfontWeight=\"semibold\"\n\t\t\t\t\t\t\t\t\tcolor=\"default\"\n\t\t\t\t\t\t\t\t\tletterSpacing=\"-0.02em\"\n\t\t\t\t\t\t\t\t\tlineHeight=\"1.05\"\n\t\t\t\t\t\t\t\t\tmb=\"5\"\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t{heroTitle}\n\t\t\t\t\t\t\t\t</Heading>\n\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t{heroSubtitle && (\n\t\t\t\t\t\t\t\t<Text\n\t\t\t\t\t\t\t\t\tfontSize=\"lg\"\n\t\t\t\t\t\t\t\t\tcolor=\"muted\"\n\t\t\t\t\t\t\t\t\tlineHeight=\"1.6\"\n\t\t\t\t\t\t\t\t\tmaxW=\"2xl\"\n\t\t\t\t\t\t\t\t\tmb=\"8\"\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t{heroSubtitle}\n\t\t\t\t\t\t\t\t</Text>\n\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t{heroActions && (\n\t\t\t\t\t\t\t\t<Flex gap=\"3\" align=\"center\">\n\t\t\t\t\t\t\t\t\t{heroActions}\n\t\t\t\t\t\t\t\t</Flex>\n\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t</Box>\n\t\t\t\t\t\t{heroVisual && (\n\t\t\t\t\t\t\t<Box flex=\"1\" minW=\"0\" display={{ base: \"none\", md: \"block\" }}>\n\t\t\t\t\t\t\t\t{heroVisual}\n\t\t\t\t\t\t\t</Box>\n\t\t\t\t\t\t)}\n\t\t\t\t\t</Flex>\n\t\t\t\t</Box>\n\t\t\t)}\n\n\t\t\t{children && (\n\t\t\t\t<Box px=\"8\" py=\"16\">\n\t\t\t\t\t<Box maxW=\"6xl\" marginInline=\"auto\">\n\t\t\t\t\t\t{children}\n\t\t\t\t\t</Box>\n\t\t\t\t</Box>\n\t\t\t)}\n\n\t\t\t{footer && (\n\t\t\t\t<Box\n\t\t\t\t\tpx=\"8\"\n\t\t\t\t\tpy=\"8\"\n\t\t\t\t\tbg=\"bg-subtle\"\n\t\t\t\t\tborderTopWidth=\"1px\"\n\t\t\t\t\tborderTopColor=\"border\"\n\t\t\t\t>\n\t\t\t\t\t<Box maxW=\"6xl\" marginInline=\"auto\">\n\t\t\t\t\t\t{footer}\n\t\t\t\t\t</Box>\n\t\t\t\t</Box>\n\t\t\t)}\n\t\t</Box>\n\t);\n}\nMarketingPageTemplate.displayName = \"MarketingPageTemplate\";\n","// src/templates/settings-page-template.tsx\n//\n// SettingsPageTemplate — for any \"preferences / configuration\" page that\n// uses a tabbed split between mixed form / list content. Visually identical\n// to DetailPageTemplate today, but exposed as a separate template so its\n// authoring rules (tabs are required, body is padded, max-width on forms)\n// can evolve independently.\n//\n// ┌─────────────────────────────────────────┐\n// │ PageHeader (breadcrumbs · title · …) │\n// ├─────────────────────────────────────────┤\n// │ Tabs (required for settings) │\n// ├─────────────────────────────────────────┤\n// │ children (form cards · lists · …) │\n// └─────────────────────────────────────────┘\n//\n// Use this template for: personal-settings (profile, password, MFA tabs),\n// organization settings, identity-provider settings, admin → general.\n\nimport type { ReactNode } from \"react\";\nimport { PageHeader, type PageHeaderProps } from \"../components/page-header\";\nimport { Box, Flex } from \"../primitives/layout\";\nimport { useRegisteredPageActions } from \"./app-shell\";\n\nexport interface SettingsPageTemplateProps\n\textends Pick<\n\t\tPageHeaderProps,\n\t\t\"breadcrumbs\" | \"title\" | \"subtitle\" | \"eyebrow\"\n\t> {\n\tactions?: ReactNode;\n\t/**\n\t * Tab strip. Settings pages should always have at least two tabs — if\n\t * you only have one section, use DetailPageTemplate instead.\n\t */\n\ttabs: ReactNode;\n\t/** Page body — typically Card-wrapped forms or DataLists. */\n\tchildren: ReactNode;\n\t/**\n\t * Constrain the body width for readability. Settings forms read better\n\t * at ~720px even on wide viewports. Pass a Chakra width token (`\"3xl\"`,\n\t * `\"4xl\"`) or any CSS length. @default \"3xl\" (= 768px)\n\t *\n\t * Pass `\"full\"` to disable the constraint entirely.\n\t */\n\tmaxBodyWidth?: string;\n}\n\nexport function SettingsPageTemplate({\n\tbreadcrumbs,\n\ttitle,\n\tsubtitle,\n\teyebrow,\n\tactions,\n\ttabs,\n\tchildren,\n\tmaxBodyWidth = \"3xl\",\n}: SettingsPageTemplateProps) {\n\tconst registered = useRegisteredPageActions();\n\tconst resolvedActions = actions ?? registered;\n\treturn (\n\t\t<Flex\n\t\t\tdata-testid=\"settings-page-template\"\n\t\t\tdirection=\"column\"\n\t\t\tflex=\"1\"\n\t\t\tminH=\"0\"\n\t\t>\n\t\t\t<PageHeader\n\t\t\t\tbreadcrumbs={breadcrumbs}\n\t\t\t\ttitle={title}\n\t\t\t\tsubtitle={subtitle}\n\t\t\t\teyebrow={eyebrow}\n\t\t\t\tactions={resolvedActions}\n\t\t\t/>\n\t\t\t<Box>{tabs}</Box>\n\t\t\t<Box flex=\"1\" minH=\"0\" px=\"8\" pt=\"6\">\n\t\t\t\t<Box\n\t\t\t\t\tmaxW={maxBodyWidth}\n\t\t\t\t\tmarginInline={maxBodyWidth === \"full\" ? \"0\" : \"auto\"}\n\t\t\t\t>\n\t\t\t\t\t{children}\n\t\t\t\t</Box>\n\t\t\t</Box>\n\t\t</Flex>\n\t);\n}\nSettingsPageTemplate.displayName = \"SettingsPageTemplate\";\n"]}
1
+ {"version":3,"sources":["../../src/templates/app-shell.tsx","../../src/templates/auth-page-template.tsx","../../src/templates/dashboard-page-template.tsx","../../src/templates/detail-page-template.tsx","../../src/templates/error-page.tsx","../../src/templates/index-page-template.tsx","../../src/templates/loading-page.tsx","../../src/templates/maintenance-page.tsx","../../src/templates/marketing-page-template.tsx","../../src/templates/settings-page-template.tsx"],"names":["jsx","jsxs"],"mappings":"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","file":"index.js","sourcesContent":["// src/templates/app-shell.tsx\n//\n// AppShell — top-level layout for authenticated knkCMS pages.\n//\n// Composition: a 3-column CSS grid with a fixed-width sidebar, a fluid main\n// content column, and an optional fixed-width context rail.\n//\n// ┌─────────┬───────────────────────────┬─────────┐\n// │ │ │ │\n// │ sidebar │ children │ rail │\n// │ │ (page header / content) │ │\n// │ │ │ │\n// └─────────┴───────────────────────────┴─────────┘\n//\n// Slot mechanism\n// --------------\n// AppShell installs an external slot store on its descendants via context.\n// Two named slots are exposed:\n//\n// - \"actions\" — registered via `usePageActions(node)` — surfaced by page\n// templates inside their <PageHeader actions=…> slot.\n// - \"rail\" — registered via `usePageRail(node)` — surfaced by AppShell\n// as the content of the right rail column.\n//\n// The store uses `useSyncExternalStore` so that producers (deep child\n// components rendered after the consumer) and consumers (AppShell, the page\n// templates) stay decoupled. A naive `useState`-based context would force the\n// consumer to render in the same React commit as the producer, which causes\n// the actions/rail to flicker on route changes (the Path-B fix originally\n// shipped in odon as PR #115). The external-store pattern lets the producer\n// register its content in a `useEffect`, the consumer re-reads on the next\n// browser frame, and React's concurrent renderer is happy.\n\nimport {\n\tcreateContext,\n\ttype ReactNode,\n\tuseCallback,\n\tuseContext,\n\tuseEffect,\n\tuseMemo,\n\tuseRef,\n\tuseSyncExternalStore,\n} from \"react\";\nimport { Box, Flex, Grid } from \"../primitives/layout\";\n\ntype SlotName = \"actions\" | \"rail\";\n\ninterface SlotStore {\n\tget(slot: SlotName): ReactNode;\n\tset(slot: SlotName, node: ReactNode): void;\n\tclear(slot: SlotName): void;\n\tsubscribe(slot: SlotName, listener: () => void): () => void;\n}\n\nfunction createSlotStore(): SlotStore {\n\tconst values: Record<SlotName, ReactNode> = {\n\t\tactions: null,\n\t\trail: null,\n\t};\n\tconst listeners: Record<SlotName, Set<() => void>> = {\n\t\tactions: new Set(),\n\t\trail: new Set(),\n\t};\n\n\tfunction notify(slot: SlotName) {\n\t\tfor (const listener of listeners[slot]) listener();\n\t}\n\n\treturn {\n\t\tget(slot) {\n\t\t\treturn values[slot];\n\t\t},\n\t\tset(slot, node) {\n\t\t\tif (values[slot] === node) return;\n\t\t\tvalues[slot] = node;\n\t\t\tnotify(slot);\n\t\t},\n\t\tclear(slot) {\n\t\t\tif (values[slot] === null) return;\n\t\t\tvalues[slot] = null;\n\t\t\tnotify(slot);\n\t\t},\n\t\tsubscribe(slot, listener) {\n\t\t\tlisteners[slot].add(listener);\n\t\t\treturn () => {\n\t\t\t\tlisteners[slot].delete(listener);\n\t\t\t};\n\t\t},\n\t};\n}\n\nconst SlotStoreContext = createContext<SlotStore | null>(null);\n\n/**\n * Read-side hook used internally by AppShell and the page templates to\n * subscribe to a named slot's currently-registered ReactNode. Returns `null`\n * when no producer has registered content (or when called outside an AppShell).\n */\nfunction useSlotValue(slot: SlotName): ReactNode {\n\tconst store = useContext(SlotStoreContext);\n\tconst subscribe = useCallback(\n\t\t(listener: () => void) => {\n\t\t\tif (!store) return () => undefined;\n\t\t\treturn store.subscribe(slot, listener);\n\t\t},\n\t\t[store, slot],\n\t);\n\tconst getSnapshot = useCallback(() => {\n\t\tif (!store) return null;\n\t\treturn store.get(slot);\n\t}, [store, slot]);\n\treturn useSyncExternalStore(subscribe, getSnapshot, getSnapshot);\n}\n\n/**\n * Register page-action content (typically buttons rendered to the right of\n * the page title) from any descendant of `<AppShell>`. The content is\n * surfaced by the active page template inside its `<PageHeader>` actions\n * slot.\n *\n * Pass `null` (or omit) to clear the registration. The hook is a no-op when\n * called outside an AppShell, which keeps it safe to use in stories and\n * isolated component tests.\n */\nexport function usePageActions(content: ReactNode): void {\n\tconst store = useContext(SlotStoreContext);\n\t// Stash the most recent content in a ref so the effect can run on every\n\t// render without forcing a fresh effect-cleanup cycle for unstable nodes.\n\tconst latest = useRef<ReactNode>(content);\n\tlatest.current = content;\n\tuseEffect(() => {\n\t\tif (!store) return;\n\t\tstore.set(\"actions\", latest.current);\n\t\treturn () => {\n\t\t\tstore.clear(\"actions\");\n\t\t};\n\t}, [store]);\n\t// Re-register on every change of `content` (effect above only runs once\n\t// per mount; this second effect re-pushes the latest value).\n\tuseEffect(() => {\n\t\tif (!store) return;\n\t\tstore.set(\"actions\", content);\n\t}, [store, content]);\n}\n\n/**\n * Register context-rail content from any descendant of `<AppShell>`. The\n * content is rendered in the rail column (assuming the AppShell has a rail\n * slot enabled).\n *\n * Pass `null` (or omit) to clear the registration. The hook is a no-op when\n * called outside an AppShell.\n */\nexport function usePageRail(content: ReactNode): void {\n\tconst store = useContext(SlotStoreContext);\n\tconst latest = useRef<ReactNode>(content);\n\tlatest.current = content;\n\tuseEffect(() => {\n\t\tif (!store) return;\n\t\tstore.set(\"rail\", latest.current);\n\t\treturn () => {\n\t\t\tstore.clear(\"rail\");\n\t\t};\n\t}, [store]);\n\tuseEffect(() => {\n\t\tif (!store) return;\n\t\tstore.set(\"rail\", content);\n\t}, [store, content]);\n}\n\n/**\n * Internal hook used by page templates to read the currently-registered\n * page-actions ReactNode. Page templates fall back to a locally-passed\n * `actions` prop when nothing is registered.\n */\nexport function useRegisteredPageActions(): ReactNode {\n\treturn useSlotValue(\"actions\");\n}\n\nexport interface AppShellProps {\n\t/**\n\t * Sidebar element — the navigation column. Required. Typically an instance\n\t * of `<Sidebar>` from `@knkcs/anker/components`. AppShell does not own the\n\t * sidebar's collapsed-state — pass it through the Sidebar's own props.\n\t */\n\tsidebar: ReactNode;\n\t/**\n\t * Context rail element. Acts as a *fallback* for the rail column: it\n\t * renders when no descendant has registered rail content via\n\t * `usePageRail`. Registered content always wins over the prop.\n\t *\n\t * The rail column is enabled — and a grid track is reserved — when *either*\n\t * a `rail` prop is supplied *or* a descendant has registered rail content.\n\t * Omit both (or pass `null`) to drop the rail column entirely.\n\t */\n\trail?: ReactNode;\n\t/** Page content. */\n\tchildren: ReactNode;\n}\n\n/**\n * AppShell is the top-level layout for authenticated knkCMS pages. It owns\n * the slot context that powers `usePageActions` and `usePageRail`, and\n * arranges sidebar / main / rail in a 3-column CSS grid.\n *\n * AppShell is layout-only — it does not render a PageHeader, and it does not\n * inject any business chrome. Pages compose `<IndexPageTemplate>`,\n * `<DetailPageTemplate>`, etc. inside `children`.\n *\n * Rail precedence: content registered by a descendant via `usePageRail` wins\n * over the static `rail` prop. The prop is the fallback when no descendant\n * has registered content. Rationale: a descendant explicitly registering\n * content is signaling \"show this here\", which should trump the static prop.\n */\nexport function AppShell({ sidebar, rail, children }: AppShellProps) {\n\t// AppShell is split into an outer Provider and an inner Renderer so the\n\t// renderer's `useContext(SlotStoreContext)` resolves to *our* store rather\n\t// than the parent context. (A naive single component that both provides\n\t// and consumes the context at the same level reads the parent context —\n\t// the Provider only takes effect for descendants.)\n\tconst store = useMemo(() => createSlotStore(), []);\n\treturn (\n\t\t<SlotStoreContext.Provider value={store}>\n\t\t\t<AppShellInner sidebar={sidebar} rail={rail}>\n\t\t\t\t{children}\n\t\t\t</AppShellInner>\n\t\t</SlotStoreContext.Provider>\n\t);\n}\nAppShell.displayName = \"AppShell\";\n\nfunction AppShellInner({ sidebar, rail, children }: AppShellProps) {\n\tconst railNode = useSlotValue(\"rail\");\n\n\t// Precedence: registered rail content wins, fall back to the `rail` prop.\n\t// The rail column is enabled when *either* the consumer passed a `rail`\n\t// element *or* a descendant registered content via `usePageRail`.\n\tconst renderedRail = railNode ?? rail;\n\tconst showRailColumn =\n\t\trenderedRail !== undefined &&\n\t\trenderedRail !== null &&\n\t\trenderedRail !== false;\n\n\treturn (\n\t\t<Grid\n\t\t\tdata-testid=\"app-shell\"\n\t\t\tdata-rail={showRailColumn ? \"true\" : \"false\"}\n\t\t\ttemplateColumns={showRailColumn ? \"auto 1fr auto\" : \"auto 1fr\"}\n\t\t\tminH=\"100vh\"\n\t\t\tbg=\"bg-canvas\"\n\t\t>\n\t\t\t<Box\n\t\t\t\tdata-testid=\"app-shell-sidebar\"\n\t\t\t\tgridColumn=\"1\"\n\t\t\t\tminW=\"0\"\n\t\t\t\tposition=\"sticky\"\n\t\t\t\ttop=\"0\"\n\t\t\t\talignSelf=\"start\"\n\t\t\t\tmaxH=\"100vh\"\n\t\t\t\toverflowY=\"auto\"\n\t\t\t>\n\t\t\t\t{sidebar}\n\t\t\t</Box>\n\t\t\t<Flex\n\t\t\t\tdata-testid=\"app-shell-main\"\n\t\t\t\tgridColumn=\"2\"\n\t\t\t\tdirection=\"column\"\n\t\t\t\tminW=\"0\"\n\t\t\t\tminH=\"100vh\"\n\t\t\t\tbg=\"bg-surface\"\n\t\t\t\tborderLeftWidth=\"1px\"\n\t\t\t\tborderColor=\"border\"\n\t\t\t>\n\t\t\t\t{children}\n\t\t\t</Flex>\n\t\t\t{showRailColumn ? (\n\t\t\t\t<Box\n\t\t\t\t\tdata-testid=\"app-shell-rail\"\n\t\t\t\t\tgridColumn=\"3\"\n\t\t\t\t\tminW=\"0\"\n\t\t\t\t\tposition=\"sticky\"\n\t\t\t\t\ttop=\"0\"\n\t\t\t\t\talignSelf=\"start\"\n\t\t\t\t\tmaxH=\"100vh\"\n\t\t\t\t\toverflowY=\"auto\"\n\t\t\t\t\tbg=\"bg-surface\"\n\t\t\t\t\tborderLeftWidth=\"1px\"\n\t\t\t\t\tborderColor=\"border\"\n\t\t\t\t>\n\t\t\t\t\t{renderedRail}\n\t\t\t\t</Box>\n\t\t\t) : null}\n\t\t</Grid>\n\t);\n}\nAppShellInner.displayName = \"AppShellInner\";\n","// src/templates/auth-page-template.tsx\n//\n// AuthPageTemplate — full-bleed centered card on a neutral canvas. No app\n// shell, no sidebar, no rail. Used for login, register, MFA challenge,\n// forgot/reset password, and email-verification screens.\n//\n// Internally this is a thin wrapper around `<AuthCard>` (in\n// `@knkcs/anker/components`) — surfaced under the templates module so\n// consumers can import their layout chrome from one entry point.\n//\n// We re-expose the wrapper rather than re-implementing it because AuthCard\n// is already battle-tested and stable; the templates module is the consumer\n// contract, AuthCard is the implementation.\n\nimport type { ReactNode } from \"react\";\nimport { AuthCard, type AuthCardProps } from \"../components/auth-card\";\n\nexport interface AuthPageTemplateProps extends AuthCardProps {\n\t/**\n\t * Page body — typically a form or a verification CTA. Inherits all\n\t * AuthCard slots (logo, topBarRight, eyebrow, title, subtitle, footer).\n\t */\n\tchildren: ReactNode;\n}\n\n/**\n * Auth-flow page layout. Use for any pre-authentication screen (login,\n * register, MFA, forgot-password, reset-password) and for short\n * confirmation flows (email-verify, account-deleted). For consent\n * dialogs, prefer `<OAuthConsentPageTemplate>` (denser layout).\n *\n * The template supplies a centered card with a dot-grid background, an\n * optional topbar with logo + locale switcher, and a footer slot. To hide\n * the topbar (rare — embedded preview, printable receipts) pass\n * `hideTopBar`. To hide the dot-grid (printable) pass `hideBackground`.\n */\nexport function AuthPageTemplate(props: AuthPageTemplateProps) {\n\treturn <AuthCard {...props} />;\n}\nAuthPageTemplate.displayName = \"AuthPageTemplate\";\n","// src/templates/dashboard-page-template.tsx\n//\n// DashboardPageTemplate — for at-a-glance overview pages composed of a grid\n// of widgets (Stat cards, mini-charts, recent-activity panes, etc.).\n//\n// ┌─────────────────────────────────────────┐\n// │ PageHeader (greeting · range picker) │\n// ├─────────────────────────────────────────┤\n// │ ┌──────┬──────┬──────┬──────┐ │\n// │ │ stat │ stat │ stat │ stat │ │\n// │ ├──────┴──────┼──────┴──────┤ │\n// │ │ widget │ widget │ │\n// │ │ │ │ │\n// │ ├─────────────┴─────────────┤ │\n// │ │ wide widget │ │\n// │ └───────────────────────────┘ │\n// └─────────────────────────────────────────┘\n//\n// The template provides the page chrome and a 12-column responsive grid.\n// Widgets opt into the column count via Chakra's `gridColumn` prop on each\n// child. Inspired by Linear's \"All issues\" overview and GitHub's repo\n// insights — calm surfaces, dense info, clear hierarchy.\n\nimport type { ReactNode } from \"react\";\nimport { PageHeader, type PageHeaderProps } from \"../components/page-header\";\nimport { Box, Flex, Grid } from \"../primitives/layout\";\nimport { useRegisteredPageActions } from \"./app-shell\";\n\nexport interface DashboardPageTemplateProps\n\textends Pick<\n\t\tPageHeaderProps,\n\t\t\"breadcrumbs\" | \"title\" | \"subtitle\" | \"eyebrow\"\n\t> {\n\tactions?: ReactNode;\n\t/**\n\t * Dashboard widgets. Children are placed inside a 12-column responsive\n\t * CSS grid with `gap=\"4\"`. Each child should set `gridColumn` (e.g.\n\t * `\"span 3\"` for a quarter-width tile, `\"span 6\"` for half, `\"span 12\"`\n\t * for full-width). The default per-child column span is `\"span 12\"`.\n\t */\n\tchildren: ReactNode;\n\t/**\n\t * Override the grid `gap` between widgets. @default \"4\" (= 16px)\n\t */\n\tgap?: string;\n}\n\nexport function DashboardPageTemplate({\n\tbreadcrumbs,\n\ttitle,\n\tsubtitle,\n\teyebrow,\n\tactions,\n\tchildren,\n\tgap = \"4\",\n}: DashboardPageTemplateProps) {\n\tconst registered = useRegisteredPageActions();\n\tconst resolvedActions = actions ?? registered;\n\treturn (\n\t\t<Flex\n\t\t\tdata-testid=\"dashboard-page-template\"\n\t\t\tdirection=\"column\"\n\t\t\tflex=\"1\"\n\t\t\tminH=\"0\"\n\t\t>\n\t\t\t<PageHeader\n\t\t\t\tbreadcrumbs={breadcrumbs}\n\t\t\t\ttitle={title}\n\t\t\t\tsubtitle={subtitle}\n\t\t\t\teyebrow={eyebrow}\n\t\t\t\tactions={resolvedActions}\n\t\t\t/>\n\t\t\t<Box flex=\"1\" minH=\"0\" px=\"8\" py=\"6\">\n\t\t\t\t<Grid\n\t\t\t\t\tdata-testid=\"dashboard-grid\"\n\t\t\t\t\ttemplateColumns=\"repeat(12, minmax(0, 1fr))\"\n\t\t\t\t\tgap={gap}\n\t\t\t\t>\n\t\t\t\t\t{children}\n\t\t\t\t</Grid>\n\t\t\t</Box>\n\t\t</Flex>\n\t);\n}\nDashboardPageTemplate.displayName = \"DashboardPageTemplate\";\n","// src/templates/detail-page-template.tsx\n//\n// DetailPageTemplate — the canonical \"single entity\" page layout.\n//\n// Composition:\n//\n// ┌─────────────────────────────────────────┐\n// │ PageHeader (breadcrumbs · title · …) │\n// ├─────────────────────────────────────────┤\n// │ Tabs (optional — pinned beneath header) │\n// ├─────────────────────────────────────────┤\n// │ children (identity card · panes · …) │\n// └─────────────────────────────────────────┘\n//\n// Use for pages that show one entity: a single user, a single OAuth client,\n// a single audit-event detail. Detail pages often have an identity Card at\n// the top followed by tabbed sections — DetailPageTemplate is intentionally\n// thin so consumers can compose those freely under `children`.\n\nimport type { ReactNode } from \"react\";\nimport { PageHeader, type PageHeaderProps } from \"../components/page-header\";\nimport { Box, Flex } from \"../primitives/layout\";\nimport { useRegisteredPageActions } from \"./app-shell\";\n\nexport interface DetailPageTemplateProps\n\textends Pick<\n\t\tPageHeaderProps,\n\t\t\"breadcrumbs\" | \"title\" | \"subtitle\" | \"eyebrow\"\n\t> {\n\tactions?: ReactNode;\n\t/**\n\t * Tab strip rendered immediately under the PageHeader. Typically a\n\t * `<Tabs.Root>` containing a `<Tabs.List>` and one `<Tabs.Content>` per\n\t * pane. The template does not render `<Tabs.Content>` separately —\n\t * consumers control the tab body composition entirely.\n\t */\n\ttabs?: ReactNode;\n\t/**\n\t * Page body — the entity's identity card, tab bodies, edit forms, etc.\n\t * Rendered flush against the canvas. Add internal padding inside\n\t * `children` if you need it.\n\t */\n\tchildren: ReactNode;\n}\n\nexport function DetailPageTemplate({\n\tbreadcrumbs,\n\ttitle,\n\tsubtitle,\n\teyebrow,\n\tactions,\n\ttabs,\n\tchildren,\n}: DetailPageTemplateProps) {\n\tconst registered = useRegisteredPageActions();\n\tconst resolvedActions = actions ?? registered;\n\treturn (\n\t\t<Flex\n\t\t\tdata-testid=\"detail-page-template\"\n\t\t\tdirection=\"column\"\n\t\t\tflex=\"1\"\n\t\t\tminH=\"0\"\n\t\t>\n\t\t\t<PageHeader\n\t\t\t\tbreadcrumbs={breadcrumbs}\n\t\t\t\ttitle={title}\n\t\t\t\tsubtitle={subtitle}\n\t\t\t\teyebrow={eyebrow}\n\t\t\t\tactions={resolvedActions}\n\t\t\t/>\n\t\t\t{tabs ? <Box>{tabs}</Box> : null}\n\t\t\t<Box flex=\"1\" minH=\"0\">\n\t\t\t\t{children}\n\t\t\t</Box>\n\t\t</Flex>\n\t);\n}\nDetailPageTemplate.displayName = \"DetailPageTemplate\";\n","// src/templates/error-page.tsx\n//\n// ErrorPage — full-bleed error layout for 404 / 403 / 500 / generic\n// failures. Centered status code + message + suggested next step. No app\n// shell, no sidebar.\n//\n// We keep it deliberately spare — an enterprise B2B error screen does not\n// need a 404-illustration of an astronaut. The optional `illustration`\n// slot is there for the rare case where a product wants to reach for one\n// (e.g. a dedicated brand \"OOPS\" SVG).\n\nimport type { ReactNode } from \"react\";\nimport { Box, Flex } from \"../primitives/layout\";\nimport { Heading, Text } from \"../primitives/typography\";\n\nexport interface ErrorPageProps {\n\t/**\n\t * Status code (404, 500, 403, …) shown as the page's largest piece of\n\t * type. Pass any string — non-numeric codes like \"OOPS\" work too.\n\t */\n\tstatusCode: ReactNode;\n\t/** Short headline — e.g. \"Page not found\" or \"Something went wrong\". */\n\ttitle: ReactNode;\n\t/**\n\t * One-paragraph explanation. Keep it short — the user is already in a\n\t * frustrated state.\n\t */\n\tdescription?: ReactNode;\n\t/**\n\t * Action(s) — typically one solid button (back home / retry) plus an\n\t * optional secondary link.\n\t */\n\tactions?: ReactNode;\n\t/**\n\t * Optional illustration rendered above the status code. Use sparingly.\n\t */\n\tillustration?: ReactNode;\n\t/**\n\t * Logo or wordmark rendered top-left. Useful for branded error pages\n\t * served from the root domain.\n\t */\n\tlogo?: ReactNode;\n}\n\nexport function ErrorPage({\n\tstatusCode,\n\ttitle,\n\tdescription,\n\tactions,\n\tillustration,\n\tlogo,\n}: ErrorPageProps) {\n\treturn (\n\t\t<Flex\n\t\t\tdata-testid=\"error-page\"\n\t\t\tdirection=\"column\"\n\t\t\tminH=\"100vh\"\n\t\t\tbg=\"bg-canvas\"\n\t\t>\n\t\t\t{logo && (\n\t\t\t\t<Box px=\"8\" py=\"6\">\n\t\t\t\t\t{logo}\n\t\t\t\t</Box>\n\t\t\t)}\n\t\t\t<Flex\n\t\t\t\tflex=\"1\"\n\t\t\t\tdirection=\"column\"\n\t\t\t\talign=\"center\"\n\t\t\t\tjustify=\"center\"\n\t\t\t\tpx=\"8\"\n\t\t\t\tpb=\"16\"\n\t\t\t\ttextAlign=\"center\"\n\t\t\t>\n\t\t\t\t{illustration && <Box mb=\"8\">{illustration}</Box>}\n\t\t\t\t<Text\n\t\t\t\t\tfontSize=\"7xl\"\n\t\t\t\t\tfontWeight=\"semibold\"\n\t\t\t\t\tcolor=\"muted\"\n\t\t\t\t\tletterSpacing=\"-0.04em\"\n\t\t\t\t\tlineHeight=\"1\"\n\t\t\t\t\tmb=\"4\"\n\t\t\t\t>\n\t\t\t\t\t{statusCode}\n\t\t\t\t</Text>\n\t\t\t\t<Heading\n\t\t\t\t\tas=\"h1\"\n\t\t\t\t\tfontSize=\"2xl\"\n\t\t\t\t\tfontWeight=\"semibold\"\n\t\t\t\t\tcolor=\"default\"\n\t\t\t\t\tletterSpacing=\"-0.02em\"\n\t\t\t\t\tmb=\"3\"\n\t\t\t\t>\n\t\t\t\t\t{title}\n\t\t\t\t</Heading>\n\t\t\t\t{description && (\n\t\t\t\t\t<Text fontSize=\"md\" color=\"muted\" lineHeight=\"1.6\" maxW=\"lg\" mb=\"8\">\n\t\t\t\t\t\t{description}\n\t\t\t\t\t</Text>\n\t\t\t\t)}\n\t\t\t\t{actions && (\n\t\t\t\t\t<Flex gap=\"3\" align=\"center\" justify=\"center\">\n\t\t\t\t\t\t{actions}\n\t\t\t\t\t</Flex>\n\t\t\t\t)}\n\t\t\t</Flex>\n\t\t</Flex>\n\t);\n}\nErrorPage.displayName = \"ErrorPage\";\n","// src/templates/index-page-template.tsx\n//\n// IndexPageTemplate — the canonical \"list of items\" page layout.\n//\n// Composition (top to bottom):\n//\n// ┌─────────────────────────────────────────┐\n// │ PageHeader (breadcrumbs · title · …) │\n// ├─────────────────────────────────────────┤\n// │ Tabs (optional — under header) │\n// ├─────────────────────────────────────────┤\n// │ Toolbar (search · filters · count) │\n// ├─────────────────────────────────────────┤\n// │ children (DataTable, list, empty state) │\n// └─────────────────────────────────────────┘\n//\n// Use this template for any \"browse a list\" page: users index, OAuth-clients\n// index, audit-log, etc. The template flushes its content (no horizontal\n// padding) so a full-bleed DataTable sits cleanly under the toolbar. Pages\n// that need padded content should wrap children in a `<Box px=\"8\" py=\"6\">`.\n\nimport type { ReactNode } from \"react\";\nimport { PageHeader, type PageHeaderProps } from \"../components/page-header\";\nimport { Box, Flex } from \"../primitives/layout\";\nimport { useRegisteredPageActions } from \"./app-shell\";\n\nexport interface IndexPageTemplateProps\n\textends Pick<\n\t\tPageHeaderProps,\n\t\t\"breadcrumbs\" | \"title\" | \"subtitle\" | \"eyebrow\"\n\t> {\n\t/**\n\t * Optional explicit page-action content (rendered inside the PageHeader's\n\t * actions slot). When omitted, the template falls back to whatever a\n\t * descendant has registered via `usePageActions`.\n\t */\n\tactions?: ReactNode;\n\t/**\n\t * Optional tab strip rendered between the PageHeader and the toolbar.\n\t * Pass an instance of `<Tabs.Root>` (with its own `<Tabs.List>` and\n\t * `<Tabs.Content>`s). When omitted, no tab strip is rendered.\n\t */\n\ttabs?: ReactNode;\n\t/**\n\t * Toolbar element rendered between the tabs (if any) and the page body.\n\t * Typically an instance of `<Toolbar>` from `@knkcs/anker/components`.\n\t * Pass `null` to omit the toolbar entirely (rare).\n\t */\n\ttoolbar?: ReactNode;\n\t/**\n\t * Page body — DataTable, list, empty state, or error/loading content.\n\t * Rendered flush against the canvas. Add internal padding inside\n\t * `children` if you need it.\n\t */\n\tchildren: ReactNode;\n}\n\n/**\n * Canonical list-page layout. Renders PageHeader → optional Tabs → optional\n * Toolbar → children, full-bleed against the canvas.\n *\n * Page actions are sourced from (in priority order): `actions` prop →\n * registered slot via `usePageActions`. This lets a tab-pane component deep\n * inside `children` register its own actions without prop-drilling.\n */\nexport function IndexPageTemplate({\n\tbreadcrumbs,\n\ttitle,\n\tsubtitle,\n\teyebrow,\n\tactions,\n\ttabs,\n\ttoolbar,\n\tchildren,\n}: IndexPageTemplateProps) {\n\tconst registered = useRegisteredPageActions();\n\tconst resolvedActions = actions ?? registered;\n\treturn (\n\t\t<Flex\n\t\t\tdata-testid=\"index-page-template\"\n\t\t\tdirection=\"column\"\n\t\t\tflex=\"1\"\n\t\t\tminH=\"0\"\n\t\t>\n\t\t\t<PageHeader\n\t\t\t\tbreadcrumbs={breadcrumbs}\n\t\t\t\ttitle={title}\n\t\t\t\tsubtitle={subtitle}\n\t\t\t\teyebrow={eyebrow}\n\t\t\t\tactions={resolvedActions}\n\t\t\t/>\n\t\t\t{tabs ? <Box>{tabs}</Box> : null}\n\t\t\t{toolbar ? <Box>{toolbar}</Box> : null}\n\t\t\t<Box flex=\"1\" minH=\"0\">\n\t\t\t\t{children}\n\t\t\t</Box>\n\t\t</Flex>\n\t);\n}\nIndexPageTemplate.displayName = \"IndexPageTemplate\";\n","// src/templates/loading-page.tsx\n//\n// LoadingPage — full-bleed initial-boot loading screen. Used while the\n// authenticated app shell is being hydrated (auth check, theme loading,\n// initial data fetch). For in-page loading states (e.g. tab switch),\n// prefer a centered <Spinner /> inside the page body — this template is\n// only for the very first frame of the app.\n\nimport type { ReactNode } from \"react\";\nimport { Box, Flex } from \"../primitives/layout\";\nimport { Spinner } from \"../primitives/spinner\";\nimport { Text } from \"../primitives/typography\";\n\nexport interface LoadingPageProps {\n\t/** Optional logo rendered above the spinner. */\n\tlogo?: ReactNode;\n\t/**\n\t * Optional message rendered below the spinner. Keep it short\n\t * (e.g. \"Loading your workspace…\").\n\t */\n\tmessage?: ReactNode;\n}\n\nexport function LoadingPage({ logo, message }: LoadingPageProps) {\n\treturn (\n\t\t<Flex\n\t\t\tdata-testid=\"loading-page\"\n\t\t\tdirection=\"column\"\n\t\t\talign=\"center\"\n\t\t\tjustify=\"center\"\n\t\t\tminH=\"100vh\"\n\t\t\tbg=\"bg-canvas\"\n\t\t\tgap=\"6\"\n\t\t\ttextAlign=\"center\"\n\t\t>\n\t\t\t{logo && <Box>{logo}</Box>}\n\t\t\t<Spinner size=\"lg\" color=\"accent\" />\n\t\t\t{message && (\n\t\t\t\t<Text fontSize=\"sm\" color=\"muted\">\n\t\t\t\t\t{message}\n\t\t\t\t</Text>\n\t\t\t)}\n\t\t</Flex>\n\t);\n}\nLoadingPage.displayName = \"LoadingPage\";\n","// src/templates/maintenance-page.tsx\n//\n// MaintenancePage — full-bleed maintenance/down-for-upgrade screen. No app\n// shell. Surfaces a clear message, an optional ETA, and an optional link\n// to a status page. Operators serve this from a static asset or a\n// fallback handler when the app is offline.\n\nimport type { ReactNode } from \"react\";\nimport { Box, Flex } from \"../primitives/layout\";\nimport { Heading, Text } from \"../primitives/typography\";\n\nexport interface MaintenancePageProps {\n\t/** Logo rendered top-left. */\n\tlogo?: ReactNode;\n\t/** Headline — e.g. \"We'll be right back\". */\n\ttitle?: ReactNode;\n\t/**\n\t * One-paragraph message explaining what's happening and what users\n\t * should do (typically \"wait, we'll be back shortly\").\n\t */\n\tdescription?: ReactNode;\n\t/**\n\t * Estimated-time-of-restoration banner. Pass a string like\n\t * \"Estimated back online: 14:30 UTC\". Rendered below the description.\n\t */\n\teta?: ReactNode;\n\t/**\n\t * Optional link to a status page or twitter status. Pass a fully-\n\t * styled `<Link>` or an `<a>` element.\n\t */\n\tstatusLink?: ReactNode;\n}\n\nexport function MaintenancePage({\n\tlogo,\n\ttitle = \"We'll be right back\",\n\tdescription = \"We're upgrading the service. Please refresh in a few minutes.\",\n\teta,\n\tstatusLink,\n}: MaintenancePageProps) {\n\treturn (\n\t\t<Flex\n\t\t\tdata-testid=\"maintenance-page\"\n\t\t\tdirection=\"column\"\n\t\t\tminH=\"100vh\"\n\t\t\tbg=\"bg-canvas\"\n\t\t>\n\t\t\t{logo && (\n\t\t\t\t<Box px=\"8\" py=\"6\">\n\t\t\t\t\t{logo}\n\t\t\t\t</Box>\n\t\t\t)}\n\t\t\t<Flex\n\t\t\t\tflex=\"1\"\n\t\t\t\tdirection=\"column\"\n\t\t\t\talign=\"center\"\n\t\t\t\tjustify=\"center\"\n\t\t\t\tpx=\"8\"\n\t\t\t\tpb=\"16\"\n\t\t\t\ttextAlign=\"center\"\n\t\t\t>\n\t\t\t\t<Heading\n\t\t\t\t\tas=\"h1\"\n\t\t\t\t\tfontSize=\"3xl\"\n\t\t\t\t\tfontWeight=\"semibold\"\n\t\t\t\t\tcolor=\"default\"\n\t\t\t\t\tletterSpacing=\"-0.02em\"\n\t\t\t\t\tmb=\"4\"\n\t\t\t\t>\n\t\t\t\t\t{title}\n\t\t\t\t</Heading>\n\t\t\t\t{description && (\n\t\t\t\t\t<Text fontSize=\"md\" color=\"muted\" lineHeight=\"1.6\" maxW=\"lg\" mb=\"6\">\n\t\t\t\t\t\t{description}\n\t\t\t\t\t</Text>\n\t\t\t\t)}\n\t\t\t\t{eta && (\n\t\t\t\t\t<Box\n\t\t\t\t\t\tpx=\"4\"\n\t\t\t\t\t\tpy=\"2\"\n\t\t\t\t\t\tborderWidth=\"1px\"\n\t\t\t\t\t\tborderColor=\"border\"\n\t\t\t\t\t\tborderRadius=\"md\"\n\t\t\t\t\t\tbg=\"bg-surface\"\n\t\t\t\t\t\tmb=\"6\"\n\t\t\t\t\t>\n\t\t\t\t\t\t<Text fontSize=\"sm\" fontWeight=\"medium\" color=\"emphasized\">\n\t\t\t\t\t\t\t{eta}\n\t\t\t\t\t\t</Text>\n\t\t\t\t\t</Box>\n\t\t\t\t)}\n\t\t\t\t{statusLink && <Box>{statusLink}</Box>}\n\t\t\t</Flex>\n\t\t</Flex>\n\t);\n}\nMaintenancePage.displayName = \"MaintenancePage\";\n","// src/templates/marketing-page-template.tsx\n//\n// MarketingPageTemplate — full-bleed landing-page chrome. No app shell, no\n// sidebar, no rail. Used for product landing pages, \"about us\", coming-\n// soon teasers, and other unauthenticated marketing surfaces.\n//\n// Composition (top to bottom):\n//\n// ┌──────────────────────────────────────────┐\n// │ topbar (logo · nav · CTA) │\n// ├──────────────────────────────────────────┤\n// │ hero (eyebrow · title · subtitle · CTAs) │\n// ├──────────────────────────────────────────┤\n// │ children (feature sections, testimonials) │\n// ├──────────────────────────────────────────┤\n// │ footer (copyright, links) │\n// └──────────────────────────────────────────┘\n//\n// The template aims for the same refined-minimalism aesthetic as the rest\n// of anker — calm surfaces, generous spacing on the hero only, brand\n// colors used as accents rather than full backgrounds. No carousels, no\n// animated parallax, no auto-rotating testimonials.\n\nimport type { ReactNode } from \"react\";\nimport { Box, Flex } from \"../primitives/layout\";\nimport { Heading, Text } from \"../primitives/typography\";\n\nexport interface MarketingPageTemplateProps {\n\t/** Logo or wordmark, far-left of the topbar. */\n\tlogo?: ReactNode;\n\t/** Navigation links and/or sign-in CTA, far-right of the topbar. */\n\ttopBarRight?: ReactNode;\n\t/** Hide the topbar (rare). */\n\thideTopBar?: boolean;\n\t/** Eyebrow above the hero title (uppercase, muted). */\n\theroEyebrow?: ReactNode;\n\t/** Hero title — large display text. */\n\theroTitle?: ReactNode;\n\t/** Hero subtitle — one-paragraph value statement. */\n\theroSubtitle?: ReactNode;\n\t/** Hero CTAs — typically one solid button + one ghost link. */\n\theroActions?: ReactNode;\n\t/** Optional visual rendered to the right of the hero copy on wide viewports. */\n\theroVisual?: ReactNode;\n\t/**\n\t * Feature sections, testimonials, etc. Rendered with `maxW=\"6xl\"` and\n\t * `marginInline=\"auto\"` so content tracks a consistent reading column.\n\t */\n\tchildren?: ReactNode;\n\t/** Footer content — copyright, secondary nav, contact. */\n\tfooter?: ReactNode;\n}\n\nexport function MarketingPageTemplate({\n\tlogo,\n\ttopBarRight,\n\thideTopBar,\n\theroEyebrow,\n\theroTitle,\n\theroSubtitle,\n\theroActions,\n\theroVisual,\n\tchildren,\n\tfooter,\n}: MarketingPageTemplateProps) {\n\treturn (\n\t\t<Box data-testid=\"marketing-page-template\" minH=\"100vh\" bg=\"bg-canvas\">\n\t\t\t{!hideTopBar && (\n\t\t\t\t<Flex\n\t\t\t\t\talign=\"center\"\n\t\t\t\t\tjustify=\"space-between\"\n\t\t\t\t\tpx=\"8\"\n\t\t\t\t\tpy=\"4\"\n\t\t\t\t\tbg=\"bg-surface\"\n\t\t\t\t\tborderBottomWidth=\"1px\"\n\t\t\t\t\tborderBottomColor=\"border\"\n\t\t\t\t>\n\t\t\t\t\t<Box>{logo}</Box>\n\t\t\t\t\t<Flex gap=\"6\" align=\"center\" fontSize=\"sm\" color=\"emphasized\">\n\t\t\t\t\t\t{topBarRight}\n\t\t\t\t\t</Flex>\n\t\t\t\t</Flex>\n\t\t\t)}\n\n\t\t\t{(heroEyebrow || heroTitle || heroSubtitle || heroActions) && (\n\t\t\t\t<Box px=\"8\" py=\"20\" bg=\"bg-canvas\">\n\t\t\t\t\t<Flex\n\t\t\t\t\t\tmaxW=\"6xl\"\n\t\t\t\t\t\tmarginInline=\"auto\"\n\t\t\t\t\t\talign=\"center\"\n\t\t\t\t\t\tgap=\"12\"\n\t\t\t\t\t\tdirection={{ base: \"column\", md: \"row\" }}\n\t\t\t\t\t>\n\t\t\t\t\t\t<Box flex=\"1\" minW=\"0\">\n\t\t\t\t\t\t\t{heroEyebrow && (\n\t\t\t\t\t\t\t\t<Text\n\t\t\t\t\t\t\t\t\tfontSize=\"2xs\"\n\t\t\t\t\t\t\t\t\tfontWeight=\"semibold\"\n\t\t\t\t\t\t\t\t\tletterSpacing=\"wider\"\n\t\t\t\t\t\t\t\t\ttextTransform=\"uppercase\"\n\t\t\t\t\t\t\t\t\tcolor=\"muted\"\n\t\t\t\t\t\t\t\t\tmb=\"3\"\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t{heroEyebrow}\n\t\t\t\t\t\t\t\t</Text>\n\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t{heroTitle && (\n\t\t\t\t\t\t\t\t<Heading\n\t\t\t\t\t\t\t\t\tas=\"h1\"\n\t\t\t\t\t\t\t\t\tfontSize={{ base: \"4xl\", md: \"6xl\" }}\n\t\t\t\t\t\t\t\t\tfontWeight=\"semibold\"\n\t\t\t\t\t\t\t\t\tcolor=\"default\"\n\t\t\t\t\t\t\t\t\tletterSpacing=\"-0.02em\"\n\t\t\t\t\t\t\t\t\tlineHeight=\"1.05\"\n\t\t\t\t\t\t\t\t\tmb=\"5\"\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t{heroTitle}\n\t\t\t\t\t\t\t\t</Heading>\n\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t{heroSubtitle && (\n\t\t\t\t\t\t\t\t<Text\n\t\t\t\t\t\t\t\t\tfontSize=\"lg\"\n\t\t\t\t\t\t\t\t\tcolor=\"muted\"\n\t\t\t\t\t\t\t\t\tlineHeight=\"1.6\"\n\t\t\t\t\t\t\t\t\tmaxW=\"2xl\"\n\t\t\t\t\t\t\t\t\tmb=\"8\"\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t{heroSubtitle}\n\t\t\t\t\t\t\t\t</Text>\n\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t{heroActions && (\n\t\t\t\t\t\t\t\t<Flex gap=\"3\" align=\"center\">\n\t\t\t\t\t\t\t\t\t{heroActions}\n\t\t\t\t\t\t\t\t</Flex>\n\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t</Box>\n\t\t\t\t\t\t{heroVisual && (\n\t\t\t\t\t\t\t<Box flex=\"1\" minW=\"0\" display={{ base: \"none\", md: \"block\" }}>\n\t\t\t\t\t\t\t\t{heroVisual}\n\t\t\t\t\t\t\t</Box>\n\t\t\t\t\t\t)}\n\t\t\t\t\t</Flex>\n\t\t\t\t</Box>\n\t\t\t)}\n\n\t\t\t{children && (\n\t\t\t\t<Box px=\"8\" py=\"16\">\n\t\t\t\t\t<Box maxW=\"6xl\" marginInline=\"auto\">\n\t\t\t\t\t\t{children}\n\t\t\t\t\t</Box>\n\t\t\t\t</Box>\n\t\t\t)}\n\n\t\t\t{footer && (\n\t\t\t\t<Box\n\t\t\t\t\tpx=\"8\"\n\t\t\t\t\tpy=\"8\"\n\t\t\t\t\tbg=\"bg-subtle\"\n\t\t\t\t\tborderTopWidth=\"1px\"\n\t\t\t\t\tborderTopColor=\"border\"\n\t\t\t\t>\n\t\t\t\t\t<Box maxW=\"6xl\" marginInline=\"auto\">\n\t\t\t\t\t\t{footer}\n\t\t\t\t\t</Box>\n\t\t\t\t</Box>\n\t\t\t)}\n\t\t</Box>\n\t);\n}\nMarketingPageTemplate.displayName = \"MarketingPageTemplate\";\n","// src/templates/settings-page-template.tsx\n//\n// SettingsPageTemplate — for any \"preferences / configuration\" page that\n// uses a tabbed split between mixed form / list content. Visually identical\n// to DetailPageTemplate today, but exposed as a separate template so its\n// authoring rules (tabs are required, body is padded, max-width on forms)\n// can evolve independently.\n//\n// ┌─────────────────────────────────────────┐\n// │ PageHeader (breadcrumbs · title · …) │\n// ├─────────────────────────────────────────┤\n// │ Tabs (required for settings) │\n// ├─────────────────────────────────────────┤\n// │ children (form cards · lists · …) │\n// └─────────────────────────────────────────┘\n//\n// Use this template for: personal-settings (profile, password, MFA tabs),\n// organization settings, identity-provider settings, admin → general.\n\nimport type { ReactNode } from \"react\";\nimport { PageHeader, type PageHeaderProps } from \"../components/page-header\";\nimport { Box, Flex } from \"../primitives/layout\";\nimport { useRegisteredPageActions } from \"./app-shell\";\n\nexport interface SettingsPageTemplateProps\n\textends Pick<\n\t\tPageHeaderProps,\n\t\t\"breadcrumbs\" | \"title\" | \"subtitle\" | \"eyebrow\"\n\t> {\n\tactions?: ReactNode;\n\t/**\n\t * Tab strip. Settings pages should always have at least two tabs — if\n\t * you only have one section, use DetailPageTemplate instead.\n\t */\n\ttabs: ReactNode;\n\t/** Page body — typically Card-wrapped forms or DataLists. */\n\tchildren: ReactNode;\n\t/**\n\t * Constrain the body width for readability. Settings forms read better\n\t * at ~720px even on wide viewports. Pass a Chakra width token (`\"3xl\"`,\n\t * `\"4xl\"`) or any CSS length. @default \"3xl\" (= 768px)\n\t *\n\t * Pass `\"full\"` to disable the constraint entirely.\n\t */\n\tmaxBodyWidth?: string;\n}\n\nexport function SettingsPageTemplate({\n\tbreadcrumbs,\n\ttitle,\n\tsubtitle,\n\teyebrow,\n\tactions,\n\ttabs,\n\tchildren,\n\tmaxBodyWidth = \"3xl\",\n}: SettingsPageTemplateProps) {\n\tconst registered = useRegisteredPageActions();\n\tconst resolvedActions = actions ?? registered;\n\treturn (\n\t\t<Flex\n\t\t\tdata-testid=\"settings-page-template\"\n\t\t\tdirection=\"column\"\n\t\t\tflex=\"1\"\n\t\t\tminH=\"0\"\n\t\t>\n\t\t\t<PageHeader\n\t\t\t\tbreadcrumbs={breadcrumbs}\n\t\t\t\ttitle={title}\n\t\t\t\tsubtitle={subtitle}\n\t\t\t\teyebrow={eyebrow}\n\t\t\t\tactions={resolvedActions}\n\t\t\t/>\n\t\t\t<Box>{tabs}</Box>\n\t\t\t<Box flex=\"1\" minH=\"0\" px=\"8\" pt=\"6\">\n\t\t\t\t<Box\n\t\t\t\t\tmaxW={maxBodyWidth}\n\t\t\t\t\tmarginInline={maxBodyWidth === \"full\" ? \"0\" : \"auto\"}\n\t\t\t\t>\n\t\t\t\t\t{children}\n\t\t\t\t</Box>\n\t\t\t</Box>\n\t\t</Flex>\n\t);\n}\nSettingsPageTemplate.displayName = \"SettingsPageTemplate\";\n"]}
@@ -1,3 +1,3 @@
1
- export { colors_default as colors, createAnkerTheme, theme_default as default, defaultPreset, durations, easings, fonts, getColor, keyframes, radii_default as radii, semantic_default as semanticTokens, spacing_default as space, textStyles, transparentize, z_index_default as zIndex } from '../chunk-VAUYWBWI.js';
1
+ export { colors_default as colors, createAnkerTheme, theme_default as default, defaultPreset, durations, easings, fonts, getColor, keyframes, radii_default as radii, semantic_default as semanticTokens, spacing_default as space, textStyles, transparentize, z_index_default as zIndex } from '../chunk-UOXSDSBY.js';
2
2
  //# sourceMappingURL=index.js.map
3
3
  //# sourceMappingURL=index.js.map
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@knkcs/anker",
3
- "version": "1.10.3",
3
+ "version": "1.10.4",
4
4
  "description": "UI component library for the knk software group",
5
5
  "repository": {
6
6
  "type": "git",
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/theme/recipes/button.ts","../src/theme/recipes/card.ts","../src/theme/recipes/checkbox.ts","../src/theme/recipes/comment.ts","../src/theme/recipes/container.ts","../src/theme/recipes/dialog.ts","../src/theme/recipes/drawer.ts","../src/theme/recipes/form-label.ts","../src/theme/recipes/input.ts","../src/theme/recipes/menu.ts","../src/theme/recipes/modal.ts","../src/theme/recipes/persona.ts","../src/theme/recipes/popover.ts","../src/theme/recipes/property.ts","../src/theme/recipes/prose.ts","../src/theme/recipes/radio-card.ts","../src/theme/recipes/separator.ts","../src/theme/recipes/stepper.ts","../src/theme/recipes/table.ts","../src/theme/recipes/tabs.ts","../src/theme/recipes/tag.ts","../src/theme/recipes/textarea.ts","../src/theme/recipes/tooltip.ts","../src/theme/recipes/tree-item.ts","../src/theme/tokens/animations.ts","../src/theme/tokens/colors.ts","../src/theme/tokens/radii.ts","../src/theme/tokens/semantic.ts","../src/theme/tokens/spacing.ts","../src/theme/tokens/typography.ts","../src/theme/tokens/z-index.ts","../src/theme/create-theme.ts","../src/theme/presets/default.ts","../src/theme/utils/color.ts","../src/theme/index.ts"],"names":["defineSlotRecipe","defineRecipe","fonts","colors","durations","easings","radii","textStyles","semanticTokens","setTransparency"],"mappings":"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","file":"chunk-VAUYWBWI.js","sourcesContent":["import { defineRecipe } from \"@chakra-ui/react\";\n\nexport const buttonTheme = defineRecipe({\n\tbase: {\n\t\tlineHeight: \"1.2\",\n\t\tborderRadius: \"md\",\n\t\tfontWeight: \"semibold\",\n\t\ttransitionProperty: \"common\",\n\t\ttransitionDuration: \"normal\",\n\t\t_focusVisible: {\n\t\t\tboxShadow: \"focus-ring\",\n\t\t\toutline: \"none\",\n\t\t},\n\t\t_active: {\n\t\t\ttransform: \"scale(0.98)\",\n\t\t},\n\t\t_disabled: {\n\t\t\topacity: 0.4,\n\t\t\tcursor: \"not-allowed\",\n\t\t\tboxShadow: \"none\",\n\t\t\t_active: {\n\t\t\t\ttransform: \"none\",\n\t\t\t},\n\t\t},\n\t\t_hover: {\n\t\t\t_disabled: {\n\t\t\t\tbg: \"initial\",\n\t\t\t},\n\t\t},\n\t\t// WCAG 2.5.8 touch target: expand hit area to 44×44px minimum\n\t\t// without changing visual size. The pseudo is invisible and captures\n\t\t// pointer events beyond the button's visual bounds.\n\t\t_after: {\n\t\t\tcontent: '\"\"',\n\t\t\tposition: \"absolute\",\n\t\t\ttop: \"50%\",\n\t\t\tinsetInlineStart: \"50%\",\n\t\t\tminWidth: \"44px\",\n\t\t\tminHeight: \"44px\",\n\t\t\ttransform: \"translate(-50%, -50%)\",\n\t\t},\n\t},\n\n\tvariants: {\n\t\tsize: {\n\t\t\txl: {\n\t\t\t\trounded: \"md\",\n\t\t\t\tpx: 3.5,\n\t\t\t\tfontSize: \"sm\",\n\t\t\t\tlineHeight: 1.5,\n\t\t\t\tfontWeight: 600,\n\t\t\t\th: \"10\",\n\t\t\t\tminW: \"10\",\n\t\t\t},\n\t\t\tlg: {\n\t\t\t\trounded: \"md\",\n\t\t\t\tpx: 3,\n\t\t\t\tfontSize: \"sm\",\n\t\t\t\tlineHeight: 1.5,\n\t\t\t\tfontWeight: 600,\n\t\t\t\th: \"9\",\n\t\t\t\tminW: \"9\",\n\t\t\t},\n\t\t\tmd: {\n\t\t\t\trounded: \"md\",\n\t\t\t\tpx: 2.5,\n\t\t\t\tfontSize: \"sm\",\n\t\t\t\tlineHeight: 1.5,\n\t\t\t\tfontWeight: 600,\n\t\t\t\th: \"8\",\n\t\t\t\tminW: \"8\",\n\t\t\t},\n\t\t\tsm: {\n\t\t\t\trounded: \"md\",\n\t\t\t\tpx: 2,\n\t\t\t\tfontSize: \"sm\",\n\t\t\t\tlineHeight: 1.5,\n\t\t\t\tfontWeight: 600,\n\t\t\t\th: \"7\",\n\t\t\t\tminW: \"7\",\n\t\t\t},\n\t\t\txs: {\n\t\t\t\th: \"6\",\n\t\t\t\tminW: \"6\",\n\t\t\t\trounded: \"md\",\n\t\t\t\tpx: 2,\n\t\t\t\tfontSize: \"xs\",\n\t\t\t\tlineHeight: \"1rem\",\n\t\t\t\tfontWeight: 600,\n\t\t\t},\n\t\t},\n\n\t\tvariant: {\n\t\t\t// Solid variant: highlights the current page item\n\t\t\tsolid: {\n\t\t\t\t'&[aria-current=\"page\"]': {\n\t\t\t\t\tbg: \"colorPalette.300\",\n\t\t\t\t\t_dark: {\n\t\t\t\t\t\tbg: \"colorPalette.400\",\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\n\t\t\t// @deprecated Use variant=\"solid\" instead — solid now defaults to\n\t\t\t// colorPalette=\"primary\". This variant will be removed in a future\n\t\t\t// major release.\n\t\t\tprimary: {\n\t\t\t\tbg: \"primary.700\",\n\t\t\t\tcolor: \"white\",\n\t\t\t\t_hover: {\n\t\t\t\t\tbg: \"primary.800\",\n\t\t\t\t\t_disabled: {\n\t\t\t\t\t\tbg: \"primary.700\",\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\t_active: {\n\t\t\t\t\tbg: \"primary.900\",\n\t\t\t\t},\n\t\t\t},\n\n\t\t\t// Secondary: outline style using gray color palette\n\t\t\tsecondary: {\n\t\t\t\tbg: { base: \"white\", _dark: \"gray.800\" },\n\t\t\t\tborderWidth: \"1px\",\n\t\t\t\tborderColor: \"gray.200\",\n\t\t\t\tcolor: \"gray.800\",\n\t\t\t\t_dark: {\n\t\t\t\t\tborderColor: \"gray.600\",\n\t\t\t\t\tcolor: \"gray.200\",\n\t\t\t\t},\n\t\t\t\t_hover: {\n\t\t\t\t\tbg: { base: \"gray.50\", _dark: \"gray.700\" },\n\t\t\t\t},\n\t\t\t\t_active: {\n\t\t\t\t\tbg: { base: \"gray.100\", _dark: \"gray.700\" },\n\t\t\t\t},\n\t\t\t},\n\n\t\t\t// Outline: white background with subtle hover/active states\n\t\t\toutline: {\n\t\t\t\tbg: { base: \"white\", _dark: \"gray.800\" },\n\t\t\t\t_hover: {\n\t\t\t\t\tbg: { base: \"gray.50\", _dark: \"gray.700/40\" },\n\t\t\t\t},\n\t\t\t\t_checked: {\n\t\t\t\t\tbg: { base: \"gray.100\", _dark: \"gray.700\" },\n\t\t\t\t},\n\t\t\t\t_active: {\n\t\t\t\t\tbg: { base: \"gray.100\", _dark: \"gray.700\" },\n\t\t\t\t},\n\t\t\t},\n\n\t\t\t// Ghost: transparent hover that shifts to primary color, gray active\n\t\t\tghost: {\n\t\t\t\t_hover: {\n\t\t\t\t\tbg: \"transparent\",\n\t\t\t\t\tcolor: \"primary.700\",\n\t\t\t\t},\n\t\t\t\t_active: {\n\t\t\t\t\tbg: \"gray.200\",\n\t\t\t\t},\n\t\t\t},\n\n\t\t\t// Link: no background, text color based on color palette.\n\t\t\tlink: {\n\t\t\t\tcolor: { base: \"colorPalette.600\", _dark: \"colorPalette.200\" },\n\t\t\t\t_hover: {\n\t\t\t\t\tcolor: { base: \"colorPalette.700\", _dark: \"colorPalette.300\" },\n\t\t\t\t\ttextDecoration: \"none\",\n\t\t\t\t},\n\t\t\t\t_active: {\n\t\t\t\t\tcolor: { base: \"colorPalette.700\", _dark: \"colorPalette.300\" },\n\t\t\t\t},\n\t\t\t},\n\n\t\t\t// Link variant for gray colorPalette\n\t\t\t\"link-gray\": {\n\t\t\t\tcolor: \"muted\",\n\t\t\t\t_hover: {\n\t\t\t\t\ttextDecoration: \"none\",\n\t\t\t\t\tcolor: \"default\",\n\t\t\t\t},\n\t\t\t\t_active: {\n\t\t\t\t\tcolor: \"default\",\n\t\t\t\t},\n\t\t\t},\n\t\t},\n\t},\n\n\tdefaultVariants: {\n\t\tsize: \"lg\",\n\t\tvariant: \"solid\",\n\t\tcolorPalette: \"primary\" as never,\n\t},\n});\n","import { defineSlotRecipe } from \"@chakra-ui/react\";\n\nexport const cardSlotRecipe = defineSlotRecipe({\n\tslots: [\"root\", \"header\", \"body\", \"footer\", \"title\", \"description\"],\n\tbase: {\n\t\troot: {\n\t\t\tbg: { base: \"white\", _dark: \"gray.800\" },\n\t\t\ttransitionProperty: \"box-shadow, transform\",\n\t\t\ttransitionDuration: \"normal\",\n\t\t},\n\t},\n\tvariants: {\n\t\tvariant: {\n\t\t\televated: {\n\t\t\t\troot: {\n\t\t\t\t\tboxShadow: \"md\",\n\t\t\t\t\t_hover: {\n\t\t\t\t\t\tboxShadow: \"lg\",\n\t\t\t\t\t\ttransform: \"translateY(-1px)\",\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tflat: {\n\t\t\t\troot: {\n\t\t\t\t\tshadow: \"md\",\n\t\t\t\t},\n\t\t\t},\n\t\t},\n\t},\n\tdefaultVariants: {\n\t\tvariant: \"elevated\",\n\t},\n});\n\nexport default cardSlotRecipe;\n","import { defineSlotRecipe } from \"@chakra-ui/react\";\n\nexport const checkboxSlotRecipe = defineSlotRecipe({\n\tslots: [\"root\", \"label\", \"control\", \"indicator\", \"group\"],\n\tbase: {\n\t\tlabel: {\n\t\t\tcolor: \"muted\",\n\t\t\tfontWeight: \"medium\",\n\t\t},\n\t\tcontrol: {\n\t\t\tbg: { base: \"white\", _dark: \"gray.800\" },\n\t\t\tborderRadius: \"base\",\n\t\t},\n\t},\n\tvariants: {\n\t\tsize: {\n\t\t\tmd: {\n\t\t\t\tlabel: {\n\t\t\t\t\tfontSize: \"sm\",\n\t\t\t\t},\n\t\t\t},\n\t\t},\n\t},\n\tdefaultVariants: {\n\t\tsize: \"md\",\n\t\tcolorPalette: \"primary\" as never,\n\t},\n});\n\nexport default checkboxSlotRecipe;\n","import { defineSlotRecipe } from \"@chakra-ui/react\";\n\nexport const commentSlotRecipe = defineSlotRecipe({\n\tslots: [\n\t\t\"container\",\n\t\t\"avatar\",\n\t\t\"contentContainer\",\n\t\t\"children\",\n\t\t\"field\",\n\t\t\"deletedText\",\n\t],\n\tbase: {\n\t\tcontainer: {\n\t\t\tdisplay: \"grid\",\n\t\t\tposition: \"relative\",\n\t\t\tgap: 2,\n\t\t\tgridTemplateAreas: `\"avatar-area comment-area\" \". nested-comments-area\"`,\n\t\t\tgridTemplateColumns: \"auto 1fr\",\n\t\t\tfontSize: \"sm\",\n\t\t},\n\t\tavatar: {\n\t\t\tgridArea: \"avatar-area\",\n\t\t\tdisplay: \"block\",\n\t\t},\n\t\tcontentContainer: {\n\t\t\tminW: 0,\n\t\t\tpt: 1,\n\t\t\tgridArea: \"comment-area\",\n\t\t\twordWrap: \"break-word\",\n\t\t\tbg: { base: \"gray.50\", _dark: \"gray.700\" },\n\t\t\tborderRadius: \"md\",\n\t\t\tp: 4,\n\t\t},\n\t\tchildren: {\n\t\t\tgridArea: \"nested-comments-area\",\n\t\t\tpaddingTop: 8,\n\t\t},\n\t\tfield: {\n\t\t\tfontWeight: \"inherit\",\n\t\t\t\"&:not(:hover):not(:active)\": {\n\t\t\t\tcolor: { base: \"gray.500\", _dark: \"gray.400\" },\n\t\t\t},\n\t\t},\n\t\tdeletedText: {\n\t\t\tcolor: { base: \"gray.500\", _dark: \"gray.400\" },\n\t\t\tfontStyle: \"italic\",\n\t\t},\n\t},\n});\n\nexport default commentSlotRecipe;\n","import { defineRecipe } from \"@chakra-ui/react\";\n\nexport default defineRecipe({\n\tbase: {\n\t\tmaxW: \"9xl\",\n\t\tpx: { base: \"4\", md: \"8\" },\n\t},\n});\n","import { defineSlotRecipe } from \"@chakra-ui/react\";\n\nexport const dialog = defineSlotRecipe({\n\tslots: [\"content\"],\n\tvariants: {\n\t\tsize: {\n\t\t\t\"7xl\": {\n\t\t\t\tcontent: {\n\t\t\t\t\tmaxW: \"95%\",\n\t\t\t\t\tminH: \"95%\",\n\t\t\t\t\tmaxH: \"95%\",\n\t\t\t\t\tmy: 0,\n\t\t\t\t},\n\t\t\t},\n\t\t},\n\t},\n});\n","import { defineSlotRecipe } from \"@chakra-ui/react\";\n\nexport const drawerTheme = defineSlotRecipe({\n\tslots: [\"content\"],\n\tvariants: {\n\t\tsize: {\n\t\t\txl: {\n\t\t\t\tcontent: { minW: \"50vw\", h: \"100vh\" },\n\t\t\t},\n\t\t\txxl: {\n\t\t\t\tcontent: { minW: \"51vw\", h: \"100vh\", maxW: \"70vw\" },\n\t\t\t},\n\t\t\tfull: {\n\t\t\t\tcontent: { maxW: \"90vw\", h: \"100vh\" },\n\t\t\t},\n\t\t},\n\t},\n});\n","import { defineRecipe } from \"@chakra-ui/react\";\n\nexport default defineRecipe({\n\tbase: {\n\t\tcolor: \"emphasized\",\n\t\tmb: \"1.5\",\n\t\tfontSize: \"sm\",\n\t},\n\tvariants: {\n\t\tsize: {\n\t\t\tsm: {\n\t\t\t\t_peerPlaceholderShown: {\n\t\t\t\t\tfontSize: \"sm\",\n\t\t\t\t\ttop: \"1.5\",\n\t\t\t\t\tinsetInlineStart: \"4\",\n\t\t\t\t},\n\t\t\t},\n\t\t\tmd: {\n\t\t\t\t_peerPlaceholderShown: {\n\t\t\t\t\tfontSize: \"md\",\n\t\t\t\t\ttop: \"2\",\n\t\t\t\t\tinsetInlineStart: \"4\",\n\t\t\t\t},\n\t\t\t},\n\t\t\tlg: {\n\t\t\t\t_peerPlaceholderShown: {\n\t\t\t\t\tfontSize: \"lg\",\n\t\t\t\t\ttop: \"2.5\",\n\t\t\t\t\tinsetInlineStart: \"4\",\n\t\t\t\t},\n\t\t\t},\n\t\t},\n\t\tvariant: {\n\t\t\tinline: {\n\t\t\t\tmargin: 0,\n\t\t\t\tminW: \"2xs\",\n\t\t\t},\n\t\t\tfloating: {\n\t\t\t\tposition: \"absolute\",\n\t\t\t\ttransition: \"all 0.12s ease-in\",\n\t\t\t\tpointerEvents: \"none\",\n\t\t\t\ttop: \"-27px\",\n\t\t\t\tinsetInlineStart: \"0\",\n\t\t\t\t_peerPlaceholderShown: {\n\t\t\t\t\tfontWeight: \"normal\",\n\t\t\t\t\tcolor: \"subtle\",\n\t\t\t\t},\n\t\t\t\t_peerFocus: {\n\t\t\t\t\tfontSize: \"sm\",\n\t\t\t\t\tfontWeight: \"medium\",\n\t\t\t\t\ttop: \"-27px\",\n\t\t\t\t\tinsetInlineStart: \"0\",\n\t\t\t\t\tcolor: \"muted\",\n\t\t\t\t},\n\t\t\t},\n\t\t},\n\t},\n\tdefaultVariants: {\n\t\tsize: \"md\",\n\t},\n});\n","import { defineSlotRecipe } from \"@chakra-ui/react\";\n\n/**\n * FIX: Replaced `blue.500` / `blue.600` references with `primary.500` / `primary.600`.\n * The Core monolith's input recipe used raw `blue.*` references in the link variant\n * which should reference the `primary` palette instead.\n */\nexport const inputSlotRecipe = defineSlotRecipe({\n\tslots: [\"field\", \"addon\"],\n\tvariants: {\n\t\tvariant: {\n\t\t\toutline: {\n\t\t\t\tfield: {\n\t\t\t\t\tborderRadius: \"md\",\n\t\t\t\t\tbg: { base: \"white\", _dark: \"gray.800\" },\n\t\t\t\t\t_hover: { borderColor: { base: \"gray.300\", _dark: \"gray.600\" } },\n\t\t\t\t\t_focus: {\n\t\t\t\t\t\tborderColor: { base: \"primary.700\", _dark: \"primary.300\" },\n\t\t\t\t\t\tboxShadow: \"0px 0px 0px 1px var(--chakra-colors-primary-700)\",\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\taddon: {\n\t\t\t\t\tborderRadius: \"md\",\n\t\t\t\t\tbg: { base: \"gray.50\", _dark: \"gray.700\" },\n\t\t\t\t},\n\t\t\t},\n\t\t\t\"outline-on-accent\": {\n\t\t\t\tfield: {\n\t\t\t\t\tbg: { base: \"white\", _dark: \"gray.800\" },\n\t\t\t\t\tborderRadius: \"md\",\n\t\t\t\t\tcolor: { base: \"gray.900\", _dark: \"gray.100\" },\n\t\t\t\t\tborderWidth: \"1px\",\n\t\t\t\t\tborderColor: { base: \"primary.50\", _dark: \"primary.800\" },\n\t\t\t\t\t_placeholder: {\n\t\t\t\t\t\tcolor: { base: \"gray.500\", _dark: \"gray.400\" },\n\t\t\t\t\t},\n\t\t\t\t\t_hover: {\n\t\t\t\t\t\tborderColor: { base: \"primary.100\", _dark: \"primary.700\" },\n\t\t\t\t\t},\n\t\t\t\t\t_focus: {\n\t\t\t\t\t\tborderColor: { base: \"primary.200\", _dark: \"primary.600\" },\n\t\t\t\t\t\tboxShadow: \"0px 0px 0px 1px var(--chakra-colors-primary-200)\",\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tfilled: {\n\t\t\t\tfield: {\n\t\t\t\t\tbg: { base: \"white\", _dark: \"gray.800\" },\n\t\t\t\t\t_hover: {\n\t\t\t\t\t\tborderColor: { base: \"gray.200\", _dark: \"gray.700\" },\n\t\t\t\t\t\tbg: { base: \"white\", _dark: \"gray.700\" },\n\t\t\t\t\t},\n\t\t\t\t\t_focus: {\n\t\t\t\t\t\tborderColor: \"accent\",\n\t\t\t\t\t\tbg: { base: \"white\", _dark: \"gray.800\" },\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tlink: {\n\t\t\t\tfield: {\n\t\t\t\t\tbackground: \"transparent\",\n\t\t\t\t\tborder: \"none\",\n\t\t\t\t\tboxShadow: \"none\",\n\t\t\t\t\tpadding: 0,\n\t\t\t\t\tminHeight: \"auto\",\n\t\t\t\t\tcolor: \"primary.700\",\n\t\t\t\t\ttextDecoration: \"underline\",\n\t\t\t\t\tcursor: \"pointer\",\n\t\t\t\t\t_hover: {\n\t\t\t\t\t\tcolor: \"primary.800\",\n\t\t\t\t\t\ttextDecoration: \"underline\",\n\t\t\t\t\t},\n\t\t\t\t\t_focus: {\n\t\t\t\t\t\tboxShadow: \"none\",\n\t\t\t\t\t\tcolor: \"primary.800\",\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t},\n\t\tsize: {\n\t\t\tlg: {\n\t\t\t\tfield: {\n\t\t\t\t\tfontSize: \"md\",\n\t\t\t\t\tborderRadius: \"md\",\n\t\t\t\t},\n\t\t\t},\n\t\t},\n\t},\n\tdefaultVariants: {\n\t\tvariant: \"outline\",\n\t\tcolorPalette: \"gray\",\n\t},\n});\n\nexport default inputSlotRecipe;\n","import { defineSlotRecipe } from \"@chakra-ui/react\";\n\nconst $bg = \"--menu-bg\";\nconst $shadow = \"--menu-shadow\";\n\n/**\n * FIX: Replaced `shadows.dark-lg` with semantic shadow token `shadows.lg`\n * (the semantic shadow system already handles dark mode via _dark).\n */\nexport const menuTheme = defineSlotRecipe({\n\tslots: [\"content\", \"item\", \"itemGroupLabel\", \"itemCommand\", \"separator\"],\n\tbase: {\n\t\tcontent: {\n\t\t\t[$bg]: \"colors.white\",\n\t\t\t[$shadow]: \"shadows.md\",\n\t\t\t_dark: {\n\t\t\t\t[$bg]: \"colors.gray.700\",\n\t\t\t\t[$shadow]: \"shadows.lg\",\n\t\t\t},\n\t\t\tcolor: \"inherit\",\n\t\t\tminW: \"3xs\",\n\t\t\tpy: \"2\",\n\t\t\tzIndex: 1,\n\t\t\tborderRadius: \"md\",\n\t\t\tborderWidth: \"1px\",\n\t\t\tbg: `var(${$bg})`,\n\t\t\tboxShadow: `var(${$shadow})`,\n\t\t},\n\t\titem: {\n\t\t\tpy: \"0.4rem\",\n\t\t\tpx: \"0.8rem\",\n\t\t\tfontSize: \"sm\",\n\t\t\tfontWeight: \"normal\",\n\t\t\tcolor: { base: \"gray.800\", _dark: \"gray.100\" },\n\t\t\ttransitionProperty: \"background\",\n\t\t\ttransitionDuration: \"ultra-fast\",\n\t\t\ttransitionTimingFunction: \"ease-in\",\n\t\t\t_focus: {\n\t\t\t\t[$bg]: \"colors.gray.100\",\n\t\t\t\t_dark: {\n\t\t\t\t\t[$bg]: \"colors.whiteAlpha.100\",\n\t\t\t\t},\n\t\t\t},\n\t\t\t_active: {\n\t\t\t\t[$bg]: \"colors.gray.200\",\n\t\t\t\t_dark: {\n\t\t\t\t\t[$bg]: \"colors.whiteAlpha.200\",\n\t\t\t\t},\n\t\t\t},\n\t\t\t_expanded: {\n\t\t\t\t[$bg]: \"colors.gray.100\",\n\t\t\t\t_dark: {\n\t\t\t\t\t[$bg]: \"colors.whiteAlpha.100\",\n\t\t\t\t},\n\t\t\t},\n\t\t\t_disabled: {\n\t\t\t\topacity: 0.4,\n\t\t\t\tcursor: \"not-allowed\",\n\t\t\t},\n\t\t\tbg: `var(${$bg})`,\n\t\t},\n\t\titemGroupLabel: {\n\t\t\tmx: 4,\n\t\t\tmy: 2,\n\t\t\tfontWeight: \"semibold\",\n\t\t\tfontSize: \"sm\",\n\t\t},\n\t\titemCommand: {\n\t\t\topacity: 0.6,\n\t\t},\n\t\tseparator: {\n\t\t\tborder: 0,\n\t\t\tborderBottom: \"1px solid\",\n\t\t\tborderColor: \"inherit\",\n\t\t\tmy: \"2\",\n\t\t\topacity: 0.6,\n\t\t},\n\t},\n});\n","import { defineSlotRecipe } from \"@chakra-ui/react\";\n\nexport const modalSlotRecipe = defineSlotRecipe({\n\tslots: [\"header\", \"closeButton\", \"dialog\", \"backdrop\"],\n\tbase: {\n\t\theader: {\n\t\t\tpx: \"6\",\n\t\t\tpy: \"4\",\n\t\t\tfontSize: \"xl\",\n\t\t\tfontWeight: \"semibold\",\n\t\t\troundedTop: \"md\",\n\t\t},\n\t\tcloseButton: {},\n\t\tbackdrop: {\n\t\t\tbackdropFilter: \"blur(4px)\",\n\t\t},\n\t},\n\tvariants: {\n\t\tsize: {\n\t\t\t\"7xl\": {\n\t\t\t\tdialog: {\n\t\t\t\t\tmaxW: \"95%\",\n\t\t\t\t\tminH: \"95%\",\n\t\t\t\t\tmaxH: \"95%\",\n\t\t\t\t\tmy: 0,\n\t\t\t\t},\n\t\t\t},\n\t\t},\n\t},\n});\n","import { defineSlotRecipe } from \"@chakra-ui/react\";\n\nexport const personaSlotRecipe = defineSlotRecipe({\n\tslots: [\n\t\t\"container\",\n\t\t\"details\",\n\t\t\"avatar\",\n\t\t\"label\",\n\t\t\"secondaryLabel\",\n\t\t\"tertiaryLabel\",\n\t],\n\tbase: {\n\t\tcontainer: {},\n\t\tavatar: {},\n\t\tlabel: {},\n\t\tsecondaryLabel: {\n\t\t\tcolor: { base: \"gray.500\", _dark: \"whiteAlpha.600\" },\n\t\t\toverflow: \"hidden\",\n\t\t\twhiteSpace: \"nowrap\",\n\t\t\ttextOverflow: \"ellipsis\",\n\t\t},\n\t\ttertiaryLabel: {\n\t\t\tcolor: { base: \"gray.500\", _dark: \"whiteAlpha.600\" },\n\t\t\toverflow: \"hidden\",\n\t\t\twhiteSpace: \"nowrap\",\n\t\t\ttextOverflow: \"ellipsis\",\n\t\t},\n\t},\n\tvariants: {\n\t\tsize: {\n\t\t\t\"2xs\": {\n\t\t\t\tdetails: { ms: 2 },\n\t\t\t\tlabel: { fontSize: \"xs\" },\n\t\t\t\tsecondaryLabel: { display: \"none\" },\n\t\t\t\ttertiaryLabel: { display: \"none\" },\n\t\t\t},\n\t\t\txs: {\n\t\t\t\tdetails: { ms: 2 },\n\t\t\t\tlabel: { fontSize: \"md\" },\n\t\t\t\tsecondaryLabel: { display: \"none\" },\n\t\t\t\ttertiaryLabel: { display: \"none\" },\n\t\t\t},\n\t\t\tsm: {\n\t\t\t\tdetails: { ms: 2 },\n\t\t\t\tlabel: { fontSize: \"md\" },\n\t\t\t\tsecondaryLabel: { fontSize: \"sm\" },\n\t\t\t\ttertiaryLabel: { display: \"none\" },\n\t\t\t},\n\t\t\tmd: {\n\t\t\t\tdetails: { ms: 2 },\n\t\t\t\tlabel: { fontSize: \"md\" },\n\t\t\t\tsecondaryLabel: { fontSize: \"sm\" },\n\t\t\t\ttertiaryLabel: { display: \"none\" },\n\t\t\t},\n\t\t\tlg: {\n\t\t\t\tdetails: { ms: 3 },\n\t\t\t\tlabel: { fontSize: \"md\" },\n\t\t\t\tsecondaryLabel: { fontSize: \"sm\" },\n\t\t\t\ttertiaryLabel: { fontSize: \"sm\" },\n\t\t\t},\n\t\t\txl: {\n\t\t\t\tdetails: { ms: 3 },\n\t\t\t\tlabel: { fontSize: \"xl\" },\n\t\t\t\tsecondaryLabel: { fontSize: \"md\" },\n\t\t\t\ttertiaryLabel: { fontSize: \"md\" },\n\t\t\t},\n\t\t\t\"2xl\": {\n\t\t\t\tdetails: { ms: 4 },\n\t\t\t\tlabel: { fontSize: \"2xl\" },\n\t\t\t\tsecondaryLabel: { fontSize: \"lg\" },\n\t\t\t\ttertiaryLabel: { fontSize: \"lg\" },\n\t\t\t},\n\t\t},\n\t},\n\tdefaultVariants: {\n\t\tsize: \"md\",\n\t},\n});\n\nexport default personaSlotRecipe;\n","import { defineSlotRecipe } from \"@chakra-ui/react\";\n\n/**\n * FIX: Replaced `lg-dark` shadow reference with semantic `lg` shadow token.\n * The semantic shadow system handles dark mode via the _dark condition.\n */\nexport const popoverSlotRecipe = defineSlotRecipe({\n\tslots: [\"content\"],\n\tbase: {\n\t\tcontent: {\n\t\t\tborderWidth: \"1px\",\n\t\t\tboxShadow: \"lg\",\n\t\t\tborderRadius: \"md\",\n\t\t\tbackground: \"bg-surface\",\n\t\t\toverflow: \"hidden\",\n\t\t},\n\t},\n});\n\nexport default popoverSlotRecipe;\n","import { defineSlotRecipe } from \"@chakra-ui/react\";\n\nexport const propertyTheme = defineSlotRecipe({\n\tslots: [\"property\", \"label\", \"value\"],\n\tbase: {\n\t\tlabel: {\n\t\t\tcolor: \"muted\",\n\t\t},\n\t},\n});\n","import { defineRecipe } from \"@chakra-ui/react\";\n\nconst TRAILING_PSEUDO_REGEX = /(::?[\\w-]+(?:\\([^)]*\\))?)+$/;\nconst EXCLUDE_CLASSNAME = \".not-prose\";\nfunction inWhere<T extends string>(selector: T): T {\n\tconst rebuiltSelector = selector.startsWith(\"& \")\n\t\t? selector.slice(2)\n\t\t: selector;\n\tconst match = selector.match(TRAILING_PSEUDO_REGEX);\n\tconst pseudo = match ? match[0] : \"\";\n\tconst base = match ? selector.slice(0, -match[0].length) : rebuiltSelector;\n\treturn `& :where(${base}):not(${EXCLUDE_CLASSNAME}, ${EXCLUDE_CLASSNAME} *)${pseudo}` as T;\n}\n\nexport const proseTheme = defineRecipe({\n\tclassName: \"prose\",\n\tbase: {\n\t\tcolor: \"fg.muted\",\n\t\tmaxWidth: \"65ch\",\n\t\tfontSize: \"sm\",\n\t\tlineHeight: \"1.7em\",\n\t\t[inWhere(\"& p\")]: {\n\t\t\tmarginTop: \"1em\",\n\t\t\tmarginBottom: \"1em\",\n\t\t},\n\t\t[inWhere(\"& blockquote\")]: {\n\t\t\tmarginTop: \"1.285em\",\n\t\t\tmarginBottom: \"1.285em\",\n\t\t\tpaddingInline: \"1.285em\",\n\t\t\tborderInlineStartWidth: \"0.25em\",\n\t\t\tcolor: \"fg\",\n\t\t},\n\t\t[inWhere(\"& a\")]: {\n\t\t\tcolor: \"fg\",\n\t\t\ttextDecoration: \"underline\",\n\t\t\ttextUnderlineOffset: \"3px\",\n\t\t\ttextDecorationThickness: \"2px\",\n\t\t\ttextDecorationColor: \"border.muted\",\n\t\t\tfontWeight: \"500\",\n\t\t},\n\t\t[inWhere(\"& strong\")]: {\n\t\t\tfontWeight: \"600\",\n\t\t},\n\t\t[inWhere(\"& a strong\")]: {\n\t\t\tcolor: \"inherit\",\n\t\t},\n\t\t[inWhere(\"& em\")]: {\n\t\t\tfontStyle: \"italic\",\n\t\t},\n\t\t[inWhere(\"& h1\")]: {\n\t\t\tfontSize: \"2.15em\",\n\t\t\tletterSpacing: \"-0.02em\",\n\t\t\tmarginTop: \"0\",\n\t\t\tmarginBottom: \"0.8em\",\n\t\t\tlineHeight: \"1.2em\",\n\t\t},\n\t\t[inWhere(\"& h2\")]: {\n\t\t\tfontSize: \"1.65em\",\n\t\t\tletterSpacing: \"-0.02em\",\n\t\t\tmarginTop: \"1.6em\",\n\t\t\tmarginBottom: \"0.8em\",\n\t\t\tlineHeight: \"1.3em\",\n\t\t},\n\t\t[inWhere(\"& h3\")]: {\n\t\t\tfontSize: \"1.35em\",\n\t\t\tletterSpacing: \"-0.01em\",\n\t\t\tmarginTop: \"1.5em\",\n\t\t\tmarginBottom: \"0.4em\",\n\t\t\tlineHeight: \"1.4em\",\n\t\t},\n\t\t[inWhere(\"& h4\")]: {\n\t\t\tmarginTop: \"1.4em\",\n\t\t\tmarginBottom: \"0.5em\",\n\t\t\tletterSpacing: \"-0.01em\",\n\t\t\tlineHeight: \"1.5em\",\n\t\t},\n\t\t[inWhere(\"& img\")]: {\n\t\t\tmarginTop: \"1.7em\",\n\t\t\tmarginBottom: \"1.7em\",\n\t\t\tborderRadius: \"lg\",\n\t\t\tboxShadow: \"inset\",\n\t\t},\n\t\t[inWhere(\"& picture\")]: {\n\t\t\tmarginTop: \"1.7em\",\n\t\t\tmarginBottom: \"1.7em\",\n\t\t},\n\t\t[inWhere(\"& picture > img\")]: {\n\t\t\tmarginTop: \"0\",\n\t\t\tmarginBottom: \"0\",\n\t\t},\n\t\t[inWhere(\"& video\")]: {\n\t\t\tmarginTop: \"1.7em\",\n\t\t\tmarginBottom: \"1.7em\",\n\t\t},\n\t\t[inWhere(\"& kbd\")]: {\n\t\t\tfontSize: \"0.85em\",\n\t\t\tborderRadius: \"xs\",\n\t\t\tpaddingTop: \"0.15em\",\n\t\t\tpaddingBottom: \"0.15em\",\n\t\t\tpaddingInlineEnd: \"0.35em\",\n\t\t\tpaddingInlineStart: \"0.35em\",\n\t\t\tfontFamily: \"inherit\",\n\t\t\tcolor: \"fg.muted\",\n\t\t\t\"--shadow\": \"colors.border\",\n\t\t\tboxShadow: \"0 0 0 1px var(--shadow), 0 1px 0 1px var(--shadow)\",\n\t\t},\n\t\t[inWhere(\"& code\")]: {\n\t\t\tfontSize: \"0.925em\",\n\t\t\tbg: \"bg.muted\",\n\t\t\tletterSpacing: \"-0.01em\",\n\t\t\tlineHeight: \"1\",\n\t\t\tborderRadius: \"md\",\n\t\t\tborderWidth: \"1px\",\n\t\t\tpaddingInline: \"0.25em\",\n\t\t},\n\t\t[inWhere(\"& pre code\")]: {\n\t\t\tfontSize: \"inherit\",\n\t\t\tletterSpacing: \"inherit\",\n\t\t\tborderWidth: \"inherit\",\n\t\t\tpadding: \"0\",\n\t\t\tbg: \"transparent\",\n\t\t},\n\t\t[inWhere(\"& h2 code\")]: {\n\t\t\tfontSize: \"0.9em\",\n\t\t},\n\t\t[inWhere(\"& h3 code\")]: {\n\t\t\tfontSize: \"0.8em\",\n\t\t},\n\t\t[inWhere(\"& pre\")]: {\n\t\t\tbackgroundColor: \"bg.muted\",\n\t\t\tmarginTop: \"1.6em\",\n\t\t\tmarginBottom: \"1.6em\",\n\t\t\tborderRadius: \"md\",\n\t\t\tfontSize: \"0.9em\",\n\t\t\tpaddingTop: \"0.65em\",\n\t\t\tpaddingBottom: \"0.65em\",\n\t\t\tpaddingInlineEnd: \"1em\",\n\t\t\tpaddingInlineStart: \"1em\",\n\t\t\toverflowX: \"auto\",\n\t\t\tfontWeight: \"400\",\n\t\t},\n\t\t[inWhere(\"& ol\")]: {\n\t\t\tmarginTop: \"1em\",\n\t\t\tmarginBottom: \"1em\",\n\t\t\tpaddingInlineStart: \"1.5em\",\n\t\t},\n\t\t[inWhere(\"& ul\")]: {\n\t\t\tmarginTop: \"1em\",\n\t\t\tmarginBottom: \"1em\",\n\t\t\tpaddingInlineStart: \"1.5em\",\n\t\t},\n\t\t[inWhere(\"& li\")]: {\n\t\t\tmarginTop: \"0.285em\",\n\t\t\tmarginBottom: \"0.285em\",\n\t\t},\n\t\t[inWhere(\"& ol > li\")]: {\n\t\t\tpaddingInlineStart: \"0.4em\",\n\t\t\tlistStyleType: \"decimal\",\n\t\t\t\"&::marker\": {\n\t\t\t\tcolor: \"fg.muted\",\n\t\t\t},\n\t\t},\n\t\t[inWhere(\"& ul > li\")]: {\n\t\t\tpaddingInlineStart: \"0.4em\",\n\t\t\tlistStyleType: \"disc\",\n\t\t\t\"&::marker\": {\n\t\t\t\tcolor: \"fg.muted\",\n\t\t\t},\n\t\t},\n\t\t[inWhere(\"& > ul > li p\")]: {\n\t\t\tmarginTop: \"0.5em\",\n\t\t\tmarginBottom: \"0.5em\",\n\t\t},\n\t\t[inWhere(\"& > ol > li p\")]: {\n\t\t\tmarginTop: \"0.5em\",\n\t\t\tmarginBottom: \"0.5em\",\n\t\t},\n\t\t[inWhere(\"& > ul > li > p:first-of-type\")]: {\n\t\t\tmarginTop: \"0em\",\n\t\t},\n\t\t[inWhere(\"& > ul > li > p:last-of-type\")]: {\n\t\t\tmarginBottom: \"0em\",\n\t\t},\n\t\t[inWhere(\"& > ol > li > p:first-of-type\")]: {\n\t\t\tmarginTop: \"0em\",\n\t\t},\n\t\t[inWhere(\"& > ol > li > p:last-of-type\")]: {\n\t\t\tmarginBottom: \"0em\",\n\t\t},\n\t\t[inWhere(\"& ul ul, ul ol, ol ul, ol ol\")]: {\n\t\t\tmarginTop: \"0.5em\",\n\t\t\tmarginBottom: \"0.5em\",\n\t\t},\n\t\t[inWhere(\"& dl\")]: {\n\t\t\tmarginTop: \"1em\",\n\t\t\tmarginBottom: \"1em\",\n\t\t},\n\t\t[inWhere(\"& dt\")]: {\n\t\t\tfontWeight: \"600\",\n\t\t\tmarginTop: \"1em\",\n\t\t},\n\t\t[inWhere(\"& dd\")]: {\n\t\t\tmarginTop: \"0.285em\",\n\t\t\tpaddingInlineStart: \"1.5em\",\n\t\t},\n\t\t[inWhere(\"& hr\")]: {\n\t\t\tmarginTop: \"2.25em\",\n\t\t\tmarginBottom: \"2.25em\",\n\t\t},\n\t\t[inWhere(\"& :is(h1,h2,h3,h4,h5,hr) + *\")]: {\n\t\t\tmarginTop: \"0\",\n\t\t},\n\t\t[inWhere(\"& table\")]: {\n\t\t\twidth: \"100%\",\n\t\t\ttableLayout: \"auto\",\n\t\t\ttextAlign: \"start\",\n\t\t\tlineHeight: \"1.5em\",\n\t\t\tmarginTop: \"2em\",\n\t\t\tmarginBottom: \"2em\",\n\t\t},\n\t\t[inWhere(\"& thead\")]: {\n\t\t\tborderBottomWidth: \"1px\",\n\t\t\tcolor: \"fg\",\n\t\t},\n\t\t[inWhere(\"& tbody tr\")]: {\n\t\t\tborderBottomWidth: \"1px\",\n\t\t\tborderBottomColor: \"border\",\n\t\t},\n\t\t[inWhere(\"& thead th\")]: {\n\t\t\tpaddingInlineEnd: \"1em\",\n\t\t\tpaddingBottom: \"0.65em\",\n\t\t\tpaddingInlineStart: \"1em\",\n\t\t\tfontWeight: \"medium\",\n\t\t\ttextAlign: \"start\",\n\t\t},\n\t\t[inWhere(\"& thead th:first-of-type\")]: {\n\t\t\tpaddingInlineStart: \"0\",\n\t\t},\n\t\t[inWhere(\"& thead th:last-of-type\")]: {\n\t\t\tpaddingInlineEnd: \"0\",\n\t\t},\n\t\t[inWhere(\"& tbody td, tfoot td\")]: {\n\t\t\tpaddingTop: \"0.65em\",\n\t\t\tpaddingInlineEnd: \"1em\",\n\t\t\tpaddingBottom: \"0.65em\",\n\t\t\tpaddingInlineStart: \"1em\",\n\t\t},\n\t\t[inWhere(\"& tbody td:first-of-type, tfoot td:first-of-type\")]: {\n\t\t\tpaddingInlineStart: \"0\",\n\t\t},\n\t\t[inWhere(\"& tbody td:last-of-type, tfoot td:last-of-type\")]: {\n\t\t\tpaddingInlineEnd: \"0\",\n\t\t},\n\t\t[inWhere(\"& figure\")]: {\n\t\t\tmarginTop: \"1.625em\",\n\t\t\tmarginBottom: \"1.625em\",\n\t\t},\n\t\t[inWhere(\"& figure > *\")]: {\n\t\t\tmarginTop: \"0\",\n\t\t\tmarginBottom: \"0\",\n\t\t},\n\t\t[inWhere(\"& figcaption\")]: {\n\t\t\tfontSize: \"0.85em\",\n\t\t\tlineHeight: \"1.25em\",\n\t\t\tmarginTop: \"0.85em\",\n\t\t\tcolor: \"fg.muted\",\n\t\t},\n\t\t[inWhere(\"& h1, h2, h3, h4, h5, h6\")]: {\n\t\t\tcolor: \"fg\",\n\t\t\tfontWeight: \"600\",\n\t\t},\n\t},\n\tvariants: {\n\t\tsize: {\n\t\t\tmd: {\n\t\t\t\tfontSize: \"sm\",\n\t\t\t},\n\t\t\tlg: {\n\t\t\t\tfontSize: \"md\",\n\t\t\t},\n\t\t},\n\t},\n\tdefaultVariants: {\n\t\tsize: \"md\",\n\t},\n});\n","import { defineRecipe } from \"@chakra-ui/react\";\n\nexport const radioCardTheme = defineRecipe({\n\tbase: {\n\t\tborderWidth: \"1px\",\n\t\tborderRadius: \"md\",\n\t\tp: \"4\",\n\t\tbg: \"bg-surface\",\n\t\ttransitionProperty: \"common\",\n\t\ttransitionDuration: \"normal\",\n\t\t_hover: {\n\t\t\tborderColor: { base: \"gray.300\", _dark: \"gray.600\" },\n\t\t},\n\t\t_checked: {\n\t\t\tborderColor: { base: \"primary.700\", _dark: \"primary.300\" },\n\t\t\tboxShadow: {\n\t\t\t\tbase: \"0px 0px 0px 1px var(--chakra-colors-primary-700)\",\n\t\t\t\t_dark: \"0px 0px 0px 1px var(--chakra-colors-primary-300)\",\n\t\t\t},\n\t\t},\n\t},\n});\n","import { defineRecipe } from \"@chakra-ui/react\";\n\nexport default defineRecipe({\n\tbase: {\n\t\topacity: 1,\n\t},\n});\n","import { defineSlotRecipe } from \"@chakra-ui/react\";\n\n/**\n * FIX: Replaced `colorPalette: \"blue\"` with `colorPalette: \"primary\"` in\n * defaultVariants to use our primary palette consistently.\n */\nexport const stepperTheme = defineSlotRecipe({\n\tslots: [\n\t\t\"container\",\n\t\t\"steps\",\n\t\t\"icon\",\n\t\t\"content\",\n\t\t\"title\",\n\t\t\"separator\",\n\t\t\"step\",\n\t],\n\tbase: {\n\t\tcontainer: {\n\t\t\tdisplay: \"flex\",\n\t\t\tflexDirection: \"column\",\n\t\t\tpy: 4,\n\t\t},\n\t\tsteps: {\n\t\t\tdisplay: \"flex\",\n\t\t\tmb: 4,\n\t\t},\n\t\tstep: {\n\t\t\tdisplay: \"flex\",\n\t\t\talignItems: \"center\",\n\t\t\tflexDirection: \"row\",\n\t\t},\n\t\ticon: {\n\t\t\tdisplay: \"flex\",\n\t\t\talignItems: \"center\",\n\t\t\tjustifyContent: \"center\",\n\t\t\tborderRadius: \"full\",\n\t\t\tfontSize: \"1em\",\n\t\t\tbg: \"whiteAlpha.400\",\n\t\t\tlineHeight: 1,\n\t\t\tflexShrink: 0,\n\t\t\ttransitionProperty: \"common\",\n\t\t\ttransitionDuration: \"normal\",\n\t\t},\n\t\tseparator: {\n\t\t\tflex: 1,\n\t\t\ttransitionProperty: \"common\",\n\t\t\ttransitionDuration: \"normal\",\n\t\t},\n\t},\n\tvariants: {\n\t\tvariant: {\n\t\t\tsubtle: {\n\t\t\t\ticon: {\n\t\t\t\t\tbg: \"blackAlpha.300\",\n\t\t\t\t\tcolor: \"blackAlpha.600\",\n\t\t\t\t\t_dark: {\n\t\t\t\t\t\tbg: \"whiteAlpha.200\",\n\t\t\t\t\t\tcolor: \"whiteAlpha.600\",\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tstep: {\n\t\t\t\t\t\"&[data-active] .stepper__icon, &[data-completed] .stepper__icon\": {\n\t\t\t\t\t\tbg: \"colorPalette.muted\",\n\t\t\t\t\t\tcolor: \"colorPalette.fg\",\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tseparator: {\n\t\t\t\t\t\"&[data-active]\": {\n\t\t\t\t\t\tbg: \"colorPalette.emphasized\",\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tsolid: {\n\t\t\t\ticon: {\n\t\t\t\t\tbg: \"gray.300\",\n\t\t\t\t\tcolor: \"gray.600\",\n\t\t\t\t\t_dark: {\n\t\t\t\t\t\tbg: \"gray.600\",\n\t\t\t\t\t\tcolor: \"gray.400\",\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tstep: {\n\t\t\t\t\t\"&[data-active] .stepper__icon\": {\n\t\t\t\t\t\tbg: \"colorPalette.muted\",\n\t\t\t\t\t\tborderColor: \"colorPalette.solid\",\n\t\t\t\t\t\tcolor: \"colorPalette.fg\",\n\t\t\t\t\t},\n\t\t\t\t\t\"&[data-completed] .stepper__icon\": {\n\t\t\t\t\t\tbg: \"colorPalette.solid\",\n\t\t\t\t\t\tcolor: \"colorPalette.contrast\",\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tseparator: {\n\t\t\t\t\t\"&[data-active]\": {\n\t\t\t\t\t\tborderColor: \"colorPalette.solid\",\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t},\n\t\tsize: {\n\t\t\tmd: {\n\t\t\t\ticon: {\n\t\t\t\t\tboxSize: 6,\n\t\t\t\t\tfontSize: \"sm\",\n\t\t\t\t},\n\t\t\t\ttitle: {\n\t\t\t\t\tfontSize: \"md\",\n\t\t\t\t},\n\t\t\t},\n\t\t\tlg: {\n\t\t\t\ticon: {\n\t\t\t\t\tboxSize: 8,\n\t\t\t\t},\n\t\t\t\ttitle: {\n\t\t\t\t\tfontSize: \"lg\",\n\t\t\t\t},\n\t\t\t},\n\t\t},\n\t\torientation: {\n\t\t\tvertical: {\n\t\t\t\tsteps: {\n\t\t\t\t\tflexDirection: \"column\",\n\t\t\t\t\talignItems: \"stretch\",\n\t\t\t\t},\n\t\t\t\ticon: {\n\t\t\t\t\tme: 2,\n\t\t\t\t},\n\t\t\t\tseparator: {\n\t\t\t\t\tminHeight: 4,\n\t\t\t\t\tborderLeftWidth: 1,\n\t\t\t\t\tborderTopWidth: 0,\n\t\t\t\t\tmx: 3,\n\t\t\t\t},\n\t\t\t\tcontent: {\n\t\t\t\t\tborderLeftWidth: 1,\n\t\t\t\t\tms: 3,\n\t\t\t\t\tps: 5,\n\t\t\t\t},\n\t\t\t},\n\t\t\thorizontal: {\n\t\t\t\tsteps: {\n\t\t\t\t\tflexDirection: \"row\",\n\t\t\t\t\talignItems: { base: \"flex-start\", sm: \"center\" },\n\t\t\t\t\tposition: \"relative\",\n\t\t\t\t},\n\t\t\t\ticon: {\n\t\t\t\t\tme: { base: 0, sm: 2 },\n\t\t\t\t},\n\t\t\t\ttitle: {\n\t\t\t\t\tmt: { base: 2, sm: 0 },\n\t\t\t\t\ttextAlign: \"center\",\n\t\t\t\t},\n\t\t\t\tseparator: {\n\t\t\t\t\tborderTopWidth: 1,\n\t\t\t\t\tmx: { base: 0, sm: 3 },\n\t\t\t\t\tmt: { base: 5, sm: 0 },\n\t\t\t\t\talignSelf: { base: \"flex-start\", sm: \"center\" },\n\t\t\t\t\tflex: { base: \"inherit\", sm: 1 },\n\t\t\t\t},\n\t\t\t},\n\t\t},\n\t},\n\tdefaultVariants: {\n\t\tvariant: \"solid\",\n\t\tcolorPalette: \"primary\" as never,\n\t\tsize: \"lg\",\n\t\torientation: \"horizontal\",\n\t},\n});\n","import { defineSlotRecipe } from \"@chakra-ui/react\";\n\n/**\n * FIX: Replaced `blue.50` in the hoverable variant body with `primary.50`\n * to use the primary palette consistently.\n */\nexport const tableTheme = defineSlotRecipe({\n\tslots: [\n\t\t\"root\",\n\t\t\"header\",\n\t\t\"body\",\n\t\t\"footer\",\n\t\t\"row\",\n\t\t\"columnHeader\",\n\t\t\"cell\",\n\t\t\"caption\",\n\t],\n\tbase: {\n\t\troot: {\n\t\t\twhiteSpace: \"nowrap\",\n\t\t\ttableLayout: \"fixed\",\n\t\t\ttextIndent: 0,\n\t\t},\n\t\tcolumnHeader: {\n\t\t\tpy: 3,\n\t\t\tpx: 3,\n\t\t\ttextAlign: \"start\",\n\t\t\tfontSize: \"xs\",\n\t\t\tfontWeight: \"600\",\n\t\t\ttextTransform: \"uppercase\",\n\t\t\tletterSpacing: \"wider\",\n\t\t\tcolor: \"gray.500\",\n\t\t\tbg: \"gray.50\",\n\t\t\tborderBottomWidth: \"1px\",\n\t\t\tborderColor: \"border\",\n\t\t},\n\t\tcell: {\n\t\t\tfontSize: \"sm\",\n\t\t\tpy: 3,\n\t\t\tpx: 3,\n\t\t\twhiteSpace: \"nowrap\",\n\t\t\tborderColor: \"border\",\n\t\t},\n\t\trow: {\n\t\t\tbg: \"bg-surface\",\n\t\t\t_hover: {\n\t\t\t\tbg: \"gray.50\",\n\t\t\t},\n\t\t},\n\t},\n\tvariants: {\n\t\tvariant: {\n\t\t\tline: {\n\t\t\t\tcolumnHeader: {\n\t\t\t\t\tborderBottomWidth: \"1px\",\n\t\t\t\t\tborderColor: \"border\",\n\t\t\t\t},\n\t\t\t\tcell: {\n\t\t\t\t\tborderBottomWidth: \"1px\",\n\t\t\t\t\tborderColor: \"border\",\n\t\t\t\t},\n\t\t\t\trow: {\n\t\t\t\t\tbg: \"bg-surface\",\n\t\t\t\t},\n\t\t\t},\n\t\t\tstriped: {\n\t\t\t\tbody: {\n\t\t\t\t\t\"& tr:nth-of-type(odd) td\": {\n\t\t\t\t\t\tbg: \"gray.50\",\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\thoverable: {\n\t\t\t\tbody: {\n\t\t\t\t\t\"& tr:hover\": {\n\t\t\t\t\t\tbg: \"primary.50\",\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t},\n\t},\n\tdefaultVariants: {\n\t\tvariant: \"line\",\n\t},\n});\n","import { defineSlotRecipe } from \"@chakra-ui/react\";\n\nexport const tabTheme = defineSlotRecipe({\n\tslots: [\"root\", \"list\", \"trigger\", \"content\", \"contentGroup\", \"indicator\"],\n\tvariants: {\n\t\tvariant: {\n\t\t\t\"with-line\": {\n\t\t\t\tlist: {\n\t\t\t\t\tborderBottom: \"1px solid\",\n\t\t\t\t\tborderColor: \"border\",\n\t\t\t\t},\n\t\t\t\ttrigger: {\n\t\t\t\t\tcolor: \"muted\",\n\t\t\t\t\tborderBottom: \"2px solid transparent\",\n\t\t\t\t\tmarginBottom: \"-1px\",\n\t\t\t\t\tpt: \"0\",\n\t\t\t\t\tpb: \"4.5\",\n\t\t\t\t\tpx: \"1\",\n\t\t\t\t\tjustifyContent: \"start\",\n\t\t\t\t\t\"&:not(:last-child)\": {\n\t\t\t\t\t\tme: \"4\",\n\t\t\t\t\t},\n\t\t\t\t\t_selected: {\n\t\t\t\t\t\tcolor: \"colorPalette.solid\",\n\t\t\t\t\t\tborderBottom: \"2px solid\",\n\t\t\t\t\t\tborderBottomColor: \"colorPalette.solid\",\n\t\t\t\t\t},\n\t\t\t\t\t_active: {\n\t\t\t\t\t\tbg: \"transparent\",\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\t\"with-line-vertical\": {\n\t\t\t\tlist: {\n\t\t\t\t\tborderStart: \"1px solid\",\n\t\t\t\t\tborderColor: \"border\",\n\t\t\t\t},\n\t\t\t\ttrigger: {\n\t\t\t\t\tcolor: \"muted\",\n\t\t\t\t\tborderStart: \"2px solid transparent\",\n\t\t\t\t\tmarginStart: \"-1px\",\n\t\t\t\t\tjustifyContent: \"start\",\n\t\t\t\t\tpx: \"3\",\n\t\t\t\t\t\"&:not(:last-child)\": {\n\t\t\t\t\t\tmb: \"2\",\n\t\t\t\t\t},\n\t\t\t\t\t_selected: {\n\t\t\t\t\t\tcolor: \"colorPalette.solid\",\n\t\t\t\t\t\tborderStartColor: \"colorPalette.solid\",\n\t\t\t\t\t},\n\t\t\t\t\t_active: {\n\t\t\t\t\t\tbg: \"transparent\",\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t},\n\t},\n});\n","import { defineRecipe } from \"@chakra-ui/react\";\n\nexport const tagTheme = defineRecipe({\n\tbase: {\n\t\tlineHeight: \"1.2\",\n\t\tborderRadius: \"md\",\n\t\tfontWeight: \"semibold\",\n\t\ttransitionProperty: \"common\",\n\t\ttransitionDuration: \"normal\",\n\t\t_focusVisible: {\n\t\t\tboxShadow: \"none\",\n\t\t\toutlineOffset: \"2px\",\n\t\t\toutlineWidth: \"2px\",\n\t\t\toutlineStyle: \"solid\",\n\t\t\toutlineColor: \"primary.700\",\n\t\t},\n\t\t_disabled: {\n\t\t\topacity: 0.4,\n\t\t\tcursor: \"not-allowed\",\n\t\t\tboxShadow: \"none\",\n\t\t},\n\t\t_hover: {\n\t\t\t_disabled: {\n\t\t\t\tbg: \"initial\",\n\t\t\t},\n\t\t},\n\t},\n\tvariants: {\n\t\tvariant: {\n\t\t\tsolid: {\n\t\t\t\t'&[aria-current=\"page\"]': {\n\t\t\t\t\tbg: { base: \"colorPalette.300\", _dark: \"colorPalette.400\" },\n\t\t\t\t},\n\t\t\t},\n\t\t\tprimary: {\n\t\t\t\tbg: { base: \"primary.300\", _dark: \"primary.400\" },\n\t\t\t},\n\t\t\tsecondary: {\n\t\t\t\tborderWidth: \"1px\",\n\t\t\t\tbg: { base: \"white\", _dark: \"gray.800\" },\n\t\t\t\tcolor: { base: \"gray.800\", _dark: \"whiteAlpha.900\" },\n\t\t\t},\n\t\t\toutline: {\n\t\t\t\tbg: { base: \"white\", _dark: \"gray.800\" },\n\t\t\t\t_hover: {\n\t\t\t\t\tbg: { base: \"gray.50\", _dark: \"gray.700/40\" },\n\t\t\t\t},\n\t\t\t\t_checked: {\n\t\t\t\t\tbg: { base: \"gray.100\", _dark: \"gray.700\" },\n\t\t\t\t},\n\t\t\t\t_active: {\n\t\t\t\t\tbg: { base: \"gray.100\", _dark: \"gray.700\" },\n\t\t\t\t},\n\t\t\t},\n\t\t\tghost: {\n\t\t\t\t_hover: {\n\t\t\t\t\tbg: \"transparent\",\n\t\t\t\t\tcolor: \"primary.700\",\n\t\t\t\t},\n\t\t\t\t_active: {\n\t\t\t\t\tbg: \"transparent\",\n\t\t\t\t},\n\t\t\t},\n\t\t\tlink: {\n\t\t\t\tcolor: { base: \"colorPalette.600\", _dark: \"colorPalette.200\" },\n\t\t\t\t_hover: {\n\t\t\t\t\tcolor: { base: \"colorPalette.700\", _dark: \"colorPalette.300\" },\n\t\t\t\t\ttextDecoration: \"none\",\n\t\t\t\t},\n\t\t\t\t_active: {\n\t\t\t\t\tcolor: { base: \"colorPalette.700\", _dark: \"colorPalette.300\" },\n\t\t\t\t},\n\t\t\t},\n\t\t},\n\t\tsize: {\n\t\t\txl: {\n\t\t\t\trounded: \"md\",\n\t\t\t\tpx: 3.5,\n\t\t\t\tfontSize: \"sm\",\n\t\t\t\tlineHeight: 1.5,\n\t\t\t\tfontWeight: 600,\n\t\t\t\th: \"10\",\n\t\t\t\tminW: \"10\",\n\t\t\t},\n\t\t\tlg: {\n\t\t\t\trounded: \"md\",\n\t\t\t\tpx: 3,\n\t\t\t\tfontSize: \"sm\",\n\t\t\t\tlineHeight: 1.5,\n\t\t\t\tfontWeight: 600,\n\t\t\t\th: \"9\",\n\t\t\t\tminW: \"9\",\n\t\t\t},\n\t\t\tmd: {\n\t\t\t\trounded: \"md\",\n\t\t\t\tpx: 2.5,\n\t\t\t\tfontSize: \"sm\",\n\t\t\t\tlineHeight: 1.5,\n\t\t\t\tfontWeight: 600,\n\t\t\t\th: \"8\",\n\t\t\t\tminW: \"8\",\n\t\t\t},\n\t\t\tsm: {\n\t\t\t\trounded: \"base\",\n\t\t\t\tpx: 2,\n\t\t\t\tfontSize: \"sm\",\n\t\t\t\tlineHeight: 1.5,\n\t\t\t\tfontWeight: 600,\n\t\t\t\th: \"7\",\n\t\t\t\tminW: \"7\",\n\t\t\t},\n\t\t\txs: {\n\t\t\t\th: \"6\",\n\t\t\t\tminW: \"6\",\n\t\t\t\trounded: \"base\",\n\t\t\t\tpx: 2,\n\t\t\t\tfontSize: \"xs\",\n\t\t\t\tlineHeight: \"1rem\",\n\t\t\t\tfontWeight: 600,\n\t\t\t},\n\t\t},\n\t},\n\tdefaultVariants: {\n\t\tsize: \"lg\",\n\t\tcolorPalette: \"primary\" as never,\n\t},\n});\n","import { defineRecipe } from \"@chakra-ui/react\";\n\n/**\n * FIX: Replaced `brand.500`/`brand.200` references with `primary.500`/`primary.200`.\n */\nexport default defineRecipe({\n\tvariants: {\n\t\tvariant: {\n\t\t\toutline: {\n\t\t\t\tborderRadius: \"md\",\n\t\t\t\tbg: { base: \"white\", _dark: \"gray.800\" },\n\t\t\t\t_hover: { borderColor: { base: \"gray.300\", _dark: \"gray.600\" } },\n\t\t\t\t_focus: {\n\t\t\t\t\tborderColor: { base: \"primary.700\", _dark: \"primary.300\" },\n\t\t\t\t\tboxShadow: {\n\t\t\t\t\t\tbase: \"0px 0px 0px 1px var(--chakra-colors-primary-700)\",\n\t\t\t\t\t\t_dark: \"0px 0px 0px 1px var(--chakra-colors-primary-300)\",\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t},\n\t},\n});\n","import { defineRecipe } from \"@chakra-ui/react\";\n\nexport const tooltipTheme = defineRecipe({\n\tbase: {\n\t\tpx: \"2\",\n\t\tpy: \"1\",\n\t\tbg: \"gray.700\",\n\t\tcolor: \"whiteAlpha.900\",\n\t\t_dark: {\n\t\t\tbg: \"gray.300\",\n\t\t\tcolor: \"gray.900\",\n\t\t},\n\t\tborderRadius: \"md\",\n\t\tfontWeight: \"medium\",\n\t\tfontSize: \"sm\",\n\t\tboxShadow: \"md\",\n\t\tmaxW: \"xs\",\n\t\tzIndex: \"tooltip\",\n\t\tanimation: \"slideUp 150ms ease-out\",\n\t},\n});\n","import { defineSlotRecipe } from \"@chakra-ui/react\";\n\nexport default defineSlotRecipe({\n\tslots: [\n\t\t\"treeItem\",\n\t\t\"treeItemElement\",\n\t\t\"treeItemToggle\",\n\t\t\"treeItemIcon\",\n\t\t\"treeItemContent\",\n\t\t\"treeItemLabel\",\n\t\t\"treeItemActions\",\n\t\t\"treeItemChildren\",\n\t],\n\tbase: {\n\t\ttreeItem: {},\n\t\ttreeItemElement: {\n\t\t\theight: \"42px\",\n\t\t\tdisplay: \"grid\",\n\t\t\tgridTemplateColumns: \"30px 24px 20px auto 50px\",\n\t\t\tgridGap: \"2px\",\n\t\t\talignItems: \"center\",\n\t\t\talignContent: \"center\",\n\t\t\tpadding: 0,\n\t\t\tfontSize: \"xs\",\n\t\t\tcolor: { base: \"gray.700\", _dark: \"gray.300\" },\n\t\t\tborderRadius: \"base\",\n\t\t\t_hover: {\n\t\t\t\tbg: { base: \"gray.100\", _dark: \"gray.700\" },\n\t\t\t},\n\t\t\t\".is--no-checkbox &\": {\n\t\t\t\tgridTemplateColumns: \"30px 0 24px auto 50px\",\n\t\t\t},\n\t\t},\n\t\ttreeItemToggle: {\n\t\t\twidth: \"15px\",\n\t\t\theight: \"24px\",\n\t\t\tlineHeight: \"20px\",\n\t\t\ttextAlign: \"center\",\n\t\t\tposition: \"relative\",\n\t\t\tcursor: \"pointer\",\n\t\t\tuserSelect: \"none\",\n\t\t\tjustifySelf: \"center\",\n\t\t\t_expanded: {\n\t\t\t\tcolor: \"primary.400\",\n\t\t\t},\n\t\t},\n\t\ttreeItemIcon: {\n\t\t\twidth: \"45px\",\n\t\t\theight: \"22px\",\n\t\t\tcolor: \"primary.700\",\n\t\t\t\"&[aria-leaf=true],&[data-leaf]\": {\n\t\t\t\tcolor: \"gray.400\",\n\t\t\t},\n\t\t},\n\t\ttreeItemContent: {},\n\t\ttreeItemLabel: {\n\t\t\tcolor: { base: \"gray.700\", _dark: \"gray.300\" },\n\t\t},\n\t\ttreeItemActions: {\n\t\t\ttextAlign: \"end\",\n\t\t\tmarginInlineStart: \"4px\",\n\t\t},\n\t\ttreeItemChildren: {\n\t\t\tposition: \"relative\",\n\t\t\tpaddingInlineStart: 12,\n\t\t\t_before: {\n\t\t\t\tcontent: '\"\"',\n\t\t\t\tposition: \"absolute\",\n\t\t\t\tinsetInlineStart: \"16px\",\n\t\t\t\theight: \"100%\",\n\t\t\t\twidth: \"1px\",\n\t\t\t\tbg: { base: \"gray.200\", _dark: \"gray.600\" },\n\t\t\t},\n\t\t},\n\t},\n});\n","/**\n * Motion tokens for consistent animation timing across components.\n */\nexport const durations = {\n\tfast: { value: \"150ms\" },\n\tnormal: { value: \"200ms\" },\n\tslow: { value: \"300ms\" },\n\tslower: { value: \"400ms\" },\n\tentrance: { value: \"250ms\" },\n\texit: { value: \"200ms\" },\n};\n\nexport const easings = {\n\t\"ease-in\": { value: \"cubic-bezier(0.4, 0, 1, 1)\" },\n\t\"ease-out\": { value: \"cubic-bezier(0, 0, 0.2, 1)\" },\n\t\"ease-in-out\": { value: \"cubic-bezier(0.4, 0, 0.2, 1)\" },\n\tspring: { value: \"cubic-bezier(0.175, 0.885, 0.32, 1.275)\" },\n};\n\n/**\n * Reusable keyframe definitions for component animations.\n * These are CSS keyframe strings intended for use in globalCss or recipes.\n */\nexport const keyframes = {\n\tfadeIn: {\n\t\tfrom: { opacity: 0 },\n\t\tto: { opacity: 1 },\n\t},\n\tfadeOut: {\n\t\tfrom: { opacity: 1 },\n\t\tto: { opacity: 0 },\n\t},\n\tslideUp: {\n\t\tfrom: { opacity: 0, transform: \"translateY(4px)\" },\n\t\tto: { opacity: 1, transform: \"translateY(0)\" },\n\t},\n\tslideDown: {\n\t\tfrom: { opacity: 0, transform: \"translateY(-4px)\" },\n\t\tto: { opacity: 1, transform: \"translateY(0)\" },\n\t},\n\tscaleIn: {\n\t\tfrom: { opacity: 0, transform: \"scale(0.95)\" },\n\t\tto: { opacity: 1, transform: \"scale(1)\" },\n\t},\n};\n","/**\n * Raw color scales for the design system.\n *\n * `primary` is the UI blue (anchored at step 700 = #134788 — used for\n * action surfaces, links, focus rings). `secondary` is the brand orange\n * (anchored at step 600 = #e9580c — matches the brand guideline exactly).\n * `gray` is a blue-tinted neutral scale (~80% of UI pixels). `brand`\n * contains the exact hex values from the knk Brand Guidelines (October\n * 2021) for branding contexts like logos, headers, and about pages.\n *\n * `success`, `warning`, `danger`, `info` are explicit status palettes\n * owned by anker (rather than inheriting Chakra's defaults), so consumers\n * get stable status colors regardless of Chakra version.\n *\n * NOTE: `primary.800` (#0f395d) matches `brand.navy` exactly. The\n * brand-guideline blue (`brand.blue` = #004576) is intentionally NOT in\n * the `primary` scale — the action anchor (`primary.700` = #134788) is\n * calibrated for web legibility instead, since #004576 reads as too\n * heavy as a CTA on white surfaces.\n */\nconst colors = {\n\tprimary: {\n\t\t\"50\": { value: \"#eff6fc\" },\n\t\t\"100\": { value: \"#d9eafa\" },\n\t\t\"200\": { value: \"#b8d6f5\" },\n\t\t\"300\": { value: \"#88baeb\" },\n\t\t\"400\": { value: \"#5995dc\" },\n\t\t\"500\": { value: \"#2f6fbf\" },\n\t\t\"600\": { value: \"#1c5aa8\" },\n\t\t\"700\": { value: \"#134788\" },\n\t\t\"800\": { value: \"#0f395d\" },\n\t\t\"900\": { value: \"#0a2740\" },\n\t\t\"950\": { value: \"#061a2c\" },\n\t},\n\tsecondary: {\n\t\t\"50\": { value: \"#fff5ed\" },\n\t\t\"100\": { value: \"#ffe6d4\" },\n\t\t\"200\": { value: \"#ffc8a8\" },\n\t\t\"300\": { value: \"#ffa170\" },\n\t\t\"400\": { value: \"#ff7c41\" },\n\t\t\"500\": { value: \"#f25f1c\" },\n\t\t\"600\": { value: \"#e9580c\" },\n\t\t\"700\": { value: \"#b73806\" },\n\t\t\"800\": { value: \"#912e0d\" },\n\t\t\"900\": { value: \"#762a0e\" },\n\t\t\"950\": { value: \"#411208\" },\n\t},\n\t// Exact brand guideline colors for branding elements (headers, logos, about pages).\n\t// See: knk Brand Guidelines, October 2021\n\tbrand: {\n\t\tblue: { value: \"#004576\" },\n\t\tnavy: { value: \"#0f395d\" },\n\t\t\"light-blue\": { value: \"#6fa7d1\" },\n\t\torange: { value: \"#e9580c\" },\n\t\tgold: { value: \"#f4b235\" },\n\t\t\"light-gray\": { value: \"#f2f2f2\" },\n\t},\n\t// Blue-tinted gray\n\tgray: {\n\t\t\"50\": { value: \"#f8fafc\" },\n\t\t\"100\": { value: \"#f1f5f9\" },\n\t\t\"200\": { value: \"#e2e8f0\" },\n\t\t\"300\": { value: \"#cbd5e1\" },\n\t\t\"400\": { value: \"#94a3b8\" },\n\t\t\"500\": { value: \"#64748b\" },\n\t\t\"600\": { value: \"#475569\" },\n\t\t\"700\": { value: \"#334155\" },\n\t\t\"800\": { value: \"#1e293b\" },\n\t\t\"900\": { value: \"#0f172a\" },\n\t\t\"950\": { value: \"#020617\" },\n\t},\n\tsuccess: {\n\t\t\"50\": { value: \"#ecfdf5\" },\n\t\t\"100\": { value: \"#d1fae5\" },\n\t\t\"500\": { value: \"#10b981\" },\n\t\t\"600\": { value: \"#059669\" },\n\t\t\"700\": { value: \"#047857\" },\n\t},\n\twarning: {\n\t\t\"50\": { value: \"#fffbeb\" },\n\t\t\"100\": { value: \"#fef3c7\" },\n\t\t\"500\": { value: \"#f59e0b\" },\n\t\t\"600\": { value: \"#d97706\" },\n\t\t\"700\": { value: \"#b45309\" },\n\t},\n\tdanger: {\n\t\t\"50\": { value: \"#fef2f2\" },\n\t\t\"100\": { value: \"#fee2e2\" },\n\t\t\"500\": { value: \"#ef4444\" },\n\t\t\"600\": { value: \"#dc2626\" },\n\t\t\"700\": { value: \"#b91c1c\" },\n\t},\n\tinfo: {\n\t\t\"50\": { value: \"#eff6fc\" },\n\t\t\"100\": { value: \"#d9eafa\" },\n\t\t\"500\": { value: \"#2f6fbf\" },\n\t\t\"600\": { value: \"#1c5aa8\" },\n\t\t\"700\": { value: \"#134788\" },\n\t},\n};\n\nexport default colors;\n","/**\n * Border-radius tokens.\n *\n * Tightened (1.0): sm=4px, md=6px, lg=8px, xl=12px, 2xl=16px.\n * The refined design system favors moderate radii — every component\n * was previously one step looser. `md` (6px) is the default for\n * buttons, inputs, and small cards.\n */\nconst radii = {\n\tsm: \"0.25rem\",\n\tmd: \"0.375rem\",\n\tlg: \"0.5rem\",\n\txl: \"0.75rem\",\n\t\"2xl\": \"1rem\",\n};\n\nexport default radii;\n","/**\n * Semantic tokens for colors and shadows.\n *\n * These map abstract names (bg-canvas, accent, border, etc.) to raw color\n * scale values, with automatic light/dark mode variants.\n *\n * Cross-token references must use {colors.X} brace syntax so Chakra v3\n * emits them as `var(--chakra-colors-X)` references. Bare strings like\n * `\"gray.50\"` are stored verbatim into the CSS custom property and yield\n * invalid CSS at runtime.\n */\nconst semanticTokens = {\n\tcolors: {\n\t\t\"bg-canvas\": {\n\t\t\tvalue: { base: \"{colors.gray.50}\", _dark: \"{colors.gray.900}\" },\n\t\t},\n\t\t\"bg-surface\": {\n\t\t\tvalue: { base: \"{colors.white}\", _dark: \"{colors.gray.800}\" },\n\t\t},\n\t\t\"bg-subtle\": {\n\t\t\tvalue: { base: \"{colors.gray.50}\", _dark: \"{colors.gray.700}\" },\n\t\t},\n\t\t\"bg-muted\": {\n\t\t\tvalue: { base: \"{colors.gray.100}\", _dark: \"{colors.gray.600}\" },\n\t\t},\n\t\tdefault: {\n\t\t\tvalue: { base: \"{colors.gray.900}\", _dark: \"{colors.white}\" },\n\t\t},\n\t\tinverted: {\n\t\t\tvalue: { base: \"{colors.white}\", _dark: \"{colors.gray.900}\" },\n\t\t},\n\t\temphasized: {\n\t\t\tvalue: { base: \"{colors.gray.700}\", _dark: \"{colors.gray.100}\" },\n\t\t},\n\t\tmuted: {\n\t\t\tvalue: { base: \"{colors.gray.600}\", _dark: \"{colors.gray.300}\" },\n\t\t},\n\t\tsubtle: {\n\t\t\tvalue: { base: \"{colors.gray.500}\", _dark: \"{colors.gray.400}\" },\n\t\t},\n\t\tborder: {\n\t\t\tvalue: { base: \"{colors.gray.200}\", _dark: \"{colors.gray.700}\" },\n\t\t},\n\t\t\"border-muted\": {\n\t\t\tvalue: { base: \"{colors.gray.100}\", _dark: \"{colors.gray.800}\" },\n\t\t},\n\t\taccent: {\n\t\t\tvalue: { base: \"{colors.primary.700}\", _dark: \"{colors.primary.300}\" },\n\t\t},\n\t\tsuccess: {\n\t\t\tvalue: { base: \"{colors.green.600}\", _dark: \"{colors.green.200}\" },\n\t\t},\n\t\terror: {\n\t\t\tvalue: { base: \"{colors.red.600}\", _dark: \"{colors.red.200}\" },\n\t\t},\n\t\t// Color palette tokens for colorPalette=\"primary\" (required by Chakra v3\n\t\t// for solid/subtle/outline/ghost button variants and other components)\n\t\tprimary: {\n\t\t\tcontrast: { value: { base: \"white\", _dark: \"white\" } },\n\t\t\tfg: {\n\t\t\t\tvalue: {\n\t\t\t\t\tbase: \"{colors.primary.700}\",\n\t\t\t\t\t_dark: \"{colors.primary.300}\",\n\t\t\t\t},\n\t\t\t},\n\t\t\tsubtle: {\n\t\t\t\tvalue: {\n\t\t\t\t\tbase: \"{colors.primary.100}\",\n\t\t\t\t\t_dark: \"{colors.primary.900}\",\n\t\t\t\t},\n\t\t\t},\n\t\t\tmuted: {\n\t\t\t\tvalue: {\n\t\t\t\t\tbase: \"{colors.primary.200}\",\n\t\t\t\t\t_dark: \"{colors.primary.800}\",\n\t\t\t\t},\n\t\t\t},\n\t\t\temphasized: {\n\t\t\t\tvalue: {\n\t\t\t\t\tbase: \"{colors.primary.300}\",\n\t\t\t\t\t_dark: \"{colors.primary.700}\",\n\t\t\t\t},\n\t\t\t},\n\t\t\t// solid + focusRing intentionally keep dark at step 500 (not 700)\n\t\t\t// so the action color stays visible on dark canvas. This breaks the\n\t\t\t// \"same step both modes\" pattern that held before the 1.0 anchor\n\t\t\t// shift. Do not \"fix\" the asymmetry — see design-system spec §5.2.\n\t\t\tsolid: {\n\t\t\t\tvalue: {\n\t\t\t\t\tbase: \"{colors.primary.700}\",\n\t\t\t\t\t_dark: \"{colors.primary.500}\",\n\t\t\t\t},\n\t\t\t},\n\t\t\tfocusRing: {\n\t\t\t\tvalue: {\n\t\t\t\t\tbase: \"{colors.primary.700}\",\n\t\t\t\t\t_dark: \"{colors.primary.500}\",\n\t\t\t\t},\n\t\t\t},\n\t\t\tborder: {\n\t\t\t\tvalue: {\n\t\t\t\t\tbase: \"{colors.primary.700}\",\n\t\t\t\t\t_dark: \"{colors.primary.400}\",\n\t\t\t\t},\n\t\t\t},\n\t\t},\n\t\t// Secondary color palette tokens (for colorPalette=\"secondary\")\n\t\tsecondary: {\n\t\t\tcontrast: { value: { base: \"white\", _dark: \"white\" } },\n\t\t\tfg: {\n\t\t\t\tvalue: {\n\t\t\t\t\tbase: \"{colors.secondary.700}\",\n\t\t\t\t\t_dark: \"{colors.secondary.300}\",\n\t\t\t\t},\n\t\t\t},\n\t\t\tsubtle: {\n\t\t\t\tvalue: {\n\t\t\t\t\tbase: \"{colors.secondary.100}\",\n\t\t\t\t\t_dark: \"{colors.secondary.900}\",\n\t\t\t\t},\n\t\t\t},\n\t\t\tmuted: {\n\t\t\t\tvalue: {\n\t\t\t\t\tbase: \"{colors.secondary.200}\",\n\t\t\t\t\t_dark: \"{colors.secondary.800}\",\n\t\t\t\t},\n\t\t\t},\n\t\t\temphasized: {\n\t\t\t\tvalue: {\n\t\t\t\t\tbase: \"{colors.secondary.300}\",\n\t\t\t\t\t_dark: \"{colors.secondary.700}\",\n\t\t\t\t},\n\t\t\t},\n\t\t\tsolid: {\n\t\t\t\tvalue: {\n\t\t\t\t\tbase: \"{colors.secondary.600}\",\n\t\t\t\t\t_dark: \"{colors.secondary.500}\",\n\t\t\t\t},\n\t\t\t},\n\t\t\tfocusRing: {\n\t\t\t\tvalue: {\n\t\t\t\t\tbase: \"{colors.secondary.600}\",\n\t\t\t\t\t_dark: \"{colors.secondary.500}\",\n\t\t\t\t},\n\t\t\t},\n\t\t\tborder: {\n\t\t\t\tvalue: {\n\t\t\t\t\tbase: \"{colors.secondary.600}\",\n\t\t\t\t\t_dark: \"{colors.secondary.400}\",\n\t\t\t\t},\n\t\t\t},\n\t\t},\n\t\t// Accent surface tokens\n\t\t\"bg-accent\": {\n\t\t\tvalue: { base: \"{colors.primary.700}\", _dark: \"{colors.primary.400}\" },\n\t\t},\n\t\t\"bg-accent-subtle\": {\n\t\t\tvalue: { base: \"{colors.primary.700}\", _dark: \"{colors.primary.500}\" },\n\t\t},\n\t\t\"bg-accent-muted\": {\n\t\t\tvalue: { base: \"{colors.primary.500}\", _dark: \"{colors.primary.600}\" },\n\t\t},\n\t\t\"on-accent\": { value: { base: \"white\", _dark: \"white\" } },\n\t\t\"on-accent-muted\": {\n\t\t\tvalue: { base: \"{colors.primary.50}\", _dark: \"{colors.primary.100}\" },\n\t\t},\n\t\t\"on-accent-subtle\": {\n\t\t\tvalue: { base: \"{colors.primary.100}\", _dark: \"{colors.primary.200}\" },\n\t\t},\n\t},\n\tshadows: {\n\t\txs: {\n\t\t\tvalue: {\n\t\t\t\tbase: \"0 1px 2px rgba(0, 0, 0, 0.04)\",\n\t\t\t\t_dark: \"0 1px 2px rgba(0, 0, 0, 0.4)\",\n\t\t\t},\n\t\t},\n\t\tsm: {\n\t\t\tvalue: {\n\t\t\t\tbase: \"0 1px 2px rgba(0, 0, 0, 0.06)\",\n\t\t\t\t_dark: \"0 1px 2px rgba(0, 0, 0, 0.5)\",\n\t\t\t},\n\t\t},\n\t\tmd: {\n\t\t\tvalue: {\n\t\t\t\tbase: \"0 4px 6px -1px rgba(0, 0, 0, 0.08), 0 2px 4px -2px rgba(0, 0, 0, 0.04)\",\n\t\t\t\t_dark:\n\t\t\t\t\t\"0 4px 6px -1px rgba(0, 0, 0, 0.5), 0 2px 4px -2px rgba(0, 0, 0, 0.3)\",\n\t\t\t},\n\t\t},\n\t\tlg: {\n\t\t\tvalue: {\n\t\t\t\tbase: \"0 10px 15px -3px rgba(0, 0, 0, 0.08), 0 4px 6px -4px rgba(0, 0, 0, 0.04)\",\n\t\t\t\t_dark:\n\t\t\t\t\t\"0 10px 15px -3px rgba(0, 0, 0, 0.5), 0 4px 6px -4px rgba(0, 0, 0, 0.3)\",\n\t\t\t},\n\t\t},\n\t\txl: {\n\t\t\tvalue: {\n\t\t\t\tbase: \"0 20px 25px -5px rgba(0, 0, 0, 0.10), 0 8px 10px -6px rgba(0, 0, 0, 0.04)\",\n\t\t\t\t_dark:\n\t\t\t\t\t\"0 20px 25px -5px rgba(0, 0, 0, 0.6), 0 8px 10px -6px rgba(0, 0, 0, 0.3)\",\n\t\t\t},\n\t\t},\n\t\t\"2xl\": {\n\t\t\tvalue: {\n\t\t\t\tbase: \"0 25px 50px -12px rgba(0, 0, 0, 0.18)\",\n\t\t\t\t_dark: \"0 25px 50px -12px rgba(0, 0, 0, 0.7)\",\n\t\t\t},\n\t\t},\n\t\t\"focus-ring\": {\n\t\t\tvalue: {\n\t\t\t\tbase: \"0 0 0 3px rgba(19, 71, 136, 0.18)\",\n\t\t\t\t_dark: \"0 0 0 3px rgba(47, 111, 191, 0.4)\",\n\t\t\t},\n\t\t},\n\t},\n\topacity: {\n\t\tdisabled: { value: 0.4 },\n\t\treadOnly: { value: 0.8 },\n\t},\n};\n\nexport default semanticTokens;\n","/**\n * Custom spacing additions that extend the Chakra default scale.\n */\nconst space = {\n\t\"1.5\": \"0.375rem\",\n\t\"2.5\": \"0.625rem\",\n\t\"3.5\": \"0.875rem\",\n\t\"4.5\": \"1.125rem\",\n};\n\nexport default space;\n","/**\n * Font families and text style presets.\n *\n * Merged from the Core monolith's `foundations/fonts.ts` and\n * `foundations/text-styles.ts` into a single module.\n */\nexport const fonts = {\n\theading: \"'Inter Tight', system-ui, -apple-system, 'Segoe UI', sans-serif\",\n\tbody: \"'Inter Tight', system-ui, -apple-system, 'Segoe UI', sans-serif\",\n\tmono: \"'JetBrains Mono', ui-monospace, SFMono-Regular, monospace\",\n};\n\nexport const textStyles = {\n\t\"7xl\": {\n\t\tfontSize: \"7xl\",\n\t\tlineHeight: \"5.75rem\", // 92px\n\t\tletterSpacing: \"-0.02em\",\n\t},\n\t\"6xl\": {\n\t\tfontSize: \"6xl\",\n\t\tlineHeight: \"4.5rem\", // 72px\n\t\tletterSpacing: \"-0.02em\",\n\t},\n\t\"5xl\": {\n\t\tfontSize: \"5xl\",\n\t\tlineHeight: \"3.75rem\", // 60px\n\t\tletterSpacing: \"-0.02em\",\n\t},\n\t\"4xl\": {\n\t\tfontSize: \"4xl\",\n\t\tlineHeight: \"2.75rem\", // 44px\n\t\tletterSpacing: \"-0.02em\",\n\t},\n\t\"3xl\": {\n\t\tfontSize: \"3xl\",\n\t\tlineHeight: \"2.375rem\", // 38px\n\t},\n\t\"2xl\": {\n\t\tfontSize: \"2xl\",\n\t\tlineHeight: \"2rem\", // 32px\n\t},\n\txl: {\n\t\tfontSize: \"xl\",\n\t\tlineHeight: \"1.875rem\", // 30px\n\t},\n\tlg: {\n\t\tfontSize: \"lg\",\n\t\tlineHeight: \"1.75rem\", // 28px\n\t},\n\tmd: {\n\t\tfontSize: \"md\",\n\t\tlineHeight: \"1.5rem\", // 24px\n\t},\n\tsm: {\n\t\tfontSize: \"sm\",\n\t\tlineHeight: \"1.25rem\", // 20px\n\t},\n\txs: {\n\t\tfontSize: \"xs\",\n\t\tlineHeight: \"1.125rem\", // 18px\n\t},\n\t// Additional semantic presets\n\tdisplay: {\n\t\tfontSize: \"6xl\",\n\t\tlineHeight: \"4.5rem\",\n\t\tletterSpacing: \"-0.03em\",\n\t\tfontWeight: \"bold\",\n\t},\n\tcaption: {\n\t\tfontSize: \"xs\",\n\t\tlineHeight: \"1rem\",\n\t\tletterSpacing: \"0.01em\",\n\t\tcolor: \"muted\",\n\t},\n\toverline: {\n\t\tfontSize: \"xs\",\n\t\tlineHeight: \"1rem\",\n\t\tletterSpacing: \"0.08em\",\n\t\tfontWeight: \"semibold\",\n\t\ttextTransform: \"uppercase\" as const,\n\t},\n\tbodyLg: {\n\t\tfontSize: \"lg\",\n\t\tfontWeight: \"normal\",\n\t\tlineHeight: \"1.5\", // unitless multiplier — scales with fontSize\n\t},\n\tbody: {\n\t\tfontSize: \"md\",\n\t\tfontWeight: \"normal\",\n\t\tlineHeight: \"1.5\",\n\t},\n\tbodySm: {\n\t\tfontSize: \"sm\",\n\t\tfontWeight: \"normal\",\n\t\tlineHeight: \"1.45\",\n\t},\n\tmono: {\n\t\tfontFamily: \"mono\",\n\t\tfontSize: \"md\",\n\t\tlineHeight: \"1.5\",\n\t},\n\tmonoSm: {\n\t\tfontFamily: \"mono\",\n\t\tfontSize: \"xs\",\n\t\tlineHeight: \"1.45\",\n\t},\n};\n","/**\n * Z-index scale for consistent stacking order.\n *\n * dropdown < sticky < overlay < modal < popover < toast\n */\nconst zIndex = {\n\tdropdown: { value: 1000 },\n\tsticky: { value: 1100 },\n\toverlay: { value: 1300 },\n\tmodal: { value: 1400 },\n\tpopover: { value: 1500 },\n\ttoast: { value: 1700 },\n};\n\nexport default zIndex;\n","import {\n\tcreateSystem,\n\tdefaultConfig,\n\tdefineSlotRecipe,\n} from \"@chakra-ui/react\";\nimport type { ThemePreset } from \"./presets/types\";\nimport {\n\tbutton,\n\tcard,\n\tcheckbox,\n\tcomment,\n\tcontainer,\n\tdialog,\n\tdrawer,\n\tformLabel,\n\tinput,\n\tmenu,\n\tmodal,\n\tpersona,\n\tpopover,\n\tprose,\n\tseparator,\n\tstepper,\n\ttable,\n\ttabs,\n\ttag,\n\ttextarea,\n\ttooltip,\n\ttreeItem,\n\ttsProperty,\n\ttsRadioCard,\n} from \"./recipes\";\nimport {\n\tcolors as baseColors,\n\tdurations as baseDurations,\n\teasings as baseEasings,\n\tfonts as baseFonts,\n\tradii as baseRadii,\n\tsemanticTokens as baseSemanticTokens,\n\ttextStyles as baseTextStyles,\n\tkeyframes,\n\tspace,\n\tzIndex,\n} from \"./tokens\";\n\n/**\n * Creates an Anker theme system with optional preset overrides.\n * Without a preset (or with the default preset), this produces the\n * same system as the default export from `@knkcs/anker/theme`.\n *\n * @example\n * ```tsx\n * import { createAnkerTheme } from \"@knkcs/anker/theme\";\n * import type { ThemePreset } from \"@knkcs/anker/theme\";\n *\n * const myPreset: ThemePreset = { name: \"custom\", radii: { md: \"0\" } };\n * <Provider system={createAnkerTheme(myPreset)}>\n * ```\n */\nexport function createAnkerTheme(preset?: ThemePreset) {\n\tconst fonts = {\n\t\theading: preset?.fonts?.heading ?? baseFonts.heading,\n\t\tbody: preset?.fonts?.body ?? baseFonts.body,\n\t\tmono: preset?.fonts?.mono ?? baseFonts.mono,\n\t};\n\n\tconst colors = preset?.colors\n\t\t? { ...baseColors, ...preset.colors }\n\t\t: baseColors;\n\n\tconst durations = preset?.durations\n\t\t? { ...baseDurations, ...preset.durations }\n\t\t: baseDurations;\n\n\tconst easings = preset?.easings\n\t\t? { ...baseEasings, ...preset.easings }\n\t\t: baseEasings;\n\n\tconst radii = preset?.radii ?? baseRadii;\n\n\tconst textStyles = preset?.textStyles\n\t\t? { ...baseTextStyles, ...preset.textStyles }\n\t\t: baseTextStyles;\n\n\tconst semanticTokens = preset?.semanticTokens\n\t\t? deepMerge(\n\t\t\t\tbaseSemanticTokens,\n\t\t\t\tpreset.semanticTokens as Partial<typeof baseSemanticTokens>,\n\t\t\t)\n\t\t: baseSemanticTokens;\n\n\treturn createSystem(defaultConfig, {\n\t\tglobalCss: {\n\t\t\t\"@keyframes fadeIn\": keyframes.fadeIn,\n\t\t\t\"@keyframes fadeOut\": keyframes.fadeOut,\n\t\t\t\"@keyframes slideUp\": keyframes.slideUp,\n\t\t\t\"@keyframes slideDown\": keyframes.slideDown,\n\t\t\t\"@keyframes scaleIn\": keyframes.scaleIn,\n\t\t\tbody: {\n\t\t\t\tcolor: \"default\",\n\t\t\t\tbg: { base: \"white\", _dark: \"#000\" },\n\t\t\t},\n\t\t\t\"*::placeholder\": {\n\t\t\t\topacity: 1,\n\t\t\t\tcolor: \"muted\",\n\t\t\t},\n\t\t\t\"*, *::before, *::after\": {\n\t\t\t\tborderColor: \"border\",\n\t\t\t},\n\t\t\t\"table, td, th\": {\n\t\t\t\tborderColor: \"border\",\n\t\t\t},\n\t\t\t\"html, body\": {\n\t\t\t\theight: \"100%\",\n\t\t\t},\n\t\t\t\"#__next, #root, #app\": {\n\t\t\t\tdisplay: \"flex\",\n\t\t\t\tflexDirection: \"column\",\n\t\t\t\tminH: \"100%\",\n\t\t\t},\n\t\t\t\"*\": {\n\t\t\t\t_motionReduce: {\n\t\t\t\t\tanimationDuration: \"0.01ms !important\",\n\t\t\t\t\tanimationIterationCount: \"1 !important\",\n\t\t\t\t\ttransitionDuration: \"0.01ms !important\",\n\t\t\t\t\tscrollBehavior: \"auto !important\",\n\t\t\t\t},\n\t\t\t},\n\t\t},\n\n\t\ttheme: {\n\t\t\ttokens: {\n\t\t\t\tcolors,\n\t\t\t\tdurations,\n\t\t\t\teasings,\n\t\t\t\tfonts: {\n\t\t\t\t\theading: { value: fonts.heading },\n\t\t\t\t\tbody: { value: fonts.body },\n\t\t\t\t\tmono: { value: fonts.mono },\n\t\t\t\t},\n\t\t\t\tspacing: Object.fromEntries(\n\t\t\t\t\tObject.entries(space).map(([k, v]) => [k, { value: v }]),\n\t\t\t\t),\n\t\t\t\tradii: Object.fromEntries(\n\t\t\t\t\tObject.entries(radii).map(([k, v]) => [k, { value: v }]),\n\t\t\t\t),\n\t\t\t\tzIndex,\n\t\t\t},\n\n\t\t\ttextStyles,\n\t\t\tsemanticTokens,\n\n\t\t\trecipes: {\n\t\t\t\tbutton,\n\t\t\t\tcontainer,\n\t\t\t\tprose,\n\t\t\t\tseparator,\n\t\t\t\tformLabel,\n\t\t\t\ttextarea,\n\t\t\t\ttooltip,\n\t\t\t\ttsRadioCard,\n\t\t\t\ttag,\n\t\t\t},\n\n\t\t\tslotRecipes: {\n\t\t\t\tcard,\n\t\t\t\ttsProperty,\n\t\t\t\ttreeItem,\n\t\t\t\tcheckbox,\n\t\t\t\tcomment,\n\t\t\t\tdialog,\n\t\t\t\tdrawer,\n\t\t\t\t// Field.Root override: v3 defaults to alignItems: flex-start which\n\t\t\t\t// shrinks children. Restore v2 behavior where children stretch.\n\t\t\t\tfield: defineSlotRecipe({\n\t\t\t\t\tslots: [\"root\"],\n\t\t\t\t\tvariants: {\n\t\t\t\t\t\torientation: {\n\t\t\t\t\t\t\tvertical: {\n\t\t\t\t\t\t\t\troot: {\n\t\t\t\t\t\t\t\t\talignItems: \"stretch\",\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t}),\n\t\t\t\tinput,\n\t\t\t\tmenu,\n\t\t\t\tmodal,\n\t\t\t\tpersona,\n\t\t\t\tpopover,\n\t\t\t\tstepper,\n\t\t\t\ttable,\n\t\t\t\ttabs,\n\t\t\t},\n\t\t},\n\t});\n}\n\n/** Deep-merge two objects (1 level deep for token groups). */\nfunction deepMerge<T extends Record<string, unknown>>(\n\tbase: T,\n\toverride: Partial<T>,\n): T {\n\tconst result = { ...base };\n\tfor (const key of Object.keys(override) as (keyof T)[]) {\n\t\tconst baseVal = base[key];\n\t\tconst overrideVal = override[key];\n\t\tif (\n\t\t\tbaseVal &&\n\t\t\toverrideVal &&\n\t\t\ttypeof baseVal === \"object\" &&\n\t\t\ttypeof overrideVal === \"object\" &&\n\t\t\t!Array.isArray(baseVal)\n\t\t) {\n\t\t\tresult[key] = { ...baseVal, ...overrideVal } as T[keyof T];\n\t\t} else if (overrideVal !== undefined) {\n\t\t\tresult[key] = overrideVal as T[keyof T];\n\t\t}\n\t}\n\treturn result;\n}\n","import type { ThemePreset } from \"./types\";\n\n/**\n * Default preset — applies no overrides.\n * Equivalent to using the base Anker theme as-is.\n */\nexport const defaultPreset: ThemePreset = {\n\tname: \"default\",\n};\n","import { transparentize as setTransparency, toHex } from \"color2k\";\n\ntype Dict = { [key: string]: unknown };\n\n/**\n * Get the color raw value from a theme/token dictionary.\n *\n * Supports both Chakra v3 system token structure (where tokens are wrapped in\n * `{ value: \"...\" }`) and flat color dictionaries (e.g., `{ primary: { 500: \"#2f6fbf\" } }`).\n *\n * @param theme - the theme or token object\n * @param color - the color path (\"green.200\")\n * @param fallback - the fallback color\n */\nexport const getColor = (theme: Dict, color: string, fallback?: string) => {\n\tconst hex = get(theme, `colors.${color}`, color);\n\ttry {\n\t\ttoHex(hex);\n\t\treturn hex;\n\t} catch {\n\t\t// returning black to stay consistent with TinyColor behaviour so as to prevent breaking change\n\t\treturn fallback ?? \"#000000\";\n\t}\n};\n\n/**\n * Make a color transparent\n * @param color - the color in hex, rgb, or hsl\n * @param opacity - the amount of opacity the color should have (0-1)\n */\nexport const transparentize =\n\t(color: string, opacity: number) => (theme: Dict) => {\n\t\tconst raw = getColor(theme, color);\n\t\treturn setTransparency(raw, 1 - opacity);\n\t};\n\n/**\n * Minimal deep-get utility (replaces `dlv` dependency).\n *\n * Unwraps Chakra v3 `{ value: \"...\" }` token wrappers automatically.\n */\nfunction get(obj: unknown, path: string, fallback: unknown): string {\n\tconst keys = path.split(\".\");\n\tlet current: unknown = obj;\n\tfor (const key of keys) {\n\t\tif (current == null || typeof current !== \"object\") return String(fallback);\n\t\tcurrent = (current as Record<string, unknown>)[key];\n\t\t// Unwrap Chakra v3 token wrapper { value: \"...\" }\n\t\tif (\n\t\t\tcurrent != null &&\n\t\t\ttypeof current === \"object\" &&\n\t\t\t\"value\" in (current as Record<string, unknown>)\n\t\t) {\n\t\t\tconst val = (current as Record<string, unknown>).value;\n\t\t\tif (typeof val === \"string\") {\n\t\t\t\tcurrent = val;\n\t\t\t}\n\t\t}\n\t}\n\treturn current != null ? String(current) : String(fallback);\n}\n","import { createAnkerTheme } from \"./create-theme\";\n\nconst system = createAnkerTheme();\n\nexport type CustomTheme = typeof system;\n\nexport default system;\n\nexport { createAnkerTheme } from \"./create-theme\";\nexport type { ThemePreset } from \"./presets\";\nexport { defaultPreset } from \"./presets\";\n// Re-export all tokens and utilities for consumer overrides\nexport {\n\tcolors,\n\tdurations,\n\teasings,\n\tfonts,\n\tkeyframes,\n\tradii,\n\tsemanticTokens,\n\tspace,\n\ttextStyles,\n\tzIndex,\n} from \"./tokens\";\nexport { getColor, transparentize } from \"./utils\";\n"]}