/* GENERATED by build.mjs v0.5.0. Do not edit. Source: src/tokens.mjs */
:root {
  /* tier 1: primitives. Generated from #475cf4 at OKLCH hue 270.838. */
  --p-blue-900: #05082a;
  --p-blue-800: #10184b;
  --p-blue-700: #1d2680;
  --p-blue-600: #303ebb;
  --p-blue-500: #475cf4;
  --p-blue-400: #6c87fc;
  --p-blue-300: #95adfe;
  --p-blue-200: #c0cfff;
  --p-blue-100: #e0e7fe;
  --p-blue-50: #f2f5fe;
  --p-neutral-900: #101116;
  --p-neutral-800: #22242a;
  --p-neutral-700: #35383f;
  --p-neutral-600: #4a4d56;
  --p-neutral-500: #60636d;
  --p-neutral-400: #7d8089;
  --p-neutral-300: #9b9ea6;
  --p-neutral-200: #c1c4cb;
  --p-neutral-100: #dfe1e6;
  --p-neutral-50: #f4f5f8;
  --p-navy: #1d2155;

  /* status: deliberately off the brand hue. These must read as good and bad
     before they read as Partisia. */
  --p-success: #036a49;
  --p-warning: #925400;
  --p-error: #c02718;
  --p-success-on-dark: #34d399;
  --p-warning-on-dark: #f0b357;
  --p-error-on-dark: #ff8b7a;
  --p-info: #1d2680;
  --p-info-on-dark: #95adfe;

  /* tier 2: roles. Consume these, not the ramp. */
  --p-surface-page: #f4f5f8;
  --p-surface-raised: #ffffff;
  --p-surface-accent: #e0e7fe;
  --p-surface-inverse: #1d2155;
  --p-text-primary: #101116;
  --p-text-secondary: #60636d;
  --p-text-on-inverse: #e0e7fe;
  --p-text-link: #303ebb;
  --p-border-subtle: #c1c4cb;
  --p-border-strong: #7d8089;
  --p-action: #475cf4;
  --p-action-on-inverse: #ffffff;
  --p-accent-on-inverse: #95adfe;
  --p-focus: #475cf4;
  --p-focus-on-inverse: #95adfe;
  --p-text-secondary-on-inverse: #c0cfff;
  --p-link-on-inverse: #95adfe;
  --p-border-on-inverse: rgb(224 231 254 / 0.40);
  --p-border-subtle-on-inverse: rgb(224 231 254 / 0.16);
  --p-surface-hover: #dfe1e6;
  --p-surface-pressed: #c1c4cb;
  --p-surface-selected: #e0e7fe;
  --p-surface-success: #dcf8e9;
  --p-surface-warning: #ffeddd;
  --p-surface-error: #feebe8;
  --p-surface-info: #ebf0ff;
  --p-surface-code: #f4f5f8;
  --p-text-disabled: #7d8089;
  --p-text-placeholder: #60636d;
  --p-overlay: rgb(29 33 85 / 0.6);
  --p-divider: #dfe1e6;
  --p-selection: #c0cfff;

  /* mascot: body is the anchor. See src/tokens.mjs before changing any of it. */
  --p-aiko-body: #475cf4;
  --p-aiko-shade: #4053db;
  --p-aiko-hi: #7d8cf6;
  --p-aiko-blush: #e1f4ff;
  --p-aiko-paper: #ffffff;
  --p-aiko-ink: #000000;

  /* type: one family, across everything. */
  --p-font-sans: 'Inter', system-ui, -apple-system, 'Segoe UI', Arial, sans-serif;
  --p-text-h1: clamp(36px, 4vw, 48px);
  --p-text-h2: clamp(30px, 3.4vw, 40px);
  --p-text-h2-md: clamp(26px, 3vw, 34px);
  --p-text-h2-sm: 28px;
  --p-text-h3: 24px;
  --p-text-h4: 20px;
  --p-text-body-lg: 18px;
  --p-text-body-md: 17px;
  --p-text-body: 16px;
  --p-text-small: 15px;
  --p-text-meta: 14px;
  --p-text-mini: 13px;
  --p-tracking-label: 0.055em;
  --p-tracking-label-sm: 0.07em;
  --p-leading-tight: 1.05;
  --p-leading-snug: 1.2;
  --p-leading-normal: 1.45;
  --p-leading-relaxed: 1.6;
  --p-measure-narrow: 45ch;
  --p-measure-body: 62ch;
  --p-measure-wide: 75ch;

  /* layout: every space step is a multiple of 4px, named for its value. */
  --p-space-0: 0px;
  --p-space-4: 4px;
  --p-space-8: 8px;
  --p-space-12: 12px;
  --p-space-16: 16px;
  --p-space-24: 24px;
  --p-space-32: 32px;
  --p-space-40: 40px;
  --p-space-48: 48px;
  --p-space-64: 64px;
  --p-space-80: 80px;
  --p-space-96: 96px;
  --p-space-128: 128px;
  --p-radius-4: 4px;
  --p-radius-8: 8px;
  --p-radius-16: 16px;
  --p-radius-24: 24px;
  --p-radius-full: 999px;
  --p-radius-circle: 50%;
  --p-border-hair: 1px;
  --p-border-thick: 2px;
  --p-border-focus: 3px;

  /* elevation: one light source, tinted with the ground, never pure black. */
  --p-elevation-1: 0 1px 2px rgb(29 33 85 / 0.06);
  --p-elevation-2: 0 2px 6px rgb(29 33 85 / 0.08);
  --p-elevation-3: 0 6px 16px rgb(29 33 85 / 0.10);
  --p-elevation-4: 0 12px 32px rgb(29 33 85 / 0.14);
  --p-elevation-5: 0 24px 64px rgb(29 33 85 / 0.20);

  /* motion: enter decelerating, leave accelerating. */
  --p-duration-instant: 120ms;
  --p-duration-fast: 200ms;
  --p-duration-normal: 320ms;
  --p-duration-slow: 560ms;
  --p-ease-standard: cubic-bezier(0.2, 0, 0, 1);
  --p-ease-enter: cubic-bezier(0, 0, 0, 1);
  --p-ease-exit: cubic-bezier(0.4, 0, 1, 1);

  /* layers: a named ladder, so nobody writes z-index 9999. */
  --p-layer-base: 0;
  --p-layer-raised: 10;
  --p-layer-sticky: 100;
  --p-layer-overlay: 1000;
  --p-layer-modal: 1100;
  --p-layer-toast: 1200;

  /* grid and accessibility contract. Never override the focus ring away. */
  --p-max-width: 1400px;
  --p-gutter: 24px;
  --p-focus-width: 3px;
  --p-focus-offset: 2px;
  --p-min-target: 44px;

  /* chart categories. Separated by hue AND lightness, so they survive dichromacy.
     First is the brand hue. Use them in order. */
  --p-chart-1: #4256e1;
  --p-chart-2: #985900;
  --p-chart-3: #de5091;
  --p-chart-4: #6a0193;
  --p-chart-5: #999004;
  --p-chart-6: #8a0701;
  --p-chart-7: #0097d5;
  --p-chart-8: #005354;
}
