{
  "id": "metric-card",
  "name": "MetricCard",
  "level": "molecule",
  "status": "stable",
  "purpose": "One number that matters, with its label, unit and change.",
  "description": "Apple-Fitness-register dashboard tile: small caps label, tabular-nums value, optional unit + delta pill + progress + description. Always raised material (ADR-007). Three axes: `tone` (left rail + icon-pill tint), `density` (comfortable / compact), `emphasis` (default / featured — featured uses font-display).",
  "role": "content",
  "import": "@rrios-forge/ui/molecules/metric-card",
  "exports": [
    "MetricCard",
    "METRIC_CARD_DELTA_DIRECTIONS",
    "METRIC_CARD_DENSITIES",
    "METRIC_CARD_EMPHASES",
    "METRIC_CARD_PROMINENCES",
    "METRIC_CARD_TONES",
    "metricCardVariants"
  ],
  "source": "packages/ui/src/molecules/metric-card",
  "axes": [
    {
      "axis": "tone",
      "part": null,
      "values": [
        "neutral",
        "info",
        "success",
        "warning",
        "danger"
      ],
      "default": "neutral",
      "meaning": "Which semantic colour family the element speaks in."
    },
    {
      "axis": "prominence",
      "part": null,
      "values": [
        "default",
        "featured"
      ],
      "default": "default",
      "meaning": "How a surface stands among its siblings."
    }
  ],
  "needs": [
    {
      "need": "KPI / metric",
      "answer": "`MetricCard`"
    },
    {
      "need": "A trend in a tile or a row",
      "answer": "`Sparkline` (in `MetricCard`'s `trend` slot)"
    },
    {
      "need": "A chart (trend, comparison, part to whole)",
      "answer": "`Chart` with the `form` the data's job names (`dataviz.yaml`); a single number is a `MetricCard`, many classes a `DataTable`"
    }
  ],
  "patterns": [],
  "a11yExceptions": [],
  "decisions": [
    {
      "id": "ADR-005",
      "title": "Visual operational rules: surfaces, interaction, motion"
    },
    {
      "id": "ADR-006",
      "title": "Geometry and typography signature"
    },
    {
      "id": "ADR-007",
      "title": "Material highlight on raised surfaces"
    },
    {
      "id": "ADR-008",
      "title": "Layout layer: refined `Grid` + new `Container`"
    },
    {
      "id": "ADR-009",
      "title": "Editorial Frame: PageShell v3 + new `TopBar` molecule"
    },
    {
      "id": "ADR-012",
      "title": "Card.fill axis for symmetric growth in grids"
    },
    {
      "id": "ADR-027",
      "title": "Vibrant is the system's material, not one of its members"
    },
    {
      "id": "ADR-029",
      "title": "The page gutter belongs outside the frame"
    },
    {
      "id": "ADR-030",
      "title": "Axis vocabulary: one name, one meaning"
    },
    {
      "id": "ADR-034",
      "title": "Accessible names come from a labels provider"
    },
    {
      "id": "ADR-036",
      "title": "Data visualization: colour roles, a grammar, and three components on plain SVG"
    },
    {
      "id": "ADR-037",
      "title": "Continuity motion: a decelerating curve, a travelling indicator, view transitions and the SegmentedControl"
    },
    {
      "id": "ADR-038",
      "title": "Liquid Glass layers: glass for navigation and controls, a content material for everything read"
    }
  ],
  "stories": [
    {
      "name": "Playground",
      "id": "components-molecules-metriccard--playground",
      "interaction": false,
      "snapshots": [
        "dark",
        "light"
      ],
      "skipsSnapshot": false,
      "docs": "/?path=/story/components-molecules-metriccard--playground",
      "frame": "/iframe.html?id=components-molecules-metriccard--playground&viewMode=story"
    },
    {
      "name": "Canonical (icon + delta + unit)",
      "id": "components-molecules-metriccard--canonical",
      "interaction": false,
      "snapshots": [
        "dark",
        "high-contrast",
        "light"
      ],
      "skipsSnapshot": false,
      "docs": "/?path=/story/components-molecules-metriccard--canonical",
      "frame": "/iframe.html?id=components-molecules-metriccard--canonical&viewMode=story"
    },
    {
      "name": "Tones",
      "id": "components-molecules-metriccard--tones",
      "interaction": false,
      "snapshots": [
        "dark",
        "high-contrast",
        "light"
      ],
      "skipsSnapshot": false,
      "docs": "/?path=/story/components-molecules-metriccard--tones",
      "frame": "/iframe.html?id=components-molecules-metriccard--tones&viewMode=story"
    },
    {
      "name": "Featured (display ramp)",
      "id": "components-molecules-metriccard--featured",
      "interaction": false,
      "snapshots": [
        "dark",
        "light"
      ],
      "skipsSnapshot": false,
      "docs": "/?path=/story/components-molecules-metriccard--featured",
      "frame": "/iframe.html?id=components-molecules-metriccard--featured&viewMode=story"
    },
    {
      "name": "Compact (dense panels)",
      "id": "components-molecules-metriccard--compact",
      "interaction": false,
      "snapshots": [
        "dark",
        "light"
      ],
      "skipsSnapshot": false,
      "docs": "/?path=/story/components-molecules-metriccard--compact",
      "frame": "/iframe.html?id=components-molecules-metriccard--compact&viewMode=story"
    },
    {
      "name": "With progress",
      "id": "components-molecules-metriccard--with-progress",
      "interaction": false,
      "snapshots": [
        "dark",
        "light"
      ],
      "skipsSnapshot": false,
      "docs": "/?path=/story/components-molecules-metriccard--with-progress",
      "frame": "/iframe.html?id=components-molecules-metriccard--with-progress&viewMode=story"
    },
    {
      "name": "Dashboard grid",
      "id": "components-molecules-metriccard--dashboard-grid",
      "interaction": false,
      "snapshots": [
        "dark",
        "light"
      ],
      "skipsSnapshot": false,
      "docs": "/?path=/story/components-molecules-metriccard--dashboard-grid",
      "frame": "/iframe.html?id=components-molecules-metriccard--dashboard-grid&viewMode=story"
    },
    {
      "name": "Minimal (no chrome)",
      "id": "components-molecules-metriccard--minimal",
      "interaction": false,
      "snapshots": [
        "dark",
        "light"
      ],
      "skipsSnapshot": false,
      "docs": "/?path=/story/components-molecules-metriccard--minimal",
      "frame": "/iframe.html?id=components-molecules-metriccard--minimal&viewMode=story"
    }
  ],
  "storyFile": "tooling/storybook/stories/components/molecules/metric-card.stories.tsx"
}
