{
  "$description": "Design tokens for the Riso style. Generated from tokens.css by scripts/sync-tokens.mjs; edit tokens.css, not this file.",
  "modes": {
    "default": "light",
    "alternate": "dark"
  },
  "color": {
    "paper": {
      "$type": "color",
      "$value": "#eef0ec",
      "$dark": "#15161b",
      "$description": "cool uncoated off-white: the page. Never cream."
    },
    "paper-2": {
      "$type": "color",
      "$value": "#e2e6e1",
      "$dark": "#1d1f26",
      "$description": "creases, wells, the shadow side of a fold"
    },
    "sheet": {
      "$type": "color",
      "$value": "#f8f9f6",
      "$dark": "#22242c",
      "$description": "brighter stock for tickets, cards and stickers"
    },
    "grain-ink": {
      "$type": "color",
      "$value": "#2a3350",
      "$dark": "#c9cede",
      "$description": "colour of the paper speckle"
    },
    "ink-a": {
      "$type": "color",
      "$value": "#3255a4",
      "$dark": "#5ec8e5",
      "$description": "Medium Blue: the key ink. Display type, line art, solid buttons"
    },
    "ink-b": {
      "$type": "color",
      "$value": "#ff48b0",
      "$description": "Fluorescent Pink: halftones, swipes, ghosts. Never small text"
    },
    "ink-c": {
      "$type": "color",
      "$value": "#ffe800",
      "$description": "Yellow: optional third. Glows, tape, highlights. Never text"
    },
    "blend": {
      "$type": "color",
      "$value": "multiply",
      "$dark": "screen",
      "$description": "how plates combine: multiply on paper, screen on black stock"
    },
    "text": {
      "$type": "color",
      "$value": "#26408c",
      "$dark": "#eef0ec",
      "$description": "body copy, 8.3:1 on paper"
    },
    "text-2": {
      "$type": "color",
      "$value": "#4a5f9c",
      "$dark": "#b8bdcb",
      "$description": "secondary copy, 5.4:1 on paper, 4.9:1 on paper-2"
    },
    "text-b": {
      "$type": "color",
      "$value": "#b5126f",
      "$dark": "#ff8fcf",
      "$description": "small accent text from ink B (eyebrows, dates), 5.6:1"
    },
    "on-ink": {
      "$type": "color",
      "$value": "#eef0ec",
      "$dark": "#15161b",
      "$description": "paper showing through a solid ink: button labels, knockouts"
    },
    "focus": {
      "$type": "color",
      "$value": "#b5126f",
      "$dark": "#ffe800"
    }
  },
  "shadow": {
    "shadow": {
      "$type": "shadow",
      "$value": "0 1px 0 rgba(30, 40, 80, 0.06), 0 14px 26px -18px rgba(30, 40, 80, 0.42)",
      "$dark": "0 1px 0 rgba(0, 0, 0, 0.4), 0 16px 30px -18px rgba(0, 0, 0, 0.8)"
    },
    "shadow-lift": {
      "$type": "shadow",
      "$value": "0 2px 0 rgba(30, 40, 80, 0.05), 0 26px 40px -22px rgba(30, 40, 80, 0.5)",
      "$dark": "0 2px 0 rgba(0, 0, 0, 0.4), 0 28px 44px -20px rgba(0, 0, 0, 0.9)"
    }
  },
  "type": {
    "display": {
      "$type": "fontFamily",
      "$value": "\"Dela Gothic One\", \"Arial Black\", Impact, sans-serif"
    },
    "ui": {
      "$type": "fontFamily",
      "$value": "\"Familjen Grotesk\", \"Helvetica Neue\", Arial, system-ui, sans-serif"
    },
    "mono": {
      "$type": "fontFamily",
      "$value": "\"Courier Prime\", \"Courier New\", ui-monospace, monospace"
    },
    "fs-h1": {
      "$type": "fontFamily",
      "$value": "clamp(42px, 8.3vw, 128px)"
    },
    "fs-h2": {
      "$type": "fontFamily",
      "$value": "clamp(32px, 4.7vw, 66px)"
    },
    "fs-cta": {
      "$type": "fontFamily",
      "$value": "clamp(46px, 9vw, 140px)"
    },
    "fs-h3": {
      "$type": "dimension",
      "$value": "26px"
    },
    "fs-lead": {
      "$type": "fontFamily",
      "$value": "clamp(17px, 1.45vw, 20px)"
    },
    "fs-body": {
      "$type": "dimension",
      "$value": "16.5px"
    },
    "fs-small": {
      "$type": "dimension",
      "$value": "14px"
    },
    "fs-mono": {
      "$type": "dimension",
      "$value": "13px"
    }
  },
  "space": {
    "s-1": {
      "$type": "dimension",
      "$value": "4px"
    },
    "s-2": {
      "$type": "dimension",
      "$value": "8px"
    },
    "s-3": {
      "$type": "dimension",
      "$value": "12px"
    },
    "s-4": {
      "$type": "dimension",
      "$value": "16px"
    },
    "s-5": {
      "$type": "dimension",
      "$value": "24px"
    },
    "s-6": {
      "$type": "dimension",
      "$value": "32px"
    },
    "s-7": {
      "$type": "dimension",
      "$value": "48px"
    },
    "s-8": {
      "$type": "dimension",
      "$value": "64px"
    },
    "s-9": {
      "$type": "dimension",
      "$value": "112px"
    },
    "s-10": {
      "$type": "dimension",
      "$value": "160px"
    },
    "wrap": {
      "$type": "dimension",
      "$value": "1240px"
    },
    "gutter": {
      "$type": "dimension",
      "$value": "24px"
    }
  },
  "radius": {
    "r-0": {
      "$type": "dimension",
      "$value": "0px",
      "$description": "sheets, zine panels"
    },
    "r-xs": {
      "$type": "dimension",
      "$value": "3px",
      "$description": "tags, tape"
    },
    "r-sm": {
      "$type": "dimension",
      "$value": "6px",
      "$description": "tickets"
    },
    "r-md": {
      "$type": "dimension",
      "$value": "12px",
      "$description": "stickers, FAQ cards"
    },
    "r-pill": {
      "$type": "dimension",
      "$value": "999px",
      "$description": "buttons, chips"
    }
  },
  "motion": {
    "ease": {
      "$type": "cubicBezier",
      "$value": "cubic-bezier(0.2, 0.8, 0.2, 1)"
    },
    "spring": {
      "$type": "cubicBezier",
      "$value": "cubic-bezier(0.34, 1.5, 0.55, 1)"
    },
    "d-reg": {
      "$type": "duration",
      "$value": "1.15s",
      "$description": "plates sliding into register"
    },
    "d-breathe": {
      "$type": "duration",
      "$value": "2.6s",
      "$description": "halftone density breathing on hover"
    },
    "d-drum": {
      "$type": "duration",
      "$value": "32s",
      "$description": "the drum stripe's ticker, one full turn"
    },
    "d-peel": {
      "$type": "duration",
      "$value": "0.4s",
      "$description": "stickers peeling, tickets tearing"
    }
  }
}
