# Copilot instructions — <DESIGN SYSTEM NAME>

<!--
  Destination: .github/copilot-instructions.md

  Copilot concatenates every matching instruction file — personal, repo, and
  organization — and no specific order is guaranteed. So write each rule to
  stand on its own. Do not write "as mentioned above", and do not rely on
  this file being read before or after any other.

  Copilot also reads CLAUDE.md natively, and looks for skills in
  .claude/skills/ as well as .github/skills/. You may not need to duplicate
  as much as you think.

  Path-scoped rules belong in .github/instructions/*.instructions.md with an
  applyTo glob — see components.instructions.md in this pack.
-->

Full instructions: see `AGENTS.md` at the repo root.

## Components

Import UI from `<@scope/design-system>`. The exported components are listed
in `AGENTS.md`. Anything not on that list does not exist in this system —
including `Box`, `Stack`, `Container`, and `Flex`, which belong to other
libraries and are the most common thing to be invented here.

## Tokens

Use `var(--color-*)`, `var(--space-*)`, `var(--radius-*)`. Never a literal
hex, pixel value, or rem. A hardcoded value renders correctly in light mode,
incorrectly in dark mode, and incorrectly again after the next rebrand.

## Accessibility

Every interactive element needs an accessible name that describes its action.
Every image needs alt text or an explicit empty alt. Link text must make
sense read on its own. These are semantic requirements — the accessibility
linter passes when they are wrong, so they have to be read rather than run.

## Verification

`<pnpm typecheck>` and `<pnpm lint>` must both pass. Do not report a task
complete on the basis of the code looking right.
