/* ----------------------------------------------------------------------------
   PuraTrust · design tokens
   v1.0 · 2026-04-26
   Source of truth: brand/brand_kit.pdf · 03-Color, 04-Type, 05-Motifs

   Rule of thumb: navy is the ink, mint is the attestation.
   Mint must only appear when something is verified, focused, or
   in the lattice motif. Never as decoration or hover.
---------------------------------------------------------------------------- */

:root {
  /* Navy — text · surfaces · primary --------------------------------------- */
  --pt-navy-050: #F3F6FA;
  --pt-navy-100: #E4EAF1;
  --pt-navy-200: #C6D2E0;
  --pt-navy-300: #95ACC6;
  --pt-navy-400: #5A7AA8;
  --pt-navy-500: #2F578F;
  --pt-navy-600: #1E3E70;
  --pt-navy-700: #112B52;
  --pt-navy-800: #0A1F3D;
  --pt-navy-900: #060F22;

  /* Mint — verified · focus · attestation only ---------------------------- */
  --pt-mint-100: #EAFBF7;
  --pt-mint-200: #D0F6EF;
  --pt-mint-300: #A2EFE2;
  --pt-mint-400: #66E5D3;
  --pt-mint-500: #3DDBC6;
  --pt-mint-600: #18B89D;
  --pt-mint-700: #0E9982;

  /* Status — pending · flagged · paper ------------------------------------ */
  --pt-amber: #F4B740;
  --pt-coral: #E0574C;
  --pt-paper: #F6F3EC;

  /* Surfaces -------------------------------------------------------------- */
  --pt-bg:           var(--pt-navy-900);
  --pt-bg-elevated:  var(--pt-navy-800);
  --pt-surface:      var(--pt-navy-700);
  --pt-ink:          var(--pt-navy-050);
  --pt-ink-muted:    var(--pt-navy-300);
  --pt-ink-quiet:    var(--pt-navy-400);
  --pt-rule:         rgba(149, 172, 198, 0.18);
  --pt-rule-strong:  rgba(149, 172, 198, 0.32);

  /* Type stacks ----------------------------------------------------------- */
  --pt-font-sans: 'Inter', 'Inter Variable', -apple-system, BlinkMacSystemFont,
                  'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif;
  --pt-font-serif: 'PT Serif', 'Iowan Old Style', 'Apple Garamond', Georgia, serif;
  --pt-font-mono: 'JetBrains Mono', ui-monospace, SFMono-Regular, Menlo,
                  Monaco, Consolas, 'Liberation Mono', monospace;

  /* Modular scale 1.25 ---------------------------------------------------- */
  --pt-step--2: 0.64rem;     /* 10.24 */
  --pt-step--1: 0.8rem;      /* 12.8 */
  --pt-step-0:  1rem;        /* 16 */
  --pt-step-1:  1.25rem;     /* 20 */
  --pt-step-2:  1.5625rem;   /* 25 */
  --pt-step-3:  1.953rem;    /* 31.25 */
  --pt-step-4:  2.441rem;    /* 39.06 */
  --pt-step-5:  3.052rem;    /* 48.83 */
  --pt-step-6:  3.815rem;    /* 61.04 */
  --pt-step-7:  4.768rem;    /* 76.29 */

  /* Spacing — multiples of 4px -------------------------------------------- */
  --pt-1:  4px;
  --pt-2:  8px;
  --pt-3:  12px;
  --pt-4:  16px;
  --pt-5:  20px;
  --pt-6:  24px;
  --pt-8:  32px;
  --pt-10: 40px;
  --pt-12: 48px;
  --pt-16: 64px;
  --pt-20: 80px;
  --pt-24: 96px;
  --pt-32: 128px;

  /* Radii ----------------------------------------------------------------- */
  --pt-radius-sm: 4px;
  --pt-radius:    8px;
  --pt-radius-md: 12px;
  --pt-radius-lg: 16px;
  --pt-radius-xl: 22px;
  --pt-radius-pill: 999px;

  /* Layout ---------------------------------------------------------------- */
  --pt-content: 1120px;
  --pt-narrow: 720px;

  /* Motion ---------------------------------------------------------------- */
  --pt-ease-standard: cubic-bezier(0.2, 0.8, 0.2, 1);
  --pt-ease-emphasized: cubic-bezier(0.16, 1, 0.3, 1);

  /* Eyebrows — ALL CAPS · 0.14em ------------------------------------------ */
  --pt-eyebrow-tracking: 0.14em;

  /* Focus ring — mint, the only place mint appears on inputs ------------- */
  --pt-focus: 0 0 0 2px var(--pt-bg), 0 0 0 4px var(--pt-mint-500);
}

@media (prefers-reduced-motion: reduce) {
  :root {
    --pt-ease-standard: linear;
    --pt-ease-emphasized: linear;
  }
}
