{
  "schema_version": "1.0",
  "library_id": "uiux-atlas",
  "library_version": "2.1",
  "id": 1,
  "key": "urn:uiux-atlas:pattern:001",
  "name": "ボタン",
  "english_name": "Button",
  "category": "入力・操作",
  "usage": "保存や送信など、次の行動を明確にする",
  "accessibility": "主要操作は1画面に1つ。処理中は二重送信を防ぎ、完了を通知する",
  "responsive": "PCはキーボード、スマホはタッチで完結させます。入力文字は16px以上、タップ領域は原則44px以上を確保します。",
  "keywords": [
    "クリック",
    "CTA",
    "申し込み"
  ],
  "implementation_prompt": "「ボタン / Button」を実装してください。\n\n目的：保存や送信など、次の行動を明確にする。\n想定場面：クリック・CTA・申し込みを扱う画面。\n\n仕様：\n- 主要操作は1画面に1つ。処理中は二重送信を防ぎ、完了を通知する。\n- PCはキーボード、スマホはタッチで完結させます。入力文字は16px以上、タップ領域は原則44px以上を確保します。\n- Noto Sans JP、本文16px、補足14px、見出し24pxを基本にする。\n- 背景#FFFFFF、カード#FFFFFF、本文#17191E、主要操作#17191E、境界線#E8ECF3。主要ボタンの文字は白にする。\n- 余白は8px単位、カード角丸12px、控えめな影に統一する。\n- semantic HTMLと標準コントロールを優先し、操作名・現在状態・結果を読み上げ可能にする。\n- キーボード操作、見えるフォーカス、通常テキスト4.5:1以上のコントラストを確保する。\n- prefers-reduced-motionを尊重し、アニメーションを止めても内容を理解できるようにする。\n\n受け入れ条件：\n- 1440pxと390pxで表示を確認し、ページ全体に横はみ出しがない。\n- 主要操作は1画面に1つ。処理中は二重送信を防ぎ、完了を通知することを操作で確認する。\n- 読み込み・空・成功・エラーの該当状態を用意する。\n- 見た目だけのボタンを残さず、操作を実装する。\n- 実装後にスクリーンショットを比較して改善し、決定した仕様をdesign.mdへ保存する。",
  "links": {
    "html": "001.html",
    "markdown": "001.md",
    "json": "001.json",
    "demo": "../index.html#pattern/1"
  },
  "url_resolution": "links resolve relative to this JSON document",
  "schema": "../ai/pattern.schema.json"
}