@misael703/ui 1.14.0 → 1.16.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -17,6 +17,15 @@ interface NavSection {
17
17
  items: NavItem[];
18
18
  }
19
19
  type AppShellTheme = 'default' | 'brand';
20
+ type AppShellHeaderLayout = 'side' | 'top';
21
+ interface AppShellHeader {
22
+ /** Left slot — typically a menu/hamburger trigger or back action. */
23
+ left?: React.ReactNode;
24
+ /** Center slot — typically the brand (Logo). Lands at the true viewport centre. */
25
+ center?: React.ReactNode;
26
+ /** Right slot — notifications, user avatar, utilities. */
27
+ right?: React.ReactNode;
28
+ }
20
29
  interface AppShellProps {
21
30
  brand?: React.ReactNode;
22
31
  brandCollapsed?: React.ReactNode;
@@ -37,8 +46,22 @@ interface AppShellProps {
37
46
  theme?: AppShellTheme;
38
47
  /** Render-prop for navigation links so the host app can use Next.js Link, etc. */
39
48
  linkAs?: (item: NavItem, content: React.ReactNode, className: string) => React.ReactNode;
49
+ /**
50
+ * Where the chrome lives. Default `'side'` is the legacy layout. `'top'`
51
+ * renders a full-width header above the body with three slots
52
+ * (`header.left/center/right`); the centre slot lands at the **true
53
+ * viewport centre** (1fr·auto·1fr column grid). The sidebar has no brand
54
+ * block (brand goes in `header.center`) and `collapsed` hides the
55
+ * sidebar entirely — no 72px rail. The topbar is **invariant** to the
56
+ * collapse (only the sidebar changes width). `theme="brand"` tints both
57
+ * header and sidebar with the same brand colour (single knob). `brand`,
58
+ * `brandCollapsed` and `topbar` are ignored when `'top'`.
59
+ */
60
+ headerLayout?: AppShellHeaderLayout;
61
+ /** Slots for the top-layout header (only used when `headerLayout="top"`). */
62
+ header?: AppShellHeader;
40
63
  }
41
- declare function AppShell({ brand, brandCollapsed, sections, topbar, footer, user, defaultCollapsed, collapsed: ctrlCollapsed, onCollapsedChange, children, className, theme, linkAs, }: AppShellProps): react_jsx_runtime.JSX.Element;
64
+ declare function AppShell({ brand, brandCollapsed, sections, topbar, footer, user, defaultCollapsed, collapsed: ctrlCollapsed, onCollapsedChange, children, className, theme, linkAs, headerLayout, header, }: AppShellProps): react_jsx_runtime.JSX.Element;
42
65
  interface PageHeaderProps {
43
66
  title: React.ReactNode;
44
67
  description?: React.ReactNode;
@@ -52,4 +75,4 @@ interface PageHeaderProps {
52
75
  }
53
76
  declare function PageHeader({ title, description, breadcrumbs, actions, meta, className }: PageHeaderProps): react_jsx_runtime.JSX.Element;
54
77
 
55
- export { AppShell, type AppShellProps, type AppShellTheme, type NavItem, type NavSection, PageHeader, type PageHeaderProps };
78
+ export { AppShell, type AppShellHeader, type AppShellHeaderLayout, type AppShellProps, type AppShellTheme, type NavItem, type NavSection, PageHeader, type PageHeaderProps };
@@ -17,6 +17,15 @@ interface NavSection {
17
17
  items: NavItem[];
18
18
  }
19
19
  type AppShellTheme = 'default' | 'brand';
20
+ type AppShellHeaderLayout = 'side' | 'top';
21
+ interface AppShellHeader {
22
+ /** Left slot — typically a menu/hamburger trigger or back action. */
23
+ left?: React.ReactNode;
24
+ /** Center slot — typically the brand (Logo). Lands at the true viewport centre. */
25
+ center?: React.ReactNode;
26
+ /** Right slot — notifications, user avatar, utilities. */
27
+ right?: React.ReactNode;
28
+ }
20
29
  interface AppShellProps {
21
30
  brand?: React.ReactNode;
22
31
  brandCollapsed?: React.ReactNode;
@@ -37,8 +46,22 @@ interface AppShellProps {
37
46
  theme?: AppShellTheme;
38
47
  /** Render-prop for navigation links so the host app can use Next.js Link, etc. */
39
48
  linkAs?: (item: NavItem, content: React.ReactNode, className: string) => React.ReactNode;
49
+ /**
50
+ * Where the chrome lives. Default `'side'` is the legacy layout. `'top'`
51
+ * renders a full-width header above the body with three slots
52
+ * (`header.left/center/right`); the centre slot lands at the **true
53
+ * viewport centre** (1fr·auto·1fr column grid). The sidebar has no brand
54
+ * block (brand goes in `header.center`) and `collapsed` hides the
55
+ * sidebar entirely — no 72px rail. The topbar is **invariant** to the
56
+ * collapse (only the sidebar changes width). `theme="brand"` tints both
57
+ * header and sidebar with the same brand colour (single knob). `brand`,
58
+ * `brandCollapsed` and `topbar` are ignored when `'top'`.
59
+ */
60
+ headerLayout?: AppShellHeaderLayout;
61
+ /** Slots for the top-layout header (only used when `headerLayout="top"`). */
62
+ header?: AppShellHeader;
40
63
  }
41
- declare function AppShell({ brand, brandCollapsed, sections, topbar, footer, user, defaultCollapsed, collapsed: ctrlCollapsed, onCollapsedChange, children, className, theme, linkAs, }: AppShellProps): react_jsx_runtime.JSX.Element;
64
+ declare function AppShell({ brand, brandCollapsed, sections, topbar, footer, user, defaultCollapsed, collapsed: ctrlCollapsed, onCollapsedChange, children, className, theme, linkAs, headerLayout, header, }: AppShellProps): react_jsx_runtime.JSX.Element;
42
65
  interface PageHeaderProps {
43
66
  title: React.ReactNode;
44
67
  description?: React.ReactNode;
@@ -52,4 +75,4 @@ interface PageHeaderProps {
52
75
  }
53
76
  declare function PageHeader({ title, description, breadcrumbs, actions, meta, className }: PageHeaderProps): react_jsx_runtime.JSX.Element;
54
77
 
55
- export { AppShell, type AppShellProps, type AppShellTheme, type NavItem, type NavSection, PageHeader, type PageHeaderProps };
78
+ export { AppShell, type AppShellHeader, type AppShellHeaderLayout, type AppShellProps, type AppShellTheme, type NavItem, type NavSection, PageHeader, type PageHeaderProps };
@@ -1,7 +1,7 @@
1
1
  'use client';
2
2
  'use strict';
3
3
 
4
- var chunkQLYPHMPH_js = require('../chunk-QLYPHMPH.js');
4
+ var chunk7LCZ6ABE_js = require('../chunk-7LCZ6ABE.js');
5
5
  require('../chunk-4VMQLSHV.js');
6
6
  require('../chunk-RQOTH7I7.js');
7
7
  require('../chunk-PASF6T4H.js');
@@ -10,11 +10,11 @@ require('../chunk-PASF6T4H.js');
10
10
 
11
11
  Object.defineProperty(exports, "AppShell", {
12
12
  enumerable: true,
13
- get: function () { return chunkQLYPHMPH_js.AppShell; }
13
+ get: function () { return chunk7LCZ6ABE_js.AppShell; }
14
14
  });
15
15
  Object.defineProperty(exports, "PageHeader", {
16
16
  enumerable: true,
17
- get: function () { return chunkQLYPHMPH_js.PageHeader; }
17
+ get: function () { return chunk7LCZ6ABE_js.PageHeader; }
18
18
  });
19
19
  //# sourceMappingURL=AppShell.js.map
20
20
  //# sourceMappingURL=AppShell.js.map
@@ -1,5 +1,5 @@
1
1
  'use client';
2
- export { AppShell, PageHeader } from '../chunk-HUEO23A2.mjs';
2
+ export { AppShell, PageHeader } from '../chunk-Y6AYAE4O.mjs';
3
3
  import '../chunk-PQV7HHCJ.mjs';
4
4
  import '../chunk-CIBJKJV3.mjs';
5
5
  import '../chunk-IEPCH3JB.mjs';
@@ -19,8 +19,16 @@ interface ComboboxProps<T = string> {
19
19
  invalid?: boolean;
20
20
  disabled?: boolean;
21
21
  id?: string;
22
+ /**
23
+ * Whether the trigger is a typeable text input that filters options.
24
+ * Default `true` (the searchable Combobox). Set `false` for a non-typing
25
+ * picker: button trigger + the same kit-styled listbox, no filter, full
26
+ * list always. Closes the gap between native `<Select>` (jarring native
27
+ * dropdown) and the searchable Combobox — same visual register, no input.
28
+ */
29
+ searchable?: boolean;
22
30
  }
23
- declare function Combobox<T = string>({ value, onChange, options, placeholder, emptyMessage, filter, className, invalid, disabled, id, }: ComboboxProps<T>): react_jsx_runtime.JSX.Element;
31
+ declare function Combobox<T = string>({ value, onChange, options, placeholder, emptyMessage, filter, className, invalid, disabled, id, searchable, }: ComboboxProps<T>): react_jsx_runtime.JSX.Element;
24
32
  interface DatePickerProps {
25
33
  value: Date | null;
26
34
  onChange: (date: Date | null) => void;
@@ -19,8 +19,16 @@ interface ComboboxProps<T = string> {
19
19
  invalid?: boolean;
20
20
  disabled?: boolean;
21
21
  id?: string;
22
+ /**
23
+ * Whether the trigger is a typeable text input that filters options.
24
+ * Default `true` (the searchable Combobox). Set `false` for a non-typing
25
+ * picker: button trigger + the same kit-styled listbox, no filter, full
26
+ * list always. Closes the gap between native `<Select>` (jarring native
27
+ * dropdown) and the searchable Combobox — same visual register, no input.
28
+ */
29
+ searchable?: boolean;
22
30
  }
23
- declare function Combobox<T = string>({ value, onChange, options, placeholder, emptyMessage, filter, className, invalid, disabled, id, }: ComboboxProps<T>): react_jsx_runtime.JSX.Element;
31
+ declare function Combobox<T = string>({ value, onChange, options, placeholder, emptyMessage, filter, className, invalid, disabled, id, searchable, }: ComboboxProps<T>): react_jsx_runtime.JSX.Element;
24
32
  interface DatePickerProps {
25
33
  value: Date | null;
26
34
  onChange: (date: Date | null) => void;
@@ -1,7 +1,7 @@
1
1
  'use client';
2
2
  'use strict';
3
3
 
4
- var chunkCPATAMLH_js = require('../chunk-CPATAMLH.js');
4
+ var chunk62F5E5NQ_js = require('../chunk-62F5E5NQ.js');
5
5
  require('../chunk-HHEYTMBY.js');
6
6
  require('../chunk-XMLBKK7X.js');
7
7
  require('../chunk-7I5LFBQR.js');
@@ -15,23 +15,23 @@ require('../chunk-PASF6T4H.js');
15
15
 
16
16
  Object.defineProperty(exports, "Combobox", {
17
17
  enumerable: true,
18
- get: function () { return chunkCPATAMLH_js.Combobox; }
18
+ get: function () { return chunk62F5E5NQ_js.Combobox; }
19
19
  });
20
20
  Object.defineProperty(exports, "DatePicker", {
21
21
  enumerable: true,
22
- get: function () { return chunkCPATAMLH_js.DatePicker; }
22
+ get: function () { return chunk62F5E5NQ_js.DatePicker; }
23
23
  });
24
24
  Object.defineProperty(exports, "FileUpload", {
25
25
  enumerable: true,
26
- get: function () { return chunkCPATAMLH_js.FileUpload; }
26
+ get: function () { return chunk62F5E5NQ_js.FileUpload; }
27
27
  });
28
28
  Object.defineProperty(exports, "MonthPicker", {
29
29
  enumerable: true,
30
- get: function () { return chunkCPATAMLH_js.MonthPicker; }
30
+ get: function () { return chunk62F5E5NQ_js.MonthPicker; }
31
31
  });
32
32
  Object.defineProperty(exports, "YearPicker", {
33
33
  enumerable: true,
34
- get: function () { return chunkCPATAMLH_js.YearPicker; }
34
+ get: function () { return chunk62F5E5NQ_js.YearPicker; }
35
35
  });
36
36
  //# sourceMappingURL=Pickers.js.map
37
37
  //# sourceMappingURL=Pickers.js.map
@@ -1,5 +1,5 @@
1
1
  'use client';
2
- export { Combobox, DatePicker, FileUpload, MonthPicker, YearPicker } from '../chunk-TS6HCQLX.mjs';
2
+ export { Combobox, DatePicker, FileUpload, MonthPicker, YearPicker } from '../chunk-5MIN6LUP.mjs';
3
3
  import '../chunk-N5D6AC6M.mjs';
4
4
  import '../chunk-6P2TKRTL.mjs';
5
5
  import '../chunk-PRML6VEF.mjs';
package/dist/index.d.mts CHANGED
@@ -15,7 +15,7 @@ export { Accordion, AccordionItem, AccordionProps, BreadcrumbItem, Breadcrumbs,
15
15
  export { CheckboxGroup, CheckboxGroupProps, MoneyInput, MoneyInputProps, OptionItem, PhoneInput, PhoneInputProps, Progress, ProgressCircle, ProgressCircleProps, ProgressProps, RadioGroup, RadioGroupProps, Slider, SliderProps, TagInput, TagInputProps, TimePicker, TimePickerProps } from './components/InputsExtra.mjs';
16
16
  export { Avatar, AvatarGroup, AvatarGroupProps, AvatarProps, Menu, MenuItemProps, MenuProps, Stat, StatProps } from './components/Display2.mjs';
17
17
  export { CommandItem, CommandPalette, CommandPaletteProps, DateRange, DateRangePicker, DateRangePickerProps, MultiCombobox, MultiComboboxOption, MultiComboboxProps, UseCommandPaletteOptions, useCommandPalette } from './components/AdvancedPickers.mjs';
18
- export { AppShell, AppShellProps, AppShellTheme, NavItem, NavSection, PageHeader, PageHeaderProps } from './components/AppShell.mjs';
18
+ export { AppShell, AppShellHeader, AppShellHeaderLayout, AppShellProps, AppShellTheme, NavItem, NavSection, PageHeader, PageHeaderProps } from './components/AppShell.mjs';
19
19
  export { AreaChart, AreaChartProps, BarChart, BarChartProps, BaseChartProps, DonutChart, DonutChartProps, LineChart, LineChartProps, RechartsLike, Sparkline, SparklineProps } from './components/Charts.mjs';
20
20
  export { AlertCircle, AlertTriangle, AlignCenter, AlignLeft, AlignRight, ArrowDown, ArrowLeft, ArrowRight, ArrowUp, Bell, Bold, Building, CalendarIcon, Check, CheckCircle, ChevronDown, ChevronLeft, ChevronRight, ChevronUp, Clock, Copy, CreditCard, Download, Edit, ExternalLink, Eye, EyeOff, FileText, Filter, Folder, Globe, Heart, Home, IconProps, Info, Italic, Link, Loader, Lock, LogOut, Mail, MapPin, MenuIcon, Minus, Moon, MoreHorizontal, MoreVertical, Package, Phone, Plus, RefreshCw, Search, Settings, ShoppingCart, Star, Sun, Tag, Tool, Trash, Truck, Underline, Unlock, Upload, User, Users, Wrench, X } from './components/Icons.mjs';
21
21
  export { Logo, LogoBg, LogoFormat, LogoProps, LogoVariant } from './components/Logo.mjs';
package/dist/index.d.ts CHANGED
@@ -15,7 +15,7 @@ export { Accordion, AccordionItem, AccordionProps, BreadcrumbItem, Breadcrumbs,
15
15
  export { CheckboxGroup, CheckboxGroupProps, MoneyInput, MoneyInputProps, OptionItem, PhoneInput, PhoneInputProps, Progress, ProgressCircle, ProgressCircleProps, ProgressProps, RadioGroup, RadioGroupProps, Slider, SliderProps, TagInput, TagInputProps, TimePicker, TimePickerProps } from './components/InputsExtra.js';
16
16
  export { Avatar, AvatarGroup, AvatarGroupProps, AvatarProps, Menu, MenuItemProps, MenuProps, Stat, StatProps } from './components/Display2.js';
17
17
  export { CommandItem, CommandPalette, CommandPaletteProps, DateRange, DateRangePicker, DateRangePickerProps, MultiCombobox, MultiComboboxOption, MultiComboboxProps, UseCommandPaletteOptions, useCommandPalette } from './components/AdvancedPickers.js';
18
- export { AppShell, AppShellProps, AppShellTheme, NavItem, NavSection, PageHeader, PageHeaderProps } from './components/AppShell.js';
18
+ export { AppShell, AppShellHeader, AppShellHeaderLayout, AppShellProps, AppShellTheme, NavItem, NavSection, PageHeader, PageHeaderProps } from './components/AppShell.js';
19
19
  export { AreaChart, AreaChartProps, BarChart, BarChartProps, BaseChartProps, DonutChart, DonutChartProps, LineChart, LineChartProps, RechartsLike, Sparkline, SparklineProps } from './components/Charts.js';
20
20
  export { AlertCircle, AlertTriangle, AlignCenter, AlignLeft, AlignRight, ArrowDown, ArrowLeft, ArrowRight, ArrowUp, Bell, Bold, Building, CalendarIcon, Check, CheckCircle, ChevronDown, ChevronLeft, ChevronRight, ChevronUp, Clock, Copy, CreditCard, Download, Edit, ExternalLink, Eye, EyeOff, FileText, Filter, Folder, Globe, Heart, Home, IconProps, Info, Italic, Link, Loader, Lock, LogOut, Mail, MapPin, MenuIcon, Minus, Moon, MoreHorizontal, MoreVertical, Package, Phone, Plus, RefreshCw, Search, Settings, ShoppingCart, Star, Sun, Tag, Tool, Trash, Truck, Underline, Unlock, Upload, User, Users, Wrench, X } from './components/Icons.js';
21
21
  export { Logo, LogoBg, LogoFormat, LogoProps, LogoVariant } from './components/Logo.js';
package/dist/index.js CHANGED
@@ -1,11 +1,11 @@
1
1
  'use client';
2
2
  'use strict';
3
3
 
4
- require('./chunk-427NHGTX.js');
5
4
  require('./chunk-4REALDR3.js');
6
5
  require('./chunk-2LTV7VB5.js');
6
+ require('./chunk-427NHGTX.js');
7
7
  var chunkJT2SFHBH_js = require('./chunk-JT2SFHBH.js');
8
- var chunkCPATAMLH_js = require('./chunk-CPATAMLH.js');
8
+ var chunk62F5E5NQ_js = require('./chunk-62F5E5NQ.js');
9
9
  var chunkVDBGWTIG_js = require('./chunk-VDBGWTIG.js');
10
10
  var chunkQHRP73CS_js = require('./chunk-QHRP73CS.js');
11
11
  var chunk55ITZTLL_js = require('./chunk-55ITZTLL.js');
@@ -41,7 +41,7 @@ var chunkXMLBKK7X_js = require('./chunk-XMLBKK7X.js');
41
41
  var chunk7I5LFBQR_js = require('./chunk-7I5LFBQR.js');
42
42
  var chunkWAGWB35Q_js = require('./chunk-WAGWB35Q.js');
43
43
  var chunk3PXYCXDW_js = require('./chunk-3PXYCXDW.js');
44
- var chunkQLYPHMPH_js = require('./chunk-QLYPHMPH.js');
44
+ var chunk7LCZ6ABE_js = require('./chunk-7LCZ6ABE.js');
45
45
  var chunk4VMQLSHV_js = require('./chunk-4VMQLSHV.js');
46
46
  var chunkAJ22SXI2_js = require('./chunk-AJ22SXI2.js');
47
47
  var chunkEUB4PHPI_js = require('./chunk-EUB4PHPI.js');
@@ -59,23 +59,23 @@ Object.defineProperty(exports, "PermissionMatrix", {
59
59
  });
60
60
  Object.defineProperty(exports, "Combobox", {
61
61
  enumerable: true,
62
- get: function () { return chunkCPATAMLH_js.Combobox; }
62
+ get: function () { return chunk62F5E5NQ_js.Combobox; }
63
63
  });
64
64
  Object.defineProperty(exports, "DatePicker", {
65
65
  enumerable: true,
66
- get: function () { return chunkCPATAMLH_js.DatePicker; }
66
+ get: function () { return chunk62F5E5NQ_js.DatePicker; }
67
67
  });
68
68
  Object.defineProperty(exports, "FileUpload", {
69
69
  enumerable: true,
70
- get: function () { return chunkCPATAMLH_js.FileUpload; }
70
+ get: function () { return chunk62F5E5NQ_js.FileUpload; }
71
71
  });
72
72
  Object.defineProperty(exports, "MonthPicker", {
73
73
  enumerable: true,
74
- get: function () { return chunkCPATAMLH_js.MonthPicker; }
74
+ get: function () { return chunk62F5E5NQ_js.MonthPicker; }
75
75
  });
76
76
  Object.defineProperty(exports, "YearPicker", {
77
77
  enumerable: true,
78
- get: function () { return chunkCPATAMLH_js.YearPicker; }
78
+ get: function () { return chunk62F5E5NQ_js.YearPicker; }
79
79
  });
80
80
  Object.defineProperty(exports, "Popover", {
81
81
  enumerable: true,
@@ -635,11 +635,11 @@ Object.defineProperty(exports, "resetBrand", {
635
635
  });
636
636
  Object.defineProperty(exports, "AppShell", {
637
637
  enumerable: true,
638
- get: function () { return chunkQLYPHMPH_js.AppShell; }
638
+ get: function () { return chunk7LCZ6ABE_js.AppShell; }
639
639
  });
640
640
  Object.defineProperty(exports, "PageHeader", {
641
641
  enumerable: true,
642
- get: function () { return chunkQLYPHMPH_js.PageHeader; }
642
+ get: function () { return chunk7LCZ6ABE_js.PageHeader; }
643
643
  });
644
644
  Object.defineProperty(exports, "LocaleProvider", {
645
645
  enumerable: true,
package/dist/index.mjs CHANGED
@@ -1,9 +1,9 @@
1
1
  'use client';
2
- import './chunk-BVQRDAR7.mjs';
3
2
  import './chunk-CHVTPN3K.mjs';
4
3
  import './chunk-XTHC46M2.mjs';
4
+ import './chunk-BVQRDAR7.mjs';
5
5
  export { PermissionMatrix } from './chunk-LVLJ75ND.mjs';
6
- export { Combobox, DatePicker, FileUpload, MonthPicker, YearPicker } from './chunk-TS6HCQLX.mjs';
6
+ export { Combobox, DatePicker, FileUpload, MonthPicker, YearPicker } from './chunk-5MIN6LUP.mjs';
7
7
  export { Popover } from './chunk-FA6526ME.mjs';
8
8
  export { ResizableGroup, ResizableHandle, ResizablePanel } from './chunk-ML5IYW5D.mjs';
9
9
  export { ToastProvider, useToast } from './chunk-CGOUG3W5.mjs';
@@ -39,7 +39,7 @@ export { useDismiss } from './chunk-6P2TKRTL.mjs';
39
39
  export { usePopoverPosition } from './chunk-PRML6VEF.mjs';
40
40
  export { Portal } from './chunk-FKBQYQQD.mjs';
41
41
  export { BRAND_DEFAULTS, configureBrand, getBrand, resetBrand } from './chunk-5GEWIK4T.mjs';
42
- export { AppShell, PageHeader } from './chunk-HUEO23A2.mjs';
42
+ export { AppShell, PageHeader } from './chunk-Y6AYAE4O.mjs';
43
43
  export { LocaleProvider, esMessages, useLocale } from './chunk-PQV7HHCJ.mjs';
44
44
  export { Button, ButtonGroup } from './chunk-NAL457NQ.mjs';
45
45
  export { AspectRatio, ScrollArea, Separator, Slot, Slottable } from './chunk-IEPKSPBX.mjs';
@@ -1 +1 @@
1
- :root{--color-primary-900:#001a4d;--color-primary-800:#00246b;--color-primary-700:#002f87;--color-primary-600:#1a46a0;--color-primary-500:#3a62b4;--color-primary-400:#6b8aca;--color-primary-300:#9bb1dc;--color-primary-200:#c7d3ea;--color-primary-100:#e3eaf4;--color-primary-50:#f2f5fb;--color-secondary-900:#8c3000;--color-secondary-800:#b84300;--color-secondary-700:#e05400;--color-secondary-600:#ff671d;--color-secondary-500:#ff8344;--color-secondary-400:#ffa06e;--color-secondary-300:#ffbe98;--color-secondary-200:#ffd6bb;--color-secondary-100:#ffe8d7;--color-secondary-50:#fff5ee;--color-ink:#0c1220;--color-gray-900:#161c2c;--color-gray-800:#23293a;--color-gray-700:#3a4052;--color-gray-600:#5b6173;--color-gray-500:#7e8495;--color-gray-400:#a6acbb;--color-gray-300:#c9cdd7;--color-gray-200:#e3e6ec;--color-gray-150:#eceef3;--color-gray-100:#f4f5f8;--color-gray-50:#fafbfc;--bg-canvas:var(--color-white);--color-primary:var(--color-primary-700);--color-secondary:var(--color-secondary-600);--fg-on-secondary:var(--color-white);--fg-muted:var(--color-gray-600);--fg-subtle:#686d7c;--btn-primary-bg:var(--color-secondary);--btn-primary-fg:var(--color-white);--btn-primary-bg-hover:var(--color-secondary-500);--btn-secondary-bg:var(--color-primary);--btn-secondary-fg:var(--color-white);--btn-secondary-bg-hover:var(--color-primary-900)}
1
+ :root{--color-primary-900:#001a4d;--color-primary-800:#00246b;--color-primary-700:#002f87;--color-primary-600:#1a46a0;--color-primary-500:#3a62b4;--color-primary-400:#6b8aca;--color-primary-300:#9bb1dc;--color-primary-200:#c7d3ea;--color-primary-100:#e3eaf4;--color-primary-50:#f2f5fb;--color-secondary-900:#8c3000;--color-secondary-800:#b84300;--color-secondary-700:#e05400;--color-secondary-600:#ff671d;--color-secondary-500:#ff8344;--color-secondary-400:#ffa06e;--color-secondary-300:#ffbe98;--color-secondary-200:#ffd6bb;--color-secondary-100:#ffe8d7;--color-secondary-50:#fff5ee;--color-ink:#0c1220;--color-gray-900:#161c2c;--color-gray-800:#23293a;--color-gray-700:#3a4052;--color-gray-600:#5b6173;--color-gray-500:#7e8495;--color-gray-400:#a6acbb;--color-gray-300:#c9cdd7;--color-gray-200:#e3e6ec;--color-gray-150:#eceef3;--color-gray-100:#f4f5f8;--color-gray-50:#fafbfc;--bg-canvas:#eaeef5;--bg-subtle:#f1f4f9;--bg-muted:#e7ebf2;--color-primary:var(--color-primary-700);--color-secondary:var(--color-secondary-600);--fg-on-secondary:var(--color-white);--fg-muted:var(--color-gray-600);--fg-subtle:#666b78;--btn-primary-bg:var(--color-secondary);--btn-primary-fg:var(--color-white);--btn-primary-bg-hover:var(--color-secondary-500);--btn-secondary-bg:var(--color-primary);--btn-secondary-fg:var(--color-white);--btn-secondary-bg-hover:var(--color-primary-900)}