{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "title": "Benchmark Table",
  "description": "Labelled benchmark bars with mono values and a technical-blue fill track.",
  "type": "object",
  "properties": {
    "eyebrow": {
      "type": "string",
      "title": "Eyebrow",
      "description": "Small mono label above the heading.",
      "x-editor": "text"
    },
    "heading": {
      "type": "string",
      "title": "Heading",
      "description": "Section heading.",
      "x-editor": "text"
    },
    "rows": {
      "type": "array",
      "title": "Rows",
      "description": "Each row is a labelled benchmark bar.",
      "default": [],
      "x-editor": "collection",
      "items": {
        "type": "object",
        "properties": {
          "label": { "type": "string", "title": "Label", "description": "Benchmark name.", "x-editor": "text" },
          "value": { "type": "string", "title": "Value", "description": "Displayed value (e.g. 98.4).", "x-editor": "text" },
          "unit": { "type": "string", "title": "Unit", "description": "Trailing unit (e.g. ms, %, tok/s).", "x-editor": "text" },
          "bar": { "type": "number", "title": "Bar %", "description": "Fill width 0-100.", "default": 0, "minimum": 0, "maximum": 100, "x-editor": "number" },
          "highlight": { "type": "boolean", "title": "Highlight", "description": "Fill this bar with the signal accent instead of technical blue.", "default": false, "x-editor": "select" }
        },
        "required": ["label", "value"]
      }
    },
    "note": {
      "type": "string",
      "title": "Note",
      "description": "Optional footnote below the bars.",
      "x-editor": "text"
    }
  }
}
