{
  "id": "unreal-engine",
  "version": "1.0.0",
  "name": "Unreal Engine",
  "description": "Unreal Engine is Epic Games' real-time 3D creation platform — the engine behind Fortnite, the Unreal Tournament series, a large share of AAA console / PC games, and a growing footprint in film virtual-production (the volume / LED-wall pipeline behind The Mandalorian and its successors), architectural visualization, and automotive simulation. The brand voice under the recent Epic Design System (\"EDS\") rebrand is cinematic-engineering: hero artwork on deep ink grounds, the signature Unreal Blue (#26BBFF) carrying the primary action, and a calibrated nine-stop blue ramp covering everything from deep-navy surface tints (#0A2633) to bright link affordances (#A0E1FF). Visually, Unreal Engine is dark-first by construction — the deep ink canvas (#101014) is the dominant background, and the brand reads at its strongest in hero key-art presentations.\nUnreal Engine is a brand under the Epic Games umbrella (parent catalogued as epic-games@1) but stands on its own atom because the EDS blue identity is functionally distinct from the reductive monochrome Epic Games Store chrome.\n",
  "provenance": {
    "source": "https://www.unrealengine.com/",
    "license": "Proprietary — All Rights Reserved",
    "attribution": "Epic Games, Inc. — visual identity captured from the deployed Epic Design System (\"EDS\") tokens on unrealengine.com (--color-eds.palette.blue.*, --color-fill- primary.*, --color-background-default, --color-fill- critical.*, --color-fill-success.*, --font-family-base, --font-family-display, --font-family-code CSS custom-property families). Unreal, Unreal Engine, the Unreal Engine logo, and associated marks are trademarks of Epic Games, Inc.\n",
    "importedDate": "2026-05-19",
    "notes": "Derived from live site CSS at https://www.unrealengine.com/ on 2026-05-19. The Epic Design System (\"EDS\") underpins the deployed brand assets; the captured tokens align with the branding center at https://www.unrealengine.com/en-US/ branding which is the canonical Unreal Engine identity reference. The primary typeface is Inter (--fonts- eds.family.base / --font-family-base = \"Inter, sans-serif\", open-source); the display typeface is Inter Tight (--fonts- eds.family.display / --font-family-display, open-source); the monospace family is Recursive Mono (--fonts-eds.family. code, open-source via Google Fonts). This atom references inter@1 / inter-tight@1 / jetbrainsmono-nerdfont@1; consumers who require Recursive Mono should override the mono reference in derived atoms. assets: [] per the encyclopedia's trademark-redistribution policy.\n"
  },
  "tags": [
    "unreal-engine",
    "epic-games",
    "gaming",
    "engine",
    "real-time-3d",
    "dark-first",
    "blue"
  ],
  "palette": {
    "ref": "unreal-engine@1.0.0",
    "swatches": [
      {
        "id": "unreal-blue",
        "name": "Unreal Blue",
        "value": "#26BBFF",
        "description": "Primary brand action — --color-eds.fill.primary.default, --color-eds.icon.select.default, --color-text-select- default, --color-fill-primary-press. The most identifiable Unreal Engine accent.\n",
        "aliases": []
      },
      {
        "id": "unreal-blue-hover",
        "name": "Unreal Blue Hover",
        "value": "#72D3FF",
        "description": "Hover variant — --color-eds.fill.primary.hover and --color-fill-primary-hover.\n",
        "aliases": []
      },
      {
        "id": "unreal-blue-400",
        "name": "Unreal Blue 400",
        "value": "#33BFFF",
        "description": "Mid-bright blue — --color-eds.palette.blue.400 (alias of --color-palette-blue-400).\n",
        "aliases": []
      },
      {
        "id": "unreal-blue-500",
        "name": "Unreal Blue 500",
        "value": "#69D0FF",
        "description": "Bright blue — --color-eds.palette.blue.500.\n",
        "aliases": []
      },
      {
        "id": "unreal-blue-600",
        "name": "Unreal Blue 600",
        "value": "#A0E1FF",
        "description": "Pale blue — --color-eds.palette.blue.600. Gradient start-stop in the green-gradient (#A0E1FF → #5FE367).\n",
        "aliases": []
      },
      {
        "id": "unreal-blue-700",
        "name": "Unreal Blue 700",
        "value": "#D6F2FF",
        "description": "Lightest blue — --color-eds.palette.blue.700. Quiet branded surface tint.\n",
        "aliases": []
      },
      {
        "id": "unreal-blue-300",
        "name": "Unreal Blue 300",
        "value": "#258CBB",
        "description": "Mid-deep blue — --color-eds.palette.blue.300.\n",
        "aliases": []
      },
      {
        "id": "unreal-blue-200",
        "name": "Unreal Blue 200",
        "value": "#185977",
        "description": "Deep blue — --color-eds.palette.blue.200.\n",
        "aliases": []
      },
      {
        "id": "unreal-blue-100",
        "name": "Unreal Blue 100",
        "value": "#0A2633",
        "description": "Deepest blue surface — --color-eds.palette.blue.100.\n",
        "aliases": []
      },
      {
        "id": "ink",
        "name": "Ink",
        "value": "#101014",
        "description": "Primary dark canvas — --color-background-default and --color-neutral-100. The Unreal Engine page-background default.\n",
        "aliases": []
      },
      {
        "id": "ink-elevated",
        "name": "Ink Elevated",
        "value": "#202024",
        "description": "Elevated dark surface — --colors-eds.background.elevated. high.default. Card and panel backgrounds.\n",
        "aliases": []
      },
      {
        "id": "ink-elevated-hover",
        "name": "Ink Elevated Hover",
        "value": "#505054",
        "description": "Tertiary elevated hover — --colors-eds.fill.tertiary. elevated.hover.\n",
        "aliases": []
      },
      {
        "id": "ink-divider",
        "name": "Ink Divider",
        "value": "#303034",
        "description": "Quiet divider on dark — --color-fill-secondary-disabled and --colors-eds.fill.secondary.disabled.\n",
        "aliases": []
      },
      {
        "id": "ink-deep",
        "name": "Ink Deep",
        "value": "#000000",
        "description": "Pure black — --colors-eds.text.on-accent and --colors- eds.text.link.on-accent.default. Text fill on bright blue and white surfaces.\n",
        "aliases": []
      },
      {
        "id": "snow",
        "name": "Snow",
        "value": "#FFFFFF",
        "description": "Pure white — --color-text-primary, --color-icon-primary, --colors-eds.icon.contrast. Primary body text on dark canvas.\n",
        "aliases": []
      },
      {
        "id": "snow-soft",
        "name": "Snow Soft",
        "value": "#808084",
        "description": "Mid neutral — --colors-eds.palette.grayscale.gray100. Secondary text on dark surface.\n",
        "aliases": []
      },
      {
        "id": "critical-default",
        "name": "Critical Default",
        "value": "#FF3F56",
        "description": "Error / destructive default — --color-fill-critical- default and --colors-eds.fill.critical.default.\n",
        "aliases": []
      },
      {
        "id": "critical-alternate",
        "name": "Critical Alternate",
        "value": "#FF6173",
        "description": "Critical alternate — --color-fill-critical-alternate. Used as the warning text color on critical alerts.\n",
        "aliases": []
      },
      {
        "id": "critical-text",
        "name": "Critical Text",
        "value": "#FF6173",
        "description": "Critical text color — --colors-eds.text.critical.\n",
        "aliases": []
      },
      {
        "id": "success-default",
        "name": "Success Default",
        "value": "#8AEA90",
        "description": "Success green — --colors-eds.palette.green.500.\n",
        "aliases": []
      },
      {
        "id": "success-alternate",
        "name": "Success Alternate",
        "value": "#71D687",
        "description": "Success alternate — --color-fill-success-alternate.\n",
        "aliases": []
      },
      {
        "id": "warning-default",
        "name": "Warning Default",
        "value": "#FFC229",
        "description": "Warning icon color — --color-icon-warning and --color- palette-accent-yellow200.\n",
        "aliases": []
      },
      {
        "id": "warning-yellow-400",
        "name": "Warning Yellow 400",
        "value": "#F7D82B",
        "description": "Bright warning yellow — --colors-eds.palette.yellow.400.\n",
        "aliases": []
      },
      {
        "id": "gradient-green",
        "name": "Gradient Green",
        "value": "#5FE367",
        "description": "Green gradient end-stop — --gradient-components-green- stops-100. Paired with --gradient-components-blue-stops- 100 (#33BFFF or unreal-blue-600 #A0E1FF) on the documented EDS gradients.\n",
        "aliases": []
      },
      {
        "id": "gradient-orange",
        "name": "Gradient Orange",
        "value": "#FE8539",
        "description": "Orange gradient end-stop — --color-palette-orange-400. Paired with yellow on the documented EDS orange gradient.\n",
        "aliases": []
      }
    ],
    "modes": {
      "light": {
        "roles": {
          "background": "snow",
          "surface": "unreal-blue-700",
          "surface-elevated": "snow",
          "text-primary": "ink",
          "text-secondary": "ink-elevated-hover",
          "text-tertiary": "snow-soft",
          "primary": "unreal-blue-200",
          "primary-hover": "unreal-blue-300",
          "accent": "unreal-blue-300",
          "accent-hover": "unreal-blue-200",
          "warning": "warning-default",
          "warning-hover": "gradient-orange",
          "error": "critical-default",
          "success": "success-alternate",
          "border": "ink-divider"
        }
      },
      "dark": {
        "roles": {
          "background": "ink",
          "surface": "ink-elevated",
          "surface-elevated": "ink-elevated-hover",
          "text-primary": "snow",
          "text-secondary": "snow-soft",
          "text-tertiary": "ink-elevated-hover",
          "primary": "unreal-blue",
          "primary-hover": "unreal-blue-hover",
          "accent": "unreal-blue-hover",
          "accent-hover": "unreal-blue-500",
          "warning": "warning-default",
          "warning-hover": "gradient-orange",
          "error": "critical-default",
          "success": "success-default",
          "border": "ink-divider"
        }
      }
    }
  },
  "fonts": [
    {
      "role": "heading",
      "ref": "inter-tight@1.0.0",
      "family": "Inter Tight",
      "classification": "sans-serif",
      "source": {
        "kind": "google-fonts",
        "family": "Inter Tight",
        "url": "https://fonts.googleapis.com/css2?family=Inter+Tight:ital,wght@0,100..900;1,100..900&display=swap"
      },
      "fallbackStack": [
        "-apple-system",
        "BlinkMacSystemFont",
        "Segoe UI",
        "Roboto",
        "Helvetica Neue",
        "Arial",
        "sans-serif"
      ],
      "availableStyles": [
        {
          "weight": 100,
          "style": "normal"
        },
        {
          "weight": 100,
          "style": "italic"
        },
        {
          "weight": 200,
          "style": "normal"
        },
        {
          "weight": 200,
          "style": "italic"
        },
        {
          "weight": 300,
          "style": "normal"
        },
        {
          "weight": 300,
          "style": "italic"
        },
        {
          "weight": 400,
          "style": "normal"
        },
        {
          "weight": 400,
          "style": "italic"
        },
        {
          "weight": 500,
          "style": "normal"
        },
        {
          "weight": 500,
          "style": "italic"
        },
        {
          "weight": 600,
          "style": "normal"
        },
        {
          "weight": 600,
          "style": "italic"
        },
        {
          "weight": 700,
          "style": "normal"
        },
        {
          "weight": 700,
          "style": "italic"
        },
        {
          "weight": 800,
          "style": "normal"
        },
        {
          "weight": 800,
          "style": "italic"
        },
        {
          "weight": 900,
          "style": "normal"
        },
        {
          "weight": 900,
          "style": "italic"
        }
      ]
    },
    {
      "role": "body",
      "ref": "inter@1.0.0",
      "family": "Inter",
      "classification": "sans-serif",
      "source": {
        "kind": "google-fonts",
        "family": "Inter",
        "url": "https://fonts.googleapis.com/css2?family=Inter:ital,opsz,wght@0,14..32,100..900;1,14..32,100..900&display=swap"
      },
      "fallbackStack": [
        "-apple-system",
        "BlinkMacSystemFont",
        "Segoe UI",
        "Roboto",
        "Helvetica Neue",
        "Arial",
        "sans-serif"
      ],
      "availableStyles": [
        {
          "weight": 100,
          "style": "normal"
        },
        {
          "weight": 100,
          "style": "italic"
        },
        {
          "weight": 200,
          "style": "normal"
        },
        {
          "weight": 200,
          "style": "italic"
        },
        {
          "weight": 300,
          "style": "normal"
        },
        {
          "weight": 300,
          "style": "italic"
        },
        {
          "weight": 400,
          "style": "normal"
        },
        {
          "weight": 400,
          "style": "italic"
        },
        {
          "weight": 500,
          "style": "normal"
        },
        {
          "weight": 500,
          "style": "italic"
        },
        {
          "weight": 600,
          "style": "normal"
        },
        {
          "weight": 600,
          "style": "italic"
        },
        {
          "weight": 700,
          "style": "normal"
        },
        {
          "weight": 700,
          "style": "italic"
        },
        {
          "weight": 800,
          "style": "normal"
        },
        {
          "weight": 800,
          "style": "italic"
        },
        {
          "weight": 900,
          "style": "normal"
        },
        {
          "weight": 900,
          "style": "italic"
        }
      ]
    },
    {
      "role": "mono",
      "ref": "jetbrainsmono-nerdfont@1.0.0",
      "family": "JetBrainsMono Nerd Font",
      "classification": "monospace",
      "source": {
        "kind": "external",
        "family": "JetBrainsMono Nerd Font",
        "notes": "Nerd-Font-patched build of JetBrains Mono. Not available via Google Fonts. Download woff2/ttf files from the Nerd Fonts GitHub release and self-host, or install system-wide for terminal/IDE use.\n"
      },
      "fallbackStack": [
        "JetBrains Mono",
        "Fira Code",
        "Menlo",
        "Monaco",
        "Consolas",
        "Liberation Mono",
        "monospace"
      ],
      "availableStyles": [
        {
          "weight": 100,
          "style": "normal"
        },
        {
          "weight": 100,
          "style": "italic"
        },
        {
          "weight": 200,
          "style": "normal"
        },
        {
          "weight": 200,
          "style": "italic"
        },
        {
          "weight": 300,
          "style": "normal"
        },
        {
          "weight": 300,
          "style": "italic"
        },
        {
          "weight": 400,
          "style": "normal"
        },
        {
          "weight": 400,
          "style": "italic"
        },
        {
          "weight": 500,
          "style": "normal"
        },
        {
          "weight": 500,
          "style": "italic"
        },
        {
          "weight": 600,
          "style": "normal"
        },
        {
          "weight": 600,
          "style": "italic"
        },
        {
          "weight": 700,
          "style": "normal"
        },
        {
          "weight": 700,
          "style": "italic"
        },
        {
          "weight": 800,
          "style": "normal"
        },
        {
          "weight": 800,
          "style": "italic"
        }
      ]
    }
  ],
  "roles": {
    "colors": {
      "identity": "ink",
      "on-identity": "unreal-blue",
      "primary": "unreal-blue",
      "primary-hover": "unreal-blue-hover",
      "accent": "unreal-blue-hover",
      "accent-hover": "unreal-blue-500",
      "mark": "snow",
      "success": "success-default",
      "warning": "warning-default",
      "error": "critical-default",
      "text-primary-light": "ink",
      "text-primary-dark": "snow",
      "background-light": "snow",
      "background-dark": "ink",
      "surface-light": "unreal-blue-700",
      "surface-dark": "ink-elevated",
      "text-secondary-light": "ink-elevated-hover",
      "text-tertiary-light": "snow-soft",
      "border-light": "ink-divider"
    },
    "typography": {
      "display": "heading",
      "prose": "body",
      "code": "mono"
    }
  },
  "assets": [],
  "rules": [
    {
      "type": "colorChoice",
      "target": "roles.colors.primary",
      "severity": "error",
      "rationale": "The Unreal Blue family (#26BBFF default / #72D3FF hover) carries the primary action across the Epic Design System — declared as --color-fill-primary-default and --color- fill-primary-hover. The status colors (red critical, amber warning, green success) are reserved for their semantic roles, and the gradient end-stops are content affordances inside EDS gradient surfaces, not primary actions. Substituting any of them for the brand primary inverts the documented EDS action grammar.\n",
      "allowed": [
        "unreal-blue",
        "unreal-blue-hover",
        "unreal-blue-400",
        "unreal-blue-500"
      ],
      "forbidden": [
        "critical-default",
        "warning-default",
        "success-default",
        "gradient-orange",
        "gradient-green"
      ]
    },
    {
      "type": "colorChoice",
      "target": "roles.colors.mark",
      "severity": "error",
      "rationale": "The Unreal Engine wordmark renders in pure white on dark surfaces, in pure black on light surfaces, and in the Unreal Blue (#26BBFF) for documented brand-color treatments on hero key-art. The status colors and gradient end-stops are not mark fills; substituting any of them for the wordmark fill misrepresents the brand.\n",
      "allowed": [
        "snow",
        "ink",
        "unreal-blue"
      ],
      "forbidden": [
        "critical-default",
        "warning-default",
        "success-default",
        "gradient-orange",
        "gradient-green"
      ]
    },
    {
      "type": "forbiddenTreatment",
      "target": "logo",
      "severity": "error",
      "rationale": "Unreal Engine's wordmark is a fixed-proportion identity governed by the Epic Games / Unreal Engine branding center. Recoloring (outside the documented Unreal Blue treatment), skewing, rotating, drop-shadowing, or placing the mark on a busy photo without documented clearspace conflicts with the Epic Games branding guidelines.\n",
      "treatments": [
        "stretched",
        "rotated",
        "recolored",
        "drop-shadow",
        "gradient-fill",
        "on-busy-photo",
        "outlined",
        "distorted"
      ]
    },
    {
      "type": "contrastRatio",
      "target": "text-primary",
      "severity": "error",
      "rationale": "Snow (#FFFFFF) on Ink (#101014) measures ~19:1 — clears AAA decisively. Unreal Engine's marketing surfaces carry long-form technical documentation (engine release notes, Blueprint reference, C++ API docs) where the AAA contrast band matches the long-read posture.\n",
      "against": "background",
      "minRatio": 7,
      "standard": "WCAG-AAA"
    },
    {
      "type": "contextRestriction",
      "target": "roles.colors.accent",
      "severity": "error",
      "rationale": "The Unreal Blue family carries identification, inline links, focus rings, and selection (--color-text-select- default, --color-fill-primary-press). It must not appear as the error / destructive / warning state — those contexts use --color-fill-critical-default (#FF3F56) and --color-icon-warning (#FFC229) respectively. Substituting blue for any of those semantic roles collapses the EDS status grammar.\n",
      "allowedContexts": [
        "hero-headline",
        "active-state",
        "focus-ring",
        "inline-link",
        "selection"
      ],
      "forbiddenContexts": [
        "error-state",
        "destructive-action",
        "warning"
      ]
    },
    {
      "type": "enumMembership",
      "target": "typography.heading.fontWeight",
      "severity": "warning",
      "rationale": "Unreal Engine's EDS declares Regular (400), Medium (500), Bold (700), and Black (900) cuts of Inter / Inter Tight — captured as --fonts-eds.weight.regular, --fonts-eds.weight. medium, --fonts-eds.weight.bold, and --fonts-eds.weight. black. Lighter cuts (100–300) and SemiBold (600) are not in the deployed type system.\n",
      "allowed": [
        "400",
        "500",
        "700",
        "900"
      ]
    },
    {
      "type": "fontPairing",
      "target": "typography.display",
      "severity": "recommendation",
      "rationale": "Unreal Engine pairs Inter Tight (display, --font-family- display) with Inter Regular (prose, --font-family-base). The compressed Inter Tight earns a 1.5× minimum size ratio over the wider Inter body to preserve the cinematic-engineering hierarchy the brand depends on.\n",
      "requires": "prose",
      "minSizeRatio": 1.5
    },
    {
      "type": "compositionConstraint",
      "target": "roles.colors.primary",
      "severity": "recommendation",
      "rationale": "Unreal Blue reads cleanest against the deep ink canvas or the snow inverse. Placing it directly adjacent to the critical red, warning amber, or gradient orange produces chromatic conflict and collapses the semantic separation between brand action and status signaling — the live EDS surfaces keep these channels separated by neutral chrome.\n",
      "pairsWith": [
        "ink",
        "ink-elevated",
        "snow",
        "unreal-blue-100"
      ],
      "doesNotPairWith": [
        "critical-default",
        "warning-default",
        "gradient-orange"
      ]
    },
    {
      "type": "accessibilityRequirement",
      "target": "*",
      "severity": "warning",
      "rationale": "WCAG 2.1 Success Criterion 1.4.6 (Contrast Enhanced) — Level AAA. Unreal Engine's documentation surfaces and the editor splash / loading screens specifically (which developers spend long sessions reading) benefit from the AAA contrast band rather than the AA floor.\n",
      "standard": "WCAG-AAA",
      "criterion": "1.4.6"
    }
  ]
}
