zugzbot 1.0.21 → 1.0.23
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/.opencode/agents/sdd-coder.md +1 -0
- package/.opencode/agents/sdd-orchestrator.md +1 -0
- package/.opencode/skills/sdd-methodology/SKILL.md +8 -0
- package/.opencode/skills/sdd-tester-quickstart/SKILL.md +6 -0
- package/.opencode/tools/sdd_testing.ts +93 -0
- package/bin/init.js +38 -1
- package/opencode.json +9 -0
- package/package.json +14 -4
- package/.opencode/active-brief.md +0 -38
- package/.opencode/docs/shadcn/agents/openai.yml +0 -5
- package/.opencode/docs/shadcn/assets/shadcn-small.png +0 -0
- package/.opencode/docs/shadcn/assets/shadcn.png +0 -0
- package/.opencode/docs/shadcn/cli.md +0 -290
- package/.opencode/docs/shadcn/customization.md +0 -209
- package/.opencode/docs/shadcn/evals/evals.json +0 -47
- package/.opencode/docs/shadcn/mcp.md +0 -105
- package/.opencode/docs/shadcn/registry.md +0 -277
- package/.opencode/docs/shadcn/rules/base-vs-radix.md +0 -306
- package/.opencode/docs/shadcn/rules/composition.md +0 -195
- package/.opencode/docs/shadcn/rules/forms.md +0 -192
- package/.opencode/docs/shadcn/rules/icons.md +0 -101
- package/.opencode/docs/shadcn/rules/styling.md +0 -162
- package/.opencode/oh-my-design/.agents/skills/google-analytics/EXAMPLES.md +0 -441
- package/.opencode/oh-my-design/.agents/skills/google-analytics/REFERENCE.md +0 -342
- package/.opencode/oh-my-design/.agents/skills/google-analytics/SKILL.md +0 -153
- package/.opencode/oh-my-design/.agents/skills/google-analytics/requirements.txt +0 -6
- package/.opencode/oh-my-design/.agents/skills/google-analytics/scripts/analyze.py +0 -459
- package/.opencode/oh-my-design/.agents/skills/google-analytics/scripts/ga_client.py +0 -345
- package/.opencode/oh-my-design/.claude/agents/omd-a11y-auditor.md +0 -98
- package/.opencode/oh-my-design/.claude/agents/omd-asset-curator.md +0 -99
- package/.opencode/oh-my-design/.claude/agents/omd-codex-image.md +0 -49
- package/.opencode/oh-my-design/.claude/agents/omd-critic.md +0 -142
- package/.opencode/oh-my-design/.claude/agents/omd-designer-review.md +0 -38
- package/.opencode/oh-my-design/.claude/agents/omd-final-qa.md +0 -40
- package/.opencode/oh-my-design/.claude/agents/omd-kr-writer.md +0 -35
- package/.opencode/oh-my-design/.claude/agents/omd-locale-adapter.md +0 -32
- package/.opencode/oh-my-design/.claude/agents/omd-master.md +0 -317
- package/.opencode/oh-my-design/.claude/agents/omd-microcopy.md +0 -64
- package/.opencode/oh-my-design/.claude/agents/omd-orchestrator.md +0 -34
- package/.opencode/oh-my-design/.claude/agents/omd-persona-tester.md +0 -119
- package/.opencode/oh-my-design/.claude/agents/omd-ui-junior.md +0 -130
- package/.opencode/oh-my-design/.claude/agents/omd-ux-researcher.md +0 -63
- package/.opencode/oh-my-design/.claude/data/opt-out-corpus.json +0 -141
- package/.opencode/oh-my-design/.claude/data/reference-fingerprints.json +0 -6142
- package/.opencode/oh-my-design/.claude/data/reference-tags.md +0 -104
- package/.opencode/oh-my-design/.claude/data/synonyms.json +0 -79
- package/.opencode/oh-my-design/.claude/data/vocabulary.json +0 -516
- package/.opencode/oh-my-design/.claude/hooks/lib/preferences-parser.cjs +0 -91
- package/.opencode/oh-my-design/.claude/hooks/lib/preferences-writer.cjs +0 -118
- package/.opencode/oh-my-design/.claude/hooks/post-edit-watch.cjs +0 -295
- package/.opencode/oh-my-design/.claude/hooks/session-end-foldin.cjs +0 -149
- package/.opencode/oh-my-design/.claude/hooks/session-state-loader.cjs +0 -113
- package/.opencode/oh-my-design/.claude/hooks/skill-activation.cjs +0 -108
- package/.opencode/oh-my-design/.claude/settings.json +0 -55
- package/.opencode/oh-my-design/.claude/skills/omd/SKILL.md +0 -133
- package/.opencode/oh-my-design/.claude/skills/omd-add-reference/SKILL.md +0 -381
- package/.opencode/oh-my-design/.claude/skills/omd-add-reference/batch-instructions.md +0 -111
- package/.opencode/oh-my-design/.claude/skills/omd-apply/SKILL.md +0 -87
- package/.opencode/oh-my-design/.claude/skills/omd-batch-launch/SKILL.md +0 -270
- package/.opencode/oh-my-design/.claude/skills/omd-codex-image/SKILL.md +0 -162
- package/.opencode/oh-my-design/.claude/skills/omd-component-harvest/SKILL.md +0 -59
- package/.opencode/oh-my-design/.claude/skills/omd-designer-review/SKILL.md +0 -146
- package/.opencode/oh-my-design/.claude/skills/omd-final-qa/SKILL.md +0 -153
- package/.opencode/oh-my-design/.claude/skills/omd-harness/SKILL.md +0 -234
- package/.opencode/oh-my-design/.claude/skills/omd-init/SKILL.md +0 -169
- package/.opencode/oh-my-design/.claude/skills/omd-kr-writer/SKILL.md +0 -229
- package/.opencode/oh-my-design/.claude/skills/omd-lab-01-designmd-impact/SKILL.md +0 -53
- package/.opencode/oh-my-design/.claude/skills/omd-lab-01-designmd-impact/playbooks/compare.md +0 -30
- package/.opencode/oh-my-design/.claude/skills/omd-lab-01-designmd-impact/playbooks/v1.md +0 -42
- package/.opencode/oh-my-design/.claude/skills/omd-lab-01-designmd-impact/playbooks/v2.md +0 -34
- package/.opencode/oh-my-design/.claude/skills/omd-lab-01-designmd-impact/playbooks/v3.md +0 -33
- package/.opencode/oh-my-design/.claude/skills/omd-lab-01-designmd-impact/playbooks/v4.md +0 -37
- package/.opencode/oh-my-design/.claude/skills/omd-lab-02-design-harness/SKILL.md +0 -131
- package/.opencode/oh-my-design/.claude/skills/omd-learn/SKILL.md +0 -83
- package/.opencode/oh-my-design/.claude/skills/omd-locale-adapter/SKILL.md +0 -124
- package/.opencode/oh-my-design/.claude/skills/omd-migrate/SKILL.md +0 -307
- package/.opencode/oh-my-design/.claude/skills/omd-orchestrator/SKILL.md +0 -124
- package/.opencode/oh-my-design/.claude/skills/omd-release-hygiene/SKILL.md +0 -113
- package/.opencode/oh-my-design/.claude/skills/omd-remember/SKILL.md +0 -46
- package/.opencode/oh-my-design/.claude/skills/omd-sync/SKILL.md +0 -40
- package/.opencode/oh-my-design/.claude/skills/omd-token-backfill/SKILL.md +0 -57
- package/.opencode/oh-my-design/.claude/skills/skill-rules.json +0 -84
- package/.opencode/oh-my-design/.github/ISSUE_TEMPLATE/agent-fidelity.md +0 -59
- package/.opencode/oh-my-design/.github/ISSUE_TEMPLATE/bug-report.md +0 -36
- package/.opencode/oh-my-design/.github/ISSUE_TEMPLATE/config.yml +0 -8
- package/.opencode/oh-my-design/.github/ISSUE_TEMPLATE/feature-request.md +0 -26
- package/.opencode/oh-my-design/.github/PULL_REQUEST_TEMPLATE.md +0 -134
- package/.opencode/oh-my-design/.github/assets/logo-bg.png +0 -0
- package/.opencode/oh-my-design/.github/workflows/release.yml +0 -55
- package/.opencode/oh-my-design/.husky/pre-commit +0 -23
- package/.opencode/oh-my-design/.mcp.json +0 -12
- package/.opencode/oh-my-design/AGENTS.md +0 -112
- package/.opencode/oh-my-design/CHANGELOG.md +0 -385
- package/.opencode/oh-my-design/LICENSE +0 -21
- package/.opencode/oh-my-design/README.ja.md +0 -74
- package/.opencode/oh-my-design/README.ko.md +0 -112
- package/.opencode/oh-my-design/README.md +0 -112
- package/.opencode/oh-my-design/README.zh-TW.md +0 -74
- package/.opencode/oh-my-design/agents/AGENT.md +0 -53
- package/.opencode/oh-my-design/agents/omd-a11y-auditor.md +0 -97
- package/.opencode/oh-my-design/agents/omd-asset-curator.md +0 -255
- package/.opencode/oh-my-design/agents/omd-codex-image.md +0 -49
- package/.opencode/oh-my-design/agents/omd-critic.md +0 -181
- package/.opencode/oh-my-design/agents/omd-designer-review.md +0 -38
- package/.opencode/oh-my-design/agents/omd-final-qa.md +0 -40
- package/.opencode/oh-my-design/agents/omd-kr-writer.md +0 -35
- package/.opencode/oh-my-design/agents/omd-locale-adapter.md +0 -32
- package/.opencode/oh-my-design/agents/omd-master.md +0 -559
- package/.opencode/oh-my-design/agents/omd-microcopy.md +0 -63
- package/.opencode/oh-my-design/agents/omd-orchestrator.md +0 -34
- package/.opencode/oh-my-design/agents/omd-persona-tester.md +0 -118
- package/.opencode/oh-my-design/agents/omd-ui-junior.md +0 -129
- package/.opencode/oh-my-design/agents/omd-ux-engineer.md +0 -267
- package/.opencode/oh-my-design/agents/omd-ux-researcher.md +0 -62
- package/.opencode/oh-my-design/agents/omd-ux-writer.md +0 -181
- package/.opencode/oh-my-design/bin/oh-my-design.ts +0 -77
- package/.opencode/oh-my-design/data/architecture-proposals/1.7.2-recommend-install-feedback.md +0 -614
- package/.opencode/oh-my-design/data/architecture-proposals/2026-05-13-thin-install-fresh-fetch.md +0 -189
- package/.opencode/oh-my-design/data/issues/2026-05-13-multi-surface-schema-rfc.md +0 -67
- package/.opencode/oh-my-design/data/opt-out-corpus.json +0 -141
- package/.opencode/oh-my-design/data/reference-audits/2026-05-13-kr10.md +0 -132
- package/.opencode/oh-my-design/data/reference-audits/2026-05-14-kr10.md +0 -72
- package/.opencode/oh-my-design/data/reference-audits/2026-05-15-kr10.md +0 -124
- package/.opencode/oh-my-design/data/reference-fingerprints.json +0 -6142
- package/.opencode/oh-my-design/data/reference-tags.md +0 -118
- package/.opencode/oh-my-design/data/synonyms.json +0 -79
- package/.opencode/oh-my-design/data/vocabulary.json +0 -516
- package/.opencode/oh-my-design/packages/mcp/README.md +0 -172
- package/.opencode/oh-my-design/packages/mcp/__tests__/smoke.test.ts +0 -64
- package/.opencode/oh-my-design/packages/mcp/data/.gitkeep +0 -0
- package/.opencode/oh-my-design/packages/mcp/scripts/sync-data.mjs +0 -38
- package/.opencode/oh-my-design/packages/mcp/src/data.ts +0 -178
- package/.opencode/oh-my-design/packages/mcp/src/index.ts +0 -58
- package/.opencode/oh-my-design/packages/mcp/src/prompts/design-from-ref.ts +0 -87
- package/.opencode/oh-my-design/packages/mcp/src/server.ts +0 -223
- package/.opencode/oh-my-design/packages/mcp/src/tools/get-design-md.ts +0 -44
- package/.opencode/oh-my-design/packages/mcp/src/tools/list-references.ts +0 -58
- package/.opencode/oh-my-design/packages/mcp/src/tools/search-by-vibe.ts +0 -114
- package/.opencode/oh-my-design/packages/mcp/tsconfig.json +0 -21
- package/.opencode/oh-my-design/packages/mcp/tsup.config.ts +0 -17
- package/.opencode/oh-my-design/packages/mcp/vitest.config.ts +0 -8
- package/.opencode/oh-my-design/scripts/bench/README.md +0 -72
- package/.opencode/oh-my-design/scripts/bench/score-init.mjs +0 -97
- package/.opencode/oh-my-design/scripts/bench/score-taste.mjs +0 -189
- package/.opencode/oh-my-design/scripts/check-release-hygiene.sh +0 -83
- package/.opencode/oh-my-design/scripts/context.cjs +0 -91
- package/.opencode/oh-my-design/scripts/ctx-prime.cjs +0 -266
- package/.opencode/oh-my-design/scripts/gen-llms-full.cjs +0 -143
- package/.opencode/oh-my-design/scripts/growth-snapshot.mjs +0 -59
- package/.opencode/oh-my-design/scripts/postinstall.cjs +0 -54
- package/.opencode/oh-my-design/scripts/smoke-md-twins.mjs +0 -98
- package/.opencode/oh-my-design/skills/claude-design/SKILL.md +0 -390
- package/.opencode/oh-my-design/skills/claude-design/references/claude-design-flow.md +0 -425
- package/.opencode/oh-my-design/skills/claude-design/references/codebase-analysis.md +0 -373
- package/.opencode/oh-my-design/skills/claude-design/scripts/analyze_codebase.py +0 -1369
- package/.opencode/oh-my-design/skills/claude-design/scripts/clickable_link.sh +0 -48
- package/.opencode/oh-my-design/skills/claude-design/scripts/collect_source.py +0 -178
- package/.opencode/oh-my-design/skills/claude-design/scripts/drive_claude_design.cjs +0 -378
- package/.opencode/oh-my-design/skills/claude-design/scripts/gather_references.py +0 -437
- package/.opencode/oh-my-design/skills/omd-apply/SKILL.md +0 -107
- package/.opencode/oh-my-design/skills/omd-asset-fetch/SKILL.md +0 -213
- package/.opencode/oh-my-design/skills/omd-codex-image/SKILL.md +0 -162
- package/.opencode/oh-my-design/skills/omd-designer-review/SKILL.md +0 -180
- package/.opencode/oh-my-design/skills/omd-experiment-gallery/SKILL.md +0 -164
- package/.opencode/oh-my-design/skills/omd-final-qa/SKILL.md +0 -182
- package/.opencode/oh-my-design/skills/omd-harness/SKILL.md +0 -726
- package/.opencode/oh-my-design/skills/omd-init/SKILL.md +0 -314
- package/.opencode/oh-my-design/skills/omd-kr-writer/SKILL.md +0 -299
- package/.opencode/oh-my-design/skills/omd-lab-02-design-harness/SKILL.md +0 -129
- package/.opencode/oh-my-design/skills/omd-lab-02-design-harness/playbooks/v1.md +0 -105
- package/.opencode/oh-my-design/skills/omd-lab-02-design-harness/runs/live-2026-04-27-water-app/feedback-log.md +0 -230
- package/.opencode/oh-my-design/skills/omd-lab-02-design-harness/runs/v4-self-test/README.md +0 -46
- package/.opencode/oh-my-design/skills/omd-lab-02-design-harness/runs/v4-self-test/fixtures/founder/README.md +0 -7
- package/.opencode/oh-my-design/skills/omd-lab-02-design-harness/runs/v4-self-test/fixtures/junior-designer/src/components/Hero.tsx +0 -1
- package/.opencode/oh-my-design/skills/omd-lab-02-design-harness/runs/v4-self-test/fixtures/junior-designer/src/components/Project.tsx +0 -1
- package/.opencode/oh-my-design/skills/omd-lab-02-design-harness/runs/v4-self-test/fixtures/senior-dev/src/components/Accordion.tsx +0 -4
- package/.opencode/oh-my-design/skills/omd-lab-02-design-harness/runs/v4-self-test/fixtures/senior-dev/src/components/Alert.tsx +0 -4
- package/.opencode/oh-my-design/skills/omd-lab-02-design-harness/runs/v4-self-test/fixtures/senior-dev/src/components/Avatar.tsx +0 -4
- package/.opencode/oh-my-design/skills/omd-lab-02-design-harness/runs/v4-self-test/fixtures/senior-dev/src/components/Badge.tsx +0 -4
- package/.opencode/oh-my-design/skills/omd-lab-02-design-harness/runs/v4-self-test/fixtures/senior-dev/src/components/Breadcrumb.tsx +0 -4
- package/.opencode/oh-my-design/skills/omd-lab-02-design-harness/runs/v4-self-test/fixtures/senior-dev/src/components/Button.tsx +0 -4
- package/.opencode/oh-my-design/skills/omd-lab-02-design-harness/runs/v4-self-test/fixtures/senior-dev/src/components/Card.tsx +0 -4
- package/.opencode/oh-my-design/skills/omd-lab-02-design-harness/runs/v4-self-test/fixtures/senior-dev/src/components/Combobox.tsx +0 -4
- package/.opencode/oh-my-design/skills/omd-lab-02-design-harness/runs/v4-self-test/fixtures/senior-dev/src/components/DataTable.tsx +0 -4
- package/.opencode/oh-my-design/skills/omd-lab-02-design-harness/runs/v4-self-test/fixtures/senior-dev/src/components/Dialog.tsx +0 -4
- package/.opencode/oh-my-design/skills/omd-lab-02-design-harness/runs/v4-self-test/fixtures/senior-dev/src/components/Drawer.tsx +0 -4
- package/.opencode/oh-my-design/skills/omd-lab-02-design-harness/runs/v4-self-test/fixtures/senior-dev/src/components/Field.tsx +0 -4
- package/.opencode/oh-my-design/skills/omd-lab-02-design-harness/runs/v4-self-test/fixtures/senior-dev/src/components/Form.tsx +0 -4
- package/.opencode/oh-my-design/skills/omd-lab-02-design-harness/runs/v4-self-test/fixtures/senior-dev/src/components/Input.tsx +0 -4
- package/.opencode/oh-my-design/skills/omd-lab-02-design-harness/runs/v4-self-test/fixtures/senior-dev/src/components/Menu.tsx +0 -4
- package/.opencode/oh-my-design/skills/omd-lab-02-design-harness/runs/v4-self-test/fixtures/senior-dev/src/components/Modal.tsx +0 -4
- package/.opencode/oh-my-design/skills/omd-lab-02-design-harness/runs/v4-self-test/fixtures/senior-dev/src/components/Pagination.tsx +0 -4
- package/.opencode/oh-my-design/skills/omd-lab-02-design-harness/runs/v4-self-test/fixtures/senior-dev/src/components/Popover.tsx +0 -4
- package/.opencode/oh-my-design/skills/omd-lab-02-design-harness/runs/v4-self-test/fixtures/senior-dev/src/components/Select.tsx +0 -4
- package/.opencode/oh-my-design/skills/omd-lab-02-design-harness/runs/v4-self-test/fixtures/senior-dev/src/components/Sheet.tsx +0 -4
- package/.opencode/oh-my-design/skills/omd-lab-02-design-harness/runs/v4-self-test/fixtures/senior-dev/src/components/Spinner.tsx +0 -4
- package/.opencode/oh-my-design/skills/omd-lab-02-design-harness/runs/v4-self-test/fixtures/senior-dev/src/components/Tabs.tsx +0 -4
- package/.opencode/oh-my-design/skills/omd-lab-02-design-harness/runs/v4-self-test/fixtures/senior-dev/src/components/Toast.tsx +0 -4
- package/.opencode/oh-my-design/skills/omd-lab-02-design-harness/runs/v4-self-test/fixtures/senior-dev/src/components/Tooltip.tsx +0 -4
- package/.opencode/oh-my-design/skills/omd-lab-02-design-harness/runs/v4-self-test/fixtures/senior-dev/src/components/VirtualList.tsx +0 -4
- package/.opencode/oh-my-design/skills/omd-lab-02-design-harness/runs/v4-self-test/fixtures/vibe-coder/src/components/Alert.tsx +0 -3
- package/.opencode/oh-my-design/skills/omd-lab-02-design-harness/runs/v4-self-test/fixtures/vibe-coder/src/components/Avatar.tsx +0 -3
- package/.opencode/oh-my-design/skills/omd-lab-02-design-harness/runs/v4-self-test/fixtures/vibe-coder/src/components/Badge.tsx +0 -3
- package/.opencode/oh-my-design/skills/omd-lab-02-design-harness/runs/v4-self-test/fixtures/vibe-coder/src/components/Button.tsx +0 -3
- package/.opencode/oh-my-design/skills/omd-lab-02-design-harness/runs/v4-self-test/fixtures/vibe-coder/src/components/Card.tsx +0 -3
- package/.opencode/oh-my-design/skills/omd-lab-02-design-harness/runs/v4-self-test/fixtures/vibe-coder/src/components/Input.tsx +0 -3
- package/.opencode/oh-my-design/skills/omd-lab-02-design-harness/runs/v4-self-test/fixtures/vibe-coder/src/components/Modal.tsx +0 -3
- package/.opencode/oh-my-design/skills/omd-lab-02-design-harness/runs/v4-self-test/fixtures/vibe-coder/src/components/Spinner.tsx +0 -3
- package/.opencode/oh-my-design/skills/omd-lab-02-design-harness/runs/v4-self-test/fixtures/vibe-coder/src/components/Tabs.tsx +0 -3
- package/.opencode/oh-my-design/skills/omd-lab-02-design-harness/runs/v4-self-test/fixtures/vibe-coder/src/components/Toast.tsx +0 -3
- package/.opencode/oh-my-design/skills/omd-lab-02-design-harness/runs/v4-self-test/fixtures/vibe-coder/src/styles/globals.css +0 -25
- package/.opencode/oh-my-design/skills/omd-lab-02-design-harness/runs/v4-self-test/fixtures/vibe-coder/tailwind.config.ts +0 -28
- package/.opencode/oh-my-design/skills/omd-lab-02-design-harness/runs/v4-self-test/iterations/i1-findings.md +0 -51
- package/.opencode/oh-my-design/skills/omd-lab-02-design-harness/runs/v4-self-test/iterations/i2-audit-F.md +0 -133
- package/.opencode/oh-my-design/skills/omd-lab-02-design-harness/runs/v4-self-test/iterations/i2-audit-J.md +0 -171
- package/.opencode/oh-my-design/skills/omd-lab-02-design-harness/runs/v4-self-test/iterations/i2-audit-S.md +0 -232
- package/.opencode/oh-my-design/skills/omd-lab-02-design-harness/runs/v4-self-test/iterations/i2-audit-V.md +0 -73
- package/.opencode/oh-my-design/skills/omd-lab-02-design-harness/runs/v4-self-test/iterations/i2-consolidated.md +0 -69
- package/.opencode/oh-my-design/skills/omd-lab-02-design-harness/runs/v4-self-test/postmortem.md +0 -128
- package/.opencode/oh-my-design/skills/omd-learn/SKILL.md +0 -121
- package/.opencode/oh-my-design/skills/omd-locale-adapter/SKILL.md +0 -124
- package/.opencode/oh-my-design/skills/omd-orchestrator/SKILL.md +0 -124
- package/.opencode/oh-my-design/skills/omd-reference-capture/SKILL.md +0 -722
- package/.opencode/oh-my-design/skills/omd-remember/SKILL.md +0 -122
- package/.opencode/oh-my-design/skills/omd-sync/SKILL.md +0 -162
- package/.opencode/oh-my-design/skills/omd-taste/SKILL.md +0 -79
- package/.opencode/oh-my-design/skills-lock.json +0 -10
- package/.opencode/oh-my-design/spec/components-schema.md +0 -179
- package/.opencode/oh-my-design/spec/migration-checklist.md +0 -148
- package/.opencode/oh-my-design/spec/migration-plan.md +0 -124
- package/.opencode/oh-my-design/spec/omd-v0.1.md +0 -382
- package/.opencode/oh-my-design/spec/regional-sources.yaml +0 -77
- package/.opencode/oh-my-design/spec/verification-pipeline.md +0 -154
- package/.opencode/oh-my-design/src/cli/install-skills.ts +0 -1116
- package/.opencode/oh-my-design/src/core/agent-detect.ts +0 -49
- package/.opencode/oh-my-design/test/README.md +0 -89
- package/.opencode/oh-my-design/test/scripts/check-backgrounds.ts +0 -10
- package/.opencode/oh-my-design/test/scripts/generate-preview.ts +0 -42
- package/.opencode/oh-my-design/test/unit/cli/install-skills.test.ts +0 -227
- package/.opencode/oh-my-design/test/unit/core/agent-detect.test.ts +0 -97
- package/.opencode/oh-my-design/test/unit/core/catalog-resolution-order.test.ts +0 -73
- package/.opencode/oh-my-design/test/unit/hooks/hooks.test.ts +0 -499
- package/.opencode/oh-my-design/tsconfig.json +0 -20
- package/.opencode/oh-my-design/tsup.config.ts +0 -12
- package/.opencode/oh-my-design/vitest.config.ts +0 -13
- package/.opencode/oh-my-design/web/.env.example +0 -21
- package/.opencode/oh-my-design/web/AGENTS.md +0 -5
- package/.opencode/oh-my-design/web/CLAUDE.md +0 -1
- package/.opencode/oh-my-design/web/README.md +0 -45
- package/.opencode/oh-my-design/web/__tests__/catalog-integrity.test.ts +0 -333
- package/.opencode/oh-my-design/web/components.json +0 -25
- package/.opencode/oh-my-design/web/docs/font-playground-analytics.md +0 -110
- package/.opencode/oh-my-design/web/eslint.config.mjs +0 -18
- package/.opencode/oh-my-design/web/next.config.ts +0 -31
- package/.opencode/oh-my-design/web/postcss.config.mjs +0 -7
- package/.opencode/oh-my-design/web/public/file.svg +0 -1
- package/.opencode/oh-my-design/web/public/globe.svg +0 -1
- package/.opencode/oh-my-design/web/public/llms-full.txt +0 -3149
- package/.opencode/oh-my-design/web/public/llms.ko.txt +0 -130
- package/.opencode/oh-my-design/web/public/llms.txt +0 -377
- package/.opencode/oh-my-design/web/public/logo-white.png +0 -0
- package/.opencode/oh-my-design/web/public/logo.png +0 -0
- package/.opencode/oh-my-design/web/public/next.svg +0 -1
- package/.opencode/oh-my-design/web/public/og-image.png +0 -0
- package/.opencode/oh-my-design/web/public/twitter-image.png +0 -0
- package/.opencode/oh-my-design/web/public/vercel.svg +0 -1
- package/.opencode/oh-my-design/web/public/window.svg +0 -1
- package/.opencode/oh-my-design/web/references/11st/.verification.md +0 -37
- package/.opencode/oh-my-design/web/references/11st/DESIGN.md +0 -400
- package/.opencode/oh-my-design/web/references/17live/DESIGN.md +0 -467
- package/.opencode/oh-my-design/web/references/29cm/DESIGN.md +0 -495
- package/.opencode/oh-my-design/web/references/29cm/_promo.json +0 -23
- package/.opencode/oh-my-design/web/references/29cm/_research.md +0 -103
- package/.opencode/oh-my-design/web/references/3o3/.verification.md +0 -73
- package/.opencode/oh-my-design/web/references/3o3/DESIGN.md +0 -454
- package/.opencode/oh-my-design/web/references/91app/.verification.md +0 -25
- package/.opencode/oh-my-design/web/references/91app/DESIGN.md +0 -182
- package/.opencode/oh-my-design/web/references/abema/.verification.md +0 -64
- package/.opencode/oh-my-design/web/references/abema/DESIGN.md +0 -535
- package/.opencode/oh-my-design/web/references/ably/DESIGN.md +0 -646
- package/.opencode/oh-my-design/web/references/ably/_promo.json +0 -18
- package/.opencode/oh-my-design/web/references/ably/_research.md +0 -120
- package/.opencode/oh-my-design/web/references/accupass/.verification.md +0 -66
- package/.opencode/oh-my-design/web/references/accupass/DESIGN.md +0 -494
- package/.opencode/oh-my-design/web/references/adobe/.verification.md +0 -63
- package/.opencode/oh-my-design/web/references/adobe/DESIGN.md +0 -458
- package/.opencode/oh-my-design/web/references/airbnb/.verification.md +0 -143
- package/.opencode/oh-my-design/web/references/airbnb/DESIGN.md +0 -639
- package/.opencode/oh-my-design/web/references/airbnb/README.md +0 -23
- package/.opencode/oh-my-design/web/references/airbnb/preview-dark.html +0 -234
- package/.opencode/oh-my-design/web/references/airbnb/preview.html +0 -233
- package/.opencode/oh-my-design/web/references/airtable/.verification.md +0 -136
- package/.opencode/oh-my-design/web/references/airtable/DESIGN.md +0 -314
- package/.opencode/oh-my-design/web/references/airtable/README.md +0 -23
- package/.opencode/oh-my-design/web/references/airtable/preview-dark.html +0 -165
- package/.opencode/oh-my-design/web/references/airtable/preview.html +0 -164
- package/.opencode/oh-my-design/web/references/alipay/DESIGN.md +0 -506
- package/.opencode/oh-my-design/web/references/amazingtalker/.verification.md +0 -38
- package/.opencode/oh-my-design/web/references/amazingtalker/DESIGN.md +0 -434
- package/.opencode/oh-my-design/web/references/appier/DESIGN.md +0 -465
- package/.opencode/oh-my-design/web/references/apple/.verification.md +0 -162
- package/.opencode/oh-my-design/web/references/apple/DESIGN.md +0 -613
- package/.opencode/oh-my-design/web/references/apple/README.md +0 -24
- package/.opencode/oh-my-design/web/references/apple/preview-dark.html +0 -420
- package/.opencode/oh-my-design/web/references/apple/preview.html +0 -414
- package/.opencode/oh-my-design/web/references/baemin/.verification.md +0 -132
- package/.opencode/oh-my-design/web/references/baemin/DESIGN.md +0 -578
- package/.opencode/oh-my-design/web/references/baemin/README.md +0 -19
- package/.opencode/oh-my-design/web/references/baemin/_research.md +0 -84
- package/.opencode/oh-my-design/web/references/banksalad/DESIGN.md +0 -688
- package/.opencode/oh-my-design/web/references/banksalad/_promo.json +0 -29
- package/.opencode/oh-my-design/web/references/banksalad/_research.md +0 -190
- package/.opencode/oh-my-design/web/references/bilibili/DESIGN.md +0 -471
- package/.opencode/oh-my-design/web/references/bithumb/.verification.md +0 -31
- package/.opencode/oh-my-design/web/references/bithumb/DESIGN.md +0 -208
- package/.opencode/oh-my-design/web/references/bmw/.verification.md +0 -114
- package/.opencode/oh-my-design/web/references/bmw/DESIGN.md +0 -360
- package/.opencode/oh-my-design/web/references/bmw/README.md +0 -23
- package/.opencode/oh-my-design/web/references/bmw/preview-dark.html +0 -211
- package/.opencode/oh-my-design/web/references/bmw/preview.html +0 -210
- package/.opencode/oh-my-design/web/references/brandi/.verification.md +0 -29
- package/.opencode/oh-my-design/web/references/brandi/DESIGN.md +0 -414
- package/.opencode/oh-my-design/web/references/bunjang/DESIGN.md +0 -374
- package/.opencode/oh-my-design/web/references/bunjang/assets/_reference/.live-inspect-proof.json +0 -260
- package/.opencode/oh-my-design/web/references/bunjang/assets/_reference/fonts.json +0 -33
- package/.opencode/oh-my-design/web/references/bunjang/assets/_reference/logo-icon.svg +0 -10
- package/.opencode/oh-my-design/web/references/bunjang/assets/_reference/structure.json +0 -131
- package/.opencode/oh-my-design/web/references/bunjang/assets/_reference/tokens.json +0 -147
- package/.opencode/oh-my-design/web/references/cakeresume/.verification.md +0 -25
- package/.opencode/oh-my-design/web/references/cakeresume/DESIGN.md +0 -191
- package/.opencode/oh-my-design/web/references/cal/.verification.md +0 -145
- package/.opencode/oh-my-design/web/references/cal/DESIGN.md +0 -481
- package/.opencode/oh-my-design/web/references/cal/README.md +0 -23
- package/.opencode/oh-my-design/web/references/cal/preview-dark.html +0 -449
- package/.opencode/oh-my-design/web/references/cal/preview.html +0 -575
- package/.opencode/oh-my-design/web/references/catchtable/DESIGN.md +0 -341
- package/.opencode/oh-my-design/web/references/catchtable/_research.md +0 -54
- package/.opencode/oh-my-design/web/references/catchtable/assets/_reference/.live-inspect-proof.json +0 -204
- package/.opencode/oh-my-design/web/references/catchtable/assets/_reference/.live-inspect-raw.json +0 -22
- package/.opencode/oh-my-design/web/references/catchtable/assets/_reference/fonts.json +0 -21
- package/.opencode/oh-my-design/web/references/catchtable/assets/_reference/structure.json +0 -42
- package/.opencode/oh-my-design/web/references/catchtable/assets/_reference/tokens.json +0 -95
- package/.opencode/oh-my-design/web/references/cathay/.verification.md +0 -44
- package/.opencode/oh-my-design/web/references/cathay/DESIGN.md +0 -432
- package/.opencode/oh-my-design/web/references/channeltalk/DESIGN.md +0 -422
- package/.opencode/oh-my-design/web/references/channeltalk/assets/_reference/.live-inspect-proof.json +0 -320
- package/.opencode/oh-my-design/web/references/channeltalk/assets/_reference/fonts.json +0 -53
- package/.opencode/oh-my-design/web/references/channeltalk/assets/_reference/structure.json +0 -47
- package/.opencode/oh-my-design/web/references/channeltalk/assets/_reference/tokens.json +0 -78
- package/.opencode/oh-my-design/web/references/class101/DESIGN.md +0 -484
- package/.opencode/oh-my-design/web/references/classting/.verification.md +0 -32
- package/.opencode/oh-my-design/web/references/classting/DESIGN.md +0 -292
- package/.opencode/oh-my-design/web/references/classum/DESIGN.md +0 -279
- package/.opencode/oh-my-design/web/references/classum/assets/_reference/.live-inspect-proof.json +0 -72
- package/.opencode/oh-my-design/web/references/classum/assets/_reference/fonts.json +0 -20
- package/.opencode/oh-my-design/web/references/classum/assets/_reference/structure.json +0 -21
- package/.opencode/oh-my-design/web/references/classum/assets/_reference/tokens.json +0 -56
- package/.opencode/oh-my-design/web/references/claude/.verification.md +0 -106
- package/.opencode/oh-my-design/web/references/claude/DESIGN.md +0 -561
- package/.opencode/oh-my-design/web/references/claude/README.md +0 -24
- package/.opencode/oh-my-design/web/references/claude/preview-dark.html +0 -803
- package/.opencode/oh-my-design/web/references/claude/preview.html +0 -826
- package/.opencode/oh-my-design/web/references/clay/.verification.md +0 -129
- package/.opencode/oh-my-design/web/references/clay/DESIGN.md +0 -454
- package/.opencode/oh-my-design/web/references/clay/README.md +0 -23
- package/.opencode/oh-my-design/web/references/clay/preview-dark.html +0 -316
- package/.opencode/oh-my-design/web/references/clay/preview.html +0 -315
- package/.opencode/oh-my-design/web/references/clickhouse/.verification.md +0 -132
- package/.opencode/oh-my-design/web/references/clickhouse/DESIGN.md +0 -424
- package/.opencode/oh-my-design/web/references/clickhouse/README.md +0 -24
- package/.opencode/oh-my-design/web/references/clickhouse/preview-dark.html +0 -834
- package/.opencode/oh-my-design/web/references/clickhouse/preview.html +0 -786
- package/.opencode/oh-my-design/web/references/cloudflare/.verification.md +0 -21
- package/.opencode/oh-my-design/web/references/cloudflare/DESIGN.md +0 -637
- package/.opencode/oh-my-design/web/references/cohere/.verification.md +0 -136
- package/.opencode/oh-my-design/web/references/cohere/DESIGN.md +0 -409
- package/.opencode/oh-my-design/web/references/cohere/README.md +0 -24
- package/.opencode/oh-my-design/web/references/cohere/preview-dark.html +0 -803
- package/.opencode/oh-my-design/web/references/cohere/preview.html +0 -807
- package/.opencode/oh-my-design/web/references/coinbase/.verification.md +0 -116
- package/.opencode/oh-my-design/web/references/coinbase/DESIGN.md +0 -353
- package/.opencode/oh-my-design/web/references/coinbase/README.md +0 -23
- package/.opencode/oh-my-design/web/references/coinbase/preview-dark.html +0 -164
- package/.opencode/oh-my-design/web/references/coinbase/preview.html +0 -163
- package/.opencode/oh-my-design/web/references/coinone/.verification.md +0 -38
- package/.opencode/oh-my-design/web/references/coinone/DESIGN.md +0 -257
- package/.opencode/oh-my-design/web/references/composio/.verification.md +0 -143
- package/.opencode/oh-my-design/web/references/composio/DESIGN.md +0 -441
- package/.opencode/oh-my-design/web/references/composio/README.md +0 -24
- package/.opencode/oh-my-design/web/references/composio/preview-dark.html +0 -958
- package/.opencode/oh-my-design/web/references/composio/preview.html +0 -933
- package/.opencode/oh-my-design/web/references/cookpad/DESIGN.md +0 -394
- package/.opencode/oh-my-design/web/references/coupang/.verification.md +0 -141
- package/.opencode/oh-my-design/web/references/coupang/DESIGN.md +0 -557
- package/.opencode/oh-my-design/web/references/cursor/.verification.md +0 -141
- package/.opencode/oh-my-design/web/references/cursor/DESIGN.md +0 -460
- package/.opencode/oh-my-design/web/references/cursor/README.md +0 -24
- package/.opencode/oh-my-design/web/references/cursor/preview-dark.html +0 -393
- package/.opencode/oh-my-design/web/references/cursor/preview.html +0 -383
- package/.opencode/oh-my-design/web/references/dabang/DESIGN.md +0 -267
- package/.opencode/oh-my-design/web/references/dabang/assets/_reference/.live-inspect-proof.json +0 -145
- package/.opencode/oh-my-design/web/references/dabang/assets/_reference/fonts.json +0 -22
- package/.opencode/oh-my-design/web/references/dabang/assets/_reference/raw-capture-map.json +0 -718
- package/.opencode/oh-my-design/web/references/dabang/assets/_reference/raw-capture.json +0 -1125
- package/.opencode/oh-my-design/web/references/dabang/assets/_reference/structure.json +0 -53
- package/.opencode/oh-my-design/web/references/dabang/assets/_reference/tokens.json +0 -130
- package/.opencode/oh-my-design/web/references/danawa/.verification.md +0 -60
- package/.opencode/oh-my-design/web/references/danawa/DESIGN.md +0 -477
- package/.opencode/oh-my-design/web/references/dcard/.verification.md +0 -118
- package/.opencode/oh-my-design/web/references/dcard/DESIGN.md +0 -633
- package/.opencode/oh-my-design/web/references/dcard/README.md +0 -12
- package/.opencode/oh-my-design/web/references/dcard/_research/forum-1440px.png +0 -0
- package/.opencode/oh-my-design/web/references/dcard/_research.md +0 -133
- package/.opencode/oh-my-design/web/references/dell/.verification.md +0 -21
- package/.opencode/oh-my-design/web/references/dell/DESIGN.md +0 -636
- package/.opencode/oh-my-design/web/references/devsisters/.verification.md +0 -32
- package/.opencode/oh-my-design/web/references/devsisters/DESIGN.md +0 -282
- package/.opencode/oh-my-design/web/references/discord/.verification.md +0 -21
- package/.opencode/oh-my-design/web/references/discord/DESIGN.md +0 -604
- package/.opencode/oh-my-design/web/references/dji/DESIGN.md +0 -454
- package/.opencode/oh-my-design/web/references/drnow/.verification.md +0 -41
- package/.opencode/oh-my-design/web/references/drnow/DESIGN.md +0 -383
- package/.opencode/oh-my-design/web/references/dropbox/.verification.md +0 -61
- package/.opencode/oh-my-design/web/references/dropbox/DESIGN.md +0 -445
- package/.opencode/oh-my-design/web/references/duolingo/.verification.md +0 -20
- package/.opencode/oh-my-design/web/references/duolingo/DESIGN.md +0 -563
- package/.opencode/oh-my-design/web/references/elevenlabs/.verification.md +0 -128
- package/.opencode/oh-my-design/web/references/elevenlabs/DESIGN.md +0 -415
- package/.opencode/oh-my-design/web/references/elevenlabs/README.md +0 -23
- package/.opencode/oh-my-design/web/references/elevenlabs/preview-dark.html +0 -252
- package/.opencode/oh-my-design/web/references/elevenlabs/preview.html +0 -251
- package/.opencode/oh-my-design/web/references/expo/.verification.md +0 -141
- package/.opencode/oh-my-design/web/references/expo/DESIGN.md +0 -412
- package/.opencode/oh-my-design/web/references/expo/README.md +0 -24
- package/.opencode/oh-my-design/web/references/expo/preview-dark.html +0 -533
- package/.opencode/oh-my-design/web/references/expo/preview.html +0 -533
- package/.opencode/oh-my-design/web/references/fastcampus/DESIGN.md +0 -529
- package/.opencode/oh-my-design/web/references/fastcampus/assets/_reference/.live-inspect-proof.json +0 -950
- package/.opencode/oh-my-design/web/references/fastcampus/assets/_reference/fonts.json +0 -14
- package/.opencode/oh-my-design/web/references/fastcampus/assets/_reference/structure.json +0 -30
- package/.opencode/oh-my-design/web/references/fastcampus/assets/_reference/tokens.json +0 -109
- package/.opencode/oh-my-design/web/references/ferrari/.verification.md +0 -119
- package/.opencode/oh-my-design/web/references/ferrari/DESIGN.md +0 -447
- package/.opencode/oh-my-design/web/references/ferrari/README.md +0 -23
- package/.opencode/oh-my-design/web/references/ferrari/preview-dark.html +0 -1162
- package/.opencode/oh-my-design/web/references/ferrari/preview.html +0 -1122
- package/.opencode/oh-my-design/web/references/figma/.verification.md +0 -206
- package/.opencode/oh-my-design/web/references/figma/DESIGN.md +0 -534
- package/.opencode/oh-my-design/web/references/figma/README.md +0 -24
- package/.opencode/oh-my-design/web/references/figma/preview-dark.html +0 -822
- package/.opencode/oh-my-design/web/references/figma/preview.html +0 -832
- package/.opencode/oh-my-design/web/references/finda/.verification.md +0 -33
- package/.opencode/oh-my-design/web/references/finda/DESIGN.md +0 -413
- package/.opencode/oh-my-design/web/references/firstory/.verification.md +0 -70
- package/.opencode/oh-my-design/web/references/firstory/DESIGN.md +0 -487
- package/.opencode/oh-my-design/web/references/flex/DESIGN.md +0 -356
- package/.opencode/oh-my-design/web/references/flex/_research.md +0 -49
- package/.opencode/oh-my-design/web/references/flex/assets/_reference/.live-inspect-proof.json +0 -192
- package/.opencode/oh-my-design/web/references/flex/assets/_reference/.raw-inspect.json +0 -873
- package/.opencode/oh-my-design/web/references/flex/assets/_reference/fonts.json +0 -17
- package/.opencode/oh-my-design/web/references/flex/assets/_reference/structure.json +0 -58
- package/.opencode/oh-my-design/web/references/flex/assets/_reference/tokens.json +0 -75
- package/.opencode/oh-my-design/web/references/flo/.verification.md +0 -33
- package/.opencode/oh-my-design/web/references/flo/DESIGN.md +0 -349
- package/.opencode/oh-my-design/web/references/framer/.verification.md +0 -147
- package/.opencode/oh-my-design/web/references/framer/DESIGN.md +0 -431
- package/.opencode/oh-my-design/web/references/framer/README.md +0 -23
- package/.opencode/oh-my-design/web/references/framer/preview-dark.html +0 -902
- package/.opencode/oh-my-design/web/references/framer/preview.html +0 -883
- package/.opencode/oh-my-design/web/references/freee/.verification.md +0 -145
- package/.opencode/oh-my-design/web/references/freee/DESIGN.md +0 -620
- package/.opencode/oh-my-design/web/references/freee/README.md +0 -12
- package/.opencode/oh-my-design/web/references/freee/_research/vibes-storybook-1440px.png +0 -0
- package/.opencode/oh-my-design/web/references/freee/_research.md +0 -116
- package/.opencode/oh-my-design/web/references/fugle/.verification.md +0 -40
- package/.opencode/oh-my-design/web/references/fugle/DESIGN.md +0 -290
- package/.opencode/oh-my-design/web/references/funnow/.verification.md +0 -62
- package/.opencode/oh-my-design/web/references/funnow/DESIGN.md +0 -431
- package/.opencode/oh-my-design/web/references/gangnamunni/DESIGN.md +0 -677
- package/.opencode/oh-my-design/web/references/gangnamunni/_promo.json +0 -26
- package/.opencode/oh-my-design/web/references/gangnamunni/_research.md +0 -113
- package/.opencode/oh-my-design/web/references/genie/.verification.md +0 -29
- package/.opencode/oh-my-design/web/references/genie/DESIGN.md +0 -415
- package/.opencode/oh-my-design/web/references/github/.verification.md +0 -21
- package/.opencode/oh-my-design/web/references/github/DESIGN.md +0 -727
- package/.opencode/oh-my-design/web/references/gmarket/DESIGN.md +0 -534
- package/.opencode/oh-my-design/web/references/gmarket/assets/_reference/.live-inspect-proof.json +0 -217
- package/.opencode/oh-my-design/web/references/gmarket/assets/_reference/fonts.json +0 -41
- package/.opencode/oh-my-design/web/references/gmarket/assets/_reference/raw-capture-bestsellers.json +0 -1929
- package/.opencode/oh-my-design/web/references/gmarket/assets/_reference/raw-capture-home.json +0 -3675
- package/.opencode/oh-my-design/web/references/gmarket/assets/_reference/structure.json +0 -65
- package/.opencode/oh-my-design/web/references/gmarket/assets/_reference/tokens.json +0 -210
- package/.opencode/oh-my-design/web/references/gogolook/.verification.md +0 -31
- package/.opencode/oh-my-design/web/references/gogolook/DESIGN.md +0 -155
- package/.opencode/oh-my-design/web/references/gogoro/DESIGN.md +0 -441
- package/.opencode/oh-my-design/web/references/google/.verification.md +0 -61
- package/.opencode/oh-my-design/web/references/google/DESIGN.md +0 -499
- package/.opencode/oh-my-design/web/references/greenvines/.verification.md +0 -72
- package/.opencode/oh-my-design/web/references/greenvines/DESIGN.md +0 -454
- package/.opencode/oh-my-design/web/references/greeting/.verification.md +0 -64
- package/.opencode/oh-my-design/web/references/greeting/DESIGN.md +0 -462
- package/.opencode/oh-my-design/web/references/grip/.verification.md +0 -36
- package/.opencode/oh-my-design/web/references/grip/DESIGN.md +0 -289
- package/.opencode/oh-my-design/web/references/hahow/.verification.md +0 -31
- package/.opencode/oh-my-design/web/references/hahow/DESIGN.md +0 -184
- package/.opencode/oh-my-design/web/references/hashicorp/.verification.md +0 -142
- package/.opencode/oh-my-design/web/references/hashicorp/DESIGN.md +0 -411
- package/.opencode/oh-my-design/web/references/hashicorp/README.md +0 -24
- package/.opencode/oh-my-design/web/references/hashicorp/preview-dark.html +0 -1202
- package/.opencode/oh-my-design/web/references/hashicorp/preview.html +0 -1193
- package/.opencode/oh-my-design/web/references/hogangnono/.verification.md +0 -33
- package/.opencode/oh-my-design/web/references/hogangnono/DESIGN.md +0 -349
- package/.opencode/oh-my-design/web/references/hp/.verification.md +0 -21
- package/.opencode/oh-my-design/web/references/hp/DESIGN.md +0 -563
- package/.opencode/oh-my-design/web/references/hyperconnect/.verification.md +0 -40
- package/.opencode/oh-my-design/web/references/hyperconnect/DESIGN.md +0 -393
- package/.opencode/oh-my-design/web/references/hyundaicard/.verification.md +0 -25
- package/.opencode/oh-my-design/web/references/hyundaicard/DESIGN.md +0 -201
- package/.opencode/oh-my-design/web/references/ibm/.verification.md +0 -102
- package/.opencode/oh-my-design/web/references/ibm/DESIGN.md +0 -464
- package/.opencode/oh-my-design/web/references/ibm/README.md +0 -24
- package/.opencode/oh-my-design/web/references/ibm/preview-dark.html +0 -443
- package/.opencode/oh-my-design/web/references/ibm/preview.html +0 -428
- package/.opencode/oh-my-design/web/references/ichef/DESIGN.md +0 -455
- package/.opencode/oh-my-design/web/references/ikala/.verification.md +0 -35
- package/.opencode/oh-my-design/web/references/ikala/DESIGN.md +0 -400
- package/.opencode/oh-my-design/web/references/imweb/.verification.md +0 -61
- package/.opencode/oh-my-design/web/references/imweb/DESIGN.md +0 -460
- package/.opencode/oh-my-design/web/references/inflearn/DESIGN.md +0 -453
- package/.opencode/oh-my-design/web/references/inflearn/_promo.json +0 -29
- package/.opencode/oh-my-design/web/references/inflearn/_research.md +0 -85
- package/.opencode/oh-my-design/web/references/inflearn/assets/_reference/.live-inspect-proof-courses.json +0 -679
- package/.opencode/oh-my-design/web/references/inflearn/assets/_reference/.live-inspect-proof.json +0 -448
- package/.opencode/oh-my-design/web/references/inflearn/assets/_reference/fonts.json +0 -41
- package/.opencode/oh-my-design/web/references/inflearn/assets/_reference/structure.json +0 -110
- package/.opencode/oh-my-design/web/references/inflearn/assets/_reference/tokens.json +0 -54
- package/.opencode/oh-my-design/web/references/intercom/.verification.md +0 -144
- package/.opencode/oh-my-design/web/references/intercom/DESIGN.md +0 -271
- package/.opencode/oh-my-design/web/references/intercom/README.md +0 -23
- package/.opencode/oh-my-design/web/references/intercom/preview-dark.html +0 -185
- package/.opencode/oh-my-design/web/references/intercom/preview.html +0 -184
- package/.opencode/oh-my-design/web/references/jandi/.verification.md +0 -26
- package/.opencode/oh-my-design/web/references/jandi/DESIGN.md +0 -382
- package/.opencode/oh-my-design/web/references/jkopay/.verification.md +0 -32
- package/.opencode/oh-my-design/web/references/jkopay/DESIGN.md +0 -283
- package/.opencode/oh-my-design/web/references/jobkorea/.verification.md +0 -30
- package/.opencode/oh-my-design/web/references/jobkorea/DESIGN.md +0 -349
- package/.opencode/oh-my-design/web/references/jumpit/DESIGN.md +0 -403
- package/.opencode/oh-my-design/web/references/jumpit/_research.md +0 -119
- package/.opencode/oh-my-design/web/references/jumpit/assets/_reference/.live-inspect-proof.json +0 -182
- package/.opencode/oh-my-design/web/references/jumpit/assets/_reference/fonts.json +0 -20
- package/.opencode/oh-my-design/web/references/jumpit/assets/_reference/structure.json +0 -66
- package/.opencode/oh-my-design/web/references/jumpit/assets/_reference/tokens.json +0 -108
- package/.opencode/oh-my-design/web/references/kakao/.verification.md +0 -137
- package/.opencode/oh-my-design/web/references/kakao/DESIGN.md +0 -568
- package/.opencode/oh-my-design/web/references/kakao/README.md +0 -18
- package/.opencode/oh-my-design/web/references/kakao/_research.md +0 -98
- package/.opencode/oh-my-design/web/references/kakaobank/.verification.md +0 -133
- package/.opencode/oh-my-design/web/references/kakaobank/DESIGN.md +0 -602
- package/.opencode/oh-my-design/web/references/kakaopay/DESIGN.md +0 -603
- package/.opencode/oh-my-design/web/references/kakaopay/_promo.json +0 -22
- package/.opencode/oh-my-design/web/references/kakaopay/_research.md +0 -84
- package/.opencode/oh-my-design/web/references/kakaot/DESIGN.md +0 -507
- package/.opencode/oh-my-design/web/references/karrot/.verification.md +0 -143
- package/.opencode/oh-my-design/web/references/karrot/DESIGN.md +0 -494
- package/.opencode/oh-my-design/web/references/karrot/README.md +0 -18
- package/.opencode/oh-my-design/web/references/karrot/_research.md +0 -57
- package/.opencode/oh-my-design/web/references/kbank/DESIGN.md +0 -252
- package/.opencode/oh-my-design/web/references/kbank/assets/_reference/.live-inspect-proof.json +0 -215
- package/.opencode/oh-my-design/web/references/kbank/assets/_reference/.live-inspect-raw.json +0 -1
- package/.opencode/oh-my-design/web/references/kbank/assets/_reference/fonts.json +0 -20
- package/.opencode/oh-my-design/web/references/kbank/assets/_reference/structure.json +0 -151
- package/.opencode/oh-my-design/web/references/kbank/assets/_reference/tokens.json +0 -101
- package/.opencode/oh-my-design/web/references/kdan/.verification.md +0 -30
- package/.opencode/oh-my-design/web/references/kdan/DESIGN.md +0 -193
- package/.opencode/oh-my-design/web/references/kintone/.verification.md +0 -21
- package/.opencode/oh-my-design/web/references/kintone/DESIGN.md +0 -586
- package/.opencode/oh-my-design/web/references/kkbox/.verification.md +0 -27
- package/.opencode/oh-my-design/web/references/kkbox/DESIGN.md +0 -136
- package/.opencode/oh-my-design/web/references/kkday/DESIGN.md +0 -470
- package/.opencode/oh-my-design/web/references/kmong/.verification.md +0 -30
- package/.opencode/oh-my-design/web/references/kmong/DESIGN.md +0 -427
- package/.opencode/oh-my-design/web/references/krafton/.verification.md +0 -38
- package/.opencode/oh-my-design/web/references/krafton/DESIGN.md +0 -267
- package/.opencode/oh-my-design/web/references/kraken/.verification.md +0 -143
- package/.opencode/oh-my-design/web/references/kraken/DESIGN.md +0 -277
- package/.opencode/oh-my-design/web/references/kraken/README.md +0 -23
- package/.opencode/oh-my-design/web/references/kraken/preview-dark.html +0 -169
- package/.opencode/oh-my-design/web/references/kraken/preview.html +0 -168
- package/.opencode/oh-my-design/web/references/krds/.verification.md +0 -373
- package/.opencode/oh-my-design/web/references/krds/DESIGN.md +0 -1060
- package/.opencode/oh-my-design/web/references/kream/DESIGN.md +0 -432
- package/.opencode/oh-my-design/web/references/kream/assets/_reference/.live-inspect-proof.json +0 -289
- package/.opencode/oh-my-design/web/references/kream/assets/_reference/fonts.json +0 -26
- package/.opencode/oh-my-design/web/references/kream/assets/_reference/structure.json +0 -56
- package/.opencode/oh-my-design/web/references/kream/assets/_reference/tokens.json +0 -154
- package/.opencode/oh-my-design/web/references/kurly/.verification.md +0 -126
- package/.opencode/oh-my-design/web/references/kurly/DESIGN.md +0 -620
- package/.opencode/oh-my-design/web/references/laftel/.verification.md +0 -39
- package/.opencode/oh-my-design/web/references/laftel/DESIGN.md +0 -293
- package/.opencode/oh-my-design/web/references/lamborghini/.verification.md +0 -127
- package/.opencode/oh-my-design/web/references/lamborghini/DESIGN.md +0 -430
- package/.opencode/oh-my-design/web/references/lamborghini/README.md +0 -23
- package/.opencode/oh-my-design/web/references/lamborghini/preview-dark.html +0 -303
- package/.opencode/oh-my-design/web/references/lamborghini/preview.html +0 -381
- package/.opencode/oh-my-design/web/references/laundrygo/.verification.md +0 -60
- package/.opencode/oh-my-design/web/references/laundrygo/DESIGN.md +0 -434
- package/.opencode/oh-my-design/web/references/layerx/.verification.md +0 -21
- package/.opencode/oh-my-design/web/references/layerx/DESIGN.md +0 -615
- package/.opencode/oh-my-design/web/references/lezhin/.verification.md +0 -47
- package/.opencode/oh-my-design/web/references/lezhin/DESIGN.md +0 -348
- package/.opencode/oh-my-design/web/references/line/.verification.md +0 -137
- package/.opencode/oh-my-design/web/references/line/DESIGN.md +0 -467
- package/.opencode/oh-my-design/web/references/line/README.md +0 -12
- package/.opencode/oh-my-design/web/references/line/_research/home-1440px.png +0 -0
- package/.opencode/oh-my-design/web/references/line/_research.md +0 -65
- package/.opencode/oh-my-design/web/references/linear.app/.verification.md +0 -143
- package/.opencode/oh-my-design/web/references/linear.app/DESIGN.md +0 -642
- package/.opencode/oh-my-design/web/references/linear.app/README.md +0 -24
- package/.opencode/oh-my-design/web/references/linear.app/preview-dark.html +0 -383
- package/.opencode/oh-my-design/web/references/linear.app/preview.html +0 -373
- package/.opencode/oh-my-design/web/references/loom/.verification.md +0 -31
- package/.opencode/oh-my-design/web/references/loom/DESIGN.md +0 -396
- package/.opencode/oh-my-design/web/references/lovable/.verification.md +0 -154
- package/.opencode/oh-my-design/web/references/lovable/DESIGN.md +0 -423
- package/.opencode/oh-my-design/web/references/lovable/README.md +0 -24
- package/.opencode/oh-my-design/web/references/lovable/preview-dark.html +0 -349
- package/.opencode/oh-my-design/web/references/lovable/preview.html +0 -348
- package/.opencode/oh-my-design/web/references/lunit/DESIGN.md +0 -296
- package/.opencode/oh-my-design/web/references/lunit/assets/_reference/.live-inspect-proof.json +0 -249
- package/.opencode/oh-my-design/web/references/lunit/assets/_reference/fonts.json +0 -24
- package/.opencode/oh-my-design/web/references/lunit/assets/_reference/structure.json +0 -162
- package/.opencode/oh-my-design/web/references/lunit/assets/_reference/tokens.json +0 -115
- package/.opencode/oh-my-design/web/references/mastercard/.verification.md +0 -19
- package/.opencode/oh-my-design/web/references/mastercard/DESIGN.md +0 -587
- package/.opencode/oh-my-design/web/references/meituan/DESIGN.md +0 -466
- package/.opencode/oh-my-design/web/references/melon/.verification.md +0 -27
- package/.opencode/oh-my-design/web/references/melon/DESIGN.md +0 -179
- package/.opencode/oh-my-design/web/references/mercari/.verification.md +0 -155
- package/.opencode/oh-my-design/web/references/mercari/DESIGN.md +0 -514
- package/.opencode/oh-my-design/web/references/mercari/README.md +0 -12
- package/.opencode/oh-my-design/web/references/mercari/_research/home-1440px.png +0 -0
- package/.opencode/oh-my-design/web/references/mercari/_research.md +0 -137
- package/.opencode/oh-my-design/web/references/mercury/.verification.md +0 -21
- package/.opencode/oh-my-design/web/references/mercury/DESIGN.md +0 -589
- package/.opencode/oh-my-design/web/references/meta/.verification.md +0 -21
- package/.opencode/oh-my-design/web/references/meta/DESIGN.md +0 -615
- package/.opencode/oh-my-design/web/references/microsoft/.verification.md +0 -62
- package/.opencode/oh-my-design/web/references/microsoft/DESIGN.md +0 -508
- package/.opencode/oh-my-design/web/references/millie/DESIGN.md +0 -584
- package/.opencode/oh-my-design/web/references/minimax/.verification.md +0 -135
- package/.opencode/oh-my-design/web/references/minimax/DESIGN.md +0 -396
- package/.opencode/oh-my-design/web/references/minimax/README.md +0 -24
- package/.opencode/oh-my-design/web/references/minimax/preview-dark.html +0 -1262
- package/.opencode/oh-my-design/web/references/minimax/preview.html +0 -1248
- package/.opencode/oh-my-design/web/references/mintlify/.verification.md +0 -160
- package/.opencode/oh-my-design/web/references/mintlify/DESIGN.md +0 -472
- package/.opencode/oh-my-design/web/references/mintlify/README.md +0 -24
- package/.opencode/oh-my-design/web/references/mintlify/preview-dark.html +0 -409
- package/.opencode/oh-my-design/web/references/mintlify/preview.html +0 -398
- package/.opencode/oh-my-design/web/references/miricanvas/.verification.md +0 -61
- package/.opencode/oh-my-design/web/references/miricanvas/DESIGN.md +0 -464
- package/.opencode/oh-my-design/web/references/miro/.verification.md +0 -138
- package/.opencode/oh-my-design/web/references/miro/DESIGN.md +0 -319
- package/.opencode/oh-my-design/web/references/miro/README.md +0 -23
- package/.opencode/oh-my-design/web/references/miro/preview-dark.html +0 -174
- package/.opencode/oh-my-design/web/references/miro/preview.html +0 -173
- package/.opencode/oh-my-design/web/references/mistral.ai/.verification.md +0 -146
- package/.opencode/oh-my-design/web/references/mistral.ai/DESIGN.md +0 -390
- package/.opencode/oh-my-design/web/references/mistral.ai/README.md +0 -24
- package/.opencode/oh-my-design/web/references/mistral.ai/preview-dark.html +0 -806
- package/.opencode/oh-my-design/web/references/mistral.ai/preview.html +0 -805
- package/.opencode/oh-my-design/web/references/modusign/.verification.md +0 -58
- package/.opencode/oh-my-design/web/references/modusign/DESIGN.md +0 -524
- package/.opencode/oh-my-design/web/references/momoshop/.verification.md +0 -36
- package/.opencode/oh-my-design/web/references/momoshop/DESIGN.md +0 -322
- package/.opencode/oh-my-design/web/references/money-forward/DESIGN.md +0 -443
- package/.opencode/oh-my-design/web/references/mongodb/.verification.md +0 -145
- package/.opencode/oh-my-design/web/references/mongodb/DESIGN.md +0 -401
- package/.opencode/oh-my-design/web/references/mongodb/README.md +0 -23
- package/.opencode/oh-my-design/web/references/mongodb/preview-dark.html +0 -260
- package/.opencode/oh-my-design/web/references/mongodb/preview.html +0 -259
- package/.opencode/oh-my-design/web/references/muji/.verification.md +0 -20
- package/.opencode/oh-my-design/web/references/muji/DESIGN.md +0 -605
- package/.opencode/oh-my-design/web/references/musinsa/.verification.md +0 -59
- package/.opencode/oh-my-design/web/references/musinsa/DESIGN.md +0 -593
- package/.opencode/oh-my-design/web/references/mustit/.verification.md +0 -37
- package/.opencode/oh-my-design/web/references/mustit/DESIGN.md +0 -328
- package/.opencode/oh-my-design/web/references/myrealtrip/DESIGN.md +0 -494
- package/.opencode/oh-my-design/web/references/naver/.verification.md +0 -134
- package/.opencode/oh-my-design/web/references/naver/DESIGN.md +0 -582
- package/.opencode/oh-my-design/web/references/naverwebtoon/DESIGN.md +0 -477
- package/.opencode/oh-my-design/web/references/netflix/.verification.md +0 -21
- package/.opencode/oh-my-design/web/references/netflix/DESIGN.md +0 -572
- package/.opencode/oh-my-design/web/references/nexon/.verification.md +0 -27
- package/.opencode/oh-my-design/web/references/nexon/DESIGN.md +0 -389
- package/.opencode/oh-my-design/web/references/nhncloud/.verification.md +0 -23
- package/.opencode/oh-my-design/web/references/nhncloud/DESIGN.md +0 -207
- package/.opencode/oh-my-design/web/references/nike/.verification.md +0 -21
- package/.opencode/oh-my-design/web/references/nike/DESIGN.md +0 -588
- package/.opencode/oh-my-design/web/references/note/DESIGN.md +0 -346
- package/.opencode/oh-my-design/web/references/notion/.verification.md +0 -141
- package/.opencode/oh-my-design/web/references/notion/DESIGN.md +0 -557
- package/.opencode/oh-my-design/web/references/notion/README.md +0 -24
- package/.opencode/oh-my-design/web/references/notion/preview-dark.html +0 -372
- package/.opencode/oh-my-design/web/references/notion/preview.html +0 -364
- package/.opencode/oh-my-design/web/references/nvidia/.verification.md +0 -127
- package/.opencode/oh-my-design/web/references/nvidia/DESIGN.md +0 -550
- package/.opencode/oh-my-design/web/references/nvidia/README.md +0 -24
- package/.opencode/oh-my-design/web/references/nvidia/_research.md +0 -68
- package/.opencode/oh-my-design/web/references/nvidia/preview-dark.html +0 -374
- package/.opencode/oh-my-design/web/references/nvidia/preview.html +0 -366
- package/.opencode/oh-my-design/web/references/ohouse/.verification.md +0 -87
- package/.opencode/oh-my-design/web/references/ohouse/DESIGN.md +0 -635
- package/.opencode/oh-my-design/web/references/oliveyoung/DESIGN.md +0 -407
- package/.opencode/oh-my-design/web/references/oliveyoung/assets/_reference/.live-inspect-proof.json +0 -158
- package/.opencode/oh-my-design/web/references/oliveyoung/assets/_reference/_best_capture.json +0 -644
- package/.opencode/oh-my-design/web/references/oliveyoung/assets/_reference/_detail_capture.json +0 -447
- package/.opencode/oh-my-design/web/references/oliveyoung/assets/_reference/_main.html +0 -419
- package/.opencode/oh-my-design/web/references/oliveyoung/assets/_reference/_main_capture.json +0 -1126
- package/.opencode/oh-my-design/web/references/oliveyoung/assets/_reference/_search_capture.json +0 -912
- package/.opencode/oh-my-design/web/references/oliveyoung/assets/_reference/fonts.json +0 -20
- package/.opencode/oh-my-design/web/references/oliveyoung/assets/_reference/structure.json +0 -91
- package/.opencode/oh-my-design/web/references/oliveyoung/assets/_reference/tokens.json +0 -79
- package/.opencode/oh-my-design/web/references/ollama/.verification.md +0 -138
- package/.opencode/oh-my-design/web/references/ollama/DESIGN.md +0 -393
- package/.opencode/oh-my-design/web/references/ollama/README.md +0 -24
- package/.opencode/oh-my-design/web/references/ollama/preview-dark.html +0 -678
- package/.opencode/oh-my-design/web/references/ollama/preview.html +0 -678
- package/.opencode/oh-my-design/web/references/omnichat/.verification.md +0 -74
- package/.opencode/oh-my-design/web/references/omnichat/DESIGN.md +0 -499
- package/.opencode/oh-my-design/web/references/openai/.verification.md +0 -21
- package/.opencode/oh-my-design/web/references/openai/DESIGN.md +0 -641
- package/.opencode/oh-my-design/web/references/opencode.ai/.verification.md +0 -136
- package/.opencode/oh-my-design/web/references/opencode.ai/DESIGN.md +0 -425
- package/.opencode/oh-my-design/web/references/opencode.ai/README.md +0 -24
- package/.opencode/oh-my-design/web/references/opencode.ai/preview-dark.html +0 -366
- package/.opencode/oh-my-design/web/references/opencode.ai/preview.html +0 -357
- package/.opencode/oh-my-design/web/references/payco/.verification.md +0 -28
- package/.opencode/oh-my-design/web/references/payco/DESIGN.md +0 -267
- package/.opencode/oh-my-design/web/references/paypay/.verification.md +0 -21
- package/.opencode/oh-my-design/web/references/paypay/DESIGN.md +0 -656
- package/.opencode/oh-my-design/web/references/pchome/.verification.md +0 -38
- package/.opencode/oh-my-design/web/references/pchome/DESIGN.md +0 -439
- package/.opencode/oh-my-design/web/references/perplexity/.verification.md +0 -21
- package/.opencode/oh-my-design/web/references/perplexity/DESIGN.md +0 -546
- package/.opencode/oh-my-design/web/references/piccollage/.verification.md +0 -34
- package/.opencode/oh-my-design/web/references/piccollage/DESIGN.md +0 -320
- package/.opencode/oh-my-design/web/references/pinkoi/.verification.md +0 -147
- package/.opencode/oh-my-design/web/references/pinkoi/DESIGN.md +0 -639
- package/.opencode/oh-my-design/web/references/pinkoi/README.md +0 -12
- package/.opencode/oh-my-design/web/references/pinkoi/_research/browse-1440px.png +0 -0
- package/.opencode/oh-my-design/web/references/pinkoi/_research.md +0 -167
- package/.opencode/oh-my-design/web/references/pinterest/.verification.md +0 -141
- package/.opencode/oh-my-design/web/references/pinterest/DESIGN.md +0 -366
- package/.opencode/oh-my-design/web/references/pinterest/README.md +0 -23
- package/.opencode/oh-my-design/web/references/pinterest/preview-dark.html +0 -233
- package/.opencode/oh-my-design/web/references/pinterest/preview.html +0 -232
- package/.opencode/oh-my-design/web/references/pixiv/.verification.md +0 -20
- package/.opencode/oh-my-design/web/references/pixiv/DESIGN.md +0 -613
- package/.opencode/oh-my-design/web/references/pixnet/.verification.md +0 -31
- package/.opencode/oh-my-design/web/references/pixnet/DESIGN.md +0 -430
- package/.opencode/oh-my-design/web/references/posthog/.verification.md +0 -159
- package/.opencode/oh-my-design/web/references/posthog/DESIGN.md +0 -480
- package/.opencode/oh-my-design/web/references/posthog/README.md +0 -23
- package/.opencode/oh-my-design/web/references/posthog/preview-dark.html +0 -699
- package/.opencode/oh-my-design/web/references/posthog/preview.html +0 -749
- package/.opencode/oh-my-design/web/references/postype/.verification.md +0 -61
- package/.opencode/oh-my-design/web/references/postype/DESIGN.md +0 -431
- package/.opencode/oh-my-design/web/references/publy/DESIGN.md +0 -563
- package/.opencode/oh-my-design/web/references/qanda/.verification.md +0 -121
- package/.opencode/oh-my-design/web/references/qanda/DESIGN.md +0 -516
- package/.opencode/oh-my-design/web/references/ragic/.verification.md +0 -37
- package/.opencode/oh-my-design/web/references/ragic/DESIGN.md +0 -444
- package/.opencode/oh-my-design/web/references/rakuten/.verification.md +0 -60
- package/.opencode/oh-my-design/web/references/rakuten/DESIGN.md +0 -440
- package/.opencode/oh-my-design/web/references/ramp/.verification.md +0 -21
- package/.opencode/oh-my-design/web/references/ramp/DESIGN.md +0 -634
- package/.opencode/oh-my-design/web/references/rayark/.verification.md +0 -22
- package/.opencode/oh-my-design/web/references/rayark/DESIGN.md +0 -154
- package/.opencode/oh-my-design/web/references/raycast/.verification.md +0 -138
- package/.opencode/oh-my-design/web/references/raycast/DESIGN.md +0 -467
- package/.opencode/oh-my-design/web/references/raycast/README.md +0 -23
- package/.opencode/oh-my-design/web/references/raycast/preview-dark.html +0 -606
- package/.opencode/oh-my-design/web/references/raycast/preview.html +0 -688
- package/.opencode/oh-my-design/web/references/remember/.verification.md +0 -135
- package/.opencode/oh-my-design/web/references/remember/DESIGN.md +0 -504
- package/.opencode/oh-my-design/web/references/remember/_promo.json +0 -27
- package/.opencode/oh-my-design/web/references/remember/_research.md +0 -90
- package/.opencode/oh-my-design/web/references/renault/.verification.md +0 -139
- package/.opencode/oh-my-design/web/references/renault/DESIGN.md +0 -439
- package/.opencode/oh-my-design/web/references/renault/README.md +0 -23
- package/.opencode/oh-my-design/web/references/renault/preview-dark.html +0 -406
- package/.opencode/oh-my-design/web/references/renault/preview.html +0 -606
- package/.opencode/oh-my-design/web/references/replicate/.verification.md +0 -154
- package/.opencode/oh-my-design/web/references/replicate/DESIGN.md +0 -387
- package/.opencode/oh-my-design/web/references/replicate/README.md +0 -24
- package/.opencode/oh-my-design/web/references/replicate/preview-dark.html +0 -828
- package/.opencode/oh-my-design/web/references/replicate/preview.html +0 -831
- package/.opencode/oh-my-design/web/references/resend/.verification.md +0 -143
- package/.opencode/oh-my-design/web/references/resend/DESIGN.md +0 -440
- package/.opencode/oh-my-design/web/references/resend/README.md +0 -23
- package/.opencode/oh-my-design/web/references/resend/preview-dark.html +0 -355
- package/.opencode/oh-my-design/web/references/resend/preview.html +0 -354
- package/.opencode/oh-my-design/web/references/retool/.verification.md +0 -21
- package/.opencode/oh-my-design/web/references/retool/DESIGN.md +0 -645
- package/.opencode/oh-my-design/web/references/revolut/.verification.md +0 -140
- package/.opencode/oh-my-design/web/references/revolut/DESIGN.md +0 -319
- package/.opencode/oh-my-design/web/references/revolut/README.md +0 -23
- package/.opencode/oh-my-design/web/references/revolut/preview-dark.html +0 -234
- package/.opencode/oh-my-design/web/references/revolut/preview.html +0 -233
- package/.opencode/oh-my-design/web/references/richart/.verification.md +0 -41
- package/.opencode/oh-my-design/web/references/richart/DESIGN.md +0 -465
- package/.opencode/oh-my-design/web/references/ridi/.verification.md +0 -108
- package/.opencode/oh-my-design/web/references/ridi/DESIGN.md +0 -573
- package/.opencode/oh-my-design/web/references/riiid/.verification.md +0 -33
- package/.opencode/oh-my-design/web/references/riiid/DESIGN.md +0 -260
- package/.opencode/oh-my-design/web/references/ringle/.verification.md +0 -53
- package/.opencode/oh-my-design/web/references/ringle/DESIGN.md +0 -444
- package/.opencode/oh-my-design/web/references/robinhood/.verification.md +0 -21
- package/.opencode/oh-my-design/web/references/robinhood/DESIGN.md +0 -604
- package/.opencode/oh-my-design/web/references/runwayml/.verification.md +0 -141
- package/.opencode/oh-my-design/web/references/runwayml/DESIGN.md +0 -431
- package/.opencode/oh-my-design/web/references/runwayml/README.md +0 -24
- package/.opencode/oh-my-design/web/references/runwayml/preview-dark.html +0 -664
- package/.opencode/oh-my-design/web/references/runwayml/preview.html +0 -665
- package/.opencode/oh-my-design/web/references/salesforce/.verification.md +0 -66
- package/.opencode/oh-my-design/web/references/salesforce/DESIGN.md +0 -473
- package/.opencode/oh-my-design/web/references/sanity/.verification.md +0 -174
- package/.opencode/oh-my-design/web/references/sanity/DESIGN.md +0 -499
- package/.opencode/oh-my-design/web/references/sanity/README.md +0 -24
- package/.opencode/oh-my-design/web/references/sanity/preview-dark.html +0 -990
- package/.opencode/oh-my-design/web/references/sanity/preview.html +0 -1135
- package/.opencode/oh-my-design/web/references/sansan/.verification.md +0 -21
- package/.opencode/oh-my-design/web/references/sansan/DESIGN.md +0 -631
- package/.opencode/oh-my-design/web/references/sendbird/.verification.md +0 -67
- package/.opencode/oh-my-design/web/references/sendbird/DESIGN.md +0 -331
- package/.opencode/oh-my-design/web/references/sentry/.verification.md +0 -157
- package/.opencode/oh-my-design/web/references/sentry/DESIGN.md +0 -397
- package/.opencode/oh-my-design/web/references/sentry/README.md +0 -24
- package/.opencode/oh-my-design/web/references/sentry/preview-dark.html +0 -626
- package/.opencode/oh-my-design/web/references/sentry/preview.html +0 -951
- package/.opencode/oh-my-design/web/references/shinhancard/.verification.md +0 -31
- package/.opencode/oh-my-design/web/references/shinhancard/DESIGN.md +0 -421
- package/.opencode/oh-my-design/web/references/shopline/.verification.md +0 -34
- package/.opencode/oh-my-design/web/references/shopline/DESIGN.md +0 -431
- package/.opencode/oh-my-design/web/references/slack/.verification.md +0 -21
- package/.opencode/oh-my-design/web/references/slack/DESIGN.md +0 -635
- package/.opencode/oh-my-design/web/references/smarthr/DESIGN.md +0 -452
- package/.opencode/oh-my-design/web/references/smartnews/DESIGN.md +0 -360
- package/.opencode/oh-my-design/web/references/socar/DESIGN.md +0 -438
- package/.opencode/oh-my-design/web/references/socar/_promo.json +0 -28
- package/.opencode/oh-my-design/web/references/socar/_research.md +0 -55
- package/.opencode/oh-my-design/web/references/soomgo/.verification.md +0 -27
- package/.opencode/oh-my-design/web/references/soomgo/DESIGN.md +0 -326
- package/.opencode/oh-my-design/web/references/spacex/.verification.md +0 -132
- package/.opencode/oh-my-design/web/references/spacex/DESIGN.md +0 -415
- package/.opencode/oh-my-design/web/references/spacex/README.md +0 -23
- package/.opencode/oh-my-design/web/references/spacex/_research.md +0 -69
- package/.opencode/oh-my-design/web/references/spacex/preview-dark.html +0 -221
- package/.opencode/oh-my-design/web/references/spacex/preview.html +0 -220
- package/.opencode/oh-my-design/web/references/spoon/DESIGN.md +0 -492
- package/.opencode/oh-my-design/web/references/spotify/.verification.md +0 -128
- package/.opencode/oh-my-design/web/references/spotify/DESIGN.md +0 -489
- package/.opencode/oh-my-design/web/references/spotify/README.md +0 -23
- package/.opencode/oh-my-design/web/references/spotify/preview-dark.html +0 -231
- package/.opencode/oh-my-design/web/references/spotify/preview.html +0 -230
- package/.opencode/oh-my-design/web/references/starbucks/.verification.md +0 -21
- package/.opencode/oh-my-design/web/references/starbucks/DESIGN.md +0 -597
- package/.opencode/oh-my-design/web/references/stores/.verification.md +0 -61
- package/.opencode/oh-my-design/web/references/stores/DESIGN.md +0 -447
- package/.opencode/oh-my-design/web/references/stripe/.verification.md +0 -140
- package/.opencode/oh-my-design/web/references/stripe/DESIGN.md +0 -571
- package/.opencode/oh-my-design/web/references/stripe/README.md +0 -24
- package/.opencode/oh-my-design/web/references/stripe/preview-dark.html +0 -428
- package/.opencode/oh-my-design/web/references/stripe/preview.html +0 -419
- package/.opencode/oh-my-design/web/references/studio/.verification.md +0 -21
- package/.opencode/oh-my-design/web/references/studio/DESIGN.md +0 -602
- package/.opencode/oh-my-design/web/references/supabase/.verification.md +0 -145
- package/.opencode/oh-my-design/web/references/supabase/DESIGN.md +0 -389
- package/.opencode/oh-my-design/web/references/supabase/README.md +0 -24
- package/.opencode/oh-my-design/web/references/supabase/preview-dark.html +0 -977
- package/.opencode/oh-my-design/web/references/supabase/preview.html +0 -955
- package/.opencode/oh-my-design/web/references/superhuman/.verification.md +0 -184
- package/.opencode/oh-my-design/web/references/superhuman/DESIGN.md +0 -453
- package/.opencode/oh-my-design/web/references/superhuman/README.md +0 -23
- package/.opencode/oh-my-design/web/references/superhuman/preview-dark.html +0 -973
- package/.opencode/oh-my-design/web/references/superhuman/preview.html +0 -951
- package/.opencode/oh-my-design/web/references/surveycake/.verification.md +0 -31
- package/.opencode/oh-my-design/web/references/surveycake/DESIGN.md +0 -442
- package/.opencode/oh-my-design/web/references/tada/DESIGN.md +0 -579
- package/.opencode/oh-my-design/web/references/teamblind/.verification.md +0 -76
- package/.opencode/oh-my-design/web/references/teamblind/DESIGN.md +0 -497
- package/.opencode/oh-my-design/web/references/tesla/.verification.md +0 -149
- package/.opencode/oh-my-design/web/references/tesla/DESIGN.md +0 -501
- package/.opencode/oh-my-design/web/references/tesla/README.md +0 -23
- package/.opencode/oh-my-design/web/references/tesla/_research.md +0 -70
- package/.opencode/oh-my-design/web/references/tesla/preview-dark.html +0 -947
- package/.opencode/oh-my-design/web/references/tesla/preview.html +0 -925
- package/.opencode/oh-my-design/web/references/theverge/.verification.md +0 -21
- package/.opencode/oh-my-design/web/references/theverge/DESIGN.md +0 -500
- package/.opencode/oh-my-design/web/references/timee/.verification.md +0 -67
- package/.opencode/oh-my-design/web/references/timee/DESIGN.md +0 -444
- package/.opencode/oh-my-design/web/references/together.ai/.verification.md +0 -145
- package/.opencode/oh-my-design/web/references/together.ai/DESIGN.md +0 -389
- package/.opencode/oh-my-design/web/references/together.ai/README.md +0 -24
- package/.opencode/oh-my-design/web/references/together.ai/preview-dark.html +0 -892
- package/.opencode/oh-my-design/web/references/together.ai/preview.html +0 -897
- package/.opencode/oh-my-design/web/references/toss/.verification.md +0 -120
- package/.opencode/oh-my-design/web/references/toss/DESIGN.md +0 -698
- package/.opencode/oh-my-design/web/references/toss/README.md +0 -19
- package/.opencode/oh-my-design/web/references/toss-securities/DESIGN.md +0 -247
- package/.opencode/oh-my-design/web/references/toss-securities/assets/_reference/.live-inspect-proof.json +0 -126
- package/.opencode/oh-my-design/web/references/toss-securities/assets/_reference/.live-inspect-raw.json +0 -619
- package/.opencode/oh-my-design/web/references/toss-securities/assets/_reference/.live-inspect-stock.json +0 -525
- package/.opencode/oh-my-design/web/references/toss-securities/assets/_reference/fonts.json +0 -24
- package/.opencode/oh-my-design/web/references/toss-securities/assets/_reference/structure.json +0 -35
- package/.opencode/oh-my-design/web/references/toss-securities/assets/_reference/tokens.json +0 -87
- package/.opencode/oh-my-design/web/references/tossbank/DESIGN.md +0 -576
- package/.opencode/oh-my-design/web/references/trenbe/.verification.md +0 -32
- package/.opencode/oh-my-design/web/references/trenbe/DESIGN.md +0 -293
- package/.opencode/oh-my-design/web/references/triple/DESIGN.md +0 -481
- package/.opencode/oh-my-design/web/references/tumblbug/DESIGN.md +0 -578
- package/.opencode/oh-my-design/web/references/tving/DESIGN.md +0 -317
- package/.opencode/oh-my-design/web/references/tving/assets/_reference/.live-inspect-proof.json +0 -131
- package/.opencode/oh-my-design/web/references/tving/assets/_reference/LICENSE-NOTE.md +0 -37
- package/.opencode/oh-my-design/web/references/tving/assets/_reference/attribution.md +0 -52
- package/.opencode/oh-my-design/web/references/tving/assets/_reference/fonts.json +0 -31
- package/.opencode/oh-my-design/web/references/tving/assets/_reference/screenshots/hero-desktop.png +0 -0
- package/.opencode/oh-my-design/web/references/tving/assets/_reference/structure.json +0 -55
- package/.opencode/oh-my-design/web/references/tving/assets/_reference/tokens.json +0 -115
- package/.opencode/oh-my-design/web/references/uber/.verification.md +0 -128
- package/.opencode/oh-my-design/web/references/uber/DESIGN.md +0 -423
- package/.opencode/oh-my-design/web/references/uber/README.md +0 -24
- package/.opencode/oh-my-design/web/references/uber/preview-dark.html +0 -1120
- package/.opencode/oh-my-design/web/references/uber/preview.html +0 -1119
- package/.opencode/oh-my-design/web/references/ubie/.verification.md +0 -21
- package/.opencode/oh-my-design/web/references/ubie/DESIGN.md +0 -615
- package/.opencode/oh-my-design/web/references/uniqlo/.verification.md +0 -21
- package/.opencode/oh-my-design/web/references/uniqlo/DESIGN.md +0 -575
- package/.opencode/oh-my-design/web/references/upbit/DESIGN.md +0 -337
- package/.opencode/oh-my-design/web/references/upbit/_research.md +0 -83
- package/.opencode/oh-my-design/web/references/upbit/assets/_reference/.live-inspect-proof.json +0 -263
- package/.opencode/oh-my-design/web/references/upbit/assets/_reference/fonts.json +0 -18
- package/.opencode/oh-my-design/web/references/upbit/assets/_reference/raw-capture-exchange.json +0 -1901
- package/.opencode/oh-my-design/web/references/upbit/assets/_reference/raw-capture.json +0 -1121
- package/.opencode/oh-my-design/web/references/upbit/assets/_reference/structure.json +0 -52
- package/.opencode/oh-my-design/web/references/upbit/assets/_reference/tokens.json +0 -169
- package/.opencode/oh-my-design/web/references/upstage/DESIGN.md +0 -270
- package/.opencode/oh-my-design/web/references/upstage/assets/_reference/.live-inspect-proof.json +0 -157
- package/.opencode/oh-my-design/web/references/upstage/assets/_reference/_brand-resource-center.json +0 -44
- package/.opencode/oh-my-design/web/references/upstage/assets/_reference/_curated-samples.json +0 -310
- package/.opencode/oh-my-design/web/references/upstage/assets/_reference/_raw-capture.json +0 -1560
- package/.opencode/oh-my-design/web/references/upstage/assets/_reference/_root-vars.json +0 -76
- package/.opencode/oh-my-design/web/references/upstage/assets/_reference/_structure-raw.json +0 -298
- package/.opencode/oh-my-design/web/references/upstage/assets/_reference/fonts.json +0 -35
- package/.opencode/oh-my-design/web/references/upstage/assets/_reference/structure.json +0 -72
- package/.opencode/oh-my-design/web/references/upstage/assets/_reference/tokens.json +0 -183
- package/.opencode/oh-my-design/web/references/velog/.verification.md +0 -26
- package/.opencode/oh-my-design/web/references/velog/DESIGN.md +0 -196
- package/.opencode/oh-my-design/web/references/vercel/.verification.md +0 -134
- package/.opencode/oh-my-design/web/references/vercel/DESIGN.md +0 -523
- package/.opencode/oh-my-design/web/references/vercel/README.md +0 -24
- package/.opencode/oh-my-design/web/references/vercel/preview-dark.html +0 -368
- package/.opencode/oh-my-design/web/references/vercel/preview.html +0 -367
- package/.opencode/oh-my-design/web/references/voicetube/.verification.md +0 -34
- package/.opencode/oh-my-design/web/references/voicetube/DESIGN.md +0 -266
- package/.opencode/oh-my-design/web/references/voltagent/.verification.md +0 -159
- package/.opencode/oh-my-design/web/references/voltagent/DESIGN.md +0 -454
- package/.opencode/oh-my-design/web/references/voltagent/README.md +0 -24
- package/.opencode/oh-my-design/web/references/voltagent/preview-dark.html +0 -487
- package/.opencode/oh-my-design/web/references/voltagent/preview.html +0 -766
- package/.opencode/oh-my-design/web/references/wadiz/DESIGN.md +0 -415
- package/.opencode/oh-my-design/web/references/wadiz/assets/_reference/.live-inspect-proof.json +0 -137
- package/.opencode/oh-my-design/web/references/wadiz/assets/_reference/fonts.json +0 -17
- package/.opencode/oh-my-design/web/references/wadiz/assets/_reference/structure.json +0 -35
- package/.opencode/oh-my-design/web/references/wadiz/assets/_reference/tokens.json +0 -80
- package/.opencode/oh-my-design/web/references/wanted/DESIGN.md +0 -575
- package/.opencode/oh-my-design/web/references/wanted/_promo.json +0 -31
- package/.opencode/oh-my-design/web/references/wanted/_research.md +0 -119
- package/.opencode/oh-my-design/web/references/wantedly/.verification.md +0 -53
- package/.opencode/oh-my-design/web/references/wantedly/DESIGN.md +0 -437
- package/.opencode/oh-my-design/web/references/warp/.verification.md +0 -156
- package/.opencode/oh-my-design/web/references/warp/DESIGN.md +0 -431
- package/.opencode/oh-my-design/web/references/warp/README.md +0 -23
- package/.opencode/oh-my-design/web/references/warp/preview-dark.html +0 -500
- package/.opencode/oh-my-design/web/references/warp/preview.html +0 -533
- package/.opencode/oh-my-design/web/references/watcha/DESIGN.md +0 -465
- package/.opencode/oh-my-design/web/references/wavve/DESIGN.md +0 -480
- package/.opencode/oh-my-design/web/references/wconcept/DESIGN.md +0 -556
- package/.opencode/oh-my-design/web/references/webflow/.verification.md +0 -151
- package/.opencode/oh-my-design/web/references/webflow/DESIGN.md +0 -330
- package/.opencode/oh-my-design/web/references/webflow/README.md +0 -23
- package/.opencode/oh-my-design/web/references/webflow/preview-dark.html +0 -147
- package/.opencode/oh-my-design/web/references/webflow/preview.html +0 -146
- package/.opencode/oh-my-design/web/references/wired/.verification.md +0 -21
- package/.opencode/oh-my-design/web/references/wired/DESIGN.md +0 -572
- package/.opencode/oh-my-design/web/references/wise/.verification.md +0 -141
- package/.opencode/oh-my-design/web/references/wise/DESIGN.md +0 -317
- package/.opencode/oh-my-design/web/references/wise/README.md +0 -23
- package/.opencode/oh-my-design/web/references/wise/preview-dark.html +0 -230
- package/.opencode/oh-my-design/web/references/wise/preview.html +0 -229
- package/.opencode/oh-my-design/web/references/x.ai/.verification.md +0 -140
- package/.opencode/oh-my-design/web/references/x.ai/DESIGN.md +0 -397
- package/.opencode/oh-my-design/web/references/x.ai/README.md +0 -24
- package/.opencode/oh-my-design/web/references/x.ai/preview-dark.html +0 -356
- package/.opencode/oh-my-design/web/references/x.ai/preview.html +0 -407
- package/.opencode/oh-my-design/web/references/xiaohongshu/DESIGN.md +0 -462
- package/.opencode/oh-my-design/web/references/yanolja/.verification.md +0 -83
- package/.opencode/oh-my-design/web/references/yanolja/DESIGN.md +0 -508
- package/.opencode/oh-my-design/web/references/yeogiotte/.verification.md +0 -210
- package/.opencode/oh-my-design/web/references/yeogiotte/DESIGN.md +0 -500
- package/.opencode/oh-my-design/web/references/yogiyo/DESIGN.md +0 -515
- package/.opencode/oh-my-design/web/references/yourator/.verification.md +0 -39
- package/.opencode/oh-my-design/web/references/yourator/DESIGN.md +0 -453
- package/.opencode/oh-my-design/web/references/zapier/.verification.md +0 -156
- package/.opencode/oh-my-design/web/references/zapier/DESIGN.md +0 -474
- package/.opencode/oh-my-design/web/references/zapier/README.md +0 -24
- package/.opencode/oh-my-design/web/references/zapier/preview-dark.html +0 -380
- package/.opencode/oh-my-design/web/references/zapier/preview.html +0 -372
- package/.opencode/oh-my-design/web/references/zigbang/DESIGN.md +0 -500
- package/.opencode/oh-my-design/web/references/zigbang/_promo.json +0 -16
- package/.opencode/oh-my-design/web/references/zigbang/_research.md +0 -101
- package/.opencode/oh-my-design/web/references/zigzag/DESIGN.md +0 -695
- package/.opencode/oh-my-design/web/references/zigzag/_promo.json +0 -23
- package/.opencode/oh-my-design/web/references/zigzag/_research.md +0 -64
- package/.opencode/oh-my-design/web/references/zozotown/.verification.md +0 -20
- package/.opencode/oh-my-design/web/references/zozotown/DESIGN.md +0 -578
- package/.opencode/oh-my-design/web/scripts/build-registry.mjs +0 -257
- package/.opencode/oh-my-design/web/scripts/extract-tokens.mjs +0 -117
- package/.opencode/oh-my-design/web/scripts/fetch-og-images.mjs +0 -112
- package/.opencode/oh-my-design/web/scripts/gen-favicon.mjs +0 -58
- package/.opencode/oh-my-design/web/scripts/gen-og.mjs +0 -67
- package/.opencode/oh-my-design/web/scripts/migrate-frontmatters.mjs +0 -637
- package/.opencode/oh-my-design/web/scripts/sync-catalog.mjs +0 -140
- package/.opencode/oh-my-design/web/scripts/token-sheet.mjs +0 -72
- package/.opencode/oh-my-design/web/scripts/token-status.mjs +0 -94
- package/.opencode/oh-my-design/web/scripts/verify-reference.mjs +0 -185
- package/.opencode/oh-my-design/web/src/app/alternatives/[slug]/page.tsx +0 -399
- package/.opencode/oh-my-design/web/src/app/api/font-playground/match/route.ts +0 -205
- package/.opencode/oh-my-design/web/src/app/api/leaderboard/route.ts +0 -32
- package/.opencode/oh-my-design/web/src/app/api/og/playground/route.tsx +0 -179
- package/.opencode/oh-my-design/web/src/app/api/references/[id]/route.ts +0 -162
- package/.opencode/oh-my-design/web/src/app/api/references/route.ts +0 -142
- package/.opencode/oh-my-design/web/src/app/api/track/route.ts +0 -30
- package/.opencode/oh-my-design/web/src/app/apple-icon.png +0 -0
- package/.opencode/oh-my-design/web/src/app/builder/layout.tsx +0 -43
- package/.opencode/oh-my-design/web/src/app/builder/page.tsx +0 -434
- package/.opencode/oh-my-design/web/src/app/changelog/[version]/page.tsx +0 -160
- package/.opencode/oh-my-design/web/src/app/changelog/page.tsx +0 -142
- package/.opencode/oh-my-design/web/src/app/collections/[slug]/collection-grid.tsx +0 -27
- package/.opencode/oh-my-design/web/src/app/collections/[slug]/page.tsx +0 -171
- package/.opencode/oh-my-design/web/src/app/curation/layout.tsx +0 -43
- package/.opencode/oh-my-design/web/src/app/curation/page.tsx +0 -78
- package/.opencode/oh-my-design/web/src/app/design-systems/[id]/detail-view.tsx +0 -307
- package/.opencode/oh-my-design/web/src/app/design-systems/[id]/page.tsx +0 -184
- package/.opencode/oh-my-design/web/src/app/design-systems/layout.tsx +0 -24
- package/.opencode/oh-my-design/web/src/app/design-systems/page.tsx +0 -95
- package/.opencode/oh-my-design/web/src/app/docs/layout.tsx +0 -22
- package/.opencode/oh-my-design/web/src/app/docs/page.tsx +0 -1453
- package/.opencode/oh-my-design/web/src/app/faq/page.tsx +0 -324
- package/.opencode/oh-my-design/web/src/app/font-playground/font-playground-view.tsx +0 -424
- package/.opencode/oh-my-design/web/src/app/font-playground/page.tsx +0 -43
- package/.opencode/oh-my-design/web/src/app/globals.css +0 -328
- package/.opencode/oh-my-design/web/src/app/icon.png +0 -0
- package/.opencode/oh-my-design/web/src/app/layout.tsx +0 -229
- package/.opencode/oh-my-design/web/src/app/page.tsx +0 -50
- package/.opencode/oh-my-design/web/src/app/playground/page.tsx +0 -81
- package/.opencode/oh-my-design/web/src/app/playground/playground-view.tsx +0 -436
- package/.opencode/oh-my-design/web/src/app/qa-references/page.tsx +0 -233
- package/.opencode/oh-my-design/web/src/app/r/[id]/route.ts +0 -57
- package/.opencode/oh-my-design/web/src/app/reference/[id]/page.tsx +0 -152
- package/.opencode/oh-my-design/web/src/app/result/[typeCode]/layout.tsx +0 -70
- package/.opencode/oh-my-design/web/src/app/result/[typeCode]/page.tsx +0 -280
- package/.opencode/oh-my-design/web/src/app/robots.ts +0 -44
- package/.opencode/oh-my-design/web/src/app/sitemap.ts +0 -156
- package/.opencode/oh-my-design/web/src/app/what-is-design-md/page.tsx +0 -308
- package/.opencode/oh-my-design/web/src/components/ab-picker.tsx +0 -74
- package/.opencode/oh-my-design/web/src/components/analytics-init.tsx +0 -21
- package/.opencode/oh-my-design/web/src/components/brand-logo.tsx +0 -101
- package/.opencode/oh-my-design/web/src/components/browse-modal.tsx +0 -149
- package/.opencode/oh-my-design/web/src/components/component-modal.tsx +0 -108
- package/.opencode/oh-my-design/web/src/components/content-preview-modal.tsx +0 -213
- package/.opencode/oh-my-design/web/src/components/customizer.tsx +0 -641
- package/.opencode/oh-my-design/web/src/components/design-wizard.tsx +0 -691
- package/.opencode/oh-my-design/web/src/components/ds-card.tsx +0 -162
- package/.opencode/oh-my-design/web/src/components/export-panel.tsx +0 -162
- package/.opencode/oh-my-design/web/src/components/font-card.tsx +0 -121
- package/.opencode/oh-my-design/web/src/components/font-playground/color-palette.tsx +0 -86
- package/.opencode/oh-my-design/web/src/components/font-playground/detail-modal.tsx +0 -789
- package/.opencode/oh-my-design/web/src/components/font-playground/filter-bar.tsx +0 -192
- package/.opencode/oh-my-design/web/src/components/font-playground/font-tile.tsx +0 -92
- package/.opencode/oh-my-design/web/src/components/font-playground/gallery.tsx +0 -42
- package/.opencode/oh-my-design/web/src/components/font-playground/hero-entry.tsx +0 -150
- package/.opencode/oh-my-design/web/src/components/font-playground/labels.ts +0 -18
- package/.opencode/oh-my-design/web/src/components/font-playground/match-results.tsx +0 -486
- package/.opencode/oh-my-design/web/src/components/font-playground/my-fonts.tsx +0 -315
- package/.opencode/oh-my-design/web/src/components/font-playground/preview-templates.tsx +0 -395
- package/.opencode/oh-my-design/web/src/components/font-playground/sample-input.tsx +0 -30
- package/.opencode/oh-my-design/web/src/components/font-playground/script-toggle.tsx +0 -73
- package/.opencode/oh-my-design/web/src/components/font-playground/usage-guide.tsx +0 -172
- package/.opencode/oh-my-design/web/src/components/install-cta.tsx +0 -133
- package/.opencode/oh-my-design/web/src/components/landing-v2/hero.tsx +0 -459
- package/.opencode/oh-my-design/web/src/components/landing-v2/live-proof.tsx +0 -464
- package/.opencode/oh-my-design/web/src/components/landing-v2/nav.tsx +0 -126
- package/.opencode/oh-my-design/web/src/components/landing-v2/sections.tsx +0 -1166
- package/.opencode/oh-my-design/web/src/components/landing-v2/the-wall.tsx +0 -332
- package/.opencode/oh-my-design/web/src/components/landing-v2/tokens.ts +0 -33
- package/.opencode/oh-my-design/web/src/components/markdown.tsx +0 -168
- package/.opencode/oh-my-design/web/src/components/playground/actions-header.tsx +0 -28
- package/.opencode/oh-my-design/web/src/components/playground/contrast-badge.tsx +0 -112
- package/.opencode/oh-my-design/web/src/components/playground/controls/category-section.tsx +0 -50
- package/.opencode/oh-my-design/web/src/components/playground/controls/color-picker.tsx +0 -116
- package/.opencode/oh-my-design/web/src/components/playground/controls/density-picker.tsx +0 -56
- package/.opencode/oh-my-design/web/src/components/playground/controls/mood-picker.tsx +0 -53
- package/.opencode/oh-my-design/web/src/components/playground/controls/motion-picker.tsx +0 -62
- package/.opencode/oh-my-design/web/src/components/playground/controls/name-description.tsx +0 -55
- package/.opencode/oh-my-design/web/src/components/playground/controls/palette-grid.tsx +0 -111
- package/.opencode/oh-my-design/web/src/components/playground/controls/personas-picker.tsx +0 -85
- package/.opencode/oh-my-design/web/src/components/playground/controls/radius-picker.tsx +0 -48
- package/.opencode/oh-my-design/web/src/components/playground/controls/voice-picker.tsx +0 -120
- package/.opencode/oh-my-design/web/src/components/playground/controls/weight-picker.tsx +0 -48
- package/.opencode/oh-my-design/web/src/components/playground/export-box.tsx +0 -120
- package/.opencode/oh-my-design/web/src/components/playground/header.tsx +0 -71
- package/.opencode/oh-my-design/web/src/components/playground/layout.tsx +0 -50
- package/.opencode/oh-my-design/web/src/components/playground/mobile-drawer.tsx +0 -78
- package/.opencode/oh-my-design/web/src/components/playground/mood-override-badge.tsx +0 -40
- package/.opencode/oh-my-design/web/src/components/playground/preview-pane.tsx +0 -82
- package/.opencode/oh-my-design/web/src/components/playground/primitives-strip.tsx +0 -153
- package/.opencode/oh-my-design/web/src/components/playground/reference-picker-modal.tsx +0 -146
- package/.opencode/oh-my-design/web/src/components/playground/share-button.tsx +0 -42
- package/.opencode/oh-my-design/web/src/components/playground/start-from.tsx +0 -90
- package/.opencode/oh-my-design/web/src/components/preview-export-view.tsx +0 -205
- package/.opencode/oh-my-design/web/src/components/preview.tsx +0 -869
- package/.opencode/oh-my-design/web/src/components/reference-preview.tsx +0 -1187
- package/.opencode/oh-my-design/web/src/components/reference-selector.tsx +0 -671
- package/.opencode/oh-my-design/web/src/components/scroll-to-top.tsx +0 -41
- package/.opencode/oh-my-design/web/src/components/status-badge.tsx +0 -64
- package/.opencode/oh-my-design/web/src/components/survey/company-mini-ui.tsx +0 -669
- package/.opencode/oh-my-design/web/src/components/survey/install-cta.tsx +0 -80
- package/.opencode/oh-my-design/web/src/components/survey/mood-step.tsx +0 -260
- package/.opencode/oh-my-design/web/src/components/survey/quiz-wizard.tsx +0 -528
- package/.opencode/oh-my-design/web/src/components/survey/result-card.tsx +0 -242
- package/.opencode/oh-my-design/web/src/components/survey/share-buttons.tsx +0 -320
- package/.opencode/oh-my-design/web/src/components/survey/survey-wizard.tsx +0 -661
- package/.opencode/oh-my-design/web/src/components/survey/typography-step.tsx +0 -192
- package/.opencode/oh-my-design/web/src/components/theme-provider.tsx +0 -12
- package/.opencode/oh-my-design/web/src/components/ui/badge.tsx +0 -52
- package/.opencode/oh-my-design/web/src/components/ui/button.tsx +0 -58
- package/.opencode/oh-my-design/web/src/components/ui/card.tsx +0 -103
- package/.opencode/oh-my-design/web/src/components/ui/dialog.tsx +0 -160
- package/.opencode/oh-my-design/web/src/components/ui/input.tsx +0 -20
- package/.opencode/oh-my-design/web/src/components/ui/label.tsx +0 -20
- package/.opencode/oh-my-design/web/src/components/ui/radio-group.tsx +0 -38
- package/.opencode/oh-my-design/web/src/components/ui/scroll-area.tsx +0 -55
- package/.opencode/oh-my-design/web/src/components/ui/select.tsx +0 -201
- package/.opencode/oh-my-design/web/src/components/ui/separator.tsx +0 -25
- package/.opencode/oh-my-design/web/src/components/ui/sheet.tsx +0 -138
- package/.opencode/oh-my-design/web/src/components/ui/slider.tsx +0 -52
- package/.opencode/oh-my-design/web/src/components/ui/switch.tsx +0 -32
- package/.opencode/oh-my-design/web/src/components/ui/tabs.tsx +0 -82
- package/.opencode/oh-my-design/web/src/components/ui/tooltip.tsx +0 -66
- package/.opencode/oh-my-design/web/src/data/faq.ts +0 -81
- package/.opencode/oh-my-design/web/src/data/registry.generated.ts +0 -304
- package/.opencode/oh-my-design/web/src/data/version.generated.ts +0 -2
- package/.opencode/oh-my-design/web/src/lib/changelog.ts +0 -96
- package/.opencode/oh-my-design/web/src/lib/collections.ts +0 -252
- package/.opencode/oh-my-design/web/src/lib/contrast.ts +0 -40
- package/.opencode/oh-my-design/web/src/lib/core/builder-prompt.test.ts +0 -100
- package/.opencode/oh-my-design/web/src/lib/core/builder-prompt.ts +0 -102
- package/.opencode/oh-my-design/web/src/lib/core/color.ts +0 -122
- package/.opencode/oh-my-design/web/src/lib/core/config-hash.test.ts +0 -157
- package/.opencode/oh-my-design/web/src/lib/core/config-hash.ts +0 -133
- package/.opencode/oh-my-design/web/src/lib/core/generate-css.test.ts +0 -813
- package/.opencode/oh-my-design/web/src/lib/core/generate-css.ts +0 -586
- package/.opencode/oh-my-design/web/src/lib/core/survey-hash.test.ts +0 -51
- package/.opencode/oh-my-design/web/src/lib/core/survey-hash.ts +0 -56
- package/.opencode/oh-my-design/web/src/lib/core/types.ts +0 -37
- package/.opencode/oh-my-design/web/src/lib/design-systems.ts +0 -102
- package/.opencode/oh-my-design/web/src/lib/extract-components.test.ts +0 -116
- package/.opencode/oh-my-design/web/src/lib/extract-tokens.test.ts +0 -202
- package/.opencode/oh-my-design/web/src/lib/extract-tokens.ts +0 -1335
- package/.opencode/oh-my-design/web/src/lib/font-registry.ts +0 -376
- package/.opencode/oh-my-design/web/src/lib/fonts/analytics.test.ts +0 -194
- package/.opencode/oh-my-design/web/src/lib/fonts/analytics.ts +0 -234
- package/.opencode/oh-my-design/web/src/lib/fonts/catalog.ts +0 -1509
- package/.opencode/oh-my-design/web/src/lib/fonts/designmd-export.ts +0 -104
- package/.opencode/oh-my-design/web/src/lib/fonts/loaders.test.ts +0 -169
- package/.opencode/oh-my-design/web/src/lib/fonts/loaders.ts +0 -90
- package/.opencode/oh-my-design/web/src/lib/fonts/match-intent.test.ts +0 -93
- package/.opencode/oh-my-design/web/src/lib/fonts/match-intent.ts +0 -288
- package/.opencode/oh-my-design/web/src/lib/fonts/preview-contexts.ts +0 -124
- package/.opencode/oh-my-design/web/src/lib/fonts/rate-limit.ts +0 -43
- package/.opencode/oh-my-design/web/src/lib/fonts/saved-store.ts +0 -113
- package/.opencode/oh-my-design/web/src/lib/fonts/share-link.test.ts +0 -101
- package/.opencode/oh-my-design/web/src/lib/fonts/share-link.ts +0 -52
- package/.opencode/oh-my-design/web/src/lib/fonts/similarity.ts +0 -106
- package/.opencode/oh-my-design/web/src/lib/fonts/tweaks.test.ts +0 -213
- package/.opencode/oh-my-design/web/src/lib/fonts/tweaks.ts +0 -186
- package/.opencode/oh-my-design/web/src/lib/fonts/types.ts +0 -96
- package/.opencode/oh-my-design/web/src/lib/gtag.ts +0 -64
- package/.opencode/oh-my-design/web/src/lib/hot-refs.ts +0 -41
- package/.opencode/oh-my-design/web/src/lib/kv.ts +0 -30
- package/.opencode/oh-my-design/web/src/lib/logos.ts +0 -39
- package/.opencode/oh-my-design/web/src/lib/new-refs.ts +0 -30
- package/.opencode/oh-my-design/web/src/lib/playground/codec.ts +0 -34
- package/.opencode/oh-my-design/web/src/lib/playground/defaults.ts +0 -56
- package/.opencode/oh-my-design/web/src/lib/playground/generate.ts +0 -384
- package/.opencode/oh-my-design/web/src/lib/playground/palettes.ts +0 -259
- package/.opencode/oh-my-design/web/src/lib/playground/rules/density.ts +0 -59
- package/.opencode/oh-my-design/web/src/lib/playground/rules/mood.ts +0 -82
- package/.opencode/oh-my-design/web/src/lib/playground/rules/motion.ts +0 -71
- package/.opencode/oh-my-design/web/src/lib/playground/rules/personality.ts +0 -93
- package/.opencode/oh-my-design/web/src/lib/playground/rules/philosophy.ts +0 -270
- package/.opencode/oh-my-design/web/src/lib/playground/rules/radius.ts +0 -54
- package/.opencode/oh-my-design/web/src/lib/playground/rules/weight.ts +0 -41
- package/.opencode/oh-my-design/web/src/lib/playground/samples.ts +0 -280
- package/.opencode/oh-my-design/web/src/lib/playground/state.ts +0 -194
- package/.opencode/oh-my-design/web/src/lib/search-aliases.ts +0 -213
- package/.opencode/oh-my-design/web/src/lib/survey/profiles.generated.ts +0 -1143
- package/.opencode/oh-my-design/web/src/lib/survey/quiz-data.test.ts +0 -102
- package/.opencode/oh-my-design/web/src/lib/survey/quiz-data.ts +0 -571
- package/.opencode/oh-my-design/web/src/lib/survey/scoring.test.ts +0 -111
- package/.opencode/oh-my-design/web/src/lib/survey/scoring.ts +0 -146
- package/.opencode/oh-my-design/web/src/lib/survey/types.test.ts +0 -153
- package/.opencode/oh-my-design/web/src/lib/survey/types.ts +0 -604
- package/.opencode/oh-my-design/web/src/lib/utils.ts +0 -6
- package/.opencode/oh-my-design/web/src/styles/shadcn.css +0 -95
- package/.opencode/oh-my-design/web/src/styles/tw-animate.css +0 -1
- package/.opencode/oh-my-design/web/src/types/gtag.d.ts +0 -3
- package/.opencode/oh-my-design/web/tsconfig.json +0 -34
- package/.opencode/oh-my-design/web/vitest.config.ts +0 -14
- package/.utils/docs_opencode/acp.md +0 -165
- package/.utils/docs_opencode/acp.pdf +0 -0
- package/.utils/docs_opencode/agents.md +0 -803
- package/.utils/docs_opencode/agents.pdf +0 -0
- package/.utils/docs_opencode/commands.md +0 -354
- package/.utils/docs_opencode/commands.pdf +0 -0
- package/.utils/docs_opencode/custom-tools.md +0 -209
- package/.utils/docs_opencode/custom-tools.pdf +0 -0
- package/.utils/docs_opencode/ecosystem.md +0 -81
- package/.utils/docs_opencode/ecosystem.pdf +0 -0
- package/.utils/docs_opencode/formatters.md +0 -142
- package/.utils/docs_opencode/formatters.pdf +0 -0
- package/.utils/docs_opencode/keybinds.md +0 -205
- package/.utils/docs_opencode/keybinds.pdf +0 -0
- package/.utils/docs_opencode/lsp.md +0 -202
- package/.utils/docs_opencode/lsp.pdf +0 -0
- package/.utils/docs_opencode/mcp-servers.md +0 -565
- package/.utils/docs_opencode/mcp-servers.pdf +0 -0
- package/.utils/docs_opencode/models.md +0 -234
- package/.utils/docs_opencode/models.pdf +0 -0
- package/.utils/docs_opencode/permissions.md +0 -248
- package/.utils/docs_opencode/permissions.pdf +0 -0
- package/.utils/docs_opencode/plugins.md +0 -409
- package/.utils/docs_opencode/plugins.pdf +0 -0
- package/.utils/docs_opencode/rules.md +0 -189
- package/.utils/docs_opencode/rules.pdf +0 -0
- package/.utils/docs_opencode/sdk.md +0 -522
- package/.utils/docs_opencode/sdk.pdf +0 -0
- package/.utils/docs_opencode/server.md +0 -324
- package/.utils/docs_opencode/server.pdf +0 -0
- package/.utils/docs_opencode/skills.md +0 -235
- package/.utils/docs_opencode/skills.pdf +0 -0
- package/.utils/docs_opencode/themes.md +0 -378
- package/.utils/docs_opencode/themes.pdf +0 -0
- package/.utils/docs_opencode/tools.md +0 -364
- package/.utils/docs_opencode/tools.pdf +0 -0
- package/.utils/zugzweb/client/node_modules/.tmp/tsconfig.app.tsbuildinfo +0 -1
- package/.utils/zugzweb/client/node_modules/.tmp/tsconfig.node.tsbuildinfo +0 -1
- package/.utils/zugzweb/client/node_modules/nanoid/.claude/settings.local.json +0 -14
- package/.utils/zugzweb/client/package-lock.json +0 -3707
|
@@ -1,1060 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
id: krds
|
|
3
|
-
name: KRDS
|
|
4
|
-
country: KR
|
|
5
|
-
category: government
|
|
6
|
-
homepage: "https://www.krds.go.kr/html/site/index.html"
|
|
7
|
-
primary_color: "#000000"
|
|
8
|
-
logo:
|
|
9
|
-
type: favicon
|
|
10
|
-
slug: "https://www.krds.go.kr/resources/img/guide/favicon_192.png"
|
|
11
|
-
verified: "2026-05-15"
|
|
12
|
-
omd: "0.1"
|
|
13
|
-
ds:
|
|
14
|
-
name: KRDS — Korea Republic Design System
|
|
15
|
-
url: "https://www.krds.go.kr/html/site/index.html"
|
|
16
|
-
type: system
|
|
17
|
-
description: "행정안전부 주관 범정부 통합 디자인 시스템. Government Blue #256EF4, Pretendard GOV, WCAG/KWCAG 2.2 a11y-first tokens and components."
|
|
18
|
-
og_image: "https://www.krds.go.kr/resources/img/guide/KRDS_Open_Graph.png"
|
|
19
|
-
tokens:
|
|
20
|
-
source: prose-derived
|
|
21
|
-
extracted: "2026-06-09"
|
|
22
|
-
colors:
|
|
23
|
-
primary: "#256ef4"
|
|
24
|
-
primary-hover: "#0b50d0"
|
|
25
|
-
primary-deep: "#083891"
|
|
26
|
-
brand: "#256ef4"
|
|
27
|
-
canvas: "#ffffff"
|
|
28
|
-
foreground: "#1e2124"
|
|
29
|
-
muted: "#6d7882"
|
|
30
|
-
on-primary: "#ffffff"
|
|
31
|
-
surface: "#f4f5f6"
|
|
32
|
-
surface-primary: "#ecf2fe"
|
|
33
|
-
hairline: "#b1b8be"
|
|
34
|
-
border-strong: "#58616a"
|
|
35
|
-
body: "#464c53"
|
|
36
|
-
secondary: "#346fb2"
|
|
37
|
-
point: "#d63d4a"
|
|
38
|
-
danger: "#de3412"
|
|
39
|
-
warning: "#ffb114"
|
|
40
|
-
success: "#228738"
|
|
41
|
-
information: "#0b78cb"
|
|
42
|
-
typography:
|
|
43
|
-
family: { sans: "Pretendard GOV", mono: "SF Mono" }
|
|
44
|
-
display-large: { size: 60, weight: 700, lineHeight: 1.5, tracking: "1px", use: "Marketing/banner display (no body use)" }
|
|
45
|
-
display-small: { size: 36, weight: 700, lineHeight: 1.5, tracking: "1px", use: "Small display banner" }
|
|
46
|
-
heading-xlarge: { size: 40, weight: 700, lineHeight: 1.5, tracking: "1px", use: "H1 page/section top title (28px mobile)" }
|
|
47
|
-
heading-large: { size: 32, weight: 700, lineHeight: 1.5, tracking: "1px", use: "H1 narrow / H2" }
|
|
48
|
-
heading-medium: { size: 24, weight: 700, lineHeight: 1.5, use: "H2 / H3" }
|
|
49
|
-
heading-small: { size: 19, weight: 700, lineHeight: 1.5, use: "H3 / H4" }
|
|
50
|
-
heading-xsmall: { size: 17, weight: 700, lineHeight: 1.5, use: "H4 / H5" }
|
|
51
|
-
body-large: { size: 19, weight: 400, lineHeight: 1.5, use: "Emphasized body / key copy" }
|
|
52
|
-
body-medium: { size: 17, weight: 400, lineHeight: 1.5, use: "Standard body (default)" }
|
|
53
|
-
body-small: { size: 15, weight: 400, lineHeight: 1.5, use: "Caption / small label" }
|
|
54
|
-
body-xsmall: { size: 13, weight: 400, lineHeight: 1.5, use: "Annotation / meta / footer" }
|
|
55
|
-
spacing: { xs: 2, sm: 4, md: 8, base: 16, lg: 24, xl: 32, xxl: 40 }
|
|
56
|
-
rounded: { sm: 4, md: 6, lg: 8, full: 1000 }
|
|
57
|
-
shadow:
|
|
58
|
-
focus: "0 0 0 0.4rem #256ef4"
|
|
59
|
-
modal: "0 0.2rem 0 0 rgba(0,0,0,0.1), 0 0.4rem 0.8rem 0 rgba(0,0,0,0.1)"
|
|
60
|
-
components_harvested: true
|
|
61
|
-
components:
|
|
62
|
-
button-primary: { type: button, bg: "#256ef4", fg: "#ffffff", border: "1px solid #256ef4", radius: "6px", padding: "0 16px", height: "48px", font: "17px / 400", hover: "#0b50d0", active: "#083891", disabled: "bg #cdd1d5 fg #6d7882", use: "Core action 신청하기/확인 (1 per screen)" }
|
|
63
|
-
button-secondary: { type: button, bg: "#ecf2fe", fg: "#0b50d0", border: "1px solid #256ef4", radius: "6px", padding: "0 16px", height: "48px", font: "17px / 400", use: "Secondary action 자세히 보기/이전 단계" }
|
|
64
|
-
button-tertiary: { type: button, bg: "transparent", fg: "#1e2124", border: "1px solid #58616a", radius: "6px", padding: "0 16px", height: "48px", font: "17px / 400", hover: "#f4f5f6", use: "Cancel/reset 취소/초기화/닫기" }
|
|
65
|
-
button-floating: { type: button, bg: "#256ef4", fg: "#ffffff", radius: "1000px", shadow: "weak box-shadow", use: "Bottom-right floating action 맨 위로/챗봇" }
|
|
66
|
-
input-text: { type: input, bg: "#ffffff", fg: "#464c53", border: "1px solid #58616a", radius: "8px", padding: "0 16px", height: "56px", font: "19px / 400", focus: "0 0 0 4px #256ef4 halo", disabled: "bg #cdd1d5 fg #6d7882 border #b1b8be", states: "error border 2px solid #de3412", use: "Standard text input (large default)" }
|
|
67
|
-
select: { type: input, bg: "#ffffff", fg: "#1e2124", border: "1px solid #58616a", radius: "6px", padding: "0 48px 0 16px", height: "56px", font: "19px / 400", disabled: "bg #cdd1d5 border #b1b8be", states: "error border 2px solid #ab2b36", use: "Native select with chevron" }
|
|
68
|
-
toggle-checkbox: { type: toggle, bg: "#ffffff", border: "1px solid #58616a", radius: "4px", active: "bg #256ef4 + white check icon", use: "Multi-select checkbox" }
|
|
69
|
-
toggle-switch: { type: toggle, bg: "#b1b8be", fg: "#ffffff", radius: "1000px", active: "#256ef4 track, white thumb right", disabled: "bg #cdd1d5", use: "On/off toggle switch" }
|
|
70
|
-
card: { type: card, bg: "#ffffff", border: "1px solid #b1b8be", radius: "8px", padding: "24px", shadow: "none", use: "Standard content panel, border-defined" }
|
|
71
|
-
card-info: { type: card, bg: "#ecf2fe", fg: "#1e2124", radius: "8px", padding: "16px 24px", use: "Info/help panel 안내·도움말" }
|
|
72
|
-
card-critical: { type: card, bg: "#de3412", fg: "#ffffff", radius: "0", use: "Full-bleed urgent notice banner top of page" }
|
|
73
|
-
dialog: { type: dialog, bg: "#ffffff", fg: "#1e2124", radius: "12px", padding: "40px", shadow: "0 0.2rem 0 0 rgba(0,0,0,0.1), 0 0.4rem 0.8rem 0 rgba(0,0,0,0.1)", use: "Modal dialog, backdrop fade 0->0.5 black, min-height 264px" }
|
|
74
|
-
badge-primary: { type: badge, bg: "#256ef4", fg: "#ffffff", border: "1px solid #256ef4", radius: "4px", padding: "0 8px", height: "24px", font: "15px / 400", use: "Content classification, action emphasis" }
|
|
75
|
-
badge-point: { type: badge, bg: "#d63d4a", fg: "#ffffff", radius: "4px", padding: "0 8px", height: "24px", font: "15px / 400", use: "Emphasis/new/important (red point)" }
|
|
76
|
-
badge-success: { type: badge, bg: "#228738", fg: "#ffffff", radius: "4px", padding: "0 8px", height: "24px", font: "15px / 400", use: "Completed / success" }
|
|
77
|
-
badge-danger: { type: badge, bg: "#de3412", fg: "#ffffff", radius: "4px", padding: "0 8px", height: "24px", font: "15px / 400", use: "Error / rejected" }
|
|
78
|
-
badge-warning: { type: badge, bg: "#ffb114", fg: "#1e2124", radius: "4px", padding: "0 8px", height: "24px", font: "15px / 400", use: "Caution (black text on warning bg)" }
|
|
79
|
-
badge-tag: { type: badge, bg: "#ffffff", fg: "#1e2124", border: "1px solid #cdd1d5", radius: "1000px", padding: "8px 10px", font: "15px / 400", active: "bg #ecf2fe fg #0b50d0 border #256ef4", use: "Selectable filter chip with delete button" }
|
|
80
|
-
tab-horizontal: { type: tab, bg: "transparent", fg: "#464c53", font: "17px / 400", active: "fg #256ef4 700 + 2px bottom border #256ef4", use: "In-page section switch, keyboard L/R nav" }
|
|
81
|
-
toast: { type: toast, bg: "#1e2124", fg: "#ffffff", radius: "8px", padding: "16px", use: "Center/bottom card, 3s auto-dismiss" }
|
|
82
|
-
---
|
|
83
|
-
|
|
84
|
-
# Design System Inspiration of KRDS (대한민국 정부 디자인 시스템)
|
|
85
|
-
|
|
86
|
-
## 1. Visual Theme & Atmosphere
|
|
87
|
-
|
|
88
|
-
KRDS는 대한민국 행정·공공기관 웹·앱이 공유하는 정부 표준 디자인 시스템입니다. 화면은 마케팅 브랜드가 아니라 **공공 서비스의 도구**처럼 보이도록 설계되었습니다 — 순백 배경(`#ffffff`) 위에 거의 검정에 가까운 본문(`#1E2124`), 그리고 신뢰감을 주는 정부 블루(`#256EF4`)가 단 하나의 강조색으로 작동합니다. 강조색은 그래픽 장식이 아니라 행위(action), 즉 "신청", "확인", "다음 단계"가 있는 자리에만 나타납니다. 영역 분리는 그림자가 아니라 **얇은 회색 보더**(`#58616A` 1px / `#B1B8BE` 1px / `#CDD1D5` 1px)와 **8px 라운드**로 처리되어, 시각적 무게가 일관되게 가라앉아 있습니다.
|
|
89
|
-
|
|
90
|
-
이 시스템은 "디지털 정부서비스 UI/UX 가이드라인"을 표준 토큰·컴포넌트로 정착시킨 것으로, 행정안전부(MOIS)가 2024년 4월에 공식 배포했습니다 ([행정안전부 보도자료](https://www.mois.go.kr/frt/bbs/type010/commonSelectBoardArticle.do?bbsId=BBSMSTR_000000000008&nttId=115144)). 분위기를 한 줄로 요약하면 **"읽기 쉽고, 예측 가능하며, 접근성을 우선하는 공공 유틸리티"**입니다. 화려한 일러스트, 그라데이션, 톤다운된 마케팅 영문 카피, 과장된 모션은 의도적으로 배제되어 있습니다.
|
|
91
|
-
|
|
92
|
-
**Key Characteristics:**
|
|
93
|
-
- 정부 블루 Primary 50 `#256EF4`(액션) + Primary 60 `#0B50D0`(텍스트·pressed) + Primary 5 `#ECF2FE`(약한 배경) — Primary는 11단계(5~95) 명도 팔레트로 정의되어 있고, 모든 UI는 이 중 3~4단계만 사용
|
|
94
|
-
- **Pretendard GOV** 단일 폰트 패밀리 (한글·라틴·숫자 일체) — 시스템 한글 폴백 포함
|
|
95
|
-
- 본문 기본 17px·400 / 1.5 line-height, 페이지 제목 H1 xlarge = **40px(PC) / 28px(mobile)**·700 — Display(36/44/60), Heading(15~40), Body(13~19) 세 레이어 스케일
|
|
96
|
-
- 5단계 컴포넌트 사이즈 (xsmall · small · medium · large · xlarge) — 버튼·인풋·셀렉트·태그 전반에 동일 적용
|
|
97
|
-
- **글자·화면 표시 설정** UI 내장 — 사용자가 폰트 크기를 90% / 100% / 110% / 130% / 150%로 직접 확대 (`--krds-zoom-*`)
|
|
98
|
-
- 라운드 스케일: 2px / 4px / 6px / 8px / 10px / 12px / 1000px — 그림자는 거의 사용하지 않음 (`--krds-box-shadow-outline`만 focus용)
|
|
99
|
-
- 컨텐츠 폭 1200px (gutter 24px) + 4단계 브레이크포인트 (small 360 / medium 768 / large 1024 / xlarge 1280) — 정부 사이트의 표준 와이드 레이아웃
|
|
100
|
-
- **매직 넘버 컬러 시스템** — 명도 단계별로 WCAG 대비율을 보장: 매직넘버 40=3:1, 50=4.5:1, 70=7:1, 90=15:1. 토큰 단계부터 KWCAG 2.1 / WCAG 2.1 AA 준수가 강제됨
|
|
101
|
-
- 시스템 컬러 4종 — Danger `#DE3412` / Warning `#FFB114` / Success `#228738` / Information `#0B78CB` (모두 50단계 base, light/high-contrast 토큰 레이어 자동 매핑)
|
|
102
|
-
- **선명한 화면 모드(High-contrast mode) 내장** — 일반 모드와 동일 컴포넌트가 `--krds-color-high-contrast-*` 레이어 한 줄 교체만으로 전환
|
|
103
|
-
|
|
104
|
-
**디지털 포용·접근성 강령 (Accessibility Mandate).** KRDS는 시각적 선호가 아니라 **법적·정책적 의무**에서 출발합니다. 대한민국 「장애인차별금지 및 권리구제 등에 관한 법률」(장차법)과 「웹 접근성 국가표준 KWCAG 2.1 (KS X OT 0003)」이 공공기관 웹·앱에 WCAG 2.1 AA 동등 이상의 접근성을 요구하며, KRDS는 이를 토큰·컴포넌트 단계부터 강제하는 기술 표준 역할을 합니다. 행정안전부는 KRDS를 "**누구나 쉽게 사용할 수 있는 공공 웹·앱**"의 구현 수단으로 정의했고 ([행정안전부 보도자료](https://www.mois.go.kr/frt/bbs/type010/commonSelectBoardArticle.do?bbsId=BBSMSTR_000000000008&nttId=115144)), 라이브 사이트 푸터에는 **웹 접근성 인증 마크**가 상시 표시됩니다 ([기본 패턴 summary](https://www.krds.go.kr/html/site/global/global_summary.html) 페이지 푸터 확인). 따라서 색대비 4.5:1 (매직넘버 50), 4px focus halo, 사용자 줌 90~150%, 선명한 화면 모드는 "권고"가 아니라 KRDS의 **기본 동작**입니다.
|
|
105
|
-
|
|
106
|
-
## 2. Color Palette & Roles
|
|
107
|
-
|
|
108
|
-
### Brand
|
|
109
|
-
|
|
110
|
-
- **Government Blue** (`#256EF4`): Primary brand color — buttons, active links, primary CTA, focus rings.
|
|
111
|
-
- **Primary Deep** (`#0B50D0`): Primary text on light surface, secondary-button text, pressed state.
|
|
112
|
-
- **Navy** (`#346FB2`): Secondary brand color — side menu, segmented controls, header secondary.
|
|
113
|
-
- **Government Red (Point)** (`#D63D4A`): Restricted accent — emphasis badges, critical alerts only.
|
|
114
|
-
|
|
115
|
-
### Surface & Background
|
|
116
|
-
|
|
117
|
-
- **Page Background** (`#FFFFFF`): The primary page background — card and input default canvas.
|
|
118
|
-
- **Subtle Surface** (`#F4F5F6`): Table headers, gray subtle surfaces.
|
|
119
|
-
- **Divider** (`#E6E8EA`): Light dividers.
|
|
120
|
-
|
|
121
|
-
### Foreground (Text)
|
|
122
|
-
|
|
123
|
-
- **Body Text** (`#1E2124`): Primary body text and H1 headlines.
|
|
124
|
-
- **Subtle Text** (`#464C53`): Placeholder, inactive GNB items.
|
|
125
|
-
- **Caption Text** (`#6D7882`): Captions, meta, helper text.
|
|
126
|
-
|
|
127
|
-
### Semantic
|
|
128
|
-
|
|
129
|
-
- **Danger / Critical** (`#DE3412`): Validation errors, required-field errors, immediate alerts.
|
|
130
|
-
- **Warning** (`#FFB114`): Warning badge backgrounds (use `#9E6A00` for text-on-light contrast).
|
|
131
|
-
- **Success** (`#228738`): Confirmation, completed states.
|
|
132
|
-
- **Information** (`#0B78CB`): Informational panels, info icons.
|
|
133
|
-
|
|
134
|
-
---
|
|
135
|
-
|
|
136
|
-
### Standard Style — Full Token Scale
|
|
137
|
-
|
|
138
|
-
KRDS의 색상 시스템은 **표준형 스타일(Standard Style)** 기준으로 11단계 명도(5/10/20/30/40/50/60/70/80/90/95) × 8개 색상군(Gray, Primary, Secondary, Point, Danger, Warning, Success, Information) + Gray 0/100 (white/black)으로 구성됩니다. 각 토큰은 `--krds-color-light-<name>-<step>` 형태로 노출되며, 선명한 화면 모드는 `--krds-color-high-contrast-<name>-<step>`로 동일 의미를 다른 명도에 매핑합니다.
|
|
139
|
-
|
|
140
|
-
### Primary (Government Blue — 정부 청색)
|
|
141
|
-
|
|
142
|
-
| Step | Hex | Token | Role |
|
|
143
|
-
|------|------|-------|------|
|
|
144
|
-
| 5 | `#ECF2FE` | `--krds-color-light-primary-5` | Secondary 버튼 배경, 정보 패널 표면, 약한 강조 |
|
|
145
|
-
| 10 | `#D8E5FD` | `--krds-color-light-primary-10` | hover/selected 표면 |
|
|
146
|
-
| 20 | `#B1CEFB` | `--krds-color-light-primary-20` | divider, illustration 보조 |
|
|
147
|
-
| 30 | `#86AFF9` | `--krds-color-light-primary-30` | disabled-on-primary, 보조 그래픽 |
|
|
148
|
-
| 40 | `#4C87F6` | `--krds-color-light-primary-40` | 보조 액션 / 비활성 보더 |
|
|
149
|
-
| **50** | **`#256EF4`** | `--krds-color-light-primary-50` | **Primary 액션 — 버튼 배경, 활성 링크, 활성 탭. 정부의 행위(action) 컬러** |
|
|
150
|
-
| **60** | **`#0B50D0`** | `--krds-color-light-primary-60` | Primary text on light surface, Secondary 버튼 텍스트, pressed 상태 |
|
|
151
|
-
| 70 | `#083891` | `--krds-color-light-primary-70` | 강한 강조 텍스트 |
|
|
152
|
-
| 80 | `#052561` | `--krds-color-light-primary-80` | 진한 정보 컨테이너 |
|
|
153
|
-
| 90 | `#03163A` | `--krds-color-light-primary-90` | 다크 표면 |
|
|
154
|
-
| 95 | `#020F27` | `--krds-color-light-primary-95` | 다크 모드 본문 배경 |
|
|
155
|
-
|
|
156
|
-
### Secondary (Navy — 정부 회청)
|
|
157
|
-
|
|
158
|
-
세컨더리는 Primary와 보조를 맞추는 안정적인 네이비 톤으로, 사이드 메뉴·세그먼티드 컨트롤·헤더 보조 영역에 쓰입니다.
|
|
159
|
-
|
|
160
|
-
| Step | Hex | Role |
|
|
161
|
-
|------|------|------|
|
|
162
|
-
| 5 | `#EEF2F7` | 사이드 메뉴 배경 |
|
|
163
|
-
| 50 | `#346FB2` | secondary base |
|
|
164
|
-
| 60 | `#1C589C` | secondary action |
|
|
165
|
-
| 70 | `#063A74` | secondary text |
|
|
166
|
-
| 80 | `#052B57` | secondary heading |
|
|
167
|
-
|
|
168
|
-
### Gray (회색 — 텍스트 / 보더 / 표면)
|
|
169
|
-
|
|
170
|
-
| Step | Hex | Role | Token semantic |
|
|
171
|
-
|------|------|------|----------|
|
|
172
|
-
| 0 | `#FFFFFF` | Page / card / input 기본 배경 | `--krds-light-color-surface-white-static` |
|
|
173
|
-
| 5 | `#F4F5F6` | 표 헤더, gray subtle 표면 | `--krds-light-color-surface-gray-subtler` |
|
|
174
|
-
| 10 | `#E6E8EA` | divider 약 | — |
|
|
175
|
-
| 20 | `#CDD1D5` | **Disabled 표면 배경 / 보더 약** | input disabled bg |
|
|
176
|
-
| 30 | `#B1B8BE` | 카드·패널 보더 (subtle) | `--krds-color-border-gray-light` |
|
|
177
|
-
| 40 | `#8A949E` | bg-disabled, disabled badge | — |
|
|
178
|
-
| 50 | `#6D7882` | 보조 텍스트 (caption/meta) | — |
|
|
179
|
-
| 60 | `#58616A` | **표준 보더 (input·tertiary 버튼)** | `--krds-color-border-gray` |
|
|
180
|
-
| 70 | `#464C53` | 보조 텍스트 (placeholder, GNB 비활성) | `--krds-color-text-subtle` |
|
|
181
|
-
| 80 | `#33363D` | 강한 텍스트 / divider |
|
|
182
|
-
| 90 | `#1E2124` | **본문 / H1 텍스트** | `--krds-color-text-basic` |
|
|
183
|
-
| 95 | `#131416` | 다크 표면 |
|
|
184
|
-
| 100 | `#000000` | 절대 검정 (사용 빈도 낮음) |
|
|
185
|
-
|
|
186
|
-
### System Colors (Semantic)
|
|
187
|
-
|
|
188
|
-
| Role | 50 (base) | 5 (subtle bg) | 70 (deep text) | Token |
|
|
189
|
-
|------|-----------|----------------|------------------|-------|
|
|
190
|
-
| **Danger / Critical** | **`#DE3412`** | `#FDEFEC` | `#8A240F` | `--krds-color-light-danger-*` |
|
|
191
|
-
| **Warning** | `#9E6A00` (text) / `#FFB114` (30, bg) | `#FFF3DB` | `#614100` | `--krds-color-light-warning-*` |
|
|
192
|
-
| **Success** | **`#228738`** | `#EAF6EC` | `#285D33` | `--krds-color-light-success-*` |
|
|
193
|
-
| **Information** | `#0B78CB` | `#E7F4FE` | `#085691` | `--krds-color-light-information-*` |
|
|
194
|
-
| **Point (Accent — 정부 적색)** | `#D63D4A` | `#FBEFF0` | `#7A1F26` | `--krds-color-light-point-*` |
|
|
195
|
-
|
|
196
|
-
— Danger는 입력 검증·필수 오류·즉시 알림에 사용 (`border 2px solid #DE3412`).
|
|
197
|
-
— Warning은 노란색 톤이지만 텍스트로 쓰일 때는 콘트라스트 확보를 위해 `#9E6A00`(warning-50). 배경 50단계 `#FFB114` 위 텍스트는 `#1E2124`로 사용.
|
|
198
|
-
— Point(정부 적색)는 강조 배지·중요 알림에 매우 제한적으로 사용 (Select error 보더가 이 컬러: `#AB2B36`).
|
|
199
|
-
|
|
200
|
-
### Focus
|
|
201
|
-
|
|
202
|
-
- **Focus Ring**: `--krds-box-shadow-outline: 0 0 0 0.4rem #256EF4` (4px outline halo). 모든 인터랙티브 요소(버튼·input·select·체크박스·라디오·링크)에 일관 적용. 인셋 버전 `--krds-box-shadow-outline-inset: inset 0 0 0 0.2rem #256EF4`도 함께 정의.
|
|
203
|
-
- 정부 사이트는 키보드 사용자(스크린 리더 / 보조기기 사용자)가 첫 번째 사용자 그룹이므로 focus 가시성은 타협 항목이 아닙니다.
|
|
204
|
-
|
|
205
|
-
### 매직 넘버 (Magic Number)
|
|
206
|
-
|
|
207
|
-
KRDS 컬러 팔레트는 명도 단계 간 차이를 **WCAG 대비율과 직접 매핑**합니다:
|
|
208
|
-
- 매직넘버 40 → 3:1
|
|
209
|
-
- 매직넘버 50 → 4.5:1 (AA normal text 통과 기준)
|
|
210
|
-
- 매직넘버 70 → 7:1 (AAA)
|
|
211
|
-
- 매직넘버 90 → 15:1
|
|
212
|
-
|
|
213
|
-
이 매핑 덕분에 디자이너는 "primary-50 위 gray-0" 같은 조합을 선택하면 즉시 대비율을 보장받습니다.
|
|
214
|
-
|
|
215
|
-
## 3. Typography Rules
|
|
216
|
-
|
|
217
|
-
### Font Family
|
|
218
|
-
- **Primary**: `"Pretendard GOV", "Pretendard", -apple-system, BlinkMacSystemFont, "Apple SD Gothic Neo", "Noto Sans KR", sans-serif`
|
|
219
|
-
- **설계 원칙**: KRDS 전용 빌드인 **Pretendard GOV**는 라이선스가 명확하고(오픈 폰트), 한글·라틴·기호의 메트릭이 균일하여 정부 문서에서 자주 발생하는 혼용 표기(예: "민원 24", "행정 API")가 정렬·자간 어긋남 없이 표현됩니다. 라이브 페이지에서 `--krds-font-family-base: Pretendard GOV`로 확인됨.
|
|
220
|
-
- **확장형 스타일** (자체 폰트를 가진 기관의 경우): 노토 산스 / 나눔 고딕 / 스포카 한 산스 등 고딕 계열만 허용. 자체 폰트가 고딕이 아니면 본문·제목에 사용 금지.
|
|
221
|
-
|
|
222
|
-
### 3-Layer Type Scale
|
|
223
|
-
|
|
224
|
-
KRDS는 **Display / Heading / Body** 3계층 + Navigation / Label 시멘틱 토큰으로 구성됩니다. 모두 line-height 150%, regular 400 / bold 700 두 두께만 사용.
|
|
225
|
-
|
|
226
|
-
**Display** (마케팅 / 배너 전용 — 본문 사용 금지)
|
|
227
|
-
|
|
228
|
-
| Style | PC | Mobile | Weight | Letter-spacing |
|
|
229
|
-
|-------|----|---------|--------|------------------|
|
|
230
|
-
| Display Large | 60px | 44px | 700 | 1px |
|
|
231
|
-
| Display Medium | 44px | 32px | 700 | 1px |
|
|
232
|
-
| Display Small | 36px | 28px | 700 | 1px |
|
|
233
|
-
|
|
234
|
-
**Heading** (H1~H5)
|
|
235
|
-
|
|
236
|
-
| Style | PC | Mobile | Weight | Letter-spacing | 적용 |
|
|
237
|
-
|-------|----|---------|--------|------------------|------|
|
|
238
|
-
| Heading xlarge | **40px** | **28px** | 700 | 1px | H1 — 페이지 / 섹션 최상위 제목 |
|
|
239
|
-
| Heading large | 32px | 24px | 700 | 1px | H1 (좁은 페이지) / H2 |
|
|
240
|
-
| Heading medium | 24px | 22px | 700 | 0 | H2 / H3 |
|
|
241
|
-
| Heading small | 19px | 19px | 700 | 0 | H3 / H4 |
|
|
242
|
-
| Heading xsmall | 17px | 17px | 700 | 0 | H4 / H5 |
|
|
243
|
-
| Heading xxsmall | 15px | 15px | 700 | 0 | H5 |
|
|
244
|
-
|
|
245
|
-
**Body** (본문 — bold / regular 각 4단계)
|
|
246
|
-
|
|
247
|
-
| Style | Size | Weight | 적용 |
|
|
248
|
-
|-------|------|--------|------|
|
|
249
|
-
| Body large bold / large | 19px | 700 / 400 | 강조 본문 / 핵심 카피 |
|
|
250
|
-
| Body medium bold / **medium** | 17px | 700 / **400** | **표준 본문 (`<body>` 기본)** |
|
|
251
|
-
| Body small bold / small | 15px | 700 / 400 | 캡션 / 보조 / 작은 라벨 |
|
|
252
|
-
| Body xsmall bold / xsmall | 13px | 700 / 400 | 주석 / 메타 / 푸터 |
|
|
253
|
-
|
|
254
|
-
**Semantic Role Tokens** (Navigation / Label)
|
|
255
|
-
|
|
256
|
-
| Role | Style | PC | Weight |
|
|
257
|
-
|------|-------|----|---------|
|
|
258
|
-
| Navigation | title-large | 24px | 700 |
|
|
259
|
-
| Navigation | title-small | 19px (mobile 17) | 700 |
|
|
260
|
-
| Navigation | depth-medium-bold / depth-medium | 17px | 700 / 400 |
|
|
261
|
-
| Navigation | depth-small-bold / depth-small | 15px | 700 / 400 |
|
|
262
|
-
| Label (button / input / radio / checkbox) | large / medium / small / xsmall | 19 / 17 / 15 / 13 | 400 |
|
|
263
|
-
|
|
264
|
-
### Principles
|
|
265
|
-
- **두 굵기 원칙**: Regular(400)와 Bold(700)만 (`--krds-font-weight-regular`, `--krds-font-weight-bold`). Medium 단계 없음 — 정부 문서 톤의 절제.
|
|
266
|
-
- **17px가 본문 기본**: 일반적인 14~16px보다 살짝 큰 17px를 기본 본문으로 채택해 노안·저시력 사용자 가독성을 우선 (Pretendard GOV가 다른 서체 대비 작아 보이기 때문에 의도적으로 +1px).
|
|
267
|
-
- **줄간격 1.5 (150%)**: WCAG 1.4.12 Text Spacing AA를 준수해 모든 텍스트 line-height는 150% 이상.
|
|
268
|
-
- **사용자 직접 확대**: `--krds-zoom-{small, medium, large, xlarge, xxlarge} = 0.9 / 1 / 1.1 / 1.3 / 1.5`. 헤더의 "글자·화면 설정"에서 최대 150%까지 확대 가능. 브라우저 줌과 별개의 1차 컨트롤.
|
|
269
|
-
- **letter-spacing 0 (Display만 1px)**: 자간을 인위적으로 좁히지 않음 (`--krds-letter-spacing-none: 0rem`). 한글 가독성 우선.
|
|
270
|
-
- **rem 단위 기본**: 모든 토큰이 `rem` 단위. `font-size-base: 62.5%`로 1rem = 10px로 설정해 px↔rem 환산이 자명.
|
|
271
|
-
|
|
272
|
-
## 4. Component Stylings
|
|
273
|
-
|
|
274
|
-
KRDS 컴포넌트는 5단계 크기 토큰(xsmall/small/medium/large/xlarge)을 공유하며 모든 변형이 `aria-disabled` / 키보드 포커스 / 4px focus-ring halo를 기본 제공합니다. 각 variant 블록은 default 크기(Button=medium, Input=large, Select=large)의 측정값을 기준으로 하고, 크기 스케일은 표/프로즈로 보조합니다.
|
|
275
|
-
|
|
276
|
-
### Buttons
|
|
277
|
-
|
|
278
|
-
소스: `component_05_02.html`. 5단계 크기 × 6개 변형 = 30개 컴포넌트 슬롯.
|
|
279
|
-
|
|
280
|
-
**Primary**
|
|
281
|
-
- Background: `#256EF4`
|
|
282
|
-
- Text: `#FFFFFF`
|
|
283
|
-
- Border: 1px solid `#256EF4`
|
|
284
|
-
- Radius: 6px
|
|
285
|
-
- Padding: 0 16px
|
|
286
|
-
- Font: 17px / 400
|
|
287
|
-
- Hover: Primary 60 `#0B50D0` 배경
|
|
288
|
-
- Active: Primary 70 `#083891` 배경 (pressed)
|
|
289
|
-
- Disabled: Gray 20 `#CDD1D5` 배경 + Gray 50 `#6D7882` 텍스트 + cursor not-allowed
|
|
290
|
-
- Use: 핵심 액션 — "시작하기", "신청하기", "확인", "다음 단계" (한 화면당 1개 권장)
|
|
291
|
-
|
|
292
|
-
사이즈 스케일 (height / radius / padding / font):
|
|
293
|
-
- xsmall: 32px / 4px / 0 10px / 15px·400
|
|
294
|
-
- small: 40px / 6px / 0 12px / 15px·400
|
|
295
|
-
- medium (default): 48px / 6px / 0 16px / 17px·400
|
|
296
|
-
- large: 56px / 8px / 0 20px / 19px·400
|
|
297
|
-
- xlarge: 64px / 8px / 0 24px / 19px·400
|
|
298
|
-
|
|
299
|
-
**Secondary**
|
|
300
|
-
- Background: `#ECF2FE` (Primary 5)
|
|
301
|
-
- Text: `#0B50D0` (Primary 60)
|
|
302
|
-
- Border: 1px solid `#256EF4`
|
|
303
|
-
- Radius: 6px
|
|
304
|
-
- Padding: 0 16px
|
|
305
|
-
- Font: 17px / 400
|
|
306
|
-
- Use: 보조 액션 — "자세히 보기", "이전 단계", "다운로드" (Primary 옆 동일 위계, 사이즈 스케일 Primary와 동일 — radius 4/6/6/8/8)
|
|
307
|
-
|
|
308
|
-
**Tertiary (Outline)**
|
|
309
|
-
- Background: transparent
|
|
310
|
-
- Text: `#1E2124` (Gray 90)
|
|
311
|
-
- Border: 1px solid `#58616A` (Gray 60)
|
|
312
|
-
- Radius: 6px
|
|
313
|
-
- Padding: 0 16px
|
|
314
|
-
- Font: 17px / 400
|
|
315
|
-
- Hover: Gray 5 `#F4F5F6` 배경
|
|
316
|
-
- Use: 부가 / 취소 / 초기화 — "취소", "초기화", "닫기" (사이즈 스케일 Primary와 동일)
|
|
317
|
-
|
|
318
|
-
**Text / Link**
|
|
319
|
-
- Background: transparent
|
|
320
|
-
- Text: `#1E2124` (text variant) 또는 `#256EF4` (link variant)
|
|
321
|
-
- Border: 1px transparent (focus 시 가시화)
|
|
322
|
-
- Radius: 4~8px (크기별)
|
|
323
|
-
- Padding: 0 2px~9px (텍스트 흐름에 맞춤)
|
|
324
|
-
- Font: medium height 28px
|
|
325
|
-
- Use: 인라인 액션 — "파일 다운로드", "문의 및 건의", "찜하기"
|
|
326
|
-
|
|
327
|
-
**Icon Only**
|
|
328
|
-
- Background: transparent
|
|
329
|
-
- Text: `#1E2124`
|
|
330
|
-
- Radius: 6~8px (크기별)
|
|
331
|
-
- Padding: 0 (icon-size 1.6/2/2.4rem = 16/20/24px, `--krds-icon--size-*`)
|
|
332
|
-
- Use: 단독 아이콘 컨트롤 — 검색 / 닫기 / 도움말 토글
|
|
333
|
-
|
|
334
|
-
**Icon + Border**
|
|
335
|
-
- Background: `#FFFFFF`
|
|
336
|
-
- Text: `#1E2124`
|
|
337
|
-
- Border: 1px solid `#B1B8BE` (Gray 30)
|
|
338
|
-
- Radius: 1000px (`--krds-radius-max`, 원형)
|
|
339
|
-
- Use: 보조 컨트롤 — "새로고침", "맨 위로"
|
|
340
|
-
|
|
341
|
-
**Floating**
|
|
342
|
-
- Background: Primary `#256EF4`
|
|
343
|
-
- Text: `#FFFFFF`
|
|
344
|
-
- Radius: 1000px (원형)
|
|
345
|
-
- Shadow: 약한 box-shadow
|
|
346
|
-
- Use: 페이지 우하단 부유 액션 — "맨 위로 / 챗봇 / 음성지원" (스크롤 시 표시, `component_05_03.html`)
|
|
347
|
-
|
|
348
|
-
### Inputs
|
|
349
|
-
|
|
350
|
-
소스: `component_09_*.html`. 5단계 크기 + 4단계 상태. Default = large.
|
|
351
|
-
|
|
352
|
-
**Text Input**
|
|
353
|
-
- Background: `#FFFFFF`
|
|
354
|
-
- Text: `#464C53` (Gray 70, placeholder 포함)
|
|
355
|
-
- Border: 1px solid `#58616A`
|
|
356
|
-
- Radius: 8px
|
|
357
|
-
- Padding: 0 16px
|
|
358
|
-
- Font: 19px / 400
|
|
359
|
-
- Focus: 보더 유지 + `box-shadow: 0 0 0 4px #256EF4` halo (focus ring)
|
|
360
|
-
- Disabled: bg `#CDD1D5` (Gray 20) / text `#6D7882` (Gray 50) / border 1px `#B1B8BE` (Gray 30) / `aria-disabled="true"`
|
|
361
|
-
- Use: 일반 텍스트 입력 (`component_09_03.html`) — height 56px default
|
|
362
|
-
|
|
363
|
-
상태 — Required: 라벨 옆 빨간 별표(`*` Danger 50 `#DE3412`) + `aria-required="true"`. Error: border 2px solid `#DE3412` + helper text Danger 50 + `aria-invalid="true"` + 에러 영역 자동 포커스 이동.
|
|
364
|
-
|
|
365
|
-
사이즈 스케일 (height / radius / padding / font / border):
|
|
366
|
-
| Size | Height | Radius | Padding | Font | 기본 보더 |
|
|
367
|
-
|------|--------|--------|----------|------|-----------|
|
|
368
|
-
| xsmall | 32px | 4px | 0 12px | 13px·400 | 1px `#58616A` |
|
|
369
|
-
| small | 40px | 6px | 0 16px | 15px·400 | 1px `#58616A` |
|
|
370
|
-
| medium | 48px | 6px | 0 16px | 17px·400 | 1px `#58616A` |
|
|
371
|
-
| **large (default)** | **56px** | **8px** | 0 16px | **19px·400** | 1px `#58616A` |
|
|
372
|
-
| xlarge | 80px | 10px | 0 24px | 24px·700 | 1px `#58616A` |
|
|
373
|
-
|
|
374
|
-
**Textarea**
|
|
375
|
-
- Background: `#FFFFFF`
|
|
376
|
-
- Text: `#464C53`
|
|
377
|
-
- Border: 1px solid `#58616A`
|
|
378
|
-
- Radius: 8px
|
|
379
|
-
- Padding: 0 16px
|
|
380
|
-
- Font: 19px / 400
|
|
381
|
-
- Use: 다행 입력 (`component_09_02.html`) — Text Input과 동일 토큰 + 기본 높이 14.4rem (144px), 자동 리사이즈 비권장
|
|
382
|
-
|
|
383
|
-
**Date Input**
|
|
384
|
-
- Background: `#FFFFFF`
|
|
385
|
-
- Text: `#464C53`
|
|
386
|
-
- Border: 1px solid `#58616A`
|
|
387
|
-
- Radius: 8px
|
|
388
|
-
- Padding: 0 16px
|
|
389
|
-
- Font: 19px / 400
|
|
390
|
-
- Use: 날짜 입력 (`component_09_01.html`) — Text Input + 캘린더 아이콘 + Calendar 컴포넌트(`component_04_03.html`) 연동, `YYYY-MM-DD` 또는 분리형 (`YYYY / MM / DD` 셋 박스)
|
|
391
|
-
|
|
392
|
-
**File Upload**
|
|
393
|
-
- Background: `#FFFFFF`
|
|
394
|
-
- Text: `#1E2124`
|
|
395
|
-
- Border: 1px solid `#58616A`
|
|
396
|
-
- Radius: 8px
|
|
397
|
-
- Padding: 0 16px
|
|
398
|
-
- Use: 파일 첨부 (`component_09_04.html`) — Tertiary 버튼 + 파일명 표시 영역 + 진행 표시기 + 삭제 칩
|
|
399
|
-
|
|
400
|
-
### Select
|
|
401
|
-
|
|
402
|
-
소스: `component_06_03.html`. 네이티브 `<select class="krds-form-select">` 기반. Default = large.
|
|
403
|
-
|
|
404
|
-
**Select**
|
|
405
|
-
- Background: `#FFFFFF`
|
|
406
|
-
- Text: `#1E2124`
|
|
407
|
-
- Border: 1px solid `#58616A`
|
|
408
|
-
- Radius: 6px
|
|
409
|
-
- Padding: 0 48px 0 16px (우측 chevron 영역)
|
|
410
|
-
- Font: 19px / 400
|
|
411
|
-
- Disabled: bg `#CDD1D5` + border `#B1B8BE`
|
|
412
|
-
- Use: 옵션 선택 — Error border 2px solid `#AB2B36` (Point 60 — 셀렉트는 Danger가 아닌 Point를 사용해 입력 폼과 시각 구분). Completed (값 선택 후): 보더 유지, 텍스트 진해짐.
|
|
413
|
-
|
|
414
|
-
사이즈 스케일 (height / radius / padding-right / font):
|
|
415
|
-
| Size | Height | Radius | Padding-right (chevron) | Font |
|
|
416
|
-
|------|--------|--------|-------------------------|------|
|
|
417
|
-
| small | 40px | 8px | 40px | 15px·400 |
|
|
418
|
-
| medium | 48px | 6px | 44px | 17px·400 |
|
|
419
|
-
| **large (default)** | **56px** | **6px** | **48px** | **19px·400** |
|
|
420
|
-
|
|
421
|
-
### Toggles
|
|
422
|
-
|
|
423
|
-
체크박스 · 라디오 · 토글 스위치 (`component_06_01.html` / `06_02` / `06_07`).
|
|
424
|
-
|
|
425
|
-
**Checkbox**
|
|
426
|
-
- Background: `#FFFFFF` (Checked: `#256EF4`)
|
|
427
|
-
- Text: `#FFFFFF` (check 아이콘)
|
|
428
|
-
- Border: 1px solid `#58616A`
|
|
429
|
-
- Radius: 4px
|
|
430
|
-
- Padding: 16/20/24px 정사각
|
|
431
|
-
- Use: 다중 선택 — Checked 배경 `#256EF4` + 흰색 check 아이콘. Indeterminate / Error / Disabled 상태 제공.
|
|
432
|
-
|
|
433
|
-
**Radio**
|
|
434
|
-
- Background: `#FFFFFF`
|
|
435
|
-
- Text: `#256EF4` (내부 dot)
|
|
436
|
-
- Border: 1px solid `#58616A` (Checked: 외곽 `#256EF4`)
|
|
437
|
-
- Radius: 1000px (원형)
|
|
438
|
-
- Padding: 16/20/24px 원
|
|
439
|
-
- Use: 단일 선택 — 그룹 단위 키보드 탐색 (`role="radiogroup"`)
|
|
440
|
-
|
|
441
|
-
**Toggle Switch**
|
|
442
|
-
- Background: `#B1B8BE` (Off) / `#256EF4` (On)
|
|
443
|
-
- Text: `#FFFFFF` (thumb)
|
|
444
|
-
- Radius: max (pill, 트랙 32px 폭 / 16px 높이)
|
|
445
|
-
- Disabled: bg `#CDD1D5`
|
|
446
|
-
- Use: 켜기/끄기 토글 — On 시 흰색 thumb 우측 이동
|
|
447
|
-
|
|
448
|
-
### Cards
|
|
449
|
-
|
|
450
|
-
소스: `component_04_*.html`. 표면(surface) 컴포넌트 모음.
|
|
451
|
-
|
|
452
|
-
**Standard Panel**
|
|
453
|
-
- Background: `#FFFFFF`
|
|
454
|
-
- Border: 1px solid `#B1B8BE` (Gray 30)
|
|
455
|
-
- Radius: 8px
|
|
456
|
-
- Padding: 24px (`--krds-padding-8`)
|
|
457
|
-
- Shadow: none — 보더로 영역 구분
|
|
458
|
-
- Use: 일반 콘텐츠 카드, 본문 내 모듈
|
|
459
|
-
|
|
460
|
-
**Info Panel (Light Primary)**
|
|
461
|
-
- Background: `#ECF2FE` (Primary 5)
|
|
462
|
-
- Text: 강조 `#0B50D0` + 본문 `#1E2124`
|
|
463
|
-
- Border: none
|
|
464
|
-
- Radius: 8px
|
|
465
|
-
- Padding: 16px 24px (`--krds-padding-6 --krds-padding-8`)
|
|
466
|
-
- Use: 안내·도움말 패널 — "이 페이지에서는…", "도움말", 정보성 알림
|
|
467
|
-
|
|
468
|
-
**Critical Alert**
|
|
469
|
-
- Background: `#DE3412` (Danger 50)
|
|
470
|
-
- Text: `#FFFFFF`
|
|
471
|
-
- Radius: 0 (풀-블리드)
|
|
472
|
-
- Padding: 페이지 폭 가득
|
|
473
|
-
- Use: 페이지 상단 풀-블리드 긴급 공지 배너 (`component_04_02.html`) — 모바일 헤더 긴급 배지 높이 3.9rem (`--krds-critical-alerts--mobile-badge-size-height`)
|
|
474
|
-
|
|
475
|
-
**Accordion**
|
|
476
|
-
- Background: `#FFFFFF`
|
|
477
|
-
- Text: `#1E2124`
|
|
478
|
-
- Border: 1px solid `#B1B8BE`
|
|
479
|
-
- Radius: 8px
|
|
480
|
-
- Use: 보더 분리 disclosure 패널 (`component_04_07.html` / `04_04`) — max-height 400ms ease 전환
|
|
481
|
-
|
|
482
|
-
### Modals
|
|
483
|
-
|
|
484
|
-
**Modal**
|
|
485
|
-
- Background: `#FFFFFF`
|
|
486
|
-
- Text: `#1E2124`
|
|
487
|
-
- Radius: 12px (`--krds-radius-xlarge1`)
|
|
488
|
-
- Padding: 40px (`--krds-padding-10`)
|
|
489
|
-
- Shadow: `0 0.2rem 0 0 rgba(0,0,0,a1), 0 0.4rem 0.8rem 0 rgba(0,0,0,a2)` (드롭다운·툴팁과 공유)
|
|
490
|
-
- Use: 다이얼로그 (`component_04_05.html`) — "글자·화면 표시 설정", "전체 메뉴", 양식 확인. Min-height 264px. 백드롭 fade-in 400ms / opacity 0→0.5 black.
|
|
491
|
-
|
|
492
|
-
사이즈 (`--krds-modal--size-*`): small 400px / medium 560px / large 760px.
|
|
493
|
-
|
|
494
|
-
### Badges
|
|
495
|
-
|
|
496
|
-
소스: `component_04_06.html`. outline / bg(filled) × 9개 의미 = 18개 변형. 모두 동일 형태: radius 4px / padding 0 8px / 15px·400 / height 24px.
|
|
497
|
-
|
|
498
|
-
**Primary**
|
|
499
|
-
- Background: `#256EF4` (filled) / transparent (outline)
|
|
500
|
-
- Text: `#FFFFFF` (filled) / `#0B50D0` (outline)
|
|
501
|
-
- Border: 1px solid `#256EF4` (outline)
|
|
502
|
-
- Radius: 4px
|
|
503
|
-
- Padding: 0 8px
|
|
504
|
-
- Font: 15px / 400
|
|
505
|
-
- Use: 콘텐츠 분류, 액션 강조
|
|
506
|
-
|
|
507
|
-
**Secondary**
|
|
508
|
-
- Background: `#063A74` (filled) / transparent (outline)
|
|
509
|
-
- Text: `#FFFFFF` (filled) / `#052B57` (outline)
|
|
510
|
-
- Border: 1px solid `#052B57` (outline)
|
|
511
|
-
- Radius: 4px
|
|
512
|
-
- Padding: 0 8px
|
|
513
|
-
- Font: 15px / 400
|
|
514
|
-
- Use: 카테고리 그룹
|
|
515
|
-
|
|
516
|
-
**Gray**
|
|
517
|
-
- Background: `#6D7882` (filled) / transparent (outline)
|
|
518
|
-
- Text: `#FFFFFF` (filled) / `#464C53` (outline)
|
|
519
|
-
- Border: 1px solid `#464C53` (outline)
|
|
520
|
-
- Radius: 4px
|
|
521
|
-
- Padding: 0 8px
|
|
522
|
-
- Font: 15px / 400
|
|
523
|
-
- Use: 메타 / 일반 분류
|
|
524
|
-
|
|
525
|
-
**Point**
|
|
526
|
-
- Background: `#D63D4A` (filled) / transparent (outline)
|
|
527
|
-
- Text: `#FFFFFF` (filled) / `#AB2B36` (outline)
|
|
528
|
-
- Border: 1px solid `#AB2B36` (outline)
|
|
529
|
-
- Radius: 4px
|
|
530
|
-
- Padding: 0 8px
|
|
531
|
-
- Font: 15px / 400
|
|
532
|
-
- Use: 강조 / 신규 / 중요 (적색 포인트)
|
|
533
|
-
|
|
534
|
-
**Danger**
|
|
535
|
-
- Background: `#DE3412` (filled) / transparent (outline)
|
|
536
|
-
- Text: `#FFFFFF` (filled) / `#BD2C0F` (outline)
|
|
537
|
-
- Border: 1px solid `#BD2C0F` (outline)
|
|
538
|
-
- Radius: 4px
|
|
539
|
-
- Padding: 0 8px
|
|
540
|
-
- Font: 15px / 400
|
|
541
|
-
- Use: 오류 / 반려
|
|
542
|
-
|
|
543
|
-
**Warning**
|
|
544
|
-
- Background: `#FFB114` (filled) / transparent (outline)
|
|
545
|
-
- Text: `#1E2124` (filled — warning 50 배경 위 텍스트는 검정으로 대비 확보) / `#8A5C00` (outline)
|
|
546
|
-
- Border: 1px solid `#8A5C00` (outline)
|
|
547
|
-
- Radius: 4px
|
|
548
|
-
- Padding: 0 8px
|
|
549
|
-
- Font: 15px / 400
|
|
550
|
-
- Use: 주의
|
|
551
|
-
|
|
552
|
-
**Success**
|
|
553
|
-
- Background: `#228738` (filled) / transparent (outline)
|
|
554
|
-
- Text: `#FFFFFF` (filled) / `#267337` (outline)
|
|
555
|
-
- Border: 1px solid `#267337` (outline)
|
|
556
|
-
- Radius: 4px
|
|
557
|
-
- Padding: 0 8px
|
|
558
|
-
- Font: 15px / 400
|
|
559
|
-
- Use: 완료 / 성공
|
|
560
|
-
|
|
561
|
-
**Information**
|
|
562
|
-
- Background: `#0B78CB` (filled) / transparent (outline)
|
|
563
|
-
- Text: `#FFFFFF` (filled) / `#096AB3` (outline)
|
|
564
|
-
- Border: 1px solid `#096AB3` (outline)
|
|
565
|
-
- Radius: 4px
|
|
566
|
-
- Padding: 0 8px
|
|
567
|
-
- Font: 15px / 400
|
|
568
|
-
- Use: 안내 / 진행 중
|
|
569
|
-
|
|
570
|
-
**Disabled**
|
|
571
|
-
- Background: `#8A949E` (filled) / transparent (outline)
|
|
572
|
-
- Text: `#FFFFFF` (filled) / `#6D7882` (outline)
|
|
573
|
-
- Border: 1px solid `#6D7882` (outline)
|
|
574
|
-
- Radius: 4px
|
|
575
|
-
- Padding: 0 8px
|
|
576
|
-
- Font: 15px / 400
|
|
577
|
-
- Use: 비활성
|
|
578
|
-
|
|
579
|
-
**Tag (필터 칩)**
|
|
580
|
-
- Background: `#FFFFFF` (Selected: `#ECF2FE`)
|
|
581
|
-
- Text: `#1E2124` (Selected: `#0B50D0`)
|
|
582
|
-
- Border: 1px solid `#CDD1D5` (Gray 20, Selected: `#256EF4`)
|
|
583
|
-
- Radius: pill (height와 동일)
|
|
584
|
-
- Padding: 8px 10px (medium)
|
|
585
|
-
- Font: 15px / 400 (medium)
|
|
586
|
-
- Use: 선택 가능한 필터 chip (`component_06_04.html`) — 삭제 버튼(`btn-delete`)이 우측에 위치
|
|
587
|
-
|
|
588
|
-
사이즈 스케일 (height / radius / padding / font):
|
|
589
|
-
| Size | Height | Radius | Padding | Font |
|
|
590
|
-
|------|--------|--------|----------|------|
|
|
591
|
-
| large | 40px | 40px (pill) | 8px 12px | 17px·400 |
|
|
592
|
-
| medium | 32px | 32px (pill) | 8px 10px | 15px·400 |
|
|
593
|
-
| small | 24px | 24px (pill) | 8px | 13px·400 |
|
|
594
|
-
|
|
595
|
-
추가로 **bg-light-\*** (`#ECF2FE` 등 5단계 배경 + 60단계 텍스트) 변형이 있어 부드러운 분류 라벨에 사용 (홈 배지 "아이덴티티" / "서비스 패턴" 등).
|
|
596
|
-
|
|
597
|
-
### Tabs
|
|
598
|
-
|
|
599
|
-
소스: `component_04_10.html`. 수평 탭 라인 + 키보드 좌우 탐색 (`role="tablist"` / `aria-selected`).
|
|
600
|
-
|
|
601
|
-
**Horizontal Tab**
|
|
602
|
-
- Background: transparent
|
|
603
|
-
- Text: `#464C53` / 400 (비활성), `#256EF4` / 700 (활성)
|
|
604
|
-
- Border: 활성 하단 2px solid `#256EF4`
|
|
605
|
-
- Use: 페이지 내 섹션 전환 — 활성 탭만 하단 보더 강조
|
|
606
|
-
|
|
607
|
-
### Toasts
|
|
608
|
-
|
|
609
|
-
모바일 알림 — `component_12_05.html` / `component_12_06.html`.
|
|
610
|
-
|
|
611
|
-
**Toast**
|
|
612
|
-
- Background: `#1E2124`
|
|
613
|
-
- Text: `#FFFFFF`
|
|
614
|
-
- Radius: 8px
|
|
615
|
-
- Padding: 16px
|
|
616
|
-
- Use: 화면 중앙 또는 하단 카드 — 3초 자동 닫힘
|
|
617
|
-
|
|
618
|
-
**Snackbar**
|
|
619
|
-
- Background: `#1E2124`
|
|
620
|
-
- Text: `#FFFFFF`
|
|
621
|
-
- Radius: 0 (풀-블리드 띠)
|
|
622
|
-
- Padding: 16px
|
|
623
|
-
- Use: 하단 풀-블리드 띠 — 액션 버튼 포함 가능 (예: "되돌리기"), 4초 자동 닫힘
|
|
624
|
-
|
|
625
|
-
### Tooltips
|
|
626
|
-
|
|
627
|
-
소스: `component_08_*`.
|
|
628
|
-
|
|
629
|
-
**Tooltip**
|
|
630
|
-
- Background: `#1E2124`
|
|
631
|
-
- Text: `#FFFFFF`
|
|
632
|
-
- Radius: 12px
|
|
633
|
-
- Padding: 8px
|
|
634
|
-
- Use: 보조 설명 — 화살표 8px / 400ms fade
|
|
635
|
-
|
|
636
|
-
**Help Panel**
|
|
637
|
-
- Background: `#FFFFFF`
|
|
638
|
-
- Text: `#1E2124`
|
|
639
|
-
- Border: 1px solid `#B1B8BE`
|
|
640
|
-
- Use: 우측에서 슬라이드-인 측면 패널 — 폼 도움말·정책 안내 (우측 영역에서 펼쳐짐)
|
|
641
|
-
|
|
642
|
-
**Coachmark**
|
|
643
|
-
- Background: rgba(0,0,0,0.5) overlay + `#FFFFFF` 카드
|
|
644
|
-
- Text: `#1E2124`
|
|
645
|
-
- Radius: 8px
|
|
646
|
-
- Use: 페이지 첫 방문 시 단계별 가이드 오버레이 + 점진적 disclosure
|
|
647
|
-
|
|
648
|
-
### Pagination / Breadcrumb / Side Menu
|
|
649
|
-
|
|
650
|
-
보조 내비게이션 (`component_03_*`). 캐노니컬 스키마에 1:1로 대응하지 않아 프로즈로 보존합니다.
|
|
651
|
-
|
|
652
|
-
- **Pagination**: 숫자 버튼 40×40 / 활성 `#256EF4` 배경 + 흰색 / hover gray 5
|
|
653
|
-
- **Breadcrumb**: 13px·400 / `#464C53` / `>` 구분자 / 마지막 항목 `#1E2124` (현재 위치)
|
|
654
|
-
- **Side Menu**: 좌측 고정 / 활성 항목 좌측 4px bar `#256EF4` + 배경 `#ECF2FE` + 텍스트 `#0B50D0`/700
|
|
655
|
-
|
|
656
|
-
### Step Indicator / Spinner
|
|
657
|
-
|
|
658
|
-
진행 표시 (`component_07_*`). 캐노니컬 variant에 매핑되지 않으므로 프로즈로만 기록합니다 (참고용).
|
|
659
|
-
|
|
660
|
-
- **단계 표시기**: 1→2→3 진행 표시. 활성 단계 `#256EF4` 배경 + 흰색 번호. 완료 단계 `#228738`(Success) 체크. 비활성 `#CDD1D5` 배경 + `#6D7882` 번호.
|
|
661
|
-
- **스피너**: 24/32/48px 원형 + `#256EF4` arc / `prefers-reduced-motion`에서 정적 상태 점선으로 대체.
|
|
662
|
-
|
|
663
|
-
### Mobile-only
|
|
664
|
-
|
|
665
|
-
소스: `component_12_*`. 뒤로가기 / 바텀시트 / 수량토글 / 토스트 / 스낵바 / 탭바 / 스플래시 스크린 / 범위 슬라이더 — 위 Toasts 등 해당 variant에서 다룹니다.
|
|
666
|
-
|
|
667
|
-
§4 노트 — 모든 컴포넌트는 `--krds-light-*` (일반 모드)와 `--krds-high-contrast-*` (선명한 화면 모드) 두 토큰 레이어를 동시에 가지며, 다크 모드 전환은 같은 컴포넌트가 토큰만 바꿔 끼우는 방식으로 동작합니다.
|
|
668
|
-
|
|
669
|
-
## 5. Layout Principles
|
|
670
|
-
|
|
671
|
-
### Spacing System — 8-Point Grid
|
|
672
|
-
|
|
673
|
-
`--krds-padding-*` 스케일 (라이브 토큰):
|
|
674
|
-
|
|
675
|
-
| Token | Value | Use |
|
|
676
|
-
|-------|-------|-----|
|
|
677
|
-
| padding-1 | 2px | hairline 간격 |
|
|
678
|
-
| padding-2 | 4px | 아이콘 inner padding |
|
|
679
|
-
| padding-3 | 8px | 배지·태그 padding |
|
|
680
|
-
| padding-4 | 10px | xsmall button padding |
|
|
681
|
-
| padding-5 | 12px | small button padding |
|
|
682
|
-
| padding-6 | 16px | input padding / info panel vertical |
|
|
683
|
-
| padding-7 | 20px | large button padding |
|
|
684
|
-
| padding-8 | 24px | **표준 콘텐츠 padding / gutter** |
|
|
685
|
-
| padding-9 | 32px | 섹션 간 여백 |
|
|
686
|
-
| padding-10 | 40px | **모달 padding** |
|
|
687
|
-
|
|
688
|
-
모든 값이 8-pt grid의 배수(2/4/8/16/24/32/40) 또는 KRDS 보조 단위(10/12/20). 컴포넌트 내부 패딩은 padding-6 (16px), padding-8 (24px), padding-10 (40px)이 표준.
|
|
689
|
-
|
|
690
|
-
### Grid & Container — Breakpoints
|
|
691
|
-
|
|
692
|
-
| Name | Viewport | Columns | Gutter | Screen Margin |
|
|
693
|
-
|------|----------|---------|--------|----------------|
|
|
694
|
-
| small | 360px~ | 4 | 16px | 16px |
|
|
695
|
-
| medium | 768px~ | 8 | 16px | 24px |
|
|
696
|
-
| **large** | **1024px~** | **12** | **24px** | **24px** |
|
|
697
|
-
| xlarge | 1280px~ | 12 | 24px | 24px |
|
|
698
|
-
|
|
699
|
-
- 데스크톱: **콘텐츠 영역 최대 1200px** (`--krds-contents-size`), 가운데 정렬, 좌우 24px gutter — 1248px 디바이스 이상에서 폭 고정, 미만에서는 비례 축소
|
|
700
|
-
- 표준형 스타일은 xsmall(<360px)를 최적화 대상에서 제외
|
|
701
|
-
- 확장형 스타일 (자유 폭): 3~6단계 브레이크포인트로 가변, 단 컬럼/가터/마진 규칙은 동일
|
|
702
|
-
|
|
703
|
-
### Sub-page Layout
|
|
704
|
-
|
|
705
|
-
브레이크포인트 large 이상에서 다음 5 영역으로 구성:
|
|
706
|
-
1. **Header** — GNB + 유틸리티 (글자·화면 설정 / 검색 / 전체메뉴)
|
|
707
|
-
2. **Left menu (선택)** — 사이드 메뉴 (깊은 IA)
|
|
708
|
-
3. **Main contents** — 본문 (콘텐츠 내 탐색 anchor 포함)
|
|
709
|
-
4. **Right menu (선택)** — 콘텐츠 내 탐색 (플로팅) / 도움 패널 (slide-in)
|
|
710
|
-
5. **Footer** — 운영기관 식별자 + 정책 링크 + 면책 + 공식 배너
|
|
711
|
-
|
|
712
|
-
### Whitespace Philosophy
|
|
713
|
-
- **밀도 < 여백**: 정부 사이트는 한 화면에 많은 정보를 보여줘야 하지만, KRDS는 그 안에서도 **충분한 vertical rhythm**을 유지합니다. 섹션 간 64~80px (padding-9 + padding-10 조합)의 여백이 시각적 피로를 줄입니다.
|
|
714
|
-
- **그림자보다 보더**: 영역 분리는 거의 항상 1px 보더(`#58616A` 강 / `#B1B8BE` 약 / `#CDD1D5` 부드러움)와 라운드로 처리. 그림자는 모달 / 드롭다운 / 툴팁에만 한정.
|
|
715
|
-
- **GNB 56px / x-large CTA 64px**: 헤더 높이와 핵심 액션 높이가 비례 — 누르기 쉬운 크기를 우선.
|
|
716
|
-
|
|
717
|
-
### Border Radius Scale (라이브 토큰)
|
|
718
|
-
- 2px (`--krds-radius-xsmall1/2/3`): xsmall input / 미세 요소
|
|
719
|
-
- 4px (`--krds-radius-small1/2/3`): 배지 / xsmall 버튼
|
|
720
|
-
- 6px (`--krds-radius-medium1/2`): small·medium 버튼 / small select
|
|
721
|
-
- 8px (`--krds-radius-medium3/4`): **표준 라운드** — 패널 / 카드 / large·xlarge 버튼 / 표준 input
|
|
722
|
-
- 10px (`--krds-radius-large1/2`): xlarge input (검색)
|
|
723
|
-
- 12px (`--krds-radius-xlarge1/2`): **모달**
|
|
724
|
-
- 1000px (`--krds-radius-max`): 원형 컨트롤 / pill 태그
|
|
725
|
-
|
|
726
|
-
### Basic Patterns (KRDS 기본 패턴)
|
|
727
|
-
|
|
728
|
-
KRDS는 컴포넌트보다 상위 단위로 **12개 기본 패턴(Basic Patterns)**을 공식 운영합니다 — 컴포넌트 조합으로 반복되는 핵심 과업을 수행하는 인터페이스 세트입니다 ([기본 패턴 summary](https://www.krds.go.kr/html/site/global/global_summary.html)). 모든 패턴은 페이지 레이아웃 구성 규칙으로 작동하며, "사용성·접근성·인터랙션 가이드·플랫폼 고려사항"을 함께 명시합니다.
|
|
729
|
-
|
|
730
|
-
| # | 패턴 | URL | 1-line purpose |
|
|
731
|
-
|---|------|-----|----------------|
|
|
732
|
-
| 1 | 개인 식별 정보 입력 | `global/global_01.html` | 성명·생년월일·연락처 등 PII 수집 — 수집 필요성·목적 명시 + 접근 가능한 입력 방식 |
|
|
733
|
-
| 2 | 도움 (Help) | `global/global_02.html` | 사용자 숙련도에 맞춰 인터페이스 작동·과업 플로 안내를 제공 |
|
|
734
|
-
| 3 | 동의 (Consent) | `global/global_03.html` | 약관 열람·동의 표시 + 안내 정보 확인 인터페이스 |
|
|
735
|
-
| 4 | 목록 탐색 | `global/global_04.html` | 관련 데이터를 리스트로 구성 — 일관된 포맷 + 특정 항목에 대한 액션 |
|
|
736
|
-
| 5 | 사용자 피드백 | `global/global_05.html` | 화면·기능에 대한 평가·민원·제안을 주 과업을 방해하지 않고 수집 |
|
|
737
|
-
| 6 | 상세 정보 확인 | `global/global_06.html` | 상세 페이지의 콘텐츠 구조·시각 위계·복수 콘텐츠 포맷 표시 표준 |
|
|
738
|
-
| 7 | 오류 (Error) | `global/global_07.html` | 시스템 과업 실패 시 표시 방식·사용성·접근성 요건 |
|
|
739
|
-
| 8 | 입력폼 (Input Form) | `global/global_08.html` | 1개 이상의 입력 컨트롤로 구성된 데이터 입력·전송 섹션 |
|
|
740
|
-
| 9 | 첨부파일 | `global/global_09.html` | 다운로드 가능한 첨부 파일 표시 — 링크 유형·접근성·인터랙션 |
|
|
741
|
-
| 10 | 필터링·정렬 | `global/global_10.html` | 사용자 속성·기준에 따라 데이터 항목을 선택적으로 표시·정렬 |
|
|
742
|
-
| 11 | 확인 (Confirmation) | `global/global_11.html` | 되돌릴 수 없는 결과를 가진 행위 직전에 의도 재확인 다이얼로그 |
|
|
743
|
-
| 12 | 모바일 알림 | `global/global_12.html` | 푸시 알림 / 인앱 알림 / 알림 센터 — 서비스 변경·진행 안내 |
|
|
744
|
-
|
|
745
|
-
§4 컴포넌트(버튼·입력·셀렉트·모달 등)는 위 12개 패턴의 빌딩 블록이며, 페이지 레이아웃은 패턴 단위로 구성됩니다 — 예: 신청 페이지 = `입력폼 + 첨부파일 + 확인 + 오류` 패턴 결합.
|
|
746
|
-
|
|
747
|
-
### Service Patterns (KRDS 서비스 패턴)
|
|
748
|
-
|
|
749
|
-
기본 패턴이 페이지 단위 컴포지션이라면 **서비스 패턴 5종**은 **사용자 여정(user-journey blueprint)**입니다 — 시민이 정부 디지털 서비스를 이용하는 전형적 시나리오를 단계별로 정의합니다 ([서비스 패턴 summary](https://www.krds.go.kr/html/site/service/service_summary.html)).
|
|
750
|
-
|
|
751
|
-
| # | 패턴 | URL | Journey nodes |
|
|
752
|
-
|---|------|-----|----------------|
|
|
753
|
-
| 1 | **방문 (Visit)** | `service/service_01_01.html` | 정보 탐색 → 정보 이해 → 이동(외부 서비스 / 내부 IA). 첫인상이 형성되는 메인 화면에서 시작. |
|
|
754
|
-
| 2 | **검색 (Search)** | `service/service_02_01.html` | 검색어 입력 → 결과 개수 확인 → 목록 탐색 → 결과 활용 → 재검색 / 상세검색 → 종료. 7단계. |
|
|
755
|
-
| 3 | **로그인 (Login)** | `service/service_03_01.html` | 로그인 방식 선택 (지식·소유·생체·다요소) → 정보 입력 → 완료 → 로그아웃(사용자 / 자동 만료). |
|
|
756
|
-
| 4 | **신청 (Application)** | `service/service_04_01.html` | 대상 탐색 → 다단계 양식 작성 (자동입력·임시저장·첨부) → 확인 → 처리 결과 추적. 복지 / 세액 / 발급 / 예약 포함. |
|
|
757
|
-
| 5 | **정책정보 확인** | `service/service_05_01.html` | 정책 상세 검토 → 관련 자료 참조(보고서·매뉴얼·법령). 신규 / 갱신 자료 구분. |
|
|
758
|
-
|
|
759
|
-
서비스 패턴은 **3단계 준수 수준 (필수 / 권장 / 우수)** 체크리스트로 평가됩니다 — 모든 정부 사이트는 최소 "필수" 항목을 충족해야 합니다.
|
|
760
|
-
|
|
761
|
-
## 6. Depth & Elevation
|
|
762
|
-
|
|
763
|
-
KRDS는 별도 elevation 페이지(`style_08.html`)를 두지만 실제 사용은 4단계로 제한됩니다.
|
|
764
|
-
|
|
765
|
-
| Level | Treatment | Use |
|
|
766
|
-
|-------|-----------|-----|
|
|
767
|
-
| Flat (0) | 그림자 없음 | 페이지 콘텐츠, 카드, 패널, 입력, 버튼 — 거의 모든 표면 |
|
|
768
|
-
| Border-only (1) | `1px solid #B1B8BE` 또는 `#CDD1D5` | 카드 / 표 / 입력 — 영역 분리는 보더로 |
|
|
769
|
-
| Drop (2) | `0 0.2rem 0 0 rgba(0,0,0,a1), 0 0.4rem 0.8rem 0 rgba(0,0,0,a2)` | 드롭다운, 툴팁 |
|
|
770
|
-
| Modal (3) | 동일 + 12px radius + 백드롭 black/0.5 fade | 모달 다이얼로그만 |
|
|
771
|
-
| Focus halo | `0 0 0 4px #256EF4` (focus ring — depth는 아니지만 z-stack 최상위) | 모든 인터랙티브 |
|
|
772
|
-
|
|
773
|
-
**그림자 철학**: 정부 사이트는 "층위가 많아 보이는" 화면을 피합니다. 시각적 평탄성(visual flatness)이 신뢰감과 예측 가능성을 만든다는 가정 — Material식 elevation 6단계가 아니라 사실상 0/1/2/3 4단계로 충분합니다.
|
|
774
|
-
|
|
775
|
-
## 7. Do's and Don'ts
|
|
776
|
-
|
|
777
|
-
### Do
|
|
778
|
-
- 정부 블루(`#256EF4`)는 **액션 자리에만** — Primary 버튼, 활성 링크, 활성 탭, focus ring, side-menu 활성 표시
|
|
779
|
-
- 본문은 17px / 400 / line-height 1.5 — 노안·저시력 사용자를 우선
|
|
780
|
-
- 모든 인터랙티브 요소에 가시성 높은 4px outline focus ring 적용 (`--krds-box-shadow-outline`)
|
|
781
|
-
- 양식 검증은 명시적 에러 라벨 + `aria-invalid` + 에러 영역 자동 포커스 + 2px border `#DE3412`
|
|
782
|
-
- "글자·화면 표시 설정"을 항상 헤더에 노출 — 사용자의 1차 컨트롤
|
|
783
|
-
- 한글 본문에 letter-spacing 0을 유지 — 인위적 자간 압축 금지 (Display만 1px)
|
|
784
|
-
- Pretendard GOV 또는 시스템 한글 폴백을 사용
|
|
785
|
-
- 색상은 매직넘버에 맞춰 선택 — primary-50 위 gray-0이면 즉시 4.5:1+ 통과
|
|
786
|
-
- 모든 컴포넌트는 일반 모드 / 선명한 화면 모드 두 토큰 레이어로 검증
|
|
787
|
-
|
|
788
|
-
### Don't
|
|
789
|
-
- Primary 50을 배경 / 일러스트 / 헤더 풀-블리드에 쓰지 말 것 — 색은 행위(action)다
|
|
790
|
-
- 그림자로 깊이감을 만들지 말 것 — 보더와 라운드로 충분
|
|
791
|
-
- 한 화면에 두 개 이상의 Primary 버튼을 같은 위계로 두지 말 것 — 첫 번째 행위가 명확해야 함
|
|
792
|
-
- 마케팅 카피·과장 표현 금지 — "혁신적인", "최고의", "감동의" 같은 수식어 금지
|
|
793
|
-
- 모션을 강조 수단으로 쓰지 말 것 — `prefers-reduced-motion` 사용자가 다수
|
|
794
|
-
- 정보 부재 상태에 "데이터가 없습니다" 같은 무미한 표현 금지 — 다음 행동을 안내할 것
|
|
795
|
-
- KWCAG 2.1 AA 미달 컬러 / 컴포넌트 사용 금지 (4.5:1 contrast 최소)
|
|
796
|
-
- Body 사이즈와 H4/H5 사이즈(17/15px)가 충돌하는 위계는 weight 차이(700/400)로만 구분 — 컬러 강조 금지
|
|
797
|
-
- 자체 폰트가 고딕 계열이 아니면 본문·제목에 사용 금지 (Display / 배너만 한정)
|
|
798
|
-
|
|
799
|
-
## 8. Responsive Behavior
|
|
800
|
-
|
|
801
|
-
### Breakpoints (재확인)
|
|
802
|
-
| Name | Width | Key Changes |
|
|
803
|
-
|------|-------|-------------|
|
|
804
|
-
| small | 360px+ | 단일 컬럼 4-grid, 16px gutter, GNB → 햄버거 메뉴 |
|
|
805
|
-
| medium | 768px+ | 2~3열 그리드 8-grid, 16~24px gutter |
|
|
806
|
-
| large | 1024px+ | 풀 GNB, 최대 1200px 컨텐츠 폭, 12-grid |
|
|
807
|
-
| xlarge | 1280px+ | 동일 1200px 컨텐츠 유지 (좌우 여백 증가) |
|
|
808
|
-
|
|
809
|
-
### Touch Targets (라이브 측정)
|
|
810
|
-
- Primary CTA xlarge: **64px** 높이 (양식 제출 등 핵심 액션)
|
|
811
|
-
- Primary CTA large: 56px / medium: 48px / small: 40px / xsmall: 32px
|
|
812
|
-
- 입력 필드 large: 56px / xlarge: 80px (검색)
|
|
813
|
-
- 셀렉트 large: 56px / medium: 48px / small: 40px
|
|
814
|
-
- 모바일 탭바 / 바텀시트 높이: 별도 모바일 카테고리에서 정의
|
|
815
|
-
|
|
816
|
-
### Mobile-specific Components
|
|
817
|
-
KRDS는 `component_12_*` 카테고리에 모바일 전용 컴포넌트 8종을 운영합니다: 뒤로가기 / 바텀시트 / 수량토글 / 토스트 / 스낵바 / 탭바 / 스플래시 스크린 / 범위 슬라이더. 모바일 컨텍스트의 인터랙션을 별도 시스템으로 인정.
|
|
818
|
-
|
|
819
|
-
### Image Behavior
|
|
820
|
-
- 콘텐츠 일러스트 / 사진은 1200px 컨테이너 안에서 풀-블리드 또는 16:9 / 4:3 비율
|
|
821
|
-
- 아이콘은 16 / 20 / 24px 그리드 (`--krds-icon--size-{xsmall..xlarge} = 1.6/1.6/2/2.4/2.4rem`)
|
|
822
|
-
- 접근 가능한 미디어 (`component_11_01.html`)는 캡션 / 자막 / 음성 해설 슬롯 명시
|
|
823
|
-
|
|
824
|
-
## 9. Agent Prompt Guide
|
|
825
|
-
|
|
826
|
-
### Quick Color Reference
|
|
827
|
-
- Primary action: `#256EF4` (primary-50)
|
|
828
|
-
- Primary pressed / link text: `#0B50D0` (primary-60)
|
|
829
|
-
- Primary subtle bg: `#ECF2FE` (primary-5)
|
|
830
|
-
- Body text: `#1E2124` (gray-90)
|
|
831
|
-
- Secondary text / placeholder: `#464C53` (gray-70)
|
|
832
|
-
- Border strong: `#58616A` (gray-60)
|
|
833
|
-
- Border subtle: `#B1B8BE` (gray-30)
|
|
834
|
-
- Disabled surface: `#CDD1D5` (gray-20)
|
|
835
|
-
- Background: `#FFFFFF` (gray-0)
|
|
836
|
-
- Surface gray subtle: `#F4F5F6` (gray-5)
|
|
837
|
-
- Danger: `#DE3412` / Success: `#228738` / Information: `#0B78CB` / Warning: `#FFB114`+`#9E6A00`(text)
|
|
838
|
-
|
|
839
|
-
### Example Component Prompts
|
|
840
|
-
- "Primary 버튼 xlarge: `#256EF4` 배경 / 흰색 텍스트 / 19px·400 / 8px radius / 0 24px padding / 64px 높이. Hover `#0B50D0`, pressed `#083891`, focus ring 4px `#256EF4`."
|
|
841
|
-
- "필수 입력 텍스트 필드 large: 흰색 배경 / `#58616A` 1px 보더 / 8px radius / 17~19px·400 / 56px 높이 / `#464C53` placeholder / focus 시 `#256EF4` 4px halo. 라벨 옆 빨간 별표(*) + `aria-required`."
|
|
842
|
-
- "Error 텍스트 필드: 동일 + 보더 `2px solid #DE3412` + 하단 helper text `#DE3412` 15px·400 + `aria-invalid='true'` + 에러 영역 자동 포커스."
|
|
843
|
-
- "Light Primary 안내 패널: `#ECF2FE` 배경 / 8px radius / 16px 24px padding / `#0B50D0` 강조 + `#1E2124` 본문."
|
|
844
|
-
- "Outline Primary 배지: 투명 / `#0B50D0` 텍스트 / `#256EF4` 1px 보더 / 4px radius / 0 8px padding / 15px·400 / 24px 높이."
|
|
845
|
-
- "Tertiary 버튼 large: 투명 / `#1E2124` / `#58616A` 1px / 8px radius / 0 20px / 56px. 취소·초기화·닫기."
|
|
846
|
-
- "Select large: 흰색 / `#58616A` 1px / 6px radius / 0 48px 0 16px / 19px·400 / 56px. Error 시 `2px solid #AB2B36` (Point 60 — 셀렉트는 Danger가 아닌 Point를 쓴다)."
|
|
847
|
-
- "Tag 필터 칩 large: 흰색 / `#CDD1D5` 1px / 40px radius (pill) / 8px 12px / 17px·400 / 40px. Selected 시 `#ECF2FE` 배경 + `#256EF4` 보더 + `#0B50D0` 텍스트."
|
|
848
|
-
- "Modal medium: 560px 폭 / `#FFFFFF` / 12px radius / 40px padding / drop shadow + black/0.5 백드롭 fade-in 400ms."
|
|
849
|
-
|
|
850
|
-
### Iteration Guide
|
|
851
|
-
1. 컬러는 매직넘버 룰을 따른다 — primary-50 위 gray-0 / gray-90 / white를 첫 후보로
|
|
852
|
-
2. 라운드는 2 / 4 / 6 / 8 / 10 / 12 / 1000px 일곱 단계만
|
|
853
|
-
3. 본문은 17px / 400 / 1.5 line-height가 기본 (16px이 아님)
|
|
854
|
-
4. 컴포넌트 사이즈 5단계: xsmall(32) / small(40) / medium(48) / large(56) / xlarge(64) — 버튼·input·select 모두 동일
|
|
855
|
-
5. 모든 인터랙티브 요소에 4px outline focus ring (`#256EF4`) 필수
|
|
856
|
-
6. 그림자 사용은 모달 / 드롭다운 / 툴팁으로 한정 — 카드는 보더로
|
|
857
|
-
7. `aria-*` 속성, 키보드 탐색, KWCAG 2.1 AA 색대비를 토큰 단계부터 만족시킬 것
|
|
858
|
-
8. 일반 모드와 선명한 화면 모드 두 토큰 레이어를 동시에 검증
|
|
859
|
-
9. 모션은 400ms / ease-in-out 표준, `prefers-reduced-motion: reduce`에서 즉시 전환
|
|
860
|
-
|
|
861
|
-
---
|
|
862
|
-
|
|
863
|
-
## 10. Voice & Tone
|
|
864
|
-
|
|
865
|
-
KRDS의 보이스는 **공공 서비스 안내 데스크의 화법**입니다 — 정중하고(`-합니다`/`-해 주세요`), 절제되며, 사용자를 평가하거나 설득하려 들지 않습니다. 마케팅 감탄("놀라운", "혁신적인", "최고의")은 금지이고, 동시에 권위적 명령("입력하라", "확인할 것")도 피합니다. 기본 어미는 **하십시오체(`-합니다`)와 해요체의 정중한 변형(`-해 주세요`, `-해 주십시오`)**의 혼용이며, 페이지 헤드라인은 명사형으로 짧게 — "**모두를 위한 디지털 서비스 경험**" — 행위 문장은 동사형으로 — "시작하기", "신청하기", "자세히 보기". 영문 카피가 필요한 경우 plain English UK Gov 스타일로 — *"Apply now"* 가 *"Get started today!"* 보다 우선합니다.
|
|
866
|
-
|
|
867
|
-
| Context | Tone |
|
|
868
|
-
|---|---|
|
|
869
|
-
| 페이지 헤드라인 | 명사형 한 줄 ("모두를 위한 디지털 서비스 경험"). 마침표·느낌표 없음. |
|
|
870
|
-
| Primary CTA | 동사 + "기" 형태 ("시작하기", "신청하기", "확인하기"). 짧고 행위 중심. |
|
|
871
|
-
| Secondary CTA | "자세히 보기", "이전 단계", "취소" — 부가 / 되돌리기 액션. |
|
|
872
|
-
| 양식 라벨 | 명사형 ("성명", "연락처", "주소"). 라벨이 곧 항목 이름. |
|
|
873
|
-
| 필수 표시 | 라벨 옆 빨간 별표 + 스크린리더용 "필수 입력 항목입니다" 보조 텍스트. |
|
|
874
|
-
| 검증 오류 | 무엇이 / 왜 / 어떻게 — "올바른 이메일 형식이 아닙니다. example@domain.kr 형식으로 입력해 주세요." |
|
|
875
|
-
| 빈 상태 | "표시할 내용이 없습니다" + 다음 행동 안내. "데이터가 없습니다" 단독 사용 금지. |
|
|
876
|
-
| 성공 메시지 | "신청이 완료되었습니다." 과거 종결형, 한 문장. 감탄사 없음. |
|
|
877
|
-
| 도움말 | "이 항목은 ~을(를) 위해 수집됩니다." 수집 목적·근거를 평문으로 명시. |
|
|
878
|
-
| 긴급 공지 | "현재 ~ 서비스가 일시 중단되었습니다. 자세한 내용은 공지사항을 확인해 주세요." 사실 + 다음 행동. |
|
|
879
|
-
|
|
880
|
-
**금지 표현.** "혁신적인", "차세대", "최고의", "고객님께서는 ~해 주시기 바랍니다" (지나친 격식), "데이터가 없습니다", "오류가 발생했습니다" 단독 사용, "잘 모르시겠다면" (사용자 능력 평가), 영문 보일러플레이트 "Oops, something went wrong". 어려운 한자어·일본식 행정 용어는 **「쉬운 우리말 쓰기」(국립국어원·행정안전부 권장)** 원칙에 따라 평이한 한국어로 치환 (예: "기재하다" → "쓰다 / 적다", "취하한다" → "취소한다", "당해 연도" → "올해").
|
|
881
|
-
|
|
882
|
-
**Voice samples.**
|
|
883
|
-
|
|
884
|
-
- `모두를 위한 디지털 서비스 경험` — 홈 헤드라인 (페이지 제목). <!-- verified: https://www.krds.go.kr/html/site/index.html, 2026-05 -->
|
|
885
|
-
- `시작하기` — Primary CTA (xlarge, `#256EF4` / 흰색 / 64px). <!-- verified: krds.go.kr 홈, 2026-05 -->
|
|
886
|
-
- `자세히 보기` — 카드 내부의 x-large text 버튼 (보조 액션). <!-- verified: krds.go.kr 홈, 2026-05 -->
|
|
887
|
-
- `글자·화면 설정` — 헤더 유틸리티 버튼 (a11y 1차 컨트롤). <!-- verified: krds.go.kr 전 페이지, 2026-05 -->
|
|
888
|
-
- `통합검색` / `전체메뉴` — GNB 액션 버튼. <!-- verified: krds.go.kr, 2026-05 -->
|
|
889
|
-
- `디자인 스타일 / 컴포넌트 / 기본 패턴 / 서비스 패턴 / 소식·소통 / KRDS 소개` — GNB 카테고리 6개. <!-- verified: krds.go.kr, 2026-05 -->
|
|
890
|
-
- `누구나 쉽게 사용할 수 있는 공공 웹·앱` — 행정안전부 KRDS 소개 문구. <!-- cited: 행정안전부 보도자료, 2024 -->
|
|
891
|
-
- `KRDS는 공공 웹·앱이 일관된 사용자 경험을 제공할 수 있도록 디자인 토큰과 컴포넌트를 표준화합니다.` — 일러스트레이션 (브랜드 문장 패턴, 실제 페이지 카피의 톤을 재구성). <!-- illustrative -->
|
|
892
|
-
|
|
893
|
-
## 11. Brand Narrative
|
|
894
|
-
|
|
895
|
-
KRDS(대한민국 정부 디자인 시스템, Korea Republic Design System)는 **행정안전부(Ministry of the Interior and Safety, MOIS)**가 주관하여 2024년 4월에 공식 공개한 범정부 UI/UX 디자인 시스템입니다. 정부는 2023년 전자정부 서비스 이용 실태조사에서 "동일한 행동을 반복적으로 요청한다", "표현이 일관되지 않다", "어려운 행정 용어가 많다"는 핵심 피드백을 받았고, 이를 해소하기 위해 2023년 7월부터 12월까지 **범정부 디자인시스템 구축 사업**을 진행한 뒤 ([행정안전부 보도자료](https://www.mois.go.kr/frt/bbs/type010/commonSelectBoardArticle.do?bbsId=BBSMSTR_000000000008&nttId=115144), [대한민국 정책브리핑](https://m.korea.kr/briefing/pressReleaseView.do?newsId=156640589)), 2024년 4월 공식 사이트 `www.krds.go.kr`을 통해 가이드라인·디자인 토큰·컴포넌트 라이브러리(Figma)·HTML 마크업을 일반 공개했습니다. 영문명은 **Korea Design System / Korea Republic Design System**으로 표기되며, 영문 자료에서는 *Pan-Government UI/UX Design System*으로 소개되기도 합니다 ([MOIS 영문 공지](https://www.mois.go.kr/eng/bbs/type002/commonSelectBoardArticle.do?bbsId=BBSMSTR_000000000022&nttId=118313)).
|
|
896
|
-
|
|
897
|
-
KRDS의 적용 대상은 **대한민국 정부 상징(Government Symbol)을 사용하는 모든 기관**의 웹·모바일 웹·앱입니다 — 중앙 행정기관, 소속기관, 공공기관, 지방자치단체가 포함되며, 시스템의 목적은 (1) 디지털 약자(고령자·장애인·저시력 사용자)를 포함한 모두에게 동일한 사용 경험을 제공하고, (2) 디자이너와 개발자가 같은 토큰·컴포넌트를 공유함으로써 공공 서비스의 **품질 편차를 줄이는 것**입니다 ([Design Compass — KRDS 소개](https://designcompass.org/2024/04/17/krds/), [Design Compass EN — Launch announcement](https://designcompass.org/en/2025/01/22/krds-start/)). 정책 맥락에서는 **「국가정보화 기본법」, 「장애인차별금지 및 권리구제 등에 관한 법률(장차법)」, 「웹 접근성 국가표준(KWCAG 2.1 / KS X OT 0003)」**이 공공기관 웹에 WCAG 2.1 AA 동등 이상의 접근성을 법적으로 요구하고 있으며 ([TPGi — South Korea Disability Discrimination Act](https://www.tpgi.com/south-koreas-disability-discrimination-act-kiosk-web-mobile-accessibility/), [AAAtraq — Digital Accessibility in South Korea](https://aa.aaatraq.com/news/2025/08/evolving-digital-accessibility-south-korea)), KRDS는 그 기술적 구현 표준 역할을 담당합니다.
|
|
898
|
-
|
|
899
|
-
비교 좌표는 분명합니다 — KRDS는 영국의 **[GOV.UK Design System](https://design-system.service.gov.uk/)**, 미국의 **[U.S. Web Design System (USWDS)](https://designsystem.digital.gov/)**, 싱가포르의 **[Singapore Government Design System](https://www.designsystem.tech.gov.sg/)**와 같은 계보에 속하는 **국가 단위 공공 디자인 시스템**입니다. 한국의 이전 표준(과거 "전자정부 표준프레임워크 UI 가이드", 각 부처 개별 가이드)을 통합·승계하며, 디자인 토큰 / 컴포넌트 / 마크업이 한 곳에서 공개·버전 관리된다는 점이 차이입니다 ([HEROPY.DEV — KRDS 소개](https://www.heropy.dev/s/68), [나무위키 — 범정부 UI/UX 디자인 시스템](https://namu.wiki/w/%EB%B2%94%EC%A0%95%EB%B6%80%20UI/UX%20%EB%94%94%EC%9E%90%EC%9D%B8%20%EC%8B%9C%EC%8A%A4%ED%85%9C)).
|
|
900
|
-
|
|
901
|
-
KRDS가 거부하는 것: 정부 사이트마다 다른 표기와 배치(이전의 전자정부 사이트 파편화), 마케팅 톤의 카피(공공 서비스는 권유 대상이 아닙니다), 시각적 화려함을 통한 신뢰 연출(과한 그라데이션 / 일러스트 / 모션). 거부하지 않는 것: 가독성·예측 가능성·접근성. 정부 블루 `#256EF4`는 그래서 "정부의 색"이 아니라 "행위(action)의 색"으로 기능합니다 — 단 하나의 버튼이 사용자가 무엇을 해야 하는지를 결정하도록.
|
|
902
|
-
|
|
903
|
-
## 12. Principles
|
|
904
|
-
|
|
905
|
-
1. **접근성 우선 (Accessibility First).** KWCAG 2.1 AA / WCAG 2.1 AA가 법적 의무이며, KRDS는 토큰 단계부터 색대비 4.5:1(매직넘버 50), 키보드 탐색, 스크린 리더 보조 텍스트, focus 가시성(4px halo)을 강제합니다. 일반 모드와 선명한 화면 모드 두 토큰 레이어를 동시에 운영합니다. *UI implication:* 어떤 컴포넌트도 a11y 검수 없이 §4에 추가되지 않으며, color-only로 의미를 전달하는 패턴은 반려됩니다.
|
|
906
|
-
2. **일관성 (Consistency).** 같은 행위는 모든 정부 사이트에서 같은 형태로 — Primary 버튼은 어디서나 `#256EF4` / 8px / 19px·400 / 64px(xlarge)입니다. *UI implication:* 부처별 / 사이트별 커스텀 컬러·라운드·폰트를 새로 만들지 않습니다. 브랜드 표시가 필요한 경우 헤더의 운영기관 식별자(`component_02_02`) 슬롯에 한정.
|
|
907
|
-
3. **명료성 (Clarity).** 한 화면이 하나의 결정을 안내해야 합니다. Primary 버튼은 한 화면에 하나, 양식 라벨은 명사형 1개, 검증 오류는 무엇 / 왜 / 어떻게 셋을 모두 제공. *UI implication:* "확인 / 취소 / 다음 / 이전"이 모두 같은 위계로 떠 있는 화면은 위계 재배치가 필요합니다.
|
|
908
|
-
4. **안정성 (Predictability).** 정부 서비스는 처음 방문하는 사용자가 다수입니다 — 사이트마다 학습 곡선이 다시 시작되면 안 됩니다. 위치(헤더 / GNB / 푸터), 컴포넌트(버튼·입력·표·페이지네이션), 패턴(검색 / 신청 / 조회 / 결과)이 사이트를 옮겨도 동일하게 작동해야 합니다. *UI implication:* "신선한" 인터랙션, 비표준 컨트롤, 가독성을 희생한 시각 강조는 거부됩니다.
|
|
909
|
-
5. **사용자 중심 (User-Centred).** "공급자(부처)의 업무 구조"가 아니라 **시민이 하려는 행위**를 기준으로 정보를 정렬합니다. KRDS의 컴포넌트 카테고리가 "아이덴티티 / 탐색 / 레이아웃 및 표현 / 액션 / 선택 / 피드백 / 도움 / 입력 / 설정 / 콘텐츠 / 모바일"로 구성된 것이 그 증거 — 모두 사용자가 하려는 행위 분류입니다. *UI implication:* IA 회의에서 "부서별로 묶자"가 아니라 "시민이 같은 시점에 함께 처리하는 일끼리 묶자"가 기준이 됩니다.
|
|
910
|
-
|
|
911
|
-
## 13. Personas
|
|
912
|
-
|
|
913
|
-
*아래 페르소나는 KRDS가 공개적으로 지목하는 "디지털 약자 및 일반 시민" 사용자 군집을 기반으로 재구성한 가상의 인물입니다. 특정 개인을 지칭하지 않습니다.*
|
|
914
|
-
|
|
915
|
-
**김순자 (Kim Soon-ja), 68세, 대전.** 정부24에서 주민등록등본을 발급받고 국민건강보험공단 앱에서 진료 내역을 확인합니다. 노안으로 16px 본문은 자주 놓치기 때문에 헤더의 "글자·화면 설정"에서 130%로 키워 쓰며, 양식의 빨간 별표가 명확히 보이지 않으면 다음 단계로 넘어가지 못합니다. KRDS가 그를 위해 만든 것: 17px·1.5 line-height 기본 본문 + 130% 사용자 줌 + 충분한 색대비(매직넘버 50).
|
|
916
|
-
|
|
917
|
-
**박지훈 (Park Ji-hoon), 29세, 서울, 시각장애.** 스크린 리더(NVDA / VoiceOver)로 정부 사이트를 사용합니다. 본문 시맨틱이 망가져 있거나, 버튼이 `<div>`로 만들어져 있거나, focus 순서가 시각 순서와 다르면 즉시 페이지를 떠납니다. KRDS가 그를 위해 만든 것: `aria-*` 속성을 포함한 마크업, 키보드 fully navigable한 컴포넌트, 4px outline focus ring, 선명한 화면 모드.
|
|
918
|
-
|
|
919
|
-
**Sarah Kim, 34세, 미국 거주 한국 국적자.** 해외 거주 한국인 — 영문 인터페이스 옵션, plain English 안내문, 시간대 표시(KST)가 명확한 양식을 기대합니다. KRDS의 영문 모드(`English`)와 GOV.UK·USWDS 친화적인 명사형 라벨이 그의 학습 비용을 낮춥니다.
|
|
920
|
-
|
|
921
|
-
**이주임 (Lee Joo-im), 41세, 광역시 공무원.** 부처 웹사이트의 콘텐츠를 편집·게시하는 운영자. CMS에서 컴포넌트를 조립할 때 "어떤 버튼이 Primary인지", "어떤 배지가 status용인지"를 빠르게 결정할 수 있어야 합니다. KRDS는 그를 위해 11개 컴포넌트 카테고리(아이덴티티 / 탐색 / 레이아웃 및 표현 / 액션 / 선택 / 피드백 / 도움 / 입력 / 설정 / 콘텐츠 / 모바일)와 각 변형의 사용 가이드를 명시합니다.
|
|
922
|
-
|
|
923
|
-
**최민호 (Choi Min-ho), 22세, 모바일-only 사용자.** 데스크톱을 거의 사용하지 않는 청년 사용자. 정부 서비스도 스마트폰에서 끝내야 합니다. KRDS의 모바일 전용 컴포넌트 카테고리(`component_12_*` 8종 — 바텀시트 / 스낵바 / 탭바 / 뒤로가기 등)가 그를 위한 별도 시스템.
|
|
924
|
-
|
|
925
|
-
## 14. States
|
|
926
|
-
|
|
927
|
-
| State | Treatment |
|
|
928
|
-
|---|---|
|
|
929
|
-
| **Empty (검색 결과 없음)** | "검색 결과가 없습니다. 다른 키워드로 다시 시도해 주세요." + 검색어 초기화 버튼(Tertiary). 단순 "데이터가 없습니다"는 금지. |
|
|
930
|
-
| **Empty (신청 내역 없음)** | "신청한 내역이 없습니다." + 다음 행동 안내 ("새 신청서 작성하기" Primary 버튼). |
|
|
931
|
-
| **Loading (페이지 진입)** | 페이지 상단 진행 표시기(스피너 `component_07_02`) + 스켈레톤 블록 (`#F4F5F6` Gray 5). `aria-busy="true"`로 스크린 리더에 알림. |
|
|
932
|
-
| **Loading (양식 제출)** | Primary 버튼이 비활성화 + 내부에 inline spinner. 텍스트는 "처리 중..."으로 변경. 같은 폼을 중복 제출하지 못하도록 disabled 처리. |
|
|
933
|
-
| **Error (필드 검증)** | 입력 보더 **2px solid `#DE3412`** / helper text "올바른 형식이 아닙니다. example@domain.kr 형식으로 입력해 주세요." `aria-invalid="true"` + 에러 영역으로 자동 포커스 이동. |
|
|
934
|
-
| **Error (select)** | 보더 **2px solid `#AB2B36`** (Point 60 — Danger와 시각 구분). |
|
|
935
|
-
| **Error (제출 실패)** | 페이지 상단 알림 영역(긴급 공지 `component_04_02`)에 Danger 배지 + 메시지 + 재시도 버튼. 사용자가 입력한 값은 보존. |
|
|
936
|
-
| **Error (서버·네트워크)** | 전체 화면 대체 메시지 — "일시적으로 서비스를 이용할 수 없습니다. 잠시 후 다시 시도해 주세요." + 새로고침 버튼 + 고객센터 안내 (전화 / 채팅). |
|
|
937
|
-
| **Success (저장)** | 스낵바(`component_12_06`) "저장되었습니다." 3초 자동 닫힘. critical하지 않은 가벼운 확인. |
|
|
938
|
-
| **Success (신청 완료)** | 전용 결과 화면 — "신청이 완료되었습니다." H1 + 접수번호 + 다음 단계 안내 + Primary 버튼 "신청 내역 확인하기". 모달이 아닌 페이지로 처리해 새로고침 / 북마크 가능. |
|
|
939
|
-
| **Disabled** | 회색 배경(`#CDD1D5` Gray 20) + `#6D7882` 텍스트 + cursor: not-allowed. `aria-disabled="true"`. 비활성 사유를 보조 텍스트로 명시 ("주민등록번호를 먼저 입력해 주세요"). |
|
|
940
|
-
| **Focus (키보드)** | 4px outline halo (`box-shadow: 0 0 0 4px #256EF4`). 모든 인터랙티브 요소에 예외 없이 적용 — KRDS의 가장 강한 a11y 규약. |
|
|
941
|
-
| **High Contrast Mode** | `--krds-color-high-contrast-*` 토큰 레이어가 자동 활성화 — 보더 강도 증가, 텍스트 컬러 변환(`#FFFFFF` 본문 등), focus ring 굵기 증가. OS 설정 또는 헤더 "글자·화면 설정"에서 토글. (`style_09.html` 선명한 화면 모드) |
|
|
942
|
-
| **사용자 줌 (90/100/110/130/150%)** | 헤더에서 사용자가 직접 선택. 모든 컴포넌트가 rem 단위(`font-size-base: 62.5%`)로 작성되어 비례 확대됨. 데스크톱 1200px 컨테이너는 150%에서도 가로 스크롤 없이 적응. |
|
|
943
|
-
|
|
944
|
-
### Service Journey States (서비스 패턴 노드별 상태)
|
|
945
|
-
|
|
946
|
-
KRDS 서비스 패턴 5종이 정의하는 사용자 여정 각 단계의 표준 상태 — 위 표가 "컴포넌트 상태"라면 아래 표는 "**여정 노드 상태**"입니다 ([service_summary](https://www.krds.go.kr/html/site/service/service_summary.html)).
|
|
947
|
-
|
|
948
|
-
| Journey node | State / treatment |
|
|
949
|
-
|---|---|
|
|
950
|
-
| **방문 (Visit) — 진입** | 메인 화면 첫 인상 — 헤드라인(명사형 한 줄) + 핵심 액션 1개(Primary xlarge 64px) + 정보 카드 그리드. 익명 사용자 가정. |
|
|
951
|
-
| **검색 — 입력 보조** | 검색 input xlarge(80px·24px·700) + 추천어·최근검색 dropdown. 키보드 첫 진입 시 focus halo 4px. |
|
|
952
|
-
| **검색 — 결과 개수 확인** | 결과 상단에 "**총 N건**" 표시(Body large bold) — 0건 시 §14 Empty 상태 전환. |
|
|
953
|
-
| **검색 — 결과 없음** | "검색 결과가 없습니다. 다른 키워드로 다시 시도해 주세요." + 검색어 초기화(Tertiary) + 검색 도움말(Text 버튼). |
|
|
954
|
-
| **로그인 — 방식 선택** | 2개 이상 인증 수단을 동등 위계로 노출 — Primary 한 개로 좁히지 않음 (생체·다요소 사용자 다수). 도움말 토글 상시 노출. |
|
|
955
|
-
| **로그인 — 자동 만료** | 세션 만료 직전 모달(small 400px·12px radius) + 연장 / 로그아웃 두 버튼 + 카운트다운(스크린리더 `aria-live="polite"`). |
|
|
956
|
-
| **신청 — 다단계 양식** | 단계 표시기(`component_07_01`) 1→2→3 활성 `#256EF4` / 완료 `#228738`. 단계별 임시저장 버튼(Tertiary) 우상단 고정. |
|
|
957
|
-
| **신청 — 자동입력** | 시스템 자동 입력값은 Gray 5(`#F4F5F6`) 배경 + readonly + "자동 입력된 정보입니다" 보조 텍스트. 수정 가능 시 잠금 해제 토글. |
|
|
958
|
-
| **신청 — 첨부 진행** | 파일 업로드 진행 표시기 + 파일명 + 삭제 칩(Tag). 용량 초과 시 §14 Error(필드 검증) 동일 처리. |
|
|
959
|
-
| **신청 — 제출 확인** | 모달 medium(560px) — "신청을 제출하시겠습니까?" + 최종 요약 + Primary "제출하기" / Tertiary "취소". 모달 외 영역은 백드롭 black/0.5. |
|
|
960
|
-
| **신청 — 결과 페이지** | 모달 아님 — 새 페이지(URL 변경) — "신청이 완료되었습니다" H1 + 접수번호 + 다음 단계 + Primary "신청 내역 확인하기". |
|
|
961
|
-
| **신청 — 처리 추적** | 진행 상태 배지(Information 진행 중 / Success 완료 / Warning 보완 요청 / Danger 반려) + 갱신 시각. |
|
|
962
|
-
| **정책정보 — 신규/갱신 구분** | 자료 카드에 "신규"(Point 적색 배지 outline) 또는 "갱신"(Information 배지 outline) 라벨 — 같은 위계 안에서 색으로만 의미를 전달하지 않도록 텍스트 라벨 필수. |
|
|
963
|
-
|
|
964
|
-
## 15. Motion & Easing
|
|
965
|
-
|
|
966
|
-
**Durations** (라이브 페이지에서 측정된 `--krds-transition-*` 토큰 기준):
|
|
967
|
-
|
|
968
|
-
| Token | Value | Use |
|
|
969
|
-
|---|---|---|
|
|
970
|
-
| `motion-instant` | 0ms | 토글 / 체크박스 상태 변경 |
|
|
971
|
-
| `motion-base` | **0.4s ease-in-out** (`--krds-transition-base`) | KRDS 표준 전환 — 드롭다운, 메뉴, 패널 열고 닫기, 백드롭 |
|
|
972
|
-
| `motion-fade` | **opacity 0.4s linear** (`--krds-transition-fade`) | 단순 opacity fade (모달 진입, 토스트) |
|
|
973
|
-
| `motion-collapse` | **max-height 0.4s ease** (`--krds-transition-collapse`) | 아코디언·디스클로저 max-height 전환 |
|
|
974
|
-
| `motion-collapse-width` | **width 0.4s ease** (`--krds-transition-collapse-width`) | 사이드 메뉴 폭 전환 |
|
|
975
|
-
|
|
976
|
-
**Easings:**
|
|
977
|
-
|
|
978
|
-
| Token | Curve | Use |
|
|
979
|
-
|---|---|---|
|
|
980
|
-
| `ease-in-out` | KRDS 기본 | 모든 양방향 전환 (열기·닫기) |
|
|
981
|
-
| `ease` | 접힘 / 펼침 height/width 변화 | 아코디언 / 디스클로저 / 사이드 메뉴 |
|
|
982
|
-
| `linear` | opacity fade | 페이드 전용 |
|
|
983
|
-
|
|
984
|
-
**모션 자세 (Motion stance).** **스프링·바운스·오버슈트는 KRDS에서 금지됩니다.** 정부 서비스는 "재미있는" 인터랙션을 통해 신뢰를 얻지 않습니다 — 사용자가 자신이 무엇을 했는지 즉시 / 예측 가능하게 / 차분하게 알 수 있어야 합니다. 모든 전환은 400ms 안에 끝나고, easing은 ease-in-out / ease / linear 셋으로 충분합니다. **`prefers-reduced-motion: reduce`** 사용자에게는 모든 `motion-*` 토큰이 0ms로 축소되며, 페이드 / 슬라이드 / 접힘 모두 즉시 전환됩니다. 이 규칙은 a11y 권고가 아니라 KRDS의 기본 동작입니다 (정부 서비스 사용자 중 전정기관 민감성·인지장애 보유자 비율이 일반 사이트보다 높습니다).
|
|
985
|
-
|
|
986
|
-
**Signature motions.**
|
|
987
|
-
|
|
988
|
-
1. **메뉴 / 드롭다운 열기·닫기.** `400ms / ease-in-out`로 opacity + transform translateY(-4px → 0). 백드롭 없음 (full-page 모달이 아니므로). 닫힐 때 동일 시간 / 역방향.
|
|
989
|
-
2. **아코디언·디스클로저.** max-height `400ms / ease` 전환. 콘텐츠 fade 없음 — height 변화만으로 충분하고, fade를 더하면 글자가 흐려져 가독성이 손해.
|
|
990
|
-
3. **모달 진입.** opacity fade 400ms linear + 백드롭 동시 fade (black/0.5). transform 사용하지 않음 (성능 우선 / 미감 절제). 모달 자체는 12px radius `--krds-radius-xlarge1`.
|
|
991
|
-
4. **사이드 메뉴 폭 변경.** width `400ms / ease` (`--krds-transition-collapse-width`).
|
|
992
|
-
5. **Reduce motion.** 모든 위 전환이 0ms 즉시. 백드롭은 그대로 표시되되 fade 없이 즉시 가시화.
|
|
993
|
-
|
|
994
|
-
<!--
|
|
995
|
-
OmD v0.1 Sources — KRDS DESIGN.md (rebuilt 2026-05-08, deep-pass)
|
|
996
|
-
|
|
997
|
-
Tier 1 — Live DOM (playwright getComputedStyle, 2026-05):
|
|
998
|
-
- https://www.krds.go.kr/html/site/index.html (홈)
|
|
999
|
-
- https://www.krds.go.kr/html/site/style/style_02.html (색상 — 11단계 × 8 컬러군 full palette, 매직넘버)
|
|
1000
|
-
- https://www.krds.go.kr/html/site/style/style_03.html (타이포그래피 — Display/Heading/Body 스케일 + Navigation/Label 토큰)
|
|
1001
|
-
- https://www.krds.go.kr/html/site/style/style_05.html (레이아웃 — 4 브레이크포인트, 1200px 컨테이너, 8-pt grid)
|
|
1002
|
-
- https://www.krds.go.kr/html/site/component/component_05_02.html (버튼 — Primary/Secondary/Tertiary/Text/Icon × xsmall~xlarge)
|
|
1003
|
-
- https://www.krds.go.kr/html/site/component/component_09_03.html (텍스트 입력 — 5 사이즈 × 4 상태)
|
|
1004
|
-
- https://www.krds.go.kr/html/site/component/component_06_03.html (셀렉트 — error border #AB2B36)
|
|
1005
|
-
- https://www.krds.go.kr/html/site/component/component_06_04.html (태그 필터 칩 — pill 40/32/24)
|
|
1006
|
-
- https://www.krds.go.kr/html/site/component/component_04_05.html (모달 — radius 12px, padding 40px)
|
|
1007
|
-
- https://www.krds.go.kr/html/site/component/component_04_06.html (배지 — outline/bg × 9 의미 × 18 변형)
|
|
1008
|
-
|
|
1009
|
-
Token extraction (live --krds-*):
|
|
1010
|
-
- Color palette: --krds-color-light-{primary,secondary,gray,point,danger,warning,success,information}-{5,10,20,30,40,50,60,70,80,90,95}
|
|
1011
|
-
- Radius: small(4) / medium1-2(6) / medium3-4(8) / large(10) / xlarge(12) / max(1000)
|
|
1012
|
-
- Padding: 1=2, 2=4, 3=8, 4=10, 5=12, 6=16, 7=20, 8=24, 9=32, 10=40
|
|
1013
|
-
- Size-height: 2=16, 3=20, 4=24, 5=32, 6=40, 7=48, 8=56, 9=64, 10=72, 11=80
|
|
1014
|
-
- Icon: xsmall=16, small=16, medium=20, large=24, xlarge=24
|
|
1015
|
-
- Modal sizes: small=400, medium=560, large=760
|
|
1016
|
-
- Transitions: base=0.4s ease-in-out / fade=opacity 0.4s linear / collapse=max-height 0.4s ease
|
|
1017
|
-
- Focus halo: --krds-box-shadow-outline: 0 0 0 0.4rem #256EF4
|
|
1018
|
-
- Font: --krds-font-family-base: Pretendard GOV / weight 400/700 / line-height 1.5 / letter-spacing 0
|
|
1019
|
-
|
|
1020
|
-
Tier 2 — Cross-check:
|
|
1021
|
-
- getdesign.md/krds: no record / styles.refero.design: no record (정부 시스템 미수록)
|
|
1022
|
-
- KRDS 자체가 정부 발행 canonical token catalog (Tier 1 = canonical)
|
|
1023
|
-
|
|
1024
|
-
Tier 3 — Philosophy / WebSearch:
|
|
1025
|
-
- 행정안전부 보도자료, 대한민국 정책브리핑, MOIS 영문 공지
|
|
1026
|
-
- Design Compass (KR/EN), HEROPY.DEV, 나무위키
|
|
1027
|
-
- TPGi (장차법·KWCAG), AAAtraq (2025 a11y 동향)
|
|
1028
|
-
- 비교 좌표: GOV.UK / USWDS / Singapore GDS
|
|
1029
|
-
|
|
1030
|
-
Phase 3 surfaces (basic + service patterns, 2026-05-08 deep-walk):
|
|
1031
|
-
- https://www.krds.go.kr/html/site/global/global_summary.html (기본 패턴 인덱스 — 12 패턴 enumeration)
|
|
1032
|
-
- https://www.krds.go.kr/html/site/global/global_01..12.html (12 기본 패턴 상세 — 모두 200, 각각 title + purpose 추출)
|
|
1033
|
-
- https://www.krds.go.kr/html/site/service/service_summary.html (서비스 패턴 인덱스 — 5 패턴)
|
|
1034
|
-
- https://www.krds.go.kr/html/site/service/service_01_01.html … service_05_01.html (5 서비스 패턴 상세 — 모두 200, journey node 추출)
|
|
1035
|
-
- pattern_summary.html / intro_*.html / intro_summary.html / main_index.html → 404 (별도 principles/inclusion 페이지 미공개 — 디지털 포용 콘텐츠는 global_summary 푸터의 웹 접근성 인증 마크 + KRDS 미션 문구로 입증)
|
|
1036
|
-
|
|
1037
|
-
Rebuild diff vs prior pass:
|
|
1038
|
-
- §2: Primary 50/60 분리 명시(이전 "정부 블루 + 정부 블루 딥" 표기 → 11단계 명도 팔레트 + 매직넘버)
|
|
1039
|
-
- §2: System color 추가 (Danger #DE3412 / Success #228738 / Information #0B78CB / Warning #FFB114·#9E6A00 / Point #D63D4A)
|
|
1040
|
-
- §3: Display/Heading/Body 3-layer scale 전체 표 추가 (이전 7행 → 30+행)
|
|
1041
|
-
- §3: H1 = 40px (이전 34px → 40px 정정)
|
|
1042
|
-
- §4 Buttons: 5단계 크기 라이브 측정값 (xsmall 4px/15px·400/32px ... xlarge 8px/19px·400/64px)
|
|
1043
|
-
- §4 Inputs: 정확한 5 사이즈 측정값, error 2px solid #DE3412 (이전 "1.5px" → 2px 정정), disabled bg #CDD1D5 (이전 "#F4F6F8" → #CDD1D5 정정)
|
|
1044
|
-
- §4 신규: Select, Tag(필터 칩), Toggle Switch, Checkbox, Radio, Tabs, Toast/Snackbar, Tooltip, Step Indicator, Pagination 추가
|
|
1045
|
-
- §4 Modal: radius 12px (이전 "--krds-radius-xlarge1 대형 라운드" 모호 → 12px 명시), sizes 400/560/760
|
|
1046
|
-
- §4 Badge: 9개 의미 × outline/filled = 18 변형 표 완성 (이전 4개 → 18개)
|
|
1047
|
-
- §5: 4 breakpoints + columns/gutter/margin 정확 측정 (small 4/16/16 → medium 8/16/24 → large 12/24/24 → xlarge 12/24/24)
|
|
1048
|
-
- §5: 8-pt grid 명시, padding 1~10 토큰 매핑 추가
|
|
1049
|
-
- §5: Border radius 7단계 (이전 5단계 → 2/4/6/8/10/12/1000)
|
|
1050
|
-
- §15: motion-collapse-width 추가, signature motion 5개 (이전 4개)
|
|
1051
|
-
-->
|
|
1052
|
-
|
|
1053
|
-
---
|
|
1054
|
-
|
|
1055
|
-
**Verified:** 2026-05-08 (deep re-verification — 10 pages inspected)
|
|
1056
|
-
**Tier 1 sources:** 10 live pages on www.krds.go.kr — index + 3 style pages (color/typography/layout) + 6 component pages (buttons/inputs/select/tag/modal/badge). 588 `--krds-color-*` tokens enumerated, full radius/padding/size-height/transition token sets extracted.
|
|
1057
|
-
**Tier 2 sources:** getdesign.md/krds — no record / styles.refero.design — no record. KRDS 자체가 정부 발행 canonical token catalog.
|
|
1058
|
-
**Tier 3 (Philosophy):** 행정안전부 보도자료, 대한민국 정책브리핑, Design Compass(KR/EN), TPGi(KWCAG·장차법), AAAtraq(2025 a11y 동향), GOV.UK / USWDS / Singapore GDS 비교 좌표.
|
|
1059
|
-
**Style ref:** `yeogiotte` (한국 공공·민간 정중한 한국어 톤 참조), `karrot` (한국 voice 형식 참조).
|
|
1060
|
-
**Conflicts unresolved:** none. KRDS는 단일 정부 발행 시스템이므로 부처별 변형 / 외부 aggregator 충돌 없음.
|