{
  "schema_version": "1.0",
  "library_id": "uiux-atlas",
  "library_version": "2.1",
  "id": 17,
  "key": "urn:uiux-atlas:pattern:017",
  "name": "ラジオボタン",
  "english_name": "Radio Button",
  "category": "入力・操作",
  "usage": "少数の候補から1つを選んでもらう",
  "accessibility": "同じグループに同じnameを付け、fieldsetとlegendでまとめる",
  "responsive": "PCはキーボード、スマホはタッチで完結させます。入力文字は16px以上、タップ領域は原則44px以上を確保します。",
  "keywords": [
    "単一選択",
    "プラン"
  ],
  "implementation_prompt": "「ラジオボタン / Radio Button」を実装してください。\n\n目的：少数の候補から1つを選んでもらう。\n想定場面：単一選択・プランを扱う画面。\n\n仕様：\n- 同じグループに同じnameを付け、fieldsetとlegendでまとめる。\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- 同じグループに同じnameを付け、fieldsetとlegendでまとめることを操作で確認する。\n- 読み込み・空・成功・エラーの該当状態を用意する。\n- 見た目だけのボタンを残さず、操作を実装する。\n- 実装後にスクリーンショットを比較して改善し、決定した仕様をdesign.mdへ保存する。",
  "links": {
    "html": "017.html",
    "markdown": "017.md",
    "json": "017.json",
    "demo": "../index.html#pattern/17"
  },
  "url_resolution": "links resolve relative to this JSON document",
  "schema": "../ai/pattern.schema.json"
}