Dabang's web product reads like a working tool that does not want to be looked at too long. The home surface is white, the map surface is whiter, and the chrome between them is a near-black #222 neutral sitting at body weight 400 on top of Pretendard Variable. Where its direct competitor Zigbang reaches for a Bloomberg-terminal restraint and reserves orange exclusively for the wordmark, Dabang takes the opposite trade: a saturated brand pink — #FF3478, internally tokenised as --pink-500 — sits on the logo and stays there. Action moves to a different color entirely. The functional accent is blue #326CF9 (--blue-500), and it appears in two places only: the selected map marker, and the focus state on filter pills. That split — pink for identity, blue for behavior, near-black for everything else — is the structural decision that organizes the system.
The map page is where the design's intent becomes visible. Filter chips sit on a 1px #DFDFDF border at a 42px pill radius, weight 500 text — full-round pills, not the 8/10px rectangles the rest of the Korean property cohort ships. The map canvas itself fills the viewport; price markers float over it as small rounded rectangles tinted by --blue-500 when selected and a deep gray when default. There is no box-shadow anywhere on the production surface — 53 of 53 sampled elements returned box-shadow: none. Depth is borders and tints exclusively: a 1px hairline in #DFDFDF for separation, a #EEF8FF (the lightest blue-50) wash for hover, a #F5F5F5 plate for muted sections. The product is engineered to be skimmed at speed; it does not perform visual weight.
The token system is unusually complete for a Korean consumer property app. Captured directly off :root via CDP, Dabang exposes a full 8-hue × 10-step scale — blue, pink, gray, green, violet, yellow, red, plus an -rgb variant of each step (140 CSS custom properties total). The ramps are not decorative; they encode product reality. --pink-500 is the brand wordmark. --blue-500 is interaction. --gray-900 (#222) is body text. --green-500 (#1ca885) is reserved for verified-listing and "안심" trust signals (not observed live this pass, inferred from token semantics). The colored ramps not seen on the home or map surfaces (violet, yellow, red beyond 500) sit on :root waiting — Dabang built the system, then deployed only the slice it needed.
The most striking single decision is the AI feature band. Where every other H1 on the home page is font-weight: 700 (원/투룸, 아파트, 주택/빌라, 오피스텔, 분양 — all 18-20px, all bold), the AI personalized band reads "관심있는 [동] 주변, AI가 대신 찾아봤어요 🔍" at 24px / 400. It is the largest heading on the page and the lightest. The choice signals an intentional voice: AI is conversational, AI does not shout, AI is the only place on the surface where an emoji is allowed. It is the one place the system relaxes — and it does so by going lighter, not bolder.
Key Characteristics:
#FF3478 brand-mark only — never appears on functional UI on the map surface#326CF9 as the single functional accent — selected marker, focus ring, link emphasis#222 (--gray-900) as the dominant text token — 21/53 samples#DFDFDF border — distinctive vs Zigbang's 10px chip default#FF3478 (--pink-500): logo wordmark and brand-chrome accent. Used 2× in 32 home samples; does not propagate into the map product surface. This is the system's most disciplined rule — brand color stays in the brand layer.#FFFFFF: the dominant surface on /map/onetwo. Listing cards, filter pills, and chrome float above the map tiles with hairline borders separating them.:root)--gray-50 #FCFCFC · --gray-100 #FAFAFA · --gray-200 #F5F5F5 · --gray-300 #EDEDED · --gray-400 #DFDFDF · --gray-500 #CCCCCC · --gray-600 #979797 · --gray-700 #656565 · --gray-800 #434343 · --gray-900 #222222--gray-900 #222 (observed 21/53)--gray-700 #656565 (2/53, footer / meta)--gray-400 #DFDFDF (7/21 map samples — single most-used border value)#326CF9 (--blue-500): selected marker fill, focus ring, primary link emphasis. The full blue ramp (50→900) is on :root for state escalation.#EEF8FF (--blue-50): the only tint observed live for hover/active surfaces.--green-500 #1CA885 inferred role: verified-listing / 안심 badge (semantic match to KR property convention).--red-500 #E20724 inferred role: error / urgent / sold-out indicator.--yellow-500 #FFB600 inferred role: warning / pending state.--violet-500 #3E26FD inferred role: premium / promoted-listing tier (the violet ramp is the cleanest mathematical ladder in the system — suggests reserved future-feature use).#FFFFFF (17/53)#F5F5F5 (--gray-200)#EEF8FF (--blue-50)rgb(67, 77, 104) — used once for a saved-search call-out band; off-ladder color, suggesting marketing-team override rather than token-system primitive.The system separates three layers with strict color rules:
--pink-500 only.--blue-500 only.The other five hues (green, violet, yellow, red, beyond the 500 steps of blue/pink) are present on :root but not deployed on home or map chrome. They exist for status and state escalation, not decoration.
--gray-900./map/onetwo belongs to the map tile renderer; chrome (left listing rail, top filter strip) is built around not obscuring it.--gray-400 borders, no shadow.A contextual ladder, not a flat scale:
0px (31/53) — default for text containers, dividers, list items2px (7/53) — tight chips, map markers4px (3/53) — input fields8px (5/53) — cards, secondary buttons12px (2/53) — large card surfaces, promo panel32px (1/53) — home search-entry pill42px (1/53) — map filter chips50% (2/53) — circular icon controls (bookmark, close)The two pill radii (32 and 42) co-exist because they signal different things: 32px is "tap to start a search," 42px is "filter you can toggle on/off mid-flow." The distinction is functional, not aesthetic.
Zero box-shadow across 53 sampled production elements (100%). Depth is achieved exclusively by:
--gray-400 borders--gray-200 → --blue-50 tint)This matches Bunjang's zero-shadow discipline and diverges from Zigbang (minor floating shadows on drawer) and most international property platforms (Zillow / Rightmove ship multi-tier shadow scales). The structural argument: shadows on a map surface fight the map's own visual depth (terrain tints, road shadows). Borders do not.
--blue-500 border + --blue-50 background; default → --gray-400 border + white).--blue-50 #EEF8FF background tint.#222 text on #FFF background = 16.0:1 (passes AAA).#326CF9 action blue on white = 4.6:1 (passes AA for normal text).#FF3478 brand pink on white = 3.4:1 — fails AA for body text, passes AA only for large text ≥18.66px. Dabang appears to honor this by restricting pink to the wordmark and large-display contexts, not running body text in brand color. Downstream port should preserve this restriction.Dabang's voice on the home surface is functional with one moment of warmth. Category labels are bare nouns (원/투룸 · 아파트 · 분양). Section heads are imperative-light ("우리동네 한눈에 보기" — "see your neighborhood at a glance"). Then the AI band drops the bold and adds an emoji: "관심있는 [동] 주변, AI가 대신 찾아봤어요 🔍" — "AI looked around your neighborhood for you 🔍". The verb-ending -했어요 is casual-polite (반말 톤은 아니지만 격식체도 아닌 중간 톤). The rest of the page is -합니다 or noun-only labels. The voice cliff is intentional: AI talks, the rest of the product labels.
OmD-original voice reconstructions (illustrative, tone-shape-only, not adopted from Dabang surface):
The system rule: warmth lives in the AI surface; functionality lives in the chrome. Do not bleed casual -요 endings into structural labels.
[FILL IN — Dabang user surveys/research not publicly indexed at OmD attribution fidelity.] Reported product positioning suggests:
§11 narrative is treated as factual inference from public surface positioning, not as adopted persona research. Any downstream use should re-validate with primary research.
--pink-500 into product chrome. Dabang's discipline is to keep pink as wordmark-only; copying the color without the discipline produces a "saturated red-pink" experience that fights the map.--pink-500 #FF3478 brand wordmark
--blue-500 #326CF9 action / selected
--gray-900 #222222 primary text
--gray-700 #656565 secondary text
--gray-400 #DFDFDF default border
--gray-200 #F5F5F5 muted plate
--blue-50 #EEF8FF hover tint
--green-500 #1CA885 trust / verified (inferred role)
--red-500 #E20724 error / urgent (inferred role)
--yellow-500 #FFB600 warning (inferred role)
--violet-500 #3E26FD premium / promoted (inferred role)
radius: 0 / 2 / 4 / 8 / 12 / 32 / 42 / 50%
weight: 400 / 500(sparse) / 700
font: Pretendard Variable (100%)
shadow: none (100%)
Runtime.evaluate + getComputedStyle on https://www.dabangapp.com/ (32 samples) and https://www.dabangapp.com/map/onetwo (21 samples) on 2026-05-15. 140 CSS custom properties extracted from :root. Full proof in assets/_reference/.live-inspect-proof.json.design.dabangapp.com / brand.dabangapp.com / tech.dabangapp.com / docs.dabangapp.com all DNS no-resolve. dabangapp.com/brand and /design return HTTP 200 but resolve to the SPA shell (title remains "부동산 필수 앱 다방") — no DS surface published. Parent company is Station3 (스테이션쓰리); stationthree.com returns 200 (corporate page), but no Tech / Design portal. GitHub forgeinc/stationTHREE (1 repo, corporate site) is the only org-level surface — no design-system / tokens / Storybook repo.getdesign.md search "dabang" → no entry. styles.refero.design search "dabang" / "다방" → no result cards. Consistent with the systemic KR-coverage gap logged in 2026-05-13-kr10.md / 2026-05-14-kr10.md.references/zigbang/DESIGN.md (KR-real-estate direct competitor); references/bunjang/DESIGN.md (zero-shadow + KR-marketplace radius pattern).ws://localhost:9222/devtools/page/B7DFD59E5452E64CA14275E072BFAC20 on Chrome/148.:root token set is the public artifact.Dabang's web product reads like a working tool that does not want to be looked at too long. The home surface is white, the map surface is whiter, and the chrome between them is a near-black #222 neutral sitting at body weight 400 on top of Pretendard Variable. Where its direct competitor Zigbang reaches for a Bloomberg-terminal restraint and reserves orang
Accent
Neutrals
Semantic
Type Scale
Rendered in system-ui to clearly show scale & weight.
Fonts
Spacing
| Purpose | Value | Preview |
|---|---|---|
| Density | compact | |
| Base unit | 4px | |
| Section gap | 32px | |
| Card padding | 16px | |
| Element gap | 12px |
Border Radius
| Element | Value | Preview |
|---|---|---|
| buttons | 10px | |
| inputs | 10px | |
| cards | 10px | |
| dialogs | 10px | |
| badges | 8px | |
| pillPill | 9999px |
Elevation