{"delivery":{"type":"reference-library","npmPackagePublished":false,"npmPackage":{"name":"klic-design","version":"0.0.4","published":false,"status":"source-ready","registry":"https://registry.npmjs.org/","runtime":"Bun 1.4.2 preferred; Node.js 22+ supported","exports":["tokens","theme","motion","motions/runtime","motions/runtime.css","components","blocks","Agent Skill","CSS","TypeScript","CLI"],"publishedExports":["tokens","theme","motion","motions/runtime","motions/runtime.css","components","blocks","Agent Skill","CSS","TypeScript","CLI"],"candidateExports":["tokens","theme","motion","motions/runtime","motions/runtime.css","components","blocks","Agent Skill","CSS","TypeScript","CLI"],"candidateOnlyExports":[],"publicationExportsVerified":true,"skillPath":"skills/klic-design/SKILL.md","buildCommand":"bun run pack:npm","publishedVersion":"0.0.3","publishedIntegrity":"sha512-GJJOOXh5UXxSSURZLxXLU5qq968O+p91TeTkNtqo527mzj9BOtoOH4nyMfNWZwrQwJ4o+zhy9i+cnlX71nPeKA==","installCommand":"bun add klic-design@0.0.3","cliCommand":"bunx --bun --package=klic-design@0.0.3 klic","nodeCliCommand":"npx --yes --package=klic-design@0.0.3 klic","sourceCLICommand":"curl --fail --location --output klic.mjs https://design.klic.co.kr/integrations/klic.mjs\nbun ./klic.mjs","sourceNodeCLICommand":"curl --fail --location --output klic.mjs https://design.klic.co.kr/integrations/klic.mjs\nnode ./klic.mjs"},"scope":"/about","licenses":"/licenses/README.md"},"system":{"schemaVersion":"1.0","revision":"6f9c8f5e4d7c767f79a7db999670fb4d0936e07acb1b472fe162a7a9ade60c97","definition":"/api/v1/design-system.json","docs":"/#docs/architecture"},"schemaVersion":"1.0","scope":"adoption-guidance","implementation":"native-html","use":["단일 선택의 용도: 서로 배타적인 선택지를 한눈에 비교. 제품 맥락과 상태 조건을 확인해 적용합니다.","같은 name의 radio를 fieldset·legend로 묶고 방향키 기본 동작을 유지합니다."],"avoid":["필수 조건·오류·제약을 placeholder에만 숨기지 않습니다.","이 예제의 브라우저 로컬 상태를 서버 저장·인증·실제 알림으로 해석하지 않습니다."],"accessibility":["이름·현재 값·설명을 해당 HTML 요소와 함께 제공합니다.","포커스 외곽선과 텍스트 대비를 Light/Dark에서 함께 유지합니다.","작은 화면·긴 한글·사용자 글자 배율에서 콘텐츠가 사라지지 않는지 확인합니다."],"density":{"compact":"관리자 반복 입력에만 사용합니다. 도움말·오류와 실제 클릭 영역은 유지합니다.","normal":"기본 권장 밀도입니다. 읽기 순서와 레이블·컨트롤·피드백 그룹을 유지합니다.","relaxed":"처음 작성하는 폼·긴 안내에 권장합니다. 필드 그룹의 간격을 늘립니다."},"states":[{"name":"기본","condition":"예제가 처음 표시됨","response":"서로 배타적인 선택지를 한눈에 비교."},{"name":"포커스·탐색","condition":"사용자가 입력 또는 선택을 시작함","response":"기본 focus 표시와 DOM 읽기 순서를 유지합니다."},{"name":"내용 변화","condition":"값이나 선택이 변경됨","response":"같은 name의 radio를 fieldset·legend로 묶고 방향키 기본 동작을 유지합니다."},{"name":"작은 화면·확대","condition":"260px 영역 또는 사용자 글자 배율 적용","response":"내용을 보존하며 줄바꿈하고 필요한 영역만 내부 스크롤합니다."}],"recovery":{"loading":"진행 중임을 알리고 중복 요청을 차단합니다. 기존 데이터가 있으면 갱신 중에도 유지합니다.","empty":"초기 빈 입력은 오류로 표시하지 않습니다. 필수 조건은 제출 전에도 안내합니다.","filtered":"검색 결과가 없으면 데이터 없음과 구분하고 필터 초기화 행동을 제공합니다.","error":"입력값을 보존하고 오류 설명을 해당 필드와 연결합니다."},"tokenMapping":[{"path":"klic.component.input.size.default.height","purpose":"단일 선택의 주요 역할 값","cssVariable":"--klic-component-input-size-default-height","cssProperty":"min-height","value":"2rem","chain":["klic.component.input.size.default.height","klic.semantic.size.input.default","klic.brand.dimension.control.height.md","klic.primitive.dimension.step.8"],"tailwind":"min-h-[var(--klic-component-input-size-default-height)]"},{"path":"klic.component.card.background.default","purpose":"배경 표면","cssVariable":"--klic-component-card-background-default","cssProperty":"background-color","value":"#ffffff","chain":["klic.component.card.background.default","klic.semantic.color.panel","klic.brand.color.panel","klic.primitive.color.theme.klic.light.panel"],"tailwind":"bg-[var(--klic-component-card-background-default)]"},{"path":"klic.semantic.color.accent","purpose":"선택과 행동의 강조","cssVariable":"--klic-semantic-color-accent","cssProperty":"color","value":"#245fc2","chain":["klic.semantic.color.accent","klic.brand.color.accent","klic.primitive.color.palette.klic.accent"],"tailwind":"text-[var(--klic-semantic-color-accent)]"}],"limitations":["이 사이트에서 직접 작성한 native HTML·CSS·DOM 예제입니다. 같은 name의 radio를 fieldset·legend로 묶고 방향키 기본 동작을 유지합니다. 외부 패키지의 props 또는 서버 연동을 제공한다고 선언하지 않습니다."],"checklist":["같은 name의 radio를 fieldset·legend로 묶고 방향키 기본 동작을 유지합니다.","실행 예제를 확인하고 업무 조합·작은 영역 적용 안내를 제품 맥락에 맞게 검토합니다.","Light/Dark와 글자 크기 150%에서 레이블·내용·포커스를 확인합니다."],"exports":{"design":"/design/component/radio-group/DESIGN.md","contract":"/design/component/radio-group/contract.json","types":"/design/klic-design.d.ts"},"prompt":"KLIC Radio Group (component/radio-group)을 사용해 화면을 구성하세요. KLIC은 7개 디자인 디멘션과 4계층 토큰을 공통 기반으로 씁니다. 적용 기준은 다릅니다. 컴포넌트는 개별 조작 요소, 블록은 업무 흐름, 모션은 시간에 따른 전환을 다룹니다. 공개 npm: klic-design@0.0.3. 소스 후보 klic-design@0.0.4는 미발행이며 klic-design@0.0.3가 현재 발행본입니다. 먼저 https://design.klic.co.kr/api/v1/design-system.json의 공통 기준(revision 6f9c8f5e4d7c767f79a7db999670fb4d0936e07acb1b472fe162a7a9ade60c97), DESIGN.md와 실제 소스를 읽고, 구현 책임·프리셋 허용 범위·충돌 해결 순서를 적용하세요. 사용 원칙·금지 사항·접근성·밀도·빈 상태·오류 처리를 준수하세요. 토큰은 klic. 4계층 참조를 보존하고 없는 API나 실제 저장 기능을 만들어내지 마세요."}