atomsystem 0.2.1 → 0.4.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +1 -1
- package/components/ui/Accordion.tsx +49 -0
- package/components/ui/Avatar.tsx +32 -0
- package/components/ui/Breadcrumb.tsx +40 -0
- package/components/ui/Calendar.tsx +74 -0
- package/components/ui/Pagination.tsx +49 -0
- package/components/ui/Progress.tsx +32 -0
- package/components/ui/Radio.tsx +44 -0
- package/components/ui/Select.tsx +72 -0
- package/components/ui/Separator.tsx +29 -0
- package/components/ui/Skeleton.tsx +25 -0
- package/components/ui/Slider.tsx +33 -0
- package/components/ui/Textarea.tsx +25 -0
- package/components/ui/Tooltip.tsx +29 -0
- package/components/ui/index.ts +13 -0
- package/css/atom-ui.css +483 -0
- package/dist/cli.cjs +1 -1
- package/dist/cli.cjs.map +1 -1
- package/dist/cli.js +1 -1
- package/dist/cli.js.map +1 -1
- package/dist/index.cjs +779 -1
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.js +779 -1
- package/dist/index.js.map +1 -1
- package/package.json +1 -1
- package/tokens/token.json +1 -1
- package/tokens/tokens.json +1 -1
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../lib/data/tokens.ts","../lib/data/components.ts","../lib/data/patterns.ts","../lib/data/awesomeThemes.ts","../lib/data/themeEditorDefaults.ts","../lib/services/themeEngine.ts","../lib/utils.ts","../src/index.ts"],"names":["r","g","b"],"mappings":"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","file":"index.js","sourcesContent":["export type TokenCategory = 'color' | 'typography' | 'radius' | 'spacing' | 'shadow';\n\nexport interface BrandPreset {\n id: string;\n name: string;\n brandColor: string;\n radius: string;\n description: string;\n}\n\nexport interface ColorToken {\n name: string;\n variable: string;\n value: string;\n description: string;\n category: 'brand' | 'surface' | 'text' | 'border' | 'status';\n}\n\nexport interface TypographyToken {\n name: string;\n variable: string;\n fontSize: string;\n lineHeight: string;\n weight: string;\n sample: string;\n}\n\nexport interface RadiusToken {\n name: string;\n variable: string;\n value: string;\n description: string;\n}\n\nexport interface SpacingToken {\n name: string;\n variable: string;\n value: string;\n px: number;\n}\n\nexport interface ShadowToken {\n name: string;\n variable: string;\n value: string;\n description: string;\n}\n\nexport const BRAND_PRESETS: BrandPreset[] = [\n {\n id: 'toss',\n name: '토스 스타일 (Toss)',\n brandColor: '#3182f6',\n radius: '16px',\n description: 'Vivid Blue, 16px 볼드 라운딩, 시원한 여백과 극도의 미니멀리즘'\n },\n {\n id: 'daangn',\n name: '당근 스타일 (Daangn)',\n brandColor: '#ff6f0f',\n radius: '12px',\n description: 'Warm Orange, 12px 소프트 라운딩, 친근하고 따뜻한 커뮤니티 감성'\n },\n {\n id: 'hyper-violet',\n name: '모던 바이올렛 (Violet Tech)',\n brandColor: '#7c3aed',\n radius: '8px',\n description: '세련된 보라색 테크 감성, 8px 샤프 라운딩, 개발자/B2B 최적화'\n },\n {\n id: 'forest-emerald',\n name: '에코 에메랄드 (Emerald)',\n brandColor: '#10b981',\n radius: '14px',\n description: '자연스럽고 편안한 딥 그린, 핀테크 자산 및 웰니스 서비스용'\n }\n];\n\nexport const BASE_COLOR_TOKENS: ColorToken[] = [\n // Brand\n {\n name: 'Primary Accent',\n variable: '--atom-color-primary',\n value: '#3182f6',\n description: '주요 액션 버튼, 활성 탭, 브랜드 강조 영역의 핵심 색상',\n category: 'brand'\n },\n {\n name: 'Primary Hover',\n variable: '--atom-color-primary-hover',\n value: '#1b64da',\n description: 'Primary 컴포넌트에 마우스를 올렸을 때 적용되는 딥 톤',\n category: 'brand'\n },\n {\n name: 'Primary Subtle / Light',\n variable: '--atom-color-primary-subtle',\n value: '#e8f3ff',\n description: '배지 배경, 활성 리스트 아이템, 선택 하이라이트 배경',\n category: 'brand'\n },\n // Surface & Background\n {\n name: 'Background Primary',\n variable: '--atom-bg-primary',\n value: '#ffffff',\n description: '웹 전체 페이지의 기본 캔버스 배경 (다크모드: #090a0f)',\n category: 'surface'\n },\n {\n name: 'Background Surface / Card',\n variable: '--atom-bg-surface',\n value: '#f8f9fa',\n description: '카드, 모달 다이얼로그, 패널, 드롭다운 메뉴의 바탕색',\n category: 'surface'\n },\n {\n name: 'Background Muted',\n variable: '--atom-bg-muted',\n value: '#f1f3f5',\n description: '비활성화된 폼 필드, 태그 칩, 보조 영역 배경',\n category: 'surface'\n },\n // Text\n {\n name: 'Text Primary',\n variable: '--atom-text-primary',\n value: '#191f28',\n description: '가장 높은 명도 대비를 갖는 핵심 본문 및 헤드라인 텍스트',\n category: 'text'\n },\n {\n name: 'Text Secondary',\n variable: '--atom-text-secondary',\n value: '#8b95a1',\n description: '설명문, 부가 라벨, 플레이스홀더, 서브 텍스트',\n category: 'text'\n },\n {\n name: 'Text Muted',\n variable: '--atom-text-muted',\n value: '#b0b8c1',\n description: '타임스탬프, 비활성화된 라벨, 장식성 힌트 텍스트',\n category: 'text'\n },\n // Border\n {\n name: 'Border Subtle',\n variable: '--atom-border-subtle',\n value: '#f2f4f6',\n description: '카드 구분선, 리스트 경계선 등 부드러운 분리선',\n category: 'border'\n },\n {\n name: 'Border Strong',\n variable: '--atom-border-strong',\n value: '#e5e8eb',\n description: '인풋 필드 외곽선, 명확한 아웃라인 버튼, 모달 경계선',\n category: 'border'\n },\n // Status\n {\n name: 'Status Success',\n variable: '--atom-status-success',\n value: '#10b981',\n description: '성공 완료 알림, 온라인 상태, 송금 완료 상태',\n category: 'status'\n },\n {\n name: 'Status Danger',\n variable: '--atom-status-danger',\n value: '#f43f5e',\n description: '폼 유효성 에러, 경고 메시지, 삭제 등 파괴적 액션',\n category: 'status'\n },\n {\n name: 'Status Warning',\n variable: '--atom-status-warning',\n value: '#f59e0b',\n description: '주의 알림, 대기 중인 상태, 결제 보류',\n category: 'status'\n }\n];\n\nexport const TYPOGRAPHY_TOKENS: TypographyToken[] = [\n {\n name: 'Display / Hero Title',\n variable: '--atom-font-display',\n fontSize: '36px (2.25rem)',\n lineHeight: '1.25',\n weight: '800 (ExtraBold)',\n sample: '디자이너의 피그마 해방, 말로 디자인하는 시대'\n },\n {\n name: 'Title 1 (Page Title)',\n variable: '--atom-font-title-1',\n fontSize: '28px (1.75rem)',\n lineHeight: '1.3',\n weight: '700 (Bold)',\n sample: '원클릭으로 끝내는 디자인 토큰 시스템'\n },\n {\n name: 'Title 2 (Section Title)',\n variable: '--atom-font-title-2',\n fontSize: '20px (1.25rem)',\n lineHeight: '1.35',\n weight: '700 (Bold)',\n sample: '프레임워크 무관한 표준 CSS 변수 체계'\n },\n {\n name: 'Title 3 (Card Title)',\n variable: '--atom-font-title-3',\n fontSize: '16px (1.0rem)',\n lineHeight: '1.4',\n weight: '600 (SemiBold)',\n sample: '계좌 송금 및 실시간 인증 패턴'\n },\n {\n name: 'Body 1 (Regular Body)',\n variable: '--atom-font-body-1',\n fontSize: '14px (0.875rem)',\n lineHeight: '1.5',\n weight: '400 (Regular)',\n sample: 'React, Vue, 바닐라 HTML 어디서나 복사 한 번으로 즉시 렌더링됩니다.'\n },\n {\n name: 'Body 2 / Caption',\n variable: '--atom-font-body-2',\n fontSize: '12px (0.75rem)',\n lineHeight: '1.5',\n weight: '500 (Medium)',\n sample: 'W3C DTCG 호환 tokens.json 기반 스타일 딕셔너리 컴파일'\n },\n {\n name: 'Mono Code',\n variable: '--atom-font-mono',\n fontSize: '11px (0.6875rem)',\n lineHeight: '1.6',\n weight: '500 (Medium)',\n sample: 'npx atomsystem init --preset toss'\n }\n];\n\nexport const RADIUS_TOKENS: RadiusToken[] = [\n {\n name: 'None (직각)',\n variable: '--atom-radius-none',\n value: '0px',\n description: '단단한 테크니컬 대시보드 및 플랫 디자인'\n },\n {\n name: 'Small (샤프)',\n variable: '--atom-radius-sm',\n value: '6px',\n description: '태그 배지, 미니 인풋, 정밀 데이터 테이블 컨트롤'\n },\n {\n name: 'Medium (소프트)',\n variable: '--atom-radius-md',\n value: '10px',\n description: '일반적인 버튼, 인풋 필드, 툴팁'\n },\n {\n name: 'Large (볼드 - 토스/당근 기본)',\n variable: '--atom-radius-lg',\n value: '16px',\n description: '카드, 대화상자 모달, 주요 모바일 시트'\n },\n {\n name: 'Extra Large (슈퍼 라운드)',\n variable: '--atom-radius-xl',\n value: '24px',\n description: '바텀시트 최상단 모서리, 히어로 배너 카드'\n },\n {\n name: 'Pill / Full (캡슐)',\n variable: '--atom-radius-full',\n value: '9999px',\n description: '필터 칩, 플로팅 액션 버튼(FAB), 원형 아바타'\n }\n];\n\nexport const SPACING_TOKENS: SpacingToken[] = [\n { name: 'Space 1 (Extra Small)', variable: '--atom-space-1', value: '4px', px: 4 },\n { name: 'Space 2 (Small)', variable: '--atom-space-2', value: '8px', px: 8 },\n { name: 'Space 3 (Compact)', variable: '--atom-space-3', value: '12px', px: 12 },\n { name: 'Space 4 (Base)', variable: '--atom-space-4', value: '16px', px: 16 },\n { name: 'Space 5 (Medium)', variable: '--atom-space-5', value: '20px', px: 20 },\n { name: 'Space 6 (Large)', variable: '--atom-space-6', value: '24px', px: 24 },\n { name: 'Space 8 (Section)', variable: '--atom-space-8', value: '32px', px: 32 },\n { name: 'Space 12 (Hero)', variable: '--atom-space-12', value: '48px', px: 48 },\n { name: 'Space 16 (Page Gap)', variable: '--atom-space-16', value: '64px', px: 64 }\n];\n\nexport const SHADOW_TOKENS: ShadowToken[] = [\n {\n name: 'Elevation 1 (Subtle)',\n variable: '--atom-shadow-sm',\n value: '0 1px 2px 0 rgb(0 0 0 / 0.05)',\n description: '기본 카드, 인풋 포커스 상태, 미세한 구분'\n },\n {\n name: 'Elevation 2 (Medium)',\n variable: '--atom-shadow-md',\n value: '0 4px 6px -1px rgb(0 0 0 / 0.1)',\n description: '호버된 카드, 드롭다운 메뉴, 팝오버 툴팁'\n },\n {\n name: 'Elevation 3 (Floating)',\n variable: '--atom-shadow-lg',\n value: '0 10px 15px -3px rgb(0 0 0 / 0.1)',\n description: '플로팅 내비게이션 바, 토스트 알림 메시지'\n },\n {\n name: 'Elevation 4 (Modal / Overlay)',\n variable: '--atom-shadow-xl',\n value: '0 20px 25px -5px rgb(0 0 0 / 0.15)',\n description: '화면 최상단 레이어의 모달 다이얼로그, 바텀시트'\n }\n];\n","export type ComponentCategory = 'all' | 'form' | 'feedback' | 'navigation' | 'data';\n\nexport interface PropItem {\n name: string;\n type: string;\n defaultValue: string;\n description: string;\n}\n\nexport interface DosAndDont {\n do: string;\n dont: string;\n}\n\nexport interface GalleryComponent {\n id: string;\n name: string;\n category: ComponentCategory;\n source: string;\n description: string;\n htmlSnippet: string;\n reactSnippet: string;\n vueSnippet?: string;\n callout?: {\n type: 'note' | 'tip' | 'warning';\n title: string;\n text: string;\n };\n propsSpec?: PropItem[];\n useCases: string[];\n usagePatterns: string[];\n dosAndDonts: DosAndDont[];\n relatedPatternIds: string[];\n}\n\nexport const GALLERY_COMPONENTS: GalleryComponent[] = [\n {\n id: 'button',\n name: '버튼 (Button Variants)',\n category: 'form',\n source: 'shadcn + bootstrap',\n description: 'Primary, Secondary, Outline, Ghost, Destructive, Loading 등 상태별 버튼 풀세트',\n callout: {\n type: 'tip',\n title: '접근성(A11y) 가이드',\n text: '비활성화(Disabled) 상태일 때는 aria-disabled=\"true\"와 함께 tabIndex={-1}을 지정하여 키보드 탐색 포커스를 방지하세요.'\n },\n useCases: [\n '폼 제출, 송금, 회원가입 등 한 화면의 가장 핵심적인 단일 전환 행동 (Primary CTA)',\n '다이얼로그 모달 내 취소, 이전 단계 등 보조 액션 (Secondary / Outline)',\n '회원 탈퇴, 데이터 영구 삭제, 주문 취소 등 파괴적 액션 (Destructive)',\n '비동기 API 요청 통신 중 중복 클릭을 방지하고 상태를 전달하는 로딩 스피너 (Loading)'\n ],\n usagePatterns: [\n '화면(또는 뷰포트)당 단 1개의 Primary 버튼만 배치하여 사용자의 시각적 위계와 인지 과부하를 방지합니다.',\n '확인/취소 버튼 그룹 배치 시 엄지손가락 접근성을 고려하여 우측(또는 모바일 최하단)에 주 액션을 배치합니다.',\n '모바일 터치 타깃 영역은 최소 44x44px 이상을 보장하여 오터치를 예방합니다.'\n ],\n dosAndDonts: [\n {\n do: '\"저장하기\", \"계좌로 송금하기\", \"장바구니 담기\"와 같이 명확한 동사형 라벨을 사용합니다.',\n dont: '\"확인\", \"클릭\", \"네\"와 같이 사용자가 버튼 클릭 후 일어날 결과를 예측하기 어려운 모호한 라벨을 쓰지 마세요.'\n },\n {\n do: '로딩 중일 때는 버튼 너비가 줄어들거나 텍스트가 깜빡이지 않도록 인라인 스피너를 유지합니다.',\n dont: '로딩 상태인데도 사용자가 버튼을 2번 연속 클릭할 수 있게 방치하지 마세요.'\n }\n ],\n relatedPatternIds: ['fintech-transfer', 'ecommerce-checkout', 'saas-dashboard', 'developer-docs'],\n propsSpec: [\n { name: 'variant', type: \"'primary' | 'secondary' | 'outline' | 'destructive' | 'ghost'\", defaultValue: \"'primary'\", description: '버튼의 시각적 강조 스타일' },\n { name: 'size', type: \"'sm' | 'md' | 'lg'\", defaultValue: \"'md'\", description: '버튼 패딩 및 글자 크기' },\n { name: 'loading', type: 'boolean', defaultValue: 'false', description: '로딩 스피너 활성화 및 상호작용 차단' },\n { name: 'disabled', type: 'boolean', defaultValue: 'false', description: '클릭 차단 및 불투명도 축소' }\n ],\n htmlSnippet: `<button class=\"atom-btn atom-btn-primary\">Primary Action</button>\n<button class=\"atom-btn atom-btn-secondary\">Secondary</button>\n<button class=\"atom-btn atom-btn-outline\">Outline</button>\n<button class=\"atom-btn atom-btn-destructive\">Delete</button>`,\n reactSnippet: `import { Button } from '@/components/ui/button';\n\nexport function ButtonDemo() {\n return (\n <div className=\"flex gap-2\">\n <Button variant=\"primary\">저장하기</Button>\n <Button variant=\"outline\">취소</Button>\n <Button variant=\"destructive\">영구 삭제</Button>\n <Button loading>처리 중...</Button>\n </div>\n );\n}`,\n vueSnippet: `<template>\n <div class=\"flex gap-2\">\n <AtomButton variant=\"primary\">저장하기</AtomButton>\n <AtomButton variant=\"outline\">취소</AtomButton>\n <AtomButton :loading=\"isLoading\">처리 중...</AtomButton>\n </div>\n</template>`\n },\n {\n id: 'input',\n name: '인풋 필드 (Input with Status)',\n category: 'form',\n source: 'shadcn + bootstrap',\n description: '플로팅 라벨, 필수값 인디케이터, 유효성 통과 및 에러 피드백 인풋',\n callout: {\n type: 'note',\n title: '폼 유효성 검사 규칙',\n text: '에러 발생 시 aria-invalid=\"true\"와 aria-describedby=\"error-id\"를 연결하여 스크린 리더에 오류 메시지를 전달합니다.'\n },\n useCases: [\n '이메일, 비밀번호, 성명, 주소 등 표준 텍스트 정보 수집',\n '금액, 전화번호, 6자리 SMS OTP 인증 등 숫자 전용 입력',\n '실시간 자동완성 및 태그 칩이 연동되는 검색 입력창',\n '다국어 텍스트, 장문의 문의사항 입력 텍스트에어리어'\n ],\n usagePatterns: [\n '플레이스홀더(Placeholder)는 예시를 보여주는 용도로만 쓰고 라벨(Label)을 절대 대체하지 않습니다.',\n '오류 발생 시 테두리 색상 변화뿐만 아니라 인풋 하단에 명확한 에러 사유 텍스트를 반드시 함께 제공합니다.',\n '모바일 환경에서는 type=\"email\", inputmode=\"numeric\" 등을 명시하여 적절한 가상 키보드가 뜨도록 돕습니다.'\n ],\n dosAndDonts: [\n {\n do: '오타를 쉽게 정정할 수 있도록 우측에 원클릭 지우기(X) 클리어 버튼을 배치합니다.',\n dont: '사용자가 타이핑하는 글자 수마다 매번 화면을 깜빡거리며 유효성 경고를 띄우지 마세요(디바운스 필요).'\n }\n ],\n relatedPatternIds: ['kyc-verification', 'fintech-transfer', 'search-empty', 'blog-editor'],\n propsSpec: [\n { name: 'label', type: 'string', defaultValue: 'undefined', description: '인풋 상단에 표시되는 텍스트 라벨' },\n { name: 'placeholder', type: 'string', defaultValue: \"''\", description: '입력 가이드 플레이스홀더' },\n { name: 'error', type: 'string', defaultValue: 'undefined', description: '에러 메시지 및 레드 테두리 상태 표시' },\n { name: 'clearable', type: 'boolean', defaultValue: 'true', description: '텍스트 원클릭 클리어(X) 버튼 노출' }\n ],\n htmlSnippet: `<div class=\"atom-form-group\">\n <label class=\"atom-label\">이메일 주소</label>\n <input type=\"email\" class=\"atom-input\" placeholder=\"name@company.com\" />\n <span class=\"atom-error-text\">유효한 이메일을 입력하세요.</span>\n</div>`,\n reactSnippet: `import { Input } from '@/components/ui/input';\n\nexport function InputDemo() {\n return (\n <Input\n label=\"이메일 주소\"\n type=\"email\"\n placeholder=\"name@company.com\"\n error=\"유효한 이메일 형식을 입력하세요.\"\n clearable\n />\n );\n}`,\n vueSnippet: `<template>\n <AtomInput\n v-model=\"email\"\n label=\"이메일 주소\"\n placeholder=\"name@company.com\"\n :error=\"emailError\"\n />\n</template>`\n },\n {\n id: 'selection',\n name: '스위치 & 체크박스 (Switch & Checkbox)',\n category: 'form',\n source: 'shadcn + bootstrap',\n description: '부트스트랩 스위치 토글, shadcn 스타일 체크박스 및 라디오 그룹',\n callout: {\n type: 'tip',\n title: '즉각 반응 피드백',\n text: '스위치 토글은 별도의 [저장] 버튼 없이도 상태가 즉시 저장되는 환경 설정 UX에 권장됩니다.'\n },\n useCases: [\n '알림 On/Off, 다크모드, 생체인증 활성화 등 즉시 반영되는 환경설정 (Switch)',\n '회원가입 약관 필수/선택 동의 및 전체 동의 토글 (Checkbox)',\n '쇼핑몰 장바구니 상품 전체 선택 및 개별 선택',\n '단일 옵션 중 반드시 하나만 골라야 하는 결제 수단/배송지 선택 (Radio)'\n ],\n usagePatterns: [\n '스위치는 누르는 즉시 시스템에 반영되는 설정에 쓰고, 체크박스는 폼 전송 버튼을 누를 때까지 보류되는 선택에 씁니다.',\n '터치 영역을 작은 체크박스 네모에만 한정하지 않고 텍스트 라벨 전체로 확장하여 클릭 편의성을 높입니다.'\n ],\n dosAndDonts: [\n {\n do: '전체 동의 체크박스 선택 시 하위 자식 체크박스들이 일괄 동기화되도록 구현합니다.',\n dont: '마케팅 선택 동의를 필수 동의와 묶어 전체 동의를 강제하지 마세요.'\n }\n ],\n relatedPatternIds: ['kyc-verification', 'ecommerce-checkout', 'onboarding-wizard'],\n propsSpec: [\n { name: 'checked', type: 'boolean', defaultValue: 'false', description: '활성화 선택 여부' },\n { name: 'onChange', type: '(checked: boolean) => void', defaultValue: 'undefined', description: '상태 변경 이벤트 콜백' },\n { name: 'label', type: 'string', defaultValue: 'undefined', description: '인라인 라벨 텍스트' }\n ],\n htmlSnippet: `<label class=\"atom-switch\">\n <input type=\"checkbox\" checked />\n <span class=\"atom-slider\"></span>\n</label>`,\n reactSnippet: `import { Switch, Checkbox } from '@/components/ui/selection';\n\nexport function SelectionDemo() {\n return (\n <div className=\"flex flex-col gap-3\">\n <Switch checked={isEnabled} onChange={setIsEnabled} label=\"야간 푸시 알림 수신\" />\n <Checkbox checked={isAgreed} onChange={setIsAgreed} label=\"이용약관 전체 동의\" />\n </div>\n );\n}`,\n vueSnippet: `<template>\n <AtomSwitch v-model=\"notifications\" label=\"알림 수신\" />\n <AtomCheckbox v-model=\"termsAll\" label=\"약관 전체 동의\" />\n</template>`\n },\n {\n id: 'dialog',\n name: '모달 다이얼로그 (Modal / Dialog)',\n category: 'feedback',\n source: 'shadcn + bootstrap',\n description: '접근성(A11y aria-modal, ESC 닫기)을 보장하는 중앙 팝업 다이얼로그',\n callout: {\n type: 'warning',\n title: '포커스 트랩(Focus Trap)',\n text: '모달이 열렸을 때 백드롭 바깥의 다른 요소로 Tab 포커스가 탈출하지 않도록 포커스 트랩을 필수 적용하세요.'\n },\n useCases: [\n '데이터 영구 삭제, 서비스 탈퇴 등 되돌릴 수 없는 행동 직전 2단계 확인',\n '송금 최종 단계에서 수취인 이름, 계좌, 금액을 최종 확인하는 다이얼로그',\n '신분증 촬영 안내, 약관 전문 읽기 팝업',\n '세션 만료 경고 및 로그인 연장 알림'\n ],\n usagePatterns: [\n 'ESC 키 입력 또는 모달 바깥 백드롭 터치 시 즉각 모달이 닫히도록 닫기 인터랙션을 보장합니다.',\n '모달 오픈 시 백그라운드 본문 스크롤(Scroll Lock)을 잠가 이중 스크롤 충돌을 방지합니다.'\n ],\n dosAndDonts: [\n {\n do: '모달이 닫히면 이전에 모달을 열었던 트리거 버튼으로 포커스를 복귀시킵니다.',\n dont: '확인 모달 위에 또 다른 모달을 2중, 3중으로 겹쳐 띄우지 마세요.'\n }\n ],\n relatedPatternIds: ['fintech-transfer', 'blog-editor', 'flight-booking'],\n propsSpec: [\n { name: 'open', type: 'boolean', defaultValue: 'false', description: '다이얼로그 노출 여부' },\n { name: 'onClose', type: '() => void', defaultValue: 'undefined', description: 'ESC 또는 바깥 클릭 시 닫기 콜백' },\n { name: 'title', type: 'string', defaultValue: \"''\", description: '다이얼로그 헤더 제목' }\n ],\n htmlSnippet: `<div class=\"atom-modal-backdrop\">\n <div class=\"atom-modal\" role=\"dialog\" aria-modal=\"true\">\n <h3 class=\"atom-modal-title\">정말 삭제하시겠습니까?</h3>\n <p class=\"atom-modal-body\">삭제된 데이터는 복구할 수 없습니다.</p>\n <div class=\"atom-modal-actions\">\n <button class=\"atom-btn atom-btn-outline\">취소</button>\n <button class=\"atom-btn atom-btn-destructive\">삭제</button>\n </div>\n </div>\n</div>`,\n reactSnippet: `import { Dialog, DialogContent, DialogHeader, DialogTitle, DialogFooter } from '@/components/ui/dialog';\nimport { Button } from '@/components/ui/button';\n\nexport function ModalDemo({ isOpen, onClose }) {\n return (\n <Dialog open={isOpen} onOpenChange={onClose}>\n <DialogContent>\n <DialogHeader>\n <DialogTitle>송금 정보를 확인해주세요</DialogTitle>\n </DialogHeader>\n <p className=\"text-sm text-neutral-500\">김토스님에게 500,000원을 송금합니다.</p>\n <DialogFooter>\n <Button variant=\"outline\" onClick={onClose}>취소</Button>\n <Button variant=\"primary\" onClick={onClose}>송금 실행</Button>\n </DialogFooter>\n </DialogContent>\n </Dialog>\n );\n}`,\n vueSnippet: `<template>\n <AtomDialog v-model=\"isOpen\" title=\"확인\">\n <p>진행하시겠습니까?</p>\n </AtomDialog>\n</template>`\n },\n {\n id: 'sheet',\n name: '바텀시트 & 사이드 드로어 (Sheet / Drawer)',\n category: 'feedback',\n source: 'shadcn + bootstrap',\n description: '모바일 하단 바텀시트 및 데스크톱 우측 슬라이드 패널',\n callout: {\n type: 'note',\n title: '뷰포트 최적화',\n text: '모바일 뷰포트(768px 미만)에서는 bottom 바텀시트로, 데스크톱에서는 right 슬라이드 드로어로 자동 적응됩니다.'\n },\n useCases: [\n '지도 앱에서 특정 핀을 탭했을 때 하단에서 올라오는 매장 상세 정보 (네이버/카카오 지도 스타일)',\n '쇼핑몰 복합 필터(가격대, 브랜드, 배송 조건) 설정 드로어',\n '모바일 햄버거 메뉴 클릭 시 우측에서 슬라이드되는 글로벌 내비게이션',\n 'SNS 피드 댓글 목록 및 작성 시트'\n ],\n usagePatterns: [\n '하단 시트 상단에 시각적 핸들러 바(Handle Bar)를 배치하여 드래그 가능한 인터페이스임을 암시합니다.',\n '1단(요약 120px) ➔ 2단(반 화면 50%) ➔ 3단(전체 화면 90%) 스냅 포인트를 제공합니다.'\n ],\n dosAndDonts: [\n {\n do: '시트를 아래로 쓸어내리는(Swipe Down) 제스처로 쉽게 닫을 수 있게 합니다.',\n dont: '지도 화면 전체를 완전히 덮어버려 사용자가 현재 위치 맥락을 잃지 않게 하세요.'\n }\n ],\n relatedPatternIds: ['map-location', 'ecommerce-checkout'],\n propsSpec: [\n { name: 'open', type: 'boolean', defaultValue: 'false', description: '시트 오픈 상태' },\n { name: 'side', type: \"'bottom' | 'right' | 'left' | 'top'\", defaultValue: \"'bottom'\", description: '슬라이드 인 진입 방향' }\n ],\n htmlSnippet: `<div class=\"atom-sheet atom-sheet-bottom\">\n <div class=\"atom-sheet-handle\"></div>\n <div class=\"atom-sheet-content\">\n <h3>블루보틀 성수점</h3>\n <p>영업 중 · 21:00 마감</p>\n </div>\n</div>`,\n reactSnippet: `import { Sheet, SheetContent, SheetHeader, SheetTitle } from '@/components/ui/sheet';\n\nexport function SheetDemo({ isOpen, onClose }) {\n return (\n <Sheet open={isOpen} onOpenChange={onClose}>\n <SheetContent side=\"bottom\">\n <SheetHeader>\n <SheetTitle>상세 필터 옵션</SheetTitle>\n </SheetHeader>\n <div className=\"py-4\">옵션 항목들...</div>\n </SheetContent>\n </Sheet>\n );\n}`,\n vueSnippet: `<template>\n <AtomSheet v-model=\"isSheetOpen\" side=\"bottom\">\n <div>시트 내용</div>\n </AtomSheet>\n</template>`\n },\n {\n id: 'alert',\n name: '알림 콜아웃 (Alert Callout)',\n category: 'feedback',\n source: 'shadcn + bootstrap',\n description: '부트스트랩 alert-dismissible 및 shadcn Callout 정보/성공/에러 알림',\n callout: {\n type: 'tip',\n title: '스크린 리더 알림',\n text: '동적으로 추가되는 중요한 경고문구에는 role=\"alert\" 또는 aria-live=\"assertive\"를 선언하세요.'\n },\n useCases: [\n '새 버전 기능 업데이트 및 시스템 정기 점검 공지',\n '폼 전송 후 발생한 서버 에러 목록 일괄 공지',\n '회원가입 완료 및 이메일 인증 링크 전송 피드백',\n '결제 실패 또는 일시적 네트워크 끊김 경고'\n ],\n usagePatterns: [\n '메시지 성격에 맞는 4대 시각 테마(Info, Success, Warning, Danger)를 엄격히 준수합니다.',\n '중요한 작업 플로우를 완전히 가로막는 모달 대신, 인라인으로 흐름을 방해하지 않는 알림에 사용합니다.'\n ],\n dosAndDonts: [\n {\n do: '닫기(X) 버튼을 제공하여 사용자가 확인한 메시지를 직접 숨길 수 있게 합니다.',\n dont: '페이지 접속 시 화면의 절반을 차지하는 거대한 경고 배너로 본문을 가리지 마세요.'\n }\n ],\n relatedPatternIds: ['chat-support', 'file-uploader', 'developer-docs'],\n propsSpec: [\n { name: 'variant', type: \"'info' | 'success' | 'warning' | 'danger'\", defaultValue: \"'info'\", description: '알림 테마 및 아이콘 색상' },\n { name: 'dismissible', type: 'boolean', defaultValue: 'true', description: '닫기(X) 버튼 표시 여부' }\n ],\n htmlSnippet: `<div class=\"atom-alert atom-alert-info\">\n <span class=\"atom-icon\">ℹ️</span>\n <div>새로운 토큰 시스템이 적용되었습니다.</div>\n</div>`,\n reactSnippet: `import { Alert, AlertTitle, AlertDescription } from '@/components/ui/alert';\n\nexport function AlertDemo() {\n return (\n <Alert variant=\"info\" dismissible>\n <AlertTitle>알림 안내</AlertTitle>\n <AlertDescription>새로운 업데이트 버전이 배포되었습니다.</AlertDescription>\n </Alert>\n );\n}`,\n vueSnippet: `<template>\n <AtomAlert variant=\"info\" dismissible>\n 업데이트가 완료되었습니다.\n </AtomAlert>\n</template>`\n },\n {\n id: 'tabs',\n name: '세그먼트 탭스 (Segment Tabs)',\n category: 'navigation',\n source: 'shadcn + bootstrap',\n description: '세그먼트 컨트롤 형태 및 언더라인형 표준 탭 내비게이션',\n callout: {\n type: 'note',\n title: '키보드 네비게이션',\n text: '좌우 방향키(ArrowLeft/ArrowRight)로 탭 간 이동이 가능해야 합니다 (WAI-ARIA Tabs 패턴).'\n },\n useCases: [\n '대시보드 성과 지표 기간 필터 (오늘 / 7일 / 30일 / 90일)',\n '항공권 여정 선택 (왕복 / 편도 / 다구간)',\n '개발 문서 코드 언어 전환 (React / Vue / Vanilla)',\n '계정 관리 서브페이지 (프로필 / 비밀번호 / 결제수단)'\n ],\n usagePatterns: [\n '탭 클릭 시 전체 페이지 리로드가 발생하지 않고 해당 패널 영역만 즉시 교체되어야 합니다.',\n '최대 4~5개 이하의 상호 배타적인 뷰를 전환할 때만 탭을 사용합니다.'\n ],\n dosAndDonts: [\n {\n do: '현재 활성화된 탭에 고대비 배경과 브랜드 하이라이트 인디케이터를 부여합니다.',\n dont: '가로 스크롤이 들어가는 복잡한 다단 탭을 모바일 뷰에 무리하게 넣지 마세요.'\n }\n ],\n relatedPatternIds: ['saas-dashboard', 'flight-booking', 'developer-docs'],\n propsSpec: [\n { name: 'defaultValue', type: 'string', defaultValue: 'undefined', description: '초기 활성화 탭 식별값' },\n { name: 'onChange', type: '(tab: string) => void', defaultValue: 'undefined', description: '탭 전환 시 콜백' }\n ],\n htmlSnippet: `<div class=\"atom-tabs\">\n <button class=\"atom-tab active\">계정 설정</button>\n <button class=\"atom-tab\">보안</button>\n <button class=\"atom-tab\">결제 수단</button>\n</div>`,\n reactSnippet: `import { Tabs, TabsList, TabsTrigger, TabsContent } from '@/components/ui/tabs';\n\nexport function TabsDemo() {\n return (\n <Tabs defaultValue=\"overview\">\n <TabsList>\n <TabsTrigger value=\"overview\">개요</TabsTrigger>\n <TabsTrigger value=\"analytics\">분석</TabsTrigger>\n <TabsTrigger value=\"reports\">보고서</TabsTrigger>\n </TabsList>\n <TabsContent value=\"overview\">개요 내용...</TabsContent>\n </Tabs>\n );\n}`,\n vueSnippet: `<template>\n <AtomTabs v-model=\"currentTab\" :tabs=\"['개요', '분석', '설정']\" />\n</template>`\n },\n {\n id: 'badge',\n name: '상태 배지 (Pill Badge)',\n category: 'data',\n source: 'shadcn + bootstrap',\n description: '상태 식별 펄스 도트 뱃지, 버전 태그, 캡슐형 칩',\n callout: {\n type: 'tip',\n title: '색상 독립성',\n text: '색약자를 위해 단순 색상뿐만 아니라 아이콘이나 텍스트(예: \"활성\", \"오프라인\")를 함께 병기하세요.'\n },\n useCases: [\n '신규 기능 알림 칩 (\"NEW\", \"BETA\")',\n '실시간 웹소켓 서버 연결 상태 (\"온라인\", \"오프라인\")',\n '주문 및 심사 처리 상태 (\"결제완료\", \"배송중\", \"심사대기\")',\n '장바구니 및 알림 벨 안 읽은 메시지 카운트 뱃지'\n ],\n usagePatterns: [\n '상태 변화가 실시간일 경우 초록색 펄스(Pulse) 도트 애니메이션을 함께 조합합니다.',\n '캡슐 형태의 둥근 모서리(--atom-radius-full)와 작은 폰트(--atom-font-body-2)를 유지합니다.'\n ],\n dosAndDonts: [\n {\n do: '성공은 초록, 경고는 주황, 위험은 빨강 등 표준적인 색상 의미를 일관되게 지킵니다.',\n dont: '텍스트가 2줄 이상 넘어가는 긴 문장을 뱃지 안에 욱여넣지 마세요.'\n }\n ],\n relatedPatternIds: ['saas-dashboard', 'chat-support', 'developer-docs'],\n propsSpec: [\n { name: 'variant', type: \"'primary' | 'success' | 'warning' | 'danger' | 'neutral'\", defaultValue: \"'primary'\", description: '배지 색상 스타일' },\n { name: 'pulse', type: 'boolean', defaultValue: 'false', description: '실시간 연결 펄스 애니메이션 도트 표시' }\n ],\n htmlSnippet: `<span class=\"atom-badge atom-badge-primary\">NEW</span>\n<span class=\"atom-badge atom-badge-success\">활성</span>\n<span class=\"atom-badge atom-badge-warning\">대기</span>`,\n reactSnippet: `import { Badge } from '@/components/ui/badge';\n\nexport function BadgeDemo() {\n return (\n <div className=\"flex gap-2\">\n <Badge variant=\"primary\">v1.2.4</Badge>\n <Badge variant=\"success\" pulse>온라인</Badge>\n <Badge variant=\"warning\">심사 대기중</Badge>\n </div>\n );\n}`,\n vueSnippet: `<template>\n <AtomBadge variant=\"success\" pulse>온라인</AtomBadge>\n</template>`\n },\n {\n id: 'card',\n name: '인터랙티브 카드 (Card Surface)',\n category: 'data',\n source: 'shadcn + bootstrap',\n description: '음영 및 테두리 서피스, 호버 리프트 인터랙션이 내장된 범용 카드',\n callout: {\n type: 'note',\n title: '토큰 바인딩',\n text: '카드의 배경색은 --atom-bg-surface, 테두리는 --atom-border-subtle, 그림자는 --atom-shadow-sm 토큰과 연동됩니다.'\n },\n useCases: [\n 'SaaS 비즈니스 4대 핵심 지표(MRR, MAU, Churn) 요약 카드',\n '핀테크 은행 계좌 잔액 및 보유 자산 현황 서피스',\n '이커머스 쇼핑몰 상품 썸네일/가격/평점 갤러리 카드',\n '온보딩 위저드 사용자 직무 선택 라디오 카드'\n ],\n usagePatterns: [\n '클릭 가능한 카드에는 마우스 호버 시 미세하게 위로 떠오르는(-2px) 리프트 효과와 테두리 하이라이트를 부여합니다.',\n '카드 내부 패딩을 16px~24px로 넉넉히 주어 정보의 시각적 호흡을 돕습니다.'\n ],\n dosAndDonts: [\n {\n do: '서로 다른 카테고리의 정보를 별개의 독립된 카드로 시각적으로 그룹핑합니다.',\n dont: '카드 안에 과도하게 복잡한 중첩 카드나 수십 개의 액션을 난잡하게 배치하지 마세요.'\n }\n ],\n relatedPatternIds: ['saas-dashboard', 'onboarding-wizard', 'map-location'],\n propsSpec: [\n { name: 'interactive', type: 'boolean', defaultValue: 'false', description: '호버 리프트 및 클릭 피드백 활성화' }\n ],\n htmlSnippet: `<div class=\"atom-card atom-card-interactive\">\n <h4 class=\"atom-card-title\">계좌 잔액</h4>\n <p class=\"atom-card-body\">1,500,000원</p>\n</div>`,\n reactSnippet: `import { Card, CardHeader, CardTitle, CardContent } from '@/components/ui/card';\n\nexport function CardDemo() {\n return (\n <Card interactive>\n <CardHeader>\n <CardTitle>토스뱅크 자유적금</CardTitle>\n </CardHeader>\n <CardContent>\n <div className=\"text-2xl font-bold\">₩ 12,450,000</div>\n <p className=\"text-xs text-neutral-500\">연 4.5% 최고 금리 적용 중</p>\n </CardContent>\n </Card>\n );\n}`,\n vueSnippet: `<template>\n <AtomCard interactive title=\"보유 자산\">\n <div>₩ 12,450,000</div>\n </AtomCard>\n</template>`\n },\n {\n id: 'table',\n name: '데이터 테이블 (Responsive Table)',\n category: 'data',\n source: 'shadcn + bootstrap',\n description: '부트스트랩 table-hover 및 shadcn 스타일 클린 반응형 데이터 테이블',\n callout: {\n type: 'tip',\n title: '가로 스크롤 보호',\n text: '테이블 외곽에 overflow-x-auto를 래핑하여 모바일 뷰포트에서 페이지 전체가 깨지는 현상을 방지하세요.'\n },\n useCases: [\n '회원 목록, 결제 내역, 주문서 로그 등 다중 컬럼 정형 데이터 조회',\n 'API 엔드포인트 파라미터 및 Props 규격 명세서',\n '항공권 / 호텔 가격 및 옵션 비교표',\n '권한 매트릭스 설정 테이블'\n ],\n usagePatterns: [\n '행(Row)에 마우스오버 시 은은한 배경색 변화를 주어 현재 읽고 있는 행을 시각적으로 고정합니다.',\n '데이터가 0건일 때는 테이블이 텅 빈 채 깨지지 않도록 빈 상태(Empty State) 행을 중앙에 노출합니다.'\n ],\n dosAndDonts: [\n {\n do: '숫자 데이터는 우측 정렬, 텍스트 데이터는 좌측 정렬, 상태 뱃지는 중앙 정렬합니다.',\n dont: '모바일 화면에서 가로 스크롤 안내 없이 오른쪽 컬럼을 잘라먹지 마세요.'\n }\n ],\n relatedPatternIds: ['saas-dashboard', 'developer-docs'],\n propsSpec: [\n { name: 'striped', type: 'boolean', defaultValue: 'false', description: '홀수 행 배경 스트라이프 효과' },\n { name: 'hoverable', type: 'boolean', defaultValue: 'true', description: '마우스 오버 시 행 하이라이트' }\n ],\n htmlSnippet: `<table class=\"atom-table\">\n <thead><tr><th>이름</th><th>상태</th><th>역할</th></tr></thead>\n <tbody><tr><td>김민수</td><td>정상</td><td>관리자</td></tr></tbody>\n</table>`,\n reactSnippet: `import { Table, TableHeader, TableRow, TableHead, TableBody, TableCell } from '@/components/ui/table';\n\nexport function TableDemo() {\n return (\n <Table hoverable>\n <TableHeader>\n <TableRow>\n <TableHead>사용자</TableHead>\n <TableHead>상태</TableHead>\n <TableHead>역할</TableHead>\n </TableRow>\n </TableHeader>\n <TableBody>\n <TableRow>\n <TableCell>김민수</TableCell>\n <TableCell>활성</TableCell>\n <TableCell>소유자</TableCell>\n </TableRow>\n </TableBody>\n </Table>\n );\n}`,\n vueSnippet: `<template>\n <AtomTable :headers=\"['이름', '상태']\" :rows=\"userRows\" hoverable />\n</template>`\n }\n];\n","export interface PatternVariant {\n id: string;\n name: string;\n description: string;\n checklist: string[];\n antiPatterns: string[];\n markdown: string;\n}\n\nexport type PatternPlatform = 'web' | 'mobile';\n\nexport interface PatternItem {\n id: string;\n title: string;\n categoryName: string;\n badge: string;\n platform: PatternPlatform;\n wireframeType: string;\n iconName: 'dashboard' | 'chat' | 'onboarding' | 'uploader' | 'kyc' | 'blog' | 'map' | 'flight' | 'fintech' | 'commerce' | 'search' | 'docs' | 'settings';\n summary: string;\n recommendedComponentIds: string[];\n checklist: string[];\n antiPatterns: string[];\n variants: PatternVariant[];\n}\n\nexport const PATTERNS_COLLECTION: PatternItem[] = [\n {\n id: 'saas-dashboard',\n platform: 'web',\n wireframeType: 'dashboard-grid',\n title: 'SaaS 데이터 분석 & KPI 대시보드',\n categoryName: 'Analytics & SaaS',\n badge: '대시보드/데이터',\n iconName: 'dashboard',\n summary: '기간 필터(7d/30d), 4대 핵심 KPI 지표 카드, 전주 대비 증감 트렌드(+14.8%), 일별 추이 바 차트 및 정렬 가능한 데이터 테이블.',\n recommendedComponentIds: ['card', 'badge', 'button', 'tabs', 'table'],\n checklist: [\n 'KPI 요약 카드마다 전주/전월 대비 증감률(+, -) 및 시각적 색상(초록/빨강) 인디케이터 제공',\n '날짜 범위 필터(오늘, 지난 7일, 지난 30일, 직접 설정) 원클릭 전환 탭 배치',\n '차트 로딩 시 레이아웃 무너짐(CLS)을 방지하는 차트 전용 스켈레톤 UI 지원',\n '데이터 테이블의 컬럼 정렬(오름차순/내림차순) 및 상태 배지(활성/대기/만료) 명확화'\n ],\n antiPatterns: [\n '숫자 지표가 너무 많아 한눈에 핵심 성과를 파악할 수 없는 정보 과부하(Visual Noise)',\n '데이터가 0건일 때 차트가 에러 나거나 깨진 채로 방치되는 빈 상태(Empty State) 결여',\n '모바일 환경에서 테이블 가로 스크롤 안내가 없어 오른쪽 컬럼이 잘려 보이는 현상'\n ],\n variants: [\n {\n id: 'kpi-analytics-view',\n name: '비즈니스 성과 KPI 카드 & 시계열 차트',\n description: '의사결정권자가 서비스 핵심 성과 지표(ARR, MAU, Churn)를 한눈에 파악하고 드릴다운할 수 있는 대시보드 패턴.',\n checklist: [\n '4대 핵심 지표 카드 최상단 배치',\n '시계열 차트 호버 툴팁(Tooltip) 지원',\n '모바일에서는 2열 그리드로 자동 리플로우'\n ],\n antiPatterns: ['범례(Legend) 설명이 누락되어 색상이 무엇을 의미하는지 모름'],\n markdown: `# [UX Pattern] B2B SaaS 성과 분석 대시보드 패턴\n\n## 1. 개요\n핵심 비즈니스 지표(KPI)와 시계열 트렌드를 시각화하여 사용자가 빠른 의사결정을 내릴 수 있도록 돕습니다.\n\n## 2. 필수 구현 규칙\n- **KPI Metrics Card**: 수치 + 단위 + 전기 대비 증감(Badge).\n- **Date Range Picker / Tabs**: 7일, 30일, 90일 토글.\n- **Data Table**: 정렬 가능한 헤더, 페이지네이션 또는 무한 스크롤.\n`\n }\n ]\n },\n {\n id: 'chat-support',\n platform: 'mobile',\n wireframeType: 'chat-stream',\n title: '1:1 고객지원 & AI 챗봇 상담 패턴',\n categoryName: 'Communication',\n badge: '채팅/CS',\n iconName: 'chat',\n summary: '말풍선 메시지 스트림, 추천 빠른 질문 칩(Quick Reply), 파일 첨부, 타이핑 중 인디케이터, 상담원 연결 상태 안내.',\n recommendedComponentIds: ['input', 'button', 'badge', 'card', 'alert'],\n checklist: [\n '새 메시지 수신 시 자동으로 스크롤을 최하단으로 부드럽게 내리는 자동 스크롤(Auto-scroll)',\n '사용자가 자주 묻는 질문(FAQ)을 원클릭으로 보낼 수 있는 가로 스크롤 추천 칩 제공',\n '상대방(또는 AI)이 응답 작성 중일 때 3개 점이 깜빡이는 타이핑 애니메이션(Typing Indicator) 노출',\n '이미지/캡처 파일 첨부 시 전송 전 미리보기 및 용량 초과 인라인 에러'\n ],\n antiPatterns: [\n '메시지를 보낸 후 전송 성공 여부를 알 수 없어 사용자가 같은 질문을 연타하는 문제',\n '봇이 답변하지 못했을 때 인간 상담원 인계 경로(Escalation)를 제공하지 않음',\n '모바일 키보드가 올라올 때 입력창이 키보드 뒤로 숨어버리는 뷰포트 버그'\n ],\n variants: [\n {\n id: 'live-chatbot-stream',\n name: '실시간 스트리밍 대화형 인터페이스',\n description: 'AI 모델의 토큰 단위 스트리밍 응답과 퀵 리플라이 칩을 결합한 모던 대화창.',\n checklist: ['스트리밍 도중 마크다운 실시간 파싱', '답변 복사 및 재생성 액션 버튼 제공'],\n antiPatterns: ['스트리밍 중 사용자의 추가 입력을 완전히 차단해버리는 행위'],\n markdown: `# [UX Pattern] 1:1 고객지원 & AI 챗봇 패턴\n\n## 1. 개요\n사용자의 문의 사항을 실시간 대화 형태로 수렴하고 AI 어시스턴트가 즉시 해결합니다.\n\n## 2. 필수 UX 명세\n- **Message Bubble Layout**: 송신자 우측 정렬(Primary 컬러), 수신자 좌측 정렬(Muted Surface).\n- **Quick Actions**: 가로 스크롤 추천 질문 칩.\n`\n }\n ]\n },\n {\n id: 'kyc-verification',\n platform: 'mobile',\n wireframeType: 'kyc-camera',\n title: '본인확인 & KYC 인증신청 패턴',\n categoryName: 'Identity & Security',\n badge: '인증/보안',\n iconName: 'kyc',\n summary: '휴대폰 SMS/PASS 인증, 신분증/서류 촬영 업로드, 필수/선택 약관 일괄 동의, 실시간 심사 상태 안내.',\n recommendedComponentIds: ['input', 'button', 'selection', 'card', 'badge', 'alert'],\n checklist: [\n '휴대폰 6자리 인증번호 입력 시 3분 카운트다운 타이머 및 재전송(Resend) CTA 상시 제공',\n '[전체 동의] 토글 시 하위 필수(14세 이상, 개인정보 등) 및 선택 약관 일괄 동기화',\n '신분증 파일 업로드 시 즉시 파일명 및 미리보기 섬네일 노출, 10MB 초과 파일 인라인 경고',\n '제출 완료 후 [심사 대기중 / 보완 필요 / 승인 완료] 단계별 프로그레스 스텝 바 제공'\n ],\n antiPatterns: [\n '인증번호 시간 초과 시 사용자에게 아무런 에러 메시지 없이 무응답 방치',\n '필수 약관과 마케팅 선택 약관을 묶어두어 강제 동의하게 유도',\n '파일 업로드 용량 제한을 업로드 실패 후에야 alert 팝업으로 띄우는 행위'\n ],\n variants: [\n {\n id: 'otp-id-verification',\n name: 'SMS OTP & 신분증 업로드 플로우',\n description: '금융 및 본인확인이 필요한 서비스에서 이탈 없이 신속히 인증을 완결하는 패턴.',\n checklist: ['자동 완성 지원(autocomplete=\"one-time-code\")', '서류 업로드 드래그앤드롭 지원'],\n antiPatterns: ['백스페이스 입력 시 이전 인풋으로 커서가 이동하지 않음'],\n markdown: `# [UX Pattern] 본인확인 & KYC 인증 플로우\n\n## 1. 개요\n금융, 결제, 성인인증 서비스에서 사용자의 신원을 안전하게 검증합니다.\n\n## 2. 필수 규약\n- **Timer**: 180초 카운트다운. 만료 시 입력 비활성화 및 재전송 활성화.\n- **Terms Agreement**: 전체 동의 토글 시 자식 항목 일괄 변경.\n`\n }\n ]\n },\n {\n id: 'blog-editor',\n platform: 'web',\n wireframeType: 'editor-toolbar',\n title: '블로그 글 작성 & 발행 에디터 패턴',\n categoryName: 'Content & Publishing',\n badge: '콘텐츠/에디터',\n iconName: 'blog',\n summary: '제목/본문 리치 에디터, 태그 칩 입력기, 커버 이미지 등록, 30초 무중단 자동 임시저장, 공개 설정 모달.',\n recommendedComponentIds: ['input', 'button', 'badge', 'dialog', 'selection', 'tabs'],\n checklist: [\n '30초 주기 무중단 자동 임시저장(Autosave) 및 \"마지막 저장: 방금 전\" 상태 실시간 표기',\n '제목 입력란에서 엔터 키 입력 시 본문 첫 단락으로 포커스 자동 전환',\n '태그 입력 시 쉼표/엔터 입력 즉시 캡슐 칩(Chip)으로 변환 및 개별 삭제(X) 지원',\n '[발행하기] 클릭 시 공개 범위(전체/비공개/보호) 및 URL 슬러그, 발행 예약 일시 설정 모달 팝업'\n ],\n antiPatterns: [\n '사용자가 실수로 뒤로가기나 탭을 닫을 때 작성 중인 본문 손실 경고창 미제공',\n '에디터 본문 폰트 크기가 실제 발행된 화면과 달라 사용자가 레이아웃을 오인함',\n '대표 이미지를 등록하지 않았을 때 기본 Fallback 이미지 규칙 부재'\n ],\n variants: [\n {\n id: 'markdown-rich-editor',\n name: '리치 마크다운 에디터 & 메타데이터 발행',\n description: '글 작성자의 몰입감을 유지하면서 태그, 슬러그, 발행 일정을 손쉽게 설정하는 패턴.',\n checklist: ['단축키(Ctrl+B, Ctrl+I) 지원', '이미지 붙여넣기(Paste) 자동 업로드'],\n antiPatterns: ['에디터 스크롤과 미리보기 스크롤이 비동기되어 엉뚱한 위치를 보여줌'],\n markdown: `# [UX Pattern] 블로그 글 작성 및 발행 패턴\n\n## 1. 개요\n콘텐츠 제작자가 방해받지 않고 글을 집필하고 안전하게 발행합니다.\n`\n }\n ]\n },\n {\n id: 'map-location',\n platform: 'mobile',\n wireframeType: 'map-sheet',\n title: '지도 & 위치 기반 POI 탐색 패턴',\n categoryName: 'Location & Mobility',\n badge: '지도/로케이션',\n iconName: 'map',\n summary: '인터랙티브 지도 뷰포트, 현 지도 위치에서 재검색, 핀(Marker) 인터랙션, 바텀시트 장소 상세 정보.',\n recommendedComponentIds: ['card', 'button', 'badge', 'input', 'sheet'],\n checklist: [\n '지도 패닝/줌 이동 시 상단에 \"현 위치에서 재검색\" 플로팅 칩 자동 노출',\n '지도 위 핀 마커 터치 시 하단 바텀시트가 매끄럽게 슬라이드 업되며 매장 핵심 정보 노출',\n '현재 시각 기준 [영업 중 / 영업 종료] 여부를 컬러 배지(초록/회색)로 명확히 표시',\n '모바일 한 손 조작을 위한 \"길찾기\" 및 \"전화걸기\" 주요 CTA 버튼 상시 하단 고정'\n ],\n antiPatterns: [\n '지도를 스크롤할 때 웹 페이지 전체가 함께 위아래로 밀려 지도가 조작되지 않는 현상',\n '마커가 겹칠 때 클러스터링(묶음) 처리가 안 되어 화면이 핀으로 뒤덮임',\n '바텀시트가 전체 화면을 가려 지도 컨텍스트를 잃어버리는 현상'\n ],\n variants: [\n {\n id: 'poi-bottom-sheet',\n name: '핀 마커 클릭 & 슬라이딩 바텀시트',\n description: '지도의 넓은 시야를 확보하면서 장소의 운영시간과 길찾기를 제공하는 패턴.',\n checklist: ['바텀시트 2단계 높이 제어(스냅 포인트)', '거리 순 정렬 필터'],\n antiPatterns: ['지도 로딩 중 아무런 안내 없이 회색 타일만 노출'],\n markdown: `# [UX Pattern] 지도 및 위치 기반 POI 탐색 패턴`\n }\n ]\n },\n {\n id: 'flight-booking',\n platform: 'web',\n wireframeType: 'flight-swap',\n title: '항공권 / 여행 일정 예약 패턴',\n categoryName: 'Travel & Booking',\n badge: '예약/일정',\n iconName: 'flight',\n summary: '출발지-도착지 원클릭 스왑(Swap), 왕복/편도 탭, 캘린더 날짜 범위 및 승객 수(성인/소아) 카운터.',\n recommendedComponentIds: ['tabs', 'input', 'button', 'badge', 'card', 'dialog'],\n checklist: [\n '출발지와 도착지를 한 번에 맞바꾸는 인터랙티브 360도 스왑 버튼 제공',\n '왕복 선택 시 [가는 날 - 오는 날] 날짜 범위를 한 화면에서 선택하는 듀얼 캘린더',\n '성인/소아/유아 승객 수 증감 (+/-) 카운터 및 유아 나이 기준 툴팁 제공',\n '검색 중일 때 로딩 스켈레톤 및 직항/경유, 가격대별 필터 칩 상단 배치'\n ],\n antiPatterns: [\n '오는 날을 가는 날보다 앞선 과거 날짜로 선택할 수 있게 방치하는 오류',\n '출발지 선택 시 공항 코드(ICN, GMP)와 한글 도시명 검색이 분리되어 검색 실패 유발',\n '유류할증료/세금이 최종 결제 단계에서 갑자기 추가되어 가격 불신 초래'\n ],\n variants: [\n {\n id: 'flight-search-bar',\n name: '멀티 파라미터 항공권 검색 폼',\n description: '복잡한 날짜, 승객, 공항 조합을 오차 없이 빠르게 설정하는 패턴.',\n checklist: ['최근 검색 여정 자동 저장', '특가 캘린더 가격 뱃지'],\n antiPatterns: ['날짜 선택 시 주말/공휴일 색상 미구분'],\n markdown: `# [UX Pattern] 항공권 검색 및 예약 플로우`\n }\n ]\n },\n {\n id: 'onboarding-wizard',\n platform: 'mobile',\n wireframeType: 'wizard-steps',\n title: '온보딩 튜토리얼 & 다단계 스텝 위저드',\n categoryName: 'User Onboarding',\n badge: '온보딩/가입',\n iconName: 'onboarding',\n summary: '진행률 프로그레스 바(1~3단계), 역할 선택 카드(디자이너/엔지니어/기획자), 이전/다음 유효성 검사, 건너뛰기(Skip).',\n recommendedComponentIds: ['card', 'button', 'badge', 'selection', 'input'],\n checklist: [\n '현재 단계와 총 단계를 명시하는 상단 스텝 프로그레스 바(예: 2/3단계)',\n '선택지를 큰 카드 형태로 배치하여 모바일 터치 타깃(최소 48px) 극대화',\n '선택하지 않고 다음으로 넘어가지 못하도록 버튼 비활성화(Disabled) 상태 명확화',\n '필수가 아닌 질문의 경우 우상단 \"건너뛰기\" 버튼을 제공하여 이탈률 방지'\n ],\n antiPatterns: [\n '이전 단계로 돌아갔을 때 이미 입력한 데이터가 전부 초기화되는 버그',\n '단계가 총 몇 단계인지 알려주지 않아 사용자가 끝없는 설문처럼 느껴 이탈',\n '각 질문의 선택 이유를 설명하지 않아 사용자가 개인정보 수집에 거부감을 느낌'\n ],\n variants: [\n {\n id: 'multi-step-form',\n name: '단계별 정보 수집 위저드',\n description: '복잡한 가입/온보딩 프로세스를 청킹(Chunking)하여 완료율을 극대화하는 패턴.',\n checklist: ['엔터 키 입력 시 다음 단계로 자동 진행', '뒤로가기 시 상태 완벽 복원'],\n antiPatterns: ['진행 중 새로고침 시 1단계로 강제 리셋'],\n markdown: `# [UX Pattern] 온보딩 및 다단계 위저드 패턴`\n }\n ]\n },\n {\n id: 'file-uploader',\n platform: 'web',\n wireframeType: 'uploader-dropzone',\n title: '파일 드래그앤드롭 업로더 & 미디어 관리',\n categoryName: 'File & Media',\n badge: '파일/업로드',\n iconName: 'uploader',\n summary: '대형 점선 드롭존(Dropzone), 실시간 업로드 진행률 바(0%~100%), 파일 형식/용량 검증, 첨부 파일 리스트 및 삭제.',\n recommendedComponentIds: ['card', 'button', 'badge', 'alert', 'input'],\n checklist: [\n '파일을 드롭존 위로 드래그했을 때 테두리 색상과 배경이 하이라이트되는 시각 피드백',\n '허용 확장자(JPG, PNG, PDF) 및 최대 파일 크기(예: 최대 20MB)를 드롭존 내 명시',\n '업로드 중인 파일마다 프로그레스 바 및 중단/취소(X) 버튼 제공',\n '업로드 완료된 파일의 파일명, 용량, 성공 아이콘 및 개별 삭제 기능'\n ],\n antiPatterns: [\n '허용되지 않은 확장자 파일을 올렸을 때 파일 선택 창이 닫힌 뒤에야 alert을 띄움',\n '업로드 중 브라우저 탭을 닫으려고 할 때 경고창을 띄우지 않아 업로드 중단',\n '이미지 파일인데 썸네일 미리보기를 제공하지 않고 텍스트 파일명만 노출함'\n ],\n variants: [\n {\n id: 'dropzone-progress-list',\n name: '드래그앤드롭존 & 진행률 리스트',\n description: '다중 대용량 파일 첨부 시 시각적 안정성과 진행 상황을 전달하는 패턴.',\n checklist: ['복수 파일 동시 업로드 병렬 처리', '실패 시 재시도(Retry) 버튼'],\n antiPatterns: ['업로드 진행률이 멈춘 채 얼어붙는 현상'],\n markdown: `# [UX Pattern] 파일 드래그앤드롭 업로더 패턴`\n }\n ]\n },\n {\n id: 'fintech-transfer',\n platform: 'mobile',\n wireframeType: 'keypad-transfer',\n title: '계좌 송금 & 간편 이체 패턴',\n categoryName: 'Fintech & Pay',\n badge: '핀테크/이체',\n iconName: 'fintech',\n summary: '대형 금액 입력(실시간 한글 변환), 수수료 면제 안내 배지, 빠른 출금 계좌 선택, 확인 모달 및 완료 인터랙션.',\n recommendedComponentIds: ['button', 'input', 'dialog', 'badge', 'card'],\n checklist: [\n '숫자 입력 시 \"5만 원\", \"150만 원\" 등 실시간 한글 금액 단위 동시 변환 노출',\n '출금 가능 잔액 초과 시 즉시 경고 텍스트 및 잔액 채우기 CTA 연계',\n '최종 송금 직전 받는 분 이름, 은행, 계좌번호를 재확인하는 2단계 확인 다이얼로그',\n '송금 성공 시 부드러운 체크 애니메이션과 잔액 갱신 및 카카오톡 영수증 공유 CTA'\n ],\n antiPatterns: [\n '금액 단위 콤마(, ) 서식이 입력 중에 깨져 사용자가 숫자를 헷갈리게 만듦',\n '확인 모달 없이 한 번 클릭으로 바로 돈이 빠져나가는 위험한 흐름',\n '네트워크 지연 시 송금 버튼을 연타하여 중복 이체 사고 발생'\n ],\n variants: [\n {\n id: 'two-step-transfer',\n name: '숫자 키패드 송금 & 이중 확인 모달',\n description: '오송금 위험을 원천 차단하면서 원터치로 송금을 완료하는 토스형 패턴.',\n checklist: ['최근 송금 계좌 즐겨찾기 칩', '생체 인증(지문/FaceID) 인터페이스 지원'],\n antiPatterns: ['은행 점검 시간 안내 없이 이체 실패 처리'],\n markdown: `# [UX Pattern] 계좌 송금 및 간편 이체 패턴`\n }\n ]\n },\n {\n id: 'ecommerce-checkout',\n platform: 'mobile',\n wireframeType: 'cart-sticky',\n title: '장바구니 & 주문 결제서 패턴',\n categoryName: 'Commerce & Order',\n badge: '커머스/결제',\n iconName: 'commerce',\n summary: '수량 증감(+/-) 실시간 금액 재계산, 쿠폰/적립금 인라인 적용, 간편결제 수단 선택, 하단 결제 CTA 고정 바.',\n recommendedComponentIds: ['card', 'button', 'input', 'badge', 'selection'],\n checklist: [\n '수량 증감(+/-) 시 배송비 및 총 결제 예정 금액 실시간 재계산',\n '보유 쿠폰 및 적립금 입력란에 [최대 사용] 원클릭 적용 버튼 제공',\n '스크롤 위치와 상관없이 결제 금액과 [OOO원 결제하기] 버튼을 화면 하단 고정(Sticky)',\n '품절 상품 발생 시 체크박스 자동 해제 및 품절 뱃지 명확히 표기'\n ],\n antiPatterns: [\n '수량을 바꿀 때마다 화면 전체가 깜빡이며 리로드되는 구식 방식',\n '최종 결제 금액에 배송비나 할인이 어떻게 계산되었는지 상세 내역 미표시',\n '결제 실패 시 장바구니에 담아둔 상품 정보가 전부 날아가는 현상'\n ],\n variants: [\n {\n id: 'sticky-checkout-bar',\n name: '주문서 결제 & 하단 고정 바',\n description: '결제 과정의 이탈을 줄이고 최종 결제 금액을 명료하게 유지하는 패턴.',\n checklist: ['간편결제 원클릭 탭 선택', '적립 예정 포인트 안내'],\n antiPatterns: ['결제 수단 선택 시 추가 수수료 숨김'],\n markdown: `# [UX Pattern] 이커머스 장바구니 및 결제 주문서 패턴`\n }\n ]\n },\n {\n id: 'search-empty',\n platform: 'web',\n wireframeType: 'search-empty',\n title: '실시간 검색 & Empty UX 패턴',\n categoryName: 'Discovery',\n badge: '탐색/복구',\n iconName: 'search',\n summary: '300ms 디바운스 입력, 검색어 즉시 초기화(X) 버튼, 결과 없음 시 복구 추천 태그 및 최근 검색어 제공.',\n recommendedComponentIds: ['input', 'badge', 'card', 'button'],\n checklist: [\n '300ms 디바운스 적용으로 타자 칠 때마다 서버에 무의미한 API 요청 방지',\n '결과가 없을 때 \"검색 결과가 없습니다\"와 함께 대안 추천 키워드 태그 3개 이상 제공',\n '입력창 우측 원클릭 클리어(X) 버튼 및 최근 검색어 기록 로컬 저장',\n '검색 중일 때는 인라인 스피너나 스켈레톤으로 진행 상태 명확화'\n ],\n antiPatterns: [\n '결과가 없을 때 하얀 백지 화면만 덜렁 노출하여 사용자를 이탈시킴',\n '타이핑 중 지우기(X) 버튼이 없어 백스페이스를 연타하게 만드는 불편함',\n '오타 입력 시 유사 검색어 추천(\"혹시 이것을 찾으셨나요?\") 미제공'\n ],\n variants: [\n {\n id: 'autocomplete-recovery',\n name: '실시간 자동완성 & 빈 상태 복구 흐름',\n description: '사용자가 오타를 내거나 결과가 없어도 서비스 이탈을 막는 회복탄력적 UX.',\n checklist: ['최근 검색어 삭제 기능', '인기 검색어 랭킹 표시'],\n antiPatterns: ['검색어가 1글자일 때 무조건 전체 DB를 조회하여 브라우저 렉 유발'],\n markdown: `# [UX Pattern] 실시간 검색 및 결과 없음 복구 패턴`\n }\n ]\n },\n {\n id: 'developer-docs',\n platform: 'web',\n wireframeType: 'docs-layout',\n title: '개발자 기술 문서 & API Docs 패턴',\n categoryName: 'Documentation & DX',\n badge: '기술문서/API',\n iconName: 'docs',\n summary: '좌측 계층 트리 내비게이션, 중앙 코드 스니펫(원클릭 복사/언어 탭), 인라인 API 파라미터 테이블, 우측 목차(On this page) 스크롤 스파이.',\n recommendedComponentIds: ['table', 'badge', 'tabs', 'button', 'card'],\n checklist: [\n '모든 코드 블록 상단에 프로그래밍 언어 배지 및 원클릭 복사(Copy) 피드백 제공',\n '전역 단축키(Cmd+K / Ctrl+K) 지원 문서 통합 검색 오버레이 제공',\n '현재 보고 있는 섹션을 우측 목차(TOC)에서 실시간 하이라이트하는 스크롤 스파이(Scroll Spy)',\n 'API 엔드포인트마다 HTTP Method 배지(GET/POST/DELETE) 및 요청/응답 파라미터 타입 표기'\n ],\n antiPatterns: [\n '긴 코드 블록에 가로 스크롤이 없어 오른쪽 코드가 강제로 잘려 보이는 현상',\n '검색 결과를 클릭했을 때 해당 앵커(#section)로 정확히 이동하지 않는 딥링크 누락',\n '버전 선택(v1, v2) 시 기존에 보고 있던 페이지 컨텍스트를 잃어버리는 현상'\n ],\n variants: [\n {\n id: 'api-reference-3col',\n name: '3단 분할 개발자 기술 레퍼런스',\n description: 'Stripe, Next.js 스타일. 좌측 탐색 사이드바, 중앙 상세 가이드, 우측 실시간 코드 예제 및 TOC.',\n checklist: ['코드 스니펫 cURL / JavaScript / Python 탭 전환', 'API 응답 JSON 구문 하이라이트'],\n antiPatterns: ['다크모드 지원 미비로 어두운 환경에서 코드 가독성 저하'],\n markdown: `# [UX Pattern] 개발자 기술 문서 & API 레퍼런스 패턴\n\n## 1. 개요\n개발자가 빠르게 라이브러리를 설치하고 API 규격을 확인하여 복사-붙여넣기로 즉시 연동할 수 있는 3단 기술 문서 레이아웃입니다.\n\n## 2. 필수 레이아웃 구조\n- **Left Column (Sidebar)**: 카테고리 트리, 버전 실렉터, 검색창\n- **Center Column (Content)**: 마크다운 렌더링, Callout(Note/Tip/Warning), 인터랙티브 코드 블록\n- **Right Column (TOC)**: 페이지 내 목차 (H2/H3 계층)\n\n## 3. 필수 인터랙션\n- \\`navigator.clipboard.writeText()\\`: 코드 복사 시 \"Copied!\" 툴팁 피드백.\n- \\`IntersectionObserver\\`: 본문 스크롤에 따른 목차 활성 링크 동기화.\n`\n }\n ]\n },\n {\n id: 'complex-form-settings',\n platform: 'web',\n wireframeType: 'complex-form',\n title: '복잡한 엔터프라이즈 환경설정 & 다단계 폼 패턴',\n categoryName: 'Settings & Configuration',\n badge: '복합 폼/환경설정',\n iconName: 'settings',\n summary: '섹션 청킹(좌측 네비게이션), 조건부 종속 입력(Progressive Disclosure), 실시간 인라인 유효성 검사, 하단 플로팅 미저장 변경사항(Unsaved Changes) 바, 파괴적 설정 안전장치.',\n recommendedComponentIds: ['input', 'selection', 'button', 'badge', 'alert', 'tabs', 'card'],\n checklist: [\n '정보 구조 청킹(Chunking): 좌측 고정 네비게이션으로 섹션(기본 설정, 보안 정책, 결제/웹훅 등)을 명확히 분리하여 인지 과부하 방지',\n '점진적 노출(Progressive Disclosure): \"고급 설정\" 또는 상위 토글 활성화 시에만 하위 조건부 인풋이 부드럽게 노출',\n '실시간 인라인 유효성 검증: Blur 및 디바운스 실시간 검사로 에러 위치와 해결 힌트를 필드 바로 밑에 명확히 표기',\n '미저장 변경사항 플로팅 바(Sticky Unsaved Bar): 필드 수정 시 화면 하단에 [저장되지 않은 변경사항이 있습니다 | 취소 | 저장] 바가 슬라이드 업',\n '파괴적 액션 2단계 안전장치: 데이터 삭제/API 재발급 등 위험 작업 시 명시적 텍스트 입력 확인(예: 프로젝트명 직접 입력) 다이얼로그 제공',\n '스마트 기본값(Sensible Defaults) & 헬퍼 툴팁: 복잡한 기술 용어 옆에 안내 툴팁과 원클릭 복사/생성 버튼 배치'\n ],\n antiPatterns: [\n '수십 개의 인풋을 스크롤 없이 단일 페이지에 일렬 배치하여 사용자에게 시각적 공포와 인지 과부하를 주는 형태',\n '제출 버튼을 눌렀을 때 화면 상단에서만 \"입력값을 확인하세요\"라는 모호한 alert을 띄우고 어디서 에러가 났는지 알려주지 않는 불친절함',\n '설정값을 바꿨는데 페이지 이동 시 경고 없이 작성 내용이 모두 증발하는 데이터 유실 버그',\n '비활성화된(Disabled) 필드인데 왜 비활성화되어 있는지 이유(상위 권한 필요, 필수 선행 조건 등)를 툴팁으로 설명하지 않음'\n ],\n variants: [\n {\n id: 'enterprise-settings-form',\n name: '엔터프라이즈 멀티 섹션 폼 & 조건부 필드',\n description: 'Vercel, Stripe, GitHub 스타일의 복잡한 시스템 설정 폼. 좌측 앵커 탭과 우측 본문, 실시간 검증 및 플로팅 세이브 바 지원.',\n checklist: [\n '수정 즉시 하단 플로팅 세이브 바 표시',\n 'URL 형식 검증 및 실시간 체크 아이콘',\n '토글 스위치에 따른 조건부 입력창 애니메이션 노출'\n ],\n antiPatterns: ['저장 버튼을 찾으려고 사용자가 페이지 맨 밑까지 스크롤해야 하는 피로감'],\n markdown: `# [UX Pattern] 복잡한 엔터프라이즈 환경설정 & 다단계 폼 패턴\n\n## 1. 패턴 개요\n수십 가지의 인풋, 셀렉트, 토글 스위치가 존재하는 복잡한 비즈니스 설정 화면에서 사용자의 인지 부하(Cognitive Load)를 최소화하고, 입력 오류와 데이터 유실을 방지하는 엔터프라이즈급 폼 설계 패턴입니다.\n\n## 2. 핵심 5대 UX 설계 원칙\n\n### 1) 점진적 공개 (Progressive Disclosure)\n- 상위 토글(예: \"웹훅 활성화\", \"2단계 인증 강제\")을 켰을 때만 종속된 하위 URL 입력창, 시크릿 키 등이 애니메이션과 함께 노출됩니다.\n- 초기 진입 시 화면의 시각적 노이즈를 70% 이상 줄여줍니다.\n\n### 2) 미저장 변경사항 고정 바 (Sticky Unsaved Changes Bar)\n- 사용자가 어떤 필드라도 수정(Dirty 상태)하면 화면 하단에 플로팅 바가 솟아오릅니다.\n- \\`[ 변경되지 않은 설정이 있습니다 | 되돌리기 | 변경사항 저장 ]\\`\n- 페이지 최하단까지 스크롤하지 않고도 즉시 저장할 수 있습니다.\n\n### 3) 실시간 인라인 검증 (Real-time Inline Validation)\n- 폼 전체를 제출한 뒤에 서버 에러 팝업을 띄우지 않습니다.\n- 사용자가 포커스를 잃었을 때(onBlur) 즉시 포맷을 검사하고, 유효할 때는 초록색 체크 아이콘, 오류 시 필드 바로 아래에 구체적인 수정 가이드를 붉은색 텍스트로 노출합니다.\n\n### 4) 파괴적 작업 안전장치 (Confirmation Safeguard)\n- '프로젝트 삭제'나 'API 키 재생성' 같은 복구 불가능한 액션은 빨간색 Danger Card로 별도 격리하며, 반드시 확인 문자열(예: \\`delete my-project\\`)을 직접 입력해야만 버튼이 활성화됩니다.\n`\n }\n ]\n }\n];\n","// Auto-generated from VoltAgent/awesome-design-md (84 Curated DESIGN.md files)\nimport { ThemeConfig } from './themeEditorDefaults';\n\nexport interface AwesomeDesignMdTheme {\n id: string;\n name: string;\n category: string;\n description: string;\n designMdPath: string;\n color: ThemeConfig['color'];\n typography: ThemeConfig['typography'];\n borderRadius: string;\n}\n\nexport const AWESOME_DESIGN_MD_THEMES: AwesomeDesignMdTheme[] = [\n {\n \"id\": \"1win\",\n \"name\": \"1win Analysis\",\n \"category\": \"Fintech & Web3\",\n \"description\": \"An analysis of 1win's design language — a near-black crypto casino and sportsbook built on Inter at heavy weights, where a vivid green action color and an electric blue secondary carry every CTA across dense, full-bleed game-tile rails, pro\",\n \"designMdPath\": \"/design-md/1win/DESIGN.md\",\n \"color\": {\n \"primary\": \"#00b24b\",\n \"primaryHover\": \"#00b24b\",\n \"primaryLight\": \"#00b24b26\",\n \"bgPrimary\": \"#141415\",\n \"bgSecondary\": \"#2e3035\",\n \"textPrimary\": \"#f0f2f5\",\n \"textSecondary\": \"#9aa1b1\",\n \"textMuted\": \"#53575f\",\n \"borderSubtle\": \"#2d2f33\",\n \"borderStrong\": \"#3d414a\",\n \"statusSuccess\": \"#10b981\",\n \"statusDanger\": \"#f43f5e\",\n \"statusWarning\": \"#f59e0b\"\n },\n \"typography\": {\n \"fontFamily\": \"Inter\",\n \"h1\": {\n \"fontSize\": 36,\n \"lineHeight\": 1.2,\n \"fontWeight\": 700,\n \"letterSpacing\": \"-0.02em\"\n },\n \"h2\": {\n \"fontSize\": 28,\n \"lineHeight\": 1.25,\n \"fontWeight\": 700,\n \"letterSpacing\": \"-0.015em\"\n },\n \"h3\": {\n \"fontSize\": 22,\n \"lineHeight\": 1.3,\n \"fontWeight\": 600,\n \"letterSpacing\": \"-0.01em\"\n },\n \"h4\": {\n \"fontSize\": 18,\n \"lineHeight\": 1.35,\n \"fontWeight\": 600,\n \"letterSpacing\": \"-0.005em\"\n },\n \"h5\": {\n \"fontSize\": 16,\n \"lineHeight\": 1.4,\n \"fontWeight\": 600,\n \"letterSpacing\": \"0em\"\n },\n \"h6\": {\n \"fontSize\": 14,\n \"lineHeight\": 1.45,\n \"fontWeight\": 600,\n \"letterSpacing\": \"0em\"\n },\n \"body\": {\n \"fontSize\": 14,\n \"lineHeight\": 1.4,\n \"fontWeight\": 600,\n \"letterSpacing\": \"0\"\n },\n \"sm\": {\n \"fontSize\": 12,\n \"lineHeight\": 1.3,\n \"fontWeight\": 600,\n \"letterSpacing\": \"0\"\n },\n \"xs\": {\n \"fontSize\": 12,\n \"lineHeight\": 1.3,\n \"fontWeight\": 600,\n \"letterSpacing\": \"0\"\n }\n },\n \"borderRadius\": \"8px\"\n },\n {\n \"id\": \"airbnb\",\n \"name\": \"Airbnb\",\n \"category\": \"Tech & Lifestyle\",\n \"description\": \"A warm, generous consumer marketplace anchored on a clean white canvas and Airbnb Rausch (#ff385c), the single brand voltage that carries every primary CTA, search-button orb, and rating dot. Type runs Airbnb Cereal VF at modest weights — d\",\n \"designMdPath\": \"/design-md/airbnb/DESIGN.md\",\n \"color\": {\n \"primary\": \"#ff385c\",\n \"primaryHover\": \"#ff385c\",\n \"primaryLight\": \"#e8f3ff\",\n \"bgPrimary\": \"#ffffff\",\n \"bgSecondary\": \"#ffffff\",\n \"textPrimary\": \"#222222\",\n \"textSecondary\": \"#6a6a6a\",\n \"textMuted\": \"#b0b8c1\",\n \"borderSubtle\": \"#dddddd\",\n \"borderStrong\": \"#c1c1c1\",\n \"statusSuccess\": \"#10b981\",\n \"statusDanger\": \"#f43f5e\",\n \"statusWarning\": \"#f59e0b\"\n },\n \"typography\": {\n \"fontFamily\": \"'Airbnb Cereal VF', Circular, -apple-system, system-ui, Roboto, 'Helvetica Neue', sans-serif\",\n \"h1\": {\n \"fontSize\": 28,\n \"lineHeight\": 1.43,\n \"fontWeight\": 700,\n \"letterSpacing\": \"0\"\n },\n \"h2\": {\n \"fontSize\": 22,\n \"lineHeight\": 1.18,\n \"fontWeight\": 500,\n \"letterSpacing\": \"-0.44px\"\n },\n \"h3\": {\n \"fontSize\": 21,\n \"lineHeight\": 1.43,\n \"fontWeight\": 700,\n \"letterSpacing\": \"0\"\n },\n \"h4\": {\n \"fontSize\": 18,\n \"lineHeight\": 1.35,\n \"fontWeight\": 600,\n \"letterSpacing\": \"-0.005em\"\n },\n \"h5\": {\n \"fontSize\": 16,\n \"lineHeight\": 1.4,\n \"fontWeight\": 600,\n \"letterSpacing\": \"0em\"\n },\n \"h6\": {\n \"fontSize\": 14,\n \"lineHeight\": 1.45,\n \"fontWeight\": 600,\n \"letterSpacing\": \"0em\"\n },\n \"body\": {\n \"fontSize\": 15,\n \"lineHeight\": 1.55,\n \"fontWeight\": 400,\n \"letterSpacing\": \"-0.005em\"\n },\n \"sm\": {\n \"fontSize\": 14,\n \"lineHeight\": 1.43,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0\"\n },\n \"xs\": {\n \"fontSize\": 14,\n \"lineHeight\": 1.29,\n \"fontWeight\": 500,\n \"letterSpacing\": \"0\"\n }\n },\n \"borderRadius\": \"14px\"\n },\n {\n \"id\": \"airtable\",\n \"name\": \"Airtable\",\n \"category\": \"Tech & Lifestyle\",\n \"description\": \"A sober, editorial workflow-software interface anchored on white canvas and dark-ink type, where brand voltage comes from full-bleed signature cards in coral, dark green, peach, and dark navy that punctuate long-scroll explainer pages. Prim\",\n \"designMdPath\": \"/design-md/airtable/DESIGN.md\",\n \"color\": {\n \"primary\": \"#181d26\",\n \"primaryHover\": \"#181d26\",\n \"primaryLight\": \"#e8f3ff\",\n \"bgPrimary\": \"#ffffff\",\n \"bgSecondary\": \"#f8f9fa\",\n \"textPrimary\": \"#181d26\",\n \"textSecondary\": \"#41454d\",\n \"textMuted\": \"#b0b8c1\",\n \"borderSubtle\": \"#dddddd\",\n \"borderStrong\": \"#9297a0\",\n \"statusSuccess\": \"#006400\",\n \"statusDanger\": \"#f43f5e\",\n \"statusWarning\": \"#f59e0b\"\n },\n \"typography\": {\n \"fontFamily\": \"Haas Groot Disp, Haas, sans-serif\",\n \"h1\": {\n \"fontSize\": 48,\n \"lineHeight\": 1.1,\n \"fontWeight\": 500,\n \"letterSpacing\": \"0\"\n },\n \"h2\": {\n \"fontSize\": 40,\n \"lineHeight\": 1.2,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0\"\n },\n \"h3\": {\n \"fontSize\": 32,\n \"lineHeight\": 1.2,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0\"\n },\n \"h4\": {\n \"fontSize\": 18,\n \"lineHeight\": 1.35,\n \"fontWeight\": 600,\n \"letterSpacing\": \"-0.005em\"\n },\n \"h5\": {\n \"fontSize\": 16,\n \"lineHeight\": 1.4,\n \"fontWeight\": 600,\n \"letterSpacing\": \"0em\"\n },\n \"h6\": {\n \"fontSize\": 16,\n \"lineHeight\": 1.4,\n \"fontWeight\": 500,\n \"letterSpacing\": \"0\"\n },\n \"body\": {\n \"fontSize\": 15,\n \"lineHeight\": 1.55,\n \"fontWeight\": 400,\n \"letterSpacing\": \"-0.005em\"\n },\n \"sm\": {\n \"fontSize\": 14,\n \"lineHeight\": 1.35,\n \"fontWeight\": 500,\n \"letterSpacing\": \"0.16px\"\n },\n \"xs\": {\n \"fontSize\": 14,\n \"lineHeight\": 1.35,\n \"fontWeight\": 500,\n \"letterSpacing\": \"0.16px\"\n }\n },\n \"borderRadius\": \"10px\"\n },\n {\n \"id\": \"aljazeera\",\n \"name\": \"Al Jazeera Analysis\",\n \"category\": \"Tech & Lifestyle\",\n \"description\": \"An analysis of Al Jazeera's design language — a hard-news editorial system built on flat white paper and dense Roboto headline stacks, signed by one saturated orange used as logo block and section-eyebrow bar, punctuated by a live-red that \",\n \"designMdPath\": \"/design-md/aljazeera/DESIGN.md\",\n \"color\": {\n \"primary\": \"#fa9000\",\n \"primaryHover\": \"#fa9000\",\n \"primaryLight\": \"#e8f3ff\",\n \"bgPrimary\": \"#ffffff\",\n \"bgSecondary\": \"#f8f9fa\",\n \"textPrimary\": \"#000000\",\n \"textSecondary\": \"#8b95a1\",\n \"textMuted\": \"#b0b8c1\",\n \"borderSubtle\": \"#d8d8d8\",\n \"borderStrong\": \"#e5e8eb\",\n \"statusSuccess\": \"#10b981\",\n \"statusDanger\": \"#f43f5e\",\n \"statusWarning\": \"#f59e0b\"\n },\n \"typography\": {\n \"fontFamily\": \"Roboto\",\n \"h1\": {\n \"fontSize\": 36,\n \"lineHeight\": 1.2,\n \"fontWeight\": 700,\n \"letterSpacing\": \"-0.02em\"\n },\n \"h2\": {\n \"fontSize\": 28,\n \"lineHeight\": 1.25,\n \"fontWeight\": 700,\n \"letterSpacing\": \"-0.015em\"\n },\n \"h3\": {\n \"fontSize\": 22,\n \"lineHeight\": 1.3,\n \"fontWeight\": 600,\n \"letterSpacing\": \"-0.01em\"\n },\n \"h4\": {\n \"fontSize\": 18,\n \"lineHeight\": 1.35,\n \"fontWeight\": 600,\n \"letterSpacing\": \"-0.005em\"\n },\n \"h5\": {\n \"fontSize\": 16,\n \"lineHeight\": 1.4,\n \"fontWeight\": 600,\n \"letterSpacing\": \"0em\"\n },\n \"h6\": {\n \"fontSize\": 16,\n \"lineHeight\": 1,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0\"\n },\n \"body\": {\n \"fontSize\": 16,\n \"lineHeight\": 1.5,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0\"\n },\n \"sm\": {\n \"fontSize\": 14,\n \"lineHeight\": 1.45,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0\"\n },\n \"xs\": {\n \"fontSize\": 12,\n \"lineHeight\": 1.4,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0\"\n }\n },\n \"borderRadius\": \"10px\"\n },\n {\n \"id\": \"apple\",\n \"name\": \"Apple\",\n \"category\": \"Tech & Lifestyle\",\n \"description\": \"A photography-first interface that turns marketing into a museum gallery. Edge-to-edge product tiles alternate light and dark canvases, framed by SF Pro Display headlines with negative letter-spacing and a single Action Blue (#0066cc) inter\",\n \"designMdPath\": \"/design-md/apple/DESIGN.md\",\n \"color\": {\n \"primary\": \"#0066cc\",\n \"primaryHover\": \"#0071e3\",\n \"primaryLight\": \"#e8f3ff\",\n \"bgPrimary\": \"#ffffff\",\n \"bgSecondary\": \"#f8f9fa\",\n \"textPrimary\": \"#1d1d1f\",\n \"textSecondary\": \"#cccccc\",\n \"textMuted\": \"#b0b8c1\",\n \"borderSubtle\": \"#e0e0e0\",\n \"borderStrong\": \"#e5e8eb\",\n \"statusSuccess\": \"#10b981\",\n \"statusDanger\": \"#f43f5e\",\n \"statusWarning\": \"#f59e0b\"\n },\n \"typography\": {\n \"fontFamily\": \"SF Pro Display, system-ui, -apple-system, sans-serif\",\n \"h1\": {\n \"fontSize\": 56,\n \"lineHeight\": 1.07,\n \"fontWeight\": 600,\n \"letterSpacing\": \"-0.28px\"\n },\n \"h2\": {\n \"fontSize\": 40,\n \"lineHeight\": 1.1,\n \"fontWeight\": 600,\n \"letterSpacing\": \"0\"\n },\n \"h3\": {\n \"fontSize\": 34,\n \"lineHeight\": 1.47,\n \"fontWeight\": 600,\n \"letterSpacing\": \"-0.374px\"\n },\n \"h4\": {\n \"fontSize\": 28,\n \"lineHeight\": 1.14,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0.196px\"\n },\n \"h5\": {\n \"fontSize\": 28,\n \"lineHeight\": 1.14,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0.196px\"\n },\n \"h6\": {\n \"fontSize\": 14,\n \"lineHeight\": 1.45,\n \"fontWeight\": 600,\n \"letterSpacing\": \"0em\"\n },\n \"body\": {\n \"fontSize\": 17,\n \"lineHeight\": 1.47,\n \"fontWeight\": 400,\n \"letterSpacing\": \"-0.374px\"\n },\n \"sm\": {\n \"fontSize\": 14,\n \"lineHeight\": 1.43,\n \"fontWeight\": 400,\n \"letterSpacing\": \"-0.224px\"\n },\n \"xs\": {\n \"fontSize\": 14,\n \"lineHeight\": 1.43,\n \"fontWeight\": 400,\n \"letterSpacing\": \"-0.224px\"\n }\n },\n \"borderRadius\": \"11px\"\n },\n {\n \"id\": \"binance\",\n \"name\": \"Binance\",\n \"category\": \"Fintech & Web3\",\n \"description\": \"A confident financial-platform interface anchored on a deep near-black canvas, where Binance's iconic yellow (#FCD535) carries every primary CTA, brand accent, and value-claim moment. Type runs Binance's custom BinanceNova / BinancePlex sta\",\n \"designMdPath\": \"/design-md/binance/DESIGN.md\",\n \"color\": {\n \"primary\": \"#fcd535\",\n \"primaryHover\": \"#fcd535\",\n \"primaryLight\": \"#e8f3ff\",\n \"bgPrimary\": \"#ffffff\",\n \"bgSecondary\": \"#f8f9fa\",\n \"textPrimary\": \"#181a20\",\n \"textSecondary\": \"#707a8a\",\n \"textMuted\": \"#b0b8c1\",\n \"borderSubtle\": \"#f2f4f6\",\n \"borderStrong\": \"#cdd1d6\",\n \"statusSuccess\": \"#10b981\",\n \"statusDanger\": \"#f43f5e\",\n \"statusWarning\": \"#f59e0b\"\n },\n \"typography\": {\n \"fontFamily\": \"BinanceNova, -apple-system, BlinkMacSystemFont, sans-serif\",\n \"h1\": {\n \"fontSize\": 64,\n \"lineHeight\": 1.1,\n \"fontWeight\": 700,\n \"letterSpacing\": \"-1px\"\n },\n \"h2\": {\n \"fontSize\": 48,\n \"lineHeight\": 1.1,\n \"fontWeight\": 700,\n \"letterSpacing\": \"-0.5px\"\n },\n \"h3\": {\n \"fontSize\": 40,\n \"lineHeight\": 1.15,\n \"fontWeight\": 600,\n \"letterSpacing\": \"-0.3px\"\n },\n \"h4\": {\n \"fontSize\": 18,\n \"lineHeight\": 1.35,\n \"fontWeight\": 600,\n \"letterSpacing\": \"-0.005em\"\n },\n \"h5\": {\n \"fontSize\": 16,\n \"lineHeight\": 1.4,\n \"fontWeight\": 600,\n \"letterSpacing\": \"0em\"\n },\n \"h6\": {\n \"fontSize\": 14,\n \"lineHeight\": 1,\n \"fontWeight\": 600,\n \"letterSpacing\": \"0\"\n },\n \"body\": {\n \"fontSize\": 15,\n \"lineHeight\": 1.55,\n \"fontWeight\": 400,\n \"letterSpacing\": \"-0.005em\"\n },\n \"sm\": {\n \"fontSize\": 13,\n \"lineHeight\": 1.5,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0\"\n },\n \"xs\": {\n \"fontSize\": 12,\n \"lineHeight\": 1.4,\n \"fontWeight\": 500,\n \"letterSpacing\": \"0\"\n }\n },\n \"borderRadius\": \"6px\"\n },\n {\n \"id\": \"bmw\",\n \"name\": \"BMW\",\n \"category\": \"Automotive & Luxury\",\n \"description\": \"BMW's corporate site — distinct from BMW M's motorsport-bombastic variant, this is a measured and settled corporate-automotive interface. On a light (cream-tinted white) canvas, BMW corporate blue (#1c69d4) carries every primary CTA; dark n\",\n \"designMdPath\": \"/design-md/bmw/DESIGN.md\",\n \"color\": {\n \"primary\": \"#1c69d4\",\n \"primaryHover\": \"#1c69d4\",\n \"primaryLight\": \"#e8f3ff\",\n \"bgPrimary\": \"#ffffff\",\n \"bgSecondary\": \"#fafafa\",\n \"textPrimary\": \"#262626\",\n \"textSecondary\": \"#6b6b6b\",\n \"textMuted\": \"#b0b8c1\",\n \"borderSubtle\": \"#e6e6e6\",\n \"borderStrong\": \"#cccccc\",\n \"statusSuccess\": \"#22c55e\",\n \"statusDanger\": \"#f43f5e\",\n \"statusWarning\": \"#f59e0b\"\n },\n \"typography\": {\n \"fontFamily\": \"'BMW Type Next Latin', system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif\",\n \"h1\": {\n \"fontSize\": 64,\n \"lineHeight\": 1.05,\n \"fontWeight\": 700,\n \"letterSpacing\": \"0\"\n },\n \"h2\": {\n \"fontSize\": 48,\n \"lineHeight\": 1.1,\n \"fontWeight\": 700,\n \"letterSpacing\": \"0\"\n },\n \"h3\": {\n \"fontSize\": 32,\n \"lineHeight\": 1.15,\n \"fontWeight\": 700,\n \"letterSpacing\": \"0\"\n },\n \"h4\": {\n \"fontSize\": 18,\n \"lineHeight\": 1.35,\n \"fontWeight\": 600,\n \"letterSpacing\": \"-0.005em\"\n },\n \"h5\": {\n \"fontSize\": 16,\n \"lineHeight\": 1.4,\n \"fontWeight\": 600,\n \"letterSpacing\": \"0em\"\n },\n \"h6\": {\n \"fontSize\": 14,\n \"lineHeight\": 1,\n \"fontWeight\": 700,\n \"letterSpacing\": \"0.5px\"\n },\n \"body\": {\n \"fontSize\": 15,\n \"lineHeight\": 1.55,\n \"fontWeight\": 400,\n \"letterSpacing\": \"-0.005em\"\n },\n \"sm\": {\n \"fontSize\": 14,\n \"lineHeight\": 1.55,\n \"fontWeight\": 300,\n \"letterSpacing\": \"0\"\n },\n \"xs\": {\n \"fontSize\": 12,\n \"lineHeight\": 1.4,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0.5px\"\n }\n },\n \"borderRadius\": \"8px\"\n },\n {\n \"id\": \"bmw-m\",\n \"name\": \"BMW-M\",\n \"category\": \"Automotive & Luxury\",\n \"description\": \"A motorsport-engineering interface anchored on a near-black canvas with white BMW Type Next Latin display headlines in confident UPPERCASE. The brand carries no decorative voltage — its energy comes from full-bleed automotive photography (c\",\n \"designMdPath\": \"/design-md/bmw-m/DESIGN.md\",\n \"color\": {\n \"primary\": \"#ffffff\",\n \"primaryHover\": \"#ffffff\",\n \"primaryLight\": \"#ffffff26\",\n \"bgPrimary\": \"#000000\",\n \"bgSecondary\": \"#1a1a1a\",\n \"textPrimary\": \"#ffffff\",\n \"textSecondary\": \"#7e7e7e\",\n \"textMuted\": \"#5c6470\",\n \"borderSubtle\": \"#3c3c3c\",\n \"borderStrong\": \"#262626\",\n \"statusSuccess\": \"#0fa336\",\n \"statusDanger\": \"#f43f5e\",\n \"statusWarning\": \"#f4b400\"\n },\n \"typography\": {\n \"fontFamily\": \"BMWTypeNextLatin, sans-serif\",\n \"h1\": {\n \"fontSize\": 80,\n \"lineHeight\": 1,\n \"fontWeight\": 700,\n \"letterSpacing\": \"0\"\n },\n \"h2\": {\n \"fontSize\": 56,\n \"lineHeight\": 1.05,\n \"fontWeight\": 700,\n \"letterSpacing\": \"0\"\n },\n \"h3\": {\n \"fontSize\": 40,\n \"lineHeight\": 1.1,\n \"fontWeight\": 700,\n \"letterSpacing\": \"0\"\n },\n \"h4\": {\n \"fontSize\": 18,\n \"lineHeight\": 1.35,\n \"fontWeight\": 600,\n \"letterSpacing\": \"-0.005em\"\n },\n \"h5\": {\n \"fontSize\": 16,\n \"lineHeight\": 1.4,\n \"fontWeight\": 600,\n \"letterSpacing\": \"0em\"\n },\n \"h6\": {\n \"fontSize\": 14,\n \"lineHeight\": 1,\n \"fontWeight\": 700,\n \"letterSpacing\": \"1.5px\"\n },\n \"body\": {\n \"fontSize\": 15,\n \"lineHeight\": 1.55,\n \"fontWeight\": 400,\n \"letterSpacing\": \"-0.005em\"\n },\n \"sm\": {\n \"fontSize\": 14,\n \"lineHeight\": 1.5,\n \"fontWeight\": 300,\n \"letterSpacing\": \"0\"\n },\n \"xs\": {\n \"fontSize\": 12,\n \"lineHeight\": 1.4,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0.5px\"\n }\n },\n \"borderRadius\": \"6px\"\n },\n {\n \"id\": \"bugatti\",\n \"name\": \"Bugatti\",\n \"category\": \"Automotive & Luxury\",\n \"description\": \"An austere luxury-automotive interface that uses near-pure black canvas, white uppercase letterspaced display, and full-bleed automotive photography as the only voltage. The system runs three custom Bugatti typefaces — Bugatti Display, Buga\",\n \"designMdPath\": \"/design-md/bugatti/DESIGN.md\",\n \"color\": {\n \"primary\": \"#ffffff\",\n \"primaryHover\": \"#ffffff\",\n \"primaryLight\": \"#ffffff26\",\n \"bgPrimary\": \"#000000\",\n \"bgSecondary\": \"#141414\",\n \"textPrimary\": \"#ffffff\",\n \"textSecondary\": \"#999999\",\n \"textMuted\": \"#5c6470\",\n \"borderSubtle\": \"#262626\",\n \"borderStrong\": \"#3a3a3a\",\n \"statusSuccess\": \"#5fa657\",\n \"statusDanger\": \"#f43f5e\",\n \"statusWarning\": \"#d4a017\"\n },\n \"typography\": {\n \"fontFamily\": \"Bugatti Display, sans-serif\",\n \"h1\": {\n \"fontSize\": 64,\n \"lineHeight\": 1.1,\n \"fontWeight\": 400,\n \"letterSpacing\": \"4px\"\n },\n \"h2\": {\n \"fontSize\": 48,\n \"lineHeight\": 1.15,\n \"fontWeight\": 400,\n \"letterSpacing\": \"3px\"\n },\n \"h3\": {\n \"fontSize\": 32,\n \"lineHeight\": 1.2,\n \"fontWeight\": 400,\n \"letterSpacing\": \"2px\"\n },\n \"h4\": {\n \"fontSize\": 18,\n \"lineHeight\": 1.35,\n \"fontWeight\": 600,\n \"letterSpacing\": \"-0.005em\"\n },\n \"h5\": {\n \"fontSize\": 16,\n \"lineHeight\": 1.4,\n \"fontWeight\": 600,\n \"letterSpacing\": \"0em\"\n },\n \"h6\": {\n \"fontSize\": 14,\n \"lineHeight\": 1,\n \"fontWeight\": 400,\n \"letterSpacing\": \"2.5px\"\n },\n \"body\": {\n \"fontSize\": 15,\n \"lineHeight\": 1.55,\n \"fontWeight\": 400,\n \"letterSpacing\": \"-0.005em\"\n },\n \"sm\": {\n \"fontSize\": 14,\n \"lineHeight\": 1.5,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0\"\n },\n \"xs\": {\n \"fontSize\": 11,\n \"lineHeight\": 1.4,\n \"fontWeight\": 500,\n \"letterSpacing\": \"0.01em\"\n }\n },\n \"borderRadius\": \"12px\"\n },\n {\n \"id\": \"cal\",\n \"name\": \"Cal.com\",\n \"category\": \"Tech & Lifestyle\",\n \"description\": \"A clean, calendar-software-first interface anchored on white canvas with black primary CTAs and custom Cal Sans display typography. The system reads as friendly modern SaaS — generous whitespace, soft-rounded cards (~12px), product UI fragm\",\n \"designMdPath\": \"/design-md/cal/DESIGN.md\",\n \"color\": {\n \"primary\": \"#111111\",\n \"primaryHover\": \"#111111\",\n \"primaryLight\": \"#e8f3ff\",\n \"bgPrimary\": \"#ffffff\",\n \"bgSecondary\": \"#f5f5f5\",\n \"textPrimary\": \"#111111\",\n \"textSecondary\": \"#6b7280\",\n \"textMuted\": \"#b0b8c1\",\n \"borderSubtle\": \"#e5e7eb\",\n \"borderStrong\": \"#e5e8eb\",\n \"statusSuccess\": \"#10b981\",\n \"statusDanger\": \"#f43f5e\",\n \"statusWarning\": \"#f59e0b\"\n },\n \"typography\": {\n \"fontFamily\": \"Cal Sans, Inter, sans-serif\",\n \"h1\": {\n \"fontSize\": 64,\n \"lineHeight\": 1.05,\n \"fontWeight\": 600,\n \"letterSpacing\": \"-2px\"\n },\n \"h2\": {\n \"fontSize\": 48,\n \"lineHeight\": 1.1,\n \"fontWeight\": 600,\n \"letterSpacing\": \"-1.5px\"\n },\n \"h3\": {\n \"fontSize\": 36,\n \"lineHeight\": 1.15,\n \"fontWeight\": 600,\n \"letterSpacing\": \"-1px\"\n },\n \"h4\": {\n \"fontSize\": 18,\n \"lineHeight\": 1.35,\n \"fontWeight\": 600,\n \"letterSpacing\": \"-0.005em\"\n },\n \"h5\": {\n \"fontSize\": 16,\n \"lineHeight\": 1.4,\n \"fontWeight\": 600,\n \"letterSpacing\": \"0em\"\n },\n \"h6\": {\n \"fontSize\": 14,\n \"lineHeight\": 1,\n \"fontWeight\": 600,\n \"letterSpacing\": \"0\"\n },\n \"body\": {\n \"fontSize\": 15,\n \"lineHeight\": 1.55,\n \"fontWeight\": 400,\n \"letterSpacing\": \"-0.005em\"\n },\n \"sm\": {\n \"fontSize\": 14,\n \"lineHeight\": 1.5,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0\"\n },\n \"xs\": {\n \"fontSize\": 13,\n \"lineHeight\": 1.4,\n \"fontWeight\": 500,\n \"letterSpacing\": \"0\"\n }\n },\n \"borderRadius\": \"8px\"\n },\n {\n \"id\": \"claude\",\n \"name\": \"Claude\",\n \"category\": \"AI & LLM\",\n \"description\": \"A warm-canvas editorial interface for Anthropic's Claude product. The system anchors on a tinted cream canvas with serif display headlines, warm coral CTAs, and dark navy product surfaces (code editor mockups, model showcase cards). Brand v\",\n \"designMdPath\": \"/design-md/claude/DESIGN.md\",\n \"color\": {\n \"primary\": \"#cc785c\",\n \"primaryHover\": \"#cc785c\",\n \"primaryLight\": \"#e8f3ff\",\n \"bgPrimary\": \"#faf9f5\",\n \"bgSecondary\": \"#efe9de\",\n \"textPrimary\": \"#141413\",\n \"textSecondary\": \"#6c6a64\",\n \"textMuted\": \"#b0b8c1\",\n \"borderSubtle\": \"#e6dfd8\",\n \"borderStrong\": \"#e5e8eb\",\n \"statusSuccess\": \"#5db872\",\n \"statusDanger\": \"#f43f5e\",\n \"statusWarning\": \"#d4a017\"\n },\n \"typography\": {\n \"fontFamily\": \"Copernicus, Tiempos Headline, serif\",\n \"h1\": {\n \"fontSize\": 64,\n \"lineHeight\": 1.05,\n \"fontWeight\": 400,\n \"letterSpacing\": \"-1.5px\"\n },\n \"h2\": {\n \"fontSize\": 48,\n \"lineHeight\": 1.1,\n \"fontWeight\": 400,\n \"letterSpacing\": \"-1px\"\n },\n \"h3\": {\n \"fontSize\": 36,\n \"lineHeight\": 1.15,\n \"fontWeight\": 400,\n \"letterSpacing\": \"-0.5px\"\n },\n \"h4\": {\n \"fontSize\": 18,\n \"lineHeight\": 1.35,\n \"fontWeight\": 600,\n \"letterSpacing\": \"-0.005em\"\n },\n \"h5\": {\n \"fontSize\": 16,\n \"lineHeight\": 1.4,\n \"fontWeight\": 600,\n \"letterSpacing\": \"0em\"\n },\n \"h6\": {\n \"fontSize\": 14,\n \"lineHeight\": 1,\n \"fontWeight\": 500,\n \"letterSpacing\": \"0\"\n },\n \"body\": {\n \"fontSize\": 15,\n \"lineHeight\": 1.55,\n \"fontWeight\": 400,\n \"letterSpacing\": \"-0.005em\"\n },\n \"sm\": {\n \"fontSize\": 14,\n \"lineHeight\": 1.55,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0\"\n },\n \"xs\": {\n \"fontSize\": 13,\n \"lineHeight\": 1.4,\n \"fontWeight\": 500,\n \"letterSpacing\": \"0\"\n }\n },\n \"borderRadius\": \"8px\"\n },\n {\n \"id\": \"clay\",\n \"name\": \"Clay\",\n \"category\": \"Tech & Lifestyle\",\n \"description\": \"A vibrant claymation-meets-data interface for Clay.com (GTM data-orchestration platform). Anchors on white canvas with dark-navy primary CTAs, custom rounded display type, and saturated single-color feature cards — hot pink, deep teal, lave\",\n \"designMdPath\": \"/design-md/clay/DESIGN.md\",\n \"color\": {\n \"primary\": \"#0a0a0a\",\n \"primaryHover\": \"#0a0a0a\",\n \"primaryLight\": \"#e8f3ff\",\n \"bgPrimary\": \"#fffaf0\",\n \"bgSecondary\": \"#f5f0e0\",\n \"textPrimary\": \"#0a0a0a\",\n \"textSecondary\": \"#6a6a6a\",\n \"textMuted\": \"#b0b8c1\",\n \"borderSubtle\": \"#e5e5e5\",\n \"borderStrong\": \"#e5e8eb\",\n \"statusSuccess\": \"#22c55e\",\n \"statusDanger\": \"#f43f5e\",\n \"statusWarning\": \"#f59e0b\"\n },\n \"typography\": {\n \"fontFamily\": \"Plain Black, Inter, sans-serif\",\n \"h1\": {\n \"fontSize\": 72,\n \"lineHeight\": 1,\n \"fontWeight\": 500,\n \"letterSpacing\": \"-2.5px\"\n },\n \"h2\": {\n \"fontSize\": 56,\n \"lineHeight\": 1.05,\n \"fontWeight\": 500,\n \"letterSpacing\": \"-2px\"\n },\n \"h3\": {\n \"fontSize\": 40,\n \"lineHeight\": 1.1,\n \"fontWeight\": 500,\n \"letterSpacing\": \"-1px\"\n },\n \"h4\": {\n \"fontSize\": 18,\n \"lineHeight\": 1.35,\n \"fontWeight\": 600,\n \"letterSpacing\": \"-0.005em\"\n },\n \"h5\": {\n \"fontSize\": 16,\n \"lineHeight\": 1.4,\n \"fontWeight\": 600,\n \"letterSpacing\": \"0em\"\n },\n \"h6\": {\n \"fontSize\": 14,\n \"lineHeight\": 1,\n \"fontWeight\": 600,\n \"letterSpacing\": \"0\"\n },\n \"body\": {\n \"fontSize\": 15,\n \"lineHeight\": 1.55,\n \"fontWeight\": 400,\n \"letterSpacing\": \"-0.005em\"\n },\n \"sm\": {\n \"fontSize\": 14,\n \"lineHeight\": 1.55,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0\"\n },\n \"xs\": {\n \"fontSize\": 13,\n \"lineHeight\": 1.4,\n \"fontWeight\": 500,\n \"letterSpacing\": \"0\"\n }\n },\n \"borderRadius\": \"12px\"\n },\n {\n \"id\": \"clickhouse\",\n \"name\": \"ClickHouse\",\n \"category\": \"Tech & Lifestyle\",\n \"description\": \"A high-performance database interface anchored on near-pure black canvas with electric yellow as the brand voltage. White typography in confident sans, yellow CTAs, and yellow-text stat numbers carry the brand voice across every page. Code \",\n \"designMdPath\": \"/design-md/clickhouse/DESIGN.md\",\n \"color\": {\n \"primary\": \"#faff69\",\n \"primaryHover\": \"#faff69\",\n \"primaryLight\": \"#faff6926\",\n \"bgPrimary\": \"#0a0a0a\",\n \"bgSecondary\": \"#1a1a1a\",\n \"textPrimary\": \"#ffffff\",\n \"textSecondary\": \"#888888\",\n \"textMuted\": \"#5c6470\",\n \"borderSubtle\": \"#2a2a2a\",\n \"borderStrong\": \"#3a3a3a\",\n \"statusSuccess\": \"#22c55e\",\n \"statusDanger\": \"#f43f5e\",\n \"statusWarning\": \"#f59e0b\"\n },\n \"typography\": {\n \"fontFamily\": \"Inter, sans-serif\",\n \"h1\": {\n \"fontSize\": 72,\n \"lineHeight\": 1.05,\n \"fontWeight\": 700,\n \"letterSpacing\": \"-2.5px\"\n },\n \"h2\": {\n \"fontSize\": 56,\n \"lineHeight\": 1.1,\n \"fontWeight\": 700,\n \"letterSpacing\": \"-2px\"\n },\n \"h3\": {\n \"fontSize\": 40,\n \"lineHeight\": 1.15,\n \"fontWeight\": 700,\n \"letterSpacing\": \"-1.5px\"\n },\n \"h4\": {\n \"fontSize\": 18,\n \"lineHeight\": 1.35,\n \"fontWeight\": 600,\n \"letterSpacing\": \"-0.005em\"\n },\n \"h5\": {\n \"fontSize\": 16,\n \"lineHeight\": 1.4,\n \"fontWeight\": 600,\n \"letterSpacing\": \"0em\"\n },\n \"h6\": {\n \"fontSize\": 14,\n \"lineHeight\": 1,\n \"fontWeight\": 600,\n \"letterSpacing\": \"0\"\n },\n \"body\": {\n \"fontSize\": 15,\n \"lineHeight\": 1.55,\n \"fontWeight\": 400,\n \"letterSpacing\": \"-0.005em\"\n },\n \"sm\": {\n \"fontSize\": 14,\n \"lineHeight\": 1.55,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0\"\n },\n \"xs\": {\n \"fontSize\": 13,\n \"lineHeight\": 1.4,\n \"fontWeight\": 500,\n \"letterSpacing\": \"0\"\n }\n },\n \"borderRadius\": \"8px\"\n },\n {\n \"id\": \"cohere\",\n \"name\": \"Cohere\",\n \"category\": \"AI & LLM\",\n \"description\": \"Cohere's 2026 web system is a controlled enterprise AI interface built from stark white editorial space, deep green-black product bands, soft mineral surfaces, rounded media cards, and a distinctive type split between monospaced-feeling dis\",\n \"designMdPath\": \"/design-md/cohere/DESIGN.md\",\n \"color\": {\n \"primary\": \"#17171c\",\n \"primaryHover\": \"#17171c\",\n \"primaryLight\": \"#e8f3ff\",\n \"bgPrimary\": \"#ffffff\",\n \"bgSecondary\": \"#f8f9fa\",\n \"textPrimary\": \"#212121\",\n \"textSecondary\": \"#616161\",\n \"textMuted\": \"#b0b8c1\",\n \"borderSubtle\": \"#d9d9dd\",\n \"borderStrong\": \"#e5e8eb\",\n \"statusSuccess\": \"#10b981\",\n \"statusDanger\": \"#f43f5e\",\n \"statusWarning\": \"#f59e0b\"\n },\n \"typography\": {\n \"fontFamily\": \"CohereText\",\n \"h1\": {\n \"fontSize\": 96,\n \"lineHeight\": 1,\n \"fontWeight\": 400,\n \"letterSpacing\": \"-1.92px\"\n },\n \"h2\": {\n \"fontSize\": 28,\n \"lineHeight\": 1.25,\n \"fontWeight\": 700,\n \"letterSpacing\": \"-0.015em\"\n },\n \"h3\": {\n \"fontSize\": 22,\n \"lineHeight\": 1.3,\n \"fontWeight\": 600,\n \"letterSpacing\": \"-0.01em\"\n },\n \"h4\": {\n \"fontSize\": 18,\n \"lineHeight\": 1.35,\n \"fontWeight\": 600,\n \"letterSpacing\": \"-0.005em\"\n },\n \"h5\": {\n \"fontSize\": 16,\n \"lineHeight\": 1.4,\n \"fontWeight\": 600,\n \"letterSpacing\": \"0em\"\n },\n \"h6\": {\n \"fontSize\": 14,\n \"lineHeight\": 1.71,\n \"fontWeight\": 500,\n \"letterSpacing\": \"0\"\n },\n \"body\": {\n \"fontSize\": 16,\n \"lineHeight\": 1.5,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0\"\n },\n \"sm\": {\n \"fontSize\": 14,\n \"lineHeight\": 1.4,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0\"\n },\n \"xs\": {\n \"fontSize\": 14,\n \"lineHeight\": 1.4,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0\"\n }\n },\n \"borderRadius\": \"16px\"\n },\n {\n \"id\": \"coinbase\",\n \"name\": \"Coinbase\",\n \"category\": \"Fintech & Web3\",\n \"description\": \"An institutional-grade crypto exchange whose marketing surfaces read like a quietly-confident financial-services brand. The base canvas is pure white; Coinbase Blue (`#0052ff`) is the single brand voltage, used scarcely on primary CTAs, sig\",\n \"designMdPath\": \"/design-md/coinbase/DESIGN.md\",\n \"color\": {\n \"primary\": \"#0052ff\",\n \"primaryHover\": \"#0052ff\",\n \"primaryLight\": \"#e8f3ff\",\n \"bgPrimary\": \"#ffffff\",\n \"bgSecondary\": \"#ffffff\",\n \"textPrimary\": \"#0a0b0d\",\n \"textSecondary\": \"#7c828a\",\n \"textMuted\": \"#b0b8c1\",\n \"borderSubtle\": \"#dee1e6\",\n \"borderStrong\": \"#e5e8eb\",\n \"statusSuccess\": \"#10b981\",\n \"statusDanger\": \"#f43f5e\",\n \"statusWarning\": \"#f59e0b\"\n },\n \"typography\": {\n \"fontFamily\": \"'Coinbase Display', sans-serif\",\n \"h1\": {\n \"fontSize\": 64,\n \"lineHeight\": 1,\n \"fontWeight\": 400,\n \"letterSpacing\": \"-1.6px\"\n },\n \"h2\": {\n \"fontSize\": 52,\n \"lineHeight\": 1,\n \"fontWeight\": 400,\n \"letterSpacing\": \"-1.3px\"\n },\n \"h3\": {\n \"fontSize\": 44,\n \"lineHeight\": 1.09,\n \"fontWeight\": 400,\n \"letterSpacing\": \"-1px\"\n },\n \"h4\": {\n \"fontSize\": 18,\n \"lineHeight\": 1.35,\n \"fontWeight\": 600,\n \"letterSpacing\": \"-0.005em\"\n },\n \"h5\": {\n \"fontSize\": 16,\n \"lineHeight\": 1.4,\n \"fontWeight\": 600,\n \"letterSpacing\": \"0em\"\n },\n \"h6\": {\n \"fontSize\": 16,\n \"lineHeight\": 1.15,\n \"fontWeight\": 600,\n \"letterSpacing\": \"0\"\n },\n \"body\": {\n \"fontSize\": 15,\n \"lineHeight\": 1.55,\n \"fontWeight\": 400,\n \"letterSpacing\": \"-0.005em\"\n },\n \"sm\": {\n \"fontSize\": 14,\n \"lineHeight\": 1.5,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0\"\n },\n \"xs\": {\n \"fontSize\": 13,\n \"lineHeight\": 1.5,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0\"\n }\n },\n \"borderRadius\": \"12px\"\n },\n {\n \"id\": \"composio\",\n \"name\": \"Composio\",\n \"category\": \"Tech & Lifestyle\",\n \"description\": \"A developer-tools brand for AI-agent tool integration whose marketing surfaces lean into a dark, technical aesthetic with a single deep-electric-blue voltage (`#0007cd`). The page floor is near-black (`#0f0f0f`); cards float above on subtle\",\n \"designMdPath\": \"/design-md/composio/DESIGN.md\",\n \"color\": {\n \"primary\": \"#0007cd\",\n \"primaryHover\": \"#0007cd\",\n \"primaryLight\": \"#0007cd26\",\n \"bgPrimary\": \"#0f0f0f\",\n \"bgSecondary\": \"#181818\",\n \"textPrimary\": \"#ffffff\",\n \"textSecondary\": \"#888888\",\n \"textMuted\": \"#5c6470\",\n \"borderSubtle\": \"#222222\",\n \"borderStrong\": \"#333333\",\n \"statusSuccess\": \"#33d17a\",\n \"statusDanger\": \"#f43f5e\",\n \"statusWarning\": \"#f59e0b\"\n },\n \"typography\": {\n \"fontFamily\": \"'abcDiatype', ui-sans-serif, system-ui, sans-serif\",\n \"h1\": {\n \"fontSize\": 56,\n \"lineHeight\": 1.05,\n \"fontWeight\": 500,\n \"letterSpacing\": \"-1.68px\"\n },\n \"h2\": {\n \"fontSize\": 44,\n \"lineHeight\": 1.1,\n \"fontWeight\": 500,\n \"letterSpacing\": \"-1.32px\"\n },\n \"h3\": {\n \"fontSize\": 32,\n \"lineHeight\": 1.15,\n \"fontWeight\": 500,\n \"letterSpacing\": \"-0.96px\"\n },\n \"h4\": {\n \"fontSize\": 18,\n \"lineHeight\": 1.35,\n \"fontWeight\": 600,\n \"letterSpacing\": \"-0.005em\"\n },\n \"h5\": {\n \"fontSize\": 16,\n \"lineHeight\": 1.4,\n \"fontWeight\": 600,\n \"letterSpacing\": \"0em\"\n },\n \"h6\": {\n \"fontSize\": 14,\n \"lineHeight\": 1,\n \"fontWeight\": 500,\n \"letterSpacing\": \"0\"\n },\n \"body\": {\n \"fontSize\": 15,\n \"lineHeight\": 1.55,\n \"fontWeight\": 400,\n \"letterSpacing\": \"-0.005em\"\n },\n \"sm\": {\n \"fontSize\": 14,\n \"lineHeight\": 1.5,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0\"\n },\n \"xs\": {\n \"fontSize\": 13,\n \"lineHeight\": 1.4,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0\"\n }\n },\n \"borderRadius\": \"8px\"\n },\n {\n \"id\": \"cursor\",\n \"name\": \"Cursor\",\n \"category\": \"Developer Tools\",\n \"description\": \"An AI-first code editor whose marketing site reads like a quietly-confident developer-tools brand with a warm-cream editorial canvas (`#f7f7f4`) instead of the typical dark IDE atmosphere. Near-black warm ink (`#26251e`) carries body and di\",\n \"designMdPath\": \"/design-md/cursor/DESIGN.md\",\n \"color\": {\n \"primary\": \"#f54e00\",\n \"primaryHover\": \"#f54e00\",\n \"primaryLight\": \"#e8f3ff\",\n \"bgPrimary\": \"#f7f7f4\",\n \"bgSecondary\": \"#ffffff\",\n \"textPrimary\": \"#26251e\",\n \"textSecondary\": \"#807d72\",\n \"textMuted\": \"#b0b8c1\",\n \"borderSubtle\": \"#e6e5e0\",\n \"borderStrong\": \"#cfcdc4\",\n \"statusSuccess\": \"#1f8a65\",\n \"statusDanger\": \"#f43f5e\",\n \"statusWarning\": \"#f59e0b\"\n },\n \"typography\": {\n \"fontFamily\": \"'CursorGothic', sans-serif\",\n \"h1\": {\n \"fontSize\": 36,\n \"lineHeight\": 1.2,\n \"fontWeight\": 400,\n \"letterSpacing\": \"-0.72px\"\n },\n \"h2\": {\n \"fontSize\": 36,\n \"lineHeight\": 1.2,\n \"fontWeight\": 400,\n \"letterSpacing\": \"-0.72px\"\n },\n \"h3\": {\n \"fontSize\": 26,\n \"lineHeight\": 1.25,\n \"fontWeight\": 400,\n \"letterSpacing\": \"-0.325px\"\n },\n \"h4\": {\n \"fontSize\": 18,\n \"lineHeight\": 1.35,\n \"fontWeight\": 600,\n \"letterSpacing\": \"-0.005em\"\n },\n \"h5\": {\n \"fontSize\": 16,\n \"lineHeight\": 1.4,\n \"fontWeight\": 600,\n \"letterSpacing\": \"0em\"\n },\n \"h6\": {\n \"fontSize\": 14,\n \"lineHeight\": 1,\n \"fontWeight\": 500,\n \"letterSpacing\": \"0\"\n },\n \"body\": {\n \"fontSize\": 15,\n \"lineHeight\": 1.55,\n \"fontWeight\": 400,\n \"letterSpacing\": \"-0.005em\"\n },\n \"sm\": {\n \"fontSize\": 14,\n \"lineHeight\": 1.5,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0\"\n },\n \"xs\": {\n \"fontSize\": 13,\n \"lineHeight\": 1.4,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0\"\n }\n },\n \"borderRadius\": \"8px\"\n },\n {\n \"id\": \"dell-1996\",\n \"name\": \"Dell 1996 Inspired\",\n \"category\": \"Tech & Lifestyle\",\n \"description\": \"An inspired interpretation of Dell.com's 1996 design language — a catalog-era enterprise web design built around a literal black page frame, vivid flat color-block \\\\\\\"ribbon cards\\\\\\\" tinted in sage, salmon, periwinkle, sky, peach and lime, ch\",\n \"designMdPath\": \"/design-md/dell-1996/DESIGN.md\",\n \"color\": {\n \"primary\": \"#e91d2a\",\n \"primaryHover\": \"#e91d2a\",\n \"primaryLight\": \"#e8f3ff\",\n \"bgPrimary\": \"#ffffff\",\n \"bgSecondary\": \"#ffffff\",\n \"textPrimary\": \"#000000\",\n \"textSecondary\": \"#8b95a1\",\n \"textMuted\": \"#b0b8c1\",\n \"borderSubtle\": \"#f2f4f6\",\n \"borderStrong\": \"#e5e8eb\",\n \"statusSuccess\": \"#10b981\",\n \"statusDanger\": \"#f43f5e\",\n \"statusWarning\": \"#f59e0b\"\n },\n \"typography\": {\n \"fontFamily\": \"Times New Roman\",\n \"h1\": {\n \"fontSize\": 36,\n \"lineHeight\": 1.2,\n \"fontWeight\": 700,\n \"letterSpacing\": \"-0.02em\"\n },\n \"h2\": {\n \"fontSize\": 28,\n \"lineHeight\": 1.25,\n \"fontWeight\": 700,\n \"letterSpacing\": \"-0.015em\"\n },\n \"h3\": {\n \"fontSize\": 22,\n \"lineHeight\": 1.3,\n \"fontWeight\": 600,\n \"letterSpacing\": \"-0.01em\"\n },\n \"h4\": {\n \"fontSize\": 18,\n \"lineHeight\": 1.35,\n \"fontWeight\": 600,\n \"letterSpacing\": \"-0.005em\"\n },\n \"h5\": {\n \"fontSize\": 16,\n \"lineHeight\": 1.4,\n \"fontWeight\": 600,\n \"letterSpacing\": \"0em\"\n },\n \"h6\": {\n \"fontSize\": 12,\n \"lineHeight\": 1,\n \"fontWeight\": 700,\n \"letterSpacing\": \"0\"\n },\n \"body\": {\n \"fontSize\": 14,\n \"lineHeight\": 1.4,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0\"\n },\n \"sm\": {\n \"fontSize\": 12,\n \"lineHeight\": 1.4,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0\"\n },\n \"xs\": {\n \"fontSize\": 11,\n \"lineHeight\": 1.35,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0\"\n }\n },\n \"borderRadius\": \"12px\"\n },\n {\n \"id\": \"dji\",\n \"name\": \"DJI Analysis\",\n \"category\": \"Automotive & Luxury\",\n \"description\": \"An analysis of DJI's design language — a product-photography showroom for drones and cameras, where full-bleed studio renders sit in square, gutter-separated tiles on a white canvas, every action is a rounded pill in a single engineering bl\",\n \"designMdPath\": \"/design-md/dji/DESIGN.md\",\n \"color\": {\n \"primary\": \"#0070d5\\\" # DJI Blue — Store pill, Buy Now pills, active selector, announcement link\",\n \"primaryHover\": \"#0070d5\\\" # DJI Blue — Store pill, Buy Now pills, active selector, announcement link\",\n \"primaryLight\": \"#e8f3ff\",\n \"bgPrimary\": \"#ffffff\\\" # page canvas, cards, nav, purchase bar\",\n \"bgSecondary\": \"#f7f9fa\\\" # feature-link band, store panels, In the Box tiles, store footer\",\n \"textPrimary\": \"#262626\\\" # headings and body (black at 85%)\",\n \"textSecondary\": \"#595959\\\" # secondary text, inactive tabs (black at 65%)\",\n \"textMuted\": \"#8c8c8c\\\" # tile eyebrows (black at 45%)\",\n \"borderSubtle\": \"#f0f0f0\\\" # tab track rule\",\n \"borderStrong\": \"#e5e8eb\",\n \"statusSuccess\": \"#10b981\",\n \"statusDanger\": \"#f43f5e\",\n \"statusWarning\": \"#f59e0b\"\n },\n \"typography\": {\n \"fontFamily\": \"Open Sans\",\n \"h1\": {\n \"fontSize\": 48,\n \"lineHeight\": 1.08,\n \"fontWeight\": 600,\n \"letterSpacing\": \"-1.44px\"\n },\n \"h2\": {\n \"fontSize\": 28,\n \"lineHeight\": 1.25,\n \"fontWeight\": 700,\n \"letterSpacing\": \"-0.015em\"\n },\n \"h3\": {\n \"fontSize\": 22,\n \"lineHeight\": 1.3,\n \"fontWeight\": 600,\n \"letterSpacing\": \"-0.01em\"\n },\n \"h4\": {\n \"fontSize\": 20,\n \"lineHeight\": 1.2,\n \"fontWeight\": 600,\n \"letterSpacing\": \"-0.6px\"\n },\n \"h5\": {\n \"fontSize\": 20,\n \"lineHeight\": 1.2,\n \"fontWeight\": 600,\n \"letterSpacing\": \"-0.6px\"\n },\n \"h6\": {\n \"fontSize\": 16,\n \"lineHeight\": 1.25,\n \"fontWeight\": 400,\n \"letterSpacing\": \"-0.32px\"\n },\n \"body\": {\n \"fontSize\": 16,\n \"lineHeight\": 1.5,\n \"fontWeight\": 400,\n \"letterSpacing\": \"-0.32px\"\n },\n \"sm\": {\n \"fontSize\": 12,\n \"lineHeight\": 1.33,\n \"fontWeight\": 400,\n \"letterSpacing\": \"-0.24px\"\n },\n \"xs\": {\n \"fontSize\": 12,\n \"lineHeight\": 1.33,\n \"fontWeight\": 400,\n \"letterSpacing\": \"-0.24px\"\n }\n },\n \"borderRadius\": \"8px\"\n },\n {\n \"id\": \"elevenlabs\",\n \"name\": \"ElevenLabs\",\n \"category\": \"AI & LLM\",\n \"description\": \"A voice-AI brand whose marketing surfaces read like a quietly editorial print magazine. The base canvas is off-white (`#f5f5f5`) holding warm near-black ink (`#292524`); the brand voltage is photographic, not chromatic — soft pastel atmosph\",\n \"designMdPath\": \"/design-md/elevenlabs/DESIGN.md\",\n \"color\": {\n \"primary\": \"#292524\",\n \"primaryHover\": \"#292524\",\n \"primaryLight\": \"#e8f3ff\",\n \"bgPrimary\": \"#f5f5f5\",\n \"bgSecondary\": \"#ffffff\",\n \"textPrimary\": \"#0c0a09\",\n \"textSecondary\": \"#777169\",\n \"textMuted\": \"#b0b8c1\",\n \"borderSubtle\": \"#e7e5e4\",\n \"borderStrong\": \"#d6d3d1\",\n \"statusSuccess\": \"#16a34a\",\n \"statusDanger\": \"#f43f5e\",\n \"statusWarning\": \"#f59e0b\"\n },\n \"typography\": {\n \"fontFamily\": \"'Waldenburg', serif\",\n \"h1\": {\n \"fontSize\": 48,\n \"lineHeight\": 1.08,\n \"fontWeight\": 300,\n \"letterSpacing\": \"-0.96px\"\n },\n \"h2\": {\n \"fontSize\": 36,\n \"lineHeight\": 1.17,\n \"fontWeight\": 300,\n \"letterSpacing\": \"-0.36px\"\n },\n \"h3\": {\n \"fontSize\": 32,\n \"lineHeight\": 1.13,\n \"fontWeight\": 300,\n \"letterSpacing\": \"-0.32px\"\n },\n \"h4\": {\n \"fontSize\": 18,\n \"lineHeight\": 1.35,\n \"fontWeight\": 600,\n \"letterSpacing\": \"-0.005em\"\n },\n \"h5\": {\n \"fontSize\": 16,\n \"lineHeight\": 1.4,\n \"fontWeight\": 600,\n \"letterSpacing\": \"0em\"\n },\n \"h6\": {\n \"fontSize\": 15,\n \"lineHeight\": 1,\n \"fontWeight\": 500,\n \"letterSpacing\": \"0\"\n },\n \"body\": {\n \"fontSize\": 15,\n \"lineHeight\": 1.55,\n \"fontWeight\": 400,\n \"letterSpacing\": \"-0.005em\"\n },\n \"sm\": {\n \"fontSize\": 15,\n \"lineHeight\": 1.47,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0.15px\"\n },\n \"xs\": {\n \"fontSize\": 14,\n \"lineHeight\": 1.5,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0\"\n }\n },\n \"borderRadius\": \"8px\"\n },\n {\n \"id\": \"expo\",\n \"name\": \"Expo\",\n \"category\": \"Developer Tools\",\n \"description\": \"A React Native developer-platform whose marketing site reads like a quietly-confident infrastructure brand. The base canvas is pure white with a soft sky-blue gradient atmospheric wash behind the hero; near-black ink (`#171717`) carries bod\",\n \"designMdPath\": \"/design-md/expo/DESIGN.md\",\n \"color\": {\n \"primary\": \"#000000\",\n \"primaryHover\": \"#000000\",\n \"primaryLight\": \"#e8f3ff\",\n \"bgPrimary\": \"#ffffff\",\n \"bgSecondary\": \"#ffffff\",\n \"textPrimary\": \"#171717\",\n \"textSecondary\": \"#999999\",\n \"textMuted\": \"#b0b8c1\",\n \"borderSubtle\": \"#f0f0f3\",\n \"borderStrong\": \"#dcdee0\",\n \"statusSuccess\": \"#16a34a\",\n \"statusDanger\": \"#f43f5e\",\n \"statusWarning\": \"#f59e0b\"\n },\n \"typography\": {\n \"fontFamily\": \"'Inter', sans-serif\",\n \"h1\": {\n \"fontSize\": 48,\n \"lineHeight\": 1.1,\n \"fontWeight\": 600,\n \"letterSpacing\": \"-1.44px\"\n },\n \"h2\": {\n \"fontSize\": 36,\n \"lineHeight\": 1.15,\n \"fontWeight\": 600,\n \"letterSpacing\": \"-1.08px\"\n },\n \"h3\": {\n \"fontSize\": 28,\n \"lineHeight\": 1.2,\n \"fontWeight\": 600,\n \"letterSpacing\": \"-0.84px\"\n },\n \"h4\": {\n \"fontSize\": 18,\n \"lineHeight\": 1.35,\n \"fontWeight\": 600,\n \"letterSpacing\": \"-0.005em\"\n },\n \"h5\": {\n \"fontSize\": 16,\n \"lineHeight\": 1.4,\n \"fontWeight\": 600,\n \"letterSpacing\": \"0em\"\n },\n \"h6\": {\n \"fontSize\": 14,\n \"lineHeight\": 1,\n \"fontWeight\": 500,\n \"letterSpacing\": \"0\"\n },\n \"body\": {\n \"fontSize\": 15,\n \"lineHeight\": 1.55,\n \"fontWeight\": 400,\n \"letterSpacing\": \"-0.005em\"\n },\n \"sm\": {\n \"fontSize\": 14,\n \"lineHeight\": 1.5,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0\"\n },\n \"xs\": {\n \"fontSize\": 13,\n \"lineHeight\": 1.4,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0\"\n }\n },\n \"borderRadius\": \"8px\"\n },\n {\n \"id\": \"ferrari\",\n \"name\": \"Ferrari\",\n \"category\": \"Automotive & Luxury\",\n \"description\": \"A luxury-automotive brand whose marketing surfaces read as cinematic editorial. The base canvas is **near-black** (`#181818`) holding pure white display type; white-canvas bands appear only inside specific editorial contexts (preowned listi\",\n \"designMdPath\": \"/design-md/ferrari/DESIGN.md\",\n \"color\": {\n \"primary\": \"#da291c\",\n \"primaryHover\": \"#9d2211\",\n \"primaryLight\": \"#da291c26\",\n \"bgPrimary\": \"#181818\",\n \"bgSecondary\": \"#303030\",\n \"textPrimary\": \"#ffffff\",\n \"textSecondary\": \"#666666\",\n \"textMuted\": \"#5c6470\",\n \"borderSubtle\": \"#303030\",\n \"borderStrong\": \"#3d414a\",\n \"statusSuccess\": \"#03904a\",\n \"statusDanger\": \"#f43f5e\",\n \"statusWarning\": \"#f13a2c\"\n },\n \"typography\": {\n \"fontFamily\": \"'FerrariSans', sans-serif\",\n \"h1\": {\n \"fontSize\": 56,\n \"lineHeight\": 1.1,\n \"fontWeight\": 500,\n \"letterSpacing\": \"-1.12px\"\n },\n \"h2\": {\n \"fontSize\": 36,\n \"lineHeight\": 1.2,\n \"fontWeight\": 500,\n \"letterSpacing\": \"-0.36px\"\n },\n \"h3\": {\n \"fontSize\": 26,\n \"lineHeight\": 1.5,\n \"fontWeight\": 500,\n \"letterSpacing\": \"0.195px\"\n },\n \"h4\": {\n \"fontSize\": 18,\n \"lineHeight\": 1.35,\n \"fontWeight\": 600,\n \"letterSpacing\": \"-0.005em\"\n },\n \"h5\": {\n \"fontSize\": 16,\n \"lineHeight\": 1.4,\n \"fontWeight\": 600,\n \"letterSpacing\": \"0em\"\n },\n \"h6\": {\n \"fontSize\": 14,\n \"lineHeight\": 1,\n \"fontWeight\": 700,\n \"letterSpacing\": \"1.4px\"\n },\n \"body\": {\n \"fontSize\": 15,\n \"lineHeight\": 1.55,\n \"fontWeight\": 400,\n \"letterSpacing\": \"-0.005em\"\n },\n \"sm\": {\n \"fontSize\": 13,\n \"lineHeight\": 1.5,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0\"\n },\n \"xs\": {\n \"fontSize\": 12,\n \"lineHeight\": 1.4,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0\"\n }\n },\n \"borderRadius\": \"6px\"\n },\n {\n \"id\": \"figma\",\n \"name\": \"Figma\",\n \"category\": \"Developer Tools\",\n \"description\": \"A confident black-and-white editorial frame interrupted by oversized, hand-cut pastel color blocks. The marketing canvas is rigorously monochrome — figmaSans variable type, pure white surfaces, pure black ink, pill-shaped CTAs — while each \",\n \"designMdPath\": \"/design-md/figma/DESIGN.md\",\n \"color\": {\n \"primary\": \"#000000\",\n \"primaryHover\": \"#000000\",\n \"primaryLight\": \"#e8f3ff\",\n \"bgPrimary\": \"#ffffff\",\n \"bgSecondary\": \"#f8f9fa\",\n \"textPrimary\": \"#000000\",\n \"textSecondary\": \"#8b95a1\",\n \"textMuted\": \"#b0b8c1\",\n \"borderSubtle\": \"#e6e6e6\",\n \"borderStrong\": \"#e5e8eb\",\n \"statusSuccess\": \"#1ea64a\",\n \"statusDanger\": \"#f43f5e\",\n \"statusWarning\": \"#f59e0b\"\n },\n \"typography\": {\n \"fontFamily\": \"figmaSans\",\n \"h1\": {\n \"fontSize\": 86,\n \"lineHeight\": 1,\n \"fontWeight\": 340,\n \"letterSpacing\": \"-1.72px\"\n },\n \"h2\": {\n \"fontSize\": 64,\n \"lineHeight\": 1.1,\n \"fontWeight\": 340,\n \"letterSpacing\": \"-0.96px\"\n },\n \"h3\": {\n \"fontSize\": 26,\n \"lineHeight\": 1.35,\n \"fontWeight\": 540,\n \"letterSpacing\": \"-0.26px\"\n },\n \"h4\": {\n \"fontSize\": 24,\n \"lineHeight\": 1.45,\n \"fontWeight\": 700,\n \"letterSpacing\": \"0\"\n },\n \"h5\": {\n \"fontSize\": 26,\n \"lineHeight\": 1.35,\n \"fontWeight\": 340,\n \"letterSpacing\": \"-0.26px\"\n },\n \"h6\": {\n \"fontSize\": 20,\n \"lineHeight\": 1.4,\n \"fontWeight\": 480,\n \"letterSpacing\": \"-0.10px\"\n },\n \"body\": {\n \"fontSize\": 18,\n \"lineHeight\": 1.45,\n \"fontWeight\": 320,\n \"letterSpacing\": \"-0.26px\"\n },\n \"sm\": {\n \"fontSize\": 16,\n \"lineHeight\": 1.45,\n \"fontWeight\": 330,\n \"letterSpacing\": \"-0.14px\"\n },\n \"xs\": {\n \"fontSize\": 12,\n \"lineHeight\": 1,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0.60px\"\n }\n },\n \"borderRadius\": \"8px\"\n },\n {\n \"id\": \"framer\",\n \"name\": \"Framer\",\n \"category\": \"Developer Tools\",\n \"description\": \"A confident dark-canvas builder marketing site that treats the page like a working artboard — pure black surfaces, white display type set in GT Walsheim Medium with aggressive negative tracking, and a single confident blue (#0099ff) reserve\",\n \"designMdPath\": \"/design-md/framer/DESIGN.md\",\n \"color\": {\n \"primary\": \"#ffffff\",\n \"primaryHover\": \"#ffffff\",\n \"primaryLight\": \"#ffffff26\",\n \"bgPrimary\": \"#090909\",\n \"bgSecondary\": \"#141414\",\n \"textPrimary\": \"#ffffff\",\n \"textSecondary\": \"#999999\",\n \"textMuted\": \"#5c6470\",\n \"borderSubtle\": \"#262626\",\n \"borderStrong\": \"#3d414a\",\n \"statusSuccess\": \"#22c55e\",\n \"statusDanger\": \"#f43f5e\",\n \"statusWarning\": \"#f59e0b\"\n },\n \"typography\": {\n \"fontFamily\": \"GT Walsheim Medium\",\n \"h1\": {\n \"fontSize\": 85,\n \"lineHeight\": 0.95,\n \"fontWeight\": 500,\n \"letterSpacing\": \"-4.25px\"\n },\n \"h2\": {\n \"fontSize\": 62,\n \"lineHeight\": 1,\n \"fontWeight\": 500,\n \"letterSpacing\": \"-3.1px\"\n },\n \"h3\": {\n \"fontSize\": 32,\n \"lineHeight\": 1.13,\n \"fontWeight\": 500,\n \"letterSpacing\": \"-1.0px\"\n },\n \"h4\": {\n \"fontSize\": 24,\n \"lineHeight\": 1.3,\n \"fontWeight\": 400,\n \"letterSpacing\": \"-0.01px\"\n },\n \"h5\": {\n \"fontSize\": 24,\n \"lineHeight\": 1.3,\n \"fontWeight\": 400,\n \"letterSpacing\": \"-0.01px\"\n },\n \"h6\": {\n \"fontSize\": 14,\n \"lineHeight\": 1,\n \"fontWeight\": 500,\n \"letterSpacing\": \"-0.14px\"\n },\n \"body\": {\n \"fontSize\": 15,\n \"lineHeight\": 1.3,\n \"fontWeight\": 400,\n \"letterSpacing\": \"-0.15px\"\n },\n \"sm\": {\n \"fontSize\": 14,\n \"lineHeight\": 1.4,\n \"fontWeight\": 500,\n \"letterSpacing\": \"-0.14px\"\n },\n \"xs\": {\n \"fontSize\": 13,\n \"lineHeight\": 1.2,\n \"fontWeight\": 500,\n \"letterSpacing\": \"-0.13px\"\n }\n },\n \"borderRadius\": \"10px\"\n },\n {\n \"id\": \"hashicorp\",\n \"name\": \"HashiCorp\",\n \"category\": \"Tech & Lifestyle\",\n \"description\": \"An enterprise-infrastructure marketing canvas built around a near-black ground (#000000) and a system of per-product accent colors — Terraform purple, Vault yellow, Consul pink, Waypoint cyan, Vagrant blue — that act as identity tokens rath\",\n \"designMdPath\": \"/design-md/hashicorp/DESIGN.md\",\n \"color\": {\n \"primary\": \"#000000\",\n \"primaryHover\": \"#000000\",\n \"primaryLight\": \"#00000026\",\n \"bgPrimary\": \"#000000\",\n \"bgSecondary\": \"#15181e\",\n \"textPrimary\": \"#ffffff\",\n \"textSecondary\": \"#b2b6bd\",\n \"textMuted\": \"#656a76\",\n \"borderSubtle\": \"#3b3d45\",\n \"borderStrong\": \"#3d414a\",\n \"statusSuccess\": \"#00ca8e\",\n \"statusDanger\": \"#f43f5e\",\n \"statusWarning\": \"#ffcf25\"\n },\n \"typography\": {\n \"fontFamily\": \"hashicorpSans\",\n \"h1\": {\n \"fontSize\": 80,\n \"lineHeight\": 1.17,\n \"fontWeight\": 700,\n \"letterSpacing\": \"-2.5px\"\n },\n \"h2\": {\n \"fontSize\": 56,\n \"lineHeight\": 1.18,\n \"fontWeight\": 700,\n \"letterSpacing\": \"-1.6px\"\n },\n \"h3\": {\n \"fontSize\": 40,\n \"lineHeight\": 1.19,\n \"fontWeight\": 600,\n \"letterSpacing\": \"-1.0px\"\n },\n \"h4\": {\n \"fontSize\": 22,\n \"lineHeight\": 1.18,\n \"fontWeight\": 600,\n \"letterSpacing\": \"-0.4px\"\n },\n \"h5\": {\n \"fontSize\": 20,\n \"lineHeight\": 1.35,\n \"fontWeight\": 600,\n \"letterSpacing\": \"-0.2px\"\n },\n \"h6\": {\n \"fontSize\": 14,\n \"lineHeight\": 1.29,\n \"fontWeight\": 600,\n \"letterSpacing\": \"0\"\n },\n \"body\": {\n \"fontSize\": 16,\n \"lineHeight\": 1.5,\n \"fontWeight\": 500,\n \"letterSpacing\": \"0\"\n },\n \"sm\": {\n \"fontSize\": 14,\n \"lineHeight\": 1.71,\n \"fontWeight\": 500,\n \"letterSpacing\": \"0\"\n },\n \"xs\": {\n \"fontSize\": 13,\n \"lineHeight\": 1.38,\n \"fontWeight\": 500,\n \"letterSpacing\": \"0.2px\"\n }\n },\n \"borderRadius\": \"8px\"\n },\n {\n \"id\": \"hp\",\n \"name\": \"HP\",\n \"category\": \"Tech & Lifestyle\",\n \"description\": \"An inspired interpretation of HP's design language — a white-paper enterprise-consumer system anchored by HP Electric Blue (`#024ad8`) as the lone signal CTA, near-black ink (`#1a1a1a`) for headlines, geometric Forma-DJR sans throughout, an\",\n \"designMdPath\": \"/design-md/hp/DESIGN.md\",\n \"color\": {\n \"primary\": \"#024ad8\",\n \"primaryHover\": \"#0e3191\",\n \"primaryLight\": \"#c9e0fc\",\n \"bgPrimary\": \"#ffffff\",\n \"bgSecondary\": \"#f8f9fa\",\n \"textPrimary\": \"#1a1a1a\",\n \"textSecondary\": \"#8b95a1\",\n \"textMuted\": \"#b0b8c1\",\n \"borderSubtle\": \"#e8e8e8\",\n \"borderStrong\": \"#c2c2c2\",\n \"statusSuccess\": \"#10b981\",\n \"statusDanger\": \"#f43f5e\",\n \"statusWarning\": \"#f59e0b\"\n },\n \"typography\": {\n \"fontFamily\": \"Forma DJR Micro\",\n \"h1\": {\n \"fontSize\": 56,\n \"lineHeight\": 1,\n \"fontWeight\": 500,\n \"letterSpacing\": \"0\"\n },\n \"h2\": {\n \"fontSize\": 44,\n \"lineHeight\": 1,\n \"fontWeight\": 500,\n \"letterSpacing\": \"0\"\n },\n \"h3\": {\n \"fontSize\": 32,\n \"lineHeight\": 1,\n \"fontWeight\": 500,\n \"letterSpacing\": \"0\"\n },\n \"h4\": {\n \"fontSize\": 18,\n \"lineHeight\": 1.35,\n \"fontWeight\": 600,\n \"letterSpacing\": \"-0.005em\"\n },\n \"h5\": {\n \"fontSize\": 16,\n \"lineHeight\": 1.4,\n \"fontWeight\": 600,\n \"letterSpacing\": \"0em\"\n },\n \"h6\": {\n \"fontSize\": 14,\n \"lineHeight\": 1.45,\n \"fontWeight\": 600,\n \"letterSpacing\": \"0em\"\n },\n \"body\": {\n \"fontSize\": 18,\n \"lineHeight\": 1.33,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0\"\n },\n \"sm\": {\n \"fontSize\": 13,\n \"lineHeight\": 1.5,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0em\"\n },\n \"xs\": {\n \"fontSize\": 11,\n \"lineHeight\": 1.4,\n \"fontWeight\": 500,\n \"letterSpacing\": \"0.01em\"\n }\n },\n \"borderRadius\": \"4px\"\n },\n {\n \"id\": \"ibm\",\n \"name\": \"IBM\",\n \"category\": \"Tech & Lifestyle\",\n \"description\": \"An enterprise-marketing canvas faithful to Carbon Design System: white surfaces, charcoal type, IBM Blue (#0f62fe) as the single confident accent, and a deliberately flat-square aesthetic where corners stay at 0–4px. Type runs IBM Plex Sans\",\n \"designMdPath\": \"/design-md/ibm/DESIGN.md\",\n \"color\": {\n \"primary\": \"#0f62fe\",\n \"primaryHover\": \"#0f62fe\",\n \"primaryLight\": \"#e8f3ff\",\n \"bgPrimary\": \"#ffffff\",\n \"bgSecondary\": \"#f4f4f4\",\n \"textPrimary\": \"#161616\",\n \"textSecondary\": \"#525252\",\n \"textMuted\": \"#8c8c8c\",\n \"borderSubtle\": \"#e0e0e0\",\n \"borderStrong\": \"#161616\",\n \"statusSuccess\": \"#24a148\",\n \"statusDanger\": \"#f43f5e\",\n \"statusWarning\": \"#f1c21b\"\n },\n \"typography\": {\n \"fontFamily\": \"IBM Plex Sans\",\n \"h1\": {\n \"fontSize\": 76,\n \"lineHeight\": 1.17,\n \"fontWeight\": 300,\n \"letterSpacing\": \"-0.5px\"\n },\n \"h2\": {\n \"fontSize\": 60,\n \"lineHeight\": 1.17,\n \"fontWeight\": 300,\n \"letterSpacing\": \"-0.4px\"\n },\n \"h3\": {\n \"fontSize\": 42,\n \"lineHeight\": 1.2,\n \"fontWeight\": 300,\n \"letterSpacing\": \"0\"\n },\n \"h4\": {\n \"fontSize\": 24,\n \"lineHeight\": 1.33,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0\"\n },\n \"h5\": {\n \"fontSize\": 20,\n \"lineHeight\": 1.4,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0\"\n },\n \"h6\": {\n \"fontSize\": 14,\n \"lineHeight\": 1.29,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0.16px\"\n },\n \"body\": {\n \"fontSize\": 16,\n \"lineHeight\": 1.5,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0.16px\"\n },\n \"sm\": {\n \"fontSize\": 14,\n \"lineHeight\": 1.29,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0.16px\"\n },\n \"xs\": {\n \"fontSize\": 12,\n \"lineHeight\": 1.33,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0.32px\"\n }\n },\n \"borderRadius\": \"6px\"\n },\n {\n \"id\": \"intercom\",\n \"name\": \"Intercom\",\n \"category\": \"Tech & Lifestyle\",\n \"description\": \"An editorial customer-service marketing canvas built around a soft cream-white ground, charcoal type set in Saans (Intercom's proprietary geometric sans), and a single confident Fin Orange (#ff5600) reserved for the Fin AI brand. Cards live\",\n \"designMdPath\": \"/design-md/intercom/DESIGN.md\",\n \"color\": {\n \"primary\": \"#111111\",\n \"primaryHover\": \"#111111\",\n \"primaryLight\": \"#e8f3ff\",\n \"bgPrimary\": \"#f5f1ec\",\n \"bgSecondary\": \"#ffffff\",\n \"textPrimary\": \"#111111\",\n \"textSecondary\": \"#626260\",\n \"textMuted\": \"#7b7b78\",\n \"borderSubtle\": \"#d3cec6\",\n \"borderStrong\": \"#e5e8eb\",\n \"statusSuccess\": \"#0bdf50\",\n \"statusDanger\": \"#f43f5e\",\n \"statusWarning\": \"#f59e0b\"\n },\n \"typography\": {\n \"fontFamily\": \"Saans\",\n \"h1\": {\n \"fontSize\": 72,\n \"lineHeight\": 1.05,\n \"fontWeight\": 500,\n \"letterSpacing\": \"-2.0px\"\n },\n \"h2\": {\n \"fontSize\": 56,\n \"lineHeight\": 1.1,\n \"fontWeight\": 500,\n \"letterSpacing\": \"-1.4px\"\n },\n \"h3\": {\n \"fontSize\": 40,\n \"lineHeight\": 1.15,\n \"fontWeight\": 500,\n \"letterSpacing\": \"-0.8px\"\n },\n \"h4\": {\n \"fontSize\": 22,\n \"lineHeight\": 1.25,\n \"fontWeight\": 500,\n \"letterSpacing\": \"-0.3px\"\n },\n \"h5\": {\n \"fontSize\": 20,\n \"lineHeight\": 1.4,\n \"fontWeight\": 400,\n \"letterSpacing\": \"-0.2px\"\n },\n \"h6\": {\n \"fontSize\": 15,\n \"lineHeight\": 1.2,\n \"fontWeight\": 500,\n \"letterSpacing\": \"0\"\n },\n \"body\": {\n \"fontSize\": 16,\n \"lineHeight\": 1.5,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0\"\n },\n \"sm\": {\n \"fontSize\": 14,\n \"lineHeight\": 1.5,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0\"\n },\n \"xs\": {\n \"fontSize\": 12,\n \"lineHeight\": 1.4,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0\"\n }\n },\n \"borderRadius\": \"8px\"\n },\n {\n \"id\": \"jobright\",\n \"name\": \"Jobright Analysis\",\n \"category\": \"Tech & Lifestyle\",\n \"description\": \"An analysis of Jobright's design language — an AI job-hunting platform built on an energetic spring-mint green against black and white, with pale-mint section bands carrying the page rhythm. Bold condensed Titillium Web display headings pai\",\n \"designMdPath\": \"/design-md/jobright/DESIGN.md\",\n \"color\": {\n \"primary\": \"#00f0a0\",\n \"primaryHover\": \"#00f0a0\",\n \"primaryLight\": \"#e8f3ff\",\n \"bgPrimary\": \"#ffffff\",\n \"bgSecondary\": \"#f8f9fa\",\n \"textPrimary\": \"#000000\",\n \"textSecondary\": \"#86909c\",\n \"textMuted\": \"#b0b8c1\",\n \"borderSubtle\": \"#e5e7eb\",\n \"borderStrong\": \"#e5e8eb\",\n \"statusSuccess\": \"#10b981\",\n \"statusDanger\": \"#f43f5e\",\n \"statusWarning\": \"#f59e0b\"\n },\n \"typography\": {\n \"fontFamily\": \"Inter\",\n \"h1\": {\n \"fontSize\": 36,\n \"lineHeight\": 1.2,\n \"fontWeight\": 700,\n \"letterSpacing\": \"-0.02em\"\n },\n \"h2\": {\n \"fontSize\": 28,\n \"lineHeight\": 1.25,\n \"fontWeight\": 700,\n \"letterSpacing\": \"-0.015em\"\n },\n \"h3\": {\n \"fontSize\": 22,\n \"lineHeight\": 1.3,\n \"fontWeight\": 600,\n \"letterSpacing\": \"-0.01em\"\n },\n \"h4\": {\n \"fontSize\": 18,\n \"lineHeight\": 1.35,\n \"fontWeight\": 600,\n \"letterSpacing\": \"-0.005em\"\n },\n \"h5\": {\n \"fontSize\": 16,\n \"lineHeight\": 1.4,\n \"fontWeight\": 600,\n \"letterSpacing\": \"0em\"\n },\n \"h6\": {\n \"fontSize\": 16,\n \"lineHeight\": 1,\n \"fontWeight\": 600,\n \"letterSpacing\": \"0\"\n },\n \"body\": {\n \"fontSize\": 18,\n \"lineHeight\": 1.6,\n \"fontWeight\": 300,\n \"letterSpacing\": \"0\"\n },\n \"sm\": {\n \"fontSize\": 14,\n \"lineHeight\": 1.5,\n \"fontWeight\": 500,\n \"letterSpacing\": \"0\"\n },\n \"xs\": {\n \"fontSize\": 13,\n \"lineHeight\": 1.4,\n \"fontWeight\": 500,\n \"letterSpacing\": \"0\"\n }\n },\n \"borderRadius\": \"16px\"\n },\n {\n \"id\": \"linear.app\",\n \"name\": \"Linear\",\n \"category\": \"Developer Tools\",\n \"description\": \"A near-black product-focused marketing canvas built around #010102 (the deepest dark surface of any tool in this collection), light gray text (#f7f8f8), and the signature Linear lavender-blue (#5e6ad2) used as the single chromatic accent. T\",\n \"designMdPath\": \"/design-md/linear.app/DESIGN.md\",\n \"color\": {\n \"primary\": \"#5e6ad2\",\n \"primaryHover\": \"#828fff\",\n \"primaryLight\": \"#5e6ad226\",\n \"bgPrimary\": \"#010102\",\n \"bgSecondary\": \"#0f1011\",\n \"textPrimary\": \"#f7f8f8\",\n \"textSecondary\": \"#d0d6e0\",\n \"textMuted\": \"#8a8f98\",\n \"borderSubtle\": \"#23252a\",\n \"borderStrong\": \"#34343a\",\n \"statusSuccess\": \"#27a644\",\n \"statusDanger\": \"#f43f5e\",\n \"statusWarning\": \"#f59e0b\"\n },\n \"typography\": {\n \"fontFamily\": \"Linear Display\",\n \"h1\": {\n \"fontSize\": 80,\n \"lineHeight\": 1.05,\n \"fontWeight\": 600,\n \"letterSpacing\": \"-3.0px\"\n },\n \"h2\": {\n \"fontSize\": 56,\n \"lineHeight\": 1.1,\n \"fontWeight\": 600,\n \"letterSpacing\": \"-1.8px\"\n },\n \"h3\": {\n \"fontSize\": 40,\n \"lineHeight\": 1.15,\n \"fontWeight\": 600,\n \"letterSpacing\": \"-1.0px\"\n },\n \"h4\": {\n \"fontSize\": 22,\n \"lineHeight\": 1.25,\n \"fontWeight\": 500,\n \"letterSpacing\": \"-0.4px\"\n },\n \"h5\": {\n \"fontSize\": 20,\n \"lineHeight\": 1.4,\n \"fontWeight\": 400,\n \"letterSpacing\": \"-0.2px\"\n },\n \"h6\": {\n \"fontSize\": 14,\n \"lineHeight\": 1.2,\n \"fontWeight\": 500,\n \"letterSpacing\": \"0\"\n },\n \"body\": {\n \"fontSize\": 16,\n \"lineHeight\": 1.5,\n \"fontWeight\": 400,\n \"letterSpacing\": \"-0.05px\"\n },\n \"sm\": {\n \"fontSize\": 14,\n \"lineHeight\": 1.5,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0\"\n },\n \"xs\": {\n \"fontSize\": 12,\n \"lineHeight\": 1.4,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0\"\n }\n },\n \"borderRadius\": \"8px\"\n },\n {\n \"id\": \"mercury\",\n \"name\": \"Mercury Analysis\",\n \"category\": \"Fintech & Web3\",\n \"description\": \"An analysis of Mercury's design language — a fintech system that moves between a deep ink-violet night world on the homepage and a pale, near-white light world on its product and pricing pages, held together by one confident indigo action p\",\n \"designMdPath\": \"/design-md/mercury/DESIGN.md\",\n \"color\": {\n \"primary\": \"#5266eb\",\n \"primaryHover\": \"#5266eb\",\n \"primaryLight\": \"#e8f3ff\",\n \"bgPrimary\": \"#fbfcfd\",\n \"bgSecondary\": \"#ffffff\",\n \"textPrimary\": \"#28253b\",\n \"textSecondary\": \"#554e7b\",\n \"textMuted\": \"#b0b8c1\",\n \"borderSubtle\": \"#f2f4f6\",\n \"borderStrong\": \"#e5e8eb\",\n \"statusSuccess\": \"#10b981\",\n \"statusDanger\": \"#f43f5e\",\n \"statusWarning\": \"#f59e0b\"\n },\n \"typography\": {\n \"fontFamily\": \"arcadia\",\n \"h1\": {\n \"fontSize\": 36,\n \"lineHeight\": 1.2,\n \"fontWeight\": 700,\n \"letterSpacing\": \"-0.02em\"\n },\n \"h2\": {\n \"fontSize\": 28,\n \"lineHeight\": 1.25,\n \"fontWeight\": 700,\n \"letterSpacing\": \"-0.015em\"\n },\n \"h3\": {\n \"fontSize\": 22,\n \"lineHeight\": 1.3,\n \"fontWeight\": 600,\n \"letterSpacing\": \"-0.01em\"\n },\n \"h4\": {\n \"fontSize\": 24,\n \"lineHeight\": 1.2,\n \"fontWeight\": 480,\n \"letterSpacing\": \"0.48px\"\n },\n \"h5\": {\n \"fontSize\": 24,\n \"lineHeight\": 1.2,\n \"fontWeight\": 480,\n \"letterSpacing\": \"0.48px\"\n },\n \"h6\": {\n \"fontSize\": 14,\n \"lineHeight\": 1,\n \"fontWeight\": 500,\n \"letterSpacing\": \"0.28px\"\n },\n \"body\": {\n \"fontSize\": 16,\n \"lineHeight\": 1.4,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0\"\n },\n \"sm\": {\n \"fontSize\": 13,\n \"lineHeight\": 1.5,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0em\"\n },\n \"xs\": {\n \"fontSize\": 11,\n \"lineHeight\": 1.4,\n \"fontWeight\": 500,\n \"letterSpacing\": \"0.01em\"\n }\n },\n \"borderRadius\": \"12px\"\n },\n {\n \"id\": \"meta\",\n \"name\": \"Meta\",\n \"category\": \"Tech & Lifestyle\",\n \"description\": \"Meta's design system spans hardware commerce (Quest VR, Ray-Ban Meta AI glasses) and brand surfaces with a confident product-merchandising voice. The system pairs a stark white canvas with full-bleed photographic product cards, a confident \",\n \"designMdPath\": \"/design-md/meta/DESIGN.md\",\n \"color\": {\n \"primary\": \"#0064e0\",\n \"primaryHover\": \"#0457cb\",\n \"primaryLight\": \"#0091ff\",\n \"bgPrimary\": \"#ffffff\",\n \"bgSecondary\": \"#f8f9fa\",\n \"textPrimary\": \"#1c1e21\",\n \"textSecondary\": \"#8b95a1\",\n \"textMuted\": \"#b0b8c1\",\n \"borderSubtle\": \"#ced0d4\",\n \"borderStrong\": \"#e5e8eb\",\n \"statusSuccess\": \"#31a24c\",\n \"statusDanger\": \"#f43f5e\",\n \"statusWarning\": \"#f7b928\"\n },\n \"typography\": {\n \"fontFamily\": \"Optimistic VF\",\n \"h1\": {\n \"fontSize\": 64,\n \"lineHeight\": 1.16,\n \"fontWeight\": 500,\n \"letterSpacing\": \"-0.02em\"\n },\n \"h2\": {\n \"fontSize\": 48,\n \"lineHeight\": 1.17,\n \"fontWeight\": 500,\n \"letterSpacing\": \"-0.015em\"\n },\n \"h3\": {\n \"fontSize\": 36,\n \"lineHeight\": 1.28,\n \"fontWeight\": 500,\n \"letterSpacing\": \"-0.01em\"\n },\n \"h4\": {\n \"fontSize\": 28,\n \"lineHeight\": 1.21,\n \"fontWeight\": 300,\n \"letterSpacing\": \"-0.005em\"\n },\n \"h5\": {\n \"fontSize\": 24,\n \"lineHeight\": 1.25,\n \"fontWeight\": 500,\n \"letterSpacing\": \"0em\"\n },\n \"h6\": {\n \"fontSize\": 14,\n \"lineHeight\": 1.45,\n \"fontWeight\": 600,\n \"letterSpacing\": \"0em\"\n },\n \"body\": {\n \"fontSize\": 15,\n \"lineHeight\": 1.55,\n \"fontWeight\": 400,\n \"letterSpacing\": \"-0.005em\"\n },\n \"sm\": {\n \"fontSize\": 14,\n \"lineHeight\": 1.43,\n \"fontWeight\": 400,\n \"letterSpacing\": \"-0.14px\"\n },\n \"xs\": {\n \"fontSize\": 12,\n \"lineHeight\": 1.33,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0.01em\"\n }\n },\n \"borderRadius\": \"6px\"\n },\n {\n \"id\": \"minimax\",\n \"name\": \"MiniMax\",\n \"category\": \"AI & LLM\",\n \"description\": \"MiniMax presents itself as a premium AI infrastructure brand through a striking duality — bold black-pill CTAs and stark white canvas for marketing, paired with vibrant gradient product cards (orange-red, magenta-pink, purple, blue) that tu\",\n \"designMdPath\": \"/design-md/minimax/DESIGN.md\",\n \"color\": {\n \"primary\": \"#0a0a0a\",\n \"primaryHover\": \"#0a0a0a\",\n \"primaryLight\": \"#181e25\",\n \"bgPrimary\": \"#ffffff\",\n \"bgSecondary\": \"#f7f8fa\",\n \"textPrimary\": \"#0a0a0a\",\n \"textSecondary\": \"#a8aab2\",\n \"textMuted\": \"#b0b8c1\",\n \"borderSubtle\": \"#e5e7eb\",\n \"borderStrong\": \"#e5e8eb\",\n \"statusSuccess\": \"#10b981\",\n \"statusDanger\": \"#f43f5e\",\n \"statusWarning\": \"#f59e0b\"\n },\n \"typography\": {\n \"fontFamily\": \"DM Sans\",\n \"h1\": {\n \"fontSize\": 80,\n \"lineHeight\": 1.1,\n \"fontWeight\": 600,\n \"letterSpacing\": \"-2px\"\n },\n \"h2\": {\n \"fontSize\": 56,\n \"lineHeight\": 1.1,\n \"fontWeight\": 600,\n \"letterSpacing\": \"-1.5px\"\n },\n \"h3\": {\n \"fontSize\": 40,\n \"lineHeight\": 1.2,\n \"fontWeight\": 600,\n \"letterSpacing\": \"-1px\"\n },\n \"h4\": {\n \"fontSize\": 20,\n \"lineHeight\": 1.4,\n \"fontWeight\": 600,\n \"letterSpacing\": \"-0.005em\"\n },\n \"h5\": {\n \"fontSize\": 24,\n \"lineHeight\": 1.3,\n \"fontWeight\": 600,\n \"letterSpacing\": \"0em\"\n },\n \"h6\": {\n \"fontSize\": 14,\n \"lineHeight\": 1.45,\n \"fontWeight\": 600,\n \"letterSpacing\": \"0em\"\n },\n \"body\": {\n \"fontSize\": 15,\n \"lineHeight\": 1.55,\n \"fontWeight\": 400,\n \"letterSpacing\": \"-0.005em\"\n },\n \"sm\": {\n \"fontSize\": 14,\n \"lineHeight\": 1.5,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0em\"\n },\n \"xs\": {\n \"fontSize\": 13,\n \"lineHeight\": 1.7,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0.01em\"\n }\n },\n \"borderRadius\": \"8px\"\n },\n {\n \"id\": \"mintlify\",\n \"name\": \"Mintlify\",\n \"category\": \"Developer Tools\",\n \"description\": \"Mintlify presents documentation infrastructure with a dual-mode aesthetic — atmospheric sky-gradient marketing heroes (cloud illustration backdrops, soft cream-to-blue washes) paired with dense developer-grade documentation surfaces. The sy\",\n \"designMdPath\": \"/design-md/mintlify/DESIGN.md\",\n \"color\": {\n \"primary\": \"#0a0a0a\",\n \"primaryHover\": \"#0a0a0a\",\n \"primaryLight\": \"#e8f3ff\",\n \"bgPrimary\": \"#ffffff\",\n \"bgSecondary\": \"#f7f7f7\",\n \"textPrimary\": \"#0a0a0a\",\n \"textSecondary\": \"#a8a8aa\",\n \"textMuted\": \"#b0b8c1\",\n \"borderSubtle\": \"#e5e5e5\",\n \"borderStrong\": \"#e5e8eb\",\n \"statusSuccess\": \"#10b981\",\n \"statusDanger\": \"#f43f5e\",\n \"statusWarning\": \"#f59e0b\"\n },\n \"typography\": {\n \"fontFamily\": \"Inter\",\n \"h1\": {\n \"fontSize\": 72,\n \"lineHeight\": 1.05,\n \"fontWeight\": 600,\n \"letterSpacing\": \"-2px\"\n },\n \"h2\": {\n \"fontSize\": 56,\n \"lineHeight\": 1.1,\n \"fontWeight\": 600,\n \"letterSpacing\": \"-1.5px\"\n },\n \"h3\": {\n \"fontSize\": 22,\n \"lineHeight\": 1.3,\n \"fontWeight\": 600,\n \"letterSpacing\": \"-0.01em\"\n },\n \"h4\": {\n \"fontSize\": 18,\n \"lineHeight\": 1.35,\n \"fontWeight\": 600,\n \"letterSpacing\": \"-0.005em\"\n },\n \"h5\": {\n \"fontSize\": 16,\n \"lineHeight\": 1.4,\n \"fontWeight\": 600,\n \"letterSpacing\": \"0em\"\n },\n \"h6\": {\n \"fontSize\": 14,\n \"lineHeight\": 1.45,\n \"fontWeight\": 600,\n \"letterSpacing\": \"0em\"\n },\n \"body\": {\n \"fontSize\": 15,\n \"lineHeight\": 1.55,\n \"fontWeight\": 400,\n \"letterSpacing\": \"-0.005em\"\n },\n \"sm\": {\n \"fontSize\": 14,\n \"lineHeight\": 1.5,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0em\"\n },\n \"xs\": {\n \"fontSize\": 13,\n \"lineHeight\": 1.4,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0.01em\"\n }\n },\n \"borderRadius\": \"8px\"\n },\n {\n \"id\": \"miro\",\n \"name\": \"Miro\",\n \"category\": \"Tech & Lifestyle\",\n \"description\": \"Miro presents itself as the AI-powered visual workspace through a confident, almost playful brand voice — anchored by its signature canary yellow ({colors.brand-yellow}) wordmark over white canvas, broken open by colorful pastel feature tin\",\n \"designMdPath\": \"/design-md/miro/DESIGN.md\",\n \"color\": {\n \"primary\": \"#1c1c1e\",\n \"primaryHover\": \"#1c1c1e\",\n \"primaryLight\": \"#e8f3ff\",\n \"bgPrimary\": \"#ffffff\",\n \"bgSecondary\": \"#f7f8fa\",\n \"textPrimary\": \"#1c1c1e\",\n \"textSecondary\": \"#a5a8b5\",\n \"textMuted\": \"#b0b8c1\",\n \"borderSubtle\": \"#e0e2e8\",\n \"borderStrong\": \"#c7cad5\",\n \"statusSuccess\": \"#10b981\",\n \"statusDanger\": \"#f43f5e\",\n \"statusWarning\": \"#f59e0b\"\n },\n \"typography\": {\n \"fontFamily\": \"Roobert PRO\",\n \"h1\": {\n \"fontSize\": 80,\n \"lineHeight\": 1.05,\n \"fontWeight\": 500,\n \"letterSpacing\": \"-2px\"\n },\n \"h2\": {\n \"fontSize\": 60,\n \"lineHeight\": 1.1,\n \"fontWeight\": 500,\n \"letterSpacing\": \"-1.5px\"\n },\n \"h3\": {\n \"fontSize\": 22,\n \"lineHeight\": 1.3,\n \"fontWeight\": 600,\n \"letterSpacing\": \"-0.01em\"\n },\n \"h4\": {\n \"fontSize\": 18,\n \"lineHeight\": 1.35,\n \"fontWeight\": 600,\n \"letterSpacing\": \"-0.005em\"\n },\n \"h5\": {\n \"fontSize\": 16,\n \"lineHeight\": 1.4,\n \"fontWeight\": 600,\n \"letterSpacing\": \"0em\"\n },\n \"h6\": {\n \"fontSize\": 14,\n \"lineHeight\": 1.45,\n \"fontWeight\": 600,\n \"letterSpacing\": \"0em\"\n },\n \"body\": {\n \"fontSize\": 15,\n \"lineHeight\": 1.55,\n \"fontWeight\": 400,\n \"letterSpacing\": \"-0.005em\"\n },\n \"sm\": {\n \"fontSize\": 14,\n \"lineHeight\": 1.5,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0em\"\n },\n \"xs\": {\n \"fontSize\": 13,\n \"lineHeight\": 1.4,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0.01em\"\n }\n },\n \"borderRadius\": \"8px\"\n },\n {\n \"id\": \"mistral.ai\",\n \"name\": \"Mistral-AI\",\n \"category\": \"AI & LLM\",\n \"description\": \"Mistral AI brands itself with a singular signature — atmospheric sunset gradients (mustard, orange, deep red) layered over photography of mountains, plus a horizontal \\\\\\\"sunset stripe\\\\\\\" bar that closes every page. The system pairs warm cream\",\n \"designMdPath\": \"/design-md/mistral.ai/DESIGN.md\",\n \"color\": {\n \"primary\": \"#fa520f\",\n \"primaryHover\": \"#cc3a05\",\n \"primaryLight\": \"#e8f3ff\",\n \"bgPrimary\": \"#ffffff\",\n \"bgSecondary\": \"#fafafa\",\n \"textPrimary\": \"#1f1f1f\",\n \"textSecondary\": \"#a8a8a8\",\n \"textMuted\": \"#b0b8c1\",\n \"borderSubtle\": \"#e5e5e5\",\n \"borderStrong\": \"#c7c7c7\",\n \"statusSuccess\": \"#10b981\",\n \"statusDanger\": \"#f43f5e\",\n \"statusWarning\": \"#f59e0b\"\n },\n \"typography\": {\n \"fontFamily\": \"PP Editorial Old\",\n \"h1\": {\n \"fontSize\": 84,\n \"lineHeight\": 1.05,\n \"fontWeight\": 400,\n \"letterSpacing\": \"-1.5px\"\n },\n \"h2\": {\n \"fontSize\": 64,\n \"lineHeight\": 1.1,\n \"fontWeight\": 400,\n \"letterSpacing\": \"-1px\"\n },\n \"h3\": {\n \"fontSize\": 22,\n \"lineHeight\": 1.3,\n \"fontWeight\": 600,\n \"letterSpacing\": \"-0.01em\"\n },\n \"h4\": {\n \"fontSize\": 18,\n \"lineHeight\": 1.35,\n \"fontWeight\": 600,\n \"letterSpacing\": \"-0.005em\"\n },\n \"h5\": {\n \"fontSize\": 16,\n \"lineHeight\": 1.4,\n \"fontWeight\": 600,\n \"letterSpacing\": \"0em\"\n },\n \"h6\": {\n \"fontSize\": 14,\n \"lineHeight\": 1.45,\n \"fontWeight\": 600,\n \"letterSpacing\": \"0em\"\n },\n \"body\": {\n \"fontSize\": 15,\n \"lineHeight\": 1.55,\n \"fontWeight\": 400,\n \"letterSpacing\": \"-0.005em\"\n },\n \"sm\": {\n \"fontSize\": 14,\n \"lineHeight\": 1.5,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0em\"\n },\n \"xs\": {\n \"fontSize\": 13,\n \"lineHeight\": 1.4,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0.01em\"\n }\n },\n \"borderRadius\": \"8px\"\n },\n {\n \"id\": \"mongodb\",\n \"name\": \"MongoDB\",\n \"category\": \"Tech & Lifestyle\",\n \"description\": \"MongoDB carries a strong dual-mode visual identity — dark deep-teal hero bands with bright MongoDB green ({colors.brand-green}) CTAs paired with stark white documentation surfaces. The signature green pill button is unmistakable across prod\",\n \"designMdPath\": \"/design-md/mongodb/DESIGN.md\",\n \"color\": {\n \"primary\": \"#00ed64\",\n \"primaryHover\": \"#00b545\",\n \"primaryLight\": \"#e8f3ff\",\n \"bgPrimary\": \"#ffffff\",\n \"bgSecondary\": \"#f9fbfa\",\n \"textPrimary\": \"#001e2b\",\n \"textSecondary\": \"#a8b3bc\",\n \"textMuted\": \"#b0b8c1\",\n \"borderSubtle\": \"#e1e5e8\",\n \"borderStrong\": \"#c1ccd6\",\n \"statusSuccess\": \"#10b981\",\n \"statusDanger\": \"#f43f5e\",\n \"statusWarning\": \"#f59e0b\"\n },\n \"typography\": {\n \"fontFamily\": \"Euclid Circular A\",\n \"h1\": {\n \"fontSize\": 72,\n \"lineHeight\": 1.1,\n \"fontWeight\": 500,\n \"letterSpacing\": \"-1.5px\"\n },\n \"h2\": {\n \"fontSize\": 56,\n \"lineHeight\": 1.15,\n \"fontWeight\": 500,\n \"letterSpacing\": \"-1px\"\n },\n \"h3\": {\n \"fontSize\": 22,\n \"lineHeight\": 1.3,\n \"fontWeight\": 600,\n \"letterSpacing\": \"-0.01em\"\n },\n \"h4\": {\n \"fontSize\": 18,\n \"lineHeight\": 1.35,\n \"fontWeight\": 600,\n \"letterSpacing\": \"-0.005em\"\n },\n \"h5\": {\n \"fontSize\": 16,\n \"lineHeight\": 1.4,\n \"fontWeight\": 600,\n \"letterSpacing\": \"0em\"\n },\n \"h6\": {\n \"fontSize\": 14,\n \"lineHeight\": 1.45,\n \"fontWeight\": 600,\n \"letterSpacing\": \"0em\"\n },\n \"body\": {\n \"fontSize\": 15,\n \"lineHeight\": 1.55,\n \"fontWeight\": 400,\n \"letterSpacing\": \"-0.005em\"\n },\n \"sm\": {\n \"fontSize\": 14,\n \"lineHeight\": 1.5,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0em\"\n },\n \"xs\": {\n \"fontSize\": 13,\n \"lineHeight\": 1.4,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0.01em\"\n }\n },\n \"borderRadius\": \"8px\"\n },\n {\n \"id\": \"mydealz\",\n \"name\": \"mydealz Analysis\",\n \"category\": \"Tech & Lifestyle\",\n \"description\": \"An analysis of mydealz's design language — a high-density German deals-community system built on a confident brand green, where a stacked white-card feed carries thousands of deals and every card wears the signature hot/cold temperature con\",\n \"designMdPath\": \"/design-md/mydealz/DESIGN.md\",\n \"color\": {\n \"primary\": \"#30a83c\",\n \"primaryHover\": \"#30a83c\",\n \"primaryLight\": \"#e8f3ff\",\n \"bgPrimary\": \"#f3f5f7\",\n \"bgSecondary\": \"#ffffff\",\n \"textPrimary\": \"#000000\",\n \"textSecondary\": \"#a7a9ac\",\n \"textMuted\": \"#b0b8c1\",\n \"borderSubtle\": \"#dfe1e4\",\n \"borderStrong\": \"#e5e8eb\",\n \"statusSuccess\": \"#10b981\",\n \"statusDanger\": \"#f43f5e\",\n \"statusWarning\": \"#f59e0b\"\n },\n \"typography\": {\n \"fontFamily\": \"Averta CY\",\n \"h1\": {\n \"fontSize\": 36,\n \"lineHeight\": 1.2,\n \"fontWeight\": 700,\n \"letterSpacing\": \"-0.02em\"\n },\n \"h2\": {\n \"fontSize\": 28,\n \"lineHeight\": 1.25,\n \"fontWeight\": 700,\n \"letterSpacing\": \"-0.015em\"\n },\n \"h3\": {\n \"fontSize\": 24,\n \"lineHeight\": 1.2,\n \"fontWeight\": 700,\n \"letterSpacing\": \"0\"\n },\n \"h4\": {\n \"fontSize\": 18,\n \"lineHeight\": 1.4,\n \"fontWeight\": 500,\n \"letterSpacing\": \"0\"\n },\n \"h5\": {\n \"fontSize\": 18,\n \"lineHeight\": 1.4,\n \"fontWeight\": 500,\n \"letterSpacing\": \"0\"\n },\n \"h6\": {\n \"fontSize\": 14,\n \"lineHeight\": 1.45,\n \"fontWeight\": 600,\n \"letterSpacing\": \"0em\"\n },\n \"body\": {\n \"fontSize\": 16,\n \"lineHeight\": 1.5,\n \"fontWeight\": 500,\n \"letterSpacing\": \"0\"\n },\n \"sm\": {\n \"fontSize\": 12,\n \"lineHeight\": 1.3,\n \"fontWeight\": 500,\n \"letterSpacing\": \"0\"\n },\n \"xs\": {\n \"fontSize\": 12,\n \"lineHeight\": 1.3,\n \"fontWeight\": 500,\n \"letterSpacing\": \"0\"\n }\n },\n \"borderRadius\": \"8px\"\n },\n {\n \"id\": \"nerdwallet\",\n \"name\": \"NerdWallet Analysis\",\n \"category\": \"Fintech & Web3\",\n \"description\": \"An analysis of NerdWallet's design language — a personal-finance comparison platform built almost entirely from one deep green and a ladder of mints beneath it. Editorial pages open on a green gradient band, then drop to near-white where de\",\n \"designMdPath\": \"/design-md/nerdwallet/DESIGN.md\",\n \"color\": {\n \"primary\": \"#008254\",\n \"primaryHover\": \"#006642\",\n \"primaryLight\": \"#e8f3ff\",\n \"bgPrimary\": \"#ffffff\",\n \"bgSecondary\": \"#f7f7f7\",\n \"textPrimary\": \"#000000\",\n \"textSecondary\": \"#64666a\",\n \"textMuted\": \"#b1b3b5\",\n \"borderSubtle\": \"#ebebec\",\n \"borderStrong\": \"#d8d9da\",\n \"statusSuccess\": \"#10b981\",\n \"statusDanger\": \"#f43f5e\",\n \"statusWarning\": \"#f59e0b\"\n },\n \"typography\": {\n \"fontFamily\": \"Gotham\",\n \"h1\": {\n \"fontSize\": 52,\n \"lineHeight\": 1.15,\n \"fontWeight\": 700,\n \"letterSpacing\": \"0\"\n },\n \"h2\": {\n \"fontSize\": 40,\n \"lineHeight\": 1.2,\n \"fontWeight\": 700,\n \"letterSpacing\": \"0\"\n },\n \"h3\": {\n \"fontSize\": 22,\n \"lineHeight\": 1.3,\n \"fontWeight\": 600,\n \"letterSpacing\": \"-0.01em\"\n },\n \"h4\": {\n \"fontSize\": 18,\n \"lineHeight\": 1.35,\n \"fontWeight\": 600,\n \"letterSpacing\": \"-0.005em\"\n },\n \"h5\": {\n \"fontSize\": 12,\n \"lineHeight\": 1.2,\n \"fontWeight\": 700,\n \"letterSpacing\": \"0\"\n },\n \"h6\": {\n \"fontSize\": 12,\n \"lineHeight\": 1.2,\n \"fontWeight\": 700,\n \"letterSpacing\": \"0\"\n },\n \"body\": {\n \"fontSize\": 18,\n \"lineHeight\": 1.5,\n \"fontWeight\": 300,\n \"letterSpacing\": \"0\"\n },\n \"sm\": {\n \"fontSize\": 14,\n \"lineHeight\": 1.5,\n \"fontWeight\": 300,\n \"letterSpacing\": \"0\"\n },\n \"xs\": {\n \"fontSize\": 12,\n \"lineHeight\": 1.4,\n \"fontWeight\": 500,\n \"letterSpacing\": \"0\"\n }\n },\n \"borderRadius\": \"6px\"\n },\n {\n \"id\": \"nike\",\n \"name\": \"Nike\",\n \"category\": \"Tech & Lifestyle\",\n \"description\": \"|\",\n \"designMdPath\": \"/design-md/nike/DESIGN.md\",\n \"color\": {\n \"primary\": \"#111111\",\n \"primaryHover\": \"#111111\",\n \"primaryLight\": \"#e8f3ff\",\n \"bgPrimary\": \"#ffffff\",\n \"bgSecondary\": \"#f8f9fa\",\n \"textPrimary\": \"#111111\",\n \"textSecondary\": \"#8b95a1\",\n \"textMuted\": \"#b0b8c1\",\n \"borderSubtle\": \"#cacacb\",\n \"borderStrong\": \"#e5e8eb\",\n \"statusSuccess\": \"#007d48\",\n \"statusDanger\": \"#f43f5e\",\n \"statusWarning\": \"#f59e0b\"\n },\n \"typography\": {\n \"fontFamily\": \"\\\"Pretendard Variable\\\", Pretendard, system-ui, sans-serif\",\n \"h1\": {\n \"fontSize\": 36,\n \"lineHeight\": 1.2,\n \"fontWeight\": 700,\n \"letterSpacing\": \"-0.02em\"\n },\n \"h2\": {\n \"fontSize\": 32,\n \"lineHeight\": 1.2,\n \"fontWeight\": 500,\n \"letterSpacing\": \"0\"\n },\n \"h3\": {\n \"fontSize\": 24,\n \"lineHeight\": 1.2,\n \"fontWeight\": 500,\n \"letterSpacing\": \"0\"\n },\n \"h4\": {\n \"fontSize\": 16,\n \"lineHeight\": 1.75,\n \"fontWeight\": 500,\n \"letterSpacing\": \"0\"\n },\n \"h5\": {\n \"fontSize\": 16,\n \"lineHeight\": 1.4,\n \"fontWeight\": 600,\n \"letterSpacing\": \"0em\"\n },\n \"h6\": {\n \"fontSize\": 14,\n \"lineHeight\": 1.45,\n \"fontWeight\": 600,\n \"letterSpacing\": \"0em\"\n },\n \"body\": {\n \"fontSize\": 15,\n \"lineHeight\": 1.55,\n \"fontWeight\": 400,\n \"letterSpacing\": \"-0.005em\"\n },\n \"sm\": {\n \"fontSize\": 13,\n \"lineHeight\": 1.5,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0em\"\n },\n \"xs\": {\n \"fontSize\": 11,\n \"lineHeight\": 1.4,\n \"fontWeight\": 500,\n \"letterSpacing\": \"0.01em\"\n }\n },\n \"borderRadius\": \"24px\"\n },\n {\n \"id\": \"nintendo-2001\",\n \"name\": \"Nintendo.com (2001) Analysis\",\n \"category\": \"Tech & Lifestyle\",\n \"description\": \"An analysis of Nintendo.com's 2001 design language — a brushed-periwinkle \\\\\\\"console chrome\\\\\\\" interface where every panel is a beveled metal plate, navigation glows amber over a halftone-dotted carbon bar, and bold outlined display type sits\",\n \"designMdPath\": \"/design-md/nintendo-2001/DESIGN.md\",\n \"color\": {\n \"primary\": \"#e60012\\\" # Nintendo Red — racetrack logo, alert\",\n \"primaryHover\": \"#e60012\\\" # Nintendo Red — racetrack logo, alert\",\n \"primaryLight\": \"#e8f3ff\",\n \"bgPrimary\": \"#7a8aba\\\" # Periwinkle metallic — primary interface body\",\n \"bgSecondary\": \"#ffffff\\\" # White — content cards, list-row highlight\",\n \"textPrimary\": \"#21242e\\\" # primary text on light\",\n \"textSecondary\": \"#8b95a1\",\n \"textMuted\": \"#b0b8c1\",\n \"borderSubtle\": \"#5a5f8c\\\" # blended bevel divider\",\n \"borderStrong\": \"#e5e8eb\",\n \"statusSuccess\": \"#10b981\",\n \"statusDanger\": \"#f43f5e\",\n \"statusWarning\": \"#f59e0b\"\n },\n \"typography\": {\n \"fontFamily\": \"Arial\",\n \"h1\": {\n \"fontSize\": 36,\n \"lineHeight\": 1.2,\n \"fontWeight\": 700,\n \"letterSpacing\": \"-0.02em\"\n },\n \"h2\": {\n \"fontSize\": 28,\n \"lineHeight\": 1.25,\n \"fontWeight\": 700,\n \"letterSpacing\": \"-0.015em\"\n },\n \"h3\": {\n \"fontSize\": 22,\n \"lineHeight\": 1.3,\n \"fontWeight\": 600,\n \"letterSpacing\": \"-0.01em\"\n },\n \"h4\": {\n \"fontSize\": 18,\n \"lineHeight\": 1.35,\n \"fontWeight\": 600,\n \"letterSpacing\": \"-0.005em\"\n },\n \"h5\": {\n \"fontSize\": 16,\n \"lineHeight\": 1.4,\n \"fontWeight\": 600,\n \"letterSpacing\": \"0em\"\n },\n \"h6\": {\n \"fontSize\": 14,\n \"lineHeight\": 1.45,\n \"fontWeight\": 600,\n \"letterSpacing\": \"0em\"\n },\n \"body\": {\n \"fontSize\": 12,\n \"lineHeight\": 1.4,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0\"\n },\n \"sm\": {\n \"fontSize\": 13,\n \"lineHeight\": 1.5,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0em\"\n },\n \"xs\": {\n \"fontSize\": 10,\n \"lineHeight\": 1.3,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0\"\n }\n },\n \"borderRadius\": \"6px\"\n },\n {\n \"id\": \"notion\",\n \"name\": \"Notion\",\n \"category\": \"Tech & Lifestyle\",\n \"description\": \"Notion presents itself as the all-in-one workspace through a confident, illustration-rich brand voice — anchored by a deep navy hero band ({colors.brand-navy}) decorated with brand-colored sticky-note dots and mesh wire illustrations, a sig\",\n \"designMdPath\": \"/design-md/notion/DESIGN.md\",\n \"color\": {\n \"primary\": \"#5645d4\",\n \"primaryHover\": \"#3a2a99\",\n \"primaryLight\": \"#e8f3ff\",\n \"bgPrimary\": \"#ffffff\",\n \"bgSecondary\": \"#f6f5f4\",\n \"textPrimary\": \"#1a1a1a\",\n \"textSecondary\": \"#bbb8b1\",\n \"textMuted\": \"#b0b8c1\",\n \"borderSubtle\": \"#e5e3df\",\n \"borderStrong\": \"#c8c4be\",\n \"statusSuccess\": \"#1aae39\",\n \"statusDanger\": \"#f43f5e\",\n \"statusWarning\": \"#dd5b00\"\n },\n \"typography\": {\n \"fontFamily\": \"Notion Sans\",\n \"h1\": {\n \"fontSize\": 80,\n \"lineHeight\": 1.05,\n \"fontWeight\": 600,\n \"letterSpacing\": \"-2px\"\n },\n \"h2\": {\n \"fontSize\": 56,\n \"lineHeight\": 1.1,\n \"fontWeight\": 600,\n \"letterSpacing\": \"-1px\"\n },\n \"h3\": {\n \"fontSize\": 22,\n \"lineHeight\": 1.3,\n \"fontWeight\": 600,\n \"letterSpacing\": \"-0.01em\"\n },\n \"h4\": {\n \"fontSize\": 18,\n \"lineHeight\": 1.35,\n \"fontWeight\": 600,\n \"letterSpacing\": \"-0.005em\"\n },\n \"h5\": {\n \"fontSize\": 16,\n \"lineHeight\": 1.4,\n \"fontWeight\": 600,\n \"letterSpacing\": \"0em\"\n },\n \"h6\": {\n \"fontSize\": 14,\n \"lineHeight\": 1.45,\n \"fontWeight\": 600,\n \"letterSpacing\": \"0em\"\n },\n \"body\": {\n \"fontSize\": 15,\n \"lineHeight\": 1.55,\n \"fontWeight\": 400,\n \"letterSpacing\": \"-0.005em\"\n },\n \"sm\": {\n \"fontSize\": 14,\n \"lineHeight\": 1.5,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0em\"\n },\n \"xs\": {\n \"fontSize\": 13,\n \"lineHeight\": 1.4,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0.01em\"\n }\n },\n \"borderRadius\": \"8px\"\n },\n {\n \"id\": \"nvidia\",\n \"name\": \"NVIDIA\",\n \"category\": \"Tech & Lifestyle\",\n \"description\": \"|\",\n \"designMdPath\": \"/design-md/nvidia/DESIGN.md\",\n \"color\": {\n \"primary\": \"#76b900\",\n \"primaryHover\": \"#76b900\",\n \"primaryLight\": \"#e8f3ff\",\n \"bgPrimary\": \"#ffffff\",\n \"bgSecondary\": \"#f8f9fa\",\n \"textPrimary\": \"#000000\",\n \"textSecondary\": \"#8b95a1\",\n \"textMuted\": \"#b0b8c1\",\n \"borderSubtle\": \"#cccccc\",\n \"borderStrong\": \"#5e5e5e\",\n \"statusSuccess\": \"#10b981\",\n \"statusDanger\": \"#f43f5e\",\n \"statusWarning\": \"#df6500\"\n },\n \"typography\": {\n \"fontFamily\": \"NVIDIA-EMEA\",\n \"h1\": {\n \"fontSize\": 48,\n \"lineHeight\": 1.25,\n \"fontWeight\": 700,\n \"letterSpacing\": \"0\"\n },\n \"h2\": {\n \"fontSize\": 36,\n \"lineHeight\": 1.25,\n \"fontWeight\": 700,\n \"letterSpacing\": \"0\"\n },\n \"h3\": {\n \"fontSize\": 22,\n \"lineHeight\": 1.75,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0\"\n },\n \"h4\": {\n \"fontSize\": 17,\n \"lineHeight\": 1.47,\n \"fontWeight\": 700,\n \"letterSpacing\": \"0\"\n },\n \"h5\": {\n \"fontSize\": 18,\n \"lineHeight\": 1.4,\n \"fontWeight\": 700,\n \"letterSpacing\": \"0\"\n },\n \"h6\": {\n \"fontSize\": 14,\n \"lineHeight\": 1.45,\n \"fontWeight\": 600,\n \"letterSpacing\": \"0em\"\n },\n \"body\": {\n \"fontSize\": 15,\n \"lineHeight\": 1.55,\n \"fontWeight\": 400,\n \"letterSpacing\": \"-0.005em\"\n },\n \"sm\": {\n \"fontSize\": 15,\n \"lineHeight\": 1.67,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0\"\n },\n \"xs\": {\n \"fontSize\": 11,\n \"lineHeight\": 1.4,\n \"fontWeight\": 500,\n \"letterSpacing\": \"0.01em\"\n }\n },\n \"borderRadius\": \"2px\"\n },\n {\n \"id\": \"ollama\",\n \"name\": \"Ollama\",\n \"category\": \"AI & LLM\",\n \"description\": \"|\",\n \"designMdPath\": \"/design-md/ollama/DESIGN.md\",\n \"color\": {\n \"primary\": \"#000000\",\n \"primaryHover\": \"#000000\",\n \"primaryLight\": \"#e8f3ff\",\n \"bgPrimary\": \"#ffffff\",\n \"bgSecondary\": \"#ffffff\",\n \"textPrimary\": \"#000000\",\n \"textSecondary\": \"#8b95a1\",\n \"textMuted\": \"#b0b8c1\",\n \"borderSubtle\": \"#e5e5e5\",\n \"borderStrong\": \"#d4d4d4\",\n \"statusSuccess\": \"#10b981\",\n \"statusDanger\": \"#f43f5e\",\n \"statusWarning\": \"#f59e0b\"\n },\n \"typography\": {\n \"fontFamily\": \"SF Pro Rounded\",\n \"h1\": {\n \"fontSize\": 36,\n \"lineHeight\": 1.11,\n \"fontWeight\": 500,\n \"letterSpacing\": \"0\"\n },\n \"h2\": {\n \"fontSize\": 30,\n \"lineHeight\": 1.2,\n \"fontWeight\": 500,\n \"letterSpacing\": \"0\"\n },\n \"h3\": {\n \"fontSize\": 24,\n \"lineHeight\": 1.33,\n \"fontWeight\": 600,\n \"letterSpacing\": \"0\"\n },\n \"h4\": {\n \"fontSize\": 20,\n \"lineHeight\": 1.4,\n \"fontWeight\": 500,\n \"letterSpacing\": \"0\"\n },\n \"h5\": {\n \"fontSize\": 18,\n \"lineHeight\": 1.56,\n \"fontWeight\": 500,\n \"letterSpacing\": \"0\"\n },\n \"h6\": {\n \"fontSize\": 14,\n \"lineHeight\": 1.45,\n \"fontWeight\": 600,\n \"letterSpacing\": \"0em\"\n },\n \"body\": {\n \"fontSize\": 15,\n \"lineHeight\": 1.55,\n \"fontWeight\": 400,\n \"letterSpacing\": \"-0.005em\"\n },\n \"sm\": {\n \"fontSize\": 14,\n \"lineHeight\": 1.43,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0\"\n },\n \"xs\": {\n \"fontSize\": 11,\n \"lineHeight\": 1.4,\n \"fontWeight\": 500,\n \"letterSpacing\": \"0.01em\"\n }\n },\n \"borderRadius\": \"8px\"\n },\n {\n \"id\": \"opencode.ai\",\n \"name\": \"OpenCode\",\n \"category\": \"AI & LLM\",\n \"description\": \"|\",\n \"designMdPath\": \"/design-md/opencode.ai/DESIGN.md\",\n \"color\": {\n \"primary\": \"#201d1d\",\n \"primaryHover\": \"#201d1d\",\n \"primaryLight\": \"#e8f3ff\",\n \"bgPrimary\": \"#fdfcfc\",\n \"bgSecondary\": \"#f1eeee\",\n \"textPrimary\": \"#201d1d\",\n \"textSecondary\": \"#8b95a1\",\n \"textMuted\": \"#b0b8c1\",\n \"borderSubtle\": \"rgba(15,0,0,0.12)\",\n \"borderStrong\": \"#646262\",\n \"statusSuccess\": \"#30d158\",\n \"statusDanger\": \"#ff3b30\",\n \"statusWarning\": \"#ff9f0a\"\n },\n \"typography\": {\n \"fontFamily\": \"Berkeley Mono\",\n \"h1\": {\n \"fontSize\": 38,\n \"lineHeight\": 1.5,\n \"fontWeight\": 700,\n \"letterSpacing\": \"0\"\n },\n \"h2\": {\n \"fontSize\": 28,\n \"lineHeight\": 1.25,\n \"fontWeight\": 700,\n \"letterSpacing\": \"-0.015em\"\n },\n \"h3\": {\n \"fontSize\": 22,\n \"lineHeight\": 1.3,\n \"fontWeight\": 600,\n \"letterSpacing\": \"-0.01em\"\n },\n \"h4\": {\n \"fontSize\": 16,\n \"lineHeight\": 1.5,\n \"fontWeight\": 700,\n \"letterSpacing\": \"0\"\n },\n \"h5\": {\n \"fontSize\": 16,\n \"lineHeight\": 1.4,\n \"fontWeight\": 600,\n \"letterSpacing\": \"0em\"\n },\n \"h6\": {\n \"fontSize\": 14,\n \"lineHeight\": 1.45,\n \"fontWeight\": 600,\n \"letterSpacing\": \"0em\"\n },\n \"body\": {\n \"fontSize\": 15,\n \"lineHeight\": 1.55,\n \"fontWeight\": 400,\n \"letterSpacing\": \"-0.005em\"\n },\n \"sm\": {\n \"fontSize\": 13,\n \"lineHeight\": 1.5,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0em\"\n },\n \"xs\": {\n \"fontSize\": 11,\n \"lineHeight\": 1.4,\n \"fontWeight\": 500,\n \"letterSpacing\": \"0.01em\"\n }\n },\n \"borderRadius\": \"4px\"\n },\n {\n \"id\": \"oracle\",\n \"name\": \"Oracle Analysis\",\n \"category\": \"Tech & Lifestyle\",\n \"description\": \"An analysis of Oracle's design language — an enterprise system built on a warm neutral ladder rather than a colour palette. Six numbered greys carry almost every surface, a single dark charcoal carries every action, and the famous red is he\",\n \"designMdPath\": \"/design-md/oracle/DESIGN.md\",\n \"color\": {\n \"primary\": \"#312d2a\",\n \"primaryHover\": \"#312d2a\",\n \"primaryLight\": \"#e8f3ff\",\n \"bgPrimary\": \"#ffffff\",\n \"bgSecondary\": \"#fbf9f8\",\n \"textPrimary\": \"#161513\",\n \"textSecondary\": \"#8b95a1\",\n \"textMuted\": \"#b0b8c1\",\n \"borderSubtle\": \"#e4e1dd\",\n \"borderStrong\": \"#e5e8eb\",\n \"statusSuccess\": \"#10b981\",\n \"statusDanger\": \"#f43f5e\",\n \"statusWarning\": \"#f59e0b\"\n },\n \"typography\": {\n \"fontFamily\": \"Oracle Sans\",\n \"h1\": {\n \"fontSize\": 36,\n \"lineHeight\": 1.2,\n \"fontWeight\": 700,\n \"letterSpacing\": \"-0.02em\"\n },\n \"h2\": {\n \"fontSize\": 28,\n \"lineHeight\": 33.6,\n \"fontWeight\": 800,\n \"letterSpacing\": \"0\"\n },\n \"h3\": {\n \"fontSize\": 24,\n \"lineHeight\": 28.8,\n \"fontWeight\": 800,\n \"letterSpacing\": \"0\"\n },\n \"h4\": {\n \"fontSize\": 20,\n \"lineHeight\": 24,\n \"fontWeight\": 800,\n \"letterSpacing\": \"0\"\n },\n \"h5\": {\n \"fontSize\": 24,\n \"lineHeight\": 33.6,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0\"\n },\n \"h6\": {\n \"fontSize\": 14,\n \"lineHeight\": 16.8,\n \"fontWeight\": 500,\n \"letterSpacing\": \"0\"\n },\n \"body\": {\n \"fontSize\": 16,\n \"lineHeight\": 22.4,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0\"\n },\n \"sm\": {\n \"fontSize\": 12,\n \"lineHeight\": 20,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0\"\n },\n \"xs\": {\n \"fontSize\": 12,\n \"lineHeight\": 20,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0\"\n }\n },\n \"borderRadius\": \"8px\"\n },\n {\n \"id\": \"oura\",\n \"name\": \"Oura Analysis\",\n \"category\": \"Tech & Lifestyle\",\n \"description\": \"An analysis of Oura's design language — a warm-paper wellness system that pairs a high-contrast Editorial serif with a quiet grotesque sans, wraps every surface in a cream-and-earth palette drawn from mustard, clay and olive, and drives con\",\n \"designMdPath\": \"/design-md/oura/DESIGN.md\",\n \"color\": {\n \"primary\": \"#2a72de\",\n \"primaryHover\": \"#2a72de\",\n \"primaryLight\": \"#e8f3ff\",\n \"bgPrimary\": \"#f7f1e8\",\n \"bgSecondary\": \"#ffffff\",\n \"textPrimary\": \"#1c1b1a\",\n \"textSecondary\": \"#8b95a1\",\n \"textMuted\": \"#b0b8c1\",\n \"borderSubtle\": \"#e1dcd3\",\n \"borderStrong\": \"#e5e8eb\",\n \"statusSuccess\": \"#10b981\",\n \"statusDanger\": \"#f43f5e\",\n \"statusWarning\": \"#f59e0b\"\n },\n \"typography\": {\n \"fontFamily\": \"AkkuratLL\",\n \"h1\": {\n \"fontSize\": 36,\n \"lineHeight\": 1.2,\n \"fontWeight\": 700,\n \"letterSpacing\": \"-0.02em\"\n },\n \"h2\": {\n \"fontSize\": 80,\n \"lineHeight\": 1.1,\n \"fontWeight\": 300,\n \"letterSpacing\": \"0\"\n },\n \"h3\": {\n \"fontSize\": 22,\n \"lineHeight\": 1.3,\n \"fontWeight\": 600,\n \"letterSpacing\": \"-0.01em\"\n },\n \"h4\": {\n \"fontSize\": 24,\n \"lineHeight\": 1.25,\n \"fontWeight\": 100,\n \"letterSpacing\": \"0\"\n },\n \"h5\": {\n \"fontSize\": 24,\n \"lineHeight\": 1.25,\n \"fontWeight\": 100,\n \"letterSpacing\": \"0\"\n },\n \"h6\": {\n \"fontSize\": 16,\n \"lineHeight\": 1,\n \"fontWeight\": 600,\n \"letterSpacing\": \"0\"\n },\n \"body\": {\n \"fontSize\": 18,\n \"lineHeight\": 1.5,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0\"\n },\n \"sm\": {\n \"fontSize\": 16,\n \"lineHeight\": 1.5,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0\"\n },\n \"xs\": {\n \"fontSize\": 13,\n \"lineHeight\": 1.4,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0\"\n }\n },\n \"borderRadius\": \"12px\"\n },\n {\n \"id\": \"pinterest\",\n \"name\": \"Pinterest\",\n \"category\": \"Tech & Lifestyle\",\n \"description\": \"|\",\n \"designMdPath\": \"/design-md/pinterest/DESIGN.md\",\n \"color\": {\n \"primary\": \"#e60023\",\n \"primaryHover\": \"#e60023\",\n \"primaryLight\": \"#e8f3ff\",\n \"bgPrimary\": \"#ffffff\",\n \"bgSecondary\": \"#f6f6f3\",\n \"textPrimary\": \"#000000\",\n \"textSecondary\": \"#8b95a1\",\n \"textMuted\": \"#b0b8c1\",\n \"borderSubtle\": \"#dadad3\",\n \"borderStrong\": \"#e5e8eb\",\n \"statusSuccess\": \"#10b981\",\n \"statusDanger\": \"#f43f5e\",\n \"statusWarning\": \"#f59e0b\"\n },\n \"typography\": {\n \"fontFamily\": \"Pin Sans\",\n \"h1\": {\n \"fontSize\": 70,\n \"lineHeight\": 1.1,\n \"fontWeight\": 600,\n \"letterSpacing\": \"-1.2px\"\n },\n \"h2\": {\n \"fontSize\": 44,\n \"lineHeight\": 1.15,\n \"fontWeight\": 700,\n \"letterSpacing\": \"-0.8px\"\n },\n \"h3\": {\n \"fontSize\": 22,\n \"lineHeight\": 1.25,\n \"fontWeight\": 600,\n \"letterSpacing\": \"0\"\n },\n \"h4\": {\n \"fontSize\": 18,\n \"lineHeight\": 1.3,\n \"fontWeight\": 600,\n \"letterSpacing\": \"0\"\n },\n \"h5\": {\n \"fontSize\": 16,\n \"lineHeight\": 1.4,\n \"fontWeight\": 600,\n \"letterSpacing\": \"0em\"\n },\n \"h6\": {\n \"fontSize\": 14,\n \"lineHeight\": 1.45,\n \"fontWeight\": 600,\n \"letterSpacing\": \"0em\"\n },\n \"body\": {\n \"fontSize\": 15,\n \"lineHeight\": 1.55,\n \"fontWeight\": 400,\n \"letterSpacing\": \"-0.005em\"\n },\n \"sm\": {\n \"fontSize\": 14,\n \"lineHeight\": 1.4,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0\"\n },\n \"xs\": {\n \"fontSize\": 11,\n \"lineHeight\": 1.4,\n \"fontWeight\": 500,\n \"letterSpacing\": \"0.01em\"\n }\n },\n \"borderRadius\": \"16px\"\n },\n {\n \"id\": \"playstation\",\n \"name\": \"PlayStation\",\n \"category\": \"Tech & Lifestyle\",\n \"description\": \"|\",\n \"designMdPath\": \"/design-md/playstation/DESIGN.md\",\n \"color\": {\n \"primary\": \"#0070d1\",\n \"primaryHover\": \"#0070d1\",\n \"primaryLight\": \"#e8f3ff\",\n \"bgPrimary\": \"#ffffff\",\n \"bgSecondary\": \"#f5f7fa\",\n \"textPrimary\": \"#000000\",\n \"textSecondary\": \"#8b95a1\",\n \"textMuted\": \"#b0b8c1\",\n \"borderSubtle\": \"#f2f4f6\",\n \"borderStrong\": \"#e5e8eb\",\n \"statusSuccess\": \"#10b981\",\n \"statusDanger\": \"#f43f5e\",\n \"statusWarning\": \"#c81b3a\"\n },\n \"typography\": {\n \"fontFamily\": \"PlayStation SST\",\n \"h1\": {\n \"fontSize\": 54,\n \"lineHeight\": 1.25,\n \"fontWeight\": 300,\n \"letterSpacing\": \"-0.1px\"\n },\n \"h2\": {\n \"fontSize\": 44,\n \"lineHeight\": 1.25,\n \"fontWeight\": 300,\n \"letterSpacing\": \"0.1px\"\n },\n \"h3\": {\n \"fontSize\": 35,\n \"lineHeight\": 1.25,\n \"fontWeight\": 300,\n \"letterSpacing\": \"0\"\n },\n \"h4\": {\n \"fontSize\": 18,\n \"lineHeight\": 1,\n \"fontWeight\": 600,\n \"letterSpacing\": \"0\"\n },\n \"h5\": {\n \"fontSize\": 16,\n \"lineHeight\": 1.4,\n \"fontWeight\": 600,\n \"letterSpacing\": \"0em\"\n },\n \"h6\": {\n \"fontSize\": 14,\n \"lineHeight\": 1.45,\n \"fontWeight\": 600,\n \"letterSpacing\": \"0em\"\n },\n \"body\": {\n \"fontSize\": 15,\n \"lineHeight\": 1.55,\n \"fontWeight\": 400,\n \"letterSpacing\": \"-0.005em\"\n },\n \"sm\": {\n \"fontSize\": 16,\n \"lineHeight\": 1.5,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0\"\n },\n \"xs\": {\n \"fontSize\": 11,\n \"lineHeight\": 1.4,\n \"fontWeight\": 500,\n \"letterSpacing\": \"0.01em\"\n }\n },\n \"borderRadius\": \"8px\"\n },\n {\n \"id\": \"posthog\",\n \"name\": \"PostHog\",\n \"category\": \"Tech & Lifestyle\",\n \"description\": \"|\",\n \"designMdPath\": \"/design-md/posthog/DESIGN.md\",\n \"color\": {\n \"primary\": \"#f7a501\",\n \"primaryHover\": \"#f7a501\",\n \"primaryLight\": \"#e8f3ff\",\n \"bgPrimary\": \"#eeefe9\",\n \"bgSecondary\": \"#ffffff\",\n \"textPrimary\": \"#23251d\",\n \"textSecondary\": \"#8b95a1\",\n \"textMuted\": \"#b0b8c1\",\n \"borderSubtle\": \"#bfc1b7\",\n \"borderStrong\": \"#e5e8eb\",\n \"statusSuccess\": \"#10b981\",\n \"statusDanger\": \"#f43f5e\",\n \"statusWarning\": \"#f59e0b\"\n },\n \"typography\": {\n \"fontFamily\": \"IBM Plex Sans Variable\",\n \"h1\": {\n \"fontSize\": 36,\n \"lineHeight\": 1.5,\n \"fontWeight\": 700,\n \"letterSpacing\": \"0\"\n },\n \"h2\": {\n \"fontSize\": 24,\n \"lineHeight\": 1.33,\n \"fontWeight\": 800,\n \"letterSpacing\": \"-0.6px\"\n },\n \"h3\": {\n \"fontSize\": 21,\n \"lineHeight\": 1.4,\n \"fontWeight\": 700,\n \"letterSpacing\": \"-0.5px\"\n },\n \"h4\": {\n \"fontSize\": 20,\n \"lineHeight\": 1.4,\n \"fontWeight\": 700,\n \"letterSpacing\": \"0\"\n },\n \"h5\": {\n \"fontSize\": 18,\n \"lineHeight\": 1.5,\n \"fontWeight\": 700,\n \"letterSpacing\": \"0\"\n },\n \"h6\": {\n \"fontSize\": 14,\n \"lineHeight\": 1.45,\n \"fontWeight\": 600,\n \"letterSpacing\": \"0em\"\n },\n \"body\": {\n \"fontSize\": 15,\n \"lineHeight\": 1.55,\n \"fontWeight\": 400,\n \"letterSpacing\": \"-0.005em\"\n },\n \"sm\": {\n \"fontSize\": 15,\n \"lineHeight\": 1.71,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0\"\n },\n \"xs\": {\n \"fontSize\": 11,\n \"lineHeight\": 1.4,\n \"fontWeight\": 500,\n \"letterSpacing\": \"0.01em\"\n }\n },\n \"borderRadius\": \"6px\"\n },\n {\n \"id\": \"raycast\",\n \"name\": \"Raycast\",\n \"category\": \"Developer Tools\",\n \"description\": \"|\",\n \"designMdPath\": \"/design-md/raycast/DESIGN.md\",\n \"color\": {\n \"primary\": \"#ffffff\",\n \"primaryHover\": \"#ffffff\",\n \"primaryLight\": \"#ffffff26\",\n \"bgPrimary\": \"#07080a\",\n \"bgSecondary\": \"#0d0d0d\",\n \"textPrimary\": \"#f4f4f6\",\n \"textSecondary\": \"#9aa1b1\",\n \"textMuted\": \"#5c6470\",\n \"borderSubtle\": \"#242728\",\n \"borderStrong\": \"rgba(255,255,255,0.16)\",\n \"statusSuccess\": \"#10b981\",\n \"statusDanger\": \"#f43f5e\",\n \"statusWarning\": \"#f59e0b\"\n },\n \"typography\": {\n \"fontFamily\": \"Inter\",\n \"h1\": {\n \"fontSize\": 64,\n \"lineHeight\": 1.1,\n \"fontWeight\": 600,\n \"letterSpacing\": \"0\"\n },\n \"h2\": {\n \"fontSize\": 56,\n \"lineHeight\": 1.17,\n \"fontWeight\": 500,\n \"letterSpacing\": \"0.2px\"\n },\n \"h3\": {\n \"fontSize\": 22,\n \"lineHeight\": 1.15,\n \"fontWeight\": 500,\n \"letterSpacing\": \"0\"\n },\n \"h4\": {\n \"fontSize\": 20,\n \"lineHeight\": 1.4,\n \"fontWeight\": 500,\n \"letterSpacing\": \"0.2px\"\n },\n \"h5\": {\n \"fontSize\": 18,\n \"lineHeight\": 1.4,\n \"fontWeight\": 500,\n \"letterSpacing\": \"0.2px\"\n },\n \"h6\": {\n \"fontSize\": 14,\n \"lineHeight\": 1.45,\n \"fontWeight\": 600,\n \"letterSpacing\": \"0em\"\n },\n \"body\": {\n \"fontSize\": 18,\n \"lineHeight\": 1.6,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0\"\n },\n \"sm\": {\n \"fontSize\": 14,\n \"lineHeight\": 1.6,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0\"\n },\n \"xs\": {\n \"fontSize\": 11,\n \"lineHeight\": 1.4,\n \"fontWeight\": 500,\n \"letterSpacing\": \"0.01em\"\n }\n },\n \"borderRadius\": \"8px\"\n },\n {\n \"id\": \"renault\",\n \"name\": \"Renault\",\n \"category\": \"Automotive & Luxury\",\n \"description\": \"|\",\n \"designMdPath\": \"/design-md/renault/DESIGN.md\",\n \"color\": {\n \"primary\": \"#ffed00\",\n \"primaryHover\": \"#e6d200\",\n \"primaryLight\": \"#e8f3ff\",\n \"bgPrimary\": \"#ffffff\",\n \"bgSecondary\": \"#ffffff\",\n \"textPrimary\": \"#000000\",\n \"textSecondary\": \"#8b95a1\",\n \"textMuted\": \"#b0b8c1\",\n \"borderSubtle\": \"#f2f2f2\",\n \"borderStrong\": \"#000000\",\n \"statusSuccess\": \"#8dc572\",\n \"statusDanger\": \"#f43f5e\",\n \"statusWarning\": \"#f0ad4e\"\n },\n \"typography\": {\n \"fontFamily\": \"NouvelR\",\n \"h1\": {\n \"fontSize\": 56,\n \"lineHeight\": 0.95,\n \"fontWeight\": 700,\n \"letterSpacing\": \"0\"\n },\n \"h2\": {\n \"fontSize\": 40,\n \"lineHeight\": 0.95,\n \"fontWeight\": 700,\n \"letterSpacing\": \"0\"\n },\n \"h3\": {\n \"fontSize\": 32,\n \"lineHeight\": 0.95,\n \"fontWeight\": 700,\n \"letterSpacing\": \"0\"\n },\n \"h4\": {\n \"fontSize\": 20,\n \"lineHeight\": 0.95,\n \"fontWeight\": 700,\n \"letterSpacing\": \"0\"\n },\n \"h5\": {\n \"fontSize\": 18,\n \"lineHeight\": 1,\n \"fontWeight\": 700,\n \"letterSpacing\": \"0\"\n },\n \"h6\": {\n \"fontSize\": 14,\n \"lineHeight\": 1.45,\n \"fontWeight\": 600,\n \"letterSpacing\": \"0em\"\n },\n \"body\": {\n \"fontSize\": 18,\n \"lineHeight\": 1.5,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0\"\n },\n \"sm\": {\n \"fontSize\": 14,\n \"lineHeight\": 1.57,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0\"\n },\n \"xs\": {\n \"fontSize\": 12,\n \"lineHeight\": 1.4,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0\"\n }\n },\n \"borderRadius\": \"4px\"\n },\n {\n \"id\": \"replicate\",\n \"name\": \"Replicate\",\n \"category\": \"AI & LLM\",\n \"description\": \"|\",\n \"designMdPath\": \"/design-md/replicate/DESIGN.md\",\n \"color\": {\n \"primary\": \"#ea2804\",\n \"primaryHover\": \"#c01f00\",\n \"primaryLight\": \"#e8f3ff\",\n \"bgPrimary\": \"#f9f7f3\",\n \"bgSecondary\": \"#ffffff\",\n \"textPrimary\": \"#202020\",\n \"textSecondary\": \"#8b95a1\",\n \"textMuted\": \"#b0b8c1\",\n \"borderSubtle\": \"rgba(32,32,32,0.12)\",\n \"borderStrong\": \"#202020\",\n \"statusSuccess\": \"#10b981\",\n \"statusDanger\": \"#f43f5e\",\n \"statusWarning\": \"#f59e0b\"\n },\n \"typography\": {\n \"fontFamily\": \"rb-freigeist-neue\",\n \"h1\": {\n \"fontSize\": 72,\n \"lineHeight\": 1,\n \"fontWeight\": 700,\n \"letterSpacing\": \"-1.8px\"\n },\n \"h2\": {\n \"fontSize\": 48,\n \"lineHeight\": 1,\n \"fontWeight\": 700,\n \"letterSpacing\": \"-1px\"\n },\n \"h3\": {\n \"fontSize\": 30,\n \"lineHeight\": 1.2,\n \"fontWeight\": 600,\n \"letterSpacing\": \"-0.5px\"\n },\n \"h4\": {\n \"fontSize\": 24,\n \"lineHeight\": 1.33,\n \"fontWeight\": 600,\n \"letterSpacing\": \"-0.35px\"\n },\n \"h5\": {\n \"fontSize\": 20,\n \"lineHeight\": 1.4,\n \"fontWeight\": 600,\n \"letterSpacing\": \"-0.3px\"\n },\n \"h6\": {\n \"fontSize\": 14,\n \"lineHeight\": 1.45,\n \"fontWeight\": 600,\n \"letterSpacing\": \"0em\"\n },\n \"body\": {\n \"fontSize\": 18,\n \"lineHeight\": 1.56,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0\"\n },\n \"sm\": {\n \"fontSize\": 14,\n \"lineHeight\": 1.43,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0\"\n },\n \"xs\": {\n \"fontSize\": 12,\n \"lineHeight\": 1.33,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0\"\n }\n },\n \"borderRadius\": \"10px\"\n },\n {\n \"id\": \"resend\",\n \"name\": \"Resend\",\n \"category\": \"Tech & Lifestyle\",\n \"description\": \"|\",\n \"designMdPath\": \"/design-md/resend/DESIGN.md\",\n \"color\": {\n \"primary\": \"#fcfdff\",\n \"primaryHover\": \"#fcfdff\",\n \"primaryLight\": \"#fcfdff26\",\n \"bgPrimary\": \"#000000\",\n \"bgSecondary\": \"#0a0a0c\",\n \"textPrimary\": \"#fcfdff\",\n \"textSecondary\": \"#9aa1b1\",\n \"textMuted\": \"#5c6470\",\n \"borderSubtle\": \"rgba(255,255,255,0.06)\",\n \"borderStrong\": \"rgba(255,255,255,0.14)\",\n \"statusSuccess\": \"#10b981\",\n \"statusDanger\": \"#f43f5e\",\n \"statusWarning\": \"#f59e0b\"\n },\n \"typography\": {\n \"fontFamily\": \"Domaine Display\",\n \"h1\": {\n \"fontSize\": 768,\n \"lineHeight\": 1,\n \"fontWeight\": 400,\n \"letterSpacing\": \"-0.768px\"\n },\n \"h2\": {\n \"fontSize\": 56,\n \"lineHeight\": 1.2,\n \"fontWeight\": 400,\n \"letterSpacing\": \"-2.8px\"\n },\n \"h3\": {\n \"fontSize\": 22,\n \"lineHeight\": 1.3,\n \"fontWeight\": 600,\n \"letterSpacing\": \"-0.01em\"\n },\n \"h4\": {\n \"fontSize\": 24,\n \"lineHeight\": 1.5,\n \"fontWeight\": 500,\n \"letterSpacing\": \"-0.4px\"\n },\n \"h5\": {\n \"fontSize\": 20,\n \"lineHeight\": 1.3,\n \"fontWeight\": 500,\n \"letterSpacing\": \"-0.3px\"\n },\n \"h6\": {\n \"fontSize\": 14,\n \"lineHeight\": 1.45,\n \"fontWeight\": 600,\n \"letterSpacing\": \"0em\"\n },\n \"body\": {\n \"fontSize\": 18,\n \"lineHeight\": 1.5,\n \"fontWeight\": 400,\n \"letterSpacing\": \"-0.005em\"\n },\n \"sm\": {\n \"fontSize\": 14,\n \"lineHeight\": 1.43,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0em\"\n },\n \"xs\": {\n \"fontSize\": 12,\n \"lineHeight\": 1.5,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0.01em\"\n }\n },\n \"borderRadius\": \"8px\"\n },\n {\n \"id\": \"revolut\",\n \"name\": \"Revolut\",\n \"category\": \"Fintech & Web3\",\n \"description\": \"|\",\n \"designMdPath\": \"/design-md/revolut/DESIGN.md\",\n \"color\": {\n \"primary\": \"#494fdf\",\n \"primaryHover\": \"#3a40c4\",\n \"primaryLight\": \"#e8f3ff\",\n \"bgPrimary\": \"#ffffff\",\n \"bgSecondary\": \"#ffffff\",\n \"textPrimary\": \"#191c1f\",\n \"textSecondary\": \"#8b95a1\",\n \"textMuted\": \"#c9c9cd\",\n \"borderSubtle\": \"rgba(255,255,255,0.06)\",\n \"borderStrong\": \"#191c1f\",\n \"statusSuccess\": \"#10b981\",\n \"statusDanger\": \"#f43f5e\",\n \"statusWarning\": \"#f59e0b\"\n },\n \"typography\": {\n \"fontFamily\": \"Aeonik Pro\",\n \"h1\": {\n \"fontSize\": 80,\n \"lineHeight\": 1,\n \"fontWeight\": 500,\n \"letterSpacing\": \"-0.8px\"\n },\n \"h2\": {\n \"fontSize\": 48,\n \"lineHeight\": 1.21,\n \"fontWeight\": 500,\n \"letterSpacing\": \"-0.48px\"\n },\n \"h3\": {\n \"fontSize\": 40,\n \"lineHeight\": 1.2,\n \"fontWeight\": 500,\n \"letterSpacing\": \"-0.4px\"\n },\n \"h4\": {\n \"fontSize\": 24,\n \"lineHeight\": 1.33,\n \"fontWeight\": 500,\n \"letterSpacing\": \"0\"\n },\n \"h5\": {\n \"fontSize\": 20,\n \"lineHeight\": 1.4,\n \"fontWeight\": 500,\n \"letterSpacing\": \"0\"\n },\n \"h6\": {\n \"fontSize\": 14,\n \"lineHeight\": 1.45,\n \"fontWeight\": 600,\n \"letterSpacing\": \"0em\"\n },\n \"body\": {\n \"fontSize\": 18,\n \"lineHeight\": 1.56,\n \"fontWeight\": 400,\n \"letterSpacing\": \"-0.09px\"\n },\n \"sm\": {\n \"fontSize\": 14,\n \"lineHeight\": 1.43,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0em\"\n },\n \"xs\": {\n \"fontSize\": 13,\n \"lineHeight\": 1.4,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0.01em\"\n }\n },\n \"borderRadius\": \"12px\"\n },\n {\n \"id\": \"sap\",\n \"name\": \"SAP Analysis\",\n \"category\": \"Tech & Lifestyle\",\n \"description\": \"An analysis of SAP's design language — an enterprise system that keeps almost everything on white and spends its structure on two greys and one blue. The chrome is deliberately quiet, a 60px light-grey bar over a product tab rail, so the pa\",\n \"designMdPath\": \"/design-md/sap/DESIGN.md\",\n \"color\": {\n \"primary\": \"#0057d2\",\n \"primaryHover\": \"#0040b0\",\n \"primaryLight\": \"#e8f3ff\",\n \"bgPrimary\": \"#ffffff\",\n \"bgSecondary\": \"#f8f9fa\",\n \"textPrimary\": \"#000000\",\n \"textSecondary\": \"#8b95a1\",\n \"textMuted\": \"#b0b8c1\",\n \"borderSubtle\": \"#475e75\",\n \"borderStrong\": \"#e5e8eb\",\n \"statusSuccess\": \"#10b981\",\n \"statusDanger\": \"#f43f5e\",\n \"statusWarning\": \"#f59e0b\"\n },\n \"typography\": {\n \"fontFamily\": \"72 Brand Variable\",\n \"h1\": {\n \"fontSize\": 36,\n \"lineHeight\": 1.2,\n \"fontWeight\": 700,\n \"letterSpacing\": \"-0.02em\"\n },\n \"h2\": {\n \"fontSize\": 28,\n \"lineHeight\": 1.25,\n \"fontWeight\": 700,\n \"letterSpacing\": \"-0.015em\"\n },\n \"h3\": {\n \"fontSize\": 22,\n \"lineHeight\": 1.3,\n \"fontWeight\": 600,\n \"letterSpacing\": \"-0.01em\"\n },\n \"h4\": {\n \"fontSize\": 20,\n \"lineHeight\": 22,\n \"fontWeight\": 500,\n \"letterSpacing\": \"0\"\n },\n \"h5\": {\n \"fontSize\": 20,\n \"lineHeight\": 22,\n \"fontWeight\": 500,\n \"letterSpacing\": \"0\"\n },\n \"h6\": {\n \"fontSize\": 16,\n \"lineHeight\": 17.6,\n \"fontWeight\": 500,\n \"letterSpacing\": \"0\"\n },\n \"body\": {\n \"fontSize\": 18,\n \"lineHeight\": 27,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0\"\n },\n \"sm\": {\n \"fontSize\": 14,\n \"lineHeight\": 21,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0\"\n },\n \"xs\": {\n \"fontSize\": 14,\n \"lineHeight\": 21,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0\"\n }\n },\n \"borderRadius\": \"8px\"\n },\n {\n \"id\": \"sentry\",\n \"name\": \"Sentri\",\n \"category\": \"Developer Tools\",\n \"description\": \"An inspired interpretation of Sentri's design language — a developer-tools brand built on a deep purple-violet midnight canvas, electric lime accents, and a slightly subversive illustrated personality. The system pairs a custom display sans\",\n \"designMdPath\": \"/design-md/sentry/DESIGN.md\",\n \"color\": {\n \"primary\": \"#150f23\",\n \"primaryHover\": \"#150f23\",\n \"primaryLight\": \"#e8f3ff\",\n \"bgPrimary\": \"#ffffff\",\n \"bgSecondary\": \"#f8f9fa\",\n \"textPrimary\": \"#1f1633\",\n \"textSecondary\": \"#8b95a1\",\n \"textMuted\": \"#b0b8c1\",\n \"borderSubtle\": \"#f2f4f6\",\n \"borderStrong\": \"#e5e8eb\",\n \"statusSuccess\": \"#10b981\",\n \"statusDanger\": \"#f43f5e\",\n \"statusWarning\": \"#f59e0b\"\n },\n \"typography\": {\n \"fontFamily\": \"Rubik, -apple-system, system-ui, sans-serif\",\n \"h1\": {\n \"fontSize\": 36,\n \"lineHeight\": 1.2,\n \"fontWeight\": 700,\n \"letterSpacing\": \"-0.02em\"\n },\n \"h2\": {\n \"fontSize\": 30,\n \"lineHeight\": 1.2,\n \"fontWeight\": 500,\n \"letterSpacing\": \"0\"\n },\n \"h3\": {\n \"fontSize\": 27,\n \"lineHeight\": 1.25,\n \"fontWeight\": 500,\n \"letterSpacing\": \"0\"\n },\n \"h4\": {\n \"fontSize\": 24,\n \"lineHeight\": 1.25,\n \"fontWeight\": 500,\n \"letterSpacing\": \"0\"\n },\n \"h5\": {\n \"fontSize\": 20,\n \"lineHeight\": 1.25,\n \"fontWeight\": 600,\n \"letterSpacing\": \"0\"\n },\n \"h6\": {\n \"fontSize\": 15,\n \"lineHeight\": 1.4,\n \"fontWeight\": 500,\n \"letterSpacing\": \"0\"\n },\n \"body\": {\n \"fontSize\": 16,\n \"lineHeight\": 2,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0\"\n },\n \"sm\": {\n \"fontSize\": 14,\n \"lineHeight\": 1.43,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0\"\n },\n \"xs\": {\n \"fontSize\": 14,\n \"lineHeight\": 1.43,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0\"\n }\n },\n \"borderRadius\": \"8px\"\n },\n {\n \"id\": \"shopify\",\n \"name\": \"Shopifi\",\n \"category\": \"Tech & Lifestyle\",\n \"description\": \"An inspired interpretation of Shopifi's design language — a cinematic commerce platform that runs two parallel design tracks. The marketing-hero and product-narrative pages live on near-black canvases with full-bleed photography of merchant\",\n \"designMdPath\": \"/design-md/shopify/DESIGN.md\",\n \"color\": {\n \"primary\": \"#000000\",\n \"primaryHover\": \"#000000\",\n \"primaryLight\": \"#e8f3ff\",\n \"bgPrimary\": \"#ffffff\",\n \"bgSecondary\": \"#f8f9fa\",\n \"textPrimary\": \"#000000\",\n \"textSecondary\": \"#8b95a1\",\n \"textMuted\": \"#b0b8c1\",\n \"borderSubtle\": \"#f2f4f6\",\n \"borderStrong\": \"#e5e8eb\",\n \"statusSuccess\": \"#10b981\",\n \"statusDanger\": \"#f43f5e\",\n \"statusWarning\": \"#f59e0b\"\n },\n \"typography\": {\n \"fontFamily\": \"NeueHaasGrotesk Display, Helvetica, Arial, sans-serif\",\n \"h1\": {\n \"fontSize\": 70,\n \"lineHeight\": 1,\n \"fontWeight\": 330,\n \"letterSpacing\": \"0\"\n },\n \"h2\": {\n \"fontSize\": 55,\n \"lineHeight\": 1.16,\n \"fontWeight\": 330,\n \"letterSpacing\": \"0\"\n },\n \"h3\": {\n \"fontSize\": 48,\n \"lineHeight\": 1.14,\n \"fontWeight\": 330,\n \"letterSpacing\": \"0\"\n },\n \"h4\": {\n \"fontSize\": 20,\n \"lineHeight\": 1.4,\n \"fontWeight\": 500,\n \"letterSpacing\": \"0.3px\"\n },\n \"h5\": {\n \"fontSize\": 18,\n \"lineHeight\": 1.25,\n \"fontWeight\": 500,\n \"letterSpacing\": \"0.72px\"\n },\n \"h6\": {\n \"fontSize\": 14,\n \"lineHeight\": 1.45,\n \"fontWeight\": 600,\n \"letterSpacing\": \"0em\"\n },\n \"body\": {\n \"fontSize\": 18,\n \"lineHeight\": 1.56,\n \"fontWeight\": 550,\n \"letterSpacing\": \"0\"\n },\n \"sm\": {\n \"fontSize\": 14,\n \"lineHeight\": 1.49,\n \"fontWeight\": 500,\n \"letterSpacing\": \"0.28px\"\n },\n \"xs\": {\n \"fontSize\": 14,\n \"lineHeight\": 1.49,\n \"fontWeight\": 500,\n \"letterSpacing\": \"0.28px\"\n }\n },\n \"borderRadius\": \"8px\"\n },\n {\n \"id\": \"slack\",\n \"name\": \"Slacc\",\n \"category\": \"Tech & Lifestyle\",\n \"description\": \"An inspired interpretation of Slacc's design language — a workplace messaging brand built on a deep aubergine primary, with cream-lavender hero gradients, blue inline links, and pill CTAs. The system pairs a proprietary humanist sans for di\",\n \"designMdPath\": \"/design-md/slack/DESIGN.md\",\n \"color\": {\n \"primary\": \"#4a154b\",\n \"primaryHover\": \"#481a54\",\n \"primaryLight\": \"#e8f3ff\",\n \"bgPrimary\": \"#ffffff\",\n \"bgSecondary\": \"#f8f9fa\",\n \"textPrimary\": \"#1d1d1d\",\n \"textSecondary\": \"#8b95a1\",\n \"textMuted\": \"#b0b8c1\",\n \"borderSubtle\": \"#e6e6e6\",\n \"borderStrong\": \"#000000\",\n \"statusSuccess\": \"#007a5a\",\n \"statusDanger\": \"#f43f5e\",\n \"statusWarning\": \"#f59e0b\"\n },\n \"typography\": {\n \"fontFamily\": \"Salesforce-Avant-Garde, system-ui, -apple-system, BlinkMacSystemFont, sans-serif\",\n \"h1\": {\n \"fontSize\": 58,\n \"lineHeight\": 1.25,\n \"fontWeight\": 600,\n \"letterSpacing\": \"-0.464px\"\n },\n \"h2\": {\n \"fontSize\": 50,\n \"lineHeight\": 1.12,\n \"fontWeight\": 700,\n \"letterSpacing\": \"-0.6px\"\n },\n \"h3\": {\n \"fontSize\": 32,\n \"lineHeight\": 1.25,\n \"fontWeight\": 700,\n \"letterSpacing\": \"-0.256px\"\n },\n \"h4\": {\n \"fontSize\": 22,\n \"lineHeight\": 1.4,\n \"fontWeight\": 600,\n \"letterSpacing\": \"0\"\n },\n \"h5\": {\n \"fontSize\": 18,\n \"lineHeight\": 1.56,\n \"fontWeight\": 600,\n \"letterSpacing\": \"-0.0216px\"\n },\n \"h6\": {\n \"fontSize\": 14,\n \"lineHeight\": 1.45,\n \"fontWeight\": 600,\n \"letterSpacing\": \"0em\"\n },\n \"body\": {\n \"fontSize\": 18,\n \"lineHeight\": 1.55,\n \"fontWeight\": 400,\n \"letterSpacing\": \"-0.0216px\"\n },\n \"sm\": {\n \"fontSize\": 14,\n \"lineHeight\": 1.43,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0.1px\"\n },\n \"xs\": {\n \"fontSize\": 14,\n \"lineHeight\": 1.43,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0.1px\"\n }\n },\n \"borderRadius\": \"8px\"\n },\n {\n \"id\": \"spacex\",\n \"name\": \"Spacex\",\n \"category\": \"Automotive & Luxury\",\n \"description\": \"An inspired interpretation of Spasex's design language — a mission-oriented aerospace brand built on pure black canvas, full-bleed photographic and video heroes of rockets and Mars landscapes, and uppercase D-DIN display type set in tight v\",\n \"designMdPath\": \"/design-md/spacex/DESIGN.md\",\n \"color\": {\n \"primary\": \"#000000\",\n \"primaryHover\": \"#000000\",\n \"primaryLight\": \"#e8f3ff\",\n \"bgPrimary\": \"#ffffff\",\n \"bgSecondary\": \"#f8f9fa\",\n \"textPrimary\": \"#000000\",\n \"textSecondary\": \"#8b95a1\",\n \"textMuted\": \"#b0b8c1\",\n \"borderSubtle\": \"#f2f4f6\",\n \"borderStrong\": \"#e5e8eb\",\n \"statusSuccess\": \"#10b981\",\n \"statusDanger\": \"#f43f5e\",\n \"statusWarning\": \"#f59e0b\"\n },\n \"typography\": {\n \"fontFamily\": \"D-DIN-Bold, Arial Narrow, Arial, Verdana, sans-serif\",\n \"h1\": {\n \"fontSize\": 60,\n \"lineHeight\": 1.2,\n \"fontWeight\": 700,\n \"letterSpacing\": \"1.2px\"\n },\n \"h2\": {\n \"fontSize\": 48,\n \"lineHeight\": 1.25,\n \"fontWeight\": 700,\n \"letterSpacing\": \"0.96px\"\n },\n \"h3\": {\n \"fontSize\": 22,\n \"lineHeight\": 1.3,\n \"fontWeight\": 600,\n \"letterSpacing\": \"-0.01em\"\n },\n \"h4\": {\n \"fontSize\": 18,\n \"lineHeight\": 1.35,\n \"fontWeight\": 600,\n \"letterSpacing\": \"-0.005em\"\n },\n \"h5\": {\n \"fontSize\": 16,\n \"lineHeight\": 1.4,\n \"fontWeight\": 600,\n \"letterSpacing\": \"0em\"\n },\n \"h6\": {\n \"fontSize\": 14,\n \"lineHeight\": 1.45,\n \"fontWeight\": 600,\n \"letterSpacing\": \"0em\"\n },\n \"body\": {\n \"fontSize\": 16,\n \"lineHeight\": 1.7,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0.32px\"\n },\n \"sm\": {\n \"fontSize\": 13008,\n \"lineHeight\": 1.5,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0\"\n },\n \"xs\": {\n \"fontSize\": 13008,\n \"lineHeight\": 1.5,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0\"\n }\n },\n \"borderRadius\": \"16px\"\n },\n {\n \"id\": \"stripe\",\n \"name\": \"Stripi\",\n \"category\": \"Fintech & Web3\",\n \"description\": \"An inspired interpretation of Stripi's design language — a financial-infrastructure brand built on a deep navy ink, an electric indigo primary, and a recurring atmospheric gradient mesh that occupies the upper third of nearly every marketin\",\n \"designMdPath\": \"/design-md/stripe/DESIGN.md\",\n \"color\": {\n \"primary\": \"#533afd\",\n \"primaryHover\": \"#4434d4\",\n \"primaryLight\": \"#665efd\",\n \"bgPrimary\": \"#ffffff\",\n \"bgSecondary\": \"#f6f9fc\",\n \"textPrimary\": \"#0d253d\",\n \"textSecondary\": \"#273951\",\n \"textMuted\": \"#61718a\",\n \"borderSubtle\": \"#e3e8ee\",\n \"borderStrong\": \"#a8c3de\",\n \"statusSuccess\": \"#10b981\",\n \"statusDanger\": \"#ea2261\",\n \"statusWarning\": \"#9b6829\"\n },\n \"typography\": {\n \"fontFamily\": \"sohne-var, 'SF Pro Display', system-ui, -apple-system, sans-serif\",\n \"h1\": {\n \"fontSize\": 48,\n \"lineHeight\": 1.15,\n \"fontWeight\": 300,\n \"letterSpacing\": \"-0.96px\"\n },\n \"h2\": {\n \"fontSize\": 32,\n \"lineHeight\": 1.1,\n \"fontWeight\": 300,\n \"letterSpacing\": \"-0.64px\"\n },\n \"h3\": {\n \"fontSize\": 26,\n \"lineHeight\": 1.12,\n \"fontWeight\": 300,\n \"letterSpacing\": \"-0.26px\"\n },\n \"h4\": {\n \"fontSize\": 20,\n \"lineHeight\": 1.4,\n \"fontWeight\": 300,\n \"letterSpacing\": \"-0.2px\"\n },\n \"h5\": {\n \"fontSize\": 18,\n \"lineHeight\": 1.4,\n \"fontWeight\": 300,\n \"letterSpacing\": \"0\"\n },\n \"h6\": {\n \"fontSize\": 14,\n \"lineHeight\": 1.45,\n \"fontWeight\": 600,\n \"letterSpacing\": \"0em\"\n },\n \"body\": {\n \"fontSize\": 16,\n \"lineHeight\": 1.4,\n \"fontWeight\": 300,\n \"letterSpacing\": \"0\"\n },\n \"sm\": {\n \"fontSize\": 13,\n \"lineHeight\": 1.4,\n \"fontWeight\": 400,\n \"letterSpacing\": \"-0.39px\"\n },\n \"xs\": {\n \"fontSize\": 13,\n \"lineHeight\": 1.4,\n \"fontWeight\": 400,\n \"letterSpacing\": \"-0.39px\"\n }\n },\n \"borderRadius\": \"8px\"\n },\n {\n \"id\": \"supabase\",\n \"name\": \"Supabaze\",\n \"category\": \"Tech & Lifestyle\",\n \"description\": \"An inspired interpretation of Supabaze's design language — an open-source database platform built on a clean white-and-near-black system with a single signature emerald-green CTA, a custom humanist sans display tier, and dense product UI mo\",\n \"designMdPath\": \"/design-md/supabase/DESIGN.md\",\n \"color\": {\n \"primary\": \"#3ecf8e\",\n \"primaryHover\": \"#24b47e\",\n \"primaryLight\": \"#4ade80\",\n \"bgPrimary\": \"#ffffff\",\n \"bgSecondary\": \"#fafafa\",\n \"textPrimary\": \"#171717\",\n \"textSecondary\": \"#212121\",\n \"textMuted\": \"#9a9a9a\",\n \"borderSubtle\": \"#dfdfdf\",\n \"borderStrong\": \"#c7c7c7\",\n \"statusSuccess\": \"#10b981\",\n \"statusDanger\": \"#f43f5e\",\n \"statusWarning\": \"#f59e0b\"\n },\n \"typography\": {\n \"fontFamily\": \"Circular, 'Helvetica Neue', Helvetica, Arial, sans-serif\",\n \"h1\": {\n \"fontSize\": 48,\n \"lineHeight\": 1.1,\n \"fontWeight\": 500,\n \"letterSpacing\": \"-1.44px\"\n },\n \"h2\": {\n \"fontSize\": 36,\n \"lineHeight\": 1.15,\n \"fontWeight\": 500,\n \"letterSpacing\": \"-0.72px\"\n },\n \"h3\": {\n \"fontSize\": 28,\n \"lineHeight\": 1.2,\n \"fontWeight\": 500,\n \"letterSpacing\": \"-0.42px\"\n },\n \"h4\": {\n \"fontSize\": 18,\n \"lineHeight\": 1.4,\n \"fontWeight\": 500,\n \"letterSpacing\": \"0\"\n },\n \"h5\": {\n \"fontSize\": 16,\n \"lineHeight\": 1.4,\n \"fontWeight\": 600,\n \"letterSpacing\": \"0em\"\n },\n \"h6\": {\n \"fontSize\": 14,\n \"lineHeight\": 1.45,\n \"fontWeight\": 600,\n \"letterSpacing\": \"0em\"\n },\n \"body\": {\n \"fontSize\": 18,\n \"lineHeight\": 1.55,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0\"\n },\n \"sm\": {\n \"fontSize\": 13,\n \"lineHeight\": 1.45,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0\"\n },\n \"xs\": {\n \"fontSize\": 13,\n \"lineHeight\": 1.45,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0\"\n }\n },\n \"borderRadius\": \"8px\"\n },\n {\n \"id\": \"superhuman\",\n \"name\": \"Superhumon\",\n \"category\": \"Developer Tools\",\n \"description\": \"An inspired interpretation of Superhumon's design language — a fast-email productivity brand split between an editorial dark hero (deep indigo navy with violet-sky atmospheric backdrop and a portrait subject) and a quiet white content body \",\n \"designMdPath\": \"/design-md/superhuman/DESIGN.md\",\n \"color\": {\n \"primary\": \"#1b1938\",\n \"primaryHover\": \"#0e0c1f\",\n \"primaryLight\": \"#e8f3ff\",\n \"bgPrimary\": \"#ffffff\",\n \"bgSecondary\": \"#fafaf8\",\n \"textPrimary\": \"#292827\",\n \"textSecondary\": \"#8b95a1\",\n \"textMuted\": \"#b0b8c1\",\n \"borderSubtle\": \"#e8e4dd\",\n \"borderStrong\": \"#e5e8eb\",\n \"statusSuccess\": \"#10b981\",\n \"statusDanger\": \"#f43f5e\",\n \"statusWarning\": \"#f59e0b\"\n },\n \"typography\": {\n \"fontFamily\": \"'Super Sans VF', system-ui, -apple-system, 'Segoe UI', Roboto, sans-serif\",\n \"h1\": {\n \"fontSize\": 48,\n \"lineHeight\": 0.96,\n \"fontWeight\": 460,\n \"letterSpacing\": \"-1.32px\"\n },\n \"h2\": {\n \"fontSize\": 28,\n \"lineHeight\": 1.14,\n \"fontWeight\": 540,\n \"letterSpacing\": \"-0.63px\"\n },\n \"h3\": {\n \"fontSize\": 22,\n \"lineHeight\": 1.1,\n \"fontWeight\": 460,\n \"letterSpacing\": \"-0.315px\"\n },\n \"h4\": {\n \"fontSize\": 18,\n \"lineHeight\": 1.35,\n \"fontWeight\": 600,\n \"letterSpacing\": \"-0.005em\"\n },\n \"h5\": {\n \"fontSize\": 16,\n \"lineHeight\": 1.4,\n \"fontWeight\": 600,\n \"letterSpacing\": \"0em\"\n },\n \"h6\": {\n \"fontSize\": 14,\n \"lineHeight\": 1.45,\n \"fontWeight\": 600,\n \"letterSpacing\": \"0em\"\n },\n \"body\": {\n \"fontSize\": 18,\n \"lineHeight\": 1.5,\n \"fontWeight\": 540,\n \"letterSpacing\": \"-0.135px\"\n },\n \"sm\": {\n \"fontSize\": 14,\n \"lineHeight\": 1.4,\n \"fontWeight\": 460,\n \"letterSpacing\": \"0\"\n },\n \"xs\": {\n \"fontSize\": 14,\n \"lineHeight\": 1.4,\n \"fontWeight\": 460,\n \"letterSpacing\": \"0\"\n }\n },\n \"borderRadius\": \"8px\"\n },\n {\n \"id\": \"together.ai\",\n \"name\": \"Together-AI\",\n \"category\": \"AI & LLM\",\n \"description\": \"An inspired interpretation of Together AI's design language — an AI infrastructure platform whose surface alternates between near-black hero bands (with a three-color orange-magenta-periwinkle gradient as the single piece of brand chrome) a\",\n \"designMdPath\": \"/design-md/together.ai/DESIGN.md\",\n \"color\": {\n \"primary\": \"#000000\",\n \"primaryHover\": \"#000000\",\n \"primaryLight\": \"#e8f3ff\",\n \"bgPrimary\": \"#ffffff\",\n \"bgSecondary\": \"#f8f9fa\",\n \"textPrimary\": \"#000000\",\n \"textSecondary\": \"#8b95a1\",\n \"textMuted\": \"#b0b8c1\",\n \"borderSubtle\": \"#959494\",\n \"borderStrong\": \"#e5e8eb\",\n \"statusSuccess\": \"#10b981\",\n \"statusDanger\": \"#f43f5e\",\n \"statusWarning\": \"#f59e0b\"\n },\n \"typography\": {\n \"fontFamily\": \"The Future, Inter, Helvetica Neue, Arial, sans-serif\",\n \"h1\": {\n \"fontSize\": 40,\n \"lineHeight\": 48,\n \"fontWeight\": 500,\n \"letterSpacing\": \"-0.8px\"\n },\n \"h2\": {\n \"fontSize\": 28,\n \"lineHeight\": 32.2,\n \"fontWeight\": 500,\n \"letterSpacing\": \"-0.42px\"\n },\n \"h3\": {\n \"fontSize\": 22,\n \"lineHeight\": 25.3,\n \"fontWeight\": 500,\n \"letterSpacing\": \"-0.22px\"\n },\n \"h4\": {\n \"fontSize\": 18,\n \"lineHeight\": 1.35,\n \"fontWeight\": 600,\n \"letterSpacing\": \"-0.005em\"\n },\n \"h5\": {\n \"fontSize\": 16,\n \"lineHeight\": 1.4,\n \"fontWeight\": 600,\n \"letterSpacing\": \"0em\"\n },\n \"h6\": {\n \"fontSize\": 14,\n \"lineHeight\": 1.45,\n \"fontWeight\": 600,\n \"letterSpacing\": \"0em\"\n },\n \"body\": {\n \"fontSize\": 18,\n \"lineHeight\": 23.4,\n \"fontWeight\": 400,\n \"letterSpacing\": \"-0.18px\"\n },\n \"sm\": {\n \"fontSize\": 14,\n \"lineHeight\": 19.6,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0em\"\n },\n \"xs\": {\n \"fontSize\": 14,\n \"lineHeight\": 19.6,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0.01em\"\n }\n },\n \"borderRadius\": \"8px\"\n },\n {\n \"id\": \"uber\",\n \"name\": \"Uber\",\n \"category\": \"Tech & Lifestyle\",\n \"description\": \"An inspired interpretation of Uber's design language — a transportation-and-delivery super-app brand whose web surface is a black-and-white duet, framed by a custom geometric display sans, accented by a single signature pill shape (radius 9\",\n \"designMdPath\": \"/design-md/uber/DESIGN.md\",\n \"color\": {\n \"primary\": \"#000000\",\n \"primaryHover\": \"#000000\",\n \"primaryLight\": \"#e8f3ff\",\n \"bgPrimary\": \"#ffffff\",\n \"bgSecondary\": \"#efefef\",\n \"textPrimary\": \"#000000\",\n \"textSecondary\": \"#8b95a1\",\n \"textMuted\": \"#b0b8c1\",\n \"borderSubtle\": \"#f2f4f6\",\n \"borderStrong\": \"#e5e8eb\",\n \"statusSuccess\": \"#10b981\",\n \"statusDanger\": \"#f43f5e\",\n \"statusWarning\": \"#f59e0b\"\n },\n \"typography\": {\n \"fontFamily\": \"UberMove, UberMoveText, system-ui, Helvetica Neue, Arial, sans-serif\",\n \"h1\": {\n \"fontSize\": 36,\n \"lineHeight\": 44,\n \"fontWeight\": 700,\n \"letterSpacing\": \"-0.02em\"\n },\n \"h2\": {\n \"fontSize\": 32,\n \"lineHeight\": 40,\n \"fontWeight\": 700,\n \"letterSpacing\": \"-0.015em\"\n },\n \"h3\": {\n \"fontSize\": 24,\n \"lineHeight\": 32,\n \"fontWeight\": 700,\n \"letterSpacing\": \"-0.01em\"\n },\n \"h4\": {\n \"fontSize\": 18,\n \"lineHeight\": 1.35,\n \"fontWeight\": 600,\n \"letterSpacing\": \"-0.005em\"\n },\n \"h5\": {\n \"fontSize\": 16,\n \"lineHeight\": 1.4,\n \"fontWeight\": 600,\n \"letterSpacing\": \"0em\"\n },\n \"h6\": {\n \"fontSize\": 14,\n \"lineHeight\": 1.45,\n \"fontWeight\": 600,\n \"letterSpacing\": \"0em\"\n },\n \"body\": {\n \"fontSize\": 18,\n \"lineHeight\": 24,\n \"fontWeight\": 500,\n \"letterSpacing\": \"-0.005em\"\n },\n \"sm\": {\n \"fontSize\": 14,\n \"lineHeight\": 20,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0em\"\n },\n \"xs\": {\n \"fontSize\": 12,\n \"lineHeight\": 20,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0.01em\"\n }\n },\n \"borderRadius\": \"8px\"\n },\n {\n \"id\": \"vercel\",\n \"name\": \"Vercel\",\n \"category\": \"Developer Tools\",\n \"description\": \"An inspired interpretation of Vercel's design language — a developer-platform brand whose surface is a stark black-and-ink duet on near-white canvas, broken at hero scale by a multi-color mesh gradient (cyan / blue / magenta / amber) that a\",\n \"designMdPath\": \"/design-md/vercel/DESIGN.md\",\n \"color\": {\n \"primary\": \"#171717\",\n \"primaryHover\": \"#171717\",\n \"primaryLight\": \"#e8f3ff\",\n \"bgPrimary\": \"#ffffff\",\n \"bgSecondary\": \"#fafafa\",\n \"textPrimary\": \"#171717\",\n \"textSecondary\": \"#8b95a1\",\n \"textMuted\": \"#b0b8c1\",\n \"borderSubtle\": \"#ebebeb\",\n \"borderStrong\": \"#a1a1a1\",\n \"statusSuccess\": \"#0070f3\",\n \"statusDanger\": \"#f43f5e\",\n \"statusWarning\": \"#f5a623\"\n },\n \"typography\": {\n \"fontFamily\": \"Geist, Inter, system-ui, -apple-system, sans-serif\",\n \"h1\": {\n \"fontSize\": 48,\n \"lineHeight\": 48,\n \"fontWeight\": 600,\n \"letterSpacing\": \"-2.4px\"\n },\n \"h2\": {\n \"fontSize\": 32,\n \"lineHeight\": 40,\n \"fontWeight\": 600,\n \"letterSpacing\": \"-1.28px\"\n },\n \"h3\": {\n \"fontSize\": 24,\n \"lineHeight\": 32,\n \"fontWeight\": 600,\n \"letterSpacing\": \"-0.96px\"\n },\n \"h4\": {\n \"fontSize\": 18,\n \"lineHeight\": 1.35,\n \"fontWeight\": 600,\n \"letterSpacing\": \"-0.005em\"\n },\n \"h5\": {\n \"fontSize\": 16,\n \"lineHeight\": 1.4,\n \"fontWeight\": 600,\n \"letterSpacing\": \"0em\"\n },\n \"h6\": {\n \"fontSize\": 14,\n \"lineHeight\": 1.45,\n \"fontWeight\": 600,\n \"letterSpacing\": \"0em\"\n },\n \"body\": {\n \"fontSize\": 18,\n \"lineHeight\": 28,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0px\"\n },\n \"sm\": {\n \"fontSize\": 14,\n \"lineHeight\": 20,\n \"fontWeight\": 400,\n \"letterSpacing\": \"-0.28px\"\n },\n \"xs\": {\n \"fontSize\": 12,\n \"lineHeight\": 16,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0.01em\"\n }\n },\n \"borderRadius\": \"8px\"\n },\n {\n \"id\": \"vodafone\",\n \"name\": \"Vodafone\",\n \"category\": \"Tech & Lifestyle\",\n \"description\": \"An inspired interpretation of Vodafone's design language — a telecom super-brand whose web surface alternates between editorial photography hero bands with massive uppercase display headlines and clean white content bands, anchored by the c\",\n \"designMdPath\": \"/design-md/vodafone/DESIGN.md\",\n \"color\": {\n \"primary\": \"#e60000\",\n \"primaryHover\": \"#e60000\",\n \"primaryLight\": \"#e8f3ff\",\n \"bgPrimary\": \"#ffffff\",\n \"bgSecondary\": \"#f2f2f2\",\n \"textPrimary\": \"#25282b\",\n \"textSecondary\": \"#8b95a1\",\n \"textMuted\": \"#b0b8c1\",\n \"borderSubtle\": \"#f2f4f6\",\n \"borderStrong\": \"#e5e8eb\",\n \"statusSuccess\": \"#10b981\",\n \"statusDanger\": \"#f43f5e\",\n \"statusWarning\": \"#f59e0b\"\n },\n \"typography\": {\n \"fontFamily\": \"Vodafone, Vodafone Rg, Helvetica Neue, Arial, sans-serif\",\n \"h1\": {\n \"fontSize\": 90,\n \"lineHeight\": 84,\n \"fontWeight\": 800,\n \"letterSpacing\": \"-0.02em\"\n },\n \"h2\": {\n \"fontSize\": 48,\n \"lineHeight\": 52,\n \"fontWeight\": 300,\n \"letterSpacing\": \"-0.015em\"\n },\n \"h3\": {\n \"fontSize\": 40,\n \"lineHeight\": 44,\n \"fontWeight\": 300,\n \"letterSpacing\": \"-0.01em\"\n },\n \"h4\": {\n \"fontSize\": 18,\n \"lineHeight\": 1.35,\n \"fontWeight\": 600,\n \"letterSpacing\": \"-0.005em\"\n },\n \"h5\": {\n \"fontSize\": 16,\n \"lineHeight\": 1.4,\n \"fontWeight\": 600,\n \"letterSpacing\": \"0em\"\n },\n \"h6\": {\n \"fontSize\": 14,\n \"lineHeight\": 1.45,\n \"fontWeight\": 600,\n \"letterSpacing\": \"0em\"\n },\n \"body\": {\n \"fontSize\": 22,\n \"lineHeight\": 24,\n \"fontWeight\": 400,\n \"letterSpacing\": \"-0.005em\"\n },\n \"sm\": {\n \"fontSize\": 16,\n \"lineHeight\": 20,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0em\"\n },\n \"xs\": {\n \"fontSize\": 14,\n \"lineHeight\": 16,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0.01em\"\n }\n },\n \"borderRadius\": \"6px\"\n },\n {\n \"id\": \"voltagent\",\n \"name\": \"Voltagent\",\n \"category\": \"AI & LLM\",\n \"description\": \"An inspired interpretation of Voltagent's design language — a developer-focused AI agent engineering platform whose surface is an unrelenting near-black canvas broken only by a single electric-green brand accent, code-editor mockups inside \",\n \"designMdPath\": \"/design-md/voltagent/DESIGN.md\",\n \"color\": {\n \"primary\": \"#00d992\",\n \"primaryHover\": \"#10b981\",\n \"primaryLight\": \"#2fd6a1\",\n \"bgPrimary\": \"#101010\",\n \"bgSecondary\": \"#1a1a1a\",\n \"textPrimary\": \"#f2f2f2\",\n \"textSecondary\": \"#9aa1b1\",\n \"textMuted\": \"#5c6470\",\n \"borderSubtle\": \"#3d3a39\",\n \"borderStrong\": \"#3d414a\",\n \"statusSuccess\": \"#10b981\",\n \"statusDanger\": \"#f43f5e\",\n \"statusWarning\": \"#f59e0b\"\n },\n \"typography\": {\n \"fontFamily\": \"Inter, system-ui, -apple-system, Segoe UI, Roboto, sans-serif\",\n \"h1\": {\n \"fontSize\": 60,\n \"lineHeight\": 60,\n \"fontWeight\": 400,\n \"letterSpacing\": \"-0.65px\"\n },\n \"h2\": {\n \"fontSize\": 36,\n \"lineHeight\": 40,\n \"fontWeight\": 400,\n \"letterSpacing\": \"-0.9px\"\n },\n \"h3\": {\n \"fontSize\": 24,\n \"lineHeight\": 32,\n \"fontWeight\": 700,\n \"letterSpacing\": \"-0.6px\"\n },\n \"h4\": {\n \"fontSize\": 18,\n \"lineHeight\": 1.35,\n \"fontWeight\": 600,\n \"letterSpacing\": \"-0.005em\"\n },\n \"h5\": {\n \"fontSize\": 16,\n \"lineHeight\": 1.4,\n \"fontWeight\": 600,\n \"letterSpacing\": \"0em\"\n },\n \"h6\": {\n \"fontSize\": 14,\n \"lineHeight\": 1.45,\n \"fontWeight\": 600,\n \"letterSpacing\": \"0em\"\n },\n \"body\": {\n \"fontSize\": 18,\n \"lineHeight\": 28,\n \"fontWeight\": 400,\n \"letterSpacing\": \"-0.005em\"\n },\n \"sm\": {\n \"fontSize\": 14,\n \"lineHeight\": 20,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0em\"\n },\n \"xs\": {\n \"fontSize\": 12,\n \"lineHeight\": 16,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0.01em\"\n }\n },\n \"borderRadius\": \"8px\"\n },\n {\n \"id\": \"warp\",\n \"name\": \"Warp\",\n \"category\": \"Developer Tools\",\n \"description\": \"An inspired interpretation of Warp's design language — an agentic terminal-and-development-environment brand whose surface is a warm near-charcoal canvas (a tint warmer than pure black), broken only by clean Inter typography, the occasional\",\n \"designMdPath\": \"/design-md/warp/DESIGN.md\",\n \"color\": {\n \"primary\": \"#f7f5f0\",\n \"primaryHover\": \"#f7f5f0\",\n \"primaryLight\": \"#f7f5f026\",\n \"bgPrimary\": \"#2b2622\",\n \"bgSecondary\": \"#383330\",\n \"textPrimary\": \"#f7f5f0\",\n \"textSecondary\": \"#9aa1b1\",\n \"textMuted\": \"#5c6470\",\n \"borderSubtle\": \"#3f3a36\",\n \"borderStrong\": \"#3d414a\",\n \"statusSuccess\": \"#10b981\",\n \"statusDanger\": \"#f43f5e\",\n \"statusWarning\": \"#f59e0b\"\n },\n \"typography\": {\n \"fontFamily\": \"Inter, system-ui, -apple-system, Segoe UI, Roboto, sans-serif\",\n \"h1\": {\n \"fontSize\": 64,\n \"lineHeight\": 70.4,\n \"fontWeight\": 400,\n \"letterSpacing\": \"-1.6px\"\n },\n \"h2\": {\n \"fontSize\": 48,\n \"lineHeight\": 52.8,\n \"fontWeight\": 400,\n \"letterSpacing\": \"-1.2px\"\n },\n \"h3\": {\n \"fontSize\": 32,\n \"lineHeight\": 40,\n \"fontWeight\": 500,\n \"letterSpacing\": \"-0.8px\"\n },\n \"h4\": {\n \"fontSize\": 18,\n \"lineHeight\": 1.35,\n \"fontWeight\": 600,\n \"letterSpacing\": \"-0.005em\"\n },\n \"h5\": {\n \"fontSize\": 16,\n \"lineHeight\": 1.4,\n \"fontWeight\": 600,\n \"letterSpacing\": \"0em\"\n },\n \"h6\": {\n \"fontSize\": 14,\n \"lineHeight\": 1.45,\n \"fontWeight\": 600,\n \"letterSpacing\": \"0em\"\n },\n \"body\": {\n \"fontSize\": 18,\n \"lineHeight\": 28,\n \"fontWeight\": 400,\n \"letterSpacing\": \"-0.005em\"\n },\n \"sm\": {\n \"fontSize\": 14,\n \"lineHeight\": 20,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0em\"\n },\n \"xs\": {\n \"fontSize\": 12,\n \"lineHeight\": 16,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0.01em\"\n }\n },\n \"borderRadius\": \"4px\"\n },\n {\n \"id\": \"webflow\",\n \"name\": \"Webflow\",\n \"category\": \"Developer Tools\",\n \"description\": \"An inspired interpretation of Webflow's design language — a visual web development platform whose surface contrasts a deep near-black `#080808` primary against a generous white canvas, broken by a five-stop chromatic accent system (purple /\",\n \"designMdPath\": \"/design-md/webflow/DESIGN.md\",\n \"color\": {\n \"primary\": \"#080808\",\n \"primaryHover\": \"#080808\",\n \"primaryLight\": \"#e8f3ff\",\n \"bgPrimary\": \"#ffffff\",\n \"bgSecondary\": \"#f8f9fa\",\n \"textPrimary\": \"#080808\",\n \"textSecondary\": \"#8b95a1\",\n \"textMuted\": \"#b0b8c1\",\n \"borderSubtle\": \"#d8d8d8\",\n \"borderStrong\": \"#e5e8eb\",\n \"statusSuccess\": \"#10b981\",\n \"statusDanger\": \"#f43f5e\",\n \"statusWarning\": \"#f59e0b\"\n },\n \"typography\": {\n \"fontFamily\": \"WF Visual Sans Variable, Inter, system-ui, sans-serif\",\n \"h1\": {\n \"fontSize\": 56,\n \"lineHeight\": 58.24,\n \"fontWeight\": 600,\n \"letterSpacing\": \"-0.02em\"\n },\n \"h2\": {\n \"fontSize\": 448,\n \"lineHeight\": 46.6,\n \"fontWeight\": 600,\n \"letterSpacing\": \"-0.015em\"\n },\n \"h3\": {\n \"fontSize\": 32,\n \"lineHeight\": 41.6,\n \"fontWeight\": 500,\n \"letterSpacing\": \"-0.01em\"\n },\n \"h4\": {\n \"fontSize\": 18,\n \"lineHeight\": 1.35,\n \"fontWeight\": 600,\n \"letterSpacing\": \"-0.005em\"\n },\n \"h5\": {\n \"fontSize\": 16,\n \"lineHeight\": 1.4,\n \"fontWeight\": 600,\n \"letterSpacing\": \"0em\"\n },\n \"h6\": {\n \"fontSize\": 14,\n \"lineHeight\": 1.45,\n \"fontWeight\": 600,\n \"letterSpacing\": \"0em\"\n },\n \"body\": {\n \"fontSize\": 288,\n \"lineHeight\": 46.08,\n \"fontWeight\": 400,\n \"letterSpacing\": \"-0.288px\"\n },\n \"sm\": {\n \"fontSize\": 14,\n \"lineHeight\": 22.4,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0em\"\n },\n \"xs\": {\n \"fontSize\": 128,\n \"lineHeight\": 15.36,\n \"fontWeight\": 550,\n \"letterSpacing\": \"0.01em\"\n }\n },\n \"borderRadius\": \"8px\"\n },\n {\n \"id\": \"wired\",\n \"name\": \"Wired\",\n \"category\": \"Tech & Lifestyle\",\n \"description\": \"An inspired interpretation of Wired's design language — a flagship technology-magazine brand whose surface is a strict editorial duet of stark black wordmark on white canvas, anchored by a tall narrow custom display serif for hero headlines\",\n \"designMdPath\": \"/design-md/wired/DESIGN.md\",\n \"color\": {\n \"primary\": \"#000000\",\n \"primaryHover\": \"#000000\",\n \"primaryLight\": \"#e8f3ff\",\n \"bgPrimary\": \"#ffffff\",\n \"bgSecondary\": \"#f5f5f5\",\n \"textPrimary\": \"#000000\",\n \"textSecondary\": \"#8b95a1\",\n \"textMuted\": \"#b0b8c1\",\n \"borderSubtle\": \"#e0e0e0\",\n \"borderStrong\": \"#e5e8eb\",\n \"statusSuccess\": \"#10b981\",\n \"statusDanger\": \"#f43f5e\",\n \"statusWarning\": \"#f59e0b\"\n },\n \"typography\": {\n \"fontFamily\": \"WiredDisplay, \\\"Times New Roman\\\", Georgia, serif\",\n \"h1\": {\n \"fontSize\": 48,\n \"lineHeight\": 50.4,\n \"fontWeight\": 400,\n \"letterSpacing\": \"-0.4px\"\n },\n \"h2\": {\n \"fontSize\": 48,\n \"lineHeight\": 50.4,\n \"fontWeight\": 400,\n \"letterSpacing\": \"-0.4px\"\n },\n \"h3\": {\n \"fontSize\": 32,\n \"lineHeight\": 35.2,\n \"fontWeight\": 400,\n \"letterSpacing\": \"-0.3px\"\n },\n \"h4\": {\n \"fontSize\": 18,\n \"lineHeight\": 1.35,\n \"fontWeight\": 600,\n \"letterSpacing\": \"-0.005em\"\n },\n \"h5\": {\n \"fontSize\": 16,\n \"lineHeight\": 1.4,\n \"fontWeight\": 600,\n \"letterSpacing\": \"0em\"\n },\n \"h6\": {\n \"fontSize\": 14,\n \"lineHeight\": 1.45,\n \"fontWeight\": 600,\n \"letterSpacing\": \"0em\"\n },\n \"body\": {\n \"fontSize\": 15,\n \"lineHeight\": 1.55,\n \"fontWeight\": 400,\n \"letterSpacing\": \"-0.005em\"\n },\n \"sm\": {\n \"fontSize\": 14,\n \"lineHeight\": 18,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0.4px\"\n },\n \"xs\": {\n \"fontSize\": 12,\n \"lineHeight\": 16,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0.01em\"\n }\n },\n \"borderRadius\": \"12px\"\n },\n {\n \"id\": \"wise\",\n \"name\": \"Wise\",\n \"category\": \"Fintech & Web3\",\n \"description\": \"An inspired interpretation of Wise's design language — a global money-transfer brand whose surface combines an unusually heavy near-black display sans (weight 900 at 64–126 px) with a vivid lime-green brand accent, sage-tinted surface neutr\",\n \"designMdPath\": \"/design-md/wise/DESIGN.md\",\n \"color\": {\n \"primary\": \"#9fe870\",\n \"primaryHover\": \"#9fe870\",\n \"primaryLight\": \"#e8f3ff\",\n \"bgPrimary\": \"#ffffff\",\n \"bgSecondary\": \"#e8ebe6\",\n \"textPrimary\": \"#0e0f0c\",\n \"textSecondary\": \"#8b95a1\",\n \"textMuted\": \"#b0b8c1\",\n \"borderSubtle\": \"#f2f4f6\",\n \"borderStrong\": \"#e5e8eb\",\n \"statusSuccess\": \"#10b981\",\n \"statusDanger\": \"#f43f5e\",\n \"statusWarning\": \"#ffd11a\"\n },\n \"typography\": {\n \"fontFamily\": \"Wise Sans, Inter, system-ui, sans-serif\",\n \"h1\": {\n \"fontSize\": 64,\n \"lineHeight\": 54.4,\n \"fontWeight\": 900,\n \"letterSpacing\": \"-0.02em\"\n },\n \"h2\": {\n \"fontSize\": 47,\n \"lineHeight\": 70.5,\n \"fontWeight\": 400,\n \"letterSpacing\": \"-0.108px\"\n },\n \"h3\": {\n \"fontSize\": 40,\n \"lineHeight\": 34,\n \"fontWeight\": 900,\n \"letterSpacing\": \"-0.01em\"\n },\n \"h4\": {\n \"fontSize\": 18,\n \"lineHeight\": 1.35,\n \"fontWeight\": 600,\n \"letterSpacing\": \"-0.005em\"\n },\n \"h5\": {\n \"fontSize\": 16,\n \"lineHeight\": 1.4,\n \"fontWeight\": 600,\n \"letterSpacing\": \"0em\"\n },\n \"h6\": {\n \"fontSize\": 14,\n \"lineHeight\": 1.45,\n \"fontWeight\": 600,\n \"letterSpacing\": \"0em\"\n },\n \"body\": {\n \"fontSize\": 20,\n \"lineHeight\": 30,\n \"fontWeight\": 400,\n \"letterSpacing\": \"-0.005em\"\n },\n \"sm\": {\n \"fontSize\": 14,\n \"lineHeight\": 20,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0em\"\n },\n \"xs\": {\n \"fontSize\": 12,\n \"lineHeight\": 16,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0.01em\"\n }\n },\n \"borderRadius\": \"12px\"\n },\n {\n \"id\": \"x.ai\",\n \"name\": \"xAI\",\n \"category\": \"AI & LLM\",\n \"description\": \"An inspired interpretation of xAI's design language — Elon Musk's frontier-AI company whose web surface is a strict near-black canvas broken only by white pill outlines, occasional warm sunset / dusk gradient accents, a custom geometric san\",\n \"designMdPath\": \"/design-md/x.ai/DESIGN.md\",\n \"color\": {\n \"primary\": \"#ffffff\",\n \"primaryHover\": \"#ffffff\",\n \"primaryLight\": \"#ffffff26\",\n \"bgPrimary\": \"#0a0a0a\",\n \"bgSecondary\": \"#1a1c20\",\n \"textPrimary\": \"#ffffff\",\n \"textSecondary\": \"#9aa1b1\",\n \"textMuted\": \"#5c6470\",\n \"borderSubtle\": \"#212327\",\n \"borderStrong\": \"#3d414a\",\n \"statusSuccess\": \"#10b981\",\n \"statusDanger\": \"#f43f5e\",\n \"statusWarning\": \"#f59e0b\"\n },\n \"typography\": {\n \"fontFamily\": \"universalSans, Inter, system-ui, -apple-system, sans-serif\",\n \"h1\": {\n \"fontSize\": 96,\n \"lineHeight\": 96,\n \"fontWeight\": 400,\n \"letterSpacing\": \"-2.4px\"\n },\n \"h2\": {\n \"fontSize\": 72,\n \"lineHeight\": 72,\n \"fontWeight\": 400,\n \"letterSpacing\": \"-1.8px\"\n },\n \"h3\": {\n \"fontSize\": 48,\n \"lineHeight\": 48,\n \"fontWeight\": 400,\n \"letterSpacing\": \"-1.2px\"\n },\n \"h4\": {\n \"fontSize\": 18,\n \"lineHeight\": 1.35,\n \"fontWeight\": 600,\n \"letterSpacing\": \"-0.005em\"\n },\n \"h5\": {\n \"fontSize\": 16,\n \"lineHeight\": 1.4,\n \"fontWeight\": 600,\n \"letterSpacing\": \"0em\"\n },\n \"h6\": {\n \"fontSize\": 14,\n \"lineHeight\": 1.45,\n \"fontWeight\": 600,\n \"letterSpacing\": \"0em\"\n },\n \"body\": {\n \"fontSize\": 18,\n \"lineHeight\": 28,\n \"fontWeight\": 400,\n \"letterSpacing\": \"-0.005em\"\n },\n \"sm\": {\n \"fontSize\": 14,\n \"lineHeight\": 20,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0em\"\n },\n \"xs\": {\n \"fontSize\": 11,\n \"lineHeight\": 1.4,\n \"fontWeight\": 500,\n \"letterSpacing\": \"0.01em\"\n }\n },\n \"borderRadius\": \"8px\"\n },\n {\n \"id\": \"zapier\",\n \"name\": \"Zapier\",\n \"category\": \"Tech & Lifestyle\",\n \"description\": \"An inspired interpretation of Zapier's design language — a workflow-automation platform whose surface combines warm-cream neutrals (`#fffefb` canvas, `#f8f4f0` soft cream) with deep coffee ink (`#201515`) and a single saturated orange CTA a\",\n \"designMdPath\": \"/design-md/zapier/DESIGN.md\",\n \"color\": {\n \"primary\": \"#ff4f00\",\n \"primaryHover\": \"#ff4f00\",\n \"primaryLight\": \"#e8f3ff\",\n \"bgPrimary\": \"#fffefb\",\n \"bgSecondary\": \"#f8f4f0\",\n \"textPrimary\": \"#201515\",\n \"textSecondary\": \"#8b95a1\",\n \"textMuted\": \"#b0b8c1\",\n \"borderSubtle\": \"#f2f4f6\",\n \"borderStrong\": \"#e5e8eb\",\n \"statusSuccess\": \"#10b981\",\n \"statusDanger\": \"#f43f5e\",\n \"statusWarning\": \"#f59e0b\"\n },\n \"typography\": {\n \"fontFamily\": \"Degular Display, Inter, system-ui, -apple-system, sans-serif\",\n \"h1\": {\n \"fontSize\": 56,\n \"lineHeight\": 56,\n \"fontWeight\": 500,\n \"letterSpacing\": \"-0.02em\"\n },\n \"h2\": {\n \"fontSize\": 48,\n \"lineHeight\": 48,\n \"fontWeight\": 500,\n \"letterSpacing\": \"-0.015em\"\n },\n \"h3\": {\n \"fontSize\": 32,\n \"lineHeight\": 36,\n \"fontWeight\": 500,\n \"letterSpacing\": \"1px\"\n },\n \"h4\": {\n \"fontSize\": 18,\n \"lineHeight\": 1.35,\n \"fontWeight\": 600,\n \"letterSpacing\": \"-0.005em\"\n },\n \"h5\": {\n \"fontSize\": 16,\n \"lineHeight\": 1.4,\n \"fontWeight\": 600,\n \"letterSpacing\": \"0em\"\n },\n \"h6\": {\n \"fontSize\": 14,\n \"lineHeight\": 1.45,\n \"fontWeight\": 600,\n \"letterSpacing\": \"0em\"\n },\n \"body\": {\n \"fontSize\": 20,\n \"lineHeight\": 30,\n \"fontWeight\": 400,\n \"letterSpacing\": \"-0.2px\"\n },\n \"sm\": {\n \"fontSize\": 16,\n \"lineHeight\": 24,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0em\"\n },\n \"xs\": {\n \"fontSize\": 14,\n \"lineHeight\": 21,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0.01em\"\n }\n },\n \"borderRadius\": \"12px\"\n }\n];\n\nexport const AWESOME_CATEGORIES = [\n 'All',\n 'AI & LLM',\n 'Developer Tools',\n 'Fintech & Web3',\n 'Tech & Lifestyle',\n 'Automotive & Luxury',\n] as const;\n","export interface TypographyLevelConfig {\n fontSize: number; // in px\n lineHeight: number; // multiplier e.g. 1.25\n fontWeight: number; // 400, 500, 600, 700, 800, 900\n letterSpacing: string; // e.g. '-0.02em'\n}\n\nexport interface TypographyConfig {\n fontFamily: string;\n h1: TypographyLevelConfig;\n h2: TypographyLevelConfig;\n h3: TypographyLevelConfig;\n h4: TypographyLevelConfig;\n h5: TypographyLevelConfig;\n h6: TypographyLevelConfig;\n body: TypographyLevelConfig;\n sm: TypographyLevelConfig;\n xs: TypographyLevelConfig;\n}\n\nexport interface ColorConfig {\n primary: string;\n primaryHover: string;\n primaryLight: string;\n bgPrimary: string;\n bgSecondary: string;\n textPrimary: string;\n textSecondary: string;\n textMuted: string;\n borderSubtle: string;\n borderStrong: string;\n statusSuccess: string;\n statusDanger: string;\n statusWarning: string;\n}\n\nexport interface ThemeConfig {\n color: ColorConfig;\n typography: TypographyConfig;\n borderRadius: string;\n}\n\nexport interface ColorPreset {\n id: string;\n name: string;\n description: string;\n colors: ColorConfig;\n borderRadius: string;\n}\n\nexport const DEFAULT_THEME_CONFIG: ThemeConfig = {\n color: {\n primary: '#3182f6',\n primaryHover: '#1b64da',\n primaryLight: '#e8f3ff',\n bgPrimary: '#ffffff',\n bgSecondary: '#f8f9fa',\n textPrimary: '#191f28',\n textSecondary: '#8b95a1',\n textMuted: '#b0b8c1',\n borderSubtle: '#f2f4f6',\n borderStrong: '#e5e8eb',\n statusSuccess: '#10b981',\n statusDanger: '#f43f5e',\n statusWarning: '#f59e0b',\n },\n typography: {\n fontFamily: '\"Pretendard Variable\", Pretendard, -apple-system, BlinkMacSystemFont, system-ui, Roboto, sans-serif',\n h1: {\n fontSize: 36,\n lineHeight: 1.25,\n fontWeight: 800,\n letterSpacing: '-0.025em',\n },\n h2: {\n fontSize: 28,\n lineHeight: 1.3,\n fontWeight: 700,\n letterSpacing: '-0.02em',\n },\n h3: {\n fontSize: 22,\n lineHeight: 1.35,\n fontWeight: 700,\n letterSpacing: '-0.015em',\n },\n h4: {\n fontSize: 18,\n lineHeight: 1.4,\n fontWeight: 600,\n letterSpacing: '-0.01em',\n },\n h5: {\n fontSize: 16,\n lineHeight: 1.45,\n fontWeight: 600,\n letterSpacing: '0em',\n },\n h6: {\n fontSize: 14,\n lineHeight: 1.5,\n fontWeight: 600,\n letterSpacing: '0em',\n },\n body: {\n fontSize: 15,\n lineHeight: 1.6,\n fontWeight: 400,\n letterSpacing: '-0.005em',\n },\n sm: {\n fontSize: 13,\n lineHeight: 1.5,\n fontWeight: 400,\n letterSpacing: '0em',\n },\n xs: {\n fontSize: 11,\n lineHeight: 1.4,\n fontWeight: 500,\n letterSpacing: '0.01em',\n },\n },\n borderRadius: '14px',\n};\n\nexport const COLOR_PRESETS: ColorPreset[] = [\n {\n id: 'toss',\n name: '토스 (Toss Vivid Blue)',\n description: '청량한 비비드 블루와 볼드 라운딩',\n borderRadius: '16px',\n colors: {\n primary: '#3182f6',\n primaryHover: '#1b64da',\n primaryLight: '#e8f3ff',\n bgPrimary: '#ffffff',\n bgSecondary: '#f8f9fa',\n textPrimary: '#191f28',\n textSecondary: '#8b95a1',\n textMuted: '#b0b8c1',\n borderSubtle: '#f2f4f6',\n borderStrong: '#e5e8eb',\n statusSuccess: '#10b981',\n statusDanger: '#f43f5e',\n statusWarning: '#f59e0b',\n },\n },\n {\n id: 'daangn',\n name: '당근 (Daangn Warm)',\n description: '따뜻한 오렌지와 친근한 라운딩 감성',\n borderRadius: '12px',\n colors: {\n primary: '#ff6f0f',\n primaryHover: '#e05900',\n primaryLight: '#fff2e8',\n bgPrimary: '#ffffff',\n bgSecondary: '#fbf7f2',\n textPrimary: '#212124',\n textSecondary: '#868b94',\n textMuted: '#b2b5ba',\n borderSubtle: '#f5f0eb',\n borderStrong: '#e4ddd3',\n statusSuccess: '#10b981',\n statusDanger: '#ff4b4b',\n statusWarning: '#ff9800',\n },\n },\n {\n id: 'violet-tech',\n name: '바이올렛 (Modern Violet)',\n description: 'B2B 테크 및 개발자 지향의 감각적인 보라색',\n borderRadius: '10px',\n colors: {\n primary: '#7c3aed',\n primaryHover: '#6d28d9',\n primaryLight: '#f3e8ff',\n bgPrimary: '#ffffff',\n bgSecondary: '#faf7ff',\n textPrimary: '#18181b',\n textSecondary: '#71717a',\n textMuted: '#a1a1aa',\n borderSubtle: '#f4f4f5',\n borderStrong: '#e4e4e7',\n statusSuccess: '#059669',\n statusDanger: '#e11d48',\n statusWarning: '#d97706',\n },\n },\n {\n id: 'emerald',\n name: '에메랄드 (Forest Eco)',\n description: '편안한 자연 감성의 딥 그린 핀테크/웰니스',\n borderRadius: '14px',\n colors: {\n primary: '#059669',\n primaryHover: '#047857',\n primaryLight: '#ecfdf5',\n bgPrimary: '#ffffff',\n bgSecondary: '#f0fdf4',\n textPrimary: '#064e3b',\n textSecondary: '#6ee7b7',\n textMuted: '#94a3b8',\n borderSubtle: '#e6f7ec',\n borderStrong: '#d1fae5',\n statusSuccess: '#10b981',\n statusDanger: '#f43f5e',\n statusWarning: '#f59e0b',\n },\n },\n {\n id: 'dark-cyber',\n name: '다크 사이버 (Dark Cyber)',\n description: '세련된 네온 시안과 매트 다크 서피스',\n borderRadius: '12px',\n colors: {\n primary: '#06b6d4',\n primaryHover: '#0891b2',\n primaryLight: '#164e63',\n bgPrimary: '#0f172a',\n bgSecondary: '#1e293b',\n textPrimary: '#f8fafc',\n textSecondary: '#94a3b8',\n textMuted: '#64748b',\n borderSubtle: '#334155',\n borderStrong: '#475569',\n statusSuccess: '#34d399',\n statusDanger: '#fb7185',\n statusWarning: '#fbbf24',\n },\n },\n {\n id: 'sunset-rose',\n name: '선셋 로즈 (Sunset Rose)',\n description: '우아하고 로맨틱한 핑크 로즈 테마',\n borderRadius: '16px',\n colors: {\n primary: '#e11d48',\n primaryHover: '#be123c',\n primaryLight: '#ffe4e6',\n bgPrimary: '#ffffff',\n bgSecondary: '#fff1f2',\n textPrimary: '#1e1b18',\n textSecondary: '#9f1239',\n textMuted: '#fda4af',\n borderSubtle: '#fecdd3',\n borderStrong: '#f43f5e',\n statusSuccess: '#10b981',\n statusDanger: '#e11d48',\n statusWarning: '#f59e0b',\n },\n },\n];\n\nexport const FONT_FAMILY_PRESETS = [\n {\n name: 'Pretendard (기본 권장)',\n value: '\"Pretendard Variable\", Pretendard, -apple-system, BlinkMacSystemFont, system-ui, Roboto, sans-serif',\n },\n {\n name: 'Inter (글로벌 테크)',\n value: '\"Inter\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, sans-serif',\n },\n {\n name: 'System UI (시스템 네이티브)',\n value: '-apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif',\n },\n {\n name: 'Noto Sans KR (구글 표준 한국어)',\n value: '\"Noto Sans KR\", sans-serif',\n },\n {\n name: 'Monospace (코딩 / 모노)',\n value: '\"JetBrains Mono\", \"Fira Code\", monospace',\n },\n];\n","import { ThemeConfig } from '@/lib/data/themeEditorDefaults';\n\nconst STYLE_ELEMENT_ID = 'atom-theme-live-engine-style';\n\nconst FONT_IMPORT_MAP: Record<string, string> = {\n Inter: '@import url(\"https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800;900&display=swap\");',\n 'Noto Sans KR': '@import url(\"https://fonts.googleapis.com/css2?family=Noto+Sans+KR:wght@400;500;700;900&display=swap\");',\n 'JetBrains Mono': '@import url(\"https://fonts.googleapis.com/css2?family=JetBrains+Mono:wght@400;500;700&display=swap\");',\n Outfit: '@import url(\"https://fonts.googleapis.com/css2?family=Outfit:wght@400;500;600;700;800&display=swap\");',\n 'Plus Jakarta Sans': '@import url(\"https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:wght@400;500;600;700;800&display=swap\");',\n};\n\n/**\n * ThemeConfig를 받아 전역에 적용될 동적 CSS 문자열을 생성합니다.\n */\nexport function generateThemeCSS(theme: ThemeConfig): string {\n const { color, typography, borderRadius } = theme;\n\n // Detect font import if Google font selected\n let fontImportCSS = '';\n for (const [fontKey, importRule] of Object.entries(FONT_IMPORT_MAP)) {\n if (typography.fontFamily.includes(fontKey)) {\n fontImportCSS = `${importRule}\\n`;\n break;\n }\n }\n\n return `\n${fontImportCSS}/* [AtomDesignToken] Live Injected Theme Variables */\n:root, .dark, [data-theme=\"dark\"], [data-theme=\"light\"] {\n /* Font Family */\n --font-sans: ${typography.fontFamily};\n\n /* Semantic Colors */\n --accent-primary: ${color.primary};\n --accent-hover: ${color.primaryHover};\n --accent-light: ${color.primaryLight};\n --bg-primary: ${color.bgPrimary};\n --bg-secondary: ${color.bgSecondary};\n --text-primary: ${color.textPrimary};\n --text-secondary: ${color.textSecondary};\n --text-muted: ${color.textMuted};\n --border-subtle: ${color.borderSubtle};\n --border-strong: ${color.borderStrong};\n\n /* Atom System Specific Variables */\n --atom-color-primary: ${color.primary};\n --atom-color-primary-hover: ${color.primaryHover};\n --atom-color-primary-subtle: ${color.primaryLight};\n --atom-status-success: ${color.statusSuccess};\n --atom-status-danger: ${color.statusDanger};\n --atom-status-warning: ${color.statusWarning};\n --atom-radius: ${borderRadius};\n\n /* Typography Variables */\n --atom-font-h1-size: ${typography.h1.fontSize}px;\n --atom-font-h1-lh: ${typography.h1.lineHeight};\n --atom-font-h1-weight: ${typography.h1.fontWeight};\n --atom-font-h1-spacing: ${typography.h1.letterSpacing};\n\n --atom-font-h2-size: ${typography.h2.fontSize}px;\n --atom-font-h2-lh: ${typography.h2.lineHeight};\n --atom-font-h2-weight: ${typography.h2.fontWeight};\n --atom-font-h2-spacing: ${typography.h2.letterSpacing};\n\n --atom-font-h3-size: ${typography.h3.fontSize}px;\n --atom-font-h3-lh: ${typography.h3.lineHeight};\n --atom-font-h3-weight: ${typography.h3.fontWeight};\n --atom-font-h3-spacing: ${typography.h3.letterSpacing};\n\n --atom-font-h4-size: ${typography.h4.fontSize}px;\n --atom-font-h4-lh: ${typography.h4.lineHeight};\n --atom-font-h4-weight: ${typography.h4.fontWeight};\n --atom-font-h4-spacing: ${typography.h4.letterSpacing};\n\n --atom-font-h5-size: ${typography.h5.fontSize}px;\n --atom-font-h5-lh: ${typography.h5.lineHeight};\n --atom-font-h5-weight: ${typography.h5.fontWeight};\n --atom-font-h5-spacing: ${typography.h5.letterSpacing};\n\n --atom-font-h6-size: ${typography.h6.fontSize}px;\n --atom-font-h6-lh: ${typography.h6.lineHeight};\n --atom-font-h6-weight: ${typography.h6.fontWeight};\n --atom-font-h6-spacing: ${typography.h6.letterSpacing};\n\n --atom-font-body-size: ${typography.body.fontSize}px;\n --atom-font-body-lh: ${typography.body.lineHeight};\n --atom-font-body-weight: ${typography.body.fontWeight};\n --atom-font-body-spacing: ${typography.body.letterSpacing};\n\n --atom-font-sm-size: ${typography.sm.fontSize}px;\n --atom-font-sm-lh: ${typography.sm.lineHeight};\n --atom-font-sm-weight: ${typography.sm.fontWeight};\n --atom-font-sm-spacing: ${typography.sm.letterSpacing};\n\n --atom-font-xs-size: ${typography.xs.fontSize}px;\n --atom-font-xs-lh: ${typography.xs.lineHeight};\n --atom-font-xs-weight: ${typography.xs.fontWeight};\n --atom-font-xs-spacing: ${typography.xs.letterSpacing};\n}\n\n/* Typography Tag Overrides (Applied globally with high priority) */\nh1, .atom-h1 {\n font-size: ${typography.h1.fontSize}px !important;\n line-height: ${typography.h1.lineHeight} !important;\n font-weight: ${typography.h1.fontWeight} !important;\n letter-spacing: ${typography.h1.letterSpacing} !important;\n}\n\nh2, .atom-h2 {\n font-size: ${typography.h2.fontSize}px !important;\n line-height: ${typography.h2.lineHeight} !important;\n font-weight: ${typography.h2.fontWeight} !important;\n letter-spacing: ${typography.h2.letterSpacing} !important;\n}\n\nh3, .atom-h3 {\n font-size: ${typography.h3.fontSize}px !important;\n line-height: ${typography.h3.lineHeight} !important;\n font-weight: ${typography.h3.fontWeight} !important;\n letter-spacing: ${typography.h3.letterSpacing} !important;\n}\n\nh4, .atom-h4 {\n font-size: ${typography.h4.fontSize}px !important;\n line-height: ${typography.h4.lineHeight} !important;\n font-weight: ${typography.h4.fontWeight} !important;\n letter-spacing: ${typography.h4.letterSpacing} !important;\n}\n\nh5, .atom-h5 {\n font-size: ${typography.h5.fontSize}px !important;\n line-height: ${typography.h5.lineHeight} !important;\n font-weight: ${typography.h5.fontWeight} !important;\n letter-spacing: ${typography.h5.letterSpacing} !important;\n}\n\nh6, .atom-h6 {\n font-size: ${typography.h6.fontSize}px !important;\n line-height: ${typography.h6.lineHeight} !important;\n font-weight: ${typography.h6.fontWeight} !important;\n letter-spacing: ${typography.h6.letterSpacing} !important;\n}\n\n/* Body & Paragraph styles */\nhtml, body, button, input, select, textarea, h1, h2, h3, h4, h5, h6 {\n font-family: ${typography.fontFamily} !important;\n}\n\nbody {\n background-color: ${color.bgPrimary};\n color: ${color.textPrimary};\n}\n\n.atom-body, p:not([class*=\"text-xs\"]):not([class*=\"text-sm\"]) {\n font-size: ${typography.body.fontSize}px;\n line-height: ${typography.body.lineHeight};\n font-weight: ${typography.body.fontWeight};\n letter-spacing: ${typography.body.letterSpacing};\n}\n\n/* Small & Micro texts */\n.text-sm, small, .atom-sm {\n font-size: ${typography.sm.fontSize}px;\n line-height: ${typography.sm.lineHeight};\n font-weight: ${typography.sm.fontWeight};\n letter-spacing: ${typography.sm.letterSpacing};\n}\n\n.text-xs, .atom-xs {\n font-size: ${typography.xs.fontSize}px;\n line-height: ${typography.xs.lineHeight};\n font-weight: ${typography.xs.fontWeight};\n letter-spacing: ${typography.xs.letterSpacing};\n}\n\n/* Card & Surface Synchronizations */\nhtml.dark {\n --color-neutral-900: ${color.bgSecondary};\n --color-neutral-850: ${color.bgSecondary};\n}\n\nhtml.dark .bg-white:not([data-keep-white]):not([role=\"switch\"]):not([aria-hidden=\"true\"]) {\n background-color: ${color.bgSecondary} !important;\n}\n\nhtml.dark .border-neutral-200,\nhtml.dark .border-neutral-200\\\\/80 {\n border-color: ${color.borderSubtle} !important;\n}\n\n/* Ensure tab active pills and chips using dark:bg-white take brand accent */\nhtml.dark [class*=\"dark:bg-white\"]:not([data-keep-white]) {\n background-color: ${color.primary} !important;\n color: #ffffff !important;\n}\n`.trim();\n}\n\n/**\n * Hex 색상의 명도(Luminance)를 계산하여 다크 테마 여부를 판별합니다.\n */\nexport function isDarkColor(hexColor: string): boolean {\n if (!hexColor || typeof hexColor !== 'string') return false;\n const clean = hexColor.replace('#', '').trim();\n if (clean.length === 3) {\n const r = parseInt(clean[0] + clean[0], 16);\n const g = parseInt(clean[1] + clean[1], 16);\n const b = parseInt(clean[2] + clean[2], 16);\n return (r * 299 + g * 587 + b * 114) / 1000 < 128;\n }\n if (clean.length < 6) return false;\n const r = parseInt(clean.substring(0, 2), 16);\n const g = parseInt(clean.substring(2, 4), 16);\n const b = parseInt(clean.substring(4, 6), 16);\n if (isNaN(r) || isNaN(g) || isNaN(b)) return false;\n return (r * 299 + g * 587 + b * 114) / 1000 < 128;\n}\n\n/**\n * DOM에 실시간 스타일 태그를 주입하거나 갱신합니다.\n * 다크/라이트 테마에 따라 html 태그의 dark 클래스 및 data-theme 속성을 자동 동기화합니다.\n */\nexport function applyThemeToDOM(theme: ThemeConfig): void {\n if (typeof document === 'undefined') return;\n\n const isDark = isDarkColor(theme.color.bgPrimary);\n if (isDark) {\n document.documentElement.classList.add('dark');\n document.documentElement.setAttribute('data-theme', 'dark');\n } else {\n document.documentElement.classList.remove('dark');\n document.documentElement.setAttribute('data-theme', 'light');\n }\n\n let styleTag = document.getElementById(STYLE_ELEMENT_ID) as HTMLStyleElement | null;\n if (!styleTag) {\n styleTag = document.createElement('style');\n styleTag.id = STYLE_ELEMENT_ID;\n document.head.appendChild(styleTag);\n }\n\n styleTag.textContent = generateThemeCSS(theme);\n}\n\n/**\n * 순수 CSS 복사용 코드 생성\n */\nexport function exportToCSS(theme: ThemeConfig): string {\n return generateThemeCSS(theme);\n}\n\n/**\n * Tailwind Config 확장 객체 코드 생성\n */\nexport function exportToTailwind(theme: ThemeConfig): string {\n const { color, typography, borderRadius } = theme;\n\n const tailwindSnippet = {\n theme: {\n extend: {\n colors: {\n brand: {\n primary: color.primary,\n hover: color.primaryHover,\n light: color.primaryLight,\n },\n surface: {\n DEFAULT: color.bgPrimary,\n secondary: color.bgSecondary,\n },\n border: {\n subtle: color.borderSubtle,\n strong: color.borderStrong,\n },\n status: {\n success: color.statusSuccess,\n danger: color.statusDanger,\n warning: color.statusWarning,\n },\n },\n fontSize: {\n h1: [`${typography.h1.fontSize}px`, { lineHeight: `${typography.h1.lineHeight}`, fontWeight: `${typography.h1.fontWeight}`, letterSpacing: typography.h1.letterSpacing }],\n h2: [`${typography.h2.fontSize}px`, { lineHeight: `${typography.h2.lineHeight}`, fontWeight: `${typography.h2.fontWeight}`, letterSpacing: typography.h2.letterSpacing }],\n h3: [`${typography.h3.fontSize}px`, { lineHeight: `${typography.h3.lineHeight}`, fontWeight: `${typography.h3.fontWeight}`, letterSpacing: typography.h3.letterSpacing }],\n h4: [`${typography.h4.fontSize}px`, { lineHeight: `${typography.h4.lineHeight}`, fontWeight: `${typography.h4.fontWeight}`, letterSpacing: typography.h4.letterSpacing }],\n h5: [`${typography.h5.fontSize}px`, { lineHeight: `${typography.h5.lineHeight}`, fontWeight: `${typography.h5.fontWeight}`, letterSpacing: typography.h5.letterSpacing }],\n h6: [`${typography.h6.fontSize}px`, { lineHeight: `${typography.h6.lineHeight}`, fontWeight: `${typography.h6.fontWeight}`, letterSpacing: typography.h6.letterSpacing }],\n body: [`${typography.body.fontSize}px`, { lineHeight: `${typography.body.lineHeight}`, fontWeight: `${typography.body.fontWeight}`, letterSpacing: typography.body.letterSpacing }],\n sm: [`${typography.sm.fontSize}px`, { lineHeight: `${typography.sm.lineHeight}`, fontWeight: `${typography.sm.fontWeight}`, letterSpacing: typography.sm.letterSpacing }],\n xs: [`${typography.xs.fontSize}px`, { lineHeight: `${typography.xs.lineHeight}`, fontWeight: `${typography.xs.fontWeight}`, letterSpacing: typography.xs.letterSpacing }],\n },\n borderRadius: {\n custom: borderRadius,\n },\n },\n },\n };\n\n return `// tailwind.config.ts\\nimport type { Config } from 'tailwindcss';\\n\\nexport default ${JSON.stringify(tailwindSnippet, null, 2)} as Config;`;\n}\n\n/**\n * W3C Design Token Community Group (DTCG) 호환 tokens.json 생성\n */\nexport function exportToTokensJson(theme: ThemeConfig): string {\n const { color, typography, borderRadius } = theme;\n\n const dtcgTokens = {\n $schema: 'https://design-tokens.github.io/community-group/format/',\n color: {\n brand: {\n primary: { $value: color.primary, $type: 'color' },\n hover: { $value: color.primaryHover, $type: 'color' },\n subtle: { $value: color.primaryLight, $type: 'color' },\n },\n surface: {\n background: { $value: color.bgPrimary, $type: 'color' },\n secondary: { $value: color.bgSecondary, $type: 'color' },\n },\n text: {\n primary: { $value: color.textPrimary, $type: 'color' },\n secondary: { $value: color.textSecondary, $type: 'color' },\n muted: { $value: color.textMuted, $type: 'color' },\n },\n border: {\n subtle: { $value: color.borderSubtle, $type: 'color' },\n strong: { $value: color.borderStrong, $type: 'color' },\n },\n },\n typography: {\n h1: {\n fontSize: { $value: `${typography.h1.fontSize}px`, $type: 'dimension' },\n lineHeight: { $value: typography.h1.lineHeight, $type: 'number' },\n fontWeight: { $value: typography.h1.fontWeight, $type: 'fontWeight' },\n },\n h2: {\n fontSize: { $value: `${typography.h2.fontSize}px`, $type: 'dimension' },\n lineHeight: { $value: typography.h2.lineHeight, $type: 'number' },\n fontWeight: { $value: typography.h2.fontWeight, $type: 'fontWeight' },\n },\n h3: {\n fontSize: { $value: `${typography.h3.fontSize}px`, $type: 'dimension' },\n lineHeight: { $value: typography.h3.lineHeight, $type: 'number' },\n fontWeight: { $value: typography.h3.fontWeight, $type: 'fontWeight' },\n },\n h4: {\n fontSize: { $value: `${typography.h4.fontSize}px`, $type: 'dimension' },\n lineHeight: { $value: typography.h4.lineHeight, $type: 'number' },\n fontWeight: { $value: typography.h4.fontWeight, $type: 'fontWeight' },\n },\n h5: {\n fontSize: { $value: `${typography.h5.fontSize}px`, $type: 'dimension' },\n lineHeight: { $value: typography.h5.lineHeight, $type: 'number' },\n fontWeight: { $value: typography.h5.fontWeight, $type: 'fontWeight' },\n },\n h6: {\n fontSize: { $value: `${typography.h6.fontSize}px`, $type: 'dimension' },\n lineHeight: { $value: typography.h6.lineHeight, $type: 'number' },\n fontWeight: { $value: typography.h6.fontWeight, $type: 'fontWeight' },\n },\n body: {\n fontSize: { $value: `${typography.body.fontSize}px`, $type: 'dimension' },\n lineHeight: { $value: typography.body.lineHeight, $type: 'number' },\n fontWeight: { $value: typography.body.fontWeight, $type: 'fontWeight' },\n },\n sm: {\n fontSize: { $value: `${typography.sm.fontSize}px`, $type: 'dimension' },\n lineHeight: { $value: typography.sm.lineHeight, $type: 'number' },\n fontWeight: { $value: typography.sm.fontWeight, $type: 'fontWeight' },\n },\n xs: {\n fontSize: { $value: `${typography.xs.fontSize}px`, $type: 'dimension' },\n lineHeight: { $value: typography.xs.lineHeight, $type: 'number' },\n fontWeight: { $value: typography.xs.fontWeight, $type: 'fontWeight' },\n },\n },\n borderRadius: {\n default: { $value: borderRadius, $type: 'dimension' },\n },\n };\n\n return JSON.stringify(dtcgTokens, null, 2);\n}\n","import { clsx, type ClassValue } from \"clsx\";\nimport { twMerge } from \"tailwind-merge\";\n\n/**\n * Combines multiple class names using clsx and merges Tailwind classes \n * to handle conflicts (e.g., 'px-2 px-4' becomes 'px-4').\n */\nexport function cn(...inputs: ClassValue[]) {\n return twMerge(clsx(inputs));\n}\n","/**\n * AtomSystem / AtomDesignToken Public API\n * Universal Design Token & UI Library\n */\n\n// 1. Design Token Specifications & Models\nexport * from '../lib/data/tokens';\nexport * from '../lib/data/components';\nexport * from '../lib/data/patterns';\nexport * from '../lib/data/awesomeThemes';\nexport * from '../lib/data/themeEditorDefaults';\n\n// 2. Theme Engines & Utilities\nexport * from '../lib/services/themeEngine';\nexport * from '../lib/utils';\n\n// 3. Re-export basic CSS path helper\nexport const ATOM_UI_CSS_PATH = 'atomsystem/css/atom-ui.css';\n\n/**\n * CLI Banner & Metadata\n */\nexport const ATOM_VERSION = '0.2.1';\nexport const ATOM_LIB_NAME = 'atomsystem';\n"]}
|
|
1
|
+
{"version":3,"sources":["../lib/data/tokens.ts","../lib/data/components.ts","../lib/data/patterns.ts","../lib/data/awesomeThemes.ts","../lib/data/themeEditorDefaults.ts","../lib/services/themeEngine.ts","../lib/utils.ts","../src/index.ts"],"names":["r","g","b"],"mappings":"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","file":"index.js","sourcesContent":["export type TokenCategory = 'color' | 'typography' | 'radius' | 'spacing' | 'shadow';\n\nexport interface BrandPreset {\n id: string;\n name: string;\n brandColor: string;\n radius: string;\n description: string;\n}\n\nexport interface ColorToken {\n name: string;\n variable: string;\n value: string;\n description: string;\n category: 'brand' | 'surface' | 'text' | 'border' | 'status';\n}\n\nexport interface TypographyToken {\n name: string;\n variable: string;\n fontSize: string;\n lineHeight: string;\n weight: string;\n sample: string;\n}\n\nexport interface RadiusToken {\n name: string;\n variable: string;\n value: string;\n description: string;\n}\n\nexport interface SpacingToken {\n name: string;\n variable: string;\n value: string;\n px: number;\n}\n\nexport interface ShadowToken {\n name: string;\n variable: string;\n value: string;\n description: string;\n}\n\nexport const BRAND_PRESETS: BrandPreset[] = [\n {\n id: 'toss',\n name: '토스 스타일 (Toss)',\n brandColor: '#3182f6',\n radius: '16px',\n description: 'Vivid Blue, 16px 볼드 라운딩, 시원한 여백과 극도의 미니멀리즘'\n },\n {\n id: 'daangn',\n name: '당근 스타일 (Daangn)',\n brandColor: '#ff6f0f',\n radius: '12px',\n description: 'Warm Orange, 12px 소프트 라운딩, 친근하고 따뜻한 커뮤니티 감성'\n },\n {\n id: 'hyper-violet',\n name: '모던 바이올렛 (Violet Tech)',\n brandColor: '#7c3aed',\n radius: '8px',\n description: '세련된 보라색 테크 감성, 8px 샤프 라운딩, 개발자/B2B 최적화'\n },\n {\n id: 'forest-emerald',\n name: '에코 에메랄드 (Emerald)',\n brandColor: '#10b981',\n radius: '14px',\n description: '자연스럽고 편안한 딥 그린, 핀테크 자산 및 웰니스 서비스용'\n }\n];\n\nexport const BASE_COLOR_TOKENS: ColorToken[] = [\n // Brand\n {\n name: 'Primary Accent',\n variable: '--atom-color-primary',\n value: '#3182f6',\n description: '주요 액션 버튼, 활성 탭, 브랜드 강조 영역의 핵심 색상',\n category: 'brand'\n },\n {\n name: 'Primary Hover',\n variable: '--atom-color-primary-hover',\n value: '#1b64da',\n description: 'Primary 컴포넌트에 마우스를 올렸을 때 적용되는 딥 톤',\n category: 'brand'\n },\n {\n name: 'Primary Subtle / Light',\n variable: '--atom-color-primary-subtle',\n value: '#e8f3ff',\n description: '배지 배경, 활성 리스트 아이템, 선택 하이라이트 배경',\n category: 'brand'\n },\n // Surface & Background\n {\n name: 'Background Primary',\n variable: '--atom-bg-primary',\n value: '#ffffff',\n description: '웹 전체 페이지의 기본 캔버스 배경 (다크모드: #090a0f)',\n category: 'surface'\n },\n {\n name: 'Background Surface / Card',\n variable: '--atom-bg-surface',\n value: '#f8f9fa',\n description: '카드, 모달 다이얼로그, 패널, 드롭다운 메뉴의 바탕색',\n category: 'surface'\n },\n {\n name: 'Background Muted',\n variable: '--atom-bg-muted',\n value: '#f1f3f5',\n description: '비활성화된 폼 필드, 태그 칩, 보조 영역 배경',\n category: 'surface'\n },\n // Text\n {\n name: 'Text Primary',\n variable: '--atom-text-primary',\n value: '#191f28',\n description: '가장 높은 명도 대비를 갖는 핵심 본문 및 헤드라인 텍스트',\n category: 'text'\n },\n {\n name: 'Text Secondary',\n variable: '--atom-text-secondary',\n value: '#8b95a1',\n description: '설명문, 부가 라벨, 플레이스홀더, 서브 텍스트',\n category: 'text'\n },\n {\n name: 'Text Muted',\n variable: '--atom-text-muted',\n value: '#b0b8c1',\n description: '타임스탬프, 비활성화된 라벨, 장식성 힌트 텍스트',\n category: 'text'\n },\n // Border\n {\n name: 'Border Subtle',\n variable: '--atom-border-subtle',\n value: '#f2f4f6',\n description: '카드 구분선, 리스트 경계선 등 부드러운 분리선',\n category: 'border'\n },\n {\n name: 'Border Strong',\n variable: '--atom-border-strong',\n value: '#e5e8eb',\n description: '인풋 필드 외곽선, 명확한 아웃라인 버튼, 모달 경계선',\n category: 'border'\n },\n // Status\n {\n name: 'Status Success',\n variable: '--atom-status-success',\n value: '#10b981',\n description: '성공 완료 알림, 온라인 상태, 송금 완료 상태',\n category: 'status'\n },\n {\n name: 'Status Danger',\n variable: '--atom-status-danger',\n value: '#f43f5e',\n description: '폼 유효성 에러, 경고 메시지, 삭제 등 파괴적 액션',\n category: 'status'\n },\n {\n name: 'Status Warning',\n variable: '--atom-status-warning',\n value: '#f59e0b',\n description: '주의 알림, 대기 중인 상태, 결제 보류',\n category: 'status'\n }\n];\n\nexport const TYPOGRAPHY_TOKENS: TypographyToken[] = [\n {\n name: 'Display / Hero Title',\n variable: '--atom-font-display',\n fontSize: '36px (2.25rem)',\n lineHeight: '1.25',\n weight: '800 (ExtraBold)',\n sample: '디자이너의 피그마 해방, 말로 디자인하는 시대'\n },\n {\n name: 'Title 1 (Page Title)',\n variable: '--atom-font-title-1',\n fontSize: '28px (1.75rem)',\n lineHeight: '1.3',\n weight: '700 (Bold)',\n sample: '원클릭으로 끝내는 디자인 토큰 시스템'\n },\n {\n name: 'Title 2 (Section Title)',\n variable: '--atom-font-title-2',\n fontSize: '20px (1.25rem)',\n lineHeight: '1.35',\n weight: '700 (Bold)',\n sample: '프레임워크 무관한 표준 CSS 변수 체계'\n },\n {\n name: 'Title 3 (Card Title)',\n variable: '--atom-font-title-3',\n fontSize: '16px (1.0rem)',\n lineHeight: '1.4',\n weight: '600 (SemiBold)',\n sample: '계좌 송금 및 실시간 인증 패턴'\n },\n {\n name: 'Body 1 (Regular Body)',\n variable: '--atom-font-body-1',\n fontSize: '14px (0.875rem)',\n lineHeight: '1.5',\n weight: '400 (Regular)',\n sample: 'React, Vue, 바닐라 HTML 어디서나 복사 한 번으로 즉시 렌더링됩니다.'\n },\n {\n name: 'Body 2 / Caption',\n variable: '--atom-font-body-2',\n fontSize: '12px (0.75rem)',\n lineHeight: '1.5',\n weight: '500 (Medium)',\n sample: 'W3C DTCG 호환 tokens.json 기반 스타일 딕셔너리 컴파일'\n },\n {\n name: 'Mono Code',\n variable: '--atom-font-mono',\n fontSize: '11px (0.6875rem)',\n lineHeight: '1.6',\n weight: '500 (Medium)',\n sample: 'npx atomsystem init --preset toss'\n }\n];\n\nexport const RADIUS_TOKENS: RadiusToken[] = [\n {\n name: 'None (직각)',\n variable: '--atom-radius-none',\n value: '0px',\n description: '단단한 테크니컬 대시보드 및 플랫 디자인'\n },\n {\n name: 'Small (샤프)',\n variable: '--atom-radius-sm',\n value: '6px',\n description: '태그 배지, 미니 인풋, 정밀 데이터 테이블 컨트롤'\n },\n {\n name: 'Medium (소프트)',\n variable: '--atom-radius-md',\n value: '10px',\n description: '일반적인 버튼, 인풋 필드, 툴팁'\n },\n {\n name: 'Large (볼드 - 토스/당근 기본)',\n variable: '--atom-radius-lg',\n value: '16px',\n description: '카드, 대화상자 모달, 주요 모바일 시트'\n },\n {\n name: 'Extra Large (슈퍼 라운드)',\n variable: '--atom-radius-xl',\n value: '24px',\n description: '바텀시트 최상단 모서리, 히어로 배너 카드'\n },\n {\n name: 'Pill / Full (캡슐)',\n variable: '--atom-radius-full',\n value: '9999px',\n description: '필터 칩, 플로팅 액션 버튼(FAB), 원형 아바타'\n }\n];\n\nexport const SPACING_TOKENS: SpacingToken[] = [\n { name: 'Space 1 (Extra Small)', variable: '--atom-space-1', value: '4px', px: 4 },\n { name: 'Space 2 (Small)', variable: '--atom-space-2', value: '8px', px: 8 },\n { name: 'Space 3 (Compact)', variable: '--atom-space-3', value: '12px', px: 12 },\n { name: 'Space 4 (Base)', variable: '--atom-space-4', value: '16px', px: 16 },\n { name: 'Space 5 (Medium)', variable: '--atom-space-5', value: '20px', px: 20 },\n { name: 'Space 6 (Large)', variable: '--atom-space-6', value: '24px', px: 24 },\n { name: 'Space 8 (Section)', variable: '--atom-space-8', value: '32px', px: 32 },\n { name: 'Space 12 (Hero)', variable: '--atom-space-12', value: '48px', px: 48 },\n { name: 'Space 16 (Page Gap)', variable: '--atom-space-16', value: '64px', px: 64 }\n];\n\nexport const SHADOW_TOKENS: ShadowToken[] = [\n {\n name: 'Elevation 1 (Subtle)',\n variable: '--atom-shadow-sm',\n value: '0 1px 2px 0 rgb(0 0 0 / 0.05)',\n description: '기본 카드, 인풋 포커스 상태, 미세한 구분'\n },\n {\n name: 'Elevation 2 (Medium)',\n variable: '--atom-shadow-md',\n value: '0 4px 6px -1px rgb(0 0 0 / 0.1)',\n description: '호버된 카드, 드롭다운 메뉴, 팝오버 툴팁'\n },\n {\n name: 'Elevation 3 (Floating)',\n variable: '--atom-shadow-lg',\n value: '0 10px 15px -3px rgb(0 0 0 / 0.1)',\n description: '플로팅 내비게이션 바, 토스트 알림 메시지'\n },\n {\n name: 'Elevation 4 (Modal / Overlay)',\n variable: '--atom-shadow-xl',\n value: '0 20px 25px -5px rgb(0 0 0 / 0.15)',\n description: '화면 최상단 레이어의 모달 다이얼로그, 바텀시트'\n }\n];\n","export type ComponentCategory = 'all' | 'form' | 'feedback' | 'navigation' | 'data';\n\nexport interface PropItem {\n name: string;\n type: string;\n defaultValue: string;\n description: string;\n}\n\nexport interface DosAndDont {\n do: string;\n dont: string;\n}\n\nexport interface GalleryComponent {\n id: string;\n name: string;\n category: ComponentCategory;\n source: string;\n description: string;\n htmlSnippet: string;\n reactSnippet: string;\n vueSnippet?: string;\n callout?: {\n type: 'note' | 'tip' | 'warning';\n title: string;\n text: string;\n };\n propsSpec?: PropItem[];\n useCases: string[];\n usagePatterns: string[];\n dosAndDonts: DosAndDont[];\n relatedPatternIds: string[];\n}\n\nexport const GALLERY_COMPONENTS: GalleryComponent[] = [\n {\n id: 'button',\n name: '버튼 (Button Variants)',\n category: 'form',\n source: 'shadcn + bootstrap',\n description: 'Primary, Secondary, Outline, Ghost, Destructive, Loading 등 상태별 버튼 풀세트',\n callout: {\n type: 'tip',\n title: '접근성(A11y) 가이드',\n text: '비활성화(Disabled) 상태일 때는 aria-disabled=\"true\"와 함께 tabIndex={-1}을 지정하여 키보드 탐색 포커스를 방지하세요.'\n },\n useCases: [\n '폼 제출, 송금, 회원가입 등 한 화면의 가장 핵심적인 단일 전환 행동 (Primary CTA)',\n '다이얼로그 모달 내 취소, 이전 단계 등 보조 액션 (Secondary / Outline)',\n '회원 탈퇴, 데이터 영구 삭제, 주문 취소 등 파괴적 액션 (Destructive)',\n '비동기 API 요청 통신 중 중복 클릭을 방지하고 상태를 전달하는 로딩 스피너 (Loading)'\n ],\n usagePatterns: [\n '화면(또는 뷰포트)당 단 1개의 Primary 버튼만 배치하여 사용자의 시각적 위계와 인지 과부하를 방지합니다.',\n '확인/취소 버튼 그룹 배치 시 엄지손가락 접근성을 고려하여 우측(또는 모바일 최하단)에 주 액션을 배치합니다.',\n '모바일 터치 타깃 영역은 최소 44x44px 이상을 보장하여 오터치를 예방합니다.'\n ],\n dosAndDonts: [\n {\n do: '\"저장하기\", \"계좌로 송금하기\", \"장바구니 담기\"와 같이 명확한 동사형 라벨을 사용합니다.',\n dont: '\"확인\", \"클릭\", \"네\"와 같이 사용자가 버튼 클릭 후 일어날 결과를 예측하기 어려운 모호한 라벨을 쓰지 마세요.'\n },\n {\n do: '로딩 중일 때는 버튼 너비가 줄어들거나 텍스트가 깜빡이지 않도록 인라인 스피너를 유지합니다.',\n dont: '로딩 상태인데도 사용자가 버튼을 2번 연속 클릭할 수 있게 방치하지 마세요.'\n }\n ],\n relatedPatternIds: ['fintech-transfer', 'ecommerce-checkout', 'saas-dashboard', 'developer-docs'],\n propsSpec: [\n { name: 'variant', type: \"'primary' | 'secondary' | 'outline' | 'destructive' | 'ghost'\", defaultValue: \"'primary'\", description: '버튼의 시각적 강조 스타일' },\n { name: 'size', type: \"'sm' | 'md' | 'lg'\", defaultValue: \"'md'\", description: '버튼 패딩 및 글자 크기' },\n { name: 'loading', type: 'boolean', defaultValue: 'false', description: '로딩 스피너 활성화 및 상호작용 차단' },\n { name: 'disabled', type: 'boolean', defaultValue: 'false', description: '클릭 차단 및 불투명도 축소' }\n ],\n htmlSnippet: `<button class=\"atom-btn atom-btn-primary\">Primary Action</button>\n<button class=\"atom-btn atom-btn-secondary\">Secondary</button>\n<button class=\"atom-btn atom-btn-outline\">Outline</button>\n<button class=\"atom-btn atom-btn-destructive\">Delete</button>`,\n reactSnippet: `import { Button } from '@/components/ui/button';\n\nexport function ButtonDemo() {\n return (\n <div className=\"flex gap-2\">\n <Button variant=\"primary\">저장하기</Button>\n <Button variant=\"outline\">취소</Button>\n <Button variant=\"destructive\">영구 삭제</Button>\n <Button loading>처리 중...</Button>\n </div>\n );\n}`,\n vueSnippet: `<template>\n <div class=\"flex gap-2\">\n <AtomButton variant=\"primary\">저장하기</AtomButton>\n <AtomButton variant=\"outline\">취소</AtomButton>\n <AtomButton :loading=\"isLoading\">처리 중...</AtomButton>\n </div>\n</template>`\n },\n {\n id: 'input',\n name: '인풋 필드 (Input with Status)',\n category: 'form',\n source: 'shadcn + bootstrap',\n description: '플로팅 라벨, 필수값 인디케이터, 유효성 통과 및 에러 피드백 인풋',\n callout: {\n type: 'note',\n title: '폼 유효성 검사 규칙',\n text: '에러 발생 시 aria-invalid=\"true\"와 aria-describedby=\"error-id\"를 연결하여 스크린 리더에 오류 메시지를 전달합니다.'\n },\n useCases: [\n '이메일, 비밀번호, 성명, 주소 등 표준 텍스트 정보 수집',\n '금액, 전화번호, 6자리 SMS OTP 인증 등 숫자 전용 입력',\n '실시간 자동완성 및 태그 칩이 연동되는 검색 입력창',\n '다국어 텍스트, 장문의 문의사항 입력 텍스트에어리어'\n ],\n usagePatterns: [\n '플레이스홀더(Placeholder)는 예시를 보여주는 용도로만 쓰고 라벨(Label)을 절대 대체하지 않습니다.',\n '오류 발생 시 테두리 색상 변화뿐만 아니라 인풋 하단에 명확한 에러 사유 텍스트를 반드시 함께 제공합니다.',\n '모바일 환경에서는 type=\"email\", inputmode=\"numeric\" 등을 명시하여 적절한 가상 키보드가 뜨도록 돕습니다.'\n ],\n dosAndDonts: [\n {\n do: '오타를 쉽게 정정할 수 있도록 우측에 원클릭 지우기(X) 클리어 버튼을 배치합니다.',\n dont: '사용자가 타이핑하는 글자 수마다 매번 화면을 깜빡거리며 유효성 경고를 띄우지 마세요(디바운스 필요).'\n }\n ],\n relatedPatternIds: ['kyc-verification', 'fintech-transfer', 'search-empty', 'blog-editor'],\n propsSpec: [\n { name: 'label', type: 'string', defaultValue: 'undefined', description: '인풋 상단에 표시되는 텍스트 라벨' },\n { name: 'placeholder', type: 'string', defaultValue: \"''\", description: '입력 가이드 플레이스홀더' },\n { name: 'error', type: 'string', defaultValue: 'undefined', description: '에러 메시지 및 레드 테두리 상태 표시' },\n { name: 'clearable', type: 'boolean', defaultValue: 'true', description: '텍스트 원클릭 클리어(X) 버튼 노출' }\n ],\n htmlSnippet: `<div class=\"atom-form-group\">\n <label class=\"atom-label\">이메일 주소</label>\n <input type=\"email\" class=\"atom-input\" placeholder=\"name@company.com\" />\n <span class=\"atom-error-text\">유효한 이메일을 입력하세요.</span>\n</div>`,\n reactSnippet: `import { Input } from '@/components/ui/input';\n\nexport function InputDemo() {\n return (\n <Input\n label=\"이메일 주소\"\n type=\"email\"\n placeholder=\"name@company.com\"\n error=\"유효한 이메일 형식을 입력하세요.\"\n clearable\n />\n );\n}`,\n vueSnippet: `<template>\n <AtomInput\n v-model=\"email\"\n label=\"이메일 주소\"\n placeholder=\"name@company.com\"\n :error=\"emailError\"\n />\n</template>`\n },\n {\n id: 'selection',\n name: '스위치 & 체크박스 (Switch & Checkbox)',\n category: 'form',\n source: 'shadcn + bootstrap',\n description: '부트스트랩 스위치 토글, shadcn 스타일 체크박스 및 라디오 그룹',\n callout: {\n type: 'tip',\n title: '즉각 반응 피드백',\n text: '스위치 토글은 별도의 [저장] 버튼 없이도 상태가 즉시 저장되는 환경 설정 UX에 권장됩니다.'\n },\n useCases: [\n '알림 On/Off, 다크모드, 생체인증 활성화 등 즉시 반영되는 환경설정 (Switch)',\n '회원가입 약관 필수/선택 동의 및 전체 동의 토글 (Checkbox)',\n '쇼핑몰 장바구니 상품 전체 선택 및 개별 선택',\n '단일 옵션 중 반드시 하나만 골라야 하는 결제 수단/배송지 선택 (Radio)'\n ],\n usagePatterns: [\n '스위치는 누르는 즉시 시스템에 반영되는 설정에 쓰고, 체크박스는 폼 전송 버튼을 누를 때까지 보류되는 선택에 씁니다.',\n '터치 영역을 작은 체크박스 네모에만 한정하지 않고 텍스트 라벨 전체로 확장하여 클릭 편의성을 높입니다.'\n ],\n dosAndDonts: [\n {\n do: '전체 동의 체크박스 선택 시 하위 자식 체크박스들이 일괄 동기화되도록 구현합니다.',\n dont: '마케팅 선택 동의를 필수 동의와 묶어 전체 동의를 강제하지 마세요.'\n }\n ],\n relatedPatternIds: ['kyc-verification', 'ecommerce-checkout', 'onboarding-wizard'],\n propsSpec: [\n { name: 'checked', type: 'boolean', defaultValue: 'false', description: '활성화 선택 여부' },\n { name: 'onChange', type: '(checked: boolean) => void', defaultValue: 'undefined', description: '상태 변경 이벤트 콜백' },\n { name: 'label', type: 'string', defaultValue: 'undefined', description: '인라인 라벨 텍스트' }\n ],\n htmlSnippet: `<label class=\"atom-switch\">\n <input type=\"checkbox\" checked />\n <span class=\"atom-slider\"></span>\n</label>`,\n reactSnippet: `import { Switch, Checkbox } from '@/components/ui/selection';\n\nexport function SelectionDemo() {\n return (\n <div className=\"flex flex-col gap-3\">\n <Switch checked={isEnabled} onChange={setIsEnabled} label=\"야간 푸시 알림 수신\" />\n <Checkbox checked={isAgreed} onChange={setIsAgreed} label=\"이용약관 전체 동의\" />\n </div>\n );\n}`,\n vueSnippet: `<template>\n <AtomSwitch v-model=\"notifications\" label=\"알림 수신\" />\n <AtomCheckbox v-model=\"termsAll\" label=\"약관 전체 동의\" />\n</template>`\n },\n {\n id: 'dialog',\n name: '모달 다이얼로그 (Modal / Dialog)',\n category: 'feedback',\n source: 'shadcn + bootstrap',\n description: '접근성(A11y aria-modal, ESC 닫기)을 보장하는 중앙 팝업 다이얼로그',\n callout: {\n type: 'warning',\n title: '포커스 트랩(Focus Trap)',\n text: '모달이 열렸을 때 백드롭 바깥의 다른 요소로 Tab 포커스가 탈출하지 않도록 포커스 트랩을 필수 적용하세요.'\n },\n useCases: [\n '데이터 영구 삭제, 서비스 탈퇴 등 되돌릴 수 없는 행동 직전 2단계 확인',\n '송금 최종 단계에서 수취인 이름, 계좌, 금액을 최종 확인하는 다이얼로그',\n '신분증 촬영 안내, 약관 전문 읽기 팝업',\n '세션 만료 경고 및 로그인 연장 알림'\n ],\n usagePatterns: [\n 'ESC 키 입력 또는 모달 바깥 백드롭 터치 시 즉각 모달이 닫히도록 닫기 인터랙션을 보장합니다.',\n '모달 오픈 시 백그라운드 본문 스크롤(Scroll Lock)을 잠가 이중 스크롤 충돌을 방지합니다.'\n ],\n dosAndDonts: [\n {\n do: '모달이 닫히면 이전에 모달을 열었던 트리거 버튼으로 포커스를 복귀시킵니다.',\n dont: '확인 모달 위에 또 다른 모달을 2중, 3중으로 겹쳐 띄우지 마세요.'\n }\n ],\n relatedPatternIds: ['fintech-transfer', 'blog-editor', 'flight-booking'],\n propsSpec: [\n { name: 'open', type: 'boolean', defaultValue: 'false', description: '다이얼로그 노출 여부' },\n { name: 'onClose', type: '() => void', defaultValue: 'undefined', description: 'ESC 또는 바깥 클릭 시 닫기 콜백' },\n { name: 'title', type: 'string', defaultValue: \"''\", description: '다이얼로그 헤더 제목' }\n ],\n htmlSnippet: `<div class=\"atom-modal-backdrop\">\n <div class=\"atom-modal\" role=\"dialog\" aria-modal=\"true\">\n <h3 class=\"atom-modal-title\">정말 삭제하시겠습니까?</h3>\n <p class=\"atom-modal-body\">삭제된 데이터는 복구할 수 없습니다.</p>\n <div class=\"atom-modal-actions\">\n <button class=\"atom-btn atom-btn-outline\">취소</button>\n <button class=\"atom-btn atom-btn-destructive\">삭제</button>\n </div>\n </div>\n</div>`,\n reactSnippet: `import { Dialog, DialogContent, DialogHeader, DialogTitle, DialogFooter } from '@/components/ui/dialog';\nimport { Button } from '@/components/ui/button';\n\nexport function ModalDemo({ isOpen, onClose }) {\n return (\n <Dialog open={isOpen} onOpenChange={onClose}>\n <DialogContent>\n <DialogHeader>\n <DialogTitle>송금 정보를 확인해주세요</DialogTitle>\n </DialogHeader>\n <p className=\"text-sm text-neutral-500\">김토스님에게 500,000원을 송금합니다.</p>\n <DialogFooter>\n <Button variant=\"outline\" onClick={onClose}>취소</Button>\n <Button variant=\"primary\" onClick={onClose}>송금 실행</Button>\n </DialogFooter>\n </DialogContent>\n </Dialog>\n );\n}`,\n vueSnippet: `<template>\n <AtomDialog v-model=\"isOpen\" title=\"확인\">\n <p>진행하시겠습니까?</p>\n </AtomDialog>\n</template>`\n },\n {\n id: 'sheet',\n name: '바텀시트 & 사이드 드로어 (Sheet / Drawer)',\n category: 'feedback',\n source: 'shadcn + bootstrap',\n description: '모바일 하단 바텀시트 및 데스크톱 우측 슬라이드 패널',\n callout: {\n type: 'note',\n title: '뷰포트 최적화',\n text: '모바일 뷰포트(768px 미만)에서는 bottom 바텀시트로, 데스크톱에서는 right 슬라이드 드로어로 자동 적응됩니다.'\n },\n useCases: [\n '지도 앱에서 특정 핀을 탭했을 때 하단에서 올라오는 매장 상세 정보 (네이버/카카오 지도 스타일)',\n '쇼핑몰 복합 필터(가격대, 브랜드, 배송 조건) 설정 드로어',\n '모바일 햄버거 메뉴 클릭 시 우측에서 슬라이드되는 글로벌 내비게이션',\n 'SNS 피드 댓글 목록 및 작성 시트'\n ],\n usagePatterns: [\n '하단 시트 상단에 시각적 핸들러 바(Handle Bar)를 배치하여 드래그 가능한 인터페이스임을 암시합니다.',\n '1단(요약 120px) ➔ 2단(반 화면 50%) ➔ 3단(전체 화면 90%) 스냅 포인트를 제공합니다.'\n ],\n dosAndDonts: [\n {\n do: '시트를 아래로 쓸어내리는(Swipe Down) 제스처로 쉽게 닫을 수 있게 합니다.',\n dont: '지도 화면 전체를 완전히 덮어버려 사용자가 현재 위치 맥락을 잃지 않게 하세요.'\n }\n ],\n relatedPatternIds: ['map-location', 'ecommerce-checkout'],\n propsSpec: [\n { name: 'open', type: 'boolean', defaultValue: 'false', description: '시트 오픈 상태' },\n { name: 'side', type: \"'bottom' | 'right' | 'left' | 'top'\", defaultValue: \"'bottom'\", description: '슬라이드 인 진입 방향' }\n ],\n htmlSnippet: `<div class=\"atom-sheet atom-sheet-bottom\">\n <div class=\"atom-sheet-handle\"></div>\n <div class=\"atom-sheet-content\">\n <h3>블루보틀 성수점</h3>\n <p>영업 중 · 21:00 마감</p>\n </div>\n</div>`,\n reactSnippet: `import { Sheet, SheetContent, SheetHeader, SheetTitle } from '@/components/ui/sheet';\n\nexport function SheetDemo({ isOpen, onClose }) {\n return (\n <Sheet open={isOpen} onOpenChange={onClose}>\n <SheetContent side=\"bottom\">\n <SheetHeader>\n <SheetTitle>상세 필터 옵션</SheetTitle>\n </SheetHeader>\n <div className=\"py-4\">옵션 항목들...</div>\n </SheetContent>\n </Sheet>\n );\n}`,\n vueSnippet: `<template>\n <AtomSheet v-model=\"isSheetOpen\" side=\"bottom\">\n <div>시트 내용</div>\n </AtomSheet>\n</template>`\n },\n {\n id: 'alert',\n name: '알림 콜아웃 (Alert Callout)',\n category: 'feedback',\n source: 'shadcn + bootstrap',\n description: '부트스트랩 alert-dismissible 및 shadcn Callout 정보/성공/에러 알림',\n callout: {\n type: 'tip',\n title: '스크린 리더 알림',\n text: '동적으로 추가되는 중요한 경고문구에는 role=\"alert\" 또는 aria-live=\"assertive\"를 선언하세요.'\n },\n useCases: [\n '새 버전 기능 업데이트 및 시스템 정기 점검 공지',\n '폼 전송 후 발생한 서버 에러 목록 일괄 공지',\n '회원가입 완료 및 이메일 인증 링크 전송 피드백',\n '결제 실패 또는 일시적 네트워크 끊김 경고'\n ],\n usagePatterns: [\n '메시지 성격에 맞는 4대 시각 테마(Info, Success, Warning, Danger)를 엄격히 준수합니다.',\n '중요한 작업 플로우를 완전히 가로막는 모달 대신, 인라인으로 흐름을 방해하지 않는 알림에 사용합니다.'\n ],\n dosAndDonts: [\n {\n do: '닫기(X) 버튼을 제공하여 사용자가 확인한 메시지를 직접 숨길 수 있게 합니다.',\n dont: '페이지 접속 시 화면의 절반을 차지하는 거대한 경고 배너로 본문을 가리지 마세요.'\n }\n ],\n relatedPatternIds: ['chat-support', 'file-uploader', 'developer-docs'],\n propsSpec: [\n { name: 'variant', type: \"'info' | 'success' | 'warning' | 'danger'\", defaultValue: \"'info'\", description: '알림 테마 및 아이콘 색상' },\n { name: 'dismissible', type: 'boolean', defaultValue: 'true', description: '닫기(X) 버튼 표시 여부' }\n ],\n htmlSnippet: `<div class=\"atom-alert atom-alert-info\">\n <span class=\"atom-icon\">ℹ️</span>\n <div>새로운 토큰 시스템이 적용되었습니다.</div>\n</div>`,\n reactSnippet: `import { Alert, AlertTitle, AlertDescription } from '@/components/ui/alert';\n\nexport function AlertDemo() {\n return (\n <Alert variant=\"info\" dismissible>\n <AlertTitle>알림 안내</AlertTitle>\n <AlertDescription>새로운 업데이트 버전이 배포되었습니다.</AlertDescription>\n </Alert>\n );\n}`,\n vueSnippet: `<template>\n <AtomAlert variant=\"info\" dismissible>\n 업데이트가 완료되었습니다.\n </AtomAlert>\n</template>`\n },\n {\n id: 'tabs',\n name: '세그먼트 탭스 (Segment Tabs)',\n category: 'navigation',\n source: 'shadcn + bootstrap',\n description: '세그먼트 컨트롤 형태 및 언더라인형 표준 탭 내비게이션',\n callout: {\n type: 'note',\n title: '키보드 네비게이션',\n text: '좌우 방향키(ArrowLeft/ArrowRight)로 탭 간 이동이 가능해야 합니다 (WAI-ARIA Tabs 패턴).'\n },\n useCases: [\n '대시보드 성과 지표 기간 필터 (오늘 / 7일 / 30일 / 90일)',\n '항공권 여정 선택 (왕복 / 편도 / 다구간)',\n '개발 문서 코드 언어 전환 (React / Vue / Vanilla)',\n '계정 관리 서브페이지 (프로필 / 비밀번호 / 결제수단)'\n ],\n usagePatterns: [\n '탭 클릭 시 전체 페이지 리로드가 발생하지 않고 해당 패널 영역만 즉시 교체되어야 합니다.',\n '최대 4~5개 이하의 상호 배타적인 뷰를 전환할 때만 탭을 사용합니다.'\n ],\n dosAndDonts: [\n {\n do: '현재 활성화된 탭에 고대비 배경과 브랜드 하이라이트 인디케이터를 부여합니다.',\n dont: '가로 스크롤이 들어가는 복잡한 다단 탭을 모바일 뷰에 무리하게 넣지 마세요.'\n }\n ],\n relatedPatternIds: ['saas-dashboard', 'flight-booking', 'developer-docs'],\n propsSpec: [\n { name: 'defaultValue', type: 'string', defaultValue: 'undefined', description: '초기 활성화 탭 식별값' },\n { name: 'onChange', type: '(tab: string) => void', defaultValue: 'undefined', description: '탭 전환 시 콜백' }\n ],\n htmlSnippet: `<div class=\"atom-tabs\">\n <button class=\"atom-tab active\">계정 설정</button>\n <button class=\"atom-tab\">보안</button>\n <button class=\"atom-tab\">결제 수단</button>\n</div>`,\n reactSnippet: `import { Tabs, TabsList, TabsTrigger, TabsContent } from '@/components/ui/tabs';\n\nexport function TabsDemo() {\n return (\n <Tabs defaultValue=\"overview\">\n <TabsList>\n <TabsTrigger value=\"overview\">개요</TabsTrigger>\n <TabsTrigger value=\"analytics\">분석</TabsTrigger>\n <TabsTrigger value=\"reports\">보고서</TabsTrigger>\n </TabsList>\n <TabsContent value=\"overview\">개요 내용...</TabsContent>\n </Tabs>\n );\n}`,\n vueSnippet: `<template>\n <AtomTabs v-model=\"currentTab\" :tabs=\"['개요', '분석', '설정']\" />\n</template>`\n },\n {\n id: 'badge',\n name: '상태 배지 (Pill Badge)',\n category: 'data',\n source: 'shadcn + bootstrap',\n description: '상태 식별 펄스 도트 뱃지, 버전 태그, 캡슐형 칩',\n callout: {\n type: 'tip',\n title: '색상 독립성',\n text: '색약자를 위해 단순 색상뿐만 아니라 아이콘이나 텍스트(예: \"활성\", \"오프라인\")를 함께 병기하세요.'\n },\n useCases: [\n '신규 기능 알림 칩 (\"NEW\", \"BETA\")',\n '실시간 웹소켓 서버 연결 상태 (\"온라인\", \"오프라인\")',\n '주문 및 심사 처리 상태 (\"결제완료\", \"배송중\", \"심사대기\")',\n '장바구니 및 알림 벨 안 읽은 메시지 카운트 뱃지'\n ],\n usagePatterns: [\n '상태 변화가 실시간일 경우 초록색 펄스(Pulse) 도트 애니메이션을 함께 조합합니다.',\n '캡슐 형태의 둥근 모서리(--atom-radius-full)와 작은 폰트(--atom-font-body-2)를 유지합니다.'\n ],\n dosAndDonts: [\n {\n do: '성공은 초록, 경고는 주황, 위험은 빨강 등 표준적인 색상 의미를 일관되게 지킵니다.',\n dont: '텍스트가 2줄 이상 넘어가는 긴 문장을 뱃지 안에 욱여넣지 마세요.'\n }\n ],\n relatedPatternIds: ['saas-dashboard', 'chat-support', 'developer-docs'],\n propsSpec: [\n { name: 'variant', type: \"'primary' | 'success' | 'warning' | 'danger' | 'neutral'\", defaultValue: \"'primary'\", description: '배지 색상 스타일' },\n { name: 'pulse', type: 'boolean', defaultValue: 'false', description: '실시간 연결 펄스 애니메이션 도트 표시' }\n ],\n htmlSnippet: `<span class=\"atom-badge atom-badge-primary\">NEW</span>\n<span class=\"atom-badge atom-badge-success\">활성</span>\n<span class=\"atom-badge atom-badge-warning\">대기</span>`,\n reactSnippet: `import { Badge } from '@/components/ui/badge';\n\nexport function BadgeDemo() {\n return (\n <div className=\"flex gap-2\">\n <Badge variant=\"primary\">v1.2.4</Badge>\n <Badge variant=\"success\" pulse>온라인</Badge>\n <Badge variant=\"warning\">심사 대기중</Badge>\n </div>\n );\n}`,\n vueSnippet: `<template>\n <AtomBadge variant=\"success\" pulse>온라인</AtomBadge>\n</template>`\n },\n {\n id: 'card',\n name: '인터랙티브 카드 (Card Surface)',\n category: 'data',\n source: 'shadcn + bootstrap',\n description: '음영 및 테두리 서피스, 호버 리프트 인터랙션이 내장된 범용 카드',\n callout: {\n type: 'note',\n title: '토큰 바인딩',\n text: '카드의 배경색은 --atom-bg-surface, 테두리는 --atom-border-subtle, 그림자는 --atom-shadow-sm 토큰과 연동됩니다.'\n },\n useCases: [\n 'SaaS 비즈니스 4대 핵심 지표(MRR, MAU, Churn) 요약 카드',\n '핀테크 은행 계좌 잔액 및 보유 자산 현황 서피스',\n '이커머스 쇼핑몰 상품 썸네일/가격/평점 갤러리 카드',\n '온보딩 위저드 사용자 직무 선택 라디오 카드'\n ],\n usagePatterns: [\n '클릭 가능한 카드에는 마우스 호버 시 미세하게 위로 떠오르는(-2px) 리프트 효과와 테두리 하이라이트를 부여합니다.',\n '카드 내부 패딩을 16px~24px로 넉넉히 주어 정보의 시각적 호흡을 돕습니다.'\n ],\n dosAndDonts: [\n {\n do: '서로 다른 카테고리의 정보를 별개의 독립된 카드로 시각적으로 그룹핑합니다.',\n dont: '카드 안에 과도하게 복잡한 중첩 카드나 수십 개의 액션을 난잡하게 배치하지 마세요.'\n }\n ],\n relatedPatternIds: ['saas-dashboard', 'onboarding-wizard', 'map-location'],\n propsSpec: [\n { name: 'interactive', type: 'boolean', defaultValue: 'false', description: '호버 리프트 및 클릭 피드백 활성화' }\n ],\n htmlSnippet: `<div class=\"atom-card atom-card-interactive\">\n <h4 class=\"atom-card-title\">계좌 잔액</h4>\n <p class=\"atom-card-body\">1,500,000원</p>\n</div>`,\n reactSnippet: `import { Card, CardHeader, CardTitle, CardContent } from '@/components/ui/card';\n\nexport function CardDemo() {\n return (\n <Card interactive>\n <CardHeader>\n <CardTitle>토스뱅크 자유적금</CardTitle>\n </CardHeader>\n <CardContent>\n <div className=\"text-2xl font-bold\">₩ 12,450,000</div>\n <p className=\"text-xs text-neutral-500\">연 4.5% 최고 금리 적용 중</p>\n </CardContent>\n </Card>\n );\n}`,\n vueSnippet: `<template>\n <AtomCard interactive title=\"보유 자산\">\n <div>₩ 12,450,000</div>\n </AtomCard>\n</template>`\n },\n {\n id: 'table',\n name: '데이터 테이블 (Responsive Table)',\n category: 'data',\n source: 'shadcn + bootstrap',\n description: '부트스트랩 table-hover 및 shadcn 스타일 클린 반응형 데이터 테이블',\n callout: {\n type: 'tip',\n title: '가로 스크롤 보호',\n text: '테이블 외곽에 overflow-x-auto를 래핑하여 모바일 뷰포트에서 페이지 전체가 깨지는 현상을 방지하세요.'\n },\n useCases: [\n '회원 목록, 결제 내역, 주문서 로그 등 다중 컬럼 정형 데이터 조회',\n 'API 엔드포인트 파라미터 및 Props 규격 명세서',\n '항공권 / 호텔 가격 및 옵션 비교표',\n '권한 매트릭스 설정 테이블'\n ],\n usagePatterns: [\n '행(Row)에 마우스오버 시 은은한 배경색 변화를 주어 현재 읽고 있는 행을 시각적으로 고정합니다.',\n '데이터가 0건일 때는 테이블이 텅 빈 채 깨지지 않도록 빈 상태(Empty State) 행을 중앙에 노출합니다.'\n ],\n dosAndDonts: [\n {\n do: '숫자 데이터는 우측 정렬, 텍스트 데이터는 좌측 정렬, 상태 뱃지는 중앙 정렬합니다.',\n dont: '모바일 화면에서 가로 스크롤 안내 없이 오른쪽 컬럼을 잘라먹지 마세요.'\n }\n ],\n relatedPatternIds: ['saas-dashboard', 'developer-docs'],\n propsSpec: [\n { name: 'striped', type: 'boolean', defaultValue: 'false', description: '홀수 행 배경 스트라이프 효과' },\n { name: 'hoverable', type: 'boolean', defaultValue: 'true', description: '마우스 오버 시 행 하이라이트' }\n ],\n htmlSnippet: `<table class=\"atom-table\">\n <thead><tr><th>이름</th><th>상태</th><th>역할</th></tr></thead>\n <tbody><tr><td>김민수</td><td>정상</td><td>관리자</td></tr></tbody>\n</table>`,\n reactSnippet: `import { Table, TableHeader, TableRow, TableHead, TableBody, TableCell } from '@/components/ui/table';\n\nexport function TableDemo() {\n return (\n <Table hoverable>\n <TableHeader>\n <TableRow>\n <TableHead>사용자</TableHead>\n <TableHead>상태</TableHead>\n <TableHead>역할</TableHead>\n </TableRow>\n </TableHeader>\n <TableBody>\n <TableRow>\n <TableCell>김민수</TableCell>\n <TableCell>활성</TableCell>\n <TableCell>소유자</TableCell>\n </TableRow>\n </TableBody>\n </Table>\n );\n}`,\n vueSnippet: `<template>\n <AtomTable :headers=\"['이름', '상태']\" :rows=\"userRows\" hoverable />\n</template>`\n },\n {\n id: 'calendar',\n name: '캘린더 & 날짜 선택기 (Calendar & DatePicker)',\n category: 'form',\n source: 'shadcn + react-day-picker',\n description: '월별 달력 내비게이션, 단일 및 범위 날짜 선택, 오늘 표시, 비활성화 날짜를 지원하는 W3C 접근성 준수 캘린더',\n callout: {\n type: 'tip',\n title: '키보드 탐색 접근성(A11y)',\n text: '방향키(상/하/좌/우)로 날짜 셀 간 포커스를 이동하고 Space 또는 Enter로 선택할 수 있도록 aria-selected 및 role=\"grid\" 구조를 준수합니다.'\n },\n useCases: [\n '예약 시스템 (숙소 예약, 항공권 일정, 진료 예약 등)의 입실/퇴실 일자 선택',\n '금융 및 대시보드의 기간별 거래 내역 조회 (최근 7일, 이번 달, 맞춤 기간)',\n '생년월일 및 만료일 입력 폼',\n '할 일(To-Do) 및 프로젝트 마일스톤 마감 기한 설정'\n ],\n usagePatterns: [\n '현재 선택된 날짜와 \"오늘(Today)\"의 시각적 위계를 구분하여 사용자가 달력 내에서 현재 시점을 빠르게 인지하도록 합니다.',\n '예약 불가능한 과거 날짜나 휴무일은 비활성화(Disabled) 처리하고 명도 대비를 낮춰 직관적으로 선택을 방지합니다.',\n '모바일 환경에서는 날짜 셀 터치 타깃을 최소 36x36px 이상으로 넉넉하게 확보합니다.'\n ],\n dosAndDonts: [\n {\n do: '선택된 날짜의 연/월/일을 상단 또는 인풋 필드에 명확한 포맷(YYYY-MM-DD)으로 즉시 피드백합니다.',\n dont: '과거 일자 선택 불가 규칙이 있는데도 클릭 후에야 에러 토스트를 띄우지 마세요. 달력 셀 자체를 비활성화하세요.'\n },\n {\n do: '이전 달/다음 달로 이동할 수 있는 직관적인 화살표 버튼과 연/월 셀렉터를 함께 제공합니다.',\n dont: '10년 전 생년월일을 선택해야 하는데 월 단위 화살표 클릭만 강요하지 마세요. 연도 점프 기능을 제공하세요.'\n }\n ],\n relatedPatternIds: ['ecommerce-checkout', 'saas-dashboard'],\n propsSpec: [\n { name: 'selectedDate', type: 'Date | null', defaultValue: 'null', description: '현재 선택된 일자 객체' },\n { name: 'mode', type: \"'single' | 'range'\", defaultValue: \"'single'\", description: '단일 날짜 선택 또는 기간 범위 선택 모드' },\n { name: 'minDate', type: 'Date', defaultValue: 'undefined', description: '선택 가능한 최소 일자 (이전 날짜 비활성화)' },\n { name: 'onSelect', type: '(date: Date) => void', defaultValue: 'undefined', description: '날짜 선택 시 호출되는 콜백 핸들러' }\n ],\n htmlSnippet: `<div class=\"atom-calendar\">\n <div class=\"atom-calendar-header\">\n <button class=\"atom-calendar-nav-btn\" aria-label=\"이전 달\"><</button>\n <span class=\"atom-calendar-title\">2026년 11월</span>\n <button class=\"atom-calendar-nav-btn\" aria-label=\"다음 달\">></button>\n </div>\n <div class=\"atom-calendar-grid\">\n <div class=\"atom-calendar-weekday\">일</div>\n <div class=\"atom-calendar-weekday\">월</div>\n <div class=\"atom-calendar-weekday\">화</div>\n <div class=\"atom-calendar-weekday\">수</div>\n <div class=\"atom-calendar-weekday\">목</div>\n <div class=\"atom-calendar-weekday\">금</div>\n <div class=\"atom-calendar-weekday\">토</div>\n <button class=\"atom-calendar-day\">1</button>\n <button class=\"atom-calendar-day atom-calendar-day-selected\">6</button>\n </div>\n</div>`,\n reactSnippet: `import { Calendar } from '@/components/ui/calendar';\nimport { useState } from 'react';\n\nexport function CalendarDemo() {\n const [date, setDate] = useState<Date | undefined>(new Date());\n\n return (\n <div className=\"p-4 border rounded-2xl bg-white dark:bg-neutral-900 w-fit\">\n <Calendar\n selected={date}\n onSelect={setDate}\n mode=\"single\"\n />\n </div>\n );\n}`,\n vueSnippet: `<template>\n <AtomCalendar v-model=\"selectedDate\" mode=\"single\" />\n</template>`\n },\n {\n id: 'select',\n name: '커스텀 셀렉트 (Select & Dropdown)',\n category: 'form',\n source: 'radix-ui + shadcn',\n description: '키보드 네비게이션, 검색 필터링, 그룹 라벨을 완벽히 지원하는 커스텀 드롭다운 선택기',\n callout: {\n type: 'tip',\n title: '모바일 OS 기본 피커 호환',\n text: '모바일 뷰포트에서는 네이티브 <select> 요소를 보이지 않게 오버레이하여 OS 자체 휠 피커(iOS 롤러/Android 바텀 드로어)를 자연스럽게 띄울 수 있습니다.'\n },\n useCases: [\n '국가/지역 코드, 통화(KRW/USD), 은행 계좌 목록 선택',\n '상품 정렬 기준 (최신순, 인기순, 낮은 가격순, 리뷰 많은 순)',\n '관리자 대시보드의 기간 필터링 및 권한(Role) 할당',\n '수량 및 배송 메모 선택 드롭다운'\n ],\n usagePatterns: [\n '옵션 개수가 5개 이상일 때는 라디오 버튼 대신 드롭다운 셀렉트를 사용하여 화면 공간을 절약합니다.',\n '옵션이 15개 이상으로 많을 경우 상단에 인라인 검색창(Filter Input)을 포함하여 빠른 탐색을 돕습니다.',\n '선택 완료 후 트리거 버튼에 선택된 라벨과 아이콘을 직관적으로 표기합니다.'\n ],\n dosAndDonts: [\n {\n do: '아무것도 선택되지 않았을 때 \"옵션을 선택하세요\"와 같은 명확한 플레이스홀더를 제공합니다.',\n dont: '옵션이 2~3개밖에 안 되는데 드롭다운 안에 숨겨두지 마세요. 세그먼트 탭이나 라디오 버튼이 훨씬 편리합니다.'\n }\n ],\n relatedPatternIds: ['fintech-transfer', 'ecommerce-checkout'],\n propsSpec: [\n { name: 'options', type: 'Array<{ value: string; label: string; icon?: ReactNode }>', defaultValue: '[]', description: '드롭다운 목록에 노출될 옵션 배열' },\n { name: 'value', type: 'string', defaultValue: \"''\", description: '현재 선택된 옵션의 고유 식별 값' },\n { name: 'placeholder', type: 'string', defaultValue: \"'선택하세요'\", description: '미선택 상태의 안내 문구' },\n { name: 'onChange', type: '(value: string) => void', defaultValue: 'undefined', description: '옵션 선택 변경 시 이벤트 핸들러' }\n ],\n htmlSnippet: `<div class=\"atom-select\">\n <button class=\"atom-select-trigger\" aria-haspopup=\"listbox\">\n <span>선택하세요</span>\n <span class=\"atom-select-arrow\">▼</span>\n </button>\n <ul class=\"atom-select-menu\" role=\"listbox\">\n <li class=\"atom-select-option\" role=\"option\">옵션 1</li>\n <li class=\"atom-select-option\" role=\"option\">옵션 2</li>\n </ul>\n</div>`,\n reactSnippet: `import { Select } from '@/components/ui/select';\nimport { useState } from 'react';\n\nconst BANK_OPTIONS = [\n { value: 'toss', label: '토스뱅크' },\n { value: 'kakao', label: '카카오뱅크' },\n { value: 'shinhan', label: '신한은행' },\n];\n\nexport function SelectDemo() {\n const [bank, setBank] = useState('toss');\n return <Select options={BANK_OPTIONS} value={bank} onChange={setBank} />;\n}`,\n vueSnippet: `<template>\n <AtomSelect v-model=\"selectedBank\" :options=\"bankOptions\" />\n</template>`\n },\n {\n id: 'accordion',\n name: '아코디언 (Accordion & Collapse)',\n category: 'data',\n source: 'shadcn + radix-ui',\n description: 'FAQ, 약관, 상세 설정 등 수직으로 컨텐츠를 확장/축소하여 시각적 복잡도를 낮추는 아코디언 컴포넌트',\n callout: {\n type: 'tip',\n title: '단일 vs 다중 열림 모드',\n text: '한 번에 하나의 섹션만 열려야 하는 FAQ나 위저드 단계는 type=\"single\"을, 여러 설정을 동시에 열어 비교해야 하는 곳은 type=\"multiple\"을 사용하세요.'\n },\n useCases: [\n '자주 묻는 질문(FAQ) 및 고객센터 안내',\n '장바구니 결제 단계별 상세 내역 (할인 쿠폰, 배송지 정보, 결제 수단)',\n '모바일 설정 메뉴 및 권한 관리 항목',\n '복잡한 약관 및 개인정보 처리방침 전문 접기/펼치기'\n ],\n usagePatterns: [\n '각 항목 우측에 회전하는 화살표(Chevron) 아이콘을 배치하여 열림/닫힘 상태를 명확히 안내합니다.',\n '애니메이션 전환 시 높이(Height) 변화를 부드럽게 처리하여 화면이 갑자기 튀는 레이아웃 쉬프트(CLS)를 방지합니다.'\n ],\n dosAndDonts: [\n {\n do: '헤더 텍스트는 간결한 의문문이나 핵심 명사로 작성하여 사용자가 원하는 정보를 한눈에 훑어볼 수 있게 합니다.',\n dont: '페이지 진입 시 모든 항목을 펼쳐두지 마세요. 스크롤이 불필요하게 길어집니다.'\n }\n ],\n relatedPatternIds: ['developer-docs', 'saas-dashboard'],\n propsSpec: [\n { name: 'items', type: 'Array<{ id: string; title: string; content: ReactNode }>', defaultValue: '[]', description: '아코디언 패널 목록' },\n { name: 'type', type: \"'single' | 'multiple'\", defaultValue: \"'single'\", description: '단일 활성화 또는 다중 활성화 허용 여부' }\n ],\n htmlSnippet: `<div class=\"atom-accordion\">\n <div class=\"atom-accordion-item\">\n <button class=\"atom-accordion-trigger\">\n <span>수수료는 얼마인가요?</span>\n <span class=\"atom-accordion-icon\">▾</span>\n </button>\n <div class=\"atom-accordion-content\">\n <p>평생 무제한 무료 송금을 지원합니다.</p>\n </div>\n </div>\n</div>`,\n reactSnippet: `import { Accordion } from '@/components/ui/accordion';\n\nconst FAQ_ITEMS = [\n { id: '1', title: '송금 한도는 얼마인가요?', content: '1회 1,000만원, 1일 5,000만원까지 송금 가능합니다.' },\n { id: '2', title: '해외 송금도 지원하나요?', content: '전 세계 30개국으로 당일 해외 송금을 지원합니다.' }\n];\n\nexport function AccordionDemo() {\n return <Accordion items={FAQ_ITEMS} type=\"single\" />;\n}`,\n vueSnippet: `<template>\n <AtomAccordion :items=\"faqItems\" type=\"single\" />\n</template>`\n },\n {\n id: 'tooltip',\n name: '툴팁 & 팝오버 (Tooltip & Popover)',\n category: 'feedback',\n source: 'radix-ui + floating-ui',\n description: '아이콘이나 축약된 정보에 마우스를 올리거나 포커스했을 때 보충 설명을 띄워주는 부동형 컨텍스트 오버레이',\n callout: {\n type: 'tip',\n title: '키보드 포커스 반응',\n text: '마우스 hover뿐만 아니라 키보드 Tab 키로 포커스 진입(focus-visible)했을 때도 툴팁이 동일하게 노출되어야 스크린리더 사용자가 소외되지 않습니다.'\n },\n useCases: [\n '텍스트 축약(Truncation) 시 말줄임표(...)로 잘린 원본 전체 텍스트 확인',\n '복잡한 금융 용어 (APR, 원리금균등상환, DSR) 옆 물음표(?) 아이콘의 도움말 설명',\n '아이콘 전용 버튼(Icon Button - 복사, 다운로드, 설정 등)의 기능 라벨 안내',\n '비활성화된 버튼에 마우스오버 시 \"권한이 없습니다\"와 같은 비활성화 사유 피드백'\n ],\n usagePatterns: [\n '사용자가 의도치 않게 스치며 지나갈 때 깜빡이지 않도록 150~200ms의 적절한 노출 지연(delay)을 둡니다.',\n '화면 가장자리에 닿았을 때 자동으로 반대 방향으로 뒤집히는 뷰포트 충돌 회피(collision flip)를 지원합니다.'\n ],\n dosAndDonts: [\n {\n do: '1~2줄 이내의 짧고 명료한 보조 설명문으로 간결하게 구성합니다.',\n dont: '툴팁 안에 클릭해야 하는 링크나 버튼 같은 인터랙티브 요소를 넣지 마세요. 그 경우엔 Popover나 Dialog를 쓰세요.'\n }\n ],\n relatedPatternIds: ['saas-dashboard', 'developer-docs'],\n propsSpec: [\n { name: 'content', type: 'string | ReactNode', defaultValue: \"''\", description: '툴팁 말풍선 안에 들어갈 도움말 텍스트' },\n { name: 'position', type: \"'top' | 'bottom' | 'left' | 'right'\", defaultValue: \"'top'\", description: '툴팁이 노출될 기준 방향' }\n ],\n htmlSnippet: `<div class=\"atom-tooltip-wrapper\">\n <button class=\"atom-btn atom-btn-outline\">정보</button>\n <div class=\"atom-tooltip-bubble atom-tooltip-top\" role=\"tooltip\">\n 추가 설명 내용입니다.\n </div>\n</div>`,\n reactSnippet: `import { Tooltip } from '@/components/ui/tooltip';\n\nexport function TooltipDemo() {\n return (\n <Tooltip content=\"클릭 시 클립보드에 복사됩니다\" position=\"top\">\n <button className=\"atom-btn atom-btn-outline\">복사</button>\n </Tooltip>\n );\n}`,\n vueSnippet: `<template>\n <AtomTooltip content=\"계좌번호가 복사됩니다\" position=\"top\">\n <button class=\"atom-btn\">복사</button>\n </AtomTooltip>\n</template>`\n },\n {\n id: 'toast',\n name: '토스트 알림 (Toast & Notification)',\n category: 'feedback',\n source: 'sonner + shadcn',\n description: '작업의 성공, 실패, 경고 메시지를 사용자 화면 모서리에 비간섭적(Non-intrusive)으로 띄우고 자동 소멸시키는 토스트 스낵바',\n callout: {\n type: 'tip',\n title: '자동 소멸 시간 및 일시 정지',\n text: '기본 3~4초 후 자동 닫힘을 지원하되, 사용자가 마우스를 올리거나 터치 중일 때는 타이머가 일시 정지되어 충분히 읽을 시간을 보장하세요.'\n },\n useCases: [\n '클립보드 복사 완료 (\"링크가 복사되었습니다\")',\n '설정 저장 및 프로필 수정 완료 피드백',\n '네트워크 일시 오류 또는 API 요청 실패 시 재시도 안내',\n '장바구니 담기 완료 후 \"장바구니 바로가기\" 인라인 액션 버튼 제공'\n ],\n usagePatterns: [\n '모바일에서는 화면 최상단 또는 최하단 전체 너비로 노출하고, 데스크톱에서는 우측 상단/하단에 컴팩트하게 배치합니다.',\n '동시에 여러 알림이 발생할 경우 최대 3개까지 스택(Stacking)하여 겹쳐 보여주고 오래된 알림부터 순차적으로 제거합니다.'\n ],\n dosAndDonts: [\n {\n do: '성공은 녹색(Emerald), 에러는 적색(Rose), 정보는 청색(Blue)으로 상태별 시멘틱 색상을 직관적으로 부여합니다.',\n dont: '사용자가 즉시 확인하고 결정해야 하는 중요한 확인 절차(예: 결제 완료 후 계좌 차감)에 모달 대신 토스트만 쓰고 닫히게 두지 마세요.'\n }\n ],\n relatedPatternIds: ['fintech-transfer', 'ecommerce-checkout'],\n propsSpec: [\n { name: 'message', type: 'string', defaultValue: \"''\", description: '토스트 본문 메시지' },\n { name: 'type', type: \"'success' | 'error' | 'info' | 'warning'\", defaultValue: \"'info'\", description: '토스트 상태 시멘틱 스타일' },\n { name: 'duration', type: 'number', defaultValue: '3000', description: '화면에 유지될 밀리초 단위 시간' }\n ],\n htmlSnippet: `<div class=\"atom-toast-container\">\n <div class=\"atom-toast atom-toast-success\">\n <span class=\"atom-toast-icon\">✓</span>\n <span class=\"atom-toast-message\">저장이 완료되었습니다.</span>\n </div>\n</div>`,\n reactSnippet: `import { Toast, useToast } from '@/components/ui/toast';\n\nexport function ToastDemo() {\n const { toast } = useToast();\n\n return (\n <button \n onClick={() => toast({ title: '성공', message: '계좌 송금이 완료되었습니다.', type: 'success' })}\n className=\"atom-btn atom-btn-primary\"\n >\n 송금하기\n </button>\n );\n}`,\n vueSnippet: `<template>\n <button @click=\"$toast.success('저장되었습니다')\">저장</button>\n</template>`\n },\n {\n id: 'pagination',\n name: '페이지네이션 (Pagination)',\n category: 'navigation',\n source: 'shadcn + bootstrap',\n description: '대용량 데이터 리스트를 여러 페이지로 나누어 번호별 및 이전/다음 탐색을 지원하는 페이지네이션 네비게이션',\n callout: {\n type: 'tip',\n title: '접근성(A11y) 네비게이션 태그',\n text: '<nav aria-label=\"페이지 탐색\">으로 래핑하고 현재 활성화된 페이지 번호 버튼에 aria-current=\"page\" 속성을 반드시 부여하세요.'\n },\n useCases: [\n '게시판 목록, 공지사항, FAQ 질문 리스트 탐색',\n '전자상거래 쇼핑몰의 상품 검색 결과 목록 (1페이지당 20/40/60개)',\n '관리자 대시보드의 회원 관리 및 주문 로그 테이블',\n '검색엔진의 검색 결과 페이지 이동'\n ],\n usagePatterns: [\n '페이지 번호가 10개를 초과할 경우 중간 번호를 생략 기호(...)로 축약하여 모바일에서도 레이아웃이 터지지 않도록 합니다.',\n '첫 페이지에서는 \"이전\" 버튼을, 마지막 페이지에서는 \"다음\" 버튼을 비활성화(disabled)하여 경계 상태를 안내합니다.'\n ],\n dosAndDonts: [\n {\n do: '현재 몇 번째 페이지를 보고 있는지 명확한 활성(Active) 하이라이트를 제공합니다.',\n dont: '모바일 환경에서 1부터 20까지의 모든 숫자 버튼을 가로로 길게 늘어놓아 화면을 뚫고 나가게 하지 마세요.'\n }\n ],\n relatedPatternIds: ['saas-dashboard', 'developer-docs'],\n propsSpec: [\n { name: 'currentPage', type: 'number', defaultValue: '1', description: '현재 활성화된 페이지 번호' },\n { name: 'totalPages', type: 'number', defaultValue: '10', description: '전체 페이지 총 개수' },\n { name: 'onPageChange', type: '(page: number) => void', defaultValue: 'undefined', description: '페이지 번호 클릭 시 변경 핸들러' }\n ],\n htmlSnippet: `<nav class=\"atom-pagination\" aria-label=\"페이지 네비게이션\">\n <button class=\"atom-pagination-btn\" disabled>< 이전</button>\n <button class=\"atom-pagination-btn atom-pagination-active\">1</button>\n <button class=\"atom-pagination-btn\">2</button>\n <button class=\"atom-pagination-btn\">3</button>\n <button class=\"atom-pagination-btn\">다음 ></button>\n</nav>`,\n reactSnippet: `import { Pagination } from '@/components/ui/pagination';\nimport { useState } from 'react';\n\nexport function PaginationDemo() {\n const [page, setPage] = useState(1);\n return <Pagination currentPage={page} totalPages={10} onPageChange={setPage} />;\n}`,\n vueSnippet: `<template>\n <AtomPagination :current-page=\"page\" :total-pages=\"10\" @change=\"p => page = p\" />\n</template>`\n },\n {\n id: 'radio',\n name: '라디오 그룹 (Radio Group & Cards)',\n category: 'form',\n source: 'shadcn + radix-ui',\n description: '서로 배타적인 단일 선택을 제공하며, 기본 원형 라디오 및 카드형 선택 옵션을 지원하는 라디오 그룹',\n callout: {\n type: 'tip',\n title: '키보드 내비게이션 접근성',\n text: 'role=\"radiogroup\"과 role=\"radio\"를 적용하고 방향키(상/하/좌/우)로 옵션 간 포커스를 즉시 전환할 수 있어야 합니다.'\n },\n useCases: [\n '결제 수단 선택 (신용카드, 카카오페이, 토스페이, 무통장입금)',\n '배송 옵션 선택 (일반 택배, 새벽 배송, 매장 픽업)',\n '성별 및 회원 등급 선택 폼',\n '요금제 플랜 선택 카드 (Basic, Pro, Enterprise)'\n ],\n usagePatterns: [\n '옵션이 2~4개 사이일 때 드롭다운 대신 라디오를 사용하여 모든 선택지를 한눈에 비교할 수 있게 합니다.',\n '중요한 과금 플랜이나 결제 수단은 단순 텍스트 라디오 대신 타이틀, 설명, 뱃지가 포함된 \"라디오 카드\" 형태를 권장합니다.'\n ],\n dosAndDonts: [\n {\n do: '사용자가 옵션의 의미를 파악하기 쉽도록 기본값(Default Value)을 하나 지정해 둡니다.',\n dont: '다중 선택이 가능한 항목에 체크박스 대신 라디오 버튼을 쓰지 마세요.'\n }\n ],\n relatedPatternIds: ['ecommerce-checkout', 'fintech-transfer'],\n propsSpec: [\n { name: 'name', type: 'string', defaultValue: \"''\", description: '라디오 폼 필드 그룹명' },\n { name: 'options', type: 'Array<{ value: string; label: string; description?: string }>', defaultValue: '[]', description: '라디오 선택 옵션 목록' },\n { name: 'value', type: 'string', defaultValue: \"''\", description: '현재 선택된 값' },\n { name: 'onChange', type: '(val: string) => void', defaultValue: 'undefined', description: '선택 변경 핸들러' }\n ],\n htmlSnippet: `<div class=\"atom-radio-group\" role=\"radiogroup\">\n <label class=\"atom-radio-label\">\n <input type=\"radio\" name=\"payment\" value=\"card\" class=\"atom-radio\" checked />\n <span>신용/체크카드</span>\n </label>\n <label class=\"atom-radio-label\">\n <input type=\"radio\" name=\"payment\" value=\"toss\" class=\"atom-radio\" />\n <span>토스페이</span>\n </label>\n</div>`,\n reactSnippet: `import { RadioGroup, RadioItem } from '@/components/ui/radio';\nimport { useState } from 'react';\n\nexport function RadioDemo() {\n const [pay, setPay] = useState('card');\n return (\n <RadioGroup value={pay} onChange={setPay}>\n <RadioItem value=\"card\" label=\"신용/체크카드\" />\n <RadioItem value=\"toss\" label=\"토스페이 간편결제\" />\n </RadioGroup>\n );\n}`,\n vueSnippet: `<template>\n <AtomRadioGroup v-model=\"selectedPay\" :options=\"payOptions\" />\n</template>`\n },\n {\n id: 'slider',\n name: '슬라이더 (Range Slider)',\n category: 'form',\n source: 'radix-ui + shadcn',\n description: '연속적인 수치(가격, 볼륨, 기간 등)를 마우스 드래그나 터치로 직관적으로 조절할 수 있는 슬라이더 바',\n callout: {\n type: 'tip',\n title: '키보드 스텝 조절(A11y)',\n text: 'Thumb 핸들에 포커스된 상태에서 좌/우 방향키로 step 단위, PageUp/PageDown으로 10배 단위로 증감할 수 있도록 지원합니다.'\n },\n useCases: [\n '쇼핑몰 상품 가격 필터 (예: 10,000원 ~ 150,000원)',\n '대출 금액 및 상환 기간 설정 시뮬레이터',\n '미디어 플레이어 음량 및 재생 위치 조절',\n '화면 밝기, 폰트 크기 등 사용자 개인화 설정'\n ],\n usagePatterns: [\n '슬라이더 조절 중 현재 선택된 수치를 Thumb 상단 툴팁이나 인접 인풋 필드에 실시간으로 표시합니다.',\n '최소값(min), 최대값(max), 현재값(value)을 트랙 양 끝에 라벨로 배치하여 직관성을 높입니다.'\n ],\n dosAndDonts: [\n {\n do: '원하는 값에 딱 맞춰 떨어지도록 적절한 step(예: 1,000원 단위, 5% 단위)을 설정합니다.',\n dont: '정밀한 숫자를 직접 입력해야 하는 필드에 슬라이더만 단독으로 제공하지 마세요.'\n }\n ],\n relatedPatternIds: ['saas-dashboard', 'ecommerce-checkout'],\n propsSpec: [\n { name: 'value', type: 'number', defaultValue: '50', description: '현재 슬라이더 수치' },\n { name: 'min', type: 'number', defaultValue: '0', description: '최소값' },\n { name: 'max', type: 'number', defaultValue: '100', description: '최대값' },\n { name: 'step', type: 'number', defaultValue: '1', description: '단계별 증감 폭' },\n { name: 'onChange', type: '(val: number) => void', defaultValue: 'undefined', description: '수치 변경 콜백' }\n ],\n htmlSnippet: `<div class=\"atom-slider\">\n <input type=\"range\" class=\"atom-slider-input\" min=\"0\" max=\"100\" value=\"50\" />\n</div>`,\n reactSnippet: `import { Slider } from '@/components/ui/slider';\nimport { useState } from 'react';\n\nexport function SliderDemo() {\n const [val, setVal] = useState(50);\n return <Slider value={val} onChange={setVal} min={0} max={100} />;\n}`,\n vueSnippet: `<template>\n <AtomSlider v-model=\"volume\" :min=\"0\" :max=\"100\" />\n</template>`\n },\n {\n id: 'avatar',\n name: '아바타 (User Avatar & Stack)',\n category: 'data',\n source: 'shadcn + radix-ui',\n description: '사용자 프로필 이미지, 이미지 로딩 실패 시 이니셜 폴백, 접속 상태 배지 및 중첩 아바타 스택 지원',\n callout: {\n type: 'tip',\n title: '이미지 실패 시 즉각적 Fallback',\n text: '프로필 이미지가 깨지거나 없을 때는 사용자의 이름 앞 글자(이니셜)를 브랜드 컬러 배경 위에 깔끔하게 띄워 시각적 결함을 방지합니다.'\n },\n useCases: [\n '글로벌 헤더 우측 상단의 내 프로필 메뉴 아이콘',\n '댓글 작성자 및 채팅 대화 상대 프로필',\n '프로젝트 협업 멤버 목록 및 배정자 아바타 스택 (+3명 등)',\n '온라인/오프라인 접속 상태를 나타내는 상태 점(Green Dot)'\n ],\n usagePatterns: [\n '원형(Circular) 형태를 기본으로 하되, 팀/조직이나 브랜드 로고는 둥근 사각형(Rounded Rect) 형태를 권장합니다.',\n '협업 도구에서는 여러 아바타가 겹쳐진 아바타 스택(Overlap Stack)으로 공간을 절약합니다.'\n ],\n dosAndDonts: [\n {\n do: 'alt 속성에 사용자 이름을 명시하여 스크린리더가 누구의 프로필인지 읽을 수 있게 합니다.',\n dont: '이미지가 로드되는 동안 깨진 이미지 아이콘이 화면에 그대로 노출되게 두지 마세요.'\n }\n ],\n relatedPatternIds: ['saas-dashboard'],\n propsSpec: [\n { name: 'src', type: 'string', defaultValue: \"''\", description: '프로필 이미지 URL' },\n { name: 'alt', type: 'string', defaultValue: \"''\", description: '사용자 이름/대체 텍스트' },\n { name: 'fallback', type: 'string', defaultValue: \"''\", description: '대체 이니셜 (예: 김민수 -> KM)' },\n { name: 'size', type: \"'sm' | 'md' | 'lg' | 'xl'\", defaultValue: \"'md'\", description: '아바타 크기' },\n { name: 'status', type: \"'online' | 'offline' | 'busy'\", defaultValue: 'undefined', description: '접속 상태 표시' }\n ],\n htmlSnippet: `<div class=\"atom-avatar atom-avatar-md\">\n <img src=\"https://images.unsplash.com/photo-1534528741775-53994a69daeb\" alt=\"이지은\" class=\"atom-avatar-img\" />\n <span class=\"atom-avatar-status atom-avatar-status-online\"></span>\n</div>`,\n reactSnippet: `import { Avatar } from '@/components/ui/avatar';\n\nexport function AvatarDemo() {\n return (\n <div className=\"flex items-center gap-3\">\n <Avatar src=\"/user.jpg\" alt=\"김토스\" fallback=\"KT\" size=\"md\" status=\"online\" />\n <Avatar fallback=\"JD\" size=\"md\" />\n </div>\n );\n}`,\n vueSnippet: `<template>\n <AtomAvatar src=\"/user.jpg\" alt=\"홍길동\" fallback=\"HG\" status=\"online\" />\n</template>`\n },\n {\n id: 'progress',\n name: '진행도 (Progress Bar & Step)',\n category: 'feedback',\n source: 'shadcn + bootstrap',\n description: '작업의 완료 진행률(%) 또는 다단계 위저드의 현재 단계를 시각적으로 전달하는 프로그레스 바',\n callout: {\n type: 'tip',\n title: '접근성(A11y) 실시간 값 전달',\n text: 'role=\"progressbar\"와 함께 aria-valuenow, aria-valuemin, aria-valuemax를 동기화하여 스크린리더에 진행률을 전달하세요.'\n },\n useCases: [\n '대용량 파일 업로드/다운로드 전송률 게이지',\n '회원가입, 신용대출 심사, 설문조사 등 1/4단계 스텝 진행도',\n '크라우드펀딩 모금 목표 달성률 (예: 124% 달성)',\n '스토리지 용량 사용량 (예: 15GB 중 12GB 사용)'\n ],\n usagePatterns: [\n '진행률이 100%에 도달하면 색상을 성공(Emerald) 컬러로 전환하여 완결성을 부여합니다.',\n '서버 응답 대기 중 진행률을 알 수 없을 때는 무한 왕복하는 인디터미닛(Indeterminate) 애니메이션을 적용합니다.'\n ],\n dosAndDonts: [\n {\n do: '바 우측이나 상단에 \"75%\"와 같이 구체적인 숫자를 함께 표기합니다.',\n dont: '진행률이 0%일 때 바 전체가 사라져 어디에 게이지가 있는지 모르게 하지 마세요.'\n }\n ],\n relatedPatternIds: ['fintech-transfer', 'ecommerce-checkout'],\n propsSpec: [\n { name: 'value', type: 'number', defaultValue: '0', description: '현재 진행 수치 (0~100)' },\n { name: 'max', type: 'number', defaultValue: '100', description: '최대 수치' },\n { name: 'variant', type: \"'primary' | 'success' | 'warning'\", defaultValue: \"'primary'\", description: '진행도 바 색상' },\n { name: 'indeterminate', type: 'boolean', defaultValue: 'false', description: '수치 미정 무한 애니메이션 모드' }\n ],\n htmlSnippet: `<div class=\"atom-progress\" role=\"progressbar\" aria-valuenow=\"70\" aria-valuemin=\"0\" aria-valuemax=\"100\">\n <div class=\"atom-progress-bar atom-progress-primary\" style=\"width: 70%\"></div>\n</div>`,\n reactSnippet: `import { Progress } from '@/components/ui/progress';\n\nexport function ProgressDemo() {\n return <Progress value={75} variant=\"primary\" showLabel />;\n}`,\n vueSnippet: `<template>\n <AtomProgress :value=\"uploadPercent\" variant=\"success\" />\n</template>`\n },\n {\n id: 'skeleton',\n name: '스켈레톤 로더 (Skeleton Shimmer)',\n category: 'feedback',\n source: 'shadcn + tailwind',\n description: '콘텐츠 로딩 중 화면 깜빡임을 방지하고 레이아웃 골격을 은은한 시머(Shimmer) 애니메이션으로 미리 보여주는 플레이스홀더',\n callout: {\n type: 'tip',\n title: '체감 로딩 속도(Perceived Performance)',\n text: '빙글빙글 도는 스피너보다 실제 렌더링될 카드와 텍스트 모양의 스켈레톤을 노출할 때 사용자가 체감하는 대기 시간이 최대 40% 단축됩니다.'\n },\n useCases: [\n '피드 리스트, 뉴스 카드, 상품 썸네일 최초 로드 시',\n '사용자 프로필 및 대시보드 위젯 API 패치 대기 중',\n '테이블 데이터 행(Row) 비동기 로딩 플레이스홀더',\n '댓글 영역 로딩 대기 상태'\n ],\n usagePatterns: [\n '실제 노출될 컴포넌트의 가로/세로/라운딩 비율과 최대한 1:1로 일치시켜 레이아웃 쉬프트(CLS)를 제로화합니다.'\n ],\n dosAndDonts: [\n {\n do: '텍스트 라인은 3줄 중 마지막 줄의 너비를 60% 정도로 줄여 실제 문단처럼 보이게 합니다.',\n dont: '스켈레톤의 애니메이션을 너무 빠르거나 번쩍이게 만들어 사용자 눈을 피로하게 하지 마세요.'\n }\n ],\n relatedPatternIds: ['saas-dashboard', 'ecommerce-checkout'],\n propsSpec: [\n { name: 'width', type: 'string | number', defaultValue: \"'100%'\", description: '너비' },\n { name: 'height', type: 'string | number', defaultValue: \"'1rem'\", description: '높이' },\n { name: 'rounded', type: \"'sm' | 'md' | 'lg' | 'full'\", defaultValue: \"'md'\", description: '모서리 곡률' }\n ],\n htmlSnippet: `<div class=\"atom-skeleton-card\">\n <div class=\"atom-skeleton atom-skeleton-circle\" style=\"width: 48px; height: 48px\"></div>\n <div class=\"atom-skeleton atom-skeleton-text\" style=\"width: 80%\"></div>\n <div class=\"atom-skeleton atom-skeleton-text\" style=\"width: 50%\"></div>\n</div>`,\n reactSnippet: `import { Skeleton } from '@/components/ui/skeleton';\n\nexport function SkeletonDemo() {\n return (\n <div className=\"flex items-center gap-3\">\n <Skeleton width=\"48px\" height=\"48px\" rounded=\"full\" />\n <div className=\"space-y-2 flex-1\">\n <Skeleton width=\"70%\" height=\"16px\" />\n <Skeleton width=\"40%\" height=\"12px\" />\n </div>\n </div>\n );\n}`,\n vueSnippet: `<template>\n <div class=\"flex gap-3\">\n <AtomSkeleton width=\"40px\" height=\"40px\" rounded=\"full\" />\n <AtomSkeleton width=\"80%\" height=\"20px\" />\n </div>\n</template>`\n },\n {\n id: 'breadcrumb',\n name: '브레드크럼 (Breadcrumb Navigation)',\n category: 'navigation',\n source: 'shadcn + bootstrap',\n description: '웹사이트의 정보 구조(IA)에서 사용자의 현재 위치를 계층 경로로 나타내고 상위 단계로 즉시 이동할 수 있는 탐색 경로',\n callout: {\n type: 'tip',\n title: '접근성(A11y)과 SEO 구조화 데이터',\n text: '<nav aria-label=\"Breadcrumb\"> 태그를 사용하고 현재 마지막 페이지에는 aria-current=\"page\"를 지정하여 검색엔진과 스크린리더를 모두 만족시킵니다.'\n },\n useCases: [\n '전자상거래 쇼핑몰의 카테고리 계층 (홈 > 여성패션 > 아우터 > 코트)',\n '개발자 기술 문서 계층 (Docs > Components > Form > Calendar)',\n '관리자 대시보드의 하위 폴더 및 세부 설정 탐색',\n '부동산 매물 계층 (서울시 > 강남구 > 역삼동)'\n ],\n usagePatterns: [\n '구분자(Separator)로는 슬래시(/) 또는 우측 꺾쇠(Chevron Right >) 아이콘을 사용하여 시각적 흐름을 안내합니다.',\n '모바일 환경에서 경로가 너무 길 경우 중간 단계를 드롭다운 또는 말줄임표(...)로 축약합니다.'\n ],\n dosAndDonts: [\n {\n do: '경로의 마지막 항목은 현재 머물고 있는 페이지이므로 클릭할 수 없는 일반 텍스트로 처리합니다.',\n dont: '1단계 깊이의 얕은 페이지에 불필요하게 브레드크럼을 남발하지 마세요.'\n }\n ],\n relatedPatternIds: ['developer-docs', 'ecommerce-checkout'],\n propsSpec: [\n { name: 'items', type: 'Array<{ label: string; href?: string }>', defaultValue: '[]', description: '경로 단계별 라벨 및 링크 배열' },\n { name: 'separator', type: 'string | ReactNode', defaultValue: \"'/'\", description: '항목 간 구분자' }\n ],\n htmlSnippet: `<nav class=\"atom-breadcrumb\" aria-label=\"브레드크럼\">\n <ol class=\"atom-breadcrumb-list\">\n <li class=\"atom-breadcrumb-item\"><a href=\"/\">홈</a></li>\n <li class=\"atom-breadcrumb-separator\">/</li>\n <li class=\"atom-breadcrumb-item\"><a href=\"/components\">컴포넌트</a></li>\n <li class=\"atom-breadcrumb-separator\">/</li>\n <li class=\"atom-breadcrumb-item atom-breadcrumb-current\" aria-current=\"page\">캘린더</li>\n </ol>\n</nav>`,\n reactSnippet: `import { Breadcrumb } from '@/components/ui/breadcrumb';\n\nconst PATH = [\n { label: '홈', href: '/' },\n { label: '문서', href: '/guide' },\n { label: '컴포넌트' }\n];\n\nexport function BreadcrumbDemo() {\n return <Breadcrumb items={PATH} />;\n}`,\n vueSnippet: `<template>\n <AtomBreadcrumb :items=\"pathItems\" />\n</template>`\n },\n {\n id: 'separator',\n name: '디바이더 (Separator & Divider)',\n category: 'data',\n source: 'radix-ui + shadcn',\n description: '콘텐츠 그룹이나 UI 요소 간의 시각적 경계를 깔끔하게 나누는 가로/세로 시멘틱 구분선',\n callout: {\n type: 'tip',\n title: '시멘틱 역할(role=\"separator\")',\n text: '단순 장식용 구분선일 때는 aria-hidden=\"true\"를, 의미 있는 구획 분리일 때는 role=\"separator\" 및 aria-orientation 속성을 지정합니다.'\n },\n useCases: [\n '드롭다운 메뉴나 네비게이션 내 계정 설정 / 로그아웃 사이의 경계선',\n '폼 영역에서 간편 로그인(SNS)과 일반 이메일 입력 사이의 \"또는(OR)\" 라벨 구분선',\n '헤더 메뉴 항목들 사이의 세로 버티컬 바(|)',\n '카드 내 헤더, 본문, 푸터 액션 영역 분리'\n ],\n usagePatterns: [\n '미니멀 디자인에서는 너무 짙은 검은색 선 대신 서브틀(Subtle) 테마 토큰을 사용하여 부드럽게 영역을 분리합니다.'\n ],\n dosAndDonts: [\n {\n do: '가로(Horizontal)와 세로(Vertical) 방향에 맞는 적절한 마진과 높이를 부여합니다.',\n dont: '구분선을 너무 굵고 어둡게 만들어 콘텐츠보다 눈에 띄게 하지 마세요.'\n }\n ],\n relatedPatternIds: ['saas-dashboard', 'developer-docs'],\n propsSpec: [\n { name: 'orientation', type: \"'horizontal' | 'vertical'\", defaultValue: \"'horizontal'\", description: '구분선 방향' },\n { name: 'label', type: 'string', defaultValue: \"''\", description: '구분선 중앙에 들어갈 인라인 라벨 (예: OR)' }\n ],\n htmlSnippet: `<div class=\"atom-separator atom-separator-horizontal\"></div>\n<div class=\"atom-separator-with-label\">\n <span>또는</span>\n</div>`,\n reactSnippet: `import { Separator } from '@/components/ui/separator';\n\nexport function SeparatorDemo() {\n return (\n <div className=\"space-y-4\">\n <div>섹션 A</div>\n <Separator label=\"또는\" />\n <div>섹션 B</div>\n </div>\n );\n}`,\n vueSnippet: `<template>\n <AtomSeparator orientation=\"horizontal\" />\n</template>`\n },\n {\n id: 'textarea',\n name: '텍스트에리어 (Textarea with Counter)',\n category: 'form',\n source: 'shadcn + bootstrap',\n description: '문의 내용, 댓글, 긴 본문 작성을 위한 다중 행 입력 필드 및 실시간 글자수 카운터 지원',\n callout: {\n type: 'tip',\n title: '입력 길이에 맞춘 자동 높이 조절',\n text: '고정된 높이에서 내부 스크롤이 생겨 글이 잘려 보이는 답답함을 없애기 위해 작성 내용에 맞춰 높이가 부드럽게 확장되는 auto-resize를 권장합니다.'\n },\n useCases: [\n '고객센터 1:1 문의사항 및 상세 피드백 작성',\n '블로그/커뮤니티 게시글 및 댓글 작성창',\n '배송 요청사항 및 상세 주소 입력',\n 'AI 프롬프트 입력창 (멀티라인)'\n ],\n usagePatterns: [\n '최대 글자수 제한이 있는 경우 우측 하단에 \"34 / 500자\"와 같은 카운터를 제공하여 초과 입력을 방지합니다.',\n '내용이 비어있을 때는 \"상세 내용을 입력해 주세요\"와 같은 안내 플레이스홀더를 제공합니다.'\n ],\n dosAndDonts: [\n {\n do: '에러 상태일 때는 인풋과 동일하게 붉은색 테두리와 하단 에러 메시지를 노출합니다.',\n dont: '모바일 화면에서 텍스트에리어가 너무 작아 두세 글자만 보이고 스크롤되게 만들지 마세요.'\n }\n ],\n relatedPatternIds: ['developer-docs', 'saas-dashboard'],\n propsSpec: [\n { name: 'value', type: 'string', defaultValue: \"''\", description: '입력된 텍스트' },\n { name: 'maxLength', type: 'number', defaultValue: 'undefined', description: '최대 글자수' },\n { name: 'rows', type: 'number', defaultValue: '4', description: '기본 노출 행 수' },\n { name: 'placeholder', type: 'string', defaultValue: \"''\", description: '안내 문구' },\n { name: 'onChange', type: '(val: string) => void', defaultValue: 'undefined', description: '입력값 변경 핸들러' }\n ],\n htmlSnippet: `<div class=\"atom-textarea-group\">\n <textarea class=\"atom-textarea\" rows=\"4\" placeholder=\"내용을 입력하세요\"></textarea>\n <div class=\"atom-textarea-counter\">0 / 500자</div>\n</div>`,\n reactSnippet: `import { Textarea } from '@/components/ui/textarea';\nimport { useState } from 'react';\n\nexport function TextareaDemo() {\n const [text, setText] = useState('');\n return <Textarea value={text} onChange={setText} maxLength={500} placeholder=\"피드백을 남겨주세요.\" />;\n}`,\n vueSnippet: `<template>\n <AtomTextarea v-model=\"comment\" :max-length=\"300\" />\n</template>`\n }\n];\n","export interface PatternVariant {\n id: string;\n name: string;\n description: string;\n checklist: string[];\n antiPatterns: string[];\n markdown: string;\n}\n\nexport type PatternPlatform = 'web' | 'mobile';\n\nexport interface PatternItem {\n id: string;\n title: string;\n categoryName: string;\n badge: string;\n platform: PatternPlatform;\n wireframeType: string;\n iconName: 'dashboard' | 'chat' | 'onboarding' | 'uploader' | 'kyc' | 'blog' | 'map' | 'flight' | 'fintech' | 'commerce' | 'search' | 'docs' | 'settings';\n summary: string;\n recommendedComponentIds: string[];\n checklist: string[];\n antiPatterns: string[];\n variants: PatternVariant[];\n}\n\nexport const PATTERNS_COLLECTION: PatternItem[] = [\n {\n id: 'saas-dashboard',\n platform: 'web',\n wireframeType: 'dashboard-grid',\n title: 'SaaS 데이터 분석 & KPI 대시보드',\n categoryName: 'Analytics & SaaS',\n badge: '대시보드/데이터',\n iconName: 'dashboard',\n summary: '기간 필터(7d/30d), 4대 핵심 KPI 지표 카드, 전주 대비 증감 트렌드(+14.8%), 일별 추이 바 차트 및 정렬 가능한 데이터 테이블.',\n recommendedComponentIds: ['card', 'badge', 'button', 'tabs', 'table'],\n checklist: [\n 'KPI 요약 카드마다 전주/전월 대비 증감률(+, -) 및 시각적 색상(초록/빨강) 인디케이터 제공',\n '날짜 범위 필터(오늘, 지난 7일, 지난 30일, 직접 설정) 원클릭 전환 탭 배치',\n '차트 로딩 시 레이아웃 무너짐(CLS)을 방지하는 차트 전용 스켈레톤 UI 지원',\n '데이터 테이블의 컬럼 정렬(오름차순/내림차순) 및 상태 배지(활성/대기/만료) 명확화'\n ],\n antiPatterns: [\n '숫자 지표가 너무 많아 한눈에 핵심 성과를 파악할 수 없는 정보 과부하(Visual Noise)',\n '데이터가 0건일 때 차트가 에러 나거나 깨진 채로 방치되는 빈 상태(Empty State) 결여',\n '모바일 환경에서 테이블 가로 스크롤 안내가 없어 오른쪽 컬럼이 잘려 보이는 현상'\n ],\n variants: [\n {\n id: 'kpi-analytics-view',\n name: '비즈니스 성과 KPI 카드 & 시계열 차트',\n description: '의사결정권자가 서비스 핵심 성과 지표(ARR, MAU, Churn)를 한눈에 파악하고 드릴다운할 수 있는 대시보드 패턴.',\n checklist: [\n '4대 핵심 지표 카드 최상단 배치',\n '시계열 차트 호버 툴팁(Tooltip) 지원',\n '모바일에서는 2열 그리드로 자동 리플로우'\n ],\n antiPatterns: ['범례(Legend) 설명이 누락되어 색상이 무엇을 의미하는지 모름'],\n markdown: `# [UX Pattern] B2B SaaS 성과 분석 대시보드 패턴\n\n## 1. 개요\n핵심 비즈니스 지표(KPI)와 시계열 트렌드를 시각화하여 사용자가 빠른 의사결정을 내릴 수 있도록 돕습니다.\n\n## 2. 필수 구현 규칙\n- **KPI Metrics Card**: 수치 + 단위 + 전기 대비 증감(Badge).\n- **Date Range Picker / Tabs**: 7일, 30일, 90일 토글.\n- **Data Table**: 정렬 가능한 헤더, 페이지네이션 또는 무한 스크롤.\n`\n }\n ]\n },\n {\n id: 'chat-support',\n platform: 'mobile',\n wireframeType: 'chat-stream',\n title: '1:1 고객지원 & AI 챗봇 상담 패턴',\n categoryName: 'Communication',\n badge: '채팅/CS',\n iconName: 'chat',\n summary: '말풍선 메시지 스트림, 추천 빠른 질문 칩(Quick Reply), 파일 첨부, 타이핑 중 인디케이터, 상담원 연결 상태 안내.',\n recommendedComponentIds: ['input', 'button', 'badge', 'card', 'alert'],\n checklist: [\n '새 메시지 수신 시 자동으로 스크롤을 최하단으로 부드럽게 내리는 자동 스크롤(Auto-scroll)',\n '사용자가 자주 묻는 질문(FAQ)을 원클릭으로 보낼 수 있는 가로 스크롤 추천 칩 제공',\n '상대방(또는 AI)이 응답 작성 중일 때 3개 점이 깜빡이는 타이핑 애니메이션(Typing Indicator) 노출',\n '이미지/캡처 파일 첨부 시 전송 전 미리보기 및 용량 초과 인라인 에러'\n ],\n antiPatterns: [\n '메시지를 보낸 후 전송 성공 여부를 알 수 없어 사용자가 같은 질문을 연타하는 문제',\n '봇이 답변하지 못했을 때 인간 상담원 인계 경로(Escalation)를 제공하지 않음',\n '모바일 키보드가 올라올 때 입력창이 키보드 뒤로 숨어버리는 뷰포트 버그'\n ],\n variants: [\n {\n id: 'live-chatbot-stream',\n name: '실시간 스트리밍 대화형 인터페이스',\n description: 'AI 모델의 토큰 단위 스트리밍 응답과 퀵 리플라이 칩을 결합한 모던 대화창.',\n checklist: ['스트리밍 도중 마크다운 실시간 파싱', '답변 복사 및 재생성 액션 버튼 제공'],\n antiPatterns: ['스트리밍 중 사용자의 추가 입력을 완전히 차단해버리는 행위'],\n markdown: `# [UX Pattern] 1:1 고객지원 & AI 챗봇 패턴\n\n## 1. 개요\n사용자의 문의 사항을 실시간 대화 형태로 수렴하고 AI 어시스턴트가 즉시 해결합니다.\n\n## 2. 필수 UX 명세\n- **Message Bubble Layout**: 송신자 우측 정렬(Primary 컬러), 수신자 좌측 정렬(Muted Surface).\n- **Quick Actions**: 가로 스크롤 추천 질문 칩.\n`\n }\n ]\n },\n {\n id: 'kyc-verification',\n platform: 'mobile',\n wireframeType: 'kyc-camera',\n title: '본인확인 & KYC 인증신청 패턴',\n categoryName: 'Identity & Security',\n badge: '인증/보안',\n iconName: 'kyc',\n summary: '휴대폰 SMS/PASS 인증, 신분증/서류 촬영 업로드, 필수/선택 약관 일괄 동의, 실시간 심사 상태 안내.',\n recommendedComponentIds: ['input', 'button', 'selection', 'card', 'badge', 'alert'],\n checklist: [\n '휴대폰 6자리 인증번호 입력 시 3분 카운트다운 타이머 및 재전송(Resend) CTA 상시 제공',\n '[전체 동의] 토글 시 하위 필수(14세 이상, 개인정보 등) 및 선택 약관 일괄 동기화',\n '신분증 파일 업로드 시 즉시 파일명 및 미리보기 섬네일 노출, 10MB 초과 파일 인라인 경고',\n '제출 완료 후 [심사 대기중 / 보완 필요 / 승인 완료] 단계별 프로그레스 스텝 바 제공'\n ],\n antiPatterns: [\n '인증번호 시간 초과 시 사용자에게 아무런 에러 메시지 없이 무응답 방치',\n '필수 약관과 마케팅 선택 약관을 묶어두어 강제 동의하게 유도',\n '파일 업로드 용량 제한을 업로드 실패 후에야 alert 팝업으로 띄우는 행위'\n ],\n variants: [\n {\n id: 'otp-id-verification',\n name: 'SMS OTP & 신분증 업로드 플로우',\n description: '금융 및 본인확인이 필요한 서비스에서 이탈 없이 신속히 인증을 완결하는 패턴.',\n checklist: ['자동 완성 지원(autocomplete=\"one-time-code\")', '서류 업로드 드래그앤드롭 지원'],\n antiPatterns: ['백스페이스 입력 시 이전 인풋으로 커서가 이동하지 않음'],\n markdown: `# [UX Pattern] 본인확인 & KYC 인증 플로우\n\n## 1. 개요\n금융, 결제, 성인인증 서비스에서 사용자의 신원을 안전하게 검증합니다.\n\n## 2. 필수 규약\n- **Timer**: 180초 카운트다운. 만료 시 입력 비활성화 및 재전송 활성화.\n- **Terms Agreement**: 전체 동의 토글 시 자식 항목 일괄 변경.\n`\n }\n ]\n },\n {\n id: 'blog-editor',\n platform: 'web',\n wireframeType: 'editor-toolbar',\n title: '블로그 글 작성 & 발행 에디터 패턴',\n categoryName: 'Content & Publishing',\n badge: '콘텐츠/에디터',\n iconName: 'blog',\n summary: '제목/본문 리치 에디터, 태그 칩 입력기, 커버 이미지 등록, 30초 무중단 자동 임시저장, 공개 설정 모달.',\n recommendedComponentIds: ['input', 'button', 'badge', 'dialog', 'selection', 'tabs'],\n checklist: [\n '30초 주기 무중단 자동 임시저장(Autosave) 및 \"마지막 저장: 방금 전\" 상태 실시간 표기',\n '제목 입력란에서 엔터 키 입력 시 본문 첫 단락으로 포커스 자동 전환',\n '태그 입력 시 쉼표/엔터 입력 즉시 캡슐 칩(Chip)으로 변환 및 개별 삭제(X) 지원',\n '[발행하기] 클릭 시 공개 범위(전체/비공개/보호) 및 URL 슬러그, 발행 예약 일시 설정 모달 팝업'\n ],\n antiPatterns: [\n '사용자가 실수로 뒤로가기나 탭을 닫을 때 작성 중인 본문 손실 경고창 미제공',\n '에디터 본문 폰트 크기가 실제 발행된 화면과 달라 사용자가 레이아웃을 오인함',\n '대표 이미지를 등록하지 않았을 때 기본 Fallback 이미지 규칙 부재'\n ],\n variants: [\n {\n id: 'markdown-rich-editor',\n name: '리치 마크다운 에디터 & 메타데이터 발행',\n description: '글 작성자의 몰입감을 유지하면서 태그, 슬러그, 발행 일정을 손쉽게 설정하는 패턴.',\n checklist: ['단축키(Ctrl+B, Ctrl+I) 지원', '이미지 붙여넣기(Paste) 자동 업로드'],\n antiPatterns: ['에디터 스크롤과 미리보기 스크롤이 비동기되어 엉뚱한 위치를 보여줌'],\n markdown: `# [UX Pattern] 블로그 글 작성 및 발행 패턴\n\n## 1. 개요\n콘텐츠 제작자가 방해받지 않고 글을 집필하고 안전하게 발행합니다.\n`\n }\n ]\n },\n {\n id: 'map-location',\n platform: 'mobile',\n wireframeType: 'map-sheet',\n title: '지도 & 위치 기반 POI 탐색 패턴',\n categoryName: 'Location & Mobility',\n badge: '지도/로케이션',\n iconName: 'map',\n summary: '인터랙티브 지도 뷰포트, 현 지도 위치에서 재검색, 핀(Marker) 인터랙션, 바텀시트 장소 상세 정보.',\n recommendedComponentIds: ['card', 'button', 'badge', 'input', 'sheet'],\n checklist: [\n '지도 패닝/줌 이동 시 상단에 \"현 위치에서 재검색\" 플로팅 칩 자동 노출',\n '지도 위 핀 마커 터치 시 하단 바텀시트가 매끄럽게 슬라이드 업되며 매장 핵심 정보 노출',\n '현재 시각 기준 [영업 중 / 영업 종료] 여부를 컬러 배지(초록/회색)로 명확히 표시',\n '모바일 한 손 조작을 위한 \"길찾기\" 및 \"전화걸기\" 주요 CTA 버튼 상시 하단 고정'\n ],\n antiPatterns: [\n '지도를 스크롤할 때 웹 페이지 전체가 함께 위아래로 밀려 지도가 조작되지 않는 현상',\n '마커가 겹칠 때 클러스터링(묶음) 처리가 안 되어 화면이 핀으로 뒤덮임',\n '바텀시트가 전체 화면을 가려 지도 컨텍스트를 잃어버리는 현상'\n ],\n variants: [\n {\n id: 'poi-bottom-sheet',\n name: '핀 마커 클릭 & 슬라이딩 바텀시트',\n description: '지도의 넓은 시야를 확보하면서 장소의 운영시간과 길찾기를 제공하는 패턴.',\n checklist: ['바텀시트 2단계 높이 제어(스냅 포인트)', '거리 순 정렬 필터'],\n antiPatterns: ['지도 로딩 중 아무런 안내 없이 회색 타일만 노출'],\n markdown: `# [UX Pattern] 지도 및 위치 기반 POI 탐색 패턴`\n }\n ]\n },\n {\n id: 'flight-booking',\n platform: 'web',\n wireframeType: 'flight-swap',\n title: '항공권 / 여행 일정 예약 패턴',\n categoryName: 'Travel & Booking',\n badge: '예약/일정',\n iconName: 'flight',\n summary: '출발지-도착지 원클릭 스왑(Swap), 왕복/편도 탭, 캘린더 날짜 범위 및 승객 수(성인/소아) 카운터.',\n recommendedComponentIds: ['tabs', 'input', 'button', 'badge', 'card', 'dialog'],\n checklist: [\n '출발지와 도착지를 한 번에 맞바꾸는 인터랙티브 360도 스왑 버튼 제공',\n '왕복 선택 시 [가는 날 - 오는 날] 날짜 범위를 한 화면에서 선택하는 듀얼 캘린더',\n '성인/소아/유아 승객 수 증감 (+/-) 카운터 및 유아 나이 기준 툴팁 제공',\n '검색 중일 때 로딩 스켈레톤 및 직항/경유, 가격대별 필터 칩 상단 배치'\n ],\n antiPatterns: [\n '오는 날을 가는 날보다 앞선 과거 날짜로 선택할 수 있게 방치하는 오류',\n '출발지 선택 시 공항 코드(ICN, GMP)와 한글 도시명 검색이 분리되어 검색 실패 유발',\n '유류할증료/세금이 최종 결제 단계에서 갑자기 추가되어 가격 불신 초래'\n ],\n variants: [\n {\n id: 'flight-search-bar',\n name: '멀티 파라미터 항공권 검색 폼',\n description: '복잡한 날짜, 승객, 공항 조합을 오차 없이 빠르게 설정하는 패턴.',\n checklist: ['최근 검색 여정 자동 저장', '특가 캘린더 가격 뱃지'],\n antiPatterns: ['날짜 선택 시 주말/공휴일 색상 미구분'],\n markdown: `# [UX Pattern] 항공권 검색 및 예약 플로우`\n }\n ]\n },\n {\n id: 'onboarding-wizard',\n platform: 'mobile',\n wireframeType: 'wizard-steps',\n title: '온보딩 튜토리얼 & 다단계 스텝 위저드',\n categoryName: 'User Onboarding',\n badge: '온보딩/가입',\n iconName: 'onboarding',\n summary: '진행률 프로그레스 바(1~3단계), 역할 선택 카드(디자이너/엔지니어/기획자), 이전/다음 유효성 검사, 건너뛰기(Skip).',\n recommendedComponentIds: ['card', 'button', 'badge', 'selection', 'input'],\n checklist: [\n '현재 단계와 총 단계를 명시하는 상단 스텝 프로그레스 바(예: 2/3단계)',\n '선택지를 큰 카드 형태로 배치하여 모바일 터치 타깃(최소 48px) 극대화',\n '선택하지 않고 다음으로 넘어가지 못하도록 버튼 비활성화(Disabled) 상태 명확화',\n '필수가 아닌 질문의 경우 우상단 \"건너뛰기\" 버튼을 제공하여 이탈률 방지'\n ],\n antiPatterns: [\n '이전 단계로 돌아갔을 때 이미 입력한 데이터가 전부 초기화되는 버그',\n '단계가 총 몇 단계인지 알려주지 않아 사용자가 끝없는 설문처럼 느껴 이탈',\n '각 질문의 선택 이유를 설명하지 않아 사용자가 개인정보 수집에 거부감을 느낌'\n ],\n variants: [\n {\n id: 'multi-step-form',\n name: '단계별 정보 수집 위저드',\n description: '복잡한 가입/온보딩 프로세스를 청킹(Chunking)하여 완료율을 극대화하는 패턴.',\n checklist: ['엔터 키 입력 시 다음 단계로 자동 진행', '뒤로가기 시 상태 완벽 복원'],\n antiPatterns: ['진행 중 새로고침 시 1단계로 강제 리셋'],\n markdown: `# [UX Pattern] 온보딩 및 다단계 위저드 패턴`\n }\n ]\n },\n {\n id: 'file-uploader',\n platform: 'web',\n wireframeType: 'uploader-dropzone',\n title: '파일 드래그앤드롭 업로더 & 미디어 관리',\n categoryName: 'File & Media',\n badge: '파일/업로드',\n iconName: 'uploader',\n summary: '대형 점선 드롭존(Dropzone), 실시간 업로드 진행률 바(0%~100%), 파일 형식/용량 검증, 첨부 파일 리스트 및 삭제.',\n recommendedComponentIds: ['card', 'button', 'badge', 'alert', 'input'],\n checklist: [\n '파일을 드롭존 위로 드래그했을 때 테두리 색상과 배경이 하이라이트되는 시각 피드백',\n '허용 확장자(JPG, PNG, PDF) 및 최대 파일 크기(예: 최대 20MB)를 드롭존 내 명시',\n '업로드 중인 파일마다 프로그레스 바 및 중단/취소(X) 버튼 제공',\n '업로드 완료된 파일의 파일명, 용량, 성공 아이콘 및 개별 삭제 기능'\n ],\n antiPatterns: [\n '허용되지 않은 확장자 파일을 올렸을 때 파일 선택 창이 닫힌 뒤에야 alert을 띄움',\n '업로드 중 브라우저 탭을 닫으려고 할 때 경고창을 띄우지 않아 업로드 중단',\n '이미지 파일인데 썸네일 미리보기를 제공하지 않고 텍스트 파일명만 노출함'\n ],\n variants: [\n {\n id: 'dropzone-progress-list',\n name: '드래그앤드롭존 & 진행률 리스트',\n description: '다중 대용량 파일 첨부 시 시각적 안정성과 진행 상황을 전달하는 패턴.',\n checklist: ['복수 파일 동시 업로드 병렬 처리', '실패 시 재시도(Retry) 버튼'],\n antiPatterns: ['업로드 진행률이 멈춘 채 얼어붙는 현상'],\n markdown: `# [UX Pattern] 파일 드래그앤드롭 업로더 패턴`\n }\n ]\n },\n {\n id: 'fintech-transfer',\n platform: 'mobile',\n wireframeType: 'keypad-transfer',\n title: '계좌 송금 & 간편 이체 패턴',\n categoryName: 'Fintech & Pay',\n badge: '핀테크/이체',\n iconName: 'fintech',\n summary: '대형 금액 입력(실시간 한글 변환), 수수료 면제 안내 배지, 빠른 출금 계좌 선택, 확인 모달 및 완료 인터랙션.',\n recommendedComponentIds: ['button', 'input', 'dialog', 'badge', 'card'],\n checklist: [\n '숫자 입력 시 \"5만 원\", \"150만 원\" 등 실시간 한글 금액 단위 동시 변환 노출',\n '출금 가능 잔액 초과 시 즉시 경고 텍스트 및 잔액 채우기 CTA 연계',\n '최종 송금 직전 받는 분 이름, 은행, 계좌번호를 재확인하는 2단계 확인 다이얼로그',\n '송금 성공 시 부드러운 체크 애니메이션과 잔액 갱신 및 카카오톡 영수증 공유 CTA'\n ],\n antiPatterns: [\n '금액 단위 콤마(, ) 서식이 입력 중에 깨져 사용자가 숫자를 헷갈리게 만듦',\n '확인 모달 없이 한 번 클릭으로 바로 돈이 빠져나가는 위험한 흐름',\n '네트워크 지연 시 송금 버튼을 연타하여 중복 이체 사고 발생'\n ],\n variants: [\n {\n id: 'two-step-transfer',\n name: '숫자 키패드 송금 & 이중 확인 모달',\n description: '오송금 위험을 원천 차단하면서 원터치로 송금을 완료하는 토스형 패턴.',\n checklist: ['최근 송금 계좌 즐겨찾기 칩', '생체 인증(지문/FaceID) 인터페이스 지원'],\n antiPatterns: ['은행 점검 시간 안내 없이 이체 실패 처리'],\n markdown: `# [UX Pattern] 계좌 송금 및 간편 이체 패턴`\n }\n ]\n },\n {\n id: 'ecommerce-checkout',\n platform: 'mobile',\n wireframeType: 'cart-sticky',\n title: '장바구니 & 주문 결제서 패턴',\n categoryName: 'Commerce & Order',\n badge: '커머스/결제',\n iconName: 'commerce',\n summary: '수량 증감(+/-) 실시간 금액 재계산, 쿠폰/적립금 인라인 적용, 간편결제 수단 선택, 하단 결제 CTA 고정 바.',\n recommendedComponentIds: ['card', 'button', 'input', 'badge', 'selection'],\n checklist: [\n '수량 증감(+/-) 시 배송비 및 총 결제 예정 금액 실시간 재계산',\n '보유 쿠폰 및 적립금 입력란에 [최대 사용] 원클릭 적용 버튼 제공',\n '스크롤 위치와 상관없이 결제 금액과 [OOO원 결제하기] 버튼을 화면 하단 고정(Sticky)',\n '품절 상품 발생 시 체크박스 자동 해제 및 품절 뱃지 명확히 표기'\n ],\n antiPatterns: [\n '수량을 바꿀 때마다 화면 전체가 깜빡이며 리로드되는 구식 방식',\n '최종 결제 금액에 배송비나 할인이 어떻게 계산되었는지 상세 내역 미표시',\n '결제 실패 시 장바구니에 담아둔 상품 정보가 전부 날아가는 현상'\n ],\n variants: [\n {\n id: 'sticky-checkout-bar',\n name: '주문서 결제 & 하단 고정 바',\n description: '결제 과정의 이탈을 줄이고 최종 결제 금액을 명료하게 유지하는 패턴.',\n checklist: ['간편결제 원클릭 탭 선택', '적립 예정 포인트 안내'],\n antiPatterns: ['결제 수단 선택 시 추가 수수료 숨김'],\n markdown: `# [UX Pattern] 이커머스 장바구니 및 결제 주문서 패턴`\n }\n ]\n },\n {\n id: 'search-empty',\n platform: 'web',\n wireframeType: 'search-empty',\n title: '실시간 검색 & Empty UX 패턴',\n categoryName: 'Discovery',\n badge: '탐색/복구',\n iconName: 'search',\n summary: '300ms 디바운스 입력, 검색어 즉시 초기화(X) 버튼, 결과 없음 시 복구 추천 태그 및 최근 검색어 제공.',\n recommendedComponentIds: ['input', 'badge', 'card', 'button'],\n checklist: [\n '300ms 디바운스 적용으로 타자 칠 때마다 서버에 무의미한 API 요청 방지',\n '결과가 없을 때 \"검색 결과가 없습니다\"와 함께 대안 추천 키워드 태그 3개 이상 제공',\n '입력창 우측 원클릭 클리어(X) 버튼 및 최근 검색어 기록 로컬 저장',\n '검색 중일 때는 인라인 스피너나 스켈레톤으로 진행 상태 명확화'\n ],\n antiPatterns: [\n '결과가 없을 때 하얀 백지 화면만 덜렁 노출하여 사용자를 이탈시킴',\n '타이핑 중 지우기(X) 버튼이 없어 백스페이스를 연타하게 만드는 불편함',\n '오타 입력 시 유사 검색어 추천(\"혹시 이것을 찾으셨나요?\") 미제공'\n ],\n variants: [\n {\n id: 'autocomplete-recovery',\n name: '실시간 자동완성 & 빈 상태 복구 흐름',\n description: '사용자가 오타를 내거나 결과가 없어도 서비스 이탈을 막는 회복탄력적 UX.',\n checklist: ['최근 검색어 삭제 기능', '인기 검색어 랭킹 표시'],\n antiPatterns: ['검색어가 1글자일 때 무조건 전체 DB를 조회하여 브라우저 렉 유발'],\n markdown: `# [UX Pattern] 실시간 검색 및 결과 없음 복구 패턴`\n }\n ]\n },\n {\n id: 'developer-docs',\n platform: 'web',\n wireframeType: 'docs-layout',\n title: '개발자 기술 문서 & API Docs 패턴',\n categoryName: 'Documentation & DX',\n badge: '기술문서/API',\n iconName: 'docs',\n summary: '좌측 계층 트리 내비게이션, 중앙 코드 스니펫(원클릭 복사/언어 탭), 인라인 API 파라미터 테이블, 우측 목차(On this page) 스크롤 스파이.',\n recommendedComponentIds: ['table', 'badge', 'tabs', 'button', 'card'],\n checklist: [\n '모든 코드 블록 상단에 프로그래밍 언어 배지 및 원클릭 복사(Copy) 피드백 제공',\n '전역 단축키(Cmd+K / Ctrl+K) 지원 문서 통합 검색 오버레이 제공',\n '현재 보고 있는 섹션을 우측 목차(TOC)에서 실시간 하이라이트하는 스크롤 스파이(Scroll Spy)',\n 'API 엔드포인트마다 HTTP Method 배지(GET/POST/DELETE) 및 요청/응답 파라미터 타입 표기'\n ],\n antiPatterns: [\n '긴 코드 블록에 가로 스크롤이 없어 오른쪽 코드가 강제로 잘려 보이는 현상',\n '검색 결과를 클릭했을 때 해당 앵커(#section)로 정확히 이동하지 않는 딥링크 누락',\n '버전 선택(v1, v2) 시 기존에 보고 있던 페이지 컨텍스트를 잃어버리는 현상'\n ],\n variants: [\n {\n id: 'api-reference-3col',\n name: '3단 분할 개발자 기술 레퍼런스',\n description: 'Stripe, Next.js 스타일. 좌측 탐색 사이드바, 중앙 상세 가이드, 우측 실시간 코드 예제 및 TOC.',\n checklist: ['코드 스니펫 cURL / JavaScript / Python 탭 전환', 'API 응답 JSON 구문 하이라이트'],\n antiPatterns: ['다크모드 지원 미비로 어두운 환경에서 코드 가독성 저하'],\n markdown: `# [UX Pattern] 개발자 기술 문서 & API 레퍼런스 패턴\n\n## 1. 개요\n개발자가 빠르게 라이브러리를 설치하고 API 규격을 확인하여 복사-붙여넣기로 즉시 연동할 수 있는 3단 기술 문서 레이아웃입니다.\n\n## 2. 필수 레이아웃 구조\n- **Left Column (Sidebar)**: 카테고리 트리, 버전 실렉터, 검색창\n- **Center Column (Content)**: 마크다운 렌더링, Callout(Note/Tip/Warning), 인터랙티브 코드 블록\n- **Right Column (TOC)**: 페이지 내 목차 (H2/H3 계층)\n\n## 3. 필수 인터랙션\n- \\`navigator.clipboard.writeText()\\`: 코드 복사 시 \"Copied!\" 툴팁 피드백.\n- \\`IntersectionObserver\\`: 본문 스크롤에 따른 목차 활성 링크 동기화.\n`\n }\n ]\n },\n {\n id: 'complex-form-settings',\n platform: 'web',\n wireframeType: 'complex-form',\n title: '복잡한 엔터프라이즈 환경설정 & 다단계 폼 패턴',\n categoryName: 'Settings & Configuration',\n badge: '복합 폼/환경설정',\n iconName: 'settings',\n summary: '섹션 청킹(좌측 네비게이션), 조건부 종속 입력(Progressive Disclosure), 실시간 인라인 유효성 검사, 하단 플로팅 미저장 변경사항(Unsaved Changes) 바, 파괴적 설정 안전장치.',\n recommendedComponentIds: ['input', 'selection', 'button', 'badge', 'alert', 'tabs', 'card'],\n checklist: [\n '정보 구조 청킹(Chunking): 좌측 고정 네비게이션으로 섹션(기본 설정, 보안 정책, 결제/웹훅 등)을 명확히 분리하여 인지 과부하 방지',\n '점진적 노출(Progressive Disclosure): \"고급 설정\" 또는 상위 토글 활성화 시에만 하위 조건부 인풋이 부드럽게 노출',\n '실시간 인라인 유효성 검증: Blur 및 디바운스 실시간 검사로 에러 위치와 해결 힌트를 필드 바로 밑에 명확히 표기',\n '미저장 변경사항 플로팅 바(Sticky Unsaved Bar): 필드 수정 시 화면 하단에 [저장되지 않은 변경사항이 있습니다 | 취소 | 저장] 바가 슬라이드 업',\n '파괴적 액션 2단계 안전장치: 데이터 삭제/API 재발급 등 위험 작업 시 명시적 텍스트 입력 확인(예: 프로젝트명 직접 입력) 다이얼로그 제공',\n '스마트 기본값(Sensible Defaults) & 헬퍼 툴팁: 복잡한 기술 용어 옆에 안내 툴팁과 원클릭 복사/생성 버튼 배치'\n ],\n antiPatterns: [\n '수십 개의 인풋을 스크롤 없이 단일 페이지에 일렬 배치하여 사용자에게 시각적 공포와 인지 과부하를 주는 형태',\n '제출 버튼을 눌렀을 때 화면 상단에서만 \"입력값을 확인하세요\"라는 모호한 alert을 띄우고 어디서 에러가 났는지 알려주지 않는 불친절함',\n '설정값을 바꿨는데 페이지 이동 시 경고 없이 작성 내용이 모두 증발하는 데이터 유실 버그',\n '비활성화된(Disabled) 필드인데 왜 비활성화되어 있는지 이유(상위 권한 필요, 필수 선행 조건 등)를 툴팁으로 설명하지 않음'\n ],\n variants: [\n {\n id: 'enterprise-settings-form',\n name: '엔터프라이즈 멀티 섹션 폼 & 조건부 필드',\n description: 'Vercel, Stripe, GitHub 스타일의 복잡한 시스템 설정 폼. 좌측 앵커 탭과 우측 본문, 실시간 검증 및 플로팅 세이브 바 지원.',\n checklist: [\n '수정 즉시 하단 플로팅 세이브 바 표시',\n 'URL 형식 검증 및 실시간 체크 아이콘',\n '토글 스위치에 따른 조건부 입력창 애니메이션 노출'\n ],\n antiPatterns: ['저장 버튼을 찾으려고 사용자가 페이지 맨 밑까지 스크롤해야 하는 피로감'],\n markdown: `# [UX Pattern] 복잡한 엔터프라이즈 환경설정 & 다단계 폼 패턴\n\n## 1. 패턴 개요\n수십 가지의 인풋, 셀렉트, 토글 스위치가 존재하는 복잡한 비즈니스 설정 화면에서 사용자의 인지 부하(Cognitive Load)를 최소화하고, 입력 오류와 데이터 유실을 방지하는 엔터프라이즈급 폼 설계 패턴입니다.\n\n## 2. 핵심 5대 UX 설계 원칙\n\n### 1) 점진적 공개 (Progressive Disclosure)\n- 상위 토글(예: \"웹훅 활성화\", \"2단계 인증 강제\")을 켰을 때만 종속된 하위 URL 입력창, 시크릿 키 등이 애니메이션과 함께 노출됩니다.\n- 초기 진입 시 화면의 시각적 노이즈를 70% 이상 줄여줍니다.\n\n### 2) 미저장 변경사항 고정 바 (Sticky Unsaved Changes Bar)\n- 사용자가 어떤 필드라도 수정(Dirty 상태)하면 화면 하단에 플로팅 바가 솟아오릅니다.\n- \\`[ 변경되지 않은 설정이 있습니다 | 되돌리기 | 변경사항 저장 ]\\`\n- 페이지 최하단까지 스크롤하지 않고도 즉시 저장할 수 있습니다.\n\n### 3) 실시간 인라인 검증 (Real-time Inline Validation)\n- 폼 전체를 제출한 뒤에 서버 에러 팝업을 띄우지 않습니다.\n- 사용자가 포커스를 잃었을 때(onBlur) 즉시 포맷을 검사하고, 유효할 때는 초록색 체크 아이콘, 오류 시 필드 바로 아래에 구체적인 수정 가이드를 붉은색 텍스트로 노출합니다.\n\n### 4) 파괴적 작업 안전장치 (Confirmation Safeguard)\n- '프로젝트 삭제'나 'API 키 재생성' 같은 복구 불가능한 액션은 빨간색 Danger Card로 별도 격리하며, 반드시 확인 문자열(예: \\`delete my-project\\`)을 직접 입력해야만 버튼이 활성화됩니다.\n`\n }\n ]\n }\n];\n","// Auto-generated from VoltAgent/awesome-design-md (84 Curated DESIGN.md files)\nimport { ThemeConfig } from './themeEditorDefaults';\n\nexport interface AwesomeDesignMdTheme {\n id: string;\n name: string;\n category: string;\n description: string;\n designMdPath: string;\n color: ThemeConfig['color'];\n typography: ThemeConfig['typography'];\n borderRadius: string;\n}\n\nexport const AWESOME_DESIGN_MD_THEMES: AwesomeDesignMdTheme[] = [\n {\n \"id\": \"1win\",\n \"name\": \"1win Analysis\",\n \"category\": \"Fintech & Web3\",\n \"description\": \"An analysis of 1win's design language — a near-black crypto casino and sportsbook built on Inter at heavy weights, where a vivid green action color and an electric blue secondary carry every CTA across dense, full-bleed game-tile rails, pro\",\n \"designMdPath\": \"/design-md/1win/DESIGN.md\",\n \"color\": {\n \"primary\": \"#00b24b\",\n \"primaryHover\": \"#00b24b\",\n \"primaryLight\": \"#00b24b26\",\n \"bgPrimary\": \"#141415\",\n \"bgSecondary\": \"#2e3035\",\n \"textPrimary\": \"#f0f2f5\",\n \"textSecondary\": \"#9aa1b1\",\n \"textMuted\": \"#53575f\",\n \"borderSubtle\": \"#2d2f33\",\n \"borderStrong\": \"#3d414a\",\n \"statusSuccess\": \"#10b981\",\n \"statusDanger\": \"#f43f5e\",\n \"statusWarning\": \"#f59e0b\"\n },\n \"typography\": {\n \"fontFamily\": \"Inter\",\n \"h1\": {\n \"fontSize\": 36,\n \"lineHeight\": 1.2,\n \"fontWeight\": 700,\n \"letterSpacing\": \"-0.02em\"\n },\n \"h2\": {\n \"fontSize\": 28,\n \"lineHeight\": 1.25,\n \"fontWeight\": 700,\n \"letterSpacing\": \"-0.015em\"\n },\n \"h3\": {\n \"fontSize\": 22,\n \"lineHeight\": 1.3,\n \"fontWeight\": 600,\n \"letterSpacing\": \"-0.01em\"\n },\n \"h4\": {\n \"fontSize\": 18,\n \"lineHeight\": 1.35,\n \"fontWeight\": 600,\n \"letterSpacing\": \"-0.005em\"\n },\n \"h5\": {\n \"fontSize\": 16,\n \"lineHeight\": 1.4,\n \"fontWeight\": 600,\n \"letterSpacing\": \"0em\"\n },\n \"h6\": {\n \"fontSize\": 14,\n \"lineHeight\": 1.45,\n \"fontWeight\": 600,\n \"letterSpacing\": \"0em\"\n },\n \"body\": {\n \"fontSize\": 14,\n \"lineHeight\": 1.4,\n \"fontWeight\": 600,\n \"letterSpacing\": \"0\"\n },\n \"sm\": {\n \"fontSize\": 12,\n \"lineHeight\": 1.3,\n \"fontWeight\": 600,\n \"letterSpacing\": \"0\"\n },\n \"xs\": {\n \"fontSize\": 12,\n \"lineHeight\": 1.3,\n \"fontWeight\": 600,\n \"letterSpacing\": \"0\"\n }\n },\n \"borderRadius\": \"8px\"\n },\n {\n \"id\": \"airbnb\",\n \"name\": \"Airbnb\",\n \"category\": \"Tech & Lifestyle\",\n \"description\": \"A warm, generous consumer marketplace anchored on a clean white canvas and Airbnb Rausch (#ff385c), the single brand voltage that carries every primary CTA, search-button orb, and rating dot. Type runs Airbnb Cereal VF at modest weights — d\",\n \"designMdPath\": \"/design-md/airbnb/DESIGN.md\",\n \"color\": {\n \"primary\": \"#ff385c\",\n \"primaryHover\": \"#ff385c\",\n \"primaryLight\": \"#e8f3ff\",\n \"bgPrimary\": \"#ffffff\",\n \"bgSecondary\": \"#ffffff\",\n \"textPrimary\": \"#222222\",\n \"textSecondary\": \"#6a6a6a\",\n \"textMuted\": \"#b0b8c1\",\n \"borderSubtle\": \"#dddddd\",\n \"borderStrong\": \"#c1c1c1\",\n \"statusSuccess\": \"#10b981\",\n \"statusDanger\": \"#f43f5e\",\n \"statusWarning\": \"#f59e0b\"\n },\n \"typography\": {\n \"fontFamily\": \"'Airbnb Cereal VF', Circular, -apple-system, system-ui, Roboto, 'Helvetica Neue', sans-serif\",\n \"h1\": {\n \"fontSize\": 28,\n \"lineHeight\": 1.43,\n \"fontWeight\": 700,\n \"letterSpacing\": \"0\"\n },\n \"h2\": {\n \"fontSize\": 22,\n \"lineHeight\": 1.18,\n \"fontWeight\": 500,\n \"letterSpacing\": \"-0.44px\"\n },\n \"h3\": {\n \"fontSize\": 21,\n \"lineHeight\": 1.43,\n \"fontWeight\": 700,\n \"letterSpacing\": \"0\"\n },\n \"h4\": {\n \"fontSize\": 18,\n \"lineHeight\": 1.35,\n \"fontWeight\": 600,\n \"letterSpacing\": \"-0.005em\"\n },\n \"h5\": {\n \"fontSize\": 16,\n \"lineHeight\": 1.4,\n \"fontWeight\": 600,\n \"letterSpacing\": \"0em\"\n },\n \"h6\": {\n \"fontSize\": 14,\n \"lineHeight\": 1.45,\n \"fontWeight\": 600,\n \"letterSpacing\": \"0em\"\n },\n \"body\": {\n \"fontSize\": 15,\n \"lineHeight\": 1.55,\n \"fontWeight\": 400,\n \"letterSpacing\": \"-0.005em\"\n },\n \"sm\": {\n \"fontSize\": 14,\n \"lineHeight\": 1.43,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0\"\n },\n \"xs\": {\n \"fontSize\": 14,\n \"lineHeight\": 1.29,\n \"fontWeight\": 500,\n \"letterSpacing\": \"0\"\n }\n },\n \"borderRadius\": \"14px\"\n },\n {\n \"id\": \"airtable\",\n \"name\": \"Airtable\",\n \"category\": \"Tech & Lifestyle\",\n \"description\": \"A sober, editorial workflow-software interface anchored on white canvas and dark-ink type, where brand voltage comes from full-bleed signature cards in coral, dark green, peach, and dark navy that punctuate long-scroll explainer pages. Prim\",\n \"designMdPath\": \"/design-md/airtable/DESIGN.md\",\n \"color\": {\n \"primary\": \"#181d26\",\n \"primaryHover\": \"#181d26\",\n \"primaryLight\": \"#e8f3ff\",\n \"bgPrimary\": \"#ffffff\",\n \"bgSecondary\": \"#f8f9fa\",\n \"textPrimary\": \"#181d26\",\n \"textSecondary\": \"#41454d\",\n \"textMuted\": \"#b0b8c1\",\n \"borderSubtle\": \"#dddddd\",\n \"borderStrong\": \"#9297a0\",\n \"statusSuccess\": \"#006400\",\n \"statusDanger\": \"#f43f5e\",\n \"statusWarning\": \"#f59e0b\"\n },\n \"typography\": {\n \"fontFamily\": \"Haas Groot Disp, Haas, sans-serif\",\n \"h1\": {\n \"fontSize\": 48,\n \"lineHeight\": 1.1,\n \"fontWeight\": 500,\n \"letterSpacing\": \"0\"\n },\n \"h2\": {\n \"fontSize\": 40,\n \"lineHeight\": 1.2,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0\"\n },\n \"h3\": {\n \"fontSize\": 32,\n \"lineHeight\": 1.2,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0\"\n },\n \"h4\": {\n \"fontSize\": 18,\n \"lineHeight\": 1.35,\n \"fontWeight\": 600,\n \"letterSpacing\": \"-0.005em\"\n },\n \"h5\": {\n \"fontSize\": 16,\n \"lineHeight\": 1.4,\n \"fontWeight\": 600,\n \"letterSpacing\": \"0em\"\n },\n \"h6\": {\n \"fontSize\": 16,\n \"lineHeight\": 1.4,\n \"fontWeight\": 500,\n \"letterSpacing\": \"0\"\n },\n \"body\": {\n \"fontSize\": 15,\n \"lineHeight\": 1.55,\n \"fontWeight\": 400,\n \"letterSpacing\": \"-0.005em\"\n },\n \"sm\": {\n \"fontSize\": 14,\n \"lineHeight\": 1.35,\n \"fontWeight\": 500,\n \"letterSpacing\": \"0.16px\"\n },\n \"xs\": {\n \"fontSize\": 14,\n \"lineHeight\": 1.35,\n \"fontWeight\": 500,\n \"letterSpacing\": \"0.16px\"\n }\n },\n \"borderRadius\": \"10px\"\n },\n {\n \"id\": \"aljazeera\",\n \"name\": \"Al Jazeera Analysis\",\n \"category\": \"Tech & Lifestyle\",\n \"description\": \"An analysis of Al Jazeera's design language — a hard-news editorial system built on flat white paper and dense Roboto headline stacks, signed by one saturated orange used as logo block and section-eyebrow bar, punctuated by a live-red that \",\n \"designMdPath\": \"/design-md/aljazeera/DESIGN.md\",\n \"color\": {\n \"primary\": \"#fa9000\",\n \"primaryHover\": \"#fa9000\",\n \"primaryLight\": \"#e8f3ff\",\n \"bgPrimary\": \"#ffffff\",\n \"bgSecondary\": \"#f8f9fa\",\n \"textPrimary\": \"#000000\",\n \"textSecondary\": \"#8b95a1\",\n \"textMuted\": \"#b0b8c1\",\n \"borderSubtle\": \"#d8d8d8\",\n \"borderStrong\": \"#e5e8eb\",\n \"statusSuccess\": \"#10b981\",\n \"statusDanger\": \"#f43f5e\",\n \"statusWarning\": \"#f59e0b\"\n },\n \"typography\": {\n \"fontFamily\": \"Roboto\",\n \"h1\": {\n \"fontSize\": 36,\n \"lineHeight\": 1.2,\n \"fontWeight\": 700,\n \"letterSpacing\": \"-0.02em\"\n },\n \"h2\": {\n \"fontSize\": 28,\n \"lineHeight\": 1.25,\n \"fontWeight\": 700,\n \"letterSpacing\": \"-0.015em\"\n },\n \"h3\": {\n \"fontSize\": 22,\n \"lineHeight\": 1.3,\n \"fontWeight\": 600,\n \"letterSpacing\": \"-0.01em\"\n },\n \"h4\": {\n \"fontSize\": 18,\n \"lineHeight\": 1.35,\n \"fontWeight\": 600,\n \"letterSpacing\": \"-0.005em\"\n },\n \"h5\": {\n \"fontSize\": 16,\n \"lineHeight\": 1.4,\n \"fontWeight\": 600,\n \"letterSpacing\": \"0em\"\n },\n \"h6\": {\n \"fontSize\": 16,\n \"lineHeight\": 1,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0\"\n },\n \"body\": {\n \"fontSize\": 16,\n \"lineHeight\": 1.5,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0\"\n },\n \"sm\": {\n \"fontSize\": 14,\n \"lineHeight\": 1.45,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0\"\n },\n \"xs\": {\n \"fontSize\": 12,\n \"lineHeight\": 1.4,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0\"\n }\n },\n \"borderRadius\": \"10px\"\n },\n {\n \"id\": \"apple\",\n \"name\": \"Apple\",\n \"category\": \"Tech & Lifestyle\",\n \"description\": \"A photography-first interface that turns marketing into a museum gallery. Edge-to-edge product tiles alternate light and dark canvases, framed by SF Pro Display headlines with negative letter-spacing and a single Action Blue (#0066cc) inter\",\n \"designMdPath\": \"/design-md/apple/DESIGN.md\",\n \"color\": {\n \"primary\": \"#0066cc\",\n \"primaryHover\": \"#0071e3\",\n \"primaryLight\": \"#e8f3ff\",\n \"bgPrimary\": \"#ffffff\",\n \"bgSecondary\": \"#f8f9fa\",\n \"textPrimary\": \"#1d1d1f\",\n \"textSecondary\": \"#cccccc\",\n \"textMuted\": \"#b0b8c1\",\n \"borderSubtle\": \"#e0e0e0\",\n \"borderStrong\": \"#e5e8eb\",\n \"statusSuccess\": \"#10b981\",\n \"statusDanger\": \"#f43f5e\",\n \"statusWarning\": \"#f59e0b\"\n },\n \"typography\": {\n \"fontFamily\": \"SF Pro Display, system-ui, -apple-system, sans-serif\",\n \"h1\": {\n \"fontSize\": 56,\n \"lineHeight\": 1.07,\n \"fontWeight\": 600,\n \"letterSpacing\": \"-0.28px\"\n },\n \"h2\": {\n \"fontSize\": 40,\n \"lineHeight\": 1.1,\n \"fontWeight\": 600,\n \"letterSpacing\": \"0\"\n },\n \"h3\": {\n \"fontSize\": 34,\n \"lineHeight\": 1.47,\n \"fontWeight\": 600,\n \"letterSpacing\": \"-0.374px\"\n },\n \"h4\": {\n \"fontSize\": 28,\n \"lineHeight\": 1.14,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0.196px\"\n },\n \"h5\": {\n \"fontSize\": 28,\n \"lineHeight\": 1.14,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0.196px\"\n },\n \"h6\": {\n \"fontSize\": 14,\n \"lineHeight\": 1.45,\n \"fontWeight\": 600,\n \"letterSpacing\": \"0em\"\n },\n \"body\": {\n \"fontSize\": 17,\n \"lineHeight\": 1.47,\n \"fontWeight\": 400,\n \"letterSpacing\": \"-0.374px\"\n },\n \"sm\": {\n \"fontSize\": 14,\n \"lineHeight\": 1.43,\n \"fontWeight\": 400,\n \"letterSpacing\": \"-0.224px\"\n },\n \"xs\": {\n \"fontSize\": 14,\n \"lineHeight\": 1.43,\n \"fontWeight\": 400,\n \"letterSpacing\": \"-0.224px\"\n }\n },\n \"borderRadius\": \"11px\"\n },\n {\n \"id\": \"binance\",\n \"name\": \"Binance\",\n \"category\": \"Fintech & Web3\",\n \"description\": \"A confident financial-platform interface anchored on a deep near-black canvas, where Binance's iconic yellow (#FCD535) carries every primary CTA, brand accent, and value-claim moment. Type runs Binance's custom BinanceNova / BinancePlex sta\",\n \"designMdPath\": \"/design-md/binance/DESIGN.md\",\n \"color\": {\n \"primary\": \"#fcd535\",\n \"primaryHover\": \"#fcd535\",\n \"primaryLight\": \"#e8f3ff\",\n \"bgPrimary\": \"#ffffff\",\n \"bgSecondary\": \"#f8f9fa\",\n \"textPrimary\": \"#181a20\",\n \"textSecondary\": \"#707a8a\",\n \"textMuted\": \"#b0b8c1\",\n \"borderSubtle\": \"#f2f4f6\",\n \"borderStrong\": \"#cdd1d6\",\n \"statusSuccess\": \"#10b981\",\n \"statusDanger\": \"#f43f5e\",\n \"statusWarning\": \"#f59e0b\"\n },\n \"typography\": {\n \"fontFamily\": \"BinanceNova, -apple-system, BlinkMacSystemFont, sans-serif\",\n \"h1\": {\n \"fontSize\": 64,\n \"lineHeight\": 1.1,\n \"fontWeight\": 700,\n \"letterSpacing\": \"-1px\"\n },\n \"h2\": {\n \"fontSize\": 48,\n \"lineHeight\": 1.1,\n \"fontWeight\": 700,\n \"letterSpacing\": \"-0.5px\"\n },\n \"h3\": {\n \"fontSize\": 40,\n \"lineHeight\": 1.15,\n \"fontWeight\": 600,\n \"letterSpacing\": \"-0.3px\"\n },\n \"h4\": {\n \"fontSize\": 18,\n \"lineHeight\": 1.35,\n \"fontWeight\": 600,\n \"letterSpacing\": \"-0.005em\"\n },\n \"h5\": {\n \"fontSize\": 16,\n \"lineHeight\": 1.4,\n \"fontWeight\": 600,\n \"letterSpacing\": \"0em\"\n },\n \"h6\": {\n \"fontSize\": 14,\n \"lineHeight\": 1,\n \"fontWeight\": 600,\n \"letterSpacing\": \"0\"\n },\n \"body\": {\n \"fontSize\": 15,\n \"lineHeight\": 1.55,\n \"fontWeight\": 400,\n \"letterSpacing\": \"-0.005em\"\n },\n \"sm\": {\n \"fontSize\": 13,\n \"lineHeight\": 1.5,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0\"\n },\n \"xs\": {\n \"fontSize\": 12,\n \"lineHeight\": 1.4,\n \"fontWeight\": 500,\n \"letterSpacing\": \"0\"\n }\n },\n \"borderRadius\": \"6px\"\n },\n {\n \"id\": \"bmw\",\n \"name\": \"BMW\",\n \"category\": \"Automotive & Luxury\",\n \"description\": \"BMW's corporate site — distinct from BMW M's motorsport-bombastic variant, this is a measured and settled corporate-automotive interface. On a light (cream-tinted white) canvas, BMW corporate blue (#1c69d4) carries every primary CTA; dark n\",\n \"designMdPath\": \"/design-md/bmw/DESIGN.md\",\n \"color\": {\n \"primary\": \"#1c69d4\",\n \"primaryHover\": \"#1c69d4\",\n \"primaryLight\": \"#e8f3ff\",\n \"bgPrimary\": \"#ffffff\",\n \"bgSecondary\": \"#fafafa\",\n \"textPrimary\": \"#262626\",\n \"textSecondary\": \"#6b6b6b\",\n \"textMuted\": \"#b0b8c1\",\n \"borderSubtle\": \"#e6e6e6\",\n \"borderStrong\": \"#cccccc\",\n \"statusSuccess\": \"#22c55e\",\n \"statusDanger\": \"#f43f5e\",\n \"statusWarning\": \"#f59e0b\"\n },\n \"typography\": {\n \"fontFamily\": \"'BMW Type Next Latin', system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif\",\n \"h1\": {\n \"fontSize\": 64,\n \"lineHeight\": 1.05,\n \"fontWeight\": 700,\n \"letterSpacing\": \"0\"\n },\n \"h2\": {\n \"fontSize\": 48,\n \"lineHeight\": 1.1,\n \"fontWeight\": 700,\n \"letterSpacing\": \"0\"\n },\n \"h3\": {\n \"fontSize\": 32,\n \"lineHeight\": 1.15,\n \"fontWeight\": 700,\n \"letterSpacing\": \"0\"\n },\n \"h4\": {\n \"fontSize\": 18,\n \"lineHeight\": 1.35,\n \"fontWeight\": 600,\n \"letterSpacing\": \"-0.005em\"\n },\n \"h5\": {\n \"fontSize\": 16,\n \"lineHeight\": 1.4,\n \"fontWeight\": 600,\n \"letterSpacing\": \"0em\"\n },\n \"h6\": {\n \"fontSize\": 14,\n \"lineHeight\": 1,\n \"fontWeight\": 700,\n \"letterSpacing\": \"0.5px\"\n },\n \"body\": {\n \"fontSize\": 15,\n \"lineHeight\": 1.55,\n \"fontWeight\": 400,\n \"letterSpacing\": \"-0.005em\"\n },\n \"sm\": {\n \"fontSize\": 14,\n \"lineHeight\": 1.55,\n \"fontWeight\": 300,\n \"letterSpacing\": \"0\"\n },\n \"xs\": {\n \"fontSize\": 12,\n \"lineHeight\": 1.4,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0.5px\"\n }\n },\n \"borderRadius\": \"8px\"\n },\n {\n \"id\": \"bmw-m\",\n \"name\": \"BMW-M\",\n \"category\": \"Automotive & Luxury\",\n \"description\": \"A motorsport-engineering interface anchored on a near-black canvas with white BMW Type Next Latin display headlines in confident UPPERCASE. The brand carries no decorative voltage — its energy comes from full-bleed automotive photography (c\",\n \"designMdPath\": \"/design-md/bmw-m/DESIGN.md\",\n \"color\": {\n \"primary\": \"#ffffff\",\n \"primaryHover\": \"#ffffff\",\n \"primaryLight\": \"#ffffff26\",\n \"bgPrimary\": \"#000000\",\n \"bgSecondary\": \"#1a1a1a\",\n \"textPrimary\": \"#ffffff\",\n \"textSecondary\": \"#7e7e7e\",\n \"textMuted\": \"#5c6470\",\n \"borderSubtle\": \"#3c3c3c\",\n \"borderStrong\": \"#262626\",\n \"statusSuccess\": \"#0fa336\",\n \"statusDanger\": \"#f43f5e\",\n \"statusWarning\": \"#f4b400\"\n },\n \"typography\": {\n \"fontFamily\": \"BMWTypeNextLatin, sans-serif\",\n \"h1\": {\n \"fontSize\": 80,\n \"lineHeight\": 1,\n \"fontWeight\": 700,\n \"letterSpacing\": \"0\"\n },\n \"h2\": {\n \"fontSize\": 56,\n \"lineHeight\": 1.05,\n \"fontWeight\": 700,\n \"letterSpacing\": \"0\"\n },\n \"h3\": {\n \"fontSize\": 40,\n \"lineHeight\": 1.1,\n \"fontWeight\": 700,\n \"letterSpacing\": \"0\"\n },\n \"h4\": {\n \"fontSize\": 18,\n \"lineHeight\": 1.35,\n \"fontWeight\": 600,\n \"letterSpacing\": \"-0.005em\"\n },\n \"h5\": {\n \"fontSize\": 16,\n \"lineHeight\": 1.4,\n \"fontWeight\": 600,\n \"letterSpacing\": \"0em\"\n },\n \"h6\": {\n \"fontSize\": 14,\n \"lineHeight\": 1,\n \"fontWeight\": 700,\n \"letterSpacing\": \"1.5px\"\n },\n \"body\": {\n \"fontSize\": 15,\n \"lineHeight\": 1.55,\n \"fontWeight\": 400,\n \"letterSpacing\": \"-0.005em\"\n },\n \"sm\": {\n \"fontSize\": 14,\n \"lineHeight\": 1.5,\n \"fontWeight\": 300,\n \"letterSpacing\": \"0\"\n },\n \"xs\": {\n \"fontSize\": 12,\n \"lineHeight\": 1.4,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0.5px\"\n }\n },\n \"borderRadius\": \"6px\"\n },\n {\n \"id\": \"bugatti\",\n \"name\": \"Bugatti\",\n \"category\": \"Automotive & Luxury\",\n \"description\": \"An austere luxury-automotive interface that uses near-pure black canvas, white uppercase letterspaced display, and full-bleed automotive photography as the only voltage. The system runs three custom Bugatti typefaces — Bugatti Display, Buga\",\n \"designMdPath\": \"/design-md/bugatti/DESIGN.md\",\n \"color\": {\n \"primary\": \"#ffffff\",\n \"primaryHover\": \"#ffffff\",\n \"primaryLight\": \"#ffffff26\",\n \"bgPrimary\": \"#000000\",\n \"bgSecondary\": \"#141414\",\n \"textPrimary\": \"#ffffff\",\n \"textSecondary\": \"#999999\",\n \"textMuted\": \"#5c6470\",\n \"borderSubtle\": \"#262626\",\n \"borderStrong\": \"#3a3a3a\",\n \"statusSuccess\": \"#5fa657\",\n \"statusDanger\": \"#f43f5e\",\n \"statusWarning\": \"#d4a017\"\n },\n \"typography\": {\n \"fontFamily\": \"Bugatti Display, sans-serif\",\n \"h1\": {\n \"fontSize\": 64,\n \"lineHeight\": 1.1,\n \"fontWeight\": 400,\n \"letterSpacing\": \"4px\"\n },\n \"h2\": {\n \"fontSize\": 48,\n \"lineHeight\": 1.15,\n \"fontWeight\": 400,\n \"letterSpacing\": \"3px\"\n },\n \"h3\": {\n \"fontSize\": 32,\n \"lineHeight\": 1.2,\n \"fontWeight\": 400,\n \"letterSpacing\": \"2px\"\n },\n \"h4\": {\n \"fontSize\": 18,\n \"lineHeight\": 1.35,\n \"fontWeight\": 600,\n \"letterSpacing\": \"-0.005em\"\n },\n \"h5\": {\n \"fontSize\": 16,\n \"lineHeight\": 1.4,\n \"fontWeight\": 600,\n \"letterSpacing\": \"0em\"\n },\n \"h6\": {\n \"fontSize\": 14,\n \"lineHeight\": 1,\n \"fontWeight\": 400,\n \"letterSpacing\": \"2.5px\"\n },\n \"body\": {\n \"fontSize\": 15,\n \"lineHeight\": 1.55,\n \"fontWeight\": 400,\n \"letterSpacing\": \"-0.005em\"\n },\n \"sm\": {\n \"fontSize\": 14,\n \"lineHeight\": 1.5,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0\"\n },\n \"xs\": {\n \"fontSize\": 11,\n \"lineHeight\": 1.4,\n \"fontWeight\": 500,\n \"letterSpacing\": \"0.01em\"\n }\n },\n \"borderRadius\": \"12px\"\n },\n {\n \"id\": \"cal\",\n \"name\": \"Cal.com\",\n \"category\": \"Tech & Lifestyle\",\n \"description\": \"A clean, calendar-software-first interface anchored on white canvas with black primary CTAs and custom Cal Sans display typography. The system reads as friendly modern SaaS — generous whitespace, soft-rounded cards (~12px), product UI fragm\",\n \"designMdPath\": \"/design-md/cal/DESIGN.md\",\n \"color\": {\n \"primary\": \"#111111\",\n \"primaryHover\": \"#111111\",\n \"primaryLight\": \"#e8f3ff\",\n \"bgPrimary\": \"#ffffff\",\n \"bgSecondary\": \"#f5f5f5\",\n \"textPrimary\": \"#111111\",\n \"textSecondary\": \"#6b7280\",\n \"textMuted\": \"#b0b8c1\",\n \"borderSubtle\": \"#e5e7eb\",\n \"borderStrong\": \"#e5e8eb\",\n \"statusSuccess\": \"#10b981\",\n \"statusDanger\": \"#f43f5e\",\n \"statusWarning\": \"#f59e0b\"\n },\n \"typography\": {\n \"fontFamily\": \"Cal Sans, Inter, sans-serif\",\n \"h1\": {\n \"fontSize\": 64,\n \"lineHeight\": 1.05,\n \"fontWeight\": 600,\n \"letterSpacing\": \"-2px\"\n },\n \"h2\": {\n \"fontSize\": 48,\n \"lineHeight\": 1.1,\n \"fontWeight\": 600,\n \"letterSpacing\": \"-1.5px\"\n },\n \"h3\": {\n \"fontSize\": 36,\n \"lineHeight\": 1.15,\n \"fontWeight\": 600,\n \"letterSpacing\": \"-1px\"\n },\n \"h4\": {\n \"fontSize\": 18,\n \"lineHeight\": 1.35,\n \"fontWeight\": 600,\n \"letterSpacing\": \"-0.005em\"\n },\n \"h5\": {\n \"fontSize\": 16,\n \"lineHeight\": 1.4,\n \"fontWeight\": 600,\n \"letterSpacing\": \"0em\"\n },\n \"h6\": {\n \"fontSize\": 14,\n \"lineHeight\": 1,\n \"fontWeight\": 600,\n \"letterSpacing\": \"0\"\n },\n \"body\": {\n \"fontSize\": 15,\n \"lineHeight\": 1.55,\n \"fontWeight\": 400,\n \"letterSpacing\": \"-0.005em\"\n },\n \"sm\": {\n \"fontSize\": 14,\n \"lineHeight\": 1.5,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0\"\n },\n \"xs\": {\n \"fontSize\": 13,\n \"lineHeight\": 1.4,\n \"fontWeight\": 500,\n \"letterSpacing\": \"0\"\n }\n },\n \"borderRadius\": \"8px\"\n },\n {\n \"id\": \"claude\",\n \"name\": \"Claude\",\n \"category\": \"AI & LLM\",\n \"description\": \"A warm-canvas editorial interface for Anthropic's Claude product. The system anchors on a tinted cream canvas with serif display headlines, warm coral CTAs, and dark navy product surfaces (code editor mockups, model showcase cards). Brand v\",\n \"designMdPath\": \"/design-md/claude/DESIGN.md\",\n \"color\": {\n \"primary\": \"#cc785c\",\n \"primaryHover\": \"#cc785c\",\n \"primaryLight\": \"#e8f3ff\",\n \"bgPrimary\": \"#faf9f5\",\n \"bgSecondary\": \"#efe9de\",\n \"textPrimary\": \"#141413\",\n \"textSecondary\": \"#6c6a64\",\n \"textMuted\": \"#b0b8c1\",\n \"borderSubtle\": \"#e6dfd8\",\n \"borderStrong\": \"#e5e8eb\",\n \"statusSuccess\": \"#5db872\",\n \"statusDanger\": \"#f43f5e\",\n \"statusWarning\": \"#d4a017\"\n },\n \"typography\": {\n \"fontFamily\": \"Copernicus, Tiempos Headline, serif\",\n \"h1\": {\n \"fontSize\": 64,\n \"lineHeight\": 1.05,\n \"fontWeight\": 400,\n \"letterSpacing\": \"-1.5px\"\n },\n \"h2\": {\n \"fontSize\": 48,\n \"lineHeight\": 1.1,\n \"fontWeight\": 400,\n \"letterSpacing\": \"-1px\"\n },\n \"h3\": {\n \"fontSize\": 36,\n \"lineHeight\": 1.15,\n \"fontWeight\": 400,\n \"letterSpacing\": \"-0.5px\"\n },\n \"h4\": {\n \"fontSize\": 18,\n \"lineHeight\": 1.35,\n \"fontWeight\": 600,\n \"letterSpacing\": \"-0.005em\"\n },\n \"h5\": {\n \"fontSize\": 16,\n \"lineHeight\": 1.4,\n \"fontWeight\": 600,\n \"letterSpacing\": \"0em\"\n },\n \"h6\": {\n \"fontSize\": 14,\n \"lineHeight\": 1,\n \"fontWeight\": 500,\n \"letterSpacing\": \"0\"\n },\n \"body\": {\n \"fontSize\": 15,\n \"lineHeight\": 1.55,\n \"fontWeight\": 400,\n \"letterSpacing\": \"-0.005em\"\n },\n \"sm\": {\n \"fontSize\": 14,\n \"lineHeight\": 1.55,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0\"\n },\n \"xs\": {\n \"fontSize\": 13,\n \"lineHeight\": 1.4,\n \"fontWeight\": 500,\n \"letterSpacing\": \"0\"\n }\n },\n \"borderRadius\": \"8px\"\n },\n {\n \"id\": \"clay\",\n \"name\": \"Clay\",\n \"category\": \"Tech & Lifestyle\",\n \"description\": \"A vibrant claymation-meets-data interface for Clay.com (GTM data-orchestration platform). Anchors on white canvas with dark-navy primary CTAs, custom rounded display type, and saturated single-color feature cards — hot pink, deep teal, lave\",\n \"designMdPath\": \"/design-md/clay/DESIGN.md\",\n \"color\": {\n \"primary\": \"#0a0a0a\",\n \"primaryHover\": \"#0a0a0a\",\n \"primaryLight\": \"#e8f3ff\",\n \"bgPrimary\": \"#fffaf0\",\n \"bgSecondary\": \"#f5f0e0\",\n \"textPrimary\": \"#0a0a0a\",\n \"textSecondary\": \"#6a6a6a\",\n \"textMuted\": \"#b0b8c1\",\n \"borderSubtle\": \"#e5e5e5\",\n \"borderStrong\": \"#e5e8eb\",\n \"statusSuccess\": \"#22c55e\",\n \"statusDanger\": \"#f43f5e\",\n \"statusWarning\": \"#f59e0b\"\n },\n \"typography\": {\n \"fontFamily\": \"Plain Black, Inter, sans-serif\",\n \"h1\": {\n \"fontSize\": 72,\n \"lineHeight\": 1,\n \"fontWeight\": 500,\n \"letterSpacing\": \"-2.5px\"\n },\n \"h2\": {\n \"fontSize\": 56,\n \"lineHeight\": 1.05,\n \"fontWeight\": 500,\n \"letterSpacing\": \"-2px\"\n },\n \"h3\": {\n \"fontSize\": 40,\n \"lineHeight\": 1.1,\n \"fontWeight\": 500,\n \"letterSpacing\": \"-1px\"\n },\n \"h4\": {\n \"fontSize\": 18,\n \"lineHeight\": 1.35,\n \"fontWeight\": 600,\n \"letterSpacing\": \"-0.005em\"\n },\n \"h5\": {\n \"fontSize\": 16,\n \"lineHeight\": 1.4,\n \"fontWeight\": 600,\n \"letterSpacing\": \"0em\"\n },\n \"h6\": {\n \"fontSize\": 14,\n \"lineHeight\": 1,\n \"fontWeight\": 600,\n \"letterSpacing\": \"0\"\n },\n \"body\": {\n \"fontSize\": 15,\n \"lineHeight\": 1.55,\n \"fontWeight\": 400,\n \"letterSpacing\": \"-0.005em\"\n },\n \"sm\": {\n \"fontSize\": 14,\n \"lineHeight\": 1.55,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0\"\n },\n \"xs\": {\n \"fontSize\": 13,\n \"lineHeight\": 1.4,\n \"fontWeight\": 500,\n \"letterSpacing\": \"0\"\n }\n },\n \"borderRadius\": \"12px\"\n },\n {\n \"id\": \"clickhouse\",\n \"name\": \"ClickHouse\",\n \"category\": \"Tech & Lifestyle\",\n \"description\": \"A high-performance database interface anchored on near-pure black canvas with electric yellow as the brand voltage. White typography in confident sans, yellow CTAs, and yellow-text stat numbers carry the brand voice across every page. Code \",\n \"designMdPath\": \"/design-md/clickhouse/DESIGN.md\",\n \"color\": {\n \"primary\": \"#faff69\",\n \"primaryHover\": \"#faff69\",\n \"primaryLight\": \"#faff6926\",\n \"bgPrimary\": \"#0a0a0a\",\n \"bgSecondary\": \"#1a1a1a\",\n \"textPrimary\": \"#ffffff\",\n \"textSecondary\": \"#888888\",\n \"textMuted\": \"#5c6470\",\n \"borderSubtle\": \"#2a2a2a\",\n \"borderStrong\": \"#3a3a3a\",\n \"statusSuccess\": \"#22c55e\",\n \"statusDanger\": \"#f43f5e\",\n \"statusWarning\": \"#f59e0b\"\n },\n \"typography\": {\n \"fontFamily\": \"Inter, sans-serif\",\n \"h1\": {\n \"fontSize\": 72,\n \"lineHeight\": 1.05,\n \"fontWeight\": 700,\n \"letterSpacing\": \"-2.5px\"\n },\n \"h2\": {\n \"fontSize\": 56,\n \"lineHeight\": 1.1,\n \"fontWeight\": 700,\n \"letterSpacing\": \"-2px\"\n },\n \"h3\": {\n \"fontSize\": 40,\n \"lineHeight\": 1.15,\n \"fontWeight\": 700,\n \"letterSpacing\": \"-1.5px\"\n },\n \"h4\": {\n \"fontSize\": 18,\n \"lineHeight\": 1.35,\n \"fontWeight\": 600,\n \"letterSpacing\": \"-0.005em\"\n },\n \"h5\": {\n \"fontSize\": 16,\n \"lineHeight\": 1.4,\n \"fontWeight\": 600,\n \"letterSpacing\": \"0em\"\n },\n \"h6\": {\n \"fontSize\": 14,\n \"lineHeight\": 1,\n \"fontWeight\": 600,\n \"letterSpacing\": \"0\"\n },\n \"body\": {\n \"fontSize\": 15,\n \"lineHeight\": 1.55,\n \"fontWeight\": 400,\n \"letterSpacing\": \"-0.005em\"\n },\n \"sm\": {\n \"fontSize\": 14,\n \"lineHeight\": 1.55,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0\"\n },\n \"xs\": {\n \"fontSize\": 13,\n \"lineHeight\": 1.4,\n \"fontWeight\": 500,\n \"letterSpacing\": \"0\"\n }\n },\n \"borderRadius\": \"8px\"\n },\n {\n \"id\": \"cohere\",\n \"name\": \"Cohere\",\n \"category\": \"AI & LLM\",\n \"description\": \"Cohere's 2026 web system is a controlled enterprise AI interface built from stark white editorial space, deep green-black product bands, soft mineral surfaces, rounded media cards, and a distinctive type split between monospaced-feeling dis\",\n \"designMdPath\": \"/design-md/cohere/DESIGN.md\",\n \"color\": {\n \"primary\": \"#17171c\",\n \"primaryHover\": \"#17171c\",\n \"primaryLight\": \"#e8f3ff\",\n \"bgPrimary\": \"#ffffff\",\n \"bgSecondary\": \"#f8f9fa\",\n \"textPrimary\": \"#212121\",\n \"textSecondary\": \"#616161\",\n \"textMuted\": \"#b0b8c1\",\n \"borderSubtle\": \"#d9d9dd\",\n \"borderStrong\": \"#e5e8eb\",\n \"statusSuccess\": \"#10b981\",\n \"statusDanger\": \"#f43f5e\",\n \"statusWarning\": \"#f59e0b\"\n },\n \"typography\": {\n \"fontFamily\": \"CohereText\",\n \"h1\": {\n \"fontSize\": 96,\n \"lineHeight\": 1,\n \"fontWeight\": 400,\n \"letterSpacing\": \"-1.92px\"\n },\n \"h2\": {\n \"fontSize\": 28,\n \"lineHeight\": 1.25,\n \"fontWeight\": 700,\n \"letterSpacing\": \"-0.015em\"\n },\n \"h3\": {\n \"fontSize\": 22,\n \"lineHeight\": 1.3,\n \"fontWeight\": 600,\n \"letterSpacing\": \"-0.01em\"\n },\n \"h4\": {\n \"fontSize\": 18,\n \"lineHeight\": 1.35,\n \"fontWeight\": 600,\n \"letterSpacing\": \"-0.005em\"\n },\n \"h5\": {\n \"fontSize\": 16,\n \"lineHeight\": 1.4,\n \"fontWeight\": 600,\n \"letterSpacing\": \"0em\"\n },\n \"h6\": {\n \"fontSize\": 14,\n \"lineHeight\": 1.71,\n \"fontWeight\": 500,\n \"letterSpacing\": \"0\"\n },\n \"body\": {\n \"fontSize\": 16,\n \"lineHeight\": 1.5,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0\"\n },\n \"sm\": {\n \"fontSize\": 14,\n \"lineHeight\": 1.4,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0\"\n },\n \"xs\": {\n \"fontSize\": 14,\n \"lineHeight\": 1.4,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0\"\n }\n },\n \"borderRadius\": \"16px\"\n },\n {\n \"id\": \"coinbase\",\n \"name\": \"Coinbase\",\n \"category\": \"Fintech & Web3\",\n \"description\": \"An institutional-grade crypto exchange whose marketing surfaces read like a quietly-confident financial-services brand. The base canvas is pure white; Coinbase Blue (`#0052ff`) is the single brand voltage, used scarcely on primary CTAs, sig\",\n \"designMdPath\": \"/design-md/coinbase/DESIGN.md\",\n \"color\": {\n \"primary\": \"#0052ff\",\n \"primaryHover\": \"#0052ff\",\n \"primaryLight\": \"#e8f3ff\",\n \"bgPrimary\": \"#ffffff\",\n \"bgSecondary\": \"#ffffff\",\n \"textPrimary\": \"#0a0b0d\",\n \"textSecondary\": \"#7c828a\",\n \"textMuted\": \"#b0b8c1\",\n \"borderSubtle\": \"#dee1e6\",\n \"borderStrong\": \"#e5e8eb\",\n \"statusSuccess\": \"#10b981\",\n \"statusDanger\": \"#f43f5e\",\n \"statusWarning\": \"#f59e0b\"\n },\n \"typography\": {\n \"fontFamily\": \"'Coinbase Display', sans-serif\",\n \"h1\": {\n \"fontSize\": 64,\n \"lineHeight\": 1,\n \"fontWeight\": 400,\n \"letterSpacing\": \"-1.6px\"\n },\n \"h2\": {\n \"fontSize\": 52,\n \"lineHeight\": 1,\n \"fontWeight\": 400,\n \"letterSpacing\": \"-1.3px\"\n },\n \"h3\": {\n \"fontSize\": 44,\n \"lineHeight\": 1.09,\n \"fontWeight\": 400,\n \"letterSpacing\": \"-1px\"\n },\n \"h4\": {\n \"fontSize\": 18,\n \"lineHeight\": 1.35,\n \"fontWeight\": 600,\n \"letterSpacing\": \"-0.005em\"\n },\n \"h5\": {\n \"fontSize\": 16,\n \"lineHeight\": 1.4,\n \"fontWeight\": 600,\n \"letterSpacing\": \"0em\"\n },\n \"h6\": {\n \"fontSize\": 16,\n \"lineHeight\": 1.15,\n \"fontWeight\": 600,\n \"letterSpacing\": \"0\"\n },\n \"body\": {\n \"fontSize\": 15,\n \"lineHeight\": 1.55,\n \"fontWeight\": 400,\n \"letterSpacing\": \"-0.005em\"\n },\n \"sm\": {\n \"fontSize\": 14,\n \"lineHeight\": 1.5,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0\"\n },\n \"xs\": {\n \"fontSize\": 13,\n \"lineHeight\": 1.5,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0\"\n }\n },\n \"borderRadius\": \"12px\"\n },\n {\n \"id\": \"composio\",\n \"name\": \"Composio\",\n \"category\": \"Tech & Lifestyle\",\n \"description\": \"A developer-tools brand for AI-agent tool integration whose marketing surfaces lean into a dark, technical aesthetic with a single deep-electric-blue voltage (`#0007cd`). The page floor is near-black (`#0f0f0f`); cards float above on subtle\",\n \"designMdPath\": \"/design-md/composio/DESIGN.md\",\n \"color\": {\n \"primary\": \"#0007cd\",\n \"primaryHover\": \"#0007cd\",\n \"primaryLight\": \"#0007cd26\",\n \"bgPrimary\": \"#0f0f0f\",\n \"bgSecondary\": \"#181818\",\n \"textPrimary\": \"#ffffff\",\n \"textSecondary\": \"#888888\",\n \"textMuted\": \"#5c6470\",\n \"borderSubtle\": \"#222222\",\n \"borderStrong\": \"#333333\",\n \"statusSuccess\": \"#33d17a\",\n \"statusDanger\": \"#f43f5e\",\n \"statusWarning\": \"#f59e0b\"\n },\n \"typography\": {\n \"fontFamily\": \"'abcDiatype', ui-sans-serif, system-ui, sans-serif\",\n \"h1\": {\n \"fontSize\": 56,\n \"lineHeight\": 1.05,\n \"fontWeight\": 500,\n \"letterSpacing\": \"-1.68px\"\n },\n \"h2\": {\n \"fontSize\": 44,\n \"lineHeight\": 1.1,\n \"fontWeight\": 500,\n \"letterSpacing\": \"-1.32px\"\n },\n \"h3\": {\n \"fontSize\": 32,\n \"lineHeight\": 1.15,\n \"fontWeight\": 500,\n \"letterSpacing\": \"-0.96px\"\n },\n \"h4\": {\n \"fontSize\": 18,\n \"lineHeight\": 1.35,\n \"fontWeight\": 600,\n \"letterSpacing\": \"-0.005em\"\n },\n \"h5\": {\n \"fontSize\": 16,\n \"lineHeight\": 1.4,\n \"fontWeight\": 600,\n \"letterSpacing\": \"0em\"\n },\n \"h6\": {\n \"fontSize\": 14,\n \"lineHeight\": 1,\n \"fontWeight\": 500,\n \"letterSpacing\": \"0\"\n },\n \"body\": {\n \"fontSize\": 15,\n \"lineHeight\": 1.55,\n \"fontWeight\": 400,\n \"letterSpacing\": \"-0.005em\"\n },\n \"sm\": {\n \"fontSize\": 14,\n \"lineHeight\": 1.5,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0\"\n },\n \"xs\": {\n \"fontSize\": 13,\n \"lineHeight\": 1.4,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0\"\n }\n },\n \"borderRadius\": \"8px\"\n },\n {\n \"id\": \"cursor\",\n \"name\": \"Cursor\",\n \"category\": \"Developer Tools\",\n \"description\": \"An AI-first code editor whose marketing site reads like a quietly-confident developer-tools brand with a warm-cream editorial canvas (`#f7f7f4`) instead of the typical dark IDE atmosphere. Near-black warm ink (`#26251e`) carries body and di\",\n \"designMdPath\": \"/design-md/cursor/DESIGN.md\",\n \"color\": {\n \"primary\": \"#f54e00\",\n \"primaryHover\": \"#f54e00\",\n \"primaryLight\": \"#e8f3ff\",\n \"bgPrimary\": \"#f7f7f4\",\n \"bgSecondary\": \"#ffffff\",\n \"textPrimary\": \"#26251e\",\n \"textSecondary\": \"#807d72\",\n \"textMuted\": \"#b0b8c1\",\n \"borderSubtle\": \"#e6e5e0\",\n \"borderStrong\": \"#cfcdc4\",\n \"statusSuccess\": \"#1f8a65\",\n \"statusDanger\": \"#f43f5e\",\n \"statusWarning\": \"#f59e0b\"\n },\n \"typography\": {\n \"fontFamily\": \"'CursorGothic', sans-serif\",\n \"h1\": {\n \"fontSize\": 36,\n \"lineHeight\": 1.2,\n \"fontWeight\": 400,\n \"letterSpacing\": \"-0.72px\"\n },\n \"h2\": {\n \"fontSize\": 36,\n \"lineHeight\": 1.2,\n \"fontWeight\": 400,\n \"letterSpacing\": \"-0.72px\"\n },\n \"h3\": {\n \"fontSize\": 26,\n \"lineHeight\": 1.25,\n \"fontWeight\": 400,\n \"letterSpacing\": \"-0.325px\"\n },\n \"h4\": {\n \"fontSize\": 18,\n \"lineHeight\": 1.35,\n \"fontWeight\": 600,\n \"letterSpacing\": \"-0.005em\"\n },\n \"h5\": {\n \"fontSize\": 16,\n \"lineHeight\": 1.4,\n \"fontWeight\": 600,\n \"letterSpacing\": \"0em\"\n },\n \"h6\": {\n \"fontSize\": 14,\n \"lineHeight\": 1,\n \"fontWeight\": 500,\n \"letterSpacing\": \"0\"\n },\n \"body\": {\n \"fontSize\": 15,\n \"lineHeight\": 1.55,\n \"fontWeight\": 400,\n \"letterSpacing\": \"-0.005em\"\n },\n \"sm\": {\n \"fontSize\": 14,\n \"lineHeight\": 1.5,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0\"\n },\n \"xs\": {\n \"fontSize\": 13,\n \"lineHeight\": 1.4,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0\"\n }\n },\n \"borderRadius\": \"8px\"\n },\n {\n \"id\": \"dell-1996\",\n \"name\": \"Dell 1996 Inspired\",\n \"category\": \"Tech & Lifestyle\",\n \"description\": \"An inspired interpretation of Dell.com's 1996 design language — a catalog-era enterprise web design built around a literal black page frame, vivid flat color-block \\\\\\\"ribbon cards\\\\\\\" tinted in sage, salmon, periwinkle, sky, peach and lime, ch\",\n \"designMdPath\": \"/design-md/dell-1996/DESIGN.md\",\n \"color\": {\n \"primary\": \"#e91d2a\",\n \"primaryHover\": \"#e91d2a\",\n \"primaryLight\": \"#e8f3ff\",\n \"bgPrimary\": \"#ffffff\",\n \"bgSecondary\": \"#ffffff\",\n \"textPrimary\": \"#000000\",\n \"textSecondary\": \"#8b95a1\",\n \"textMuted\": \"#b0b8c1\",\n \"borderSubtle\": \"#f2f4f6\",\n \"borderStrong\": \"#e5e8eb\",\n \"statusSuccess\": \"#10b981\",\n \"statusDanger\": \"#f43f5e\",\n \"statusWarning\": \"#f59e0b\"\n },\n \"typography\": {\n \"fontFamily\": \"Times New Roman\",\n \"h1\": {\n \"fontSize\": 36,\n \"lineHeight\": 1.2,\n \"fontWeight\": 700,\n \"letterSpacing\": \"-0.02em\"\n },\n \"h2\": {\n \"fontSize\": 28,\n \"lineHeight\": 1.25,\n \"fontWeight\": 700,\n \"letterSpacing\": \"-0.015em\"\n },\n \"h3\": {\n \"fontSize\": 22,\n \"lineHeight\": 1.3,\n \"fontWeight\": 600,\n \"letterSpacing\": \"-0.01em\"\n },\n \"h4\": {\n \"fontSize\": 18,\n \"lineHeight\": 1.35,\n \"fontWeight\": 600,\n \"letterSpacing\": \"-0.005em\"\n },\n \"h5\": {\n \"fontSize\": 16,\n \"lineHeight\": 1.4,\n \"fontWeight\": 600,\n \"letterSpacing\": \"0em\"\n },\n \"h6\": {\n \"fontSize\": 12,\n \"lineHeight\": 1,\n \"fontWeight\": 700,\n \"letterSpacing\": \"0\"\n },\n \"body\": {\n \"fontSize\": 14,\n \"lineHeight\": 1.4,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0\"\n },\n \"sm\": {\n \"fontSize\": 12,\n \"lineHeight\": 1.4,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0\"\n },\n \"xs\": {\n \"fontSize\": 11,\n \"lineHeight\": 1.35,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0\"\n }\n },\n \"borderRadius\": \"12px\"\n },\n {\n \"id\": \"dji\",\n \"name\": \"DJI Analysis\",\n \"category\": \"Automotive & Luxury\",\n \"description\": \"An analysis of DJI's design language — a product-photography showroom for drones and cameras, where full-bleed studio renders sit in square, gutter-separated tiles on a white canvas, every action is a rounded pill in a single engineering bl\",\n \"designMdPath\": \"/design-md/dji/DESIGN.md\",\n \"color\": {\n \"primary\": \"#0070d5\\\" # DJI Blue — Store pill, Buy Now pills, active selector, announcement link\",\n \"primaryHover\": \"#0070d5\\\" # DJI Blue — Store pill, Buy Now pills, active selector, announcement link\",\n \"primaryLight\": \"#e8f3ff\",\n \"bgPrimary\": \"#ffffff\\\" # page canvas, cards, nav, purchase bar\",\n \"bgSecondary\": \"#f7f9fa\\\" # feature-link band, store panels, In the Box tiles, store footer\",\n \"textPrimary\": \"#262626\\\" # headings and body (black at 85%)\",\n \"textSecondary\": \"#595959\\\" # secondary text, inactive tabs (black at 65%)\",\n \"textMuted\": \"#8c8c8c\\\" # tile eyebrows (black at 45%)\",\n \"borderSubtle\": \"#f0f0f0\\\" # tab track rule\",\n \"borderStrong\": \"#e5e8eb\",\n \"statusSuccess\": \"#10b981\",\n \"statusDanger\": \"#f43f5e\",\n \"statusWarning\": \"#f59e0b\"\n },\n \"typography\": {\n \"fontFamily\": \"Open Sans\",\n \"h1\": {\n \"fontSize\": 48,\n \"lineHeight\": 1.08,\n \"fontWeight\": 600,\n \"letterSpacing\": \"-1.44px\"\n },\n \"h2\": {\n \"fontSize\": 28,\n \"lineHeight\": 1.25,\n \"fontWeight\": 700,\n \"letterSpacing\": \"-0.015em\"\n },\n \"h3\": {\n \"fontSize\": 22,\n \"lineHeight\": 1.3,\n \"fontWeight\": 600,\n \"letterSpacing\": \"-0.01em\"\n },\n \"h4\": {\n \"fontSize\": 20,\n \"lineHeight\": 1.2,\n \"fontWeight\": 600,\n \"letterSpacing\": \"-0.6px\"\n },\n \"h5\": {\n \"fontSize\": 20,\n \"lineHeight\": 1.2,\n \"fontWeight\": 600,\n \"letterSpacing\": \"-0.6px\"\n },\n \"h6\": {\n \"fontSize\": 16,\n \"lineHeight\": 1.25,\n \"fontWeight\": 400,\n \"letterSpacing\": \"-0.32px\"\n },\n \"body\": {\n \"fontSize\": 16,\n \"lineHeight\": 1.5,\n \"fontWeight\": 400,\n \"letterSpacing\": \"-0.32px\"\n },\n \"sm\": {\n \"fontSize\": 12,\n \"lineHeight\": 1.33,\n \"fontWeight\": 400,\n \"letterSpacing\": \"-0.24px\"\n },\n \"xs\": {\n \"fontSize\": 12,\n \"lineHeight\": 1.33,\n \"fontWeight\": 400,\n \"letterSpacing\": \"-0.24px\"\n }\n },\n \"borderRadius\": \"8px\"\n },\n {\n \"id\": \"elevenlabs\",\n \"name\": \"ElevenLabs\",\n \"category\": \"AI & LLM\",\n \"description\": \"A voice-AI brand whose marketing surfaces read like a quietly editorial print magazine. The base canvas is off-white (`#f5f5f5`) holding warm near-black ink (`#292524`); the brand voltage is photographic, not chromatic — soft pastel atmosph\",\n \"designMdPath\": \"/design-md/elevenlabs/DESIGN.md\",\n \"color\": {\n \"primary\": \"#292524\",\n \"primaryHover\": \"#292524\",\n \"primaryLight\": \"#e8f3ff\",\n \"bgPrimary\": \"#f5f5f5\",\n \"bgSecondary\": \"#ffffff\",\n \"textPrimary\": \"#0c0a09\",\n \"textSecondary\": \"#777169\",\n \"textMuted\": \"#b0b8c1\",\n \"borderSubtle\": \"#e7e5e4\",\n \"borderStrong\": \"#d6d3d1\",\n \"statusSuccess\": \"#16a34a\",\n \"statusDanger\": \"#f43f5e\",\n \"statusWarning\": \"#f59e0b\"\n },\n \"typography\": {\n \"fontFamily\": \"'Waldenburg', serif\",\n \"h1\": {\n \"fontSize\": 48,\n \"lineHeight\": 1.08,\n \"fontWeight\": 300,\n \"letterSpacing\": \"-0.96px\"\n },\n \"h2\": {\n \"fontSize\": 36,\n \"lineHeight\": 1.17,\n \"fontWeight\": 300,\n \"letterSpacing\": \"-0.36px\"\n },\n \"h3\": {\n \"fontSize\": 32,\n \"lineHeight\": 1.13,\n \"fontWeight\": 300,\n \"letterSpacing\": \"-0.32px\"\n },\n \"h4\": {\n \"fontSize\": 18,\n \"lineHeight\": 1.35,\n \"fontWeight\": 600,\n \"letterSpacing\": \"-0.005em\"\n },\n \"h5\": {\n \"fontSize\": 16,\n \"lineHeight\": 1.4,\n \"fontWeight\": 600,\n \"letterSpacing\": \"0em\"\n },\n \"h6\": {\n \"fontSize\": 15,\n \"lineHeight\": 1,\n \"fontWeight\": 500,\n \"letterSpacing\": \"0\"\n },\n \"body\": {\n \"fontSize\": 15,\n \"lineHeight\": 1.55,\n \"fontWeight\": 400,\n \"letterSpacing\": \"-0.005em\"\n },\n \"sm\": {\n \"fontSize\": 15,\n \"lineHeight\": 1.47,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0.15px\"\n },\n \"xs\": {\n \"fontSize\": 14,\n \"lineHeight\": 1.5,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0\"\n }\n },\n \"borderRadius\": \"8px\"\n },\n {\n \"id\": \"expo\",\n \"name\": \"Expo\",\n \"category\": \"Developer Tools\",\n \"description\": \"A React Native developer-platform whose marketing site reads like a quietly-confident infrastructure brand. The base canvas is pure white with a soft sky-blue gradient atmospheric wash behind the hero; near-black ink (`#171717`) carries bod\",\n \"designMdPath\": \"/design-md/expo/DESIGN.md\",\n \"color\": {\n \"primary\": \"#000000\",\n \"primaryHover\": \"#000000\",\n \"primaryLight\": \"#e8f3ff\",\n \"bgPrimary\": \"#ffffff\",\n \"bgSecondary\": \"#ffffff\",\n \"textPrimary\": \"#171717\",\n \"textSecondary\": \"#999999\",\n \"textMuted\": \"#b0b8c1\",\n \"borderSubtle\": \"#f0f0f3\",\n \"borderStrong\": \"#dcdee0\",\n \"statusSuccess\": \"#16a34a\",\n \"statusDanger\": \"#f43f5e\",\n \"statusWarning\": \"#f59e0b\"\n },\n \"typography\": {\n \"fontFamily\": \"'Inter', sans-serif\",\n \"h1\": {\n \"fontSize\": 48,\n \"lineHeight\": 1.1,\n \"fontWeight\": 600,\n \"letterSpacing\": \"-1.44px\"\n },\n \"h2\": {\n \"fontSize\": 36,\n \"lineHeight\": 1.15,\n \"fontWeight\": 600,\n \"letterSpacing\": \"-1.08px\"\n },\n \"h3\": {\n \"fontSize\": 28,\n \"lineHeight\": 1.2,\n \"fontWeight\": 600,\n \"letterSpacing\": \"-0.84px\"\n },\n \"h4\": {\n \"fontSize\": 18,\n \"lineHeight\": 1.35,\n \"fontWeight\": 600,\n \"letterSpacing\": \"-0.005em\"\n },\n \"h5\": {\n \"fontSize\": 16,\n \"lineHeight\": 1.4,\n \"fontWeight\": 600,\n \"letterSpacing\": \"0em\"\n },\n \"h6\": {\n \"fontSize\": 14,\n \"lineHeight\": 1,\n \"fontWeight\": 500,\n \"letterSpacing\": \"0\"\n },\n \"body\": {\n \"fontSize\": 15,\n \"lineHeight\": 1.55,\n \"fontWeight\": 400,\n \"letterSpacing\": \"-0.005em\"\n },\n \"sm\": {\n \"fontSize\": 14,\n \"lineHeight\": 1.5,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0\"\n },\n \"xs\": {\n \"fontSize\": 13,\n \"lineHeight\": 1.4,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0\"\n }\n },\n \"borderRadius\": \"8px\"\n },\n {\n \"id\": \"ferrari\",\n \"name\": \"Ferrari\",\n \"category\": \"Automotive & Luxury\",\n \"description\": \"A luxury-automotive brand whose marketing surfaces read as cinematic editorial. The base canvas is **near-black** (`#181818`) holding pure white display type; white-canvas bands appear only inside specific editorial contexts (preowned listi\",\n \"designMdPath\": \"/design-md/ferrari/DESIGN.md\",\n \"color\": {\n \"primary\": \"#da291c\",\n \"primaryHover\": \"#9d2211\",\n \"primaryLight\": \"#da291c26\",\n \"bgPrimary\": \"#181818\",\n \"bgSecondary\": \"#303030\",\n \"textPrimary\": \"#ffffff\",\n \"textSecondary\": \"#666666\",\n \"textMuted\": \"#5c6470\",\n \"borderSubtle\": \"#303030\",\n \"borderStrong\": \"#3d414a\",\n \"statusSuccess\": \"#03904a\",\n \"statusDanger\": \"#f43f5e\",\n \"statusWarning\": \"#f13a2c\"\n },\n \"typography\": {\n \"fontFamily\": \"'FerrariSans', sans-serif\",\n \"h1\": {\n \"fontSize\": 56,\n \"lineHeight\": 1.1,\n \"fontWeight\": 500,\n \"letterSpacing\": \"-1.12px\"\n },\n \"h2\": {\n \"fontSize\": 36,\n \"lineHeight\": 1.2,\n \"fontWeight\": 500,\n \"letterSpacing\": \"-0.36px\"\n },\n \"h3\": {\n \"fontSize\": 26,\n \"lineHeight\": 1.5,\n \"fontWeight\": 500,\n \"letterSpacing\": \"0.195px\"\n },\n \"h4\": {\n \"fontSize\": 18,\n \"lineHeight\": 1.35,\n \"fontWeight\": 600,\n \"letterSpacing\": \"-0.005em\"\n },\n \"h5\": {\n \"fontSize\": 16,\n \"lineHeight\": 1.4,\n \"fontWeight\": 600,\n \"letterSpacing\": \"0em\"\n },\n \"h6\": {\n \"fontSize\": 14,\n \"lineHeight\": 1,\n \"fontWeight\": 700,\n \"letterSpacing\": \"1.4px\"\n },\n \"body\": {\n \"fontSize\": 15,\n \"lineHeight\": 1.55,\n \"fontWeight\": 400,\n \"letterSpacing\": \"-0.005em\"\n },\n \"sm\": {\n \"fontSize\": 13,\n \"lineHeight\": 1.5,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0\"\n },\n \"xs\": {\n \"fontSize\": 12,\n \"lineHeight\": 1.4,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0\"\n }\n },\n \"borderRadius\": \"6px\"\n },\n {\n \"id\": \"figma\",\n \"name\": \"Figma\",\n \"category\": \"Developer Tools\",\n \"description\": \"A confident black-and-white editorial frame interrupted by oversized, hand-cut pastel color blocks. The marketing canvas is rigorously monochrome — figmaSans variable type, pure white surfaces, pure black ink, pill-shaped CTAs — while each \",\n \"designMdPath\": \"/design-md/figma/DESIGN.md\",\n \"color\": {\n \"primary\": \"#000000\",\n \"primaryHover\": \"#000000\",\n \"primaryLight\": \"#e8f3ff\",\n \"bgPrimary\": \"#ffffff\",\n \"bgSecondary\": \"#f8f9fa\",\n \"textPrimary\": \"#000000\",\n \"textSecondary\": \"#8b95a1\",\n \"textMuted\": \"#b0b8c1\",\n \"borderSubtle\": \"#e6e6e6\",\n \"borderStrong\": \"#e5e8eb\",\n \"statusSuccess\": \"#1ea64a\",\n \"statusDanger\": \"#f43f5e\",\n \"statusWarning\": \"#f59e0b\"\n },\n \"typography\": {\n \"fontFamily\": \"figmaSans\",\n \"h1\": {\n \"fontSize\": 86,\n \"lineHeight\": 1,\n \"fontWeight\": 340,\n \"letterSpacing\": \"-1.72px\"\n },\n \"h2\": {\n \"fontSize\": 64,\n \"lineHeight\": 1.1,\n \"fontWeight\": 340,\n \"letterSpacing\": \"-0.96px\"\n },\n \"h3\": {\n \"fontSize\": 26,\n \"lineHeight\": 1.35,\n \"fontWeight\": 540,\n \"letterSpacing\": \"-0.26px\"\n },\n \"h4\": {\n \"fontSize\": 24,\n \"lineHeight\": 1.45,\n \"fontWeight\": 700,\n \"letterSpacing\": \"0\"\n },\n \"h5\": {\n \"fontSize\": 26,\n \"lineHeight\": 1.35,\n \"fontWeight\": 340,\n \"letterSpacing\": \"-0.26px\"\n },\n \"h6\": {\n \"fontSize\": 20,\n \"lineHeight\": 1.4,\n \"fontWeight\": 480,\n \"letterSpacing\": \"-0.10px\"\n },\n \"body\": {\n \"fontSize\": 18,\n \"lineHeight\": 1.45,\n \"fontWeight\": 320,\n \"letterSpacing\": \"-0.26px\"\n },\n \"sm\": {\n \"fontSize\": 16,\n \"lineHeight\": 1.45,\n \"fontWeight\": 330,\n \"letterSpacing\": \"-0.14px\"\n },\n \"xs\": {\n \"fontSize\": 12,\n \"lineHeight\": 1,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0.60px\"\n }\n },\n \"borderRadius\": \"8px\"\n },\n {\n \"id\": \"framer\",\n \"name\": \"Framer\",\n \"category\": \"Developer Tools\",\n \"description\": \"A confident dark-canvas builder marketing site that treats the page like a working artboard — pure black surfaces, white display type set in GT Walsheim Medium with aggressive negative tracking, and a single confident blue (#0099ff) reserve\",\n \"designMdPath\": \"/design-md/framer/DESIGN.md\",\n \"color\": {\n \"primary\": \"#ffffff\",\n \"primaryHover\": \"#ffffff\",\n \"primaryLight\": \"#ffffff26\",\n \"bgPrimary\": \"#090909\",\n \"bgSecondary\": \"#141414\",\n \"textPrimary\": \"#ffffff\",\n \"textSecondary\": \"#999999\",\n \"textMuted\": \"#5c6470\",\n \"borderSubtle\": \"#262626\",\n \"borderStrong\": \"#3d414a\",\n \"statusSuccess\": \"#22c55e\",\n \"statusDanger\": \"#f43f5e\",\n \"statusWarning\": \"#f59e0b\"\n },\n \"typography\": {\n \"fontFamily\": \"GT Walsheim Medium\",\n \"h1\": {\n \"fontSize\": 85,\n \"lineHeight\": 0.95,\n \"fontWeight\": 500,\n \"letterSpacing\": \"-4.25px\"\n },\n \"h2\": {\n \"fontSize\": 62,\n \"lineHeight\": 1,\n \"fontWeight\": 500,\n \"letterSpacing\": \"-3.1px\"\n },\n \"h3\": {\n \"fontSize\": 32,\n \"lineHeight\": 1.13,\n \"fontWeight\": 500,\n \"letterSpacing\": \"-1.0px\"\n },\n \"h4\": {\n \"fontSize\": 24,\n \"lineHeight\": 1.3,\n \"fontWeight\": 400,\n \"letterSpacing\": \"-0.01px\"\n },\n \"h5\": {\n \"fontSize\": 24,\n \"lineHeight\": 1.3,\n \"fontWeight\": 400,\n \"letterSpacing\": \"-0.01px\"\n },\n \"h6\": {\n \"fontSize\": 14,\n \"lineHeight\": 1,\n \"fontWeight\": 500,\n \"letterSpacing\": \"-0.14px\"\n },\n \"body\": {\n \"fontSize\": 15,\n \"lineHeight\": 1.3,\n \"fontWeight\": 400,\n \"letterSpacing\": \"-0.15px\"\n },\n \"sm\": {\n \"fontSize\": 14,\n \"lineHeight\": 1.4,\n \"fontWeight\": 500,\n \"letterSpacing\": \"-0.14px\"\n },\n \"xs\": {\n \"fontSize\": 13,\n \"lineHeight\": 1.2,\n \"fontWeight\": 500,\n \"letterSpacing\": \"-0.13px\"\n }\n },\n \"borderRadius\": \"10px\"\n },\n {\n \"id\": \"hashicorp\",\n \"name\": \"HashiCorp\",\n \"category\": \"Tech & Lifestyle\",\n \"description\": \"An enterprise-infrastructure marketing canvas built around a near-black ground (#000000) and a system of per-product accent colors — Terraform purple, Vault yellow, Consul pink, Waypoint cyan, Vagrant blue — that act as identity tokens rath\",\n \"designMdPath\": \"/design-md/hashicorp/DESIGN.md\",\n \"color\": {\n \"primary\": \"#000000\",\n \"primaryHover\": \"#000000\",\n \"primaryLight\": \"#00000026\",\n \"bgPrimary\": \"#000000\",\n \"bgSecondary\": \"#15181e\",\n \"textPrimary\": \"#ffffff\",\n \"textSecondary\": \"#b2b6bd\",\n \"textMuted\": \"#656a76\",\n \"borderSubtle\": \"#3b3d45\",\n \"borderStrong\": \"#3d414a\",\n \"statusSuccess\": \"#00ca8e\",\n \"statusDanger\": \"#f43f5e\",\n \"statusWarning\": \"#ffcf25\"\n },\n \"typography\": {\n \"fontFamily\": \"hashicorpSans\",\n \"h1\": {\n \"fontSize\": 80,\n \"lineHeight\": 1.17,\n \"fontWeight\": 700,\n \"letterSpacing\": \"-2.5px\"\n },\n \"h2\": {\n \"fontSize\": 56,\n \"lineHeight\": 1.18,\n \"fontWeight\": 700,\n \"letterSpacing\": \"-1.6px\"\n },\n \"h3\": {\n \"fontSize\": 40,\n \"lineHeight\": 1.19,\n \"fontWeight\": 600,\n \"letterSpacing\": \"-1.0px\"\n },\n \"h4\": {\n \"fontSize\": 22,\n \"lineHeight\": 1.18,\n \"fontWeight\": 600,\n \"letterSpacing\": \"-0.4px\"\n },\n \"h5\": {\n \"fontSize\": 20,\n \"lineHeight\": 1.35,\n \"fontWeight\": 600,\n \"letterSpacing\": \"-0.2px\"\n },\n \"h6\": {\n \"fontSize\": 14,\n \"lineHeight\": 1.29,\n \"fontWeight\": 600,\n \"letterSpacing\": \"0\"\n },\n \"body\": {\n \"fontSize\": 16,\n \"lineHeight\": 1.5,\n \"fontWeight\": 500,\n \"letterSpacing\": \"0\"\n },\n \"sm\": {\n \"fontSize\": 14,\n \"lineHeight\": 1.71,\n \"fontWeight\": 500,\n \"letterSpacing\": \"0\"\n },\n \"xs\": {\n \"fontSize\": 13,\n \"lineHeight\": 1.38,\n \"fontWeight\": 500,\n \"letterSpacing\": \"0.2px\"\n }\n },\n \"borderRadius\": \"8px\"\n },\n {\n \"id\": \"hp\",\n \"name\": \"HP\",\n \"category\": \"Tech & Lifestyle\",\n \"description\": \"An inspired interpretation of HP's design language — a white-paper enterprise-consumer system anchored by HP Electric Blue (`#024ad8`) as the lone signal CTA, near-black ink (`#1a1a1a`) for headlines, geometric Forma-DJR sans throughout, an\",\n \"designMdPath\": \"/design-md/hp/DESIGN.md\",\n \"color\": {\n \"primary\": \"#024ad8\",\n \"primaryHover\": \"#0e3191\",\n \"primaryLight\": \"#c9e0fc\",\n \"bgPrimary\": \"#ffffff\",\n \"bgSecondary\": \"#f8f9fa\",\n \"textPrimary\": \"#1a1a1a\",\n \"textSecondary\": \"#8b95a1\",\n \"textMuted\": \"#b0b8c1\",\n \"borderSubtle\": \"#e8e8e8\",\n \"borderStrong\": \"#c2c2c2\",\n \"statusSuccess\": \"#10b981\",\n \"statusDanger\": \"#f43f5e\",\n \"statusWarning\": \"#f59e0b\"\n },\n \"typography\": {\n \"fontFamily\": \"Forma DJR Micro\",\n \"h1\": {\n \"fontSize\": 56,\n \"lineHeight\": 1,\n \"fontWeight\": 500,\n \"letterSpacing\": \"0\"\n },\n \"h2\": {\n \"fontSize\": 44,\n \"lineHeight\": 1,\n \"fontWeight\": 500,\n \"letterSpacing\": \"0\"\n },\n \"h3\": {\n \"fontSize\": 32,\n \"lineHeight\": 1,\n \"fontWeight\": 500,\n \"letterSpacing\": \"0\"\n },\n \"h4\": {\n \"fontSize\": 18,\n \"lineHeight\": 1.35,\n \"fontWeight\": 600,\n \"letterSpacing\": \"-0.005em\"\n },\n \"h5\": {\n \"fontSize\": 16,\n \"lineHeight\": 1.4,\n \"fontWeight\": 600,\n \"letterSpacing\": \"0em\"\n },\n \"h6\": {\n \"fontSize\": 14,\n \"lineHeight\": 1.45,\n \"fontWeight\": 600,\n \"letterSpacing\": \"0em\"\n },\n \"body\": {\n \"fontSize\": 18,\n \"lineHeight\": 1.33,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0\"\n },\n \"sm\": {\n \"fontSize\": 13,\n \"lineHeight\": 1.5,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0em\"\n },\n \"xs\": {\n \"fontSize\": 11,\n \"lineHeight\": 1.4,\n \"fontWeight\": 500,\n \"letterSpacing\": \"0.01em\"\n }\n },\n \"borderRadius\": \"4px\"\n },\n {\n \"id\": \"ibm\",\n \"name\": \"IBM\",\n \"category\": \"Tech & Lifestyle\",\n \"description\": \"An enterprise-marketing canvas faithful to Carbon Design System: white surfaces, charcoal type, IBM Blue (#0f62fe) as the single confident accent, and a deliberately flat-square aesthetic where corners stay at 0–4px. Type runs IBM Plex Sans\",\n \"designMdPath\": \"/design-md/ibm/DESIGN.md\",\n \"color\": {\n \"primary\": \"#0f62fe\",\n \"primaryHover\": \"#0f62fe\",\n \"primaryLight\": \"#e8f3ff\",\n \"bgPrimary\": \"#ffffff\",\n \"bgSecondary\": \"#f4f4f4\",\n \"textPrimary\": \"#161616\",\n \"textSecondary\": \"#525252\",\n \"textMuted\": \"#8c8c8c\",\n \"borderSubtle\": \"#e0e0e0\",\n \"borderStrong\": \"#161616\",\n \"statusSuccess\": \"#24a148\",\n \"statusDanger\": \"#f43f5e\",\n \"statusWarning\": \"#f1c21b\"\n },\n \"typography\": {\n \"fontFamily\": \"IBM Plex Sans\",\n \"h1\": {\n \"fontSize\": 76,\n \"lineHeight\": 1.17,\n \"fontWeight\": 300,\n \"letterSpacing\": \"-0.5px\"\n },\n \"h2\": {\n \"fontSize\": 60,\n \"lineHeight\": 1.17,\n \"fontWeight\": 300,\n \"letterSpacing\": \"-0.4px\"\n },\n \"h3\": {\n \"fontSize\": 42,\n \"lineHeight\": 1.2,\n \"fontWeight\": 300,\n \"letterSpacing\": \"0\"\n },\n \"h4\": {\n \"fontSize\": 24,\n \"lineHeight\": 1.33,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0\"\n },\n \"h5\": {\n \"fontSize\": 20,\n \"lineHeight\": 1.4,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0\"\n },\n \"h6\": {\n \"fontSize\": 14,\n \"lineHeight\": 1.29,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0.16px\"\n },\n \"body\": {\n \"fontSize\": 16,\n \"lineHeight\": 1.5,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0.16px\"\n },\n \"sm\": {\n \"fontSize\": 14,\n \"lineHeight\": 1.29,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0.16px\"\n },\n \"xs\": {\n \"fontSize\": 12,\n \"lineHeight\": 1.33,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0.32px\"\n }\n },\n \"borderRadius\": \"6px\"\n },\n {\n \"id\": \"intercom\",\n \"name\": \"Intercom\",\n \"category\": \"Tech & Lifestyle\",\n \"description\": \"An editorial customer-service marketing canvas built around a soft cream-white ground, charcoal type set in Saans (Intercom's proprietary geometric sans), and a single confident Fin Orange (#ff5600) reserved for the Fin AI brand. Cards live\",\n \"designMdPath\": \"/design-md/intercom/DESIGN.md\",\n \"color\": {\n \"primary\": \"#111111\",\n \"primaryHover\": \"#111111\",\n \"primaryLight\": \"#e8f3ff\",\n \"bgPrimary\": \"#f5f1ec\",\n \"bgSecondary\": \"#ffffff\",\n \"textPrimary\": \"#111111\",\n \"textSecondary\": \"#626260\",\n \"textMuted\": \"#7b7b78\",\n \"borderSubtle\": \"#d3cec6\",\n \"borderStrong\": \"#e5e8eb\",\n \"statusSuccess\": \"#0bdf50\",\n \"statusDanger\": \"#f43f5e\",\n \"statusWarning\": \"#f59e0b\"\n },\n \"typography\": {\n \"fontFamily\": \"Saans\",\n \"h1\": {\n \"fontSize\": 72,\n \"lineHeight\": 1.05,\n \"fontWeight\": 500,\n \"letterSpacing\": \"-2.0px\"\n },\n \"h2\": {\n \"fontSize\": 56,\n \"lineHeight\": 1.1,\n \"fontWeight\": 500,\n \"letterSpacing\": \"-1.4px\"\n },\n \"h3\": {\n \"fontSize\": 40,\n \"lineHeight\": 1.15,\n \"fontWeight\": 500,\n \"letterSpacing\": \"-0.8px\"\n },\n \"h4\": {\n \"fontSize\": 22,\n \"lineHeight\": 1.25,\n \"fontWeight\": 500,\n \"letterSpacing\": \"-0.3px\"\n },\n \"h5\": {\n \"fontSize\": 20,\n \"lineHeight\": 1.4,\n \"fontWeight\": 400,\n \"letterSpacing\": \"-0.2px\"\n },\n \"h6\": {\n \"fontSize\": 15,\n \"lineHeight\": 1.2,\n \"fontWeight\": 500,\n \"letterSpacing\": \"0\"\n },\n \"body\": {\n \"fontSize\": 16,\n \"lineHeight\": 1.5,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0\"\n },\n \"sm\": {\n \"fontSize\": 14,\n \"lineHeight\": 1.5,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0\"\n },\n \"xs\": {\n \"fontSize\": 12,\n \"lineHeight\": 1.4,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0\"\n }\n },\n \"borderRadius\": \"8px\"\n },\n {\n \"id\": \"jobright\",\n \"name\": \"Jobright Analysis\",\n \"category\": \"Tech & Lifestyle\",\n \"description\": \"An analysis of Jobright's design language — an AI job-hunting platform built on an energetic spring-mint green against black and white, with pale-mint section bands carrying the page rhythm. Bold condensed Titillium Web display headings pai\",\n \"designMdPath\": \"/design-md/jobright/DESIGN.md\",\n \"color\": {\n \"primary\": \"#00f0a0\",\n \"primaryHover\": \"#00f0a0\",\n \"primaryLight\": \"#e8f3ff\",\n \"bgPrimary\": \"#ffffff\",\n \"bgSecondary\": \"#f8f9fa\",\n \"textPrimary\": \"#000000\",\n \"textSecondary\": \"#86909c\",\n \"textMuted\": \"#b0b8c1\",\n \"borderSubtle\": \"#e5e7eb\",\n \"borderStrong\": \"#e5e8eb\",\n \"statusSuccess\": \"#10b981\",\n \"statusDanger\": \"#f43f5e\",\n \"statusWarning\": \"#f59e0b\"\n },\n \"typography\": {\n \"fontFamily\": \"Inter\",\n \"h1\": {\n \"fontSize\": 36,\n \"lineHeight\": 1.2,\n \"fontWeight\": 700,\n \"letterSpacing\": \"-0.02em\"\n },\n \"h2\": {\n \"fontSize\": 28,\n \"lineHeight\": 1.25,\n \"fontWeight\": 700,\n \"letterSpacing\": \"-0.015em\"\n },\n \"h3\": {\n \"fontSize\": 22,\n \"lineHeight\": 1.3,\n \"fontWeight\": 600,\n \"letterSpacing\": \"-0.01em\"\n },\n \"h4\": {\n \"fontSize\": 18,\n \"lineHeight\": 1.35,\n \"fontWeight\": 600,\n \"letterSpacing\": \"-0.005em\"\n },\n \"h5\": {\n \"fontSize\": 16,\n \"lineHeight\": 1.4,\n \"fontWeight\": 600,\n \"letterSpacing\": \"0em\"\n },\n \"h6\": {\n \"fontSize\": 16,\n \"lineHeight\": 1,\n \"fontWeight\": 600,\n \"letterSpacing\": \"0\"\n },\n \"body\": {\n \"fontSize\": 18,\n \"lineHeight\": 1.6,\n \"fontWeight\": 300,\n \"letterSpacing\": \"0\"\n },\n \"sm\": {\n \"fontSize\": 14,\n \"lineHeight\": 1.5,\n \"fontWeight\": 500,\n \"letterSpacing\": \"0\"\n },\n \"xs\": {\n \"fontSize\": 13,\n \"lineHeight\": 1.4,\n \"fontWeight\": 500,\n \"letterSpacing\": \"0\"\n }\n },\n \"borderRadius\": \"16px\"\n },\n {\n \"id\": \"linear.app\",\n \"name\": \"Linear\",\n \"category\": \"Developer Tools\",\n \"description\": \"A near-black product-focused marketing canvas built around #010102 (the deepest dark surface of any tool in this collection), light gray text (#f7f8f8), and the signature Linear lavender-blue (#5e6ad2) used as the single chromatic accent. T\",\n \"designMdPath\": \"/design-md/linear.app/DESIGN.md\",\n \"color\": {\n \"primary\": \"#5e6ad2\",\n \"primaryHover\": \"#828fff\",\n \"primaryLight\": \"#5e6ad226\",\n \"bgPrimary\": \"#010102\",\n \"bgSecondary\": \"#0f1011\",\n \"textPrimary\": \"#f7f8f8\",\n \"textSecondary\": \"#d0d6e0\",\n \"textMuted\": \"#8a8f98\",\n \"borderSubtle\": \"#23252a\",\n \"borderStrong\": \"#34343a\",\n \"statusSuccess\": \"#27a644\",\n \"statusDanger\": \"#f43f5e\",\n \"statusWarning\": \"#f59e0b\"\n },\n \"typography\": {\n \"fontFamily\": \"Linear Display\",\n \"h1\": {\n \"fontSize\": 80,\n \"lineHeight\": 1.05,\n \"fontWeight\": 600,\n \"letterSpacing\": \"-3.0px\"\n },\n \"h2\": {\n \"fontSize\": 56,\n \"lineHeight\": 1.1,\n \"fontWeight\": 600,\n \"letterSpacing\": \"-1.8px\"\n },\n \"h3\": {\n \"fontSize\": 40,\n \"lineHeight\": 1.15,\n \"fontWeight\": 600,\n \"letterSpacing\": \"-1.0px\"\n },\n \"h4\": {\n \"fontSize\": 22,\n \"lineHeight\": 1.25,\n \"fontWeight\": 500,\n \"letterSpacing\": \"-0.4px\"\n },\n \"h5\": {\n \"fontSize\": 20,\n \"lineHeight\": 1.4,\n \"fontWeight\": 400,\n \"letterSpacing\": \"-0.2px\"\n },\n \"h6\": {\n \"fontSize\": 14,\n \"lineHeight\": 1.2,\n \"fontWeight\": 500,\n \"letterSpacing\": \"0\"\n },\n \"body\": {\n \"fontSize\": 16,\n \"lineHeight\": 1.5,\n \"fontWeight\": 400,\n \"letterSpacing\": \"-0.05px\"\n },\n \"sm\": {\n \"fontSize\": 14,\n \"lineHeight\": 1.5,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0\"\n },\n \"xs\": {\n \"fontSize\": 12,\n \"lineHeight\": 1.4,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0\"\n }\n },\n \"borderRadius\": \"8px\"\n },\n {\n \"id\": \"mercury\",\n \"name\": \"Mercury Analysis\",\n \"category\": \"Fintech & Web3\",\n \"description\": \"An analysis of Mercury's design language — a fintech system that moves between a deep ink-violet night world on the homepage and a pale, near-white light world on its product and pricing pages, held together by one confident indigo action p\",\n \"designMdPath\": \"/design-md/mercury/DESIGN.md\",\n \"color\": {\n \"primary\": \"#5266eb\",\n \"primaryHover\": \"#5266eb\",\n \"primaryLight\": \"#e8f3ff\",\n \"bgPrimary\": \"#fbfcfd\",\n \"bgSecondary\": \"#ffffff\",\n \"textPrimary\": \"#28253b\",\n \"textSecondary\": \"#554e7b\",\n \"textMuted\": \"#b0b8c1\",\n \"borderSubtle\": \"#f2f4f6\",\n \"borderStrong\": \"#e5e8eb\",\n \"statusSuccess\": \"#10b981\",\n \"statusDanger\": \"#f43f5e\",\n \"statusWarning\": \"#f59e0b\"\n },\n \"typography\": {\n \"fontFamily\": \"arcadia\",\n \"h1\": {\n \"fontSize\": 36,\n \"lineHeight\": 1.2,\n \"fontWeight\": 700,\n \"letterSpacing\": \"-0.02em\"\n },\n \"h2\": {\n \"fontSize\": 28,\n \"lineHeight\": 1.25,\n \"fontWeight\": 700,\n \"letterSpacing\": \"-0.015em\"\n },\n \"h3\": {\n \"fontSize\": 22,\n \"lineHeight\": 1.3,\n \"fontWeight\": 600,\n \"letterSpacing\": \"-0.01em\"\n },\n \"h4\": {\n \"fontSize\": 24,\n \"lineHeight\": 1.2,\n \"fontWeight\": 480,\n \"letterSpacing\": \"0.48px\"\n },\n \"h5\": {\n \"fontSize\": 24,\n \"lineHeight\": 1.2,\n \"fontWeight\": 480,\n \"letterSpacing\": \"0.48px\"\n },\n \"h6\": {\n \"fontSize\": 14,\n \"lineHeight\": 1,\n \"fontWeight\": 500,\n \"letterSpacing\": \"0.28px\"\n },\n \"body\": {\n \"fontSize\": 16,\n \"lineHeight\": 1.4,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0\"\n },\n \"sm\": {\n \"fontSize\": 13,\n \"lineHeight\": 1.5,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0em\"\n },\n \"xs\": {\n \"fontSize\": 11,\n \"lineHeight\": 1.4,\n \"fontWeight\": 500,\n \"letterSpacing\": \"0.01em\"\n }\n },\n \"borderRadius\": \"12px\"\n },\n {\n \"id\": \"meta\",\n \"name\": \"Meta\",\n \"category\": \"Tech & Lifestyle\",\n \"description\": \"Meta's design system spans hardware commerce (Quest VR, Ray-Ban Meta AI glasses) and brand surfaces with a confident product-merchandising voice. The system pairs a stark white canvas with full-bleed photographic product cards, a confident \",\n \"designMdPath\": \"/design-md/meta/DESIGN.md\",\n \"color\": {\n \"primary\": \"#0064e0\",\n \"primaryHover\": \"#0457cb\",\n \"primaryLight\": \"#0091ff\",\n \"bgPrimary\": \"#ffffff\",\n \"bgSecondary\": \"#f8f9fa\",\n \"textPrimary\": \"#1c1e21\",\n \"textSecondary\": \"#8b95a1\",\n \"textMuted\": \"#b0b8c1\",\n \"borderSubtle\": \"#ced0d4\",\n \"borderStrong\": \"#e5e8eb\",\n \"statusSuccess\": \"#31a24c\",\n \"statusDanger\": \"#f43f5e\",\n \"statusWarning\": \"#f7b928\"\n },\n \"typography\": {\n \"fontFamily\": \"Optimistic VF\",\n \"h1\": {\n \"fontSize\": 64,\n \"lineHeight\": 1.16,\n \"fontWeight\": 500,\n \"letterSpacing\": \"-0.02em\"\n },\n \"h2\": {\n \"fontSize\": 48,\n \"lineHeight\": 1.17,\n \"fontWeight\": 500,\n \"letterSpacing\": \"-0.015em\"\n },\n \"h3\": {\n \"fontSize\": 36,\n \"lineHeight\": 1.28,\n \"fontWeight\": 500,\n \"letterSpacing\": \"-0.01em\"\n },\n \"h4\": {\n \"fontSize\": 28,\n \"lineHeight\": 1.21,\n \"fontWeight\": 300,\n \"letterSpacing\": \"-0.005em\"\n },\n \"h5\": {\n \"fontSize\": 24,\n \"lineHeight\": 1.25,\n \"fontWeight\": 500,\n \"letterSpacing\": \"0em\"\n },\n \"h6\": {\n \"fontSize\": 14,\n \"lineHeight\": 1.45,\n \"fontWeight\": 600,\n \"letterSpacing\": \"0em\"\n },\n \"body\": {\n \"fontSize\": 15,\n \"lineHeight\": 1.55,\n \"fontWeight\": 400,\n \"letterSpacing\": \"-0.005em\"\n },\n \"sm\": {\n \"fontSize\": 14,\n \"lineHeight\": 1.43,\n \"fontWeight\": 400,\n \"letterSpacing\": \"-0.14px\"\n },\n \"xs\": {\n \"fontSize\": 12,\n \"lineHeight\": 1.33,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0.01em\"\n }\n },\n \"borderRadius\": \"6px\"\n },\n {\n \"id\": \"minimax\",\n \"name\": \"MiniMax\",\n \"category\": \"AI & LLM\",\n \"description\": \"MiniMax presents itself as a premium AI infrastructure brand through a striking duality — bold black-pill CTAs and stark white canvas for marketing, paired with vibrant gradient product cards (orange-red, magenta-pink, purple, blue) that tu\",\n \"designMdPath\": \"/design-md/minimax/DESIGN.md\",\n \"color\": {\n \"primary\": \"#0a0a0a\",\n \"primaryHover\": \"#0a0a0a\",\n \"primaryLight\": \"#181e25\",\n \"bgPrimary\": \"#ffffff\",\n \"bgSecondary\": \"#f7f8fa\",\n \"textPrimary\": \"#0a0a0a\",\n \"textSecondary\": \"#a8aab2\",\n \"textMuted\": \"#b0b8c1\",\n \"borderSubtle\": \"#e5e7eb\",\n \"borderStrong\": \"#e5e8eb\",\n \"statusSuccess\": \"#10b981\",\n \"statusDanger\": \"#f43f5e\",\n \"statusWarning\": \"#f59e0b\"\n },\n \"typography\": {\n \"fontFamily\": \"DM Sans\",\n \"h1\": {\n \"fontSize\": 80,\n \"lineHeight\": 1.1,\n \"fontWeight\": 600,\n \"letterSpacing\": \"-2px\"\n },\n \"h2\": {\n \"fontSize\": 56,\n \"lineHeight\": 1.1,\n \"fontWeight\": 600,\n \"letterSpacing\": \"-1.5px\"\n },\n \"h3\": {\n \"fontSize\": 40,\n \"lineHeight\": 1.2,\n \"fontWeight\": 600,\n \"letterSpacing\": \"-1px\"\n },\n \"h4\": {\n \"fontSize\": 20,\n \"lineHeight\": 1.4,\n \"fontWeight\": 600,\n \"letterSpacing\": \"-0.005em\"\n },\n \"h5\": {\n \"fontSize\": 24,\n \"lineHeight\": 1.3,\n \"fontWeight\": 600,\n \"letterSpacing\": \"0em\"\n },\n \"h6\": {\n \"fontSize\": 14,\n \"lineHeight\": 1.45,\n \"fontWeight\": 600,\n \"letterSpacing\": \"0em\"\n },\n \"body\": {\n \"fontSize\": 15,\n \"lineHeight\": 1.55,\n \"fontWeight\": 400,\n \"letterSpacing\": \"-0.005em\"\n },\n \"sm\": {\n \"fontSize\": 14,\n \"lineHeight\": 1.5,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0em\"\n },\n \"xs\": {\n \"fontSize\": 13,\n \"lineHeight\": 1.7,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0.01em\"\n }\n },\n \"borderRadius\": \"8px\"\n },\n {\n \"id\": \"mintlify\",\n \"name\": \"Mintlify\",\n \"category\": \"Developer Tools\",\n \"description\": \"Mintlify presents documentation infrastructure with a dual-mode aesthetic — atmospheric sky-gradient marketing heroes (cloud illustration backdrops, soft cream-to-blue washes) paired with dense developer-grade documentation surfaces. The sy\",\n \"designMdPath\": \"/design-md/mintlify/DESIGN.md\",\n \"color\": {\n \"primary\": \"#0a0a0a\",\n \"primaryHover\": \"#0a0a0a\",\n \"primaryLight\": \"#e8f3ff\",\n \"bgPrimary\": \"#ffffff\",\n \"bgSecondary\": \"#f7f7f7\",\n \"textPrimary\": \"#0a0a0a\",\n \"textSecondary\": \"#a8a8aa\",\n \"textMuted\": \"#b0b8c1\",\n \"borderSubtle\": \"#e5e5e5\",\n \"borderStrong\": \"#e5e8eb\",\n \"statusSuccess\": \"#10b981\",\n \"statusDanger\": \"#f43f5e\",\n \"statusWarning\": \"#f59e0b\"\n },\n \"typography\": {\n \"fontFamily\": \"Inter\",\n \"h1\": {\n \"fontSize\": 72,\n \"lineHeight\": 1.05,\n \"fontWeight\": 600,\n \"letterSpacing\": \"-2px\"\n },\n \"h2\": {\n \"fontSize\": 56,\n \"lineHeight\": 1.1,\n \"fontWeight\": 600,\n \"letterSpacing\": \"-1.5px\"\n },\n \"h3\": {\n \"fontSize\": 22,\n \"lineHeight\": 1.3,\n \"fontWeight\": 600,\n \"letterSpacing\": \"-0.01em\"\n },\n \"h4\": {\n \"fontSize\": 18,\n \"lineHeight\": 1.35,\n \"fontWeight\": 600,\n \"letterSpacing\": \"-0.005em\"\n },\n \"h5\": {\n \"fontSize\": 16,\n \"lineHeight\": 1.4,\n \"fontWeight\": 600,\n \"letterSpacing\": \"0em\"\n },\n \"h6\": {\n \"fontSize\": 14,\n \"lineHeight\": 1.45,\n \"fontWeight\": 600,\n \"letterSpacing\": \"0em\"\n },\n \"body\": {\n \"fontSize\": 15,\n \"lineHeight\": 1.55,\n \"fontWeight\": 400,\n \"letterSpacing\": \"-0.005em\"\n },\n \"sm\": {\n \"fontSize\": 14,\n \"lineHeight\": 1.5,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0em\"\n },\n \"xs\": {\n \"fontSize\": 13,\n \"lineHeight\": 1.4,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0.01em\"\n }\n },\n \"borderRadius\": \"8px\"\n },\n {\n \"id\": \"miro\",\n \"name\": \"Miro\",\n \"category\": \"Tech & Lifestyle\",\n \"description\": \"Miro presents itself as the AI-powered visual workspace through a confident, almost playful brand voice — anchored by its signature canary yellow ({colors.brand-yellow}) wordmark over white canvas, broken open by colorful pastel feature tin\",\n \"designMdPath\": \"/design-md/miro/DESIGN.md\",\n \"color\": {\n \"primary\": \"#1c1c1e\",\n \"primaryHover\": \"#1c1c1e\",\n \"primaryLight\": \"#e8f3ff\",\n \"bgPrimary\": \"#ffffff\",\n \"bgSecondary\": \"#f7f8fa\",\n \"textPrimary\": \"#1c1c1e\",\n \"textSecondary\": \"#a5a8b5\",\n \"textMuted\": \"#b0b8c1\",\n \"borderSubtle\": \"#e0e2e8\",\n \"borderStrong\": \"#c7cad5\",\n \"statusSuccess\": \"#10b981\",\n \"statusDanger\": \"#f43f5e\",\n \"statusWarning\": \"#f59e0b\"\n },\n \"typography\": {\n \"fontFamily\": \"Roobert PRO\",\n \"h1\": {\n \"fontSize\": 80,\n \"lineHeight\": 1.05,\n \"fontWeight\": 500,\n \"letterSpacing\": \"-2px\"\n },\n \"h2\": {\n \"fontSize\": 60,\n \"lineHeight\": 1.1,\n \"fontWeight\": 500,\n \"letterSpacing\": \"-1.5px\"\n },\n \"h3\": {\n \"fontSize\": 22,\n \"lineHeight\": 1.3,\n \"fontWeight\": 600,\n \"letterSpacing\": \"-0.01em\"\n },\n \"h4\": {\n \"fontSize\": 18,\n \"lineHeight\": 1.35,\n \"fontWeight\": 600,\n \"letterSpacing\": \"-0.005em\"\n },\n \"h5\": {\n \"fontSize\": 16,\n \"lineHeight\": 1.4,\n \"fontWeight\": 600,\n \"letterSpacing\": \"0em\"\n },\n \"h6\": {\n \"fontSize\": 14,\n \"lineHeight\": 1.45,\n \"fontWeight\": 600,\n \"letterSpacing\": \"0em\"\n },\n \"body\": {\n \"fontSize\": 15,\n \"lineHeight\": 1.55,\n \"fontWeight\": 400,\n \"letterSpacing\": \"-0.005em\"\n },\n \"sm\": {\n \"fontSize\": 14,\n \"lineHeight\": 1.5,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0em\"\n },\n \"xs\": {\n \"fontSize\": 13,\n \"lineHeight\": 1.4,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0.01em\"\n }\n },\n \"borderRadius\": \"8px\"\n },\n {\n \"id\": \"mistral.ai\",\n \"name\": \"Mistral-AI\",\n \"category\": \"AI & LLM\",\n \"description\": \"Mistral AI brands itself with a singular signature — atmospheric sunset gradients (mustard, orange, deep red) layered over photography of mountains, plus a horizontal \\\\\\\"sunset stripe\\\\\\\" bar that closes every page. The system pairs warm cream\",\n \"designMdPath\": \"/design-md/mistral.ai/DESIGN.md\",\n \"color\": {\n \"primary\": \"#fa520f\",\n \"primaryHover\": \"#cc3a05\",\n \"primaryLight\": \"#e8f3ff\",\n \"bgPrimary\": \"#ffffff\",\n \"bgSecondary\": \"#fafafa\",\n \"textPrimary\": \"#1f1f1f\",\n \"textSecondary\": \"#a8a8a8\",\n \"textMuted\": \"#b0b8c1\",\n \"borderSubtle\": \"#e5e5e5\",\n \"borderStrong\": \"#c7c7c7\",\n \"statusSuccess\": \"#10b981\",\n \"statusDanger\": \"#f43f5e\",\n \"statusWarning\": \"#f59e0b\"\n },\n \"typography\": {\n \"fontFamily\": \"PP Editorial Old\",\n \"h1\": {\n \"fontSize\": 84,\n \"lineHeight\": 1.05,\n \"fontWeight\": 400,\n \"letterSpacing\": \"-1.5px\"\n },\n \"h2\": {\n \"fontSize\": 64,\n \"lineHeight\": 1.1,\n \"fontWeight\": 400,\n \"letterSpacing\": \"-1px\"\n },\n \"h3\": {\n \"fontSize\": 22,\n \"lineHeight\": 1.3,\n \"fontWeight\": 600,\n \"letterSpacing\": \"-0.01em\"\n },\n \"h4\": {\n \"fontSize\": 18,\n \"lineHeight\": 1.35,\n \"fontWeight\": 600,\n \"letterSpacing\": \"-0.005em\"\n },\n \"h5\": {\n \"fontSize\": 16,\n \"lineHeight\": 1.4,\n \"fontWeight\": 600,\n \"letterSpacing\": \"0em\"\n },\n \"h6\": {\n \"fontSize\": 14,\n \"lineHeight\": 1.45,\n \"fontWeight\": 600,\n \"letterSpacing\": \"0em\"\n },\n \"body\": {\n \"fontSize\": 15,\n \"lineHeight\": 1.55,\n \"fontWeight\": 400,\n \"letterSpacing\": \"-0.005em\"\n },\n \"sm\": {\n \"fontSize\": 14,\n \"lineHeight\": 1.5,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0em\"\n },\n \"xs\": {\n \"fontSize\": 13,\n \"lineHeight\": 1.4,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0.01em\"\n }\n },\n \"borderRadius\": \"8px\"\n },\n {\n \"id\": \"mongodb\",\n \"name\": \"MongoDB\",\n \"category\": \"Tech & Lifestyle\",\n \"description\": \"MongoDB carries a strong dual-mode visual identity — dark deep-teal hero bands with bright MongoDB green ({colors.brand-green}) CTAs paired with stark white documentation surfaces. The signature green pill button is unmistakable across prod\",\n \"designMdPath\": \"/design-md/mongodb/DESIGN.md\",\n \"color\": {\n \"primary\": \"#00ed64\",\n \"primaryHover\": \"#00b545\",\n \"primaryLight\": \"#e8f3ff\",\n \"bgPrimary\": \"#ffffff\",\n \"bgSecondary\": \"#f9fbfa\",\n \"textPrimary\": \"#001e2b\",\n \"textSecondary\": \"#a8b3bc\",\n \"textMuted\": \"#b0b8c1\",\n \"borderSubtle\": \"#e1e5e8\",\n \"borderStrong\": \"#c1ccd6\",\n \"statusSuccess\": \"#10b981\",\n \"statusDanger\": \"#f43f5e\",\n \"statusWarning\": \"#f59e0b\"\n },\n \"typography\": {\n \"fontFamily\": \"Euclid Circular A\",\n \"h1\": {\n \"fontSize\": 72,\n \"lineHeight\": 1.1,\n \"fontWeight\": 500,\n \"letterSpacing\": \"-1.5px\"\n },\n \"h2\": {\n \"fontSize\": 56,\n \"lineHeight\": 1.15,\n \"fontWeight\": 500,\n \"letterSpacing\": \"-1px\"\n },\n \"h3\": {\n \"fontSize\": 22,\n \"lineHeight\": 1.3,\n \"fontWeight\": 600,\n \"letterSpacing\": \"-0.01em\"\n },\n \"h4\": {\n \"fontSize\": 18,\n \"lineHeight\": 1.35,\n \"fontWeight\": 600,\n \"letterSpacing\": \"-0.005em\"\n },\n \"h5\": {\n \"fontSize\": 16,\n \"lineHeight\": 1.4,\n \"fontWeight\": 600,\n \"letterSpacing\": \"0em\"\n },\n \"h6\": {\n \"fontSize\": 14,\n \"lineHeight\": 1.45,\n \"fontWeight\": 600,\n \"letterSpacing\": \"0em\"\n },\n \"body\": {\n \"fontSize\": 15,\n \"lineHeight\": 1.55,\n \"fontWeight\": 400,\n \"letterSpacing\": \"-0.005em\"\n },\n \"sm\": {\n \"fontSize\": 14,\n \"lineHeight\": 1.5,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0em\"\n },\n \"xs\": {\n \"fontSize\": 13,\n \"lineHeight\": 1.4,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0.01em\"\n }\n },\n \"borderRadius\": \"8px\"\n },\n {\n \"id\": \"mydealz\",\n \"name\": \"mydealz Analysis\",\n \"category\": \"Tech & Lifestyle\",\n \"description\": \"An analysis of mydealz's design language — a high-density German deals-community system built on a confident brand green, where a stacked white-card feed carries thousands of deals and every card wears the signature hot/cold temperature con\",\n \"designMdPath\": \"/design-md/mydealz/DESIGN.md\",\n \"color\": {\n \"primary\": \"#30a83c\",\n \"primaryHover\": \"#30a83c\",\n \"primaryLight\": \"#e8f3ff\",\n \"bgPrimary\": \"#f3f5f7\",\n \"bgSecondary\": \"#ffffff\",\n \"textPrimary\": \"#000000\",\n \"textSecondary\": \"#a7a9ac\",\n \"textMuted\": \"#b0b8c1\",\n \"borderSubtle\": \"#dfe1e4\",\n \"borderStrong\": \"#e5e8eb\",\n \"statusSuccess\": \"#10b981\",\n \"statusDanger\": \"#f43f5e\",\n \"statusWarning\": \"#f59e0b\"\n },\n \"typography\": {\n \"fontFamily\": \"Averta CY\",\n \"h1\": {\n \"fontSize\": 36,\n \"lineHeight\": 1.2,\n \"fontWeight\": 700,\n \"letterSpacing\": \"-0.02em\"\n },\n \"h2\": {\n \"fontSize\": 28,\n \"lineHeight\": 1.25,\n \"fontWeight\": 700,\n \"letterSpacing\": \"-0.015em\"\n },\n \"h3\": {\n \"fontSize\": 24,\n \"lineHeight\": 1.2,\n \"fontWeight\": 700,\n \"letterSpacing\": \"0\"\n },\n \"h4\": {\n \"fontSize\": 18,\n \"lineHeight\": 1.4,\n \"fontWeight\": 500,\n \"letterSpacing\": \"0\"\n },\n \"h5\": {\n \"fontSize\": 18,\n \"lineHeight\": 1.4,\n \"fontWeight\": 500,\n \"letterSpacing\": \"0\"\n },\n \"h6\": {\n \"fontSize\": 14,\n \"lineHeight\": 1.45,\n \"fontWeight\": 600,\n \"letterSpacing\": \"0em\"\n },\n \"body\": {\n \"fontSize\": 16,\n \"lineHeight\": 1.5,\n \"fontWeight\": 500,\n \"letterSpacing\": \"0\"\n },\n \"sm\": {\n \"fontSize\": 12,\n \"lineHeight\": 1.3,\n \"fontWeight\": 500,\n \"letterSpacing\": \"0\"\n },\n \"xs\": {\n \"fontSize\": 12,\n \"lineHeight\": 1.3,\n \"fontWeight\": 500,\n \"letterSpacing\": \"0\"\n }\n },\n \"borderRadius\": \"8px\"\n },\n {\n \"id\": \"nerdwallet\",\n \"name\": \"NerdWallet Analysis\",\n \"category\": \"Fintech & Web3\",\n \"description\": \"An analysis of NerdWallet's design language — a personal-finance comparison platform built almost entirely from one deep green and a ladder of mints beneath it. Editorial pages open on a green gradient band, then drop to near-white where de\",\n \"designMdPath\": \"/design-md/nerdwallet/DESIGN.md\",\n \"color\": {\n \"primary\": \"#008254\",\n \"primaryHover\": \"#006642\",\n \"primaryLight\": \"#e8f3ff\",\n \"bgPrimary\": \"#ffffff\",\n \"bgSecondary\": \"#f7f7f7\",\n \"textPrimary\": \"#000000\",\n \"textSecondary\": \"#64666a\",\n \"textMuted\": \"#b1b3b5\",\n \"borderSubtle\": \"#ebebec\",\n \"borderStrong\": \"#d8d9da\",\n \"statusSuccess\": \"#10b981\",\n \"statusDanger\": \"#f43f5e\",\n \"statusWarning\": \"#f59e0b\"\n },\n \"typography\": {\n \"fontFamily\": \"Gotham\",\n \"h1\": {\n \"fontSize\": 52,\n \"lineHeight\": 1.15,\n \"fontWeight\": 700,\n \"letterSpacing\": \"0\"\n },\n \"h2\": {\n \"fontSize\": 40,\n \"lineHeight\": 1.2,\n \"fontWeight\": 700,\n \"letterSpacing\": \"0\"\n },\n \"h3\": {\n \"fontSize\": 22,\n \"lineHeight\": 1.3,\n \"fontWeight\": 600,\n \"letterSpacing\": \"-0.01em\"\n },\n \"h4\": {\n \"fontSize\": 18,\n \"lineHeight\": 1.35,\n \"fontWeight\": 600,\n \"letterSpacing\": \"-0.005em\"\n },\n \"h5\": {\n \"fontSize\": 12,\n \"lineHeight\": 1.2,\n \"fontWeight\": 700,\n \"letterSpacing\": \"0\"\n },\n \"h6\": {\n \"fontSize\": 12,\n \"lineHeight\": 1.2,\n \"fontWeight\": 700,\n \"letterSpacing\": \"0\"\n },\n \"body\": {\n \"fontSize\": 18,\n \"lineHeight\": 1.5,\n \"fontWeight\": 300,\n \"letterSpacing\": \"0\"\n },\n \"sm\": {\n \"fontSize\": 14,\n \"lineHeight\": 1.5,\n \"fontWeight\": 300,\n \"letterSpacing\": \"0\"\n },\n \"xs\": {\n \"fontSize\": 12,\n \"lineHeight\": 1.4,\n \"fontWeight\": 500,\n \"letterSpacing\": \"0\"\n }\n },\n \"borderRadius\": \"6px\"\n },\n {\n \"id\": \"nike\",\n \"name\": \"Nike\",\n \"category\": \"Tech & Lifestyle\",\n \"description\": \"|\",\n \"designMdPath\": \"/design-md/nike/DESIGN.md\",\n \"color\": {\n \"primary\": \"#111111\",\n \"primaryHover\": \"#111111\",\n \"primaryLight\": \"#e8f3ff\",\n \"bgPrimary\": \"#ffffff\",\n \"bgSecondary\": \"#f8f9fa\",\n \"textPrimary\": \"#111111\",\n \"textSecondary\": \"#8b95a1\",\n \"textMuted\": \"#b0b8c1\",\n \"borderSubtle\": \"#cacacb\",\n \"borderStrong\": \"#e5e8eb\",\n \"statusSuccess\": \"#007d48\",\n \"statusDanger\": \"#f43f5e\",\n \"statusWarning\": \"#f59e0b\"\n },\n \"typography\": {\n \"fontFamily\": \"\\\"Pretendard Variable\\\", Pretendard, system-ui, sans-serif\",\n \"h1\": {\n \"fontSize\": 36,\n \"lineHeight\": 1.2,\n \"fontWeight\": 700,\n \"letterSpacing\": \"-0.02em\"\n },\n \"h2\": {\n \"fontSize\": 32,\n \"lineHeight\": 1.2,\n \"fontWeight\": 500,\n \"letterSpacing\": \"0\"\n },\n \"h3\": {\n \"fontSize\": 24,\n \"lineHeight\": 1.2,\n \"fontWeight\": 500,\n \"letterSpacing\": \"0\"\n },\n \"h4\": {\n \"fontSize\": 16,\n \"lineHeight\": 1.75,\n \"fontWeight\": 500,\n \"letterSpacing\": \"0\"\n },\n \"h5\": {\n \"fontSize\": 16,\n \"lineHeight\": 1.4,\n \"fontWeight\": 600,\n \"letterSpacing\": \"0em\"\n },\n \"h6\": {\n \"fontSize\": 14,\n \"lineHeight\": 1.45,\n \"fontWeight\": 600,\n \"letterSpacing\": \"0em\"\n },\n \"body\": {\n \"fontSize\": 15,\n \"lineHeight\": 1.55,\n \"fontWeight\": 400,\n \"letterSpacing\": \"-0.005em\"\n },\n \"sm\": {\n \"fontSize\": 13,\n \"lineHeight\": 1.5,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0em\"\n },\n \"xs\": {\n \"fontSize\": 11,\n \"lineHeight\": 1.4,\n \"fontWeight\": 500,\n \"letterSpacing\": \"0.01em\"\n }\n },\n \"borderRadius\": \"24px\"\n },\n {\n \"id\": \"nintendo-2001\",\n \"name\": \"Nintendo.com (2001) Analysis\",\n \"category\": \"Tech & Lifestyle\",\n \"description\": \"An analysis of Nintendo.com's 2001 design language — a brushed-periwinkle \\\\\\\"console chrome\\\\\\\" interface where every panel is a beveled metal plate, navigation glows amber over a halftone-dotted carbon bar, and bold outlined display type sits\",\n \"designMdPath\": \"/design-md/nintendo-2001/DESIGN.md\",\n \"color\": {\n \"primary\": \"#e60012\\\" # Nintendo Red — racetrack logo, alert\",\n \"primaryHover\": \"#e60012\\\" # Nintendo Red — racetrack logo, alert\",\n \"primaryLight\": \"#e8f3ff\",\n \"bgPrimary\": \"#7a8aba\\\" # Periwinkle metallic — primary interface body\",\n \"bgSecondary\": \"#ffffff\\\" # White — content cards, list-row highlight\",\n \"textPrimary\": \"#21242e\\\" # primary text on light\",\n \"textSecondary\": \"#8b95a1\",\n \"textMuted\": \"#b0b8c1\",\n \"borderSubtle\": \"#5a5f8c\\\" # blended bevel divider\",\n \"borderStrong\": \"#e5e8eb\",\n \"statusSuccess\": \"#10b981\",\n \"statusDanger\": \"#f43f5e\",\n \"statusWarning\": \"#f59e0b\"\n },\n \"typography\": {\n \"fontFamily\": \"Arial\",\n \"h1\": {\n \"fontSize\": 36,\n \"lineHeight\": 1.2,\n \"fontWeight\": 700,\n \"letterSpacing\": \"-0.02em\"\n },\n \"h2\": {\n \"fontSize\": 28,\n \"lineHeight\": 1.25,\n \"fontWeight\": 700,\n \"letterSpacing\": \"-0.015em\"\n },\n \"h3\": {\n \"fontSize\": 22,\n \"lineHeight\": 1.3,\n \"fontWeight\": 600,\n \"letterSpacing\": \"-0.01em\"\n },\n \"h4\": {\n \"fontSize\": 18,\n \"lineHeight\": 1.35,\n \"fontWeight\": 600,\n \"letterSpacing\": \"-0.005em\"\n },\n \"h5\": {\n \"fontSize\": 16,\n \"lineHeight\": 1.4,\n \"fontWeight\": 600,\n \"letterSpacing\": \"0em\"\n },\n \"h6\": {\n \"fontSize\": 14,\n \"lineHeight\": 1.45,\n \"fontWeight\": 600,\n \"letterSpacing\": \"0em\"\n },\n \"body\": {\n \"fontSize\": 12,\n \"lineHeight\": 1.4,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0\"\n },\n \"sm\": {\n \"fontSize\": 13,\n \"lineHeight\": 1.5,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0em\"\n },\n \"xs\": {\n \"fontSize\": 10,\n \"lineHeight\": 1.3,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0\"\n }\n },\n \"borderRadius\": \"6px\"\n },\n {\n \"id\": \"notion\",\n \"name\": \"Notion\",\n \"category\": \"Tech & Lifestyle\",\n \"description\": \"Notion presents itself as the all-in-one workspace through a confident, illustration-rich brand voice — anchored by a deep navy hero band ({colors.brand-navy}) decorated with brand-colored sticky-note dots and mesh wire illustrations, a sig\",\n \"designMdPath\": \"/design-md/notion/DESIGN.md\",\n \"color\": {\n \"primary\": \"#5645d4\",\n \"primaryHover\": \"#3a2a99\",\n \"primaryLight\": \"#e8f3ff\",\n \"bgPrimary\": \"#ffffff\",\n \"bgSecondary\": \"#f6f5f4\",\n \"textPrimary\": \"#1a1a1a\",\n \"textSecondary\": \"#bbb8b1\",\n \"textMuted\": \"#b0b8c1\",\n \"borderSubtle\": \"#e5e3df\",\n \"borderStrong\": \"#c8c4be\",\n \"statusSuccess\": \"#1aae39\",\n \"statusDanger\": \"#f43f5e\",\n \"statusWarning\": \"#dd5b00\"\n },\n \"typography\": {\n \"fontFamily\": \"Notion Sans\",\n \"h1\": {\n \"fontSize\": 80,\n \"lineHeight\": 1.05,\n \"fontWeight\": 600,\n \"letterSpacing\": \"-2px\"\n },\n \"h2\": {\n \"fontSize\": 56,\n \"lineHeight\": 1.1,\n \"fontWeight\": 600,\n \"letterSpacing\": \"-1px\"\n },\n \"h3\": {\n \"fontSize\": 22,\n \"lineHeight\": 1.3,\n \"fontWeight\": 600,\n \"letterSpacing\": \"-0.01em\"\n },\n \"h4\": {\n \"fontSize\": 18,\n \"lineHeight\": 1.35,\n \"fontWeight\": 600,\n \"letterSpacing\": \"-0.005em\"\n },\n \"h5\": {\n \"fontSize\": 16,\n \"lineHeight\": 1.4,\n \"fontWeight\": 600,\n \"letterSpacing\": \"0em\"\n },\n \"h6\": {\n \"fontSize\": 14,\n \"lineHeight\": 1.45,\n \"fontWeight\": 600,\n \"letterSpacing\": \"0em\"\n },\n \"body\": {\n \"fontSize\": 15,\n \"lineHeight\": 1.55,\n \"fontWeight\": 400,\n \"letterSpacing\": \"-0.005em\"\n },\n \"sm\": {\n \"fontSize\": 14,\n \"lineHeight\": 1.5,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0em\"\n },\n \"xs\": {\n \"fontSize\": 13,\n \"lineHeight\": 1.4,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0.01em\"\n }\n },\n \"borderRadius\": \"8px\"\n },\n {\n \"id\": \"nvidia\",\n \"name\": \"NVIDIA\",\n \"category\": \"Tech & Lifestyle\",\n \"description\": \"|\",\n \"designMdPath\": \"/design-md/nvidia/DESIGN.md\",\n \"color\": {\n \"primary\": \"#76b900\",\n \"primaryHover\": \"#76b900\",\n \"primaryLight\": \"#e8f3ff\",\n \"bgPrimary\": \"#ffffff\",\n \"bgSecondary\": \"#f8f9fa\",\n \"textPrimary\": \"#000000\",\n \"textSecondary\": \"#8b95a1\",\n \"textMuted\": \"#b0b8c1\",\n \"borderSubtle\": \"#cccccc\",\n \"borderStrong\": \"#5e5e5e\",\n \"statusSuccess\": \"#10b981\",\n \"statusDanger\": \"#f43f5e\",\n \"statusWarning\": \"#df6500\"\n },\n \"typography\": {\n \"fontFamily\": \"NVIDIA-EMEA\",\n \"h1\": {\n \"fontSize\": 48,\n \"lineHeight\": 1.25,\n \"fontWeight\": 700,\n \"letterSpacing\": \"0\"\n },\n \"h2\": {\n \"fontSize\": 36,\n \"lineHeight\": 1.25,\n \"fontWeight\": 700,\n \"letterSpacing\": \"0\"\n },\n \"h3\": {\n \"fontSize\": 22,\n \"lineHeight\": 1.75,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0\"\n },\n \"h4\": {\n \"fontSize\": 17,\n \"lineHeight\": 1.47,\n \"fontWeight\": 700,\n \"letterSpacing\": \"0\"\n },\n \"h5\": {\n \"fontSize\": 18,\n \"lineHeight\": 1.4,\n \"fontWeight\": 700,\n \"letterSpacing\": \"0\"\n },\n \"h6\": {\n \"fontSize\": 14,\n \"lineHeight\": 1.45,\n \"fontWeight\": 600,\n \"letterSpacing\": \"0em\"\n },\n \"body\": {\n \"fontSize\": 15,\n \"lineHeight\": 1.55,\n \"fontWeight\": 400,\n \"letterSpacing\": \"-0.005em\"\n },\n \"sm\": {\n \"fontSize\": 15,\n \"lineHeight\": 1.67,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0\"\n },\n \"xs\": {\n \"fontSize\": 11,\n \"lineHeight\": 1.4,\n \"fontWeight\": 500,\n \"letterSpacing\": \"0.01em\"\n }\n },\n \"borderRadius\": \"2px\"\n },\n {\n \"id\": \"ollama\",\n \"name\": \"Ollama\",\n \"category\": \"AI & LLM\",\n \"description\": \"|\",\n \"designMdPath\": \"/design-md/ollama/DESIGN.md\",\n \"color\": {\n \"primary\": \"#000000\",\n \"primaryHover\": \"#000000\",\n \"primaryLight\": \"#e8f3ff\",\n \"bgPrimary\": \"#ffffff\",\n \"bgSecondary\": \"#ffffff\",\n \"textPrimary\": \"#000000\",\n \"textSecondary\": \"#8b95a1\",\n \"textMuted\": \"#b0b8c1\",\n \"borderSubtle\": \"#e5e5e5\",\n \"borderStrong\": \"#d4d4d4\",\n \"statusSuccess\": \"#10b981\",\n \"statusDanger\": \"#f43f5e\",\n \"statusWarning\": \"#f59e0b\"\n },\n \"typography\": {\n \"fontFamily\": \"SF Pro Rounded\",\n \"h1\": {\n \"fontSize\": 36,\n \"lineHeight\": 1.11,\n \"fontWeight\": 500,\n \"letterSpacing\": \"0\"\n },\n \"h2\": {\n \"fontSize\": 30,\n \"lineHeight\": 1.2,\n \"fontWeight\": 500,\n \"letterSpacing\": \"0\"\n },\n \"h3\": {\n \"fontSize\": 24,\n \"lineHeight\": 1.33,\n \"fontWeight\": 600,\n \"letterSpacing\": \"0\"\n },\n \"h4\": {\n \"fontSize\": 20,\n \"lineHeight\": 1.4,\n \"fontWeight\": 500,\n \"letterSpacing\": \"0\"\n },\n \"h5\": {\n \"fontSize\": 18,\n \"lineHeight\": 1.56,\n \"fontWeight\": 500,\n \"letterSpacing\": \"0\"\n },\n \"h6\": {\n \"fontSize\": 14,\n \"lineHeight\": 1.45,\n \"fontWeight\": 600,\n \"letterSpacing\": \"0em\"\n },\n \"body\": {\n \"fontSize\": 15,\n \"lineHeight\": 1.55,\n \"fontWeight\": 400,\n \"letterSpacing\": \"-0.005em\"\n },\n \"sm\": {\n \"fontSize\": 14,\n \"lineHeight\": 1.43,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0\"\n },\n \"xs\": {\n \"fontSize\": 11,\n \"lineHeight\": 1.4,\n \"fontWeight\": 500,\n \"letterSpacing\": \"0.01em\"\n }\n },\n \"borderRadius\": \"8px\"\n },\n {\n \"id\": \"opencode.ai\",\n \"name\": \"OpenCode\",\n \"category\": \"AI & LLM\",\n \"description\": \"|\",\n \"designMdPath\": \"/design-md/opencode.ai/DESIGN.md\",\n \"color\": {\n \"primary\": \"#201d1d\",\n \"primaryHover\": \"#201d1d\",\n \"primaryLight\": \"#e8f3ff\",\n \"bgPrimary\": \"#fdfcfc\",\n \"bgSecondary\": \"#f1eeee\",\n \"textPrimary\": \"#201d1d\",\n \"textSecondary\": \"#8b95a1\",\n \"textMuted\": \"#b0b8c1\",\n \"borderSubtle\": \"rgba(15,0,0,0.12)\",\n \"borderStrong\": \"#646262\",\n \"statusSuccess\": \"#30d158\",\n \"statusDanger\": \"#ff3b30\",\n \"statusWarning\": \"#ff9f0a\"\n },\n \"typography\": {\n \"fontFamily\": \"Berkeley Mono\",\n \"h1\": {\n \"fontSize\": 38,\n \"lineHeight\": 1.5,\n \"fontWeight\": 700,\n \"letterSpacing\": \"0\"\n },\n \"h2\": {\n \"fontSize\": 28,\n \"lineHeight\": 1.25,\n \"fontWeight\": 700,\n \"letterSpacing\": \"-0.015em\"\n },\n \"h3\": {\n \"fontSize\": 22,\n \"lineHeight\": 1.3,\n \"fontWeight\": 600,\n \"letterSpacing\": \"-0.01em\"\n },\n \"h4\": {\n \"fontSize\": 16,\n \"lineHeight\": 1.5,\n \"fontWeight\": 700,\n \"letterSpacing\": \"0\"\n },\n \"h5\": {\n \"fontSize\": 16,\n \"lineHeight\": 1.4,\n \"fontWeight\": 600,\n \"letterSpacing\": \"0em\"\n },\n \"h6\": {\n \"fontSize\": 14,\n \"lineHeight\": 1.45,\n \"fontWeight\": 600,\n \"letterSpacing\": \"0em\"\n },\n \"body\": {\n \"fontSize\": 15,\n \"lineHeight\": 1.55,\n \"fontWeight\": 400,\n \"letterSpacing\": \"-0.005em\"\n },\n \"sm\": {\n \"fontSize\": 13,\n \"lineHeight\": 1.5,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0em\"\n },\n \"xs\": {\n \"fontSize\": 11,\n \"lineHeight\": 1.4,\n \"fontWeight\": 500,\n \"letterSpacing\": \"0.01em\"\n }\n },\n \"borderRadius\": \"4px\"\n },\n {\n \"id\": \"oracle\",\n \"name\": \"Oracle Analysis\",\n \"category\": \"Tech & Lifestyle\",\n \"description\": \"An analysis of Oracle's design language — an enterprise system built on a warm neutral ladder rather than a colour palette. Six numbered greys carry almost every surface, a single dark charcoal carries every action, and the famous red is he\",\n \"designMdPath\": \"/design-md/oracle/DESIGN.md\",\n \"color\": {\n \"primary\": \"#312d2a\",\n \"primaryHover\": \"#312d2a\",\n \"primaryLight\": \"#e8f3ff\",\n \"bgPrimary\": \"#ffffff\",\n \"bgSecondary\": \"#fbf9f8\",\n \"textPrimary\": \"#161513\",\n \"textSecondary\": \"#8b95a1\",\n \"textMuted\": \"#b0b8c1\",\n \"borderSubtle\": \"#e4e1dd\",\n \"borderStrong\": \"#e5e8eb\",\n \"statusSuccess\": \"#10b981\",\n \"statusDanger\": \"#f43f5e\",\n \"statusWarning\": \"#f59e0b\"\n },\n \"typography\": {\n \"fontFamily\": \"Oracle Sans\",\n \"h1\": {\n \"fontSize\": 36,\n \"lineHeight\": 1.2,\n \"fontWeight\": 700,\n \"letterSpacing\": \"-0.02em\"\n },\n \"h2\": {\n \"fontSize\": 28,\n \"lineHeight\": 33.6,\n \"fontWeight\": 800,\n \"letterSpacing\": \"0\"\n },\n \"h3\": {\n \"fontSize\": 24,\n \"lineHeight\": 28.8,\n \"fontWeight\": 800,\n \"letterSpacing\": \"0\"\n },\n \"h4\": {\n \"fontSize\": 20,\n \"lineHeight\": 24,\n \"fontWeight\": 800,\n \"letterSpacing\": \"0\"\n },\n \"h5\": {\n \"fontSize\": 24,\n \"lineHeight\": 33.6,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0\"\n },\n \"h6\": {\n \"fontSize\": 14,\n \"lineHeight\": 16.8,\n \"fontWeight\": 500,\n \"letterSpacing\": \"0\"\n },\n \"body\": {\n \"fontSize\": 16,\n \"lineHeight\": 22.4,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0\"\n },\n \"sm\": {\n \"fontSize\": 12,\n \"lineHeight\": 20,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0\"\n },\n \"xs\": {\n \"fontSize\": 12,\n \"lineHeight\": 20,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0\"\n }\n },\n \"borderRadius\": \"8px\"\n },\n {\n \"id\": \"oura\",\n \"name\": \"Oura Analysis\",\n \"category\": \"Tech & Lifestyle\",\n \"description\": \"An analysis of Oura's design language — a warm-paper wellness system that pairs a high-contrast Editorial serif with a quiet grotesque sans, wraps every surface in a cream-and-earth palette drawn from mustard, clay and olive, and drives con\",\n \"designMdPath\": \"/design-md/oura/DESIGN.md\",\n \"color\": {\n \"primary\": \"#2a72de\",\n \"primaryHover\": \"#2a72de\",\n \"primaryLight\": \"#e8f3ff\",\n \"bgPrimary\": \"#f7f1e8\",\n \"bgSecondary\": \"#ffffff\",\n \"textPrimary\": \"#1c1b1a\",\n \"textSecondary\": \"#8b95a1\",\n \"textMuted\": \"#b0b8c1\",\n \"borderSubtle\": \"#e1dcd3\",\n \"borderStrong\": \"#e5e8eb\",\n \"statusSuccess\": \"#10b981\",\n \"statusDanger\": \"#f43f5e\",\n \"statusWarning\": \"#f59e0b\"\n },\n \"typography\": {\n \"fontFamily\": \"AkkuratLL\",\n \"h1\": {\n \"fontSize\": 36,\n \"lineHeight\": 1.2,\n \"fontWeight\": 700,\n \"letterSpacing\": \"-0.02em\"\n },\n \"h2\": {\n \"fontSize\": 80,\n \"lineHeight\": 1.1,\n \"fontWeight\": 300,\n \"letterSpacing\": \"0\"\n },\n \"h3\": {\n \"fontSize\": 22,\n \"lineHeight\": 1.3,\n \"fontWeight\": 600,\n \"letterSpacing\": \"-0.01em\"\n },\n \"h4\": {\n \"fontSize\": 24,\n \"lineHeight\": 1.25,\n \"fontWeight\": 100,\n \"letterSpacing\": \"0\"\n },\n \"h5\": {\n \"fontSize\": 24,\n \"lineHeight\": 1.25,\n \"fontWeight\": 100,\n \"letterSpacing\": \"0\"\n },\n \"h6\": {\n \"fontSize\": 16,\n \"lineHeight\": 1,\n \"fontWeight\": 600,\n \"letterSpacing\": \"0\"\n },\n \"body\": {\n \"fontSize\": 18,\n \"lineHeight\": 1.5,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0\"\n },\n \"sm\": {\n \"fontSize\": 16,\n \"lineHeight\": 1.5,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0\"\n },\n \"xs\": {\n \"fontSize\": 13,\n \"lineHeight\": 1.4,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0\"\n }\n },\n \"borderRadius\": \"12px\"\n },\n {\n \"id\": \"pinterest\",\n \"name\": \"Pinterest\",\n \"category\": \"Tech & Lifestyle\",\n \"description\": \"|\",\n \"designMdPath\": \"/design-md/pinterest/DESIGN.md\",\n \"color\": {\n \"primary\": \"#e60023\",\n \"primaryHover\": \"#e60023\",\n \"primaryLight\": \"#e8f3ff\",\n \"bgPrimary\": \"#ffffff\",\n \"bgSecondary\": \"#f6f6f3\",\n \"textPrimary\": \"#000000\",\n \"textSecondary\": \"#8b95a1\",\n \"textMuted\": \"#b0b8c1\",\n \"borderSubtle\": \"#dadad3\",\n \"borderStrong\": \"#e5e8eb\",\n \"statusSuccess\": \"#10b981\",\n \"statusDanger\": \"#f43f5e\",\n \"statusWarning\": \"#f59e0b\"\n },\n \"typography\": {\n \"fontFamily\": \"Pin Sans\",\n \"h1\": {\n \"fontSize\": 70,\n \"lineHeight\": 1.1,\n \"fontWeight\": 600,\n \"letterSpacing\": \"-1.2px\"\n },\n \"h2\": {\n \"fontSize\": 44,\n \"lineHeight\": 1.15,\n \"fontWeight\": 700,\n \"letterSpacing\": \"-0.8px\"\n },\n \"h3\": {\n \"fontSize\": 22,\n \"lineHeight\": 1.25,\n \"fontWeight\": 600,\n \"letterSpacing\": \"0\"\n },\n \"h4\": {\n \"fontSize\": 18,\n \"lineHeight\": 1.3,\n \"fontWeight\": 600,\n \"letterSpacing\": \"0\"\n },\n \"h5\": {\n \"fontSize\": 16,\n \"lineHeight\": 1.4,\n \"fontWeight\": 600,\n \"letterSpacing\": \"0em\"\n },\n \"h6\": {\n \"fontSize\": 14,\n \"lineHeight\": 1.45,\n \"fontWeight\": 600,\n \"letterSpacing\": \"0em\"\n },\n \"body\": {\n \"fontSize\": 15,\n \"lineHeight\": 1.55,\n \"fontWeight\": 400,\n \"letterSpacing\": \"-0.005em\"\n },\n \"sm\": {\n \"fontSize\": 14,\n \"lineHeight\": 1.4,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0\"\n },\n \"xs\": {\n \"fontSize\": 11,\n \"lineHeight\": 1.4,\n \"fontWeight\": 500,\n \"letterSpacing\": \"0.01em\"\n }\n },\n \"borderRadius\": \"16px\"\n },\n {\n \"id\": \"playstation\",\n \"name\": \"PlayStation\",\n \"category\": \"Tech & Lifestyle\",\n \"description\": \"|\",\n \"designMdPath\": \"/design-md/playstation/DESIGN.md\",\n \"color\": {\n \"primary\": \"#0070d1\",\n \"primaryHover\": \"#0070d1\",\n \"primaryLight\": \"#e8f3ff\",\n \"bgPrimary\": \"#ffffff\",\n \"bgSecondary\": \"#f5f7fa\",\n \"textPrimary\": \"#000000\",\n \"textSecondary\": \"#8b95a1\",\n \"textMuted\": \"#b0b8c1\",\n \"borderSubtle\": \"#f2f4f6\",\n \"borderStrong\": \"#e5e8eb\",\n \"statusSuccess\": \"#10b981\",\n \"statusDanger\": \"#f43f5e\",\n \"statusWarning\": \"#c81b3a\"\n },\n \"typography\": {\n \"fontFamily\": \"PlayStation SST\",\n \"h1\": {\n \"fontSize\": 54,\n \"lineHeight\": 1.25,\n \"fontWeight\": 300,\n \"letterSpacing\": \"-0.1px\"\n },\n \"h2\": {\n \"fontSize\": 44,\n \"lineHeight\": 1.25,\n \"fontWeight\": 300,\n \"letterSpacing\": \"0.1px\"\n },\n \"h3\": {\n \"fontSize\": 35,\n \"lineHeight\": 1.25,\n \"fontWeight\": 300,\n \"letterSpacing\": \"0\"\n },\n \"h4\": {\n \"fontSize\": 18,\n \"lineHeight\": 1,\n \"fontWeight\": 600,\n \"letterSpacing\": \"0\"\n },\n \"h5\": {\n \"fontSize\": 16,\n \"lineHeight\": 1.4,\n \"fontWeight\": 600,\n \"letterSpacing\": \"0em\"\n },\n \"h6\": {\n \"fontSize\": 14,\n \"lineHeight\": 1.45,\n \"fontWeight\": 600,\n \"letterSpacing\": \"0em\"\n },\n \"body\": {\n \"fontSize\": 15,\n \"lineHeight\": 1.55,\n \"fontWeight\": 400,\n \"letterSpacing\": \"-0.005em\"\n },\n \"sm\": {\n \"fontSize\": 16,\n \"lineHeight\": 1.5,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0\"\n },\n \"xs\": {\n \"fontSize\": 11,\n \"lineHeight\": 1.4,\n \"fontWeight\": 500,\n \"letterSpacing\": \"0.01em\"\n }\n },\n \"borderRadius\": \"8px\"\n },\n {\n \"id\": \"posthog\",\n \"name\": \"PostHog\",\n \"category\": \"Tech & Lifestyle\",\n \"description\": \"|\",\n \"designMdPath\": \"/design-md/posthog/DESIGN.md\",\n \"color\": {\n \"primary\": \"#f7a501\",\n \"primaryHover\": \"#f7a501\",\n \"primaryLight\": \"#e8f3ff\",\n \"bgPrimary\": \"#eeefe9\",\n \"bgSecondary\": \"#ffffff\",\n \"textPrimary\": \"#23251d\",\n \"textSecondary\": \"#8b95a1\",\n \"textMuted\": \"#b0b8c1\",\n \"borderSubtle\": \"#bfc1b7\",\n \"borderStrong\": \"#e5e8eb\",\n \"statusSuccess\": \"#10b981\",\n \"statusDanger\": \"#f43f5e\",\n \"statusWarning\": \"#f59e0b\"\n },\n \"typography\": {\n \"fontFamily\": \"IBM Plex Sans Variable\",\n \"h1\": {\n \"fontSize\": 36,\n \"lineHeight\": 1.5,\n \"fontWeight\": 700,\n \"letterSpacing\": \"0\"\n },\n \"h2\": {\n \"fontSize\": 24,\n \"lineHeight\": 1.33,\n \"fontWeight\": 800,\n \"letterSpacing\": \"-0.6px\"\n },\n \"h3\": {\n \"fontSize\": 21,\n \"lineHeight\": 1.4,\n \"fontWeight\": 700,\n \"letterSpacing\": \"-0.5px\"\n },\n \"h4\": {\n \"fontSize\": 20,\n \"lineHeight\": 1.4,\n \"fontWeight\": 700,\n \"letterSpacing\": \"0\"\n },\n \"h5\": {\n \"fontSize\": 18,\n \"lineHeight\": 1.5,\n \"fontWeight\": 700,\n \"letterSpacing\": \"0\"\n },\n \"h6\": {\n \"fontSize\": 14,\n \"lineHeight\": 1.45,\n \"fontWeight\": 600,\n \"letterSpacing\": \"0em\"\n },\n \"body\": {\n \"fontSize\": 15,\n \"lineHeight\": 1.55,\n \"fontWeight\": 400,\n \"letterSpacing\": \"-0.005em\"\n },\n \"sm\": {\n \"fontSize\": 15,\n \"lineHeight\": 1.71,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0\"\n },\n \"xs\": {\n \"fontSize\": 11,\n \"lineHeight\": 1.4,\n \"fontWeight\": 500,\n \"letterSpacing\": \"0.01em\"\n }\n },\n \"borderRadius\": \"6px\"\n },\n {\n \"id\": \"raycast\",\n \"name\": \"Raycast\",\n \"category\": \"Developer Tools\",\n \"description\": \"|\",\n \"designMdPath\": \"/design-md/raycast/DESIGN.md\",\n \"color\": {\n \"primary\": \"#ffffff\",\n \"primaryHover\": \"#ffffff\",\n \"primaryLight\": \"#ffffff26\",\n \"bgPrimary\": \"#07080a\",\n \"bgSecondary\": \"#0d0d0d\",\n \"textPrimary\": \"#f4f4f6\",\n \"textSecondary\": \"#9aa1b1\",\n \"textMuted\": \"#5c6470\",\n \"borderSubtle\": \"#242728\",\n \"borderStrong\": \"rgba(255,255,255,0.16)\",\n \"statusSuccess\": \"#10b981\",\n \"statusDanger\": \"#f43f5e\",\n \"statusWarning\": \"#f59e0b\"\n },\n \"typography\": {\n \"fontFamily\": \"Inter\",\n \"h1\": {\n \"fontSize\": 64,\n \"lineHeight\": 1.1,\n \"fontWeight\": 600,\n \"letterSpacing\": \"0\"\n },\n \"h2\": {\n \"fontSize\": 56,\n \"lineHeight\": 1.17,\n \"fontWeight\": 500,\n \"letterSpacing\": \"0.2px\"\n },\n \"h3\": {\n \"fontSize\": 22,\n \"lineHeight\": 1.15,\n \"fontWeight\": 500,\n \"letterSpacing\": \"0\"\n },\n \"h4\": {\n \"fontSize\": 20,\n \"lineHeight\": 1.4,\n \"fontWeight\": 500,\n \"letterSpacing\": \"0.2px\"\n },\n \"h5\": {\n \"fontSize\": 18,\n \"lineHeight\": 1.4,\n \"fontWeight\": 500,\n \"letterSpacing\": \"0.2px\"\n },\n \"h6\": {\n \"fontSize\": 14,\n \"lineHeight\": 1.45,\n \"fontWeight\": 600,\n \"letterSpacing\": \"0em\"\n },\n \"body\": {\n \"fontSize\": 18,\n \"lineHeight\": 1.6,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0\"\n },\n \"sm\": {\n \"fontSize\": 14,\n \"lineHeight\": 1.6,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0\"\n },\n \"xs\": {\n \"fontSize\": 11,\n \"lineHeight\": 1.4,\n \"fontWeight\": 500,\n \"letterSpacing\": \"0.01em\"\n }\n },\n \"borderRadius\": \"8px\"\n },\n {\n \"id\": \"renault\",\n \"name\": \"Renault\",\n \"category\": \"Automotive & Luxury\",\n \"description\": \"|\",\n \"designMdPath\": \"/design-md/renault/DESIGN.md\",\n \"color\": {\n \"primary\": \"#ffed00\",\n \"primaryHover\": \"#e6d200\",\n \"primaryLight\": \"#e8f3ff\",\n \"bgPrimary\": \"#ffffff\",\n \"bgSecondary\": \"#ffffff\",\n \"textPrimary\": \"#000000\",\n \"textSecondary\": \"#8b95a1\",\n \"textMuted\": \"#b0b8c1\",\n \"borderSubtle\": \"#f2f2f2\",\n \"borderStrong\": \"#000000\",\n \"statusSuccess\": \"#8dc572\",\n \"statusDanger\": \"#f43f5e\",\n \"statusWarning\": \"#f0ad4e\"\n },\n \"typography\": {\n \"fontFamily\": \"NouvelR\",\n \"h1\": {\n \"fontSize\": 56,\n \"lineHeight\": 0.95,\n \"fontWeight\": 700,\n \"letterSpacing\": \"0\"\n },\n \"h2\": {\n \"fontSize\": 40,\n \"lineHeight\": 0.95,\n \"fontWeight\": 700,\n \"letterSpacing\": \"0\"\n },\n \"h3\": {\n \"fontSize\": 32,\n \"lineHeight\": 0.95,\n \"fontWeight\": 700,\n \"letterSpacing\": \"0\"\n },\n \"h4\": {\n \"fontSize\": 20,\n \"lineHeight\": 0.95,\n \"fontWeight\": 700,\n \"letterSpacing\": \"0\"\n },\n \"h5\": {\n \"fontSize\": 18,\n \"lineHeight\": 1,\n \"fontWeight\": 700,\n \"letterSpacing\": \"0\"\n },\n \"h6\": {\n \"fontSize\": 14,\n \"lineHeight\": 1.45,\n \"fontWeight\": 600,\n \"letterSpacing\": \"0em\"\n },\n \"body\": {\n \"fontSize\": 18,\n \"lineHeight\": 1.5,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0\"\n },\n \"sm\": {\n \"fontSize\": 14,\n \"lineHeight\": 1.57,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0\"\n },\n \"xs\": {\n \"fontSize\": 12,\n \"lineHeight\": 1.4,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0\"\n }\n },\n \"borderRadius\": \"4px\"\n },\n {\n \"id\": \"replicate\",\n \"name\": \"Replicate\",\n \"category\": \"AI & LLM\",\n \"description\": \"|\",\n \"designMdPath\": \"/design-md/replicate/DESIGN.md\",\n \"color\": {\n \"primary\": \"#ea2804\",\n \"primaryHover\": \"#c01f00\",\n \"primaryLight\": \"#e8f3ff\",\n \"bgPrimary\": \"#f9f7f3\",\n \"bgSecondary\": \"#ffffff\",\n \"textPrimary\": \"#202020\",\n \"textSecondary\": \"#8b95a1\",\n \"textMuted\": \"#b0b8c1\",\n \"borderSubtle\": \"rgba(32,32,32,0.12)\",\n \"borderStrong\": \"#202020\",\n \"statusSuccess\": \"#10b981\",\n \"statusDanger\": \"#f43f5e\",\n \"statusWarning\": \"#f59e0b\"\n },\n \"typography\": {\n \"fontFamily\": \"rb-freigeist-neue\",\n \"h1\": {\n \"fontSize\": 72,\n \"lineHeight\": 1,\n \"fontWeight\": 700,\n \"letterSpacing\": \"-1.8px\"\n },\n \"h2\": {\n \"fontSize\": 48,\n \"lineHeight\": 1,\n \"fontWeight\": 700,\n \"letterSpacing\": \"-1px\"\n },\n \"h3\": {\n \"fontSize\": 30,\n \"lineHeight\": 1.2,\n \"fontWeight\": 600,\n \"letterSpacing\": \"-0.5px\"\n },\n \"h4\": {\n \"fontSize\": 24,\n \"lineHeight\": 1.33,\n \"fontWeight\": 600,\n \"letterSpacing\": \"-0.35px\"\n },\n \"h5\": {\n \"fontSize\": 20,\n \"lineHeight\": 1.4,\n \"fontWeight\": 600,\n \"letterSpacing\": \"-0.3px\"\n },\n \"h6\": {\n \"fontSize\": 14,\n \"lineHeight\": 1.45,\n \"fontWeight\": 600,\n \"letterSpacing\": \"0em\"\n },\n \"body\": {\n \"fontSize\": 18,\n \"lineHeight\": 1.56,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0\"\n },\n \"sm\": {\n \"fontSize\": 14,\n \"lineHeight\": 1.43,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0\"\n },\n \"xs\": {\n \"fontSize\": 12,\n \"lineHeight\": 1.33,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0\"\n }\n },\n \"borderRadius\": \"10px\"\n },\n {\n \"id\": \"resend\",\n \"name\": \"Resend\",\n \"category\": \"Tech & Lifestyle\",\n \"description\": \"|\",\n \"designMdPath\": \"/design-md/resend/DESIGN.md\",\n \"color\": {\n \"primary\": \"#fcfdff\",\n \"primaryHover\": \"#fcfdff\",\n \"primaryLight\": \"#fcfdff26\",\n \"bgPrimary\": \"#000000\",\n \"bgSecondary\": \"#0a0a0c\",\n \"textPrimary\": \"#fcfdff\",\n \"textSecondary\": \"#9aa1b1\",\n \"textMuted\": \"#5c6470\",\n \"borderSubtle\": \"rgba(255,255,255,0.06)\",\n \"borderStrong\": \"rgba(255,255,255,0.14)\",\n \"statusSuccess\": \"#10b981\",\n \"statusDanger\": \"#f43f5e\",\n \"statusWarning\": \"#f59e0b\"\n },\n \"typography\": {\n \"fontFamily\": \"Domaine Display\",\n \"h1\": {\n \"fontSize\": 768,\n \"lineHeight\": 1,\n \"fontWeight\": 400,\n \"letterSpacing\": \"-0.768px\"\n },\n \"h2\": {\n \"fontSize\": 56,\n \"lineHeight\": 1.2,\n \"fontWeight\": 400,\n \"letterSpacing\": \"-2.8px\"\n },\n \"h3\": {\n \"fontSize\": 22,\n \"lineHeight\": 1.3,\n \"fontWeight\": 600,\n \"letterSpacing\": \"-0.01em\"\n },\n \"h4\": {\n \"fontSize\": 24,\n \"lineHeight\": 1.5,\n \"fontWeight\": 500,\n \"letterSpacing\": \"-0.4px\"\n },\n \"h5\": {\n \"fontSize\": 20,\n \"lineHeight\": 1.3,\n \"fontWeight\": 500,\n \"letterSpacing\": \"-0.3px\"\n },\n \"h6\": {\n \"fontSize\": 14,\n \"lineHeight\": 1.45,\n \"fontWeight\": 600,\n \"letterSpacing\": \"0em\"\n },\n \"body\": {\n \"fontSize\": 18,\n \"lineHeight\": 1.5,\n \"fontWeight\": 400,\n \"letterSpacing\": \"-0.005em\"\n },\n \"sm\": {\n \"fontSize\": 14,\n \"lineHeight\": 1.43,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0em\"\n },\n \"xs\": {\n \"fontSize\": 12,\n \"lineHeight\": 1.5,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0.01em\"\n }\n },\n \"borderRadius\": \"8px\"\n },\n {\n \"id\": \"revolut\",\n \"name\": \"Revolut\",\n \"category\": \"Fintech & Web3\",\n \"description\": \"|\",\n \"designMdPath\": \"/design-md/revolut/DESIGN.md\",\n \"color\": {\n \"primary\": \"#494fdf\",\n \"primaryHover\": \"#3a40c4\",\n \"primaryLight\": \"#e8f3ff\",\n \"bgPrimary\": \"#ffffff\",\n \"bgSecondary\": \"#ffffff\",\n \"textPrimary\": \"#191c1f\",\n \"textSecondary\": \"#8b95a1\",\n \"textMuted\": \"#c9c9cd\",\n \"borderSubtle\": \"rgba(255,255,255,0.06)\",\n \"borderStrong\": \"#191c1f\",\n \"statusSuccess\": \"#10b981\",\n \"statusDanger\": \"#f43f5e\",\n \"statusWarning\": \"#f59e0b\"\n },\n \"typography\": {\n \"fontFamily\": \"Aeonik Pro\",\n \"h1\": {\n \"fontSize\": 80,\n \"lineHeight\": 1,\n \"fontWeight\": 500,\n \"letterSpacing\": \"-0.8px\"\n },\n \"h2\": {\n \"fontSize\": 48,\n \"lineHeight\": 1.21,\n \"fontWeight\": 500,\n \"letterSpacing\": \"-0.48px\"\n },\n \"h3\": {\n \"fontSize\": 40,\n \"lineHeight\": 1.2,\n \"fontWeight\": 500,\n \"letterSpacing\": \"-0.4px\"\n },\n \"h4\": {\n \"fontSize\": 24,\n \"lineHeight\": 1.33,\n \"fontWeight\": 500,\n \"letterSpacing\": \"0\"\n },\n \"h5\": {\n \"fontSize\": 20,\n \"lineHeight\": 1.4,\n \"fontWeight\": 500,\n \"letterSpacing\": \"0\"\n },\n \"h6\": {\n \"fontSize\": 14,\n \"lineHeight\": 1.45,\n \"fontWeight\": 600,\n \"letterSpacing\": \"0em\"\n },\n \"body\": {\n \"fontSize\": 18,\n \"lineHeight\": 1.56,\n \"fontWeight\": 400,\n \"letterSpacing\": \"-0.09px\"\n },\n \"sm\": {\n \"fontSize\": 14,\n \"lineHeight\": 1.43,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0em\"\n },\n \"xs\": {\n \"fontSize\": 13,\n \"lineHeight\": 1.4,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0.01em\"\n }\n },\n \"borderRadius\": \"12px\"\n },\n {\n \"id\": \"sap\",\n \"name\": \"SAP Analysis\",\n \"category\": \"Tech & Lifestyle\",\n \"description\": \"An analysis of SAP's design language — an enterprise system that keeps almost everything on white and spends its structure on two greys and one blue. The chrome is deliberately quiet, a 60px light-grey bar over a product tab rail, so the pa\",\n \"designMdPath\": \"/design-md/sap/DESIGN.md\",\n \"color\": {\n \"primary\": \"#0057d2\",\n \"primaryHover\": \"#0040b0\",\n \"primaryLight\": \"#e8f3ff\",\n \"bgPrimary\": \"#ffffff\",\n \"bgSecondary\": \"#f8f9fa\",\n \"textPrimary\": \"#000000\",\n \"textSecondary\": \"#8b95a1\",\n \"textMuted\": \"#b0b8c1\",\n \"borderSubtle\": \"#475e75\",\n \"borderStrong\": \"#e5e8eb\",\n \"statusSuccess\": \"#10b981\",\n \"statusDanger\": \"#f43f5e\",\n \"statusWarning\": \"#f59e0b\"\n },\n \"typography\": {\n \"fontFamily\": \"72 Brand Variable\",\n \"h1\": {\n \"fontSize\": 36,\n \"lineHeight\": 1.2,\n \"fontWeight\": 700,\n \"letterSpacing\": \"-0.02em\"\n },\n \"h2\": {\n \"fontSize\": 28,\n \"lineHeight\": 1.25,\n \"fontWeight\": 700,\n \"letterSpacing\": \"-0.015em\"\n },\n \"h3\": {\n \"fontSize\": 22,\n \"lineHeight\": 1.3,\n \"fontWeight\": 600,\n \"letterSpacing\": \"-0.01em\"\n },\n \"h4\": {\n \"fontSize\": 20,\n \"lineHeight\": 22,\n \"fontWeight\": 500,\n \"letterSpacing\": \"0\"\n },\n \"h5\": {\n \"fontSize\": 20,\n \"lineHeight\": 22,\n \"fontWeight\": 500,\n \"letterSpacing\": \"0\"\n },\n \"h6\": {\n \"fontSize\": 16,\n \"lineHeight\": 17.6,\n \"fontWeight\": 500,\n \"letterSpacing\": \"0\"\n },\n \"body\": {\n \"fontSize\": 18,\n \"lineHeight\": 27,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0\"\n },\n \"sm\": {\n \"fontSize\": 14,\n \"lineHeight\": 21,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0\"\n },\n \"xs\": {\n \"fontSize\": 14,\n \"lineHeight\": 21,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0\"\n }\n },\n \"borderRadius\": \"8px\"\n },\n {\n \"id\": \"sentry\",\n \"name\": \"Sentri\",\n \"category\": \"Developer Tools\",\n \"description\": \"An inspired interpretation of Sentri's design language — a developer-tools brand built on a deep purple-violet midnight canvas, electric lime accents, and a slightly subversive illustrated personality. The system pairs a custom display sans\",\n \"designMdPath\": \"/design-md/sentry/DESIGN.md\",\n \"color\": {\n \"primary\": \"#150f23\",\n \"primaryHover\": \"#150f23\",\n \"primaryLight\": \"#e8f3ff\",\n \"bgPrimary\": \"#ffffff\",\n \"bgSecondary\": \"#f8f9fa\",\n \"textPrimary\": \"#1f1633\",\n \"textSecondary\": \"#8b95a1\",\n \"textMuted\": \"#b0b8c1\",\n \"borderSubtle\": \"#f2f4f6\",\n \"borderStrong\": \"#e5e8eb\",\n \"statusSuccess\": \"#10b981\",\n \"statusDanger\": \"#f43f5e\",\n \"statusWarning\": \"#f59e0b\"\n },\n \"typography\": {\n \"fontFamily\": \"Rubik, -apple-system, system-ui, sans-serif\",\n \"h1\": {\n \"fontSize\": 36,\n \"lineHeight\": 1.2,\n \"fontWeight\": 700,\n \"letterSpacing\": \"-0.02em\"\n },\n \"h2\": {\n \"fontSize\": 30,\n \"lineHeight\": 1.2,\n \"fontWeight\": 500,\n \"letterSpacing\": \"0\"\n },\n \"h3\": {\n \"fontSize\": 27,\n \"lineHeight\": 1.25,\n \"fontWeight\": 500,\n \"letterSpacing\": \"0\"\n },\n \"h4\": {\n \"fontSize\": 24,\n \"lineHeight\": 1.25,\n \"fontWeight\": 500,\n \"letterSpacing\": \"0\"\n },\n \"h5\": {\n \"fontSize\": 20,\n \"lineHeight\": 1.25,\n \"fontWeight\": 600,\n \"letterSpacing\": \"0\"\n },\n \"h6\": {\n \"fontSize\": 15,\n \"lineHeight\": 1.4,\n \"fontWeight\": 500,\n \"letterSpacing\": \"0\"\n },\n \"body\": {\n \"fontSize\": 16,\n \"lineHeight\": 2,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0\"\n },\n \"sm\": {\n \"fontSize\": 14,\n \"lineHeight\": 1.43,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0\"\n },\n \"xs\": {\n \"fontSize\": 14,\n \"lineHeight\": 1.43,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0\"\n }\n },\n \"borderRadius\": \"8px\"\n },\n {\n \"id\": \"shopify\",\n \"name\": \"Shopifi\",\n \"category\": \"Tech & Lifestyle\",\n \"description\": \"An inspired interpretation of Shopifi's design language — a cinematic commerce platform that runs two parallel design tracks. The marketing-hero and product-narrative pages live on near-black canvases with full-bleed photography of merchant\",\n \"designMdPath\": \"/design-md/shopify/DESIGN.md\",\n \"color\": {\n \"primary\": \"#000000\",\n \"primaryHover\": \"#000000\",\n \"primaryLight\": \"#e8f3ff\",\n \"bgPrimary\": \"#ffffff\",\n \"bgSecondary\": \"#f8f9fa\",\n \"textPrimary\": \"#000000\",\n \"textSecondary\": \"#8b95a1\",\n \"textMuted\": \"#b0b8c1\",\n \"borderSubtle\": \"#f2f4f6\",\n \"borderStrong\": \"#e5e8eb\",\n \"statusSuccess\": \"#10b981\",\n \"statusDanger\": \"#f43f5e\",\n \"statusWarning\": \"#f59e0b\"\n },\n \"typography\": {\n \"fontFamily\": \"NeueHaasGrotesk Display, Helvetica, Arial, sans-serif\",\n \"h1\": {\n \"fontSize\": 70,\n \"lineHeight\": 1,\n \"fontWeight\": 330,\n \"letterSpacing\": \"0\"\n },\n \"h2\": {\n \"fontSize\": 55,\n \"lineHeight\": 1.16,\n \"fontWeight\": 330,\n \"letterSpacing\": \"0\"\n },\n \"h3\": {\n \"fontSize\": 48,\n \"lineHeight\": 1.14,\n \"fontWeight\": 330,\n \"letterSpacing\": \"0\"\n },\n \"h4\": {\n \"fontSize\": 20,\n \"lineHeight\": 1.4,\n \"fontWeight\": 500,\n \"letterSpacing\": \"0.3px\"\n },\n \"h5\": {\n \"fontSize\": 18,\n \"lineHeight\": 1.25,\n \"fontWeight\": 500,\n \"letterSpacing\": \"0.72px\"\n },\n \"h6\": {\n \"fontSize\": 14,\n \"lineHeight\": 1.45,\n \"fontWeight\": 600,\n \"letterSpacing\": \"0em\"\n },\n \"body\": {\n \"fontSize\": 18,\n \"lineHeight\": 1.56,\n \"fontWeight\": 550,\n \"letterSpacing\": \"0\"\n },\n \"sm\": {\n \"fontSize\": 14,\n \"lineHeight\": 1.49,\n \"fontWeight\": 500,\n \"letterSpacing\": \"0.28px\"\n },\n \"xs\": {\n \"fontSize\": 14,\n \"lineHeight\": 1.49,\n \"fontWeight\": 500,\n \"letterSpacing\": \"0.28px\"\n }\n },\n \"borderRadius\": \"8px\"\n },\n {\n \"id\": \"slack\",\n \"name\": \"Slacc\",\n \"category\": \"Tech & Lifestyle\",\n \"description\": \"An inspired interpretation of Slacc's design language — a workplace messaging brand built on a deep aubergine primary, with cream-lavender hero gradients, blue inline links, and pill CTAs. The system pairs a proprietary humanist sans for di\",\n \"designMdPath\": \"/design-md/slack/DESIGN.md\",\n \"color\": {\n \"primary\": \"#4a154b\",\n \"primaryHover\": \"#481a54\",\n \"primaryLight\": \"#e8f3ff\",\n \"bgPrimary\": \"#ffffff\",\n \"bgSecondary\": \"#f8f9fa\",\n \"textPrimary\": \"#1d1d1d\",\n \"textSecondary\": \"#8b95a1\",\n \"textMuted\": \"#b0b8c1\",\n \"borderSubtle\": \"#e6e6e6\",\n \"borderStrong\": \"#000000\",\n \"statusSuccess\": \"#007a5a\",\n \"statusDanger\": \"#f43f5e\",\n \"statusWarning\": \"#f59e0b\"\n },\n \"typography\": {\n \"fontFamily\": \"Salesforce-Avant-Garde, system-ui, -apple-system, BlinkMacSystemFont, sans-serif\",\n \"h1\": {\n \"fontSize\": 58,\n \"lineHeight\": 1.25,\n \"fontWeight\": 600,\n \"letterSpacing\": \"-0.464px\"\n },\n \"h2\": {\n \"fontSize\": 50,\n \"lineHeight\": 1.12,\n \"fontWeight\": 700,\n \"letterSpacing\": \"-0.6px\"\n },\n \"h3\": {\n \"fontSize\": 32,\n \"lineHeight\": 1.25,\n \"fontWeight\": 700,\n \"letterSpacing\": \"-0.256px\"\n },\n \"h4\": {\n \"fontSize\": 22,\n \"lineHeight\": 1.4,\n \"fontWeight\": 600,\n \"letterSpacing\": \"0\"\n },\n \"h5\": {\n \"fontSize\": 18,\n \"lineHeight\": 1.56,\n \"fontWeight\": 600,\n \"letterSpacing\": \"-0.0216px\"\n },\n \"h6\": {\n \"fontSize\": 14,\n \"lineHeight\": 1.45,\n \"fontWeight\": 600,\n \"letterSpacing\": \"0em\"\n },\n \"body\": {\n \"fontSize\": 18,\n \"lineHeight\": 1.55,\n \"fontWeight\": 400,\n \"letterSpacing\": \"-0.0216px\"\n },\n \"sm\": {\n \"fontSize\": 14,\n \"lineHeight\": 1.43,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0.1px\"\n },\n \"xs\": {\n \"fontSize\": 14,\n \"lineHeight\": 1.43,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0.1px\"\n }\n },\n \"borderRadius\": \"8px\"\n },\n {\n \"id\": \"spacex\",\n \"name\": \"Spacex\",\n \"category\": \"Automotive & Luxury\",\n \"description\": \"An inspired interpretation of Spasex's design language — a mission-oriented aerospace brand built on pure black canvas, full-bleed photographic and video heroes of rockets and Mars landscapes, and uppercase D-DIN display type set in tight v\",\n \"designMdPath\": \"/design-md/spacex/DESIGN.md\",\n \"color\": {\n \"primary\": \"#000000\",\n \"primaryHover\": \"#000000\",\n \"primaryLight\": \"#e8f3ff\",\n \"bgPrimary\": \"#ffffff\",\n \"bgSecondary\": \"#f8f9fa\",\n \"textPrimary\": \"#000000\",\n \"textSecondary\": \"#8b95a1\",\n \"textMuted\": \"#b0b8c1\",\n \"borderSubtle\": \"#f2f4f6\",\n \"borderStrong\": \"#e5e8eb\",\n \"statusSuccess\": \"#10b981\",\n \"statusDanger\": \"#f43f5e\",\n \"statusWarning\": \"#f59e0b\"\n },\n \"typography\": {\n \"fontFamily\": \"D-DIN-Bold, Arial Narrow, Arial, Verdana, sans-serif\",\n \"h1\": {\n \"fontSize\": 60,\n \"lineHeight\": 1.2,\n \"fontWeight\": 700,\n \"letterSpacing\": \"1.2px\"\n },\n \"h2\": {\n \"fontSize\": 48,\n \"lineHeight\": 1.25,\n \"fontWeight\": 700,\n \"letterSpacing\": \"0.96px\"\n },\n \"h3\": {\n \"fontSize\": 22,\n \"lineHeight\": 1.3,\n \"fontWeight\": 600,\n \"letterSpacing\": \"-0.01em\"\n },\n \"h4\": {\n \"fontSize\": 18,\n \"lineHeight\": 1.35,\n \"fontWeight\": 600,\n \"letterSpacing\": \"-0.005em\"\n },\n \"h5\": {\n \"fontSize\": 16,\n \"lineHeight\": 1.4,\n \"fontWeight\": 600,\n \"letterSpacing\": \"0em\"\n },\n \"h6\": {\n \"fontSize\": 14,\n \"lineHeight\": 1.45,\n \"fontWeight\": 600,\n \"letterSpacing\": \"0em\"\n },\n \"body\": {\n \"fontSize\": 16,\n \"lineHeight\": 1.7,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0.32px\"\n },\n \"sm\": {\n \"fontSize\": 13008,\n \"lineHeight\": 1.5,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0\"\n },\n \"xs\": {\n \"fontSize\": 13008,\n \"lineHeight\": 1.5,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0\"\n }\n },\n \"borderRadius\": \"16px\"\n },\n {\n \"id\": \"stripe\",\n \"name\": \"Stripi\",\n \"category\": \"Fintech & Web3\",\n \"description\": \"An inspired interpretation of Stripi's design language — a financial-infrastructure brand built on a deep navy ink, an electric indigo primary, and a recurring atmospheric gradient mesh that occupies the upper third of nearly every marketin\",\n \"designMdPath\": \"/design-md/stripe/DESIGN.md\",\n \"color\": {\n \"primary\": \"#533afd\",\n \"primaryHover\": \"#4434d4\",\n \"primaryLight\": \"#665efd\",\n \"bgPrimary\": \"#ffffff\",\n \"bgSecondary\": \"#f6f9fc\",\n \"textPrimary\": \"#0d253d\",\n \"textSecondary\": \"#273951\",\n \"textMuted\": \"#61718a\",\n \"borderSubtle\": \"#e3e8ee\",\n \"borderStrong\": \"#a8c3de\",\n \"statusSuccess\": \"#10b981\",\n \"statusDanger\": \"#ea2261\",\n \"statusWarning\": \"#9b6829\"\n },\n \"typography\": {\n \"fontFamily\": \"sohne-var, 'SF Pro Display', system-ui, -apple-system, sans-serif\",\n \"h1\": {\n \"fontSize\": 48,\n \"lineHeight\": 1.15,\n \"fontWeight\": 300,\n \"letterSpacing\": \"-0.96px\"\n },\n \"h2\": {\n \"fontSize\": 32,\n \"lineHeight\": 1.1,\n \"fontWeight\": 300,\n \"letterSpacing\": \"-0.64px\"\n },\n \"h3\": {\n \"fontSize\": 26,\n \"lineHeight\": 1.12,\n \"fontWeight\": 300,\n \"letterSpacing\": \"-0.26px\"\n },\n \"h4\": {\n \"fontSize\": 20,\n \"lineHeight\": 1.4,\n \"fontWeight\": 300,\n \"letterSpacing\": \"-0.2px\"\n },\n \"h5\": {\n \"fontSize\": 18,\n \"lineHeight\": 1.4,\n \"fontWeight\": 300,\n \"letterSpacing\": \"0\"\n },\n \"h6\": {\n \"fontSize\": 14,\n \"lineHeight\": 1.45,\n \"fontWeight\": 600,\n \"letterSpacing\": \"0em\"\n },\n \"body\": {\n \"fontSize\": 16,\n \"lineHeight\": 1.4,\n \"fontWeight\": 300,\n \"letterSpacing\": \"0\"\n },\n \"sm\": {\n \"fontSize\": 13,\n \"lineHeight\": 1.4,\n \"fontWeight\": 400,\n \"letterSpacing\": \"-0.39px\"\n },\n \"xs\": {\n \"fontSize\": 13,\n \"lineHeight\": 1.4,\n \"fontWeight\": 400,\n \"letterSpacing\": \"-0.39px\"\n }\n },\n \"borderRadius\": \"8px\"\n },\n {\n \"id\": \"supabase\",\n \"name\": \"Supabaze\",\n \"category\": \"Tech & Lifestyle\",\n \"description\": \"An inspired interpretation of Supabaze's design language — an open-source database platform built on a clean white-and-near-black system with a single signature emerald-green CTA, a custom humanist sans display tier, and dense product UI mo\",\n \"designMdPath\": \"/design-md/supabase/DESIGN.md\",\n \"color\": {\n \"primary\": \"#3ecf8e\",\n \"primaryHover\": \"#24b47e\",\n \"primaryLight\": \"#4ade80\",\n \"bgPrimary\": \"#ffffff\",\n \"bgSecondary\": \"#fafafa\",\n \"textPrimary\": \"#171717\",\n \"textSecondary\": \"#212121\",\n \"textMuted\": \"#9a9a9a\",\n \"borderSubtle\": \"#dfdfdf\",\n \"borderStrong\": \"#c7c7c7\",\n \"statusSuccess\": \"#10b981\",\n \"statusDanger\": \"#f43f5e\",\n \"statusWarning\": \"#f59e0b\"\n },\n \"typography\": {\n \"fontFamily\": \"Circular, 'Helvetica Neue', Helvetica, Arial, sans-serif\",\n \"h1\": {\n \"fontSize\": 48,\n \"lineHeight\": 1.1,\n \"fontWeight\": 500,\n \"letterSpacing\": \"-1.44px\"\n },\n \"h2\": {\n \"fontSize\": 36,\n \"lineHeight\": 1.15,\n \"fontWeight\": 500,\n \"letterSpacing\": \"-0.72px\"\n },\n \"h3\": {\n \"fontSize\": 28,\n \"lineHeight\": 1.2,\n \"fontWeight\": 500,\n \"letterSpacing\": \"-0.42px\"\n },\n \"h4\": {\n \"fontSize\": 18,\n \"lineHeight\": 1.4,\n \"fontWeight\": 500,\n \"letterSpacing\": \"0\"\n },\n \"h5\": {\n \"fontSize\": 16,\n \"lineHeight\": 1.4,\n \"fontWeight\": 600,\n \"letterSpacing\": \"0em\"\n },\n \"h6\": {\n \"fontSize\": 14,\n \"lineHeight\": 1.45,\n \"fontWeight\": 600,\n \"letterSpacing\": \"0em\"\n },\n \"body\": {\n \"fontSize\": 18,\n \"lineHeight\": 1.55,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0\"\n },\n \"sm\": {\n \"fontSize\": 13,\n \"lineHeight\": 1.45,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0\"\n },\n \"xs\": {\n \"fontSize\": 13,\n \"lineHeight\": 1.45,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0\"\n }\n },\n \"borderRadius\": \"8px\"\n },\n {\n \"id\": \"superhuman\",\n \"name\": \"Superhumon\",\n \"category\": \"Developer Tools\",\n \"description\": \"An inspired interpretation of Superhumon's design language — a fast-email productivity brand split between an editorial dark hero (deep indigo navy with violet-sky atmospheric backdrop and a portrait subject) and a quiet white content body \",\n \"designMdPath\": \"/design-md/superhuman/DESIGN.md\",\n \"color\": {\n \"primary\": \"#1b1938\",\n \"primaryHover\": \"#0e0c1f\",\n \"primaryLight\": \"#e8f3ff\",\n \"bgPrimary\": \"#ffffff\",\n \"bgSecondary\": \"#fafaf8\",\n \"textPrimary\": \"#292827\",\n \"textSecondary\": \"#8b95a1\",\n \"textMuted\": \"#b0b8c1\",\n \"borderSubtle\": \"#e8e4dd\",\n \"borderStrong\": \"#e5e8eb\",\n \"statusSuccess\": \"#10b981\",\n \"statusDanger\": \"#f43f5e\",\n \"statusWarning\": \"#f59e0b\"\n },\n \"typography\": {\n \"fontFamily\": \"'Super Sans VF', system-ui, -apple-system, 'Segoe UI', Roboto, sans-serif\",\n \"h1\": {\n \"fontSize\": 48,\n \"lineHeight\": 0.96,\n \"fontWeight\": 460,\n \"letterSpacing\": \"-1.32px\"\n },\n \"h2\": {\n \"fontSize\": 28,\n \"lineHeight\": 1.14,\n \"fontWeight\": 540,\n \"letterSpacing\": \"-0.63px\"\n },\n \"h3\": {\n \"fontSize\": 22,\n \"lineHeight\": 1.1,\n \"fontWeight\": 460,\n \"letterSpacing\": \"-0.315px\"\n },\n \"h4\": {\n \"fontSize\": 18,\n \"lineHeight\": 1.35,\n \"fontWeight\": 600,\n \"letterSpacing\": \"-0.005em\"\n },\n \"h5\": {\n \"fontSize\": 16,\n \"lineHeight\": 1.4,\n \"fontWeight\": 600,\n \"letterSpacing\": \"0em\"\n },\n \"h6\": {\n \"fontSize\": 14,\n \"lineHeight\": 1.45,\n \"fontWeight\": 600,\n \"letterSpacing\": \"0em\"\n },\n \"body\": {\n \"fontSize\": 18,\n \"lineHeight\": 1.5,\n \"fontWeight\": 540,\n \"letterSpacing\": \"-0.135px\"\n },\n \"sm\": {\n \"fontSize\": 14,\n \"lineHeight\": 1.4,\n \"fontWeight\": 460,\n \"letterSpacing\": \"0\"\n },\n \"xs\": {\n \"fontSize\": 14,\n \"lineHeight\": 1.4,\n \"fontWeight\": 460,\n \"letterSpacing\": \"0\"\n }\n },\n \"borderRadius\": \"8px\"\n },\n {\n \"id\": \"together.ai\",\n \"name\": \"Together-AI\",\n \"category\": \"AI & LLM\",\n \"description\": \"An inspired interpretation of Together AI's design language — an AI infrastructure platform whose surface alternates between near-black hero bands (with a three-color orange-magenta-periwinkle gradient as the single piece of brand chrome) a\",\n \"designMdPath\": \"/design-md/together.ai/DESIGN.md\",\n \"color\": {\n \"primary\": \"#000000\",\n \"primaryHover\": \"#000000\",\n \"primaryLight\": \"#e8f3ff\",\n \"bgPrimary\": \"#ffffff\",\n \"bgSecondary\": \"#f8f9fa\",\n \"textPrimary\": \"#000000\",\n \"textSecondary\": \"#8b95a1\",\n \"textMuted\": \"#b0b8c1\",\n \"borderSubtle\": \"#959494\",\n \"borderStrong\": \"#e5e8eb\",\n \"statusSuccess\": \"#10b981\",\n \"statusDanger\": \"#f43f5e\",\n \"statusWarning\": \"#f59e0b\"\n },\n \"typography\": {\n \"fontFamily\": \"The Future, Inter, Helvetica Neue, Arial, sans-serif\",\n \"h1\": {\n \"fontSize\": 40,\n \"lineHeight\": 48,\n \"fontWeight\": 500,\n \"letterSpacing\": \"-0.8px\"\n },\n \"h2\": {\n \"fontSize\": 28,\n \"lineHeight\": 32.2,\n \"fontWeight\": 500,\n \"letterSpacing\": \"-0.42px\"\n },\n \"h3\": {\n \"fontSize\": 22,\n \"lineHeight\": 25.3,\n \"fontWeight\": 500,\n \"letterSpacing\": \"-0.22px\"\n },\n \"h4\": {\n \"fontSize\": 18,\n \"lineHeight\": 1.35,\n \"fontWeight\": 600,\n \"letterSpacing\": \"-0.005em\"\n },\n \"h5\": {\n \"fontSize\": 16,\n \"lineHeight\": 1.4,\n \"fontWeight\": 600,\n \"letterSpacing\": \"0em\"\n },\n \"h6\": {\n \"fontSize\": 14,\n \"lineHeight\": 1.45,\n \"fontWeight\": 600,\n \"letterSpacing\": \"0em\"\n },\n \"body\": {\n \"fontSize\": 18,\n \"lineHeight\": 23.4,\n \"fontWeight\": 400,\n \"letterSpacing\": \"-0.18px\"\n },\n \"sm\": {\n \"fontSize\": 14,\n \"lineHeight\": 19.6,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0em\"\n },\n \"xs\": {\n \"fontSize\": 14,\n \"lineHeight\": 19.6,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0.01em\"\n }\n },\n \"borderRadius\": \"8px\"\n },\n {\n \"id\": \"uber\",\n \"name\": \"Uber\",\n \"category\": \"Tech & Lifestyle\",\n \"description\": \"An inspired interpretation of Uber's design language — a transportation-and-delivery super-app brand whose web surface is a black-and-white duet, framed by a custom geometric display sans, accented by a single signature pill shape (radius 9\",\n \"designMdPath\": \"/design-md/uber/DESIGN.md\",\n \"color\": {\n \"primary\": \"#000000\",\n \"primaryHover\": \"#000000\",\n \"primaryLight\": \"#e8f3ff\",\n \"bgPrimary\": \"#ffffff\",\n \"bgSecondary\": \"#efefef\",\n \"textPrimary\": \"#000000\",\n \"textSecondary\": \"#8b95a1\",\n \"textMuted\": \"#b0b8c1\",\n \"borderSubtle\": \"#f2f4f6\",\n \"borderStrong\": \"#e5e8eb\",\n \"statusSuccess\": \"#10b981\",\n \"statusDanger\": \"#f43f5e\",\n \"statusWarning\": \"#f59e0b\"\n },\n \"typography\": {\n \"fontFamily\": \"UberMove, UberMoveText, system-ui, Helvetica Neue, Arial, sans-serif\",\n \"h1\": {\n \"fontSize\": 36,\n \"lineHeight\": 44,\n \"fontWeight\": 700,\n \"letterSpacing\": \"-0.02em\"\n },\n \"h2\": {\n \"fontSize\": 32,\n \"lineHeight\": 40,\n \"fontWeight\": 700,\n \"letterSpacing\": \"-0.015em\"\n },\n \"h3\": {\n \"fontSize\": 24,\n \"lineHeight\": 32,\n \"fontWeight\": 700,\n \"letterSpacing\": \"-0.01em\"\n },\n \"h4\": {\n \"fontSize\": 18,\n \"lineHeight\": 1.35,\n \"fontWeight\": 600,\n \"letterSpacing\": \"-0.005em\"\n },\n \"h5\": {\n \"fontSize\": 16,\n \"lineHeight\": 1.4,\n \"fontWeight\": 600,\n \"letterSpacing\": \"0em\"\n },\n \"h6\": {\n \"fontSize\": 14,\n \"lineHeight\": 1.45,\n \"fontWeight\": 600,\n \"letterSpacing\": \"0em\"\n },\n \"body\": {\n \"fontSize\": 18,\n \"lineHeight\": 24,\n \"fontWeight\": 500,\n \"letterSpacing\": \"-0.005em\"\n },\n \"sm\": {\n \"fontSize\": 14,\n \"lineHeight\": 20,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0em\"\n },\n \"xs\": {\n \"fontSize\": 12,\n \"lineHeight\": 20,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0.01em\"\n }\n },\n \"borderRadius\": \"8px\"\n },\n {\n \"id\": \"vercel\",\n \"name\": \"Vercel\",\n \"category\": \"Developer Tools\",\n \"description\": \"An inspired interpretation of Vercel's design language — a developer-platform brand whose surface is a stark black-and-ink duet on near-white canvas, broken at hero scale by a multi-color mesh gradient (cyan / blue / magenta / amber) that a\",\n \"designMdPath\": \"/design-md/vercel/DESIGN.md\",\n \"color\": {\n \"primary\": \"#171717\",\n \"primaryHover\": \"#171717\",\n \"primaryLight\": \"#e8f3ff\",\n \"bgPrimary\": \"#ffffff\",\n \"bgSecondary\": \"#fafafa\",\n \"textPrimary\": \"#171717\",\n \"textSecondary\": \"#8b95a1\",\n \"textMuted\": \"#b0b8c1\",\n \"borderSubtle\": \"#ebebeb\",\n \"borderStrong\": \"#a1a1a1\",\n \"statusSuccess\": \"#0070f3\",\n \"statusDanger\": \"#f43f5e\",\n \"statusWarning\": \"#f5a623\"\n },\n \"typography\": {\n \"fontFamily\": \"Geist, Inter, system-ui, -apple-system, sans-serif\",\n \"h1\": {\n \"fontSize\": 48,\n \"lineHeight\": 48,\n \"fontWeight\": 600,\n \"letterSpacing\": \"-2.4px\"\n },\n \"h2\": {\n \"fontSize\": 32,\n \"lineHeight\": 40,\n \"fontWeight\": 600,\n \"letterSpacing\": \"-1.28px\"\n },\n \"h3\": {\n \"fontSize\": 24,\n \"lineHeight\": 32,\n \"fontWeight\": 600,\n \"letterSpacing\": \"-0.96px\"\n },\n \"h4\": {\n \"fontSize\": 18,\n \"lineHeight\": 1.35,\n \"fontWeight\": 600,\n \"letterSpacing\": \"-0.005em\"\n },\n \"h5\": {\n \"fontSize\": 16,\n \"lineHeight\": 1.4,\n \"fontWeight\": 600,\n \"letterSpacing\": \"0em\"\n },\n \"h6\": {\n \"fontSize\": 14,\n \"lineHeight\": 1.45,\n \"fontWeight\": 600,\n \"letterSpacing\": \"0em\"\n },\n \"body\": {\n \"fontSize\": 18,\n \"lineHeight\": 28,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0px\"\n },\n \"sm\": {\n \"fontSize\": 14,\n \"lineHeight\": 20,\n \"fontWeight\": 400,\n \"letterSpacing\": \"-0.28px\"\n },\n \"xs\": {\n \"fontSize\": 12,\n \"lineHeight\": 16,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0.01em\"\n }\n },\n \"borderRadius\": \"8px\"\n },\n {\n \"id\": \"vodafone\",\n \"name\": \"Vodafone\",\n \"category\": \"Tech & Lifestyle\",\n \"description\": \"An inspired interpretation of Vodafone's design language — a telecom super-brand whose web surface alternates between editorial photography hero bands with massive uppercase display headlines and clean white content bands, anchored by the c\",\n \"designMdPath\": \"/design-md/vodafone/DESIGN.md\",\n \"color\": {\n \"primary\": \"#e60000\",\n \"primaryHover\": \"#e60000\",\n \"primaryLight\": \"#e8f3ff\",\n \"bgPrimary\": \"#ffffff\",\n \"bgSecondary\": \"#f2f2f2\",\n \"textPrimary\": \"#25282b\",\n \"textSecondary\": \"#8b95a1\",\n \"textMuted\": \"#b0b8c1\",\n \"borderSubtle\": \"#f2f4f6\",\n \"borderStrong\": \"#e5e8eb\",\n \"statusSuccess\": \"#10b981\",\n \"statusDanger\": \"#f43f5e\",\n \"statusWarning\": \"#f59e0b\"\n },\n \"typography\": {\n \"fontFamily\": \"Vodafone, Vodafone Rg, Helvetica Neue, Arial, sans-serif\",\n \"h1\": {\n \"fontSize\": 90,\n \"lineHeight\": 84,\n \"fontWeight\": 800,\n \"letterSpacing\": \"-0.02em\"\n },\n \"h2\": {\n \"fontSize\": 48,\n \"lineHeight\": 52,\n \"fontWeight\": 300,\n \"letterSpacing\": \"-0.015em\"\n },\n \"h3\": {\n \"fontSize\": 40,\n \"lineHeight\": 44,\n \"fontWeight\": 300,\n \"letterSpacing\": \"-0.01em\"\n },\n \"h4\": {\n \"fontSize\": 18,\n \"lineHeight\": 1.35,\n \"fontWeight\": 600,\n \"letterSpacing\": \"-0.005em\"\n },\n \"h5\": {\n \"fontSize\": 16,\n \"lineHeight\": 1.4,\n \"fontWeight\": 600,\n \"letterSpacing\": \"0em\"\n },\n \"h6\": {\n \"fontSize\": 14,\n \"lineHeight\": 1.45,\n \"fontWeight\": 600,\n \"letterSpacing\": \"0em\"\n },\n \"body\": {\n \"fontSize\": 22,\n \"lineHeight\": 24,\n \"fontWeight\": 400,\n \"letterSpacing\": \"-0.005em\"\n },\n \"sm\": {\n \"fontSize\": 16,\n \"lineHeight\": 20,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0em\"\n },\n \"xs\": {\n \"fontSize\": 14,\n \"lineHeight\": 16,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0.01em\"\n }\n },\n \"borderRadius\": \"6px\"\n },\n {\n \"id\": \"voltagent\",\n \"name\": \"Voltagent\",\n \"category\": \"AI & LLM\",\n \"description\": \"An inspired interpretation of Voltagent's design language — a developer-focused AI agent engineering platform whose surface is an unrelenting near-black canvas broken only by a single electric-green brand accent, code-editor mockups inside \",\n \"designMdPath\": \"/design-md/voltagent/DESIGN.md\",\n \"color\": {\n \"primary\": \"#00d992\",\n \"primaryHover\": \"#10b981\",\n \"primaryLight\": \"#2fd6a1\",\n \"bgPrimary\": \"#101010\",\n \"bgSecondary\": \"#1a1a1a\",\n \"textPrimary\": \"#f2f2f2\",\n \"textSecondary\": \"#9aa1b1\",\n \"textMuted\": \"#5c6470\",\n \"borderSubtle\": \"#3d3a39\",\n \"borderStrong\": \"#3d414a\",\n \"statusSuccess\": \"#10b981\",\n \"statusDanger\": \"#f43f5e\",\n \"statusWarning\": \"#f59e0b\"\n },\n \"typography\": {\n \"fontFamily\": \"Inter, system-ui, -apple-system, Segoe UI, Roboto, sans-serif\",\n \"h1\": {\n \"fontSize\": 60,\n \"lineHeight\": 60,\n \"fontWeight\": 400,\n \"letterSpacing\": \"-0.65px\"\n },\n \"h2\": {\n \"fontSize\": 36,\n \"lineHeight\": 40,\n \"fontWeight\": 400,\n \"letterSpacing\": \"-0.9px\"\n },\n \"h3\": {\n \"fontSize\": 24,\n \"lineHeight\": 32,\n \"fontWeight\": 700,\n \"letterSpacing\": \"-0.6px\"\n },\n \"h4\": {\n \"fontSize\": 18,\n \"lineHeight\": 1.35,\n \"fontWeight\": 600,\n \"letterSpacing\": \"-0.005em\"\n },\n \"h5\": {\n \"fontSize\": 16,\n \"lineHeight\": 1.4,\n \"fontWeight\": 600,\n \"letterSpacing\": \"0em\"\n },\n \"h6\": {\n \"fontSize\": 14,\n \"lineHeight\": 1.45,\n \"fontWeight\": 600,\n \"letterSpacing\": \"0em\"\n },\n \"body\": {\n \"fontSize\": 18,\n \"lineHeight\": 28,\n \"fontWeight\": 400,\n \"letterSpacing\": \"-0.005em\"\n },\n \"sm\": {\n \"fontSize\": 14,\n \"lineHeight\": 20,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0em\"\n },\n \"xs\": {\n \"fontSize\": 12,\n \"lineHeight\": 16,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0.01em\"\n }\n },\n \"borderRadius\": \"8px\"\n },\n {\n \"id\": \"warp\",\n \"name\": \"Warp\",\n \"category\": \"Developer Tools\",\n \"description\": \"An inspired interpretation of Warp's design language — an agentic terminal-and-development-environment brand whose surface is a warm near-charcoal canvas (a tint warmer than pure black), broken only by clean Inter typography, the occasional\",\n \"designMdPath\": \"/design-md/warp/DESIGN.md\",\n \"color\": {\n \"primary\": \"#f7f5f0\",\n \"primaryHover\": \"#f7f5f0\",\n \"primaryLight\": \"#f7f5f026\",\n \"bgPrimary\": \"#2b2622\",\n \"bgSecondary\": \"#383330\",\n \"textPrimary\": \"#f7f5f0\",\n \"textSecondary\": \"#9aa1b1\",\n \"textMuted\": \"#5c6470\",\n \"borderSubtle\": \"#3f3a36\",\n \"borderStrong\": \"#3d414a\",\n \"statusSuccess\": \"#10b981\",\n \"statusDanger\": \"#f43f5e\",\n \"statusWarning\": \"#f59e0b\"\n },\n \"typography\": {\n \"fontFamily\": \"Inter, system-ui, -apple-system, Segoe UI, Roboto, sans-serif\",\n \"h1\": {\n \"fontSize\": 64,\n \"lineHeight\": 70.4,\n \"fontWeight\": 400,\n \"letterSpacing\": \"-1.6px\"\n },\n \"h2\": {\n \"fontSize\": 48,\n \"lineHeight\": 52.8,\n \"fontWeight\": 400,\n \"letterSpacing\": \"-1.2px\"\n },\n \"h3\": {\n \"fontSize\": 32,\n \"lineHeight\": 40,\n \"fontWeight\": 500,\n \"letterSpacing\": \"-0.8px\"\n },\n \"h4\": {\n \"fontSize\": 18,\n \"lineHeight\": 1.35,\n \"fontWeight\": 600,\n \"letterSpacing\": \"-0.005em\"\n },\n \"h5\": {\n \"fontSize\": 16,\n \"lineHeight\": 1.4,\n \"fontWeight\": 600,\n \"letterSpacing\": \"0em\"\n },\n \"h6\": {\n \"fontSize\": 14,\n \"lineHeight\": 1.45,\n \"fontWeight\": 600,\n \"letterSpacing\": \"0em\"\n },\n \"body\": {\n \"fontSize\": 18,\n \"lineHeight\": 28,\n \"fontWeight\": 400,\n \"letterSpacing\": \"-0.005em\"\n },\n \"sm\": {\n \"fontSize\": 14,\n \"lineHeight\": 20,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0em\"\n },\n \"xs\": {\n \"fontSize\": 12,\n \"lineHeight\": 16,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0.01em\"\n }\n },\n \"borderRadius\": \"4px\"\n },\n {\n \"id\": \"webflow\",\n \"name\": \"Webflow\",\n \"category\": \"Developer Tools\",\n \"description\": \"An inspired interpretation of Webflow's design language — a visual web development platform whose surface contrasts a deep near-black `#080808` primary against a generous white canvas, broken by a five-stop chromatic accent system (purple /\",\n \"designMdPath\": \"/design-md/webflow/DESIGN.md\",\n \"color\": {\n \"primary\": \"#080808\",\n \"primaryHover\": \"#080808\",\n \"primaryLight\": \"#e8f3ff\",\n \"bgPrimary\": \"#ffffff\",\n \"bgSecondary\": \"#f8f9fa\",\n \"textPrimary\": \"#080808\",\n \"textSecondary\": \"#8b95a1\",\n \"textMuted\": \"#b0b8c1\",\n \"borderSubtle\": \"#d8d8d8\",\n \"borderStrong\": \"#e5e8eb\",\n \"statusSuccess\": \"#10b981\",\n \"statusDanger\": \"#f43f5e\",\n \"statusWarning\": \"#f59e0b\"\n },\n \"typography\": {\n \"fontFamily\": \"WF Visual Sans Variable, Inter, system-ui, sans-serif\",\n \"h1\": {\n \"fontSize\": 56,\n \"lineHeight\": 58.24,\n \"fontWeight\": 600,\n \"letterSpacing\": \"-0.02em\"\n },\n \"h2\": {\n \"fontSize\": 448,\n \"lineHeight\": 46.6,\n \"fontWeight\": 600,\n \"letterSpacing\": \"-0.015em\"\n },\n \"h3\": {\n \"fontSize\": 32,\n \"lineHeight\": 41.6,\n \"fontWeight\": 500,\n \"letterSpacing\": \"-0.01em\"\n },\n \"h4\": {\n \"fontSize\": 18,\n \"lineHeight\": 1.35,\n \"fontWeight\": 600,\n \"letterSpacing\": \"-0.005em\"\n },\n \"h5\": {\n \"fontSize\": 16,\n \"lineHeight\": 1.4,\n \"fontWeight\": 600,\n \"letterSpacing\": \"0em\"\n },\n \"h6\": {\n \"fontSize\": 14,\n \"lineHeight\": 1.45,\n \"fontWeight\": 600,\n \"letterSpacing\": \"0em\"\n },\n \"body\": {\n \"fontSize\": 288,\n \"lineHeight\": 46.08,\n \"fontWeight\": 400,\n \"letterSpacing\": \"-0.288px\"\n },\n \"sm\": {\n \"fontSize\": 14,\n \"lineHeight\": 22.4,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0em\"\n },\n \"xs\": {\n \"fontSize\": 128,\n \"lineHeight\": 15.36,\n \"fontWeight\": 550,\n \"letterSpacing\": \"0.01em\"\n }\n },\n \"borderRadius\": \"8px\"\n },\n {\n \"id\": \"wired\",\n \"name\": \"Wired\",\n \"category\": \"Tech & Lifestyle\",\n \"description\": \"An inspired interpretation of Wired's design language — a flagship technology-magazine brand whose surface is a strict editorial duet of stark black wordmark on white canvas, anchored by a tall narrow custom display serif for hero headlines\",\n \"designMdPath\": \"/design-md/wired/DESIGN.md\",\n \"color\": {\n \"primary\": \"#000000\",\n \"primaryHover\": \"#000000\",\n \"primaryLight\": \"#e8f3ff\",\n \"bgPrimary\": \"#ffffff\",\n \"bgSecondary\": \"#f5f5f5\",\n \"textPrimary\": \"#000000\",\n \"textSecondary\": \"#8b95a1\",\n \"textMuted\": \"#b0b8c1\",\n \"borderSubtle\": \"#e0e0e0\",\n \"borderStrong\": \"#e5e8eb\",\n \"statusSuccess\": \"#10b981\",\n \"statusDanger\": \"#f43f5e\",\n \"statusWarning\": \"#f59e0b\"\n },\n \"typography\": {\n \"fontFamily\": \"WiredDisplay, \\\"Times New Roman\\\", Georgia, serif\",\n \"h1\": {\n \"fontSize\": 48,\n \"lineHeight\": 50.4,\n \"fontWeight\": 400,\n \"letterSpacing\": \"-0.4px\"\n },\n \"h2\": {\n \"fontSize\": 48,\n \"lineHeight\": 50.4,\n \"fontWeight\": 400,\n \"letterSpacing\": \"-0.4px\"\n },\n \"h3\": {\n \"fontSize\": 32,\n \"lineHeight\": 35.2,\n \"fontWeight\": 400,\n \"letterSpacing\": \"-0.3px\"\n },\n \"h4\": {\n \"fontSize\": 18,\n \"lineHeight\": 1.35,\n \"fontWeight\": 600,\n \"letterSpacing\": \"-0.005em\"\n },\n \"h5\": {\n \"fontSize\": 16,\n \"lineHeight\": 1.4,\n \"fontWeight\": 600,\n \"letterSpacing\": \"0em\"\n },\n \"h6\": {\n \"fontSize\": 14,\n \"lineHeight\": 1.45,\n \"fontWeight\": 600,\n \"letterSpacing\": \"0em\"\n },\n \"body\": {\n \"fontSize\": 15,\n \"lineHeight\": 1.55,\n \"fontWeight\": 400,\n \"letterSpacing\": \"-0.005em\"\n },\n \"sm\": {\n \"fontSize\": 14,\n \"lineHeight\": 18,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0.4px\"\n },\n \"xs\": {\n \"fontSize\": 12,\n \"lineHeight\": 16,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0.01em\"\n }\n },\n \"borderRadius\": \"12px\"\n },\n {\n \"id\": \"wise\",\n \"name\": \"Wise\",\n \"category\": \"Fintech & Web3\",\n \"description\": \"An inspired interpretation of Wise's design language — a global money-transfer brand whose surface combines an unusually heavy near-black display sans (weight 900 at 64–126 px) with a vivid lime-green brand accent, sage-tinted surface neutr\",\n \"designMdPath\": \"/design-md/wise/DESIGN.md\",\n \"color\": {\n \"primary\": \"#9fe870\",\n \"primaryHover\": \"#9fe870\",\n \"primaryLight\": \"#e8f3ff\",\n \"bgPrimary\": \"#ffffff\",\n \"bgSecondary\": \"#e8ebe6\",\n \"textPrimary\": \"#0e0f0c\",\n \"textSecondary\": \"#8b95a1\",\n \"textMuted\": \"#b0b8c1\",\n \"borderSubtle\": \"#f2f4f6\",\n \"borderStrong\": \"#e5e8eb\",\n \"statusSuccess\": \"#10b981\",\n \"statusDanger\": \"#f43f5e\",\n \"statusWarning\": \"#ffd11a\"\n },\n \"typography\": {\n \"fontFamily\": \"Wise Sans, Inter, system-ui, sans-serif\",\n \"h1\": {\n \"fontSize\": 64,\n \"lineHeight\": 54.4,\n \"fontWeight\": 900,\n \"letterSpacing\": \"-0.02em\"\n },\n \"h2\": {\n \"fontSize\": 47,\n \"lineHeight\": 70.5,\n \"fontWeight\": 400,\n \"letterSpacing\": \"-0.108px\"\n },\n \"h3\": {\n \"fontSize\": 40,\n \"lineHeight\": 34,\n \"fontWeight\": 900,\n \"letterSpacing\": \"-0.01em\"\n },\n \"h4\": {\n \"fontSize\": 18,\n \"lineHeight\": 1.35,\n \"fontWeight\": 600,\n \"letterSpacing\": \"-0.005em\"\n },\n \"h5\": {\n \"fontSize\": 16,\n \"lineHeight\": 1.4,\n \"fontWeight\": 600,\n \"letterSpacing\": \"0em\"\n },\n \"h6\": {\n \"fontSize\": 14,\n \"lineHeight\": 1.45,\n \"fontWeight\": 600,\n \"letterSpacing\": \"0em\"\n },\n \"body\": {\n \"fontSize\": 20,\n \"lineHeight\": 30,\n \"fontWeight\": 400,\n \"letterSpacing\": \"-0.005em\"\n },\n \"sm\": {\n \"fontSize\": 14,\n \"lineHeight\": 20,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0em\"\n },\n \"xs\": {\n \"fontSize\": 12,\n \"lineHeight\": 16,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0.01em\"\n }\n },\n \"borderRadius\": \"12px\"\n },\n {\n \"id\": \"x.ai\",\n \"name\": \"xAI\",\n \"category\": \"AI & LLM\",\n \"description\": \"An inspired interpretation of xAI's design language — Elon Musk's frontier-AI company whose web surface is a strict near-black canvas broken only by white pill outlines, occasional warm sunset / dusk gradient accents, a custom geometric san\",\n \"designMdPath\": \"/design-md/x.ai/DESIGN.md\",\n \"color\": {\n \"primary\": \"#ffffff\",\n \"primaryHover\": \"#ffffff\",\n \"primaryLight\": \"#ffffff26\",\n \"bgPrimary\": \"#0a0a0a\",\n \"bgSecondary\": \"#1a1c20\",\n \"textPrimary\": \"#ffffff\",\n \"textSecondary\": \"#9aa1b1\",\n \"textMuted\": \"#5c6470\",\n \"borderSubtle\": \"#212327\",\n \"borderStrong\": \"#3d414a\",\n \"statusSuccess\": \"#10b981\",\n \"statusDanger\": \"#f43f5e\",\n \"statusWarning\": \"#f59e0b\"\n },\n \"typography\": {\n \"fontFamily\": \"universalSans, Inter, system-ui, -apple-system, sans-serif\",\n \"h1\": {\n \"fontSize\": 96,\n \"lineHeight\": 96,\n \"fontWeight\": 400,\n \"letterSpacing\": \"-2.4px\"\n },\n \"h2\": {\n \"fontSize\": 72,\n \"lineHeight\": 72,\n \"fontWeight\": 400,\n \"letterSpacing\": \"-1.8px\"\n },\n \"h3\": {\n \"fontSize\": 48,\n \"lineHeight\": 48,\n \"fontWeight\": 400,\n \"letterSpacing\": \"-1.2px\"\n },\n \"h4\": {\n \"fontSize\": 18,\n \"lineHeight\": 1.35,\n \"fontWeight\": 600,\n \"letterSpacing\": \"-0.005em\"\n },\n \"h5\": {\n \"fontSize\": 16,\n \"lineHeight\": 1.4,\n \"fontWeight\": 600,\n \"letterSpacing\": \"0em\"\n },\n \"h6\": {\n \"fontSize\": 14,\n \"lineHeight\": 1.45,\n \"fontWeight\": 600,\n \"letterSpacing\": \"0em\"\n },\n \"body\": {\n \"fontSize\": 18,\n \"lineHeight\": 28,\n \"fontWeight\": 400,\n \"letterSpacing\": \"-0.005em\"\n },\n \"sm\": {\n \"fontSize\": 14,\n \"lineHeight\": 20,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0em\"\n },\n \"xs\": {\n \"fontSize\": 11,\n \"lineHeight\": 1.4,\n \"fontWeight\": 500,\n \"letterSpacing\": \"0.01em\"\n }\n },\n \"borderRadius\": \"8px\"\n },\n {\n \"id\": \"zapier\",\n \"name\": \"Zapier\",\n \"category\": \"Tech & Lifestyle\",\n \"description\": \"An inspired interpretation of Zapier's design language — a workflow-automation platform whose surface combines warm-cream neutrals (`#fffefb` canvas, `#f8f4f0` soft cream) with deep coffee ink (`#201515`) and a single saturated orange CTA a\",\n \"designMdPath\": \"/design-md/zapier/DESIGN.md\",\n \"color\": {\n \"primary\": \"#ff4f00\",\n \"primaryHover\": \"#ff4f00\",\n \"primaryLight\": \"#e8f3ff\",\n \"bgPrimary\": \"#fffefb\",\n \"bgSecondary\": \"#f8f4f0\",\n \"textPrimary\": \"#201515\",\n \"textSecondary\": \"#8b95a1\",\n \"textMuted\": \"#b0b8c1\",\n \"borderSubtle\": \"#f2f4f6\",\n \"borderStrong\": \"#e5e8eb\",\n \"statusSuccess\": \"#10b981\",\n \"statusDanger\": \"#f43f5e\",\n \"statusWarning\": \"#f59e0b\"\n },\n \"typography\": {\n \"fontFamily\": \"Degular Display, Inter, system-ui, -apple-system, sans-serif\",\n \"h1\": {\n \"fontSize\": 56,\n \"lineHeight\": 56,\n \"fontWeight\": 500,\n \"letterSpacing\": \"-0.02em\"\n },\n \"h2\": {\n \"fontSize\": 48,\n \"lineHeight\": 48,\n \"fontWeight\": 500,\n \"letterSpacing\": \"-0.015em\"\n },\n \"h3\": {\n \"fontSize\": 32,\n \"lineHeight\": 36,\n \"fontWeight\": 500,\n \"letterSpacing\": \"1px\"\n },\n \"h4\": {\n \"fontSize\": 18,\n \"lineHeight\": 1.35,\n \"fontWeight\": 600,\n \"letterSpacing\": \"-0.005em\"\n },\n \"h5\": {\n \"fontSize\": 16,\n \"lineHeight\": 1.4,\n \"fontWeight\": 600,\n \"letterSpacing\": \"0em\"\n },\n \"h6\": {\n \"fontSize\": 14,\n \"lineHeight\": 1.45,\n \"fontWeight\": 600,\n \"letterSpacing\": \"0em\"\n },\n \"body\": {\n \"fontSize\": 20,\n \"lineHeight\": 30,\n \"fontWeight\": 400,\n \"letterSpacing\": \"-0.2px\"\n },\n \"sm\": {\n \"fontSize\": 16,\n \"lineHeight\": 24,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0em\"\n },\n \"xs\": {\n \"fontSize\": 14,\n \"lineHeight\": 21,\n \"fontWeight\": 400,\n \"letterSpacing\": \"0.01em\"\n }\n },\n \"borderRadius\": \"12px\"\n }\n];\n\nexport const AWESOME_CATEGORIES = [\n 'All',\n 'AI & LLM',\n 'Developer Tools',\n 'Fintech & Web3',\n 'Tech & Lifestyle',\n 'Automotive & Luxury',\n] as const;\n","export interface TypographyLevelConfig {\n fontSize: number; // in px\n lineHeight: number; // multiplier e.g. 1.25\n fontWeight: number; // 400, 500, 600, 700, 800, 900\n letterSpacing: string; // e.g. '-0.02em'\n}\n\nexport interface TypographyConfig {\n fontFamily: string;\n h1: TypographyLevelConfig;\n h2: TypographyLevelConfig;\n h3: TypographyLevelConfig;\n h4: TypographyLevelConfig;\n h5: TypographyLevelConfig;\n h6: TypographyLevelConfig;\n body: TypographyLevelConfig;\n sm: TypographyLevelConfig;\n xs: TypographyLevelConfig;\n}\n\nexport interface ColorConfig {\n primary: string;\n primaryHover: string;\n primaryLight: string;\n bgPrimary: string;\n bgSecondary: string;\n textPrimary: string;\n textSecondary: string;\n textMuted: string;\n borderSubtle: string;\n borderStrong: string;\n statusSuccess: string;\n statusDanger: string;\n statusWarning: string;\n}\n\nexport interface ThemeConfig {\n color: ColorConfig;\n typography: TypographyConfig;\n borderRadius: string;\n}\n\nexport interface ColorPreset {\n id: string;\n name: string;\n description: string;\n colors: ColorConfig;\n borderRadius: string;\n}\n\nexport const DEFAULT_THEME_CONFIG: ThemeConfig = {\n color: {\n primary: '#3182f6',\n primaryHover: '#1b64da',\n primaryLight: '#e8f3ff',\n bgPrimary: '#ffffff',\n bgSecondary: '#f8f9fa',\n textPrimary: '#191f28',\n textSecondary: '#8b95a1',\n textMuted: '#b0b8c1',\n borderSubtle: '#f2f4f6',\n borderStrong: '#e5e8eb',\n statusSuccess: '#10b981',\n statusDanger: '#f43f5e',\n statusWarning: '#f59e0b',\n },\n typography: {\n fontFamily: '\"Pretendard Variable\", Pretendard, -apple-system, BlinkMacSystemFont, system-ui, Roboto, sans-serif',\n h1: {\n fontSize: 36,\n lineHeight: 1.25,\n fontWeight: 800,\n letterSpacing: '-0.025em',\n },\n h2: {\n fontSize: 28,\n lineHeight: 1.3,\n fontWeight: 700,\n letterSpacing: '-0.02em',\n },\n h3: {\n fontSize: 22,\n lineHeight: 1.35,\n fontWeight: 700,\n letterSpacing: '-0.015em',\n },\n h4: {\n fontSize: 18,\n lineHeight: 1.4,\n fontWeight: 600,\n letterSpacing: '-0.01em',\n },\n h5: {\n fontSize: 16,\n lineHeight: 1.45,\n fontWeight: 600,\n letterSpacing: '0em',\n },\n h6: {\n fontSize: 14,\n lineHeight: 1.5,\n fontWeight: 600,\n letterSpacing: '0em',\n },\n body: {\n fontSize: 15,\n lineHeight: 1.6,\n fontWeight: 400,\n letterSpacing: '-0.005em',\n },\n sm: {\n fontSize: 13,\n lineHeight: 1.5,\n fontWeight: 400,\n letterSpacing: '0em',\n },\n xs: {\n fontSize: 11,\n lineHeight: 1.4,\n fontWeight: 500,\n letterSpacing: '0.01em',\n },\n },\n borderRadius: '14px',\n};\n\nexport const COLOR_PRESETS: ColorPreset[] = [\n {\n id: 'toss',\n name: '토스 (Toss Vivid Blue)',\n description: '청량한 비비드 블루와 볼드 라운딩',\n borderRadius: '16px',\n colors: {\n primary: '#3182f6',\n primaryHover: '#1b64da',\n primaryLight: '#e8f3ff',\n bgPrimary: '#ffffff',\n bgSecondary: '#f8f9fa',\n textPrimary: '#191f28',\n textSecondary: '#8b95a1',\n textMuted: '#b0b8c1',\n borderSubtle: '#f2f4f6',\n borderStrong: '#e5e8eb',\n statusSuccess: '#10b981',\n statusDanger: '#f43f5e',\n statusWarning: '#f59e0b',\n },\n },\n {\n id: 'daangn',\n name: '당근 (Daangn Warm)',\n description: '따뜻한 오렌지와 친근한 라운딩 감성',\n borderRadius: '12px',\n colors: {\n primary: '#ff6f0f',\n primaryHover: '#e05900',\n primaryLight: '#fff2e8',\n bgPrimary: '#ffffff',\n bgSecondary: '#fbf7f2',\n textPrimary: '#212124',\n textSecondary: '#868b94',\n textMuted: '#b2b5ba',\n borderSubtle: '#f5f0eb',\n borderStrong: '#e4ddd3',\n statusSuccess: '#10b981',\n statusDanger: '#ff4b4b',\n statusWarning: '#ff9800',\n },\n },\n {\n id: 'violet-tech',\n name: '바이올렛 (Modern Violet)',\n description: 'B2B 테크 및 개발자 지향의 감각적인 보라색',\n borderRadius: '10px',\n colors: {\n primary: '#7c3aed',\n primaryHover: '#6d28d9',\n primaryLight: '#f3e8ff',\n bgPrimary: '#ffffff',\n bgSecondary: '#faf7ff',\n textPrimary: '#18181b',\n textSecondary: '#71717a',\n textMuted: '#a1a1aa',\n borderSubtle: '#f4f4f5',\n borderStrong: '#e4e4e7',\n statusSuccess: '#059669',\n statusDanger: '#e11d48',\n statusWarning: '#d97706',\n },\n },\n {\n id: 'emerald',\n name: '에메랄드 (Forest Eco)',\n description: '편안한 자연 감성의 딥 그린 핀테크/웰니스',\n borderRadius: '14px',\n colors: {\n primary: '#059669',\n primaryHover: '#047857',\n primaryLight: '#ecfdf5',\n bgPrimary: '#ffffff',\n bgSecondary: '#f0fdf4',\n textPrimary: '#064e3b',\n textSecondary: '#6ee7b7',\n textMuted: '#94a3b8',\n borderSubtle: '#e6f7ec',\n borderStrong: '#d1fae5',\n statusSuccess: '#10b981',\n statusDanger: '#f43f5e',\n statusWarning: '#f59e0b',\n },\n },\n {\n id: 'dark-cyber',\n name: '다크 사이버 (Dark Cyber)',\n description: '세련된 네온 시안과 매트 다크 서피스',\n borderRadius: '12px',\n colors: {\n primary: '#06b6d4',\n primaryHover: '#0891b2',\n primaryLight: '#164e63',\n bgPrimary: '#0f172a',\n bgSecondary: '#1e293b',\n textPrimary: '#f8fafc',\n textSecondary: '#94a3b8',\n textMuted: '#64748b',\n borderSubtle: '#334155',\n borderStrong: '#475569',\n statusSuccess: '#34d399',\n statusDanger: '#fb7185',\n statusWarning: '#fbbf24',\n },\n },\n {\n id: 'sunset-rose',\n name: '선셋 로즈 (Sunset Rose)',\n description: '우아하고 로맨틱한 핑크 로즈 테마',\n borderRadius: '16px',\n colors: {\n primary: '#e11d48',\n primaryHover: '#be123c',\n primaryLight: '#ffe4e6',\n bgPrimary: '#ffffff',\n bgSecondary: '#fff1f2',\n textPrimary: '#1e1b18',\n textSecondary: '#9f1239',\n textMuted: '#fda4af',\n borderSubtle: '#fecdd3',\n borderStrong: '#f43f5e',\n statusSuccess: '#10b981',\n statusDanger: '#e11d48',\n statusWarning: '#f59e0b',\n },\n },\n];\n\nexport const FONT_FAMILY_PRESETS = [\n {\n name: 'Pretendard (기본 권장)',\n value: '\"Pretendard Variable\", Pretendard, -apple-system, BlinkMacSystemFont, system-ui, Roboto, sans-serif',\n },\n {\n name: 'Inter (글로벌 테크)',\n value: '\"Inter\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, sans-serif',\n },\n {\n name: 'System UI (시스템 네이티브)',\n value: '-apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif',\n },\n {\n name: 'Noto Sans KR (구글 표준 한국어)',\n value: '\"Noto Sans KR\", sans-serif',\n },\n {\n name: 'Monospace (코딩 / 모노)',\n value: '\"JetBrains Mono\", \"Fira Code\", monospace',\n },\n];\n","import { ThemeConfig } from '@/lib/data/themeEditorDefaults';\n\nconst STYLE_ELEMENT_ID = 'atom-theme-live-engine-style';\n\nconst FONT_IMPORT_MAP: Record<string, string> = {\n Inter: '@import url(\"https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800;900&display=swap\");',\n 'Noto Sans KR': '@import url(\"https://fonts.googleapis.com/css2?family=Noto+Sans+KR:wght@400;500;700;900&display=swap\");',\n 'JetBrains Mono': '@import url(\"https://fonts.googleapis.com/css2?family=JetBrains+Mono:wght@400;500;700&display=swap\");',\n Outfit: '@import url(\"https://fonts.googleapis.com/css2?family=Outfit:wght@400;500;600;700;800&display=swap\");',\n 'Plus Jakarta Sans': '@import url(\"https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:wght@400;500;600;700;800&display=swap\");',\n};\n\n/**\n * ThemeConfig를 받아 전역에 적용될 동적 CSS 문자열을 생성합니다.\n */\nexport function generateThemeCSS(theme: ThemeConfig): string {\n const { color, typography, borderRadius } = theme;\n\n // Detect font import if Google font selected\n let fontImportCSS = '';\n for (const [fontKey, importRule] of Object.entries(FONT_IMPORT_MAP)) {\n if (typography.fontFamily.includes(fontKey)) {\n fontImportCSS = `${importRule}\\n`;\n break;\n }\n }\n\n return `\n${fontImportCSS}/* [AtomDesignToken] Live Injected Theme Variables */\n:root, .dark, [data-theme=\"dark\"], [data-theme=\"light\"] {\n /* Font Family */\n --font-sans: ${typography.fontFamily};\n\n /* Semantic Colors */\n --accent-primary: ${color.primary};\n --accent-hover: ${color.primaryHover};\n --accent-light: ${color.primaryLight};\n --bg-primary: ${color.bgPrimary};\n --bg-secondary: ${color.bgSecondary};\n --text-primary: ${color.textPrimary};\n --text-secondary: ${color.textSecondary};\n --text-muted: ${color.textMuted};\n --border-subtle: ${color.borderSubtle};\n --border-strong: ${color.borderStrong};\n\n /* Atom System Specific Variables */\n --atom-color-primary: ${color.primary};\n --atom-color-primary-hover: ${color.primaryHover};\n --atom-color-primary-subtle: ${color.primaryLight};\n --atom-status-success: ${color.statusSuccess};\n --atom-status-danger: ${color.statusDanger};\n --atom-status-warning: ${color.statusWarning};\n --atom-radius: ${borderRadius};\n\n /* Typography Variables */\n --atom-font-h1-size: ${typography.h1.fontSize}px;\n --atom-font-h1-lh: ${typography.h1.lineHeight};\n --atom-font-h1-weight: ${typography.h1.fontWeight};\n --atom-font-h1-spacing: ${typography.h1.letterSpacing};\n\n --atom-font-h2-size: ${typography.h2.fontSize}px;\n --atom-font-h2-lh: ${typography.h2.lineHeight};\n --atom-font-h2-weight: ${typography.h2.fontWeight};\n --atom-font-h2-spacing: ${typography.h2.letterSpacing};\n\n --atom-font-h3-size: ${typography.h3.fontSize}px;\n --atom-font-h3-lh: ${typography.h3.lineHeight};\n --atom-font-h3-weight: ${typography.h3.fontWeight};\n --atom-font-h3-spacing: ${typography.h3.letterSpacing};\n\n --atom-font-h4-size: ${typography.h4.fontSize}px;\n --atom-font-h4-lh: ${typography.h4.lineHeight};\n --atom-font-h4-weight: ${typography.h4.fontWeight};\n --atom-font-h4-spacing: ${typography.h4.letterSpacing};\n\n --atom-font-h5-size: ${typography.h5.fontSize}px;\n --atom-font-h5-lh: ${typography.h5.lineHeight};\n --atom-font-h5-weight: ${typography.h5.fontWeight};\n --atom-font-h5-spacing: ${typography.h5.letterSpacing};\n\n --atom-font-h6-size: ${typography.h6.fontSize}px;\n --atom-font-h6-lh: ${typography.h6.lineHeight};\n --atom-font-h6-weight: ${typography.h6.fontWeight};\n --atom-font-h6-spacing: ${typography.h6.letterSpacing};\n\n --atom-font-body-size: ${typography.body.fontSize}px;\n --atom-font-body-lh: ${typography.body.lineHeight};\n --atom-font-body-weight: ${typography.body.fontWeight};\n --atom-font-body-spacing: ${typography.body.letterSpacing};\n\n --atom-font-sm-size: ${typography.sm.fontSize}px;\n --atom-font-sm-lh: ${typography.sm.lineHeight};\n --atom-font-sm-weight: ${typography.sm.fontWeight};\n --atom-font-sm-spacing: ${typography.sm.letterSpacing};\n\n --atom-font-xs-size: ${typography.xs.fontSize}px;\n --atom-font-xs-lh: ${typography.xs.lineHeight};\n --atom-font-xs-weight: ${typography.xs.fontWeight};\n --atom-font-xs-spacing: ${typography.xs.letterSpacing};\n}\n\n/* Typography Tag Overrides (Applied globally with high priority) */\nh1, .atom-h1 {\n font-size: ${typography.h1.fontSize}px !important;\n line-height: ${typography.h1.lineHeight} !important;\n font-weight: ${typography.h1.fontWeight} !important;\n letter-spacing: ${typography.h1.letterSpacing} !important;\n}\n\nh2, .atom-h2 {\n font-size: ${typography.h2.fontSize}px !important;\n line-height: ${typography.h2.lineHeight} !important;\n font-weight: ${typography.h2.fontWeight} !important;\n letter-spacing: ${typography.h2.letterSpacing} !important;\n}\n\nh3, .atom-h3 {\n font-size: ${typography.h3.fontSize}px !important;\n line-height: ${typography.h3.lineHeight} !important;\n font-weight: ${typography.h3.fontWeight} !important;\n letter-spacing: ${typography.h3.letterSpacing} !important;\n}\n\nh4, .atom-h4 {\n font-size: ${typography.h4.fontSize}px !important;\n line-height: ${typography.h4.lineHeight} !important;\n font-weight: ${typography.h4.fontWeight} !important;\n letter-spacing: ${typography.h4.letterSpacing} !important;\n}\n\nh5, .atom-h5 {\n font-size: ${typography.h5.fontSize}px !important;\n line-height: ${typography.h5.lineHeight} !important;\n font-weight: ${typography.h5.fontWeight} !important;\n letter-spacing: ${typography.h5.letterSpacing} !important;\n}\n\nh6, .atom-h6 {\n font-size: ${typography.h6.fontSize}px !important;\n line-height: ${typography.h6.lineHeight} !important;\n font-weight: ${typography.h6.fontWeight} !important;\n letter-spacing: ${typography.h6.letterSpacing} !important;\n}\n\n/* Body & Paragraph styles */\nhtml, body, button, input, select, textarea, h1, h2, h3, h4, h5, h6 {\n font-family: ${typography.fontFamily} !important;\n}\n\nbody {\n background-color: ${color.bgPrimary};\n color: ${color.textPrimary};\n}\n\n.atom-body, p:not([class*=\"text-xs\"]):not([class*=\"text-sm\"]) {\n font-size: ${typography.body.fontSize}px;\n line-height: ${typography.body.lineHeight};\n font-weight: ${typography.body.fontWeight};\n letter-spacing: ${typography.body.letterSpacing};\n}\n\n/* Small & Micro texts */\n.text-sm, small, .atom-sm {\n font-size: ${typography.sm.fontSize}px;\n line-height: ${typography.sm.lineHeight};\n font-weight: ${typography.sm.fontWeight};\n letter-spacing: ${typography.sm.letterSpacing};\n}\n\n.text-xs, .atom-xs {\n font-size: ${typography.xs.fontSize}px;\n line-height: ${typography.xs.lineHeight};\n font-weight: ${typography.xs.fontWeight};\n letter-spacing: ${typography.xs.letterSpacing};\n}\n\n/* Card & Surface Synchronizations */\nhtml.dark {\n --color-neutral-900: ${color.bgSecondary};\n --color-neutral-850: ${color.bgSecondary};\n}\n\nhtml.dark .bg-white:not([data-keep-white]):not([role=\"switch\"]):not([aria-hidden=\"true\"]) {\n background-color: ${color.bgSecondary} !important;\n}\n\nhtml.dark .border-neutral-200,\nhtml.dark .border-neutral-200\\\\/80 {\n border-color: ${color.borderSubtle} !important;\n}\n\n/* Ensure tab active pills and chips using dark:bg-white take brand accent */\nhtml.dark [class*=\"dark:bg-white\"]:not([data-keep-white]) {\n background-color: ${color.primary} !important;\n color: #ffffff !important;\n}\n`.trim();\n}\n\n/**\n * Hex 색상의 명도(Luminance)를 계산하여 다크 테마 여부를 판별합니다.\n */\nexport function isDarkColor(hexColor: string): boolean {\n if (!hexColor || typeof hexColor !== 'string') return false;\n const clean = hexColor.replace('#', '').trim();\n if (clean.length === 3) {\n const r = parseInt(clean[0] + clean[0], 16);\n const g = parseInt(clean[1] + clean[1], 16);\n const b = parseInt(clean[2] + clean[2], 16);\n return (r * 299 + g * 587 + b * 114) / 1000 < 128;\n }\n if (clean.length < 6) return false;\n const r = parseInt(clean.substring(0, 2), 16);\n const g = parseInt(clean.substring(2, 4), 16);\n const b = parseInt(clean.substring(4, 6), 16);\n if (isNaN(r) || isNaN(g) || isNaN(b)) return false;\n return (r * 299 + g * 587 + b * 114) / 1000 < 128;\n}\n\n/**\n * DOM에 실시간 스타일 태그를 주입하거나 갱신합니다.\n * 다크/라이트 테마에 따라 html 태그의 dark 클래스 및 data-theme 속성을 자동 동기화합니다.\n */\nexport function applyThemeToDOM(theme: ThemeConfig): void {\n if (typeof document === 'undefined') return;\n\n const isDark = isDarkColor(theme.color.bgPrimary);\n if (isDark) {\n document.documentElement.classList.add('dark');\n document.documentElement.setAttribute('data-theme', 'dark');\n } else {\n document.documentElement.classList.remove('dark');\n document.documentElement.setAttribute('data-theme', 'light');\n }\n\n let styleTag = document.getElementById(STYLE_ELEMENT_ID) as HTMLStyleElement | null;\n if (!styleTag) {\n styleTag = document.createElement('style');\n styleTag.id = STYLE_ELEMENT_ID;\n document.head.appendChild(styleTag);\n }\n\n styleTag.textContent = generateThemeCSS(theme);\n}\n\n/**\n * 순수 CSS 복사용 코드 생성\n */\nexport function exportToCSS(theme: ThemeConfig): string {\n return generateThemeCSS(theme);\n}\n\n/**\n * Tailwind Config 확장 객체 코드 생성\n */\nexport function exportToTailwind(theme: ThemeConfig): string {\n const { color, typography, borderRadius } = theme;\n\n const tailwindSnippet = {\n theme: {\n extend: {\n colors: {\n brand: {\n primary: color.primary,\n hover: color.primaryHover,\n light: color.primaryLight,\n },\n surface: {\n DEFAULT: color.bgPrimary,\n secondary: color.bgSecondary,\n },\n border: {\n subtle: color.borderSubtle,\n strong: color.borderStrong,\n },\n status: {\n success: color.statusSuccess,\n danger: color.statusDanger,\n warning: color.statusWarning,\n },\n },\n fontSize: {\n h1: [`${typography.h1.fontSize}px`, { lineHeight: `${typography.h1.lineHeight}`, fontWeight: `${typography.h1.fontWeight}`, letterSpacing: typography.h1.letterSpacing }],\n h2: [`${typography.h2.fontSize}px`, { lineHeight: `${typography.h2.lineHeight}`, fontWeight: `${typography.h2.fontWeight}`, letterSpacing: typography.h2.letterSpacing }],\n h3: [`${typography.h3.fontSize}px`, { lineHeight: `${typography.h3.lineHeight}`, fontWeight: `${typography.h3.fontWeight}`, letterSpacing: typography.h3.letterSpacing }],\n h4: [`${typography.h4.fontSize}px`, { lineHeight: `${typography.h4.lineHeight}`, fontWeight: `${typography.h4.fontWeight}`, letterSpacing: typography.h4.letterSpacing }],\n h5: [`${typography.h5.fontSize}px`, { lineHeight: `${typography.h5.lineHeight}`, fontWeight: `${typography.h5.fontWeight}`, letterSpacing: typography.h5.letterSpacing }],\n h6: [`${typography.h6.fontSize}px`, { lineHeight: `${typography.h6.lineHeight}`, fontWeight: `${typography.h6.fontWeight}`, letterSpacing: typography.h6.letterSpacing }],\n body: [`${typography.body.fontSize}px`, { lineHeight: `${typography.body.lineHeight}`, fontWeight: `${typography.body.fontWeight}`, letterSpacing: typography.body.letterSpacing }],\n sm: [`${typography.sm.fontSize}px`, { lineHeight: `${typography.sm.lineHeight}`, fontWeight: `${typography.sm.fontWeight}`, letterSpacing: typography.sm.letterSpacing }],\n xs: [`${typography.xs.fontSize}px`, { lineHeight: `${typography.xs.lineHeight}`, fontWeight: `${typography.xs.fontWeight}`, letterSpacing: typography.xs.letterSpacing }],\n },\n borderRadius: {\n custom: borderRadius,\n },\n },\n },\n };\n\n return `// tailwind.config.ts\\nimport type { Config } from 'tailwindcss';\\n\\nexport default ${JSON.stringify(tailwindSnippet, null, 2)} as Config;`;\n}\n\n/**\n * W3C Design Token Community Group (DTCG) 호환 tokens.json 생성\n */\nexport function exportToTokensJson(theme: ThemeConfig): string {\n const { color, typography, borderRadius } = theme;\n\n const dtcgTokens = {\n $schema: 'https://design-tokens.github.io/community-group/format/',\n color: {\n brand: {\n primary: { $value: color.primary, $type: 'color' },\n hover: { $value: color.primaryHover, $type: 'color' },\n subtle: { $value: color.primaryLight, $type: 'color' },\n },\n surface: {\n background: { $value: color.bgPrimary, $type: 'color' },\n secondary: { $value: color.bgSecondary, $type: 'color' },\n },\n text: {\n primary: { $value: color.textPrimary, $type: 'color' },\n secondary: { $value: color.textSecondary, $type: 'color' },\n muted: { $value: color.textMuted, $type: 'color' },\n },\n border: {\n subtle: { $value: color.borderSubtle, $type: 'color' },\n strong: { $value: color.borderStrong, $type: 'color' },\n },\n },\n typography: {\n h1: {\n fontSize: { $value: `${typography.h1.fontSize}px`, $type: 'dimension' },\n lineHeight: { $value: typography.h1.lineHeight, $type: 'number' },\n fontWeight: { $value: typography.h1.fontWeight, $type: 'fontWeight' },\n },\n h2: {\n fontSize: { $value: `${typography.h2.fontSize}px`, $type: 'dimension' },\n lineHeight: { $value: typography.h2.lineHeight, $type: 'number' },\n fontWeight: { $value: typography.h2.fontWeight, $type: 'fontWeight' },\n },\n h3: {\n fontSize: { $value: `${typography.h3.fontSize}px`, $type: 'dimension' },\n lineHeight: { $value: typography.h3.lineHeight, $type: 'number' },\n fontWeight: { $value: typography.h3.fontWeight, $type: 'fontWeight' },\n },\n h4: {\n fontSize: { $value: `${typography.h4.fontSize}px`, $type: 'dimension' },\n lineHeight: { $value: typography.h4.lineHeight, $type: 'number' },\n fontWeight: { $value: typography.h4.fontWeight, $type: 'fontWeight' },\n },\n h5: {\n fontSize: { $value: `${typography.h5.fontSize}px`, $type: 'dimension' },\n lineHeight: { $value: typography.h5.lineHeight, $type: 'number' },\n fontWeight: { $value: typography.h5.fontWeight, $type: 'fontWeight' },\n },\n h6: {\n fontSize: { $value: `${typography.h6.fontSize}px`, $type: 'dimension' },\n lineHeight: { $value: typography.h6.lineHeight, $type: 'number' },\n fontWeight: { $value: typography.h6.fontWeight, $type: 'fontWeight' },\n },\n body: {\n fontSize: { $value: `${typography.body.fontSize}px`, $type: 'dimension' },\n lineHeight: { $value: typography.body.lineHeight, $type: 'number' },\n fontWeight: { $value: typography.body.fontWeight, $type: 'fontWeight' },\n },\n sm: {\n fontSize: { $value: `${typography.sm.fontSize}px`, $type: 'dimension' },\n lineHeight: { $value: typography.sm.lineHeight, $type: 'number' },\n fontWeight: { $value: typography.sm.fontWeight, $type: 'fontWeight' },\n },\n xs: {\n fontSize: { $value: `${typography.xs.fontSize}px`, $type: 'dimension' },\n lineHeight: { $value: typography.xs.lineHeight, $type: 'number' },\n fontWeight: { $value: typography.xs.fontWeight, $type: 'fontWeight' },\n },\n },\n borderRadius: {\n default: { $value: borderRadius, $type: 'dimension' },\n },\n };\n\n return JSON.stringify(dtcgTokens, null, 2);\n}\n","import { clsx, type ClassValue } from \"clsx\";\nimport { twMerge } from \"tailwind-merge\";\n\n/**\n * Combines multiple class names using clsx and merges Tailwind classes \n * to handle conflicts (e.g., 'px-2 px-4' becomes 'px-4').\n */\nexport function cn(...inputs: ClassValue[]) {\n return twMerge(clsx(inputs));\n}\n","/**\n * AtomSystem / AtomDesignToken Public API\n * Universal Design Token & UI Library\n */\n\n// 1. Design Token Specifications & Models\nexport * from '../lib/data/tokens';\nexport * from '../lib/data/components';\nexport * from '../lib/data/patterns';\nexport * from '../lib/data/awesomeThemes';\nexport * from '../lib/data/themeEditorDefaults';\n\n// 2. Theme Engines & Utilities\nexport * from '../lib/services/themeEngine';\nexport * from '../lib/utils';\n\n// 3. Re-export basic CSS path helper\nexport const ATOM_UI_CSS_PATH = 'atomsystem/css/atom-ui.css';\n\n/**\n * CLI Banner & Metadata\n */\nexport const ATOM_VERSION = '0.4.0';\nexport const ATOM_LIB_NAME = 'atomsystem';\n"]}
|