{
  "id": "atlassian-design",
  "name": "Atlassian Design System",
  "version": "1.0",
  "tagline": "Bold, optimistic, team-first.",
  "description": "Atlassian's open Design System (ADS): bold blue primary, full neutral and accent ramps (100-1000), Atlassian Sans + Mono in product, Charlie Sans in marketing. 8px spacing base, semantic color roles (brand, success, warning, danger, discovery, information).",
  "inspired_by": { "name": "Atlassian Design System", "url": "https://atlassian.design" },
  "vibe_tags": ["bold", "optimistic", "team-first", "enterprise", "blue", "structured"],
  "domain_hint": "productivity / enterprise / teamwork",

  "identity": {
    "logomark": { "shape": "atlassian-a", "description": "Atlassian 'A' mark — two stylized peaks forming an A" },
    "wordmark": { "text": "Atlassian", "font": "Charlie Sans" }
  },

  "voice": {
    "principles": ["Bold, optimistic, team-first", "AI-forward — humans-plus-AI partnership", "Confident verbs (unleash, ship, deliver)"],
    "sample_headlines": [
      "Unleash your teams and their agents.",
      "Better teamwork by design.",
      "Transform how your teams work.",
      "Deliver high quality software. Fast.",
      "Built for how real teams work."
    ],
    "sample_lead": "Everyone. Working on the right things. In Jira, teams and AI agents plan, execute, and deliver outcomes together.",
    "sample_metrics": [["Unstoppable teams", "350K+", null], ["Wasted engineering time redirected", "85%", null], ["Acceleration in reporting", "40x", null], ["Hours saved per week", "100+", null]],
    "sample_code_lang": "css-tokens",
    "sample_code": "color.background.brand.bold\nspace.200\nelevation.surface.raised\nradius.medium"
  },

  "design_principles": [
    "Bold blue primary; semantic roles do the rest.",
    "8px spacing base with .025/.050/.075 sub-steps.",
    "Elevation = surface + shadow pairing (raised, overlay, overflow).",
    "Yellow needs warning.inverse for AA contrast on bold yellow."
  ],

  "color": {
    "primary": {
      "name": "atlassian-blue",
      "hex_legacy":   "#0052CC",
      "hex_refreshed":"#0C66E4",
      "default": "#0C66E4",
      "notes": "Legacy Blue 700 = #0052CC. Refreshed tokenized system (color-new) maps to ~Blue 500 = #0C66E4."
    },
    "scale_structure": {
      "saturated_steps": [100, 200, 250, 300, 400, 500, 600, 700, 800, 850, 900, 1000],
      "neutral_steps":   [0, 100, 200, 300, 400, 500, 600, 700, 800, 900, 1000, 1100],
      "neutral_alpha":   ["100A", "200A", "300A", "400A", "500A"],
      "saturated_palettes": ["Blue", "Teal", "Green", "Lime", "Yellow", "Orange", "Red", "Magenta", "Purple"]
    },
    "neutrals": {
      "surface_white":  "#FFFFFF",
      "sunken":         "#F7F8F9",
      "border":         "#091E4224",
      "text_subtle":    "#44546F",
      "text":           "#172B4D"
    },
    "semantic_roles": {
      "brand":       "Blue (bold action)",
      "information": "Blue (info)",
      "success":     "Green",
      "warning":     "Yellow (note: needs warning.inverse for bold-yellow + white)",
      "danger":      "Red",
      "discovery":   "Purple"
    },
    "memorial_colors": { "alexandria": "Red 300", "rosie": "Magenta 300" },
    "page_bg_token": "elevation.surface (#FFFFFF light)",
    "card_bg_token": "elevation.surface.raised (#FFFFFF + shadow.raised)",
    "modes": ["light", "dark"],
    "notes": "Full parallel DarkNeutral ramp exists. Saturated ramps mirror across modes (B700 light ↔ B400 dark; B100 light ↔ B1000 dark). Per-step hex codes for the saturated/neutral ramps are JS-rendered on the palette page — pull from Atlaskit tokens for production."
  },

  "typography": {
    "fonts": {
      "sans":  { "family": "Atlassian Sans", "fallback": "-apple-system, BlinkMacSystemFont, \"Segoe UI\", sans-serif", "license": "custom", "context": "in-app product UI" },
      "mono":  { "family": "Atlassian Mono", "fallback": "ui-monospace, monospace", "license": "custom" },
      "brand": { "family": "Charlie Sans", "context": "brand and marketing only", "license": "gated download" }
    },
    "scale": {
      "heading_xxlarge": { "size_px": 32, "line_px": 36, "weight": 700 },
      "heading_xlarge":  { "size_px": 28, "line_px": 32, "weight": 700 },
      "heading_large":   { "size_px": 24, "line_px": 28, "weight": 700 },
      "heading_medium":  { "size_px": 20, "line_px": 24, "weight": 700 },
      "heading_small":   { "size_px": 16, "line_px": 20, "weight": 700 },
      "heading_xsmall":  { "size_px": 14, "line_px": 20, "weight": 700 },
      "heading_xxsmall": { "size_px": 12, "line_px": 16, "weight": 700 },
      "body_large":      { "size_px": 16, "line_px": 24, "weight": 400 },
      "body":            { "size_px": 14, "line_px": 20, "weight": 400 },
      "body_small":      { "size_px": 12, "line_px": 16, "weight": 400 },
      "metric_large":    { "size_px": 28, "weight": 700 },
      "metric_medium":   { "size_px": 24, "weight": 700 },
      "metric_small":    { "size_px": 16, "weight": 700 },
      "code":            { "size_px": 12, "line_px": 20, "weight": 400, "font": "mono" }
    }
  },

  "tokens": {
    "spacing_px": { "0": 0, "025": 2, "050": 4, "075": 6, "100": 8, "150": 12, "200": 16, "250": 20, "300": 24, "400": 32, "500": 40, "600": 48, "800": 64, "1000": 80 },
    "negative_spacing_px": ["negative.025", "negative.050", "negative.075", "negative.100", "negative.150", "negative.200", "negative.400"],
    "radius_px": { "xsmall": 2, "small": 4, "medium": 6, "large": 8, "xlarge": 12, "xxlarge": 16, "full": 999 },
    "focus_radius_px": "element + 2px with 2px offset",
    "shadow": {
      "raised":   "elevation.shadow.raised (paired with surface.raised)",
      "overlay":  "elevation.shadow.overlay (paired with surface.overlay)",
      "overflow_spread":    "elevation.shadow.overflow.spread",
      "overflow_perimeter": "elevation.shadow.overflow.perimeter"
    }
  },

  "components": {
    "button": {
      "variants": {
        "primary": { "bg": "color.background.brand.bold", "fg": "color.text.inverse", "radius": "medium" },
        "default": { "bg": "white/light gray", "fg": "color.text", "radius": "medium" },
        "subtle":  { "bg": "transparent", "hover_bg": "neutral" },
        "link":    { "text_only": true, "fg": "color.text.brand" }
      },
      "focus_ring": "radius.focus.medium (8px) at 2px offset"
    },
    "input":  { "uses": "dedicated input color role", "radius": "medium" },
    "card":   { "static": "elevation.surface (flat, optional border)", "movable": "elevation.surface.raised + elevation.shadow.raised", "radius": "large (8px)" },
    "badge":  { "radius_px": 2, "uses": "semantic + emphasis (default vs bold)" },
    "lozenge":{ "shape": "status pill", "radius_px": 4, "uses": "semantic colors" },
    "alert_components": ["Banner (page-level)", "SectionMessage (inline contextual)", "Flag (toast / overlay z-index 600)", "InlineMessage (compact icon + tooltip)"]
  },

  "do": [
    "Use color.background.brand.bold for primary actions — never raw blue hex.",
    "Reach for radius.medium (6px) and space.200 (16px) as the workhorse tokens.",
    "Use Banner for page-level, SectionMessage for inline, Flag for toast."
  ],
  "dont": [
    "Don't use Charlie Sans inside the product UI — it's marketing-only.",
    "Don't put white text on bold yellow — use warning.inverse.",
    "Don't hard-code hex — Atlaskit ships light and dark themes."
  ],

  "provenance": {
    "scanned_from": [
      "https://atlassian.design/foundations/color-new",
      "https://atlassian.design/foundations/color-new/color-palette-new",
      "https://atlassian.design/foundations/typography",
      "https://atlassian.design/foundations/spacing",
      "https://atlassian.design/foundations/elevation",
      "https://atlassian.design/foundations/radius",
      "https://atlassian.com/"
    ],
    "scanned_at": "2026-05-25",
    "confidence": "high (structure, typography, spacing, elevation, radius); medium (per-step hex in saturated ramps — JS-rendered)",
    "notes": "Pull exact per-step hex from the Atlaskit `@atlaskit/tokens` package for production. Atlaskit lives at atlaskit.atlassian.com; Forge UI Kit covers extensions."
  }
}
