/* Nuitée Product UI — generated from tokens.json */
:root, [data-theme="connect-light"] {
  --canvas: #ffffff;
  --chrome: #f8f6f5;
  --surface: #ffffff;
  --overlay: #ffffff;
  --panel: #efedea;
  --panel-2: #e7e4e0;
  --hover: rgba(35,31,35,0.04);
  --scrim: rgba(26,23,26,0.32);
  --ink: #231f23;
  --ink-2: #48434a;
  --muted: #7a747d;
  --faint: #a8a3aa;
  --line: rgba(35,31,35,0.09);
  --line-2: rgba(35,31,35,0.16);
  --control-edge: #7a747d;
  --on-ink: #ffffff;
  --connect: #4d42c0;
  --connect-2: #8e69bf;
  --connect-tint: #ddd6fd;
  --connect-wash: #f1eefe;
  --cloud: #25747c;
  --cloud-2: #3f8f95;
  --cloud-tint: #bbd8d8;
  --cloud-wash: #e8f2f1;
  --accent: var(--connect);
  --accent-tint: var(--connect-tint);
  --accent-wash: var(--connect-wash);
  --on-accent: #ffffff;
  --focus: var(--connect);
  --link: var(--accent);
  --success: #237a2c;
  --success-bg: #e3f7e4;
  --success-mark: #3fae4a;
  --warning: #8a6a17;
  --warning-bg: #fbf1d9;
  --warning-mark: #b8902d;
  --danger: #b53e3c;
  --danger-bg: #fde9e8;
  --danger-mark: #d65553;
  --on-danger: #ffffff;
  --dark: #231f23;
  --dark-2: #1a171a;
  --on-dark: #f7f6f5;
  --on-dark-muted: #a8a3aa;
  --chart-1: var(--accent);
  --chart-2: var(--connect-2);
  --chart-3: var(--connect-tint);
  --chart-neutral: var(--faint);
  --chart-grid: var(--line);
  --shadow-s: 0 1px 2px rgba(35,31,35,0.06);
  --shadow-m: 0 8px 24px -8px rgba(19,7,64,0.22), 0 0 0 1px rgba(35,31,35,0.06);
  --shadow-l: 0 30px 60px -28px rgba(19,7,64,0.45);
}
[data-theme="connect-dark"] {
  --canvas: #231f23;
  --chrome: #1a171a;
  --surface: #231f23;
  --overlay: #322d32;
  --panel: #322d32;
  --panel-2: #3d373d;
  --hover: rgba(247,246,245,0.05);
  --scrim: rgba(0,0,0,0.5);
  --ink: #f7f6f5;
  --ink-2: #d6d2d7;
  --muted: #a8a3aa;
  --faint: #6e686f;
  --line: rgba(247,246,245,0.09);
  --line-2: rgba(247,246,245,0.18);
  --control-edge: #a8a3aa;
  --on-ink: #231f23;
  --connect: #b5a5ff;
  --connect-2: #8e69bf;
  --connect-tint: rgba(181,165,255,0.32);
  --connect-wash: rgba(181,165,255,0.14);
  --cloud: #6da6a6;
  --cloud-2: #3f8f95;
  --cloud-tint: rgba(109,166,166,0.34);
  --cloud-wash: rgba(109,166,166,0.16);
  --accent: var(--connect);
  --accent-tint: var(--connect-tint);
  --accent-wash: var(--connect-wash);
  --on-accent: #231f23;
  --focus: var(--connect);
  --link: var(--accent);
  --success: #5cc466;
  --success-bg: rgba(63,174,74,0.16);
  --warning: #d9b04f;
  --warning-bg: rgba(184,144,45,0.18);
  --danger: #ed7472;
  --danger-bg: rgba(214,85,83,0.18);
  --on-danger: #231f23;
  --chart-1: var(--accent);
  --chart-2: var(--connect-2);
  --chart-3: var(--connect-tint);
  --chart-neutral: var(--faint);
  --chart-grid: var(--line);
  --shadow-s: 0 1px 2px rgba(0,0,0,0.4);
  --shadow-m: 0 8px 24px -8px rgba(0,0,0,0.6), 0 0 0 1px rgba(247,246,245,0.08);
  --shadow-l: 0 30px 60px -28px rgba(0,0,0,0.7);
}
[data-theme="cloud-light"] {
  --canvas: #ffffff;
  --chrome: #f8f6f5;
  --surface: #ffffff;
  --overlay: #ffffff;
  --panel: #efedea;
  --panel-2: #e7e4e0;
  --hover: rgba(35,31,35,0.04);
  --scrim: rgba(26,23,26,0.32);
  --ink: #231f23;
  --ink-2: #48434a;
  --muted: #7a747d;
  --faint: #a8a3aa;
  --line: rgba(35,31,35,0.09);
  --line-2: rgba(35,31,35,0.16);
  --control-edge: #7a747d;
  --on-ink: #ffffff;
  --connect: #4d42c0;
  --connect-2: #8e69bf;
  --connect-tint: #ddd6fd;
  --connect-wash: #f1eefe;
  --cloud: #25747c;
  --cloud-2: #3f8f95;
  --cloud-tint: #bbd8d8;
  --cloud-wash: #e8f2f1;
  --accent: var(--cloud);
  --accent-tint: var(--cloud-tint);
  --accent-wash: var(--cloud-wash);
  --on-accent: #ffffff;
  --focus: var(--cloud);
  --link: var(--accent);
  --success: #237a2c;
  --success-bg: #e3f7e4;
  --warning: #8a6a17;
  --warning-bg: #fbf1d9;
  --danger: #b53e3c;
  --danger-bg: #fde9e8;
  --on-danger: #ffffff;
  --chart-1: var(--accent);
  --chart-2: var(--cloud-2);
  --chart-3: var(--cloud-tint);
  --chart-neutral: var(--faint);
  --chart-grid: var(--line);
  --shadow-s: 0 1px 2px rgba(35,31,35,0.06);
  --shadow-m: 0 8px 24px -8px rgba(19,7,64,0.22), 0 0 0 1px rgba(35,31,35,0.06);
  --shadow-l: 0 30px 60px -28px rgba(19,7,64,0.45);
}
[data-theme="cloud-dark"] {
  --canvas: #231f23;
  --chrome: #1a171a;
  --surface: #231f23;
  --overlay: #322d32;
  --panel: #322d32;
  --panel-2: #3d373d;
  --hover: rgba(247,246,245,0.05);
  --scrim: rgba(0,0,0,0.5);
  --ink: #f7f6f5;
  --ink-2: #d6d2d7;
  --muted: #a8a3aa;
  --faint: #6e686f;
  --line: rgba(247,246,245,0.09);
  --line-2: rgba(247,246,245,0.18);
  --control-edge: #a8a3aa;
  --on-ink: #231f23;
  --connect: #b5a5ff;
  --connect-2: #8e69bf;
  --connect-tint: rgba(181,165,255,0.32);
  --connect-wash: rgba(181,165,255,0.14);
  --cloud: #6da6a6;
  --cloud-2: #3f8f95;
  --cloud-tint: rgba(109,166,166,0.34);
  --cloud-wash: rgba(109,166,166,0.16);
  --accent: var(--cloud);
  --accent-tint: var(--cloud-tint);
  --accent-wash: var(--cloud-wash);
  --on-accent: #231f23;
  --focus: var(--cloud);
  --link: var(--accent);
  --success: #5cc466;
  --success-bg: rgba(63,174,74,0.16);
  --warning: #d9b04f;
  --warning-bg: rgba(184,144,45,0.18);
  --danger: #ed7472;
  --danger-bg: rgba(214,85,83,0.18);
  --on-danger: #231f23;
  --chart-1: var(--accent);
  --chart-2: var(--cloud-2);
  --chart-3: var(--cloud-tint);
  --chart-neutral: var(--faint);
  --chart-grid: var(--line);
  --shadow-s: 0 1px 2px rgba(0,0,0,0.4);
  --shadow-m: 0 8px 24px -8px rgba(0,0,0,0.6), 0 0 0 1px rgba(247,246,245,0.08);
  --shadow-l: 0 30px 60px -28px rgba(0,0,0,0.7);
}
:root {
  --space-1: 4px;
  --space-2: 8px;
  --space-3: 12px;
  --space-4: 16px;
  --space-5: 20px;
  --space-6: 24px;
  --space-8: 32px;
  --space-10: 40px;
  --radius-xs: 4px;
  --radius-sm: 6px;
  --radius-md: 8px;
  --radius-lg: 12px;
  --radius-pill: 999px;
  --sidebar-width: 248px;
  --topbar-height: 56px;
  --control-sm: 28px;
  --control-md: 36px;
  --control-lg: 40px;
  --row-height: 52px;
  --row-height-compact: 40px;
  --drawer-width: 440px;
  --font-display: "Geist", "Stack Sans Text", system-ui, sans-serif;
  --font-body: "Stack Sans Text", "Geist", system-ui, sans-serif;
  --font-mono: "Fragment Mono", ui-monospace, "SF Mono", Menlo, monospace;
}
.t-page-title { font-family: var(--font-display); font-size: 28px; line-height: 34px; font-weight: 500; letter-spacing: -0.03em; }
.t-section { font-family: var(--font-display); font-size: 20px; line-height: 28px; font-weight: 500; letter-spacing: -0.02em; }
.t-subheading { font-family: var(--font-display); font-size: 16px; line-height: 24px; font-weight: 500; letter-spacing: -0.01em; }
.t-kpi { font-family: var(--font-display); font-size: 28px; line-height: 32px; font-weight: 500; letter-spacing: -0.03em; }
.t-body { font-family: var(--font-body); font-size: 14px; line-height: 20px; font-weight: 400; }
.t-body-strong { font-family: var(--font-body); font-size: 14px; line-height: 20px; font-weight: 500; }
.t-table { font-family: var(--font-body); font-size: 13px; line-height: 18px; font-weight: 400; }
.t-label { font-family: var(--font-body); font-size: 12px; line-height: 16px; font-weight: 500; }
.t-meta { font-family: var(--font-body); font-size: 12px; line-height: 16px; font-weight: 400; }
.t-eyebrow { font-family: var(--font-mono); font-size: 11px; line-height: 12px; font-weight: 400; letter-spacing: 0.08em; }
.t-tag { font-family: var(--font-mono); font-size: 10.5px; line-height: 14px; font-weight: 400; letter-spacing: 0.06em; }
.t-code { font-family: var(--font-mono); font-size: 12.5px; line-height: 20px; font-weight: 400; }
