oh-my-design-cli 1.8.6 → 1.9.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.claude/hooks/lib/preferences-parser.cjs +1 -0
- package/.claude/hooks/lib/preferences-writer.cjs +1 -0
- package/.claude/hooks/post-edit-watch.cjs +1 -0
- package/.claude/hooks/session-end-foldin.cjs +1 -0
- package/.claude/hooks/session-state-loader.cjs +1 -0
- package/.claude/hooks/skill-activation.cjs +1 -0
- package/.claude/settings.json +10 -1
- package/.github/assets/logo-bg.png +0 -0
- package/AGENTS.md +20 -1
- package/CHANGELOG.md +482 -0
- package/MIGRATION.md +103 -0
- package/README.ja.md +56 -19
- package/README.ko.md +47 -30
- package/README.md +48 -30
- package/README.zh-TW.md +59 -22
- package/agents/AGENT.md +8 -7
- package/agents/omd-codex-image.md +1 -1
- package/agents/omd-critic.md +6 -7
- package/agents/omd-designer-review.md +1 -1
- package/agents/omd-final-qa.md +1 -1
- package/agents/omd-humanizer.md +38 -0
- package/agents/omd-kr-writer.md +3 -4
- package/agents/omd-locale-adapter.md +12 -16
- package/agents/omd-master.md +24 -19
- package/agents/omd-microcopy.md +1 -1
- package/agents/omd-orchestrator.md +7 -8
- package/agents/omd-slop-auditor.md +31 -0
- package/agents/omd-ux-researcher.md +1 -1
- package/data/reference-fingerprints.json +2761 -85
- package/dist/bin/oh-my-design.js +16 -8
- package/dist/bin/oh-my-design.js.map +1 -1
- package/dist/chunk-UJIHCEYF.js +99 -0
- package/dist/chunk-UJIHCEYF.js.map +1 -0
- package/dist/doctor-LDWSFM3I.js +763 -0
- package/dist/doctor-LDWSFM3I.js.map +1 -0
- package/dist/install-skills-ZZFNJ2II.js +1120 -0
- package/dist/install-skills-ZZFNJ2II.js.map +1 -0
- package/docs/CLI_QUICKSTART.md +157 -0
- package/package.json +25 -4
- package/scripts/postinstall.cjs +5 -4
- package/skills/claude-design/SKILL.md +38 -14
- package/skills/claude-design/references/claude-design-flow.md +11 -11
- package/skills/claude-design/references/codebase-analysis.md +5 -4
- package/skills/omd-final-qa/SKILL.md +1 -1
- package/skills/omd-harness/SKILL.md +51 -50
- package/skills/omd-humanize/SKILL.md +116 -0
- package/skills/omd-humanize/agents/openai.yaml +4 -0
- package/skills/omd-humanize/references/locale-playbooks.md +102 -0
- package/skills/omd-humanize/references/sources.md +11 -0
- package/skills/omd-init/SKILL.md +18 -12
- package/skills/omd-locale-adapter/SKILL.md +58 -91
- package/skills/omd-orchestrator/SKILL.md +11 -5
- package/skills/omd-reference-capture/SKILL.md +80 -26
- package/skills/omd-reference-capture/scripts/PLAYWRIGHT-LICENSE.txt +202 -0
- package/skills/omd-reference-capture/scripts/PLAYWRIGHT-NOTICE.txt +5 -0
- package/skills/omd-reference-capture/scripts/THIRD_PARTY_NOTICES.md +3 -0
- package/skills/omd-reference-capture/scripts/capture-reference-evidence.mjs +159906 -0
- package/skills/omd-slop-audit/SKILL.md +110 -0
- package/skills/omd-slop-audit/agents/openai.yaml +4 -0
- package/skills/omd-slop-audit/references/pattern-catalog.md +96 -0
- package/skills/omd-slop-audit/references/sources.md +24 -0
- package/web/references/104/DESIGN.md +354 -0
- package/web/references/11st/DESIGN.md +197 -316
- package/web/references/29cm/DESIGN.md +297 -393
- package/web/references/42dot/DESIGN.md +390 -0
- package/web/references/8percent/DESIGN.md +438 -0
- package/web/references/ably/DESIGN.md +267 -572
- package/web/references/acer/DESIGN.md +329 -0
- package/web/references/airbnb/DESIGN.md +219 -557
- package/web/references/airbridge/DESIGN.md +451 -0
- package/web/references/alipay/DESIGN.md +179 -420
- package/web/references/apple/DESIGN.md +224 -498
- package/web/references/asleep/DESIGN.md +402 -0
- package/web/references/au/DESIGN.md +334 -0
- package/web/references/autopedia/DESIGN.md +382 -0
- package/web/references/aws-cloudscape/DESIGN.md +241 -0
- package/web/references/baemin/DESIGN.md +332 -491
- package/web/references/banksalad/DESIGN.md +269 -180
- package/web/references/barogo/DESIGN.md +416 -0
- package/web/references/beusable/DESIGN.md +464 -0
- package/web/references/bigin/DESIGN.md +454 -0
- package/web/references/bilibili/DESIGN.md +206 -374
- package/web/references/bmw/DESIGN.md +162 -276
- package/web/references/brandi/DESIGN.md +184 -325
- package/web/references/buzzvil/DESIGN.md +457 -0
- package/web/references/cafe24/DESIGN.md +472 -0
- package/web/references/catchtable/DESIGN.md +219 -264
- package/web/references/cgv/DESIGN.md +317 -0
- package/web/references/channeltalk/DESIGN.md +210 -336
- package/web/references/china-airlines/DESIGN.md +291 -0
- package/web/references/cjonstyle/DESIGN.md +453 -0
- package/web/references/class101/DESIGN.md +168 -387
- package/web/references/classum/DESIGN.md +228 -203
- package/web/references/claude/DESIGN.md +242 -479
- package/web/references/clay/DESIGN.md +179 -377
- package/web/references/clickhouse/DESIGN.md +254 -343
- package/web/references/codeit/DESIGN.md +470 -0
- package/web/references/cohere/DESIGN.md +214 -324
- package/web/references/coinone/DESIGN.md +199 -179
- package/web/references/corca/DESIGN.md +414 -0
- package/web/references/coupang/DESIGN.md +205 -475
- package/web/references/cursor/DESIGN.md +240 -381
- package/web/references/dabang/DESIGN.md +248 -213
- package/web/references/dable/DESIGN.md +431 -0
- package/web/references/datarize/DESIGN.md +338 -0
- package/web/references/dealicious/DESIGN.md +402 -0
- package/web/references/drdiary/DESIGN.md +404 -0
- package/web/references/elastic/DESIGN.md +238 -0
- package/web/references/elevenlabs/DESIGN.md +183 -321
- package/web/references/elice/DESIGN.md +445 -0
- package/web/references/eslite/DESIGN.md +257 -0
- package/web/references/evaair/DESIGN.md +338 -0
- package/web/references/expo/DESIGN.md +238 -331
- package/web/references/familymart-tw/DESIGN.md +254 -0
- package/web/references/ferrari/DESIGN.md +160 -377
- package/web/references/figma/DESIGN.md +197 -451
- package/web/references/fitpet/DESIGN.md +445 -0
- package/web/references/flex/DESIGN.md +170 -253
- package/web/references/framer/DESIGN.md +197 -340
- package/web/references/freee/DESIGN.md +211 -533
- package/web/references/friendliai/DESIGN.md +431 -0
- package/web/references/frip/DESIGN.md +440 -0
- package/web/references/furiosaai/DESIGN.md +450 -0
- package/web/references/gangnamunni/DESIGN.md +154 -591
- package/web/references/gaudiolab/DESIGN.md +414 -0
- package/web/references/google/DESIGN.md +290 -398
- package/web/references/goorm/DESIGN.md +470 -0
- package/web/references/greencar/DESIGN.md +420 -0
- package/web/references/hackle/DESIGN.md +472 -0
- package/web/references/hashicorp/DESIGN.md +273 -318
- package/web/references/heydealer/DESIGN.md +429 -0
- package/web/references/humanscape/DESIGN.md +433 -0
- package/web/references/hwahae/DESIGN.md +453 -0
- package/web/references/hyundai/DESIGN.md +158 -368
- package/web/references/hyundaicard/DESIGN.md +171 -121
- package/web/references/ibm/DESIGN.md +227 -378
- package/web/references/idus/DESIGN.md +450 -0
- package/web/references/igaworks/DESIGN.md +437 -0
- package/web/references/inflearn/DESIGN.md +221 -366
- package/web/references/intuit/DESIGN.md +244 -0
- package/web/references/jandi/DESIGN.md +191 -291
- package/web/references/jobplanet/DESIGN.md +415 -0
- package/web/references/kakao/DESIGN.md +287 -475
- package/web/references/kakaobank/DESIGN.md +220 -521
- package/web/references/kakaogames/DESIGN.md +220 -0
- package/web/references/kakaopay/DESIGN.md +207 -526
- package/web/references/karrot/DESIGN.md +227 -251
- package/web/references/kb-kookmin/DESIGN.md +308 -0
- package/web/references/kbank/DESIGN.md +220 -175
- package/web/references/kcd/DESIGN.md +432 -0
- package/web/references/kmong/DESIGN.md +281 -356
- package/web/references/krds/DESIGN.md +245 -19
- package/web/references/kream/DESIGN.md +224 -359
- package/web/references/kurly/DESIGN.md +211 -533
- package/web/references/kyobobook/DESIGN.md +445 -0
- package/web/references/lablup/DESIGN.md +474 -0
- package/web/references/lamborghini/DESIGN.md +198 -360
- package/web/references/lemonbase/DESIGN.md +452 -0
- package/web/references/lguplus/DESIGN.md +259 -0
- package/web/references/likelion/DESIGN.md +283 -0
- package/web/references/line/DESIGN.md +396 -355
- package/web/references/linear.app/DESIGN.md +209 -562
- package/web/references/lotteon/DESIGN.md +386 -0
- package/web/references/lovable/DESIGN.md +255 -349
- package/web/references/makinarocks/DESIGN.md +242 -0
- package/web/references/maum-ai/DESIGN.md +423 -0
- package/web/references/medibloc/DESIGN.md +425 -0
- package/web/references/megabox/DESIGN.md +232 -0
- package/web/references/mercari/DESIGN.md +217 -434
- package/web/references/microsoft/DESIGN.md +234 -388
- package/web/references/mildang/DESIGN.md +411 -0
- package/web/references/millie/DESIGN.md +183 -504
- package/web/references/minimax/DESIGN.md +264 -322
- package/web/references/miricanvas/DESIGN.md +182 -355
- package/web/references/miro/DESIGN.md +234 -232
- package/web/references/mistral.ai/DESIGN.md +231 -314
- package/web/references/mixi/DESIGN.md +234 -0
- package/web/references/moin/DESIGN.md +445 -0
- package/web/references/mongodb/DESIGN.md +219 -316
- package/web/references/moreh/DESIGN.md +437 -0
- package/web/references/musinsa/DESIGN.md +184 -510
- package/web/references/mynavi/DESIGN.md +242 -0
- package/web/references/myrealtrip/DESIGN.md +169 -406
- package/web/references/naver/DESIGN.md +328 -499
- package/web/references/naverwebtoon/DESIGN.md +172 -395
- package/web/references/neosapience/DESIGN.md +441 -0
- package/web/references/nhn/DESIGN.md +169 -346
- package/web/references/nhncloud/DESIGN.md +185 -123
- package/web/references/nota/DESIGN.md +451 -0
- package/web/references/notion/DESIGN.md +271 -475
- package/web/references/nrise/DESIGN.md +417 -0
- package/web/references/ohouse/DESIGN.md +210 -549
- package/web/references/oliveyoung/DESIGN.md +217 -326
- package/web/references/ollama/DESIGN.md +241 -308
- package/web/references/onestore/DESIGN.md +248 -0
- package/web/references/palantir/DESIGN.md +256 -0
- package/web/references/panasonic/DESIGN.md +276 -0
- package/web/references/patternfly/DESIGN.md +259 -0
- package/web/references/payhere/DESIGN.md +438 -0
- package/web/references/pega/DESIGN.md +262 -0
- package/web/references/peoplefund/DESIGN.md +431 -0
- package/web/references/petfriends/DESIGN.md +428 -0
- package/web/references/pinkfong/DESIGN.md +199 -367
- package/web/references/pinterest/DESIGN.md +258 -308
- package/web/references/portone/DESIGN.md +446 -0
- package/web/references/poya/DESIGN.md +286 -0
- package/web/references/pozalabs/DESIGN.md +438 -0
- package/web/references/protopie/DESIGN.md +419 -0
- package/web/references/qraft/DESIGN.md +448 -0
- package/web/references/queenit/DESIGN.md +432 -0
- package/web/references/quotabook/DESIGN.md +449 -0
- package/web/references/rebellions/DESIGN.md +449 -0
- package/web/references/recruit/DESIGN.md +247 -0
- package/web/references/remember/DESIGN.md +202 -396
- package/web/references/resend/DESIGN.md +274 -348
- package/web/references/returnzero/DESIGN.md +460 -0
- package/web/references/sakura-internet/DESIGN.md +269 -0
- package/web/references/samsung/DESIGN.md +157 -359
- package/web/references/sandoll/DESIGN.md +445 -0
- package/web/references/sanity/DESIGN.md +241 -375
- package/web/references/saramin/DESIGN.md +465 -0
- package/web/references/scatterlab/DESIGN.md +412 -0
- package/web/references/selectstar/DESIGN.md +439 -0
- package/web/references/servicenow/DESIGN.md +289 -0
- package/web/references/shiftee/DESIGN.md +468 -0
- package/web/references/shinhanbank/DESIGN.md +161 -341
- package/web/references/shinhancard/DESIGN.md +208 -319
- package/web/references/sionic/DESIGN.md +454 -0
- package/web/references/sktelecom/DESIGN.md +310 -0
- package/web/references/socar/DESIGN.md +125 -32
- package/web/references/softbank/DESIGN.md +231 -0
- package/web/references/solapi/DESIGN.md +483 -0
- package/web/references/sony/DESIGN.md +234 -0
- package/web/references/soop/DESIGN.md +261 -0
- package/web/references/spacex/DESIGN.md +184 -323
- package/web/references/spotify/DESIGN.md +253 -394
- package/web/references/squeezebits/DESIGN.md +441 -0
- package/web/references/stayfolio/DESIGN.md +422 -0
- package/web/references/stripe/DESIGN.md +212 -491
- package/web/references/supabase/DESIGN.md +244 -316
- package/web/references/supertone/DESIGN.md +413 -0
- package/web/references/tabling/DESIGN.md +415 -0
- package/web/references/taishinbank/DESIGN.md +243 -0
- package/web/references/teamlab/DESIGN.md +240 -0
- package/web/references/teamsparta/DESIGN.md +472 -0
- package/web/references/tellingme/DESIGN.md +392 -0
- package/web/references/tesla/DESIGN.md +244 -427
- package/web/references/thsr/DESIGN.md +284 -0
- package/web/references/thumbtack/DESIGN.md +302 -0
- package/web/references/together.ai/DESIGN.md +257 -304
- package/web/references/toss/DESIGN.md +251 -593
- package/web/references/toss-securities/DESIGN.md +255 -178
- package/web/references/tossbank/DESIGN.md +195 -491
- package/web/references/toyota/DESIGN.md +238 -0
- package/web/references/tving/DESIGN.md +197 -245
- package/web/references/typed/DESIGN.md +413 -0
- package/web/references/uber/DESIGN.md +256 -333
- package/web/references/udn/DESIGN.md +250 -0
- package/web/references/upbit/DESIGN.md +145 -256
- package/web/references/upstage/DESIGN.md +211 -204
- package/web/references/uswds/DESIGN.md +287 -0
- package/web/references/vercel/DESIGN.md +236 -440
- package/web/references/vuno/DESIGN.md +413 -0
- package/web/references/wanted/DESIGN.md +215 -487
- package/web/references/weverse/DESIGN.md +437 -0
- package/web/references/wise/DESIGN.md +223 -231
- package/web/references/wisetracker/DESIGN.md +462 -0
- package/web/references/wooribank/DESIGN.md +245 -0
- package/web/references/yanolja/DESIGN.md +250 -419
- package/web/references/yeogiotte/DESIGN.md +235 -418
- package/web/references/zapier/DESIGN.md +256 -377
- package/web/references/zendesk/DESIGN.md +288 -0
- package/web/references/zigzag/DESIGN.md +200 -621
- package/dist/install-skills-7UUDOLG2.js +0 -734
- package/dist/install-skills-7UUDOLG2.js.map +0 -1
|
@@ -8,414 +8,303 @@ primary_color: "#005df9"
|
|
|
8
8
|
logo:
|
|
9
9
|
type: favicon
|
|
10
10
|
slug: "https://www.google.com/s2/favicons?domain=shinhancard.com&sz=128"
|
|
11
|
-
verified: "2026-
|
|
11
|
+
verified: "2026-07-13"
|
|
12
12
|
added: "2026-06-09"
|
|
13
13
|
omd: "0.1"
|
|
14
|
+
verification_v2:
|
|
15
|
+
schema: 2
|
|
16
|
+
checked: "2026-07-13"
|
|
17
|
+
surfaces:
|
|
18
|
+
- { id: home, kind: product-web, url: "https://www.shinhancard.com/pconts/html/main.html", inspected: "2026-07-13" }
|
|
19
|
+
- { id: credit-detail, kind: product-web, url: "https://www.shinhancard.com/pconts/html/card/apply/credit/1232390_2207.html", inspected: "2026-07-13" }
|
|
20
|
+
- { id: premium-detail, kind: product-web, url: "https://www.shinhancard.com/pconts/html/card/apply/premium/1236160_2205.html", inspected: "2026-07-13" }
|
|
21
|
+
sources:
|
|
22
|
+
- { id: home-live, kind: product-surface, url: "https://www.shinhancard.com/pconts/html/main.html", captured: "2026-07-13" }
|
|
23
|
+
- { id: credit-detail-live, kind: product-surface, url: "https://www.shinhancard.com/pconts/html/card/apply/credit/1232390_2207.html", captured: "2026-07-13" }
|
|
24
|
+
- { id: premium-detail-live, kind: product-surface, url: "https://www.shinhancard.com/pconts/html/card/apply/premium/1236160_2205.html", captured: "2026-07-13" }
|
|
25
|
+
conflicts: []
|
|
26
|
+
claims:
|
|
27
|
+
"tokens.colors.primary": &home { surface_id: home, source_id: home-live, method: computed-style, captured: "2026-07-13" }
|
|
28
|
+
"tokens.colors.canvas": *home
|
|
29
|
+
"tokens.colors.surface": *home
|
|
30
|
+
"tokens.colors.tonal": &detail { surface_id: credit-detail, source_id: credit-detail-live, method: computed-style, captured: "2026-07-13" }
|
|
31
|
+
"tokens.colors.surface-accent": *home
|
|
32
|
+
"tokens.colors.ink": *home
|
|
33
|
+
"tokens.colors.body": *home
|
|
34
|
+
"tokens.colors.slate": *home
|
|
35
|
+
"tokens.colors.muted": *home
|
|
36
|
+
"tokens.colors.border": *home
|
|
37
|
+
"tokens.colors.danger": *home
|
|
38
|
+
"tokens.colors.danger-bg": *home
|
|
39
|
+
"tokens.typography.family.sans": *home
|
|
40
|
+
"tokens.typography.display.size": *home
|
|
41
|
+
"tokens.typography.display.weight": *home
|
|
42
|
+
"tokens.typography.display.lineHeight": *home
|
|
43
|
+
"tokens.typography.display.tracking": *home
|
|
44
|
+
"tokens.typography.display.use": *home
|
|
45
|
+
"tokens.typography.title.size": *detail
|
|
46
|
+
"tokens.typography.title.weight": *detail
|
|
47
|
+
"tokens.typography.title.lineHeight": *detail
|
|
48
|
+
"tokens.typography.title.tracking": *detail
|
|
49
|
+
"tokens.typography.title.use": *detail
|
|
50
|
+
"tokens.typography.body.size": *home
|
|
51
|
+
"tokens.typography.body.weight": *home
|
|
52
|
+
"tokens.typography.body.lineHeight": *home
|
|
53
|
+
"tokens.typography.body.tracking": *home
|
|
54
|
+
"tokens.typography.body.use": *home
|
|
55
|
+
"tokens.typography.compact.size": *home
|
|
56
|
+
"tokens.typography.compact.weight": *home
|
|
57
|
+
"tokens.typography.compact.lineHeight": *home
|
|
58
|
+
"tokens.typography.compact.tracking": *home
|
|
59
|
+
"tokens.typography.compact.use": *home
|
|
60
|
+
"tokens.spacing.tight": *home
|
|
61
|
+
"tokens.spacing.compact": *home
|
|
62
|
+
"tokens.spacing.regular": *home
|
|
63
|
+
"tokens.spacing.surface": *detail
|
|
64
|
+
"tokens.rounded.sm": *home
|
|
65
|
+
"tokens.rounded.md": *home
|
|
66
|
+
"tokens.rounded.lg": *home
|
|
67
|
+
"tokens.rounded.xl": *detail
|
|
68
|
+
"tokens.shadow.menu": *home
|
|
69
|
+
"tokens.components.badge-danger.type": *home
|
|
70
|
+
"tokens.components.badge-danger.bg": *home
|
|
71
|
+
"tokens.components.badge-danger.fg": *home
|
|
72
|
+
"tokens.components.badge-danger.radius": *home
|
|
73
|
+
"tokens.components.badge-danger.padding": *home
|
|
74
|
+
"tokens.components.badge-danger.font": *home
|
|
75
|
+
"tokens.components.badge-danger.use": *home
|
|
76
|
+
"tokens.components.badge-blue.type": *home
|
|
77
|
+
"tokens.components.badge-blue.bg": *home
|
|
78
|
+
"tokens.components.badge-blue.fg": *home
|
|
79
|
+
"tokens.components.badge-blue.radius": *home
|
|
80
|
+
"tokens.components.badge-blue.padding": *home
|
|
81
|
+
"tokens.components.badge-blue.font": *home
|
|
82
|
+
"tokens.components.badge-blue.use": *home
|
|
14
83
|
tokens:
|
|
15
|
-
source:
|
|
16
|
-
extracted: "2026-
|
|
84
|
+
source: reconciled
|
|
85
|
+
extracted: "2026-07-13"
|
|
17
86
|
components_harvested: true
|
|
18
87
|
colors:
|
|
19
88
|
primary: "#005df9"
|
|
20
|
-
indigo: "#6268ff"
|
|
21
89
|
canvas: "#ffffff"
|
|
22
90
|
surface: "#f8f9fc"
|
|
23
|
-
|
|
24
|
-
surface-
|
|
25
|
-
|
|
26
|
-
slate: "#344054"
|
|
91
|
+
tonal: "#f0f4fa"
|
|
92
|
+
surface-accent: "#ebf0ff"
|
|
93
|
+
ink: "#101828"
|
|
27
94
|
body: "#475467"
|
|
95
|
+
slate: "#344054"
|
|
28
96
|
muted: "#667085"
|
|
29
|
-
muted-light: "#818da2"
|
|
30
97
|
border: "#e4e7ec"
|
|
31
|
-
border-strong: "#d0d5dd"
|
|
32
|
-
on-primary: "#ffffff"
|
|
33
98
|
danger: "#f44f4f"
|
|
34
99
|
danger-bg: "#fff6f5"
|
|
35
100
|
typography:
|
|
36
101
|
family: { sans: "Digital One Shinhan" }
|
|
37
|
-
display:
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
spacing: { xs: 2, sm: 8, md: 12, base: 16, lg: 20, xl: 24, xxl: 32, section: 48 }
|
|
44
|
-
rounded: { sm: 8, md: 12, lg: 16, full: 9999 }
|
|
102
|
+
display: { size: 32, weight: 800, lineHeight: 1.50, tracking: -0.64, use: "Promotional card title observed on the public home surface" }
|
|
103
|
+
title: { size: 28, weight: 700, lineHeight: 1.50, tracking: -0.56, use: "Detail-page heading observed on credit-card product surface" }
|
|
104
|
+
body: { size: 14, weight: 400, lineHeight: 1.71, tracking: -0.28, use: "Product-page reading text and controls" }
|
|
105
|
+
compact: { size: 12, weight: 300, lineHeight: 1.67, tracking: -0.24, use: "Compact product and menu metadata" }
|
|
106
|
+
spacing: { tight: 4, compact: 8, regular: 12, surface: 20 }
|
|
107
|
+
rounded: { sm: 8, md: 12, lg: 16, xl: 20 }
|
|
45
108
|
shadow:
|
|
46
|
-
|
|
47
|
-
inset-line: "#d0d5dd 0px -1px 0px 0px inset"
|
|
109
|
+
menu: "rgba(12,17,29,0.1) 0px 4px 16px 0px"
|
|
48
110
|
components:
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
button-indigo: { type: button, bg: "#6268ff", fg: "#ffffff", radius: "12px", padding: "2px 8px", font: "14px / 400", use: "Secondary accent action / promo" }
|
|
52
|
-
card: { type: card, bg: "#f8f9fc", fg: "#101828", radius: "16px", padding: "24px", font: "14px / 400", use: "Product / loan entry card, hairline #e4e7ec ring" }
|
|
53
|
-
card-indigo: { type: card, bg: "#ebf0ff", fg: "#101828", radius: "16px", padding: "24px", use: "Highlighted promo card on indigo tint" }
|
|
54
|
-
input-text: { type: input, bg: "#ffffff", fg: "#101828", radius: "8px", font: "16px / 500", use: "Search / form input, 1px #d0d5dd border, focus #005df9" }
|
|
55
|
-
badge-danger: { type: badge, bg: "#fff6f5", fg: "#f44f4f", radius: "8px", padding: "2px 8px", font: "12px / 400", use: "Alert / required / error badge" }
|
|
56
|
-
tab: { type: tab, bg: "#ffffff", fg: "#667085", radius: "0px", font: "14px / 400", active: "2px bottom border #005df9, fg #101828", use: "Main navigation / content tabs" }
|
|
57
|
-
list-item: { type: listItem, bg: "#ffffff", fg: "#344054", radius: "12px", padding: "0px 12px", font: "14px / 400", use: "Menu / quick-link list row, #e4e7ec divider" }
|
|
58
|
-
toggle: { type: toggle, bg: "#005df9", fg: "#ffffff", radius: "9999px", use: "On-state switch / segmented selector" }
|
|
111
|
+
badge-danger: { type: badge, bg: "#fff6f5", fg: "#f44f4f", radius: "12px", padding: "2px 8px", font: "11px / 500", use: "Tinted text badge on the public home surface (shc-badge--text type-tint theme-red)" }
|
|
112
|
+
badge-blue: { type: badge, bg: "#ebf0ff", fg: "#005df9", radius: "12px", padding: "2px 8px", font: "11px / 500", use: "Tinted text badge on the public home surface (shc-badge--text type-tint theme-blue)" }
|
|
59
113
|
---
|
|
60
114
|
|
|
61
|
-
#
|
|
115
|
+
# Shinhan Card — Design Reference
|
|
62
116
|
|
|
63
117
|
## 1. Visual Theme & Atmosphere
|
|
64
118
|
|
|
65
|
-
Shinhan Card
|
|
66
|
-
|
|
67
|
-
The defining typographic element is the proprietary `Digital One Shinhan` typeface, set across the entire system from 32px hero display down to 12px fine print. It runs with consistently tight negative letter-spacing (around -0.28px at body sizes, widening to -0.64px at display) that packs Korean and Latin glyphs into dense, engineered lines. Body text sits at a comfortable 14px with a generous 24px line-height, giving the dense Hangul a calm, readable rhythm. Headlines escalate in weight rather than only in size — 700 for page and section titles, jumping to 900 for the hero — so hierarchy is felt through ink density as much as scale.
|
|
119
|
+
Shinhan Card is a Korean specialist finance company whose stated business spans credit-card sales, cash advances, instalment finance, card loans, auto lease, and a broader platform-and-data business. The current public web experience connects that institutional remit to the group’s Shinhan SOL Pay digital brand: the company describes SOL Pay as a platform linking financial life and daily life, rather than only a card-management destination. On the captured public product surfaces, that transition is expressed through a bright `#005df9` action blue, quiet white and blue-grey fields, and `Digital One Shinhan` set tightly across product content. The result is a practical product language for card discovery and account-related tasks rather than a generalized marketing style.
|
|
68
120
|
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
**Key Characteristics:**
|
|
72
|
-
- Proprietary `Digital One Shinhan` typeface across the entire system
|
|
73
|
-
- Single interactive blue (`#005df9`) as the sole primary-action color
|
|
74
|
-
- Weight-driven hierarchy: 400 body, 700 titles, 900 hero
|
|
75
|
-
- Tinted surface stacking (`#ffffff` / `#f8f9fc` / `#f0f4fa` / `#ebf0ff`) instead of drop shadows
|
|
76
|
-
- Hairline `#e4e7ec` rings and inset `#d0d5dd` lines for separation
|
|
77
|
-
- Generous rounded geometry — 8px / 12px / 16px radius family
|
|
78
|
-
- Tight negative tracking (-0.28px body, -0.64px display) for dense Korean text
|
|
79
|
-
- Indigo (`#6268ff`) as a secondary accent for promotional moments
|
|
121
|
+
The public system is more varied than the prior snapshot suggested. Product-detail pages carry `#f8f9fc` selection tiles and `#f0f4fa` toned actions; the home surface also exposes red and blue tint badges. Rounded values occur at 8, 12, 16, and 20px, while an opened navigation menu uses a light border and a small, explicit shadow. This reference therefore distinguishes the captured product web surfaces from the company’s corporate narrative and from any unobserved signed-in app, checkout, or documentation UI.
|
|
80
122
|
|
|
81
123
|
## 2. Color Palette & Roles
|
|
82
124
|
|
|
83
|
-
|
|
84
|
-
- **
|
|
85
|
-
- **
|
|
86
|
-
- **
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
- **
|
|
90
|
-
- **
|
|
91
|
-
|
|
92
|
-
### Neutral Scale
|
|
93
|
-
- **Slate** (`#344054`): Strong body text, list rows, secondary headings.
|
|
94
|
-
- **Body** (`#475467`): Standard secondary text, descriptions.
|
|
95
|
-
- **Muted** (`#667085`): Tertiary text, inactive tab labels, captions.
|
|
96
|
-
- **Muted Light** (`#818da2`): Disabled text, placeholders, axis labels.
|
|
97
|
-
|
|
98
|
-
### Surfaces & Borders
|
|
99
|
-
- **Surface** (`#f8f9fc`): Default card and panel background.
|
|
100
|
-
- **Surface Blue** (`#f0f4fa`): Tertiary button background, subtle filled chips.
|
|
101
|
-
- **Border** (`#e4e7ec`): Standard hairline border, dividers, card rings.
|
|
102
|
-
- **Border Strong** (`#d0d5dd`): Input borders, inset separator lines.
|
|
103
|
-
|
|
104
|
-
### Feedback
|
|
105
|
-
- **Danger** (`#f44f4f`): Error text, alert badges, required-field markers.
|
|
106
|
-
- **Danger BG** (`#fff6f5`): Tinted surface behind danger badges and inline errors.
|
|
125
|
+
- **Primary blue** (`#005df9`): observed as the background of `shc-btn theme-primary size-xl` across the home, credit-detail, and premium-detail product surfaces.
|
|
126
|
+
- **Canvas** (`#ffffff`): observed page and expanded-menu surface.
|
|
127
|
+
- **Surface** (`#f8f9fc`): observed on home and product-detail selection tiles.
|
|
128
|
+
- **Tonal surface** (`#f0f4fa`): observed on the `shc-capsule-btn theme-tonal size-md` action on both captured detail pages.
|
|
129
|
+
- **Accent tint** (`#ebf0ff`): observed behind the blue text badge on the home surface.
|
|
130
|
+
- **Ink** (`#101828`), **body** (`#475467`), **slate** (`#344054`), and **muted** (`#667085`): observed text families across the three product surfaces.
|
|
131
|
+
- **Border** (`#e4e7ec`): observed on the open navigation menu and home chip.
|
|
132
|
+
- **Danger tint** (`#fff6f5`) and **danger text** (`#f44f4f`): observed on `shc-badge--text type-tint theme-red` on home.
|
|
107
133
|
|
|
108
134
|
## 3. Typography Rules
|
|
109
135
|
|
|
110
|
-
### Font
|
|
111
|
-
- **Primary**: `Digital One Shinhan`, with system fallback stack: `-apple-system, system-ui, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif`
|
|
112
|
-
- The proprietary face covers both Hangul and Latin and is used at every level — there is no separate display or mono family on the marketing surface.
|
|
136
|
+
### Font evidence classes
|
|
113
137
|
|
|
114
|
-
|
|
138
|
+
- **Live computed surface-use — `Digital One Shinhan`.** The supplied capture records 691 visible uses across the home, credit-detail, and premium-detail product surfaces. Computed declarations resolve to `"Digital One Shinhan", -apple-system, system-ui, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif`.
|
|
139
|
+
- **FontFaceSet/source corroboration — `Digital One Shinhan`.** The same bundle reports the family as `loaded` with high confidence and eight first-party source URLs: Light, Medium, Bold, and ExtraBold `.woff`/`.woff2` files under `https://www.shinhancard.com/pconts/static/webfonts/`.
|
|
140
|
+
- **Official distributed product asset.** Those files are served from Shinhan Card’s own webfont path and corroborate the live web family. A publicly indexed Shinhan Card font licence or separate brand-font catalogue was not found in this update, so no reuse licence is asserted.
|
|
141
|
+
- **Declared-only asset — `swiper-icons`.** A data-URL `@font-face` was declared, but the capture records zero visible uses. It is an icon asset, not a UI-family token.
|
|
142
|
+
- **System fallbacks.** The Apple/system/Segoe/Roboto/Arial chain remains a declaration fallback; it is not presented as a Shinhan Card brand font.
|
|
115
143
|
|
|
116
|
-
|
|
117
|
-
|------|------|--------|-------------|----------------|-------|
|
|
118
|
-
| Display / Hero | 32px (2.00rem) | 900 | 1.20 | -0.64px | Main visual headline, maximum density |
|
|
119
|
-
| Page Title (h1) | 28px (1.75rem) | 700 | 1.30 | -0.28px | Top-level page title |
|
|
120
|
-
| Section (h2) | 21px (1.31rem) | 700 | 1.30 | -0.28px | Section / card-group heading |
|
|
121
|
-
| Body Emphasized / Input | 16px (1.00rem) | 500 | 1.69 | -0.32px | Form input, emphasized body |
|
|
122
|
-
| Body | 14px (0.88rem) | 400 | 1.71 | -0.28px | Standard reading text, nav links |
|
|
123
|
-
| Caption | 12px (0.75rem) | 400 | 1.50 | normal | Metadata, fine print, timestamps |
|
|
144
|
+
### Observed hierarchy
|
|
124
145
|
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
146
|
+
| Role | Size | Weight | Line height | Tracking | Captured context |
|
|
147
|
+
|---|---:|---:|---:|---:|---|
|
|
148
|
+
| Promotional title | 32px | 800 | 48px | -0.64px | Home card text |
|
|
149
|
+
| Detail heading | 28px | 700 | 42px | -0.56px | Credit-card product page |
|
|
150
|
+
| Product body/control | 14px | 400 | 24px | -0.28px | Product pages and controls |
|
|
151
|
+
| Compact metadata | 12px | 300 | 20px | -0.24px | Product and menu metadata |
|
|
130
152
|
|
|
131
|
-
## 4.
|
|
153
|
+
## 4. Components
|
|
132
154
|
|
|
133
|
-
###
|
|
155
|
+
### Primary action
|
|
134
156
|
|
|
135
|
-
**
|
|
157
|
+
**Default**
|
|
136
158
|
- Background: `#005df9`
|
|
137
|
-
- Text: `#
|
|
138
|
-
-
|
|
139
|
-
-
|
|
140
|
-
- Font: 14px
|
|
141
|
-
- Use:
|
|
159
|
+
- Text: `#101828`
|
|
160
|
+
- Radius: `16px`
|
|
161
|
+
- Padding: `2px 12px`
|
|
162
|
+
- Font: `14px / 400 / Digital One Shinhan`
|
|
163
|
+
- Use: `shc-btn theme-primary size-xl` on home, credit-detail, and premium-detail public product surfaces; evidence `home::[data-omd-capture="27"]`.
|
|
142
164
|
|
|
143
|
-
|
|
165
|
+
### Toned capsule action
|
|
166
|
+
|
|
167
|
+
**Default**
|
|
144
168
|
- Background: `#f0f4fa`
|
|
145
169
|
- Text: `#101828`
|
|
146
|
-
-
|
|
147
|
-
-
|
|
148
|
-
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
-
|
|
155
|
-
|
|
156
|
-
### Cards & Containers
|
|
157
|
-
- Background: `#f8f9fc` (standard) or `#ebf0ff` (promo highlight)
|
|
170
|
+
- Radius: `20px`
|
|
171
|
+
- Padding: `8px 12px`
|
|
172
|
+
- Font: `14px / 400 / Digital One Shinhan`
|
|
173
|
+
- Use: `shc-capsule-btn theme-tonal size-md` on both captured product-detail surfaces; evidence `surface-2::[data-omd-capture="29"]`.
|
|
174
|
+
|
|
175
|
+
### Product-detail tile
|
|
176
|
+
|
|
177
|
+
**Default**
|
|
178
|
+
- Background: `#f8f9fc`
|
|
158
179
|
- Text: `#101828`
|
|
159
|
-
- Radius: 16px
|
|
160
|
-
- Padding:
|
|
161
|
-
-
|
|
162
|
-
- Use:
|
|
180
|
+
- Radius: `16px`
|
|
181
|
+
- Padding: `20px`
|
|
182
|
+
- Font: `14px / 400 / Digital One Shinhan`
|
|
183
|
+
- Use: captured product-detail tile on both credit and premium pages; evidence `surface-2::[data-omd-capture="20"]`.
|
|
163
184
|
|
|
164
|
-
###
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
- Radius: 8px
|
|
168
|
-
- Text: `#101828`, 16px weight 500
|
|
169
|
-
- Placeholder: `#818da2`
|
|
170
|
-
- Focus: `#005df9` border / ring
|
|
171
|
-
|
|
172
|
-
### Badges
|
|
173
|
-
**Danger / Alert**
|
|
185
|
+
### Tinted text badge
|
|
186
|
+
|
|
187
|
+
**Danger**
|
|
174
188
|
- Background: `#fff6f5`
|
|
175
189
|
- Text: `#f44f4f`
|
|
176
|
-
-
|
|
177
|
-
-
|
|
178
|
-
- Font:
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
-
|
|
183
|
-
-
|
|
184
|
-
-
|
|
185
|
-
|
|
186
|
-
|
|
190
|
+
- Radius: `12px`
|
|
191
|
+
- Padding: `2px 8px`
|
|
192
|
+
- Font: `11px / 500 / Digital One Shinhan`
|
|
193
|
+
- Use: `shc-badge--text type-tint theme-red` on the public home surface; evidence `home::span`.
|
|
194
|
+
|
|
195
|
+
**Blue**
|
|
196
|
+
- Background: `#ebf0ff`
|
|
197
|
+
- Text: `#005df9`
|
|
198
|
+
- Radius: `12px`
|
|
199
|
+
- Padding: `2px 8px`
|
|
200
|
+
- Font: `11px / 500 / Digital One Shinhan`
|
|
201
|
+
- Use: `shc-badge--text type-tint theme-blue` on the public home surface; evidence `home::span`.
|
|
202
|
+
|
|
203
|
+
### Navigation menu
|
|
204
|
+
|
|
205
|
+
**Observed open menu**
|
|
187
206
|
- Background: `#ffffff`
|
|
188
|
-
- Text: `#
|
|
189
|
-
-
|
|
190
|
-
-
|
|
191
|
-
-
|
|
207
|
+
- Text: `#101828`
|
|
208
|
+
- Border: `1px solid #e4e7ec`
|
|
209
|
+
- Radius: `12px`
|
|
210
|
+
- Shadow: `rgba(12,17,29,0.1) 0px 4px 16px 0px`
|
|
211
|
+
- Font: `14px / 400 / Digital One Shinhan`
|
|
212
|
+
- State: `expanded`, `menu-open`
|
|
213
|
+
- Use: `shc-dropdown__option` after the captured menu interaction on all three product surfaces; evidence `home::[data-omd-interaction-capture="menu-0-0"]`.
|
|
214
|
+
|
|
215
|
+
Only the defaults and the one expanded menu state above are documented. The supplied evidence records menu expansion only; it does not establish hover, focus, disabled, error, pressed, dialog, toast, input, or tab-state variants for these components.
|
|
192
216
|
|
|
193
217
|
---
|
|
194
218
|
|
|
195
|
-
**Verified:** 2026-
|
|
196
|
-
**Tier 1 sources:** https://www.shinhancard.com, https://www.shinhancard.com/pconts/html/
|
|
219
|
+
**Verified:** 2026-07-13
|
|
220
|
+
**Tier 1 sources:** `https://www.shinhancard.com/pconts/html/main.html` (public product surface), `https://www.shinhancard.com/pconts/html/card/apply/credit/1232390_2207.html` (credit-card detail product surface), `https://www.shinhancard.com/pconts/html/card/apply/premium/1236160_2205.html` (premium-card detail product surface), `https://www.shinhancard.com/pconts/company/html/intro/business/business.html` (official company/business context), `https://www.shinhancard.com/pconts/company/html/promotion/press/1225309_3999.html` (official SOL Pay brand-transition context)
|
|
221
|
+
**Tier 2 sources:** `https://getdesign.md/shinhancard` (attempted; built-in web open safe-open failure and no Shinhan Card record returned by search), `https://styles.refero.design/?q=Shinhan%20Card` (attempted; built-in web open safe-open failure and no matching indexed result returned by search)
|
|
222
|
+
**Conflicts unresolved:** none
|
|
223
|
+
|
|
224
|
+
Legacy primary text, tertiary/indigo button, input, tab, list-row, toggle, universal-card, broad responsive, and all unobserved interactive-state claims were removed because the supplied 2026 three-surface bundle does not support them.
|
|
197
225
|
|
|
198
226
|
## 5. Layout Principles
|
|
199
227
|
|
|
200
|
-
###
|
|
201
|
-
- Base unit: 8px
|
|
202
|
-
- Scale: 2px, 8px, 12px, 16px, 20px, 24px, 32px, 48px
|
|
203
|
-
- Notable: Tight inner button padding (2px vertical) contrasts with generous 24px card padding — chrome is dense, content surfaces are airy.
|
|
228
|
+
### Observed spacing and shape
|
|
204
229
|
|
|
205
|
-
|
|
206
|
-
- Centered main column with full-width tinted section bands
|
|
207
|
-
- Product/loan entries arranged as multi-column rounded card grids
|
|
208
|
-
- Sticky top header with GNB navigation; footer carries customer-center numbers and legal links over `#ffffff`
|
|
209
|
-
- Quick-link rows and statement-style lists use full-width `#ffffff` rows with hairline dividers
|
|
230
|
+
The capture’s most frequent spacing values are 4, 8, 12, 20, and 24px. Component-level evidence gives the useful boundary: the toned action uses 8px 12px padding, while the product-detail tile uses 20px padding. Rounded values are not a single global scale: the captured actions and menus use 8, 12, 16, or 20px according to component.
|
|
210
231
|
|
|
211
|
-
###
|
|
212
|
-
- **Paper-layered depth**: Sections are distinguished by tinted surfaces (`#f8f9fc`, `#f0f4fa`, `#ebf0ff`) stacked over white, not by shadows.
|
|
213
|
-
- **Airy cards, dense data**: Marketing cards get 24px padding while transactional list rows pack tightly for scanning statements.
|
|
214
|
-
- **Rounded calm**: Consistent 12–16px radius across cards and buttons softens the institutional density.
|
|
232
|
+
### Surface-domain boundary
|
|
215
233
|
|
|
216
|
-
|
|
217
|
-
- Small (8px): Inputs, badges, small chips
|
|
218
|
-
- Standard (12px): Buttons, list rows, the workhorse radius
|
|
219
|
-
- Large (16px): Cards, product tiles, large CTAs
|
|
220
|
-
- Full (9999px): Toggles, pill selectors
|
|
234
|
+
The three inspected URLs are public product-web surfaces. They are not a signed-in statement, checkout, or mobile-app capture, so this reference does not prescribe a transactional information architecture, responsive breakpoint map, or a universal grid.
|
|
221
235
|
|
|
222
236
|
## 6. Depth & Elevation
|
|
223
237
|
|
|
224
|
-
|
|
225
|
-
|-------|-----------|-----|
|
|
226
|
-
| Flat (Level 0) | No shadow | Page background, inline text |
|
|
227
|
-
| Hairline (Level 1) | `#e4e7ec 0px 0px 0px 1px` ring | Cards, panels, content tiles |
|
|
228
|
-
| Inset Line (Level 2) | `#d0d5dd 0px -1px 0px 0px inset` | Sticky headers, list-row bottoms, input bases |
|
|
229
|
-
| Surface Tint (Level 3) | `#f8f9fc` / `#f0f4fa` / `#ebf0ff` stacking | Section separation without blur |
|
|
230
|
-
| Focus Ring | `#005df9` outline | Keyboard focus, active input |
|
|
231
|
-
|
|
232
|
-
**Shadow Philosophy**: Shinhan Card almost entirely avoids blurred drop shadows. Elevation is communicated through crisp 1px hairline rings (`#e4e7ec`) and inset bottom lines (`#d0d5dd`), reinforced by tinted-surface stacking. This produces a document-grade, paper-layered feel appropriate for a financial product where clarity and precision outrank decorative depth.
|
|
238
|
+
The expanded `shc-dropdown__option` menu is the only directly measured elevated layer: `rgba(12,17,29,0.1) 0px 4px 16px 0px` with a 1px `#e4e7ec` border and 12px radius. The product tiles measured in this bundle use no blur shadow. This is evidence for those two observed contexts, not a general “no-shadow” rule for the whole product.
|
|
233
239
|
|
|
234
240
|
## 7. Do's and Don'ts
|
|
235
241
|
|
|
236
242
|
### Do
|
|
237
|
-
|
|
238
|
-
-
|
|
239
|
-
-
|
|
240
|
-
-
|
|
241
|
-
-
|
|
242
|
-
- Apply tight negative tracking (-0.28px) on dense Korean body text
|
|
243
|
-
- Use `Digital One Shinhan` at every level for brand consistency
|
|
243
|
+
|
|
244
|
+
- Use `#005df9` for a primary action only when applying the observed `shc-btn theme-primary size-xl` pattern.
|
|
245
|
+
- Keep the observed `Digital One Shinhan` webfont metadata when the first-party files can be loaded; otherwise label it unavailable rather than substituting a system font as the brand face.
|
|
246
|
+
- Preserve component provenance: product-detail tile values belong to the two card-detail URLs, while tint badges were observed on home.
|
|
247
|
+
- Treat the 12px-radius elevated menu as an observed open-menu treatment, not a general card token.
|
|
244
248
|
|
|
245
249
|
### Don't
|
|
246
|
-
|
|
247
|
-
- Don't
|
|
248
|
-
- Don't
|
|
249
|
-
- Don't
|
|
250
|
-
- Don't
|
|
251
|
-
- Don't use the indigo (`#6268ff`) accent for standard primary CTAs — it is promotional
|
|
252
|
-
- Don't apply positive letter-spacing on Hangul body text
|
|
250
|
+
|
|
251
|
+
- Don't promote the declared `swiper-icons` face or the system fallback chain to Shinhan Card’s UI family.
|
|
252
|
+
- Don't infer a white primary-button label, focus ring, hover style, disabled state, input spec, or tab treatment from the unobserved component states.
|
|
253
|
+
- Don't extend public product-web measurements into signed-in app, checkout, or documentation UI.
|
|
254
|
+
- Don't represent the prior indigo button, full-pill toggle, or universal 24px card as current canonical components without new evidence.
|
|
253
255
|
|
|
254
256
|
## 8. Responsive Behavior
|
|
255
257
|
|
|
256
|
-
|
|
257
|
-
| Name | Width | Key Changes |
|
|
258
|
-
|------|-------|-------------|
|
|
259
|
-
| Mobile | <640px | Single column, stacked cards, larger tap targets |
|
|
260
|
-
| Tablet | 640–1024px | 2-column card grids, moderate padding |
|
|
261
|
-
| Desktop | 1024–1280px | Full multi-column product grids |
|
|
262
|
-
| Large Desktop | >1280px | Centered content with generous side margins |
|
|
263
|
-
|
|
264
|
-
### Touch Targets
|
|
265
|
-
- Buttons keep comfortable horizontal padding (8–12px) with full-height tap zones
|
|
266
|
-
- Navigation links at 14px with adequate row spacing
|
|
267
|
-
- Cards span full width on mobile for easy tapping
|
|
268
|
-
- `pc-only` list rows collapse out of the mobile layout
|
|
269
|
-
|
|
270
|
-
### Collapsing Strategy
|
|
271
|
-
- Hero: 32px display compresses on mobile, weight 900 maintained
|
|
272
|
-
- Navigation: horizontal GNB → hamburger / drawer on mobile
|
|
273
|
-
- Product cards: multi-column → 2-column → single column stacked
|
|
274
|
-
- Statement/list rows: maintain full-width hairline-divided layout
|
|
275
|
-
- Section spacing: 48px → reduced on mobile
|
|
276
|
-
|
|
277
|
-
### Image Behavior
|
|
278
|
-
- Card thumbnails maintain 16px radius at all sizes
|
|
279
|
-
- Tinted section bands persist full-width across breakpoints
|
|
280
|
-
- Promo cards keep their `#ebf0ff` surface and indigo accent on mobile
|
|
258
|
+
No viewport comparison is present in the supplied evidence bundle. The reference therefore preserves no breakpoint, mobile-navigation, touch-target, or image-behaviour rule. A responsive claim requires a later capture that records the relevant viewport and component provenance.
|
|
281
259
|
|
|
282
260
|
## 9. Agent Prompt Guide
|
|
283
261
|
|
|
284
|
-
|
|
285
|
-
- Primary CTA: Shinhan Blue (`#005df9`)
|
|
286
|
-
- Background: Pure White (`#ffffff`)
|
|
287
|
-
- Card surface: Off-white (`#f8f9fc`)
|
|
288
|
-
- Promo surface: Surface Indigo (`#ebf0ff`)
|
|
289
|
-
- Heading text: Ink (`#101828`)
|
|
290
|
-
- Body text: Body (`#475467`)
|
|
291
|
-
- Muted text: Muted (`#667085`)
|
|
292
|
-
- Border: Hairline (`#e4e7ec`)
|
|
293
|
-
- Link: Shinhan Blue (`#005df9`)
|
|
294
|
-
- Accent: Indigo (`#6268ff`)
|
|
295
|
-
- Error: Danger (`#f44f4f`)
|
|
296
|
-
|
|
297
|
-
### Example Component Prompts
|
|
298
|
-
- "Create a hero on white. Headline at 32px Digital One Shinhan weight 900, line-height 1.20, letter-spacing -0.64px, color #101828. Subtitle 16px weight 500, color #475467. Primary blue CTA (#005df9 bg, #ffffff text, 16px radius, 2px 12px padding) and tertiary button (#f0f4fa bg, #101828 text, 12px radius)."
|
|
299
|
-
- "Design a product card: #f8f9fc background, 16px radius, 24px padding, 1px hairline ring #e4e7ec, no drop shadow. Title 21px weight 700 #101828, body 14px weight 400 #475467."
|
|
300
|
-
- "Build a danger badge: #fff6f5 background, #f44f4f text, 8px radius, 2px 8px padding, 12px weight 400."
|
|
301
|
-
- "Create tabs: inactive #667085 14px labels, active #101828 with 2px bottom border #005df9. Sticky white header with hairline #e4e7ec divider."
|
|
302
|
-
- "Design an input: white background, 1px solid #d0d5dd border, 8px radius, 16px weight 500 #101828 text, #818da2 placeholder, focus border #005df9."
|
|
303
|
-
|
|
304
|
-
### Iteration Guide
|
|
305
|
-
1. Blue (`#005df9`) is the only primary-action color — never add a second
|
|
306
|
-
2. Weight escalation (400 / 700 / 900) builds hierarchy before size
|
|
307
|
-
3. Separate surfaces with hairline rings + tinted stacking, never heavy shadows
|
|
308
|
-
4. Heading color is `#101828`, body `#475467`, muted `#667085`
|
|
309
|
-
5. Radius family: 8px inputs, 12px buttons/rows, 16px cards, 9999px toggles
|
|
310
|
-
6. Apply -0.28px tracking on body, -0.64px on display
|
|
311
|
-
7. Indigo (`#6268ff`) and `#ebf0ff` are promotional only — not standard CTAs
|
|
312
|
-
|
|
313
|
-
---
|
|
262
|
+
Use this reference as a constrained public-product-web sample, not a complete Shinhan Card application kit. A faithful observed action is `#005df9` background, `#101828` text, 16px radius, 2px 12px padding, and 14px/400 `Digital One Shinhan`; a toned detail-page action is `#f0f4fa`, `#101828`, 20px radius, and 8px 12px padding. For product-detail tiles, use `#f8f9fc`, 16px radius, and 20px padding only in that detail-page context. Do not invent a primary-button contrast color or interaction state.
|
|
314
263
|
|
|
315
264
|
## 10. Voice & Tone
|
|
316
265
|
|
|
317
|
-
Shinhan Card
|
|
266
|
+
Shinhan Card’s official business description uses a practical service register: card, instalment-finance, loan, lease, platform, and data services are named plainly, and SOL Pay is described as connecting financial life and everyday life. The public product surfaces therefore support a clear, task-oriented tone rather than speculative lifestyle copy. The 2023 SOL Pay announcement says the rebrand was intended to make the group’s digital brands easier for customers to understand and use; that supports clarity and familiarity as editorial goals, not a complete public copywriting standard.
|
|
318
267
|
|
|
319
|
-
|
|
320
|
-
|---|---|
|
|
321
|
-
| Hero / promo headlines | Benefit-first, situational. Speaks to a user's moment of need. |
|
|
322
|
-
| Product descriptions | Concrete and plain. Names the product and the situation it solves. |
|
|
323
|
-
| CTAs | Functional imperatives. "로그인", "다운로드", "신청하기". |
|
|
324
|
-
| Form / error messages | Polite, specific, guiding. Explains what to fix. |
|
|
325
|
-
| Navigation / menu | Noun-based, scannable. Mirrors banking task vocabulary. |
|
|
326
|
-
| Legal / disclosure | Formal, regulatory-grade Korean. |
|
|
327
|
-
| Customer center | Warm, accessible. Phone numbers surfaced prominently. |
|
|
268
|
+
### Do
|
|
328
269
|
|
|
329
|
-
|
|
270
|
+
- Name the card or financial task directly.
|
|
271
|
+
- Use short, respectful Korean labels that help a customer move through a known task.
|
|
272
|
+
- Keep SOL Pay references tied to their stated payment and daily-finance role.
|
|
330
273
|
|
|
331
|
-
|
|
274
|
+
### Don't
|
|
332
275
|
|
|
333
|
-
|
|
276
|
+
- Don't invent a brand slogan, executive quote, or promotional tone rule from component styling.
|
|
277
|
+
- Don't turn regulatory, eligibility, or lending copy into casual lifestyle claims.
|
|
334
278
|
|
|
335
|
-
|
|
279
|
+
## 11. Brand Narrative
|
|
280
|
+
|
|
281
|
+
Shinhan Card describes itself as a specialist finance company handling credit cards and instalment finance, with card loans and auto lease among its stated businesses. Its official business page places those services alongside a platform-and-data business that uses the digital Shinhan SOL Pay platform to connect customers’ financial lives and daily lives. It also situates the company’s current identity after the 2007 integration with LG Card.
|
|
336
282
|
|
|
337
|
-
|
|
283
|
+
The recent public evolution relevant to this reference is the SOL Pay naming transition. In its November 2023 announcement, Shinhan Card said the former life-finance platform Shinhan pLay had been renamed under the group’s Shinhan SOL digital brand while strengthening the card company’s payment identity. The captured web system belongs to public card and product-detail surfaces in that larger context; it is not evidence about the complete logged-in SOL Pay experience.
|
|
338
284
|
|
|
339
285
|
## 12. Principles
|
|
340
286
|
|
|
341
|
-
1. **
|
|
342
|
-
2. **
|
|
343
|
-
3. **
|
|
344
|
-
4. **Paper, not blur.** Elevation is hairline rings and tinted stacking, not drop shadows. The interface should feel like a crisp, well-organized document.
|
|
345
|
-
5. **One typeface, one voice.** `Digital One Shinhan` across every level unifies web, app, and physical brand into a single identity.
|
|
346
|
-
6. **Meet the moment of need.** Copy is benefit-first and situational, addressing the user's financial context directly rather than abstractly.
|
|
347
|
-
7. **Modern, but dependable.** Rounded geometry and airy spacing modernize the experience without sacrificing the steadiness a major financial institution must project.
|
|
287
|
+
1. **Connect card services to daily finance.** Shinhan Card explicitly frames SOL Pay as linking financial life and daily life. *UI implication:* keep public product paths understandable as card, payment, and finance tasks rather than generic platform navigation.
|
|
288
|
+
2. **Make the group digital brand easier to understand.** The SOL Pay announcement identifies intuitive understanding and easier use as the goal of the brand transition. *UI implication:* prefer direct labels and avoid using visual novelty as a replacement for task clarity.
|
|
289
|
+
3. **Preserve evidence domains.** Public web product pages, corporate/company material, and a potentially signed-in app answer different questions. *UI implication:* reuse a captured public component only with its URL and state boundary; do not infer hidden product patterns.
|
|
348
290
|
|
|
349
291
|
## 13. Personas
|
|
350
292
|
|
|
351
|
-
|
|
352
|
-
|
|
353
|
-
**Ji-woo Park, 29, Seoul.** Office worker who manages nearly everything through the SOL Pay app. Checks her statement weekly and values being able to see her 이용대금명세서 and reward points at a glance. Trusts Shinhan Card because the digital experience feels as reliable as the physical card, and the clean layout makes scanning transactions effortless.
|
|
293
|
+
### Evidence-backed service audiences (not fictional personas)
|
|
354
294
|
|
|
355
|
-
|
|
295
|
+
- **Individual, corporate, and public-organization card users.** The official business page describes credit-card payment services for these groups. No individual behaviour, name, or demographic is asserted.
|
|
296
|
+
- **Customers considering card-finance products.** The official page describes short-term and long-term card loans and instalment finance. This supports a service audience only, not a persona journey.
|
|
297
|
+
- **SOL Pay users.** Shinhan Card describes SOL Pay as its digital platform for connecting finance and daily life. The supplied web capture does not expose a signed-in user flow or user-research segment.
|
|
356
298
|
|
|
357
|
-
|
|
358
|
-
|
|
359
|
-
**Seung-ho Yoon, 52, Daegu.** Long-time cardholder who primarily uses the web portal and customer center. Relies on the prominently displayed 고객센터 number and the formal, regulatory-grade disclosure copy to feel confident. Trusts the modernized look precisely because it still reads as a serious financial institution, not a flashy startup.
|
|
299
|
+
Specific personas, motivations, and quotes remain **[FILL IN]** until supported by first-party research or user-provided material.
|
|
360
300
|
|
|
361
301
|
## 14. States
|
|
362
302
|
|
|
363
|
-
|
|
|
303
|
+
| Observed state | Evidence boundary |
|
|
364
304
|
|---|---|
|
|
365
|
-
|
|
|
366
|
-
|
|
|
367
|
-
| **Loading** | Skeleton blocks in Border (`#e4e7ec`) at final dimensions, paper-flat with subtle shimmer. No spinner overlays on content. |
|
|
368
|
-
| **Error (form validation)** | Field-level. Danger (`#f44f4f`) text + `#fff6f5` tinted background. Message names what is invalid and how to fix it. |
|
|
369
|
-
| **Error (request failed)** | Inline banner in Danger tone. Plain-Korean explanation plus a retry or customer-center path. No generic "오류가 발생했습니다" alone. |
|
|
370
|
-
| **Success (action saved)** | Brief inline confirmation in Ink (`#101828`); blue accent on the affected row. Calm, no exclamation, no emoji. |
|
|
371
|
-
| **Disabled** | Surface and text fade together; primary blue becomes a muted tint rather than switching to gray, preserving brand read. |
|
|
372
|
-
| **Focus** | `#005df9` ring/border on inputs and interactive elements for clear keyboard navigation. |
|
|
373
|
-
| **Active tab** | `#101828` label with 2px `#005df9` bottom border. |
|
|
305
|
+
| Expanded navigation menu | Captured after a menu interaction on all three product surfaces; white surface, 1px `#e4e7ec` border, 12px radius, and `rgba(12,17,29,0.1) 0px 4px 16px 0px` shadow. |
|
|
306
|
+
| Hover, focus, disabled, error, loading, empty, success, toast, dialog, and form validation | Not established by the supplied bundle; intentionally omitted rather than synthesized. |
|
|
374
307
|
|
|
375
308
|
## 15. Motion & Easing
|
|
376
309
|
|
|
377
|
-
**
|
|
378
|
-
|
|
379
|
-
| Token | Value | Use |
|
|
380
|
-
|---|---|---|
|
|
381
|
-
| `motion-instant` | 0ms | State commits, selection, focus rings |
|
|
382
|
-
| `motion-fast` | 150ms | Hover, button press, tab switch |
|
|
383
|
-
| `motion-standard` | 250ms | Drawer, modal, dropdown, accordion |
|
|
384
|
-
| `motion-slow` | 350ms | Page-level transitions, hero reveals |
|
|
385
|
-
|
|
386
|
-
**Easings**:
|
|
387
|
-
|
|
388
|
-
| Token | Curve | Use |
|
|
389
|
-
|---|---|---|
|
|
390
|
-
| `ease-enter` | `cubic-bezier(0.2, 0.6, 0.25, 1)` | Arriving — sheets, drawers, dropdowns |
|
|
391
|
-
| `ease-exit` | `cubic-bezier(0.4, 0.0, 1, 1)` | Dismissals |
|
|
392
|
-
| `ease-standard` | `cubic-bezier(0.25, 0.1, 0.25, 1)` | Two-way transitions |
|
|
393
|
-
|
|
394
|
-
**Explicitly forbidden.** No bounce, no overshoot, no playful spring on transactional surfaces. A financial institution's motion is steady and predictable; motion exists to clarify continuity (which panel opened, which tab is active), never to delight at the cost of trust.
|
|
395
|
-
|
|
396
|
-
**Signature motions.**
|
|
397
|
-
|
|
398
|
-
1. **Tab indicator slide.** The `#005df9` 2px bottom border slides between tabs using `motion-fast / ease-standard`, signalling the active section without abrupt jumps.
|
|
399
|
-
2. **Drawer / GNB reveal.** Mobile navigation slides in with `motion-standard / ease-enter`; surfaces fade their hairline rings into place rather than dropping shadows.
|
|
400
|
-
3. **Surface tint transition.** Section bands crossfade their tinted backgrounds (`#f8f9fc` ↔ `#ebf0ff`) on scroll-into-view with `motion-slow`, keeping the paper-layered feel calm.
|
|
401
|
-
4. **Reduce motion.** Under `prefers-reduced-motion: reduce`, all `motion-*` tokens collapse to `motion-instant`. Tabs and drawers commit immediately; the portal stays fully functional.
|
|
402
|
-
|
|
403
|
-
## 16. Do's and Don'ts
|
|
404
|
-
|
|
405
|
-
### Do
|
|
406
|
-
- Anchor every primary action and link in Shinhan Blue (`#005df9`)
|
|
407
|
-
- Build hierarchy with weight (400 / 700 / 900) before reaching for size
|
|
408
|
-
- Use hairline `#e4e7ec` rings and tinted surface stacking for separation
|
|
409
|
-
- Keep `Digital One Shinhan` across all levels for a unified brand voice
|
|
410
|
-
- Hold radii in the 8 / 12 / 16px family; reserve 9999px for toggles
|
|
411
|
-
- Write benefit-first, situational Korean copy that meets the user's need
|
|
412
|
-
- Use Ink (`#101828`) for headings, never pure black
|
|
413
|
-
|
|
414
|
-
### Don't
|
|
415
|
-
- Don't add a second primary CTA color alongside the blue
|
|
416
|
-
- Don't apply heavy blurred drop shadows — hairlines and inset lines are the depth language
|
|
417
|
-
- Don't use the indigo (`#6268ff`) accent for standard primary CTAs
|
|
418
|
-
- Don't crowd cards — preserve the airy 24px padding
|
|
419
|
-
- Don't use fully-rounded pill shapes on cards or content tiles
|
|
420
|
-
- Don't lean on hype superlatives or emoji on transactional surfaces
|
|
421
|
-
- Don't apply positive letter-spacing to dense Korean body text
|
|
310
|
+
No motion duration, easing curve, or reduced-motion treatment was captured. The menu’s open state proves that a menu can expand; it does not prove a transition recipe. Motion tokens and animation guidance are therefore **[FILL IN]** pending a capture that records timing and behaviour.
|