/* Numensia v1.0 — proposed implementation defaults. Use SVG for the wordmark.
   Supply licensed Inter separately; no font files are bundled. */
:root, [data-theme="light"] {
  --n-canvas: #F6F5F3;
  --n-surface: #FFFFFF;
  --n-surface-subtle: #EAE8E4;
  --n-text: #1E1E1E;
  --n-text-secondary: #5C6165;
  --n-border-decorative: #C9CCD1;
  --n-border-control: #7A8085;
  --n-action: #1E1E1E;
  --n-on-action: #F6F5F3;
  --n-action-hover: #353535;
  --n-focus: #006575;
  --n-link: #006575;
  --n-success: #246948;
  --n-warning: #865900;
  --n-danger: #B23838;
}
[data-theme="dark"] {
  --n-canvas: #121619;
  --n-surface: #1C2328;
  --n-surface-subtle: #273138;
  --n-text: #F6F5F3;
  --n-text-secondary: #B5BDC3;
  --n-border-decorative: #39454D;
  --n-border-control: #75818A;
  --n-action: #F6F5F3;
  --n-on-action: #121619;
  --n-action-hover: #E2E0DD;
  --n-focus: #7DEBFF;
  --n-link: #7DEBFF;
  --n-success: #A2D8BB;
  --n-warning: #EACB82;
  --n-danger: #F2AAAA;
}
:root {
  --n-space-0: 0px;
  --n-space-4: 4px;
  --n-space-8: 8px;
  --n-space-12: 12px;
  --n-space-16: 16px;
  --n-space-24: 24px;
  --n-space-32: 32px;
  --n-space-48: 48px;
  --n-space-64: 64px;
  --n-space-96: 96px;
  --n-radius-control: 8px;
  --n-radius-card: 12px;
  --n-radius-feature: 20px;
  --n-radius-pill: 999px;
  --n-family: Inter, system-ui, -apple-system, BlinkMacSystemFont, Segoe UI, sans-serif;
  --n-family-display: Inter Display, Inter, system-ui, sans-serif;
  --n-family-mono: ui-monospace, SFMono-Regular, Consolas, monospace;
  --n-accent-brand: #7DEBFF;
  --n-duration-press: 120ms;
  --n-duration-state: 180ms;
  --n-duration-surface: 240ms;
  --n-duration-editorial: 360ms;
  --n-ease: cubic-bezier(0.2, 0, 0, 1);
}
@media (prefers-reduced-motion: reduce) {
  :root { --n-duration-press: 0ms; --n-duration-state: 0ms; --n-duration-surface: 0ms; --n-duration-editorial: 0ms; }
}

/* Resolved dimensional and typography tokens; font sizes are for 2D only. */
:root {
  --n-layout-content-max: 1280px;
  --n-layout-reading-max-ch: 68ch;
  --n-layout-columns-desktop: 12;
  --n-layout-columns-tablet: 8;
  --n-layout-columns-mobile: 4;
  --n-layout-gutter-desktop: 24px;
  --n-layout-gutter-mobile: 16px;
  --n-layout-margin-desktop: 48px;
  --n-layout-margin-mobile: 24px;
  --n-layout-breakpoint-tablet: 768px;
  --n-layout-breakpoint-desktop: 1200px;
  --n-layout-margin-tablet: 32px;
  --n-layout-margin-mobile-tight: 16px;
  --n-control-height-default: 48px;
  --n-control-height-compact-pointer: 40px;
  --n-control-target-touch: 48px;
  --n-control-icon-size: 20px;
  --n-control-icon-stroke: 1.5px;
  --n-control-focus-width: 2px;
  --n-control-focus-offset: 3px;
  --n-type-display-size: 64px;
  --n-type-display-line: 72px;
  --n-type-display-weight: 300;
  --n-type-display-tracking: -0.025em;
  --n-type-h1-size: 48px;
  --n-type-h1-line: 56px;
  --n-type-h1-weight: 400;
  --n-type-h1-tracking: -0.025em;
  --n-type-h2-size: 32px;
  --n-type-h2-line: 40px;
  --n-type-h2-weight: 400;
  --n-type-h2-tracking: -0.015em;
  --n-type-h3-size: 24px;
  --n-type-h3-line: 32px;
  --n-type-h3-weight: 500;
  --n-type-h3-tracking: -0.01em;
  --n-type-body-size: 16px;
  --n-type-body-line: 24px;
  --n-type-body-weight: 400;
  --n-type-body-tracking: 0em;
  --n-type-label-size: 14px;
  --n-type-label-line: 20px;
  --n-type-label-weight: 500;
  --n-type-label-tracking: 0em;
  --n-type-caption-size: 12px;
  --n-type-caption-line: 16px;
  --n-type-caption-weight: 400;
  --n-type-caption-tracking: 0em;
  --n-type-eyebrow-size: 12px;
  --n-type-eyebrow-line: 16px;
  --n-type-eyebrow-weight: 500;
  --n-type-eyebrow-tracking: 0.12em;
  --n-type-display-mobile-size: 36px;
  --n-type-display-mobile-line: 44px;
  --n-type-display-mobile-weight: 400;
  --n-type-display-mobile-tracking: -0.02em;
}
