{
  "$schema": "./brand-dna.schema.json",
  "meta": {
    "schemaVersion": "1.0",
    "brandName": "TWYN",
    "language": "en-US",
    "status": "active",
    "version": "1.3"
  },
  "essence": {
    "purpose": "Todos os brasileiros usam nossas tecnologias"
  },
  "voice": {
    "dimensions": [
      {
        "name": "Formality",
        "left": "Casual",
        "right": "Formal",
        "value": 60,
        "description": "Sets how conversational the brand sounds versus how structured and ceremonial its language becomes."
      },
      {
        "name": "Volume",
        "left": "Quiet",
        "right": "Loud",
        "value": 25,
        "description": "Sets how softly the brand enters a conversation versus how strongly it commands attention."
      },
      {
        "name": "Expression",
        "left": "Concise",
        "right": "Expressive",
        "value": 25,
        "description": "Sets how tightly the brand communicates versus allowing more detail, rhythm, and verbal texture."
      },
      {
        "name": "Complexity",
        "left": "Simple",
        "right": "Elaborate",
        "value": 25,
        "description": "Sets how direct and accessible the language is versus how layered and intricate it becomes."
      },
      {
        "name": "Finish",
        "left": "Rough",
        "right": "Polished",
        "value": 80,
        "description": "Sets how raw and spontaneous the language feels versus how refined and carefully edited it sounds."
      }
    ],
    "say": "Use clear action verbs, explain limits alongside the promise, and make the next step understandable. Prefer recognizable technical terms and real examples.",
    "dontSay": "Empty superlatives, fear-based language, science-fiction metaphors, absolute fraud-prevention promises, or future features presented as available products."
  },
  "visual": {
    "signatureRule": "Technical clarity, identity in motion, and confidence without rigidity. Use generous neutral surfaces; reserve Signal for recognition and action.",
    "colors": [
      {
        "name": "Signal",
        "value": "#77CDCF",
        "mode": "source",
        "role": "Brand recognition and primary emphasis; exact original TWYN website signal color."
      },
      {
        "name": "Accent",
        "value": "#A75FE3",
        "mode": "custom",
        "role": "Secondary emphasis; a mid-tone purple from the Roadmap family that complements Signal."
      },
      {
        "name": "Success",
        "value": "#2E9B58",
        "mode": "derived",
        "role": "Positive states, confirmation, and completed actions"
      },
      {
        "name": "Warning",
        "value": "#EDB335",
        "mode": "custom",
        "role": "Caution, attention, and pending conditions"
      },
      {
        "name": "Error",
        "value": "#D2284A",
        "mode": "custom",
        "role": "Errors, destructive actions, and critical states"
      }
    ],
    "additionalColors": [],
    "semanticColors": {
      "paper": {
        "source": "Signal",
        "stop": 50,
        "role": "Background: primary canvas and light surfaces"
      },
      "ink": {
        "source": "Signal",
        "stop": 950,
        "role": "Foreground: primary text, marks, and dark surfaces"
      },
      "border": {
        "source": "Ink",
        "mode": "ink-alpha",
        "opacity": 0.12,
        "value": "#05231C",
        "role": "Borders, dividers, and structural lines"
      }
    },
    "colorScale": {
      "lightSteps": 10,
      "darkSteps": 10,
      "hueMultiplier": 1.23,
      "hueFlip": false,
      "saturationMultiplier": 1.45,
      "saturationFlip": false,
      "contrastColorMode": "highest-contrast-endpoint",
      "contrast": 1
    },
    "colorScales": {
      "Accent": {
        "mode": "custom",
        "settings": {
          "lightSteps": 10,
          "darkSteps": 10,
          "hueMultiplier": 1.13,
          "hueFlip": true,
          "saturationMultiplier": 1.1,
          "saturationFlip": true,
          "contrastColorMode": "highest-contrast-endpoint",
          "contrast": 1.1
        }
      },
      "Success": {
        "mode": "linked"
      },
      "Warning": {
        "mode": "custom",
        "settings": {
          "lightSteps": 10,
          "darkSteps": 10,
          "hueMultiplier": 1.09,
          "hueFlip": true,
          "saturationMultiplier": 1.15,
          "saturationFlip": false,
          "contrastColorMode": "highest-contrast-endpoint",
          "contrast": 1.05
        }
      },
      "Error": {
        "mode": "custom",
        "settings": {
          "lightSteps": 10,
          "darkSteps": 10,
          "hueMultiplier": 1.16,
          "hueFlip": true,
          "saturationMultiplier": 1.4,
          "saturationFlip": false,
          "contrastColorMode": "highest-contrast-endpoint",
          "contrast": 1.05
        }
      }
    },
    "typography": {
      "headings": {
        "family": "Inter",
        "source": "https://fonts.google.com/specimen/Inter",
        "weight": 700
      },
      "body": {
        "family": "Inter",
        "source": "https://fonts.google.com/specimen/Inter",
        "weight": 400
      },
      "utility": {
        "family": "Anonymous Pro",
        "source": "https://fonts.google.com/specimen/Anonymous+Pro",
        "weight": 400
      },
      "additional": []
    },
    "borders": {
      "thickness": "thin",
      "radius": 2,
      "buttonPill": true
    },
    "shadows": {
      "base": {
        "distance": 31,
        "angle": 89,
        "blur": 22,
        "spread": -11,
        "colorStop": 800,
        "opacity": 0.18
      },
      "multiplier": 1.9
    }
  },
  "positioning": {
    "statement": "TWYN provides facial identity validation through Web and Native SDKs, combining clear user journeys with a probabilistic antifraud score that supports the customer’s decision.",
    "primaryAudience": "Organizations integrating identity validation into digital products.",
    "influencingAudience": "Product, engineering, security and compliance teams evaluating identity-validation journeys."
  },
  "imagery": {
    "principle": "Make identity technology understandable and human. Keep the proprietary ID Pattern subtle in interfaces and expressive in campaigns.",
    "directions": [
      {
        "name": "TWYN in three dimensions",
        "asset": "twyn-3d.webp",
        "description": "The official TWYN symbol rendered as a translucent turquoise object, with rounded volume, polished edges and a soft floating shadow. Use this reference for dimensional brand expressions while preserving the original symbol proportions.",
        "prompt": "Art-direction brief based on the supplied reference, not the original generation prompt: render the official TWYN symbol in translucent turquoise glass with rounded depth, polished edges, soft studio lighting and a subtle grounding shadow. Preserve its geometry and keep the composition uncluttered."
      },
      {
        "name": "Fingerprint capture",
        "asset": "fingerprint-capture.png",
        "description": "Existing TWYN fingerprint reference. Fingerprint capture is roadmap context, not a currently available product.",
        "prompt": "Use this existing reference only where fingerprint roadmap context is explicit. The original generation prompt is not recorded."
      }
    ],
    "do": "Preserve full text contrast. Use official ID Pattern variations. Show human context with technical clarity.",
    "avoid": "Do not combine the ID Pattern with another biometric texture. Avoid generic security clichés and effects without a purpose."
  },
  "iconography": {
    "principle": "Bring your own icons. Choose one source and use it consistently.",
    "library": "Lucide",
    "variant": "Outline",
    "source": "https://lucide.dev/icons/"
  },
  "informationAndData": {
    "principle": "Data makes differences legible and decisions verifiable.",
    "rules": [
      "Keep value, unit, period, and source together.",
      "Reinforce semantic color with labels or patterns.",
      "Do not use scales that dramatize differences."
    ]
  },
  "accessibility": {
    "principle": "Brand recognition cannot depend on excluding people.",
    "rules": [
      "Use at least 16px for body text and readable line lengths.",
      "Provide visible focus, logical order, and practical touch targets.",
      "Never make information depend on animation, color, or audio alone.",
      "Use direct sentences, text alternatives, and non-exclusionary terms."
    ],
    "boundaries": [
      "Never create artificial urgency.",
      "Never hide relevant conditions.",
      "Never imply certainty where risk exists.",
      "Never decorate critical information at the cost of clarity."
    ]
  },
  "agentGuidance": {
    "priorities": [
      "Preserve supplied facts, constraints, qualifiers, and accessibility requirements.",
      "Make the reader's job and the strongest supported message clear before styling.",
      "Use the published Brand DNA assets, tokens, and primitives before inventing new ones.",
      "Adapt composition to the material while preserving a recognizable brand system."
    ],
    "compositionRules": [
      "Give each artifact one dominant idea and an obvious reading path.",
      "Use hierarchy, alignment, and spacing before adding containers or decoration.",
      "Keep exact evidence, units, sources, and caveats close to the claims they qualify.",
      "Make responsive behavior part of the composition, not a cleanup step."
    ],
    "avoidPatterns": [
      "Generic dashboard reflex — do not turn every artifact into a grid of interchangeable cards.",
      "Decoration as evidence — do not use charts, icons, gradients, or surfaces without an informational job.",
      "Equal-weight hierarchy — do not give every section, metric, or action the same visual emphasis.",
      "Brand by color alone — preserve typography, composition, imagery, voice, and asset rules together.",
      "Unsupported confidence — do not invent claims, urgency, certainty, proof, or calls to action."
    ]
  },
  "useCases": [
    {
      "name": "Web pages",
      "job": "Valide com simplicidade.",
      "rule": "Identidade sem atrito."
    },
    {
      "name": "Presentations",
      "job": "Tecnologia que conecta.",
      "rule": "Confiança em cada interação."
    },
    {
      "name": "Social media cards/posts",
      "job": "Reconheça o que é único.",
      "rule": "Sua identidade. Seu controle."
    }
  ],
  "provenance": {
    "evidence": [
      "Migrated from TWYN src/config/brand-system.ts, messages/pt-BR.json, src/app/brand-center/page.tsx and existing public assets on 2026-09-14.",
      "The owner approved preserving Signal exactly and fine tuning the Brand DNA palette. Website colors remain independent and require a separate explicit change.",
      "The owner approved keeping the Brand DNA interface in English and preserving /id-pattern.",
      "The owner requested a mid-tone purple from the Roadmap family for Accent on 2026-09-14.",
      "The designer supplied exact palette and scale settings and requested removal of Roadmap and Roadmap Ink on 2026-09-14. Accent replaces those additional colors in Brand DNA; website colors remain independent.",
      "The designer requested removal of the extended palette, supplied exact radius and shadow settings, and replaced Identity light field with the existing TWYN 3D symbol reference. The imagery text describes that supplied reference; it does not claim to recover an original generation prompt."
    ],
    "decisions": [
      "meta",
      "essence.purpose",
      "voice.say",
      "voice.dontSay",
      "visual.signatureRule",
      "visual.colors[0]",
      "visual.typography",
      "visual.additionalColors",
      "imagery.principle",
      "imagery.do",
      "imagery.avoid",
      "iconography",
      "accessibility",
      "customSections",
      "visual.colors[1]",
      "visual.colors[0].value",
      "visual.colors[1].value",
      "visual.colors[1].mode",
      "visual.colors[3].value",
      "visual.colors[3].mode",
      "visual.colors[4].value",
      "visual.colors[4].mode",
      "visual.colorScale.hueMultiplier",
      "visual.colorScale.hueFlip",
      "visual.colorScale.saturationMultiplier",
      "visual.colorScale.contrast",
      "visual.colorScales.Accent.mode",
      "visual.colorScales.Accent.settings",
      "visual.colorScales.Warning.mode",
      "visual.colorScales.Warning.settings",
      "visual.colorScales.Error.mode",
      "visual.colorScales.Error.settings",
      "visual.borders.radius",
      "visual.shadows.base.distance",
      "visual.shadows.base.blur",
      "visual.shadows.base.spread",
      "visual.shadows.base.colorStop",
      "visual.shadows.base.opacity",
      "visual.shadows.multiplier",
      "imagery.directions[0].name",
      "imagery.directions[0].asset",
      "imagery.directions[0].description",
      "imagery.directions[0].prompt",
      "visual.shadows.base.angle"
    ],
    "proposals": [
      "positioning",
      "voice.dimensions",
      "visual.colors[2]",
      "visual.colors[3].role",
      "visual.colors[4].role",
      "visual.colorScale.lightSteps",
      "visual.colorScale.darkSteps",
      "visual.colorScale.saturationFlip",
      "visual.colorScale.contrastColorMode",
      "visual.colorScales.Success",
      "visual.semanticColors",
      "visual.borders.thickness",
      "visual.borders.buttonPill",
      "informationAndData",
      "useCases",
      "agentGuidance"
    ],
    "missing": [
      "imagery.directions[0].originalPrompt",
      "imagery.directions[1].originalPrompt"
    ]
  },
  "customSections": [
    {
      "id": "id-pattern",
      "menuLabel": "ID Pattern",
      "title": "The fingerprint of the system",
      "description": "A reproducible pattern with adjustable dimensions, density, gaps and colors. Keep it atmospheric in interfaces and expressive in campaigns. Generate official variations with the existing TWYN tool.",
      "link": "/id-pattern",
      "image": "references/id-pattern.svg"
    },
    {
      "id": "components",
      "menuLabel": "Components",
      "title": "Live website components",
      "description": "Buttons, status labels, cards and form controls use the same components and tokens as the TWYN website.",
      "link": "/brand-components"
    }
  ]
}
