/* GENERATED by scripts/emit.mjs from tokens.json. Do not edit.
 * Edit tokens.json and run `npm run emit` in packages/brand. */

:root {
  --pima-space-0: 0px;
  --pima-space-2: 2px;
  --pima-space-4: 4px;
  --pima-space-8: 8px;
  --pima-space-12: 12px;
  --pima-space-16: 16px;
  --pima-space-24: 24px;
  --pima-space-32: 32px;
  --pima-space-48: 48px;
  --pima-space-64: 64px;
  --pima-radius-0: 0px;
  --pima-radius-3: 3px;
  --pima-radius-6: 6px;
  --pima-radius-8: 8px;
  --pima-radius-12: 12px;
  --pima-radius-full: 9999px;
  --pima-card-radius: 8px;
  --pima-font-sans: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', system-ui, sans-serif;
  --pima-font-serif: 'Source Serif 4', 'Iowan Old Style', Palatino, Georgia, serif;
  --pima-font-mono: 'IBM Plex Mono', ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
  --pima-weight-regular: 400;
  --pima-weight-medium: 500;
  --pima-weight-semibold: 600;
  --pima-weight-bold: 700;
  --pima-text-display-size: 48px;
  --pima-text-display-line-height: 1.05;
  --pima-text-display-tracking: -0.02em;
  --pima-text-h1-size: 32px;
  --pima-text-h1-line-height: 1.15;
  --pima-text-h1-tracking: -0.015em;
  --pima-text-h2-size: 24px;
  --pima-text-h2-line-height: 1.25;
  --pima-text-h2-tracking: -0.01em;
  --pima-text-h3-size: 19px;
  --pima-text-h3-line-height: 1.35;
  --pima-text-h3-tracking: -0.005em;
  --pima-text-body-size: 14px;
  --pima-text-body-line-height: 1.55;
  --pima-text-body-tracking: 0;
  --pima-text-body-sm-size: 12px;
  --pima-text-body-sm-line-height: 1.5;
  --pima-text-body-sm-tracking: 0;
  --pima-text-body-read-size: 16px;
  --pima-text-body-read-line-height: 1.6;
  --pima-text-body-read-tracking: 0;
  --pima-text-label-size: 12px;
  --pima-text-label-line-height: 1.4;
  --pima-text-label-tracking: 0.08em;
  --pima-text-caption-size: 11px;
  --pima-text-caption-line-height: 1.35;
  --pima-text-caption-tracking: 0.02em;
  --pima-motion-instant: 80ms;
  --pima-ease-instant: linear;
  --pima-motion-fast: 140ms;
  --pima-ease-fast: cubic-bezier(.2,0,.2,1);
  --pima-motion-base: 220ms;
  --pima-ease-base: cubic-bezier(.2,0,.2,1);
  --pima-motion-slow: 320ms;
  --pima-ease-slow: cubic-bezier(.2,0,0,1);
  --pima-bp-sm: 640px;
  --pima-bp-md: 900px;
  --pima-bp-lg: 1200px;
  --pima-bp-xl: 1600px;
  --pima-seq-0: #0F3332;
  --pima-seq-1: #144D4B;
  --pima-seq-2: #1B6A67;
  --pima-seq-3: #238582;
  --pima-seq-4: #2E9E9A;
  --pima-seq-5: #3CB4B0;
  --pima-seq-6: #5CC1BE;
  --pima-seq-7: #8BD0CD;
  --pima-div-0: #1B6A67;
  --pima-div-1: #2E9E9A;
  --pima-div-2: #5CC1BE;
  --pima-div-3: #8C9A9F;
  --pima-div-4: #E7AD55;
  --pima-div-5: #DA962F;
  --pima-div-6: #B87D23;

  --pima-bg-canvas: #EFF0F1;
  --pima-bg-surface: #F8F9F9;
  --pima-bg-hover: #D7DCDD;
  --pima-bg-overlay: #FFFFFF;
  --pima-text-primary: #090D0E;
  --pima-text-secondary: #353F43;
  --pima-text-muted: #4F5B5F;
  --pima-border-subtle: #D7DCDD;
  --pima-border-strong: #6C7A7F;
  --pima-accent-text: #1B6A67;
  --pima-accent-ui: #238582;
  --pima-accent-solid: #1B6A67;
  --pima-accent-on-solid: #F8F9F9;
  --pima-focus-ring: #238582;
  --pima-state-warn-text: #7B5214;
  --pima-state-warn-ui: #98661B;
  --pima-state-danger-text: #7A281F;
  --pima-state-danger-ui: #993429;
  --pima-state-ok-text: #1B6A67;
  --pima-state-ok-ui: #238582;
  --pima-card-rest-bg: #F8F9F9;
  --pima-card-hover-bg: #FFFFFF;
  --pima-card-rest-border: #D7DCDD;
  --pima-card-hover-border: #C2CBCC;
  --pima-elev-rest: 0 1px 2px rgba(9,13,14,.07);
  --pima-elev-hover: 0 2px 4px rgba(9,13,14,.06), 0 10px 20px -6px rgba(9,13,14,.14);
  --pima-elev-overlay: 0 4px 12px -2px rgba(9,13,14,.10);
  --pima-elev-modal: 0 12px 32px -8px rgba(9,13,14,.16);
  --pima-outcome-best: #144D4B;
  --pima-outcome-better: #1B6A67;
  --pima-outcome-good: #238582;
  --pima-outcome-watch: #98661B;
  --pima-outcome-concern: #7B5214;
  --pima-outcome-bad: #993429;
  --pima-outcome-critical: #7A281F;
  --pima-outcome-none: #4F5B5F;
  --pima-outcome-best-fill: #1B6A67;
  --pima-outcome-better-fill: #238582;
  --pima-outcome-good-fill: #2E9E9A;
  --pima-outcome-watch-fill: #B87D23;
  --pima-outcome-concern-fill: #98661B;
  --pima-outcome-bad-fill: #B74134;
  --pima-outcome-critical-fill: #993429;
  --pima-outcome-none-fill: #6C7A7F;
  --pima-cat-blue: #0072B2;
  --pima-cat-orange: #E69F00;
  --pima-cat-green: #009E73;
  --pima-cat-vermilion: #D55E00;
  --pima-cat-sky: #56B4E9;
  --pima-cat-purple: #CC79A7;
  --pima-star-map-ground: #F1F5F9;
  --pima-star-map-stars: rgba(30,45,78,0.50);
  --pima-star-map-card: #FFFFFF;
  --pima-star-map-bloom: rgba(27,106,103,0.15);
}

@media (prefers-color-scheme: dark) {
  :root {
    --pima-bg-canvas: #090D0E;
    --pima-bg-surface: #182022;
    --pima-bg-hover: #242D30;
    --pima-bg-overlay: #242D30;
    --pima-text-primary: #EFF0F1;
    --pima-text-secondary: #B0BBBF;
    --pima-text-muted: #8C9A9F;
    --pima-border-subtle: #353F43;
    --pima-border-strong: #6C7A7F;
    --pima-accent-text: #8BD0CD;
    --pima-accent-ui: #5CC1BE;
    --pima-accent-solid: #2E9E9A;
    --pima-accent-on-solid: #090D0E;
    --pima-focus-ring: #5CC1BE;
    --pima-state-warn-text: #E7AD55;
    --pima-state-warn-ui: #DA962F;
    --pima-state-danger-text: #E1776B;
    --pima-state-danger-ui: #D15547;
    --pima-state-ok-text: #8BD0CD;
    --pima-state-ok-ui: #5CC1BE;
    --pima-card-rest-bg: #182022;
    --pima-card-hover-bg: #202B2E;
    --pima-card-rest-border: #242D30;
    --pima-card-hover-border: #4A585C;
    --pima-elev-rest: 0 1px 2px rgba(0,0,0,.5);
    --pima-elev-hover: 0 2px 4px rgba(0,0,0,.5), 0 10px 20px -6px rgba(0,0,0,.65);
    --pima-elev-overlay: 0 4px 12px -2px rgba(0,0,0,.5);
    --pima-elev-modal: 0 12px 32px -8px rgba(0,0,0,.6);
    --pima-outcome-best: #8BD0CD;
    --pima-outcome-better: #5CC1BE;
    --pima-outcome-good: #3CB4B0;
    --pima-outcome-watch: #E7AD55;
    --pima-outcome-concern: #DA962F;
    --pima-outcome-bad: #E1776B;
    --pima-outcome-critical: #D15547;
    --pima-outcome-none: #8C9A9F;
    --pima-outcome-best-fill: #8BD0CD;
    --pima-outcome-better-fill: #5CC1BE;
    --pima-outcome-good-fill: #3CB4B0;
    --pima-outcome-watch-fill: #E7AD55;
    --pima-outcome-concern-fill: #DA962F;
    --pima-outcome-bad-fill: #E1776B;
    --pima-outcome-critical-fill: #D15547;
    --pima-outcome-none-fill: #8C9A9F;
    --pima-cat-blue: #0072B2;
    --pima-cat-orange: #E69F00;
    --pima-cat-green: #009E73;
    --pima-cat-vermilion: #D55E00;
    --pima-cat-sky: #56B4E9;
    --pima-cat-purple: #CC79A7;
    --pima-star-map-ground: #090D0E;
    --pima-star-map-stars: rgba(200,212,224,0.55);
    --pima-star-map-card: #353F43;
    --pima-star-map-bloom: rgba(46,158,154,0.1);
  }
}

/* An explicit choice beats the OS in both directions. */
:root[data-theme='dark'] {
  --pima-bg-canvas: #090D0E;
  --pima-bg-surface: #182022;
  --pima-bg-hover: #242D30;
  --pima-bg-overlay: #242D30;
  --pima-text-primary: #EFF0F1;
  --pima-text-secondary: #B0BBBF;
  --pima-text-muted: #8C9A9F;
  --pima-border-subtle: #353F43;
  --pima-border-strong: #6C7A7F;
  --pima-accent-text: #8BD0CD;
  --pima-accent-ui: #5CC1BE;
  --pima-accent-solid: #2E9E9A;
  --pima-accent-on-solid: #090D0E;
  --pima-focus-ring: #5CC1BE;
  --pima-state-warn-text: #E7AD55;
  --pima-state-warn-ui: #DA962F;
  --pima-state-danger-text: #E1776B;
  --pima-state-danger-ui: #D15547;
  --pima-state-ok-text: #8BD0CD;
  --pima-state-ok-ui: #5CC1BE;
  --pima-card-rest-bg: #182022;
  --pima-card-hover-bg: #202B2E;
  --pima-card-rest-border: #242D30;
  --pima-card-hover-border: #4A585C;
  --pima-elev-rest: 0 1px 2px rgba(0,0,0,.5);
  --pima-elev-hover: 0 2px 4px rgba(0,0,0,.5), 0 10px 20px -6px rgba(0,0,0,.65);
  --pima-elev-overlay: 0 4px 12px -2px rgba(0,0,0,.5);
  --pima-elev-modal: 0 12px 32px -8px rgba(0,0,0,.6);
  --pima-outcome-best: #8BD0CD;
  --pima-outcome-better: #5CC1BE;
  --pima-outcome-good: #3CB4B0;
  --pima-outcome-watch: #E7AD55;
  --pima-outcome-concern: #DA962F;
  --pima-outcome-bad: #E1776B;
  --pima-outcome-critical: #D15547;
  --pima-outcome-none: #8C9A9F;
  --pima-outcome-best-fill: #8BD0CD;
  --pima-outcome-better-fill: #5CC1BE;
  --pima-outcome-good-fill: #3CB4B0;
  --pima-outcome-watch-fill: #E7AD55;
  --pima-outcome-concern-fill: #DA962F;
  --pima-outcome-bad-fill: #E1776B;
  --pima-outcome-critical-fill: #D15547;
  --pima-outcome-none-fill: #8C9A9F;
  --pima-cat-blue: #0072B2;
  --pima-cat-orange: #E69F00;
  --pima-cat-green: #009E73;
  --pima-cat-vermilion: #D55E00;
  --pima-cat-sky: #56B4E9;
  --pima-cat-purple: #CC79A7;
  --pima-star-map-ground: #090D0E;
  --pima-star-map-stars: rgba(200,212,224,0.55);
  --pima-star-map-card: #353F43;
  --pima-star-map-bloom: rgba(46,158,154,0.1);
}

:root[data-theme='light'] {
  --pima-bg-canvas: #EFF0F1;
  --pima-bg-surface: #F8F9F9;
  --pima-bg-hover: #D7DCDD;
  --pima-bg-overlay: #FFFFFF;
  --pima-text-primary: #090D0E;
  --pima-text-secondary: #353F43;
  --pima-text-muted: #4F5B5F;
  --pima-border-subtle: #D7DCDD;
  --pima-border-strong: #6C7A7F;
  --pima-accent-text: #1B6A67;
  --pima-accent-ui: #238582;
  --pima-accent-solid: #1B6A67;
  --pima-accent-on-solid: #F8F9F9;
  --pima-focus-ring: #238582;
  --pima-state-warn-text: #7B5214;
  --pima-state-warn-ui: #98661B;
  --pima-state-danger-text: #7A281F;
  --pima-state-danger-ui: #993429;
  --pima-state-ok-text: #1B6A67;
  --pima-state-ok-ui: #238582;
  --pima-card-rest-bg: #F8F9F9;
  --pima-card-hover-bg: #FFFFFF;
  --pima-card-rest-border: #D7DCDD;
  --pima-card-hover-border: #C2CBCC;
  --pima-elev-rest: 0 1px 2px rgba(9,13,14,.07);
  --pima-elev-hover: 0 2px 4px rgba(9,13,14,.06), 0 10px 20px -6px rgba(9,13,14,.14);
  --pima-elev-overlay: 0 4px 12px -2px rgba(9,13,14,.10);
  --pima-elev-modal: 0 12px 32px -8px rgba(9,13,14,.16);
  --pima-outcome-best: #144D4B;
  --pima-outcome-better: #1B6A67;
  --pima-outcome-good: #238582;
  --pima-outcome-watch: #98661B;
  --pima-outcome-concern: #7B5214;
  --pima-outcome-bad: #993429;
  --pima-outcome-critical: #7A281F;
  --pima-outcome-none: #4F5B5F;
  --pima-outcome-best-fill: #1B6A67;
  --pima-outcome-better-fill: #238582;
  --pima-outcome-good-fill: #2E9E9A;
  --pima-outcome-watch-fill: #B87D23;
  --pima-outcome-concern-fill: #98661B;
  --pima-outcome-bad-fill: #B74134;
  --pima-outcome-critical-fill: #993429;
  --pima-outcome-none-fill: #6C7A7F;
  --pima-cat-blue: #0072B2;
  --pima-cat-orange: #E69F00;
  --pima-cat-green: #009E73;
  --pima-cat-vermilion: #D55E00;
  --pima-cat-sky: #56B4E9;
  --pima-cat-purple: #CC79A7;
  --pima-star-map-ground: #F1F5F9;
  --pima-star-map-stars: rgba(30,45,78,0.50);
  --pima-star-map-card: #FFFFFF;
  --pima-star-map-bloom: rgba(27,106,103,0.15);
}

/* Density is a property of a REGION, not a component — so it is an attribute
   that cascades, never a prop threaded through every call site. */
[data-density='comfortable'] {
  --pima-card-padding: 24px;
  --pima-row-height: 40px;
  --pima-control-height: 36px;
  --pima-stack-gap: 16px;
  --pima-density-font-size: 14px;
}

[data-density='compact'] {
  --pima-card-padding: 16px;
  --pima-row-height: 32px;
  --pima-control-height: 28px;
  --pima-stack-gap: 12px;
  --pima-density-font-size: 12px;
}

/* Non-negotiable, and it lives here rather than in each component so it cannot
   be forgotten by one of them. Zero, not "reduced". */
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after {
    animation-duration: 0ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0ms !important;
    scroll-behavior: auto !important;
  }
}
